@tokmizer/plugin 0.9.57 → 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.
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +165 -6
- package/agent-plugins/amp.js +38 -0
- package/agent-plugins/hermes/__init__.py +39 -0
- package/agent-plugins/hermes/plugin.yaml +5 -0
- package/agent-plugins/kilo.js +40 -0
- package/agent-plugins/omp.js +32 -0
- package/agent-plugins/openclaw/index.js +39 -0
- package/agent-plugins/openclaw/openclaw.plugin.json +12 -0
- package/agent-plugins/openclaw/package.json +11 -0
- package/agent-plugins/opencode.js +40 -0
- package/agent-plugins/pi.js +30 -0
- package/codex-plugin/plugin.json +1 -1
- package/command-templates/tkr-gain.md +7 -2
- package/command-templates/tkr-status.md +5 -1
- package/command-templates/tkr-telemetry.md +3 -3
- package/command-templates/tkr-unlink.md +2 -2
- package/dist/bin/tkr-agent-hook.js +11 -0
- package/dist/bin/tkr-codex-hook.js +131 -40
- package/dist/bin/tkr-copilot-hook.js +11 -0
- package/dist/bin/tkr-crush-hook.js +11 -0
- package/dist/bin/tkr-cursor-hook.js +11 -0
- package/dist/bin/tkr-daemon.js +161 -55
- package/dist/bin/tkr-droid-hook.js +11 -0
- package/dist/bin/tkr-exec +135 -42
- package/dist/bin/tkr-exec.js +135 -42
- package/dist/bin/tkr-gemini-hook.js +11 -0
- package/dist/bin/tkr-grok-hook.js +11 -0
- package/dist/bin/tkr-junie-hook.js +11 -0
- package/dist/bin/tkr-processor.js +162 -0
- package/dist/bin/tkr-qwen-hook.js +11 -0
- package/dist/bin/tkr-shim.js +131 -38
- package/dist/bin/tkr-trae-hook.js +11 -0
- package/dist/bin/tkr-zcode-hook.js +11 -0
- package/dist/bin/tkr.js +356 -151
- package/dist/hooks-host/post-tool-use.js +144 -48
- package/dist/hooks-host/pre-tool-use.js +8 -7
- package/dist/hooks-host/reducer-prompt-submit.js +1 -1
- package/dist/hooks-host/reducer-session-start.js +1 -1
- package/dist/hooks-host/reducer-stop.js +25 -16
- package/dist/hooks-host/session-recap.js +4 -3
- package/dist/index.js +125 -39
- package/dist/native/manifest.json +18 -8
- package/dist/native/single.json +38 -0
- package/dist/native/tkr-exec-darwin-arm64 +0 -0
- package/dist/native/tkr-exec-darwin-x64 +0 -0
- package/dist/native/tkr-exec-linux-arm64 +0 -0
- package/dist/native/tkr-exec-linux-x64 +0 -0
- package/dist/native/tkr-exec-win32-arm64.exe +0 -0
- package/dist/native/tkr-exec-win32-x64.exe +0 -0
- package/hooks/on-session-start.d.mts +1 -0
- package/hooks/on-session-start.mjs +25 -8
- package/package.json +24 -2
- package/scripts/README-INSTALL.md +13 -5
- package/scripts/install-mac-linux.sh +72 -6
- package/scripts/install-native.mjs +164 -25
package/dist/bin/tkr-shim.js
CHANGED
|
@@ -1,47 +1,140 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
|
|
3
|
-
var bi=Object.create;var $t=Object.defineProperty;var vi=Object.getOwnPropertyDescriptor;var xi=Object.getOwnPropertyNames;var wi=Object.getPrototypeOf,Ei=Object.prototype.hasOwnProperty;var se=(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 Z=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},ki=(t,e)=>{for(var r in e)$t(t,r,{get:e[r],enumerable:!0})},Si=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of xi(e))!Ei.call(t,s)&&s!==r&&$t(t,s,{get:()=>e[s],enumerable:!(n=vi(e,s))||n.enumerable});return t};var Ti=(t,e,r)=>(r=t!=null?bi(wi(t)):{},Si(e||!t||!t.__esModule?$t(r,"default",{value:t,enumerable:!0}):r,t));var Nr=Z((Vl,Or)=>{Or.exports=$r;$r.sync=Ai;var Cr=se("fs");function Ri(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 Ir(t,e,r){return!t.isSymbolicLink()&&!t.isFile()?!1:Ri(e,r)}function $r(t,e,r){Cr.stat(t,function(n,s){r(n,n?!1:Ir(s,t,e))})}function Ai(t,e){return Ir(Cr.statSync(t),t,e)}});var Fr=Z((Kl,Lr)=>{Lr.exports=Pr;Pr.sync=Ci;var Dr=se("fs");function Pr(t,e,r){Dr.stat(t,function(n,s){r(n,n?!1:Mr(s,e))})}function Ci(t,e){return Mr(Dr.statSync(t),e)}function Mr(t,e){return t.isFile()&&Ii(t,e)}function Ii(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 jr=Z((Wl,Br)=>{var Gl=se("fs"),pt;process.platform==="win32"||global.TESTING_WINDOWS?pt=Nr():pt=Fr();Br.exports=Ot;Ot.sync=$i;function Ot(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){Ot(t,e||{},function(i,o){i?s(i):n(o)})})}pt(t,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),r(n,s)})}function $i(t,e){try{return pt.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var Gr=Z((ql,Kr)=>{var De=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",zr=se("path"),Oi=De?";":":",Zr=jr(),Ur=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),Hr=(t,e)=>{let r=e.colon||Oi,n=t.match(/\//)||De&&t.match(/\\/)?[""]:[...De?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],s=De?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=De?s.split(r):[""];return De&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},Vr=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=Hr(t,e),o=[],a=u=>new Promise((l,f)=>{if(u===n.length)return e.all&&o.length?l(o):f(Ur(t));let d=n[u],m=/^".*"$/.test(d)?d.slice(1,-1):d,w=zr.join(m,t),R=!m&&/^\.[\\\/]/.test(t)?t.slice(0,2)+w:w;l(c(R,u,0))}),c=(u,l,f)=>new Promise((d,m)=>{if(f===s.length)return d(a(l+1));let w=s[f];Zr(u+w,{pathExt:i},(R,_)=>{if(!R&&_)if(e.all)o.push(u+w);else return d(u+w);return d(c(u,l,f+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},Ni=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:s}=Hr(t,e),i=[];for(let o=0;o<r.length;o++){let a=r[o],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=zr.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(Zr.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 Ur(t)};Kr.exports=Vr;Vr.sync=Ni});var qr=Z((Yl,Nt)=>{"use strict";var Wr=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Nt.exports=Wr;Nt.exports.default=Wr});var Qr=Z((Jl,Xr)=>{"use strict";var Yr=se("path"),Di=Gr(),Pi=qr();function Jr(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[Pi({env:r})],pathExt:e?Yr.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return o&&(o=Yr.resolve(s?t.options.cwd:"",o)),o}function Mi(t){return Jr(t)||Jr(t,!0)}Xr.exports=Mi});var en=Z((Xl,Pt)=>{"use strict";var Dt=/([()\][%!^"`<>&|;, *?])/g;function Li(t){return t=t.replace(Dt,"^$1"),t}function Fi(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(Dt,"^$1"),e&&(t=t.replace(Dt,"^$1")),t}Pt.exports.command=Li;Pt.exports.argument=Fi});var rn=Z((Ql,tn)=>{"use strict";tn.exports=/^#!(.*)/});var sn=Z((ed,nn)=>{"use strict";var Bi=rn();nn.exports=(t="")=>{let e=t.match(Bi);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),s=r.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var an=Z((td,on)=>{"use strict";var Mt=se("fs"),ji=sn();function zi(t){let r=Buffer.alloc(150),n;try{n=Mt.openSync(t,"r"),Mt.readSync(n,r,0,150,0),Mt.closeSync(n)}catch{}return ji(r.toString())}on.exports=zi});var dn=Z((rd,ln)=>{"use strict";var Zi=se("path"),cn=Qr(),un=en(),Ui=an(),Hi=process.platform==="win32",Vi=/\.(?:com|exe)$/i,Ki=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Gi(t){t.file=cn(t);let e=t.file&&Ui(t.file);return e?(t.args.unshift(t.file),t.command=e,cn(t)):t.file}function Wi(t){if(!Hi)return t;let e=Gi(t),r=!Vi.test(e);if(t.options.forceShell||r){let n=Ki.test(e);t.command=Zi.normalize(t.command),t.command=un.command(t.command),t.args=t.args.map(i=>un.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 qi(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:Wi(n)}ln.exports=qi});var mn=Z((nd,pn)=>{"use strict";var Lt=process.platform==="win32";function Ft(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 Yi(t,e){if(!Lt)return;let r=t.emit;t.emit=function(n,s){if(n==="exit"){let i=fn(s,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function fn(t,e){return Lt&&t===1&&!e.file?Ft(e.original,"spawn"):null}function Ji(t,e){return Lt&&t===1&&!e.file?Ft(e.original,"spawnSync"):null}pn.exports={hookChildProcess:Yi,verifyENOENT:fn,verifyENOENTSync:Ji,notFoundError:Ft}});var yn=Z((sd,Pe)=>{"use strict";var hn=se("child_process"),Bt=dn(),jt=mn();function gn(t,e,r){let n=Bt(t,e,r),s=hn.spawn(n.command,n.args,n.options);return jt.hookChildProcess(s,n),s}function Xi(t,e,r){let n=Bt(t,e,r),s=hn.spawnSync(n.command,n.args,n.options);return s.error=s.error||jt.verifyENOENTSync(s.status,n),s}Pe.exports=gn;Pe.exports.spawn=gn;Pe.exports.sync=Xi;Pe.exports._parse=Bt;Pe.exports._enoent=jt});var pi=Ti(yn(),1);import{readdir as la,readFile as da}from"node:fs/promises";import{join as $n,dirname as fa}from"node:path";import{fileURLToPath as pa}from"node:url";var h={};ki(h,{BRAND:()=>So,DIRTY:()=>me,EMPTY_PATH:()=>ro,INVALID:()=>v,NEVER:()=>ua,OK:()=>M,ParseStatus:()=>P,Schema:()=>S,ZodAny:()=>ae,ZodArray:()=>ne,ZodBigInt:()=>ge,ZodBoolean:()=>ye,ZodBranded:()=>Je,ZodCatch:()=>Ae,ZodDate:()=>_e,ZodDefault:()=>Re,ZodDiscriminatedUnion:()=>gt,ZodEffects:()=>V,ZodEnum:()=>Se,ZodError:()=>B,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>_t,ZodIntersection:()=>we,ZodIssueCode:()=>p,ZodLazy:()=>Ee,ZodLiteral:()=>ke,ZodMap:()=>ze,ZodNaN:()=>Ue,ZodNativeEnum:()=>Te,ZodNever:()=>K,ZodNull:()=>ve,ZodNullable:()=>X,ZodNumber:()=>he,ZodObject:()=>j,ZodOptional:()=>U,ZodParsedType:()=>y,ZodPipeline:()=>Xe,ZodPromise:()=>ce,ZodReadonly:()=>Ce,ZodRecord:()=>yt,ZodSchema:()=>S,ZodSet:()=>Ze,ZodString:()=>oe,ZodSymbol:()=>Be,ZodTransformer:()=>V,ZodTuple:()=>J,ZodType:()=>S,ZodUndefined:()=>be,ZodUnion:()=>xe,ZodUnknown:()=>re,ZodVoid:()=>je,addIssueToContext:()=>g,any:()=>Do,array:()=>Fo,bigint:()=>Co,boolean:()=>An,coerce:()=>ca,custom:()=>Sn,date:()=>Io,datetimeRegex:()=>En,defaultErrorMap:()=>ee,discriminatedUnion:()=>Zo,effect:()=>ea,enum:()=>Jo,function:()=>Wo,getErrorMap:()=>Me,getParsedType:()=>Y,instanceof:()=>Ro,intersection:()=>Uo,isAborted:()=>mt,isAsync:()=>Le,isDirty:()=>ht,isValid:()=>ie,late:()=>To,lazy:()=>qo,literal:()=>Yo,makeIssue:()=>Ye,map:()=>Ko,nan:()=>Ao,nativeEnum:()=>Xo,never:()=>Mo,null:()=>No,nullable:()=>ra,number:()=>Rn,object:()=>Bo,objectUtil:()=>zt,oboolean:()=>aa,onumber:()=>oa,optional:()=>ta,ostring:()=>ia,pipeline:()=>sa,preprocess:()=>na,promise:()=>Qo,quotelessJson:()=>Qi,record:()=>Vo,set:()=>Go,setErrorMap:()=>to,strictObject:()=>jo,string:()=>Tn,symbol:()=>$o,transformer:()=>ea,tuple:()=>Ho,undefined:()=>Oo,union:()=>zo,unknown:()=>Po,util:()=>T,void:()=>Lo});var T;(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})(T||(T={}));var zt;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(zt||(zt={}));var y=T.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Y=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=T.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"]),Qi=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),B=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,T.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()}};B.create=t=>new B(t);var eo=(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,T.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:r=`Unrecognized key(s) in object: ${T.joinValues(t.keys,", ")}`;break;case p.invalid_union:r="Invalid input";break;case p.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${T.joinValues(t.options)}`;break;case p.invalid_enum_value:r=`Invalid enum value. Expected ${T.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}"`:T.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,T.assertNever(t)}return{message:r}},ee=eo;var _n=ee;function to(t){_n=t}function Me(){return _n}var Ye=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}},ro=[];function g(t,e){let r=Me(),n=Ye({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===ee?void 0:ee].filter(s=>!!s)});t.common.issues.push(n)}var P=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 v;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 v;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}}},v=Object.freeze({status:"aborted"}),me=t=>({status:"dirty",value:t}),M=t=>({status:"valid",value:t}),mt=t=>t.status==="aborted",ht=t=>t.status==="dirty",ie=t=>t.status==="valid",Le=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 H=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}},bn=(t,e)=>{if(ie(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 B(t.common.issues);return this._error=r,this._error}}};function k(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 S=class{get description(){return this._def.description}_getType(e){return Y(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Y(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new P,ctx:{common:e.parent.common,data:e.data,parsedType:Y(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Le(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:Y(e)},s=this._parseSync({data:e,path:n.path,parent:n});return bn(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Y(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return ie(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=>ie(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:Y(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Le(s)?s:Promise.resolve(s));return bn(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 V({schema:this,typeName:x.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 U.create(this,this._def)}nullable(){return X.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ne.create(this)}promise(){return ce.create(this,this._def)}or(e){return xe.create([this,e],this._def)}and(e){return we.create(this,e,this._def)}transform(e){return new V({...k(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Re({...k(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new Je({typeName:x.ZodBranded,type:this,...k(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Ae({...k(this._def),innerType:this,catchValue:r,typeName:x.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Xe.create(this,e)}readonly(){return Ce.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},no=/^c[^\s-]{8,}$/i,so=/^[0-9a-z]+$/,io=/^[0-9A-HJKMNP-TV-Z]{26}$/i,oo=/^[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,ao=/^[a-z0-9_-]{21}$/i,co=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,uo=/^[-+]?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)?)??$/,lo=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fo="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Zt,po=/^(?:(?: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])$/,mo=/^(?:(?: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])$/,ho=/^(([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]))$/,go=/^(([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])$/,yo=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,_o=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xn="((\\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])))",bo=new RegExp(`^${xn}$`);function wn(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 vo(t){return new RegExp(`^${wn(t)}$`)}function En(t){let e=`${xn}T${wn(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 xo(t,e){return!!((e==="v4"||!e)&&po.test(t)||(e==="v6"||!e)&&ho.test(t))}function wo(t,e){if(!co.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 Eo(t,e){return!!((e==="v4"||!e)&&mo.test(t)||(e==="v6"||!e)&&go.test(t))}var oe=class t extends S{_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}),v}let n=new P,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")lo.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")Zt||(Zt=new RegExp(fo,"u")),Zt.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")oo.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")ao.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")no.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")so.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")io.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"?En(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"?bo.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?vo(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"?uo.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"duration",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?xo(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"?wo(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"?Eo(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"?yo.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"base64",code:p.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?_o.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"base64url",code:p.invalid_string,message:i.message}),n.dirty()):T.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}};oe.create=t=>new oe({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...k(t)});function ko(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 he=class t extends S{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}),v}let n,s=new P;for(let i of this._def.checks)i.kind==="int"?T.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"?ko(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()):T.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"&&T.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)}};he.create=t=>new he({checks:[],typeName:x.ZodNumber,coerce:t?.coerce||!1,...k(t)});var ge=class t extends S{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 P;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()):T.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}),v}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}};ge.create=t=>new ge({checks:[],typeName:x.ZodBigInt,coerce:t?.coerce??!1,...k(t)});var ye=class extends S{_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}),v}return M(e.data)}};ye.create=t=>new ye({typeName:x.ZodBoolean,coerce:t?.coerce||!1,...k(t)});var _e=class t extends S{_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}),v}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return g(i,{code:p.invalid_date}),v}let n=new P,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()):T.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}};_e.create=t=>new _e({checks:[],coerce:t?.coerce||!1,typeName:x.ZodDate,...k(t)});var Be=class extends S{_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}),v}return M(e.data)}};Be.create=t=>new Be({typeName:x.ZodSymbol,...k(t)});var be=class extends S{_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}),v}return M(e.data)}};be.create=t=>new be({typeName:x.ZodUndefined,...k(t)});var ve=class extends S{_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}),v}return M(e.data)}};ve.create=t=>new ve({typeName:x.ZodNull,...k(t)});var ae=class extends S{constructor(){super(...arguments),this._any=!0}_parse(e){return M(e.data)}};ae.create=t=>new ae({typeName:x.ZodAny,...k(t)});var re=class extends S{constructor(){super(...arguments),this._unknown=!0}_parse(e){return M(e.data)}};re.create=t=>new re({typeName:x.ZodUnknown,...k(t)});var K=class extends S{_parse(e){let r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:y.never,received:r.parsedType}),v}};K.create=t=>new K({typeName:x.ZodNever,...k(t)});var je=class extends S{_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}),v}return M(e.data)}};je.create=t=>new je({typeName:x.ZodVoid,...k(t)});var ne=class t extends S{_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}),v;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 H(r,o,r.path,a)))).then(o=>P.mergeArray(n,o));let i=[...r.data].map((o,a)=>s.type._parseSync(new H(r,o,r.path,a)));return P.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)}};ne.create=(t,e)=>new ne({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,...k(e)});function Fe(t){if(t instanceof j){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=U.create(Fe(n))}return new j({...t._def,shape:()=>e})}else return t instanceof ne?new ne({...t._def,type:Fe(t.element)}):t instanceof U?U.create(Fe(t.unwrap())):t instanceof X?X.create(Fe(t.unwrap())):t instanceof J?J.create(t.items.map(e=>Fe(e))):t}var j=class t extends S{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=T.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}),v}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof K&&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 H(s,f,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof K){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 H(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=>P.mergeObjectSync(n,u)):P.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:x.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 T.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 T.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Fe(this)}partial(e){let r={};for(let n of T.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 T.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof U;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return kn(T.objectKeys(this.shape))}};j.create=(t,e)=>new j({shape:()=>t,unknownKeys:"strip",catchall:K.create(),typeName:x.ZodObject,...k(e)});j.strictCreate=(t,e)=>new j({shape:()=>t,unknownKeys:"strict",catchall:K.create(),typeName:x.ZodObject,...k(e)});j.lazycreate=(t,e)=>new j({shape:t,unknownKeys:"strip",catchall:K.create(),typeName:x.ZodObject,...k(e)});var xe=class extends S{_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 B(a.ctx.common.issues));return g(r,{code:p.invalid_union,unionErrors:o}),v}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 B(c));return g(r,{code:p.invalid_union,unionErrors:a}),v}}get options(){return this._def.options}};xe.create=(t,e)=>new xe({options:t,typeName:x.ZodUnion,...k(e)});var te=t=>t instanceof Ee?te(t.schema):t instanceof V?te(t.innerType()):t instanceof ke?[t.value]:t instanceof Se?t.options:t instanceof Te?T.objectValues(t.enum):t instanceof Re?te(t._def.innerType):t instanceof be?[void 0]:t instanceof ve?[null]:t instanceof U?[void 0,...te(t.unwrap())]:t instanceof X?[null,...te(t.unwrap())]:t instanceof Je||t instanceof Ce?te(t.unwrap()):t instanceof Ae?te(t._def.innerType):[],gt=class t extends S{_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}),v;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]}),v)}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=te(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:x.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...k(n)})}};function Ut(t,e){let r=Y(t),n=Y(e);if(t===e)return{valid:!0,data:t};if(r===y.object&&n===y.object){let s=T.objectKeys(e),i=T.objectKeys(t).filter(a=>s.indexOf(a)!==-1),o={...t,...e};for(let a of i){let c=Ut(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=Ut(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 we=class extends S{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,o)=>{if(mt(i)||mt(o))return v;let a=Ut(i.value,o.value);return a.valid?((ht(i)||ht(o))&&r.dirty(),{status:r.value,value:a.data}):(g(n,{code:p.invalid_intersection_types}),v)};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}))}};we.create=(t,e,r)=>new we({left:t,right:e,typeName:x.ZodIntersection,...k(r)});var J=class t extends S{_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}),v;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"}),v;!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 H(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(i).then(o=>P.mergeArray(r,o)):P.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};J.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new J({items:t,typeName:x.ZodTuple,rest:null,...k(e)})};var yt=class t extends S{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}),v;let s=[],i=this._def.keyType,o=this._def.valueType;for(let a in n.data)s.push({key:i._parse(new H(n,a,n.path,a)),value:o._parse(new H(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?P.mergeObjectAsync(r,s):P.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof S?new t({keyType:e,valueType:r,typeName:x.ZodRecord,...k(n)}):new t({keyType:oe.create(),valueType:e,typeName:x.ZodRecord,...k(r)})}},ze=class extends S{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}),v;let s=this._def.keyType,i=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:s._parse(new H(n,a,n.path,[u,"key"])),value:i._parse(new H(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 v;(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 v;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};ze.create=(t,e,r)=>new ze({valueType:e,keyType:t,typeName:x.ZodMap,...k(r)});var Ze=class t extends S{_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}),v;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 v;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 H(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)}};Ze.create=(t,e)=>new Ze({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...k(e)});var _t=class t extends S{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}),v;function n(a,c){return Ye({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Me(),ee].filter(u=>!!u),issueData:{code:p.invalid_arguments,argumentsError:c}})}function s(a,c){return Ye({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Me(),ee].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 ce){let a=this;return M(async function(...c){let u=new B([]),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 B([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),f=a._def.returns.safeParse(l,i);if(!f.success)throw new B([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:J.create(e).rest(re.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||J.create([]).rest(re.create()),returns:r||re.create(),typeName:x.ZodFunction,...k(n)})}},Ee=class extends S{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})}};Ee.create=(t,e)=>new Ee({getter:t,typeName:x.ZodLazy,...k(e)});var ke=class extends S{_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}),v}return{status:"valid",value:e.data}}get value(){return this._def.value}};ke.create=(t,e)=>new ke({value:t,typeName:x.ZodLiteral,...k(e)});function kn(t,e){return new Se({values:t,typeName:x.ZodEnum,...k(e)})}var Se=class t extends S{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return g(r,{expected:T.joinValues(n),received:r.parsedType,code:p.invalid_type}),v}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}),v}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})}};Se.create=kn;var Te=class extends S{_parse(e){let r=T.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==y.string&&n.parsedType!==y.number){let s=T.objectValues(r);return g(n,{expected:T.joinValues(s),received:n.parsedType,code:p.invalid_type}),v}if(this._cache||(this._cache=new Set(T.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=T.objectValues(r);return g(n,{received:n.data,code:p.invalid_enum_value,options:s}),v}return M(e.data)}get enum(){return this._def.values}};Te.create=(t,e)=>new Te({values:t,typeName:x.ZodNativeEnum,...k(e)});var ce=class extends S{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}),v;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})))}};ce.create=(t,e)=>new ce({type:t,typeName:x.ZodPromise,...k(e)});var V=class extends S{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===x.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 v;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?v:c.status==="dirty"?me(c.value):r.value==="dirty"?me(c.value):c});{if(r.value==="aborted")return v;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?v:a.status==="dirty"?me(a.value):r.value==="dirty"?me(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"?v:(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"?v:(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(!ie(o))return v;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=>ie(o)?Promise.resolve(s.transform(o.value,i)).then(a=>({status:r.value,value:a})):v);T.assertNever(s)}};V.create=(t,e,r)=>new V({schema:t,typeName:x.ZodEffects,effect:e,...k(r)});V.createWithPreprocess=(t,e,r)=>new V({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...k(r)});var U=class extends S{_parse(e){return this._getType(e)===y.undefined?M(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};U.create=(t,e)=>new U({innerType:t,typeName:x.ZodOptional,...k(e)});var X=class extends S{_parse(e){return this._getType(e)===y.null?M(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};X.create=(t,e)=>new X({innerType:t,typeName:x.ZodNullable,...k(e)});var Re=class extends S{_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}};Re.create=(t,e)=>new Re({innerType:t,typeName:x.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...k(e)});var Ae=class extends S{_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 Le(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new B(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new B(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ae.create=(t,e)=>new Ae({innerType:t,typeName:x.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...k(e)});var Ue=class extends S{_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}),v}return{status:"valid",value:e.data}}};Ue.create=t=>new Ue({typeName:x.ZodNaN,...k(t)});var So=Symbol("zod_brand"),Je=class extends S{_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}},Xe=class t extends S{_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"?v:i.status==="dirty"?(r.dirty(),me(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"?v: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:x.ZodPipeline})}},Ce=class extends S{_parse(e){let r=this._def.innerType._parse(e),n=s=>(ie(s)&&(s.value=Object.freeze(s.value)),s);return Le(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};Ce.create=(t,e)=>new Ce({innerType:t,typeName:x.ZodReadonly,...k(e)});function vn(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Sn(t,e={},r){return t?ae.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(o=>{if(!o){let a=vn(e,n),c=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:c})}});if(!i){let o=vn(e,n),a=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:a})}}):ae.create()}var To={object:j.lazycreate},x;(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"})(x||(x={}));var Ro=(t,e={message:`Input not instance of ${t.name}`})=>Sn(r=>r instanceof t,e),Tn=oe.create,Rn=he.create,Ao=Ue.create,Co=ge.create,An=ye.create,Io=_e.create,$o=Be.create,Oo=be.create,No=ve.create,Do=ae.create,Po=re.create,Mo=K.create,Lo=je.create,Fo=ne.create,Bo=j.create,jo=j.strictCreate,zo=xe.create,Zo=gt.create,Uo=we.create,Ho=J.create,Vo=yt.create,Ko=ze.create,Go=Ze.create,Wo=_t.create,qo=Ee.create,Yo=ke.create,Jo=Se.create,Xo=Te.create,Qo=ce.create,ea=V.create,ta=U.create,ra=X.create,na=V.createWithPreprocess,sa=Xe.create,ia=()=>Tn().optional(),oa=()=>Rn().optional(),aa=()=>An().optional(),ca={string:(t=>oe.create({...t,coerce:!0})),number:(t=>he.create({...t,coerce:!0})),boolean:(t=>ye.create({...t,coerce:!0})),bigint:(t=>ge.create({...t,coerce:!0})),date:(t=>_e.create({...t,coerce:!0}))};var ua=v;var He=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 ma=fa(pa(import.meta.url)),Cn=process.env.TOKMIZER_FILTERS_DIR||$n(ma,"..","..","filters"),ue=null,In=!1;function ha(){return process.env.TOKMIZER_DEV==="1"||process.env.TOKMIZER_DEV==="true"}async function On(){if(ue)return ue;if(!ha())return!In&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
|
|
4
|
-
|
|
5
|
-
`)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
`):null,a=[...a.slice(0,_),...O>0?[xt(O)]:[],...E.filter(N=>le.test(N))]}else if(u)l=a.slice(_).join(`
|
|
9
|
-
`
|
|
10
|
-
|
|
11
|
-
`);
|
|
12
|
-
`)
|
|
13
|
-
`
|
|
3
|
+
var sl=Object.create;var Sn=Object.defineProperty;var ol=Object.getOwnPropertyDescriptor;var il=Object.getOwnPropertyNames;var al=Object.getPrototypeOf,ll=Object.prototype.hasOwnProperty;var ge=(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 ue=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var V=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},ts=(e,t)=>{for(var n in t)Sn(e,n,{get:t[n],enumerable:!0})},cl=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of il(t))!ll.call(e,s)&&s!==n&&Sn(e,s,{get:()=>t[s],enumerable:!(r=ol(t,s))||r.enumerable});return e};var ul=(e,t,n)=>(n=e!=null?sl(al(e)):{},cl(t||!e||!e.__esModule?Sn(n,"default",{value:e,enumerable:!0}):n,e));var is=V((Og,os)=>{os.exports=ss;ss.sync=fl;var ns=ge("fs");function dl(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 rs(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:dl(t,n)}function ss(e,t,n){ns.stat(e,function(r,s){n(r,r?!1:rs(s,e,t))})}function fl(e,t){return rs(ns.statSync(e),e,t)}});var ds=V((Pg,us)=>{us.exports=ls;ls.sync=pl;var as=ge("fs");function ls(e,t,n){as.stat(e,function(r,s){n(r,r?!1:cs(s,t))})}function pl(e,t){return cs(as.statSync(e),t)}function cs(e,t){return e.isFile()&&ml(e,t)}function ml(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 ps=V((Dg,fs)=>{var Ng=ge("fs"),Jt;process.platform==="win32"||global.TESTING_WINDOWS?Jt=is():Jt=ds();fs.exports=Tn;Tn.sync=hl;function Tn(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){Tn(e,t||{},function(o,i){o?s(o):r(i)})})}Jt(e,t||{},function(r,s){r&&(r.code==="EACCES"||t&&t.ignoreErrors)&&(r=null,s=!1),n(r,s)})}function hl(e,t){try{return Jt.sync(e,t||{})}catch(n){if(t&&t.ignoreErrors||n.code==="EACCES")return!1;throw n}}});var _s=V((Mg,ks)=>{var Ye=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ms=ge("path"),gl=Ye?";":":",hs=ps(),gs=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),ys=(e,t)=>{let n=t.colon||gl,r=e.match(/\//)||Ye&&e.match(/\\/)?[""]:[...Ye?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],s=Ye?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=Ye?s.split(n):[""];return Ye&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:r,pathExt:o,pathExtExe:s}},bs=(e,t,n)=>{typeof t=="function"&&(n=t,t={}),t||(t={});let{pathEnv:r,pathExt:s,pathExtExe:o}=ys(e,t),i=[],a=c=>new Promise((u,d)=>{if(c===r.length)return t.all&&i.length?u(i):d(gs(e));let f=r[c],p=/^".*"$/.test(f)?f.slice(1,-1):f,h=ms.join(p,e),w=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+h:h;u(l(w,c,0))}),l=(c,u,d)=>new Promise((f,p)=>{if(d===s.length)return f(a(u+1));let h=s[d];hs(c+h,{pathExt:o},(w,k)=>{if(!w&&k)if(t.all)i.push(c+h);else return f(c+h);return f(l(c,u,d+1))})});return n?a(0).then(c=>n(null,c),n):a(0)},yl=(e,t)=>{t=t||{};let{pathEnv:n,pathExt:r,pathExtExe:s}=ys(e,t),o=[];for(let i=0;i<n.length;i++){let a=n[i],l=/^".*"$/.test(a)?a.slice(1,-1):a,c=ms.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(hs.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 gs(e)};ks.exports=bs;bs.sync=yl});var xs=V((Fg,Rn)=>{"use strict";var ws=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};Rn.exports=ws;Rn.exports.default=ws});var Ts=V((Lg,Ss)=>{"use strict";var vs=ge("path"),bl=_s(),kl=xs();function Es(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=bl.sync(e.command,{path:n[kl({env:n})],pathExt:t?vs.delimiter:void 0})}catch{}finally{o&&process.chdir(r)}return i&&(i=vs.resolve(s?e.options.cwd:"",i)),i}function _l(e){return Es(e)||Es(e,!0)}Ss.exports=_l});var Rs=V((jg,$n)=>{"use strict";var An=/([()\][%!^"`<>&|;, *?])/g;function wl(e){return e=e.replace(An,"^$1"),e}function xl(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(An,"^$1"),t&&(e=e.replace(An,"^$1")),e}$n.exports.command=wl;$n.exports.argument=xl});var $s=V((Hg,As)=>{"use strict";As.exports=/^#!(.*)/});var Is=V((Bg,Cs)=>{"use strict";var vl=$s();Cs.exports=(e="")=>{let t=e.match(vl);if(!t)return null;let[n,r]=t[0].replace(/#! ?/,"").split(" "),s=n.split("/").pop();return s==="env"?r:r?`${s} ${r}`:s}});var Ps=V((zg,Os)=>{"use strict";var Cn=ge("fs"),El=Is();function Sl(e){let n=Buffer.alloc(150),r;try{r=Cn.openSync(e,"r"),Cn.readSync(r,n,0,150,0),Cn.closeSync(r)}catch{}return El(n.toString())}Os.exports=Sl});var Fs=V((Ug,Ms)=>{"use strict";var Tl=ge("path"),Ns=Ts(),Ds=Rs(),Rl=Ps(),Al=process.platform==="win32",$l=/\.(?:com|exe)$/i,Cl=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Il(e){e.file=Ns(e);let t=e.file&&Rl(e.file);return t?(e.args.unshift(e.file),e.command=t,Ns(e)):e.file}function Ol(e){if(!Al)return e;let t=Il(e),n=!$l.test(t);if(e.options.forceShell||n){let r=Cl.test(t);e.command=Tl.normalize(e.command),e.command=Ds.command(e.command),e.args=e.args.map(o=>Ds.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 Pl(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:Ol(r)}Ms.exports=Pl});var Hs=V((Zg,js)=>{"use strict";var In=process.platform==="win32";function On(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 Nl(e,t){if(!In)return;let n=e.emit;e.emit=function(r,s){if(r==="exit"){let o=Ls(s,t);if(o)return n.call(e,"error",o)}return n.apply(e,arguments)}}function Ls(e,t){return In&&e===1&&!t.file?On(t.original,"spawn"):null}function Dl(e,t){return In&&e===1&&!t.file?On(t.original,"spawnSync"):null}js.exports={hookChildProcess:Nl,verifyENOENT:Ls,verifyENOENTSync:Dl,notFoundError:On}});var Us=V((Jg,Xe)=>{"use strict";var Bs=ge("child_process"),Pn=Fs(),Nn=Hs();function zs(e,t,n){let r=Pn(e,t,n),s=Bs.spawn(r.command,r.args,r.options);return Nn.hookChildProcess(s,r),s}function Ml(e,t,n){let r=Pn(e,t,n),s=Bs.spawnSync(r.command,r.args,r.options);return s.error=s.error||Nn.verifyENOENTSync(s.status,r),s}Xe.exports=zs;Xe.exports.spawn=zs;Xe.exports.sync=Ml;Xe.exports._parse=Pn;Xe.exports._enoent=Nn});function Kc(e,t){let n=e.slice(0,t).split(/\r?\n/);return[n.length,n.pop().length+1]}function Vc(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,Ze=ue(()=>{v=class e extends Error{line;column;codeblock;constructor(t,n){let[r,s]=Kc(n.toml,n.ptr),o=Vc(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 Yt(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),h=p>=48&&p<=57?p-48:p>=65&&p<=70?p-65+10:p>=97&&p<=102?p-97+10:-1;h<0&&v.x("invalid non-hex character in unicode escape",e),u=u<<4|h}(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 Ln=ue(()=>{Ze();});var Wc,Je,jn=ue(()=>{Wc=/^(\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(Wc);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 W(e,t=10){return t===16?e>47&&e<58||e>64&&e<71||e>96&&e<103:e>47&&e<48+t}function Bn(e,t){return e===32||e===9||e===10||e===13||t&&(e===t||e===44)||e===35}function Et(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?ro(e):no(e);return e.d++,s}return r===34||r===39?Yt(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?Xt(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?qc(e,r,t):e.s.charCodeAt(e.p+2)===58?Yc(e,r,t):Xt(e,e.p,r,0,t)}function Xt(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||Bn(o=e.s.charCodeAt(e.p),s))return e.bi===!0?0n:0;if(!r){if(o===120)return Hn(e,t,16,s);if(o===98)return Hn(e,t,2,s);if(o===111)return Hn(e,t,8,s)}o===46?i=2:o===101||o===69?i=4:v.x("illegal leading zero",e,t)}else W(o)||v.x("invalid value",e,t);for(;++e.p<e.s.length&&(o=e.s.charCodeAt(e.p),!Bn(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)||(W(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):to(e,l,10,t)}function Hn(e,t,n,r){let s,o=1;for(;++e.p<e.s.length&&(s=e.s.charCodeAt(e.p),!Bn(s,r));)s===95?(o&1&&v.x("illegal underscore",e),o=3):W(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("_","")),to(e,i,n,t)}function to(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 qc(e,t,n){let r=e.p++,s;if(!W(t)||!W(e.s.charCodeAt(e.p++))||!W(e.s.charCodeAt(e.p++))||!W(e.s.charCodeAt(e.p++)))return Xt(e,e.p=r,t,0,n);if(e.p+=5,W(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,!W(e.s.charCodeAt(e.p+1))))&&t!==84&&t!==116){let i=e.s.slice(r,e.p);return vt(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(;W(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 vt(e,i,1,s,r,"[+00:00]")}if(t===43||t===45){let i=e.s.slice(r,e.p+=6);return vt(e,i,1,s,r,!e.ld&&"["+e.s.slice(e.p-6,e.p)+"]")}}let o=e.s.slice(r,e.p);return vt(e,o,2,s,r)}function Yc(e,t,n){let r=e.p;if(!W(t)||!W(e.s.charCodeAt(++e.p)))return Xt(e,--e.p,t,0,n);if(e.s.charCodeAt(e.p+=4)===58&&(e.p+=3),e.s.charCodeAt(e.p)===46)for(;W(e.s.charCodeAt(++e.p)););let s=e.s.slice(r,e.p);return vt(e,s,4,!1,r)}function vt(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 zn=ue(()=>{Ln();Un();Ze();jn();});function Xc(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 ne(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;Xc(e)}}var Zn=ue(()=>{Ze();});function Qt(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(Yt(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 no(e){let t=e.p++,n=Object.create(null),r=new Set,s;for(;e.p<e.s.length;){if(ne(e),(s=e.s.charCodeAt(e.p))===125)return e.p++,n;let o,i=n,a=!1,l=e.p,c=Qt(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),ne(e,!0,!0);let u=Et(e,125);if(i&&typeof(i[o]=u)=="object"&&r.add(u),ne(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 ro(e){let t=e.p++,n=[],r;for(;e.p<e.s.length;){if(ne(e),(r=e.s.charCodeAt(e.p))===93)return e.p++,n;if(n.push(Et(e,93)),ne(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 Un=ue(()=>{Ln();zn();Zn();Ze();});function so(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 oo(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 Jn(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++,ne(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=Qt(n,93);c&&(e.charCodeAt(n.p)!==93&&v.x("expected end of table array declaration",n),n.p++);let d=so(n,u,r,s,c?2:1);d?(l=d[2],a=d[1]):(oo(n,d,o),i=!0)}else{o=n.p;let c=Qt(n),u=so(n,c,a,l,0);!u&&!i&&oo(n,u,o),ne(n,!0,!0);let d=Et(n,void 0);u&&!i&&(u[1][u[0]]=d)}ne(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),ne(n)}return r}var io=ue(()=>{Un();zn();Zn();Ze();});function St(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 eu(e){for(let t=0;t<e.length;t++)if(St(e[t])!=="object")return!1;return e.length!=0}function lo(e){return JSON.stringify(e).replaceAll("\x7F","\\u007f")}function tu(e){return lo(ao?e.toWellFormed():e)}function co(e){if(Qc.test(e))return e;if(ao&&!e.isWellFormed())throw new RangeError("key contains illegal lone surrogates");return lo(e)}function Gn(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 tu(e);case"date":if(isNaN(e.getTime()))throw new TypeError("cannot serialize invalid date");return e.toISOString();case"object":return nu(e,n,r,s);case"array":return ru(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 nu(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+=co(a)+" = "+Gn(e[a],St(e[a]),t-1,n,r)}return o+" }"}function ru(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+=Gn(e[o],St(e[o]),t-1,n,r)}return s+" ]"}function su(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+=Kn(0,e[i],t,n,r,s);return o}function Kn(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=St(t[u]);if(d==="symbol"||d==="function")throw new TypeError(`cannot serialize values of type '${d}'`);let f=co(u);if(d==="array"&&eu(t[u]))a+=(a&&`
|
|
11
|
+
`)+su(t[u],n?`${n}.${f}`:f,r-1,s,o);else if(d==="object"){let p=n?`${n}.${f}`:f;a+=(a&&`
|
|
12
|
+
`)+Kn(p,t[u],p,r-1,s,o)}else i+=f,i+=" = ",i+=Gn(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 Vn(e,{maxDepth:t=1e3,numbersAsFloat:n=!1,strictTemporal:r=!1}={}){if(St(e)!=="object")throw new TypeError("stringify can only be called with an object");let s=Kn(0,e,"",t,n,r);return s[s.length-1]!==`
|
|
16
|
+
`?s+`
|
|
17
|
+
`:s}var Qc,ao,uo=ue(()=>{Qc=/^[a-z0-9-_]+$/i,ao=!!"".isWellFormed});var Wn={};ts(Wn,{TomlDate:()=>Je,TomlError:()=>v,default:()=>ou,parse:()=>Jn,stringify:()=>Vn});var ou,qn=ue(()=>{io();uo();jn();Ze();ou={parse:Jn,stringify:Vn,TomlDate:Je,TomlError:v}});var Xa=ul(Us(),1);import{readdir as iu,readFile as au}from"node:fs/promises";import{join as po,dirname as lu}from"node:path";import{fileURLToPath as cu}from"node:url";var g={};ts(g,{BRAND:()=>lc,DIRTY:()=>Ae,EMPTY_PATH:()=>Hl,INVALID:()=>x,NEVER:()=>Gc,OK:()=>L,ParseStatus:()=>F,Schema:()=>A,ZodAny:()=>ke,ZodArray:()=>me,ZodBigInt:()=>Ce,ZodBoolean:()=>Ie,ZodBranded:()=>wt,ZodCatch:()=>ze,ZodDate:()=>Oe,ZodDefault:()=>Be,ZodDiscriminatedUnion:()=>Vt,ZodEffects:()=>X,ZodEnum:()=>je,ZodError:()=>z,ZodFirstPartyTypeKind:()=>S,ZodFunction:()=>qt,ZodIntersection:()=>Me,ZodIssueCode:()=>m,ZodLazy:()=>Fe,ZodLiteral:()=>Le,ZodMap:()=>st,ZodNaN:()=>it,ZodNativeEnum:()=>He,ZodNever:()=>te,ZodNull:()=>Ne,ZodNullable:()=>ae,ZodNumber:()=>$e,ZodObject:()=>U,ZodOptional:()=>q,ZodParsedType:()=>b,ZodPipeline:()=>xt,ZodPromise:()=>_e,ZodReadonly:()=>Ue,ZodRecord:()=>Wt,ZodSchema:()=>A,ZodSet:()=>ot,ZodString:()=>be,ZodSymbol:()=>nt,ZodTransformer:()=>X,ZodTuple:()=>ie,ZodType:()=>A,ZodUndefined:()=>Pe,ZodUnion:()=>De,ZodUnknown:()=>pe,ZodVoid:()=>rt,addIssueToContext:()=>y,any:()=>yc,array:()=>wc,bigint:()=>fc,boolean:()=>eo,coerce:()=>Jc,custom:()=>Ys,date:()=>pc,datetimeRegex:()=>Ws,defaultErrorMap:()=>de,discriminatedUnion:()=>Sc,effect:()=>Fc,enum:()=>Nc,function:()=>Ic,getErrorMap:()=>Qe,getParsedType:()=>oe,instanceof:()=>uc,intersection:()=>Tc,isAborted:()=>Gt,isAsync:()=>et,isDirty:()=>Kt,isValid:()=>ye,late:()=>cc,lazy:()=>Oc,literal:()=>Pc,makeIssue:()=>_t,map:()=>$c,nan:()=>dc,nativeEnum:()=>Dc,never:()=>kc,null:()=>gc,nullable:()=>jc,number:()=>Qs,object:()=>xc,objectUtil:()=>Dn,oboolean:()=>Zc,onumber:()=>Uc,optional:()=>Lc,ostring:()=>zc,pipeline:()=>Bc,preprocess:()=>Hc,promise:()=>Mc,quotelessJson:()=>Fl,record:()=>Ac,set:()=>Cc,setErrorMap:()=>jl,strictObject:()=>vc,string:()=>Xs,symbol:()=>mc,transformer:()=>Fc,tuple:()=>Rc,undefined:()=>hc,union:()=>Ec,unknown:()=>bc,util:()=>$,void:()=>_c});var $;(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})($||($={}));var Dn;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Dn||(Dn={}));var b=$.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),oe=e=>{switch(typeof e){case"undefined":return b.undefined;case"string":return b.string;case"number":return Number.isNaN(e)?b.nan:b.number;case"boolean":return b.boolean;case"function":return b.function;case"bigint":return b.bigint;case"symbol":return b.symbol;case"object":return Array.isArray(e)?b.array:e===null?b.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?b.promise:typeof Map<"u"&&e instanceof Map?b.map:typeof Set<"u"&&e instanceof Set?b.set:typeof Date<"u"&&e instanceof Date?b.date:b.object;default:return b.unknown}};var m=$.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"]),Fl=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),z=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,$.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()}};z.create=e=>new z(e);var Ll=(e,t)=>{let n;switch(e.code){case m.invalid_type:e.received===b.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case m.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,$.jsonStringifyReplacer)}`;break;case m.unrecognized_keys:n=`Unrecognized key(s) in object: ${$.joinValues(e.keys,", ")}`;break;case m.invalid_union:n="Invalid input";break;case m.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${$.joinValues(e.options)}`;break;case m.invalid_enum_value:n=`Invalid enum value. Expected ${$.joinValues(e.options)}, received '${e.received}'`;break;case m.invalid_arguments:n="Invalid function arguments";break;case m.invalid_return_type:n="Invalid function return type";break;case m.invalid_date:n="Invalid date";break;case m.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}"`:$.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case m.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 m.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 m.custom:n="Invalid input";break;case m.invalid_intersection_types:n="Intersection results could not be merged";break;case m.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case m.not_finite:n="Number must be finite";break;default:n=t.defaultError,$.assertNever(e)}return{message:n}},de=Ll;var Zs=de;function jl(e){Zs=e}function Qe(){return Zs}var _t=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}},Hl=[];function y(e,t){let n=Qe(),r=_t({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===de?void 0:de].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"}),Ae=e=>({status:"dirty",value:e}),L=e=>({status:"valid",value:e}),Gt=e=>e.status==="aborted",Kt=e=>e.status==="dirty",ye=e=>e.status==="valid",et=e=>typeof Promise<"u"&&e instanceof Promise;var _;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(_||(_={}));var Y=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}},Js=(e,t)=>{if(ye(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 z(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 A=class{get description(){return this._def.description}_getType(t){return oe(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:oe(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:oe(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(et(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:oe(t)},s=this._parseSync({data:t,path:r.path,parent:r});return Js(r,s)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:oe(t)};if(!this["~standard"].async)try{let r=this._parseSync({data:t,path:[],parent:n});return ye(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=>ye(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:oe(t)},s=this._parse({data:t,path:r.path,parent:r}),o=await(et(s)?s:Promise.resolve(s));return Js(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:m.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 X({schema:this,typeName:S.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 q.create(this,this._def)}nullable(){return ae.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return me.create(this)}promise(){return _e.create(this,this._def)}or(t){return De.create([this,t],this._def)}and(t){return Me.create(this,t,this._def)}transform(t){return new X({...T(this._def),schema:this,typeName:S.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new Be({...T(this._def),innerType:this,defaultValue:n,typeName:S.ZodDefault})}brand(){return new wt({typeName:S.ZodBranded,type:this,...T(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new ze({...T(this._def),innerType:this,catchValue:n,typeName:S.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return xt.create(this,t)}readonly(){return Ue.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Bl=/^c[^\s-]{8,}$/i,zl=/^[0-9a-z]+$/,Ul=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Zl=/^[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,Jl=/^[a-z0-9_-]{21}$/i,Gl=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Kl=/^[-+]?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)?)??$/,Vl=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Wl="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Mn,ql=/^(?:(?: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])$/,Yl=/^(?:(?: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])$/,Xl=/^(([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]))$/,Ql=/^(([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])$/,ec=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,tc=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ks="((\\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])))",nc=new RegExp(`^${Ks}$`);function Vs(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 rc(e){return new RegExp(`^${Vs(e)}$`)}function Ws(e){let t=`${Ks}T${Vs(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 sc(e,t){return!!((t==="v4"||!t)&&ql.test(e)||(t==="v6"||!t)&&Xl.test(e))}function oc(e,t){if(!Gl.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 ic(e,t){return!!((t==="v4"||!t)&&Yl.test(e)||(t==="v6"||!t)&&Ql.test(e))}var be=class e extends A{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==b.string){let o=this._getOrReturnCtx(t);return y(o,{code:m.invalid_type,expected:b.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:m.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:m.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:m.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&y(s,{code:m.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")Vl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"email",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Mn||(Mn=new RegExp(Wl,"u")),Mn.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"emoji",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")Zl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"uuid",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")Jl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"nanoid",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")Bl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cuid",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")zl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cuid2",code:m.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")Ul.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"ulid",code:m.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:m.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:m.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:m.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:m.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:m.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?Ws(o).test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:m.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?nc.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:m.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?rc(o).test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{code:m.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?Kl.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"duration",code:m.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?sc(t.data,o.version)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"ip",code:m.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?oc(t.data,o.alg)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"jwt",code:m.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?ic(t.data,o.version)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"cidr",code:m.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?ec.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"base64",code:m.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?tc.test(t.data)||(s=this._getOrReturnCtx(t,s),y(s,{validation:"base64url",code:m.invalid_string,message:o.message}),r.dirty()):$.assertNever(o);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(s=>t.test(s),{validation:n,code:m.invalid_string,..._.errToObj(r)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",..._.errToObj(t)})}url(t){return this._addCheck({kind:"url",..._.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",..._.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",..._.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",..._.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",..._.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",..._.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",..._.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",..._.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",..._.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",..._.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",..._.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",..._.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,..._.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,..._.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",..._.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,..._.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,..._.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,..._.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,..._.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,..._.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,..._.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,..._.errToObj(n)})}nonempty(t){return this.min(1,_.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}};be.create=e=>new be({checks:[],typeName:S.ZodString,coerce:e?.coerce??!1,...T(e)});function ac(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 $e=class e extends A{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)!==b.number){let o=this._getOrReturnCtx(t);return y(o,{code:m.invalid_type,expected:b.number,received:o.parsedType}),x}let r,s=new F;for(let o of this._def.checks)o.kind==="int"?$.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),y(r,{code:m.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:m.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:m.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="multipleOf"?ac(t.data,o.value)!==0&&(r=this._getOrReturnCtx(t,r),y(r,{code:m.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:m.not_finite,message:o.message}),s.dirty()):$.assertNever(o);return{status:s.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,_.toString(n))}gt(t,n){return this.setLimit("min",t,!1,_.toString(n))}lte(t,n){return this.setLimit("max",t,!0,_.toString(n))}lt(t,n){return this.setLimit("max",t,!1,_.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:_.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:_.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:_.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:_.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:_.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:_.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:_.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:_.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:_.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:_.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"&&$.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)}};$e.create=e=>new $e({checks:[],typeName:S.ZodNumber,coerce:e?.coerce||!1,...T(e)});var Ce=class e extends A{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)!==b.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:m.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:m.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:m.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):$.assertNever(o);return{status:s.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return y(n,{code:m.invalid_type,expected:b.bigint,received:n.parsedType}),x}gte(t,n){return this.setLimit("min",t,!0,_.toString(n))}gt(t,n){return this.setLimit("min",t,!1,_.toString(n))}lte(t,n){return this.setLimit("max",t,!0,_.toString(n))}lt(t,n){return this.setLimit("max",t,!1,_.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:_.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:_.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:_.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:_.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:_.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:_.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}};Ce.create=e=>new Ce({checks:[],typeName:S.ZodBigInt,coerce:e?.coerce??!1,...T(e)});var Ie=class extends A{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==b.boolean){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.boolean,received:r.parsedType}),x}return L(t.data)}};Ie.create=e=>new Ie({typeName:S.ZodBoolean,coerce:e?.coerce||!1,...T(e)});var Oe=class e extends A{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==b.date){let o=this._getOrReturnCtx(t);return y(o,{code:m.invalid_type,expected:b.date,received:o.parsedType}),x}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return y(o,{code:m.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:m.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:m.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):$.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:_.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:_.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}};Oe.create=e=>new Oe({checks:[],coerce:e?.coerce||!1,typeName:S.ZodDate,...T(e)});var nt=class extends A{_parse(t){if(this._getType(t)!==b.symbol){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.symbol,received:r.parsedType}),x}return L(t.data)}};nt.create=e=>new nt({typeName:S.ZodSymbol,...T(e)});var Pe=class extends A{_parse(t){if(this._getType(t)!==b.undefined){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.undefined,received:r.parsedType}),x}return L(t.data)}};Pe.create=e=>new Pe({typeName:S.ZodUndefined,...T(e)});var Ne=class extends A{_parse(t){if(this._getType(t)!==b.null){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.null,received:r.parsedType}),x}return L(t.data)}};Ne.create=e=>new Ne({typeName:S.ZodNull,...T(e)});var ke=class extends A{constructor(){super(...arguments),this._any=!0}_parse(t){return L(t.data)}};ke.create=e=>new ke({typeName:S.ZodAny,...T(e)});var pe=class extends A{constructor(){super(...arguments),this._unknown=!0}_parse(t){return L(t.data)}};pe.create=e=>new pe({typeName:S.ZodUnknown,...T(e)});var te=class extends A{_parse(t){let n=this._getOrReturnCtx(t);return y(n,{code:m.invalid_type,expected:b.never,received:n.parsedType}),x}};te.create=e=>new te({typeName:S.ZodNever,...T(e)});var rt=class extends A{_parse(t){if(this._getType(t)!==b.undefined){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.void,received:r.parsedType}),x}return L(t.data)}};rt.create=e=>new rt({typeName:S.ZodVoid,...T(e)});var me=class e extends A{_parse(t){let{ctx:n,status:r}=this._processInputParams(t),s=this._def;if(n.parsedType!==b.array)return y(n,{code:m.invalid_type,expected:b.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?m.too_big:m.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:m.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:m.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 Y(n,i,n.path,a)))).then(i=>F.mergeArray(r,i));let o=[...n.data].map((i,a)=>s.type._parseSync(new Y(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:_.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:_.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:_.toString(n)}})}nonempty(t){return this.min(1,t)}};me.create=(e,t)=>new me({type:e,minLength:null,maxLength:null,exactLength:null,typeName:S.ZodArray,...T(t)});function tt(e){if(e instanceof U){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=q.create(tt(r))}return new U({...e._def,shape:()=>t})}else return e instanceof me?new me({...e._def,type:tt(e.element)}):e instanceof q?q.create(tt(e.unwrap())):e instanceof ae?ae.create(tt(e.unwrap())):e instanceof ie?ie.create(e.items.map(t=>tt(t))):e}var U=class e extends A{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=$.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==b.object){let c=this._getOrReturnCtx(t);return y(c,{code:m.invalid_type,expected:b.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 te&&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 Y(s,d,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof te){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:m.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 Y(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 _.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:_.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:S.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 $.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 $.objectKeys(this.shape))t[r]||(n[r]=this.shape[r]);return new e({...this._def,shape:()=>n})}deepPartial(){return tt(this)}partial(t){let n={};for(let r of $.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 $.objectKeys(this.shape))if(t&&!t[r])n[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof q;)o=o._def.innerType;n[r]=o}return new e({...this._def,shape:()=>n})}keyof(){return qs($.objectKeys(this.shape))}};U.create=(e,t)=>new U({shape:()=>e,unknownKeys:"strip",catchall:te.create(),typeName:S.ZodObject,...T(t)});U.strictCreate=(e,t)=>new U({shape:()=>e,unknownKeys:"strict",catchall:te.create(),typeName:S.ZodObject,...T(t)});U.lazycreate=(e,t)=>new U({shape:e,unknownKeys:"strip",catchall:te.create(),typeName:S.ZodObject,...T(t)});var De=class extends A{_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 z(a.ctx.common.issues));return y(n,{code:m.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 z(l));return y(n,{code:m.invalid_union,unionErrors:a}),x}}get options(){return this._def.options}};De.create=(e,t)=>new De({options:e,typeName:S.ZodUnion,...T(t)});var fe=e=>e instanceof Fe?fe(e.schema):e instanceof X?fe(e.innerType()):e instanceof Le?[e.value]:e instanceof je?e.options:e instanceof He?$.objectValues(e.enum):e instanceof Be?fe(e._def.innerType):e instanceof Pe?[void 0]:e instanceof Ne?[null]:e instanceof q?[void 0,...fe(e.unwrap())]:e instanceof ae?[null,...fe(e.unwrap())]:e instanceof wt||e instanceof Ue?fe(e.unwrap()):e instanceof ze?fe(e._def.innerType):[],Vt=class e extends A{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==b.object)return y(n,{code:m.invalid_type,expected:b.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:m.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=fe(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:S.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:s,...T(r)})}};function Fn(e,t){let n=oe(e),r=oe(t);if(e===t)return{valid:!0,data:e};if(n===b.object&&r===b.object){let s=$.objectKeys(t),o=$.objectKeys(e).filter(a=>s.indexOf(a)!==-1),i={...e,...t};for(let a of o){let l=Fn(e[a],t[a]);if(!l.valid)return{valid:!1};i[a]=l.data}return{valid:!0,data:i}}else if(n===b.array&&r===b.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=Fn(i,a);if(!l.valid)return{valid:!1};s.push(l.data)}return{valid:!0,data:s}}else return n===b.date&&r===b.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var Me=class extends A{_parse(t){let{status:n,ctx:r}=this._processInputParams(t),s=(o,i)=>{if(Gt(o)||Gt(i))return x;let a=Fn(o.value,i.value);return a.valid?((Kt(o)||Kt(i))&&n.dirty(),{status:n.value,value:a.data}):(y(r,{code:m.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}))}};Me.create=(e,t,n)=>new Me({left:e,right:t,typeName:S.ZodIntersection,...T(n)});var ie=class e extends A{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==b.array)return y(r,{code:m.invalid_type,expected:b.array,received:r.parsedType}),x;if(r.data.length<this._def.items.length)return y(r,{code:m.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:m.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 Y(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})}};ie.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ie({items:e,typeName:S.ZodTuple,rest:null,...T(t)})};var Wt=class e extends A{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!==b.object)return y(r,{code:m.invalid_type,expected:b.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 Y(r,a,r.path,a)),value:i._parse(new Y(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 A?new e({keyType:t,valueType:n,typeName:S.ZodRecord,...T(r)}):new e({keyType:be.create(),valueType:t,typeName:S.ZodRecord,...T(n)})}},st=class extends A{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!==b.map)return y(r,{code:m.invalid_type,expected:b.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 Y(r,a,r.path,[c,"key"])),value:o._parse(new Y(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}}}};st.create=(e,t,n)=>new st({valueType:t,keyType:e,typeName:S.ZodMap,...T(n)});var ot=class e extends A{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==b.set)return y(r,{code:m.invalid_type,expected:b.set,received:r.parsedType}),x;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(y(r,{code:m.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:m.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 Y(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:_.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:_.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};ot.create=(e,t)=>new ot({valueType:e,minSize:null,maxSize:null,typeName:S.ZodSet,...T(t)});var qt=class e extends A{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==b.function)return y(n,{code:m.invalid_type,expected:b.function,received:n.parsedType}),x;function r(a,l){return _t({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Qe(),de].filter(c=>!!c),issueData:{code:m.invalid_arguments,argumentsError:l}})}function s(a,l){return _t({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Qe(),de].filter(c=>!!c),issueData:{code:m.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof _e){let a=this;return L(async function(...l){let c=new z([]),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 z([r(l,c.error)]);let u=Reflect.apply(i,this,c.data),d=a._def.returns.safeParse(u,o);if(!d.success)throw new z([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:ie.create(t).rest(pe.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||ie.create([]).rest(pe.create()),returns:n||pe.create(),typeName:S.ZodFunction,...T(r)})}},Fe=class extends A{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})}};Fe.create=(e,t)=>new Fe({getter:e,typeName:S.ZodLazy,...T(t)});var Le=class extends A{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return y(n,{received:n.data,code:m.invalid_literal,expected:this._def.value}),x}return{status:"valid",value:t.data}}get value(){return this._def.value}};Le.create=(e,t)=>new Le({value:e,typeName:S.ZodLiteral,...T(t)});function qs(e,t){return new je({values:e,typeName:S.ZodEnum,...T(t)})}var je=class e extends A{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),r=this._def.values;return y(n,{expected:$.joinValues(r),received:n.parsedType,code:m.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:m.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})}};je.create=qs;var He=class extends A{_parse(t){let n=$.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==b.string&&r.parsedType!==b.number){let s=$.objectValues(n);return y(r,{expected:$.joinValues(s),received:r.parsedType,code:m.invalid_type}),x}if(this._cache||(this._cache=new Set($.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let s=$.objectValues(n);return y(r,{received:r.data,code:m.invalid_enum_value,options:s}),x}return L(t.data)}get enum(){return this._def.values}};He.create=(e,t)=>new He({values:e,typeName:S.ZodNativeEnum,...T(t)});var _e=class extends A{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==b.promise&&n.common.async===!1)return y(n,{code:m.invalid_type,expected:b.promise,received:n.parsedType}),x;let r=n.parsedType===b.promise?n.data:Promise.resolve(n.data);return L(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};_e.create=(e,t)=>new _e({type:e,typeName:S.ZodPromise,...T(t)});var X=class extends A{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===S.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"?Ae(l.value):n.value==="dirty"?Ae(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"?Ae(a.value):n.value==="dirty"?Ae(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(!ye(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=>ye(i)?Promise.resolve(s.transform(i.value,o)).then(a=>({status:n.value,value:a})):x);$.assertNever(s)}};X.create=(e,t,n)=>new X({schema:e,typeName:S.ZodEffects,effect:t,...T(n)});X.createWithPreprocess=(e,t,n)=>new X({schema:t,effect:{type:"preprocess",transform:e},typeName:S.ZodEffects,...T(n)});var q=class extends A{_parse(t){return this._getType(t)===b.undefined?L(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};q.create=(e,t)=>new q({innerType:e,typeName:S.ZodOptional,...T(t)});var ae=class extends A{_parse(t){return this._getType(t)===b.null?L(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};ae.create=(e,t)=>new ae({innerType:e,typeName:S.ZodNullable,...T(t)});var Be=class extends A{_parse(t){let{ctx:n}=this._processInputParams(t),r=n.data;return n.parsedType===b.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Be.create=(e,t)=>new Be({innerType:e,typeName:S.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...T(t)});var ze=class extends A{_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 et(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new z(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new z(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};ze.create=(e,t)=>new ze({innerType:e,typeName:S.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...T(t)});var it=class extends A{_parse(t){if(this._getType(t)!==b.nan){let r=this._getOrReturnCtx(t);return y(r,{code:m.invalid_type,expected:b.nan,received:r.parsedType}),x}return{status:"valid",value:t.data}}};it.create=e=>new it({typeName:S.ZodNaN,...T(e)});var lc=Symbol("zod_brand"),wt=class extends A{_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}},xt=class e extends A{_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(),Ae(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:S.ZodPipeline})}},Ue=class extends A{_parse(t){let n=this._def.innerType._parse(t),r=s=>(ye(s)&&(s.value=Object.freeze(s.value)),s);return et(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};Ue.create=(e,t)=>new Ue({innerType:e,typeName:S.ZodReadonly,...T(t)});function Gs(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function Ys(e,t={},n){return e?ke.create().superRefine((r,s)=>{let o=e(r);if(o instanceof Promise)return o.then(i=>{if(!i){let a=Gs(t,r),l=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:l})}});if(!o){let i=Gs(t,r),a=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:a})}}):ke.create()}var cc={object:U.lazycreate},S;(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"})(S||(S={}));var uc=(e,t={message:`Input not instance of ${e.name}`})=>Ys(n=>n instanceof e,t),Xs=be.create,Qs=$e.create,dc=it.create,fc=Ce.create,eo=Ie.create,pc=Oe.create,mc=nt.create,hc=Pe.create,gc=Ne.create,yc=ke.create,bc=pe.create,kc=te.create,_c=rt.create,wc=me.create,xc=U.create,vc=U.strictCreate,Ec=De.create,Sc=Vt.create,Tc=Me.create,Rc=ie.create,Ac=Wt.create,$c=st.create,Cc=ot.create,Ic=qt.create,Oc=Fe.create,Pc=Le.create,Nc=je.create,Dc=He.create,Mc=_e.create,Fc=X.create,Lc=q.create,jc=ae.create,Hc=X.createWithPreprocess,Bc=xt.create,zc=()=>Xs().optional(),Uc=()=>Qs().optional(),Zc=()=>eo().optional(),Jc={string:(e=>be.create({...e,coerce:!0})),number:(e=>$e.create({...e,coerce:!0})),boolean:(e=>Ie.create({...e,coerce:!0})),bigint:(e=>Ce.create({...e,coerce:!0})),date:(e=>Oe.create({...e,coerce:!0}))};var Gc=x;var we=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 uu=lu(cu(import.meta.url)),du=process.env.TOKMIZER_FILTERS_DIR||po(uu,"..","..","filters"),at=null,fo=!1;function fu(){return process.env.TOKMIZER_DEV==="1"||process.env.TOKMIZER_DEV==="true"}async function mo(){return at||(fu()?(at=await pu(du),at):(!fo&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
|
|
18
|
+
`),fo=!0),at=new Map,at))}async function pu(e){let t=new Map,n,r;try{n=(await Promise.resolve().then(()=>(qn(),Wn))).parse,r=(await iu(e)).filter(s=>s.endsWith(".toml"))}catch{return t}for(let s of r){let o=await au(po(e,s),"utf8"),a=n(o).filters;if(a)for(let[l,c]of Object.entries(a)){let u=we.parse({slug:l,...c});t.set(l,{...u,matchRegex:new RegExp(u.match_command)})}}return t}import{createHash as mu}from"node:crypto";var hu=g.enum(["normal","compact","minimal"]),gu=g.enum(["off","light","balanced","max"]),Tt=g.object({enabled:g.boolean().default(!0),telemetryOptIn:g.boolean().default(!0),outputVerbosity:hu.default("compact"),reducer:gu.default("off"),filters:g.object({enableAll:g.boolean().default(!0),disabled:g.array(g.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),ho=new Map;function Q(e){let t=ho.get(e);return t||(t=mu("sha256").update(`tkr:${e}`).digest("hex").slice(0,16),ho.set(e,t)),t}var go=new WeakMap,yu=256;function lt(e,t,n,r=t){let s=go.get(r);s||(s=new Map,go.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(Q(l.slug))||l.matchRegex.test(e)&&(!a||l.priority>a.priority)&&(a=l);if(s.size>=yu){let l=s.keys().next().value;l&&s.delete(l)}return s.set(o,a),a}import{readdir as gd,readFile as Jo,writeFile as Gb,mkdir as Kb,rename as Vb}from"node:fs/promises";import{readdirSync as yd,statSync as zo}from"node:fs";import{createHash as bd}from"node:crypto";import{basename as Xb,join as an}from"node:path";var bu=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,ku=/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g;function le(e){return e.replace(bu,"").replace(ku,"")}function yo(e,t){return t.length===0?e:e.filter(n=>!t.some(r=>r.test(n)))}function bo(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 ct(e){return`\u2026 (${e} more lines omitted)`}function ko(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),ct(s.length),...e.slice(e.length-r)],dropped:s}}var _u=/^\s*(?:[✓✔√]|ok )/,xe=/✕|✗|×|\bFAIL\b|\bERROR\b|\bFATAL\b|\bError|\berror|Expected|Received|\bfailed\b|^\s*Tests?:|^\s*Test Suites?:/;function _o(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)_u.test(a)&&!xe.test(a)?(i.push(a),s+=1):(o(i),i=[],s=0,r.push(a));return o(i),r}var wu=/(?:\/[\w.@+-]+){3,}/g;function wo(e){return e.map(t=>t.replace(wu,n=>{let r=n.split("/").filter(Boolean);return r.length<=2?n:`\u2026/${r.slice(-2).join("/")}`}))}var xu=/^(\s*)(?:export\s+)?(?:async\s+)?(?:function|interface|type|const|let|var|def|fn|impl|trait|struct|enum)\s+[\w$]+/,vu=/\{\s*$/;var Eu=/^\s*(?:(?:public|private|protected|static|async|get|set|readonly|override)\s+)*([\w$]+)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\{\s*$/,Su=new Set(["if","for","while","switch","catch","do","with","return","else","function","await","yield"]);function Tu(e){let t=Eu.exec(e);return!t||Su.has(t[1])?!1:!/=>|\bfunction\b/.test(t[2])}var Ru=/^\s*(?:if|for|while|switch|try|do)\b[^{}]*\{\s*$/;function Au(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 $u(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==="&"))&&Au(e,s+1,o)&&(r=o),s+=1;continue}o==="{"||o==="("||o==="["?n+=1:(o==="}"||o===")"||o==="]")&&(n-=1),s+=1}return n}var xo=/^\s*… \d+ lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/,Cu=/^\s*… (\d+) lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/;function Iu(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 Yn(e){let t=new Array(e.length).fill(!1);for(let n=0;n<e.length;n+=1){let r=Cu.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 Rt(e,t=3,n=!1){let r=[],s=0;for(;s<e.length;){let o=e[s];if(xu.test(o)&&vu.test(o)||Tu(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+=$u(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(Iu(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 Ou=/\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 en(e){let t=e.slice(0,4096);return!(!Ou.test(t)||t.split(`
|
|
19
|
+
`).length<6)}var To=/^\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*/,Ro=/^\s*(?:\[(?:DEBUG|TRACE|INFO|VERBOSE)\]|(?:DEBUG|TRACE|INFO|VERBOSE)(?!\s*:))(?=\s|:|$)(?!\s*[+\-*\/%&|^?]*=)/,Ao=new RegExp(xe.source,"i"),$o=/\bWARN(?:ING)?\b/i;function Co(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(Ro.test(s.replace(To,""))&&!Ao.test(s)&&!$o.test(s)){n+=1;continue}r(),t.push(s)}return r(),t}var Pu=/^(?:DEBUG|INFO):[\w.-]+:/,Nu=/Error|Exception|Traceback|panic|fail|FAIL|Fail|SEVERE|CRITICAL/,Du=8,vo=1,Eo=2;function So(e){if(e.trim()===""||/^\s/.test(e)||Ao.test(e)||$o.test(e)||Nu.test(e))return null;let t=e.replace(To,"");return Ro.test(t)||Pu.test(t)?"\0verbose":e.replace(/\d+/g,"#")}function Io(e){let t=[],n=0;for(;n<e.length;){let r=So(e[n]),s=n+1;if(r!==null)for(;s<e.length&&So(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+vo)),t.push(`\u2026 ${o-vo-Eo} similar log lines dropped \u2026`),t.push(...e.slice(s-Eo,s))),n=s}return t}function tn(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 Oo(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 Po=new Map;function Z(e,t){Po.set(e,t)}function No(e){return Po.get(e)}var Mu=/^[dbclps\-][rwxsStT\-]{9}[@.+]?(?:\s|$)/,Fu=/^[./~][^\s]*:$/,Lu=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})?`,ju=new RegExp(String.raw`^\S+\s+\d+\s+\S+\s+(?:\S+\s+)?(\d+(?:[.,]\d+)?[KMGTPkmgtp]?i?B?)\s+(?:${Lu})\s+(.+)$`),Hu={k:1,m:2,g:3,t:4,p:5},Xn=1e3;function Bu(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 zu(e){let t=/^(\d+(?:[.,]\d+)?)([KMGTPkmgtp])?/.exec(e),n=t[2]?Hu[t[2].toLowerCase()]:0;return Number(t[1].replace(",","."))*1024**n}function Uu(e){let t=ju.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)?Bu(Number(r)):r,o=e.charCodeAt(0)===100;return{name:n,size:s,sizeKey:zu(r),isDir:o}}function Zu(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 Ju(e){let t=[],n=[],r=!1;for(let d of e){if(d.trim()===""||/^total\s+\d+/.test(d))continue;if(Fu.test(d.trim())||!Mu.test(d))return e;let f=Uu(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>Xn){let d=i.length-Xn;i=[...i.slice(0,Xn),`\u2026 ${d} more lines omitted`]}let a=n.length===1?"file":"files",l=t.length===1?"dir":"dirs",c=Zu(n),u=`${n.length} ${a}, ${t.length} ${l}`+(c?` (${c})`:"");return i.push(u),i}Z("smart-ls",Ju);Z("smart-read",e=>Rt(e));var Do=1e3;function Gu(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 Ku(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 Vu(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):"",h=f>=0?d.slice(f+1):d;if(!h)continue;let w=r.get(p)??[];w.push(/\s/.test(h)?`"${h}"`:h),r.set(p,w),o+=1}if(o===0)return e;let i=[...r.keys()].sort(),a=i.every(c=>c!=="")?Gu(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=Ku(d),p=f?d.map(h=>h.slice(0,-f.length)):d;l.push(`${u?`${u}/`:"./"} (${d.length}${f?`, *${f}`:""}): ${p.join(" ")}`)}if(l.length+s.length>Do){let c=Math.max(0,Do-s.length),u=l.length-c;return[...l.slice(0,c),`\u2026 ${u} more lines omitted`,...s]}return[...l,...s]}Z("smart-find",Vu);var Qn=1e3,Mo=200,Wu=60,qu=190,Yu=/^([^\s:]+):(\d+):(.*)$/,Xu=/^([^:]+?)-(\d+)-(.*)$/,Qu=/^([^\s:]+):(.*)$/,Fo=/(?:^|\/)(?:__tests__|tests?|spec|fixtures?|__mocks__|__snapshots__)\/|\.(?:test|spec)\.[^/]+$/i;function Lo(e){let t=e.trim();return t.length>Mo?`${t.slice(0,Mo)}\u2026`:t}function ed(e){let t=[],n="";for(let r of e){let s=n?`${n}, ${r}`:r;s.length>=qu&&n?(t.push(`${n},`),n=r):n=s}return n&&t.push(n),t}function td(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 nd(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 h=Yu.exec(p),w=Xu.exec(p);if(h&&w)return e;let k=h||w?null:Qu.exec(p),R=(h??w??k)?.[1];if(!R)return e;let E=h?{line:h[2],content:h[3],context:!1}:w?{line:w[2],content:w[3],context:!0}:{line:"",content:k[2],context:!1},C=n.get(R)??[];C.push(E),n.set(R,C),E.context||(o+=1,r.set(R,(r.get(R)??0)+1)),i+=1,s=R}if(n.size===i)return e;let a=[...n.keys()].sort((p,h)=>{let w=Fo.test(p)?1:0,k=Fo.test(h)?1:0;return w-k||(p<h?-1:p>h?1:0)}),l=a.length>1?td(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 h of n.get(p))"separator"in h?u.push(" --"):h.line?u.push(` ${h.line}${h.context?"-":":"} ${Lo(h.content)}`):u.push(` ${Lo(h.content)}`)}let d=a.length>1&&u.length>Wu?ed(a.map(p=>`${c(p)} (${r.get(p)??0})`)):[],f=[`${o}m ${a.length}f${l?` in ${l}/`:""}:`,...d,"",...u];if(f.length>Qn){let p=f.length-Qn;return[...f.slice(0,Qn),`\u2026 ${p} more lines omitted`]}return f}Z("smart-grep",nd);var jo=/^(?:([|\\/ ._-]*\*[|\\/* ._-]* ))?commit [0-9a-f]{7,40}\b/,rd=/^[|\\/* ._-]*$/,sd=/^ {4}/,od=2;function id(e){if(!e.some(c=>jo.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=rd.test(u),f=d?c.slice(s):c,p=sd.test(f),h=i&&p?null:jo.exec(c);if(h){l(),n=0,s=h[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<=od?t.push(c):(r+=1,o=d?u:"");continue}l(),t.push(c)}return l(),t}Z("smart-log",id);var ad=/^[\s=]+$/,ld=/^\s*=+\s+(.*?)\s+=+\s*$/,cd=512;Z("strip-banners",e=>{let t=[];for(let n of e){if(ad.test(n))continue;let r=n.length<=cd?ld.exec(n):null;t.push(r?r[1]:n)}return t});function ud(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",ud);function dd(e){return e==="compact"?.6:e==="minimal"?.3:1}var fd=20;function pd(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 Ho=new WeakMap;function md(e){let t=Ho.get(e);if(t)return t;let n=e.strip_lines_matching.map(s=>new RegExp(s)),r={def:e,stripRegexes:n};return Ho.set(e,r),r}function nn(e,t,n={}){return er(e,t,n).text}function er(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=md(t),o=e;t.strip_ansi&&(o=le(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=>xe.test(f)||!s.stripRegexes.some(p=>p.test(f))):yo(a,s.stripRegexes)),r!=="normal"&&!t.preserve_exact&&(a=tn(a),a=Oo(a)),r==="minimal"&&!t.preserve_exact&&(a=Co(a),(t.slug==="vitest"||t.slug==="npm-test")&&(a=pd(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"&&en(o))&&(a=Rt(a,l)),t.transform){let f=No(t.transform);t.transform==="smart-read"?a=Rt(a,l,t.slug==="read-tool"):f&&(a=f(a))}let c=t.slug==="read-tool";if(!c){let f=Yn(a);f.some(Boolean)&&(a=a.filter((p,h)=>!f[h]))}t.mask_abs_paths&&(a=wo(a)),t.fold_passing&&(a=_o(a,t.fold_passing_threshold??5)),t.truncate_lines_at&&(a=bo(a,t.truncate_lines_at));let u=null;if(t.max_lines){let f=t.scale_with_level?dd(n.verbosity):1,p=Math.min(t.max_lines,Math.max(fd,Math.round(t.max_lines*f))),h=c?Yn(a):null,w=h?h.filter(k=>!k).length:a.length;if(w>p){let k=p;if(h){let E=0;for(k=0;k<a.length&&E<p;)h[k]||(E+=1),k+=1}let R=w-p;if(t.keep_failures){let E=a.slice(k),C=E.filter(N=>!xe.test(N)),P=E.reduce((N,G,re)=>N+(!xe.test(G)&&!h?.[k+re]?1:0),0);u=C.length>0?C.join(`
|
|
22
|
+
`):null,a=[...a.slice(0,k),...P>0?[ct(P)]:[],...E.filter(N=>xe.test(N))]}else if(c)u=a.slice(k).join(`
|
|
23
|
+
`),a=[...a.slice(0,k),ct(R)];else{let{kept:E,dropped:C}=ko(a,p);u=C.length>0?C.join(`
|
|
24
|
+
`):null,a=E}}}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 hd from"node:os";import{join as At}from"node:path";function I(){return process.env.TOKMIZER_HOME||At(hd.homedir(),".tokmizer")}function $t(){return At(I(),"install-id")}function tr(){return At(I(),"content-cache")}function Bo(){return At(I(),"restore.json")}function nr(e){return At(tr(),e)}var Go="user/",rn=1,sn=null,Uo="",Zo=0,kd=1e3;function on(){return an(I(),"filters")}function Ko(){return an(I(),"filters-trust.json")}function Vo(e){return typeof e=="string"&&e.startsWith(Go)}function _d(e){return bd("sha256").update(e).digest("hex")}async function wd(){try{let e=JSON.parse(await Jo(Ko(),"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 xd(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 vd(e,t){let n=typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{},{tests:r,...s}=n,o=xd(e,r);if("message"in o)return o;let i=we.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:`${Go}${i.data.slug}`,matchRegex:a},tests:o.tests}}function Ed(e){return e===void 0||e===rn?null:typeof e=="number"&&Number.isInteger(e)?`schema_version ${e} is not supported: this tkr reads schema_version = ${rn}. Update tkr, or write the file for version ${rn}`:`schema_version must be the number ${rn}`}async function Sd(e){try{return(await gd(e)).filter(t=>t.endsWith(".toml")).sort()}catch{return[]}}async function Td(e={}){let t=e.requireTrust!==!1,n=on(),r=new Map,s=new Map,o=[],i=await Sd(n);if(i.length===0)return{dir:n,filters:r,tests:s,issues:o};let a=t?await wd():null;for(let l of i){let c;try{c=await Jo(an(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!==_d(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(()=>(qn(),Wn)),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=vd(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 Ad(){let e=[];for(let t of[Ko(),on()])try{let n=zo(t);e.push(`${n.mtimeMs}:${n.size}`)}catch{e.push("-")}try{for(let t of yd(on()).filter(n=>n.endsWith(".toml")).sort()){let n=zo(an(on(),t));e.push(`${t}:${n.mtimeMs}:${n.size}`)}}catch{}return e.join("|")}function $d(){let e=Date.now();if(!sn||e-Zo>=kd){Zo=e;let t=Ad();(!sn||t!==Uo)&&(Uo=t,sn=Td())}return sn}async function Cd(e){let{filters:t}=await $d();return t.size===0?null:lt(e,t.values(),null,t)}function Wo(e){return async(t,n)=>await Cd(t)??e(t,n)}var Id=[/\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 qo(e){if(!e)return!1;for(let t of le(e).split(`
|
|
28
|
+
`))if(!/^\s*[✓✔√]\s/.test(t)&&Id.some(n=>n.test(t)))return!0;return!1}var Od=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Pd=/^[A-Za-z_][A-Za-z0-9_]*=/,rr=/^([a-z]+)-tool(?::\s|$)/;function Ge(e){let t=e.trim(),n=t.split(/\s+/),r=0;for(;r<n.length;){let a=n[r];if(Pd.test(a)){r++;continue}if(Od.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 Nd=new Set(["cd","export","source","set","unset","mkdir","true",":","pushd","popd","alias","ulimit","umask","echo","printf","sleep","touch","rm","cp","mv","chmod","ln"]);function Yo(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=Yo(e,!1);for(let n=t.length-1;n>=0;n--){let r=t[n].trim();if(r)return r}return e.trim()}function sr(e){let t=Yo(e,!0).map(n=>n.trim()).filter(Boolean);if(t.length===0)return null;for(let n of t.slice(0,-1)){let r=Ge(n).split(/\s+/)[0]??"";if(!Nd.has(r))return null}return Dd(t[t.length-1])}function Xo(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 Md=/^(?: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 or(e){let t=Md.exec(e);return t?Ge(e.slice(t[0].length)):null}function Qo(e){let t=rr.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=sr(n),s=r?Ge(r):null,i=[s?or(s):null,s,e].filter(a=>!!a);return[...new Set(i)]}var ei=`
|
|
14
29
|
[YOLO: omitted]
|
|
15
|
-
`;function
|
|
16
|
-
`).map(
|
|
17
|
-
`);let
|
|
18
|
-
`&&(
|
|
30
|
+
`;function ir(e){let t=Buffer.from(e,"utf8");if(t.length<=256)return e;let n=256-Buffer.byteLength(ei,"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")+ei+t.subarray(s).toString("utf8")}var Fd=/^ID {2,}TITLE {2,}BRANCH {2,}STATE {2,}CREATED *$/,Ld=/^… \([1-9]\d* more lines omitted\)$/,ar=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;function jd(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
|
|
35
|
+
`:"")}function Hd(e,t){if(/@(?:p)?\d|\r/.test(e))return e;let n=e.endsWith(`
|
|
21
36
|
`)?`
|
|
22
|
-
`:"",
|
|
23
|
-
`),s=
|
|
24
|
-
`)+
|
|
25
|
-
`)+
|
|
26
|
-
`)
|
|
27
|
-
|
|
28
|
-
`)
|
|
29
|
-
`)
|
|
37
|
+
`:"",r=(n?e.slice(0,-1):e).split(`
|
|
38
|
+
`),s=r.findIndex(k=>Fd.test(k));if(s>=0&&r.slice(0,s).some(k=>k!==""&&!/^Showing \d+ of \d+ (?:open|closed|all) pull requests in \S+$/.test(k)))return e;let o=s>=0?[...r[s].matchAll(/\S+/g)].map(k=>k.index):[],i=[];for(let k=s+1;k<r.length;k+=1){let R=r[k];if(Ld.test(R))continue;if(/…|\.\.\./.test(R))return e;let E;if(s>=0){if(/[^\x20-\x7e]/.test(R))return e;let C=o.map((P,N)=>R.slice(P,o[N+1]));if(C.slice(0,-1).some(P=>P[0]===" "||!P.endsWith(" "))||(E=C.map(P=>P.replace(/ +$/,"")),!/^#\d+$/.test(E[0])||!/^\S+$/.test(E[2])||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(E[3])||!/^\d+(?:s|m|h|d|w|mo|y)$/.test(E[4])))return e}else if(E=R.split(" "),E.length!==5||!/^\d+$/.test(E[0])||!E[1]||!E[2]||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(E[3])||!ar.test(E[4])||!Number.isFinite(Date.parse(E[4])))return e;if(E.some(C=>/[\u0000-\u001f\u007f]/.test(C)))return e;i.push({index:k,cells:E})}if(i.length===0)return e;s>=0&&(r[s]="ID TITLE BRANCH STATE CREATED");for(let k of i)r[k.index]=k.cells.join(" ");let a=r.join(`
|
|
39
|
+
`)+n;if(!t)return a;let l=new Map;for(let{cells:k}of i)l.set(k[1],(l.get(k[1])??0)+1);let c=new Map,u=[];for(let[k,R]of l){if(k.length<40||R<3||k.trim().split(/\s+/).length<8)continue;let E=`@${c.size+1}`,C=JSON.stringify(k).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),P=`TITLE ${E} = ${C}`;R*(Buffer.byteLength(k)-Buffer.byteLength(E))<=Buffer.byteLength(P)+1||(c.set(k,E),u.push(P))}let d=new Map;for(let{cells:k}of i){if(c.has(k[1]))continue;let R=/^((?:\S+\s+){4})\S/.exec(k[1])?.[1];R&&R.length>=24&&d.set(R,(d.get(R)??0)+1)}let f=new Map;for(let[k,R]of d){if(R<3)continue;let E=`@p${f.size+1}`,C=`TITLE prefix ${E} = ${JSON.stringify(k).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}`;R*(Buffer.byteLength(k)-Buffer.byteLength(E)-1)<=Buffer.byteLength(C)+1||(f.set(k,E),u.push(C))}let p=i[0].cells[4].slice(10),h=i.length>=3&&ar.test(i[0].cells[4])&&i.every(({cells:k})=>ar.test(k[4])&&k[4].slice(10)===p)&&i.length*p.length>`CREATED suffix = ${JSON.stringify(p)}`.length+1;if(h&&u.push(`CREATED suffix = ${JSON.stringify(p)}`),u.length===0)return a;for(let{index:k,cells:R}of i){let E=c.get(R[1]),C=/^((?:\S+\s+){4})\S/.exec(R[1])?.[1],P=C?f.get(C):void 0;r[k]=R.map((N,G)=>G===1?E??(P?`${P}:${N.slice(C.length)}`:N):G===4&&h?N.slice(0,10):N).join(" ")}let w=[...r,"",...u].join(`
|
|
40
|
+
`)+n;return Buffer.byteLength(w)<Buffer.byteLength(a)?w:a}var ti={"Changes to be committed:":"staged","Changes not staged for commit:":"unstaged","Untracked files:":"untracked"},Bd={modified:"M",deleted:"D","new file":"A",renamed:"R",copied:"C",typechange:"T"},zd=/^\t(modified|deleted|new file|renamed|copied|typechange):\s+(.+)$/,Ud=/^On branch (\S+)$/,Zd=/^Your branch is (?:up to date with '([^']+)'|(ahead|behind)(?: of)? '([^']+)' by (\d+) commits?(?:, and can be fast-forwarded)?)\.$/;function Jd(e){let t=Ud.exec(e[0]??"");if(!t)return e;let n=Zd.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 Gd(e){let t=e.endsWith(`
|
|
41
|
+
`)?`
|
|
42
|
+
`:"",n=Jd((t?e.slice(0,-1):e).split(`
|
|
43
|
+
`)),r=null,s=[];for(let o of n){if(Object.hasOwn(ti,o)){r=ti[o];continue}if(!o.startsWith(" ")){r=null,s.push(o);continue}if(r==="untracked"){s.push(`?? ${o.slice(1)}`);continue}let i=r?zd.exec(o):null;if(!i)return e;let a=Bd[i[1]];s.push(r==="staged"?`${a} ${i[2]}`:` ${a} ${i[2]}`)}return s.join(`
|
|
44
|
+
`)+t}var ni=/^ (\S.*?) +\| +(\d+(?: [+-]+)?|Bin .*)$/,Kd=/^ \d+ files? changed(?:, \d+ insertions?\(\+\))?(?:, \d+ deletions?\(-\))?$/;function Vd(e){let t=e.split(`
|
|
45
|
+
`);for(let n=0;n<t.length;n+=1){if(!Kd.test(t[n]))continue;let r=n;for(;r>0&&ni.test(t[r-1]);)r-=1;for(let s=r;s<n;s+=1)t[s]=t[s].replace(ni," $1 | $2")}return t.join(`
|
|
46
|
+
`)}var Wd=/^( *(?:[~+-] +)?(?:[\w.-]+|"[^"\n]*")) {2,}= /gm,ri=/^[A-Z][A-Z0-9_]*(?: +[A-Z][A-Z0-9_]*)+$/,si=/^… \(\d+ more lines omitted\)$/;function qd(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 Yd(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=>ri.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(si.test(c)){l.push(c);continue}let u=c.startsWith(" ")||/[^\x20-\x7e]/.test(c)?null:qd(c,a);if(!u)return[...r,...s].join(`
|
|
51
|
+
`)+t;l.push(u.join(" "))}return l.join(`
|
|
52
|
+
`)+t}function Xd(e){let t=e.endsWith(`
|
|
53
|
+
`)?`
|
|
54
|
+
`:"",n=(t?e.slice(0,-1):e).split(`
|
|
55
|
+
`),r=n.findIndex(i=>ri.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(si.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 lr(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=jd(e,t==="minimal")}else n==="gh"?r=Hd(e,t==="minimal"):n==="git-status"?r=Gd(e):n==="gcloud"?r=Yd(e):n==="oc"?r=Xd(e):n==="git-diff"?r=Vd(e):n==="tofu-plan"&&(r=e.replace(Wd,"$1 = "));return Buffer.byteLength(r)<Buffer.byteLength(e)?r:e}var Qd=/^(?:\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|$)/,ef=/^\[tkr: previous log line repeated \d+ additional times\]$/m;function oi(e){if(Buffer.byteLength(e)<2048||en(e)||ef.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(Qd.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 tf=/^(?:[A-Za-z]:)?[^\s"'<>|]+\.(?:[cm]?[jt]sx?|json)$/,nf=/--(?:listFiles|listFilesOnly|listEmittedFiles|showConfig|explainFiles|traceResolution)(?:\s|=|$)/;function ii(e){return nf.test(e)}function ai(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(!tf.test(s))return null;r+=1}return r<2?null:`tsc: 0 errors, ${r} files${t?`
|
|
61
|
+
`:""}`}var di=/^(?:(?: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|$)/,fi={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}},rf=/node_modules|^node:|^internal\/|site-packages|dist-packages|\/lib\/python\d|\/rustc\/|\.cargo\/registry|\.rustup\/|\/go\/src\/|\/go\/pkg\/mod\/|\/libexec\/src\/|<anonymous>/,sf=/^\s*at\s+(?:.*?\()?((?:file:\/\/)?[^\s()]+?):(\d+)(?::(\d+))?\)?\s*$/,of=/^\s*❯\s+(?:\S+\s+)?([^\s]+?):(\d+)(?::(\d+))?\s*$/,af=/^\s*(>)?\s*(\d+)\s*\|/,lf=/^\s*\|\s*[\^~]+\s*$/,cf=/^(?:- Expected|\+ Received|- Snapshot|\+ expected - actual|\+ actual - expected|- expected \+ actual)(?:\s+[-+]\s*\d+)?$/;function ut(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 ln(e){return rf.test(e)}function cn(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 cr(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||lf.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 h=sf.exec(f)??of.exec(f);if(h){s=-1;let k=h[1].replace(/^file:\/\//,"");ln(k)||(r=cn(n,`${k}:${h[2]}${h[3]?`:${h[3]}`:""}`,r));continue}let w=af.exec(f);if(w){s=-1,n.push({kind:"code",text:p,num:Number(w[2]),pointed:w[1]===">"});continue}if(cf.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 J(e,t=!1){return{text:e.trim().replace(/\s{2,}/g," "),minor:t}}function uf(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=ut(e,/^\s*Tests\s+(\d+) failed/),n=[];for(let l of e)/^\s*Test Files\s{2,}\S/.test(l)?n.push(J(l,!0)):/^\s*(?:Tests|Errors|Type Errors)\s{2,}\S/.test(l)&&n.push(J(l));let r=[],s=0,o=[],i=[],a=()=>{if(o.length){let{body:l,loc:c}=cr(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(k=>k.trim())&&a();let f=u[1],p=/^(\S+) \[ \S+ \]$/.exec(f),h=f.split(" > "),w=p?{file:p[1],name:"(suite)",loc:null,body:[]}:h.length>1?{file:h[0],name:h.slice(1).join(" > "),loc:null,body:[]}:{file:null,name:f,loc:null,body:[]};p||(s+=1),r.push(w),o.push(w);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 df(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=ut(e,/^Tests:\s+(\d+) failed/),n=[];for(let u of e)/^Test Suites:\s/.test(u)?n.push(J(u,!0)):(/^Tests:\s/.test(u)||/^Snapshots:\s/.test(u)&&/failed|obsolete/.test(u))&&n.push(J(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}=cr(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 pi(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}=cr(i.get(l.name),s);l.body=c,l.loc=u}return o}function ff(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=>J(o.replace(/ \(\S+\)\s*$/,""))),s=pi(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 pf(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=ut(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=>J(a.replace(/ \([\d.]+m?s\)\s*$/,""))),i=pi(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 mf(e){if(!e.some(i=>/^test result: /.test(i))||!e.some(i=>/^---- .+ stdout ----$/.test(i)))return null;let t=ut(e,/^test result: FAILED\. \d+ passed; (\d+) failed/),n=[];for(let i of e)/^test result: FAILED/.test(i)?n.push(J(i.replace(/; finished in [\d.]+m?s\s*$/,""))):/^test result: ok/.test(i)?n.push(J(i.replace(/; finished in [\d.]+m?s\s*$/,""),!0)):/^error(?:\[\w+\])?: /.test(i)&&n.push(J(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 h=/^at\s+(\S+?):(\d+):(\d+)$/.exec(f);h&&!ln(h[1])&&(i.loc=cn(i.body,`${h[1]}:${h[2]}:${h[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 hf(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(J(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(J(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(J(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){ln(u[1])||(a.loc=cn(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 li=/^(FAILED|ERROR) (\S+?\.py(?:::\S+)?)(?: - (.*))?$/;function ci(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(!ln(d[1])){let f=d[3]?.startsWith("in ")?` ${d[3]}`:"";r=cn(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 ui(e,t){return t.push(J(e.replace(/ in [\d.]+s(?: \([\d:]+\))?$/,""))),(ut([e],/(\d+) failed/)??0)+(ut([e],/(\d+) errors?\b/)??0)}function gf(e){if(!e.some(d=>/^={3,} (?:FAILURES|ERRORS|short test summary info) ={3,}$/.test(d)||li.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=ui(s,r));continue}if(/^(?:\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)(?:, |\s|$))+(?:in [\d.]+s(?: \([\d:]+\))?)?$/.test(d.trim())){a=ui(d.trim(),r);continue}if(/^!{3,} .+ !{3,}$/.test(d)){r.push(J(d.replace(/^!+ | !+$/g,"")));continue}let p=/^_{3,} (.+?) _{3,}$/.exec(d);if(p&&(s==="FAILURES"||s==="ERRORS")){o=[],t.set(p[1],o);continue}let h=li.exec(d);if(h&&s!=="FAILURES"&&s!=="ERRORS"){o=null;let w={kind:h[1],id:h[2],msg:h[3]??null,inline:[]};n.push(w),i=w;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("::"),h=p.join("."),w=[h,`ERROR collecting ${d.id}`,`ERROR at setup of ${h}`,`ERROR at teardown of ${h}`].find(C=>C&&t.has(C)&&!l.has(C));w&&l.add(w);let{body:k,loc:R}=ci(w?t.get(w):d.inline,d.msg),E=p.length?p.join("::"):"(collection)";c.push({file:f,name:d.kind==="ERROR"?`${E} [error]`:E,loc:R,body:k})}for(let[d,f]of t){if(l.has(d))continue;let{body:p,loc:h}=ci(f,null);c.push({file:h?h.replace(/:\d+$/,""):null,name:d,loc:h,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 yf=[mf,hf,gf,df,uf,ff,pf];function bf(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 kf(e,t,n){let r=fi[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&&bf(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(` ${ct(d)}`),u}function _f(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 wf(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 xf(e,t){let n=fi[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:kf(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 ${_f(o.slice(c,d+1).map(p=>p.f.name))}`:wf(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 mi(e,t="normal"){let n=le(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 yf){let s=r(n);if(!(!s||s.failures.length===0))return s.counted===0||s.reported!==null&&s.counted<s.reported?null:xf(s,t)}return null}import{createCipheriv as g0,createDecipheriv as vf,hkdfSync as Ef,randomBytes as y0}from"node:crypto";var Sf=Buffer.from("tokmizer-bundle-enc-v1"),Tf=Buffer.from("rules-bundle");function Rf(e){return Buffer.from(Ef("sha256",Buffer.from(e,"utf8"),Sf,Tf,32))}function un(e,t){let n=Rf(t),r=Buffer.from(e,"base64url"),s=r.subarray(0,12),o=r.subarray(12,28),i=r.subarray(28),a=vf("aes-256-gcm",n,s);return a.setAuthTag(o),Buffer.concat([a.update(i),a.final()]).toString("utf8")}import{createPublicKey as Gf,verify as Kf}from"node:crypto";import{join as Af}from"node:path";import{mkdir as w0,readFile as $f,writeFile as x0,unlink as v0,rename as E0}from"node:fs/promises";var Cf="state.json";function If(){try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;return e&&e.length>0?e:"Etc/UTC"}catch{return"Etc/UTC"}}function Of(e){return e?.dir??I()}async function Ct(e){let t=Of(e);try{let n=await $f(Af(t,Cf),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=If()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}import{createRequire as Pf}from"node:module";var Nf=Pf(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=Nf(t).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var It=Df();function hi(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 gi=`-----BEGIN PUBLIC KEY-----
|
|
30
67
|
MCowBQYDK2VwAyEAj/kMlXlhTIGHRKxOKMuGFa1S1ybxxwgdYcAE0YM9fgU=
|
|
31
68
|
-----END PUBLIC KEY-----
|
|
32
|
-
`;var
|
|
33
|
-
`)
|
|
34
|
-
`,{mode:384}),Hc(r,384)}catch{return}}var Jc=/^[a-z0-9][a-z0-9._-]*$/i,Xc=/^[a-z][a-z-]+$/,Qc=/^[A-Za-z_][A-Za-z0-9_]*=/,eu=new Set(["gh","glab","gup","hub","gist"]),tu=/^(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,ru=24,nu=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 _s(t){let e=t.toLowerCase();return e.startsWith("git")||eu.has(e)}function nr(t){let e=t.trim().split(/\s+/).filter(a=>a.length>0),r=0;for(;r<e.length&&Qc.test(e[r]??"");)r+=1;let n=e[r];if(!n||!Jc.test(n)||n.length>ru||_s(n)||tu.test(n)||st(n)!==n)return"";let s=e[r+1];return s&&_s(s)?"":(s&&nu.has(n.toLowerCase())&&Xc.test(s)?`${n} ${s}`:n).slice(0,64)}async function bs(t){if(!t.telemetryOptIn)return;let e=nr(t.cmd),r=e&&st(e)===e?e:"other",n=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";St("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 vs(t){if(t.plan!=="pro"||!(await nt()).telemetryOptIn)return;let e=nr(t.cmd);!e||st(e)!==e||St("learn",{cmd:e,filterId:t.filterId==null?null:G(t.filterId),rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}import{appendFileSync as iu,chmodSync as ou,mkdirSync as au,readFileSync as Ss,renameSync as Ts,rmSync as Rs,statSync as As,writeFileSync as sr}from"node:fs";import{dirname as cu,join as Cs}from"node:path";var su={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"};function xs(t){return t?su[t]??"anthropic":"anthropic"}var uu="stats.jsonl",lu="stats-ledger.json",ws=2*1024*1024,du=3e4;function Is(){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 fu(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 pu(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=xs(e.h),n=t.prov[r]??{r:0,f:0};n.r+=e.r,n.f+=e.f,t.prov[r]=n}}function mu(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function $s(t){return Cs(cu(t),lu)}function hu(t){let e=$s(t),r;try{r=Ss(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]={...Is(),...o});return s}catch{try{Ts(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function Es(t,e){let r=`${t}.tmp-${process.pid}`;sr(r,e,{mode:384}),Ts(r,t)}function gu(t){try{return sr(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-As(t).mtimeMs<du?!1:(Rs(t,{force:!0}),sr(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function yu(t,e=ws,r=ws/2){try{if(As(t).size<=e)return}catch{return}let n=`${t}.lock`;if(gu(n))try{let s=Ss(t,"utf8").split(`
|
|
35
|
-
`)
|
|
69
|
+
`;import{existsSync as Mf,mkdirSync as I0,rmSync as O0,writeFileSync as P0}from"node:fs";import{join as Ff}from"node:path";var Lf=new Set(["0","off","false","no"]);var M0=["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 jf(){return Ff(I(),"network-off")}function Hf(){let e=process.env.TOKMIZER_NETWORK;return e!==void 0&&Lf.has(e.trim().toLowerCase())}function ur(){return Hf()?!1:!Mf(jf())}var z0=300*1e3;function yi(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??gi).replace(/\\n/g,`
|
|
71
|
+
`)}import{chmodSync as J0,readFileSync as Bf,writeFileSync as G0,mkdirSync as K0,renameSync as V0}from"node:fs";import{join as zf}from"node:path";var Uf=g.object({payload:g.string().min(1),signature:g.string().min(1),enc:g.literal("v1"),fetchedAt:g.number().int().nonnegative()});function Zf(){return zf(I(),"bundle-cache.json")}function bi(){try{let e=Bf(Zf(),"utf8"),t=Uf.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}var dr=g.object({bundleVersion:g.number().int().nonnegative(),signedAt:g.number().int(),filters:g.array(we)}),lk=g.object({payload:g.string().min(1),signature:g.string().min(1),enc:g.literal("v1")}),Vf=10080*60*1e3;function Wf(){let e=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(e)&&e>0?e:Vf}function qf(e,t){let n=yi();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=Gf({key:n,format:"pem"});if(!Kf(null,Buffer.from(e.payload,"utf8"),r,Buffer.from(e.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(un(e.payload,t))}function Yf(e,t){let n=qf(e,t),r=dr.parse(n);if(Date.now()-r.signedAt>Wf())throw new Error("tkr-daemon: rules bundle is stale");return fr(r,{signedAt:r.signedAt,fetchedAt:Date.now()})}function fr(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)=>lt(r,n.values(),o?new Set(o):null,n)}}async function ki(){try{let e=bi();if(!e)return null;let t=await Ct();return t?.signingSecret?Yf(e,t.signingSecret):null}catch{return null}}var Xf="tokmizer-default-rules-v1",Qf=/^[0-9a-f]{16}$/,Ot=null;function _i(){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(Ot&&Ot.sealed===e)return Ot;let t=null;try{t=dr.parse(JSON.parse(un(e,Xf)))}catch{t=null}return Ot={sealed:e,bundle:t},Ot}function dn(){let e=_i();if(!e?.bundle)return null;if(e.runtime===void 0){let t=Date.now();try{e.runtime=fr(e.bundle,{signedAt:t,fetchedAt:t})}catch{e.runtime=null}}return e.runtime}function ep(){let e=_i();return e?.bundle?(e.keys??=new Set(e.bundle.filters.map(t=>Q(t.slug))),e.keys):null}function fn(e,t=!1){if(t||!e||e.length===0){let n=ep();return n?new Set(n):null}return new Set(e.map(n=>Qf.test(n)?n:Q(n)))}var wi=null;function pr(e){wi=e}async function tp(e,t){let n=await mo();if(n.size>0)return lt(e,n.values(),t,n);let r=dn();return r?r.selectFor(e,"free",t?[...t]:void 0):null}var np=/^(?:grep|rg|find|eslint|ruff|flake8|mypy|prettier|biome|black|stylelint)(?:\s|$)|^git\s+(?:diff|grep)\b/,rp=2048,sp=8192,op=32*1024;function ip(e,t,n){let r=nn(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 le(e);if(n!=="compact"&&n!=="minimal")return r;let s=r.endsWith(`
|
|
72
|
+
`)?`
|
|
73
|
+
`:"";return tn((s?r.slice(0,-1):r).split(`
|
|
74
|
+
`)).join(`
|
|
75
|
+
`)+s}async function mr(e,t,n,r={}){let s=Buffer.byteLength(t,"utf8"),{exitCode:o,yolo:i=!1,resolver:a,...l}=r,c=Ge(Xo(e.startsWith("bash-tool: ")?e.slice(11):e)),u=o!=null&&o!==0&&!(o===1&&np.test(or(c)??c)),d=Wo(a??wi??tp),f=null;for(let O of Qo(e))if(f=await d(O,n),f)break;!f&&s>=rp&&!rr.test(e)&&(f=await d(`bash-tool: ${e}`,n));let p=sr(e.startsWith("bash-tool: ")?e.slice(11):e),h=f?.slug==="git-log"&&p!=null&&/^git\s+log(?:\s|$)/.test(Ge(p)),w=o==null&&(h?/^(?:fatal|error):/im.test(le(t)):qo(t)),k=f?.transform==="smart-read"&&s<=2048&&(t.endsWith(`
|
|
76
|
+
`)?t.slice(0,-1):t).split(`
|
|
77
|
+
`).length<=60,R=s<=16384&&p!=null&&/^(?:head|tail)(?:\s|$)|^sed\s+(?:(?:-[Eru]+|--(?:regexp-extended|unbuffered|sandbox))\s+)*(?:-[Enruse]*n[Enruse]*(?:\s|$)|--(?:quiet|silent)(?:\s|$))/.test(Ge(p)),E=f?.transform==="smart-read"&&s<=16384&&(l.verbosity??"normal")==="normal"&&l.smartCode!==!0,C=f?.slug==="read-tool"&&s<op;if(!i&&(E||C||R||k&&l.smartCode!==!0))return{output:t,filterId:f?.slug??null,rawBytes:s,filteredBytes:s,debugBypass:u||w,droppedTail:null};if(!i&&f&&!f.preserve_exact&&(u||w)&&di.test(c)){let O=mi(t,l.verbosity??"normal"),K=O===null?s:Buffer.byteLength(O,"utf8");if(O!==null&&K<s)return{output:O,filterId:f.slug,rawBytes:s,filteredBytes:K,debugBypass:!0,droppedTail:t,failureSummary:!0}}if(!f||(u||w)&&f.preserve_exact&&!i)return{output:t,filterId:null,rawBytes:s,filteredBytes:s,debugBypass:u||w,...i?{droppedTail:null}:{}};let P=O=>{if(!i)return O;let K=O.filteredBytes>s||s>0&&O.output.length===0?t:O.output,B=!O.debugBypass&&!f?.preserve_exact?lr(K,"minimal",O.filterId??""):K,mt=ir(B)===B?B:ir(K);return{...O,output:mt,filteredBytes:Buffer.byteLength(mt,"utf8"),droppedTail:null}};if(f.slug==="tsc"&&!u&&!w&&!ii(e)){let O=ai(t);if(O!==null)return P({output:O,filterId:f.slug,rawBytes:s,filteredBytes:Buffer.byteLength(O,"utf8"),debugBypass:!1,droppedTail:null})}if(u||w){let O=i?nn(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?ip(t,f,l.verbosity):f.strip_ansi&&!f.preserve_exact?le(t):t;!i&&l.verbosity==="minimal"&&f.transform!=="smart-read"&&(O=oi(O)),!i&&f.slug==="pytest"&&(l.verbosity==="compact"||l.verbosity==="minimal")&&/^={3,} test session starts ={3,}\r?$/m.test(O)&&/^={3,} FAILURES ={3,}\r?$/m.test(O)&&(O=O.replace(/^([=_])\1{2,} (.+?) \1{3,}(\r?)$/gm,"$2$3"));let K=!i&&!f.preserve_exact&&s>=sp?Io(O.split(`
|
|
78
|
+
`)).join(`
|
|
79
|
+
`):O,B=K.length<O.length;return P({output:K,filterId:f.slug,rawBytes:s,filteredBytes:Buffer.byteLength(K,"utf8"),debugBypass:!0,...B?{droppedTail:t}:{}})}let{text:N,droppedTail:G}=er(t,f,i?{...l,verbosity:"minimal",...f.transform==="smart-read"?{smartCode:!0}:{}}:l),re=!i&&!f.preserve_exact?lr(N,l.verbosity,f.slug):N,se=Buffer.byteLength(re,"utf8");return t.trim().length>0&&se>=s?P({output:t,filterId:f.slug,rawBytes:s,filteredBytes:s,debugBypass:!1,droppedTail:null}):P({output:re,filterId:f.slug,rawBytes:s,filteredBytes:se,debugBypass:!1,droppedTail:G})}function ap(){let e=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(e)&&e>0?e:6048e5}function xi(e,t=Date.now()){let n=e.lastHeartbeatOkAt;if(typeof n=="number"&&t-n>ap())return!0;if(e.subEndsAt){let r=Date.parse(e.subEndsAt);if(Number.isFinite(r)&&t>r)return!0}return!1}function vi(e,t=Date.now()){return e.plan}import{readFile as lp,writeFile as Ok,mkdir as Pk,chmod as Nk,rm as Dk,rename as Mk,readdir as Fk}from"node:fs/promises";import{join as cp}from"node:path";var up="settings-cache.json",Ei=Tt.parse({}),Bk=Tt.partial().extend({filters:Tt.shape.filters.removeDefault().partial().optional()});async function dt(){let e=null;try{let t=JSON.parse(await lp(cp(I(),up),"utf8"));typeof t=="object"&&t!==null&&!Array.isArray(t)&&(e=t)}catch{}return e?Tt.parse({...Ei,...e}):Ei}var dp=[[/(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 Pt(e){let t=e;for(let[n,r]of dp)t=t.replace(n,r);return t}import{join as Ri}from"node:path";import{appendFileSync as mp,chmodSync as hp,existsSync as gp,mkdirSync as yp,readFileSync as s_,renameSync as o_,rmdirSync as i_,statSync as bp,unlinkSync as a_,utimesSync as l_,writeFileSync as c_}from"node:fs";import{createHash as Jk,randomUUID as fp}from"node:crypto";import{readFile as Si,writeFile as Ti,mkdir as pp}from"node:fs/promises";async function hr(){try{let n=(await Si($t(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await pp(I(),{recursive:!0});let e=fp();try{return await Ti($t(),e,{mode:384,flag:"wx"}),e}catch{try{let t=(await Si($t(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(t))return t}catch{}return await Ti($t(),e,{mode:384}),e}}var kp=512*1024;function Ai(){return Ri(I(),"spool")}function _p(e){return Ri(Ai(),`${e}.jsonl`)}function pn(e,t){if(ur())try{yp(Ai(),{recursive:!0,mode:448});let n=_p(e);if(gp(n)&&bp(n).size>=kp)return;mp(n,JSON.stringify(t)+`
|
|
80
|
+
`,{mode:384}),hp(n,384)}catch{return}}var xp=/^[a-z0-9][a-z0-9._-]*$/i,vp=/^[a-z][a-z-]+$/,Ep=/^[A-Za-z_][A-Za-z0-9_]*=/,Sp=new Set(["gh","glab","gup","hub","gist"]),Tp=/^(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,Ci=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"]),Ap=new Set([...Ci,"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"]),$p=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"])]]),Cp=new Set(["-C","-c"]);function Ip(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 Ap.has(n.toLowerCase())?n:""}function Op(e,t,n){let r=0;for(;e==="git"&&r<n.length&&n[r].startsWith("-");)r+=Cp.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return t.has(s)?`${e} ${s}`:e}function $i(e){let t=e.toLowerCase();return t.startsWith("git")||Sp.has(t)}function gr(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=Ip(t[n]??"");if(!r||!xp.test(r)||r.length>Rp)return"";let s=$p.get(r.toLowerCase());if(s)return Op(r.toLowerCase(),s,t.slice(n+1));if($i(r)||Tp.test(r)||Pt(r)!==r)return"";let o=t[n+1];return o&&$i(o)?"":(o&&Ci.has(r.toLowerCase())&&vp.test(o)?`${r} ${o}`:r).slice(0,64)}async function Ii(e){if(!e.telemetryOptIn)return;let t=gr(e.cmd),n=t&&Pt(t)===t?t:"other",r=e.sessionId?e.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";pn("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 Oi(e){if(e.plan!=="pro"||Vo(e.filterId)||!(await dt()).telemetryOptIn)return;let t=gr(e.cmd);!t||Pt(t)!==t||pn("learn",{cmd:t,filterId:e.filterId==null?null:Q(e.filterId),rawBytes:e.rawBytes,filteredBytes:e.filteredBytes})}import{appendFileSync as Np,chmodSync as Dp,mkdirSync as Mp,readFileSync as Li,realpathSync as Fp,renameSync as ji,rmSync as Hi,statSync as Bi,writeFileSync as yr}from"node:fs";import{basename as Ni,dirname as zi,join as mn,resolve as Lp,sep as I_}from"node:path";var Pp={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"};function Pi(e){return e?Pp[e]??"anthropic":"anthropic"}var jp="stats.jsonl",Hp="stats-ledger.json",Di=2*1024*1024,Bp=3e4,zp=3e4,Up=new Set(["n","g","e"]),Zp=256;function Ui(){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 Jp(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"&&Up.has(n.o)?{o:n.o}:{}}}catch{return null}}function Gp(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 Kp(e){return e.s==="b"?`b:${(e.c??"").split(" ")[0]||"other"}`:e.s?.startsWith("u:")?e.s:e.o==="n"?"n":"?"}function Vp(e,t){let n=Kp(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 Wp(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>zp){e.ox+=1;return}if(Gp(e,t),t.k==="restore"?(e.rn+=1,e.rb+=t.f):Vp(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=Pi(t.h),r=e.prov[n]??{r:0,f:0};r.r+=t.r,r.f+=t.f,e.prov[n]=r}}function qp(e){let t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Zi(e){return mn(zi(e),Hp)}function Yp(e){let t=Zi(e),n;try{n=Li(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]={...Ui(),...i});return s}catch{try{ji(t,`${t}.corrupt-${Date.now()}`)}catch{}return{}}}function Mi(e,t){let n=`${e}.tmp-${process.pid}`;yr(n,t,{mode:384}),ji(n,e)}function Xp(e){try{return yr(e,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Bi(e).mtimeMs<Bp?!1:(Hi(e,{force:!0}),yr(e,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Qp(e,t=Di,n=Di/2){try{if(Bi(e).size<=t)return}catch{return}let r=`${e}.lock`;if(Xp(r))try{let s=Li(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=Yp(e);for(let c of s.slice(0,o)){let u=Jp(c);if(!u)continue;let d=qp(u.t),f=a[d]??Ui();Wp(f,u),a[d]=f}let l=s.slice(o);Mi(e,l.length?`${l.join(`
|
|
36
82
|
`)}
|
|
37
|
-
`:""),
|
|
38
|
-
`.includes(
|
|
39
|
-
`;try{
|
|
40
|
-
`)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
[tkr restore ${s}]`:e}var fi=16*1024*1024,Fl=6e5,Bl=1500,jl=new Set(["npm","pnpm","yarn","bun"]),zl=new Set(["dev","start","serve","preview","watch"]);function mi(t,e){let r=process.env[t];if(r==null||r==="")return e;let n=Number(r);return Number.isFinite(n)?n:e}function Zl(){return mi("TOKMIZER_SHIM_STREAM_AFTER_MS",process.stdout.isTTY?Bl:0)}function Ul(t,e){let r=t.split(/[\\/]/).pop()??t;return jl.has(r)?e.some(n=>!n.startsWith("-")&&zl.has(n)):!1}function hi(t){return t[0]==="--as"&&typeof t[1]=="string"?{cmdName:t[1],args:t.slice(2)}:t.length>0?{cmdName:t[0],args:t.slice(1)}:{cmdName:"",args:[]}}async function gi(t){let{cmdName:e,args:r}=t;if(!e)return process.stderr.write(`tkr-shim: missing command name
|
|
45
|
-
`)
|
|
46
|
-
|
|
83
|
+
`:""),Mi(Zi(e),JSON.stringify({v:1,days:a}))}catch{return}finally{Hi(r,{force:!0})}}function em(e){let t=Lp(e),n=t,r="";for(;;){try{return mn(Fp(n),r)}catch{}let s=zi(n);if(s===n)return t;r=r?mn(Ni(n),r):Ni(n),n=s}}var tm=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),nm=new Set(["-u","-g","-n","-s","-k"]),rm=/^[a-z0-9][a-z0-9._-]*$/i,sm=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"]),Ji=/^[A-Za-z_][A-Za-z0-9_]*=/;function Fi(e){return e.length===0||e[0]==="cd"||e.every(t=>Ji.test(t))}function om(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(),Fi(t)){t=[];continue}return t}n+=i,r=!0}return o(),Fi(t)?[]:t}function hn(e){let t=om(e).map(a=>a.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<t.length;){let a=t[n];if(Ji.test(a)){n+=1;continue}if(tm.has(a)){for(n+=1;n<t.length;){let l=t[n];if(l.startsWith("-")){n+=nm.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("-")&&rm.test(o)&&sm.has(s.toLowerCase())?`${s} ${o}`:s).slice(0,24)}function im(){return mn(I(),jp)}function Gi(e,t,n=im(),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?em(a):"",p=f&&f.length<=Zp?`,"p":${JSON.stringify(f)}`:"",h=l.s?`,"s":${JSON.stringify(l.s.slice(0,66))}`:"",w=l.o?`,"o":${JSON.stringify(l.o)}`:"",k=`{"t":${Math.floor(Date.now()/1e3)},"r":${e},"f":${t}${r?',"m":1':""}${c}${u}${d}${p}${h}${w}}
|
|
85
|
+
`;try{Mp(I(),{recursive:!0,mode:448}),Np(n,k,{mode:384}),Dp(n,384),Qp(n)}catch{return}}function Ki(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 Vi(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{mkdir as Uw,writeFile as kh,readFile as Ca,unlink as _h,chmod as wh,rename as xh}from"node:fs/promises";import{existsSync as vh}from"node:fs";import{delimiter as Aa,join as Pr,dirname as Gw}from"node:path";import{fileURLToPath as Eh}from"node:url";import Ia from"node:os";import{basename as am}from"node:path";var lm={exec:"tkr-exec",processor:"tkr-processor",daemon:"tkr-daemon","shim-run":"tkr-shim"},cm={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 Nt(e){let t=am(e).replace(/\.(m?js|ts)$/,"");if(t==="tkr")return[];for(let[n,r]of Object.entries(lm))if(r===t)return[n];for(let[n,r]of Object.entries(cm))if(r===t)return["hook",n];return null}import{realpathSync as Wi}from"node:fs";import{delimiter as um,join as dm}from"node:path";function ft(){return!1}function br(e,t=process.execPath){let n=ft()?Nt(e):null;return n?[process.execPath,...n]:[t,e]}function fm(e,t){try{return Wi(e)===Wi(t)}catch{return!1}}function kr(e=process.env.PATH??"",t=process.platform,n=process.execPath){let r=t==="win32"?"tkr.exe":"tkr";for(let s of e.split(t==="win32"?";":um)){if(!s||s.includes("node_modules"))continue;let o=dm(s,r);if(fm(o,n))return o}return n}import{existsSync as q_,readFileSync as km}from"node:fs";import{join as _m}from"node:path";import wm from"node:os";import{readFile as pm,writeFile as mm,rename as hm,mkdir as gm,copyFile as ym}from"node:fs/promises";import{existsSync as _r,accessSync as U_,constants as Z_}from"node:fs";import{join as bm}from"node:path";function D(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}async function ve(e){if(!_r(e))return{};try{let t=JSON.parse(await pm(e,"utf8"));return D(t)?t:null}catch{return null}}async function Ee(e,t){try{await gm(bm(e,".."),{recursive:!0});let n=`${e}.tkr-bak`;_r(e)&&!_r(n)&&await ym(e,n);let r=`${e}.tmp-${process.pid}`;return await mm(r,`${JSON.stringify(t,null,2)}
|
|
86
|
+
`),await hm(r,e),!0}catch{return!1}}var xm="tkr-cursor-hook",qi="preToolUse";function vm(){return _m(wm.homedir(),".cursor","hooks.json")}function Em(e){return typeof e.command=="string"&&e.command.includes(xm)}function Sm(e){let t=D(e.hooks)?e.hooks:{},n=Array.isArray(t[qi])?t[qi]:[];return{hooks:t,entries:n}}function Yi(){try{let e=JSON.parse(km(vm(),"utf8"));return Sm(e).entries.some(Em)}catch{return!1}}import{existsSync as nw,readFileSync as Tm}from"node:fs";import{join as Rm}from"node:path";import Am from"node:os";var $m="tkr-gemini-hook",Xi="BeforeTool";function Cm(){return Rm(process.env.GEMINI_CLI_HOME||Am.homedir(),".gemini","settings.json")}function Im(e){return typeof e.command=="string"&&e.command.includes($m)}function Om(e){return(Array.isArray(e.hooks)?e.hooks:[]).find(Im)}function Pm(e){let t=D(e.hooks)?e.hooks:{},n=Array.isArray(t[Xi])?t[Xi]:[];return{hooks:t,groups:n}}function Qi(){try{let e=JSON.parse(Tm(Cm(),"utf8"));return Pm(e).groups.some(t=>Om(t)!=null)}catch{return!1}}import{dirname as vw,join as ee}from"node:path";import Zm from"node:os";import{existsSync as lw,accessSync as cw,constants as uw,readFileSync as Nm}from"node:fs";var Dm='"rewrite", "--host"';function Mm(e){return e.includes(Dm)}function ea(e){try{return Mm(Nm(e,"utf8"))}catch{return!1}}import{readFile as na,writeFile as Fm,rename as Lm,mkdir as jm,copyFile as Hm}from"node:fs/promises";import{existsSync as Dt,readFileSync as ra}from"node:fs";import{dirname as Bm,join as xr}from"node:path";import sa from"node:os";var oa="tokmizer-rewrite",Mt="tokmizer-rewrite";function Lt(){return xr(process.env.VIBE_HOME||xr(sa.homedir(),".vibe"),"hooks.toml")}function ta(e){return JSON.stringify(e)}function zm(e){return["[[hooks]]",`name = ${ta(oa)}`,'type = "pre_tool"','match = "bash"',`command = ${ta(e)}`,"timeout = 10.0","strict = false",'description = "Route shell commands through tokmizer."',""].join(`
|
|
87
|
+
`)}function vr(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 Ft(e){return/^\s*\[\[hooks\]\]/.test(e)&&new RegExp(`^\\s*name\\s*=\\s*"${oa}"\\s*$`,"m").test(e)}async function ia(e,t){try{await jm(Bm(e),{recursive:!0}),Dt(e)&&!Dt(`${e}.tkr-bak`)&&await Hm(e,`${e}.tkr-bak`);let n=`${e}.tmp-${process.pid}`;return await Fm(n,t),await Lm(n,e),!0}catch{return!1}}function aa(){try{return vr(ra(Lt(),"utf8")).some(Ft)}catch{return!1}}async function la(e){let t=Lt(),n="";try{Dt(t)&&(n=await na(t,"utf8"))}catch{return"error"}let r=zm(e),s=vr(n),o=s.filter(Ft);if(o.length===1&&o[0].trimEnd()===r.trimEnd())return"present";let i=s.filter(l=>!Ft(l)).join("").trimEnd(),a=i?`${i}
|
|
88
|
+
|
|
89
|
+
${r}`:r;return await ia(t,a)?o.length?"updated":"added":"error"}async function ca(){let e=Lt();if(!Dt(e))return"absent";let t;try{t=await na(e,"utf8")}catch{return"error"}let n=vr(t);if(!n.some(Ft))return"absent";let r=n.filter(o=>!Ft(o)).join("").trimEnd(),s=r?`${r}
|
|
90
|
+
`:"";return await ia(e,s)?"removed":"error"}function jt(){return xr(sa.homedir(),".gemini","config","hooks.json")}function Um(e){return{enabled:!0,PreToolUse:[{matcher:"run_command",hooks:[{type:"command",command:e,timeout:10}]}]}}function ua(){try{let e=JSON.parse(ra(jt(),"utf8"));return D(e)&&D(e[Mt])}catch{return!1}}async function da(e){let t=jt(),n=await ve(t);if(!n)return"error";let r=Um(e),s=n[Mt];return s!==void 0&&JSON.stringify(s)===JSON.stringify(r)?"present":(n[Mt]=r,await Ee(t,n)?s===void 0?"added":"updated":"error")}async function fa(){let e=jt();if(!Dt(e))return"absent";let t=await ve(e);return t?Mt in t?(delete t[Mt],await Ee(e,t)?"removed":"error"):"absent":"error"}var Ht=()=>Zm.homedir(),Er=()=>process.env.XDG_CONFIG_HOME||ee(Ht(),".config"),pa=[{host:"opencode",label:"OpenCode",command:"setup-opencode",kind:"shim",files:()=>[{template:"opencode.js",target:ee(Er(),"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:ee(Er(),"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:ee(Er(),"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:Lt,installed:aa,ensure:la,remove:ca,next:"Restart Vibe so it reads hooks.toml."},{host:"antigravity",label:"Antigravity",command:"setup-antigravity",kind:"hook",file:jt,installed:ua,ensure:da,remove:fa,next:"Restart Antigravity, then check it with /hooks."},{host:"openclaw",label:"OpenClaw",command:"setup-openclaw",kind:"shim",files:()=>{let e=ee(Ht(),".openclaw","extensions","tokmizer");return["index.js","openclaw.plugin.json","package.json"].map(t=>({template:`openclaw/${t}`,target:ee(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:ee(process.env.PI_CODING_AGENT_DIR||ee(Ht(),".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:ee(Ht(),".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=ee(process.env.HERMES_HOME||ee(Ht(),".hermes"),"plugins","tokmizer");return["__init__.py","plugin.yaml"].map(t=>({template:`hermes/${t}`,target:ee(e,t)}))},next:"Run: hermes plugins enable tokmizer, then restart Hermes (needs Hermes v2026.8.16 or newer)."}];function ma(e){return e.kind==="hook"?e.installed():ea(e.files()[0].target)}import{existsSync as $r,readFileSync as qm}from"node:fs";import{join as j}from"node:path";import Ym from"node:os";import{existsSync as Jm,readFileSync as Gm}from"node:fs";function Sr(e,t){return D(e)&&typeof e.command=="string"&&e.command.includes(t)}function ha(e){return e.path??(e.nested?["hooks"]:[])}function ga(e,t){let n=e;for(let r of ha(t))D(n[r])||(n[r]={}),n=n[r];return n}function ya(e,t){let n=e;for(let s of ha(t))n=D(n)?n[s]:void 0;if(!D(n))return[];let r=n[t.event];return Array.isArray(r)?r:[]}function Km(e){return D(e)&&Array.isArray(e.hooks)?e.hooks:[]}function ba(e,t){return(t.matcher===void 0?e:e.flatMap(Km)).filter(r=>Sr(r,t.mark))}function ka(e,t){return ba(ya(e,t),t).length>0}function Tr(e,t){try{let n=JSON.parse(Gm(e,"utf8"));return D(n)&&ka(n,t)}catch{return!1}}function Vm(e,t,n){let r=ga(e,t),s=Array.isArray(r[t.event])?r[t.event]:[];r[t.event]=s;let o=ba(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 Wm(e,t){if(!ka(e,t))return!1;let n=ga(e,t),r=ya(e,t),s=t.matcher===void 0?r.filter(o=>!Sr(o,t.mark)):r.map(o=>D(o)&&Array.isArray(o.hooks)?{...o,hooks:o.hooks.filter(i=>!Sr(i,t.mark))}:o).filter(o=>!D(o)||!Array.isArray(o.hooks)||o.hooks.length>0);return s.length?n[t.event]=s:delete n[t.event],!0}async function Rr(e,t,n){let r=await ve(e);if(!r||t.prepare&&!t.prepare(r))return"error";let s=Vm(r,t,n);return s==="present"||await Ee(e,r)?s:"error"}async function gn(e,t){if(!Jm(e))return"absent";let n=await ve(e);return n?Wm(n,t)?await Ee(e,n)?"removed":"error":"absent":"error"}function ce(){return Ym.homedir()}function va(e){return e.version===void 0&&(e.version=1),e.version===1}function Xm(e,t,n){return Promise.all(e.map(r=>Rr(r,t,n))).then(r=>r.includes("error")?"error":r.includes("updated")?"updated":r.includes("added")?"added":"present")}function Qm(e,t){return Promise.all(e.map(n=>gn(n,t))).then(n=>n.includes("error")?"error":n.includes("removed")?"removed":"absent")}function Ke(e,t){return{...e,installed:()=>e.files().some(n=>Tr(n,t)),ensure:n=>Xm(e.files(),t,n),remove:()=>Qm(e.files(),t)}}var eh={mark:"tkr-copilot-hook",event:"PreToolUse",nested:!0,entry:e=>({type:"command",command:e,bash:e,powershell:e,timeout:10,timeoutSec:10}),prepare:va};function th(){return j(process.env.COPILOT_HOME||j(ce(),".copilot"),"hooks","tokmizer.json")}var nh={mark:"tkr-trae-hook",event:"PreToolUse",nested:!0,matcher:"RunCommand",entry:e=>({type:"command",command:e,timeout:30}),prepare:va};function rh(){let e=[j(ce(),".trae","hooks.json")];return $r(j(ce(),".trae-cn"))&&e.push(j(ce(),".trae-cn","hooks.json")),e}var sh={mark:"tkr-qwen-hook",event:"PreToolUse",nested:!0,matcher:"run_shell_command",entry:e=>({name:"tokmizer",type:"command",command:e,timeout:10})};function oh(){return j(process.env.QWEN_HOME||j(ce(),".qwen"),"settings.json")}var ih={mark:"tkr-crush-hook",event:"PreToolUse",nested:!0,entry:e=>({name:"tokmizer",matcher:"^bash$",command:e,timeout:10})};function ah(){return j(process.env.XDG_CONFIG_HOME||j(ce(),".config"),"crush","crush.json")}var lh={mark:"tkr-junie-hook",event:"PreToolUse",nested:!0,matcher:"^Bash$",entry:e=>({type:"command",command:e,timeout:10})};function ch(){return j(ce(),".junie","config.json")}var uh={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={}),D(e.hooks)?(e.hooks.enabled===void 0&&(e.hooks.enabled=!0),e.hooks.events===void 0||D(e.hooks.events)):!1)};function dh(){return j(ce(),".zcode","cli","config.json")}var fh={mark:"tkr-grok-hook",event:"PreToolUse",nested:!0,matcher:"Bash",entry:e=>({type:"command",command:e,timeout:10})};function ph(){return j(ce(),".grok","hooks","tokmizer.json")}var mh="tkr-droid-hook",Cr={mark:mh,event:"PreToolUse",nested:!1,matcher:"Execute",entry:e=>({type:"command",command:e,timeout:10})},hh={...Cr,nested:!0};function Ar(){return j(ce(),".factory")}function yn(){return[{file:j(Ar(),"hooks.json"),spec:Cr},{file:j(Ar(),"hooks","hooks.json"),spec:Cr},{file:j(Ar(),"settings.json"),spec:hh}]}function _a(e){try{let t=JSON.parse(qm(e,"utf8"));return D(t)?t:null}catch{return null}}function wa(e,t){let n=t?e?.hooks:e;return D(n)&&Array.isArray(n.PreToolUse)&&n.PreToolUse.length>0}function xa(){let[e,t,n]=yn(),r=$r(e.file)?e:$r(t.file)?t:null;return r&&wa(_a(r.file),!1)?r:wa(_a(n.file),!0)?n:r??e}var gh={id:"droid",label:"Factory Droid",setup:"tkr setup-droid",bin:"tkr-droid-hook",restart:"Restart Droid, then check it with /hooks.",files:()=>[xa().file],installed:()=>yn().some(e=>Tr(e.file,e.spec)),ensure:async e=>{let t=xa(),n=await Rr(t.file,t.spec,e);return n==="error"||await Promise.all(yn().filter(r=>r.file!==t.file).map(r=>gn(r.file,r.spec))),n},remove:async()=>{let e=await Promise.all(yn().map(t=>gn(t.file,t.spec)));return e.includes("error")?"error":e.includes("removed")?"removed":"absent"}},Ea=[Ke({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:()=>[th()]},eh),gh,Ke({id:"trae",label:"Trae",setup:"tkr setup-trae",bin:"tkr-trae-hook",restart:"Restart Trae so it loads the new hook.",files:rh},nh),Ke({id:"qwen-code",label:"Qwen Code",setup:"tkr setup-qwen",bin:"tkr-qwen-hook",restart:"Restart Qwen Code, then check it with /hooks.",files:()=>[oh()]},sh),Ke({id:"crush",label:"Crush",setup:"tkr setup-crush",bin:"tkr-crush-hook",restart:"Restart Crush so it loads the new hook.",files:()=>[ah()]},ih),Ke({id:"junie",label:"Junie CLI",setup:"tkr setup-junie",bin:"tkr-junie-hook",restart:"Restart Junie CLI so it loads the new hook.",files:()=>[ch()]},lh),Ke({id:"zcode",label:"ZCode",setup:"tkr setup-zcode",bin:"tkr-zcode-hook",restart:"Restart ZCode so it loads the new hook.",files:()=>[dh()]},uh),Ke({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:()=>[ph()]},fh)];var Ir=[{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:[]}],yh=[...Ir.map(e=>e.host),"shell"],Sa=new Set(["claude-code","codex"]),bh={cursor:{installed:Yi,setup:"tkr setup-cursor"},"gemini-cli":{installed:Qi,setup:"tkr setup-gemini"},...Object.fromEntries(pa.map(e=>[e.host,{installed:()=>ma(e),setup:`tkr ${e.command}`}])),...Object.fromEntries(Ea.map(e=>[e.id,{installed:e.installed,setup:e.setup}]))};function Or(e){return Ir.filter(t=>Sa.has(t.host)===e).flatMap(t=>t.vars)}function bn(e){return Sa.has(e)||(bh[e]?.installed()??!1)}function Ta(e){return null}function Ra(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&&yh.includes(s)){let o=s;return{host:o,source:"env",os:n,arch:r,shimRecommended:!bn(o)}}for(let o of Ir)if(o.vars.some(i=>e[i]))return{host:o.host,source:"env",os:n,arch:r,shimRecommended:!bn(o.host)};return{host:"shell",source:"fallback",os:n,arch:r,shimRecommended:!0}}var Sh=["git","npm","yarn","pnpm","docker","kubectl","terraform","tofu","cargo","go","mvn","gradle","rg","grep","find","ls","cat","tail","head","ps","lsof","ssh","scp","rsync","curl","wget","jq","yq","make"];function _n(){return Pr(I(),"shims")}function Oa(){let e=_n(),t={...process.env},n=process.platform==="win32"?"Path":"PATH",s=(t[n]??t.PATH??"").split(Aa).filter(o=>o&&o!==e);return t[n]=s.join(Aa),n==="Path"&&(t.PATH=t[n]),t}function kn(e){return`'${e.replace(/'/g,"'\\''")}'`}function $a(e){return`"${e.map(t=>`\${${t}:-}`).join("")}"`}function Th(e,t){let n=ft()?Nt(e):null;return n?[t(kr()),...n].join(" "):`node ${t(e)}`}function Pa(e,t){return["#!/bin/sh",`if [ -n ${$a(Or(!0))} ] || { [ -z ${$a(Or(!1))} ] && [ ! -t 1 ]; }; then`," set -f",` _tk_d=${kn(_n())}`,` _tk_c=${kn(t)}`," _tk_o=$IFS; IFS=:; _tk_p=; _tk_x="," for _tk_e in $PATH; do",' [ -n "$_tk_e" ] || continue',' [ "$_tk_e" -ef "$_tk_d" ] && continue'," _tk_p=${_tk_p:+$_tk_p:}$_tk_e",' [ -z "$_tk_x" ] && [ -f "$_tk_e/$_tk_c" ] && [ -x "$_tk_e/$_tk_c" ] && _tk_x=$_tk_e/$_tk_c'," done"," IFS=$_tk_o; PATH=$_tk_p; export PATH; set +f",' [ -n "$_tk_x" ] || { echo "$_tk_c: command not found" >&2; exit 127; }',' exec "$_tk_x" "$@"',"fi",`exec ${Th(e,kn)} --as ${kn(t)} "$@"`,""].join(`
|
|
91
|
+
`)}async function Na(e,t){if(Ia.platform()==="win32")return 0;try{if(await Ca(Pr(_n(),t),"utf8")===Pa(e,t))return 0}catch{return 0}return Rh(e)}async function Rh(e){if(Ia.platform()==="win32")return 0;let t=_n();if(!vh(t))return 0;let n=0;for(let r of Sh){let s=Pr(t,r),o=Pa(e,r),i;try{i=await Ca(s,"utf8")}catch{continue}if(i===o)continue;let a=`${s}.${process.pid}.tmp`;try{await kh(a,o,{mode:493}),await wh(a,493),await xh(a,s),n+=1}catch{try{await _h(a)}catch{}}}return n}function Da(){return process.env.TOKMIZER_SHIM_JS?process.env.TOKMIZER_SHIM_JS:Eh(new URL("../bin/tkr-shim.js",import.meta.url))}import{createConnection as Bh}from"node:net";import{spawn as zh}from"node:child_process";import{existsSync as za,openSync as Fr,closeSync as Ha,unlinkSync as jr,writeFileSync as Hr,mkdirSync as Br,readFileSync as Uh,appendFileSync as Zh,rmSync as Jh,statSync as Gh}from"node:fs";import{dirname as Kh,join as zr}from"node:path";import{fileURLToPath as Vh}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()}),$h=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)}),Ih=g.object({id:g.string().min(1).max(64),op:g.literal("reload"),installId:g.string().min(1).max(64).optional()}),nx=g.discriminatedUnion("op",[Ah,$h,Ch,Ih]),rx=g.object({id:g.string(),ok:g.literal(!0),data:g.unknown()}),sx=g.object({id:g.string(),ok:g.literal(!1),err:g.string(),retryAfterMs:g.number().int().nonnegative().optional()}),Ma=g.object({filter:we.nullable(),cacheHit:g.boolean().optional()}),wn=`
|
|
92
|
+
`,ox=64*1024;function Nr(e){return JSON.stringify(e)+wn}function*Fa(e){let t=0;for(;;){let n=e.indexOf(wn,t);if(n<0)return;yield e.slice(t,n),t=n+1}}function Bt(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}import Oh from"node:os";import{join as zt}from"node:path";import{existsSync as Ph,statSync as Nh,lstatSync as La,unlinkSync as Dh,mkdirSync as Mh,chmodSync as Fh}from"node:fs";import{createHash as Lh}from"node:crypto";var Dr=100;function jh(e){let t=Lh("sha256").update(I()).digest("hex").slice(0,8),n=zt(Oh.tmpdir(),`tkr-${e}-${t}`),r=zt(n,"d.sock");if(Buffer.byteLength(r)>Dr)throw new Error("Temporary directory path is too long for IPC");return ja(n,e),r}function Hh(e,t){try{let n=La(e);return n.isDirectory()&&n.uid===t&&(n.mode&63)===0}catch{return!1}}function ja(e,t){Mh(e,{recursive:!0,mode:448});let n=La(e);if(!n.isDirectory()||n.uid!==t)throw new Error("Unsafe IPC directory");Fh(e,448)}function Ut(){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&&Hh(t,e)){let s=zt(t,`tokmizer-${e}.sock`);if(Buffer.byteLength(s)<=Dr)return{path:s,isPipe:!1}}let n=zt(I(),"run"),r=zt(n,"daemon.sock");return Buffer.byteLength(r)>Dr?{path:jh(e),isPipe:!1}:(ja(n,e),{path:r,isPipe:!1})}async function Mr(){let{path:e,isPipe:t}=Ut();if(t||!Ph(e))return;try{if(!Nh(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{Dh(e)}catch{}}var fx=5*6e4;var Ua=500,Wh=3e3,Ba=1,qh=6e4,Yh=256*1024;function Ur(){return zr(I(),"daemon.spawn.fail")}function Zr(){return zr(I(),"daemon.log")}function Xh(){try{let e=Number(Uh(Ur(),"utf8"));return Number.isFinite(e)&&Date.now()-e<qh}catch{return!1}}function Qh(e){try{Br(I(),{recursive:!0});let t=Zr();try{Gh(t).size>Yh&&jr(t)}catch{}Zh(t,`${new Date().toISOString()} ${e}
|
|
93
|
+
`)}catch{}}function eg(e){try{Br(I(),{recursive:!0}),Hr(Ur(),String(Date.now()))}catch{}Qh(`spawn failed: ${e.message}`)}function tg(){try{Jh(Ur(),{force:!0})}catch{}}async function xn(e,t){return new Promise((n,r)=>{let s=Bh(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 ng(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:Vh(new URL("../bin/tkr-daemon.js",import.meta.url))}async function Lr(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 xn(e,75)).destroy(),!0}catch{}else if(za(e))return!0;await new Promise(o=>setTimeout(o,75))}return!1}async function rg(e){let t=ng();if(!ft()&&!za(t))throw new Error(`tkr-daemon binary not found at ${t}`);let{path:n}=Ut(),r=process.platform==="win32"?I():Kh(n);try{Br(r,{recursive:!0})}catch{}let s=zr(r,"daemon.spawn.lock"),o=null;try{o=Fr(s,"wx"),Hr(o,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await Lr(n,5e3))return;try{jr(s)}catch{}try{o=Fr(s,"wx"),Hr(o,String(process.pid))}catch(l){if(l.code==="EEXIST"){await Lr(n,5e3);return}throw l}}else throw i}try{let i=null;try{i=Fr(Zr(),"a")}catch{}let[a,...l]=br(t);if(zh(a,l,{detached:!0,stdio:["ignore","ignore",i??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:e}}).unref(),i!==null)try{Ha(i)}catch{}if(!await Lr(n,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(o!==null){try{Ha(o)}catch{}try{jr(s)}catch{}}}}async function sg(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:Ut(),n=await hr();try{let r=await xn(t,Ua);r.write(Nr({id:Bt(),op:"shutdown",installId:n})),await new Promise(s=>setTimeout(s,150));try{r.destroy()}catch{}return!0}catch{return!1}}async function og(e,t){let n=Date.now()+t;for(;Date.now()<n;){try{(await xn(e,250)).destroy()}catch{return!0}await new Promise(r=>setTimeout(r,100))}return!1}async function Jr(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:Ut(),n=await hr(),r=null,s=0,o=!1;for(;s<=Ba;)try{r=await xn(t,Ua),tg();break}catch{if(s+=1,s>Ba)throw new Error(`tkr-daemon unreachable at ${t}`);if(Xh())throw new Error(`tkr-daemon spawn on cooldown (see ${Zr()})`);await Mr();try{await rg(n),o=!0}catch(u){throw eg(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]===wn&&(d=p);if(d<0)return;let f=[];for(let p of Fa(a.slice(0,d+1)))f.push(p);a=a.slice(d+1);for(let p of f)if(p)try{let h=JSON.parse(p),w=i.get(h.id);if(!w)continue;clearTimeout(w.timer),i.delete(h.id),w.resolve(h)}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})`))},Wh);i.set(u.id,{resolve:d,reject:f,timer:p}),r.write(Nr(u))})}let c={filter:async(u,d,f)=>{let p=await l({id:Bt(),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 h=Ma.safeParse(p.data);return h.success?h.data.filter:null},ping:async()=>{let u=await l({id:Bt(),op:"ping"});if(!u.ok)throw new Error(u.err);return u.data},reload:async()=>{let u=await l({id:Bt(),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&&hi(It,d.version))throw new Error(`newer daemon ${d.version} already running`);u=d.version!==It}catch(d){throw c.close(),d}if(u){try{await sg(e.socketPath?{socketPath:e.socketPath}:{})}catch{}c.close();let d=await og(t,2e3);if(await Mr(),!d)throw new Error("stale daemon still running after shutdown request");return Jr({...e,skipVersionCheck:!0})}}return c}var pt=null,Zt=null;async function ig(){if(pt)return pt;if(Zt)return Zt;let e=Jr().then(t=>{if(Zt===e)return pt=t,t;try{t.close()}catch{}return null}).catch(()=>null);return Zt=e,e}var Gr=null,Kr=!1;async function ag(){return Kr||(Kr=!0,Gr=await ki()??dn()),Gr}async function Za(e,t,n){let r=await ag();if(!r)return null;let s=r.selectFor(e,t,n?[...n]:void 0);return!s||n&&!n.has(Q(s.slug))?null:s}function lg(e){return e?{...e,matchRegex:new RegExp(e.match_command)}:null}function Ja(e){pr(async(t,n)=>{let r=e==="free"?"trial":e,s=n??fn(void 0),o=await ig();if(!o)return Za(t,r,s);try{let i=await o.filter(t,r,s?[...s]:void 0);return!i||s&&!s.has(Q(i.slug))?null:lg(i)}catch{return Za(t,r,s)}})}function Ga(){if(pr(null),pt)try{pt.close()}catch{}pt=null,Zt=null,Gr=null,Kr=!1}import{chmod as dg,mkdir as fg,readFile as Lx,writeFile as Ka,stat as jx,readdir as Hx,rm as Va,rename as pg}from"node:fs/promises";import{readFileSync as mg}from"node:fs";import{createHash as hg}from"node:crypto";import{readFileSync as cg}from"node:fs";import{join as ug}from"node:path";function Ve(){try{return cg(ug(I(),"yolo-mode"),"utf8")==="on"}catch{return!1}}var gg=1440*60*1e3,Jx=30*gg,Gx=200*1024*1024,yg=8*1024*1024,bg=/^[0-9a-f]{8,64}$/i;var kg=".meta";var Kx=["usage: tkr restore <hash> [--lines a:b] [--grep pattern]"," tkr restore --list"," tkr restore --grep <pattern>",""].join(`
|
|
94
|
+
`);function _g(){try{let e=JSON.parse(mg(Bo(),"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 wg(e,t,n=process.env){let r=Number(n[e]);return Number.isFinite(r)&&r>0?r:t}function xg(e){return`${nr(e)}${kg}`}function vg(e){return e===""?[]:(e.endsWith(`
|
|
95
|
+
`)?e.slice(0,-1):e).split(`
|
|
96
|
+
`)}async function Eg(e,t,n=process.env,r={}){if(Ve()||!bg.test(e))return!1;let s=Buffer.byteLength(t,"utf8");if(s>wg("TOKMIZER_CCR_ENTRY_MAX_BYTES",yg,n))return!1;let o=nr(e),i=`${o}.tmp-${process.pid}-${process.hrtime.bigint()}`;try{if(await fg(tr(),{recursive:!0}),Ve())return!1;if(await Ka(i,t,{mode:384}),await dg(i,384),Ve())return await Va(i,{force:!0}),!1;await pg(i,o)}catch{try{await Va(i)}catch{}return!1}let a={at:Date.now(),bytes:s,lines:vg(t).length,partial:r.partial===!0,...r.label?{label:r.label.slice(0,40)}:{}};try{await Ka(xg(e),JSON.stringify(a),{mode:384})}catch{}return!0}function Wa(e){let t=e.TOKMIZER_CCR_DISABLED;return t==="1"||t==="true"||Ve()||_g().disabled===!0}async function Vr(e,t,n,r){let s=hg("sha256").update(e).digest("hex").slice(0,16);return await Eg(s,e,r,{partial:t,label:n})?s:null}async function Wr(e,t,n=process.env,r={}){if(Wa(n)||!e)return t;let s=i=>`
|
|
97
|
+
[tkr restore ${i}]`;if(Buffer.byteLength(e,"utf8")<=Buffer.byteLength(s("0".repeat(16)),"utf8"))return t;if(r.raw){let i=await Vr(r.raw,!1,r.label,n);if(i)return`${t}${s(i)}`}let o=await Vr(e,!0,r.label,n);return o?`${t}${s(o)}`:t}async function qa(e,t,n=process.env,r={}){if(Wa(n)||!e)return t;let s=await Vr(e,!1,r.label,n);return s?`${t}
|
|
98
|
+
[tkr restore ${s}]`:t}var Ya=16*1024*1024,Sg=6e5,Tg=1500,Rg=new Set(["npm","pnpm","yarn","bun"]),Ag=new Set(["dev","start","serve","preview","watch"]);function Qa(e,t){let n=process.env[e];if(n==null||n==="")return t;let r=Number(n);return Number.isFinite(r)?r:t}function $g(){return Qa("TOKMIZER_SHIM_STREAM_AFTER_MS",process.stdout.isTTY?Tg:0)}function Cg(e,t){let n=e.split(/[\\/]/).pop()??e;return Rg.has(n)?t.some(r=>!r.startsWith("-")&&Ag.has(r)):!1}function el(e){return e[0]==="--as"&&typeof e[1]=="string"?{cmdName:e[1],args:e.slice(2)}:e.length>0?{cmdName:e[0],args:e.slice(1)}:{cmdName:"",args:[]}}async function tl(e){let{cmdName:t,args:n}=e;if(!t)return process.stderr.write(`tkr-shim: missing command name
|
|
99
|
+
`),{exitCode:2,filteredOut:"",filteredErr:"",filterId:null,rawBytes:0,filteredBytes:0};let r=[t,...n].join(" "),s=Ve(),o=await dt(),i=await Ct(),a=i?vi(i):null,l=i?fn(i.allowedFilters,xi(i)):new Set,c=new Set(o.filters.disabled.map(Q)),u=l&&c.size>0?new Set([...l].filter(R=>!c.has(R))):l,d=Ra().host,f=!process.stdout.isTTY&&d==="shell",p=!o.enabled||!i||bn(d),h=Cg(t,n);i&&!p&&!f&&!h&&Ja(a);let w,k;try{return await new Promise(R=>{let E=(0,Xa.default)(t,n,{stdio:h?"inherit":["inherit","pipe","pipe"],shell:!1,windowsHide:!0,env:Oa()}),C=[],P=[],N=0,G=0,re=!1,se=h,O=Qa("TOKMIZER_SHIM_TIMEOUT_MS",Sg),K=$g(),B,he,mt=()=>{B&&clearTimeout(B),he&&clearTimeout(he),B=void 0,he=void 0},rl=()=>{if(!se){se=!0,B&&clearTimeout(B),B=void 0;for(let M of C)process.stdout.write(M);for(let M of P)process.stderr.write(M);C.length=0,P.length=0}},vn=()=>{se||K<=0||(he&&clearTimeout(he),he=setTimeout(rl,K),he.unref?.())};!se&&O>0&&(B=setTimeout(()=>E.kill("SIGTERM"),O),B.unref?.()),vn();let Yr=M=>{try{E.kill(M)}catch{}};w=()=>Yr("SIGINT"),k=()=>Yr("SIGTERM"),process.on("SIGINT",w),process.on("SIGTERM",k),E.stdout?.on("data",M=>{if(N+=M.length,se){process.stdout.write(M);return}if(N>Ya){if(!re){for(let We of C)process.stdout.write(We);C.length=0,re=!0}process.stdout.write(M);return}C.push(M),vn()}),E.stderr?.on("data",M=>{if(G+=M.length,se){process.stderr.write(M);return}if(G>Ya){if(!re){for(let We of P)process.stderr.write(We);P.length=0,re=!0}process.stderr.write(M);return}P.push(M),vn()}),E.on("error",M=>{mt(),process.stderr.write(`tkr-shim: ${M.message}
|
|
100
|
+
`),R({exitCode:127,filteredOut:"",filteredErr:"",filterId:null,rawBytes:0,filteredBytes:0})}),E.on("close",async(M,We)=>{mt();let qe=typeof M=="number"?M:We==="SIGTERM"?143:We==="SIGINT"?130:1,Se=Buffer.concat(C),Te=Buffer.concat(P);if(re||se||p||f){Se.length&&process.stdout.write(Se),Te.length&&process.stderr.write(Te),R({exitCode:qe,filteredOut:Se.toString("utf8"),filteredErr:Te.toString("utf8"),filterId:null,rawBytes:N+G,filteredBytes:N+G});return}let ht=Se.toString("utf8"),gt=Te.toString("utf8");try{let H=await mr(r,ht,u,{verbosity:o.outputVerbosity,yolo:s,exitCode:qe}),En=gt&&(s||qe!==0&&Buffer.byteLength(gt,"utf8")>=1024)?await mr(r,gt,u,{verbosity:o.outputVerbosity,yolo:s,exitCode:qe}):null,Re=En&&(s||En.failureSummary)?En:null,Xr=H.filteredBytes<H.rawBytes,Qr=Xr||Re!=null&&Re.filteredBytes<Re.rawBytes,yt=Re?.output??gt;if(Re&&!s)try{yt=await Wr(Re.droppedTail??null,Re.output)}catch{}let bt=ht;if(Xr&&(bt=H.output,!s))try{bt=new RegExp(xo.source,"m").test(H.output)?await qa(ht,H.output,process.env,{label:hn(r)}):await Wr(H.droppedTail??null,H.output,process.env,{raw:ht,label:hn(r)})}catch{}let es=Se.length+Te.length,kt=Vi(es,Qr?Buffer.byteLength(bt,"utf8")+Buffer.byteLength(yt,"utf8"):es,Ta(d));Gi(kt.raw,kt.filtered,void 0,!1,d,"sh",hn(r),process.cwd(),Ki(H));try{await Oi({cmd:r,filterId:H.filterId,rawBytes:H.rawBytes,filteredBytes:H.filteredBytes,plan:a}),await Ii({cmd:r,tokensSaved:Math.max(0,Math.round((kt.raw-kt.filtered)/4)),rawTokens:Math.round(kt.raw/4),optimized:H.filterId!=null,telemetryOptIn:o.telemetryOptIn,sessionId:process.env.CLAUDE_CODE_SESSION_ID,host:d})}catch{}if(Qr){process.stdout.write(bt),yt&&process.stderr.write(yt),R({exitCode:qe,filteredOut:bt,filteredErr:yt,filterId:H.filterId,rawBytes:H.rawBytes,filteredBytes:H.filteredBytes});return}}catch{}Se.length&&process.stdout.write(Se),Te.length&&process.stderr.write(Te),R({exitCode:qe,filteredOut:ht,filteredErr:gt,filterId:null,rawBytes:N+G,filteredBytes:N+G})})})}finally{w&&process.off("SIGINT",w),k&&process.off("SIGTERM",k),Ga()}}function nl(e=process.stdout,t=n=>process.exit(n)){e.on("error",n=>{if(n.code==="EPIPE"){t(141);return}throw n})}nl();var qr=el(process.argv.slice(2));qr.cmdName&&Na(Da(),qr.cmdName).catch(()=>{});tl(qr).then(e=>{process.exitCode=e.exitCode}).catch(e=>{process.stderr.write(`tkr-shim: ${e.message}
|
|
47
101
|
`),process.exitCode=1});
|
|
102
|
+
/*! Bundled license information:
|
|
103
|
+
|
|
104
|
+
smol-toml/dist/error.js:
|
|
105
|
+
smol-toml/dist/primitive.js:
|
|
106
|
+
smol-toml/dist/date.js:
|
|
107
|
+
smol-toml/dist/extract.js:
|
|
108
|
+
smol-toml/dist/util.js:
|
|
109
|
+
smol-toml/dist/struct.js:
|
|
110
|
+
smol-toml/dist/parse.js:
|
|
111
|
+
smol-toml/dist/stringify.js:
|
|
112
|
+
smol-toml/dist/index.js:
|
|
113
|
+
(*!
|
|
114
|
+
* Copyright (c) Squirrel Chat et al., All rights reserved.
|
|
115
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
116
|
+
*
|
|
117
|
+
* Redistribution and use in source and binary forms, with or without
|
|
118
|
+
* modification, are permitted provided that the following conditions are met:
|
|
119
|
+
*
|
|
120
|
+
* 1. Redistributions of source code must retain the above copyright notice, this
|
|
121
|
+
* list of conditions and the following disclaimer.
|
|
122
|
+
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
123
|
+
* this list of conditions and the following disclaimer in the
|
|
124
|
+
* documentation and/or other materials provided with the distribution.
|
|
125
|
+
* 3. Neither the name of the copyright holder nor the names of its contributors
|
|
126
|
+
* may be used to endorse or promote products derived from this software without
|
|
127
|
+
* specific prior written permission.
|
|
128
|
+
*
|
|
129
|
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
130
|
+
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
131
|
+
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
132
|
+
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
133
|
+
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
134
|
+
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
135
|
+
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
136
|
+
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
137
|
+
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
138
|
+
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
139
|
+
*)
|
|
140
|
+
*/
|