@tokmizer/plugin 0.9.56 → 0.9.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +168 -9
  3. package/agent-plugins/amp.js +38 -0
  4. package/agent-plugins/hermes/__init__.py +39 -0
  5. package/agent-plugins/hermes/plugin.yaml +5 -0
  6. package/agent-plugins/kilo.js +40 -0
  7. package/agent-plugins/omp.js +32 -0
  8. package/agent-plugins/openclaw/index.js +39 -0
  9. package/agent-plugins/openclaw/openclaw.plugin.json +12 -0
  10. package/agent-plugins/openclaw/package.json +11 -0
  11. package/agent-plugins/opencode.js +40 -0
  12. package/agent-plugins/pi.js +30 -0
  13. package/codex-plugin/plugin.json +1 -1
  14. package/command-templates/tkr-gain.md +7 -2
  15. package/command-templates/tkr-link.md +1 -1
  16. package/command-templates/tkr-status.md +5 -3
  17. package/command-templates/tkr-telemetry.md +3 -3
  18. package/command-templates/tkr-unlink.md +2 -2
  19. package/dist/bin/tkr-agent-hook.js +11 -0
  20. package/dist/bin/tkr-codex-hook.js +131 -40
  21. package/dist/bin/tkr-copilot-hook.js +11 -0
  22. package/dist/bin/tkr-crush-hook.js +11 -0
  23. package/dist/bin/tkr-cursor-hook.js +11 -0
  24. package/dist/bin/tkr-daemon.js +161 -55
  25. package/dist/bin/tkr-droid-hook.js +11 -0
  26. package/dist/bin/tkr-exec +135 -42
  27. package/dist/bin/tkr-exec.js +135 -42
  28. package/dist/bin/tkr-gemini-hook.js +11 -0
  29. package/dist/bin/tkr-grok-hook.js +11 -0
  30. package/dist/bin/tkr-junie-hook.js +11 -0
  31. package/dist/bin/tkr-processor.js +162 -0
  32. package/dist/bin/tkr-qwen-hook.js +11 -0
  33. package/dist/bin/tkr-shim.js +131 -38
  34. package/dist/bin/tkr-trae-hook.js +11 -0
  35. package/dist/bin/tkr-zcode-hook.js +11 -0
  36. package/dist/bin/tkr.js +356 -152
  37. package/dist/hooks-host/post-tool-use.js +144 -48
  38. package/dist/hooks-host/pre-tool-use.js +8 -7
  39. package/dist/hooks-host/reducer-prompt-submit.js +1 -1
  40. package/dist/hooks-host/reducer-session-start.js +1 -1
  41. package/dist/hooks-host/reducer-stop.js +25 -16
  42. package/dist/hooks-host/session-recap.js +4 -3
  43. package/dist/index.js +125 -39
  44. package/dist/native/manifest.json +18 -8
  45. package/dist/native/single.json +38 -0
  46. package/dist/native/tkr-exec-darwin-arm64 +0 -0
  47. package/dist/native/tkr-exec-darwin-x64 +0 -0
  48. package/dist/native/tkr-exec-linux-arm64 +0 -0
  49. package/dist/native/tkr-exec-linux-x64 +0 -0
  50. package/dist/native/tkr-exec-win32-arm64.exe +0 -0
  51. package/dist/native/tkr-exec-win32-x64.exe +0 -0
  52. package/hooks/on-session-start.d.mts +1 -0
  53. package/hooks/on-session-start.mjs +25 -8
  54. package/package.json +24 -2
  55. package/scripts/README-INSTALL.md +13 -5
  56. package/scripts/install-mac-linux.sh +72 -6
  57. package/scripts/install-native.mjs +164 -25
package/dist/bin/tkr-exec CHANGED
@@ -1,52 +1,145 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
3
- var Js=Object.create;var vt=Object.defineProperty;var Xs=Object.getOwnPropertyDescriptor;var Qs=Object.getOwnPropertyNames;var ei=Object.getPrototypeOf,ti=Object.prototype.hasOwnProperty;var ee=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var j=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},ri=(t,e)=>{for(var r in e)vt(t,r,{get:e[r],enumerable:!0})},ni=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Qs(e))!ti.call(t,s)&&s!==r&&vt(t,s,{get:()=>e[s],enumerable:!(n=Xs(e,s))||n.enumerable});return t};var pr=(t,e,r)=>(r=t!=null?Js(ei(t)):{},ni(e||!t||!t.__esModule?vt(r,"default",{value:t,enumerable:!0}):r,t));var _r=j((Fl,yr)=>{yr.exports=gr;gr.sync=ii;var mr=ee("fs");function si(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var s=r[n].toLowerCase();if(s&&t.substr(-s.length).toLowerCase()===s)return!0}return!1}function hr(t,e,r){return!t.isSymbolicLink()&&!t.isFile()?!1:si(e,r)}function gr(t,e,r){mr.stat(t,function(n,s){r(n,n?!1:hr(s,t,e))})}function ii(t,e){return hr(mr.statSync(t),t,e)}});var wr=j((Bl,Er)=>{Er.exports=vr;vr.sync=oi;var br=ee("fs");function vr(t,e,r){br.stat(t,function(n,s){r(n,n?!1:xr(s,e))})}function oi(t,e){return xr(br.statSync(t),e)}function xr(t,e){return t.isFile()&&ai(t,e)}function ai(t,e){var r=t.mode,n=t.uid,s=t.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,f=r&u||r&c&&s===o||r&a&&n===i||r&l&&i===0;return f}});var Sr=j((zl,kr)=>{var jl=ee("fs"),nt;process.platform==="win32"||global.TESTING_WINDOWS?nt=_r():nt=wr();kr.exports=xt;xt.sync=ci;function xt(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,s){xt(t,e||{},function(i,o){i?s(i):n(o)})})}nt(t,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),r(n,s)})}function ci(t,e){try{return nt.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Or=j((Zl,$r)=>{var Re=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Tr=ee("path"),ui=Re?";":":",Rr=Sr(),Ar=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),Cr=(t,e)=>{let r=e.colon||ui,n=t.match(/\//)||Re&&t.match(/\\/)?[""]:[...Re?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],s=Re?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=Re?s.split(r):[""];return Re&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},Ir=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=Cr(t,e),o=[],a=u=>new Promise((l,f)=>{if(u===n.length)return e.all&&o.length?l(o):f(Ar(t));let d=n[u],m=/^".*"$/.test(d)?d.slice(1,-1):d,v=Tr.join(m,t),w=!m&&/^\.[\\\/]/.test(t)?t.slice(0,2)+v:v;l(c(w,u,0))}),c=(u,l,f)=>new Promise((d,m)=>{if(f===s.length)return d(a(l+1));let v=s[f];Rr(u+v,{pathExt:i},(w,_)=>{if(!w&&_)if(e.all)o.push(u+v);else return d(u+v);return d(c(u,l,f+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},li=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:s}=Cr(t,e),i=[];for(let o=0;o<r.length;o++){let a=r[o],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=Tr.join(c,t),l=!c&&/^\.[\\\/]/.test(t)?t.slice(0,2)+u:u;for(let f=0;f<n.length;f++){let d=l+n[f];try{if(Rr.sync(d,{pathExt:s}))if(e.all)i.push(d);else return d}catch{}}}if(e.all&&i.length)return i;if(e.nothrow)return null;throw Ar(t)};$r.exports=Ir;Ir.sync=li});var Dr=j((Ul,Et)=>{"use strict";var Pr=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Et.exports=Pr;Et.exports.default=Pr});var Fr=j((Hl,Lr)=>{"use strict";var Nr=ee("path"),di=Or(),fi=Dr();function Mr(t,e){let r=t.options.env||process.env,n=process.cwd(),s=t.options.cwd!=null,i=s&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(t.options.cwd)}catch{}let o;try{o=di.sync(t.command,{path:r[fi({env:r})],pathExt:e?Nr.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return o&&(o=Nr.resolve(s?t.options.cwd:"",o)),o}function pi(t){return Mr(t)||Mr(t,!0)}Lr.exports=pi});var Br=j((Vl,kt)=>{"use strict";var wt=/([()\][%!^"`<>&|;, *?])/g;function mi(t){return t=t.replace(wt,"^$1"),t}function hi(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(wt,"^$1"),e&&(t=t.replace(wt,"^$1")),t}kt.exports.command=mi;kt.exports.argument=hi});var zr=j((Gl,jr)=>{"use strict";jr.exports=/^#!(.*)/});var Ur=j((Kl,Zr)=>{"use strict";var gi=zr();Zr.exports=(t="")=>{let e=t.match(gi);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),s=r.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var Vr=j((Wl,Hr)=>{"use strict";var St=ee("fs"),yi=Ur();function _i(t){let r=Buffer.alloc(150),n;try{n=St.openSync(t,"r"),St.readSync(n,r,0,150,0),St.closeSync(n)}catch{}return yi(r.toString())}Hr.exports=_i});var qr=j((ql,Wr)=>{"use strict";var bi=ee("path"),Gr=Fr(),Kr=Br(),vi=Vr(),xi=process.platform==="win32",Ei=/\.(?:com|exe)$/i,wi=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function ki(t){t.file=Gr(t);let e=t.file&&vi(t.file);return e?(t.args.unshift(t.file),t.command=e,Gr(t)):t.file}function Si(t){if(!xi)return t;let e=ki(t),r=!Ei.test(e);if(t.options.forceShell||r){let n=wi.test(e);t.command=bi.normalize(t.command),t.command=Kr.command(t.command),t.args=t.args.map(i=>Kr.argument(i,n));let s=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${s}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function Ti(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let n={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?n:Si(n)}Wr.exports=Ti});var Xr=j((Yl,Jr)=>{"use strict";var Tt=process.platform==="win32";function Rt(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function Ri(t,e){if(!Tt)return;let r=t.emit;t.emit=function(n,s){if(n==="exit"){let i=Yr(s,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function Yr(t,e){return Tt&&t===1&&!e.file?Rt(e.original,"spawn"):null}function Ai(t,e){return Tt&&t===1&&!e.file?Rt(e.original,"spawnSync"):null}Jr.exports={hookChildProcess:Ri,verifyENOENT:Yr,verifyENOENTSync:Ai,notFoundError:Rt}});var It=j((Jl,Ae)=>{"use strict";var Qr=ee("child_process"),At=qr(),Ct=Xr();function en(t,e,r){let n=At(t,e,r),s=Qr.spawn(n.command,n.args,n.options);return Ct.hookChildProcess(s,n),s}function Ci(t,e,r){let n=At(t,e,r),s=Qr.spawnSync(n.command,n.args,n.options);return s.error=s.error||Ct.verifyENOENTSync(s.status,n),s}Ae.exports=en;Ae.exports.spawn=en;Ae.exports.sync=Ci;Ae.exports._parse=At;Ae.exports._enoent=Ct});var Ys=pr(It(),1);var ur=pr(It(),1);import{existsSync as xl,readFileSync as El,writeFileSync as wl,mkdirSync as kl}from"node:fs";import{join as Sl}from"node:path";import{fileURLToPath as Tl}from"node:url";import{StringDecoder as Rl}from"node:string_decoder";import{readdir as zo,readFile as Zo}from"node:fs/promises";import{join as hn,dirname as Uo}from"node:path";import{fileURLToPath as Ho}from"node:url";var h={};ri(h,{BRAND:()=>to,DIRTY:()=>ce,EMPTY_PATH:()=>Pi,INVALID:()=>x,NEVER:()=>jo,OK:()=>M,ParseStatus:()=>N,Schema:()=>T,ZodAny:()=>ne,ZodArray:()=>Q,ZodBigInt:()=>le,ZodBoolean:()=>de,ZodBranded:()=>Ge,ZodCatch:()=>Ee,ZodDate:()=>fe,ZodDefault:()=>xe,ZodDiscriminatedUnion:()=>ot,ZodEffects:()=>U,ZodEnum:()=>be,ZodError:()=>L,ZodFirstPartyTypeKind:()=>E,ZodFunction:()=>ct,ZodIntersection:()=>ge,ZodIssueCode:()=>p,ZodLazy:()=>ye,ZodLiteral:()=>_e,ZodMap:()=>De,ZodNaN:()=>Me,ZodNativeEnum:()=>ve,ZodNever:()=>H,ZodNull:()=>me,ZodNullable:()=>q,ZodNumber:()=>ue,ZodObject:()=>F,ZodOptional:()=>z,ZodParsedType:()=>y,ZodPipeline:()=>Ke,ZodPromise:()=>se,ZodReadonly:()=>we,ZodRecord:()=>at,ZodSchema:()=>T,ZodSet:()=>Ne,ZodString:()=>re,ZodSymbol:()=>Oe,ZodTransformer:()=>U,ZodTuple:()=>W,ZodType:()=>T,ZodUndefined:()=>pe,ZodUnion:()=>he,ZodUnknown:()=>X,ZodVoid:()=>Pe,addIssueToContext:()=>g,any:()=>lo,array:()=>ho,bigint:()=>io,boolean:()=>fn,coerce:()=>Bo,custom:()=>un,date:()=>oo,datetimeRegex:()=>an,defaultErrorMap:()=>Y,discriminatedUnion:()=>bo,effect:()=>$o,enum:()=>Ao,function:()=>So,getErrorMap:()=>Ce,getParsedType:()=>K,instanceof:()=>no,intersection:()=>vo,isAborted:()=>st,isAsync:()=>Ie,isDirty:()=>it,isValid:()=>te,late:()=>ro,lazy:()=>To,literal:()=>Ro,makeIssue:()=>Ve,map:()=>wo,nan:()=>so,nativeEnum:()=>Co,never:()=>po,null:()=>uo,nullable:()=>Po,number:()=>dn,object:()=>go,objectUtil:()=>$t,oboolean:()=>Fo,onumber:()=>Lo,optional:()=>Oo,ostring:()=>Mo,pipeline:()=>No,preprocess:()=>Do,promise:()=>Io,quotelessJson:()=>Ii,record:()=>Eo,set:()=>ko,setErrorMap:()=>Oi,strictObject:()=>yo,string:()=>ln,symbol:()=>ao,transformer:()=>$o,tuple:()=>xo,undefined:()=>co,union:()=>_o,unknown:()=>fo,util:()=>R,void:()=>mo});var R;(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let o of s)i[o]=o;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(a=>typeof s[s[a]]!="number"),o={};for(let a of i)o[a]=s[a];return t.objectValues(o)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let o in s)Object.prototype.hasOwnProperty.call(s,o)&&i.push(o);return i},t.find=(s,i)=>{for(let o of s)if(i(o))return o},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(o=>typeof o=="string"?`'${o}'`:o).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(R||(R={}));var $t;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})($t||($t={}));var y=R.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),K=t=>{switch(typeof t){case"undefined":return y.undefined;case"string":return y.string;case"number":return Number.isNaN(t)?y.nan:y.number;case"boolean":return y.boolean;case"function":return y.function;case"bigint":return y.bigint;case"symbol":return y.symbol;case"object":return Array.isArray(t)?y.array:t===null?y.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?y.promise:typeof Map<"u"&&t instanceof Map?y.map:typeof Set<"u"&&t instanceof Set?y.set:typeof Date<"u"&&t instanceof Date?y.date:y.object;default:return y.unknown}};var p=R.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Ii=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),L=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let o of i.issues)if(o.code==="invalid_union")o.unionErrors.map(s);else if(o.code==="invalid_return_type")s(o.returnTypeError);else if(o.code==="invalid_arguments")s(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;c<o.path.length;){let u=o.path[c];c===o.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(o))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,R.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};L.create=t=>new L(t);var $i=(t,e)=>{let r;switch(t.code){case p.invalid_type:t.received===y.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case p.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,R.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:r=`Unrecognized key(s) in object: ${R.joinValues(t.keys,", ")}`;break;case p.invalid_union:r="Invalid input";break;case p.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${R.joinValues(t.options)}`;break;case p.invalid_enum_value:r=`Invalid enum value. Expected ${R.joinValues(t.options)}, received '${t.received}'`;break;case p.invalid_arguments:r="Invalid function arguments";break;case p.invalid_return_type:r="Invalid function return type";break;case p.invalid_date:r="Invalid date";break;case p.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:R.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case p.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case p.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case p.custom:r="Invalid input";break;case p.invalid_intersection_types:r="Intersection results could not be merged";break;case p.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case p.not_finite:r="Number must be finite";break;default:r=e.defaultError,R.assertNever(t)}return{message:r}},Y=$i;var tn=Y;function Oi(t){tn=t}function Ce(){return tn}var Ve=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],o={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...s,path:i,message:a}},Pi=[];function g(t,e){let r=Ce(),n=Ve({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Y?void 0:Y].filter(s=>!!s)});t.common.issues.push(n)}var N=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let s of r){if(s.status==="aborted")return x;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,o=await s.value;n.push({key:i,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:o}=s;if(i.status==="aborted"||o.status==="aborted")return x;i.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof o.value<"u"||s.alwaysSet)&&(n[i.value]=o.value)}return{status:e.value,value:n}}},x=Object.freeze({status:"aborted"}),ce=t=>({status:"dirty",value:t}),M=t=>({status:"valid",value:t}),st=t=>t.status==="aborted",it=t=>t.status==="dirty",te=t=>t.status==="valid",Ie=t=>typeof Promise<"u"&&t instanceof Promise;var b;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(b||(b={}));var Z=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},rn=(t,e)=>{if(te(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new L(t.common.issues);return this._error=r,this._error}}};function S(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:s}}var T=class{get description(){return this._def.description}_getType(e){return K(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:K(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new N,ctx:{common:e.parent.common,data:e.data,parsedType:K(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Ie(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:K(e)},s=this._parseSync({data:e,path:n.path,parent:n});return rn(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:K(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return te(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>te(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:K(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Ie(s)?s:Promise.resolve(s));return rn(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let o=e(s),a=()=>i.addIssue({code:p.custom,...n(s)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new U({schema:this,typeName:E.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return z.create(this,this._def)}nullable(){return q.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Q.create(this)}promise(){return se.create(this,this._def)}or(e){return he.create([this,e],this._def)}and(e){return ge.create(this,e,this._def)}transform(e){return new U({...S(this._def),schema:this,typeName:E.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new xe({...S(this._def),innerType:this,defaultValue:r,typeName:E.ZodDefault})}brand(){return new Ge({typeName:E.ZodBranded,type:this,...S(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Ee({...S(this._def),innerType:this,catchValue:r,typeName:E.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Ke.create(this,e)}readonly(){return we.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Di=/^c[^\s-]{8,}$/i,Ni=/^[0-9a-z]+$/,Mi=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Li=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Fi=/^[a-z0-9_-]{21}$/i,Bi=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ji=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,zi=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Zi="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ot,Ui=/^(?:(?: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])$/,Hi=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,Vi=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Gi=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ki=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Wi=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,sn="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",qi=new RegExp(`^${sn}$`);function on(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Yi(t){return new RegExp(`^${on(t)}$`)}function an(t){let e=`${sn}T${on(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Ji(t,e){return!!((e==="v4"||!e)&&Ui.test(t)||(e==="v6"||!e)&&Vi.test(t))}function Xi(t,e){if(!Bi.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function Qi(t,e){return!!((e==="v4"||!e)&&Hi.test(t)||(e==="v6"||!e)&&Gi.test(t))}var re=class t extends T{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==y.string){let i=this._getOrReturnCtx(e);return g(i,{code:p.invalid_type,expected:y.string,received:i.parsedType}),x}let n=new N,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let o=e.data.length>i.value,a=e.data.length<i.value;(o||a)&&(s=this._getOrReturnCtx(e,s),o?g(s,{code:p.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):a&&g(s,{code:p.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")zi.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"email",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")Ot||(Ot=new RegExp(Zi,"u")),Ot.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"emoji",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")Li.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"uuid",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")Fi.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"nanoid",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")Di.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"cuid",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")Ni.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"cuid2",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")Mi.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"ulid",code:p.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),g(s,{validation:"url",code:p.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"regex",code:p.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?an(i).test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?qi.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?Yi(i).test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?ji.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"duration",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?Ji(e.data,i.version)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"ip",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?Xi(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"jwt",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?Qi(e.data,i.version)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"cidr",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?Ki.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"base64",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?Wi.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"base64url",code:p.invalid_string,message:i.message}),n.dirty()):R.assertNever(i);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:p.invalid_string,...b.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...b.errToObj(e)})}url(e){return this._addCheck({kind:"url",...b.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...b.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...b.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...b.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...b.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...b.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...b.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...b.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...b.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...b.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...b.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...b.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...b.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...b.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...b.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...b.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...b.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...b.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...b.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...b.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...b.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...b.errToObj(r)})}nonempty(e){return this.min(1,b.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};re.create=t=>new re({checks:[],typeName:E.ZodString,coerce:t?.coerce??!1,...S(t)});function eo(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),o=Number.parseInt(e.toFixed(s).replace(".",""));return i%o/10**s}var ue=class t extends T{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==y.number){let i=this._getOrReturnCtx(e);return g(i,{code:p.invalid_type,expected:y.number,received:i.parsedType}),x}let n,s=new N;for(let i of this._def.checks)i.kind==="int"?R.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),g(n,{code:p.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?eo(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),g(n,{code:p.not_finite,message:i.message}),s.dirty()):R.assertNever(i);return{status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,b.toString(r))}gt(e,r){return this.setLimit("min",e,!1,b.toString(r))}lte(e,r){return this.setLimit("max",e,!0,b.toString(r))}lt(e,r){return this.setLimit("max",e,!1,b.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:b.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:b.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:b.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:b.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:b.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:b.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:b.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:b.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:b.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:b.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&R.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};ue.create=t=>new ue({checks:[],typeName:E.ZodNumber,coerce:t?.coerce||!1,...S(t)});var le=class t extends T{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==y.bigint)return this._getInvalidInput(e);let n,s=new N;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),g(n,{code:p.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):R.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:y.bigint,received:r.parsedType}),x}gte(e,r){return this.setLimit("min",e,!0,b.toString(r))}gt(e,r){return this.setLimit("min",e,!1,b.toString(r))}lte(e,r){return this.setLimit("max",e,!0,b.toString(r))}lt(e,r){return this.setLimit("max",e,!1,b.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:b.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:b.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:b.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:b.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:b.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:b.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};le.create=t=>new le({checks:[],typeName:E.ZodBigInt,coerce:t?.coerce??!1,...S(t)});var de=class extends T{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==y.boolean){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.boolean,received:n.parsedType}),x}return M(e.data)}};de.create=t=>new de({typeName:E.ZodBoolean,coerce:t?.coerce||!1,...S(t)});var fe=class t extends T{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==y.date){let i=this._getOrReturnCtx(e);return g(i,{code:p.invalid_type,expected:y.date,received:i.parsedType}),x}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return g(i,{code:p.invalid_date}),x}let n=new N,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):R.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:b.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:b.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};fe.create=t=>new fe({checks:[],coerce:t?.coerce||!1,typeName:E.ZodDate,...S(t)});var Oe=class extends T{_parse(e){if(this._getType(e)!==y.symbol){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.symbol,received:n.parsedType}),x}return M(e.data)}};Oe.create=t=>new Oe({typeName:E.ZodSymbol,...S(t)});var pe=class extends T{_parse(e){if(this._getType(e)!==y.undefined){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.undefined,received:n.parsedType}),x}return M(e.data)}};pe.create=t=>new pe({typeName:E.ZodUndefined,...S(t)});var me=class extends T{_parse(e){if(this._getType(e)!==y.null){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.null,received:n.parsedType}),x}return M(e.data)}};me.create=t=>new me({typeName:E.ZodNull,...S(t)});var ne=class extends T{constructor(){super(...arguments),this._any=!0}_parse(e){return M(e.data)}};ne.create=t=>new ne({typeName:E.ZodAny,...S(t)});var X=class extends T{constructor(){super(...arguments),this._unknown=!0}_parse(e){return M(e.data)}};X.create=t=>new X({typeName:E.ZodUnknown,...S(t)});var H=class extends T{_parse(e){let r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:y.never,received:r.parsedType}),x}};H.create=t=>new H({typeName:E.ZodNever,...S(t)});var Pe=class extends T{_parse(e){if(this._getType(e)!==y.undefined){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.void,received:n.parsedType}),x}return M(e.data)}};Pe.create=t=>new Pe({typeName:E.ZodVoid,...S(t)});var Q=class t extends T{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==y.array)return g(r,{code:p.invalid_type,expected:y.array,received:r.parsedType}),x;if(s.exactLength!==null){let o=r.data.length>s.exactLength.value,a=r.data.length<s.exactLength.value;(o||a)&&(g(r,{code:o?p.too_big:p.too_small,minimum:a?s.exactLength.value:void 0,maximum:o?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(g(r,{code:p.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(g(r,{code:p.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>s.type._parseAsync(new Z(r,o,r.path,a)))).then(o=>N.mergeArray(n,o));let i=[...r.data].map((o,a)=>s.type._parseSync(new Z(r,o,r.path,a)));return N.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:b.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:b.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:b.toString(r)}})}nonempty(e){return this.min(1,e)}};Q.create=(t,e)=>new Q({type:t,minLength:null,maxLength:null,exactLength:null,typeName:E.ZodArray,...S(e)});function $e(t){if(t instanceof F){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=z.create($e(n))}return new F({...t._def,shape:()=>e})}else return t instanceof Q?new Q({...t._def,type:$e(t.element)}):t instanceof z?z.create($e(t.unwrap())):t instanceof q?q.create($e(t.unwrap())):t instanceof W?W.create(t.items.map(e=>$e(e))):t}var F=class t extends T{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=R.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==y.object){let u=this._getOrReturnCtx(e);return g(u,{code:p.invalid_type,expected:y.object,received:u.parsedType}),x}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof H&&this._def.unknownKeys==="strip"))for(let u in s.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=i[u],f=s.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Z(s,f,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof H){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(u==="strict")a.length>0&&(g(s,{code:p.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let f=s.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Z(s,f,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let f=await l.key,d=await l.value;u.push({key:f,value:d,alwaysSet:l.alwaysSet})}return u}).then(u=>N.mergeObjectSync(n,u)):N.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return b.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:b.errToObj(e).message??s}:{message:s}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:E.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of R.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of R.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return $e(this)}partial(e){let r={};for(let n of R.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of R.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof z;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return cn(R.objectKeys(this.shape))}};F.create=(t,e)=>new F({shape:()=>t,unknownKeys:"strip",catchall:H.create(),typeName:E.ZodObject,...S(e)});F.strictCreate=(t,e)=>new F({shape:()=>t,unknownKeys:"strict",catchall:H.create(),typeName:E.ZodObject,...S(e)});F.lazycreate=(t,e)=>new F({shape:t,unknownKeys:"strip",catchall:H.create(),typeName:E.ZodObject,...S(e)});var he=class extends T{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let a of i)if(a.result.status==="valid")return a.result;for(let a of i)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=i.map(a=>new L(a.ctx.common.issues));return g(r,{code:p.invalid_union,unionErrors:o}),x}if(r.common.async)return Promise.all(n.map(async i=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(s);{let i,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let a=o.map(c=>new L(c));return g(r,{code:p.invalid_union,unionErrors:a}),x}}get options(){return this._def.options}};he.create=(t,e)=>new he({options:t,typeName:E.ZodUnion,...S(e)});var J=t=>t instanceof ye?J(t.schema):t instanceof U?J(t.innerType()):t instanceof _e?[t.value]:t instanceof be?t.options:t instanceof ve?R.objectValues(t.enum):t instanceof xe?J(t._def.innerType):t instanceof pe?[void 0]:t instanceof me?[null]:t instanceof z?[void 0,...J(t.unwrap())]:t instanceof q?[null,...J(t.unwrap())]:t instanceof Ge||t instanceof we?J(t.unwrap()):t instanceof Ee?J(t._def.innerType):[],ot=class t extends T{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.object)return g(r,{code:p.invalid_type,expected:y.object,received:r.parsedType}),x;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(g(r,{code:p.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),x)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let o=J(i.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(s.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);s.set(a,i)}}return new t({typeName:E.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...S(n)})}};function Pt(t,e){let r=K(t),n=K(e);if(t===e)return{valid:!0,data:t};if(r===y.object&&n===y.object){let s=R.objectKeys(e),i=R.objectKeys(t).filter(a=>s.indexOf(a)!==-1),o={...t,...e};for(let a of i){let c=Pt(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===y.array&&n===y.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let o=t[i],a=e[i],c=Pt(o,a);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return r===y.date&&n===y.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var ge=class extends T{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,o)=>{if(st(i)||st(o))return x;let a=Pt(i.value,o.value);return a.valid?((it(i)||it(o))&&r.dirty(),{status:r.value,value:a.data}):(g(n,{code:p.invalid_intersection_types}),x)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,o])=>s(i,o)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};ge.create=(t,e,r)=>new ge({left:t,right:e,typeName:E.ZodIntersection,...S(r)});var W=class t extends T{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.array)return g(n,{code:p.invalid_type,expected:y.array,received:n.parsedType}),x;if(n.data.length<this._def.items.length)return g(n,{code:p.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),x;!this._def.rest&&n.data.length>this._def.items.length&&(g(n,{code:p.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Z(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(i).then(o=>N.mergeArray(r,o)):N.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};W.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new W({items:t,typeName:E.ZodTuple,rest:null,...S(e)})};var at=class t extends T{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.object)return g(n,{code:p.invalid_type,expected:y.object,received:n.parsedType}),x;let s=[],i=this._def.keyType,o=this._def.valueType;for(let a in n.data)s.push({key:i._parse(new Z(n,a,n.path,a)),value:o._parse(new Z(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?N.mergeObjectAsync(r,s):N.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof T?new t({keyType:e,valueType:r,typeName:E.ZodRecord,...S(n)}):new t({keyType:re.create(),valueType:e,typeName:E.ZodRecord,...S(r)})}},De=class extends T{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.map)return g(n,{code:p.invalid_type,expected:y.map,received:n.parsedType}),x;let s=this._def.keyType,i=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:s._parse(new Z(n,a,n.path,[u,"key"])),value:i._parse(new Z(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return x;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return x;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};De.create=(t,e,r)=>new De({valueType:e,keyType:t,typeName:E.ZodMap,...S(r)});var Ne=class t extends T{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.set)return g(n,{code:p.invalid_type,expected:y.set,received:n.parsedType}),x;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(g(n,{code:p.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(g(n,{code:p.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return x;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>i._parse(new Z(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:b.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:b.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Ne.create=(t,e)=>new Ne({valueType:t,minSize:null,maxSize:null,typeName:E.ZodSet,...S(e)});var ct=class t extends T{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.function)return g(r,{code:p.invalid_type,expected:y.function,received:r.parsedType}),x;function n(a,c){return Ve({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ce(),Y].filter(u=>!!u),issueData:{code:p.invalid_arguments,argumentsError:c}})}function s(a,c){return Ve({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ce(),Y].filter(u=>!!u),issueData:{code:p.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof se){let a=this;return M(async function(...c){let u=new L([]),l=await a._def.args.parseAsync(c,i).catch(m=>{throw u.addIssue(n(c,m)),u}),f=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(f,i).catch(m=>{throw u.addIssue(s(f,m)),u})})}else{let a=this;return M(function(...c){let u=a._def.args.safeParse(c,i);if(!u.success)throw new L([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),f=a._def.returns.safeParse(l,i);if(!f.success)throw new L([s(l,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:W.create(e).rest(X.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||W.create([]).rest(X.create()),returns:r||X.create(),typeName:E.ZodFunction,...S(n)})}},ye=class extends T{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};ye.create=(t,e)=>new ye({getter:t,typeName:E.ZodLazy,...S(e)});var _e=class extends T{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return g(r,{received:r.data,code:p.invalid_literal,expected:this._def.value}),x}return{status:"valid",value:e.data}}get value(){return this._def.value}};_e.create=(t,e)=>new _e({value:t,typeName:E.ZodLiteral,...S(e)});function cn(t,e){return new be({values:t,typeName:E.ZodEnum,...S(e)})}var be=class t extends T{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return g(r,{expected:R.joinValues(n),received:r.parsedType,code:p.invalid_type}),x}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return g(r,{received:r.data,code:p.invalid_enum_value,options:n}),x}return M(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};be.create=cn;var ve=class extends T{_parse(e){let r=R.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==y.string&&n.parsedType!==y.number){let s=R.objectValues(r);return g(n,{expected:R.joinValues(s),received:n.parsedType,code:p.invalid_type}),x}if(this._cache||(this._cache=new Set(R.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=R.objectValues(r);return g(n,{received:n.data,code:p.invalid_enum_value,options:s}),x}return M(e.data)}get enum(){return this._def.values}};ve.create=(t,e)=>new ve({values:t,typeName:E.ZodNativeEnum,...S(e)});var se=class extends T{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.promise&&r.common.async===!1)return g(r,{code:p.invalid_type,expected:y.promise,received:r.parsedType}),x;let n=r.parsedType===y.promise?r.data:Promise.resolve(r.data);return M(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};se.create=(t,e)=>new se({type:t,typeName:E.ZodPromise,...S(e)});var U=class extends T{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===E.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:o=>{g(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let o=s.transform(n.data,i);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return x;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?x:c.status==="dirty"?ce(c.value):r.value==="dirty"?ce(c.value):c});{if(r.value==="aborted")return x;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?x:a.status==="dirty"?ce(a.value):r.value==="dirty"?ce(a.value):a}}if(s.type==="refinement"){let o=a=>{let c=s.refinement(a,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?x:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?x:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(s.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!te(o))return x;let a=s.transform(o.value,i);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>te(o)?Promise.resolve(s.transform(o.value,i)).then(a=>({status:r.value,value:a})):x);R.assertNever(s)}};U.create=(t,e,r)=>new U({schema:t,typeName:E.ZodEffects,effect:e,...S(r)});U.createWithPreprocess=(t,e,r)=>new U({schema:e,effect:{type:"preprocess",transform:t},typeName:E.ZodEffects,...S(r)});var z=class extends T{_parse(e){return this._getType(e)===y.undefined?M(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};z.create=(t,e)=>new z({innerType:t,typeName:E.ZodOptional,...S(e)});var q=class extends T{_parse(e){return this._getType(e)===y.null?M(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};q.create=(t,e)=>new q({innerType:t,typeName:E.ZodNullable,...S(e)});var xe=class extends T{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===y.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};xe.create=(t,e)=>new xe({innerType:t,typeName:E.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...S(e)});var Ee=class extends T{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Ie(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new L(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new L(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ee.create=(t,e)=>new Ee({innerType:t,typeName:E.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...S(e)});var Me=class extends T{_parse(e){if(this._getType(e)!==y.nan){let n=this._getOrReturnCtx(e);return g(n,{code:p.invalid_type,expected:y.nan,received:n.parsedType}),x}return{status:"valid",value:e.data}}};Me.create=t=>new Me({typeName:E.ZodNaN,...S(t)});var to=Symbol("zod_brand"),Ge=class extends T{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Ke=class t extends T{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?x:i.status==="dirty"?(r.dirty(),ce(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?x:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:E.ZodPipeline})}},we=class extends T{_parse(e){let r=this._def.innerType._parse(e),n=s=>(te(s)&&(s.value=Object.freeze(s.value)),s);return Ie(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};we.create=(t,e)=>new we({innerType:t,typeName:E.ZodReadonly,...S(e)});function nn(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function un(t,e={},r){return t?ne.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(o=>{if(!o){let a=nn(e,n),c=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:c})}});if(!i){let o=nn(e,n),a=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:a})}}):ne.create()}var ro={object:F.lazycreate},E;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(E||(E={}));var no=(t,e={message:`Input not instance of ${t.name}`})=>un(r=>r instanceof t,e),ln=re.create,dn=ue.create,so=Me.create,io=le.create,fn=de.create,oo=fe.create,ao=Oe.create,co=pe.create,uo=me.create,lo=ne.create,fo=X.create,po=H.create,mo=Pe.create,ho=Q.create,go=F.create,yo=F.strictCreate,_o=he.create,bo=ot.create,vo=ge.create,xo=W.create,Eo=at.create,wo=De.create,ko=Ne.create,So=ct.create,To=ye.create,Ro=_e.create,Ao=be.create,Co=ve.create,Io=se.create,$o=U.create,Oo=z.create,Po=q.create,Do=U.createWithPreprocess,No=Ke.create,Mo=()=>ln().optional(),Lo=()=>dn().optional(),Fo=()=>fn().optional(),Bo={string:(t=>re.create({...t,coerce:!0})),number:(t=>ue.create({...t,coerce:!0})),boolean:(t=>de.create({...t,coerce:!0})),bigint:(t=>le.create({...t,coerce:!0})),date:(t=>fe.create({...t,coerce:!0}))};var jo=x;var Le=h.object({slug:h.string().min(1).max(64),description:h.string().max(255).optional(),match_command:h.string().min(1),priority:h.number().int().default(50),strip_ansi:h.boolean().default(!1),strip_lines_matching:h.array(h.string()).default([]),keep_failures:h.boolean().default(!1),fold_passing:h.boolean().default(!1),fold_passing_threshold:h.number().int().positive().max(1e3).optional(),mask_abs_paths:h.boolean().default(!1),preserve_exact:h.boolean().default(!1),truncate_lines_at:h.number().int().positive().max(1e4).optional(),max_lines:h.number().int().positive().max(1e5).optional(),scale_with_level:h.boolean().default(!0),transform:h.string().max(64).optional(),on_empty:h.string().max(255).optional()});var Vo=Uo(Ho(import.meta.url)),pn=process.env.TOKMIZER_FILTERS_DIR||hn(Vo,"..","..","filters"),ie=null,mn=!1;function Go(){return process.env.TOKMIZER_DEV==="1"||process.env.TOKMIZER_DEV==="true"}async function gn(){if(ie)return ie;if(!Go())return!mn&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
4
- `),mn=!0),ie=new Map,ie;let t=new Map,e,r;try{e=(await import("smol-toml")).parse,r=(await zo(pn)).filter(n=>n.endsWith(".toml"))}catch{return ie=t,ie}for(let n of r){let s=await Zo(hn(pn,n),"utf8"),o=e(s).filters;if(o)for(let[a,c]of Object.entries(o)){let u=Le.parse({slug:a,...c});t.set(a,{...u,matchRegex:new RegExp(u.match_command)})}}return ie=t,ie}import{createHash as Ko}from"node:crypto";var Wo=h.enum(["normal","compact","minimal"]),qo=h.enum(["off","light","balanced","max"]),We=h.object({enabled:h.boolean().default(!0),telemetryOptIn:h.boolean().default(!0),outputVerbosity:Wo.default("compact"),reducer:qo.default("off"),filters:h.object({enableAll:h.boolean().default(!0),disabled:h.array(h.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),Yo=["git","git-status","git-log","git-diff","grep","find","diff","ls","ls-long","ps","cat","head","tail","df","du","tree","wc","nl","xargs","seq","echo","printf","sleep","shasum","python","node","read-tool","grep-tool","glob-tool","bash-tool","npm","npm-test","docker","kubectl","curl","cargo","go-test","go-build","gh","gh-api","aws","dotnet","prisma","tsc","next","jest","vitest","pytest","pip","rspec"],Jo=/^[0-9a-f]{16}$/,yn=new Map;function V(t){let e=yn.get(t);return e||(e=Ko("sha256").update(`tkr:${t}`).digest("hex").slice(0,16),yn.set(t,e)),e}var _n=null;function ut(t,e=!1){return e||!t||t.length===0?(_n??=new Set(Yo.map(V)),new Set(_n)):new Set(t.map(r=>Jo.test(r)?r:V(r)))}var bn=new WeakMap,Xo=256;function lt(t,e,r,n=e){let s=bn.get(n);s||(s=new Map,bn.set(n,s));let i=JSON.stringify([t,r?[...r].sort():null]),o=s.get(i);if(o!==void 0)return o;let a=null;for(let c of e)r&&!r.has(V(c.slug))||c.matchRegex.test(t)&&(!a||c.priority>a.priority)&&(a=c);if(s.size>=Xo){let c=s.keys().next().value;c&&s.delete(c)}return s.set(i,a),a}var Qo=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,ea=/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g;function ke(t){return t.replace(Qo,"").replace(ea,"")}function vn(t,e){return e.length===0?t:t.filter(r=>!e.some(n=>n.test(r)))}function xn(t,e){return t.map(r=>{if(r.length<=e)return r;let n=r.charCodeAt(e-1),s=r.charCodeAt(e),i=n>=55296&&n<=56319&&s>=56320&&s<=57343?e-1:e;return`${r.slice(0,i)}\u2026`})}function dt(t){return`\u2026 (${t} more lines omitted)`}function En(t,e){if(t.length<=e)return{kept:t,dropped:[]};let r=Math.ceil(e*.7),n=e-r,s=t.slice(r,t.length-n);return{kept:[...t.slice(0,r),dt(s.length),...t.slice(t.length-n)],dropped:s}}var ta=/^\s*(?:[✓✔√]|ok )/,oe=/✕|✗|×|\bFAIL\b|\bERROR\b|\bFATAL\b|\bError|\berror|Expected|Received|\bfailed\b|^\s*Tests?:|^\s*Test Suites?:/;function wn(t,e){let r=e>0?e:5,n=[],s=0,i=a=>{s>=r?n.push(`\u2026 ${s} passing checks folded \u2026`):n.push(...a)},o=[];for(let a of t)ta.test(a)&&!oe.test(a)?(o.push(a),s+=1):(i(o),o=[],s=0,n.push(a));return i(o),n}var ra=/(?:\/[\w.@+-]+){3,}/g;function kn(t){return t.map(e=>e.replace(ra,r=>{let n=r.split("/").filter(Boolean);return n.length<=2?r:`\u2026/${n.slice(-2).join("/")}`}))}var na=/^(\s*)(?:export\s+)?(?:async\s+)?(?:function|interface|type|const|let|var|def|fn|impl|trait|struct|enum)\s+[\w$]+/,sa=/\{\s*$/;var ia=/^\s*(?:(?:public|private|protected|static|async|get|set|readonly|override)\s+)*([\w$]+)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\{\s*$/,oa=new Set(["if","for","while","switch","catch","do","with","return","else","function","await","yield"]);function aa(t){let e=ia.exec(t);return!e||oa.has(e[1])?!1:!/=>|\bfunction\b/.test(e[2])}var ca=/^\s*(?:if|for|while|switch|try|do)\b[^{}]*\{\s*$/;function ua(t,e,r){let n=e;for(;n<t.length;){if(t[n]==="\\"){n+=2;continue}if(t[n]===r)return!0;n+=1}return!1}function la(t,e){let r=0,n=null,s=0;for(;s<t.length;){let i=t[s];if(e.inBlockComment){if(i==="*"&&t[s+1]==="/"){e.inBlockComment=!1,s+=2;continue}s+=1;continue}if(e.inTemplate){if(i==="\\"){s+=2;continue}i==="`"&&(e.inTemplate=!1),s+=1;continue}if(n){if(i==="\\"){s+=2;continue}i===n&&(n=null),s+=1;continue}if(i==="/"&&t[s+1]==="/")break;if(i==="/"&&t[s+1]==="*"){e.inBlockComment=!0,s+=2;continue}if(i==="`"){e.inTemplate=!0,s+=1;continue}if(i==="'"||i==='"'){let o=s>0?t[s-1]:"";!(i==="'"&&(o==="<"||o==="&"))&&ua(t,s+1,i)&&(n=i),s+=1;continue}i==="{"||i==="("||i==="["?r+=1:(i==="}"||i===")"||i==="]")&&(r-=1),s+=1}return r}var Sn=/^\s*… \d+ lines? folded …$/,da=/^\s*… (\d+) lines? folded …$/;function Dt(t){let e=new Array(t.length).fill(!1);for(let r=0;r<t.length;r+=1){let n=da.exec(t[r]);if(!n)continue;let s=Number(n[1])-1,i=r+1;for(;s>0&&i<t.length&&t[i]==="";)e[i]=!0,s-=1,i+=1;r=i-1}return e}function qe(t,e=3){let r=[],n=0;for(;n<t.length;){let s=t[n];if(na.test(s)&&sa.test(s)||aa(s)||ca.test(s)){let i={inBlockComment:!1,inTemplate:!1},o=0,a=n,c=!1;for(;a<t.length&&a-n<200;)if(o+=la(t[a],i),a+=1,o<=0&&!i.inTemplate&&!i.inBlockComment){c=!0;break}let u=a-n;if(c&&u<e){r.push(...t.slice(n,a)),n=a;continue}if(c&&u>=3){let l=u-2,f=/^\s*/.exec(t[n+1]??"")?.[0]??" ";r.push(s),r.push(`${f}\u2026 ${l} ${l===1?"line":"lines"} folded \u2026`);for(let d=0;d<l-1;d++)r.push("");r.push(t[a-1]),n=a;continue}}r.push(s),n+=1}return r}var fa=/\b(?:function|class|interface|import\s+|export\s+|def\s+|fn\s+|impl\s+|package\s+|namespace\s+|using\s+|#include|=>\s*\{|=\s*function)/;function ft(t){let e=t.slice(0,4096);return!(!fa.test(e)||e.split(`
5
- `).length<6)}var pa=/^\s*(?:\d{4}-\d{2}-\d{2}[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?Z?|\d{2}:\d{2}:\d{2}(?:\.\d+)?)\s*/,ma=/^\s*(?:\[(?:DEBUG|TRACE|INFO|VERBOSE)\]|(?:DEBUG|TRACE|INFO|VERBOSE)(?!\s*:))(?=\s|:|$)(?!\s*[+\-*\/%&|^?]*=)/,ha=new RegExp(oe.source,"i"),ga=/\bWARN(?:ING)?\b/i;function Tn(t){let e=[],r=0,n=()=>{r>0&&e.push(`\u2026 ${r} verbose log line${r===1?"":"s"} dropped \u2026`),r=0};for(let s of t){if(ma.test(s.replace(pa,""))&&!ha.test(s)&&!ga.test(s)){r+=1;continue}n(),e.push(s)}return n(),e}function Rn(t){if(t.length===0)return t;let e=[],r=1,n=t[0];for(let s=1;s<t.length;s++){if(t[s]===n){r+=1;continue}e.push(r>1?`${n} \xD7${r}`:n),n=t[s],r=1}return e.push(r>1?`${n} \xD7${r}`:n),e}function An(t){let e=[],r=0;for(let n of t){if(n.trim()===""){r+=1;continue}r>0&&e.push(""),r=0,e.push(n)}return e}var Cn=new Map;function B(t,e){Cn.set(t,e)}function In(t){return Cn.get(t)}var ya=/^[dbclps\-][rwxsStT\-]{9}[@.+]?(?:\s|$)/,_a=/^[./~][^\s]*:$/,Nt=1e3;function ba(t){if(t<1024)return String(t);let e=["K","M","G","T"],r=t/1024,n=0;for(;r>=1024&&n<e.length-1;)r/=1024,n+=1;return`${r.toFixed(1)}${e[n]}`}function va(t){if(!ya.test(t))return null;let e=t.split(/\s+/);if(e.length<9)return null;let r=Number(e[4]);if(!Number.isFinite(r))return null;let n=e.slice(8).join(" ").trim();if(n===""||n==="."||n==="..")return null;let s=e[0].charCodeAt(0)===100;return{name:n,size:r,isDir:s}}function xa(t){if(t.length<3)return null;let e=new Map;for(let s of t){let i=s.name.lastIndexOf(".");if(i<=0)continue;let o=s.name.slice(i);e.set(o,(e.get(o)??0)+1)}let r=null,n=0;for(let[s,i]of e)i>n&&(n=i,r=s);return r&&n>=Math.ceil(t.length/2)?`${n} ${r}`:null}function Ea(t){let e=[],r=[],n=!1;for(let d of t){if(/^total\s+\d+/.test(d))continue;if(_a.test(d.trim()))return t;let m=va(d);m&&(n=!0,(m.isDir?e:r).push(m))}if(!n)return t;let s=(d,m)=>d.name.localeCompare(m.name);e.sort(s),r.sort((d,m)=>m.size-d.size||s(d,m));let i=[...e,...r],o=Math.min(40,Math.max(0,...i.map(d=>d.isDir?d.name.length+1:d.name.length))),a=[];for(let d of i){let m=d.isDir?`${d.name}/`:d.name,v=d.isDir?"":ba(d.size);a.push(v?`${m.padEnd(o)} ${v}`:m)}if(a.length>Nt){let d=a.length-Nt;a=[...a.slice(0,Nt),`\u2026 ${d} more lines omitted`]}let c=r.length===1?"file":"files",u=e.length===1?"dir":"dirs",l=xa(r),f=`${r.length} ${c}, ${e.length} ${u}`+(l?` (${l})`:"");return a.push(f),a}B("smart-ls",Ea);B("smart-read",t=>qe(t));var $n=1e3;function wa(t){let e=t.filter(l=>l.trim()!=="");if(e.length===0||e.filter(l=>!/\s/.test(l.trim())).length<e.length*.6)return t;let n=new Map,s=[],i=0;for(let l of e){let f=l.trim();if(f.startsWith("find:")){s.push(f);continue}let d=f.replace(/^\.\//,"").replace(/\/+$/,""),m=d.lastIndexOf("/"),v=m>=0?d.slice(0,m):"",w=m>=0?d.slice(m+1):d;if(!w)continue;let _=n.get(v)??[];_.push(/\s/.test(w)?`"${w}"`:w),n.set(v,_),i+=1}if(i===0)return t;let o=new Set([""]);for(let l of n.keys()){if(l==="")continue;let f=l.split("/");for(let d=1;d<=f.length;d+=1)o.add(f.slice(0,d).join("/"))}let a=[...o].sort(),c=a.filter(l=>l!=="").length,u=[`${i}F ${c}D:`,""];for(let l of a){let f=l===""?0:l.split("/").length,d=l===""?".":l.slice(l.lastIndexOf("/")+1),m=n.get(l)??[],v=m.length?` ${m.join(" ")}`:"";u.push(`${" ".repeat(f)}${d}/${v}`)}if(u.length+s.length>$n){let l=Math.max(0,$n-s.length),f=u.length-l;return[...u.slice(0,l),`\u2026 ${f} more lines omitted`,...s]}return[...u,...s]}B("smart-find",wa);var Mt=1e3,On=200,ka=60,Sa=190,Ta=/^([^\s:]+):(\d+):(.*)$/,Ra=/^([^:]+?)-(\d+)-(.*)$/,Aa=/^([^\s:]+):(.*)$/,Pn=/(?:^|\/)(?:__tests__|tests?|spec|fixtures?|__mocks__|__snapshots__)\/|\.(?:test|spec)\.[^/]+$/i;function Dn(t){let e=t.trim();return e.length>On?`${e.slice(0,On)}\u2026`:e}function Ca(t){let e=[],r="";for(let n of t){let s=r?`${r}, ${n}`:n;s.length>Sa&&r?(e.push(`${r},`),r=n):r=s}return r&&e.push(r),e}function Ia(t){let e=t.filter(f=>f.trim()!=="");if(e.length===0)return t;let r=new Map,n=new Map,s=null,i=0,o=0;for(let f of e){if(f==="--"){s&&r.get(s).push({separator:!0});continue}if(/^[A-Za-z]:[\\/]/.test(f))return t;let d=Ta.exec(f),m=Ra.exec(f);if(d&&m)return t;let v=d||m?null:Aa.exec(f),w=(d??m??v)?.[1];if(!w)return t;let _=d?{line:d[2],content:d[3],context:!1}:m?{line:m[2],content:m[3],context:!0}:{line:"",content:v[2],context:!1},I=r.get(w)??[];I.push(_),r.set(w,I),_.context||(i+=1,n.set(w,(n.get(w)??0)+1)),o+=1,s=w}if(r.size===o)return t;let a=[...r.keys()].sort((f,d)=>{let m=Pn.test(f)?1:0,v=Pn.test(d)?1:0;return m-v||(f<d?-1:f>d?1:0)}),c=[];for(let f of a){c.push(`${f} (${n.get(f)??0}):`);for(let d of r.get(f))"separator"in d?c.push(" --"):d.line?c.push(` ${d.line}${d.context?"-":":"} ${Dn(d.content)}`):c.push(` ${Dn(d.content)}`)}let u=a.length>1&&c.length>ka?Ca(a.map(f=>`${f} (${n.get(f)??0})`)):[],l=[`${i}m ${a.length}f:`,...u,"",...c];if(l.length>Mt){let f=l.length-Mt;return[...l.slice(0,Mt),`\u2026 ${f} more lines omitted`]}return l}B("smart-grep",Ia);var Nn=/^(?:([|\\/ ._-]*\*[|\\/* ._-]* ))?commit [0-9a-f]{7,40}\b/,$a=/^[|\\/* ._-]*$/,Oa=/^ {4}/,Pa=2;function Da(t){if(!t.some(u=>Nn.test(u)))return t;let e=[],r=0,n=0,s=0,i="",o=!1,a=!1,c=()=>{n>0&&e.push(`${i} \u2026 ${n} ${n===1?"line":"lines"} folded \u2026`),n=0};for(let u of t){let l=u.slice(0,s),f=$a.test(l),d=f?u.slice(s):u,m=Oa.test(d),v=o&&m?null:Nn.exec(u);if(v){c(),r=0,s=v[1]?.length??0,o=!0,a=!1,e.push(u);continue}if(/^diff --(?:git|cc|combined) /.test(d)&&(a=!0),m&&!a&&!(s>0&&d.trim().length===0)){r+=1,r<=Pa?e.push(u):(n+=1,i=f?l:"");continue}c(),e.push(u)}return c(),e}B("smart-log",Da);var Na=/^[\s=]+$/,Ma=/^\s*=+\s+(.*?)\s+=+\s*$/,La=512;B("strip-banners",t=>{let e=[];for(let r of t){if(Na.test(r))continue;let n=r.length<=La?Ma.exec(r):null;e.push(n?n[1]:r)}return e});function Fa(t){let e=[],r=0,n=0;for(;n<t.length;){let s=t[n].replace(/\s+$/,"");if(s===""){r+=1,n+=1,r<=1&&e.push("");continue}r=0;let i=1;for(;n+i<t.length&&t[n+i].replace(/\s+$/,"")===s;)i+=1;if(i>=3)e.push(s),e.push(` \u2026 (repeated ${i}x)`);else for(let o=0;o<i;o++)e.push(s);n+=i}for(;e.length>0&&e[e.length-1]==="";)e.pop();return e}B("squeeze-output",Fa);function Ba(t){return t==="compact"?.6:t==="minimal"?.3:1}var ja=20;function za(t){let[e,r,n,s]=t.slice(-4);if(!e||!r||!n||!s||!/^\s*Test Files\s+([1-9]\d*) passed \(\1\)$/.test(e)||!/^\s*Tests\s+([1-9]\d*) passed \(\1\)$/.test(r)||!/^\s*Start at\s+\d{2}:\d{2}:\d{2}$/.test(n))return t;let i=/^(\s*Duration\s+\d+(?:\.\d+)?(?:ms|s)) \(transform [^\n]+\)$/.exec(s)?.[1];return i?[...t.slice(0,-4).filter((a,c)=>c>2||!/^ RUN v\d+\.\d+\.\d+(?:[\w.+-]*) .+$/.test(a)),e,r,i]:t}var Mn=new WeakMap;function Za(t){let e=Mn.get(t);if(e)return e;let r=t.strip_lines_matching.map(s=>new RegExp(s)),n={def:t,stripRegexes:r};return Mn.set(t,n),n}function Ln(t,e,r={}){return Lt(t,e,r).text}function Lt(t,e,r={}){let n=r.verbosity??"normal";if(!e.strip_ansi&&e.strip_lines_matching.length===0&&!e.transform&&!e.mask_abs_paths&&!e.fold_passing&&!e.truncate_lines_at&&!e.max_lines&&!e.on_empty&&!r.smartCode&&n==="normal")return{text:t,droppedTail:null};let s=Za(e),i=t;e.strip_ansi&&(i=ke(i));let o=i.endsWith(`
6
- `),a=(o?i.slice(0,-1):i).split(`
7
- `);s.stripRegexes.length&&(a=e.keep_failures?a.filter(d=>oe.test(d)||!s.stripRegexes.some(m=>m.test(d))):vn(a,s.stripRegexes)),n!=="normal"&&!e.preserve_exact&&(a=Rn(a),a=An(a)),n==="minimal"&&!e.preserve_exact&&(a=Tn(a),(e.slug==="vitest"||e.slug==="npm-test")&&(a=za(a)));let c=e.transform==="smart-read"&&r.smartCode!==!0?n==="compact"?8:n==="minimal"?6:3:3;if(!e.preserve_exact&&(r.smartCode||r.smartCode===void 0&&n!=="normal"&&ft(i))&&(a=qe(a,c)),e.transform){let d=In(e.transform);e.transform==="smart-read"?a=qe(a,c):d&&(a=d(a))}let u=e.slug==="read-tool";if(!u){let d=Dt(a);d.some(Boolean)&&(a=a.filter((m,v)=>!d[v]))}e.mask_abs_paths&&(a=kn(a)),e.fold_passing&&(a=wn(a,e.fold_passing_threshold??5)),e.truncate_lines_at&&(a=xn(a,e.truncate_lines_at));let l=null;if(e.max_lines){let d=e.scale_with_level?Ba(r.verbosity):1,m=Math.min(e.max_lines,Math.max(ja,Math.round(e.max_lines*d))),v=u?Dt(a):null,w=v?v.filter(_=>!_).length:a.length;if(w>m){let _=m;if(v){let k=0;for(_=0;_<a.length&&k<m;)v[_]||(k+=1),_+=1}let I=w-m;if(e.keep_failures){let k=a.slice(_),P=k.filter(O=>!oe.test(O)),A=k.reduce((O,C,G)=>O+(!oe.test(C)&&!v?.[_+G]?1:0),0);l=P.length>0?P.join(`
8
- `):null,a=[...a.slice(0,_),...A>0?[dt(A)]:[],...k.filter(O=>oe.test(O))]}else if(u)l=a.slice(_).join(`
9
- `),a=[...a.slice(0,_),dt(I)];else{let{kept:k,dropped:P}=En(a,m);l=P.length>0?P.join(`
10
- `):null,a=k}}}let f=a.join(`
11
- `);return o&&f.length>0&&(f+=`
12
- `),f.trim().length===0&&e.on_empty&&(f=e.on_empty),{text:f,droppedTail:l}}var Ua=[/\bERROR\b/,/\bFAIL\b/,/\bFAILED\b/,/\bFATAL\b/,/^Traceback /m,/^Error: /m,/^\s+at .*\(.*:\d+:\d+\)/m,/panic:/,/SyntaxError:/,/TypeError:/,/ReferenceError:/,/AssertionError:/,/^\s*(?:error|fatal):/i,/thread '.*' panicked/,/\b[1-9]\d* (?:failed|errors?)\b/];function Fn(t){if(!t)return!1;for(let e of ke(t).split(`
13
- `))if(!/^\s*[✓✔√]\s/.test(e)&&Ua.some(r=>r.test(e)))return!0;return!1}var Ha=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Va=/^[A-Za-z_][A-Za-z0-9_]*=/,Ft=/^([a-z]+)-tool(?::\s|$)/;function Fe(t){let e=t.trim(),r=e.split(/\s+/),n=0;for(;n<r.length;){let a=r[n];if(Va.test(a)){n++;continue}if(Ha.has(a)){for(n++,a==="timeout"&&n<r.length&&/^\d+(?:\.\d+)?[smhd]?$/.test(r[n])&&n++;(a==="stdbuf"||a==="nice")&&n<r.length&&r[n].startsWith("-");)n++;continue}break}if(n>=r.length)return e;let s=r[n],i=s.includes("/")?s.slice(s.lastIndexOf("/")+1):s,o=r.slice(n+1);return o.length?`${i} ${o.join(" ")}`:i}var Ga=new Set(["cd","export","source","set","unset","mkdir","true",":","pushd","popd","alias","ulimit","umask","echo","printf","sleep","touch","rm","cp","mv","chmod","ln"]);function Bn(t,e){let r=!1,n=!1,s=0,i=[];for(let o=0;o<t.length;o++){let a=t[o];if(a==="\\"&&!r){o++;continue}a==="'"&&!n?r=!r:a==='"'&&!r?n=!n:!r&&!n&&(a===";"?(i.push(t.slice(s,o)),s=o+1):a==="|"&&t[o+1]==="|"?(i.push(t.slice(s,o)),o++,s=o+1):a==="|"?e||(i.push(t.slice(s,o)),s=o+1):a==="&"&&t[o+1]==="&"&&(i.push(t.slice(s,o)),o++,s=o+1))}return i.push(t.slice(s)),i}function Ka(t){let e=Bn(t,!1);for(let r=e.length-1;r>=0;r--){let n=e[r].trim();if(n)return n}return t.trim()}function Bt(t){let e=Bn(t,!0).map(r=>r.trim()).filter(Boolean);if(e.length===0)return null;for(let r of e.slice(0,-1)){let n=Fe(r).split(/\s+/)[0]??"";if(!Ga.has(n))return null}return Ka(e[e.length-1])}function jn(t){let e=!1,r=!1,n=0,s=[];for(let i=0;i<t.length;i++){let o=t[i];if(o==="\\"&&!e){i++;continue}o==="'"&&!r?e=!e:o==='"'&&!e?r=!r:!e&&!r&&(o==="|"||o===";"?(s.push(t.slice(n,i)),o==="|"&&t[i+1]==="|"&&i++,n=i+1):o==="&"&&t[i+1]==="&"&&(s.push(t.slice(n,i)),i++,n=i+1))}s.push(t.slice(n));for(let i=s.length-1;i>=0;i--){let o=s[i].trim();if(o)return o}return t.trim()}function zn(t){let e=Ft.exec(t),r=t;if(e){if(e[1]!=="bash")return[t];let i=t.indexOf(": ");if(i<0)return[t];r=t.slice(i+2)}let n=Bt(r),s=n?Fe(n):null;return s&&s!==t?[s,t]:[t]}var Zn=`
3
+ var Da=Object.create;var mn=Object.defineProperty;var Ma=Object.getOwnPropertyDescriptor;var Fa=Object.getOwnPropertyNames;var La=Object.getPrototypeOf,ja=Object.prototype.hasOwnProperty;var pe=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var ae=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var G=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},Fr=(e,t)=>{for(var n in t)mn(e,n,{get:t[n],enumerable:!0})},Ha=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Fa(t))!ja.call(e,s)&&s!==n&&mn(e,s,{get:()=>t[s],enumerable:!(r=Ma(t,s))||r.enumerable});return e};var Lr=(e,t,n)=>(n=e!=null?Da(La(e)):{},Ha(t||!e||!e.__esModule?mn(n,"default",{value:e,enumerable:!0}):n,e));var Ur=G((_g,zr)=>{zr.exports=Br;Br.sync=za;var jr=pe("fs");function Ba(e,t){var n=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!n||(n=n.split(";"),n.indexOf("")!==-1))return!0;for(var r=0;r<n.length;r++){var s=n[r].toLowerCase();if(s&&e.substr(-s.length).toLowerCase()===s)return!0}return!1}function Hr(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:Ba(t,n)}function Br(e,t,n){jr.stat(e,function(r,s){n(r,r?!1:Hr(s,e,t))})}function za(e,t){return Hr(jr.statSync(e),e,t)}});var Vr=G((wg,Kr)=>{Kr.exports=Gr;Gr.sync=Ua;var Zr=pe("fs");function Gr(e,t,n){Zr.stat(e,function(r,s){n(r,r?!1:Jr(s,t))})}function Ua(e,t){return Jr(Zr.statSync(e),t)}function Jr(e,t){return e.isFile()&&Za(e,t)}function Za(e,t){var n=e.mode,r=e.uid,s=e.gid,o=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),i=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,d=n&c||n&l&&s===i||n&a&&r===o||n&u&&o===0;return d}});var qr=G((vg,Wr)=>{var xg=pe("fs"),Mt;process.platform==="win32"||global.TESTING_WINDOWS?Mt=Ur():Mt=Vr();Wr.exports=hn;hn.sync=Ga;function hn(e,t,n){if(typeof t=="function"&&(n=t,t={}),!n){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(r,s){hn(e,t||{},function(o,i){o?s(o):r(i)})})}Mt(e,t||{},function(r,s){r&&(r.code==="EACCES"||t&&t.ignoreErrors)&&(r=null,s=!1),n(r,s)})}function Ga(e,t){try{return Mt.sync(e,t||{})}catch(n){if(t&&t.ignoreErrors||n.code==="EACCES")return!1;throw n}}});var rs=G((Eg,ns)=>{var Ke=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Yr=pe("path"),Ja=Ke?";":":",Xr=qr(),Qr=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),es=(e,t)=>{let n=t.colon||Ja,r=e.match(/\//)||Ke&&e.match(/\\/)?[""]:[...Ke?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],s=Ke?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=Ke?s.split(n):[""];return Ke&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:r,pathExt:o,pathExtExe:s}},ts=(e,t,n)=>{typeof t=="function"&&(n=t,t={}),t||(t={});let{pathEnv:r,pathExt:s,pathExtExe:o}=es(e,t),i=[],a=c=>new Promise((u,d)=>{if(c===r.length)return t.all&&i.length?u(i):d(Qr(e));let f=r[c],p=/^".*"$/.test(f)?f.slice(1,-1):f,m=Yr.join(p,e),_=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;u(l(_,c,0))}),l=(c,u,d)=>new Promise((f,p)=>{if(d===s.length)return f(a(u+1));let m=s[d];Xr(c+m,{pathExt:o},(_,b)=>{if(!_&&b)if(t.all)i.push(c+m);else return f(c+m);return f(l(c,u,d+1))})});return n?a(0).then(c=>n(null,c),n):a(0)},Ka=(e,t)=>{t=t||{};let{pathEnv:n,pathExt:r,pathExtExe:s}=es(e,t),o=[];for(let i=0;i<n.length;i++){let a=n[i],l=/^".*"$/.test(a)?a.slice(1,-1):a,c=Yr.join(l,e),u=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;for(let d=0;d<r.length;d++){let f=u+r[d];try{if(Xr.sync(f,{pathExt:s}))if(t.all)o.push(f);else return f}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw Qr(e)};ns.exports=ts;ts.sync=Ka});var os=G((Sg,gn)=>{"use strict";var ss=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};gn.exports=ss;gn.exports.default=ss});var cs=G((Tg,ls)=>{"use strict";var is=pe("path"),Va=rs(),Wa=os();function as(e,t){let n=e.options.env||process.env,r=process.cwd(),s=e.options.cwd!=null,o=s&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let i;try{i=Va.sync(e.command,{path:n[Wa({env:n})],pathExt:t?is.delimiter:void 0})}catch{}finally{o&&process.chdir(r)}return i&&(i=is.resolve(s?e.options.cwd:"",i)),i}function qa(e){return as(e)||as(e,!0)}ls.exports=qa});var us=G((Rg,bn)=>{"use strict";var yn=/([()\][%!^"`<>&|;, *?])/g;function Ya(e){return e=e.replace(yn,"^$1"),e}function Xa(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(yn,"^$1"),t&&(e=e.replace(yn,"^$1")),e}bn.exports.command=Ya;bn.exports.argument=Xa});var fs=G((Ag,ds)=>{"use strict";ds.exports=/^#!(.*)/});var ms=G(($g,ps)=>{"use strict";var Qa=fs();ps.exports=(e="")=>{let t=e.match(Qa);if(!t)return null;let[n,r]=t[0].replace(/#! ?/,"").split(" "),s=n.split("/").pop();return s==="env"?r:r?`${s} ${r}`:s}});var gs=G((Cg,hs)=>{"use strict";var kn=pe("fs"),el=ms();function tl(e){let n=Buffer.alloc(150),r;try{r=kn.openSync(e,"r"),kn.readSync(r,n,0,150,0),kn.closeSync(r)}catch{}return el(n.toString())}hs.exports=tl});var _s=G((Ig,ks)=>{"use strict";var nl=pe("path"),ys=cs(),bs=us(),rl=gs(),sl=process.platform==="win32",ol=/\.(?:com|exe)$/i,il=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function al(e){e.file=ys(e);let t=e.file&&rl(e.file);return t?(e.args.unshift(e.file),e.command=t,ys(e)):e.file}function ll(e){if(!sl)return e;let t=al(e),n=!ol.test(t);if(e.options.forceShell||n){let r=il.test(t);e.command=nl.normalize(e.command),e.command=bs.command(e.command),e.args=e.args.map(o=>bs.argument(o,r));let s=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${s}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function cl(e,t,n){t&&!Array.isArray(t)&&(n=t,t=null),t=t?t.slice(0):[],n=Object.assign({},n);let r={command:e,args:t,options:n,file:void 0,original:{command:e,args:t}};return n.shell?r:ll(r)}ks.exports=cl});var vs=G((Og,xs)=>{"use strict";var _n=process.platform==="win32";function wn(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 ul(e,t){if(!_n)return;let n=e.emit;e.emit=function(r,s){if(r==="exit"){let o=ws(s,t);if(o)return n.call(e,"error",o)}return n.apply(e,arguments)}}function ws(e,t){return _n&&e===1&&!t.file?wn(t.original,"spawn"):null}function dl(e,t){return _n&&e===1&&!t.file?wn(t.original,"spawnSync"):null}xs.exports={hookChildProcess:ul,verifyENOENT:ws,verifyENOENTSync:dl,notFoundError:wn}});var En=G((Pg,Ve)=>{"use strict";var Es=pe("child_process"),xn=_s(),vn=vs();function Ss(e,t,n){let r=xn(e,t,n),s=Es.spawn(r.command,r.args,r.options);return vn.hookChildProcess(s,r),s}function fl(e,t,n){let r=xn(e,t,n),s=Es.spawnSync(r.command,r.args,r.options);return s.error=s.error||vn.verifyENOENTSync(s.status,r),s}Ve.exports=Ss;Ve.exports.spawn=Ss;Ve.exports.sync=fl;Ve.exports._parse=xn;Ve.exports._enoent=vn});function vc(e,t){let n=e.slice(0,t).split(/\r?\n/);return[n.length,n.pop().length+1]}function Ec(e,t,n){let r=e.split(/\r?\n/),s="",o=(Math.log10(t+1)|0)+1;for(let i=t-1;i<=t+1;i++){let a=r[i-1];a&&(s+=i.toString().padEnd(o," "),s+=": ",s+=a,s+=`
4
+ `,i===t&&(s+=" ".repeat(o+n+2),s+=`^
5
+ `))}return s}var v,Le=ae(()=>{v=class e extends Error{line;column;codeblock;constructor(t,n){let[r,s]=vc(n.toml,n.ptr),o=Ec(n.toml,r,s);super(`Invalid TOML document: ${t}
6
+
7
+ ${o}`,n),this.line=r,this.column=s,this.codeblock=o}static x(t,n,r){throw new e(t,{toml:n.s,ptr:r??n.p})}}});function zt(e){let t=e.p,n=e.s.charCodeAt(e.p++),r=n,s=n===39,o=n===e.s.charCodeAt(e.p)&&n===e.s.charCodeAt(e.p+1);o&&((n=e.s.charCodeAt(e.p+=2))===10?e.p++:n===13&&e.s.charCodeAt(e.p+1)===10&&(e.p+=2));let i="",a=e.p,l=0;for(;e.p<e.s.length;e.p++)if(n=e.s.charCodeAt(e.p),o&&(n===10||n===13&&e.s.charCodeAt(e.p+1)===10))l=l&&3;else if(n<32&&n!==9||n===127)v.x("control characters are not allowed in strings",e);else if((!l||l===3)&&n===r&&(!o||e.s.charCodeAt(e.p+1)===r&&e.s.charCodeAt(e.p+2)===r)){if(o&&(e.s.charCodeAt(e.p+3)===r&&e.p++,e.s.charCodeAt(e.p+3)===r&&e.p++),!l){let c=e.s.slice(a,e.p);i=i?i+c:c}return e.p+=o?3:1,i}else if(!l)!s&&n===92&&(i+=e.s.slice(a,a=e.p),l=1);else if(l===1)if(n===120||n===117||n===85){let c=e.p++-1,u=0,d=n===120?2:n===117?4:8;for(let f=0;f<d;f++,e.p++){let p=e.s.charCodeAt(e.p),m=p>=48&&p<=57?p-48:p>=65&&p<=70?p-65+10:p>=97&&p<=102?p-97+10:-1;m<0&&v.x("invalid non-hex character in unicode escape",e),u=u<<4|m}(u<0||u>1114111||u>=55296&&u<=57343)&&v.x("invalid unicode escape",e,c),i+=String.fromCodePoint(u),a=e.p--,l=0}else o&&(n===32||n===9)?l=2:(n===98?i+="\b":n===116?i+=" ":n===110?i+=`
8
+ `:n===102?i+="\f":n===114?i+="\r":n===101?i+="\x1B":n===34?i+='"':n===92?i+="\\":v.x("unrecognised escape sequence",e),a=e.p+1,l=0);else n!==32&&n!==9&&(l===2&&v.x("invalid escape: only line-ending whitespace may be escaped",e,a),l=!s&&n===92?1:0,a=e.p);v.x("unfinished string",e,t)}var An=ae(()=>{Le();});var Sc,je,$n=ae(()=>{Sc=/^(\d{4}-\d{2}-\d{2})?[Tt ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|z|[-+]\d{2}:\d{2})?$/i,je=class e extends Date{#t=!1;#n=!1;#e=null;constructor(t,n,r){let s=!0,o=!0,i="Z",a;if(typeof t=="string")if(n)e:{if(n<3){if(+t.slice(11,13)>23){t="";break e}n===2?(i=null,t+="Z"):(a=t.charCodeAt(t.length-1))!==90&&a!==122&&(i=t.slice(t.length-6)),r&&(t=t.slice(0,10)+"T"+t.slice(11))}else n===4&&(t=+t.slice(0,2)>23?"":`0000-01-01T${t}Z`);s=n!==4,o=n!==3}else{let l=t.match(Sc);l?(l[1]||(s=!1,t=`0000-01-01T${t}`),o=!!l[2],o&&t[10]===" "&&(t=t.replace(" ","T")),l[2]&&+l[2]>23?t="":(i=l[3]||null,!i&&o&&(t+="Z"))):t=""}super(t),isNaN(this.getTime())||(this.#t=s,this.#n=o,this.#e=i)}isDateTime(){return this.#t&&this.#n}isLocal(){return!this.#t||!this.#n||!this.#e}isDate(){return this.#t&&!this.#n}isTime(){return this.#n&&!this.#t}isValid(){return this.#t||this.#n}toISOString(){let t=super.toISOString();if(this.isDate())return t.slice(0,10);if(this.isTime())return t.slice(11,23);if(this.#e===null)return t.slice(0,-1);if(this.#e==="Z"||this.#e==="z")return t;let n=+this.#e.slice(1,3)*60+ +this.#e.slice(4,6);return n=this.#e[0]==="-"?n:-n,new Date(this.getTime()-n*6e4).toISOString().slice(0,-1)+this.#e}static wrapAsOffsetDateTime(t,n="Z"){let r=new e(t);return r.#e=n,r}static wrapAsLocalDateTime(t){let n=new e(t);return n.#e=null,n}static wrapAsLocalDate(t){let n=new e(t);return n.#n=!1,n.#e=null,n}static wrapAsLocalTime(t){let n=new e(t);return n.#t=!1,n.#e=null,n}}});function J(e,t=10){return t===16?e>47&&e<58||e>64&&e<71||e>96&&e<103:e>47&&e<48+t}function In(e,t){return e===32||e===9||e===10||e===13||t&&(e===t||e===44)||e===35}function mt(e,t){let n=e.p,r=e.s.charCodeAt(e.p);if(r===91||r===123){e.d--||v.x("document contains excessively nested structures. aborting.",e);let s=r===91?js(e):Ls(e);return e.d++,s}return r===34||r===39?zt(e):r===116?((e.s.charCodeAt(++e.p)!==114||e.s.charCodeAt(++e.p)!==117||e.s.charCodeAt(++e.p)!==101)&&v.x("invalid value",e,n),e.p++,!0):r===102?((e.s.charCodeAt(++e.p)!==97||e.s.charCodeAt(++e.p)!==108||e.s.charCodeAt(++e.p)!==115||e.s.charCodeAt(++e.p)!==101)&&v.x("invalid value",e,n),e.p++,!1):r===43||r===45?Ut(e,e.p,e.s.charCodeAt(++e.p),44-r,t):e.s.charCodeAt(e.p+4)===45&&e.s.charCodeAt(e.p+7)===45?Tc(e,r,t):e.s.charCodeAt(e.p+2)===58?Rc(e,r,t):Ut(e,e.p,r,0,t)}function Ut(e,t,n,r,s){let o=n,i=0,a=!1;if(o===105)return(e.s.charCodeAt(++e.p)!==110||e.s.charCodeAt(++e.p)!==102)&&v.x("invalid value",e,t),e.p++,(r||1)/0;if(o===110)return(e.s.charCodeAt(++e.p)!==97||e.s.charCodeAt(++e.p)!==110)&&v.x("invalid value",e,t),e.p++,NaN;if(o===48){if(++e.p>=e.s.length||In(o=e.s.charCodeAt(e.p),s))return e.bi===!0?0n:0;if(!r){if(o===120)return Cn(e,t,16,s);if(o===98)return Cn(e,t,2,s);if(o===111)return Cn(e,t,8,s)}o===46?i=2:o===101||o===69?i=4:v.x("illegal leading zero",e,t)}else J(o)||v.x("invalid value",e,t);for(;++e.p<e.s.length&&(o=e.s.charCodeAt(e.p),!In(o,s));)i||(i=1),o===95?(i&1||v.x("illegal underscore",e),i+=11,a=!0):i===1&&o===46?i=2:(i===1||i===3)&&(o===101||o===69)?i=4:i===4&&(o===43||o===45)||(J(o)?i>9?i-=11:i&1||i++:v.x("illegal character in numeric literal",e));if(!i){let c=(n-48)*(r||1);return e.bi===!0?BigInt(c):c}i&1||v.x("unfinished numeric value",e,t);let l=e.s.slice(t,e.p);return a&&(l=l.replaceAll("_","")),i>1?parseFloat(l):Fs(e,l,10,t)}function Cn(e,t,n,r){let s,o=1;for(;++e.p<e.s.length&&(s=e.s.charCodeAt(e.p),!In(s,r));)s===95?(o&1&&v.x("illegal underscore",e),o=3):J(s,n)?o&1&&o--:v.x("illegal character in numeric literal",e);o&1&&v.x("unfinished numeric value",e);let i=e.s.slice(t+2,e.p);return o&&(i=i.replaceAll("_","")),Fs(e,i,n,t)}function Fs(e,t,n,r){if(e.bi!==!0)e:{let s=parseInt(t,n);if(!Number.isSafeInteger(s)){if(e.bi)break e;v.x("integer value cannot be represented losslessly",e,r)}return s}return BigInt(n===10?t:(n===2?"0b":n===8?"0o":"0x")+t)}function Tc(e,t,n){let r=e.p++,s;if(!J(t)||!J(e.s.charCodeAt(e.p++))||!J(e.s.charCodeAt(e.p++))||!J(e.s.charCodeAt(e.p++)))return Ut(e,e.p=r,t,0,n);if(e.p+=5,J(e.s.charCodeAt(e.p++))||v.x("invalid date-time: date part is malformed",e,r),e.p>=e.s.length||((t=e.s.charCodeAt(e.p))!==32||(s=!0,!J(e.s.charCodeAt(e.p+1))))&&t!==84&&t!==116){let i=e.s.slice(r,e.p);return pt(e,i,3,!1,r)}if(e.s.charCodeAt(e.p+=3)!==58&&v.x("invalid date-time: time part is malformed",e,r),e.s.charCodeAt(e.p+=3)===58&&(e.p+=3),e.s.charCodeAt(e.p)===46)for(;J(e.s.charCodeAt(++e.p)););if(t=e.s.charCodeAt(e.p)){if(t===90||t===122){let i=e.s.slice(r,++e.p);return pt(e,i,1,s,r,"[+00:00]")}if(t===43||t===45){let i=e.s.slice(r,e.p+=6);return pt(e,i,1,s,r,!e.ld&&"["+e.s.slice(e.p-6,e.p)+"]")}}let o=e.s.slice(r,e.p);return pt(e,o,2,s,r)}function Rc(e,t,n){let r=e.p;if(!J(t)||!J(e.s.charCodeAt(++e.p)))return Ut(e,--e.p,t,0,n);if(e.s.charCodeAt(e.p+=4)===58&&(e.p+=3),e.s.charCodeAt(e.p)===46)for(;J(e.s.charCodeAt(++e.p)););let s=e.s.slice(r,e.p);return pt(e,s,4,!1,r)}function pt(e,t,n,r,s,o){if(e.ld){let i=new je(t,n,r);return i.isValid()||v.x("invalid date",e,s),i}try{switch(o&&(t+=o),n){case 1:return Temporal.ZonedDateTime.from(t);case 2:return Temporal.PlainDateTime.from(t);case 3:return Temporal.PlainDate.from(t);case 4:return Temporal.PlainTime.from(t)}}catch(i){v.x(i instanceof Error?i.message:""+i,e,s)}}var On=ae(()=>{An();Pn();Le();$n();});function Ac(e){for(;e.p<e.s.length;e.p++){let t=e.s.charCodeAt(e.p);if(t===10)break;if(t===13&&e.s.charCodeAt(e.p+1)===10){e.p++;break}(t<32&&t!==9||t===127)&&v.x("control characters are not allowed in comments",e)}}function te(e,t,n){let r;for(;e.p<e.s.length;){for(;e.p<e.s.length&&((r=e.s.charCodeAt(e.p))===32||r===9||!t&&(r===10||r===13&&e.s.charCodeAt(e.p+1)===10));)e.p++;if(n||r!==35)break;Ac(e)}}var Nn=ae(()=>{Le();});function Zt(e,t=61){let n,r=0,s=[],o,i=e.s.charCodeAt(n=e.p);do{if(i===t)return r||v.x("unexpected end of key",e),r===1&&s.push(e.s.slice(o,e.p)),e.p++,s;i===46?(r||v.x("illegal empty bare key",e),r===1&&s.push(e.s.slice(o,e.p)),r=0):!r&&(i===34||i===39)?(i===e.s.charCodeAt(e.p+1)&&i===e.s.charCodeAt(e.p+2)&&v.x("illegal quoted key: multiline strings are not allowed",e),s.push(zt(e)),r=2,e.p--):i===32||i===9?r===1&&(s.push(e.s.slice(o,e.p)),r=2):r===2||i<48&&i!==45||i>57&&i<65||i>90&&i<97&&i!==95||i>122?v.x("illegal character in key",e):r||(r=1,o=e.p)}while(i=e.s.charCodeAt(++e.p));v.x("incomplete key-value: cannot find end of key",e,n)}function Ls(e){let t=e.p++,n=Object.create(null),r=new Set,s;for(;e.p<e.s.length;){if(te(e),(s=e.s.charCodeAt(e.p))===125)return e.p++,n;let o,i=n,a=!1,l=e.p,c=Zt(e);for(let d=0;d<c.length;d++){d&&(i=a?i[o]:i[o]=Object.create(null)),o=c[d],(a=Object.hasOwn(i,o))&&(typeof i[o]!="object"||r.has(i[o]))&&v.x("trying to redefine an already defined value",e,l);let f=o==="__proto__";if(e.uk&&(f||o==="constructor")){i=e.uk!==1&&v.x("document contains an unsafe property",e,l);break}!a&&f&&Object.defineProperty(i,o,{enumerable:!0,configurable:!0,writable:!0})}a&&v.x("trying to redefine an already defined value",e,l),te(e,!0,!0);let u=mt(e,125);if(i&&typeof(i[o]=u)=="object"&&r.add(u),te(e),(s=e.s.charCodeAt(e.p++))===125)return n;s!==44&&v.x("expected comma or end of structure",e,e.p-1)}v.x("unfinished table",e,t)}function js(e){let t=e.p++,n=[],r;for(;e.p<e.s.length;){if(te(e),(r=e.s.charCodeAt(e.p))===93)return e.p++,n;if(n.push(mt(e,93)),te(e),(r=e.s.charCodeAt(e.p++))===93)return n;r!==44&&v.x("expected comma or end of structure",e,e.p-1)}v.x("unfinished array",e,t)}var Pn=ae(()=>{An();On();Nn();Le();});function Hs(e,t,n,r,s){let o=n,i=r,a,l=!1,c;for(let u=0;u<t.length;u++){if(u){if(o=l?o[a]:o[a]=Object.create(null),i=(c=i[a]).c,s===0&&(c.t===1||c.t===2))return null;if(c.t===2){let d=o.length-1;o=o[d],i=i[d].c}}if(a=t[u],(l=Object.hasOwn(o,a))&&i[a]?.t===0&&i[a]?.d)return null;if(!l){let d=a==="__proto__";if(e.uk&&(d||a==="constructor"))return!1;d&&(Object.defineProperty(o,a,{enumerable:!0,configurable:!0,writable:!0}),Object.defineProperty(i,a,{enumerable:!0,configurable:!0,writable:!0})),i[a]={t:u<t.length-1&&s===2?3:s,d:!1,i:0,c:Object.create(null)}}}if(c=i[a],c.t!==s&&!(s===1&&c.t===3)||(s===2&&(c.d||(c.d=!0,o[a]=[]),o[a].push(o=Object.create(null)),c.c[c.i++]=c={t:1,d:!1,i:0,c:Object.create(null)}),c.d))return null;if(c.d=!0,s===1)o=l?o[a]:o[a]=Object.create(null);else if(s===0&&l)return null;return[a,o,c.c]}function Bs(e,t,n){(t===null||e.uk===2)&&v.x(t===null?"trying to redefine an already defined table or value":"document contains an unsafe property",e,n)}function Dn(e,t={}){let n={s:e,p:0,d:t.maxDepth??1e3,bi:t.integersAsBigInt??!1,ld:t.useLegacyDate??!0,uk:t.unsafeKeyBehaviour==="throw"?2:t.unsafeKeyBehaviour==="drop"?1:0},r=Object.create(null),s=Object.create(null),o,i=!1,a=r,l=s;for(e.charCodeAt(0)===65279&&n.p++,te(n);n.p<e.length;){if(e.charCodeAt(n.p)===91){let c=e.charCodeAt(++n.p)===91;o=n.p+=+c,i=!1;let u=Zt(n,93);c&&(e.charCodeAt(n.p)!==93&&v.x("expected end of table array declaration",n),n.p++);let d=Hs(n,u,r,s,c?2:1);d?(l=d[2],a=d[1]):(Bs(n,d,o),i=!0)}else{o=n.p;let c=Zt(n),u=Hs(n,c,a,l,0);!u&&!i&&Bs(n,u,o),te(n,!0,!0);let d=mt(n,void 0);u&&!i&&(u[1][u[0]]=d)}te(n,!0),n.p<e.length&&(o=e.charCodeAt(n.p))!==10&&(o!==13||e.charCodeAt(n.p+1)!==10)&&v.x("each key-value declaration must be followed by an end-of-line",n),te(n)}return r}var zs=ae(()=>{Pn();On();Nn();Le();});function ht(e){let t=typeof e;if(t==="object"){if(Array.isArray(e))return"array";if(typeof e.getUTCDate=="function"&&e instanceof Date)return"date";if(globalThis.Temporal){if(e.until){if(e instanceof Temporal.ZonedDateTime)return"temporal/tz+uc";if(e instanceof Temporal.PlainDateTime||e instanceof Temporal.PlainDate)return"temporal/uc";if(e instanceof Temporal.PlainTime||e instanceof Temporal.Instant)return"temporal";if(e instanceof Temporal.PlainYearMonth)return"temporal/x"}else if(e.toPlainDate&&e instanceof Temporal.PlainMonthDay||e.negated&&e instanceof Temporal.Duration)return"temporal/x"}}return t}function Cc(e){for(let t=0;t<e.length;t++)if(ht(e[t])!=="object")return!1;return e.length!=0}function Zs(e){return JSON.stringify(e).replaceAll("\x7F","\\u007f")}function Ic(e){return Zs(Us?e.toWellFormed():e)}function Gs(e){if($c.test(e))return e;if(Us&&!e.isWellFormed())throw new RangeError("key contains illegal lone surrogates");return Zs(e)}function Mn(e,t,n,r,s){if(n===0)throw new Error("Could not stringify the object: maximum object depth exceeded");switch(t){case"number":if(isNaN(e))return"nan";if(e===1/0)return"inf";if(e===-1/0)return"-inf";if(Number.isInteger(e)&&(r||!Number.isSafeInteger(e)))return e.toFixed(1);case"bigint":case"boolean":case"temporal":return e.toString();case"string":return Ic(e);case"date":if(isNaN(e.getTime()))throw new TypeError("cannot serialize invalid date");return e.toISOString();case"object":return Oc(e,n,r,s);case"array":return Pc(e,n,r,s);case"temporal/tz+uc":if(s){let o=e.timeZoneId,i=o.charCodeAt(0);if(i!==43&&i!==45&&(i!==85&&i!==71&&i!==90&&i!==69||o!=="UTC"&&o!=="UCT"&&o!=="Universal"&&o!=="Zulu"&&!o.startsWith("GMT")&&o!=="Greenwich"&&!o.startsWith("Etc/")))throw new TypeError("Temporal objects with an IANA timezone are not allowed in Temporal strict mode")}case"temporal/uc":if(s&&e.calendarId!=="iso8601")throw new TypeError("Temporal objects with a non-default calendar are not allowed in Temporal strict mode");return e.toString({calendarName:"never",timeZoneName:"never"});case"temporal/x":throw new TypeError("Unsupported "+e[Symbol.toStringTag])}}function Oc(e,t,n,r){let s=Object.keys(e);if(s.length===0)return"{}";let o="{ ";for(let i=0;i<s.length;i++){let a=s[i];i&&(o+=", "),o+=Gs(a)+" = "+Mn(e[a],ht(e[a]),t-1,n,r)}return o+" }"}function Pc(e,t,n,r){if(e.length===0)return"[]";let s="[ ";for(let o=0;o<e.length;o++){if(o&&(s+=", "),e[o]===null||e[o]===void 0)throw new TypeError("arrays cannot contain null or undefined values");s+=Mn(e[o],ht(e[o]),t-1,n,r)}return s+" ]"}function Nc(e,t,n,r,s){if(n===0)throw new Error("Could not stringify the object: maximum object depth exceeded");let o="";for(let i=0;i<e.length;i++)o+=`${o&&`
9
+ `}[[${t}]]
10
+ `,o+=Fn(0,e[i],t,n,r,s);return o}function Fn(e,t,n,r,s,o){if(r===0)throw new Error("Could not stringify the object: maximum object depth exceeded");let i="",a="",l=Object.keys(t);for(let c=0;c<l.length;c++){let u=l[c];if(t[u]!==null&&t[u]!==void 0){let d=ht(t[u]);if(d==="symbol"||d==="function")throw new TypeError(`cannot serialize values of type '${d}'`);let f=Gs(u);if(d==="array"&&Cc(t[u]))a+=(a&&`
11
+ `)+Nc(t[u],n?`${n}.${f}`:f,r-1,s,o);else if(d==="object"){let p=n?`${n}.${f}`:f;a+=(a&&`
12
+ `)+Fn(p,t[u],p,r-1,s,o)}else i+=f,i+=" = ",i+=Mn(t[u],d,r,s,o),i+=`
13
+ `}}return e&&(i||!a)&&(i=i?`[${e}]
14
+ ${i}`:`[${e}]`),i&&a?`${i}
15
+ ${a}`:i||a}function Ln(e,{maxDepth:t=1e3,numbersAsFloat:n=!1,strictTemporal:r=!1}={}){if(ht(e)!=="object")throw new TypeError("stringify can only be called with an object");let s=Fn(0,e,"",t,n,r);return s[s.length-1]!==`
16
+ `?s+`
17
+ `:s}var $c,Us,Js=ae(()=>{$c=/^[a-z0-9-_]+$/i,Us=!!"".isWellFormed});var jn={};Fr(jn,{TomlDate:()=>je,TomlError:()=>v,default:()=>Dc,parse:()=>Dn,stringify:()=>Ln});var Dc,Hn=ae(()=>{zs();Js();$n();Le();Dc={parse:Dn,stringify:Ln,TomlDate:je,TomlError:v}});var Na=Lr(En(),1);var Pr=Lr(En(),1);import{existsSync as sg,readFileSync as og,writeFileSync as ig,mkdirSync as ag}from"node:fs";import{join as lg}from"node:path";import{fileURLToPath as cg}from"node:url";import{StringDecoder as ug}from"node:string_decoder";import{readdir as Mc,readFile as Fc}from"node:fs/promises";import{join as Vs,dirname as Lc}from"node:path";import{fileURLToPath as jc}from"node:url";var g={};Fr(g,{BRAND:()=>Ll,DIRTY:()=>xe,EMPTY_PATH:()=>gl,INVALID:()=>x,NEVER:()=>xc,OK:()=>L,ParseStatus:()=>F,Schema:()=>R,ZodAny:()=>ge,ZodArray:()=>de,ZodBigInt:()=>Ee,ZodBoolean:()=>Se,ZodBranded:()=>dt,ZodCatch:()=>Me,ZodDate:()=>Te,ZodDefault:()=>De,ZodDiscriminatedUnion:()=>jt,ZodEffects:()=>Y,ZodEnum:()=>Pe,ZodError:()=>H,ZodFirstPartyTypeKind:()=>E,ZodFunction:()=>Bt,ZodIntersection:()=>Ce,ZodIssueCode:()=>h,ZodLazy:()=>Ie,ZodLiteral:()=>Oe,ZodMap:()=>et,ZodNaN:()=>nt,ZodNativeEnum:()=>Ne,ZodNever:()=>ee,ZodNull:()=>Ae,ZodNullable:()=>se,ZodNumber:()=>ve,ZodObject:()=>B,ZodOptional:()=>W,ZodParsedType:()=>k,ZodPipeline:()=>ft,ZodPromise:()=>ye,ZodReadonly:()=>Fe,ZodRecord:()=>Ht,ZodSchema:()=>R,ZodSet:()=>tt,ZodString:()=>he,ZodSymbol:()=>Xe,ZodTransformer:()=>Y,ZodTuple:()=>re,ZodType:()=>R,ZodUndefined:()=>Re,ZodUnion:()=>$e,ZodUnknown:()=>ue,ZodVoid:()=>Qe,addIssueToContext:()=>y,any:()=>Kl,array:()=>Yl,bigint:()=>zl,boolean:()=>Ms,coerce:()=>wc,custom:()=>Ps,date:()=>Ul,datetimeRegex:()=>Is,defaultErrorMap:()=>le,discriminatedUnion:()=>tc,effect:()=>pc,enum:()=>uc,function:()=>ac,getErrorMap:()=>We,getParsedType:()=>ne,instanceof:()=>Hl,intersection:()=>nc,isAborted:()=>Ft,isAsync:()=>qe,isDirty:()=>Lt,isValid:()=>me,late:()=>jl,lazy:()=>lc,literal:()=>cc,makeIssue:()=>ut,map:()=>oc,nan:()=>Bl,nativeEnum:()=>dc,never:()=>Wl,null:()=>Jl,nullable:()=>hc,number:()=>Ds,object:()=>Xl,objectUtil:()=>Sn,oboolean:()=>_c,onumber:()=>kc,optional:()=>mc,ostring:()=>bc,pipeline:()=>yc,preprocess:()=>gc,promise:()=>fc,quotelessJson:()=>pl,record:()=>sc,set:()=>ic,setErrorMap:()=>hl,strictObject:()=>Ql,string:()=>Ns,symbol:()=>Zl,transformer:()=>pc,tuple:()=>rc,undefined:()=>Gl,union:()=>ec,unknown:()=>Vl,util:()=>I,void:()=>ql});var I;(function(e){e.assertEqual=s=>{};function t(s){}e.assertIs=t;function n(s){throw new Error}e.assertNever=n,e.arrayToEnum=s=>{let o={};for(let i of s)o[i]=i;return o},e.getValidEnumValues=s=>{let o=e.objectKeys(s).filter(a=>typeof s[s[a]]!="number"),i={};for(let a of o)i[a]=s[a];return e.objectValues(i)},e.objectValues=s=>e.objectKeys(s).map(function(o){return s[o]}),e.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let o=[];for(let i in s)Object.prototype.hasOwnProperty.call(s,i)&&o.push(i);return o},e.find=(s,o)=>{for(let i of s)if(o(i))return i},e.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,o=" | "){return s.map(i=>typeof i=="string"?`'${i}'`:i).join(o)}e.joinValues=r,e.jsonStringifyReplacer=(s,o)=>typeof o=="bigint"?o.toString():o})(I||(I={}));var Sn;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Sn||(Sn={}));var k=I.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ne=e=>{switch(typeof e){case"undefined":return k.undefined;case"string":return k.string;case"number":return Number.isNaN(e)?k.nan:k.number;case"boolean":return k.boolean;case"function":return k.function;case"bigint":return k.bigint;case"symbol":return k.symbol;case"object":return Array.isArray(e)?k.array:e===null?k.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?k.promise:typeof Map<"u"&&e instanceof Map?k.map:typeof Set<"u"&&e instanceof Set?k.set:typeof Date<"u"&&e instanceof Date?k.date:k.object;default:return k.unknown}};var h=I.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),pl=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),H=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){let n=t||function(o){return o.message},r={_errors:[]},s=o=>{for(let i of o.issues)if(i.code==="invalid_union")i.unionErrors.map(s);else if(i.code==="invalid_return_type")s(i.returnTypeError);else if(i.code==="invalid_arguments")s(i.argumentsError);else if(i.path.length===0)r._errors.push(n(i));else{let a=r,l=0;for(;l<i.path.length;){let c=i.path[l];l===i.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(n(i))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return s(this),r}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,I.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){let n={},r=[];for(let s of this.issues)if(s.path.length>0){let o=s.path[0];n[o]=n[o]||[],n[o].push(t(s))}else r.push(t(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};H.create=e=>new H(e);var ml=(e,t)=>{let n;switch(e.code){case h.invalid_type:e.received===k.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case h.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,I.jsonStringifyReplacer)}`;break;case h.unrecognized_keys:n=`Unrecognized key(s) in object: ${I.joinValues(e.keys,", ")}`;break;case h.invalid_union:n="Invalid input";break;case h.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${I.joinValues(e.options)}`;break;case h.invalid_enum_value:n=`Invalid enum value. Expected ${I.joinValues(e.options)}, received '${e.received}'`;break;case h.invalid_arguments:n="Invalid function arguments";break;case h.invalid_return_type:n="Invalid function return type";break;case h.invalid_date:n="Invalid date";break;case h.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:I.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case h.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case h.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case h.custom:n="Invalid input";break;case h.invalid_intersection_types:n="Intersection results could not be merged";break;case h.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case h.not_finite:n="Number must be finite";break;default:n=t.defaultError,I.assertNever(e)}return{message:n}},le=ml;var Ts=le;function hl(e){Ts=e}function We(){return Ts}var ut=e=>{let{data:t,path:n,errorMaps:r,issueData:s}=e,o=[...n,...s.path||[]],i={...s,path:o};if(s.message!==void 0)return{...s,path:o,message:s.message};let a="",l=r.filter(c=>!!c).slice().reverse();for(let c of l)a=c(i,{data:t,defaultError:a}).message;return{...s,path:o,message:a}},gl=[];function y(e,t){let n=We(),r=ut({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===le?void 0:le].filter(s=>!!s)});e.common.issues.push(r)}var F=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){let r=[];for(let s of n){if(s.status==="aborted")return x;s.status==="dirty"&&t.dirty(),r.push(s.value)}return{status:t.value,value:r}}static async mergeObjectAsync(t,n){let r=[];for(let s of n){let o=await s.key,i=await s.value;r.push({key:o,value:i})}return e.mergeObjectSync(t,r)}static mergeObjectSync(t,n){let r={};for(let s of n){let{key:o,value:i}=s;if(o.status==="aborted"||i.status==="aborted")return x;o.status==="dirty"&&t.dirty(),i.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof i.value<"u"||s.alwaysSet)&&(r[o.value]=i.value)}return{status:t.value,value:r}}},x=Object.freeze({status:"aborted"}),xe=e=>({status:"dirty",value:e}),L=e=>({status:"valid",value:e}),Ft=e=>e.status==="aborted",Lt=e=>e.status==="dirty",me=e=>e.status==="valid",qe=e=>typeof Promise<"u"&&e instanceof Promise;var w;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(w||(w={}));var q=class{constructor(t,n,r,s){this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Rs=(e,t)=>{if(me(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new H(e.common.issues);return this._error=n,this._error}}};function T(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:s}=e;if(t&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:s}:{errorMap:(i,a)=>{let{message:l}=e;return i.code==="invalid_enum_value"?{message:l??a.defaultError}:typeof a.data>"u"?{message:l??r??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:l??n??a.defaultError}},description:s}}var R=class{get description(){return this._def.description}_getType(t){return ne(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:ne(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new F,ctx:{common:t.parent.common,data:t.data,parsedType:ne(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(qe(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){let n=this._parse(t);return Promise.resolve(n)}parse(t,n){let r=this.safeParse(t,n);if(r.success)return r.data;throw r.error}safeParse(t,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:ne(t)},s=this._parseSync({data:t,path:r.path,parent:r});return Rs(r,s)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:ne(t)};if(!this["~standard"].async)try{let r=this._parseSync({data:t,path:[],parent:n});return me(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:n}).then(r=>me(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(t,n){let r=await this.safeParseAsync(t,n);if(r.success)return r.data;throw r.error}async safeParseAsync(t,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:ne(t)},s=this._parse({data:t,path:r.path,parent:r}),o=await(qe(s)?s:Promise.resolve(s));return Rs(r,o)}refine(t,n){let r=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,o)=>{let i=t(s),a=()=>o.addIssue({code:h.custom,...r(s)});return typeof Promise<"u"&&i instanceof Promise?i.then(l=>l?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(t,n){return this._refinement((r,s)=>t(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(t){return new Y({schema:this,typeName:E.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return W.create(this,this._def)}nullable(){return se.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return de.create(this)}promise(){return ye.create(this,this._def)}or(t){return $e.create([this,t],this._def)}and(t){return Ce.create(this,t,this._def)}transform(t){return new Y({...T(this._def),schema:this,typeName:E.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new De({...T(this._def),innerType:this,defaultValue:n,typeName:E.ZodDefault})}brand(){return new dt({typeName:E.ZodBranded,type:this,...T(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new Me({...T(this._def),innerType:this,catchValue:n,typeName:E.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return ft.create(this,t)}readonly(){return Fe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},yl=/^c[^\s-]{8,}$/i,bl=/^[0-9a-z]+$/,kl=/^[0-9A-HJKMNP-TV-Z]{26}$/i,_l=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,wl=/^[a-z0-9_-]{21}$/i,xl=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,vl=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,El=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Sl="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Tn,Tl=/^(?:(?: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])$/,Rl=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,Al=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,$l=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Cl=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Il=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,$s="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Ol=new RegExp(`^${$s}$`);function Cs(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let n=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function Pl(e){return new RegExp(`^${Cs(e)}$`)}function Is(e){let t=`${$s}T${Cs(e)}`,n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function Nl(e,t){return!!((t==="v4"||!t)&&Tl.test(e)||(t==="v6"||!t)&&Al.test(e))}function Dl(e,t){if(!xl.test(e))return!1;try{let[n]=e.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||t&&s.alg!==t)}catch{return!1}}function Ml(e,t){return!!((t==="v4"||!t)&&Rl.test(e)||(t==="v6"||!t)&&$l.test(e))}var he=class e extends R{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==k.string){let o=this._getOrReturnCtx(t);return y(o,{code:h.invalid_type,expected:k.string,received:o.parsedType}),x}let r=new F,s;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(s=this._getOrReturnCtx(t,s),y(s,{code:h.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="max")t.data.length>o.value&&(s=this._getOrReturnCtx(t,s),y(s,{code:h.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),r.dirty());else if(o.kind==="length"){let i=t.data.length>o.value,a=t.data.length<o.value;(i||a)&&(s=this._getOrReturnCtx(t,s),i?y(s,{code:h.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&y(s,{code:h.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")El.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"email",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Tn||(Tn=new RegExp(Sl,"u")),Tn.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"emoji",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")_l.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"uuid",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")wl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"nanoid",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")yl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cuid",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")bl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cuid2",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")kl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"ulid",code:h.invalid_string,message:o.message}),r.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{s=this._getOrReturnCtx(t,s),y(s,{validation:"url",code:h.invalid_string,message:o.message}),r.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"regex",code:h.invalid_string,message:o.message}),r.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),r.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:{startsWith:o.value},message:o.message}),r.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?Is(o).test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?Ol.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?Pl(o).test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:h.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?vl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"duration",code:h.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?Nl(t.data,o.version)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"ip",code:h.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?Dl(t.data,o.alg)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"jwt",code:h.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?Ml(t.data,o.version)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cidr",code:h.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?Cl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"base64",code:h.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?Il.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"base64url",code:h.invalid_string,message:o.message}),r.dirty()):I.assertNever(o);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(s=>t.test(s),{validation:n,code:h.invalid_string,...w.errToObj(r)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...w.errToObj(t)})}url(t){return this._addCheck({kind:"url",...w.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...w.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...w.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...w.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...w.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...w.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...w.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...w.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...w.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...w.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...w.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...w.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...w.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...w.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...w.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...w.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,...w.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...w.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...w.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...w.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...w.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...w.errToObj(n)})}nonempty(t){return this.min(1,w.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};he.create=e=>new he({checks:[],typeName:E.ZodString,coerce:e?.coerce??!1,...T(e)});function Fl(e,t){let n=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,s=n>r?n:r,o=Number.parseInt(e.toFixed(s).replace(".","")),i=Number.parseInt(t.toFixed(s).replace(".",""));return o%i/10**s}var ve=class e extends R{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==k.number){let o=this._getOrReturnCtx(t);return y(o,{code:h.invalid_type,expected:k.number,received:o.parsedType}),x}let r,s=new F;for(let o of this._def.checks)o.kind==="int"?I.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),y(r,{code:h.invalid_type,expected:"integer",received:"float",message:o.message}),s.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="multipleOf"?Fl(t.data,o.value)!==0&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),y(r,{code:h.not_finite,message:o.message}),s.dirty()):I.assertNever(o);return{status:s.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,w.toString(n))}gt(t,n){return this.setLimit("min",t,!1,w.toString(n))}lte(t,n){return this.setLimit("max",t,!0,w.toString(n))}lt(t,n){return this.setLimit("max",t,!1,w.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:w.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:w.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:w.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:w.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:w.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:w.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:w.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:w.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:w.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:w.toString(t)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&I.isInteger(t.value))}get isFinite(){let t=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(t===null||r.value<t)&&(t=r.value)}return Number.isFinite(n)&&Number.isFinite(t)}};ve.create=e=>new ve({checks:[],typeName:E.ZodNumber,coerce:e?.coerce||!1,...T(e)});var Ee=class e extends R{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==k.bigint)return this._getInvalidInput(t);let r,s=new F;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(r=this._getOrReturnCtx(t,r),y(r,{code:h.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):I.assertNever(o);return{status:s.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return y(n,{code:h.invalid_type,expected:k.bigint,received:n.parsedType}),x}gte(t,n){return this.setLimit("min",t,!0,w.toString(n))}gt(t,n){return this.setLimit("min",t,!1,w.toString(n))}lte(t,n){return this.setLimit("max",t,!0,w.toString(n))}lt(t,n){return this.setLimit("max",t,!1,w.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:w.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:w.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:w.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:w.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:w.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:w.toString(n)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};Ee.create=e=>new Ee({checks:[],typeName:E.ZodBigInt,coerce:e?.coerce??!1,...T(e)});var Se=class extends R{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==k.boolean){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.boolean,received:r.parsedType}),x}return L(t.data)}};Se.create=e=>new Se({typeName:E.ZodBoolean,coerce:e?.coerce||!1,...T(e)});var Te=class e extends R{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==k.date){let o=this._getOrReturnCtx(t);return y(o,{code:h.invalid_type,expected:k.date,received:o.parsedType}),x}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return y(o,{code:h.invalid_date}),x}let r=new F,s;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(s=this._getOrReturnCtx(t,s),y(s,{code:h.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),r.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(s=this._getOrReturnCtx(t,s),y(s,{code:h.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):I.assertNever(o);return{status:r.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:w.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:w.toString(n)})}get minDate(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}};Te.create=e=>new Te({checks:[],coerce:e?.coerce||!1,typeName:E.ZodDate,...T(e)});var Xe=class extends R{_parse(t){if(this._getType(t)!==k.symbol){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.symbol,received:r.parsedType}),x}return L(t.data)}};Xe.create=e=>new Xe({typeName:E.ZodSymbol,...T(e)});var Re=class extends R{_parse(t){if(this._getType(t)!==k.undefined){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.undefined,received:r.parsedType}),x}return L(t.data)}};Re.create=e=>new Re({typeName:E.ZodUndefined,...T(e)});var Ae=class extends R{_parse(t){if(this._getType(t)!==k.null){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.null,received:r.parsedType}),x}return L(t.data)}};Ae.create=e=>new Ae({typeName:E.ZodNull,...T(e)});var ge=class extends R{constructor(){super(...arguments),this._any=!0}_parse(t){return L(t.data)}};ge.create=e=>new ge({typeName:E.ZodAny,...T(e)});var ue=class extends R{constructor(){super(...arguments),this._unknown=!0}_parse(t){return L(t.data)}};ue.create=e=>new ue({typeName:E.ZodUnknown,...T(e)});var ee=class extends R{_parse(t){let n=this._getOrReturnCtx(t);return y(n,{code:h.invalid_type,expected:k.never,received:n.parsedType}),x}};ee.create=e=>new ee({typeName:E.ZodNever,...T(e)});var Qe=class extends R{_parse(t){if(this._getType(t)!==k.undefined){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.void,received:r.parsedType}),x}return L(t.data)}};Qe.create=e=>new Qe({typeName:E.ZodVoid,...T(e)});var de=class e extends R{_parse(t){let{ctx:n,status:r}=this._processInputParams(t),s=this._def;if(n.parsedType!==k.array)return y(n,{code:h.invalid_type,expected:k.array,received:n.parsedType}),x;if(s.exactLength!==null){let i=n.data.length>s.exactLength.value,a=n.data.length<s.exactLength.value;(i||a)&&(y(n,{code:i?h.too_big:h.too_small,minimum:a?s.exactLength.value:void 0,maximum:i?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(y(n,{code:h.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(y(n,{code:h.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((i,a)=>s.type._parseAsync(new q(n,i,n.path,a)))).then(i=>F.mergeArray(r,i));let o=[...n.data].map((i,a)=>s.type._parseSync(new q(n,i,n.path,a)));return F.mergeArray(r,o)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:w.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:w.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:w.toString(n)}})}nonempty(t){return this.min(1,t)}};de.create=(e,t)=>new de({type:e,minLength:null,maxLength:null,exactLength:null,typeName:E.ZodArray,...T(t)});function Ye(e){if(e instanceof B){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=W.create(Ye(r))}return new B({...e._def,shape:()=>t})}else return e instanceof de?new de({...e._def,type:Ye(e.element)}):e instanceof W?W.create(Ye(e.unwrap())):e instanceof se?se.create(Ye(e.unwrap())):e instanceof re?re.create(e.items.map(t=>Ye(t))):e}var B=class e extends R{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),n=I.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==k.object){let c=this._getOrReturnCtx(t);return y(c,{code:h.invalid_type,expected:k.object,received:c.parsedType}),x}let{status:r,ctx:s}=this._processInputParams(t),{shape:o,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ee&&this._def.unknownKeys==="strip"))for(let c in s.data)i.includes(c)||a.push(c);let l=[];for(let c of i){let u=o[c],d=s.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new q(s,d,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof ee){let c=this._def.unknownKeys;if(c==="passthrough")for(let u of a)l.push({key:{status:"valid",value:u},value:{status:"valid",value:s.data[u]}});else if(c==="strict")a.length>0&&(y(s,{code:h.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let u of a){let d=s.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new q(s,d,s.path,u)),alwaysSet:u in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let d=await u.key,f=await u.value;c.push({key:d,value:f,alwaysSet:u.alwaysSet})}return c}).then(c=>F.mergeObjectSync(r,c)):F.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(t){return w.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,r)=>{let s=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:w.errToObj(t).message??s}:{message:s}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:E.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let r of I.objectKeys(t))t[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let r of I.objectKeys(this.shape))t[r]||(n[r]=this.shape[r]);return new e({...this._def,shape:()=>n})}deepPartial(){return Ye(this)}partial(t){let n={};for(let r of I.objectKeys(this.shape)){let s=this.shape[r];t&&!t[r]?n[r]=s:n[r]=s.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let r of I.objectKeys(this.shape))if(t&&!t[r])n[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof W;)o=o._def.innerType;n[r]=o}return new e({...this._def,shape:()=>n})}keyof(){return Os(I.objectKeys(this.shape))}};B.create=(e,t)=>new B({shape:()=>e,unknownKeys:"strip",catchall:ee.create(),typeName:E.ZodObject,...T(t)});B.strictCreate=(e,t)=>new B({shape:()=>e,unknownKeys:"strict",catchall:ee.create(),typeName:E.ZodObject,...T(t)});B.lazycreate=(e,t)=>new B({shape:e,unknownKeys:"strip",catchall:ee.create(),typeName:E.ZodObject,...T(t)});var $e=class extends R{_parse(t){let{ctx:n}=this._processInputParams(t),r=this._def.options;function s(o){for(let a of o)if(a.result.status==="valid")return a.result;for(let a of o)if(a.result.status==="dirty")return n.common.issues.push(...a.ctx.common.issues),a.result;let i=o.map(a=>new H(a.ctx.common.issues));return y(n,{code:h.invalid_union,unionErrors:i}),x}if(n.common.async)return Promise.all(r.map(async o=>{let i={...n,common:{...n.common,issues:[]},parent:null};return{result:await o._parseAsync({data:n.data,path:n.path,parent:i}),ctx:i}})).then(s);{let o,i=[];for(let l of r){let c={...n,common:{...n.common,issues:[]},parent:null},u=l._parseSync({data:n.data,path:n.path,parent:c});if(u.status==="valid")return u;u.status==="dirty"&&!o&&(o={result:u,ctx:c}),c.common.issues.length&&i.push(c.common.issues)}if(o)return n.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(l=>new H(l));return y(n,{code:h.invalid_union,unionErrors:a}),x}}get options(){return this._def.options}};$e.create=(e,t)=>new $e({options:e,typeName:E.ZodUnion,...T(t)});var ce=e=>e instanceof Ie?ce(e.schema):e instanceof Y?ce(e.innerType()):e instanceof Oe?[e.value]:e instanceof Pe?e.options:e instanceof Ne?I.objectValues(e.enum):e instanceof De?ce(e._def.innerType):e instanceof Re?[void 0]:e instanceof Ae?[null]:e instanceof W?[void 0,...ce(e.unwrap())]:e instanceof se?[null,...ce(e.unwrap())]:e instanceof dt||e instanceof Fe?ce(e.unwrap()):e instanceof Me?ce(e._def.innerType):[],jt=class e extends R{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.object)return y(n,{code:h.invalid_type,expected:k.object,received:n.parsedType}),x;let r=this.discriminator,s=n.data[r],o=this.optionsMap.get(s);return o?n.common.async?o._parseAsync({data:n.data,path:n.path,parent:n}):o._parseSync({data:n.data,path:n.path,parent:n}):(y(n,{code:h.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),x)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let s=new Map;for(let o of n){let i=ce(o.shape[t]);if(!i.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let a of i){if(s.has(a))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(a)}`);s.set(a,o)}}return new e({typeName:E.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:s,...T(r)})}};function Rn(e,t){let n=ne(e),r=ne(t);if(e===t)return{valid:!0,data:e};if(n===k.object&&r===k.object){let s=I.objectKeys(t),o=I.objectKeys(e).filter(a=>s.indexOf(a)!==-1),i={...e,...t};for(let a of o){let l=Rn(e[a],t[a]);if(!l.valid)return{valid:!1};i[a]=l.data}return{valid:!0,data:i}}else if(n===k.array&&r===k.array){if(e.length!==t.length)return{valid:!1};let s=[];for(let o=0;o<e.length;o++){let i=e[o],a=t[o],l=Rn(i,a);if(!l.valid)return{valid:!1};s.push(l.data)}return{valid:!0,data:s}}else return n===k.date&&r===k.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var Ce=class extends R{_parse(t){let{status:n,ctx:r}=this._processInputParams(t),s=(o,i)=>{if(Ft(o)||Ft(i))return x;let a=Rn(o.value,i.value);return a.valid?((Lt(o)||Lt(i))&&n.dirty(),{status:n.value,value:a.data}):(y(r,{code:h.invalid_intersection_types}),x)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([o,i])=>s(o,i)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};Ce.create=(e,t,n)=>new Ce({left:e,right:t,typeName:E.ZodIntersection,...T(n)});var re=class e extends R{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==k.array)return y(r,{code:h.invalid_type,expected:k.array,received:r.parsedType}),x;if(r.data.length<this._def.items.length)return y(r,{code:h.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),x;!this._def.rest&&r.data.length>this._def.items.length&&(y(r,{code:h.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let o=[...r.data].map((i,a)=>{let l=this._def.items[a]||this._def.rest;return l?l._parse(new q(r,i,r.path,a)):null}).filter(i=>!!i);return r.common.async?Promise.all(o).then(i=>F.mergeArray(n,i)):F.mergeArray(n,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};re.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new re({items:e,typeName:E.ZodTuple,rest:null,...T(t)})};var Ht=class e extends R{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==k.object)return y(r,{code:h.invalid_type,expected:k.object,received:r.parsedType}),x;let s=[],o=this._def.keyType,i=this._def.valueType;for(let a in r.data)s.push({key:o._parse(new q(r,a,r.path,a)),value:i._parse(new q(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?F.mergeObjectAsync(n,s):F.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof R?new e({keyType:t,valueType:n,typeName:E.ZodRecord,...T(r)}):new e({keyType:he.create(),valueType:t,typeName:E.ZodRecord,...T(n)})}},et=class extends R{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==k.map)return y(r,{code:h.invalid_type,expected:k.map,received:r.parsedType}),x;let s=this._def.keyType,o=this._def.valueType,i=[...r.data.entries()].map(([a,l],c)=>({key:s._parse(new q(r,a,r.path,[c,"key"])),value:o._parse(new q(r,l,r.path,[c,"value"]))}));if(r.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let l of i){let c=await l.key,u=await l.value;if(c.status==="aborted"||u.status==="aborted")return x;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}})}else{let a=new Map;for(let l of i){let c=l.key,u=l.value;if(c.status==="aborted"||u.status==="aborted")return x;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}}}};et.create=(e,t,n)=>new et({valueType:t,keyType:e,typeName:E.ZodMap,...T(n)});var tt=class e extends R{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==k.set)return y(r,{code:h.invalid_type,expected:k.set,received:r.parsedType}),x;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(y(r,{code:h.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(y(r,{code:h.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());let o=this._def.valueType;function i(l){let c=new Set;for(let u of l){if(u.status==="aborted")return x;u.status==="dirty"&&n.dirty(),c.add(u.value)}return{status:n.value,value:c}}let a=[...r.data.values()].map((l,c)=>o._parse(new q(r,l,r.path,c)));return r.common.async?Promise.all(a).then(l=>i(l)):i(a)}min(t,n){return new e({...this._def,minSize:{value:t,message:w.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:w.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};tt.create=(e,t)=>new tt({valueType:e,minSize:null,maxSize:null,typeName:E.ZodSet,...T(t)});var Bt=class e extends R{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.function)return y(n,{code:h.invalid_type,expected:k.function,received:n.parsedType}),x;function r(a,l){return ut({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,We(),le].filter(c=>!!c),issueData:{code:h.invalid_arguments,argumentsError:l}})}function s(a,l){return ut({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,We(),le].filter(c=>!!c),issueData:{code:h.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof ye){let a=this;return L(async function(...l){let c=new H([]),u=await a._def.args.parseAsync(l,o).catch(p=>{throw c.addIssue(r(l,p)),c}),d=await Reflect.apply(i,this,u);return await a._def.returns._def.type.parseAsync(d,o).catch(p=>{throw c.addIssue(s(d,p)),c})})}else{let a=this;return L(function(...l){let c=a._def.args.safeParse(l,o);if(!c.success)throw new H([r(l,c.error)]);let u=Reflect.apply(i,this,c.data),d=a._def.returns.safeParse(u,o);if(!d.success)throw new H([s(u,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:re.create(t).rest(ue.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,r){return new e({args:t||re.create([]).rest(ue.create()),returns:n||ue.create(),typeName:E.ZodFunction,...T(r)})}},Ie=class extends R{get schema(){return this._def.getter()}_parse(t){let{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};Ie.create=(e,t)=>new Ie({getter:e,typeName:E.ZodLazy,...T(t)});var Oe=class extends R{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return y(n,{received:n.data,code:h.invalid_literal,expected:this._def.value}),x}return{status:"valid",value:t.data}}get value(){return this._def.value}};Oe.create=(e,t)=>new Oe({value:e,typeName:E.ZodLiteral,...T(t)});function Os(e,t){return new Pe({values:e,typeName:E.ZodEnum,...T(t)})}var Pe=class e extends R{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),r=this._def.values;return y(n,{expected:I.joinValues(r),received:n.parsedType,code:h.invalid_type}),x}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let n=this._getOrReturnCtx(t),r=this._def.values;return y(n,{received:n.data,code:h.invalid_enum_value,options:r}),x}return L(t.data)}get options(){return this._def.values}get enum(){let t={};for(let n of this._def.values)t[n]=n;return t}get Values(){let t={};for(let n of this._def.values)t[n]=n;return t}get Enum(){let t={};for(let n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(r=>!t.includes(r)),{...this._def,...n})}};Pe.create=Os;var Ne=class extends R{_parse(t){let n=I.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==k.string&&r.parsedType!==k.number){let s=I.objectValues(n);return y(r,{expected:I.joinValues(s),received:r.parsedType,code:h.invalid_type}),x}if(this._cache||(this._cache=new Set(I.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let s=I.objectValues(n);return y(r,{received:r.data,code:h.invalid_enum_value,options:s}),x}return L(t.data)}get enum(){return this._def.values}};Ne.create=(e,t)=>new Ne({values:e,typeName:E.ZodNativeEnum,...T(t)});var ye=class extends R{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.promise&&n.common.async===!1)return y(n,{code:h.invalid_type,expected:k.promise,received:n.parsedType}),x;let r=n.parsedType===k.promise?n.data:Promise.resolve(n.data);return L(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};ye.create=(e,t)=>new ye({type:e,typeName:E.ZodPromise,...T(t)});var Y=class extends R{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===E.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:n,ctx:r}=this._processInputParams(t),s=this._def.effect||null,o={addIssue:i=>{y(r,i),i.fatal?n.abort():n.dirty()},get path(){return r.path}};if(o.addIssue=o.addIssue.bind(o),s.type==="preprocess"){let i=s.transform(r.data,o);if(r.common.async)return Promise.resolve(i).then(async a=>{if(n.value==="aborted")return x;let l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?x:l.status==="dirty"?xe(l.value):n.value==="dirty"?xe(l.value):l});{if(n.value==="aborted")return x;let a=this._def.schema._parseSync({data:i,path:r.path,parent:r});return a.status==="aborted"?x:a.status==="dirty"?xe(a.value):n.value==="dirty"?xe(a.value):a}}if(s.type==="refinement"){let i=a=>{let l=s.refinement(a,o);if(r.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(r.common.async===!1){let a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?x:(a.status==="dirty"&&n.dirty(),i(a.value),{status:n.value,value:a.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>a.status==="aborted"?x:(a.status==="dirty"&&n.dirty(),i(a.value).then(()=>({status:n.value,value:a.value}))))}if(s.type==="transform")if(r.common.async===!1){let i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!me(i))return x;let a=s.transform(i.value,o);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:a}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>me(i)?Promise.resolve(s.transform(i.value,o)).then(a=>({status:n.value,value:a})):x);I.assertNever(s)}};Y.create=(e,t,n)=>new Y({schema:e,typeName:E.ZodEffects,effect:t,...T(n)});Y.createWithPreprocess=(e,t,n)=>new Y({schema:t,effect:{type:"preprocess",transform:e},typeName:E.ZodEffects,...T(n)});var W=class extends R{_parse(t){return this._getType(t)===k.undefined?L(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};W.create=(e,t)=>new W({innerType:e,typeName:E.ZodOptional,...T(t)});var se=class extends R{_parse(t){return this._getType(t)===k.null?L(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};se.create=(e,t)=>new se({innerType:e,typeName:E.ZodNullable,...T(t)});var De=class extends R{_parse(t){let{ctx:n}=this._processInputParams(t),r=n.data;return n.parsedType===k.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};De.create=(e,t)=>new De({innerType:e,typeName:E.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...T(t)});var Me=class extends R{_parse(t){let{ctx:n}=this._processInputParams(t),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return qe(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new H(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new H(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};Me.create=(e,t)=>new Me({innerType:e,typeName:E.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...T(t)});var nt=class extends R{_parse(t){if(this._getType(t)!==k.nan){let r=this._getOrReturnCtx(t);return y(r,{code:h.invalid_type,expected:k.nan,received:r.parsedType}),x}return{status:"valid",value:t.data}}};nt.create=e=>new nt({typeName:E.ZodNaN,...T(e)});var Ll=Symbol("zod_brand"),dt=class extends R{_parse(t){let{ctx:n}=this._processInputParams(t),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},ft=class e extends R{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?x:o.status==="dirty"?(n.dirty(),xe(o.value)):this._def.out._parseAsync({data:o.value,path:r.path,parent:r})})();{let s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?x:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(t,n){return new e({in:t,out:n,typeName:E.ZodPipeline})}},Fe=class extends R{_parse(t){let n=this._def.innerType._parse(t),r=s=>(me(s)&&(s.value=Object.freeze(s.value)),s);return qe(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};Fe.create=(e,t)=>new Fe({innerType:e,typeName:E.ZodReadonly,...T(t)});function As(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function Ps(e,t={},n){return e?ge.create().superRefine((r,s)=>{let o=e(r);if(o instanceof Promise)return o.then(i=>{if(!i){let a=As(t,r),l=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:l})}});if(!o){let i=As(t,r),a=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:a})}}):ge.create()}var jl={object:B.lazycreate},E;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(E||(E={}));var Hl=(e,t={message:`Input not instance of ${e.name}`})=>Ps(n=>n instanceof e,t),Ns=he.create,Ds=ve.create,Bl=nt.create,zl=Ee.create,Ms=Se.create,Ul=Te.create,Zl=Xe.create,Gl=Re.create,Jl=Ae.create,Kl=ge.create,Vl=ue.create,Wl=ee.create,ql=Qe.create,Yl=de.create,Xl=B.create,Ql=B.strictCreate,ec=$e.create,tc=jt.create,nc=Ce.create,rc=re.create,sc=Ht.create,oc=et.create,ic=tt.create,ac=Bt.create,lc=Ie.create,cc=Oe.create,uc=Pe.create,dc=Ne.create,fc=ye.create,pc=Y.create,mc=W.create,hc=se.create,gc=Y.createWithPreprocess,yc=ft.create,bc=()=>Ns().optional(),kc=()=>Ds().optional(),_c=()=>Ms().optional(),wc={string:(e=>he.create({...e,coerce:!0})),number:(e=>ve.create({...e,coerce:!0})),boolean:(e=>Se.create({...e,coerce:!0})),bigint:(e=>Ee.create({...e,coerce:!0})),date:(e=>Te.create({...e,coerce:!0}))};var xc=x;var be=g.object({slug:g.string().min(1).max(64),description:g.string().max(255).optional(),match_command:g.string().min(1),priority:g.number().int().default(50),strip_ansi:g.boolean().default(!1),strip_lines_matching:g.array(g.string()).default([]),keep_failures:g.boolean().default(!1),strip_on_failure:g.boolean().default(!1),fold_passing:g.boolean().default(!1),fold_passing_threshold:g.number().int().positive().max(1e3).optional(),mask_abs_paths:g.boolean().default(!1),preserve_exact:g.boolean().default(!1),truncate_lines_at:g.number().int().positive().max(1e4).optional(),max_lines:g.number().int().positive().max(1e5).optional(),scale_with_level:g.boolean().default(!0),transform:g.string().max(64).optional(),on_empty:g.string().max(255).optional()});var Hc=Lc(jc(import.meta.url)),Bc=process.env.TOKMIZER_FILTERS_DIR||Vs(Hc,"..","..","filters"),rt=null,Ks=!1;function zc(){return process.env.TOKMIZER_DEV==="1"||process.env.TOKMIZER_DEV==="true"}async function Ws(){return rt||(zc()?(rt=await Uc(Bc),rt):(!Ks&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
18
+ `),Ks=!0),rt=new Map,rt))}async function Uc(e){let t=new Map,n,r;try{n=(await Promise.resolve().then(()=>(Hn(),jn))).parse,r=(await Mc(e)).filter(s=>s.endsWith(".toml"))}catch{return t}for(let s of r){let o=await Fc(Vs(e,s),"utf8"),a=n(o).filters;if(a)for(let[l,c]of Object.entries(a)){let u=be.parse({slug:l,...c});t.set(l,{...u,matchRegex:new RegExp(u.match_command)})}}return t}import{createHash as Zc}from"node:crypto";var Gc=g.enum(["normal","compact","minimal"]),Jc=g.enum(["off","light","balanced","max"]),gt=g.object({enabled:g.boolean().default(!0),telemetryOptIn:g.boolean().default(!0),outputVerbosity:Gc.default("compact"),reducer:Jc.default("off"),filters:g.object({enableAll:g.boolean().default(!0),disabled:g.array(g.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),qs=new Map;function X(e){let t=qs.get(e);return t||(t=Zc("sha256").update(`tkr:${e}`).digest("hex").slice(0,16),qs.set(e,t)),t}var Ys=new WeakMap,Kc=256;function st(e,t,n,r=t){let s=Ys.get(r);s||(s=new Map,Ys.set(r,s));let o=JSON.stringify([e,n?[...n].sort():null]),i=s.get(o);if(i!==void 0)return i;let a=null;for(let l of t)n&&!n.has(X(l.slug))||l.matchRegex.test(e)&&(!a||l.priority>a.priority)&&(a=l);if(s.size>=Kc){let l=s.keys().next().value;l&&s.delete(l)}return s.set(o,a),a}import{readdir as Ju,readFile as Ro,writeFile as Nb,mkdir as Db,rename as Mb}from"node:fs/promises";import{readdirSync as Ku,statSync as Eo}from"node:fs";import{createHash as Vu}from"node:crypto";import{basename as Hb,join as Yt}from"node:path";var Vc=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,Wc=/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g;function oe(e){return e.replace(Vc,"").replace(Wc,"")}function Xs(e,t){return t.length===0?e:e.filter(n=>!t.some(r=>r.test(n)))}function Qs(e,t){return e.map(n=>{if(n.length<=t)return n;let r=n.charCodeAt(t-1),s=n.charCodeAt(t),o=r>=55296&&r<=56319&&s>=56320&&s<=57343?t-1:t;return`${n.slice(0,o)}\u2026`})}function ot(e){return`\u2026 (${e} more lines omitted)`}function eo(e,t){if(e.length<=t)return{kept:e,dropped:[]};let n=Math.ceil(t*.7),r=t-n,s=e.slice(n,e.length-r);return{kept:[...e.slice(0,n),ot(s.length),...e.slice(e.length-r)],dropped:s}}var qc=/^\s*(?:[✓✔√]|ok )/,ke=/✕|✗|×|\bFAIL\b|\bERROR\b|\bFATAL\b|\bError|\berror|Expected|Received|\bfailed\b|^\s*Tests?:|^\s*Test Suites?:/;function to(e,t){let n=t>0?t:5,r=[],s=0,o=a=>{s>=n?r.push(`\u2026 ${s} passing checks folded \u2026`):r.push(...a)},i=[];for(let a of e)qc.test(a)&&!ke.test(a)?(i.push(a),s+=1):(o(i),i=[],s=0,r.push(a));return o(i),r}var Yc=/(?:\/[\w.@+-]+){3,}/g;function no(e){return e.map(t=>t.replace(Yc,n=>{let r=n.split("/").filter(Boolean);return r.length<=2?n:`\u2026/${r.slice(-2).join("/")}`}))}var Xc=/^(\s*)(?:export\s+)?(?:async\s+)?(?:function|interface|type|const|let|var|def|fn|impl|trait|struct|enum)\s+[\w$]+/,Qc=/\{\s*$/;var eu=/^\s*(?:(?:public|private|protected|static|async|get|set|readonly|override)\s+)*([\w$]+)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\{\s*$/,tu=new Set(["if","for","while","switch","catch","do","with","return","else","function","await","yield"]);function nu(e){let t=eu.exec(e);return!t||tu.has(t[1])?!1:!/=>|\bfunction\b/.test(t[2])}var ru=/^\s*(?:if|for|while|switch|try|do)\b[^{}]*\{\s*$/;function su(e,t,n){let r=t;for(;r<e.length;){if(e[r]==="\\"){r+=2;continue}if(e[r]===n)return!0;r+=1}return!1}function ou(e,t){let n=0,r=null,s=0;for(;s<e.length;){let o=e[s];if(t.inBlockComment){if(o==="*"&&e[s+1]==="/"){t.inBlockComment=!1,s+=2;continue}s+=1;continue}if(t.inTemplate){if(o==="\\"){s+=2;continue}o==="`"&&(t.inTemplate=!1),s+=1;continue}if(r){if(o==="\\"){s+=2;continue}o===r&&(r=null),s+=1;continue}if(o==="/"&&e[s+1]==="/")break;if(o==="/"&&e[s+1]==="*"){t.inBlockComment=!0,s+=2;continue}if(o==="`"){t.inTemplate=!0,s+=1;continue}if(o==="'"||o==='"'){let i=s>0?e[s-1]:"";!(o==="'"&&(i==="<"||i==="&"))&&su(e,s+1,o)&&(r=o),s+=1;continue}o==="{"||o==="("||o==="["?n+=1:(o==="}"||o===")"||o==="]")&&(n-=1),s+=1}return n}var ro=/^\s*… \d+ lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/,iu=/^\s*… (\d+) lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/;function au(e,t,n){let r=n==null?"":` (${n}-${n+t-1}): Read offset=${n} limit=${t} before editing`;return`${e}\u2026 ${t} ${t===1?"line":"lines"} folded${r} \u2026`}function Bn(e){let t=new Array(e.length).fill(!1);for(let n=0;n<e.length;n+=1){let r=iu.exec(e[n]);if(!r)continue;let s=Number(r[1])-1,o=n+1;for(;s>0&&o<e.length&&e[o]==="";)t[o]=!0,s-=1,o+=1;n=o-1}return t}function yt(e,t=3,n=!1){let r=[],s=0;for(;s<e.length;){let o=e[s];if(Xc.test(o)&&Qc.test(o)||nu(o)||ru.test(o)){let i={inBlockComment:!1,inTemplate:!1},a=0,l=s,c=!1;for(;l<e.length&&l-s<200;)if(a+=ou(e[l],i),l+=1,a<=0&&!i.inTemplate&&!i.inBlockComment){c=!0;break}let u=l-s;if(c&&u<t){r.push(...e.slice(s,l)),s=l;continue}if(c&&u>=3){let d=u-2,f=/^\s*/.exec(e[s+1]??"")?.[0]??" ";r.push(o),r.push(au(f,d,n?s+2:null));for(let p=0;p<d-1;p++)r.push("");r.push(e[l-1]),s=l;continue}}r.push(o),s+=1}return r}var lu=/\b(?:function|class|interface|import\s+|export\s+|def\s+|fn\s+|impl\s+|package\s+|namespace\s+|using\s+|#include|=>\s*\{|=\s*function)/;function Gt(e){let t=e.slice(0,4096);return!(!lu.test(t)||t.split(`
19
+ `).length<6)}var ao=/^\s*(?:\d{4}-\d{2}-\d{2}[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?Z?|\d{2}:\d{2}:\d{2}(?:\.\d+)?)\s*/,lo=/^\s*(?:\[(?:DEBUG|TRACE|INFO|VERBOSE)\]|(?:DEBUG|TRACE|INFO|VERBOSE)(?!\s*:))(?=\s|:|$)(?!\s*[+\-*\/%&|^?]*=)/,co=new RegExp(ke.source,"i"),uo=/\bWARN(?:ING)?\b/i;function fo(e){let t=[],n=0,r=()=>{n>0&&t.push(`\u2026 ${n} verbose log line${n===1?"":"s"} dropped \u2026`),n=0};for(let s of e){if(lo.test(s.replace(ao,""))&&!co.test(s)&&!uo.test(s)){n+=1;continue}r(),t.push(s)}return r(),t}var cu=/^(?:DEBUG|INFO):[\w.-]+:/,uu=/Error|Exception|Traceback|panic|fail|FAIL|Fail|SEVERE|CRITICAL/,du=8,so=1,oo=2;function io(e){if(e.trim()===""||/^\s/.test(e)||co.test(e)||uo.test(e)||uu.test(e))return null;let t=e.replace(ao,"");return lo.test(t)||cu.test(t)?"\0verbose":e.replace(/\d+/g,"#")}function po(e){let t=[],n=0;for(;n<e.length;){let r=io(e[n]),s=n+1;if(r!==null)for(;s<e.length&&io(e[s])===r;)s+=1;let o=s-n;r===null||o<du?t.push(...e.slice(n,s)):(t.push(...e.slice(n,n+so)),t.push(`\u2026 ${o-so-oo} similar log lines dropped \u2026`),t.push(...e.slice(s-oo,s))),n=s}return t}function Jt(e){if(e.length===0)return e;let t=[],n=1,r=e[0];for(let s=1;s<e.length;s++){if(e[s]===r){n+=1;continue}t.push(n>1?`${r} \xD7${n}`:r),r=e[s],n=1}return t.push(n>1?`${r} \xD7${n}`:r),t}function mo(e){let t=[],n=0;for(let r of e){if(r.trim()===""){n+=1;continue}n>0&&t.push(""),n=0,t.push(r)}return t}var ho=new Map;function z(e,t){ho.set(e,t)}function go(e){return ho.get(e)}var fu=/^[dbclps\-][rwxsStT\-]{9}[@.+]?(?:\s|$)/,pu=/^[./~][^\s]*:$/,mu=String.raw`(?:[^\s\d]{3,}\s+\d{1,2}|\d{1,2}\s+[^\s\d]{3,})\s+(?:\d{1,2}:\d{2}|\d{4})|\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:\s+[+-]\d{4})?`,hu=new RegExp(String.raw`^\S+\s+\d+\s+\S+\s+(?:\S+\s+)?(\d+(?:[.,]\d+)?[KMGTPkmgtp]?i?B?)\s+(?:${mu})\s+(.+)$`),gu={k:1,m:2,g:3,t:4,p:5},zn=1e3;function yu(e){if(e<1024)return String(e);let t=["K","M","G","T"],n=e/1024,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;return`${n.toFixed(1)}${t[r]}`}function bu(e){let t=/^(\d+(?:[.,]\d+)?)([KMGTPkmgtp])?/.exec(e),n=t[2]?gu[t[2].toLowerCase()]:0;return Number(t[1].replace(",","."))*1024**n}function ku(e){let t=hu.exec(e);if(!t)return null;let n=t[2].trim();if(n===""||n==="."||n==="..")return null;let r=t[1],s=/^\d+$/.test(r)?yu(Number(r)):r,o=e.charCodeAt(0)===100;return{name:n,size:s,sizeKey:bu(r),isDir:o}}function _u(e){if(e.length<3)return null;let t=new Map;for(let s of e){let o=s.name.lastIndexOf(".");if(o<=0)continue;let i=s.name.slice(o);t.set(i,(t.get(i)??0)+1)}let n=null,r=0;for(let[s,o]of t)o>r&&(r=o,n=s);return n&&r>=Math.ceil(e.length/2)?`${r} ${n}`:null}function wu(e){let t=[],n=[],r=!1;for(let d of e){if(d.trim()===""||/^total\s+\d+/.test(d))continue;if(pu.test(d.trim())||!fu.test(d))return e;let f=ku(d);if(!f){if(/\s\.\.?$/.test(d))continue;return e}r=!0,(f.isDir?t:n).push(f)}if(!r)return e;let s=(d,f)=>d.name.localeCompare(f.name);t.sort(s),n.sort((d,f)=>f.sizeKey-d.sizeKey||s(d,f));let o=[...t,...n],i=[];for(let d of o){let f=d.isDir?`${d.name}/`:d.name;i.push(d.isDir?f:`${f} ${d.size}`)}if(i.length>zn){let d=i.length-zn;i=[...i.slice(0,zn),`\u2026 ${d} more lines omitted`]}let a=n.length===1?"file":"files",l=t.length===1?"dir":"dirs",c=_u(n),u=`${n.length} ${a}, ${t.length} ${l}`+(c?` (${c})`:"");return i.push(u),i}z("smart-ls",wu);z("smart-read",e=>yt(e));var yo=1e3;function xu(e){let t=e[0].split("/");for(let n of e.slice(1)){let r=n.split("/"),s=0;for(;s<t.length&&s<r.length&&t[s]===r[s];)s+=1;if(t=t.slice(0,s),t.length===0)break}return t.join("/")}function vu(e){if(e.length<2||e.some(s=>s.startsWith('"')))return"";let t=e[0];for(let s of e.slice(1)){let o=0;for(;o<t.length&&o<s.length&&t[t.length-1-o]===s[s.length-1-o];)o+=1;if(t=t.slice(t.length-o),!t)return""}let n=t.indexOf("."),r=n<0?"":t.slice(n);return r.length>=3&&e.every(s=>s.length>r.length)?r:""}function Eu(e){let t=e.filter(c=>c.trim()!=="");if(t.length===0||t.filter(c=>!/\s/.test(c.trim())).length<t.length*.6)return e;let r=new Map,s=[],o=0;for(let c of t){let u=c.trim();if(u.startsWith("find:")){s.push(u);continue}let d=u.replace(/^\.\//,"").replace(/\/+$/,""),f=d.lastIndexOf("/"),p=f>=0?d.slice(0,f):"",m=f>=0?d.slice(f+1):d;if(!m)continue;let _=r.get(p)??[];_.push(/\s/.test(m)?`"${m}"`:m),r.set(p,_),o+=1}if(o===0)return e;let i=[...r.keys()].sort(),a=i.every(c=>c!=="")?xu(i):"",l=[`${o}F ${i.length}D${a?` in ${a}/`:""}:`];for(let c of i){let u=a?c.slice(a.length).replace(/^\//,""):c,d=r.get(c),f=vu(d),p=f?d.map(m=>m.slice(0,-f.length)):d;l.push(`${u?`${u}/`:"./"} (${d.length}${f?`, *${f}`:""}): ${p.join(" ")}`)}if(l.length+s.length>yo){let c=Math.max(0,yo-s.length),u=l.length-c;return[...l.slice(0,c),`\u2026 ${u} more lines omitted`,...s]}return[...l,...s]}z("smart-find",Eu);var Un=1e3,bo=200,Su=60,Tu=190,Ru=/^([^\s:]+):(\d+):(.*)$/,Au=/^([^:]+?)-(\d+)-(.*)$/,$u=/^([^\s:]+):(.*)$/,ko=/(?:^|\/)(?:__tests__|tests?|spec|fixtures?|__mocks__|__snapshots__)\/|\.(?:test|spec)\.[^/]+$/i;function _o(e){let t=e.trim();return t.length>bo?`${t.slice(0,bo)}\u2026`:t}function Cu(e){let t=[],n="";for(let r of e){let s=n?`${n}, ${r}`:r;s.length>=Tu&&n?(t.push(`${n},`),n=r):n=s}return n&&t.push(n),t}function Iu(e){let t=null;for(let n of e){let r=n.split("/").slice(0,-1);if(t===null){t=r;continue}let s=0;for(;s<t.length&&s<r.length&&t[s]===r[s];)s+=1;if(t=t.slice(0,s),t.length===0)return""}return t?t.join("/"):""}function Ou(e){let t=e.filter(p=>p.trim()!=="");if(t.length===0)return e;let n=new Map,r=new Map,s=null,o=0,i=0;for(let p of t){if(p==="--"){s&&n.get(s).push({separator:!0});continue}if(/^[A-Za-z]:[\\/]/.test(p))return e;let m=Ru.exec(p),_=Au.exec(p);if(m&&_)return e;let b=m||_?null:$u.exec(p),$=(m??_??b)?.[1];if(!$)return e;let S=m?{line:m[2],content:m[3],context:!1}:_?{line:_[2],content:_[3],context:!0}:{line:"",content:b[2],context:!1},N=n.get($)??[];N.push(S),n.set($,N),S.context||(o+=1,r.set($,(r.get($)??0)+1)),i+=1,s=$}if(n.size===i)return e;let a=[...n.keys()].sort((p,m)=>{let _=ko.test(p)?1:0,b=ko.test(m)?1:0;return _-b||(p<m?-1:p>m?1:0)}),l=a.length>1?Iu(a):"",c=p=>l?p.slice(l.length+1):p,u=[];for(let p of a){u.push(`${c(p)} (${r.get(p)??0}):`);for(let m of n.get(p))"separator"in m?u.push(" --"):m.line?u.push(` ${m.line}${m.context?"-":":"} ${_o(m.content)}`):u.push(` ${_o(m.content)}`)}let d=a.length>1&&u.length>Su?Cu(a.map(p=>`${c(p)} (${r.get(p)??0})`)):[],f=[`${o}m ${a.length}f${l?` in ${l}/`:""}:`,...d,"",...u];if(f.length>Un){let p=f.length-Un;return[...f.slice(0,Un),`\u2026 ${p} more lines omitted`]}return f}z("smart-grep",Ou);var wo=/^(?:([|\\/ ._-]*\*[|\\/* ._-]* ))?commit [0-9a-f]{7,40}\b/,Pu=/^[|\\/* ._-]*$/,Nu=/^ {4}/,Du=2;function Mu(e){if(!e.some(c=>wo.test(c)))return e;let t=[],n=0,r=0,s=0,o="",i=!1,a=!1,l=()=>{r>0&&t.push(`${o} \u2026 ${r} ${r===1?"line":"lines"} folded \u2026`),r=0};for(let c of e){let u=c.slice(0,s),d=Pu.test(u),f=d?c.slice(s):c,p=Nu.test(f),m=i&&p?null:wo.exec(c);if(m){l(),n=0,s=m[1]?.length??0,i=!0,a=!1,t.push(c);continue}if(/^diff --(?:git|cc|combined) /.test(f)&&(a=!0),p&&!a&&!(s>0&&f.trim().length===0)){n+=1,n<=Du?t.push(c):(r+=1,o=d?u:"");continue}l(),t.push(c)}return l(),t}z("smart-log",Mu);var Fu=/^[\s=]+$/,Lu=/^\s*=+\s+(.*?)\s+=+\s*$/,ju=512;z("strip-banners",e=>{let t=[];for(let n of e){if(Fu.test(n))continue;let r=n.length<=ju?Lu.exec(n):null;t.push(r?r[1]:n)}return t});function Hu(e){let t=[],n=0,r=0;for(;r<e.length;){let s=e[r].replace(/\s+$/,"");if(s===""){n+=1,r+=1,n<=1&&t.push("");continue}n=0;let o=1;for(;r+o<e.length&&e[r+o].replace(/\s+$/,"")===s;)o+=1;if(o>=3)t.push(s),t.push(` \u2026 (repeated ${o}x)`);else for(let i=0;i<o;i++)t.push(s);r+=o}for(;t.length>0&&t[t.length-1]==="";)t.pop();return t}z("squeeze-output",Hu);function Bu(e){return e==="compact"?.6:e==="minimal"?.3:1}var zu=20;function Uu(e){let[t,n,r,s]=e.slice(-4);if(!t||!n||!r||!s||!/^\s*Test Files\s+([1-9]\d*) passed \(\1\)$/.test(t)||!/^\s*Tests\s+([1-9]\d*) passed \(\1\)$/.test(n)||!/^\s*Start at\s+\d{2}:\d{2}:\d{2}$/.test(r))return e;let o=/^(\s*Duration\s+\d+(?:\.\d+)?(?:ms|s)) \(transform [^\n]+\)$/.exec(s)?.[1];return o?[...e.slice(0,-4).filter((a,l)=>l>2||!/^ RUN v\d+\.\d+\.\d+(?:[\w.+-]*) .+$/.test(a)),t,n,o]:e}var xo=new WeakMap;function Zu(e){let t=xo.get(e);if(t)return t;let n=e.strip_lines_matching.map(s=>new RegExp(s)),r={def:e,stripRegexes:n};return xo.set(e,r),r}function Kt(e,t,n={}){return Zn(e,t,n).text}function Zn(e,t,n={}){let r=n.verbosity??"normal";if(!t.strip_ansi&&t.strip_lines_matching.length===0&&!t.transform&&!t.mask_abs_paths&&!t.fold_passing&&!t.truncate_lines_at&&!t.max_lines&&!t.on_empty&&!n.smartCode&&r==="normal")return{text:e,droppedTail:null};let s=Zu(t),o=e;t.strip_ansi&&(o=oe(o));let i=o.endsWith(`
20
+ `),a=(i?o.slice(0,-1):o).split(`
21
+ `);s.stripRegexes.length&&(a=t.keep_failures?a.filter(f=>ke.test(f)||!s.stripRegexes.some(p=>p.test(f))):Xs(a,s.stripRegexes)),r!=="normal"&&!t.preserve_exact&&(a=Jt(a),a=mo(a)),r==="minimal"&&!t.preserve_exact&&(a=fo(a),(t.slug==="vitest"||t.slug==="npm-test")&&(a=Uu(a)));let l=t.transform==="smart-read"&&n.smartCode!==!0?r==="compact"?8:r==="minimal"?6:3:3;if(!t.preserve_exact&&(n.smartCode||n.smartCode===void 0&&r!=="normal"&&Gt(o))&&(a=yt(a,l)),t.transform){let f=go(t.transform);t.transform==="smart-read"?a=yt(a,l,t.slug==="read-tool"):f&&(a=f(a))}let c=t.slug==="read-tool";if(!c){let f=Bn(a);f.some(Boolean)&&(a=a.filter((p,m)=>!f[m]))}t.mask_abs_paths&&(a=no(a)),t.fold_passing&&(a=to(a,t.fold_passing_threshold??5)),t.truncate_lines_at&&(a=Qs(a,t.truncate_lines_at));let u=null;if(t.max_lines){let f=t.scale_with_level?Bu(n.verbosity):1,p=Math.min(t.max_lines,Math.max(zu,Math.round(t.max_lines*f))),m=c?Bn(a):null,_=m?m.filter(b=>!b).length:a.length;if(_>p){let b=p;if(m){let S=0;for(b=0;b<a.length&&S<p;)m[b]||(S+=1),b+=1}let $=_-p;if(t.keep_failures){let S=a.slice(b),N=S.filter(O=>!ke.test(O)),C=S.reduce((O,P,K)=>O+(!ke.test(P)&&!m?.[b+K]?1:0),0);u=N.length>0?N.join(`
22
+ `):null,a=[...a.slice(0,b),...C>0?[ot(C)]:[],...S.filter(O=>ke.test(O))]}else if(c)u=a.slice(b).join(`
23
+ `),a=[...a.slice(0,b),ot($)];else{let{kept:S,dropped:N}=eo(a,p);u=N.length>0?N.join(`
24
+ `):null,a=S}}}let d=a.join(`
25
+ `);return i&&d.length>0&&(d+=`
26
+ `),d.trim().length===0&&t.on_empty&&(d=t.on_empty),{text:d,droppedTail:u}}import Gu from"node:os";import{join as bt}from"node:path";function A(){return process.env.TOKMIZER_HOME||bt(Gu.homedir(),".tokmizer")}function kt(){return bt(A(),"install-id")}function Gn(){return bt(A(),"content-cache")}function vo(){return bt(A(),"restore.json")}function Jn(e){return bt(Gn(),e)}var Ao="user/",Vt=1,Wt=null,So="",To=0,Wu=1e3;function qt(){return Yt(A(),"filters")}function $o(){return Yt(A(),"filters-trust.json")}function Co(e){return typeof e=="string"&&e.startsWith(Ao)}function qu(e){return Vu("sha256").update(e).digest("hex")}async function Yu(){try{let e=JSON.parse(await Ro($o(),"utf8")),t={};if(e.files&&typeof e.files=="object")for(let[n,r]of Object.entries(e.files))typeof r=="string"&&/^[0-9a-f]{64}$/.test(r)&&(t[n]=r);return{v:1,files:t}}catch{return{v:1,files:{}}}}function Xu(e,t){if(t===void 0)return{tests:[]};let n={message:`${e}: tests: each [[filters.${e}.tests]] needs input and expected strings`};if(!Array.isArray(t))return n;let r=[];for(let s of t){if(typeof s!="object"||s===null)return n;let{input:o,expected:i,name:a}=s;if(typeof o!="string"||typeof i!="string")return n;r.push({...typeof a=="string"&&a?{name:a}:{},input:o,expected:i})}return{tests:r}}function Qu(e,t){let n=typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{},{tests:r,...s}=n,o=Xu(e,r);if("message"in o)return o;let i=be.safeParse({...s,slug:e});if(!i.success){let l=i.error.issues.map(c=>`${c.path.join(".")||"rule"}: ${c.message}`).join("; ");return{message:`${e}: ${l}`}}let a;try{a=new RegExp(i.data.match_command)}catch{return{message:`${e}: match_command is not a valid regular expression`}}for(let l of i.data.strip_lines_matching)try{new RegExp(l)}catch{return{message:`${e}: strip_lines_matching has an invalid regular expression`}}return{filter:{...i.data,slug:`${Ao}${i.data.slug}`,matchRegex:a},tests:o.tests}}function ed(e){return e===void 0||e===Vt?null:typeof e=="number"&&Number.isInteger(e)?`schema_version ${e} is not supported: this tkr reads schema_version = ${Vt}. Update tkr, or write the file for version ${Vt}`:`schema_version must be the number ${Vt}`}async function td(e){try{return(await Ju(e)).filter(t=>t.endsWith(".toml")).sort()}catch{return[]}}async function nd(e={}){let t=e.requireTrust!==!1,n=qt(),r=new Map,s=new Map,o=[],i=await td(n);if(i.length===0)return{dir:n,filters:r,tests:s,issues:o};let a=t?await Yu():null;for(let l of i){let c;try{c=await Ro(Yt(n,l),"utf8")}catch{o.push({file:l,message:"could not be read"});continue}if(a){let d=a.files[l];if(!d){o.push({file:l,message:`not trusted yet. Review it, then run: tkr filters trust ${l}`});continue}if(d!==qu(c)){o.push({file:l,message:`changed since it was trusted. Review it, then run: tkr filters trust ${l}`});continue}}let u=await rd(c,l);for(let[d,f]of u.filters)r.set(d,f);for(let[d,f]of u.tests)s.set(d,f);o.push(...u.issues)}return{dir:n,filters:r,tests:s,issues:o}}async function rd(e,t){let n=new Map,r=new Map,s=[],{parse:o}=await Promise.resolve().then(()=>(Hn(),jn)),i;try{i=o(e)}catch(c){return s.push({file:t,message:`not valid TOML (${String(c.message).split(`
27
+ `)[0]})`}),{filters:n,tests:r,issues:s}}let a=ed(i.schema_version);if(a)return s.push({file:t,message:a}),{filters:n,tests:r,issues:s};let l=i.filters;if(typeof l!="object"||l===null||Array.isArray(l))return s.push({file:t,message:"no [filters.<name>] table found"}),{filters:n,tests:r,issues:s};for(let[c,u]of Object.entries(l)){let d=Qu(c,u);if("message"in d){s.push({file:t,message:d.message});continue}n.set(d.filter.slug,d.filter),d.tests.length>0&&r.set(d.filter.slug,{file:t,tests:d.tests})}return{filters:n,tests:r,issues:s}}function sd(){let e=[];for(let t of[$o(),qt()])try{let n=Eo(t);e.push(`${n.mtimeMs}:${n.size}`)}catch{e.push("-")}try{for(let t of Ku(qt()).filter(n=>n.endsWith(".toml")).sort()){let n=Eo(Yt(qt(),t));e.push(`${t}:${n.mtimeMs}:${n.size}`)}}catch{}return e.join("|")}function od(){let e=Date.now();if(!Wt||e-To>=Wu){To=e;let t=sd();(!Wt||t!==So)&&(So=t,Wt=nd())}return Wt}async function id(e){let{filters:t}=await od();return t.size===0?null:st(e,t.values(),null,t)}function Io(e){return async(t,n)=>await id(t)??e(t,n)}var ad=[/\bERROR\b/,/\bFAIL\b/,/\bFAILED\b/,/\bFATAL\b/,/^Traceback /m,/^Error: /m,/^\s+at .*\(.*:\d+:\d+\)/m,/panic:/,/SyntaxError:/,/TypeError:/,/ReferenceError:/,/AssertionError:/,/^\s*(?:error|fatal):/i,/thread '.*' panicked/,/\b[1-9]\d* (?:failed|errors?)\b/];function Oo(e){if(!e)return!1;for(let t of oe(e).split(`
28
+ `))if(!/^\s*[✓✔√]\s/.test(t)&&ad.some(n=>n.test(t)))return!0;return!1}var ld=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),cd=/^[A-Za-z_][A-Za-z0-9_]*=/,Kn=/^([a-z]+)-tool(?::\s|$)/;function He(e){let t=e.trim(),n=t.split(/\s+/),r=0;for(;r<n.length;){let a=n[r];if(cd.test(a)){r++;continue}if(ld.has(a)){for(r++,a==="timeout"&&r<n.length&&/^\d+(?:\.\d+)?[smhd]?$/.test(n[r])&&r++;(a==="stdbuf"||a==="nice")&&r<n.length&&n[r].startsWith("-");)r++;continue}break}if(r>=n.length)return t;let s=n[r],o=s.includes("/")?s.slice(s.lastIndexOf("/")+1):s,i=n.slice(r+1);return i.length?`${o} ${i.join(" ")}`:o}var ud=new Set(["cd","export","source","set","unset","mkdir","true",":","pushd","popd","alias","ulimit","umask","echo","printf","sleep","touch","rm","cp","mv","chmod","ln"]);function Po(e,t){let n=!1,r=!1,s=0,o=[];for(let i=0;i<e.length;i++){let a=e[i];if(a==="\\"&&!n){i++;continue}a==="'"&&!r?n=!n:a==='"'&&!n?r=!r:!n&&!r&&(a===";"?(o.push(e.slice(s,i)),s=i+1):a==="|"&&e[i+1]==="|"?(o.push(e.slice(s,i)),i++,s=i+1):a==="|"?t||(o.push(e.slice(s,i)),s=i+1):a==="&"&&e[i+1]==="&"&&(o.push(e.slice(s,i)),i++,s=i+1))}return o.push(e.slice(s)),o}function dd(e){let t=Po(e,!1);for(let n=t.length-1;n>=0;n--){let r=t[n].trim();if(r)return r}return e.trim()}function Vn(e){let t=Po(e,!0).map(n=>n.trim()).filter(Boolean);if(t.length===0)return null;for(let n of t.slice(0,-1)){let r=He(n).split(/\s+/)[0]??"";if(!ud.has(r))return null}return dd(t[t.length-1])}function No(e){let t=!1,n=!1,r=0,s=[];for(let o=0;o<e.length;o++){let i=e[o];if(i==="\\"&&!t){o++;continue}i==="'"&&!n?t=!t:i==='"'&&!t?n=!n:!t&&!n&&(i==="|"||i===";"?(s.push(e.slice(r,o)),i==="|"&&e[o+1]==="|"&&o++,r=o+1):i==="&"&&e[o+1]==="&"&&(s.push(e.slice(r,o)),o++,r=o+1))}s.push(e.slice(r));for(let o=s.length-1;o>=0;o--){let i=s[o].trim();if(i)return i}return e.trim()}var fd=/^(?:npx|bunx|uvx|pnpm\s+(?:exec|dlx)|yarn\s+(?:exec|dlx)|(?:uv|poetry|pipenv|hatch|pdm|rye)\s+run|bundle\s+exec|python[0-9.]*\s+-m)\s+(?=[^\s-])/;function Wn(e){let t=fd.exec(e);return t?He(e.slice(t[0].length)):null}function Do(e){let t=Kn.exec(e),n=e;if(t){if(t[1]!=="bash")return[e];let a=e.indexOf(": ");if(a<0)return[e];n=e.slice(a+2)}let r=Vn(n),s=r?He(r):null,i=[s?Wn(s):null,s,e].filter(a=>!!a);return[...new Set(i)]}var Mo=`
14
29
  [YOLO: omitted]
15
- `;function jt(t){let e=Buffer.from(t,"utf8");if(e.length<=256)return t;let r=256-Buffer.byteLength(Zn,"utf8"),n=Math.floor(r/2);for(;(e[n]&192)===128;)n-=1;let s=e.length-(r-n);for(;(e[s]&192)===128;)s+=1;return e.subarray(0,n).toString("utf8")+Zn+e.subarray(s).toString("utf8")}var Wa=/^ID {2,}TITLE {2,}BRANCH {2,}STATE {2,}CREATED *$/,qa=/^… \([1-9]\d* more lines omitted\)$/,zt=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;function Ya(t,e){if(!e)return t.split(`
16
- `).map(i=>i.replace(/^[ \t]+|[ \t]+(?=\r?$)/g,"")).join(`
17
- `);let r="",n=!1,s=!1;for(let i of t)n?(r+=i,s?s=!1:i==="\\"?s=!0:i==='"'&&(n=!1)):i==='"'?(n=!0,r+=i):i!==" "&&i!==" "&&i!=="\r"&&i!==`
18
- `&&(r+=i);return r+(t.endsWith(`
30
+ `;function qn(e){let t=Buffer.from(e,"utf8");if(t.length<=256)return e;let n=256-Buffer.byteLength(Mo,"utf8"),r=Math.floor(n/2);for(;(t[r]&192)===128;)r-=1;let s=t.length-(n-r);for(;(t[s]&192)===128;)s+=1;return t.subarray(0,r).toString("utf8")+Mo+t.subarray(s).toString("utf8")}var pd=/^ID {2,}TITLE {2,}BRANCH {2,}STATE {2,}CREATED *$/,md=/^… \([1-9]\d* more lines omitted\)$/,Yn=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;function hd(e,t){if(!t)return e.split(`
31
+ `).map(o=>o.replace(/^[ \t]+|[ \t]+(?=\r?$)/g,"")).join(`
32
+ `);let n="",r=!1,s=!1;for(let o of e)r?(n+=o,s?s=!1:o==="\\"?s=!0:o==='"'&&(r=!1)):o==='"'?(r=!0,n+=o):o!==" "&&o!==" "&&o!=="\r"&&o!==`
33
+ `&&(n+=o);return n+(e.endsWith(`
19
34
  `)?`
20
- `:"")}function Ja(t,e){if(/@(?:p)?\d|\r/.test(t))return t;let r=t.endsWith(`
35
+ `:"")}function gd(e,t){if(/@(?:p)?\d|\r/.test(e))return e;let n=e.endsWith(`
21
36
  `)?`
22
- `:"",n=(r?t.slice(0,-1):t).split(`
23
- `),s=n.findIndex(_=>Wa.test(_));if(s>=0&&n.slice(0,s).some(_=>_!==""&&!/^Showing \d+ of \d+ (?:open|closed|all) pull requests in \S+$/.test(_)))return t;let i=s>=0?[...n[s].matchAll(/\S+/g)].map(_=>_.index):[],o=[];for(let _=s+1;_<n.length;_+=1){let I=n[_];if(qa.test(I))continue;if(/…|\.\.\./.test(I))return t;let k;if(s>=0){if(/[^\x20-\x7e]/.test(I))return t;let P=i.map((A,O)=>I.slice(A,i[O+1]));if(P.slice(0,-1).some(A=>A[0]===" "||!A.endsWith(" "))||(k=P.map(A=>A.replace(/ +$/,"")),!/^#\d+$/.test(k[0])||!/^\S+$/.test(k[2])||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(k[3])||!/^\d+(?:s|m|h|d|w|mo|y)$/.test(k[4])))return t}else if(k=I.split(" "),k.length!==5||!/^\d+$/.test(k[0])||!k[1]||!k[2]||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(k[3])||!zt.test(k[4])||!Number.isFinite(Date.parse(k[4])))return t;if(k.some(P=>/[\u0000-\u001f\u007f]/.test(P)))return t;o.push({index:_,cells:k})}if(o.length===0)return t;s>=0&&(n[s]="ID TITLE BRANCH STATE CREATED");for(let _ of o)n[_.index]=_.cells.join(" ");let a=n.join(`
24
- `)+r;if(!e)return a;let c=new Map;for(let{cells:_}of o)c.set(_[1],(c.get(_[1])??0)+1);let u=new Map,l=[];for(let[_,I]of c){if(_.length<40||I<3||_.trim().split(/\s+/).length<8)continue;let k=`@${u.size+1}`,P=JSON.stringify(_).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),A=`TITLE ${k} = ${P}`;I*(Buffer.byteLength(_)-Buffer.byteLength(k))<=Buffer.byteLength(A)+1||(u.set(_,k),l.push(A))}let f=new Map;for(let{cells:_}of o){if(u.has(_[1]))continue;let I=/^((?:\S+\s+){4})\S/.exec(_[1])?.[1];I&&I.length>=24&&f.set(I,(f.get(I)??0)+1)}let d=new Map;for(let[_,I]of f){if(I<3)continue;let k=`@p${d.size+1}`,P=`TITLE prefix ${k} = ${JSON.stringify(_).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}`;I*(Buffer.byteLength(_)-Buffer.byteLength(k)-1)<=Buffer.byteLength(P)+1||(d.set(_,k),l.push(P))}let m=o[0].cells[4].slice(10),v=o.length>=3&&zt.test(o[0].cells[4])&&o.every(({cells:_})=>zt.test(_[4])&&_[4].slice(10)===m)&&o.length*m.length>`CREATED suffix = ${JSON.stringify(m)}`.length+1;if(v&&l.push(`CREATED suffix = ${JSON.stringify(m)}`),l.length===0)return a;for(let{index:_,cells:I}of o){let k=u.get(I[1]),P=/^((?:\S+\s+){4})\S/.exec(I[1])?.[1],A=P?d.get(P):void 0;n[_]=I.map((O,C)=>C===1?k??(A?`${A}:${O.slice(P.length)}`:O):C===4&&v?O.slice(0,10):O).join(" ")}let w=[...n,"",...l].join(`
25
- `)+r;return Buffer.byteLength(w)<Buffer.byteLength(a)?w:a}function Zt(t,e,r){if(e!=="compact"&&e!=="minimal")return t;let n=t;if(/^[ \t\r\n]*[\[{]/.test(t)){try{JSON.parse(t)}catch{return t}n=Ya(t,e==="minimal")}else r==="gh"&&(n=Ja(t,e==="minimal"));return Buffer.byteLength(n)<Buffer.byteLength(t)?n:t}var Xa=/^(?:\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}:\d{2}(?:\.\d+)?Z?\s+)?(?:\[(?:DEBUG|TRACE|INFO|WARN|WARNING|ERROR|FATAL)\]|DEBUG|TRACE|INFO|WARN|WARNING|ERROR|FATAL)(?::|\s|$)/,Qa=/^\[tkr: previous log line repeated \d+ additional times\]$/m;function Un(t){if(Buffer.byteLength(t)<2048||ft(t)||Qa.test(t))return t;let e=t.split(`
26
- `),r=[];for(let n=0;n<e.length;){let s=e[n],i=n+1;if(Xa.test(s))for(;i<e.length&&e[i]===s;)i+=1;let o=i-n,a=`[tkr: previous log line repeated ${o-1} additional times]`;if(o>=3&&Buffer.byteLength(a)+1<(o-1)*(Buffer.byteLength(s)+1))r.push(s,a);else for(let c=n;c<i;c+=1)r.push(s);n=i}return r.join(`
27
- `)}var Hn=null;function Ut(t){Hn=t}async function ec(t,e){let r=await gn();return lt(t,r.values(),e,r)}var tc=/^(?:grep|rg|find|eslint|ruff|flake8|mypy|prettier|biome|black|stylelint)(?:\s|$)|^git\s+(?:diff|grep)\b/,rc=2048;async function Ht(t,e,r,n={}){let s=Buffer.byteLength(e,"utf8"),{exitCode:i,yolo:o=!1,resolver:a,...c}=n,u=Fe(jn(t.startsWith("bash-tool: ")?t.slice(11):t)),l=i!=null&&i!==0&&!(i===1&&tc.test(u)),f=a??Hn??ec,d=null;for(let D of zn(t))if(d=await f(D,r),d)break;!d&&s>=rc&&!Ft.test(t)&&(d=await f(`bash-tool: ${t}`,r));let m=Bt(t.startsWith("bash-tool: ")?t.slice(11):t),v=d?.slug==="git-log"&&m!=null&&/^git\s+log(?:\s|$)/.test(Fe(m)),w=i==null&&(v?/^(?:fatal|error):/im.test(ke(e)):Fn(e)),_=d?.transform==="smart-read"&&s<=2048&&(e.endsWith(`
28
- `)?e.slice(0,-1):e).split(`
29
- `).length<=60,I=s<=16384&&m!=null&&/^(?:head|tail)(?:\s|$)|^sed\s+(?:(?:-[Eru]+|--(?:regexp-extended|unbuffered|sandbox))\s+)*(?:-[Enruse]*n[Enruse]*(?:\s|$)|--(?:quiet|silent)(?:\s|$))/.test(Fe(m)),k=d?.transform==="smart-read"&&s<=16384&&(c.verbosity??"normal")==="normal"&&c.smartCode!==!0;if(!o&&(k||I||_&&c.smartCode!==!0))return{output:e,filterId:d?.slug??null,rawBytes:s,filteredBytes:s,debugBypass:l||w,droppedTail:null};if(!d||(l||w)&&d.preserve_exact&&!o)return{output:e,filterId:null,rawBytes:s,filteredBytes:s,debugBypass:l||w,...o?{droppedTail:null}:{}};let P=D=>{if(!o)return D;let Se=D.filteredBytes>s||s>0&&D.output.length===0?e:D.output,Te=!D.debugBypass&&!d?.preserve_exact?Zt(Se,"minimal",D.filterId??""):Se,Ze=jt(Te)===Te?Te:jt(Se);return{...D,output:Ze,filteredBytes:Buffer.byteLength(Ze,"utf8"),droppedTail:null}};if(l||w){let D=o?Ln(e,{...d,keep_failures:!0,transform:void 0,max_lines:void 0,truncate_lines_at:void 0,on_empty:void 0},{verbosity:"minimal",smartCode:!1}):d.strip_ansi&&!d.preserve_exact?ke(e):e;return!o&&c.verbosity==="minimal"&&d.transform!=="smart-read"&&(D=Un(D)),!o&&d.slug==="pytest"&&(c.verbosity==="compact"||c.verbosity==="minimal")&&/^={3,} test session starts ={3,}\r?$/m.test(D)&&/^={3,} FAILURES ={3,}\r?$/m.test(D)&&(D=D.replace(/^([=_])\1{2,} (.+?) \1{3,}(\r?)$/gm,"$2$3")),P({output:D,filterId:d.slug,rawBytes:s,filteredBytes:Buffer.byteLength(D,"utf8"),debugBypass:!0})}let{text:A,droppedTail:O}=Lt(e,d,o?{...c,verbosity:"minimal",...d.transform==="smart-read"?{smartCode:!0}:{}}:c),C=!o&&!d.preserve_exact?Zt(A,c.verbosity,d.slug):A,G=Buffer.byteLength(C,"utf8");return e.trim().length>0&&G>=s?P({output:e,filterId:d.slug,rawBytes:s,filteredBytes:s,debugBypass:!1,droppedTail:null}):P({output:C,filterId:d.slug,rawBytes:s,filteredBytes:G,debugBypass:!1,droppedTail:O})}import{join as sc}from"node:path";import{mkdir as Vf,readFile as ic,writeFile as Gf,unlink as Kf,rename as Wf}from"node:fs/promises";import nc from"node:os";import{join as pt}from"node:path";function $(){return process.env.TOKMIZER_HOME||pt(nc.homedir(),".tokmizer")}function Ye(){return pt($(),"install-id")}function Vt(){return pt($(),"content-cache")}function Vn(t){return pt(Vt(),t)}var oc="state.json";function ac(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function cc(t){return t?.dir??$()}async function Je(t){let e=cc(t);try{let r=await ic(sc(e,oc),"utf8"),n=JSON.parse(r),s=n.timeZone;return{...n,lastSettingsRevision:n.lastSettingsRevision??0,get timeZone(){return s??=ac()},bonusActive:n.bonusActive??!1,...n.bonusResetAt!==void 0?{bonusResetAt:n.bonusResetAt}:{}}}catch{return null}}function uc(){let t=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(t)&&t>0?t:6048e5}function Gn(t,e=Date.now()){let r=t.lastHeartbeatOkAt;if(typeof r=="number"&&e-r>uc())return!0;if(t.subEndsAt){let n=Date.parse(t.subEndsAt);if(Number.isFinite(n)&&e>n)return!0}return!1}function Kn(t,e=Date.now()){return t.plan}var lc=[[/(authorization\s*:\s*)([A-Za-z][A-Za-z0-9._-]*)\s+[^\s'"]+/gi,"$1$2 [REDACTED]"],[/(authorization\s*:\s*)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/(bearer\s+)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-b|--cookie)[=\s]+['"]?)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/(--?(?:password|passwd|passphrase|apipass|pass|pwd|token|api[-_]?key|secret|bearer|cookie|jwt)(?:-[a-z0-9]+)*[=\s]+)\S+/gi,"$1[REDACTED]"],[/((?:^|\s)-b[=\s]?['"]?)[^\s'"=]+=[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*:)(\/[^/\s'"][^\s'"]*|[^\s/'"0-9][^\s'"]*|[0-9][^\s'"]*[^\s'"0-9][^\s'"]*)/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*[^\s:/'"0-9][^\s:/'"]*:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:[A-Za-z0-9]+-){0,8}(?:X-Api-Key|Private-Token|[A-Za-z0-9]+-(?:Token|Key|Auth|Secret))\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/(-i\s+)(\/[^\s]+|~\/[^\s]+|[A-Z]:\\[^\s]+)/g,"$1[REDACTED]"],[/([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^:/\s@]*:)[^\s@]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]];function Xe(t){let e=t;for(let[r,n]of lc)e=e.replace(r,n);return e}import{join as es}from"node:path";import{appendFileSync as vc,chmodSync as xc,existsSync as Ec,mkdirSync as wc,readFileSync as Tp,renameSync as Rp,rmdirSync as Ap,statSync as kc,unlinkSync as Cp,utimesSync as Ip,writeFileSync as $p}from"node:fs";import{createHash as ep,randomUUID as dc}from"node:crypto";import{readFile as Wn,writeFile as qn,mkdir as fc}from"node:fs/promises";async function Gt(){try{let r=(await Wn(Ye(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(r))return r}catch{}await fc($(),{recursive:!0});let t=dc();try{return await qn(Ye(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Wn(Ye(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await qn(Ye(),t,{mode:384}),t}}import{createRequire as pc}from"node:module";var mc=pc(import.meta.url);function hc(){for(let t of["../package.json","../../package.json"])try{let e=mc(t).version;if(typeof e=="string"&&e)return e}catch{}return"0.0.0"}var mt=hc();function Yn(t,e){if(!t||!e)return!1;let r=t.split(".").map(s=>parseInt(s,10)),n=e.split(".").map(s=>parseInt(s,10));for(let s=0;s<3;s+=1){let i=r[s]??0,o=n[s]??0;if(Number.isNaN(i)||Number.isNaN(o))return!1;if(i<o)return!0;if(i>o)return!1}return!1}var Jn=`-----BEGIN PUBLIC KEY-----
37
+ `:"",r=(n?e.slice(0,-1):e).split(`
38
+ `),s=r.findIndex(b=>pd.test(b));if(s>=0&&r.slice(0,s).some(b=>b!==""&&!/^Showing \d+ of \d+ (?:open|closed|all) pull requests in \S+$/.test(b)))return e;let o=s>=0?[...r[s].matchAll(/\S+/g)].map(b=>b.index):[],i=[];for(let b=s+1;b<r.length;b+=1){let $=r[b];if(md.test($))continue;if(/…|\.\.\./.test($))return e;let S;if(s>=0){if(/[^\x20-\x7e]/.test($))return e;let N=o.map((C,O)=>$.slice(C,o[O+1]));if(N.slice(0,-1).some(C=>C[0]===" "||!C.endsWith(" "))||(S=N.map(C=>C.replace(/ +$/,"")),!/^#\d+$/.test(S[0])||!/^\S+$/.test(S[2])||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(S[3])||!/^\d+(?:s|m|h|d|w|mo|y)$/.test(S[4])))return e}else if(S=$.split(" "),S.length!==5||!/^\d+$/.test(S[0])||!S[1]||!S[2]||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(S[3])||!Yn.test(S[4])||!Number.isFinite(Date.parse(S[4])))return e;if(S.some(N=>/[\u0000-\u001f\u007f]/.test(N)))return e;i.push({index:b,cells:S})}if(i.length===0)return e;s>=0&&(r[s]="ID TITLE BRANCH STATE CREATED");for(let b of i)r[b.index]=b.cells.join(" ");let a=r.join(`
39
+ `)+n;if(!t)return a;let l=new Map;for(let{cells:b}of i)l.set(b[1],(l.get(b[1])??0)+1);let c=new Map,u=[];for(let[b,$]of l){if(b.length<40||$<3||b.trim().split(/\s+/).length<8)continue;let S=`@${c.size+1}`,N=JSON.stringify(b).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),C=`TITLE ${S} = ${N}`;$*(Buffer.byteLength(b)-Buffer.byteLength(S))<=Buffer.byteLength(C)+1||(c.set(b,S),u.push(C))}let d=new Map;for(let{cells:b}of i){if(c.has(b[1]))continue;let $=/^((?:\S+\s+){4})\S/.exec(b[1])?.[1];$&&$.length>=24&&d.set($,(d.get($)??0)+1)}let f=new Map;for(let[b,$]of d){if($<3)continue;let S=`@p${f.size+1}`,N=`TITLE prefix ${S} = ${JSON.stringify(b).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}`;$*(Buffer.byteLength(b)-Buffer.byteLength(S)-1)<=Buffer.byteLength(N)+1||(f.set(b,S),u.push(N))}let p=i[0].cells[4].slice(10),m=i.length>=3&&Yn.test(i[0].cells[4])&&i.every(({cells:b})=>Yn.test(b[4])&&b[4].slice(10)===p)&&i.length*p.length>`CREATED suffix = ${JSON.stringify(p)}`.length+1;if(m&&u.push(`CREATED suffix = ${JSON.stringify(p)}`),u.length===0)return a;for(let{index:b,cells:$}of i){let S=c.get($[1]),N=/^((?:\S+\s+){4})\S/.exec($[1])?.[1],C=N?f.get(N):void 0;r[b]=$.map((O,P)=>P===1?S??(C?`${C}:${O.slice(N.length)}`:O):P===4&&m?O.slice(0,10):O).join(" ")}let _=[...r,"",...u].join(`
40
+ `)+n;return Buffer.byteLength(_)<Buffer.byteLength(a)?_:a}var Fo={"Changes to be committed:":"staged","Changes not staged for commit:":"unstaged","Untracked files:":"untracked"},yd={modified:"M",deleted:"D","new file":"A",renamed:"R",copied:"C",typechange:"T"},bd=/^\t(modified|deleted|new file|renamed|copied|typechange):\s+(.+)$/,kd=/^On branch (\S+)$/,_d=/^Your branch is (?:up to date with '([^']+)'|(ahead|behind)(?: of)? '([^']+)' by (\d+) commits?(?:, and can be fast-forwarded)?)\.$/;function wd(e){let t=kd.exec(e[0]??"");if(!t)return e;let n=_d.exec(e[1]??"");if(!n)return[`* ${t[1]}`,...e.slice(1)];let r=n[1]??n[3],s=n[2]?` [${n[2]} ${n[4]}]`:"";return[`* ${t[1]}...${r}${s}`,...e.slice(2)]}function xd(e){let t=e.endsWith(`
41
+ `)?`
42
+ `:"",n=wd((t?e.slice(0,-1):e).split(`
43
+ `)),r=null,s=[];for(let o of n){if(Object.hasOwn(Fo,o)){r=Fo[o];continue}if(!o.startsWith(" ")){r=null,s.push(o);continue}if(r==="untracked"){s.push(`?? ${o.slice(1)}`);continue}let i=r?bd.exec(o):null;if(!i)return e;let a=yd[i[1]];s.push(r==="staged"?`${a} ${i[2]}`:` ${a} ${i[2]}`)}return s.join(`
44
+ `)+t}var Lo=/^ (\S.*?) +\| +(\d+(?: [+-]+)?|Bin .*)$/,vd=/^ \d+ files? changed(?:, \d+ insertions?\(\+\))?(?:, \d+ deletions?\(-\))?$/;function Ed(e){let t=e.split(`
45
+ `);for(let n=0;n<t.length;n+=1){if(!vd.test(t[n]))continue;let r=n;for(;r>0&&Lo.test(t[r-1]);)r-=1;for(let s=r;s<n;s+=1)t[s]=t[s].replace(Lo," $1 | $2")}return t.join(`
46
+ `)}var Sd=/^( *(?:[~+-] +)?(?:[\w.-]+|"[^"\n]*")) {2,}= /gm,jo=/^[A-Z][A-Z0-9_]*(?: +[A-Z][A-Z0-9_]*)+$/,Ho=/^… \(\d+ more lines omitted\)$/;function Td(e,t){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r];if(s>0&&e.length>s&&e[s-1]!==" ")return null;let o=e.slice(s,t[r+1]??e.length).trim();if(o.includes(" "))return null;n.push(o)}return n}function Rd(e){let t=e.endsWith(`
47
+ `)?`
48
+ `:"",n=(t?e.slice(0,-1):e).split(`
49
+ `),r=[],s=[];for(let c of n)c.startsWith("WARNING:")?r.includes(c)||r.push(c):s.push(c);let o=s.findIndex(c=>jo.test(c));if(o<0)return[...r,...s].join(`
50
+ `)+t;let i=s[o],a=[...i.matchAll(/\S+/g)].map(c=>c.index),l=[...r,...s.slice(0,o),i.split(/ +/).join(" ")];for(let c of s.slice(o+1)){if(Ho.test(c)){l.push(c);continue}let u=c.startsWith(" ")||/[^\x20-\x7e]/.test(c)?null:Td(c,a);if(!u)return[...r,...s].join(`
51
+ `)+t;l.push(u.join(" "))}return l.join(`
52
+ `)+t}function Ad(e){let t=e.endsWith(`
53
+ `)?`
54
+ `:"",n=(t?e.slice(0,-1):e).split(`
55
+ `),r=n.findIndex(i=>jo.test(i.trimEnd()));if(r<0)return e;let s=n[r].trim().split(/ {2,}/).length;if(s<2)return e;let o=[...n.slice(0,r),n[r].trim().split(/ {2,}/).join(" ")];for(let i of n.slice(r+1)){if(Ho.test(i)){o.push(i);continue}if(i.startsWith(" ")||i.includes(" ")||/[^\x20-\x7e]/.test(i))return e;let a=i.trimEnd().split(/ {2,}/);if(a.length===s-1){let l=a[0].indexOf(" ");if(l<0||a[0].indexOf(" ",l+1)>=0)return e;a=[a[0].slice(0,l),a[0].slice(l+1),...a.slice(1)]}if(a.length!==s)return e;o.push(a.join(" "))}return o.join(`
56
+ `)+t}function Xn(e,t,n){if(t!=="compact"&&t!=="minimal")return e;let r=e;if(/^[ \t\r\n]*[\[{]/.test(e)){try{JSON.parse(e)}catch{return e}r=hd(e,t==="minimal")}else n==="gh"?r=gd(e,t==="minimal"):n==="git-status"?r=xd(e):n==="gcloud"?r=Rd(e):n==="oc"?r=Ad(e):n==="git-diff"?r=Ed(e):n==="tofu-plan"&&(r=e.replace(Sd,"$1 = "));return Buffer.byteLength(r)<Buffer.byteLength(e)?r:e}var $d=/^(?:\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}:\d{2}(?:\.\d+)?Z?\s+)?(?:\[(?:DEBUG|TRACE|INFO|WARN|WARNING|ERROR|FATAL)\]|DEBUG|TRACE|INFO|WARN|WARNING|ERROR|FATAL)(?::|\s|$)/,Cd=/^\[tkr: previous log line repeated \d+ additional times\]$/m;function Bo(e){if(Buffer.byteLength(e)<2048||Gt(e)||Cd.test(e))return e;let t=e.split(`
57
+ `),n=[];for(let r=0;r<t.length;){let s=t[r],o=r+1;if($d.test(s))for(;o<t.length&&t[o]===s;)o+=1;let i=o-r,a=`[tkr: previous log line repeated ${i-1} additional times]`;if(i>=3&&Buffer.byteLength(a)+1<(i-1)*(Buffer.byteLength(s)+1))n.push(s,a);else for(let l=r;l<o;l+=1)n.push(s);r=o}return n.join(`
58
+ `)}var Id=/^(?:[A-Za-z]:)?[^\s"'<>|]+\.(?:[cm]?[jt]sx?|json)$/,Od=/--(?:listFiles|listFilesOnly|listEmittedFiles|showConfig|explainFiles|traceResolution)(?:\s|=|$)/;function zo(e){return Od.test(e)}function Uo(e){let t=e.endsWith(`
59
+ `),n=(t?e.slice(0,-1):e).split(`
60
+ `),r=0;for(let s of n)if(s.trim()!==""){if(!Id.test(s))return null;r+=1}return r<2?null:`tsc: 0 errors, ${r} files${t?`
61
+ `:""}`}var Ko=/^(?:(?:npx|bunx|pnpm(?:\s+(?:exec|dlx))?|yarn(?:\s+exec)?|uv\s+run|poetry\s+run|pipenv\s+run|hatch\s+run|python3?\s+-m)\s+)?(?:\S*\/)?(?:vitest|jest|mocha|pytest|py\.test|playwright\s+test)(?:\s|$)|^(?:npm|pnpm|yarn|bun)\s+(?:run\s+)?(?:test|t)(?:[:-]\S+)?(?:\s|$)|^cargo\s+test(?:\s|$)|^go\s+test(?:\s|$)/,Vo={normal:{msg:40,diff:60,frames:6,code:!0,out:20,bulk:50,repeats:10,trimDiff:!1,changedOnly:!1},compact:{msg:12,diff:24,frames:2,code:!1,out:5,bulk:20,repeats:2,trimDiff:!0,changedOnly:!1},minimal:{msg:6,diff:8,frames:0,code:!1,out:0,bulk:10,repeats:1,trimDiff:!0,changedOnly:!0}},Pd=/node_modules|^node:|^internal\/|site-packages|dist-packages|\/lib\/python\d|\/rustc\/|\.cargo\/registry|\.rustup\/|\/go\/src\/|\/go\/pkg\/mod\/|\/libexec\/src\/|<anonymous>/,Nd=/^\s*at\s+(?:.*?\()?((?:file:\/\/)?[^\s()]+?):(\d+)(?::(\d+))?\)?\s*$/,Dd=/^\s*❯\s+(?:\S+\s+)?([^\s]+?):(\d+)(?::(\d+))?\s*$/,Md=/^\s*(>)?\s*(\d+)\s*\|/,Fd=/^\s*\|\s*[\^~]+\s*$/,Ld=/^(?:- Expected|\+ Received|- Snapshot|\+ expected - actual|\+ actual - expected|- expected \+ actual)(?:\s+[-+]\s*\d+)?$/;function it(e,t){let n=null;for(let r of e){let s=t.exec(r);s&&(n=(n??0)+Number(s[1]))}return n}function Xt(e){return Pd.test(e)}function Qt(e,t,n){return n===null?t:(t!==n&&!e.some(r=>r.kind==="frame"&&r.text===t)&&e.push({kind:"frame",text:t}),n)}function Qn(e,t=()=>!1){let n=[],r=null,s=-1,o=!1;for(let d of e){let f=d.trimEnd(),p=f.trim();if(!p||Fd.test(f)||/^─+$/.test(p))continue;if(t(p)){o=!0,n.push({kind:"out",text:p.replace(/\s*─+$/,"")});continue}if(o){n.push({kind:"out",text:p});continue}let m=Nd.exec(f)??Dd.exec(f);if(m){s=-1;let b=m[1].replace(/^file:\/\//,"");Xt(b)||(r=Qt(n,`${b}:${m[2]}${m[3]?`:${m[3]}`:""}`,r));continue}let _=Md.exec(f);if(_){s=-1,n.push({kind:"code",text:p,num:Number(_[2]),pointed:_[1]===">"});continue}if(Ld.test(p)){s=n.length,n.push({kind:"legend",text:p});continue}n.push(s>=0?{kind:"diff",text:f,segment:s}:{kind:"msg",text:p})}let i=n.some(d=>d.kind==="code"&&d.pointed),a=r?Number(/:(\d+)(?::\d+)?$/.exec(r)?.[1]):NaN,l=!1,c=n.filter(d=>{if(d.kind!=="code")return!0;let f=!l&&(i?d.pointed===!0:d.num===a);return f&&(l=!0),f}),u=new Map;for(let d of c){if(d.kind!=="diff")continue;let f=d.text.length-d.text.trimStart().length;u.set(d.segment,Math.min(u.get(d.segment)??f,f))}for(let d of c)d.kind==="diff"&&(d.text=d.text.slice(u.get(d.segment)??0)),d.kind==="code"&&(d.text=d.text.replace(/^>\s*/,""));return{body:c,loc:r}}function U(e,t=!1){return{text:e.trim().replace(/\s{2,}/g," "),minor:t}}function jd(e){if(!e.some(l=>/^⎯+ Failed (?:Tests|Suites) \d+ ⎯+$/.test(l.trim())||/^\s*Test Files\s{2,}\d/.test(l)||/^ ?FAIL\s+\S+ > /.test(l)))return null;let t=it(e,/^\s*Tests\s+(\d+) failed/),n=[];for(let l of e)/^\s*Test Files\s{2,}\S/.test(l)?n.push(U(l,!0)):/^\s*(?:Tests|Errors|Type Errors)\s{2,}\S/.test(l)&&n.push(U(l));let r=[],s=0,o=[],i=[],a=()=>{if(o.length){let{body:l,loc:c}=Qn(i);for(let u of o)u.body=l,u.loc=c}o=[],i=[]};for(let l of e){let c=l.trim(),u=/^ ?FAIL\s+(\S.*?)\s*$/.exec(l);if(u){i.some(b=>b.trim())&&a();let f=u[1],p=/^(\S+) \[ \S+ \]$/.exec(f),m=f.split(" > "),_=p?{file:p[1],name:"(suite)",loc:null,body:[]}:m.length>1?{file:m[0],name:m.slice(1).join(" > "),loc:null,body:[]}:{file:null,name:f,loc:null,body:[]};p||(s+=1),r.push(_),o.push(_);continue}let d=/^⎯+ (Unhandled [A-Za-z ]+?) ⎯+$/.exec(c);if(d){a();let f={file:null,name:d[1],loc:null,body:[]};r.push(f),o.push(f);continue}if(/^⎯{3,}/.test(c)||/^(?:Test Files|Tests|Start at|Duration|Errors)\s{2,}/.test(c)){a();continue}o.length&&i.push(l)}if(a(),s===0){let l=null;for(let c of e){let u=/^\s*[❯✓×✗]\s+(\S+)\s+\(\d+ tests?\b/.exec(c);if(u){l=u[1];continue}let d=/^\s+[×✗]\s+(.+?)(?:\s+\d+(?:\.\d+)?m?s)?$/.exec(c);d&&(r.push({file:l,name:d[1],loc:null,body:[]}),s+=1)}}return{failures:r,summary:n,reported:t,counted:s}}function Hd(e){if(!e.some(u=>/^\s{2}● (?!Console$)/.test(u))||!e.some(u=>/^Tests:\s/.test(u)||/^(?:FAIL|PASS)\s+\S/.test(u)))return null;let t=it(e,/^Tests:\s+(\d+) failed/),n=[];for(let u of e)/^Test Suites:\s/.test(u)?n.push(U(u,!0)):(/^Tests:\s/.test(u)||/^Snapshots:\s/.test(u)&&/failed|obsolete/.test(u))&&n.push(U(u));let r=[],s=new Set,o=0,i=null,a=null,l=[],c=()=>{if(a){let u=`${a.file}\0${a.name}`;if(!s.has(u)){s.add(u);let{body:d,loc:f}=Qn(l);a.body=d,a.loc=f,r.push(a),a.name!=="Test suite failed to run"&&(o+=1)}}a=null,l=[]};for(let u of e){let d=/^(?:FAIL|PASS)\s+(\S+)/.exec(u);if(d){c(),i=d[1];continue}if(/^(?:Summary of all failing tests|Test Suites:|Tests:|Snapshots:|Time:|Ran all test suites)/.test(u)){c();continue}let f=/^\s{2}● (.+)$/.exec(u);if(f){c(),f[1].trim()!=="Console"&&(a={file:i,name:f[1].trim(),loc:null,body:[]});continue}a&&l.push(u)}return c(),{failures:r,summary:n,reported:t,counted:o}}function Wo(e,t,n,r,s){let o=[],i=new Map,a=null;for(let l=t;l<n;l++){let c=e[l],u=/^\s{2}\d+\) (.+)$/.exec(c);if(u){let{name:d,used:f}=r(u[1],e.slice(l+1,Math.min(n,l+8)));l+=f,a=i.get(d)??null,a||(a=[],i.set(d,a),o.push({file:null,name:d,loc:null,body:[]}));continue}/^\s+Retry #\d+ ─*/.test(c)||a&&a.push(c)}for(let l of o){let{body:c,loc:u}=Qn(i.get(l.name),s);l.body=c,l.loc=u}return o}function Bd(e){let t=e.findIndex(o=>/^\s*\d+ failing$/.test(o));if(t<0)return null;let n=Number(/(\d+)/.exec(e[t])[1]),r=e.filter(o=>/^\s*\d+ (?:passing|failing|pending)(?: \(\S+\))?$/.test(o)).map(o=>U(o.replace(/ \(\S+\)\s*$/,""))),s=Wo(e,t+1,e.length,(o,i)=>{let a=[o.trim()],l=0;for(;!a[a.length-1].endsWith(":")&&l<i.length&&i[l].trim();)a.push(i[l].trim()),l+=1;return a[a.length-1].endsWith(":")?{name:a.join(" \u203A ").replace(/:$/,""),used:l}:{name:o.trim(),used:0}});return{failures:s,summary:r,reported:n,counted:s.length}}function zd(e){let t=e.findIndex(a=>/^\s{2}\d+\) .*›.*─{3,}\s*$/.test(a));if(t<0)return null;let n=e.findIndex((a,l)=>l>t&&/^\s{2}\d+ (?:failed|flaky|passed|skipped|interrupted|did not run)(?: \(.+\))?$/.test(a)),r=n<0?e.length:n,s=it(e.slice(r),/^\s{2}(\d+) failed$/),o=e.slice(r).filter(a=>/^\s{2}\d+ (?:failed|flaky|passed|skipped|interrupted|did not run)(?: \(.+\))?$/.test(a)).map(a=>U(a.replace(/ \([\d.]+m?s\)\s*$/,""))),i=Wo(e,t,r,a=>({name:a.replace(/\s*─+\s*$/,"").trim(),used:0}),a=>/^attachment #\d+:/.test(a));return{failures:i,summary:o,reported:s,counted:i.length}}function Ud(e){if(!e.some(i=>/^test result: /.test(i))||!e.some(i=>/^---- .+ stdout ----$/.test(i)))return null;let t=it(e,/^test result: FAILED\. \d+ passed; (\d+) failed/),n=[];for(let i of e)/^test result: FAILED/.test(i)?n.push(U(i.replace(/; finished in [\d.]+m?s\s*$/,""))):/^test result: ok/.test(i)?n.push(U(i.replace(/; finished in [\d.]+m?s\s*$/,""),!0)):/^error(?:\[\w+\])?: /.test(i)&&n.push(U(i));let r=[],s=null,o=[];for(let i of e){let a=/^---- (.+?) stdout ----$/.exec(i);if(a){s={f:{file:null,name:a[1],loc:null,body:[]},lines:[]},o.push(s),r.push(s.f);continue}if(/^failures:$|^test result: |^running \d+ tests?$/.test(i)){s=null;continue}s&&s.lines.push(i)}for(let{f:i,lines:a}of o){let l=!1,c=!1;for(let u of a){let d=u.trimEnd(),f=d.trim();if(!f)continue;let p=/^thread '.+?'(?: \(\d+\))? panicked at (?:'(.*)', )?(\S+?):(\d+):(\d+):?$/.exec(f);if(p){l=!0,i.loc??=`${p[2]}:${p[3]}:${p[4]}`,p[1]&&i.body.push({kind:"msg",text:p[1]});continue}if(!/^note: run with `RUST_BACKTRACE/.test(f)){if(/^stack backtrace:$/.test(f)){c=!0;continue}if(c){let m=/^at\s+(\S+?):(\d+):(\d+)$/.exec(f);m&&!Xt(m[1])&&(i.loc=Qt(i.body,`${m[1]}:${m[2]}:${m[3]}`,i.loc));continue}i.body.push(l?{kind:"msg",text:d}:{kind:"out",text:d})}}}return{failures:r,summary:n,reported:t,counted:r.length}}function Zd(e){if(!e.some(a=>/^\s*--- FAIL: \S/.test(a)))return null;let t=new Map,n=[],r=new Map,s=[],o=null,i=null;for(let a of e){let l=/^=== (?:RUN|CONT|PAUSE|NAME)\s+(\S+)/.exec(a);if(l){o=l[1],i=null;continue}let c=/^\s*--- FAIL: (\S+) \([\d.]+m?s\)/.exec(a);if(c){i={file:null,name:c[1],loc:null,body:[]},r.set(i,[...t.get(c[1])??[]]),n.push(i),o=null;continue}if(/^\s*--- (?:PASS|SKIP): /.test(a)){i=null,o=null;continue}let u=/^(FAIL|ok)\s+(\S+)(?:\s+(?:[\d.]+m?s|\(cached\)|\[[^\]]+\]))?/.exec(a);if(u&&/\t|\s{2,}|\[/.test(a)){s.push(U(a.replace(/\s+[\d.]+m?s\s*$/,""),u[1]==="ok")),i=null,o=null;continue}if(!/^(?:FAIL|PASS)$/.test(a.trim())){if(/^exit status \d+$/.test(a)){s.push(U(a,!0));continue}if(i)r.get(i).push(a);else if(o){let d=t.get(o)??[];d.push(a),t.set(o,d)}else(/^#\s\S+$/.test(a)||/^\S+\.go:\d+(?::\d+)?: /.test(a))&&s.push(U(a))}}for(let a of n){for(let l of r.get(a)){let c=l.trim();if(!c||/^goroutine \d+ \[/.test(c))continue;let u=/^(\/\S+\.go|\S+\.go):(\d+)(?: \+0x[0-9a-f]+)?$/.exec(c);if(u){Xt(u[1])||(a.loc=Qt(a.body,`${u[1]}:${u[2]}`,a.loc));continue}/^(?:[\w.*/()-]+)\(.*\)$/.test(c)||/^created by /.test(c)||a.body.push({kind:"msg",text:c})}a.loc&&a.body.some(l=>l.kind==="msg"&&/^\S+\.go:\d+: /.test(l.text))&&(a.body.unshift({kind:"frame",text:a.loc}),a.loc=null)}return{failures:n,summary:s,reported:null,counted:n.length}}var Zo=/^(FAILED|ERROR) (\S+?\.py(?:::\S+)?)(?: - (.*))?$/;function Go(e,t){let n=[],r=null,s=!1,o=!1;for(let l of e){let c=l.trimEnd(),u=c.trim();if(/^-{3,} Captured .+ -{3,}$/.test(u)){s=!0;continue}if(s){u&&n.push({kind:"out",text:c});continue}if(/^E(?:\s|$)/.test(c)){c.slice(1).trim()&&n.push({kind:"msg",text:c});continue}let d=/^(\S+?\.py):(\d+):(?: (.*))?$/.exec(c);if(d){if(!Xt(d[1])){let f=d[3]?.startsWith("in ")?` ${d[3]}`:"";r=Qt(n,`${d[1]}:${d[2]}${r===null?"":f}`,r)}continue}/^>\s/.test(c)&&!o&&(o=!0,n.push({kind:"code",text:u.replace(/^>\s*/,"")}))}let i=n.filter(l=>l.kind==="msg"),a=Math.min(...i.map(l=>l.text.slice(1).length-l.text.slice(1).trimStart().length));for(let l of i)l.text=`E ${l.text.slice(1+a)}`;return t&&!i.some(l=>l.text.includes(t.replace(/\.\.\.$/,"")))&&n.unshift({kind:"msg",text:t}),{body:n,loc:r}}function Jo(e,t){return t.push(U(e.replace(/ in [\d.]+s(?: \([\d:]+\))?$/,""))),(it([e],/(\d+) failed/)??0)+(it([e],/(\d+) errors?\b/)??0)}function Gd(e){if(!e.some(d=>/^={3,} (?:FAILURES|ERRORS|short test summary info) ={3,}$/.test(d)||Zo.test(d)))return null;let t=new Map,n=[],r=[],s="",o=null,i=null,a=null;for(let d of e){let f=/^={3,} (.+?) ={3,}$/.exec(d);if(f){s=f[1],o=null,i=null,!/^(?:FAILURES|ERRORS|short test summary info|warnings summary|test session starts|PASSES)$/.test(s)&&/\b\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)\b|no tests ran/.test(s)&&(a=Jo(s,r));continue}if(/^(?:\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)(?:, |\s|$))+(?:in [\d.]+s(?: \([\d:]+\))?)?$/.test(d.trim())){a=Jo(d.trim(),r);continue}if(/^!{3,} .+ !{3,}$/.test(d)){r.push(U(d.replace(/^!+ | !+$/g,"")));continue}let p=/^_{3,} (.+?) _{3,}$/.exec(d);if(p&&(s==="FAILURES"||s==="ERRORS")){o=[],t.set(p[1],o);continue}let m=Zo.exec(d);if(m&&s!=="FAILURES"&&s!=="ERRORS"){o=null;let _={kind:m[1],id:m[2],msg:m[3]??null,inline:[]};n.push(_),i=_;continue}if(o){o.push(d);continue}i&&/^E(?:\s|$)/.test(d)?i.inline.push(d):i&&d.trim()&&(i=null)}let l=new Set,c=[],u=new Set;for(let d of n){if(u.has(d.id))continue;u.add(d.id);let[f,...p]=d.id.split("::"),m=p.join("."),_=[m,`ERROR collecting ${d.id}`,`ERROR at setup of ${m}`,`ERROR at teardown of ${m}`].find(N=>N&&t.has(N)&&!l.has(N));_&&l.add(_);let{body:b,loc:$}=Go(_?t.get(_):d.inline,d.msg),S=p.length?p.join("::"):"(collection)";c.push({file:f,name:d.kind==="ERROR"?`${S} [error]`:S,loc:$,body:b})}for(let[d,f]of t){if(l.has(d))continue;let{body:p,loc:m}=Go(f,null);c.push({file:m?m.replace(/:\d+$/,""):null,name:d,loc:m,body:p})}if(c.length===0)for(let d of e){let f=/^(\S+?)::(\S+) (FAILED|ERROR)\b/.exec(d);f&&c.push({file:f[1],name:f[3]==="ERROR"?`${f[2]} [error]`:f[2],loc:null,body:[]})}return{failures:c,summary:r,reported:a,counted:c.length}}var Jd=[Ud,Zd,Gd,Hd,jd,Bd,zd];function Kd(e,t){return e.length===0?!1:e.every(n=>{let r=n.text.trim();if(!/^[-+]/.test(r))return!1;let s=r.slice(1).trim().replace(/,$/,"");return s.length>0&&t.includes(s)})}function Vd(e,t,n){let r=Vo[n],s=e.body.filter(f=>f.kind==="msg");if(!t)return s.length?[` ${s[0].text}`]:[];let o=e.body.filter(f=>f.kind==="diff"),i=r.trimDiff&&Kd(o,s.map(f=>f.text).join(`
62
+ `)),a={msg:0,legend:0,diff:0,frame:0,code:0,out:0},l={msg:0,legend:0,diff:0,frame:0,code:0,out:0},c={msg:r.msg,legend:1/0,diff:r.diff,frame:r.frames,code:r.code?1:0,out:r.out},u=[];for(let f of e.body){if((f.kind==="diff"||f.kind==="legend")&&i||f.kind==="diff"&&r.changedOnly&&!/^[-+]/.test(f.text.trim()))continue;let p=f.kind==="legend"?"diff":f.kind;if(a[p]>=c[p]&&f.kind!=="legend"){l[p]+=1;continue}f.kind!=="legend"&&(a[p]+=1),u.push(f.kind==="frame"?` at ${f.text}`:` ${f.text}`)}let d=l.msg+l.diff+(n==="normal"?l.frame+l.out:0);return d>0&&u.push(` ${ot(d)}`),u}function Wd(e){let t=e[0];for(let r of e)for(;!r.startsWith(t);)t=t.slice(0,-1);t=t.slice(0,Math.max(...["_",":",".","/"," ","\u203A","-","[","("].map(r=>t.lastIndexOf(r)))+1);let n=e.map(r=>r.slice(t.length));return t.length>=3&&n.every(r=>r.length>0&&!/[{},\s]/.test(r))?`${t}{${n.join(",")}}`:e.join(", ")}function qd(e){if(!e.loc)return`\xD7 ${e.name}`;let t=e.file&&e.loc.startsWith(`${e.file}:`)?e.loc.slice(e.file.length):e.loc;return`\xD7 ${e.name} ${t}`}function Yd(e,t){let n=Vo[t],r=new Map,s=e.failures.length>n.bulk,o=e.failures.map(c=>{let u=c.body.find(p=>p.kind==="msg")?.text??"",d=(r.get(u)??0)+1;r.set(u,d);let f=u===""||!s||d<=n.repeats;return{f:c,full:f,body:Vd(c,f,t).join(`
63
+ `)}}),i=[],a,l=null;for(let c=0;c<o.length;c++){let u=o[c];u.f.file!==a&&(a=u.f.file,a&&i.push(a));let d=c;if(!u.full&&u.f.loc===null)for(;d+1<o.length;){let p=o[d+1];if(p.full||p.f.loc!==null||p.f.file!==u.f.file||p.body!==u.body)break;d+=1}i.push(d>c?`\xD7 ${Wd(o.slice(c,d+1).map(p=>p.f.name))}`:qd(u.f)),c=d;let f=o[c+1];f&&f.f.file===u.f.file&&f.body===u.body||u.body&&(u.body===l&&t!=="normal"?i.push(" \u2191 same error"):(i.push(u.body),l=u.body))}for(let c of e.summary)(!c.minor||t==="normal")&&i.push(c.text);return`${i.join(`
64
+ `)}
65
+ `}function qo(e,t="normal"){let n=oe(e).split(`
66
+ `).map(r=>{let s=r.endsWith("\r")?r.slice(0,-1):r;return s.includes("\r")?s.slice(s.lastIndexOf("\r")+1):s});for(let r of Jd){let s=r(n);if(!(!s||s.failures.length===0))return s.counted===0||s.reported!==null&&s.counted<s.reported?null:Yd(s,t)}return null}import{createCipheriv as s0,createDecipheriv as Xd,hkdfSync as Qd,randomBytes as o0}from"node:crypto";var ef=Buffer.from("tokmizer-bundle-enc-v1"),tf=Buffer.from("rules-bundle");function nf(e){return Buffer.from(Qd("sha256",Buffer.from(e,"utf8"),ef,tf,32))}function en(e,t){let n=nf(t),r=Buffer.from(e,"base64url"),s=r.subarray(0,12),o=r.subarray(12,28),i=r.subarray(28),a=Xd("aes-256-gcm",n,s);return a.setAuthTag(o),Buffer.concat([a.update(i),a.final()]).toString("utf8")}import{createPublicKey as xf,verify as vf}from"node:crypto";import{join as rf}from"node:path";import{mkdir as c0,readFile as sf,writeFile as u0,unlink as d0,rename as f0}from"node:fs/promises";var of="state.json";function af(){try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;return e&&e.length>0?e:"Etc/UTC"}catch{return"Etc/UTC"}}function lf(e){return e?.dir??A()}async function _t(e){let t=lf(e);try{let n=await sf(rf(t,of),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=af()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}import{createRequire as cf}from"node:module";var uf=cf(import.meta.url);function df(){let e="0.9.58";if(e)return e;for(let t of["../package.json","../../package.json"])try{let n=uf(t).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var wt=df();function Yo(e,t){if(!e||!t)return!1;let n=e.split(".").map(s=>parseInt(s,10)),r=t.split(".").map(s=>parseInt(s,10));for(let s=0;s<3;s+=1){let o=n[s]??0,i=r[s]??0;if(Number.isNaN(o)||Number.isNaN(i))return!1;if(o<i)return!0;if(o>i)return!1}return!1}var Xo=`-----BEGIN PUBLIC KEY-----
30
67
  MCowBQYDK2VwAyEAj/kMlXlhTIGHRKxOKMuGFa1S1ybxxwgdYcAE0YM9fgU=
31
68
  -----END PUBLIC KEY-----
32
- `;var up=300*1e3;function Xn(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??Jn).replace(/\\n/g,`
33
- `)}import{readFile as gc,writeFile as fp,mkdir as pp,chmod as mp,rm as hp,rename as gp,readdir as yp}from"node:fs/promises";import{join as yc}from"node:path";var _c="settings-cache.json",Qn=We.parse({}),xp=We.partial().extend({filters:We.shape.filters.removeDefault().partial().optional()});async function Be(){try{let t=await gc(yc($(),_c),"utf8"),e=JSON.parse(t);return We.parse({...Qn,...e})}catch{return Qn}}var Sc=512*1024;function ts(){return es($(),"spool")}function Tc(t){return es(ts(),`${t}.jsonl`)}function ht(t,e){try{wc(ts(),{recursive:!0,mode:448});let r=Tc(t);if(Ec(r)&&kc(r).size>=Sc)return;vc(r,JSON.stringify(e)+`
34
- `,{mode:384}),xc(r,384)}catch{return}}var Ac=/^[a-z0-9][a-z0-9._-]*$/i,Cc=/^[a-z][a-z-]+$/,Ic=/^[A-Za-z_][A-Za-z0-9_]*=/,$c=new Set(["gh","glab","gup","hub","gist"]),Oc=/^(gh[a-z]_|github_pat_|gl(?:pat|rt|soat|imt|dt|ft|agent|oas)-|npm_|xox|sk-|sk_|eyj|a(?:kia|sia|gpa|ida|roa|npa)|aiza|hv[sb]\.)/i,Pc=24,Dc=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"]);function rs(t){let e=t.toLowerCase();return e.startsWith("git")||$c.has(e)}function Kt(t){let e=t.trim().split(/\s+/).filter(a=>a.length>0),r=0;for(;r<e.length&&Ic.test(e[r]??"");)r+=1;let n=e[r];if(!n||!Ac.test(n)||n.length>Pc||rs(n)||Oc.test(n)||Xe(n)!==n)return"";let s=e[r+1];return s&&rs(s)?"":(s&&Dc.has(n.toLowerCase())&&Cc.test(s)?`${n} ${s}`:n).slice(0,64)}async function ns(t){if(!t.telemetryOptIn)return;let e=Kt(t.cmd),r=e&&Xe(e)===e?e:"other",n=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";ht("telemetry",{cmd:r,tokensSaved:Math.max(0,Math.round(t.tokensSaved)),...t.tokensRestored?{tokensRestored:Math.max(0,Math.round(t.tokensRestored))}:{},...t.rawTokens!=null?{rawTokens:Math.max(0,Math.round(t.rawTokens))}:{},optimized:t.optimized,...n?{sessionId:n}:{},...t.host?{host:t.host}:{}})}async function ss(t){if(t.plan!=="pro"||!(await Be()).telemetryOptIn)return;let e=Kt(t.cmd);!e||Xe(e)!==e||ht("learn",{cmd:e,filterId:t.filterId==null?null:V(t.filterId),rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}import{appendFileSync as Mc,chmodSync as Lc,mkdirSync as Fc,readFileSync as us,renameSync as ls,rmSync as ds,statSync as fs,writeFileSync as Wt}from"node:fs";import{dirname as Bc,join as ps}from"node:path";var Nc={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"};function is(t){return t?Nc[t]??"anthropic":"anthropic"}var jc="stats.jsonl",zc="stats-ledger.json",os=2*1024*1024,Zc=3e4;function ms(){return{n:0,nc:0,r:0,f:0,or:0,of:0,x:0,sn:0,sr:0,sf:0,mr:0,mf:0,rn:0,rb:0,tn:0,tr:0,tf:0,t0:null,t1:null,cmds:{},prov:{}}}function Uc(t){let e=t.trim();if(!e)return null;try{let r=JSON.parse(e);return typeof r.t!="number"||!Number.isFinite(r.t)||r.t<0||r.t>864e10||typeof r.r!="number"||!Number.isSafeInteger(r.r)||r.r<0||typeof r.f!="number"||!Number.isSafeInteger(r.f)||r.f<0||r.r+r.f===0?null:{t:r.t,r:r.r,f:r.f,m:r.m===1,...typeof r.h=="string"?{h:r.h}:{},...typeof r.k=="string"?{k:r.k}:{},...typeof r.c=="string"&&r.c?{c:r.c}:{}}}catch{return null}}function Hc(t,e){if(e.m){t.mr+=e.r,t.mf+=e.f;return}if(e.k==="restore"&&(t.rn+=1,t.rb+=e.f),t.n+=1,t.or+=e.r,t.of+=e.f,e.f>e.r&&(t.x+=1),e.h==="shell"&&(t.tn+=1,t.tr+=e.r,t.tf+=e.f),t.t0=t.t0==null?e.t:Math.min(t.t0,e.t),t.t1=t.t1==null?e.t:Math.max(t.t1,e.t),e.c){let r=t.cmds[e.c]??{n:0,nc:0,r:0,f:0,sh:!1};r.n+=1,e.f<e.r&&(r.nc+=1,r.rr=(r.rr??0)+e.r,r.rf=(r.rf??0)+e.f),(e.k==="sh"||e.k==="restore")&&(r.sh=!0),r.r+=e.r,r.f+=e.f,t.cmds[e.c]=r}if(e.f<e.r){t.nc+=1,t.r+=e.r,t.f+=e.f,e.k==="sh"&&(t.sn+=1,t.sr+=e.r,t.sf+=e.f);let r=is(e.h),n=t.prov[r]??{r:0,f:0};n.r+=e.r,n.f+=e.f,t.prov[r]=n}}function Vc(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function hs(t){return ps(Bc(t),zc)}function Gc(t){let e=hs(t),r;try{r=us(e,"utf8")}catch{return{}}try{let n=JSON.parse(r);if(!n.days||typeof n.days!="object")throw new Error("invalid ledger");let s={};for(let[i,o]of Object.entries(n.days))!/^\d{4}-\d{2}-\d{2}$/.test(i)||!o||typeof o!="object"||(s[i]={...ms(),...o});return s}catch{try{ls(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function as(t,e){let r=`${t}.tmp-${process.pid}`;Wt(r,e,{mode:384}),ls(r,t)}function Kc(t){try{return Wt(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-fs(t).mtimeMs<Zc?!1:(ds(t,{force:!0}),Wt(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Wc(t,e=os,r=os/2){try{if(fs(t).size<=e)return}catch{return}let n=`${t}.lock`;if(Kc(n))try{let s=us(t,"utf8").split(`
35
- `).filter(u=>u.trim()!==""),i=s.length,o=0;for(;i>0;){let u=Buffer.byteLength(s[i-1])+1;if(o+u>r)break;o+=u,i-=1}let a=Gc(t);for(let u of s.slice(0,i)){let l=Uc(u);if(!l)continue;let f=Vc(l.t),d=a[f]??ms();Hc(d,l),a[f]=d}let c=s.slice(i);as(t,c.length?`${c.join(`
69
+ `;import{existsSync as ff,mkdirSync as k0,rmSync as _0,writeFileSync as w0}from"node:fs";import{join as pf}from"node:path";var mf=new Set(["0","off","false","no"]);var E0=["Tokmizer contacts tokmizer.com to keep its rules up to date and to improve the product. No account or email is needed.","It sends a random install ID, your computer name, OS and CPU model, a hash of your network card address and of your user name, and the plugin version. Command contents and output are never sent.","Usage stats (command names and token counts) are sent only while they are on. Check with: tkr telemetry status.","Turn all network access off: tkr network off. Usage stats only: tkr telemetry off."].join(`
70
+ `);function hf(){return pf(A(),"network-off")}function gf(){let e=process.env.TOKMIZER_NETWORK;return e!==void 0&&mf.has(e.trim().toLowerCase())}function xt(){return gf()?!1:!ff(hf())}var C0=300*1e3;function Qo(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??Xo).replace(/\\n/g,`
71
+ `)}import{chmodSync as P0,readFileSync as yf,writeFileSync as N0,mkdirSync as D0,renameSync as M0}from"node:fs";import{join as bf}from"node:path";var kf=g.object({payload:g.string().min(1),signature:g.string().min(1),enc:g.literal("v1"),fetchedAt:g.number().int().nonnegative()});function _f(){return bf(A(),"bundle-cache.json")}function ei(){try{let e=yf(_f(),"utf8"),t=kf.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}var er=g.object({bundleVersion:g.number().int().nonnegative(),signedAt:g.number().int(),filters:g.array(be)}),q0=g.object({payload:g.string().min(1),signature:g.string().min(1),enc:g.literal("v1")}),Ef=10080*60*1e3;function Sf(){let e=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(e)&&e>0?e:Ef}function Tf(e,t){let n=Qo();if(!n||!n.includes("BEGIN PUBLIC KEY"))throw new Error("tkr-daemon: no valid signing public key configured (set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM at build time).");let r=xf({key:n,format:"pem"});if(!vf(null,Buffer.from(e.payload,"utf8"),r,Buffer.from(e.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(en(e.payload,t))}function Rf(e,t){let n=Tf(e,t),r=er.parse(n);if(Date.now()-r.signedAt>Sf())throw new Error("tkr-daemon: rules bundle is stale");return tr(r,{signedAt:r.signedAt,fetchedAt:Date.now()})}function tr(e,t){let n=new Map;for(let r of e.filters)n.set(r.slug,{...r,matchRegex:new RegExp(r.match_command)});return{bundleVersion:e.bundleVersion,signedAt:t.signedAt,ruleCount:n.size,startedAt:Date.now(),fetchedAt:t.fetchedAt,selectFor:(r,s,o)=>st(r,n.values(),o?new Set(o):null,n)}}async function ti(){try{let e=ei();if(!e)return null;let t=await _t();return t?.signingSecret?Rf(e,t.signingSecret):null}catch{return null}}var Af="tokmizer-default-rules-v1",$f=/^[0-9a-f]{16}$/,vt=null;function ni(){let e="r0GPTdS6_piDwTU716xagvXxcpjjhvOR18YNArkbbMGUBC1WTgdo1DuC2YZeiEndHPCrBNXtuoIWHDVBDPp1lySpaje7_dn68NbJ8qfhkZvHuEB6g4aqNQb4vgpEwapqQ_P8iECE0nXMM-iyi501xKsNsq_kl6PgUhOiEh8w_3WEr9Ferh1p8YlL_7pEdIWv_iltHDXuj_XSCwXpA0YMuWymlnIWcrbij13BthhvSrGlDSjMzFt313ke730IL5JetiV0e2UQX6aG_LMhRBgbW4WtQ4lm-4ZNARzFdMfVvKDmtT5ErVRz_RiJ5usFFTaMmzAhFiGqOw2wRKPF0fWDF3Mc7bFiWlyOZ6SJr0JqMHOxMeP_uhbbopXiSLbL4e2eV1e1tvEsEbW24LVh3WiJs0yF814PKGmCCcwkU-C9RL3Ia9vKeVJ4JZfb7Xf-OLGm6knkw7SQneP3jFpsnwjO4-mzOUovauctU659QeRDJQyvn6dkYMXWUpD8m81aZ6G5USIjwzHHzVRqPGHOGQmu0XbxLz9S0CL2cxP7kN9Rk0cvGP6FwkVVtWjCscxXchFREmbnVhHdcP-3bVOJmrBrRsKXvmUV0rr9LGldiCyCBVVqYSAqXs2PMs8QLVYx6Lccl1-bfyD4EJ0qqAFLwyasF-KDBvFkivAxfx_gesPKiell1az241RH2sTUe7cQPtioLYIrQgLHw_dWLEhSauv3-k5Zsd1vzVvRbyTI6azG-q3_ns3fhQ6pL0ZfEB75rQxmT4ylYVdM1Jq8Q5Zfcl2V4hmoBH6kNFbpN5JYzf3NJ0NGTKuxqxPgYtHqpHy9a5oilJMu94QX8jSANOZOOg06z8oLAP1L1E9kCcWrF4M4YSqfpwax3wlyU1_jepaoOizpgEvu-gWam9twuj74spUxfDND6BOOVzPz35U97cL90vM47UFkyKT39HH2tBKMZaQKMJdAp7x6HGBcMJkcIh0vSJej_gRKmdXsywVIk2j7ZFiMRQw4RoqYII4dAY9naEm777NuKMqwFNb2_m7F14e2RBVay7dXg5vTqdvoZ_wdhcqeccZLuT8I1_5xoToUzKSDSNH70ssVmgAaLbwqhguj2IeWAxhRSqzjFjOR-O9iFVkWTPdbKATyyJxgoLqVpGg0zcnz2A__5l-Z8VNqfj8UbiKcfttOwxWmtLE8tMOKlgixDoOduWUIXwlmkU3rBXZZir-EFdiOmHBTRKWn_eD78GuA9E-HXzInUyBiJ7N9xEoSlMUpzlwTdvWebmKGFZ7lhHC79lk54c5qgIceYFdRw-39vyQe2bwboLX6F19FLJXxaTUjUdiOrnu_eNsR7owt8-we0Qfc9j8i1o0S1rVJDgjCg3esemjN_sW1fb89BRTFVtyaQWdDy01VXUQQ-PC2g0639p3qPlXLKFqyKS_cgd_kSS1tLTRPPpN1qLcmvCjq5nQ3w_od-_G_GOA_w2PCBZzORylwK-SaZ8-b3ApRQomiLCa6mZH5oLqId4SGE_Kf76uv4nD0e-Q93uXOlIbJn35bhRLbgQmQ3jPqRtDN8YRfp9RZDW4_UwjYBNtQLieKAGTqLgPlDS5rSzJCNfQYOZxgfflSMxf5taWuMkbg3_CdShukYkdJT-Wi2lATcPlq8bZV9IWIaBVVeBynkj_gRrTtnG0o4WIlbb1X_DD1A8WcTQ3nWcEic9yoMfdx2Y7mPtxAS5JzCaNT_W9LaoAjf0XIurHSeNJzQMZrw0G2kzCUNH_oZpoiQD1WOP7FiDxIHUNVKdBdbH46Mq3Tzo89_fJ5otD_4nEoi4CEknEkiZ-f0Th3dYCgUSur5CwZynaTqh5GB7XbDMGoEz0eMyOh4u2gwQ_wh8oN524CnueMTLoLM6lLeeZXjwWRx9x6LiM0M6-l2mOg54AZOpkU1jwGJvA7Fc_yGv9cgNE5jjVeMwfEAw14-b_gDE1nvaatUfPFunibR5ZyAT1FBeHMPYgjx74xkhZC7lCTj4rP0ozsjS4F36JahRjlhWHr3ZwGIc8TVDibCPJ5lE4q9sCG1XnCAgW4yypR9LxCTD0VUaUJAMU9Q3PrbGL0n2DkNhNPk7R9h3taXZsIsx_yvZCMdH6OGNl1_tgXaGHcAtQQ3vOVTqWB7ohtetUFl_w8BHqBhXaY4t03ZZwXwEtza6E6phFV2DKFKPL8WGyIyOwEVFWEOWDHe_TDF-dukZGrAF8tTov3UKHx67brcrcnTzZ2aVhhZ4Kvk4rjS2zrw4lA2EsIsUS7M-NxfRd7KNZbo79MMjPodwNuXrmtoAXmmEcshuRhha7Y0xjPGkBfbJs8p75vdbwyj02BFO7Vxy3f4qezLOIaFwSM4ZZ-SglvuPYO8JEnj5Rk6pG0t1R-n3nkPUD8K3CvyYQalFxMKuzFrT0H7tVzvk6HQA0415yAxbxLMQc8HcfugyNb3NrGsKLhMxmaWSjyQqXo0P1xkiTzqTDlhXgP3nbG5W19joIvRYACyHK_9CN1iaYFMkjz1geDwVozXxiP8nHKqAPm1sj2bMfHikMlFrLWajYSuE2NaTdU0FSqxsIcQ7ZC3T0HZbSH5k_IMAPL1c624Wy3bQtPgKjGxJuMBWtNgkXAOzzFqw2YSiM8jVGCezQ1W2ljMujKf0zBOHjjsmWdHKZdErlyXANO2VxxDFFomWAi5_NhgdPQsc5fO5vu87VrVzk-sBwUKXW0v7043OK4Dav0sPYGGJSh-lsKIl63CZX9Q29QoSHgrlI75iIL38q70WVccTquec4EZpBy5NUJiWhmwWv5z8DhFATUh1swaeHwVr772NObQZ-8Fuy-VTh9gKeDKzDK3YLXNAqsBLHrSVpJHZXiwms0hbGPCp-h6ie9y7OZBtIUR0zokwt6rifyZsXOEQk5Ped-eh_8A6Adk6-rJx06oOuTK15Mzr3g_7Y1ynoRCwkhCM6RiWF1Ax1ud2C_n7XjCI60KxnDwZ8J8VeK5ZmUrj-Z7u8bkZ4bIy8qWxPyk4D_ldw8flfC3sYZz1eI_HUsWMEPF2keqfyB0Y_8zg9ZYBoBSp5DEnpUFs521fpbVsJeocEHfajTIYHOxG8z_t3k-fTgfngy6FwUhAz35wdyBzPGK5f_4T1VqrbNTBOhbLWSpXz197ybhMXQvDDguLCg_H3a3My8hZjEKoEySZaUplwzrN6hcyIXwqJQ84bDFMfjVV-BjT4ZclNnOdwSD7WzuYYNcpccb6FRu3gFfND21Z_vW_FLGJxuSM5QPr9JPU7bLCcHOV-pWYW1uMLCEYXxF4P68mhKcgq3Clx14_jzwDMylJMcilNiR5NUmF3DIwmJIfAKCwnCkavcoR-aXY4i_OKKVM37ufUxcEwqv2hN7vLy2XkKU0zhgytEWek60rtqtgZT-LwhtnJoYalIGUQzGpEJ3n1quyDm7fgymyYQk545XIDjF9nREdMKnqejnk_YzL6eWUMilAjDMwWDXBsgzVSufNDTvt6aOF5mbW1UnIfWlTuAyHVBKu3JzMxWGxQ0HSh4WY4G9pmlI54f0I1v0q1ptDCa2QiVbMqd6SS33k6IzZndTATvLyBfL8X4-usZti8lVFTLOjory8d2QzImVj6w0fF4vClQfdK40Ydf22cQynhNT1pG_pBOuSIDIoFhulHDiqBc9nx8VoyzGSv6VAAKfieeyCEk1adpinpt6FSu8-HfXGk0bzZTfbHkW2Gpon1rg7Wgn2z0ydUSLBUfH5quQX5R4oUq9dOItaky2cUkYI-8JkmiR3Wu1BNU7FfLXVPDphacwk_2vPUD9_of-nii36g2L_07Tyfh59NDMCnw0bCGWo0tJ_29YeClqyXQETbNBOTrYr0AL3EOMLNB6ra7IWsUBTnA4KAzJise6UqZQ9atIZ7cN-WTbODGE4gZtixnj1Gam_k09yMZ_0YTZMzboD8J_tqzL-P7czlkdg4HYw1QVvxBA0wbexhGUCkH3mBkLsLVbo6hX9loDrOC7p4SpCovmfiHFrC9vl3p4PGOPpBd9SwY3Vlpes0EJnMIbLF2v1MaW0oV3JII5c-ewG0N2w9IQeW2iSHfpTdsQV4cBLwknAoNFUrVgjCnW8s24cyYmkWIVcOL-8yKzxLm48GMbrC2BKYKl4pbKPmUCyDARvQ2ni6bAwVLkI_edpbE8vbOUxkOCl9H9i2FTDCvc9TwmJFhFp3TV336-2apBD1LO2jLOJVmjXjQRmQgtYjwqzAxlOuVqmUp12c9S20vRKk0PNmb-nJMa4XpoTVTiYloOleXDgxa8ZCc_JVT5Q4A5bxb8R_WlsLXsgZ5NUxHY3hEOl7DN16xEBq8GjQXX_C-DISUEYURoz1imh3hnXj77rmdTYloPe5cU6aIbPrUBs24wUhj-laBZ_sGaG-L1MYrTTniVIndK-vqTG7qBW3uQMu4k2mD_NIJGNo2wo2BuK6fw6_NuFG1273tHt_qRxtaAMjG6mxYwTRZs-veuTB09RQ2R8jmFxtYxSnYAAelwz4RGNRtY00kFZHqQ3KZ5SPgdm7Sj5PXlmmdXvPjMswWmkYu7Hn17X_HHzVZVcImpA44h7CgW8Fq-jx35PFgSpGxJiYD8Pac8gCuQfeKSFgG9rL5oXBydFkErp2m6lJ4wc8GkFORFIEQPVpMmq8clbhT3mwt-cpcxbsa1ro2kvNFurOAjOSj79uqVZkI_ysLuzbJxFvYw12mwIf_xWfbXKEopPeG54gr-zVZj9jOLTwhZ0BmVCbl6i5eylaFBt7058LVVlDlojysmYO8X206baiWFnM7bYRFOrV4Mpsd-GlMY8zX2vthPn1TvlZyc4wVxTPNCKj--7VKVtujqRmmgX_9svT1SNOOGzs5CKpS3se3aYiZ8Ot3K3Vxsk1uFUD3I6QpkF1ejeNmuGtt41EOox0-gux295ZErYj9dtOziOqgP_EEgJmdubh187w7FvQEWJpioSV1QlSsKQzjICJ4dBjxOONaQxcVeqP9EKcrde2Cl7J_ZkkL7wV8iILh_rA0P9XqpG6DYhwmoGKUYWAvoHm7TtrLQoqu20vbqL6-PFJi9p-x0crZUeeeOmGHoel2kVY3wQb9wkhgQjQf9SvF6ePh0f7wQ6YY9CwH46qKQKGx7OpwjWYOB71K7-OGUIgdBFeTCwK4xa9I6e-yO18fr3ipUbQXYA-DVkTZXHfVcVqR3fXnqtA3ONFI1NYO7rmQRB-ioeNoFM6qjWlAdt2cMN3JZmOUcnXSsnQPnqPnyDvhU8wk6wZC7uC2m7msBPBgo2gDdk8JkLL5Y1CMtjZber_YrK1kchOtR_eYdSdwCiqDKBM0la4N6nMInyGquoxNYemIuVXCTjRb8lxErF96KdnWs4W39KUgwZD0PrFd022W7xEq0uUmDLjoeRnJ_CGm5PxAnGgp1zPJET913aRK3uXnweoqzJs8FaVu8Gj8E37bHGQSdqqIVXkrmsJb_tuiecghODnfIUQ9aNsphrpy_Aixpg0yrlwHN0uSkoJMrokz_PtF22rKmiF3KNu5pMfn6fdgeQlakCEid6wuYTwFglwnM3XXXA8VJSKIsgw60-uDMYUwFEOSM8ZajzjJor-Hgl_y2_OaYvc4LPYeWnNOVSTsFB22SN3AGHdUoQa7NTE20zfwF7SJU9UL_hjp_zMFKtB5dHY_d5ADbWvGCt5n8CN8XMB9JMsUm8Rwc5X1MhDD5oSQ8pTDoFPrxKJtuLpXEvVnVCDv5TOHGqxPNpN2dnlnn5WEPpgxdFvcYNOynm-4OKtHCaFLFcI6WiBdtaliWIUOj9uftoLWo5A6fm7zI2nPq8SwFxbntJMVJNPEUA9bJImmDwfDY2J6CfqT9ZEJ1UCs5e38r4dyVTJxjBoGh4yiD1hIkaEoKY5NsyXK86pnt83uIPCz9wgrYsCuuLTifUa5rUM5pLiZfi_u5eeiFqiKaZcNl6_bNV9Kh1Qvh0DAUF2wJw2C0LW9i1TJbZZoKI5MyjefDHCdnXpzWOwy0oLTiFk-Dhyk7u5QoO3Q-hSGF7cyVK3_wlUH6ACIcVShVoQEsillXBsz3Z0ZUzx4huVh57wp9UpyHff9p8HEyfhnv8MeKBCqA1Zwx3bHPBJUaM_FTl28AEYH-_nlmhjpAedliWfT6FsxfgneWAiYBlp_DDscndJSAxlZn1WrtbKE6B6VNBIVI3Al026iGApdf3a7rQc94iBa2yZDx09NzvqguChAmK_JeZ7iidebORgnAG-pkdiXIuoWxqUgA5XrKLMVX-iAWv7fJ3DMDgC7TxRNysd84FpHwBtbeUZpKNDukINwv6Zifxei0jJnpHu6eBfxJMxYkjRYBs8DRAg_9viriUX-Cqjxsa6QD0TAZNMW3BLppWMuPwiElTOgcHzHPHffUHE-99Few7dpmgYu0nl-U1x8sotLLOPn3RwZQ6JEj8xE_ssqmErlcMzlBFSjJpO_vljbsc7BUD7TvL9AT8vwSp_HtbWK1XbQb6wK-uKR2Qvjdv1qxOXKpdaKLJWKknNaWVY9moq3Hm8yoYzOClop46Dqfm-JclAu34RdYwtZ7M7XjxD9iB_ObZLuTLbNu0hr9qXj4yRyOclX9GSjnQvU26V1px22zgwVXRya1-YSkS2gCsbSx18l4M67BN_O-VMFKuIfysS-bbxmZR5R4KieX45mNQYLu2ju1VfI1vSNpin-MhHS7zZmm-pzXdiFMiJeJcDmr7XRPJ66tO53TedfAAVgbKhx2Fl0URz8GgoQ7_NEk-nJj-M_RJO8Aj-jXAblgpG7hu1rgLCowbZDS4Tlbs0Y-BJ45AMSt3XAXUiuRFw1BJnec0PL0V2l5uxA05Tl-TjoUf80xLqm2ABAUw0IsQ9S-lP_d-WhqGHzHvcbJ2unvg4Hwbwh9eAfhjU0DKigZCnTX1WVJpG_UCZnX_jV3F6YVLY69GlLf2dsspVBdOD6d8KA0Iyt5tmYIVFHkd2nEZ2KMT6P9vQD9g0zixy1YQpVIah3kxOR2u2wcRgIKLyWWlp8T-5m-NJRY82tlDhH5gmguOo7gHZEUVNvVd3LAdDF24SlG92_1GMyTOftoG9bFrpixI3jSdipB0qIMOhfvNlVwNFqg4MZz1EKu-JCPMFNf5ckz3kLuSoB1R8v2ddy1x2r8ErDYFos-GxNe8AV1koOhnSy6hNe7dmhfvBRl-eo9cMpm5HYEuH_zWQppc_w9lmqeADCaNGmfc0Fvze0aK6MQqW1MRT9DYES6thS_6iBdPpr7cGwTef5XIa8GB6I3ZSGigbumqjggMp5QCKdPJoWVtBxEfQlyH8gQY0KQXofiEQiiKXGsa-1I8wKggk1e8Xjd_UbtYZZWFmAHPjsPam7whGf8ZcHSwWpWLAWRZzy_lp9WSHzuB01j2p3VlmC0eet10xjWdPkb-m1zNyqvFFAQr40sXmyuTIu4-ZuuUu4FsDQfAKYFRloRS6IE9BwA-Q6TfOtS6Uj3uHPJMgj1vvKVdbC91hAk8NDZYT3xm60SvBJ_KhfNOZyrPFTcH4j-s5dqJOt7lrqoGqIyo3rEJcjeOwqAoGfgxTelAZf4c9_5MRHbXF-azYhAlM4hON2Erxv05J9h9bCRZc-NaxXv1lv4eWaiFk1T5GiLfm5Xw0nRf5FBHv3g6mseVx4n7-Mdj6-vOX0NCSqdFZ2Mwez6bLQ3miDgUUPIKxbxo-kmVAxFFvo5FwWj65X14a5J3JzmguSzOPKjWPHzZDfELXn6EmofwnI3gFQF8m2JgZ79e9dYSQA1Tz3FRkke8Q342Q41mUtg0qasU9-xCZ-BqksQkslBXRgypXT0AsYI1qhpBfOn71M0tc1rSuE5NxUnn_YWA1Oo35T7sgtcpgyC9BGO51A8Cwym27xqN9Y2V43bythPH134iu9_i8BneCB7CAFEDvkM8p2riRWGwqM9guIUa-dpkkbqTRLsoTZc0DNa_rXokgjynoICC9fnLSZ49jsZfKwawfv1-PcFOj-FmxpD-MafdfnCkCuRX-1_PRzwRGXj-q8hkTiT4HUSCWipeb573raDf7ILs4TedWioYr-_R6dVaz12db8nPMF9UB97dMFwf1kSPy8UmKkMYH_7SVltgtx9TvzONYZxIbKkF5Z3R2Rd7cl_cLKO8m413WgxQQnNE3eLNiX1C5Xl2qLHDGnvo7JYezW6D7KOjwlqa-VEw2F3pi2-FMLkWh3NTYY0s0323Ah6k-WezAjW_ErsIQy2n5weyr-Y3_3OkJ3jDAIdRK8aO-kV_EzWbkd4l_V-pFW944MevV-mpNpal23pDIqOru9CDaicNZUS6c1HiIRcl0LF-bU5OmulHQF3HI10a9faAyyRDgD5rRaf6zGsITl8EBvTxpSuMtI8vItWLGs6isIGjYhE5r1NpWFV-oJiMkNDZOyUi1ySeF9h9qTueNUBzSLKsNoEYT8Ck4RfdQXMjXr3JpE9Doc2HS8m2D-qEmPq4lqjk5v3fIrFlVvf1ABtyHah4-fG1C4o2nngbi8tIWi_zevxFVyvsJRa5tM-SnQ2Ruz5mjliOAM9bOy2I82FTYtXVoWZc1GveIYDzfmKn48OfC5DyC6n5MyPMlKltI8CfZJyeYnM35nSMty_paOXq-nwHacpM1wL6ynkpiBS3GT2fbjd74zwFnbjmwmaq3T9nuwacYOkmFwFB5mdsdqxPYtpazPAkdGTvXatDQsC9e_G_pgyIy0ghWPbsfCyPOLjS3FewJfO5al-8Cv71ikIAo4Svm4dGKg2QGMM2ux0r6BLdNXugVnZW3HuGMcM132xhvayI9i2FHqPoQB052ozq_1VAfBOPM_6he3LWHo29V5Ujvk4dXj0q6xuDTPx089eGY7B9OKV3Iwv3leQWoMpXa2mCC1AyqkkK6-uqVEtpZIrsFR5kYpLBGwJnq6Rm7feT1OZGVpOIW62DEqBMNZyr3wFD7g4uPxSSIT-x97jlNRaizquHrBO7Ki_6nr1bn9qdadeTScL1v62RiVSFXmRe_LY3V63hFpesarUpRkwqsB9Cd8FNQHJcwBLnzYt-syOsXtCqo0WUCHtM2n5V1-wazlpTFUR-s2L1eNLPNqX82cPT4UcKZLMGUkYnxlPtzNE-YcdZcxsayOtrSGrmwRZK6uCf3z36s6ETyxiRWfMBy5d2pikz9KwzBR_NmT9PqarfMuAYZTyY0u1m2Cr8RGm4Ml6NOwZxjbATeL8-Rnxk0e1trKwutjsjx_piFOr4Q2Re0P9FtXOO-8mmNz8zxAVn8GwhXDqw231TcDd9XqjZNf3E0DBZxR-fFqKpGDn6SoVOP4o5B5oNIlmY-Vb5SkBhldJkGn0iCRNT0AJGiQ3O-NtaxS7HslxscVLdXF3T-yb5JRcfvRDaBt5-MDeMAEaS8WyOwYrZtnx-M02v_Kzt4gd7MF1Hs_uBoxrobvRS6pWvOCUz0mox-MG7dNtT_Jg_bxv8XYIz5RQrD0Co2aOZsZqvk-d1ylC1nw7VXzWLOhMRZbp55yFeqhY3FEaudCV_L9GTKfm5lae9UySMdsZ4c_cCL8BKFyKVe-MJH7xqu8o6k-a188PHeLz7BDDGObUSbgo37B5sgNfButJktPnzyJJHBZq17l4mlLlVQSwCtMNZGZuKXPxvYKrhvNXGF2pB7UdAoTvLnqynFVEKw0jc-52iWPVwiJVfC7rPFn9CVz8ObvmzjOH5HVfPFFZOOI4TKjQVaaa3P6bjIPX1PfaowLo_e8inoCuOw0dqXeuhPY6mkvwgG1GZveaol5H3OGDM_G3sRMQ7zK3XoMTJKXaFenk6swYtMaQlI48fBrgdjMzlL_IiJA4qRjGSRYO8Bd1z_PypfV1KAypQ8CG0vo7UgFlsPN_4A_1FmiBSFuVdxRwY9LNdbJomVIclYNbqHjQbHu6GiODryTu5HoFmzP1LlXgQTP0GFeVWZBtrkb4TLNhNtaICCQFCP9klr73s49Ob4ensnhNLwZ3Od22HFrJHPZfVRgriaXOX372L7SmDtB-ojRPReuA3tWe7B5Y2J999LPN6Km9BDn8O-KE0vKZKTuR5gbHAtAMltoWzljLwZaISKjbD_2z4mE9bLVCTf9QsITrnwcoUHYgKnFMDTQ9skcorqKjDZFHglsntYNO1oqyRGt_Ge0RvQSlxid-7Au0XZkubPouf0ZGLuUIJ88IPAuVwDPghtCAKKvLuVVMSdTP-ond76D-PcRsxAtKeV5vQ16S3BHzLQNGRJZFuuoUf_6Aa2Wlup7NpuJ5nL2AB05lk0bSKJGTHikTCi2HeB-Ogkv-e796T38fz691s2CukDyDXuX6a_yht6tswTVEJL6Q1hlGvoSNnNzAIDmCnaL4GK_0dYT_TOcTkQuz7KrL4x-CMXhfqKRn-M3umj2zCJWNsC405unGquMeMtqm43RMTIjvS40LLyCXML9TEuq6R6WEOKQ305nNB-HERJKjHe2g31FNmxkvqHkrY4OzFxo7iCPRZ_VCH_Z_vwQOG7Ss0DMzL_N3AXhHPcMh6Sd8RgWh3K1ejrBynlMFRWOWDnWrAgPC5QjtM6PvVI9frcV_pXXooFTyRdQWWoqvGSJPpy_ZFV_TVKE1d4cNx6Bqp8XxOZv2Bz36M__ouELPMOAi-xqGPoNFsVRQXFMCb564-btpHodl9NoP9tNqVp4kFbH8RYTBiRYSfAYyhi7lFs_ZSgYjGygMQhJpCq7vioQfE4Tc8wqB0RWbIIzTXiGWrfJroKSlUlZhTPwWaK6sn1w6l5_n5HVX4uz-Q8sWajjP9EAfGW4tXXt0czWpM5Ql0-6Ye6XxDbkjQTXaMUQ1WY9oZDWuzZkbnD5tsBFrnvqmcJF5bBHTkfdDY9cbJxh5_gTIy0MNvfBS7PlzvRTDfeekZFJsXKtWwjX-Ikz4R_TUP3JYXPKRPgGW1bDV0kLFq0z17ydCNQmUNRxafIKGQYh3s0hzXrfK80WbawgPfgYERyMIBPtqL_8KnBdEFMeRKhOJ2b41vyB7NM1ZN5OjBJx0hyFNkdM3kn4dUZqnhGLKN3tP8WWWu5cPS1wsHZnWENqW5UliBJntjqf_e0oi2dO7Lzwy2yvWbMvfWXJn4fSXfGVk_qk6ZKiYPtp70Xj1QFOd6kpzHxGhgvIFryzZIELCapejkMHUbzMG0HYpw3SWv9P30RRKIOHVDtG2dyvFBehvypHYjNp12MYHnqgaGFCi-_3-ylyxwYw8XkT6lNAcUgrdm-k9aGeIMjrA1n_UFp62AV2r6AXox5kKDZUXEMT185T-xW4MiSb_WtQjmB06AxLmh_taM3rjKXU13sfa7XGcbM6hIIHPCgruRKmW5uvtvvLrL8fwWDNHX3_8Q0F9NXp8EVP9J2O7MZHtk_tnrFh3nLZ29foaIOXWXwrBTftJwOfFzpyOfCKQLGzpoX8lGiJR6OWlZkl_BeLs0GhkJu2oLHspUa8T1QxLDN1v6IrVbT_euyyIHhqEsHw03PZOGvLm-uwFlFRzaR4WqJ7rt4jBkg6NkqTo8MEJY_kCTHKgmJrI-7VEXaB33aWCaVsoB8DoKixEjN99Tm1RU-mZRQAuDvbQGs5TSPeF15IXezwFZLApvznvdlgcHRmR5zxiLidRLIqKhvjblsGDkJC9rjL_TUFxO5ECRfoFPgx-ryBW0ABGc1YrYrqLIGH8mMMBwwDTOAXwWc1Vn-ZE7WWeNvEK-LqMrqs60iDP9P_CpZH2JnIyX4WJ8uN1_PdP23S4ZhGR7eRd3pww2Bu1R-9Py8RryKoIfnXwLyM7iBL-H8S-e3GFLISgbngqf7s_w98K9x3hmlPA9-zZ7yW3UHnCUsrUQ6NF2d6AWIGPknxNFYu87GjSEFBBmu9yXY0qWthIVoaNTIjbpv1BwOLvLtEB9_ijR_8O3FfWwkIZR4GGZpKYHZzhhdkPDdBZZD8l33eIn2dE9QoCFvr75kV1qQh_7t3MvmRE4qM-roWb27OoqaEPXr1efNAUJKnRBQqp_iq7fripCSN879zoblmKjHmR__GWhJ8Q8_IwacK_4VRbjZByDBOadB0DThRpLgDPRCZQckXDvKh3iNgypmubpjvKBzzMpPTnnncbrGPDNzlS7IyGoeCddNkyOVGUZpxAZpdmfwxgautSb2hYBzUWE2nyK5fS4qJ2KfhwiztdLnwekei945MhO4ajxeK1isaTteqHk8Bl7SD_K75mMBPWart8RN6j_m4EYZDsc06F80YKAFrYUvnCdPqIkYkyDhpd2hYbDCEOw4Gn6QNYLGFTBAmsihctdMzjLzR_QC__HDBNzExIxq-TUVUB0d1kW6y0es8ObHQZjXTEhxPrOkYn25iNkZsbNJrnh1NxhrAcpkiySgTjlnk-MtaEObPjIykatpj5zCqpOZSRGm6lEGi96iNKPnzjpL5hukllxTCJDfAvz_hTQkNpGomcwOIctAr136oeSt8Fx-uCfH7RCQKH-VVO0CTG1My3kZaqr3dRdpM3cc8uLvU34mOBtfcS89ES8dQioL2zrpTEg94pcWo-Jao8ZfAwbSwTazPMieH11j447_UR-DGiML8t6Pq22z3lWhtSiVt-Zh98YEPog01mC1eiQ34rBIbhGxgoOL61JKtEFZdN6XDijwAvDf15bRjeuQ9XutDqN9p7QRyejTIaWCc1X7VNwIOMpBUlpNZkLBdXcJySb05pHaHc6rbkG6INspkfYrSpvweMurDbIhScU8HGyJ4y1BYqsdQr5Hmx49_mFIKoxMhUETB8Z35S5o4pKDukjHwj6rCDfJKl35yYYngZlXTCDBTPsUtcH_3E9K-5OAjQZuHhQdIKXhPK1Ja2GBjGj_WAKhM8BXnypF3Yz7bnXR6_ew7q2olLHb0YUMDYJuZRhX_Ne2pSTZvagSxIe06Ox7Ao6_SUtt8SiCWhbtpy5zSje_GsUbq0f9ZWP4JVcBkvNX6tWq-Zpek5c3WnAWhffKR6_4b42GHdA1xMG5_Q1rmyof3UMyYcaWvtsV7SpR2ac6oYhQsmOhy9LItJvkwJmpY6-6PeW-khRx4NN04P90kT5bs7LkjmB0jlDLdyuqBRgpfXIjmaPfTG9kIT2NBeaDRrJmwsqFSry60cJmQpltz_FJAXVAwN4lVIj653d74lmJvmV_7AIuEE1C_jO8VVY8jKjtejHqB0AFG4CAnB8ALQNH_WixJribKWu-70DTVWtdzkHAM9z9fNf8yFH3Ji2VSPZfKpePfH6REqPkfYhpaxahdEsYRqLzhpK9ojZN_1fSYKomCFvwxiygi54s9SLfrdfXg84kfO_NmH6wLenYZe5CLtgl7LVEpnIrRMsn6uEjGpf4n2cyCoRVxzEyLuxrMFQvLFFFenVWVDK3Xpu6tYO_Pu_YdhDCdOq78KETr6doY9rstXpcnrepiztkfdlh9YThX-z4kT43v-WY-Vs0bTxEPCsW6VMhCQhklLbJ7hu-f294KbIPy5ukyvRy3SUcVkAB3WEx8Qr2sC_M-O5T0x3WhDWHYlu_VPn-Ge0BaGD_cwa1bkWYYkpTk6WBdxpCMvUkxYbL-QGdxPkl_K8GMXZKVEuX-DPo6pSvEyO-eFtKFdQAUlunBNGvX7KT4jCwI76eAx9GQZFtUaGVTauy9I37AsC_KLj7HXGVNzbDKWjHwj-lk0Yoj6jiLSeKhexxS712FHou-YHBveeKlm1kVtvAHHxVpqxhamIeoCiwnG6u9Fz8S39HSIp8E5-TAsiLprVKRUeBIq5tKfrScmLic9OTnoCPGNYTUhSGwrvSyA648UVDhE8BVRfiJEM5pLsrYWMuejUJ9ntUWLnY5onkgvo6jhCULiPoFJSkRDGF2Ksd6r3DgEeV3pFtFaK7eGp3N3rYERTAKtHGVXgEyXrGzXGsICzWRMeULe18-G47kEeF4HUPfr9qh0OTUU98g1l4P1WNwFtQLjU7eEJ3qWGTlCP-5_Epo1lvlMA7GOm70PU97U3oal0asIJoBjuukODDskeE2XENmeWXmk7-AjNGKtkv5kL8tNTxeYjPjA1igv5IYimWB8hqTcpsoXLuY5FNnzVpvyQzF5Ts9dg-lwsdsbGrN-Kv4Aj7jHRcT4bYmeLUck2o8XQFsrKW0z8pBMiwetCo60cqUQdrvy33kyXbMFb3CUlyzJEyBxmrvt9JOoWuu1r8oWd6r27p81vmR9cXXjblfU7xUb4j0iwv6-T3CkffeKlZLVW5odHghiuS2janup06LTdKjq0E97cY4dDhqkerjwD0ipBcmnwRGOamh-wNxlDny0lKjhPW-YazRN2GnYkBcJCz4lPYomDuAwwjy18GxGATipkVHrq75n3p-JVck5HcNa9xqio3-LQE1qvTwTOdA1OuIxTLLR5dNdv7X2Oem4R2T5giutqx-ayuvZSYNezlZ9EP1n2bdhJpJUDBGUTYcchecFNM1XqbrrOStdZ2ZAPWuzg0xxNmkkJCHKXVzKALqUJ5uKlDmQoLRAvcSD8QnWfVzQnEE34TGQY7vrX6liTw3Ua-vj7MeJQbcC5mhphREw7mAp79lxrUcZyzBnTRpYE5nPgtuKIyNHBVIiT2tfaBVPLKP5pL5yuCCgO7qdqkmomVmB8EAJX2fKR5LL5O7L3nxcMDc5o9P1HkqQqweAVoNEIrlHLDFfx7EAoVHvOA2QInb3d-vK9wGBNoBgAJguJtXKEe1jn_nflczoB-TZlqxt7xI0EkgxXIEDOZxXl9qvMUw-dHF-WNiwPzhTxx-Gu3pka12n-hKg1h6zR1we80fcsvA4jka2n6DRW12diL3PsxxJafBQSVj6zsqR1KXNMruG35dp2yU6v-1GNCg6pnXZKb3sLNhYpcJCuezkT7IuxK7rbURhqq4CGgy6FzDb_FrBbABiK0BmBSY0N0FnaBVCZy-PeK5nb5nOB1aSYmw190d9PZekQn9NdtlgL3ZI-T_Vo_4XjL27G_U2VIEKnrpyoL1G6FVSS_S__o9z1fVVwU015U_8ibAnnFjKcn8_2D8gvo4alw0E7eEqBXyMgz2g2jxMNTYAnsjEdZPhTrKZLcxfLgt4Kg3xz9fF-y-PBvcxljDyQiaQ8_lJ7cZ1uJEv9bDBhPDxP9sNFLRknjo32CURIM8AjyPppLQZGVe3rnZPA1OKmF6D2qT9OjmBPNpshdVjGYRUci1TAb9eJI1uBbIyGcO2R7V6WMxrf7kPQFR8I_ZrwVgqT1lvwiG_qS2_1IoaK5RLQ-AgXkq4DOaV7D2apXVL0d7RdPJeEJFhuX61Sdz44-toHAVZ38o7a07LDd9UxT0-Y_0crDQdgS0dCMvGAK7Xn26zKyVmgfO3u7JZK2ygYQ2a2qO_zDR7LUQbukyaveqRye7FBzmaDuwCW5fENyN3quW9MTJ-SenUquv8ddGkCCsT3GHdX6EHGhhxogc_apv-HHW61UeI1HWdqeq87OtDbMM50HvjMpGv7DRuxSABdDAC0aEZeRveC2hFR2ufL9JburOaBlpQmw5Ang9L-Esii49olMOG80vCfE_AJ94tNHT5eFu22HYp1HxflpF4WccuD1Wu-AzHtQahz4oely6gWZj6SrTZpmYXDfhlxRF6xspGBPqO2R8D7-kWeOm3D6ULIkIp71_8XXwBzy4l7Rb6TwzH5naA5EzcuiAeEMYbBjeSNZ5rK-xHwWp9__HJzw5mMK0Jh8vDTKWF6cQAZAoUugrwIptC090-qNjgYxU3O0kkLlgbDL9XyLwrnn5CLYLMlOkOixwaQgTNJAtDZxJEU-sfGNx-m3IJPNVbHwTvPeUlCtzGM4Xsso0_2no5EqHJKBQHHNn8ZYsul0Rf5ZUV15O653mx87zESCM1gaqR-x1fE1HHqTfrCMyQELF70-LeoHhWLQj0ZWP-D3LGZJfuosFpCy3Qz37M_WRMkSipMygCg26DT81RJwxp-Y9Sd2Z4A9P0Yx02XsoM8cLV34s0A3P0m5wjoL8aqmZK4-vuAMEhxaAMeFofidz9p3drSoYzNV8IkIBBWh2ggSL1WGxZ-9jLWW77p3Dmg2OzsB3zh-Er1am65Vf6SArhsRi-slkuF53OYtQ3jkrkauPWV-QzVLgS3sy1XPaoBxGAj-HfXSlE9bkhGR1B3WBbvhjfH6S0qHg04_sAMpx9o3nRqRTmHfcTjwdtLqKayipjfz3_OkvPpk4WcYiovd-X7rwgiXGnGFFSZEP9xMe5n0qgaXpOQF5gi-6mFedQ2BZ0vat4KvzzybhBuzw1LVwfG_Nl3myYNoebe5dIXQguzK0ILMpP9ZgquSVrCgwbuFadWbIm-bp5SYs_NTlWoQbNaGmMIBwkUoLz6xaCR76BKuRNOY3juFpB48FNGAkr0z8vusxrzrxcWQdXqoe22u3Ux9gt0sOnD_toILrBLt7w20EsGAYWDo6kmAqZRFesJTrp4rf5oThAsjL7lLNP2e3aCElhlJ-7Nv7pXbBiqEi4ALV0fA4aBd2Dq398f6DIotEVIaE_fQmN9wUd9-GTMWQl1jXzQTU9BZ0-gOx3e2suthpIAbk0UxArkKRUFdm8ZHgaVRx4aibmAVZ1GfqQ0Ug8ltTrID_iGbJneBma6lP4zx3jhmAWTWS9BSZbQgQW_i_LP26nbKPS7yEE4zFGUEtYAJLtJO1Y34vzzNNobNgDuHTzSKcqgtecf8V3msoVeIgy2mrqXfe_RG5XM34RRZI03Nb1sEKuGbWCaAiCQNZbuH9p8nCq-970mOIKzVEMjv6As_t1NLMQfgu36QrRBdRxQ7kofwG9v34CFr4VQiA9R4rI5I6fxgviH8jKt690tREHmfO22IiisGUlHDNJU6GUWm4LwWGAV_UZwZH_aVeDa2RCSiFwpbBLV27e4PLj8Ys4_nCKt1fYerYV2oyhtRbCgl0GhuGDwiMPsj35MNzg-jTTgNpio_zGLfMNb6q91u-fg30GHMl_MafwL56gsdHZn0EkSu7cV-f8PszWal4CoSizJXdazx99TTTJuKki6jEFlu3pQ84nvtY0noGNnTAdNxfng3GSLcDQER0woq_fVcHNReEVfKFNVoWCA2IEycCsPzfW2XnrkwRPc_5emQlcHLc1DqF307BwU6_MpxbyRMcCy1mUnBlnuUVI2mFfT0vQjiSaRw5G-53_SmB99oSRyME7ZB-H9BFjuxKTIkdp_s7kSOiX0ujA-yWwFQYc5okB-4SzIJTPnZs1V8a8j9S8PIervVyEj1JKdRUAnycEeF_KEZzruYVyQFe8EPDUb6rgt-VaBIvWdx-9AOgHeUniQc5thh2ahgyCHUuTjQ2bMsR3FXs-w-JHV10vgafimrnHtr2cRjpoG0oKGpWSliIfpIXxi69cz5VCS-_yWFJmTYitHh9UL0ySwNttjqBUtmoP4KezJmeWGtnpBnhao5YAcooC7UlmRPr41Ui4RQ4l1xCq783bJoXVkuIrOyooviM4J2iL5b84Ods4jfMDa6C1RlYWDsnmWG38nZz9Ul0KeiAgaJzYGR83keLWHF32kVFujloqxgAEO7LIoHOM8IGA9wDuQHzWzPcY4pM0GHnYIP3e00aIGohDs3dRgF-TOrtX2yNd3V-MazAa3DapE5QSLs5c_isry-_-mIAXaCgs57sy-V-_gcz1Q0bBBPgXowVPg6CoDhxGt8SZ2W32K_5j5JOy6a_V-bd8JdoC9m6GFWYURYZjmuQcgM-bjiAJCM6nMmtHcDjkFFDuQkUwswUpuPQeHvhS_Y_KVugC6WV4XB2DawkWu9SA7EfdM34GjkEwrECeCNZKov1XpJPHObgPs64jKvDOjwwCmAXwzX4PrhN7HIDnhYQ1muHL9z4JOne3UrxiH_HFhJiMSpI9MjA_aFcysF7lHOv0wRI0ucy74LhU0jJBfEwumzneid6Qf8Qjk3tac0meMcrOuiMlihUcd79yWS0t7A3moWt6cyZZk_T6ygwuQbrKnyIGWo3Hu0vJoZ1d-S_kXT5DV92r2N7W7Gjr2_3i-rEr-ffGEl3hO7RLCGgpteYUs5cDbAxwNExJYzcMBu1NWdEmfxNjk8dXOsIJkMh6Gy193QokuGReXkAg-6kj9sE7tycjknBT17NpN1B_nFhe04hHngyBVHEL5bRWY2De_gyd5KJhGTPaN5W-SmHB1QKIegWlHxWtNSqR5heOBU4xYDuyrd1v1yNrjOJe5-A8e79cARcTepZGh0fSaw4BK05Kr4XawQSzAamaito1ytKlbCEP9-3PtZIS_WoN3oET98lPhB0ufj0r_ZXccsW7Pwyh2bKOT5owCFc_Ij65xXahapknQKxn-QCp-KEQ3or6WxUTYl1-dqatqvPcWO9cmZBqQ6znakzOk2fCd6zXlL-vsMDByUNicVBgFCVDt7CURwjdVRumdWqR6yxgriwv6I_sOMgRJWp4WmPsT9fggYjNeCx2D9iVeqyQfENjtVF4tBcnmW6ydA6mTpXZFe8jkcwJH2NtTQ2Y7UZPL2JRor_IUSEkHq-F-C1iYpmRTQAdvvAz8SaVj8R7F55iLi18x5x98WURc5O8kTxSojGINglC1ZL5rEG6_oyabVoyMWUJwilYD7BRxq0e0EQP6u7jxAyjqIOCgBrvgWDGxUIbH5qmEm3gtub4mT_Wi3v2dX7OIGOwNJ2bbvw5UXUPUVuGB8E82eEQYzvlhMELKNGXNTbGXvc-kKrW_1plCDr_fumCoRO4Oen5u1Zmj5vLx8UFjs9PD7SdBTpZJNmSIKYNGH7XDPCyLde2UCWE9cuGxa788sMmRzZU8gsNfHfCYQWP-lMb0eQQMlSPix_BgOQqi9rp3qOOJKJLGXYsEJh91JDkxUtuP_vyw08Kxl8ZQPULVSXEdW7YUcoPT2BJS6FhAtDFn-tgg2-0UnxWHCXEfyS027cbtqfpfYqwODmRWGm_4eWS1Wf8tl1M5aIkHs0NCb9xu98pqss_bKPq6-o_kU3X-IpDdwLKOi6qHI6hF7PildAhSVAbwwoIvxJJotCVAGdBZzSQJ54dsa6POSegfwI-R9wjxt83DR_DWIcn7PRG7iMQH8MyrlQB2MIzK4fp2FrZKU7YfLcgTtefi2-bAm_wjEUq08bf_9ZIpRUNqV89kRbD9gL_oTOFcfKzNmTm92v5LSIML3NbAtwZV5WyH17YoR3-8r0XLOZmFMhBUgujeko5UMpZMc5IsLM-2f9YFNPr0U3SLLVUCB-wo3H85j64Bg5JrBPO_MzjhfVDmHU3bQJgd_plw_66EUDymfbBRpxuNIAOoWBrzJ5h_gK1vB8wH2yNfn4w8X7_3RLjQEHF7SwCu4dr4ndqS3Me6EGtghEQMUlfhVJ53ynTyElzp2fcULU4XjBeCED5tBrwZjHGEOMTvxUV4siyngqe7ixkvhFo46C85TRO15B-TnMVVZMVuaXnGew2XMYlQVj6zm0TSyg3xR-Mos7jUtyauvJ1yvfbN13nz7t0lmG70RbnVEXNdmcdmZJA7qZU0Fk19ztkWzk_dgE_dZdnMtvTf2JIiSgGALll3rQKfECJbjxOI8r2F4nYyuEn6hZ2IOnS0Bbxl-SjMGpmUNSS6nLsRgLhtRy47M1F2Pz4W6DWeaEILu9PcMNcr5Kh5pIRki3Nr6lrEpD3QtbEOIn9Drstzen5CslYGAIi-74rUOn76z0Agy8T80WQmBr4T-Hhga7T-0qR81GrTu2za0T6z8E3TR2gVF0c7VxN7OdBLvmQpIqfSEpTuY7ZGOkz9TIcRig6UtkQdz5oB5XcY_mHBeq2rTHzLshaYcS83tVV7yui391gFTjmLaV7k8261f_n5Y_jAHQiL9YWUC44UPtDvGfmBW810mGCBzxcqYY0H-5XVrwk6gKF2ZCR69hW8Uco7bLpKCMPtZId94RHpsVH1788bYaZFJTHSIDgAKdnZ0-UAKgH3atDonqLCZEV7rPM-u6_5ryq2N6x7qNyzMXhwTn0IVZAh8SQZIZTGLkPmZUL71TtgrtA5srm0zoZelNAk6ER9Z7k2c3C9fK6aAlhiegcI4ESTsvdTp9O1_3XvCeMfw-K6pJRH6Cyil4blD6jAFOVFxmgLCyzG-eiA0j4USePYvk6ND6uFwLQl49FIVTQt_F2rcaaKN_mzafRmr2nmOvpR_bwWN8ygf5znl9kTDTq2TdpKM3zyqyfm3NRmB44DLj-yO2Xy8rkn0HsP_vrFatVR4Ff84nGpKKCSwcqbIweZebZ7_yyElwWCkcxf24Eaj2jpWYZ7Mh6LKz50x5S1er8Pt17wQyQjD3k8Tj5DBiAYYrSsBSdEalHvnLBRLfiPfmx_AQ-6N_eBxwaNEdo2sGxpJB24Efoqe04LTwmHHLzDcuIiF2iHPCwUz4B8vEGcihpCE4Q7j8ZHV07z-IbNJw-OLYMhqxly_5BIBSH36NywCyxwtJRB2sRVrNxouLN5RoNJdtj7JaDzJcdebt0hRsAl0YaWNxQG94hPWLu3rXQsE9yN8P1Ch7jfWSk2GTFrsi5ZapSwkIFVogKV3VWYhjZYn3FHJkcQiw7ifQ-Ddm5cWpwYCPuf4JpFYeICfqh9ol6KdIpxB2Ctupfg2I6wdMKcii0tsQaX2FkDxqB3iT67bCffhcA_-Vpb03YDJc4rsx_EXFKmbR-XyDuYSSyiU_yzRkHIFg45QILYtCgeVnIs0EnNVXFiuIJ4zOo79KqnvtyXvbflpb9TGGCY2Vfky0kXmj1Jo_ALzuj7FJlYfpNdANYyDaNYny4QwKaPbz2NvN16ITI_0U1Z1KHMsu2hvkMt4bGFOse6msgOsz4eTKHmR3Fj_T-H6G35QOm6lnubst2CgYMCSdb6gXcYW7rVri1fuxrY7paHJRvS-dIQX3Lwkrki0J9KYVqcf2IO73L-_e7EsttPn1vrMITeI4rMK9yL2PPZZ0aHSSmsI1eRwCgUQgGGnJOrexDB-L2bWDm6L3p4tWnq6XxpPmtIQooHFNj81VkYUi-xVbn2HPqBOnqo5d4_7Nzfdbit2WNJSz4HeSTotk7YpLo7aiDAvj-cHpVh4q_aUJPY4X8AwY1eOavXeKBuNbGxnwTSeiTqSePhOSOHTo8ioavuvOBqU5xZvM_rZwGBmP-m-jC5Y33WKV3qsEOwPNAjwyjxU0uEJJwO5zP81PSaLkHGADfX85Mtaq76Z2bRo4l93MIa78mFP6viJBptCSOXUfuU2cbhxrR98S4cUlBv0yzY7NOJ6m-UzSfXCY1L6MPIYTcIfnr9Z4EVR7u8Qo3G0P0CfPyqbAVHWqKkp8iZxwcwlPYbE4DRGjpMbrve3Vq0GEQTidE2wmL7_UOeIKHl-lmkxUffKEmvWjs6ojQW2lsveplM229afz-c0IsXXLqJa206YrUqzux6nevrqp2oFXNLGrh3VVZRR6_tfiY1k5WkSbphV5eLc9GcLOLa271uLq5Zs8I4Dxl8uEePnsxOxFscCYhnQ23dRDtkr2EvY0x34Xks3SjvFw2-upIxpumqogrZ-pOTi8s6vuqh4iGbqFN5Wg8ljBHIETxmc3RD_zeLqluW-tlEcemXWxiSArQag7od05i-sCXCiSVbWKn4TWw_xy_qns3JBN2ZBAgC27wl6qXpq_D2Wrw8PszKUOY0Bn1K08vwIQXRGLDJc25xSNdUFqvoiGHZpjO_IqwrZEOizt_5lXfYJS8EPD4UUDS60nxAlsV1ijGSdWfcF48yxcADwZx-5hxO6b6UL6fRijlAE650mSScNBGri4cp87yoiiNwOZZLje2m382M511eV2YbOsZDm-qGjvKsHlsN4DIDp-NH4YsGAki7X1lQUm7yAj5RcSiwDBdkaE_tzyjUyJ7oSJCxJyx9R19jLGboBEIptLAiXmT4YvemJcEiaYvovkyTxLPt1pFgkr7s_AfCHf_6eo6yftydWM4aMr8aqeoFwjUG9lHx18tbIozf_MUMF4pcvE7foudDfGmSfawpS_ijOcfVvH3HBQ7DuDmXx_uIB2zXoTb4uSjXE3305gyjOpXx6b_Ulc-hZfLyN4f56KaDKh8nytN2uci3guRkIkQhy3No-5H4uMgbOdNxeIicSAwH4T4VktVou20CVCW9uxA6h5q80CREUs808PnMHTEaD6sf9piJO-XXSKW_pegJ6ukjUTI7O5UQsFVNutIfLq4-7_tiLT98scmpabCIFcroKYbsVCSyWT6iWRlH2SYbiYxeaZJ44ydNvt0dDeLdM2fFYIktyVCIXLMEyjxA76tkawfK7DEjm4g5iXilU0SwpgqvjOVlYa_85FQFD85zF-g7wkGPyahwexWItFfXA63yGgwRBMhpdjrVbJIJJ1YZCaASWupz6_NKRir1AMLmd6qezK7FNRakYLq4nFpEAcRe8BwF5HJosqwfbsqpfyv5aPB3ocWPy8UvVxjnK-Dqb-Y8ybYf2C_skDFRRTNxHP2PqX0minAhcfKf1E42x_zo4_7eBsZx9NEzTBWbj3Eox6oZlgfHZDGOvfsZOOqU_W2YR1JZRe-mERbfkgZPyyOgEVhHBEBi0V6983FXf-1PtBZ9fYSAAD2VmOS2viliX0zPQm0Gcm0vrPw7s_kLI65lB1L-1b5x1aP6W0NaKerbsRtN75i6i8slIYMYZpZrU0qBsWMskgMtgZ0iu4VzvkTF5SwKjQ14zv1ni7cXtH02LD8F6Zwz0YRgaa3TnAOInw2b5K7Lmtj9LcwXcoxGM59t1G1uUg03kls4_eZ9LlADSk4bKoFV8x5ZqicegM0_rCZIA06NhdQOV7uuW3axAr4bDJ5bMUZguqQUTX52QEgC-EhW_x79tcUF4GD9Mlw2buqmwE4GwSrYFFayhfRAdxbDfMsVf4RupTGSVPRn7_e9yFQ6doWbbrEsy0oQKO7TZcSjBhNCT27OUzYqoPlZtzrpWKtoJjdEokijLfDDXkl82IQVNULbnHA9rpqEl1VfoXJ8kpCcXuWz-vHnQt8mWhbv_PFR0Su8ITIRIcGTSin8fwCV1RmjqHstHaK46PocHzvMqbgRovZw-L4PZYlw6PrcJbT85Hx62cwxiB3K4A-WUW_ikyL8LuLK986fhUVM6j5TwrhOa4-a-ycGSl3rmbQoBkP3T4aVATw1NZxb2N-uQdeQIJn7Q3veny99pz6hcLUGAvuPsH3VmGSOsnGbN35h648RkyjEAVabbe_VqlIYT-vDLv6VfJ2Sim0mKkOwfUOPRfsfmeJGTa7lWZQ0wc3wANYIcc5g6v9R6Wl2YrfHWWFWhg4JqQLP44RFxeUelMgHfR2xH1b4-TjklV0JQ4yUGDLYcYi9cchj_OmtgOojBxTA2nxm6h6kcIqp-TkeqbKrX3kVhC48L1pBgaiqz6iHewVqvjAvlR2yIB45HR3HvLRQU0pwmgpYiFHQOrxjMwmqTuR_Qj9_P9DftYanXkRuVkT2__tbmUTHWBNS49f4xWwWFTVv6X5qLDuNfTVHLyHrE4qCbba3jRzsq-xP7eANBSrYeSM2KA4YPpyRUf1OuE3c7qZxv2t-sj8Yg9Pymlleha8sZAt8vk61PSJ7SIfbLuf1cBRORyNa962W9358JPATItrtxnUFDeJT9btzCEoOviOFc1z9HkKMjJQy4PD9XXz58FtWxE7E5Q6RnfbZ1BHsPQ-YLTK2Ms_P8oUWISc9sEJAOlsyXe_PyW6DWVIJGeMBreArTuqucQeA0yxSUIKSrDX_dw2wZRS2XyY4uOGjFc4riJDdLBqQSFeWUWXM98Lf-Fw0H2JyF43xCRpjU3_sR85O73tywUuXEiW6K8IMTo-3KOI3snwzkQcCL6W6g5gLgj9fhc3NlaeWVayRuep9sTX6tlQTbuBKtLeSqeRPD1PD61Oby_1AsJJ5hJF9UUnh0zCX93zx-EX0dunylvtOlF6UkBAszk6nvpdkI485mcpF6jnCtw6Ooz6aOSBPlPm1hnnaj_nAtykKemZ9wOmdgj0f1eXyXLVDbruiN8TKzyGZ2RHw0PiV2E2pT3wSnJGRlu7A88T49DyjN-wabOveb4SWy1TEpGI8Ynuz9MdD2myDllex6vKMSqjizE4Rpl98GNc4UCWH5VIvug5vBo5RFcc7dYGXcGFnFDb2wBJ_cKNKmZyRJGFfiIlRlDjWAZ_zgBjhAv_QGD2qo4v1zUnHpP833SEhCuynXYrF0jczdv9QKpY_SUSRpgFoEp20iyE2tAE_vVQ63k6AEZMSy_-AKWKe42ALQYDgoiWklLs-0ZCixcIBHqobATOAXymbyeNTtnfMt048TgD7FunFpjAolZSDzTZhbOxaGJFgMiqfHsTl7Jve2jVpu3ERXwq21AawfsD4dtVOFc_D6AbHaHhwChSwi2OCyq4I4jfnlsoDiayJk0L-RNCVubqMHFJyisslmDFOkuA3B68yd88iMOiRyn18SxruzpnotwpQTEj0z5Em6WtGUMwdpcCL5OaHqiexePwlHMnS40OpUh9SsRLQ8B0MvdZYKoEnVcu4R4pSlH-_lzHsmykjz4jZE98KmqFEb9sbF9Z_Nc7wPED1_TZj6EtagrNzBDOQlKsF7fuKiiTKYQ5jg9WhiupE2IeSaS1Iwyao98ATkImssbt-rJbJPcUgqAXZ9HPduRDd7AKmgSuq50vod0B5Ff62x0ed4giplPrCx72NfhBsR6JHRQMNGrG0d0O_lGb2KtTgnPUo7TgD4JxfuBoNQysD3wsdxLcfAtwtVV6Gy4aKMAlMZVCdd7KqayYu5POVdG-pqFxn00Phnbor9AiNCdcaa2eKQSK4EjgLJDqDIzR_W2HIdtKfOBHx99TuavlEuZlwo6DypzztvCLjX7nqaZI75KNM4mVInxYZJtkjTeWZKFstwD2k6J-62NaAz8RvQ1R5yxaygxqVPITZdaimt4GUW-dJxlieT-RGEJPDwcYb7nr_iTN47njAZrRiPMYH7OJVoxurJrlenzOQrbtFyKL0BA2bWGzIsqXf4o5NC7c2kVCmVD1SI-XAkZeouulhp_ZWwNIhRMMSyc3eKwq1nNBBh_C5Gghjul6IoNnd5FwFJEefnpgOJurd7u4cf8j_R4suSYB_Ss4I1PgPz-fKnGF66DGUSF-GsSjQFSGJZiXCeK60TN-CM_9xt4vl63Gzds3uI-3cZr6kDaB_KHzmGTZEDstUdPdk-l4bz97tWr380blsg15QsmbRYqOTuMR2KQ2G9msfrrjpNs0sqePKHLzoEczJKymqsUnGMClZ38z2QGrEdUxFd06D8MJO35vhrq-zC6-P69b2aG_FaUzAaftOGdkO-JoWO8-mpi8NkcvuRNK5K379tU964SZ6ioGokMbWskaaPCN2URRDPPl9Yjp2qPFwpnP1VyihwMOnUqRdTe5NuKnMwLvI1Q91CllWWRefzOPkqCuTTObmXBK7_VZtnTM2sHFiQQHd4xvz4VVAWUiOIKYy6FoRGZ1GNiAbkKJ06k7cO1puucPixPn0fc9y84CbzXaXUDcp_QZXAop9ZGoRW3EF5_HPXI_CqQBhndGKm2AZJiQb2LPk-adYQaHaCIKyU7d05YB8uc_xeviQCVGB5YC0J4sIqYusniVxiUwY9FTD6pYdk3j3DVEhiqJddk3DLsr5i1FdZ5lxNX7AJHd6Ie6Rxr57CqSqE0JtwvPLXVjtZXp1r0vMDFCAYY12NZkTOG_fGWLWJLfIwlAtSdJwyuNgD9vGuThyz7N9HLdSzW2ZcbjqUHzfOQ7UI9FovSw2jQJCOcDkQ2WH9ZwWlF5PbK7ErAaFVIIQxGPCbVSSOJKuKgoAgr6j1eUM3ju59U3pm9DMSFCVM14_HfxCzTg1xM_KQEockUB5TISHixrf3wVzMNtkkhl77SFoCpmFhJeK9uj0kE9ijvAzItgk1dga2vPWW1BGxctw7_ofz9DQIIt7OciDGL-h-93blRweOm16Sm9DbPK3jdLvPS-wMADo0U7wkM_FGj1iG9r38c4loIsjhFbRgZPaYjaU6bxarZlLFjA9ceKA75e6q4DwTUD4g4J3t1Y_fFT_E6jRjJXiG5FDtgEw5JGMHkWLmM5dWq3jVMz6K0xg3S8npND7TFJ_GQFg3J-KhIEDfwy80pWtlDGxz_JPmTmQdEKvoHDvUG0vOPTK5mShCpofQQB8qG-sLjP5Bj8LK0pC6kHSpAKpYrp5p62moJT-W6xvEU7_kC2ZeFCk5aLORahWffmDdE9_sHTEJ_0PbAx-o6Lj8oJz1Sp_bI0s46VuZAOrf-Ml7qK_f9CeGj1ORnODbtRH9TxcsQHP8DJJXFbo-AjuD4h2OXUF3bVRKQSE99PSCCBxUln4BQ4fjnM2BP9L6S8GAAUWXdRm-amprthSgevD-ytm49rp1VKQCPiOKRJyYSkHAQ99LpG4NLtxDWnKsHCg1FbPok13AuRnNZgNqxTjyUFUSeYoy4NTk2Gy2Aw5yAwS4Rkp74Qzhv2kNZEH91QjQ2VGXKBDwaOT_tYNdA2wIIlSbsQLk0uvGlu9iRy3ThxWPJeQH1HRt35FZ6RxfLOH1PS7tBRfKQT1oR1mMsTPttDwGqGDnrptL43srkviE-pWH9kcoOUHPTHqmNz7ZzgRHOlPr5uXNv6kn-GgrLrmhYJuei73WLMISOAOHTy3DXmXTbN6iZzivfH6ejt-mjvwUGYyhSXNoDo1GKeVruFbtxyXrvm1IaERgfzmy-2kLnPDneqlFniFzUV3ebGVZOULYJaWZrHLDIzWovqSQjfLqYr-Hle4EPXWqGYy_iVhky05agnA_-m2VOxnSlkgYbokg-z0c8T7b7pg_EhEF0I6BrfRV-T4tzcwOKPseGvAu6Sb-ITooaZU4kvx3xhbogJ6ipkvsa85dR1JTSOcdpjhSvInClLXDx4wcHaJp67BjNJUexHyx83hZCKLYgswMHmk5ALztHsY_nAmgp9UILVjLs6RtfyYhZ4VEal9mspX_vqHrvmpXbI5m_hVR5shQyRx7mswyeVGIQx6cUO3yxyQrjKQMuVHzvO2Lpki5QE19g0UtID3-jzi6OKCUpwp7-paS5659ToNJd_gfrq6R8exLS71rCGPKwncss2xRBwQfBqM5ith7QL4jRZ_eNGfdzwYGgI4QnPExru3swurmYER5gQ_GOOatnwXOMs1NbEj4e_Q0sDRKX8NHgtdBcL0mFfdU2gBqlxexpFk5M46kqupWPgubvXHs9utrcuv82cIOrB1ho3ddSwc1OhLT6VabtrR1k06Uax5w0U01j1vwIFJMajpXYGzejeI8JXK2rWMLzV-vWUAsMymnbcSbA9jUNMvobe1X4lCGRYSFVHTpQuqcGB5ydWukUiycV1SZXD0OPAtcYV9sKbV8eScimKEGsMqc3d1Izh_jkWqnf6_CHZaISVBSdLX4gQ7gc0bsPO9oeXTvz9spvp8RGYRmTMoxP1q4qIxs1q3SzFHJCxBDdYw303Tq5Ecv75I3eRqv62mF9s2Ae_4XSjfQqpvVSEAYyx22aELTiWLpnRCQKOXeKlF7CabvPmEsH51BXZN-6glQH9JhpbQMIGLjeG0Lt0nHZvj6vcKw6D1w7XH7UKucAyAkP9ZhUuG5K6NkCpDM_D78s0vST9afxk6lBwRAQCmsys7E1Cleyqg3BT1f8QOgn7vnKLe0NKUmZzgeoihgdbjxpM6fRut5vw69Ev1Cm8I4Gwz_JqOq2RqJFqQ9CP4ue2sfHueO0AOQIySsO8F5_cBiBycKziDy1kSg-XwItwyBJ2hprq0BAdYgCTQXbuD0Zz9if6qwac5ddoEs_TIX8WucXxiFRF_wlwJTixy7gEkWYM4Gg6w2s6FdYKJ8quxaaeLBExLwwgFXOqyhQH1Y4hECOF6hfcQSwNC27C_IJGlUcFACpiCUoFLFZPazieqD-0Utu3WEaHXCtgcs8TRoutBECSpLwnu6gIBQrkOGruPS1ZiPqKzE4oTjlyQ0v-PBw6oYUA9jIfvEr7VwmwWs7asjX_nz-9oydFZo2rhJLxy1w-1c27VPqstAje5UtHehhHe8ZXzeKoSGHW1fIfLZppaBXc6_Hrffkf2ikljM1RkxPeSqqtIbGFgN9esn90JdWbHdNz-ZTQutL1BGb2Kq3JShqOsmujUPsNkQg3Arny1hmx_LNDLTHw4ly7qsdDLDaex7cwvFiMw3nplQlqXtMeaaFjeV5Y1RuX54iO_btboqLY1Oh9L7_zygT8lPR7ZV4OVc9Txzlf4Cqc46AP8a0YjiIP78Fj9NGRICjZ_s7JAXExewGcsLF0GUXatkMivx3XABN8X4jzeN9QtB9jnszjIpiZaRPAI8Oe9GTqvq7HLP9G1ClE8L1fx9dZlSz2cJyybMq8vYJrL1b7IppqeXRlfak7HmaBoTJukAILFiG-fRs0L1wg6Z2c7AL3vyBn-ncRGxSvLZ0qAGIvyi1a-_LvO7BRgTKaS16Kyo2__8MSrXuXiP0tFQD2MyywNFbwqpF6umUaQZB0V-ovA6UrhM1fKKiDyx-vPHqX6jNzaZgKMwCt3AsBLODlQX7eqXwhC2r7KgVmWXSRtLE2AW5BiGxwquDytZhLSt_GC2MU5q1B3Z3BNHUyF-Bo0NaTe1Vevb-cxzogiOLqmz0rdOV3XldztwbQeqG31l6uuI3b-TrID5twQcRvTCjLT9zEyua8eCCi3p-T7I-rtpsskU-nCheizxt2SjI_PQna69CAEWqAGfPVFiDdee-hoLr8GU85c2WzwWB25WIlTLI26x38tlwSww8UU31_j993_XRoFApjmwGXXOoRl5g8Hzojb2W71NqLLYAOSZeyJvJeaJ62mHepa6S4kPO-yKmR_ixv_H3TKaQ0TFwMvrBIE3lnovMHrSNVoUD0LCfU_h4u44J5N7g-B2j8D4BGX-R5I0mHB20LfDg879VyAW9n1iYHLbVbxS_1KiHxl4x7zSdbRTq2nKjPktDFwHKR5jxr5LhqQmnTk0dFKmEVflzZEzkVZPL-r2rDde-bo--mXeKcRb6k4-bSrOPOmA9PX6qO6t8oi4RDeSsIG5DswlDTuG-g0bexBWlM3S0PShFg4CtdCUFLhHgb-9ap9RqQx1i5nLNgkiKnVm0yh-1LMFv-sY1hqEP6wU9wxahFaX4kUZzlSIppn304JKML-V2foRdpGYYcvvos0t03CfdgQ4CppcGbbBxeKiqYEdzJcJXl3t7LLLJ_bNssJcrXbnaRJqnHldJF9p8DUed_gC4HPTSOLUZqiLO0mBld2Aytt3vozTHuVIY5OFq_rwxmTCrrB-NuSctBYJ5usJB6BH_DtqhlyUpwuzizObTzREqRyk_vSEiF-wexv2RrTSPavek64LP_6xn-M4EUndqURFHggbx366kTMpuGhH9XKRBs_QakuEhqdz4OoYKt-HxA6BcgkZGkxgtvaYYL3E9UA6Utp6lK74CRwPHofqyUrLhfN6dLCh40jWf0aBZsx1hsUfwPyw1_5nmhW5SIwJ7H2w0iLVizBs7Ysl7szgqbIHi3ef5iJzPSlid59njaaUbUPCT_pA2r6Z4QorUItby3eH3OK67XHLoGUJ_ybaMGz3bUU0o-b9bpmje7wimpReocub2mZzlDqsnVffpDC1ty9GLhS0EanWAmJzlxKKkRtSFujEeDssyVlrmqoaWMdxIV3qAoS4cnZBMSlpbtV3oYUPMOJvqCSEvCJnIF6GxixatXOpCn23L7p-f_Ibn-OnVYtp70RUgczWhWp33nmiersTqfEhfbsTZVJzej19-WmOLb-38zhLbO4Gv4CYc4dvowFuqTHz3T8K2azkwcssQJTZn9NmvVLe8-zNitrgbrodqSEEssY3ttHyfmpq-DxDolZynJiOay_2VEyisITUGuzd5vern2lMAX3JP0Je81KLp4xljvg6eal-VZTKV3twZChJhrIk-iL2RHr496s9Jc_q6Vn3W7q2HGLmcjqq0zbcl-OmGnA-XbXAf4ieYQoS-kMqXFmnjfCDoYfApJIoz--G7t0Hm3XSZI6_JwzS8pllQf4gdkXfTQOuurOh5jj0jPximP-fJujXt8FBYgnnMpSgtzH5haMuCUGS5hc5T9SZm-3K91YWQLtpfNrpk07is1BN9mi1QTzaud4M9KUZyB2ktW0PcFzlWPZvvJPVq9DcSHUV9vCXFwJ2G_MP-GquZu04BCDDWZ0x-0qiZB2tp4AYgGopWiGxJmQQDt2YeVaGcU8TPZO9SZBG7LB19aHJeDMhSqdazkACsD_yJr_F1CjkcXPMEZ1FT_ksen3ZEVagz8fL9aGrfuTnBAeFEGmc1xw-RfmLZxR_NcEFWCXhhk-m2hJLFEkQhFlyYrgnU0BY1r70KafVKLSKcG8hrVHcVyJXkwAhX0PG_6oO96iflnYeEsfUAM_-srECB95z6dEAdKhUyWr1zAJfXzarhdj_CiCkYybCD32vQvz0h0StopEw_0wL7gspAWUauUyyZdvOHLIFZ1og8A9jZpNiNeXK7u4PYEFtzmYm_23TN4GuaLuW0eMSe7E3Zl22bsAMd3kLK-vLCvffP2SFsgiw4XNvO4TGqDtQjADeBVPAvf-OugkaTGxUHV7UuZbq3gJhKDoi10rQ5n1EV33WZTaFKSuBrCJlMOVCY65dwTOhfgQvJBYmm4QAEZrcOfPGwGxnrERuXryGZvy6a0_UYad3chjqcR1MygTnYev-rwcaVkWwDYwqwTiEHKDWspkec9OnptTLJvkEBGl8jCWbR5lfhu7U9UNGtypqzRuh_4T_zETr643NacxpFU_AUbDs3qfpqTFwgkFqdvi3dZ4ZQYJPv5w5B0984q05hM87oSpdvdHmljL-wyuHAzSKU5Bza9A_MhuJ2lYJGZXMwCNNmN-DQ5clzLqrKffXFxzpOCYyPUl3PfH_iZmxusFPnUqltg5cLuzF4Bp0PPzBaYWNCgw0cCjiVVeS49_YM2M5fur6m9L_OCVsjTKx1QVGLI85lhgIg5CylcfHIA1MiLr61DYvbNLkSnyQ6bSnV_VvbgulAG0GzPkaeUdumsu6hjgOvzWrVTnJ5M3qlanIlqGYaMyYMEo8sbF2MinCHAUaUsYWThOHpcgG7D2alDBSod4Uw-WYW3vsm5e38nMf6riYmJLrgGwgEYZioQIMVKcq7icJNBcql6LogVRhorMO9lcpPc8u3Y9v1JCGqcepU_ZUuSrVOjclsWr7yIEPMdsyAxVjAPl9d9EIhl8sC83QJHjRYlsAqY5zSh_q4sZzfUFXcTP2wsZcvRliRxt0EnCwPB2iB99jgrC293FTm2ct-CjOoBZRg0qyyNQ4S4qwIm79SmsxnVIJ1qUG7coy8n2KT2Gqt6VTFzZUHiAxi2VywU41ku4VB0Vjn1UC1L2u1cJOdg060ULQakmO-aQ-MMG3e39SPHTiEvAXyQe2IlIXmsktz9gmex6Pl6KklTDsoWrRU_wiMyt3UluVmlUjDfherAXZVgCl7PN2lLs6k6Owvj_Deo5qbTTpI7LgS7_ojAVJsFyQU8Gtu3CGdWiPekvaLPh-33CPnDxRc64ubPSgfuaAz8V3PsJ0S9NwL_F7d0URLYbudEC5XuJHvN6bO0NsfoaeKw_A64kgCDhacosbLQzyM7uAi2QW5IOhMhrV1OjSavzXwTEGZYi30wwAV5tS5ngdi6ZWzTqunG_JPx7mUz33JCDhWA-HSbEHAeyWdsdMoEntXU4B5vrxLVnP1eP3pSUjsecWZBgFp6WhDA4u-_v7HhK2Ha8j75p0gm2c-lDEVN5W2MunT8IuZWYp6Y61eFzAoFQrdwSKuYiJEVbOjWIG8_HDoKaBOtzCs5jIN6DuFMYtDmkTraw9AK0a5IDZ7mEcFpX1q6ZXIjaoziEVW9e_h42jDmRPmg6EURdLLT0w-fPmBefCCLHyosb9A6-eY4nf46JjjFnUw6JN1xWN0j7nAAJtQWKvws0rceh0jVhTS-sLsTfqj1GbpgNXzh4KWWQLwVx-BB7yzV2UOx6o0HRkMcHUVX1xK58cQwlzVNfYQ-VaS2SY1Z6qPtTxHUqy_Lf5ggO8VVWN-4LQo_d-XParEy7rxNuuogGIUxNRN54KEpiVd9k686X4docQI6xnQYQImldxFdPfE6B1RVsIZIB2uyFkcg2y7SNOHgTQ0xC_JdAoxJE46aUqAVJ9DcF5q8l10GGUAWL69d_bqsSA_7gGuB8diWo8C7fAF1etbd4L6vkI8Jf1DwZO17J9ubIvuUZ_XPEpihLBf_ob-s-VVL2df154pWzOVmMo3CFlv_ZFlSUKGBKfnVg2trkpf9Bh_mTrXBTQpjEUdDGrRTERb8efxPqoBx16tO7SlnAYAHIM1CEniCdI04iiStGfoukhmiRpt7yeJG1Yf1F26iArnU9cBJNy1yz02lNIrc-QnWBOw_vvQB5zUl6SoDNnc55uwE4lh_eKAthlJGog8FtwA7UfCAMYwjQ3O0sJHl66taqGbPpz51Mv7vuTF3zV33kwyeiTT_9VXsq2IYf8Y88O9r42F3uoZApUQz0dgVW5ZOPWMAUUyBW9A6si6-meuWyiixbEa4gGE1DLXB1ByBviYmojEPuDwIyRB_oLWY2IAsAksT8CDXU-zA-t8oFPIXbllkmqSW9ZDhPhwT9JYHw-NZ__sn1ykNBa_rXRK_t9LdKsPfd99RpuBOOCgdt3ua8nyTVQfdiuUk2F462GrxFU3lgXxAN2FrstgeLNC98AERuvElI99c8FOpz5JmuIpt9fXWEFwoxd5XWoxQzGhLMxeaHgMCAC1NZkSj6-ZMktcnOU0se2cW6AynMrpd40PrI-6bzIzbDxXkPMNs4y3bmGk3tMVX0DJ1lKhd7Qgz7oU1gOVBVvIeyCunZu5ZS8qJFYnLzZWjyE2CtYEkKfFGhhRrzjIE4BydQhtcIbQfU1e4RwyMclVfoTj814VumoYLOaRItmawGPGJzw2niq0pkdC8jOtKbdzo1mIOBxAf8LG6vVeojMJUEsFTYg4_w5jNPVVYLsBamIG0Swr2SBAdF8dHoWLSaGrTnZaQO-_Gb0YR-mDwXWKki8WLDnLA2IGh44LiVURILf90oFM213X7b2vYkMklOqFOkQQmf0zOxEBTti97elHTC9zV9W5mjNgUAzrxCnBhTrJqtP833aUYa32Il7bNEZ9nNnalX1dSIUfLjk9YDZBshYO2cBzLScz0pOwoVQjjrUCATTQmv7W9ODR0dEs8r8MbO6s_qFts4_A7EEwAyYRXTLffvCnh0EngKwIK_jy1mNVAYtFairYF07BwPw1Uity5hF17yJXKeZn2j_2QPtZ6SjsStntogW05Wj4E5obKybl6TNzi_7ILDYg1FB4ok8uyOStZvQD-rtrp1WpS7q-hw7dKJoZBOZG6LKY4wrE1al0lVzSXwLTMWJdUa7nonplqK53r6pXkjoPg3l0yyGWJqqpzIhMSvWrJmzEi28k0cz-WiAX5Hn9PUJkJoXNi8xEz19Vm_rCOJeN1esQo8ODxUxZcoltgo9uqf9JBgPQzpV8NS8IKNdTCcRcrTqyQUayxWE7ABI2eVuny79WNXlR_tVLRtgDOV-wurXEDo60N43PLm8VUZFtd20s5MNl7ZBVfT6jJuwiKijhMwevJ6OFgxHyFvIFB6D1a3WOcVZ3j_QcMSu8CoSq_Nv8inGyEHNWAM8YC3Rx2FcjH5RzudAZ9njDYiH07UI3j2l2WcVMvRILVtYnIvVFFZ69BhJp3_RF07i2RW5AgojD--2oZVuWssiKUnRTUvqLG7WErt3Kfjt20ow3UhIu6uUkvQiQiGVi_dGGBB60hukFRFn4SOdbeUsZzCD2ypq1Iz3gXWtcHiwvzOmUMse3dMFsEaLjZhsgMVxOKdkGwBOC8bBCibfK_KbNhDkK_LkYpMhqgjxGPgcBJ2fsOFzcuuoYXnd_f91hq9L9n5qXxF6fTS90QfWYBvKHQABMyGTnjZ7B0EMQThuYVIhTFdhkWo4JXKH4FYcNb6CpueyZimOXR2Lpjkfk0GGIk9XoLdg9Xp1UFgmpJj4b57-8qZh-0x3J27FiDoghaR5w3pCGsY6SaQ3re_OrLtnfq04JwMijh7n3dPJYwc93kE9-r8Tnv8QSCnwR7hoN2oc2ujCqgB91Q1EHELmEOswYguol9DCTPgtM3oCncd61Nn8dV7KSGLjTbh0YyU6ZE94j1aWHqXeChMTzekc4H3NEoN6xyuCo63CS8YsfPwoR23laZFJ8iNkW5N5MhR7iTuJpwmIspedHi5pFhcBg3MD25Rk8hM-ySGLai-SJCcWbdCQBOres6_2hjuII3LHZXwkVnr1NpFjGo5bLfx9f2nYrX1KpOOMa_l725al0khj9dbOX0CtSrwkYWMvotUEv8qx1sfhqCTHdc1l174fuR_i74Ofap-xBAyzGLvgywJN1IdRpEhDv-p2045UQfN0Pn-pyUP444qsfFZd5SVt6uPp_UkF2ztF8AfddaEx7hDIbl941NaIutMhZlWy5EuEvcKEq1h6yUWd8C4_e21Mj5TIYHlMJmhLG-I9Ei6ToWzTSM6lFlrG3GLzZKh53-Q9ihZYtHFXf0Feaqlbqto0x6mq7ysgV0hHV1np4TOPh5nbY7n-cw2aLFv4OHwFUbwE9x5lvRGhHnWi1aotzdQ2hVrjbhkQIse4Wz4hnZgPe2bpR6mJgoXp3izYyboXQX1PpBIqT9dM1WsF2uJ8dieMcD9dFZTHklTndj7oI0JZLrUtb9_wqUmAKrD0bVwVwy-4vk_OHj08GEF9xpdEf16L3OPrihkeRMDWbuPzzCf6npnIPxJeF_8uw2urYTTQf-q3LBdb0iSIEdWNU9N4Lfj5osmEgB7jOJyLLMWJbMkCrR6LbmLKyac_RDIldhw9CydoSxR0CqkRKx226IVs-e5r582jbSxavnTJCfeXaCr0f1jSsi-Un1acuC8K3g2rfEvzwPoY1F3EKVL2EdzcOLVAiI_tKebk2i2Vgpx_PnNybcUXJgE_GmZ7NUv4p3jOT3pOCbC7MI4NZ5_p6xTT4hDJaUo92zxzY0SSoW5nwVei6qkaDpJs4fKhpMaxVCZe4uGDhcq_NsabTXNTFnwV-HDYrZt0wzfRh4oVEwrrVMvfV3hqJs1lA2uJFSLjDextel4NCZ1E_SEJ_ePc5ahN39RiHXsnnXdUt7qxhNj0wVyQ6ycMa0ZWmpy96CIACv3-BYHQxBtOhAIINMBz8IkNUJR_QPBQZphWkHQ9htxhp5iPUaKvtfVPykpwBu2b4OQ8jE3DY7aZ8s4nbblGT370zzjWO9wiNIPhpZVzLpnNEfg22dJOwSCp9_LffXsSzu1QCwALKVJLq_dxf_fs4SAC37OY2FIxY-p-WkoFrGzUkqKhbFqdJyMkDDTLUerJksOL_jrGIPWS0Xc9sovHDCYQ3moAz8W0BEw-dEHJSHl88oR_-ROeKZN-R5TDrTeSxodZK_xuibB6p-hJ9tL6zHIdCydJXL9bIOT5Y3VN_KnoANJ_w5Jxbf43n1M-r9Vpu0mCp7UrDlFP9gro_K-TVOM0EyL1KnCfEQf0KaNzbsFZO6qWaP8b6So9pGHMhyFBR5Ri66ciKWYbrqRMWiRLolT4VUgj1AorG5zxGGrCi9hI4qdR5nwju2cXB9FOq385vZxpjWzyCrDEZVQjmXXIj_jIcdmk5ItfaKARZ39O26P8SSq_HbsSDmAugygH2CDKp-hgxfdU5O_jqeUkNOWn7AiokTLXbeXG-sxSHGUJOxYGtYDUVbwWhqocpzT00-uQHppWQZxj8QTLMRUDnMN266HurMOGzMvFjJAziZj2FJb1rVj2SKNrX5aljf_vYWDzms3USlmMYhIoBviUcuCG--XZp_eWR_EL1W1W5wjqqwdiwsSP3LPnuOLWQeN72ZBkOxYW9ee7Lg08-6f9U9uxFa709x4L_pa0jRGY3SBL78ANMb2Clq1khHBOzDVAMk8aQIMLTxhIuJWzgPUIwOyEO6Mtd3STjPNfgsOZZPtOMaDJUq_yhJxfjXsKOXQullzNHD0KXU4WSyvV95ha44GNk4NPVkEZvj4mMjWWGVVeuowu23y4xoxdqIW2KATtSl-WCg0OPXxbPuON94Rr1-Unojzyc3I8tCtY1PRboNnHbBpGyAt-aWGPK5gTx3LJEXTyW9ykqdQ0v7QPik6MCOxsMSDFiE-_TlaYgHD7ffTUg4OmhrYff9UevO1svFleMPz2CUX2X-m-sKAbFmNQ5a9KHVcTji-cqX1HbXG6vhENcxX2CNDts2rXuUcDLGQlAbd9BcO1tzErb67iEjxXIBquusICXH7OOHEpunKbyEJ4Lpx2SMyGKQX-Up8vVByTMC-BM48ocMwsgdl2oVzc001KaJ4KH-mpWQ5hYrOKYZwhnImGCIs0x7-WKYOlpJCSJJj_InryfL1IfTGE-dHJ3N_2DrQTg-29jO1hVBCRJaJYPMxcdMepz-Q8eYp5BOGrHyLmPqa09i9vgF7n1JZstnwpboib017Qe6naOj-V_XJXLFhZB71Y-E6NRX_LhZ_rgSsO0yuy9r18YVgKDdDiOrxgIwvgKu2v9z6obhwVwmQN7CNpCN5KbQDa3ncG9k17bK3zTUNK_BuOH2YLxVh18bHQ61QdfmvkLySyFG2nMli9_GVgDvuF_-xmC-0dOPyCXJSSea7OlB3gSkt8cTpu6mzQ1Kr8qr3kGb2KAz9PPZc8oNCjgjhofuzQEdXY9WkjPyIsnGS0UNuaRUSnKWmAyk3-OqfNPH6qa-Q6L-K10rS5t-qwjyzeB2HlaEbzl8gDpD7m3HFFh5GGfl_z46U4ern26EvAO1CRiRDqKwtIxhqZc2Uv5gzZXTED53b8Bj3m_iZzHFj8XleMvh2wlAbttKP5tgKTt_Sg5BcvdORWJLBBzRg0KFiiC0rd0Ry92vzAdPejy9WKz_Njxr9xgpt69tnfJMnp1Mvy-LwxBh-K1yICnaoc9upsqabyZlW5LJA0aqpNXQNP9_LvjcuXDIo3ZNOP10uqF77Vvwvix0v4HdowSuKG2BxN6ZVUNfzMe3j8wSyLexDfPK8y2mOA0jJIWTpx_1eNQT5VJgyhp60cn-RA6u7_CTT8IHi8fK0Ma0fxFloL9GhYfYguD6E3UAStn1yjqj0eQRSDkIaEphsDg9dGi_phciFiG5ELKhg-QmMD68PmBXVRH5XHYa39Q47sbmCwRnNMSMxGAm9NjX_x1-5Ei9BVaUGASWDkNBJLcxc8zFEhj5eVUwAjh8uLitgJpyqx9aS2SkaWpzfZAZFATAtLH95ELpBflZp2idPfpAqm2DAU4RdnFPynOxCR5Rq40obgRL_uhb9of2qvlIFl6kwV5EC2lf-qcvPCxdEypQMc2xGB29rh_CyJYCjNjc9fTqxx5qb_GRZNmNsc8DE2PPWH_MdQaW-iSVfhWdIO738WKzLfLol5s1sP4rqMsm4UrYiLbFF_rknrAEmjjXweCgmwUCfiLEu7bVIFsecnTG_JTHipUvtiHfdw_RCYn9z1FNAdEeWym3S9MWDaq28BwQApEN0-a7K5Bz7S2HtA-4kade4ZNT5MKit3uQoSB6REjSPyDOKxN97bSsEOSISBeAYtsyToag_oqA_WIg-2H_LpasBHsHQ0RkuPwHwVsP1qC-W9V2YnKlBEGIBWwlttzpeS9V3BFao2qyKj8JKiFsr5WzTIyIwXTX6j4tDHyh5WkoBLakxewXzTM9Uk2oatzT1GfqMCnSB1jz29Ya6qEhuRTvGGZNFMUaKxcoQzob1YCRvVaxLZN9OjyezKppWzt3i8EK60ljpDybuH67QQgprLv1rWfk47ghTgEJMxYMobfatKgnCFJHkjh60LX3ZS4dl1v6HqlEMvCt1F7VQ68x1dGSQwLQNterskKr_3F9At3ocFDb8pxyqNqRg8UA0qH5BR1_wySkKdMyIUczhI4BuYzHb2rI00Hc5dJQT6QxgAh7yafZYcaBKMDTlShvOsaiRh6UK020WsFWee4M7wIVzCaeco_Qu2Jlhkm89LAg6VE2ffxfOyhYuDISzww_12Mc7akwiHmBq7WUEAJD0BY2SP9T7YtO-nJ6mFUNJpIsAyWb0FHXJ-oki58GbuKiY39GFWW8-IZSqtN3zeyRakfgOPaKyOO39I6nLRdd81wUu6A2hjpnfiouuVQE1DChtZMi8LacU_wIS-YmtPUUnioQq8G9756WCQDx3jivb2hcqDdf_JJyjDUsZPwO_KgC9bpH2htL24DkWSBySnRvj9S2A3_X4P3Don5Q12O6JogTHvLexP_0OAIrIUbaao97Y6UcdjEr6cx6H62IQAfLV0ZSmeM0k4E6SjwwTyDm8h7FkhOYInXwwAOjh4HZngoN7RrCJ_a5lZLbB0k7r0eU84N9OpHKGka1fwDgCDzp5kcpL6UdWWX69WwsUjqYhap7tUIShOc-hmuYg2h3QswTth3f9VwoRpChIqBubfoPDR3Y5d3ml2I-Eu9kTOflH5absM3IAfzO3acUC-H1Rakvy_sL9XrE3do1I9paYtYi5bgs4_Oty19k-4vIC25G20nkcchpsILFUUhB-pgq2_3ZNecFXa6gzd1KVzWYg4fe5M1ZxDkH3gLfCBX5wmUmmI7h2tPiii3juZ6lsuydnCfvAj2AeMpT5dkMhJFGoX0OiIjbevR357nFLpI1tsY03PWV-ziMf8QZ9V_Cfs03JnFVaNiMoFLs60eXJyzpA6IDjcA9GN_rtJPRg71_XX7Zo7V8FdiJ-JaI8hxkclA7bI_HOKdyulPmXHhE6NRaLyIrOQPOrFZf_DhKa1Nmv__3rY-Yk2L149LFeqgaMTBoeuT9WSv3NARLI_hvFHjE9x7Tvj6SX7uqN5NbD6SkHrDYMekiTZtzhxyGsm8NMLdIaVOuRd8J4F_U95W4f6QWtcGIJHmmMDY5dw0spMdwy8gxVq6ZjXQfRN5E-bywLh2L7j9zXz3IggcJwWciGIUfUTwqdQqhFewpSuYrWxcr2DmCEZhg7LjaaXXvkD13Tr3stY-UfykjQ6uf3F9rb_5_MUB59FiRVkV9KMQu92nx64Yczd4tgXvRk2SaG7Y98CLHNPWN2ADXWvluqGBtekFxXHja1sqnKfbir6f3ocCFNBiIwuPNL50_vGScPvuDZgoSJeD8bBD5cUEWvsBEyvTaqk5Mr0VGzLkxWbQiRS9fM0uM7Dxj9pnWSwlFRB5T0arUVEtvhzR2MucU4AbMkczSnTcXKJLSTY5eUNNv_g_sZsit6BKLpx7qiZoVRRwcuHjSwWM6ZmiuH0F0ixUxsECRM4GfaGgy6VzHAJicvLl8VkXtvpnWXoEPrE4bwWg9NIuuw4125bKwCpaou6VeNK3n3bWScMvJXPXwuRAnNCodsvE8wYyFObsCryd4MkmY62swXInEEWe0DUx5jq4riZfF0jlsw6o2WCbiCTsicrSXlsvxjEeWbp8RDPqg6S5F4O68EPM3FCvL81Sa00oZrANPqBpSgEP5UOv0M5iM3rtmr7OcS_Y4wFMPRBQNf38U_yDmejE4m-I4RAWZIkPaUCx9MmZlrFYA81zEzOHWPDs3xqA3xpFjBVC23yr6V_-wBixi_ubqd3MWUnn7rxSJV5tI_U9QNnzkdsQoFfnmR-dMQi8HlBwLW1FM6ElxNim903tDuUya8th6YpCVuCbDoJBiyrrw0-tVxmVd9xHG81eerF-hd9-nKy7EHcGVClizAC9LyEODyNHgn6Un6_3iJ2OUe8p7fByx7Z4Z9rCCXBw7oIeGfQMqR8sLHNONlhIdLnfTnHrM0uuMgEel3gJUHQhMF3U1Ip56Cxe1TJHR8KJVfjTdhYu-q-9enCBvByCk-HEAIlbpTqUzoWnBAmy5_JiPguPNQfbu9DWrOJpd4EKYrlaIlDlyBScD0IfZdZIpSrY-14SlvX-Y3k8MhmSp1_Uhtf6dVPW6YiwuBt6f-ldEgOyKF_WiJoQrVbrrr17orrvFTwgNhuc6Q0NmXwWhG8XcqrTMmyQ130t6oLs4Kkv_9BBSBM6fHXZ0zamfXXfC4cF3katA6RrL50hcIqxz3rRdW0eiOV2baIm2Qp0XA7kYDI4LK3A3g_pDadj-MYZLRY5awI7rLHEcdqf0BZoERYm0XF5GAEKV1_X49s_F0GuQJV8F5-9Wh0Sca_Gyfd1wTTq95B30f4NbsS07kZ-rZVxA7N8-gkDjCrtlEy_vndrmTZg35x8IToBvxMEr3AaMH-Qv15_mECCAhfOZ3ttt3PYjSpt4sTyKw-6EdNEOEXuzTpAMJi_Fi0l78KK1m6Ndhw0xRHsMQ1h5WfV5KAvyuyoJ9T4Wwjpq5PdNL97quM2Df7qtKMMqfrCxEYhdthOSMBLXZxBWnlW4R4xdWhHzWfYe_1ISzgw_ebO6WBRGOiz4qHKtYkhb5spIzLwTkvDPQinm_DXZm88hSCiCSzLPNcudQTaGaDcIxEL_Ow5TxCeiXgMWyuh8lf2_eWQFZxrYwT2hENAXC-pnX5tEwWZTAuqHdDLwxYRufX8Zc-EDjl9kYEBjSeNlJFLFSCleYrsMTTLNyX7N9UI8kNb4pQuYbL7vv57xOwYb2Zdbq_CN0_L3sIeKPARx8dmjRKyiiBcrewuxmn1bwKtjDcqf8_EekXqTRwdC4es8-z5n92zsjZkVIHRdt6-zKKUWzmnZhWSaiRrmgRxTZEWt8RUxobklQeSE8CbCNA3dg5apJRtW4ej2RyvQhm4bPIC7VhdSM9Z-P3KWctQvqZ3HtwV5ZLbUAepeAXp4A8RCYioPNE0AS968qb1hJ8EIFma7-6A6qDMwF495izC05_R9k1SKH-u_1XemDzljKHTgezNbKZ5qZWaiLko3qwJUdUcqwQ4z7PprLDy1hEnmvPHV9rJwSKBHLLt8Fg6dGWvbPJfes4q4bdlQFQcyhDqbkza8QmjfSOBqcSF5JXpp6IE2dtmU-G-r-y6Zht-PXfBRZyXC3yEoY1kcFXCAixL0Pi5ysI8tpcS27WiP6yfFhjrwfg51EEsbx61dAVQcxICFWxuFmzquvVZSF8VD9TcuqcT3CtJbHre1q-2ggVMwjxrGDrHRlZvtKsQI34Jc9lRVJytGaymlBLj3EbVKTFMX70t-AmvhVaVfHjjcXjsLEHiac922HMXSLhsqdKLf4vQO4b8UmzcJmMERop94FBpdMMwe7gfHpoo7gyXUzx9Vio3l_I3O6vqv_Hs3ZaJulkymLO0WPdl8-GUFrCbeFT-KZTZeAkirQjwxE5AX80iYUn_4uzF4iojSygccDCodHPSS-UfPC2nRjqSrjgfOO7lKhZIcsMX5QjQj3xlpXsMqK7iFT8iAgnJtOiFlWMTa4QrUNG4MYavFpprReVeYsCwDLydT1MOeBkTbvO0rbvPA734qON9E6sBrQNDE8Ic8_tgoBaA9vYqQLv7mwi16a5TzUT9tKnkD_CCrC6Np-fqBPLjK2slIn_WdjNFx5OcKgqh-A072Q2WG5unECVHWIf01ZapIoKibeEBBbrTrV2oM4-hCowqOQmJ4px8fQn6-_eJgv3N0Vanh-wcndfuGfoMymz_8YSkj0SypbKbCiE-tgzGVYEse29jkD1Ki6MEbS1yN3hD5dmuUJYgFpeSIBZ7WA-wNnadmXCKgOqm2P4XD_pdzA6EE_z55Ny2gisYG9OE5LQmAYcOBn8m6jkEzIEV9B042YCpjPHfDpMbt9pQJr-wohxs__GVL_PaQAD0T7EFirAG03oxvrarwDd3B4SzwvaQpfSMtlXmsCpTpu7iGKwmbKE3IfDyQWFVSLmRnguyPyYiX6NDjg-qxJhXbofmzcTCS-auBxZ0gxuWPPc96YM-wYtg_AFUwsCsHfGOXSZuXc2WICQ2TsAKO3h3Rh_LRvT_inQkZjRA3giff0lQ-3LbieUOqkvsl_vVdlhUQNkY4Rpt-GQybgrosCgNR4er-xvX3wtOs66x6ypxDrc5jmx0eBspd6rSLUp_WdWWEwpnFqeVQ5qEMVgSASu1bSfQalRAj8l80XB3GXOoI9NBXUybexnzQ8V2Tispt_fYcn-lM7kkl_tq5PsrccPASB7oJui_p6HXoZ00KB-wtdlPfoNbOukZYoUCb18mR4nDp8aHYW3Jin989ZD9scpogMkWWsfCecZBeKEkt5CEshGmYzgflycbOC6g992nCEjlz-HRrC_XK1gbQ3MU_XickPdtmI6eaXqcJc6X8jWoJRboiMxExdwDuDlcjTF5cQy8TZ3-3HxqgGpSCd3elasnFYymvq57J_hF351AKrayflMEzoWntRRyQ5kTl6Mk4mUwlJM_peFisFb1q5SFYFd5Nm7EipVObkSfEHZJVdqZ5wSfherbm8lFTjVW_mPaexNHIyb9jUolk7BdimrPCmXzTzWc4GVX2VNSAaGks9SKi2DTPAIBGcuqs1i5uvzROrlWi6pSxxk_HBlAbKOz17cX4y2w3puLfTFV0B9NkOiC165sia4Mf0sdAo71lzgJhIpt5VgdwF6mHDFC-ex1IelcxV_agQoqxQ0iNgi_51QDBUsNNjyYB7VIX_WEwoNFfrdM6ImuGMimIMtWiL63glDbtOiAxZZ36QZltjp4bguzaXSbEX9crxsqE2PbY-YekI3_6aqbp0bqjh3hYVXW5gc1B7gtQqU_y96IBhDCYc-KfuXN-A8ovzIWHRWQXdENZ8QSJX4vWGFSG3ywIu9q4I4JPgMnVrdnQSgjooc7T0bdZ2_AXHlKX1RnY-FR-3Jtv5OtHQvnxJupIiBkBeq0vsyVyV6U2orczf6-zuy68ySbl1V9t8qi5fYkYhdAI09vsGegivSRSl6fjd6usG3hEdmw7faISkR_GL9TP9yY2tASjerLtnuERIOc4hJJP9M3KXn-H2U4lUtWseXeMuxWwZOOqopjA9QH_CBoLEqY_AjqC3gzskESbTwobOtephYwSSCkfraUc501B9dlCqO2QecWDtI4OlhqH-ZIVmvq5X8nmWh3gZhpbfSJkUDK3GJED1B0XRK_3afL2VEfWXHrgceqNwMq0fELR7YyM98G0M6V36J_KHkh8eRQei2qD2uet4IBz4TVhSxGTllPMm0SlOu2Yd61To507mgEwWyT87FQFUj3-fPrwSD_AqUrd-4qGUGaIaj2DfsC5Jw3dwBxEv0SyaFeRTTIGM5PkBb0PyrxOUijkzobMMXOyXQVmu1gYY6ymwsRGYewBMpqI_a0YlQnh9XD8eMexpQMk8OaCFY995fOykKl1WyIWKWbLQz9qXoktTjGL6a4_NfgXSe4HgQJxfEvRtBJHdjVieuKkN6cXRXvalqUvwu2ExEurEFA1c51VYfKK47eJR3XmeGrunKP0nf8xFmMOhH3fEuNawztNzkz3belG8e77f95vuykQomyk94t5zWfjVF4HCsRO9J3H54fysNlqJ9qPzqOZpB8wlGu218KcjusnbQ89wBR9Y1G_sh_6IoInSFh363XeXIknX2sF_pGifn_Gzhs4V-8JjKiwRUxVPhPkDhgBZxRUDp8rzB7drwhvjpdBWUtqM5S7-XfQ9cG2DQndjjS42CndTeTlyX82vjDsvlpZuQGIe5tcg2zAgXfQKV71tjuAfaQXdQXHbMbZ7l4DdJ9iA5V-UITJKLTLYifHi61GH7yhtieuHO9OQMeyBrCqbMdLZsEZH-riwRYIuMQEEsSiLjCXOXpwrWkReC-HCE5IaxwOyjnRJ5q2FU-1HBtIKxfPHqDmNkGUC6W6SJR44_KJLmRFR3pwBtNhTrLwTgN5yFIulcjFb8VV9zGKS5YDjUWW43zkgzc8_TUr4tCKpoWfCd1JUgwFTfFl9AqOe1EGxuSCx6_TYEy2SiKcrU02mrVHh-VBWIOFhR3bdLIP8dRQX52-_C6TuwKDmD_gbn2BKtL7bVA2Eb_NTw9RoxeeJsKj4hTVIQP1IKDPRZiqD60rp9o3Lg3UTZXQnyAGDjK7SgdDqX66N1GqOfY9xgOZLYFQSDHi9cGke7Y2knA57lMz__UZXDAdHkHm_IQJnzVBOac9UqpN5foH87YmeU-UDrX90Yr9p0fRKG4khnfqpx7XtBHnSuO-P0dz1TIkDRyonL8uChU25LOxNx8FCL1BatExRMNvwtTlXNMwl-OY0PLbOcLhVVKSMmmGjTAjrC_addhpKo9_zNo247zeJ6vwFZbJseQiBHYKsJDl0l2ziM5XK2asB8UNQaFxuZ79bal-rjNq32hh1zrgbHReYTyzYiwuKQYE8Qw0_Tg261lA7m9J8trkd1ly7bIZ8PnFmtMqCnR_k0eT0PjEjrl2aFTitXf-sQE-KpvFAYqGgwpEkIA4SL5NY2h0ELBA5lP9U2Q95nr3hfiIohh93rKyXm00zcdD8k2i-_2bJ7GSHpNBU2UPlAZ6IgfcoBMHzYjlXtEBSYxp9F2H8tmbWM-B-OVn-EU1QZ3B3mguEPOdcVbHgJusrpML9YxEG-r3DuQwsxSjBSlWkcq__iRoL6NI_TN6zkwxZ6qcsI4WdRrlyhy2ItGfsoz9l7voFwNfGPIzAslzDvvY3KwUwickEFlEAZsZHqEJ7HYtIdZReXukytZL5r2aqFzlzNhzQNF4sbdfe6YFt0esh4a7tGvfYz3-YnmibwiaA_SDNMDDh1jybCcYdn5ekUvJX_QTebasFRCVQsFMLJTZ_Oi6iglCr3-bayBv_zlqF-k9oS-NO4op3HyM2XrtnMedwfD3p3wxlGUavnx_Mf_WUGfuz4zTmDJWFBVWgd92t7eQSHo8bqcUOlTcItkGruN9M1XqY93v8XtkWJy6bXjtK-wlsP_WJPg-15hJRh1cdVTJxbcKre0k7qvj9L-i1lbpRNVp5YdXSCHz-9-kVIEugxGyi1Makc8oh6mV3AAwwWNAJACKX0kkLXVRvsxDZdcXuTpZ9Jg4hj5ADzXSpIIMtqgNokZXX4DYcWSkqqt7N0UpnLq2qfN0LzZS_UeTWyuTjHgtcCfZiP_ss5zBkprDpKBy-CJXDXk5THdrHKncIwLxkBZr4liWwwTVhq5B30Yw3WV62c6IDek7dJ9cgLSn4YNBEcLUiVPM5NbuLC62v8-090A5Bzyt1nWLTOUAaTow9upHdDOI0MFmuTqnCZ0lJ1LD47hiIz3o8OT7L8W1gF_DSj6vwh8Sj_IEq1pcRdwcML7OqsA1FpgMFvNSwARvPkdkqBra53PkIheHoiXO4EX8lvD56VvfYF_uAllbbq8HOrqYXrm53F9lWSQG7jDTipCaGNpKbXSPs2Z7ZSf2PlaqhAP91uvyfIxSOSn4aFadXhyMvJoHIVdKbQ6s7Mm-lqbI3ah_-7nNcWZy1S2T333yeyG2gcoueQn-J80CHc8546LmImvFX7HLEwr9DP-3MOC0s7UVrWr3-EOdJfu3gkzd_DgeaI3PHTw54MYC_-mt3uSJXiAfoih1FV2yO3dMfJBwStYphLUmmYLxbyVqixhcmjXqDd4dVZN8afjZTBujJArsVhjrITNxUvkP4pdjTMXrvrFMgrMT9TyT-yZYnjpb54M9lEHlnqS1cRCxX584uKcXJfvOtcQpR908VsyjHBtzw-FvnAl6FDLBfZ2Q3kjzNENmdE65eBuBGuorQnsNFE31I4hkDnAgquQNzD3js_suE79bK_E5g-4YGA8hphZEcKW6yP5TPV-jbTTIsw2a8kQhoqtZVb6DHuQjg55tI9oUJ4NFXq-Wqc0rRr3vgr7r_6XXGx9TGUKl0yRdMEgNHP0SdA-s0X7RwXrWOwP-I0SOiZrqH088gyhggUT1vKX8XkyT2rbtJWWKvfHsU3y7q8RttRzFmP79kq98pYHagXqCEGCc3j_iOiStw62IVZd7DkGXFrlr55b4tJPNeYiO_GSbAaTZA9vulAaYg4nPQEo0DaguNaeNpcPYtJvJ9JwUfa__3wm4LQc0FJ_PZP8DRHYxOThb3fJAuWA1K2epTTGM76-cat8KQWXVZo-TMEc4IR5DdxdICgSOSHJcs9TEStiGLmYrngbYpyvixSqcxkMJoeDjK43gs8Pv30xR5QH82dp0yRIURIEquLmQpkcjonnozCYPLBxPyb2snGwQNVZihhYgzFAikEBOOUGLjfuGaAbhn2g6vZrheHDpYlslGjRAO5wB1pKD9djUwFWG-ZAOldzp4EIuiXMpOPuzODzlAFqs4PTaonmmEa9VTYwi7o4UaKXxY_Ygr5Nf1ot2NFmX8Vu9Om76tvii-YylLX5MbzRQ9jcRNDDutY74WcXEhVv8mgdh65m8socya67LHN4lur9vCruhFuMMkLJ02tTnxtfVE2a2dQ3jGOrAXqu6UuyHnyMs1hmYvjTnQu8zMUqZJ8lUaOqQADUd8UeD5JK_BWDEsRhIPSoCS7BATpFF-ihoaKboDJjsvu7gD0AVt3Tt0CUwQlT6506P2G7hLNSsY2IH6usx5aj0aNRJRaNudK-1_A7eiY7Ihh6DvUpet-Xp9xE8iebWEoHGcMT5H1oSDr-RDS2karElDcfzKRwCmTDpbvQfu9eNHv-lBzxI8Gy1ZEJIYZ7VhRYubttcIwkrw4DhPzqG6-nlfKnxiiIXGc8YW5rChLFl_W_qbg_sS0UZTwAEKytyzLfXseqa2LfbozmzF1qHFG1Ml-XPSICKS26bmH9kn2_JlR95rv7xANXPjtcaltE5jXo-OyP28xwjQFVBnD4Bj0g6L67tniN4AeY2eLlLE-rzNgM3786-1PyczVijP_bXn74vZB7F7SXTtxgX4LOF39vaCOkAhNYreBWun98wk9JuxsUA5AFrMcHSnLBRSlIvkbJfUwuoWjB-vlnzM9o0lkEW5N23AjQIeq9BqzBgp2WaSJbUsmrnB--Y9XeiqAo844NoS9QhdF0f_91GZaWnKpHA-VSSFH1mtDmi5VXIPQ9Ggo1UO1xXPxz4uafme-Je59QdvpuFxB_p11CoHQ6n8Y8L5vgCiFdbbqTj0nsZg1mg2SZv4kq9P26yi7sI3qq3YRxoFBiAYg3-qVs2tiAiryHZDDAkzd5xg_HdgjRgVpRGbFUG4w5P7uAAwA1CZgi_oIesnUsbTQQ9ByqSnjUzDoAyLGlZRyAtDver5YtRGysN1Q8d6wVRxAgA0vnDVkAAlS4KfwkZKm94klk0ULyBOFYOo2aUquZJ4fBm63Yp3aqsp7iaO5b9724N8s7Csg35Wqncdm1gv1_Wp1qHItAZP3rI2fzmhztrneMDDAlZsmhD_fuyzIe1Y5SuxiDG1LKHa21wiYzAHMRnjjx5k7QqfabBG2KBnqpOOOLVz3M82KpTUT2gCZPS6c4WWfTPMopdcZ5NMybow4B9paghB7iqRELcMP74fLeMsvRt9otiIbo5ti-JyN6sFv-S7vY5Pfvb9625WaiNf2-8g8olLRewWpPF4t_QS0wgOll4nZL8sXQgVGVUF4fl0UuBiENBPbxJFzJYqaKRRpvs3899Ib9KbLt2BXaj3mndRLkrLKYGwGPYsbL21dNbIqei7p1IM0KKLE8JNl5w3rmVmbtf964ffHT7QdzPOSapxoUt3JoyR1ThdIkxJUtZQNTs7bMroSi3mA3gB7TmIMImJvnfMITA8ZKOZSxhrSdnQ43d7-wsk75Q6iQfiS-x-e14dkf8CARtg6LmWiVi5iFPfHO41_ru8LRKu9wdFbWL1Bu2NDsuszck2zWOJp_qqeuwBDpYsPHbOUxD0sNCK2uyI44uft_nmnI6qia_u-_154YymY-LBpHstvnWDjOk0Xf6ohb20hzPszwLNfVmLs7JCYabYNUP1kcakM-kGqI54sqozbOsaGkdViPx0v66lhiGsaTjQIZV3fuR_eyifWY6T4YtC37qINjprjP_G0LAkB9hpROQcTfnzC8Jy00dvm2Dv3KjZKweTCnz-L5izqSNCTHbVtQAjvgPpwQq_iIJykGCWnJEMmqGGIjgjHgqH4T4KzWg5nU4NHW0VA0okzWWWAhB7Q1IK1szTpf1b8C7pyGASkBgGEF_TFew-COiIHtt6YK4iW26uz43FNRyp9qOvZzI_imYAu2s49v3XE_NGDRgsvzRLI1ZYutxdRNus7smePfbNQ9nusfZ3odMVjL8ftUybEjUOWKBpHQcEdFik5MB9bZEdscvVvUM76Wc_YtOdG1ZtHavoOhFTorZHAAtmRkrCVkWJWO3vcg0Jfz65uyS8M4iEtKCzgMohW0aeSpS2ARmgdWySZshCkb94xos9HEgvy7vjFodYclLS7kd0Lzj41clXSU-ky02nHzuN32bYswqpLKDM92RXXC-jSgyYzZ1p80C_v7rLB-sWih7QpP6_dILxotgg1zUr25XcM9qS4HwUIM87nfJh3yX0mFMtKB9IZaUyoYjA8LHjeUrz4FJhfIhAQOIhQlA7e1d3APsNXDp7FEacbAAYhsNpJDpFrSHwEwFpOyQT8uTwGcIzBdR4ZHz-4A3kJVTB_1DgVRrLcpzfalHOXYVRitGsjX-Oi6VLXjUrt2aa7h676mfrNMmR2IZuDMApM4DGgv8A4y4lW7_TOKKnkX83W2bafCQ5y39TgSKcOIvT3i01V-oaLJAW7NLnDO2kenQr7gUILYmVxudE474i0bxN2MVjomrRJ8x0OfPU9f_L3uwie24eGi_d51198W6CbcNceZgiuc4-R7aKz9MHIiTyOniWycjvA3joBxBcCIBvrdewjwSDPwO3Ul2A3qc7vVJRrklPgnkC7JgteP3h6HGrhjrUFykmr4cRmu8BfcTGYUwZTt6LT037aHWYY4I8hj5uBiaKLxn6JvxeiIwNrBt-Z6EYtidLe04i4JhmttmZNvgX1nVpcv5o9_CWsXCcRhOLeDuUzzxPpJypPIIWBiTMNCFnZr4PLlfaPSQ_sXO5tqtAFNJM4pSqpMZTY7BZyAZpJGfjY0GP6ZNiG2gRpSIRF2wB-tK7cChWax6XdL1ifGxDUKXAoR_zY1yNKjFGkuZAHe1yfoicw2G6CD5vuug3ocaxIKOT381nBwullIzTvcDc_HY4TeG4ML07jNzw6bb7Az8T_q3PrSFg0SZIIz4f4DqnvIg8a8lxyYaDvmd_IlHdutKgYUXm78xCvPY2uWJDEwX19VCvwYg4CZVCq-kk76ik_YS3Hnmc-ImYuvRB5krW859_9uj8tN8m3V4EuxR2gav9q6dWGVG8cwEFDwYC4OpKzp-XapSuA9KfUrLEWGdZDNRLt1ZdwKrbm1Vb892TwXCUo0ISttXGkfiBQqjzpCK0SYA8k3sSchuhJZjzZB5U1aLGu9orf5DdSqsgp7j_YHPlFF1kPOa1dLQvNgNZAuzK66cKNogLv4bABE5lEuus47tDJFCIcNYeyjDlzyMEJlgxbRJgT6PSx_m7WJm1gtmiq-AfuClBHcPVbNi-irElI-eR-LK-nfewpqsHz6-LPLBsSBEjuN9uFawGqUc3xsx1dBz04uq6Kn6LfL2YWxKXQQKkZuOLfpCbxOIagmIVjEMEIb9A37b4zI4GnuU8FY84ESDxxAOueyLcnZ8Tjh4ihqEYgeUVE_1B8qRigxB7hAoo9wg40w7Ud5zeublskH1x_9aUFe4hXDOeRgOKvf5CBjrNzLUgYLrEeYqChtDwTI23NGqYm71jkV8ALCBO1X0XF8lBjGVqEBnXqDVy7BLjjeCgw0SPT5jozWBUufv_KySxrU-zTNdriLXMLQLTcMRRb1U1BxT9XMadhKtIA5-US5ASco97911pmWgaKy8fbfFnDD7FASbBnE5ktRNXdpPOsDWNh9pGZ3Lcw5EGzNxBcLRXCt-EHwn2qqkoIFR84I7IzgTcNMXTWvXq3rRerCyw5H8zqfwn8hwB_-JDh3IgBmA_oBdqd8MOVjgl0l3tnQkLq0pfUs8OkkupCuBRaclQpeG4KOX6o_fOjxdzGqyQkmEEVqjRSnZadx8zsAjg3hnFmXcPLOIxwTmX1cYZ7ik6oRwlox3epBHqnCofmK6-szW-vnQxdjycyHM7J4qeD67qji_psrZ-0f3kmIDmaojnvZaT-Pfx8bcgo_PnX2qEUJnk8skCpevhAHdxNUNXuZzZ5fds-3r3yspTWIpTF9nbTpPuiJRfZyYi8lY1a05VGyN8x3wX3hvPGSV93QhXpRpjzogoeMoGsRw57Ew8cwjph3e1tb0wJHy2tln8518qveWc94gqmskfKjoSwCyx0a-5zQy0ETXuxrIdeK9Ds_mWR24dwMH8DXMguuqhUTI24G_0dAoRVo_jS421Q6C_kCY4cE6p-guygRbPJHZKi-0dVz6QYkewNWQ-hdtNcDlN6A3ZW8eHmVBmBA6XEX5ByXxGbpA6hbtAeUkX6_6gR1lsrG5Jr89JQHVFvCS2NTbQtMhjPM1vFoelK6T92mgO0uGewNoHk75UQoDo8CRBQGvZlzlBvFK219OnWkKEdSWojLlyEjzrU8RkJdOGQQ-rdPvY8SYiCTGTDgHtsE2ePIlEjwDUvu3cOIfxzHTPLNpDOAIymSp_mkBwB3vQiLcgBgzfQZDceYL8puZguJ20Cx4rHG1mXkfH12QDGUvor3VLl8lcYqWxk7nM-TrCMYw2o2aXxQxBHWp8idtzYlKV0C05B9s2bnwsfd888m5uj_36qCtPMUjrGVKXGUzfUwOynSk-bXpoXf6dGOGy3n4l3Nxef9nWZYCEtUFSgtEZP4giS8xoo-N9RdHpaXIM9Mvi2sMeUyRLIkeRv-YuNxtTwdAWP5IZXZyTFHgga_lmp5DKef_FkRj9zad6A158GeVvK1H_yq3d_hUEKqrlzA1l0RzxdHk2T7LJsfxabgtOmdexKK3zu5ZiY1r8CGUEPvXDAL89CQW4fQ0rlAOrWjN_HPNS-keJ6tyUjOhs4YKEFXEAJYNOvyOM9frGH54HW3CjBLw2bK7-rP-C7zsylOnc8b8ZRDzOEFz-dSNwlONMBbRJ4rmAnJecoKjGU48Lxxpy7T3hMLVu-NO0ZCFJWQby4MsMSOiCYOz199vGwJkIUX8y0Xde0zIBteuLwY3jQiuzjoVc617fGGKyvzXhpmL-rIAq0I6MRLsGU3ooSTILNhRdvzj1d0XPhqFFevTI3Dtb3gNdLD3ZkmJAmMj6CKyRcVigzqkkRTwSAwexlI0wEvysPWklo7Dd9ZpjvS7LbSDdKDwo3AZJUBC8b1DxtYXFREoauFm6jWPJeTVHNeht_2wAtL6ZglEAzAEBXktWopIF_R3pLuRWrVhV9RMFSEEEDVNkFj0xTTdPXqar8EcjKBsHhCnDQEdnxLjHNddlZ0bcrZDDoGt5DXWNaW4Cne4RkEIo0c-11UTv4bYWAiO8n7cxmtkT9GECYjf0CfyBF-Z-aFRcjAdOA1nWMvdQrAaTVpMYs1xcmWD_GbfhHCL6dF5E5CZSZJFcGiVbNbJaoGUALOIONixOOFdDAumPOSS0pb2EjwRCOvoDx1eSP2TZthOj1G9PO1GKVHobSpb7fD2Sbk6ntUYAGOL8JcPAayJC4YAzFsDlEkWieQBTGEjMoskbVujKYGlFxYzLcQvH78kZ6BEtsP7Tp-7j3r-V-Qka077-RqIDs2SQXUMwtFmrrwD8LPAiFZ2UcGcK0LQzwY7Waug7bdR22eR0CXUsEOGi8fL0KMXD6VnEK5ABfQ_1Iu2dMPmoWlIrQn_bB0bk4XR8IN7s9mEYkAzq7TvLHzi7w0J05e9PKoZpT0f6dwOjIHJNfOqlKJyTvjjouAahOphFn5-jjEr4eSA4aOs11lOh1pj2x9AuilMt42Bo5vq3rm-8k42kZgxZEG1IxGZ90FW-tdKnkOwD5ttIfyWrgEpw5ymq6fb_iuR_LlPoUKe7P_zvGAevkoTc7qMqzrQKw91tdY6VlEaWuuSXQBJXbaT80ajskSTb2dACv2oDrEpvA8TgXSRI5pxSMBYrHGVEOFFGfSwcgMR-NcX4EPJ5iVuiLPf7Iq3Nru-Kph4B9qafj-lHlMaqeHeE6Pa6DLOse3CIrad2jEqjnCwBQ5H1HHsT9nop9JLkVKrO472E7mxsNNge2umTVGaLSiPTmnyt6Pa1hm_Giuw65HFMO3X-PFpUD9kR5TtPkd4pRwXkQ5vLc7MnK4xx1uK-E1B_wGa-1-27WnH0Bh3ARIZ7OxC95xVP3ReoooeouKPY1e1iDUQXeO_mU56WPbm8zumjaT5DzI5XUIbyrECTrUkhN7pmmFUiuhvKO4M1hPvR42RVJmK5R1QyLJxw3KBbSQN9EoC8H3-TrJYYPn_lJQ_jRbJpjOH721cWm5AQu9m84h4bf0fkKiB4YE4FHfaP9s4A9GIImARynW4kF0CS9l8CCHmcxhX358Upkd5m_2USVJuw2cIc1DhwxfRQTgtJ94UVvbpCWRZUnPbz4gcQ1j7gzaoNGYJ0KaXRmlhzF6dW8m-PvvDZVcmYR6Or0nVBOUx9EWSjKf9L42MHcwk6L8L4E8xdG2u_9MUM1YVlaT1G1UeDWd2ey2S5dzDWqwHATETB4RVNJokrtJL-Cc2noMZO0Cj4z4UzlOmhiLY4YiyUu7BBhGYfxGUuNAm4W3UR_TtiFvr8Urm-YPHpOMtsiVKKSHvLe_JF6wdFSdRl3EoRpA8M6OFUeAUh3snQB4NxaHtJZ_s6eaK3BwYa392FN4WbtwElf6rY4bSp9xTA3OHkWvOKC8PHuaCrnBvzQpFm-RshUlfYAEV1CRpzuXLgZAzEzERo3a57SPYI0YHeMxwNJoqtVZzdfXkR8SP6ZAcqsWd3hVJfe48dkow266UysuJhw4WKKjUEDHfB89SvNxZIprFO7Ja7UJR4F6OSiK3jC3eABoLfkYfmp8GjVGL2kJzJpHxzN7scNGNtdzGUydfKdXEKUlxhcNgc-3HbGlEQdJkHX1uwGZZcvD7YM_5hlHBfUD0N41W2TYaCQx2mZkwf-pKMZ9jJ5hRuw7Y9FmxmfEsDDFlLG_Z6hO1ZuxJdADrX9gtXkZ0_C4CntPIJLmwUXsua7lDTr9CZfwkE4VLlnkJB8LzDmfurlRg7-K9V-pDoDZkx3-Ljj0JIgAP2LlWEe4lVqFRHQ8jgkY9NTbxFfFP2HJGA0sxAE8cD9Zkwv0Acl-z_5gmp4VYWUc4x8vQ_H_v1OuS_JMu7SEf5bKxFXFy-Z6lXVLHWONMeKfgTu33lw5M_PTWJ2YQPHzhj3wBuiaJY9TBg61HG-PVUtha5IJU-RUjtpufLHhMOQ0haYq_TSVWG0a0L4Om5RGvMC1LSaOio8w5GnamUgxDqBqPvDXHiNo_C5hb1jnaGy6q6JHTrmAJXjSjRbaiEXHOZNhpn2M5ud5npNxBzDFVbYCI-P83WBVrRggorWH4J4Rl7fx5UXMCo69-gyaC70bxeMu0fOfScr6XLTSdQsFYCl668Sep-ejYo5S5E9Tdm-LH0j6XxiBYCFEWwb_ATf-aGKkbbHR-0pVAQhE3sGe6-sVe3Aa5wIXyx-yq6T05rAkhZ8usKqt342TfLfPbHPACcDWmR-f5gdGdxFlJioZxi35bPTOUpClOYfr0Xu-gBCBjLYB6iMuXhCH6ALTBoJS2Lotu5SBQljHX4dcYem4J1ISMOyDmP1Lj45BHeKWRiHs999hHxTl_U7IpTcvNhfuFfMsvhio8brLk4qGHFzk-FzagWiJwqMhDKPaQjV6uSfFCwliRnoGlFC--xjFSJP4Jzurm_nULLVJKdWXZQVEcOz0QTZ8c8H8it722Jr-1e1F0Sz8C8LcZDUt0rzlalcbgUUzq3YKMdlyTXrv2Z0Xly9Mpa4HhW6V7O1mFWq9p5C3YzW-6IFoSX2Igmygg54lQQKwai3S6pGf8RdLYw8-fqbFbaYCWemI9AOJ2FkhpqT-UA8eFdddCytfNf5p4M4CC8Vf9So-AcamP0fJtz16vfHmHNfaAvCtW_7OS3Ln2thgyPejqxl3fBREfR7zA9Dji47r-d7NQm806wVLh8t5Nd3WnKNHVFztn7h_B9NWdjFrc0JSsj00N3E1aAs8NHg-DOv_jXyEr116126eqFId9LCYY0C9KaZAyUwnqU-0u1VrOozlDmNZDGMm388TH07kZxKj9VEoIuiwO_fEiCYhSHOs26AjYkxngLCTCgJ3WWeHwdrocKDcFkr8NWE-Lv21QvCD9oL6yc78pc71GFV4xHuGmqbgy-AgwIMBhqR6ZCtySwJBPEOc8Q-8FAW0k2gDkrsFe6FJIpj3Uirfob7e0CSmQUDUElsgc2Q5TdTqITijRJWuJnWq1_2ChYcQNAw6PjlIn6utL_qfImbGTxpxTG0RcG63I-a7My9wvjLZUf9023l5VrLOXJcImgI8AQHNx47ODRXWwCLVTSrhH55lXVF-t9AtGyVWkaZZm31U0IAVY76_3oiu7FoZHphqvhWarFwCu2eBO1vu8RZBy2iHZVi0JKd6rbCRbnNxDJyBBNDUub3KymU54h3OWJBt84KNjrUTFl6ctTF6E1v5SuX4BubUtSqf2DywtzPTAMZJsa9d_htd4R9rDQuEFTgel7PReOWm_E2hKNsJ3sksIDI1QC6lRrQQoVOV_HnP5HmwdibVk9ONdfJdo1Igehx103dBW2cg-xWNFQDP_YoNWEzR_FF1Toa7c6nRTYyX-kHv1nGQb1J2DVBGQGP2ALrXqhk17U9W3LhG3Do0Hir9m958CA0A8Eaq0lttEIxHOIimxo_z5fMIIekQhY09VxvBh2bYaFgiylFV-YkNPrMZFlK8sTxTBKbtT__47UPa6XUwjxUoenarbrZVlRsbcqYSn0gOSXd1TdR2epkpt04IrNJSDecDaBp-SxDmSPCZRah5CuSZG2kTSnnuXYTYmQB3OgLMl9b5iJnSDw5jMrBoNBou9ocX_COc1Gq5JqwzWn5HHzIunoo1B4iG9OQnqfBtaoOQN06vf0AgiEt0nH0yS5xieTG926tMEoRmdJXewyQDiTftwpzejBRyaIMVlK2bM_EQfj8kV068Yw4RCNYEPZND-vyfK7Z8vGcHY3hVRdmiHqQ7JPItqWE_jg9VausCNWckzKUsoyuQMvWlHndHeFjSo0KxigrjbyLI3mF_T_ELNdFNA4aSY5jvxHcF9PW_rrC_EUE-2G0Ububt51F7kx6lKF5EMWo2zNJPS-K2w7Jrv5-tBoRI9uKzDxe3JpURq2xNhc2uOB9JHVGhqC8aaabLfNFRdWVQBq141ObXPXb1JMnZSBjtVwQ5o1kMR-kxq4v1jGd1gWbVv5X5cw27asFFAnpLT8SxuIB8GPMdP4pdyn628nj9PxtsncVEieWnjpQEZuamiEByoNon8F7FmxZ7lDHYiVCtsCf0X1VolE57v20VfvA3Xxh2Lkjx3fqlgANG5WPHMCYwC6htIkg9wH8asv2QnXDjt9534A99Q9gXTDAMs-r42kPg3EyGriy43KTQyOlnmOXIzNA3ytwt6rihS0yHLRaZkI_Lp5y5BF0iYz2zkk1LO3VnqTN-EQ86ueXtc0bupb_PrWW_MDGf_y5nzZeAc6MbGqVBsxeLei-i7eYFHWSfaAvW6x88g1kNCN5lXC7WDw16ASf8xdN_vsEA-BbyWhXpBKnYyLsBkSBaGfGySaUR71BLlP_RvcutUXAetWnEZxUVd-gRLiIyqL7gcZR0UY2AaNNtY9OuPWEtig__MXrR7LOUSVkf6d_lz9dMbiW91SLrvT0uKjgLqokkbmF9Clo1LYsbQj7kZ4v6wqr70WyqwnZ1-CsKK-TdnKokDWlhIAkc-jNwiuQZzDn0HIjt7jpTnX6c-incwFYBewxJ9nKeUqsL0L9Y5r4GHdJICFJm14XMFY-IfNqjN-UVStduQAtWTftLZmie2f0reU7APUDwaa8MeoP9lqhKKC2bpgusEWr4JkoykrWsgSRz25gkarGWWbCxbp4VI5t0RIfaFF_u8NAye7SUYTAHktNNeaSpVNhFczR4FK7M7S544K6ESpnw6evgAphiAxnzan1F-9v3_HFvi9ZkRui9quT7ZmrotA0_kCRCGCA8tLR4rzQIcDSHLqwrPuqUsvwT56NuJdjPZqhIvyl-5QKFz5IG1ZZsajbXj_rpp7Eyf_1Fx_DOXquxhBl8O-Zzwur__32yuBsz7yuD6005Y_9lC1QCq2qSkPCay52hTE_PIN5K3klZR-3cUyKAgwKW79AU-CMUNbSAjUcwIw7_Hy0V2fqHBZIaJvIVi2sQHlnFq0DynxHIthliYN7mG8TEO0YHO3WLm9ikpux4oXniTWbSeB4PQPwSNC7ui43TzewTudr4sfXgl2MgN3unf8g-kUO8QfKJxBQo1DdN7o3EjRQq9onC4pRURBJCon5WTTLObnZ0pwZsQyW86CLh1xsAtxPWvaG-Tbbt8t5EJD117WZtZcdqutZSTeu2iaxo-_WZdbzPW1eTX6a7_j2eEufYXvPuHYFiIsq9lXSUfBTf2KhA6mIS_RPd9qqJrfIEOxqXnJxpQA9xHS0mMP_OkGgRhXGxzHNiC0PwXFZWEzbczFFJVWhWOt_ybEEp2_atAm-slYurbwmm1AuNSmwrIb9zJ6ixheuKvlgzjWcvofk5GS1-q33Bouxsz3-3kv4L_Dj5Exy6SMidRLBl0vpC5lZYJMJE47b6jgMVwaeMeEu70nNImrwC1sROZKX-R7W2rVSuc4GnAuLwOI7yz_sZsIhaskQFEkbGybpwDWxmkWtql0AZZW9Qz0pnR5yatGRoiXoneN5Wg8jBMgUhRj1wMlPtL8MqywFxo43T2OagfJ5HNJ0YcbojW_crx33YDwZrWgtP4NbZ1QnYXLLGTOysf5FNplwg3ykYqi0_7GscA0qui_Pinj8ZP7D85JPFXAbBUJsG0c0yJVa7SiXkmukjL5tO9B3f8HTsY_fF-Sw7b9F9t9AY4-O7IwmhPWM8Sv4uPQwU1vDp24UkpS83avpFay2E441j19N_coM9bFjOpwIDswxEEwdXheO4-DT_ijjQZBIBRvpOxcqXNYKYsRsCuRWpUx2QF9Gq5CL5mQVcG8E0Gl72VCqB2_isP-LexQga22NvgUp9RiBfftr4wMqCh_uIaNZAq16YQFehzMHPuKWBnYnuLRLZ1A5XAbqRaSSw5GIPdnGGQ-UxksChzYDov74WTOgz9FJT1d46egwqUiAJHuCeVJR_WYSMLcQS_weGvhhD010HxhdP9F4-GkCSRqLWcpGmamgBfwjvFYHQ0d586Wo0ldGR8jK17LlnfKD5CpY6DZ8yIGyQ2t4D2X_PXQMzyUukUXkseyWlCBxQYqT81CgU26hITLsiheNSale9BPIf0S8J8J4ak9xWW2VodEtS_VZ0s8gJOiGqtfMcOfO_1oIasGAlqZOmo12iIikD6GljxX6zNBJfjYrtZ0EJHn6rpiEp3Q1ot2_cp1I1Rot3EI3K3JSU4yGen_PW0gbFRUb0snxskMGUJc77DpJJzH6HdaDI5DvVJPglSjU60ejWNioVVYTbh9VwbX4VL5zV13TuvqNAFXwSXqkizx_tALl3sXlBTFy6TMCX2DaLBM8rh6RV8BxSWqVxC3giYHGkPOCmWc9dbFiZ9vI9JPfb-499J7lGmB30p_8iO7j6IaZd6bWRADkJBDB5CaogXWZHS5oW1lgnsFEkc_PdflE3srYOqtqLGkc6ZIvAX8wm117--nqimqZbRxMd5AsixhWUXEBQq-zxYidps0gV1Y0mJ_UEkzY78B0-WL-ZqLh_vuErAViKt-Upx9ZRRxwzwTvLL0-XPOgD0xE-ZEZP5tNcfcja7YRos4xG5D0NdMhzntyjKa5DOExDkaZh5JFs3OfDBdgjRAO1dzDk_a5FgPmf33BTYHQXBA0wnhZA6jugqavQM9vACLcI1HO3IvQMAT_VO_qdOBAzZ97eNrxO6Vc7Ny5cYUK1XuGvDPZ0QtabvE7mIQ9muFdd2UMV4UJyrj2zanKlcmXTCrznpE_ug7fW3UPELLnHc9_Lvxm_T6t-9ai0FBUpwarLn41UUe3HUGml74MOfiQOcnOkJv93dMJxqROh6-pUILrlv_nU1937maWiMoI4k_wl_xyBvcLoUX6KWqUVyfxd6YkitxzvpTB0m2v-yzYFI1Ok35vOeAlQxL5HH7xIXpUXbF02EuerVMMV8CwacEPw1vcqIIXjbZd5tsBiLrvvGJXthBZD5sBE3uzFfyl635CAGANucrIcwLjj-1GCnFX_wTMWrkhcKAbm2AsccRSEkwqGmZKUYl7T4-tISz0RNTon1fi3ipzxb8nyjLsu1Upx0pGA8l83S7gN8oAsjmdQzm4ycOaRI8FdATpSz0VBOLn7l08O4GRJA6_h003YdeGYvjqZYqCeiCt5ubdcHb7P3HG4z_S03X6MmUeTHP7Ru4UIiiC1hpc3fC8kAvh9F3qVsU-WUHshC8_goXaPQcdFwmUscY1ZV9hkA0lPewkQn1WrMo3id7oR3oZyh18mt6XdsHtZbLTGjwfGTTLLLqhpbcMvzjRneXBqA1zT1b1Edmmc2GZaCsQBOamd26gKDcjhTYMpgRr3VGguUlgvwsTikbfkbRswAhnr9NbcueqaKoqQc25w8hL4Ph3by7GPCRjHwfBvMzWFyHBi0cpLCFAG4aUBEF3KSdSMdDxp7fB4nuxi8orPqz6u92CrsFuAkWGLJ6jU6lwO6rh5tmz4eE8_j66-jnrSzTajUt1L9RZJ4ucZzmt_sTeHHyKGSoDHB25HRsDi5o0C2eHnBprm3saYbekbhjelkRF5FXm_gwIBZgCKemKMrFAAPzWk89YsMJpB7s_rZDUCyTIB8WoozPxg73Jl7T-Co7z4jMch_ZfL_EusICa2rDLOHt7lxy_5QS7x0w9pS1CG9M4E3ttYOuHK9VU7K1ko8wXJjci8dghUoJVO6-CjBBL-YEUf8oKXOb6yh5ZWB6LNrd_pSE-z_0uwzr29KqGxbUAACRfLDpQxyhX9tfoUWnjTV91-t2SqUPyBLbDn1ZTTZFxjAzQpHyQ4CfVnceeXBCirE3kzn3qDONlwgMIAwvEC2UHUIWOrCY_oV0VqTcmiT3YHoNy5dfEBtLBx9X8MMwYC8JvFLuOAeSCFzCVTEi3ytE7oz33-X4Wk13qSSplHte6OyAEdE1o5jPxQpiUGeaLkvW9S4iCP5dNvuppe638CPjmjB7PYxZHUS-SbaGiGyTipvPYKLOZTjVy1mNW1_ToD1Vzd6sp99hzjEWvvUg-vIDfsKehZ8Mf9RjEzO5IDTR0cNavtoLRnKNahXvZxh_s0AeMtkg3-of9uLKVXwMAczBW8Uj_nRF7_lj4u8L6G5BekXbpa5Z4OTbrr35OBB-BeZG2ryruxdJM836oo_GY7xm9PqLbySueuPEOVFUuxFBaHmPwnEZCP6QeRavRF1Tw96G2WXESltpGeygEe_snxNDnIbvQFzRZjBwNFQKvGfCwWKE6fhzRDaW86sYBl1J0nRl8l9qmbWonAYI0j7CBQuBFEdR3qHbAnOXN4_RyyoglXS3O8MvViKHM7mDdsHCOQWzVpRDaJvMoS9B1-3b5YDVX_qsu3f-Aq1EbODZp6Nr3oaSQ_V1GZJwKAFxi39hXdTjZK-gxczLmHe0ypzinxrUap1NZih2qPyacvjWOURvQ5xq-Tuk2C00DO8w0zE5x9Bdjv0YnKXcS4X6GS1qHZrtGtD2WX0elgfwjn3dSbqC72tMhlG3eXztpf5vdR5RipGVi5RhSoq1KS4vCmtuzLE0q_ZjWH4wfMRRszCDaAwhsaUYDQcuK6nIHKXma16Ud-6pdaZ7zw2tWcpq9SYs6A-wBWVV-7sjKNnexKMz51Q1LtCF-63QUvM2eRCNPxp7UUk8n7aW3iTTJxmfqg897ixzjSPYILyHv5ywCv824V2lD_VEYRuZ_bD6Pek6eUv22UL2nFAjNoRAPB2O-KEqqAEFvksKxqpnDIBmMU4h7_frHMAsE0eYtbAXYR-bLqzQfYAKvYPKWnpuiUkKe24WfShlW8sxGSz7q33XEdDDwNgfd04go3cGoH1Ykg_bZSZKD1_I-K98pFVI7Mg8If-gajEQr9dWsy5dcZevSF4E_wbAH-uFjpPCuLSKwWWkG90kvdiJ_RpTNnKnqK5kERDIi6ZAoUf9YvMlfMqHTlmdu1MfjzBGu5zNtm_YJo-GaXyXLWSRxrQJ9xSnQiTnNTyJoJ5Zn3omZbmng1UAbLCuI609OasRAYOWLp6od6LH1-BoD9739SzYEEG9Y_UcA2-KOJp26CRJ5Xy-MkfzbCU6_9rcqi3MIxsiME5ye8PiQ-c1LTmPkielmQLU8VVIBmDPfku1fsS12bw1TkoDd8zrZFpuvkSfS2FxbWQbipuGQBCuL7azYIcrumPsZHW5HSSIvS0NsRnuTWWSMlkWVqx2f05S5bLKIIvhVGp75NoUjsjTbf_HvukrtRX_U6YNYNaeGJf-zY-rHAEdTZgX6wPss7z27ZnfxWzFpREWKNPtrxrdtzCcBibaPR6UCzstEfX-jinooHqUrCXgqH6oroxGDAWxc1Vmru0K5lwqbdNSiJFOGJN4LqabHSXM03ZjkEhBypqrLlqAEz69gHzRDe3CSpxO_szGalSn5rTmbtSelcVyN1WaaFjREjP5qruLSJdqfd1IiCIUpY0rHj_MbU38ITZGOhCEJD9iion5ILYIoclEPO2NunCCJDo7fyt51a8d5zxVLWbkBcqwfu4HerEX85I0gqEmt7QyLHaeohFIleYr86vkTHoP6spnlK8MHLoZC1LAI1zQCfGy26QATyNTAU7kwbTxh8V1NxjjADHXkffxhgrkJg3HXLcjBvOaB2cXg9seHTuwso1Rwba-GAoCtWqlKbZy-fTCHNjduh-Co8a2dV-t-ORqzpP5Kt5aYXb4KyItN39UmKslJF_yoDbOz5kfFs5Y7Qnwg39mEd4ZgsKTJPw_ijnijTpzYpWW5dqwuQ2Z0rCNXcszD9Vk3Fxq5MrIRzOY7lr9J3iuDv0mdB7uZcUvDAHyuGjczjwMnBayMI6mb-SHX1YX25wEti0Lvni53xeLPL5hkZPAZAByZyQJ_O6fAcyl0lzfQ3xTBiyLXx3ePQaHidixScVPv3eMRk7oZYqZYiGBG8sUDgwqijwzLBQ3aWyC75nWFF5MXI79SjMOASE-Ehh08p3WktffVJi3wcd4KCgFIE-fTWcHZuxtwsnrCWYbNrHlB6bZDdQWhbm4S_eeThXKHRPbJzsc92SkKc8iIrhVU1psdRLyh-LuU-6cvl5HB24vP4E6tFks2apDc35yrlnXMDOKS4J-_vwIZwe_zm0O3IKBymfJysD_HGsUT_3A8uho8m86zJcny4fdy7tabgpAywt49FvzMSt4wJq1lHOO3u9dhpXQemWFGvGjR_C6gYXfd0eYqzDHFQQ8u7D3INvAFYL2DJvVoUu4HF25zX_7O1MrlI-f3TjDzsFeMYyE8sg-l7QDui7sIDdf6pr_lF9KluAozZmzjV_LXAv0OpZTTBsCwHfUC5Zg3CfH28pi-U8z0N14Xyj5SrmxTPc_ACbmUMoZx8u0-SvVREwcbGNeqmT-ZudY_PyJj_4M70cmk2yUQX3LxiwyI5EwxXk0pHjuapDb7ReBhdaKkEZ8V_QB-4Bl4LJSc63KRfr8Mf26HQ4UUR-Y9MTgjDB5QpeOLZdS7rCaPQHJCTuq-ooklQNDoHhndZbzayDYJe7nxkeyhLbKqFBPUzLDDpZ7ac4xC3KcBDD6oFkSsUINEA0IFDBuHMnQG2yPIVSPGxdd0qEaDSdO7BElgggQ6UEmmUp6R_yFMhTZoPlnn3nUQtWRdjKYA0toTQucgh3qJToLAY78cDUV9uUFv9ETTqlof7KT_bMo0XnZ1fXkvhjWj5pwIIXMVp8c9UOprolEio9MAXYjr_3J3d_hY2GDNETP5qFgVUgrdgLMu1RLIOi_rmkem5DF-t3ThaLO8jbRM5fCHKWSewXeaTYq6-dCgJME-b_rIJx9PqMtS0CpRL0wep_SGQZYG14SOi5SuJwSc98Ihe5xV-1Hq4DvJwwDRGJxKPdgAlqmtrCzZz3yfZVywPDBFaV5p3lkJEUoSzQe1AnxCPdTHCA3Gh2s3zvsEYFdqDmpVpFN8TdQPMkP5uUrTOzgDoD0bxb6ZljQAUDjAg-nxGgdgWGdCTp1Pa9U9wPVTylh2cn2io4hkQ0OyMaZdDcILPpxMOlEkXlm3GMBqrobGSfhgNhkx6WSqsWybUQxo1d74y9lOEMigJJJwvPnRHjJa0mM5kBrG8qY4o8bYuky6PsvTbSg99OoD1Na3Aw5sB-xJy4KFFKwQkrV27pPaXrXG4K9WaZC95vr3kr3zGOfy68XD2swjarz8kiuoOGQiCehvx5d4hx37S_xpJ2XB18ZY5uDxwEhp7ohhycrvLgjjqRPk3_1v2HoLH_ZBVhENuJj5Bz8Of3Y10I_cX5jt3EKXO-keHTsv4IXsO1Yn-P1gM0KeegwKcJuKT-Sjty6aR77OdlJfJU7RDVsXXHkcTUnz_-Kt3aVsAM0JiiPMpwabi0eMxhR6Nx1yu0ssPBvIx5_AkZU0yQ-2Ro5W8WcXI8vpPIh6WddmDNTwF35Ddl7IyVuVnBLpSwy4IEvMdI7UXp_QxQPlb-iN7jjdtB2KwTUzvZAD2_NH0taObUt9-qZ-orHrXsvQC8Q-TXidhQG-pL8YRtLxFiOUzhNSMRMFKkeW7hTq5MEnWFzd4bCSS76w3GZBX0xaA6E0d8vqErl0A5nxMFYmscnEyX8FTPF04Y5szRm5J53GlOdkjZZ41Yu0Neb1FLXqTzjkiugT2HtkioalnFt2zQfaVajdtoGqIK0nDKqhO1uUu4dMrPfDYP8s0x3vYryW3BQclA-8CZBqxiIfUmJ01poStBTE_un9HfgFYeEQzUZCy3t5JsYIb95gDfEk1SOmoRB_xA8z6TKLNNJpExyTeLjEomweptXRMHzooNLgdGAEpEnJGNrKphKIoZPm6JxxFL2rlbLUyMo8GCTgNzfZP29zyda0hOLH9KF6ll2YKlNCNzd2sTGrV44ATC9PYnuCL5f8V4E-YMP224Mmv0bdWlgIzujE7Xgn9pG06oE7NqyOtJ6NJwLOJzr0Kd-A4q7VPWYSmgh39FwaJzJifj_uW-U7frtuLa_nxsnCrAjmZ-2zmW5FfjkHHUDANjESa_Uq4S4hZ7o2oQyB8SsU_K58mcG6LHz1qj5OZNQlI_WoP7g5pxjERmc2zbW-uDxjCWO3GlbaNhqm85Xsz75ZOa2pybGboArO_sJulPaoJVp8IMuIIYFyqvF6JkPc6rarzdrBeN1bsHa8IKEeBIQ5CkOTdan8OE46N_dCBdM8O2n1eynaKyXe6m4k3QOgsY6DUT1oPH94SHI1Qr9oo3TMGj8ScGFG40CWY78zcKM5pgOqn9iWqNbld1aDVu7mrlYHHOtFfulrv4utlu9MseVSu5Chq08kE0i6MS64BS7ha9a6zH8MmY6YxAih_e-X1C9QBngZoy84LnQWjbqBMfx7GgR-XgdYJEApdoYFGOEvTxPZfzQzW5sIJkwKdgFl_uRCc0ZzEv3iAhNwQhJgas0SNGyornH4yC8TwFpk_yulQyuR0EyPAN9ixCkdrnomhAtLFcZFx-zhz_vZP-KMpd67_qI-Sr9MGNaBWDkF3HDg56emNv2tTd_O4YMwSrYgUdjfsiaKlJCfuJk7DK81o8ZuvCEF8Eke831EYeYy6jVM9JnPwQDYhwKy7RyV0g3aW62QMEdLbp3iifZz8L5Hug62CAF3ODlEVMXBnFtEAjmpdtLBIZQR94JC9SxnjObUJAZWRJmMu0ADOdJEnJ5i1wr9Q1M_DKN8gdCRvj32qTdxyL5utV21cT0od0iSqW8AuflnrkAaZYMtZ6hKoHEZCTNTxONVOjWSPj4dzb5kKzLcJZrcJdby6LS5J-bhDNrOruRax8w4sJkzrsacIk87uYajx8I4AUGAzQS3Z0ktkU8odXHaO4wG5MauYbKaOWjzOcpGd89Vt7BmHEuyjLLMTuBR_JxHtDTonFGK-ZP0VG3hRBHq5tUSQbgSYONKc21iPWTyZHgH7zWr-6OxoT47QmSAKaD1UNrbiznV1jxte-wicgIGD7HCMkcY1eM1sZrjL4dKV_2sajsEIcCQMpj-bD_J5x8xGhynDyTPHdSrffSFanrXtqmHY8m-JQl3pCxqumWvjhFitvHvlnfoboh7XH01r191uTeFPPt97ydAfOOgfqY35-6AjPQAr5KXUetCgIyZuyNPtR-swwZaK_vualIjwDGF6KcSVTvAqQgYeOI4E-PJpOrKV_YmDyyt1Zkquu__92tb0MS6YWUBfYmgaYMZdrQDbGvTZxXUoUnRTATSN2RapJVIyaxDBO0KDxJEipjNiaSLYXrq6NTfZj69o0e0zwHcXAt2R89gwjqZQOe714EVlZFkEYnCFTd58S2VB3WqonHZySFSStlfNFMznODAna2mmTLrGOXMe5uJ4eqpLp-qcPYvxzovRpUbSl0h3A2V7JEwo1bPGArlVYbjpwi5lOFVWFuTMrQzJFKelKSGkS_zFdWMOXFa0VWDLCiuuyNmYRCBF6NABljpAxXZP4kB5WRI5zRVVAEonKh-HfpUXO4qmVbcIg4OvrrglPdOWlCEdNJtoGaZnAoRK88HmDxz0Nb8IHIDkNOFvnvzk64zMsIVwCAZEkTh5CPOzIDL0xNkRNofYAAY-Qk5kqhqWGoz5Tg6habNLhXODceLM_fq2uqZ1tczeOelDxZWzhsL8E1cIWzl4gISatQ-Bjo-rDEqvw3jWxR-W0Bjv_5rspYbiGlYHHzT2OzQ8OfsqxnYc1E8QwTetsJhQi03TN7a7lzmxOUuF46ef8KZj6r8ucfJfR4r8OfGAkABEk-PhCMgKlYsEnqNfMITpfOdxNVUHqyUAIrfG4zKctDMq6o08sgTy93Z1XrnJNh6SJIZUvNS2Oas6nsG2d5S7cP0k7_ffdQk721sI5OJ_b-3di_PioQQTb49IIPOCIFHpY7ATe_NH59Ao6sFMRO3axr_0sax-JoBGdFW5aTuUl2GPNNW8g6T9sxTZ4ZHzOysOqGh0TjcD8pXBFKFhQjxHiNuctlGqdQUncziUjOo_IpIK4QKeU7HEdanr62EOZr31Y8vksbsSP38zzivDkVKLHvtLI6u5H3tVWGsQ_4VbND_zJ1R-LgI_S1P6D6j6wUnId78IW9VVn4iDeaDhasd3xSkaPSspEl0r6SKJKStkpOTywVxOuw5n9qPruEjpJR11zTcdtZG6qLnwhDf5ZQL0gOmGvuMAgBYydpkNS6Xw3g1FfTSI47_Hw1jVke0I_gWDzXyf_zqgE4-BFuqfRTxo0T-WsTGrzujs_cf26guxTium7Tb4Ysbb35pD4r5tazI6jbbw1ZGrg2xve0P-RoffLo9mV9xwVDmzh18107t28tTVfhEkL4ZnzBHocr4-178FT2M0seqUryv9r77xEqfCZOJkGahtUiOrJ3cj6p4Fb7u3P98ryO9uywEmPNxn5LUkHaINABf6DkhEXYG7Kc7iqLIBAnEPEZwbxkm6Khh_QYyDUGI1FjcW6IkorJpjslA_UiqRYj8QYuBladA1nfAahq_YmTYdX9sFVRYTIHHu9J1fnb_DSrs2BK0H71RjbEGnHQqRTGCeG9k0lylYWvFNAEwyh2vDzDGXiKg69Lgg1aZkJ1SshEAh1Nza9zLH0QH-nRblHQlTe_AM2gSRtWT3p-zIX3STzALx25QecMXdLrMBhSOC6pkDBv9wqy4hzTemHohf79dM6RLBIcNZc0dQ_Rrv5zruFeFI-RGub4LkYuFOC0BOzMvWeJyK8cYzNqwSJGCHKYArGnLlsUt-kJW_T1Q4DF1pnCt_--ggY9OSCbWua3mB5iC0yY4fZg2KIM55qIPp2PLARhOLqGSTbN8BOWMx2aYkz3iNun7-2oBtdDZV94uqB6sUWLAX9YMrXQKTjXlm3ickQgF2b-3SDszi_xNWeel-f_9djIlXHm0BRdpMYIAchkJ2J9CtOdvVBdjtM6JdcAhdm2N9yeYYp4iSaKb0TeFqZOkf8V6cZI7O2VUkO47CdfT6HlXUwxq0VKOAh5QczreR4MjminhPBk-wA3Fxu9ULiBG03NuLMIho89Tl8vz5sMDyE36VW_atopgVrcFavkYEyCxMmUMs7LED0x6fw9d1pnGrRKUB-yI4yAMAiqOdKVu_pluXc6lmoahJwMA4ey7ToxiZthrb53wvx7ghyfYenj2Pp66x7SdIjqXbM1fPVL1OYEsVKg4xWuS6UlkuJM1W7B54lkbQJsa5ZJzD8fC-2c4RJLtM0ksF0SFnShAxRmYvdACG6GJXVwfdW3PhDWaMSebKfNdCq-0tHKp63XO2KJ72i09DKOn80kDGBL4mz3dqET4U3sV52H3XC8gD3KWm7toFh8Ysd4cfdXbyjWiOzcJc3OwRWEjlHzFe7bSlu6NBng4a8faikj0HBLFKREhwfv0nPbYNrAf6iOtCS6RiVT8_V7B8GA-5OHgD33Dk5nCfEaj_fNOSA1ythYWRppe1qEybTgCy43RDVHJkdQtvtsfcq7EO4Xabmts3vFtQRukVSqlhfq3280-Qxx09lGpwSAVIgt1ksOhvoIGmAmx4rqQY3Rr0TpNjaGH8yeETo4srtUVK5KDUwesAOUEiyG7x-Gr0WeOKuobPVxu4LQ-N4qDm6yb64BEf0dpqz5Li4EPMTRM6Fv6zrms_GMUzXlLW8YmFHhnZAy0fkIRmNzn2CeNvkhN1sQ9DJKNjmFpIt5qUdc_2cMNGpC03wU0CCHf19QKzCVrJQplSdjES-4r4pbjYLOxqQSDfBjYngoxqF4mA-SxhUotxykfAaxyGyZqtzd_HbJnCEIQzsja7GjRlQTs9-3vvdQmgzVzYinvFjn3wZSS5X8hTqCRBuWbSQMcM5M4PC4iVJlXjFsj9F9FAhfcXTS1t6OodPt05gCg3Qlo_om-0afCRNmgzTfiX-oIt6IhWLAqODV0MXKwQ5uL8RS7fQL-KCk6SaAa1jckiiI54rl_zOG4l3JnXOZMAoKU2tiCR-C6jxOIJAoJ5hFJ5k0bi3aEZJn1GKZIjVH1xu6jBZfxoCjCP-TM-nP3JS7hkA5-dL7EHqBMTemyZ_LkDh8PPoXZJojGuwbovjYlEESWAgyFbvw-yR2h2NcP3S2yi47URckrwhCGJVcLoIetF9HOvU7W7eBzl2LVq29T--CWZPzXZ1zRhmYIjEyfWVKyUjvYH5XNGTVURX4_uYOHWtoeojR3Z9O4kRwY-9PfwOA2FcBh7ezzMyo9xMbns_Q4vCFI5hbM58ZwZtUQDttjQxLTpI1cXJfOnpy0hgNWrfaCArgqqI7h6dvZUCqi_-bFtEoj_eeDLyQvVEMABX4t9sp9U6LRmJwkDzm4qM5etNSHZUOfZbRPY3Uzl_BIC2F2L8dg5IMxAok2J1EKfCfmRmhUkd8G677puyhie8D1UsGImqMa6FBQ4i6AO3UtEg3M69RoAV9tg99gdxzBY5gtntO_SgpZEvc-2_P2O3UfymjEsslE2ZNLjToexFkTBcv0O_WbtIVFEIy0xB3CROMFYQcbYWEQ_OlbmRVMLj13hWZGafKj7PZSUyWcL72swJ_9h1dBFmP05nR-cfeyWTbUVKUEWiykeeeZuoGcibri0ZHkvlldikJ96UB44M9YdEI2u_M8SsWThLp9Wq_x7XlDkIpCXlZReb56Ykrt1Ju1uX2whXvPhgH6tyqU9vjjWxROb9KZD19fjGjltnNHL7k6CM0AWaCuab2qAaHWMTwATb1QDdbL5oymYejv_nZV-UxIpejHIHqZeQabbQ303wD2_NPG6kmR4JM5OJfgH71xUM9d5IbF8TLV06WczMb2hhfoxKYaL4ttXBnNnX9pgV8pB-gRqwB2h-lEDnyzQi17Kqo6-AFvcK0Gg8KPCkvuNlFDLDl50VTdFoUa-UBP3zfxQlZj-_tCmglnFq0oc3nibptm4c1pIY4mExnnfouVh320CGojh7yFtiKcXLYlpET7MWFw04Ue0tL1e-oXGM337yykpIa0AaeNjvGY-HRY4u7G00yDx2r_pV9MtMaFYtkPkaA9pH8PTlWHnCPPEvhb_e17uEGeV8vgmvUKB_ylDxIEK7Ef7dSq-01SKckzSTkimbtEuMNo5WEJZgSxkTCClxZqIAj792GHDhHx2Z1xSfe2o1hk079_Mcq-Oi5cs6N0uIOsXiAC2gxiDOtcnANCjtDjb8rDKvKPgdp6Tvre16cfRStDbbi_X5lXcK-UCixbDhOHNULDrsEcRTkeEQSDgkggPmmtYpWIjwGVC4InwuvoNlu_Ef59aFb-H0Km8QblWtdpK7Q2szCwWh8ZHxlWTofLJZ46OZ3bzJSKowmGEoYQJmnd7aSY8LVdpsfz80UCuE8x5GSbFdiNu3-sKWtJ0H9sCx7oEVk86EUFSB7XFoLOrnaXVai7A9VyRDULO7UX5TSKpgPx2TSuB4WvKSOK9cZLyYwtaR8CARanC1ncNu88BOM7Nal2ge1B3mxYV4oFP3YoVQMywZO_uNDcXyBkxTYB_FA8myqRiKlkW3IHtL-X_DUDJES-eJ2500JF0yxV4b4F8Wsd7xqprYbI-NKvs8VrAQHhDNKcWw4OP2FhiuxdoJne6Obm0UaZcMI7Nwc6PuO3TP_yomH8KN3eVJ2Sg9JOso6RgYl8Dy2UyBuaTUlH8bGd5js2eyyhIdIxE07wvgwxjjj8fG-yVJ-hLNf_y44Sdf7Tpy1DX6e_HnAm5CHqUJIydXFcbXwmNbKXbxcoz_CL9OeIDzHODY1dDq4oZwS0jJZAaqbq4-5U07vx5hKu6yljQcSl5XqhgJ-0bdZk3j9sXc8tFeKyhA626LPmPhHgc2ob_D36ZqRIBRaHrlebuYgoRVh-b-FC8M383cyZVyOxUDmZZ7wyoXZHFIP9Hstddao46sOh8gRFiCLxJjzpKtCp8-Mb8cUJIcGuSVQeZUq6zOoYvAEZUJukmSNJ-dHoz4cQSsaPET1UoQiiah-zMzuIQH1llJaihz0JxW9447wjRW5OOlMgSSZ_rLXFOwhe0A3G7V1Xr1Y233xL1eur9O7JIOhJazIy65Caz8ugT1C_ypL3FYwhec-sH2n3bVrjJtOx6kMeu3NV5W5o6AnwRl-XYQmqGXtaSP9pwk4R5YsWpMIMuKrJHnV6XDezhCbExinnXG2twvB0oDnx7cSb7BtzqJw-KBhge1vv08pJ2t7kF2QsOqFmAEpVcBM4hWIjzBQSZUPilOiJi1YfOInZimg-wT5VU0DhmN1T4dUBY6qfDB9FU7KUmrNvBQrlpF8q47JFFCwwDtDG4ibEPU4EjkwN9_o0I_2Ul3HxdP8pAXNokA6fyWVPvgXVdn_bjkRuyD30IMrk2uJHbNv3QCYSI46i0VZEtV-jdIWrthZQ2m0S6A0ej2l34XWRnuqjwA_j5VlOQO4TYM6ueL1PvqWHUykDvHIjotQpMPHDBbUJ5yk8vMAz8JjvHVz4VvGLxOX2i0h2Krvb6QiLSGorfUo1kdUR_lqGbAPhEKFofpW9y0cdQYBaRcTB7qbg6-V88Rvtg0ucNGrkuHhV-1UMTTyPrKCWP_x4ELqg2wEws1TsGgxW6lqkfj4rW_GZc1H6JLtYJT2H1LqdPbDM--0Olre_3QBnaD2aggjmwJPyCisxMb3UMjZwCYIxRp375s5YJopSPjo7BbzhTCECr8AhlVYgyvxBpScI_dVhDUYU-LOiybkT7tZM_REf6cP0DB2hLAt53GLqfaZyzg4UdEpg4YcesZKApbjWhjeXjSp_AmxVLCX0scevIwAgnwA4R7X-DBLVgdqvqsIO2-Q0K1KOT4UXfJKAnF2_1vMR6VilhR1dAHmY7eSisqF7LxNuQxslS3GorY3YA-Hkx1RCFiMe3occHeXvSROn7VGEKD-opw-wpHg7w8N8l6NfmwedjtQ7X6qLNrXOcGoIKVqmxKK77SbPLO4unk_BBl8ps9duUBbSVyAgFL86JBfs-HIzGA6fTfl1l29W5z-p0taGr5LPBPpSBRR0iWa9Q86_aZFclDh5wX3ueLzPC2lAnr2SL9KQnWKfoDMcmn0KtcvW-n1Cj0rnWasM1pDGUMlqDtjt7P8wEHZkI5eMX5RDoJyIW_s22-uyz3vy4QinFpa_7dwbVNDRyDdZoLbYYG7uhgUBFImnB9hkwM3VkReyrdjSyagYoFqrhC6HfWkdoX5iaQA-N-T5Wkw48DUoL7uVwQWAs8fqEYEtZLe3gAa-SkMWnFQv8BTqy-1QWiCZcPWnExOiAcelyWqXs6BJYdhj7LDXQXGgX_KUU1i8V_3fpWuVSDrHBZ4RMHHVFUBbmwlhG02fLr-q6TR6Ift9WDifsYJYGxHAzI3LIKTaVt_WhfNISkrffBBLibwKifCvl8px3r0JfJUIG33Gs4Ka-qHWgaNI5eWXbbZOmtG-2VmtXMKfUm2gUWcmvCdqyHA_vjKzz4G1H5UsK9vEV8chPZsH618xk6VyEnCYA0C_1mBjRF1dULUdKzGrtH2b8g1z0GGHM4GM8dkjGuRgq42kZQV98_WQEg-9SuEacPNCmXdhuyH2zoyRDef_fx4onEBOGCvOqY43z9OeURB1KrmYJzyPR8xMa9kZDr8qfa1jhlo2xX08AeFb19FSb2Icgl6kcEJDv63C3c0ivSbaYC_Zx8UBiyF5en8NYS5PTruWoR7W4kZYLVsshrk7GtqPH4PGJKceKp58wL3fcV5lcQFqGq40yRkxJmUamDkssELN7oztZ1AoW6A38Yml1DhRvHvi3EmMkWzs4XWeDZLBzKigJNXO-6RYD_84jS-zSOEDNSdIKzWo5BQXDibkGJ8_nTSlit7IvYkvQLuL8pH40Y2er-nIL9xGa1MmoGh6QFcWF_9p7avsXzSD8ADMHEIxNESfQ3PfE0TaWO8kte-TW5WfERZdbmSoED-p6EG4vrIrlU3aYWK5i91Jgd_TawoSW-5TZY-HbI2AljghIUaDuh6bso689-Nv9x6I2-o0fh-APlVKJnwuN0-M3SXSgCfkpHR6uaSRqJlseTCmbihvENKyI9G03tLnkB67xYe_Xbc47X4WzFLrlEBrHtlbt1JO9f5c8JXTLv8Rd6rrDnMTuGfjt5O91UewaQKxcmpxouuLOVxwtS_EoQ92x3p_VDK_m9ZpI23qxj541Edl-QYCUCA_eTKvqX09UcM_qpbL7Whno4Yk_vs2Byvf3MOQq1QMmULzXM10E8ZjVJQT8ypgcyEXAyYUsjYT0s1-azyXtwwB3Ox5VMDOFWTUnKlSNeTdCY26_mfpzH4FMX6jZ0d0Io94AR4sZC5mf0iyUIr_fFPtMC1OrKv4bAwOqP1ux22qtCaF9mj8Jc7XyDwXFg60WXGb6SjIUJTbQ6vblM5wuvss_4blEXarESfd3s7wx8gZOI54DAfPW95ezARv0LtcUj_U-z6x6PUpUUAFAY-SuhyGiplUIumxg2N_PJGiG1EyMlxrpAbs3AZm3w8UmcgMBbGz5oeIaD82O3_OSwj84nlcV5ilDvhObqfS1HO5o7DA171h5Ps8Bki92rJRwztHl5H2j4lAFw-ZMoM9mhTTjKIMacQYWAKjBxFaBTzKyaqVT7jgfibgQ-GcfZZoX-8EJC2pzhDOw7jGhi4b-39ruZClHp8WeCMK5Dphjqt8fvC6ObLIzHUrFrADmCh_xPxnSQ6htFQLgnAyxIRxU9DWmUQbKFCJjuOKZSnpJ3LpOqoo-spSQDx-5mAls8g9amcAt6Gl2G1N2uUoiCJtZFzkycJd9QRsblWqGjKTGrWBWgmijQDqa-1oMyeePqXwGKUBNTAio_KIyLhNkuM23O6Ec_5x5WtolAfHeu_XeaQJXJlJBl7lsOykComfU4pjarlkghnVi13sh2efZq4I5ohRXAXBTlR36tLlWPGWKNK3r9ZrdKWhqhWLSCnda7UlaM81IQzVPfTYQ5keC9gmxUEtz2c3of9CA5MvYWDTBHYNxl1GdgZ2-WmTVyJdBZiA5ERAPt7S5aQyxbmaYnZwTH4xji5Y0je3HboObLtg4kUW47iM_i-7zigrSM1_ciDMOz83K8AWN6I2RJ0y5XDI9mtdl1FCcntOCu0XjMW2OmFhroNH2Irg8uYO47bUOKvVWqKprIhqe3hYhfb47T5MWmjodYWAG5jmSeEXgG03ErjwzsDBhx2HWkvyjQUuFNsdDZ8cJBRsCBarOS1mhpYVF9FuVKAVpjvX0QcEp3Pcx9ZbpCI7cB6bmjj9X3BUs8eUc8cnGXvrQWvj133z41VZL5xMTgR_qYdW8ladpAmAyABUhN0YXQVdw84V8gPzs5nPIDEwUycg4qZw5pulUzHbf9KiEHZoXDvUSfyw0z0EfTBwpfUt0czXtqCvE4d0fUQjF1gG4HuETh9yn0R1ONgkfmCRQyBEkrhno-kxLbAzV6FIgM3C70nBiQNQu_Tx_BO4JfAxLLDc7w19sg3DW_BPw18i1pRaOd9Vmwop4EFnf9CBCYWWJUoZrQ9naWX1AVo-bKT4x288qjgDZQPNr0AvLl6n8d_x8zuACt7g2qg46ZNSDddWDCxzYY2QLN7eCUCe_4EKZ4Khyr_vVn917bShl5tlsvVvUbJ6QflGtJ05W31ramnCh7LD5G1kPiCHqIBme6N11UCGcyE8liwG3EWA6sXk_a_6IyRvjxsNbosJwAmddHJ0diGNLpnd8WZQAXovNs1jeRUMWvdgdmsG6oPrbYnLGPawFQKJP-JGCJGSYbAuLRcqDgZgwzznvfOGIJjsiRl4MfUsshtztcYY76AaXpsI3iDbP30PX2AIkc9arJrZN8DcukMXSS6Y7QMp6_3u8TGOL9XDfbDVVBCg2F7JSgZ0LuisyVNw4Fd2FyGn3Vj0WkVrviTGmAbFJxp847vjxaI6K1ZEYd7-WE9frfT1ifv_yAOzJNvb8ZS0JZTS_bkGS6aaRU4ZKiAqlTDF_DhrC93-3pJVcty8jQCaecQhZPDezU0fh_dbMhSsG8QGnPFl_9_kcKAKlrs3be5Bucz_lgMGSnx2b5pbQY--R-iZkGjb-zqxI67ph80F56uojUCc6tTfjbeohCC0bemkBQZFbt2Lj5u3_PCNZg1MivfT89ea5vGFqIorheP3ayoczi5i6OT-Lor9Ds4m9NF_DzKfyLW7jDPKkQbvVveXKHHrdl-NmFdA2NuUmbUf4uBAkUh9eCdDPGd2EhtXN1eHUEzu0tQ7HznlFRQexoia8xvy1Zidd9Ajk06lw5RWplqkXzSZRjsu0zEwbZKNNW-rAojZcFTZQeukQW8Nzjsh18ZpfP2EqaGaLe9F2UwFTQP5pYwPY6pIJmSeQs8B4jYUfoGeB7twlOh1fqLwK8jMxmtwID5wTvz3vnOzasX7h0lqTxFvT6eodl3EEBAmyl4npjxrq7b6mEX6TTtLG1goABpn7sGMDrMO8RG7BhXAMVTiBtyhD1eP8A_4NME-iszaYwf_2spfBu5rNIx37fLGY038P81O3ZJ376EpsHBvIi3nzXUIknyF0y6p4515IGRhKhmLhFhtUF8T13MSi3S4DrNzN4W7bNp6Y7BsGExNNjwclYaOP4tkBqGM2c1AaoDyZpm6SYiEA4TFDVRG4_J3hraxHAnoChLQ96tNjfwc2kin8QpQqvf7YYJH1u_Tdax_W1JZ0WOTZ9IDL42Gnv6VG4ZsjM4VXHOqt1E45ZEznE1kSffWVK4cXHfWZzHmP-h3pKl0XOZ2OEfqcgBJk43O1ZIqs4Gxumok44HFffQlAEPXhyvBohybSjqT9J6IHc_jepaeXghXSi7qe4-cgRll-spe9-MhwqnPcD5vsouGdDzHA67ExPvjg475st6Dd1CFGFZnJKOXCzPaAbuDny__yoLYOZLfA3ZDWrIyAcwCtTz58fvL-_GFBQsFc4iNeq074u-MwpPqlULFejrt3ItWUUF18nDsAPTuomZG8gh31WmBfAKUjSwfoXjIzFNBI2BeYvNUfV6fI6zi56VLd4v4kqrNBPiz78LPDgMGUqem4NlbiU8batlg2iVr9g41bu5mD_Q9BdfQWEw0Rpb3T8SdQ1SqCrJatVJcLKuYAAbhDTyn47j-JrjU4btYiD7QgslyYz4AjlyVAx4sXOzjKJXAZYNf9LyIJ_dFHpcka0Le8a6OhG2Q0_Y16E2MhtNNH9-tyNIvaC0h4ppDrA049yVMvs1y6hdVzjVGVB1qwkRHf8-EavF3awT_xeJHvmJzGoELW0_VGxUO-f35yynz06mk71_3QP2r8nVCNYyj9KkUANYdjokbtzyFdcoYRwqnaWzVRt1Q8AlFXdLmuQmKy9RPMVoP0IPuLsfaWn4iGk5TT7qukp6VQSHY79kzt1FuPyaNJJoLQDANQpllMzFvYEb85vw_A_xPHuK0nn6VtUBUrIhOFu07K9isTdcC3StoRC-tPck-a5AVyQ9b1C_P7xYMQZ_nHIF2rBZ0BwbXOiNchuuYHVXgGev3tZaTS74HZmNyR9dOyez5kMh-GN0MWS7dxFxyk_TcDD6OEHhEJIfQUzbwGavJM-o4_qqr-mq3OSCDHFXjhyGYKoBdYczCqe0P2Qzgdts1kO9cSgpw3SdgJWOR1pcn6GZBQea5PMMirZLNG9X2EzMz3KsRc3QZMgAoIQd-EMI7EIa4UVWvD4go5fxkasa7e5tbf4zZ0v8rLnhsc-8ED8jz2DW5URO51u-fKtqjp2KvG6htc4jU1lkg04Rxg2o8EBmRE8om0lgpZarQKc1QqTCp5UQAbrr5G-dVkUS_WziQLvIPZ-YBmrPx6nHlmwWW7wnqd6wa_OO3DwaUXWlTVP7AQKQKZCp2uSzZpQmYx0m0KJqM1BMe1bzNQGBp4G0DtJ_rOu2MqE53ZZ9bXRg7KMQK-M3UfYXtDOs6Vursl4iqe3mvj_l7E8_2F729Gi9nBbKhj2vFAmnC-WJbeuz19IiCnw844-XqDfwz5uvtRk6dSJxtaE_pxStwf_AmVmcEMwFlYyjRVTdj89b83V9PF5pU6bzvKo9Kr0ntGXG3ZronWP9Ud-LQxlh3CQZLD92kzNGytjUVbdC94u4HiuvV-nTXG7Up5_SktVC8j0rQ41jJSj1fot1VV8jcNm7zdBylqp6qkUiGAH1r-gz-CUvS01sXKDz0Xl30PGqPDfg_4PG3T5cy0ZKyAdGejfayMR02GIu5ny4-FEQ2E1mbwJijOQ-pt1BfdJzm15mlaAm7P_1lcSqi8rceBa7KPYMn2ONMRd7jzDjm7ZoC8RzKYkfJl1cGm2onLk8wnDzJsGgEAZ1_EpLzY3WadAcRZB_QXoaYczKgRtBOc41SlwvGxRsTm-x6lnUno9gL4ePtc5yBRGzq5k6nA7iVKjlzZcvyec_9HMhMJBgPKblWfbF-7oARzS-Bw7BOsm9V9LrlbtAA_OEJ7uLxoLnQhdViC1r0zFnRyZ3fvZd6IVWyX8y80S16-vsTBix7NMo5F2kfk5a2aujnasl72HL48p9SkXkje64aog0qK0R_tKOc0I6nY26uyYj9Hic7D0ws-XAeM6EiQu5D6byItxsdPXOaKC5spHTQ1nR7u780uxoHIpaPHu2sWOCUxudjgw7iHPEykarM7HjJONPdhfIwWZf2lNncsxn6oH9a-1Zj4YuSIH72PCu4-1Z7ddcZAhlxYhkkg4cAkF-tcZkbR_vnungSyd8Qju5ZOZsz2PwAAHZSC7SIcARcBnE_29aqN1Jh-xb5DGXuWZ8UaeRzF9G5rK8BpYQtcnYV4QARiSpPGLsBa_a5OXEmy5K37xU2Fxasb0r0xNKabECSVfGKqRiEv2aU3W5KG7FTFIZ01KGONnPKQd0TP4G8RWKyHDGRj5HQM-rRmSoWxYzoxSoz94OboBgmFmyMngtKmFRNsJ0Y_gcyhiRTQgljpAJrkBNQ_WyO7Uhnclferv18JS9ztkT8S7yptebO48_nvBPGYFLiPfPkFWf1VgWtViG250zeTRo-lHEJsfNVFNnjfJ9PUPg8zsCxpZahrCbPmiLQQ0phTfOIjrAPmWd_Lik33WmNwxRe-1H090dy6c-A9J9of7SFgFP88pAd_7ct_XAaFSu_G7m9wAfN2lO08LAFR7MokjinXlYOUTWC3Bb48oEOYpdKURihYnLRR6D-3fd3eh2wO1knz7T0pWFnvF5Sp5C_eTqOxzf-z3JSARhK6Ir7vzjQfACrlrL5UG9EacCQcdYnrmF7-LUaV5f7isNcUSA4Q1R9SahKMtMkekgthXuiOj9sidRHVIkU2934PEKsACSrWrZxxxCZhCiMVOgNXbtinb6HKoH3OOKP_8tMTFytSTJ1Yr77fpqiBMNLUuEflj3yCPD8UomXir4AXfQWmw9cAahCFBQUn-6Bwmkgj2tK84dBgn1zy-eZNplbERZJJWVSIRGi1wJBOSKoVCqbxTNeEpZ2AmgO21B0x5rj8ZYzVrHFvXMhEYq-ihpSBhS-mrVLVBJslinLawqhTHArxJsftsuPlF_aRjNU7Khc0KQpRsrAWzc42rgqJn40rHfZ78CVS_5PyCnSNQ9h5wEiqtGaEeL5vM9RmLJ4oJ9g0wUXYbwYYs6Cg6_u_njXFTVk0mxcTlegUoV3UXZmXAJ6HRJN3AfViifmrePxV4XvfN9D4KKI72zDRyVHFK-8OwUZFCKo8DwXjiWnhC9PCwSh66kpvmVABiyQLBqGSzN7TUmMAVpSVxcxLCp3EPu5TI3ps7R-WkOx0FCdxUX8qqtWtgtfds8Dbwjav-56LcQZhmfePwIs7bt3efFrr9vOazPmi3gySMlCCgYOE6Jie7EbT7EjAGbnGm122VVHQ4pGqejAVpIYjHlidYUd1L8uVdNb-chUawyC9U-U8Pdt3GBWAyhRnLnC4BU8okPIhmAUYSvNkBEoCXCtVxZqFOF8-r0EpmMcDdGhsiaBTXkE-TOPNx2BLnI3vrLzKT5_b4UFIH7TdtPc9GIfz-RHXak1rQTzsvxtcXM5hv7eIubWunBZUVj4NN1ApdC_J-lX7M1YctZJ5NMTEPV4H2cUZYrW_Ja6Ttc2W0jL3m94xpIcAOUp6cx8Eg_ZploW6euaDK5JjBiz-yQKZ2EgXLfoIf0XPUr4GsiNyCgak_tO0p44ot56B52Aa0r844d5RiwkPa4XN9XG9jTFLArOeGsH2fT1z6uQK7_Zfqf0-2aAeENIYHtVq8mNUukgcLLSnom3BNjSxkr-DS9Swc3FSQscxmPc-7Trwjp5M92lbxu1MflmcxussNGlwbSUfWiLiso-CI37DVYxx6AbaTAk_mBsQnzJK1w2ktnHpqcOnhsGGcS9n2JGVkY4ZJovZImHkIhYO65no_H3bh_ahw4EpFRwnrgwiuB1My2JXYhB0MRRHuXeiK5RLVnk0arXCuc6plZMVXawZ9WRQS469R-NVbyhj-g-ev-RbDTg1Gvjpzjx_gOZ3GNfEHxRGN1RgWTPSN_a4zDjBE_sLV8W3VNkoUo8QPIdVbVHHV7REmsUp1BpFYsSZbDYCwkddLHmtwr4ptuEJDGboiw9fl6a6556W3Cufb47GAwRWf__eO2WdEVa4HscjzcZuHXKzOeSEOyNk79SLIg8HngAEFpv9gQmrO9FWlPVIActiHo9YLjRipfLq8xEwnDV_KTvDGBpPlIYCVjxcJDphL1pIWv4f6IbOwLbn-353krpsbLwS1bwfzm4w7qN1A0gkc1Pjx5UrgcdpoxnSAdRnXshu7Q7HflBQfVYoV97kkOLbvbnTjTldDbiYsH6AN2GpEQe5xQcIqLe2Zh_vrPc-nQXDvjf3ImPZkw8eu8iNjeBrnT2OsNBqEFE_i-n-E5XlqXS21tdce8hqLZ4eo6_ghqKV5EQCywblt9SfEQfeCMBF_xIKQmvBWDFukmJ9T1TH-ptxmf_oFLZhrwvs4D3UwKIOhetgtw1rnmeMLt-4iIZlzAo5WyZwU3QlStHcq7ifuu-0bw9J_TsoR2uXcnKyzlsD5U6BPGN_VBrlFFjqsRwXsEfBry3vSS-Q3zl_HtdCa3l5At_jddLKNPx2gbMaXLMoAnrMdt5yVmKCGl665RDznuJp3UuPGieV217iLB2Cx0EqV8odkVsbwJvzFNOShbzo_thr6ySt05lCKmosrcvEnm2Buqc8xrAj3KTXR0VPgM2SYNTHMDKA9N5L3btVJIelrIRrjQbSnJpHSznDBrRhM5l5zZl13Clfo3nYJF-QsxkdCqQZYdF1jN9aXx5qGVyz6hgXzAF2o_G7U7qUTiFeQ5YPFWac_29yaOF1xO0a_wrLyJfHg82dvuhlvDu28QZV0UiQyP17sDIWRupnof0x4OUsAhIhL9KamZQ8IqpqoTA5Ap5RpGvQ30LXm26CtFfjQe5kum1LZ-MbtVD8RpbeeikgmqhA5klaqR3BCNmIpmyOXOoB4RVP9UVugX6h5UQOj-oklnmq6PrFHD-UQta5g87ntoukTNcrsIdndX5cUohVn0qWlsfrEL6tKCTkUw5kTA6w9GjfclctNUdEdbkiA-XaUACHQaqhJkHkW-Q0_H1IcIeMe8E3v1iYLVPPMNKD4LCuhuBy9oXyaR1Ph72TwoFNhaPzdGrtDFbaBzYhx_y1dSik4yi5PNVrWrJ1HsYT8EZJ8d32eQVGYUsycL4qS_DWUQNrxLI1m_NyZKOkPbX4FXubei7rt2zXENqkYXK2O7k5oijJBPBJV1QF07RTQ5PGj8zTwyvT3bfNsdsmkcZzS4fHXq71UOHC5DelVcM8I1ytScWiN5CW4C7lt8ZLgf0tdl6_JULmJ94etLerOy0LUPe6khSR8WqgY1TQ7p9bWYo2rTSEgx_Lyc4DeH4LgSLEtVB_JCWneCqtp1mA6hWPp0-bLyL1hjCaNDU3XsyGEyQj3a88w7aKViOjIXwuugdU7r6BSF21ffICBbKvBYLT07s_ifxYIXFWRfGsbKFzwSYf-ZtpG6cEYgZEHTUJFFb3_B-HtSvz6kEnILa6aw51DQHlN6uMUvDthw61APCZzn-btHE_9vZG_6p_3frsL32Vkyz4SbdSRODe7RElVTIa3Kn2-ipyq0QcAF_o6cP6TIo-aMqp6B3h9TMxpf6SnDfjT5dHT7pAkXlFZHZfjW4YAJF3mcHZ24bcCssFhpO0NNdWaws4ELewmYqGzm65ZAP5xgJzucqom5J9RoNGSp_xXxm-_Un0vUJZmBMS5BSAwP4zLuorWMwtU_IXRdRV235vKKihqrVFz4KZqUXnqWx-oq8XErUJv2Dfhg-xOR7go9VQwlN0W-HkHKqOUr4Qv4BOPvJf_BjoI-NlRn7QH902I3I5BGViodqMavPrfd0xm2hWHrarCxWkR_7r-leaRBWPP9bKob4IZDCrQ8e4Chf92OpfU7ieNGaIH9RTngo-iVrnkuVVVd-7N1tkDQuFoDRyc5IVpB_PlLxrwCp7uiC6fc_hQGCsd28q17xDsndjDN4O1e47ppAX2iwg4cdxNcWRf3oNursj4eU1U1KffXtYo6-abwHk9BEAbRIC5DqFijQtrSsWbPJt2cWietN6dsa5YKbcu4nOV-PhlNkow8I8Vtlq4Dnfzgvj5NbODD03RMdU7NpOEhqccQO3Ym8vs8UQhOL1yyzM-w723wd2gAkXLIy_roxqOu1N5lKxi3u36keJrbu_FZlce3yrZ3PQq1grVL1Cn2NDv7GGmUtzf6QnYCJpac1Ynl2b80D3QUBTjkcXyDMBR_C2nKTMYRo7Mq62iNtwVd1Q3kokS38ERojXlwPb7C0-DLyeC0WfEquDNymzhspbB_LlKwQFjinrUlnd9DQkIFR_xfX5XvkyS32I5RddDYuiHiO50zCoDTvow_icUYXhaxPfDqlcXFWNrMymlWrogc3Tk4qoqYdIZxQInUX2RZAIsC5W-ZcP8aOPYAukVTF-EoyH8yv5Ue4GIK1jVJ-IbxZK2mB8io4KwTKFE61g-Cv3z7_l_I6224P8o3N6dm7qnDt6Dj6-v66oDe8MKQPN3dbUcOnfxeL42CgJjVaYQsnUIwjIgrcxzjTVALqcZvA0MhlHBgqqQOj9wkpYL4YYHjOCNIJns8fBCRb46gYpON8IYV1m_YoVpJDTbQsB9SewWvLws1B_92LZQ_9PDxnMSg3cvYVvjx2W3CL2dKVUZmvlz_CdaRXwCHetyU3ALMwRLT5-UylT1cMz18aI-RJzYJO7q25FefRH66KvUOhPW8UuGEPIRK9VfVw__o10ivCTqoII43p48h5DuJU4clj97nSZmjrCsCI-rhy17VI3mtD5o7EggRCCKl56z80z1BXHYQ5TPs4juDYQ_18-rxPydCjbL_rKbl1gIwCEBW8uLBsfkvYDsQGg4vvx2tzCjNTLQqw13BHOnPryN5kF0yZutmTo3uK8lBG-Zh6ufVDmQxl4lzC82zCx6iiSuSJ8ob-8gyuPE7dZv8DN92-gPpFSSZnkn_Ulma_zPpkSvXhPC-UwgYLE2Ds7ZSzRshU11K7Fc3v8cPgTDpgps1kTUMfOWYzUz4udEL5SCf7KQuZbZz5V5OCscMj6OjHFW88M8V_tBdPGzZd54-4YQJSrbu8TvMSWV5sf7_jgTTBQ5MYqvGyEFXrFwj2QTy73DT32mvZa5CiT9TqK83ShQ3JNKKqfkT8h79tz2qwHrkzMSAmxxWE1sTkMl9EgQx70q2c62lMFtFvcN-dheMKWTcQKNxEm8Z8uMFmylX3H8OQDUJpE_8HYNkfoHKs_wbcCo1R3jNX6Osks13TPPeJO_dsFQskM0D2nyGFNAco-d_7FmuululYzwyHo1dVtcUqBCj5nU4StSIvxRSu4mF89zpep35HrVcj5JUddCdjNRk58ocIOA3zOBJRn9AWZwGaD6AsQ_3ATRX9--2Kbty2nz3CBBBsEQgjbBKIQdmXT0Oi3T4M0H7Dw2Lu-j9AzeChcVCePPzWPJ9PAXGZJElQizJ7VNTQGfAp18oDTVGgwrVZV9Jcxn8f0ItwmeBJDbOwyHny7211tW1s0i-GUUIaKxXcqCoe9ggmCuzbwIRdjf0vdC-4RH7L0kHgMx3PfXmjQJIWYR6NysutcxgYJLPA1D-iOthxwdZ2ukwmY7domKE5TeKtzEgk2qPLZhpPet08DYSsIjMNZc9Rt_4ysgmOYD-k7n6MH3L7---GWQtnusB0u-upJm9qz9324yqvpfQjnvq32KvSqqlzb6rIWPuEF-ICVzqpBuRB2nlvUgfQuz7aTreNw2kKaB-q6P-Rckhy82QTtmFjSgoOp0l1qAgSa4zi5Bd4ZXAL8xfv8TT91P391yn8fr_139APVjWoNhbQ0hi71vxiIInbSfS4uUMeDfReqfeTQtwIGtCLa6YfVU-lK_Yw0qEBZp1I5Ikpc_TWWJOjGZJdd3Dz1MPqSIZXMNb86ZZlct335GU6icPSHhRYYmZ5tLXRev7ZM1aV3bzQX4OFUhL0NJEhbGpsGoVrbfvrUKjK11sSHJY7X8BqWdW6uNiZrILODVQYlJHOyzTs1yJ4VLbinSVxA4eSEduFVJGKLbzHWBfGOTtRbk2-l_z7Y1h6asylOl22WUj0bCP0Od4zLPqcZpmEzK8THoDP54ID0S8gRL55zFCPqGz6D98ctPsRU7qSHx9ZMI6rsw-DxKAPEWOJYC2gBldTPON9BS1F1iWzjb4Izr7yLMCtyquOGyAh5ZbPaZGfDycapxKazd1TXno5a5Y3LqpTNuFvIYcc47-w6Ox0";if(!e)return null;if(vt&&vt.sealed===e)return vt;let t=null;try{t=er.parse(JSON.parse(en(e,Af)))}catch{t=null}return vt={sealed:e,bundle:t},vt}function tn(){let e=ni();if(!e?.bundle)return null;if(e.runtime===void 0){let t=Date.now();try{e.runtime=tr(e.bundle,{signedAt:t,fetchedAt:t})}catch{e.runtime=null}}return e.runtime}function Cf(){let e=ni();return e?.bundle?(e.keys??=new Set(e.bundle.filters.map(t=>X(t.slug))),e.keys):null}function nn(e,t=!1){if(t||!e||e.length===0){let n=Cf();return n?new Set(n):null}return new Set(e.map(n=>$f.test(n)?n:X(n)))}var ri=null;function nr(e){ri=e}async function If(e,t){let n=await Ws();if(n.size>0)return st(e,n.values(),t,n);let r=tn();return r?r.selectFor(e,"free",t?[...t]:void 0):null}var Of=/^(?:grep|rg|find|eslint|ruff|flake8|mypy|prettier|biome|black|stylelint)(?:\s|$)|^git\s+(?:diff|grep)\b/,Pf=2048,Nf=8192,Df=32*1024;function Mf(e,t,n){let r=Kt(e,{...t,keep_failures:!0,fold_passing:!1,mask_abs_paths:!1,transform:void 0,truncate_lines_at:void 0,max_lines:void 0,on_empty:void 0},{verbosity:"normal",smartCode:!1});if(r.trim().length===0)return oe(e);if(n!=="compact"&&n!=="minimal")return r;let s=r.endsWith(`
72
+ `)?`
73
+ `:"";return Jt((s?r.slice(0,-1):r).split(`
74
+ `)).join(`
75
+ `)+s}async function rn(e,t,n,r={}){let s=Buffer.byteLength(t,"utf8"),{exitCode:o,yolo:i=!1,resolver:a,...l}=r,c=He(No(e.startsWith("bash-tool: ")?e.slice(11):e)),u=o!=null&&o!==0&&!(o===1&&Of.test(Wn(c)??c)),d=Io(a??ri??If),f=null;for(let D of Do(e))if(f=await d(D,n),f)break;!f&&s>=Pf&&!Kn.test(e)&&(f=await d(`bash-tool: ${e}`,n));let p=Vn(e.startsWith("bash-tool: ")?e.slice(11):e),m=f?.slug==="git-log"&&p!=null&&/^git\s+log(?:\s|$)/.test(He(p)),_=o==null&&(m?/^(?:fatal|error):/im.test(oe(t)):Oo(t)),b=f?.transform==="smart-read"&&s<=2048&&(t.endsWith(`
76
+ `)?t.slice(0,-1):t).split(`
77
+ `).length<=60,$=s<=16384&&p!=null&&/^(?:head|tail)(?:\s|$)|^sed\s+(?:(?:-[Eru]+|--(?:regexp-extended|unbuffered|sandbox))\s+)*(?:-[Enruse]*n[Enruse]*(?:\s|$)|--(?:quiet|silent)(?:\s|$))/.test(He(p)),S=f?.transform==="smart-read"&&s<=16384&&(l.verbosity??"normal")==="normal"&&l.smartCode!==!0,N=f?.slug==="read-tool"&&s<Df;if(!i&&(S||N||$||b&&l.smartCode!==!0))return{output:t,filterId:f?.slug??null,rawBytes:s,filteredBytes:s,debugBypass:u||_,droppedTail:null};if(!i&&f&&!f.preserve_exact&&(u||_)&&Ko.test(c)){let D=qo(t,l.verbosity??"normal"),Z=D===null?s:Buffer.byteLength(D,"utf8");if(D!==null&&Z<s)return{output:D,filterId:f.slug,rawBytes:s,filteredBytes:Z,debugBypass:!0,droppedTail:t,failureSummary:!0}}if(!f||(u||_)&&f.preserve_exact&&!i)return{output:t,filterId:null,rawBytes:s,filteredBytes:s,debugBypass:u||_,...i?{droppedTail:null}:{}};let C=D=>{if(!i)return D;let Z=D.filteredBytes>s||s>0&&D.output.length===0?t:D.output,fe=!D.debugBypass&&!f?.preserve_exact?Xn(Z,"minimal",D.filterId??""):Z,Je=qn(fe)===fe?fe:qn(Z);return{...D,output:Je,filteredBytes:Buffer.byteLength(Je,"utf8"),droppedTail:null}};if(f.slug==="tsc"&&!u&&!_&&!zo(e)){let D=Uo(t);if(D!==null)return C({output:D,filterId:f.slug,rawBytes:s,filteredBytes:Buffer.byteLength(D,"utf8"),debugBypass:!1,droppedTail:null})}if(u||_){let D=i?Kt(t,{...f,keep_failures:!0,transform:void 0,max_lines:void 0,truncate_lines_at:void 0,on_empty:void 0},{verbosity:"minimal",smartCode:!1}):f.strip_on_failure&&!f.preserve_exact?Mf(t,f,l.verbosity):f.strip_ansi&&!f.preserve_exact?oe(t):t;!i&&l.verbosity==="minimal"&&f.transform!=="smart-read"&&(D=Bo(D)),!i&&f.slug==="pytest"&&(l.verbosity==="compact"||l.verbosity==="minimal")&&/^={3,} test session starts ={3,}\r?$/m.test(D)&&/^={3,} FAILURES ={3,}\r?$/m.test(D)&&(D=D.replace(/^([=_])\1{2,} (.+?) \1{3,}(\r?)$/gm,"$2$3"));let Z=!i&&!f.preserve_exact&&s>=Nf?po(D.split(`
78
+ `)).join(`
79
+ `):D,fe=Z.length<D.length;return C({output:Z,filterId:f.slug,rawBytes:s,filteredBytes:Buffer.byteLength(Z,"utf8"),debugBypass:!0,...fe?{droppedTail:t}:{}})}let{text:O,droppedTail:P}=Zn(t,f,i?{...l,verbosity:"minimal",...f.transform==="smart-read"?{smartCode:!0}:{}}:l),K=!i&&!f.preserve_exact?Xn(O,l.verbosity,f.slug):O,Ge=Buffer.byteLength(K,"utf8");return t.trim().length>0&&Ge>=s?C({output:t,filterId:f.slug,rawBytes:s,filteredBytes:s,debugBypass:!1,droppedTail:null}):C({output:K,filterId:f.slug,rawBytes:s,filteredBytes:Ge,debugBypass:!1,droppedTail:P})}function Ff(){let e=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(e)&&e>0?e:6048e5}function si(e,t=Date.now()){let n=e.lastHeartbeatOkAt;if(typeof n=="number"&&t-n>Ff())return!0;if(e.subEndsAt){let r=Date.parse(e.subEndsAt);if(Number.isFinite(r)&&t>r)return!0}return!1}function oi(e,t=Date.now()){return e.plan}var Lf=[[/(authorization\s*:\s*)([A-Za-z][A-Za-z0-9._-]*)\s+[^\s'"]+/gi,"$1$2 [REDACTED]"],[/(authorization\s*:\s*)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/(bearer\s+)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-b|--cookie)[=\s]+['"]?)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/(--?(?:password|passwd|passphrase|apipass|pass|pwd|token|api[-_]?key|secret|bearer|cookie|jwt)(?:-[a-z0-9]+)*[=\s]+)\S+/gi,"$1[REDACTED]"],[/((?:^|\s)-b[=\s]?['"]?)[^\s'"=]+=[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*:)(\/[^/\s'"][^\s'"]*|[^\s/'"0-9][^\s'"]*|[0-9][^\s'"]*[^\s'"0-9][^\s'"]*)/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*[^\s:/'"0-9][^\s:/'"]*:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:[A-Za-z0-9]+-){0,8}(?:X-Api-Key|Private-Token|[A-Za-z0-9]+-(?:Token|Key|Auth|Secret))\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/(-i\s+)(\/[^\s]+|~\/[^\s]+|[A-Z]:\\[^\s]+)/g,"$1[REDACTED]"],[/([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^:/\s@]*:)[^\s@]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]];function Et(e){let t=e;for(let[n,r]of Lf)t=t.replace(n,r);return t}import{join as ci}from"node:path";import{appendFileSync as Zf,chmodSync as Gf,existsSync as Jf,mkdirSync as Kf,readFileSync as Jk,renameSync as Kk,rmdirSync as Vk,statSync as Vf,unlinkSync as Wk,utimesSync as qk,writeFileSync as Yk}from"node:fs";import{createHash as wk,randomUUID as jf}from"node:crypto";import{readFile as ii,writeFile as ai,mkdir as Hf}from"node:fs/promises";async function rr(){try{let n=(await ii(kt(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Hf(A(),{recursive:!0});let e=jf();try{return await ai(kt(),e,{mode:384,flag:"wx"}),e}catch{try{let t=(await ii(kt(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(t))return t}catch{}return await ai(kt(),e,{mode:384}),e}}import{readFile as Bf,writeFile as Tk,mkdir as Rk,chmod as Ak,rm as $k,rename as Ck,readdir as Ik}from"node:fs/promises";import{join as zf}from"node:path";var Uf="settings-cache.json",li=gt.parse({}),Dk=gt.partial().extend({filters:gt.shape.filters.removeDefault().partial().optional()});async function Be(){let e=null;try{let t=JSON.parse(await Bf(zf(A(),Uf),"utf8"));typeof t=="object"&&t!==null&&!Array.isArray(t)&&(e=t)}catch{}return e?gt.parse({...li,...e}):li}var Wf=512*1024;function ui(){return ci(A(),"spool")}function qf(e){return ci(ui(),`${e}.jsonl`)}function sn(e,t){if(xt())try{Kf(ui(),{recursive:!0,mode:448});let n=qf(e);if(Jf(n)&&Vf(n).size>=Wf)return;Zf(n,JSON.stringify(t)+`
80
+ `,{mode:384}),Gf(n,384)}catch{return}}var Xf=/^[a-z0-9][a-z0-9._-]*$/i,Qf=/^[a-z][a-z-]+$/,ep=/^[A-Za-z_][A-Za-z0-9_]*=/,tp=new Set(["gh","glab","gup","hub","gist"]),np=/^(gh[a-z]_|github_pat_|gl(?:pat|rt|soat|imt|dt|ft|agent|oas)-|npm_|xox|sk-|sk_|eyj|a(?:kia|sia|gpa|ida|roa|npa)|aiza|hv[sb]\.)/i,rp=24,fi=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"]),sp=new Set([...fi,"git","gh","node","python","python3","bash","sh","zsh","psql","mysql","sqlite3","java","ruby","perl","rg","fd","jq","make","gradle","mvn","vitest","jest","tsc","esbuild","vite","webpack","playwright","rails","rake"]),op=new Map([["git",new Set(["status","diff","log","show","blame","ls-files","rev-parse","branch","fetch","pull","push","commit","checkout","switch","merge","rebase","stash","tag","remote","add","reset","restore","clean","grep"])],["gh",new Set(["pr","issue","run","repo","api"])]]),ip=new Set(["-C","-c"]);function ap(e){if(!/[\\/]/.test(e))return e;let t=e.split(/[\\/]/).filter(r=>r.length>0).pop()??"",n=t.toLowerCase().endsWith(".exe")?t.slice(0,-4):t;return sp.has(n.toLowerCase())?n:""}function lp(e,t,n){let r=0;for(;e==="git"&&r<n.length&&n[r].startsWith("-");)r+=ip.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return t.has(s)?`${e} ${s}`:e}function di(e){let t=e.toLowerCase();return t.startsWith("git")||tp.has(t)}function sr(e){let t=e.trim().split(/\s+/).filter(l=>l.length>0),n=0;for(;n<t.length&&ep.test(t[n]??"");)n+=1;let r=ap(t[n]??"");if(!r||!Xf.test(r)||r.length>rp)return"";let s=op.get(r.toLowerCase());if(s)return lp(r.toLowerCase(),s,t.slice(n+1));if(di(r)||np.test(r)||Et(r)!==r)return"";let o=t[n+1];return o&&di(o)?"":(o&&fi.has(r.toLowerCase())&&Qf.test(o)?`${r} ${o}`:r).slice(0,64)}async function pi(e){if(!e.telemetryOptIn)return;let t=sr(e.cmd),n=t&&Et(t)===t?t:"other",r=e.sessionId?e.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";sn("telemetry",{cmd:n,tokensSaved:Math.max(0,Math.round(e.tokensSaved)),...e.tokensRestored?{tokensRestored:Math.max(0,Math.round(e.tokensRestored))}:{},...e.rawTokens!=null?{rawTokens:Math.max(0,Math.round(e.rawTokens))}:{},optimized:e.optimized,...r?{sessionId:r}:{},...e.host?{host:e.host}:{}})}async function mi(e){if(e.plan!=="pro"||Co(e.filterId)||!(await Be()).telemetryOptIn)return;let t=sr(e.cmd);!t||Et(t)!==t||sn("learn",{cmd:t,filterId:e.filterId==null?null:X(e.filterId),rawBytes:e.rawBytes,filteredBytes:e.filteredBytes})}import{appendFileSync as up,chmodSync as dp,mkdirSync as fp,readFileSync as _i,realpathSync as pp,renameSync as wi,rmSync as xi,statSync as vi,writeFileSync as or}from"node:fs";import{basename as gi,dirname as Ei,join as on,resolve as mp,sep as k_}from"node:path";var cp={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"};function hi(e){return e?cp[e]??"anthropic":"anthropic"}var hp="stats.jsonl",gp="stats-ledger.json",yi=2*1024*1024,yp=3e4,bp=3e4,kp=new Set(["n","g","e"]),_p=256;function Si(){return{n:0,nc:0,r:0,f:0,or:0,of:0,x:0,sn:0,sr:0,sf:0,mr:0,mf:0,rn:0,rb:0,tn:0,tr:0,tf:0,ox:0,t0:null,t1:null,cmds:{},prov:{},rl:{},fb:{}}}function wp(e){let t=e.trim();if(!t)return null;try{let n=JSON.parse(t);return typeof n.t!="number"||!Number.isFinite(n.t)||n.t<0||n.t>864e10||typeof n.r!="number"||!Number.isSafeInteger(n.r)||n.r<0||typeof n.f!="number"||!Number.isSafeInteger(n.f)||n.f<0||n.r+n.f===0?null:{t:n.t,r:n.r,f:n.f,m:n.m===1,...typeof n.h=="string"?{h:n.h}:{},...typeof n.k=="string"?{k:n.k}:{},...typeof n.c=="string"&&n.c?{c:n.c}:{},...typeof n.p=="string"&&n.p?{p:n.p}:{},...typeof n.s=="string"&&n.s?{s:n.s}:{},...typeof n.o=="string"&&kp.has(n.o)?{o:n.o}:{}}}catch{return null}}function xp(e,t){if(!t.c)return;let n=e.cmds[t.c]??{n:0,nc:0,r:0,f:0,sh:!1};n.n+=1,t.f<t.r&&(n.nc+=1,n.rr=(n.rr??0)+t.r,n.rf=(n.rf??0)+t.f),(t.k==="sh"||t.k==="restore")&&(n.sh=!0),n.r+=t.r,n.f+=t.f,e.cmds[t.c]=n}function vp(e){return e.s==="b"?`b:${(e.c??"").split(" ")[0]||"other"}`:e.s?.startsWith("u:")?e.s:e.o==="n"?"n":"?"}function Ep(e,t){let n=vp(t),r=e.rl[n]??{n:0,nc:0,r:0,f:0};if(r.n+=1,r.r+=t.r,r.f+=t.f,t.f<t.r&&(r.nc+=1),e.rl[n]=r,t.f>=t.r&&t.o){let s=`${t.o} ${t.c??""}`,o=e.fb[s]??{n:0,r:0};o.n+=1,o.r+=t.r,e.fb[s]=o}}function Sp(e,t){if(t.m){e.mr+=t.r,e.mf+=t.f;return}if(e.t0=e.t0==null?t.t:Math.min(e.t0,t.t),e.t1=e.t1==null?t.t:Math.max(e.t1,t.t),t.k==="sh"&&t.r>bp){e.ox+=1;return}if(xp(e,t),t.k==="restore"?(e.rn+=1,e.rb+=t.f):Ep(e,t),e.n+=1,e.or+=t.r,e.of+=t.f,t.f>t.r&&(e.x+=1),t.h==="shell"&&t.k!=="restore"&&(e.tn+=1,e.tr+=t.r,e.tf+=t.f),t.f<t.r){e.nc+=1,e.r+=t.r,e.f+=t.f,t.k==="sh"&&(e.sn+=1,e.sr+=t.r,e.sf+=t.f);let n=hi(t.h),r=e.prov[n]??{r:0,f:0};r.r+=t.r,r.f+=t.f,e.prov[n]=r}}function Tp(e){let t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Ti(e){return on(Ei(e),gp)}function Rp(e){let t=Ti(e),n;try{n=_i(t,"utf8")}catch{return{}}try{let r=JSON.parse(n);if(!r.days||typeof r.days!="object")throw new Error("invalid ledger");let s={};for(let[o,i]of Object.entries(r.days))!/^\d{4}-\d{2}-\d{2}$/.test(o)||!i||typeof i!="object"||(s[o]={...Si(),...i});return s}catch{try{wi(t,`${t}.corrupt-${Date.now()}`)}catch{}return{}}}function bi(e,t){let n=`${e}.tmp-${process.pid}`;or(n,t,{mode:384}),wi(n,e)}function Ap(e){try{return or(e,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-vi(e).mtimeMs<yp?!1:(xi(e,{force:!0}),or(e,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function $p(e,t=yi,n=yi/2){try{if(vi(e).size<=t)return}catch{return}let r=`${e}.lock`;if(Ap(r))try{let s=_i(e,"utf8").split(`
81
+ `).filter(c=>c.trim()!==""),o=s.length,i=0;for(;o>0;){let c=Buffer.byteLength(s[o-1])+1;if(i+c>n)break;i+=c,o-=1}let a=Rp(e);for(let c of s.slice(0,o)){let u=wp(c);if(!u)continue;let d=Tp(u.t),f=a[d]??Si();Sp(f,u),a[d]=f}let l=s.slice(o);bi(e,l.length?`${l.join(`
36
82
  `)}
37
- `:""),as(hs(t),JSON.stringify({v:1,days:a}))}catch{return}finally{ds(n,{force:!0})}}var qc=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Yc=new Set(["-u","-g","-n","-s","-k"]),Jc=/^[a-z0-9][a-z0-9._-]*$/i,Xc=new Set(["git","npm","pnpm","yarn","npx","docker","kubectl","helm","cargo","go","brew","gh","pip","pip3","apt","apt-get","systemctl","terraform","aws","gcloud","az","bundle","rake","rails","prisma","poetry","uv","gem","composer"]),gs=/^[A-Za-z_][A-Za-z0-9_]*=/;function cs(t){return t.length===0||t[0]==="cd"||t.every(e=>gs.test(e))}function Qc(t){let e=[],r="",n=!1,s=null,i=()=>{n&&e.push(r),r="",n=!1};for(let o of t){if(s){o===s?s=null:r+=o;continue}if(o==="'"||o==='"'){s=o,n=!0;continue}if(o===" "||o===" "){i();continue}if(`|;&<>
38
- `.includes(o)){if(i(),cs(e)){e=[];continue}return e}r+=o,n=!0}return i(),cs(e)?[]:e}function ys(t){let e=Qc(t).map(a=>a.replace(/^[({]+/,"")).filter(Boolean),r=0;for(;r<e.length;){let a=e[r];if(gs.test(a)){r+=1;continue}if(qc.has(a)){for(r+=1;r<e.length;){let c=e[r];if(c.startsWith("-")){r+=Yc.has(c)?2:1;continue}if(/^\d+(?:\.\d+)?[smhd]?$/.test(c)){r+=1;continue}break}continue}break}if(r>=e.length)return"";let n=e[r],s=n.includes("/")?n.slice(n.lastIndexOf("/")+1):n,i=e[r+1];return(i&&!i.startsWith("-")&&Jc.test(i)&&Xc.has(s.toLowerCase())?`${s} ${i}`:s).slice(0,24)}function eu(){return ps($(),jc)}function _s(t,e,r=eu(),n=!1,s,i,o){if(!Number.isSafeInteger(t)||!Number.isSafeInteger(e)||t<0||e<0||t+e===0)return;let a=s?`,"h":${JSON.stringify(s)}`:"",c=i?`,"k":${JSON.stringify(i)}`:"",u=o?`,"c":${JSON.stringify(o.slice(0,24))}`:"",l=`{"t":${Math.floor(Date.now()/1e3)},"r":${t},"f":${e}${n?',"m":1':""}${a}${c}${u}}
39
- `;try{Fc($(),{recursive:!0,mode:448}),Mc(r,l,{mode:384}),Lc(r,384),Wc(r)}catch{return}}function bs(t,e,r){let n=r!=null?Math.min(t,r):t,s=r!=null?Math.min(e,r):e;return{raw:n,filtered:s}}import{appendFileSync as tu,mkdirSync as ru,readFileSync as nu,writeFileSync as su,renameSync as iu,statSync as ou,readdirSync as em,rmSync as tm,chmodSync as au}from"node:fs";import{join as vs}from"node:path";var cu=96*1024,uu=500,sm=168*3600*1e3,lu=120;function xs(){return vs($(),"sessions")}function du(t){let e=t.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return vs(xs(),`${e}.jsonl`)}function Es(t,e){try{let r=du(t);ru(xs(),{recursive:!0,mode:448});let n=JSON.stringify({t:e.t??Math.floor(Date.now()/1e3),tool:e.tool,target:e.target.slice(0,lu),...e.fail?{fail:1}:{}});if(tu(r,`${n}
40
- `,{mode:384}),au(r,384),ou(r).size>cu){let s=nu(r,"utf8").split(`
41
- `).filter(a=>a.trim()!==""),i=s.slice(s.length-uu),o=`${r}.tmp-${process.pid}`;su(o,`${i.join(`
83
+ `:""),bi(Ti(e),JSON.stringify({v:1,days:a}))}catch{return}finally{xi(r,{force:!0})}}function Cp(e){let t=mp(e),n=t,r="";for(;;){try{return on(pp(n),r)}catch{}let s=Ei(n);if(s===n)return t;r=r?on(gi(n),r):gi(n),n=s}}var Ip=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Op=new Set(["-u","-g","-n","-s","-k"]),Pp=/^[a-z0-9][a-z0-9._-]*$/i,Np=new Set(["git","npm","pnpm","yarn","npx","docker","kubectl","helm","cargo","go","brew","gh","pip","pip3","apt","apt-get","systemctl","terraform","aws","gcloud","az","bundle","rake","rails","prisma","poetry","uv","gem","composer"]),Ri=/^[A-Za-z_][A-Za-z0-9_]*=/;function ki(e){return e.length===0||e[0]==="cd"||e.every(t=>Ri.test(t))}function Dp(e){let t=[],n="",r=!1,s=null,o=()=>{r&&t.push(n),n="",r=!1};for(let i of e){if(s){i===s?s=null:n+=i;continue}if(i==="'"||i==='"'){s=i,r=!0;continue}if(i===" "||i===" "){o();continue}if(`|;&<>
84
+ `.includes(i)){if(o(),ki(t)){t=[];continue}return t}n+=i,r=!0}return o(),ki(t)?[]:t}function an(e){let t=Dp(e).map(a=>a.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<t.length;){let a=t[n];if(Ri.test(a)){n+=1;continue}if(Ip.has(a)){for(n+=1;n<t.length;){let l=t[n];if(l.startsWith("-")){n+=Op.has(l)?2:1;continue}if(/^\d+(?:\.\d+)?[smhd]?$/.test(l)){n+=1;continue}break}continue}break}if(n>=t.length)return"";let r=t[n],s=r.includes("/")?r.slice(r.lastIndexOf("/")+1):r,o=t[n+1];return(o&&!o.startsWith("-")&&Pp.test(o)&&Np.has(s.toLowerCase())?`${s} ${o}`:s).slice(0,24)}function Mp(){return on(A(),hp)}function Ai(e,t,n=Mp(),r=!1,s,o,i,a,l={}){if(!Number.isSafeInteger(e)||!Number.isSafeInteger(t)||e<0||t<0||e+t===0)return;let c=s?`,"h":${JSON.stringify(s)}`:"",u=o?`,"k":${JSON.stringify(o)}`:"",d=i?`,"c":${JSON.stringify(i.slice(0,24))}`:"",f=a?Cp(a):"",p=f&&f.length<=_p?`,"p":${JSON.stringify(f)}`:"",m=l.s?`,"s":${JSON.stringify(l.s.slice(0,66))}`:"",_=l.o?`,"o":${JSON.stringify(l.o)}`:"",b=`{"t":${Math.floor(Date.now()/1e3)},"r":${e},"f":${t}${r?',"m":1':""}${c}${u}${d}${p}${m}${_}}
85
+ `;try{fp(A(),{recursive:!0,mode:448}),up(n,b,{mode:384}),dp(n,384),$p(n)}catch{return}}function $i(e){let t=e.filterId==null?void 0:e.filterId.startsWith("user/")?`u:${e.filterId.slice(5)}`:"b",n=e.filteredBytes<e.rawBytes?void 0:e.filterId==null?"n":e.debugBypass?"e":"g";return{...t?{s:t}:{},...n?{o:n}:{}}}function Ci(e,t,n){let r=n!=null?Math.min(e,n):e,s=n!=null?Math.min(t,n):t;return{raw:r,filtered:s}}import{appendFileSync as Fp,mkdirSync as Lp,readFileSync as jp,writeFileSync as Hp,renameSync as Bp,statSync as zp,readdirSync as E_,rmSync as S_,chmodSync as Up}from"node:fs";import{join as Ii}from"node:path";var Zp=96*1024,Gp=500,A_=168*3600*1e3,Jp=120;function Oi(){return Ii(A(),"sessions")}function Kp(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return Ii(Oi(),`${t}.jsonl`)}function Pi(e,t){try{let n=Kp(e);Lp(Oi(),{recursive:!0,mode:448});let r=JSON.stringify({t:t.t??Math.floor(Date.now()/1e3),tool:t.tool,target:t.target.slice(0,Jp),...t.fail?{fail:1}:{}});if(Fp(n,`${r}
86
+ `,{mode:384}),Up(n,384),zp(n).size>Zp){let s=jp(n,"utf8").split(`
87
+ `).filter(a=>a.trim()!==""),o=s.slice(s.length-Gp),i=`${n}.tmp-${process.pid}`;Hp(i,`${o.join(`
42
88
  `)}
43
- `,{mode:384}),iu(o,r)}}catch{}}var ws=[{host:"claude-code",vars:["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE","CLAUDE_CODE_VERSION","ANTHROPIC_CLAUDE_CODE"]},{host:"codex",vars:["CODEX_VERSION","CODEX_CLI","OPENAI_CODEX","CODEX_THREAD_ID","CODEX_SESSION_ID"]},{host:"cursor",vars:["CURSOR_VERSION","CURSOR_TRACE_ID"]},{host:"cline",vars:["CLINE_VERSION","CLINE_API_KEY"]},{host:"aider",vars:["AIDER_VERSION","AIDER_MODEL"]},{host:"gemini-cli",vars:["GEMINI_CLI_VERSION","GEMINI_API_KEY"]},{host:"windsurf",vars:["WINDSURF_VERSION","WINDSURF_USER"]},{host:"copilot",vars:["GITHUB_COPILOT_VERSION","COPILOT_INTEGRATION_ID"]}],om=[...ws.map(t=>t.host),"shell"],fu=new Set(["claude-code","codex"]);function ks(t){return null}function Ss(t=process.env){let e=process.platform,r=e==="darwin"||e==="linux"||e==="win32"?e:"other",n=process.arch;for(let s of ws)if(s.vars.some(i=>t[i]))return{host:s.host,source:"env",os:r,arch:n,shimRecommended:!fu.has(s.host)};return{host:"shell",source:"fallback",os:r,arch:n,shimRecommended:!0}}import{delimiter as Ts,join as pu,dirname as lm}from"node:path";function mu(){return pu($(),"shims")}function Rs(){let t=mu(),e={...process.env},r=process.platform==="win32"?"Path":"PATH",s=(e[r]??e.PATH??"").split(Ts).filter(i=>i&&i!==t);return e[r]=s.join(Ts),r==="Path"&&(e.PATH=e[r]),e}import{createConnection as Au}from"node:net";import{spawn as Cu}from"node:child_process";import{existsSync as Ds,openSync as Xt,closeSync as Os,unlinkSync as er,writeFileSync as tr,mkdirSync as rr,readFileSync as Iu,appendFileSync as $u,rmSync as Ou,statSync as Pu}from"node:fs";import{dirname as Du,join as nr}from"node:path";import{fileURLToPath as Nu}from"node:url";var hu=h.object({id:h.string().min(1).max(64),op:h.literal("filter"),cmd:h.string().min(1).max(2048),plan:h.enum(["trial","smart","pro"]),allowed:h.array(h.string().min(1).max(64)).max(512).optional(),installId:h.string().min(1).max(64).optional()}),gu=h.object({id:h.string().min(1).max(64),op:h.literal("ping")}),yu=h.object({id:h.string().min(1).max(64),op:h.literal("shutdown"),installId:h.string().min(1).max(64)}),_u=h.object({id:h.string().min(1).max(64),op:h.literal("reload"),installId:h.string().min(1).max(64).optional()}),gm=h.discriminatedUnion("op",[hu,gu,yu,_u]),ym=h.object({id:h.string(),ok:h.literal(!0),data:h.unknown()}),_m=h.object({id:h.string(),ok:h.literal(!1),err:h.string(),retryAfterMs:h.number().int().nonnegative().optional()}),As=h.object({filter:Le.nullable(),cacheHit:h.boolean().optional()}),gt=`
44
- `,bm=64*1024;function qt(t){return JSON.stringify(t)+gt}function*Cs(t){let e=0;for(;;){let r=t.indexOf(gt,e);if(r<0)return;yield t.slice(e,r),e=r+1}}function Qe(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}import bu from"node:os";import{join as et}from"node:path";import{existsSync as vu,statSync as xu,lstatSync as Is,unlinkSync as Eu,mkdirSync as wu,chmodSync as ku}from"node:fs";import{createHash as Su}from"node:crypto";var Yt=100;function Tu(t){let e=Su("sha256").update($()).digest("hex").slice(0,8),r=et(bu.tmpdir(),`tkr-${t}-${e}`),n=et(r,"d.sock");if(Buffer.byteLength(n)>Yt)throw new Error("Temporary directory path is too long for IPC");return $s(r,t),n}function Ru(t,e){try{let r=Is(t);return r.isDirectory()&&r.uid===e&&(r.mode&63)===0}catch{return!1}}function $s(t,e){wu(t,{recursive:!0,mode:448});let r=Is(t);if(!r.isDirectory()||r.uid!==e)throw new Error("Unsafe IPC directory");ku(t,448)}function tt(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let t=typeof process.getuid=="function"?process.getuid():0,e=process.env.XDG_RUNTIME_DIR;if(e&&Ru(e,t)){let s=et(e,`tokmizer-${t}.sock`);if(Buffer.byteLength(s)<=Yt)return{path:s,isPipe:!1}}let r=et($(),"run"),n=et(r,"daemon.sock");return Buffer.byteLength(n)>Yt?{path:Tu(t),isPipe:!1}:($s(r,t),{path:n,isPipe:!1})}async function Jt(){let{path:t,isPipe:e}=tt();if(e||!vu(t))return;try{if(!xu(t).isSocket())return}catch{return}let r=await import("node:net");if(!await new Promise(s=>{let i=r.createConnection(t),o=a=>{i.removeAllListeners();try{i.destroy()}catch{}s(a)};i.once("connect",()=>o(!0)),i.once("error",a=>{let c=a.code;o(c!=="ECONNREFUSED"&&c!=="ENOENT")}),setTimeout(()=>o(!0),250)}))try{Eu(t)}catch{}}var Tm=5*6e4;var Ns=500,Mu=3e3,Ps=1,Lu=6e4,Fu=256*1024;function sr(){return nr($(),"daemon.spawn.fail")}function ir(){return nr($(),"daemon.log")}function Bu(){try{let t=Number(Iu(sr(),"utf8"));return Number.isFinite(t)&&Date.now()-t<Lu}catch{return!1}}function ju(t){try{rr($(),{recursive:!0});let e=ir();try{Pu(e).size>Fu&&er(e)}catch{}$u(e,`${new Date().toISOString()} ${t}
45
- `)}catch{}}function zu(t){try{rr($(),{recursive:!0}),tr(sr(),String(Date.now()))}catch{}ju(`spawn failed: ${t.message}`)}function Zu(){try{Ou(sr(),{force:!0})}catch{}}async function yt(t,e){return new Promise((r,n)=>{let s=Au(t),i=a=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(o),a){try{s.destroy()}catch{}n(a)}else r(s)},o=setTimeout(()=>i(new Error("connect timeout")),e);s.once("connect",()=>i(null)),s.once("error",a=>i(a))})}function Uu(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:Nu(new URL("../bin/tkr-daemon.js",import.meta.url))}async function Qt(t,e=3e3){let r=Math.ceil(e/75),n=process.platform==="win32";for(let s=0;s<r;s++){if(n)try{return(await yt(t,75)).destroy(),!0}catch{}else if(Ds(t))return!0;await new Promise(i=>setTimeout(i,75))}return!1}async function Hu(t){let e=Uu();if(!Ds(e))throw new Error(`tkr-daemon binary not found at ${e}`);let{path:r}=tt(),n=process.platform==="win32"?$():Du(r);try{rr(n,{recursive:!0})}catch{}let s=nr(n,"daemon.spawn.lock"),i=null;try{i=Xt(s,"wx"),tr(i,String(process.pid))}catch(o){if(o.code==="EEXIST"){if(await Qt(r,5e3))return;try{er(s)}catch{}try{i=Xt(s,"wx"),tr(i,String(process.pid))}catch(c){if(c.code==="EEXIST"){await Qt(r,5e3);return}throw c}}else throw o}try{let o=null;try{o=Xt(ir(),"a")}catch{}if(Cu(process.execPath,[e],{detached:!0,stdio:["ignore","ignore",o??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:t}}).unref(),o!==null)try{Os(o)}catch{}if(!await Qt(r,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(i!==null){try{Os(i)}catch{}try{er(s)}catch{}}}}async function Vu(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:tt(),r=await Gt();try{let n=await yt(e,Ns);n.write(qt({id:Qe(),op:"shutdown",installId:r})),await new Promise(s=>setTimeout(s,150));try{n.destroy()}catch{}return!0}catch{return!1}}async function Gu(t,e){let r=Date.now()+e;for(;Date.now()<r;){try{(await yt(t,250)).destroy()}catch{return!0}await new Promise(n=>setTimeout(n,100))}return!1}async function or(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:tt(),r=await Gt(),n=null,s=0,i=!1;for(;s<=Ps;)try{n=await yt(e,Ns),Zu();break}catch{if(s+=1,s>Ps)throw new Error(`tkr-daemon unreachable at ${e}`);if(Bu())throw new Error(`tkr-daemon spawn on cooldown (see ${ir()})`);await Jt();try{await Hu(r),i=!0}catch(l){throw zu(l),l}}if(!n)throw new Error("tkr-daemon: socket setup failed");let o=new Map,a="";n.setEncoding("utf8"),n.on("data",l=>{a+=l;let f=-1;for(let m=0;m<a.length;m++)a[m]===gt&&(f=m);if(f<0)return;let d=[];for(let m of Cs(a.slice(0,f+1)))d.push(m);a=a.slice(f+1);for(let m of d)if(m)try{let v=JSON.parse(m),w=o.get(v.id);if(!w)continue;clearTimeout(w.timer),o.delete(v.id),w.resolve(v)}catch{}}),n.on("close",()=>{for(let l of o.values())clearTimeout(l.timer),l.reject(new Error("daemon socket closed"));o.clear()}),n.on("error",()=>{});function c(l){return new Promise((f,d)=>{if(n.destroyed||!n.writable){d(new Error("daemon socket closed"));return}let m=setTimeout(()=>{o.delete(l.id),d(new Error(`daemon request timeout (${l.op})`))},Mu);o.set(l.id,{resolve:f,reject:d,timer:m}),n.write(qt(l))})}let u={filter:async(l,f,d)=>{let m=await c({id:Qe(),op:"filter",cmd:l.slice(0,2048),plan:f,...d&&d.length>0?{allowed:d.slice(0,512)}:{},installId:r});if(!m.ok)return null;let v=As.safeParse(m.data);return v.success?v.data.filter:null},ping:async()=>{let l=await c({id:Qe(),op:"ping"});if(!l.ok)throw new Error(l.err);return l.data},reload:async()=>{let l=await c({id:Qe(),op:"reload",installId:r});if(!l.ok)throw new Error(l.err);return l.data},close:()=>{try{n.destroy()}catch{}}};if(!t.skipVersionCheck&&!i){let l=!1;try{let f=await u.ping();if(f.version&&Yn(mt,f.version))throw new Error(`newer daemon ${f.version} already running`);l=f.version!==mt}catch(f){throw u.close(),f}if(l){try{await Vu(t.socketPath?{socketPath:t.socketPath}:{})}catch{}u.close();let f=await Gu(e,2e3);if(await Jt(),!f)throw new Error("stale daemon still running after shutdown request");return or({...t,skipVersionCheck:!0})}}return u}import{createPublicKey as rl,verify as nl}from"node:crypto";import{createCipheriv as zm,createDecipheriv as Ku,hkdfSync as Wu,randomBytes as Zm}from"node:crypto";var qu=Buffer.from("tokmizer-bundle-enc-v1"),Yu=Buffer.from("rules-bundle");function Ju(t){return Buffer.from(Wu("sha256",Buffer.from(t,"utf8"),qu,Yu,32))}function Ms(t,e){let r=Ju(e),n=Buffer.from(t,"base64url"),s=n.subarray(0,12),i=n.subarray(12,28),o=n.subarray(28),a=Ku("aes-256-gcm",r,s);return a.setAuthTag(i),Buffer.concat([a.update(o),a.final()]).toString("utf8")}import{chmodSync as Vm,readFileSync as Xu,writeFileSync as Gm,mkdirSync as Km,renameSync as Wm}from"node:fs";import{join as Qu}from"node:path";var el=h.object({payload:h.string().min(1),signature:h.string().min(1),enc:h.literal("v1"),fetchedAt:h.number().int().nonnegative()});function tl(){return Qu($(),"bundle-cache.json")}function Ls(){try{let t=Xu(tl(),"utf8"),e=el.safeParse(JSON.parse(t));return e.success?e.data:null}catch{return null}}var sl=h.object({bundleVersion:h.number().int().nonnegative(),signedAt:h.number().int(),filters:h.array(Le)}),ch=h.object({payload:h.string().min(1),signature:h.string().min(1),enc:h.literal("v1")}),il=10080*60*1e3;function ol(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?t:il}function al(t,e){let r=Xn();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("tkr-daemon: no valid signing public key configured (set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM at build time).");let n=rl({key:r,format:"pem"});if(!nl(null,Buffer.from(t.payload,"utf8"),n,Buffer.from(t.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(Ms(t.payload,e))}function cl(t,e){let r=al(t,e),n=sl.parse(r);if(Date.now()-n.signedAt>ol())throw new Error("tkr-daemon: rules bundle is stale");let s=new Map;for(let i of n.filters)s.set(i.slug,{...i,matchRegex:new RegExp(i.match_command)});return{bundleVersion:n.bundleVersion,signedAt:n.signedAt,ruleCount:s.size,startedAt:Date.now(),fetchedAt:Date.now(),selectFor:(i,o,a)=>lt(i,s.values(),a?new Set(a):null,s)}}async function Fs(){try{let t=Ls();if(!t)return null;let e=await Je();return e?.signingSecret?cl(t,e.signingSecret):null}catch{return null}}var je=null,rt=null;async function ul(){if(je)return je;if(rt)return rt;let t=or().then(e=>{if(rt===t)return je=e,e;try{e.close()}catch{}return null}).catch(()=>null);return rt=t,t}var ar=null,cr=!1;async function ll(){return cr||(cr=!0,ar=await Fs()),ar}async function Bs(t,e,r){let n=await ll();if(!n)return null;let s=n.selectFor(t,e,[...r]);return!s||!r.has(V(s.slug))?null:s}function dl(t){return t?{...t,matchRegex:new RegExp(t.match_command)}:null}function js(t){Ut(async(e,r)=>{let n=t==="free"?"trial":t,s=r??ut(void 0),i=await ul();if(!i)return Bs(e,n,s);try{let o=await i.filter(e,n,[...s]);return!o||!s.has(V(o.slug))?null:dl(o)}catch{return Bs(e,n,s)}})}function zs(){if(Ut(null),je)try{je.close()}catch{}je=null,rt=null,ar=null,cr=!1}import{chmod as ml,mkdir as hl,readFile as vh,writeFile as gl,stat as xh,readdir as Eh,rm as Zs,rename as yl}from"node:fs/promises";import{createHash as Us}from"node:crypto";import{readFileSync as fl}from"node:fs";import{join as pl}from"node:path";function ae(){try{return fl(pl($(),"yolo-mode"),"utf8")==="on"}catch{return!1}}var Th=10080*60*1e3,Rh=100*1024*1024,_l=2*1024*1024,bl=/^[0-9a-f]{8,64}$/i;function vl(t,e,r=process.env){let n=Number(r[t]);return Number.isFinite(n)&&n>0?n:e}async function Hs(t,e,r=process.env){if(ae()||!bl.test(t)||Buffer.byteLength(e,"utf8")>vl("TOKMIZER_CCR_ENTRY_MAX_BYTES",_l,r))return!1;let n=Vn(t),s=`${n}.tmp-${process.pid}-${process.hrtime.bigint()}`;try{return await hl(Vt(),{recursive:!0}),ae()?!1:(await gl(s,e,{mode:384}),await ml(s,384),ae()?(await Zs(s,{force:!0}),!1):(await yl(s,n),!0))}catch{try{await Zs(s)}catch{}return!1}}async function Vs(t,e,r=process.env){let n=r.TOKMIZER_CCR_DISABLED;if(n==="1"||n==="true"||ae()||!t)return e;let s=Us("sha256").update(t).digest("hex").slice(0,16),i=`
46
- [tkr restore ${s}]`;return Buffer.byteLength(t,"utf8")<=Buffer.byteLength(i,"utf8")||!await Hs(s,t,r)?e:`${e}${i}`}async function Gs(t,e,r=process.env){let n=r.TOKMIZER_CCR_DISABLED;if(n==="1"||n==="true"||ae()||!t)return e;let s=Us("sha256").update(t).digest("hex").slice(0,16);return await Hs(s,t,r)?`${e}
47
- [tkr restore ${s}]`:e}var ze=10*1024*1024,Al=1024,Cl=6e4;function Ks(t,e){let r=new Rl("utf8"),n=r.write(Buffer.concat(t));return e?n:n+r.end()}function Il(){try{let t=process.env.TOKMIZER_TKR_BIN||Tl(new URL("../bin/tkr.js",import.meta.url));if(!xl(t))return;let e=Sl($(),"enroll-kick");try{let n=Number(El(e,"utf8"));if(Number.isFinite(n)&&Date.now()-n<Cl)return}catch{}kl($(),{recursive:!0}),wl(e,String(Date.now())),(0,ur.default)(process.execPath,[t,"heartbeat"],{detached:!0,stdio:"ignore"}).unref()}catch{}}function $l(t){let e=Number(t.TOKMIZER_EXEC_TIMEOUT_MS);if(Number.isFinite(e)&&e>0)return e;let r=Number(t.BASH_MAX_TIMEOUT_MS);return Number.isFinite(r)&&r>6e5?r:6e5}var Ol=$l(process.env),Pl={SIGHUP:1,SIGINT:2,SIGQUIT:3,SIGILL:4,SIGTRAP:5,SIGABRT:6,SIGBUS:7,SIGFPE:8,SIGKILL:9,SIGUSR1:10,SIGSEGV:11,SIGUSR2:12,SIGPIPE:13,SIGALRM:14,SIGTERM:15};function lr(t){return Pl[t]??15}async function Ws(t){let[e,...r]=t;if(!e)throw new Error("tkr-exec: missing command");let n=ae(),s=(0,ur.default)(e,r,{stdio:["inherit","pipe","pipe"],env:Rs()}),i=!1;s.on("spawn",()=>{i=!0});let o=A=>{try{s.kill(A)}catch{}},a=()=>o("SIGINT"),c=()=>o("SIGTERM");process.on("SIGINT",a),process.on("SIGTERM",c);let u=[],l=[],f=0,d=0,m=!1,v=!1;s.stdout?.on("data",A=>{if(f>=ze){m=!0;return}let O=ze-f,C=A.length>O?A.subarray(0,O):A;u.push(C),f+=C.length,A.length>O&&(m=!0)}),s.stderr?.on("data",A=>{if(d>=ze){v=!0;return}let O=ze-d,C=A.length>O?A.subarray(0,O):A;l.push(C),d+=C.length,A.length>O&&(v=!0)});let w,_,I;try{I=await new Promise((A,O)=>{s.on("error",C=>{w&&clearTimeout(w),i?A(1):O(C)}),s.on("close",(C,G)=>{w&&clearTimeout(w),A(C??(G?128+lr(G):0))}),w=setTimeout(()=>{s.kill("SIGTERM"),_=setTimeout(()=>s.kill("SIGKILL"),2e3)},Ol),w.unref?.()})}finally{w&&clearTimeout(w),_&&clearTimeout(_),process.off("SIGINT",a),process.off("SIGTERM",c)}let k=Ks(u,m),P=Ks(l,v);return Dl({argv:t,stdout:k,stderr:P,exitCode:I,truncated:m,stderrTruncated:v},{yolo:n,env:process.env,onMissingState:Il})}async function Dl({argv:t,stdout:e,stderr:r,exitCode:n,truncated:s,stderrTruncated:i},{yolo:o,env:a,resolver:c,onMissingState:u,deferAccounting:l}){let f=s?`
48
- \u2026 (output truncated at ${ze/1048576}MB)`:"",d=i?`
49
- \u2026 (stderr truncated at ${ze/(1024*1024)}MB)`:"",m=()=>{let v=e+f,w=Buffer.byteLength(v,"utf8");return{stdout:v,stderr:r+d,code:n,filterId:null,rawBytes:w,filteredBytes:w,truncated:s}};try{let v=await Je();v||u?.();let w=await Be();if(!w.enabled)return m();let _=a.CLAUDE_CODE_SESSION_ID;_&&v?.token&&Es(_,{tool:"Bash",target:t.join(" "),...n!==0?{fail:1}:{}});let I=v?Kn(v):null,k=v?ut(v.allowedFilters,Gn(v)):null,P=new Set(w.filters.disabled.map(V)),A=k&&P.size>0?new Set([...k].filter(He=>!P.has(He))):k,O=t.join(" ");v&&!c&&js(I);let C=await Ht(O,e,A,{verbosity:w.outputVerbosity,resolver:c,yolo:o,exitCode:n}),G=r,D=0,Se=0;if((o||n===0)&&Buffer.byteLength(r,"utf8")>=(o?1:Al)){let He=await Ht(O,r,A,{verbosity:w.outputVerbosity,resolver:c,yolo:o,exitCode:n});G=He.output,D=He.rawBytes,Se=He.filteredBytes}let Te=C.output;if(!o&&C.filteredBytes<C.rawBytes)try{Te=new RegExp(Sn.source,"m").test(C.output)?await Gs(e,C.output,a):await Vs(C.droppedTail??null,C.output,a)}catch{}let _t=Te+f,Ze=G+d,bt=Ss(a).host,Ue=bs(C.rawBytes+Buffer.byteLength(r,"utf8"),Buffer.byteLength(_t,"utf8")+Buffer.byteLength(Ze,"utf8"),ks(bt)),dr=!1,fr=async()=>{if(!dr){dr=!0;try{_s(Ue.raw,Ue.filtered,void 0,!1,bt,"sh",ys(O)),await ss({cmd:O,filterId:C.filterId,rawBytes:C.rawBytes,filteredBytes:C.filteredBytes,plan:I}),await ns({cmd:O,tokensSaved:Math.max(0,Math.round((Ue.raw-Ue.filtered)/4)),rawTokens:Math.round(Ue.raw/4),optimized:C.filterId!=null,telemetryOptIn:w.telemetryOptIn&&(!l||(await Be()).telemetryOptIn),sessionId:_,host:bt})}catch{}}};return l?l(fr):await fr(),{stdout:_t,stderr:Ze,code:n,filterId:C.filterId,rawBytes:C.rawBytes+D,filteredBytes:C.filteredBytes+Se,truncated:s}}catch{return m()}finally{c||zs()}}function qs(t=process.stdout,e=r=>process.exit(r)){t.on("error",r=>{if(r.code==="EPIPE"){e(141);return}throw r})}qs();async function Nl(t){let[e,...r]=t;e||process.exit(2);let n=(0,Ys.default)(e,r,{stdio:"inherit"}),s=await new Promise(i=>{n.on("error",()=>i(127)),n.on("close",(o,a)=>i(o??(a?128+lr(a):0)))});process.exit(s)}async function Ml(){let t=process.argv.slice(2);t.length===0&&(process.stderr.write(`tkr-exec: missing command
50
- `),process.exit(2));let e;try{e=await Ws(t)}catch(r){return process.stderr.write(`tkr-exec: ${r.message??r}
51
- `),Nl(t)}e.stdout&&process.stdout.write(e.stdout),e.stderr&&process.stderr.write(e.stderr),process.exitCode=e.code}Ml().catch(t=>{process.stderr.write(`${t.message??t}
89
+ `,{mode:384}),Bp(i,n)}}catch{}}import{existsSync as U_,readFileSync as sm}from"node:fs";import{join as om}from"node:path";import im from"node:os";import{readFile as Xp,writeFile as Qp,rename as em,mkdir as tm,copyFile as nm}from"node:fs/promises";import{existsSync as ir,accessSync as M_,constants as F_}from"node:fs";import{join as rm}from"node:path";import{basename as Vp}from"node:path";var Wp={exec:"tkr-exec",processor:"tkr-processor",daemon:"tkr-daemon","shim-run":"tkr-shim"},qp={codex:"tkr-codex-hook",cursor:"tkr-cursor-hook",gemini:"tkr-gemini-hook",agent:"tkr-agent-hook",copilot:"tkr-copilot-hook",droid:"tkr-droid-hook",trae:"tkr-trae-hook",qwen:"tkr-qwen-hook",crush:"tkr-crush-hook",junie:"tkr-junie-hook",zcode:"tkr-zcode-hook",grok:"tkr-grok-hook","pre-tool-use":"pre-tool-use","post-tool-use":"post-tool-use","session-recap":"session-recap","session-start":"on-session-start","reducer-session-start":"reducer-session-start","reducer-prompt-submit":"reducer-prompt-submit","reducer-stop":"reducer-stop"};function ln(e){let t=Vp(e).replace(/\.(m?js|ts)$/,"");if(t==="tkr")return[];for(let[n,r]of Object.entries(Wp))if(r===t)return[n];for(let[n,r]of Object.entries(qp))if(r===t)return["hook",n];return null}function ze(){return!1}function St(e,t=process.execPath){let n=ze()?ln(e):null;return n?[process.execPath,...n]:[t,e]}function M(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}async function _e(e){if(!ir(e))return{};try{let t=JSON.parse(await Xp(e,"utf8"));return M(t)?t:null}catch{return null}}async function we(e,t){try{await tm(rm(e,".."),{recursive:!0});let n=`${e}.tkr-bak`;ir(e)&&!ir(n)&&await nm(e,n);let r=`${e}.tmp-${process.pid}`;return await Qp(r,`${JSON.stringify(t,null,2)}
90
+ `),await em(r,e),!0}catch{return!1}}var am="tkr-cursor-hook",Ni="preToolUse";function lm(){return om(im.homedir(),".cursor","hooks.json")}function cm(e){return typeof e.command=="string"&&e.command.includes(am)}function um(e){let t=M(e.hooks)?e.hooks:{},n=Array.isArray(t[Ni])?t[Ni]:[];return{hooks:t,entries:n}}function Di(){try{let e=JSON.parse(sm(lm(),"utf8"));return um(e).entries.some(cm)}catch{return!1}}import{existsSync as W_,readFileSync as dm}from"node:fs";import{join as fm}from"node:path";import pm from"node:os";var mm="tkr-gemini-hook",Mi="BeforeTool";function hm(){return fm(process.env.GEMINI_CLI_HOME||pm.homedir(),".gemini","settings.json")}function gm(e){return typeof e.command=="string"&&e.command.includes(mm)}function ym(e){return(Array.isArray(e.hooks)?e.hooks:[]).find(gm)}function bm(e){let t=M(e.hooks)?e.hooks:{},n=Array.isArray(t[Mi])?t[Mi]:[];return{hooks:t,groups:n}}function Fi(){try{let e=JSON.parse(dm(hm(),"utf8"));return bm(e).groups.some(t=>ym(t)!=null)}catch{return!1}}import{dirname as gw,join as Q}from"node:path";import $m from"node:os";import{existsSync as tw,accessSync as nw,constants as rw,readFileSync as km}from"node:fs";var _m='"rewrite", "--host"';function wm(e){return e.includes(_m)}function Li(e){try{return wm(km(e,"utf8"))}catch{return!1}}import{readFile as Hi,writeFile as xm,rename as vm,mkdir as Em,copyFile as Sm}from"node:fs/promises";import{existsSync as Tt,readFileSync as Bi}from"node:fs";import{dirname as Tm,join as lr}from"node:path";import zi from"node:os";var Ui="tokmizer-rewrite",Rt="tokmizer-rewrite";function $t(){return lr(process.env.VIBE_HOME||lr(zi.homedir(),".vibe"),"hooks.toml")}function ji(e){return JSON.stringify(e)}function Rm(e){return["[[hooks]]",`name = ${ji(Ui)}`,'type = "pre_tool"','match = "bash"',`command = ${ji(e)}`,"timeout = 10.0","strict = false",'description = "Route shell commands through tokmizer."',""].join(`
91
+ `)}function cr(e){let t=[],n=[];for(let r of e.split(/(?<=\n)/))/^\s*\[\[?\s*[A-Za-z0-9_-]/.test(r)&&n.length&&(t.push(n.join("")),n=[]),n.push(r);return n.length&&t.push(n.join("")),t}function At(e){return/^\s*\[\[hooks\]\]/.test(e)&&new RegExp(`^\\s*name\\s*=\\s*"${Ui}"\\s*$`,"m").test(e)}async function Zi(e,t){try{await Em(Tm(e),{recursive:!0}),Tt(e)&&!Tt(`${e}.tkr-bak`)&&await Sm(e,`${e}.tkr-bak`);let n=`${e}.tmp-${process.pid}`;return await xm(n,t),await vm(n,e),!0}catch{return!1}}function Gi(){try{return cr(Bi($t(),"utf8")).some(At)}catch{return!1}}async function Ji(e){let t=$t(),n="";try{Tt(t)&&(n=await Hi(t,"utf8"))}catch{return"error"}let r=Rm(e),s=cr(n),o=s.filter(At);if(o.length===1&&o[0].trimEnd()===r.trimEnd())return"present";let i=s.filter(l=>!At(l)).join("").trimEnd(),a=i?`${i}
92
+
93
+ ${r}`:r;return await Zi(t,a)?o.length?"updated":"added":"error"}async function Ki(){let e=$t();if(!Tt(e))return"absent";let t;try{t=await Hi(e,"utf8")}catch{return"error"}let n=cr(t);if(!n.some(At))return"absent";let r=n.filter(o=>!At(o)).join("").trimEnd(),s=r?`${r}
94
+ `:"";return await Zi(e,s)?"removed":"error"}function Ct(){return lr(zi.homedir(),".gemini","config","hooks.json")}function Am(e){return{enabled:!0,PreToolUse:[{matcher:"run_command",hooks:[{type:"command",command:e,timeout:10}]}]}}function Vi(){try{let e=JSON.parse(Bi(Ct(),"utf8"));return M(e)&&M(e[Rt])}catch{return!1}}async function Wi(e){let t=Ct(),n=await _e(t);if(!n)return"error";let r=Am(e),s=n[Rt];return s!==void 0&&JSON.stringify(s)===JSON.stringify(r)?"present":(n[Rt]=r,await we(t,n)?s===void 0?"added":"updated":"error")}async function qi(){let e=Ct();if(!Tt(e))return"absent";let t=await _e(e);return t?Rt in t?(delete t[Rt],await we(e,t)?"removed":"error"):"absent":"error"}var It=()=>$m.homedir(),ur=()=>process.env.XDG_CONFIG_HOME||Q(It(),".config"),Yi=[{host:"opencode",label:"OpenCode",command:"setup-opencode",kind:"shim",files:()=>[{template:"opencode.js",target:Q(ur(),"opencode","plugins","tokmizer.js")}],next:"Restart OpenCode so it loads the plugin."},{host:"kilo",label:"Kilo Code",command:"setup-kilo",kind:"shim",files:()=>[{template:"kilo.js",target:Q(ur(),"kilo","plugin","tokmizer.js")}],next:"Restart Kilo Code (CLI or VS Code extension) so it loads the plugin."},{host:"amp",label:"Amp",command:"setup-amp",kind:"shim",files:()=>[{template:"amp.js",target:Q(ur(),"amp","plugins","tokmizer.js")}],next:"Reload plugins in Amp (or restart it), then check it with: amp plugins list"},{host:"vibe",label:"Mistral Vibe",command:"setup-vibe",kind:"hook",file:$t,installed:Gi,ensure:Ji,remove:Ki,next:"Restart Vibe so it reads hooks.toml."},{host:"antigravity",label:"Antigravity",command:"setup-antigravity",kind:"hook",file:Ct,installed:Vi,ensure:Wi,remove:qi,next:"Restart Antigravity, then check it with /hooks."},{host:"openclaw",label:"OpenClaw",command:"setup-openclaw",kind:"shim",files:()=>{let e=Q(It(),".openclaw","extensions","tokmizer");return["index.js","openclaw.plugin.json","package.json"].map(t=>({template:`openclaw/${t}`,target:Q(e,t)}))},next:"Run: openclaw plugins enable tokmizer && openclaw gateway restart"},{host:"pi",label:"Pi",command:"setup-pi",kind:"shim",files:()=>[{template:"pi.js",target:Q(process.env.PI_CODING_AGENT_DIR||Q(It(),".pi","agent"),"extensions","tokmizer.js")}],next:"Restart Pi (or run /reload) so it loads the extension."},{host:"omp",label:"Oh My Pi",command:"setup-omp",kind:"shim",files:()=>[{template:"omp.js",target:Q(It(),".omp","agent","extensions","tokmizer.js")}],next:"Restart omp so it loads the extension."},{host:"hermes",label:"Hermes",command:"setup-hermes",kind:"shim",files:()=>{let e=Q(process.env.HERMES_HOME||Q(It(),".hermes"),"plugins","tokmizer");return["__init__.py","plugin.yaml"].map(t=>({template:`hermes/${t}`,target:Q(e,t)}))},next:"Run: hermes plugins enable tokmizer, then restart Hermes (needs Hermes v2026.8.16 or newer)."}];function Xi(e){return e.kind==="hook"?e.installed():Li(e.files()[0].target)}import{existsSync as hr,readFileSync as Dm}from"node:fs";import{join as j}from"node:path";import Mm from"node:os";import{existsSync as Cm,readFileSync as Im}from"node:fs";function dr(e,t){return M(e)&&typeof e.command=="string"&&e.command.includes(t)}function Qi(e){return e.path??(e.nested?["hooks"]:[])}function ea(e,t){let n=e;for(let r of Qi(t))M(n[r])||(n[r]={}),n=n[r];return n}function ta(e,t){let n=e;for(let s of Qi(t))n=M(n)?n[s]:void 0;if(!M(n))return[];let r=n[t.event];return Array.isArray(r)?r:[]}function Om(e){return M(e)&&Array.isArray(e.hooks)?e.hooks:[]}function na(e,t){return(t.matcher===void 0?e:e.flatMap(Om)).filter(r=>dr(r,t.mark))}function ra(e,t){return na(ta(e,t),t).length>0}function fr(e,t){try{let n=JSON.parse(Im(e,"utf8"));return M(n)&&ra(n,t)}catch{return!1}}function Pm(e,t,n){let r=ea(e,t),s=Array.isArray(r[t.event])?r[t.event]:[];r[t.event]=s;let o=na(s,t)[0];if(o)return o.command===n?"present":(o.command=n,"updated");let i=t.entry(n);return s.push(t.matcher===void 0?i:{matcher:t.matcher,hooks:[i]}),"added"}function Nm(e,t){if(!ra(e,t))return!1;let n=ea(e,t),r=ta(e,t),s=t.matcher===void 0?r.filter(o=>!dr(o,t.mark)):r.map(o=>M(o)&&Array.isArray(o.hooks)?{...o,hooks:o.hooks.filter(i=>!dr(i,t.mark))}:o).filter(o=>!M(o)||!Array.isArray(o.hooks)||o.hooks.length>0);return s.length?n[t.event]=s:delete n[t.event],!0}async function pr(e,t,n){let r=await _e(e);if(!r||t.prepare&&!t.prepare(r))return"error";let s=Pm(r,t,n);return s==="present"||await we(e,r)?s:"error"}async function cn(e,t){if(!Cm(e))return"absent";let n=await _e(e);return n?Nm(n,t)?await we(e,n)?"removed":"error":"absent":"error"}function ie(){return Mm.homedir()}function aa(e){return e.version===void 0&&(e.version=1),e.version===1}function Fm(e,t,n){return Promise.all(e.map(r=>pr(r,t,n))).then(r=>r.includes("error")?"error":r.includes("updated")?"updated":r.includes("added")?"added":"present")}function Lm(e,t){return Promise.all(e.map(n=>cn(n,t))).then(n=>n.includes("error")?"error":n.includes("removed")?"removed":"absent")}function Ue(e,t){return{...e,installed:()=>e.files().some(n=>fr(n,t)),ensure:n=>Fm(e.files(),t,n),remove:()=>Lm(e.files(),t)}}var jm={mark:"tkr-copilot-hook",event:"PreToolUse",nested:!0,entry:e=>({type:"command",command:e,bash:e,powershell:e,timeout:10,timeoutSec:10}),prepare:aa};function Hm(){return j(process.env.COPILOT_HOME||j(ie(),".copilot"),"hooks","tokmizer.json")}var Bm={mark:"tkr-trae-hook",event:"PreToolUse",nested:!0,matcher:"RunCommand",entry:e=>({type:"command",command:e,timeout:30}),prepare:aa};function zm(){let e=[j(ie(),".trae","hooks.json")];return hr(j(ie(),".trae-cn"))&&e.push(j(ie(),".trae-cn","hooks.json")),e}var Um={mark:"tkr-qwen-hook",event:"PreToolUse",nested:!0,matcher:"run_shell_command",entry:e=>({name:"tokmizer",type:"command",command:e,timeout:10})};function Zm(){return j(process.env.QWEN_HOME||j(ie(),".qwen"),"settings.json")}var Gm={mark:"tkr-crush-hook",event:"PreToolUse",nested:!0,entry:e=>({name:"tokmizer",matcher:"^bash$",command:e,timeout:10})};function Jm(){return j(process.env.XDG_CONFIG_HOME||j(ie(),".config"),"crush","crush.json")}var Km={mark:"tkr-junie-hook",event:"PreToolUse",nested:!0,matcher:"^Bash$",entry:e=>({type:"command",command:e,timeout:10})};function Vm(){return j(ie(),".junie","config.json")}var Wm={mark:"tkr-zcode-hook",event:"PreToolUse",nested:!0,path:["hooks","events"],matcher:"Bash",entry:e=>({type:"command",command:e,timeoutMs:1e4}),prepare:e=>(e.hooks===void 0&&(e.hooks={}),M(e.hooks)?(e.hooks.enabled===void 0&&(e.hooks.enabled=!0),e.hooks.events===void 0||M(e.hooks.events)):!1)};function qm(){return j(ie(),".zcode","cli","config.json")}var Ym={mark:"tkr-grok-hook",event:"PreToolUse",nested:!0,matcher:"Bash",entry:e=>({type:"command",command:e,timeout:10})};function Xm(){return j(ie(),".grok","hooks","tokmizer.json")}var Qm="tkr-droid-hook",gr={mark:Qm,event:"PreToolUse",nested:!1,matcher:"Execute",entry:e=>({type:"command",command:e,timeout:10})},eh={...gr,nested:!0};function mr(){return j(ie(),".factory")}function un(){return[{file:j(mr(),"hooks.json"),spec:gr},{file:j(mr(),"hooks","hooks.json"),spec:gr},{file:j(mr(),"settings.json"),spec:eh}]}function sa(e){try{let t=JSON.parse(Dm(e,"utf8"));return M(t)?t:null}catch{return null}}function oa(e,t){let n=t?e?.hooks:e;return M(n)&&Array.isArray(n.PreToolUse)&&n.PreToolUse.length>0}function ia(){let[e,t,n]=un(),r=hr(e.file)?e:hr(t.file)?t:null;return r&&oa(sa(r.file),!1)?r:oa(sa(n.file),!0)?n:r??e}var th={id:"droid",label:"Factory Droid",setup:"tkr setup-droid",bin:"tkr-droid-hook",restart:"Restart Droid, then check it with /hooks.",files:()=>[ia().file],installed:()=>un().some(e=>fr(e.file,e.spec)),ensure:async e=>{let t=ia(),n=await pr(t.file,t.spec,e);return n==="error"||await Promise.all(un().filter(r=>r.file!==t.file).map(r=>cn(r.file,r.spec))),n},remove:async()=>{let e=await Promise.all(un().map(t=>cn(t.file,t.spec)));return e.includes("error")?"error":e.includes("removed")?"removed":"absent"}},la=[Ue({id:"copilot",label:"GitHub Copilot",setup:"tkr setup-copilot",bin:"tkr-copilot-hook",restart:"Restart VS Code or Copilot CLI so they load the new hook.",files:()=>[Hm()]},jm),th,Ue({id:"trae",label:"Trae",setup:"tkr setup-trae",bin:"tkr-trae-hook",restart:"Restart Trae so it loads the new hook.",files:zm},Bm),Ue({id:"qwen-code",label:"Qwen Code",setup:"tkr setup-qwen",bin:"tkr-qwen-hook",restart:"Restart Qwen Code, then check it with /hooks.",files:()=>[Zm()]},Um),Ue({id:"crush",label:"Crush",setup:"tkr setup-crush",bin:"tkr-crush-hook",restart:"Restart Crush so it loads the new hook.",files:()=>[Jm()]},Gm),Ue({id:"junie",label:"Junie CLI",setup:"tkr setup-junie",bin:"tkr-junie-hook",restart:"Restart Junie CLI so it loads the new hook.",files:()=>[Vm()]},Km),Ue({id:"zcode",label:"ZCode",setup:"tkr setup-zcode",bin:"tkr-zcode-hook",restart:"Restart ZCode so it loads the new hook.",files:()=>[qm()]},Wm),Ue({id:"grok",label:"Grok Build",setup:"tkr setup-grok",bin:"tkr-grok-hook",restart:"Restart Grok Build (1.0.4 or newer) so it loads the new hook.",files:()=>[Xm()]},Ym)];var ua=[{host:"claude-code",vars:["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE","CLAUDE_CODE_VERSION","ANTHROPIC_CLAUDE_CODE"]},{host:"codex",vars:["CODEX_VERSION","CODEX_CLI","OPENAI_CODEX","CODEX_THREAD_ID","CODEX_SESSION_ID"]},{host:"cursor",vars:["CURSOR_AGENT","CURSOR_VERSION","CURSOR_TRACE_ID"]},{host:"cline",vars:["CLINE_VERSION","CLINE_API_KEY"]},{host:"aider",vars:["AIDER_VERSION","AIDER_MODEL"]},{host:"qwen-code",vars:["QWEN_CODE"]},{host:"gemini-cli",vars:["GEMINI_CLI","GEMINI_CLI_VERSION","GEMINI_API_KEY"]},{host:"windsurf",vars:["WINDSURF_VERSION","WINDSURF_USER"]},{host:"copilot",vars:["GITHUB_COPILOT_VERSION","COPILOT_INTEGRATION_ID"]},{host:"opencode",vars:[]},{host:"amp",vars:[]},{host:"vibe",vars:[]},{host:"antigravity",vars:[]},{host:"openclaw",vars:[]},{host:"pi",vars:[]},{host:"omp",vars:[]},{host:"hermes",vars:[]},{host:"crush",vars:["CRUSH"]},{host:"droid",vars:[]},{host:"trae",vars:[]},{host:"junie",vars:[]},{host:"zcode",vars:[]},{host:"grok",vars:[]},{host:"kilo",vars:[]}],nh=[...ua.map(e=>e.host),"shell"],rh=new Set(["claude-code","codex"]),sh={cursor:{installed:Di,setup:"tkr setup-cursor"},"gemini-cli":{installed:Fi,setup:"tkr setup-gemini"},...Object.fromEntries(Yi.map(e=>[e.host,{installed:()=>Xi(e),setup:`tkr ${e.command}`}])),...Object.fromEntries(la.map(e=>[e.id,{installed:e.installed,setup:e.setup}]))};function ca(e){return rh.has(e)||(sh[e]?.installed()??!1)}function da(e){return null}function fa(e=process.env){let t=process.platform,n=t==="darwin"||t==="linux"||t==="win32"?t:"other",r=process.arch,s=e.TOKMIZER_HOST;if(s&&nh.includes(s)){let o=s;return{host:o,source:"env",os:n,arch:r,shimRecommended:!ca(o)}}for(let o of ua)if(o.vars.some(i=>e[i]))return{host:o.host,source:"env",os:n,arch:r,shimRecommended:!ca(o.host)};return{host:"shell",source:"fallback",os:n,arch:r,shimRecommended:!0}}import{delimiter as pa,join as oh,dirname as Fw}from"node:path";function ih(){return oh(A(),"shims")}function ma(){let e=ih(),t={...process.env},n=process.platform==="win32"?"Path":"PATH",s=(t[n]??t.PATH??"").split(pa).filter(o=>o&&o!==e);return t[n]=s.join(pa),n==="Path"&&(t.PATH=t[n]),t}import{createConnection as _h}from"node:net";import{spawn as wh}from"node:child_process";import{existsSync as wa,openSync as _r,closeSync as ka,unlinkSync as xr,writeFileSync as vr,mkdirSync as Er,readFileSync as xh,appendFileSync as vh,rmSync as Eh,statSync as Sh}from"node:fs";import{dirname as Th,join as Sr}from"node:path";import{fileURLToPath as Rh}from"node:url";var ah=g.object({id:g.string().min(1).max(64),op:g.literal("filter"),cmd:g.string().min(1).max(2048),plan:g.enum(["trial","smart","pro"]),allowed:g.array(g.string().min(1).max(64)).max(512).optional(),installId:g.string().min(1).max(64).optional()}),lh=g.object({id:g.string().min(1).max(64),op:g.literal("ping")}),ch=g.object({id:g.string().min(1).max(64),op:g.literal("shutdown"),installId:g.string().min(1).max(64)}),uh=g.object({id:g.string().min(1).max(64),op:g.literal("reload"),installId:g.string().min(1).max(64).optional()}),Gw=g.discriminatedUnion("op",[ah,lh,ch,uh]),Jw=g.object({id:g.string(),ok:g.literal(!0),data:g.unknown()}),Kw=g.object({id:g.string(),ok:g.literal(!1),err:g.string(),retryAfterMs:g.number().int().nonnegative().optional()}),ha=g.object({filter:be.nullable(),cacheHit:g.boolean().optional()}),dn=`
95
+ `,Vw=64*1024;function yr(e){return JSON.stringify(e)+dn}function*ga(e){let t=0;for(;;){let n=e.indexOf(dn,t);if(n<0)return;yield e.slice(t,n),t=n+1}}function Ot(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}import dh from"node:os";import{join as Pt}from"node:path";import{existsSync as fh,statSync as ph,lstatSync as ya,unlinkSync as mh,mkdirSync as hh,chmodSync as gh}from"node:fs";import{createHash as yh}from"node:crypto";var br=100;function bh(e){let t=yh("sha256").update(A()).digest("hex").slice(0,8),n=Pt(dh.tmpdir(),`tkr-${e}-${t}`),r=Pt(n,"d.sock");if(Buffer.byteLength(r)>br)throw new Error("Temporary directory path is too long for IPC");return ba(n,e),r}function kh(e,t){try{let n=ya(e);return n.isDirectory()&&n.uid===t&&(n.mode&63)===0}catch{return!1}}function ba(e,t){hh(e,{recursive:!0,mode:448});let n=ya(e);if(!n.isDirectory()||n.uid!==t)throw new Error("Unsafe IPC directory");gh(e,448)}function Nt(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let e=typeof process.getuid=="function"?process.getuid():0,t=process.env.XDG_RUNTIME_DIR;if(t&&kh(t,e)){let s=Pt(t,`tokmizer-${e}.sock`);if(Buffer.byteLength(s)<=br)return{path:s,isPipe:!1}}let n=Pt(A(),"run"),r=Pt(n,"daemon.sock");return Buffer.byteLength(r)>br?{path:bh(e),isPipe:!1}:(ba(n,e),{path:r,isPipe:!1})}async function kr(){let{path:e,isPipe:t}=Nt();if(t||!fh(e))return;try{if(!ph(e).isSocket())return}catch{return}let n=await import("node:net");if(!await new Promise(s=>{let o=n.createConnection(e),i=a=>{o.removeAllListeners();try{o.destroy()}catch{}s(a)};o.once("connect",()=>i(!0)),o.once("error",a=>{let l=a.code;i(l!=="ECONNREFUSED"&&l!=="ENOENT")}),setTimeout(()=>i(!0),250)}))try{mh(e)}catch{}}var tx=5*6e4;var xa=500,Ah=3e3,_a=1,$h=6e4,Ch=256*1024;function Tr(){return Sr(A(),"daemon.spawn.fail")}function Rr(){return Sr(A(),"daemon.log")}function Ih(){try{let e=Number(xh(Tr(),"utf8"));return Number.isFinite(e)&&Date.now()-e<$h}catch{return!1}}function Oh(e){try{Er(A(),{recursive:!0});let t=Rr();try{Sh(t).size>Ch&&xr(t)}catch{}vh(t,`${new Date().toISOString()} ${e}
96
+ `)}catch{}}function Ph(e){try{Er(A(),{recursive:!0}),vr(Tr(),String(Date.now()))}catch{}Oh(`spawn failed: ${e.message}`)}function Nh(){try{Eh(Tr(),{force:!0})}catch{}}async function fn(e,t){return new Promise((n,r)=>{let s=_h(e),o=a=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(i),a){try{s.destroy()}catch{}r(a)}else n(s)},i=setTimeout(()=>o(new Error("connect timeout")),t);s.once("connect",()=>o(null)),s.once("error",a=>o(a))})}function Dh(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:Rh(new URL("../bin/tkr-daemon.js",import.meta.url))}async function wr(e,t=3e3){let n=Math.ceil(t/75),r=process.platform==="win32";for(let s=0;s<n;s++){if(r)try{return(await fn(e,75)).destroy(),!0}catch{}else if(wa(e))return!0;await new Promise(o=>setTimeout(o,75))}return!1}async function Mh(e){let t=Dh();if(!ze()&&!wa(t))throw new Error(`tkr-daemon binary not found at ${t}`);let{path:n}=Nt(),r=process.platform==="win32"?A():Th(n);try{Er(r,{recursive:!0})}catch{}let s=Sr(r,"daemon.spawn.lock"),o=null;try{o=_r(s,"wx"),vr(o,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await wr(n,5e3))return;try{xr(s)}catch{}try{o=_r(s,"wx"),vr(o,String(process.pid))}catch(l){if(l.code==="EEXIST"){await wr(n,5e3);return}throw l}}else throw i}try{let i=null;try{i=_r(Rr(),"a")}catch{}let[a,...l]=St(t);if(wh(a,l,{detached:!0,stdio:["ignore","ignore",i??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:e}}).unref(),i!==null)try{ka(i)}catch{}if(!await wr(n,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(o!==null){try{ka(o)}catch{}try{xr(s)}catch{}}}}async function Fh(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:Nt(),n=await rr();try{let r=await fn(t,xa);r.write(yr({id:Ot(),op:"shutdown",installId:n})),await new Promise(s=>setTimeout(s,150));try{r.destroy()}catch{}return!0}catch{return!1}}async function Lh(e,t){let n=Date.now()+t;for(;Date.now()<n;){try{(await fn(e,250)).destroy()}catch{return!0}await new Promise(r=>setTimeout(r,100))}return!1}async function Ar(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:Nt(),n=await rr(),r=null,s=0,o=!1;for(;s<=_a;)try{r=await fn(t,xa),Nh();break}catch{if(s+=1,s>_a)throw new Error(`tkr-daemon unreachable at ${t}`);if(Ih())throw new Error(`tkr-daemon spawn on cooldown (see ${Rr()})`);await kr();try{await Mh(n),o=!0}catch(u){throw Ph(u),u}}if(!r)throw new Error("tkr-daemon: socket setup failed");let i=new Map,a="";r.setEncoding("utf8"),r.on("data",u=>{a+=u;let d=-1;for(let p=0;p<a.length;p++)a[p]===dn&&(d=p);if(d<0)return;let f=[];for(let p of ga(a.slice(0,d+1)))f.push(p);a=a.slice(d+1);for(let p of f)if(p)try{let m=JSON.parse(p),_=i.get(m.id);if(!_)continue;clearTimeout(_.timer),i.delete(m.id),_.resolve(m)}catch{}}),r.on("close",()=>{for(let u of i.values())clearTimeout(u.timer),u.reject(new Error("daemon socket closed"));i.clear()}),r.on("error",()=>{});function l(u){return new Promise((d,f)=>{if(r.destroyed||!r.writable){f(new Error("daemon socket closed"));return}let p=setTimeout(()=>{i.delete(u.id),f(new Error(`daemon request timeout (${u.op})`))},Ah);i.set(u.id,{resolve:d,reject:f,timer:p}),r.write(yr(u))})}let c={filter:async(u,d,f)=>{let p=await l({id:Ot(),op:"filter",cmd:u.slice(0,2048),plan:d,...f&&f.length>0?{allowed:f.slice(0,512)}:{},installId:n});if(!p.ok)return null;let m=ha.safeParse(p.data);return m.success?m.data.filter:null},ping:async()=>{let u=await l({id:Ot(),op:"ping"});if(!u.ok)throw new Error(u.err);return u.data},reload:async()=>{let u=await l({id:Ot(),op:"reload",installId:n});if(!u.ok)throw new Error(u.err);return u.data},close:()=>{try{r.destroy()}catch{}}};if(!e.skipVersionCheck&&!o){let u=!1;try{let d=await c.ping();if(d.version&&Yo(wt,d.version))throw new Error(`newer daemon ${d.version} already running`);u=d.version!==wt}catch(d){throw c.close(),d}if(u){try{await Fh(e.socketPath?{socketPath:e.socketPath}:{})}catch{}c.close();let d=await Lh(t,2e3);if(await kr(),!d)throw new Error("stale daemon still running after shutdown request");return Ar({...e,skipVersionCheck:!0})}}return c}var at=null,Dt=null;async function jh(){if(at)return at;if(Dt)return Dt;let e=Ar().then(t=>{if(Dt===e)return at=t,t;try{t.close()}catch{}return null}).catch(()=>null);return Dt=e,e}var $r=null,Cr=!1;async function Hh(){return Cr||(Cr=!0,$r=await ti()??tn()),$r}async function va(e,t,n){let r=await Hh();if(!r)return null;let s=r.selectFor(e,t,n?[...n]:void 0);return!s||n&&!n.has(X(s.slug))?null:s}function Bh(e){return e?{...e,matchRegex:new RegExp(e.match_command)}:null}function Ea(e){nr(async(t,n)=>{let r=e==="free"?"trial":e,s=n??nn(void 0),o=await jh();if(!o)return va(t,r,s);try{let i=await o.filter(t,r,s?[...s]:void 0);return!i||s&&!s.has(X(i.slug))?null:Bh(i)}catch{return va(t,r,s)}})}function Sa(){if(nr(null),at)try{at.close()}catch{}at=null,Dt=null,$r=null,Cr=!1}import{chmod as Zh,mkdir as Gh,readFile as Rx,writeFile as Ta,stat as Ax,readdir as $x,rm as Ra,rename as Jh}from"node:fs/promises";import{readFileSync as Kh}from"node:fs";import{createHash as Vh}from"node:crypto";import{readFileSync as zh}from"node:fs";import{join as Uh}from"node:path";function Ze(){try{return zh(Uh(A(),"yolo-mode"),"utf8")==="on"}catch{return!1}}var Wh=1440*60*1e3,Nx=30*Wh,Dx=200*1024*1024,qh=8*1024*1024,Yh=/^[0-9a-f]{8,64}$/i;var Xh=".meta";var Mx=["usage: tkr restore <hash> [--lines a:b] [--grep pattern]"," tkr restore --list"," tkr restore --grep <pattern>",""].join(`
97
+ `);function Qh(){try{let e=JSON.parse(Kh(vo(),"utf8")),t=e.maxAgeDays;return{...typeof t=="number"&&Number.isFinite(t)&&t>0?{maxAgeDays:Math.min(t,365)}:{},...e.disabled===!0?{disabled:!0}:{}}}catch{return{}}}function eg(e,t,n=process.env){let r=Number(n[e]);return Number.isFinite(r)&&r>0?r:t}function tg(e){return`${Jn(e)}${Xh}`}function ng(e){return e===""?[]:(e.endsWith(`
98
+ `)?e.slice(0,-1):e).split(`
99
+ `)}async function rg(e,t,n=process.env,r={}){if(Ze()||!Yh.test(e))return!1;let s=Buffer.byteLength(t,"utf8");if(s>eg("TOKMIZER_CCR_ENTRY_MAX_BYTES",qh,n))return!1;let o=Jn(e),i=`${o}.tmp-${process.pid}-${process.hrtime.bigint()}`;try{if(await Gh(Gn(),{recursive:!0}),Ze())return!1;if(await Ta(i,t,{mode:384}),await Zh(i,384),Ze())return await Ra(i,{force:!0}),!1;await Jh(i,o)}catch{try{await Ra(i)}catch{}return!1}let a={at:Date.now(),bytes:s,lines:ng(t).length,partial:r.partial===!0,...r.label?{label:r.label.slice(0,40)}:{}};try{await Ta(tg(e),JSON.stringify(a),{mode:384})}catch{}return!0}function Aa(e){let t=e.TOKMIZER_CCR_DISABLED;return t==="1"||t==="true"||Ze()||Qh().disabled===!0}async function Ir(e,t,n,r){let s=Vh("sha256").update(e).digest("hex").slice(0,16);return await rg(s,e,r,{partial:t,label:n})?s:null}async function Or(e,t,n=process.env,r={}){if(Aa(n)||!e)return t;let s=i=>`
100
+ [tkr restore ${i}]`;if(Buffer.byteLength(e,"utf8")<=Buffer.byteLength(s("0".repeat(16)),"utf8"))return t;if(r.raw){let i=await Ir(r.raw,!1,r.label,n);if(i)return`${t}${s(i)}`}let o=await Ir(e,!0,r.label,n);return o?`${t}${s(o)}`:t}async function $a(e,t,n=process.env,r={}){if(Aa(n)||!e)return t;let s=await Ir(e,!1,r.label,n);return s?`${t}
101
+ [tkr restore ${s}]`:t}var lt=10*1024*1024,Ca=1024,dg=6e4;function Ia(e,t){let n=new ug("utf8"),r=n.write(Buffer.concat(e));return t?r:r+n.end()}function fg(){try{if(!xt())return;let e=process.env.TOKMIZER_TKR_BIN||cg(new URL("../bin/tkr.js",import.meta.url));if(!ze()&&!sg(e))return;let t=lg(A(),"enroll-kick");try{let o=Number(og(t,"utf8"));if(Number.isFinite(o)&&Date.now()-o<dg)return}catch{}ag(A(),{recursive:!0}),ig(t,String(Date.now()));let[n,...r]=St(e);(0,Pr.default)(n,[...r,"heartbeat"],{detached:!0,stdio:"ignore"}).unref()}catch{}}function pg(e){let t=Number(e.TOKMIZER_EXEC_TIMEOUT_MS);if(Number.isFinite(t)&&t>0)return t;let n=Number(e.BASH_MAX_TIMEOUT_MS);return Number.isFinite(n)&&n>6e5?n:6e5}var mg=pg(process.env),hg={SIGHUP:1,SIGINT:2,SIGQUIT:3,SIGILL:4,SIGTRAP:5,SIGABRT:6,SIGBUS:7,SIGFPE:8,SIGKILL:9,SIGUSR1:10,SIGSEGV:11,SIGUSR2:12,SIGPIPE:13,SIGALRM:14,SIGTERM:15};function Nr(e){return hg[e]??15}async function Oa(e){let[t,...n]=e;if(!t)throw new Error("tkr-exec: missing command");let r=Ze(),s=(0,Pr.default)(t,n,{stdio:["inherit","pipe","pipe"],env:ma()}),o=!1;s.on("spawn",()=>{o=!0});let i=C=>{try{s.kill(C)}catch{}},a=()=>i("SIGINT"),l=()=>i("SIGTERM");process.on("SIGINT",a),process.on("SIGTERM",l);let c=[],u=[],d=0,f=0,p=!1,m=!1;s.stdout?.on("data",C=>{if(d>=lt){p=!0;return}let O=lt-d,P=C.length>O?C.subarray(0,O):C;c.push(P),d+=P.length,C.length>O&&(p=!0)}),s.stderr?.on("data",C=>{if(f>=lt){m=!0;return}let O=lt-f,P=C.length>O?C.subarray(0,O):C;u.push(P),f+=P.length,C.length>O&&(m=!0)});let _,b,$;try{$=await new Promise((C,O)=>{s.on("error",P=>{_&&clearTimeout(_),o?C(1):O(P)}),s.on("close",(P,K)=>{_&&clearTimeout(_),C(P??(K?128+Nr(K):0))}),_=setTimeout(()=>{s.kill("SIGTERM"),b=setTimeout(()=>s.kill("SIGKILL"),2e3)},mg),_.unref?.()})}finally{_&&clearTimeout(_),b&&clearTimeout(b),process.off("SIGINT",a),process.off("SIGTERM",l)}let S=Ia(c,p),N=Ia(u,m);return gg({argv:e,stdout:S,stderr:N,exitCode:$,truncated:p,stderrTruncated:m},{yolo:r,env:process.env,onMissingState:fg})}async function gg({argv:e,stdout:t,stderr:n,exitCode:r,truncated:s,stderrTruncated:o},{yolo:i,env:a,resolver:l,onMissingState:c,deferAccounting:u}){let d=s?`
102
+ \u2026 (output truncated at ${lt/1048576}MB)`:"",f=o?`
103
+ \u2026 (stderr truncated at ${lt/(1024*1024)}MB)`:"",p=()=>{let m=t+d,_=Buffer.byteLength(m,"utf8");return{stdout:m,stderr:n+f,code:r,filterId:null,rawBytes:_,filteredBytes:_,truncated:s}};try{let m=await _t();m||c?.();let _=await Be();if(!_.enabled)return p();let b=a.CLAUDE_CODE_SESSION_ID;b&&m?.token&&Pi(b,{tool:"Bash",target:e.join(" "),...r!==0?{fail:1}:{}});let $=m?oi(m):null,S=m?nn(m.allowedFilters,si(m)):null,N=new Set(_.filters.disabled.map(X)),C=S&&N.size>0?new Set([...S].filter(V=>!N.has(V))):S,O=e.join(" ");m&&!l&&Ea($);let P=await rn(O,t,C,{verbosity:_.outputVerbosity,resolver:l,yolo:i,exitCode:r}),K=n,Ge=0,D=0;if((i||r===0)&&Buffer.byteLength(n,"utf8")>=(i?1:Ca)){let V=await rn(O,n,C,{verbosity:_.outputVerbosity,resolver:l,yolo:i,exitCode:r});K=V.output,Ge=V.rawBytes,D=V.filteredBytes}else if(!i&&r!==0&&Buffer.byteLength(n,"utf8")>=Ca){let V=await rn(O,n,C,{verbosity:_.outputVerbosity,resolver:l,exitCode:r});if(V.failureSummary){try{K=await Or(V.droppedTail??null,V.output,a)}catch{K=V.output}Ge=V.rawBytes,D=V.filteredBytes}}let Z=P.output;if(!i&&P.filteredBytes<P.rawBytes)try{Z=new RegExp(ro.source,"m").test(P.output)?await $a(t,P.output,a,{label:an(O)}):await Or(P.droppedTail??null,P.output,a,{raw:s?null:t,label:an(O)})}catch{}let fe=Z+d,pn=K+f,Je=fa(a).host,ct=Ci(P.rawBytes+Buffer.byteLength(n,"utf8"),Buffer.byteLength(fe,"utf8")+Buffer.byteLength(pn,"utf8"),da(Je)),Dr=!1,Mr=async()=>{if(!Dr){Dr=!0;try{Ai(ct.raw,ct.filtered,void 0,!1,Je,"sh",an(O),process.cwd(),$i(P)),await mi({cmd:O,filterId:P.filterId,rawBytes:P.rawBytes,filteredBytes:P.filteredBytes,plan:$}),await pi({cmd:O,tokensSaved:Math.max(0,Math.round((ct.raw-ct.filtered)/4)),rawTokens:Math.round(ct.raw/4),optimized:P.filterId!=null,telemetryOptIn:_.telemetryOptIn&&(!u||(await Be()).telemetryOptIn),sessionId:b,host:Je})}catch{}}};return u?u(Mr):await Mr(),{stdout:fe,stderr:pn,code:r,filterId:P.filterId,rawBytes:P.rawBytes+Ge,filteredBytes:P.filteredBytes+D,truncated:s}}catch{return p()}finally{l||Sa()}}function Pa(e=process.stdout,t=n=>process.exit(n)){e.on("error",n=>{if(n.code==="EPIPE"){t(141);return}throw n})}Pa();async function yg(e){let[t,...n]=e;t||process.exit(2);let r=(0,Na.default)(t,n,{stdio:"inherit"}),s=await new Promise(o=>{r.on("error",()=>o(127)),r.on("close",(i,a)=>o(i??(a?128+Nr(a):0)))});process.exit(s)}async function bg(){let e=process.argv.slice(2);e.length===0&&(process.stderr.write(`tkr-exec: missing command
104
+ `),process.exit(2));let t;try{t=await Oa(e)}catch(n){return process.stderr.write(`tkr-exec: ${n.message??n}
105
+ `),yg(e)}t.stdout&&process.stdout.write(t.stdout),t.stderr&&process.stderr.write(t.stderr),process.exitCode=t.code}bg().catch(e=>{process.stderr.write(`${e.message??e}
52
106
  `),process.exit(1)});
107
+ /*! Bundled license information:
108
+
109
+ smol-toml/dist/error.js:
110
+ smol-toml/dist/primitive.js:
111
+ smol-toml/dist/date.js:
112
+ smol-toml/dist/extract.js:
113
+ smol-toml/dist/util.js:
114
+ smol-toml/dist/struct.js:
115
+ smol-toml/dist/parse.js:
116
+ smol-toml/dist/stringify.js:
117
+ smol-toml/dist/index.js:
118
+ (*!
119
+ * Copyright (c) Squirrel Chat et al., All rights reserved.
120
+ * SPDX-License-Identifier: BSD-3-Clause
121
+ *
122
+ * Redistribution and use in source and binary forms, with or without
123
+ * modification, are permitted provided that the following conditions are met:
124
+ *
125
+ * 1. Redistributions of source code must retain the above copyright notice, this
126
+ * list of conditions and the following disclaimer.
127
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
128
+ * this list of conditions and the following disclaimer in the
129
+ * documentation and/or other materials provided with the distribution.
130
+ * 3. Neither the name of the copyright holder nor the names of its contributors
131
+ * may be used to endorse or promote products derived from this software without
132
+ * specific prior written permission.
133
+ *
134
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
135
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
136
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
137
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
138
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
139
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
140
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
141
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
142
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
143
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
144
+ *)
145
+ */