@tokmizer/plugin 0.9.69 → 0.9.70

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.
@@ -1,137 +1,142 @@
1
1
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
2
- var _f=Object.create;var Dr=Object.defineProperty;var wf=Object.getOwnPropertyDescriptor;var xf=Object.getOwnPropertyNames;var Sf=Object.getPrototypeOf,Ef=Object.prototype.hasOwnProperty;var Re=(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 h=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var X=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},Ft=(e,t)=>{for(var n in t)Dr(e,n,{get:t[n],enumerable:!0})},vf=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of xf(t))!Ef.call(e,s)&&s!==n&&Dr(e,s,{get:()=>t[s],enumerable:!(r=wf(t,s))||r.enumerable});return e};var Tf=(e,t,n)=>(n=e!=null?_f(Sf(e)):{},vf(t||!e||!e.__esModule?Dr(n,"default",{value:e,enumerable:!0}):n,e));import Af from"node:os";import{join as jt}from"node:path";function S(){return process.env.TOKMIZER_HOME||jt(Af.homedir(),".tokmizer")}function Ht(){return jt(S(),"install-id")}function Mr(){return jt(S(),"content-cache")}function Ho(){return jt(S(),"restore.json")}function Lr(e){return jt(Mr(),e)}var j=h(()=>{"use strict"});import{join as Of}from"node:path";import{mkdir as Rw,readFile as Cf,writeFile as Aw,unlink as Ow,rename as Cw}from"node:fs/promises";function Pf(){try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;return e&&e.length>0?e:"Etc/UTC"}catch{return"Etc/UTC"}}function Nf(e){return e?.dir??S()}async function He(e){let t=Nf(e);try{let n=await Cf(Of(t,If),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=Pf()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var If,Bt=h(()=>{"use strict";j();If="state.json"});import{basename as Df}from"node:path";function ct(e){let t=Df(e).replace(/\.(m?js|ts)$/,"");if(t==="tkr")return[];for(let[n,r]of Object.entries(Mf))if(r===t)return[n];for(let[n,r]of Object.entries(Lf))if(r===t)return["hook",n];return null}var Mf,Lf,zt=h(()=>{"use strict";Mf={exec:"tkr-exec",processor:"tkr-processor",daemon:"tkr-daemon","shim-run":"tkr-shim"},Lf={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",context:"tkr-context-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","command-expansion":"command-expansion"}});function ke(){return!1}function Ut(e,t=process.execPath){let n=ke()?ct(e):null;return n?[process.execPath,...n]:[t,e]}var Ae=h(()=>{"use strict";zt()});import{rmSync as Ff,statSync as jf}from"node:fs";import{join as Bo}from"node:path";function xn(){return Bo(S(),"shims")}function Fr(){return Bo(S(),"fail-open")}function zo(e=Date.now()){try{if(e-jf(Fr()).mtimeMs<Hf)return!0;Ff(Fr(),{force:!0})}catch{}return!1}var Hf,Zt=h(()=>{"use strict";j();Hf=24*36e5});var Sn=h(()=>{"use strict";j();Ae();zt();Zt()});import{chmod as Gf,lstat as Zo,mkdir as Jf,readFile as Hr,rename as Kf,rm as qw,unlink as Go,writeFile as Wf}from"node:fs/promises";import{createHash as Jo}from"node:crypto";import{basename as Vf,join as Ko}from"node:path";function Wo(){return Ko(S(),"backup","config")}function jr(e){let t=zr(e),n=Jo("sha256").update(t).digest("hex").slice(0,16),r=Vf(t).replace(/[^A-Za-z0-9._-]/g,"_").slice(0,80);return Ko(Wo(),`${n}-${r}`)}function Vo(e){return`${jr(e)}.written`}function qo(e){return Jo("sha256").update(e).digest("hex")}async function Yf(e){try{return await Zo(e),!0}catch{return!1}}async function Br(e,t){let n=`${e}.tmp-${process.pid}`;try{return await Jf(Wo(),{recursive:!0,mode:448}),await Wf(n,t,{mode:384}),await Gf(n,384),await Kf(n,e),!0}catch{return await Go(n).catch(()=>{}),!1}}async function Xf(e,t){let n=`${e}${qf}`;try{if(!(await Zo(n)).isFile())return!1}catch{return!1}let r=!await Yf(t);if(r&&!await Br(t,await Hr(n,"utf8")))throw new Error("backup");return await Go(n).catch(()=>{}),r}async function Qf(e,t){try{return(await Hr(Vo(e),"utf8")).trim()===qo(t)}catch{return!1}}async function Yo(e,t){let n=t;try{n===void 0&&(n=await Hr(e,"utf8"))}catch(r){return r.code==="ENOENT"}try{if(await Xf(e,jr(e)))return!0}catch{return!1}return await Qf(e,n)?!0:Br(jr(e),n)}async function En(e,t,n){return!await Yo(e,n)||!await Tn(e,t)?!1:(await Br(Vo(e),`${qo(t)}
3
- `),!0)}var qf,vn=h(()=>{"use strict";j();_e();qf=".tkr-bak"});import{readFile as ed,writeFile as td,rename as nd,mkdir as ei,chmod as rd,stat as sd,unlink as od}from"node:fs/promises";import{existsSync as id,lstatSync as ad,readlinkSync as ld,realpathSync as Xo}from"node:fs";import{basename as cd,dirname as $n,join as ud,resolve as Qo}from"node:path";function H(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}async function Oe(e){if(!id(e))return{};try{let t=JSON.parse(await ed(e,"utf8"));return H(t)?t:null}catch{return null}}function zr(e){let t=Qo(e);for(let n=0;n<32;n++){try{return Xo(t)}catch{}try{if(!ad(t).isSymbolicLink())break;t=Qo($n(t),ld(t))}catch{break}}try{return ud(Xo($n(t)),cd(t))}catch{return t}}async function Tn(e,t){let n=zr(e),r=`${n}.tmp-${process.pid}`;try{await ei($n(n),{recursive:!0});let s=384;try{s=(await sd(n)).mode&511}catch{}return await td(r,t,{mode:s}),await rd(r,s),await nd(r,n),!0}catch{try{await od(r)}catch{}return!1}}async function Ce(e,t){try{await ei($n(e),{recursive:!0})}catch{return!1}return En(e,`${JSON.stringify(t,null,2)}
4
- `)}function ut(e,t){if(typeof e!="string")return!1;if(e.includes(t))return!0;let n=ct(t);return n?.length?new RegExp(`^\\s*${fd}\\s+${n.join("\\s+")}(?:\\s|$)`,"i").test(e):!1}function Rn(e,t,n,r){let s=i=>i!==n&&t(i),o=!1;for(let i=e.length-1;i>=0;i--){let a=e[i];if(!r){s(a)&&(e.splice(i,1),o=!0);continue}if(!H(a)||!Array.isArray(a.hooks))continue;let l=a.hooks.filter(c=>!s(c));l.length!==a.hooks.length&&(o=!0,l.length?a.hooks=l:e.splice(i,1))}return o}var fd,_e=h(()=>{"use strict";zt();Ae();Sn();vn();fd=String.raw`(?:'(?:(?:[^']|'\\'')*[\\/])?tkr(?:\.(?:exe|cmd|bat|ps1))?'|"(?:[^"]*[\\/])?tkr(?:\.(?:exe|cmd|bat|ps1))?"|(?:[^\s'"]*[\\/])?tkr(?:\.(?:exe|cmd|bat|ps1))?)`});import{existsSync as px,readFileSync as dd}from"node:fs";import{join as pd}from"node:path";import md from"node:os";function gd(){return pd(md.homedir(),".cursor","hooks.json")}function yd(e){return H(e)&&ut(e.command,hd)}function bd(e){let t=H(e.hooks)?e.hooks:{},n=Array.isArray(t[ti])?t[ti]:[];return{hooks:t,entries:n}}function ni(){try{let e=JSON.parse(dd(gd(),"utf8"));return bd(e).entries.some(yd)}catch{return!1}}var hd,ti,ri=h(()=>{"use strict";_e();hd="tkr-cursor-hook",ti="preToolUse"});import{existsSync as kx,readFileSync as kd}from"node:fs";import{join as _d}from"node:path";import wd from"node:os";function Sd(){return _d(process.env.GEMINI_CLI_HOME||wd.homedir(),".gemini","settings.json")}function Ed(e){return H(e)&&ut(e.command,xd)}function vd(e){return(Array.isArray(e.hooks)?e.hooks:[]).find(Ed)}function Td(e){let t=H(e.hooks)?e.hooks:{},n=Array.isArray(t[si])?t[si]:[];return{hooks:t,groups:n}}function oi(){try{let e=JSON.parse(kd(Sd(),"utf8"));return Td(e).groups.some(t=>vd(t)!=null)}catch{return!1}}var xd,si,ii=h(()=>{"use strict";_e();xd="tkr-gemini-hook",si="BeforeTool"});import{existsSync as Tx,accessSync as $x,constants as Rx,readFileSync as $d}from"node:fs";function Ad(e){return e.includes(Rd)}function ai(e){try{return Ad($d(e,"utf8"))}catch{return!1}}var Rd,li=h(()=>{"use strict";_e();Ae();vn();j();Rd='"rewrite", "--host"'});import{readFile as ui,mkdir as Od}from"node:fs/promises";import{existsSync as Gr,readFileSync as fi}from"node:fs";import{dirname as Cd,join as Zr}from"node:path";import di from"node:os";function Kt(){return Zr(process.env.VIBE_HOME||Zr(di.homedir(),".vibe"),"hooks.toml")}function ci(e){return JSON.stringify(e)}function Id(e){return["[[hooks]]",`name = ${ci(pi)}`,'type = "pre_tool"','match = "bash"',`command = ${ci(e)}`,"timeout = 10.0","strict = false",'description = "Route shell commands through tokmizer."',""].join(`
5
- `)}function Jr(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 Jt(e){return/^\s*\[\[hooks\]\]/.test(e)&&new RegExp(`^\\s*name\\s*=\\s*"${pi}"\\s*$`,"m").test(e)}async function mi(e,t){try{await Od(Cd(e),{recursive:!0})}catch{return!1}return En(e,t)}function hi(){try{return Jr(fi(Kt(),"utf8")).some(Jt)}catch{return!1}}async function gi(e){let t=Kt(),n="";try{Gr(t)&&(n=await ui(t,"utf8"))}catch{return"error"}let r=Id(e),s=Jr(n),o=s.filter(Jt);if(o.length===1&&o[0].trimEnd()===r.trimEnd())return"present";let i=s.filter(l=>!Jt(l)).join("").trimEnd(),a=i?`${i}
2
+ var Zf=Object.create;var Fr=Object.defineProperty;var Gf=Object.getOwnPropertyDescriptor;var Wf=Object.getOwnPropertyNames;var Jf=Object.getPrototypeOf,Kf=Object.prototype.hasOwnProperty;var Ce=(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 y=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var Q=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},Bt=(e,t)=>{for(var n in t)Fr(e,n,{get:t[n],enumerable:!0})},Vf=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Wf(t))!Kf.call(e,s)&&s!==n&&Fr(e,s,{get:()=>t[s],enumerable:!(r=Gf(t,s))||r.enumerable});return e};var qf=(e,t,n)=>(n=e!=null?Zf(Jf(e)):{},Vf(t||!e||!e.__esModule?Fr(n,"default",{value:e,enumerable:!0}):n,e));import Qf from"node:os";import{join as zt}from"node:path";function v(){return process.env.TOKMIZER_HOME||zt(Qf.homedir(),".tokmizer")}function Ut(){return zt(v(),"install-id")}function jr(){return zt(v(),"content-cache")}function Vo(){return zt(v(),"restore.json")}function Hr(e){return zt(jr(),e)}var H=y(()=>{"use strict"});import{join as ed}from"node:path";import{mkdir as Tx,readFile as td,writeFile as $x,unlink as Rx,rename as Ax}from"node:fs/promises";function rd(){try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;return e&&e.length>0?e:"Etc/UTC"}catch{return"Etc/UTC"}}function sd(e){return e?.dir??v()}async function Ue(e){let t=sd(e);try{let n=await td(ed(t,nd),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=rd()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var nd,Zt=y(()=>{"use strict";H();nd="state.json"});function od(e){return e.charCodeAt(0)===65279?e.slice(1):e}function fe(e){return JSON.parse(od(e))}var Ze=y(()=>{"use strict"});import{basename as id}from"node:path";function pt(e){let t=id(e).replace(/\.(m?js|ts)$/,"");if(t==="tkr")return[];for(let[n,r]of Object.entries(ad))if(r===t)return[n];for(let[n,r]of Object.entries(ld))if(r===t)return["hook",n];return null}var ad,ld,Gt=y(()=>{"use strict";ad={exec:"tkr-exec",processor:"tkr-processor",daemon:"tkr-daemon","shim-run":"tkr-shim"},ld={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",context:"tkr-context-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","command-expansion":"command-expansion"}});function we(){return!1}function Wt(e,t=process.execPath){let n=we()?pt(e):null;return n?[process.execPath,...n]:[t,e]}var Ie=y(()=>{"use strict";Gt()});import{rmSync as cd,statSync as ud}from"node:fs";import{join as qo}from"node:path";function En(){return qo(v(),"shims")}function Br(){return qo(v(),"fail-open")}function Yo(e=Date.now()){try{if(e-ud(Br()).mtimeMs<fd)return!0;cd(Br(),{force:!0})}catch{}return!1}function vn(e){return`'${e.replace(/'/g,"'\\''")}'`}var fd,mt=y(()=>{"use strict";H();fd=24*36e5});var Tn=y(()=>{"use strict";H();Ie();Gt();mt()});import{chmod as hd,lstat as Qo,mkdir as gd,readFile as Ur,rename as yd,rm as Vx,unlink as ei,writeFile as bd}from"node:fs/promises";import{createHash as ti}from"node:crypto";import{basename as kd,join as ni}from"node:path";function ri(){return ni(v(),"backup","config")}function zr(e){let t=Gr(e),n=ti("sha256").update(t).digest("hex").slice(0,16),r=kd(t).replace(/[^A-Za-z0-9._-]/g,"_").slice(0,80);return ni(ri(),`${n}-${r}`)}function si(e){return`${zr(e)}.written`}function oi(e){return ti("sha256").update(e).digest("hex")}async function wd(e){try{return await Qo(e),!0}catch{return!1}}async function Zr(e,t){let n=`${e}.tmp-${process.pid}`;try{return await gd(ri(),{recursive:!0,mode:448}),await bd(n,t,{mode:384}),await hd(n,384),await yd(n,e),!0}catch{return await ei(n).catch(()=>{}),!1}}async function xd(e,t){let n=`${e}${_d}`;try{if(!(await Qo(n)).isFile())return!1}catch{return!1}let r=!await wd(t);if(r&&!await Zr(t,await Ur(n,"utf8")))throw new Error("backup");return await ei(n).catch(()=>{}),r}async function Sd(e,t){try{return(await Ur(si(e),"utf8")).trim()===oi(t)}catch{return!1}}async function ii(e,t){let n=t;try{n===void 0&&(n=await Ur(e,"utf8"))}catch(r){return r.code==="ENOENT"}try{if(await xd(e,zr(e)))return!0}catch{return!1}return await Sd(e,n)?!0:Zr(zr(e),n)}async function $n(e,t,n){return!await ii(e,n)||!await An(e,t)?!1:(await Zr(si(e),`${oi(t)}
3
+ `),!0)}var _d,Rn=y(()=>{"use strict";H();xe();_d=".tkr-bak"});import{readFile as Ed,writeFile as vd,rename as Td,mkdir as ui,chmod as $d,stat as Rd,unlink as Ad}from"node:fs/promises";import{existsSync as Od,lstatSync as Cd,readlinkSync as Id,realpathSync as ai}from"node:fs";import{basename as Pd,dirname as On,join as Nd,resolve as li}from"node:path";function z(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}async function Pe(e){if(!Od(e))return{};try{let t=fe(await Ed(e,"utf8"));return z(t)?t:null}catch{return null}}function Gr(e){let t=li(e);for(let n=0;n<32;n++){try{return ai(t)}catch{}try{if(!Cd(t).isSymbolicLink())break;t=li(On(t),Id(t))}catch{break}}try{return Nd(ai(On(t)),Pd(t))}catch{return t}}async function An(e,t){let n=Gr(e),r=`${n}.tmp-${process.pid}`;try{await ui(On(n),{recursive:!0});let s=384;try{s=(await Rd(n)).mode&511}catch{}return await vd(r,t,{mode:s}),await $d(r,s),await Td(r,n),!0}catch{try{await Ad(r)}catch{}return!1}}async function Ne(e,t){try{await ui(On(e),{recursive:!0})}catch{return!1}return $n(e,`${JSON.stringify(t,null,2)}
4
+ `)}function Dd(e){let t=[],n="",r=!1;for(let s=0;s<e.length;s++){let o=e[s];if(o==="'"){let i=e.indexOf("'",s+1);if(i<0)return null;n+=e.slice(s+1,i),r=!0,s=i}else if(o==='"'){let i=e.indexOf('"',s+1);if(i<0)return null;let a=e.slice(s+1,i);if(/`|\$\(/.test(a))return null;n+=a,r=!0,s=i}else if(o==="\\"&&e[s+1]==="'")n+="'",r=!0,s++;else if(o===" "||o===" ")r&&t.push(n),n="",r=!1;else{if(o===";"||o==="&"||o==="|"||o==="`"||o===`
5
+ `||o==="\r"||o==="$"&&e[s+1]==="(")return null;n+=o,r=!0}}return r&&t.push(n),t}function Wr(e){return(e.split(/[\\/]/).pop()??"").toLowerCase().replace(/\.(?:exe|cmd|bat|ps1|m?js|sh)$/,"")}function Ld(e){if(typeof e!="string")return null;let t=e.replace(Md,""),n=Dd(t);if(!n)return null;let r=0;for(;r<n.length&&ci.test(n[r]);)r++;if(n[r]==="exec"&&r++,r>=n.length||ci.test(n[r]))return null;let s=Wr(n[r]),o=n.slice(r+1);if(s==="sh"||s==="bash"){let i=o[0]!==void 0?Wr(o[0]):"";return/^tkr-hook(?:-launch)?$/.test(i)?{program:i,args:o.slice(2),launcherMark:o[1]??""}:{program:s,args:o}}return s==="node"?{program:o[0]!==void 0?Wr(o[0]):"node",args:o.slice(1)}:{program:s,args:o}}function ht(e,t){let n=Ld(e);if(!n)return!1;if(n.launcherMark!==void 0)return n.launcherMark===t;if(n.program===t)return!0;if(n.program!=="tkr")return!1;let r=pt(t);return r?.length?r.every((s,o)=>n.args[o]===s):!1}function Cn(e,t,n,r){let s=i=>i!==n&&t(i),o=!1;for(let i=e.length-1;i>=0;i--){let a=e[i];if(!r){s(a)&&(e.splice(i,1),o=!0);continue}if(!z(a)||!Array.isArray(a.hooks))continue;let l=a.hooks.filter(c=>!s(c));l.length!==a.hooks.length&&(o=!0,l.length?a.hooks=l:e.splice(i,1))}return o}var Md,ci,xe=y(()=>{"use strict";Gt();Ie();Tn();Rn();Ze();Md=/^\s*\[ ! -[a-z] (?:'(?:[^']|'\\'')*'|"[^"]*") \] \|\| /,ci=/^[A-Za-z_][A-Za-z0-9_]*=/});import{existsSync as pS,readFileSync as Fd}from"node:fs";import{join as jd}from"node:path";import Hd from"node:os";function zd(){return jd(Hd.homedir(),".cursor","hooks.json")}function Ud(e){return z(e)&&ht(e.command,Bd)}function Zd(e){let t=z(e.hooks)?e.hooks:{},n=Array.isArray(t[fi])?t[fi]:[];return{hooks:t,entries:n}}function di(){try{let e=fe(Fd(zd(),"utf8"));return Zd(e).entries.some(Ud)}catch{return!1}}var Bd,fi,pi=y(()=>{"use strict";Ze();xe();Bd="tkr-cursor-hook",fi="preToolUse"});import{existsSync as _S,readFileSync as Gd}from"node:fs";import{join as Wd}from"node:path";import Jd from"node:os";function Vd(){return Wd(process.env.GEMINI_CLI_HOME||Jd.homedir(),".gemini","settings.json")}function qd(e){return z(e)&&ht(e.command,Kd)}function Yd(e){return(Array.isArray(e.hooks)?e.hooks:[]).find(qd)}function Xd(e){let t=z(e.hooks)?e.hooks:{},n=Array.isArray(t[mi])?t[mi]:[];return{hooks:t,groups:n}}function hi(){try{let e=fe(Gd(Vd(),"utf8"));return Xd(e).groups.some(t=>Yd(t)!=null)}catch{return!1}}var Kd,mi,gi=y(()=>{"use strict";Ze();xe();Kd="tkr-gemini-hook",mi="BeforeTool"});import{existsSync as RS,accessSync as AS,constants as OS,readFileSync as Qd}from"node:fs";function tp(e){return e.includes(ep)}function yi(e){try{return tp(Qd(e,"utf8"))}catch{return!1}}var ep,bi=y(()=>{"use strict";xe();Ie();Rn();H();ep='"rewrite", "--host"'});import{readFile as _i,mkdir as np}from"node:fs/promises";import{existsSync as Vr,readFileSync as wi}from"node:fs";import{dirname as rp,join as Kr}from"node:path";import xi from"node:os";function Vt(){return Kr(process.env.VIBE_HOME||Kr(xi.homedir(),".vibe"),"hooks.toml")}function ki(e){return JSON.stringify(e)}function sp(e){return["[[hooks]]",`name = ${ki(Si)}`,'type = "pre_tool"','match = "bash"',`command = ${ki(e)}`,"timeout = 10.0","strict = false",'description = "Route shell commands through tokmizer."',""].join(`
6
+ `)}function qr(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 Kt(e){return/^\s*\[\[hooks\]\]/.test(e)&&new RegExp(`^\\s*name\\s*=\\s*"${Si}"\\s*$`,"m").test(e)}async function Ei(e,t){try{await np(rp(e),{recursive:!0})}catch{return!1}return $n(e,t)}function vi(){try{return qr(wi(Vt(),"utf8")).some(Kt)}catch{return!1}}async function Ti(e){let t=Vt(),n="";try{Vr(t)&&(n=await _i(t,"utf8"))}catch{return"error"}let r=sp(e),s=qr(n),o=s.filter(Kt);if(o.length===1&&o[0].trimEnd()===r.trimEnd())return"present";let i=s.filter(l=>!Kt(l)).join("").trimEnd(),a=i?`${i}
6
7
 
7
- ${r}`:r;return await mi(t,a)?o.length?"updated":"added":"error"}async function yi(){let e=Kt();if(!Gr(e))return"absent";let t;try{t=await ui(e,"utf8")}catch{return"error"}let n=Jr(t);if(!n.some(Jt))return"absent";let r=n.filter(o=>!Jt(o)).join("").trimEnd(),s=r?`${r}
8
- `:"";return await mi(e,s)?"removed":"error"}function Wt(){return Zr(di.homedir(),".gemini","config","hooks.json")}function Pd(e){return{enabled:!0,PreToolUse:[{matcher:"run_command",hooks:[{type:"command",command:e,timeout:10}]}]}}function bi(){try{let e=JSON.parse(fi(Wt(),"utf8"));return H(e)&&H(e[Gt])}catch{return!1}}async function ki(e){let t=Wt(),n=await Oe(t);if(!n)return"error";let r=Pd(e),s=n[Gt];return s!==void 0&&JSON.stringify(s)===JSON.stringify(r)?"present":(n[Gt]=r,await Ce(t,n)?s===void 0?"added":"updated":"error")}async function _i(){let e=Wt();if(!Gr(e))return"absent";let t=await Oe(e);return t?Gt in t?(delete t[Gt],await Ce(e,t)?"removed":"error"):"absent":"error"}var pi,Gt,wi=h(()=>{"use strict";_e();vn();pi="tokmizer-rewrite",Gt="tokmizer-rewrite"});import{dirname as Jx,join as te}from"node:path";import Nd from"node:os";function Si(e){return e.kind==="hook"?e.installed():ai(e.files()[0].target)}var Vt,Kr,xi,Ei=h(()=>{"use strict";_e();li();wi();Vt=()=>Nd.homedir(),Kr=()=>process.env.XDG_CONFIG_HOME||te(Vt(),".config"),xi=[{host:"opencode",label:"OpenCode",command:"setup-opencode",kind:"shim",files:()=>[{template:"opencode.js",target:te(Kr(),"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:te(Kr(),"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:te(Kr(),"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:Kt,installed:hi,ensure:gi,remove:yi,next:"Restart Vibe so it reads hooks.toml."},{host:"antigravity",label:"Antigravity",command:"setup-antigravity",kind:"hook",file:Wt,installed:bi,ensure:ki,remove:_i,next:"Restart Antigravity, then check it with /hooks."},{host:"openclaw",label:"OpenClaw",command:"setup-openclaw",kind:"shim",files:()=>{let e=te(Vt(),".openclaw","extensions","tokmizer");return["index.js","openclaw.plugin.json","package.json"].map(t=>({template:`openclaw/${t}`,target:te(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:te(process.env.PI_CODING_AGENT_DIR||te(Vt(),".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:te(Vt(),".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=te(process.env.HERMES_HOME||te(Vt(),".hermes"),"plugins","tokmizer");return["__init__.py","plugin.yaml"].map(t=>({template:`hermes/${t}`,target:te(e,t)}))},next:"Run: hermes plugins enable tokmizer, then restart Hermes (needs Hermes v2026.8.16 or newer)."}]});import{existsSync as Dd,readFileSync as Md}from"node:fs";function An(e,t){return H(e)&&ut(e.command,t)}function vi(e){return e.path??(e.nested?["hooks"]:[])}function Ti(e,t){let n=e;for(let r of vi(t))H(n[r])||(n[r]={}),n=n[r];return n}function $i(e,t){let n=e;for(let s of vi(t))n=H(n)?n[s]:void 0;if(!H(n))return[];let r=n[t.event];return Array.isArray(r)?r:[]}function Ld(e){return H(e)&&Array.isArray(e.hooks)?e.hooks:[]}function Ri(e,t){return(t.matcher===void 0?e:e.flatMap(Ld)).filter(r=>An(r,t.mark))}function Ai(e,t){return Ri($i(e,t),t).length>0}function Wr(e,t){try{let n=JSON.parse(Md(e,"utf8"));return H(n)&&Ai(n,t)}catch{return!1}}function Fd(e,t,n){let r=Ti(e,t),s=Array.isArray(r[t.event])?r[t.event]:[];r[t.event]=s;let o=Ri(s,t)[0],i=t.entry(n);if(o){let a=Rn(s,c=>An(c,t.mark),o,t.matcher!==void 0),l=Object.entries(i).filter(([c,u])=>JSON.stringify(o[c])!==JSON.stringify(u));if(!l.length&&!a)return"present";for(let[c,u]of l)o[c]=u;return"updated"}return s.push(t.matcher===void 0?i:{matcher:t.matcher,hooks:[i]}),"added"}function jd(e,t){if(!Ai(e,t))return!1;let n=Ti(e,t),r=$i(e,t),s=t.matcher===void 0?r.filter(o=>!An(o,t.mark)):r.map(o=>H(o)&&Array.isArray(o.hooks)?{...o,hooks:o.hooks.filter(i=>!An(i,t.mark))}:o).filter(o=>!H(o)||!Array.isArray(o.hooks)||o.hooks.length>0);return s.length?n[t.event]=s:delete n[t.event],!0}async function Vr(e,t,n){let r=await Oe(e);if(!r||t.prepare&&!t.prepare(r))return"error";let s=Fd(r,t,n);return s==="present"||await Ce(e,r)?s:"error"}async function On(e,t){if(!Dd(e))return"absent";let n=await Oe(e);return n?jd(n,t)?await Ce(e,n)?"removed":"error":"absent":"error"}var Oi=h(()=>{"use strict";_e()});import{existsSync as Yr,readFileSync as Hd}from"node:fs";import{join as G}from"node:path";import Bd from"node:os";function fe(){return Bd.homedir()}function Ni(e){return e.version===void 0&&(e.version=1),e.version===1}function zd(e,t,n){return Promise.all(e.map(r=>Vr(r,t,n))).then(r=>r.includes("error")?"error":r.includes("updated")?"updated":r.includes("added")?"added":"present")}function Ud(e,t){return Promise.all(e.map(n=>On(n,t))).then(n=>n.includes("error")?"error":n.includes("removed")?"removed":"absent")}function Be(e,t){return{...e,installed:()=>e.files().some(n=>Wr(n,t)),ensure:n=>zd(e.files(),t,n),remove:()=>Ud(e.files(),t)}}function Gd(){return G(process.env.COPILOT_HOME||G(fe(),".copilot"),"hooks","tokmizer.json")}function Kd(){let e=[G(fe(),".trae","hooks.json")];return Yr(G(fe(),".trae-cn"))&&e.push(G(fe(),".trae-cn","hooks.json")),e}function Vd(){return G(process.env.QWEN_HOME||G(fe(),".qwen"),"settings.json")}function Yd(){return G(process.env.XDG_CONFIG_HOME||G(fe(),".config"),"crush","crush.json")}function Qd(){return G(fe(),".junie","config.json")}function ep(e){return e.hooks===void 0&&(e.hooks={}),H(e.hooks)?(e.hooks.enabled===void 0&&(e.hooks.enabled=!0),e.hooks.events===void 0||H(e.hooks.events)):!1}function np(){return G(fe(),".zcode","cli","config.json")}function sp(){return G(fe(),".grok","hooks","tokmizer.json")}function qr(){return G(fe(),".factory")}function Cn(){return[{file:G(qr(),"hooks.json"),spec:Xr},{file:G(qr(),"hooks","hooks.json"),spec:Xr},{file:G(qr(),"settings.json"),spec:ip}]}function Ci(e){try{let t=JSON.parse(Hd(e,"utf8"));return H(t)?t:null}catch{return null}}function Ii(e,t){let n=t?e?.hooks:e;return H(n)&&Array.isArray(n.PreToolUse)&&n.PreToolUse.length>0}function Pi(){let[e,t,n]=Cn(),r=Yr(e.file)?e:Yr(t.file)?t:null;return r&&Ii(Ci(r.file),!1)?r:Ii(Ci(n.file),!0)?n:r??e}var Zd,Jd,Wd,qd,Xd,tp,rp,op,Xr,ip,ap,Di,Mi=h(()=>{"use strict";_e();Oi();Zd={mark:"tkr-copilot-hook",event:"PreToolUse",nested:!0,entry:e=>({type:"command",command:e,bash:e,powershell:e,timeout:10,timeoutSec:10}),prepare:Ni};Jd={mark:"tkr-trae-hook",event:"PreToolUse",nested:!0,matcher:"RunCommand",entry:e=>({type:"command",command:e,timeout:30}),prepare:Ni};Wd={mark:"tkr-qwen-hook",event:"PreToolUse",nested:!0,matcher:"run_shell_command",entry:e=>({name:"tokmizer",type:"command",command:e,timeout:10})};qd={mark:"tkr-crush-hook",event:"PreToolUse",nested:!0,entry:e=>({name:"tokmizer",matcher:"^bash$",command:e,timeout:10})};Xd={mark:"tkr-junie-hook",event:"PreToolUse",nested:!0,matcher:"^Bash$",entry:e=>({type:"command",command:e,timeout:10})};tp={mark:"tkr-zcode-hook",event:"PreToolUse",nested:!0,path:["hooks","events"],matcher:"Bash",entry:e=>({type:"command",command:e,timeoutMs:1e4}),prepare:ep};rp={mark:"tkr-grok-hook",event:"PreToolUse",nested:!0,matcher:"Bash",entry:e=>({type:"command",command:e,timeout:10})};op="tkr-droid-hook",Xr={mark:op,event:"PreToolUse",nested:!1,matcher:"Execute",entry:e=>({type:"command",command:e,timeout:10})},ip={...Xr,nested:!0};ap={id:"droid",label:"Factory Droid",setup:"tkr setup-droid",bin:"tkr-droid-hook",restart:"Restart Droid, then check it with /hooks.",files:()=>[Pi().file],installed:()=>Cn().some(e=>Wr(e.file,e.spec)),ensure:async e=>{let t=Pi(),n=await Vr(t.file,t.spec,e);return n==="error"||await Promise.all(Cn().filter(r=>r.file!==t.file).map(r=>On(r.file,r.spec))),n},remove:async()=>{let e=await Promise.all(Cn().map(t=>On(t.file,t.spec)));return e.includes("error")?"error":e.includes("removed")?"removed":"absent"}},Di=[Be({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:()=>[Gd()]},Zd),ap,Be({id:"trae",label:"Trae",setup:"tkr setup-trae",bin:"tkr-trae-hook",restart:"Restart Trae so it loads the new hook.",files:Kd},Jd),Be({id:"qwen-code",label:"Qwen Code",setup:"tkr setup-qwen",bin:"tkr-qwen-hook",restart:"Restart Qwen Code, then check it with /hooks.",files:()=>[Vd()]},Wd),Be({id:"crush",label:"Crush",setup:"tkr setup-crush",bin:"tkr-crush-hook",restart:"Restart Crush so it loads the new hook.",files:()=>[Yd()]},qd),Be({id:"junie",label:"Junie CLI",setup:"tkr setup-junie",bin:"tkr-junie-hook",restart:"Restart Junie CLI so it loads the new hook.",files:()=>[Qd()]},Xd),Be({id:"zcode",label:"ZCode",setup:"tkr setup-zcode",bin:"tkr-zcode-hook",restart:"Restart ZCode so it loads the new hook.",files:()=>[np()]},tp),Be({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:()=>[sp()]},rp)]});function Li(e){return cp.has(e)||(up[e]?.installed()??!1)}function In(e){return null}function Pn(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&&lp.includes(s)){let o=s;return{host:o,source:"env",os:n,arch:r,shimRecommended:!Li(o)}}for(let o of Fi)if(o.vars.some(i=>e[i]))return{host:o.host,source:"env",os:n,arch:r,shimRecommended:!Li(o.host)};return{host:"shell",source:"fallback",os:n,arch:r,shimRecommended:!0}}var Fi,lp,cp,up,Nn=h(()=>{"use strict";ri();ii();Ei();Mi();Fi=[{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:[]}],lp=[...Fi.map(e=>e.host),"shell"],cp=new Set(["claude-code","codex"]),up={cursor:{installed:ni,setup:"tkr setup-cursor"},"gemini-cli":{installed:oi,setup:"tkr setup-gemini"},...Object.fromEntries(xi.map(e=>[e.host,{installed:()=>Si(e),setup:`tkr ${e.command}`}])),...Object.fromEntries(Di.map(e=>[e.id,{installed:e.installed,setup:e.setup}]))}});import{appendFileSync as fp,mkdirSync as dp,readFileSync as pp,writeFileSync as mp,renameSync as hp,statSync as gp,readdirSync as pS,rmSync as mS,chmodSync as yp}from"node:fs";import{join as ji}from"node:path";function Hi(){return ji(S(),"sessions")}function wp(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return ji(Hi(),`${t}.jsonl`)}function Dn(e,t){try{let n=wp(e);dp(Hi(),{recursive:!0,mode:448});let r=JSON.stringify({t:t.t??Math.floor(Date.now()/1e3),tool:t.tool,target:t.target.slice(0,_p),...t.fail?{fail:1}:{}});if(fp(n,`${r}
9
- `,{mode:384}),yp(n,384),gp(n).size>bp){let s=pp(n,"utf8").split(`
10
- `).filter(a=>a.trim()!==""),o=s.slice(s.length-kp),i=`${n}.tmp-${process.pid}`;mp(i,`${o.join(`
8
+ ${r}`:r;return await Ei(t,a)?o.length?"updated":"added":"error"}async function $i(){let e=Vt();if(!Vr(e))return"absent";let t;try{t=await _i(e,"utf8")}catch{return"error"}let n=qr(t);if(!n.some(Kt))return"absent";let r=n.filter(o=>!Kt(o)).join("").trimEnd(),s=r?`${r}
9
+ `:"";return await Ei(e,s)?"removed":"error"}function qt(){return Kr(xi.homedir(),".gemini","config","hooks.json")}function op(e){return{enabled:!0,PreToolUse:[{matcher:"run_command",hooks:[{type:"command",command:e,timeout:10}]}]}}function Ri(){try{let e=fe(wi(qt(),"utf8"));return z(e)&&z(e[Jt])}catch{return!1}}async function Ai(e){let t=qt(),n=await Pe(t);if(!n)return"error";let r=op(e),s=n[Jt];return s!==void 0&&JSON.stringify(s)===JSON.stringify(r)?"present":(n[Jt]=r,await Ne(t,n)?s===void 0?"added":"updated":"error")}async function Oi(){let e=qt();if(!Vr(e))return"absent";let t=await Pe(e);return t?Jt in t?(delete t[Jt],await Ne(e,t)?"removed":"error"):"absent":"error"}var Si,Jt,Ci=y(()=>{"use strict";Ze();xe();Rn();Si="tokmizer-rewrite",Jt="tokmizer-rewrite"});import{dirname as VS,join as se}from"node:path";import ip from"node:os";function Pi(e){return e.kind==="hook"?e.installed():yi(e.files()[0].target)}var Yt,Yr,Ii,Ni=y(()=>{"use strict";xe();bi();Ci();Yt=()=>ip.homedir(),Yr=()=>process.env.XDG_CONFIG_HOME||se(Yt(),".config"),Ii=[{host:"opencode",label:"OpenCode",command:"setup-opencode",kind:"shim",files:()=>[{template:"opencode.js",target:se(Yr(),"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:se(Yr(),"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:se(Yr(),"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:Vt,installed:vi,ensure:Ti,remove:$i,next:"Restart Vibe so it reads hooks.toml."},{host:"antigravity",label:"Antigravity",command:"setup-antigravity",kind:"hook",file:qt,installed:Ri,ensure:Ai,remove:Oi,next:"Restart Antigravity, then check it with /hooks."},{host:"openclaw",label:"OpenClaw",command:"setup-openclaw",kind:"shim",files:()=>{let e=se(Yt(),".openclaw","extensions","tokmizer");return["index.js","openclaw.plugin.json","package.json"].map(t=>({template:`openclaw/${t}`,target:se(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:se(process.env.PI_CODING_AGENT_DIR||se(Yt(),".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:se(Yt(),".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=se(process.env.HERMES_HOME||se(Yt(),".hermes"),"plugins","tokmizer");return["__init__.py","plugin.yaml"].map(t=>({template:`hermes/${t}`,target:se(e,t)}))},next:"Run: hermes plugins enable tokmizer, then restart Hermes (needs Hermes v2026.8.16 or newer)."}]});import{existsSync as ap,readFileSync as lp}from"node:fs";function In(e,t){return z(e)&&ht(e.command,t)}function Di(e){return e.path??(e.nested?["hooks"]:[])}function Mi(e,t){let n=e;for(let r of Di(t))z(n[r])||(n[r]={}),n=n[r];return n}function Li(e,t){let n=e;for(let s of Di(t))n=z(n)?n[s]:void 0;if(!z(n))return[];let r=n[t.event];return Array.isArray(r)?r:[]}function cp(e){return z(e)&&Array.isArray(e.hooks)?e.hooks:[]}function Fi(e,t){return(t.matcher===void 0?e:e.flatMap(cp)).filter(r=>In(r,t.mark))}function ji(e,t){return Fi(Li(e,t),t).length>0}function Xr(e,t){try{let n=fe(lp(e,"utf8"));return z(n)&&ji(n,t)}catch{return!1}}function up(e,t,n){let r=Mi(e,t),s=Array.isArray(r[t.event])?r[t.event]:[];r[t.event]=s;let o=Fi(s,t)[0],i=t.entry(n);if(o){let a=Cn(s,c=>In(c,t.mark),o,t.matcher!==void 0),l=Object.entries(i).filter(([c,u])=>JSON.stringify(o[c])!==JSON.stringify(u));if(!l.length&&!a)return"present";for(let[c,u]of l)o[c]=u;return"updated"}return s.push(t.matcher===void 0?i:{matcher:t.matcher,hooks:[i]}),"added"}function fp(e,t){if(!ji(e,t))return!1;let n=Mi(e,t),r=Li(e,t),s=t.matcher===void 0?r.filter(o=>!In(o,t.mark)):r.map(o=>z(o)&&Array.isArray(o.hooks)?{...o,hooks:o.hooks.filter(i=>!In(i,t.mark))}:o).filter(o=>!z(o)||!Array.isArray(o.hooks)||o.hooks.length>0);return s.length?n[t.event]=s:delete n[t.event],!0}async function Qr(e,t,n){let r=await Pe(e);if(!r||t.prepare&&!t.prepare(r))return"error";let s=up(r,t,n);return s==="present"||await Ne(e,r)?s:"error"}async function Pn(e,t){if(!ap(e))return"absent";let n=await Pe(e);return n?fp(n,t)?await Ne(e,n)?"removed":"error":"absent":"error"}var Hi=y(()=>{"use strict";Ze();xe()});import{existsSync as ts,readFileSync as dp}from"node:fs";import{join as W}from"node:path";import pp from"node:os";function me(){return pp.homedir()}function Zi(e){return e.version===void 0&&(e.version=1),e.version===1}function mp(e,t,n){return Promise.all(e.map(r=>Qr(r,t,n))).then(r=>r.includes("error")?"error":r.includes("updated")?"updated":r.includes("added")?"added":"present")}function hp(e,t){return Promise.all(e.map(n=>Pn(n,t))).then(n=>n.includes("error")?"error":n.includes("removed")?"removed":"absent")}function Ge(e,t){return{...e,installed:()=>e.files().some(n=>Xr(n,t)),ensure:n=>mp(e.files(),t,n),remove:()=>hp(e.files(),t)}}function yp(){return W(process.env.COPILOT_HOME||W(me(),".copilot"),"hooks","tokmizer.json")}function kp(){let e=[W(me(),".trae","hooks.json")];return ts(W(me(),".trae-cn"))&&e.push(W(me(),".trae-cn","hooks.json")),e}function wp(){return W(process.env.QWEN_HOME||W(me(),".qwen"),"settings.json")}function Sp(){return W(process.env.XDG_CONFIG_HOME||W(me(),".config"),"crush","crush.json")}function vp(){return W(me(),".junie","config.json")}function Tp(e){return e.hooks===void 0&&(e.hooks={}),z(e.hooks)?(e.hooks.enabled===void 0&&(e.hooks.enabled=!0),e.hooks.events===void 0||z(e.hooks.events)):!1}function Rp(){return W(me(),".zcode","cli","config.json")}function Op(){return W(me(),".grok","hooks","tokmizer.json")}function es(){return W(me(),".factory")}function Nn(){return[{file:W(es(),"hooks.json"),spec:ns},{file:W(es(),"hooks","hooks.json"),spec:ns},{file:W(es(),"settings.json"),spec:Ip}]}function Bi(e){try{let t=JSON.parse(dp(e,"utf8"));return z(t)?t:null}catch{return null}}function zi(e,t){let n=t?e?.hooks:e;return z(n)&&Array.isArray(n.PreToolUse)&&n.PreToolUse.length>0}function Ui(){let[e,t,n]=Nn(),r=ts(e.file)?e:ts(t.file)?t:null;return r&&zi(Bi(r.file),!1)?r:zi(Bi(n.file),!0)?n:r??e}var gp,bp,_p,xp,Ep,$p,Ap,Cp,ns,Ip,Pp,Gi,Wi=y(()=>{"use strict";xe();Hi();gp={mark:"tkr-copilot-hook",event:"PreToolUse",nested:!0,entry:e=>({type:"command",command:e,bash:e,powershell:e,timeout:10,timeoutSec:10}),prepare:Zi};bp={mark:"tkr-trae-hook",event:"PreToolUse",nested:!0,matcher:"RunCommand",entry:e=>({type:"command",command:e,timeout:30}),prepare:Zi};_p={mark:"tkr-qwen-hook",event:"PreToolUse",nested:!0,matcher:"run_shell_command",entry:e=>({name:"tokmizer",type:"command",command:e,timeout:10})};xp={mark:"tkr-crush-hook",event:"PreToolUse",nested:!0,entry:e=>({name:"tokmizer",matcher:"^bash$",command:e,timeout:10})};Ep={mark:"tkr-junie-hook",event:"PreToolUse",nested:!0,matcher:"^Bash$",entry:e=>({type:"command",command:e,timeout:10})};$p={mark:"tkr-zcode-hook",event:"PreToolUse",nested:!0,path:["hooks","events"],matcher:"Bash",entry:e=>({type:"command",command:e,timeoutMs:1e4}),prepare:Tp};Ap={mark:"tkr-grok-hook",event:"PreToolUse",nested:!0,matcher:"Bash",entry:e=>({type:"command",command:e,timeout:10})};Cp="tkr-droid-hook",ns={mark:Cp,event:"PreToolUse",nested:!1,matcher:"Execute",entry:e=>({type:"command",command:e,timeout:10})},Ip={...ns,nested:!0};Pp={id:"droid",label:"Factory Droid",setup:"tkr setup-droid",bin:"tkr-droid-hook",restart:"Restart Droid, then check it with /hooks.",files:()=>[Ui().file],installed:()=>Nn().some(e=>Xr(e.file,e.spec)),ensure:async e=>{let t=Ui(),n=await Qr(t.file,t.spec,e);return n==="error"||await Promise.all(Nn().filter(r=>r.file!==t.file).map(r=>Pn(r.file,r.spec))),n},remove:async()=>{let e=await Promise.all(Nn().map(t=>Pn(t.file,t.spec)));return e.includes("error")?"error":e.includes("removed")?"removed":"absent"}},Gi=[Ge({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:()=>[yp()]},gp),Pp,Ge({id:"trae",label:"Trae",setup:"tkr setup-trae",bin:"tkr-trae-hook",restart:"Restart Trae so it loads the new hook.",files:kp},bp),Ge({id:"qwen-code",label:"Qwen Code",setup:"tkr setup-qwen",bin:"tkr-qwen-hook",restart:"Restart Qwen Code, then check it with /hooks.",files:()=>[wp()]},_p),Ge({id:"crush",label:"Crush",setup:"tkr setup-crush",bin:"tkr-crush-hook",restart:"Restart Crush so it loads the new hook.",files:()=>[Sp()]},xp),Ge({id:"junie",label:"Junie CLI",setup:"tkr setup-junie",bin:"tkr-junie-hook",restart:"Restart Junie CLI so it loads the new hook.",files:()=>[vp()]},Ep),Ge({id:"zcode",label:"ZCode",setup:"tkr setup-zcode",bin:"tkr-zcode-hook",restart:"Restart ZCode so it loads the new hook.",files:()=>[Rp()]},$p),Ge({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:()=>[Op()]},Ap)]});function Ji(e){return Dp.has(e)||(Mp[e]?.installed()??!1)}function Dn(e){return null}function Mn(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&&Np.includes(s)){let o=s;return{host:o,source:"env",os:n,arch:r,shimRecommended:!Ji(o)}}for(let o of Ki)if(o.vars.some(i=>e[i]))return{host:o.host,source:"env",os:n,arch:r,shimRecommended:!Ji(o.host)};return{host:"shell",source:"fallback",os:n,arch:r,shimRecommended:!0}}var Ki,Np,Dp,Mp,Ln=y(()=>{"use strict";pi();gi();Ni();Wi();Ki=[{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:[]}],Np=[...Ki.map(e=>e.host),"shell"],Dp=new Set(["claude-code","codex"]),Mp={cursor:{installed:di,setup:"tkr setup-cursor"},"gemini-cli":{installed:hi,setup:"tkr setup-gemini"},...Object.fromEntries(Ii.map(e=>[e.host,{installed:()=>Pi(e),setup:`tkr ${e.command}`}])),...Object.fromEntries(Gi.map(e=>[e.id,{installed:e.installed,setup:e.setup}]))}});import{appendFileSync as Lp,mkdirSync as Fp,readFileSync as jp,writeFileSync as Hp,renameSync as Bp,statSync as zp,readdirSync as yE,rmSync as bE,chmodSync as Up}from"node:fs";import{join as Vi}from"node:path";function qi(){return Vi(v(),"sessions")}function Jp(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return Vi(qi(),`${t}.jsonl`)}function Fn(e,t){try{let n=Jp(e);Fp(qi(),{recursive:!0,mode:448});let r=JSON.stringify({t:t.t??Math.floor(Date.now()/1e3),tool:t.tool,target:t.target.slice(0,Wp),...t.fail?{fail:1}:{}});if(Lp(n,`${r}
10
+ `,{mode:384}),Up(n,384),zp(n).size>Zp){let s=jp(n,"utf8").split(`
11
+ `).filter(a=>a.trim()!==""),o=s.slice(s.length-Gp),i=`${n}.tmp-${process.pid}`;Hp(i,`${o.join(`
11
12
  `)}
12
- `,{mode:384}),hp(i,n)}}catch{}}var bp,kp,yS,_p,Qr=h(()=>{"use strict";j();bp=96*1024,kp=500,yS=168*3600*1e3,_p=120});import{readFileSync as Np}from"node:fs";import{join as Dp}from"node:path";function we(){try{return Np(Dp(S(),"yolo-mode"),"utf8")==="on"}catch{return!1}}var Mn=h(()=>{"use strict";j()});var ft,Ln=h(()=>{"use strict";ft="[tkr: partial view; folded or omitted lines are not file text. Read with offset/limit for the exact lines before Edit or Write]"});function Kp(e,t){let n=e.slice(0,t).split(/\r?\n/);return[n.length,n.pop().length+1]}function Wp(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+=`
13
+ `,{mode:384}),Bp(i,n)}}catch{}}var Zp,Gp,wE,Wp,rs=y(()=>{"use strict";H();Zp=96*1024,Gp=500,wE=168*3600*1e3,Wp=120});import{readFileSync as im}from"node:fs";import{join as am}from"node:path";function Se(){try{return im(am(v(),"yolo-mode"),"utf8")==="on"}catch{return!1}}var jn=y(()=>{"use strict";H()});var gt,Hn=y(()=>{"use strict";gt="[tkr: partial view; folded or omitted lines are not file text. Read with offset/limit for the exact lines before Edit or Write]"});function km(e,t){let n=e.slice(0,t).split(/\r?\n/);return[n.length,n.pop().length+1]}function _m(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+=`
13
14
  `,i===t&&(s+=" ".repeat(o+n+2),s+=`^
14
- `))}return s}var v,ze=h(()=>{v=class e extends Error{line;column;codeblock;constructor(t,n){let[r,s]=Kp(n.toml,n.ptr),o=Wp(n.toml,r,s);super(`Invalid TOML document: ${t}
15
+ `))}return s}var $,We=y(()=>{$=class e extends Error{line;column;codeblock;constructor(t,n){let[r,s]=km(n.toml,n.ptr),o=_m(n.toml,r,s);super(`Invalid TOML document: ${t}
15
16
 
16
- ${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 Fn(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,f=n===120?2:n===117?4:8;for(let p=0;p<f;p++,e.p++){let d=e.s.charCodeAt(e.p),m=d>=48&&d<=57?d-48:d>=65&&d<=70?d-65+10:d>=97&&d<=102?d-97+10:-1;m<0&&v.x("invalid non-hex character in unicode escape",e),u=u<<4|m}(u<0||u>1114111||u>=55296&&u<=57343)&&v.x("invalid unicode escape",e,c),i+=String.fromCodePoint(u),a=e.p--,l=0}else o&&(n===32||n===9)?l=2:(n===98?i+="\b":n===116?i+=" ":n===110?i+=`
17
- `: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 rs=h(()=>{ze();});var Vp,Ue,ss=h(()=>{Vp=/^(\d{4}-\d{2}-\d{2})?[Tt ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|z|[-+]\d{2}:\d{2})?$/i,Ue=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(Vp);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 Q(e,t=10){return t===16?e>47&&e<58||e>64&&e<71||e>96&&e<103:e>47&&e<48+t}function is(e,t){return e===32||e===9||e===10||e===13||t&&(e===t||e===44)||e===35}function Xt(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?Ji(e):Gi(e);return e.d++,s}return r===34||r===39?Fn(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?jn(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?qp(e,r,t):e.s.charCodeAt(e.p+2)===58?Yp(e,r,t):jn(e,e.p,r,0,t)}function jn(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||is(o=e.s.charCodeAt(e.p),s))return e.bi===!0?0n:0;if(!r){if(o===120)return os(e,t,16,s);if(o===98)return os(e,t,2,s);if(o===111)return os(e,t,8,s)}o===46?i=2:o===101||o===69?i=4:v.x("illegal leading zero",e,t)}else Q(o)||v.x("invalid value",e,t);for(;++e.p<e.s.length&&(o=e.s.charCodeAt(e.p),!is(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)||(Q(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):Zi(e,l,10,t)}function os(e,t,n,r){let s,o=1;for(;++e.p<e.s.length&&(s=e.s.charCodeAt(e.p),!is(s,r));)s===95?(o&1&&v.x("illegal underscore",e),o=3):Q(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("_","")),Zi(e,i,n,t)}function Zi(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 qp(e,t,n){let r=e.p++,s;if(!Q(t)||!Q(e.s.charCodeAt(e.p++))||!Q(e.s.charCodeAt(e.p++))||!Q(e.s.charCodeAt(e.p++)))return jn(e,e.p=r,t,0,n);if(e.p+=5,Q(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,!Q(e.s.charCodeAt(e.p+1))))&&t!==84&&t!==116){let i=e.s.slice(r,e.p);return Yt(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(;Q(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 Yt(e,i,1,s,r,"[+00:00]")}if(t===43||t===45){let i=e.s.slice(r,e.p+=6);return Yt(e,i,1,s,r,!e.ld&&"["+e.s.slice(e.p-6,e.p)+"]")}}let o=e.s.slice(r,e.p);return Yt(e,o,2,s,r)}function Yp(e,t,n){let r=e.p;if(!Q(t)||!Q(e.s.charCodeAt(++e.p)))return jn(e,--e.p,t,0,n);if(e.s.charCodeAt(e.p+=4)===58&&(e.p+=3),e.s.charCodeAt(e.p)===46)for(;Q(e.s.charCodeAt(++e.p)););let s=e.s.slice(r,e.p);return Yt(e,s,4,!1,r)}function Yt(e,t,n,r,s,o){if(e.ld){let i=new Ue(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 as=h(()=>{rs();ls();ze();ss();});function Xp(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 le(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;Xp(e)}}var cs=h(()=>{ze();});function Hn(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(Fn(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 Gi(e){let t=e.p++,n=Object.create(null),r=new Set,s;for(;e.p<e.s.length;){if(le(e),(s=e.s.charCodeAt(e.p))===125)return e.p++,n;let o,i=n,a=!1,l=e.p,c=Hn(e);for(let f=0;f<c.length;f++){f&&(i=a?i[o]:i[o]=Object.create(null)),o=c[f],(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 p=o==="__proto__";if(e.uk&&(p||o==="constructor")){i=e.uk!==1&&v.x("document contains an unsafe property",e,l);break}!a&&p&&Object.defineProperty(i,o,{enumerable:!0,configurable:!0,writable:!0})}a&&v.x("trying to redefine an already defined value",e,l),le(e,!0,!0);let u=Xt(e,125);if(i&&typeof(i[o]=u)=="object"&&r.add(u),le(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 Ji(e){let t=e.p++,n=[],r;for(;e.p<e.s.length;){if(le(e),(r=e.s.charCodeAt(e.p))===93)return e.p++,n;if(n.push(Xt(e,93)),le(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 ls=h(()=>{rs();as();cs();ze();});function Ki(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 f=o.length-1;o=o[f],i=i[f].c}}if(a=t[u],(l=Object.hasOwn(o,a))&&i[a]?.t===0&&i[a]?.d)return null;if(!l){let f=a==="__proto__";if(e.uk&&(f||a==="constructor"))return!1;f&&(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 Wi(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 Bn(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++,le(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=Hn(n,93);c&&(e.charCodeAt(n.p)!==93&&v.x("expected end of table array declaration",n),n.p++);let f=Ki(n,u,r,s,c?2:1);f?(l=f[2],a=f[1]):(Wi(n,f,o),i=!0)}else{o=n.p;let c=Hn(n),u=Ki(n,c,a,l,0);!u&&!i&&Wi(n,u,o),le(n,!0,!0);let f=Xt(n,void 0);u&&!i&&(u[1][u[0]]=f)}le(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),le(n)}return r}var Vi=h(()=>{ls();as();cs();ze();});function Qt(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 em(e){for(let t=0;t<e.length;t++)if(Qt(e[t])!=="object")return!1;return e.length!=0}function Yi(e){return JSON.stringify(e).replaceAll("\x7F","\\u007f")}function tm(e){return Yi(qi?e.toWellFormed():e)}function Xi(e){if(Qp.test(e))return e;if(qi&&!e.isWellFormed())throw new RangeError("key contains illegal lone surrogates");return Yi(e)}function us(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 tm(e);case"date":if(isNaN(e.getTime()))throw new TypeError("cannot serialize invalid date");return e.toISOString();case"object":return nm(e,n,r,s);case"array":return rm(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 nm(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+=Xi(a)+" = "+us(e[a],Qt(e[a]),t-1,n,r)}return o+" }"}function rm(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+=us(e[o],Qt(e[o]),t-1,n,r)}return s+" ]"}function sm(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&&`
17
+ ${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 Bn(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)$.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,f=n===120?2:n===117?4:8;for(let d=0;d<f;d++,e.p++){let p=e.s.charCodeAt(e.p),g=p>=48&&p<=57?p-48:p>=65&&p<=70?p-65+10:p>=97&&p<=102?p-97+10:-1;g<0&&$.x("invalid non-hex character in unicode escape",e),u=u<<4|g}(u<0||u>1114111||u>=55296&&u<=57343)&&$.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+=`
18
+ `:n===102?i+="\f":n===114?i+="\r":n===101?i+="\x1B":n===34?i+='"':n===92?i+="\\":$.x("unrecognised escape sequence",e),a=e.p+1,l=0);else n!==32&&n!==9&&(l===2&&$.x("invalid escape: only line-ending whitespace may be escaped",e,a),l=!s&&n===92?1:0,a=e.p);$.x("unfinished string",e,t)}var as=y(()=>{We();});var wm,Je,ls=y(()=>{wm=/^(\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(wm);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 ee(e,t=10){return t===16?e>47&&e<58||e>64&&e<71||e>96&&e<103:e>47&&e<48+t}function us(e,t){return e===32||e===9||e===10||e===13||t&&(e===t||e===44)||e===35}function en(e,t){let n=e.p,r=e.s.charCodeAt(e.p);if(r===91||r===123){e.d--||$.x("document contains excessively nested structures. aborting.",e);let s=r===91?na(e):ta(e);return e.d++,s}return r===34||r===39?Bn(e):r===116?((e.s.charCodeAt(++e.p)!==114||e.s.charCodeAt(++e.p)!==117||e.s.charCodeAt(++e.p)!==101)&&$.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)&&$.x("invalid value",e,n),e.p++,!1):r===43||r===45?zn(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?xm(e,r,t):e.s.charCodeAt(e.p+2)===58?Sm(e,r,t):zn(e,e.p,r,0,t)}function zn(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)&&$.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)&&$.x("invalid value",e,t),e.p++,NaN;if(o===48){if(++e.p>=e.s.length||us(o=e.s.charCodeAt(e.p),s))return e.bi===!0?0n:0;if(!r){if(o===120)return cs(e,t,16,s);if(o===98)return cs(e,t,2,s);if(o===111)return cs(e,t,8,s)}o===46?i=2:o===101||o===69?i=4:$.x("illegal leading zero",e,t)}else ee(o)||$.x("invalid value",e,t);for(;++e.p<e.s.length&&(o=e.s.charCodeAt(e.p),!us(o,s));)i||(i=1),o===95?(i&1||$.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)||(ee(o)?i>9?i-=11:i&1||i++:$.x("illegal character in numeric literal",e));if(!i){let c=(n-48)*(r||1);return e.bi===!0?BigInt(c):c}i&1||$.x("unfinished numeric value",e,t);let l=e.s.slice(t,e.p);return a&&(l=l.replaceAll("_","")),i>1?parseFloat(l):ea(e,l,10,t)}function cs(e,t,n,r){let s,o=1;for(;++e.p<e.s.length&&(s=e.s.charCodeAt(e.p),!us(s,r));)s===95?(o&1&&$.x("illegal underscore",e),o=3):ee(s,n)?o&1&&o--:$.x("illegal character in numeric literal",e);o&1&&$.x("unfinished numeric value",e);let i=e.s.slice(t+2,e.p);return o&&(i=i.replaceAll("_","")),ea(e,i,n,t)}function ea(e,t,n,r){if(e.bi!==!0)e:{let s=parseInt(t,n);if(!Number.isSafeInteger(s)){if(e.bi)break e;$.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 xm(e,t,n){let r=e.p++,s;if(!ee(t)||!ee(e.s.charCodeAt(e.p++))||!ee(e.s.charCodeAt(e.p++))||!ee(e.s.charCodeAt(e.p++)))return zn(e,e.p=r,t,0,n);if(e.p+=5,ee(e.s.charCodeAt(e.p++))||$.x("invalid date-time: date part is malformed",e,r),e.p>=e.s.length||((t=e.s.charCodeAt(e.p))!==32||(s=!0,!ee(e.s.charCodeAt(e.p+1))))&&t!==84&&t!==116){let i=e.s.slice(r,e.p);return Qt(e,i,3,!1,r)}if(e.s.charCodeAt(e.p+=3)!==58&&$.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(;ee(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 Qt(e,i,1,s,r,"[+00:00]")}if(t===43||t===45){let i=e.s.slice(r,e.p+=6);return Qt(e,i,1,s,r,!e.ld&&"["+e.s.slice(e.p-6,e.p)+"]")}}let o=e.s.slice(r,e.p);return Qt(e,o,2,s,r)}function Sm(e,t,n){let r=e.p;if(!ee(t)||!ee(e.s.charCodeAt(++e.p)))return zn(e,--e.p,t,0,n);if(e.s.charCodeAt(e.p+=4)===58&&(e.p+=3),e.s.charCodeAt(e.p)===46)for(;ee(e.s.charCodeAt(++e.p)););let s=e.s.slice(r,e.p);return Qt(e,s,4,!1,r)}function Qt(e,t,n,r,s,o){if(e.ld){let i=new Je(t,n,r);return i.isValid()||$.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){$.x(i instanceof Error?i.message:""+i,e,s)}}var fs=y(()=>{as();ds();We();ls();});function Em(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)&&$.x("control characters are not allowed in comments",e)}}function de(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;Em(e)}}var ps=y(()=>{We();});function Un(e,t=61){let n,r=0,s=[],o,i=e.s.charCodeAt(n=e.p);do{if(i===t)return r||$.x("unexpected end of key",e),r===1&&s.push(e.s.slice(o,e.p)),e.p++,s;i===46?(r||$.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)&&$.x("illegal quoted key: multiline strings are not allowed",e),s.push(Bn(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?$.x("illegal character in key",e):r||(r=1,o=e.p)}while(i=e.s.charCodeAt(++e.p));$.x("incomplete key-value: cannot find end of key",e,n)}function ta(e){let t=e.p++,n=Object.create(null),r=new Set,s;for(;e.p<e.s.length;){if(de(e),(s=e.s.charCodeAt(e.p))===125)return e.p++,n;let o,i=n,a=!1,l=e.p,c=Un(e);for(let f=0;f<c.length;f++){f&&(i=a?i[o]:i[o]=Object.create(null)),o=c[f],(a=Object.hasOwn(i,o))&&(typeof i[o]!="object"||r.has(i[o]))&&$.x("trying to redefine an already defined value",e,l);let d=o==="__proto__";if(e.uk&&(d||o==="constructor")){i=e.uk!==1&&$.x("document contains an unsafe property",e,l);break}!a&&d&&Object.defineProperty(i,o,{enumerable:!0,configurable:!0,writable:!0})}a&&$.x("trying to redefine an already defined value",e,l),de(e,!0,!0);let u=en(e,125);if(i&&typeof(i[o]=u)=="object"&&r.add(u),de(e),(s=e.s.charCodeAt(e.p++))===125)return n;s!==44&&$.x("expected comma or end of structure",e,e.p-1)}$.x("unfinished table",e,t)}function na(e){let t=e.p++,n=[],r;for(;e.p<e.s.length;){if(de(e),(r=e.s.charCodeAt(e.p))===93)return e.p++,n;if(n.push(en(e,93)),de(e),(r=e.s.charCodeAt(e.p++))===93)return n;r!==44&&$.x("expected comma or end of structure",e,e.p-1)}$.x("unfinished array",e,t)}var ds=y(()=>{as();fs();ps();We();});function ra(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 f=o.length-1;o=o[f],i=i[f].c}}if(a=t[u],(l=Object.hasOwn(o,a))&&i[a]?.t===0&&i[a]?.d)return null;if(!l){let f=a==="__proto__";if(e.uk&&(f||a==="constructor"))return!1;f&&(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 sa(e,t,n){(t===null||e.uk===2)&&$.x(t===null?"trying to redefine an already defined table or value":"document contains an unsafe property",e,n)}function Zn(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++,de(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=Un(n,93);c&&(e.charCodeAt(n.p)!==93&&$.x("expected end of table array declaration",n),n.p++);let f=ra(n,u,r,s,c?2:1);f?(l=f[2],a=f[1]):(sa(n,f,o),i=!0)}else{o=n.p;let c=Un(n),u=ra(n,c,a,l,0);!u&&!i&&sa(n,u,o),de(n,!0,!0);let f=en(n,void 0);u&&!i&&(u[1][u[0]]=f)}de(n,!0),n.p<e.length&&(o=e.charCodeAt(n.p))!==10&&(o!==13||e.charCodeAt(n.p+1)!==10)&&$.x("each key-value declaration must be followed by an end-of-line",n),de(n)}return r}var oa=y(()=>{ds();fs();ps();We();});function tn(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 Tm(e){for(let t=0;t<e.length;t++)if(tn(e[t])!=="object")return!1;return e.length!=0}function aa(e){return JSON.stringify(e).replaceAll("\x7F","\\u007f")}function $m(e){return aa(ia?e.toWellFormed():e)}function la(e){if(vm.test(e))return e;if(ia&&!e.isWellFormed())throw new RangeError("key contains illegal lone surrogates");return aa(e)}function ms(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 $m(e);case"date":if(isNaN(e.getTime()))throw new TypeError("cannot serialize invalid date");return e.toISOString();case"object":return Rm(e,n,r,s);case"array":return Am(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 Rm(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+=la(a)+" = "+ms(e[a],tn(e[a]),t-1,n,r)}return o+" }"}function Am(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+=ms(e[o],tn(e[o]),t-1,n,r)}return s+" ]"}function Om(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&&`
18
19
  `}[[${t}]]
19
- `,o+=fs(0,e[i],t,n,r,s);return o}function fs(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 f=Qt(t[u]);if(f==="symbol"||f==="function")throw new TypeError(`cannot serialize values of type '${f}'`);let p=Xi(u);if(f==="array"&&em(t[u]))a+=(a&&`
20
- `)+sm(t[u],n?`${n}.${p}`:p,r-1,s,o);else if(f==="object"){let d=n?`${n}.${p}`:p;a+=(a&&`
21
- `)+fs(d,t[u],d,r-1,s,o)}else i+=p,i+=" = ",i+=us(t[u],f,r,s,o),i+=`
20
+ `,o+=hs(0,e[i],t,n,r,s);return o}function hs(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 f=tn(t[u]);if(f==="symbol"||f==="function")throw new TypeError(`cannot serialize values of type '${f}'`);let d=la(u);if(f==="array"&&Tm(t[u]))a+=(a&&`
21
+ `)+Om(t[u],n?`${n}.${d}`:d,r-1,s,o);else if(f==="object"){let p=n?`${n}.${d}`:d;a+=(a&&`
22
+ `)+hs(p,t[u],p,r-1,s,o)}else i+=d,i+=" = ",i+=ms(t[u],f,r,s,o),i+=`
22
23
  `}}return e&&(i||!a)&&(i=i?`[${e}]
23
24
  ${i}`:`[${e}]`),i&&a?`${i}
24
- ${a}`:i||a}function ds(e,{maxDepth:t=1e3,numbersAsFloat:n=!1,strictTemporal:r=!1}={}){if(Qt(e)!=="object")throw new TypeError("stringify can only be called with an object");let s=fs(0,e,"",t,n,r);return s[s.length-1]!==`
25
+ ${a}`:i||a}function gs(e,{maxDepth:t=1e3,numbersAsFloat:n=!1,strictTemporal:r=!1}={}){if(tn(e)!=="object")throw new TypeError("stringify can only be called with an object");let s=hs(0,e,"",t,n,r);return s[s.length-1]!==`
25
26
  `?s+`
26
- `:s}var Qp,qi,Qi=h(()=>{Qp=/^[a-z0-9-_]+$/i,qi=!!"".isWellFormed});var ps={};Ft(ps,{TomlDate:()=>Ue,TomlError:()=>v,default:()=>om,parse:()=>Bn,stringify:()=>ds});var om,zn=h(()=>{Vi();Qi();ss();ze();om={parse:Bn,stringify:ds,TomlDate:Ue,TomlError:v}});var ma=X((PE,pa)=>{pa.exports=da;da.sync=Em;var ua=Re("fs");function Sm(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 fa(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:Sm(t,n)}function da(e,t,n){ua.stat(e,function(r,s){n(r,r?!1:fa(s,e,t))})}function Em(e,t){return fa(ua.statSync(e),e,t)}});var ka=X((NE,ba)=>{ba.exports=ga;ga.sync=vm;var ha=Re("fs");function ga(e,t,n){ha.stat(e,function(r,s){n(r,r?!1:ya(s,t))})}function vm(e,t){return ya(ha.statSync(e),t)}function ya(e,t){return e.isFile()&&Tm(e,t)}function Tm(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,f=n&c||n&l&&s===i||n&a&&r===o||n&u&&o===0;return f}});var wa=X((ME,_a)=>{var DE=Re("fs"),Zn;process.platform==="win32"||global.TESTING_WINDOWS?Zn=ma():Zn=ka();_a.exports=ms;ms.sync=$m;function ms(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){ms(e,t||{},function(o,i){o?s(o):r(i)})})}Zn(e,t||{},function(r,s){r&&(r.code==="EACCES"||t&&t.ignoreErrors)&&(r=null,s=!1),n(r,s)})}function $m(e,t){try{return Zn.sync(e,t||{})}catch(n){if(t&&t.ignoreErrors||n.code==="EACCES")return!1;throw n}}});var Ra=X((LE,$a)=>{var dt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",xa=Re("path"),Rm=dt?";":":",Sa=wa(),Ea=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),va=(e,t)=>{let n=t.colon||Rm,r=e.match(/\//)||dt&&e.match(/\\/)?[""]:[...dt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],s=dt?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=dt?s.split(n):[""];return dt&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:r,pathExt:o,pathExtExe:s}},Ta=(e,t,n)=>{typeof t=="function"&&(n=t,t={}),t||(t={});let{pathEnv:r,pathExt:s,pathExtExe:o}=va(e,t),i=[],a=c=>new Promise((u,f)=>{if(c===r.length)return t.all&&i.length?u(i):f(Ea(e));let p=r[c],d=/^".*"$/.test(p)?p.slice(1,-1):p,m=xa.join(d,e),y=!d&&/^\.[\\\/]/.test(e)?e.slice(0,2)+m:m;u(l(y,c,0))}),l=(c,u,f)=>new Promise((p,d)=>{if(f===s.length)return p(a(u+1));let m=s[f];Sa(c+m,{pathExt:o},(y,b)=>{if(!y&&b)if(t.all)i.push(c+m);else return p(c+m);return p(l(c,u,f+1))})});return n?a(0).then(c=>n(null,c),n):a(0)},Am=(e,t)=>{t=t||{};let{pathEnv:n,pathExt:r,pathExtExe:s}=va(e,t),o=[];for(let i=0;i<n.length;i++){let a=n[i],l=/^".*"$/.test(a)?a.slice(1,-1):a,c=xa.join(l,e),u=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;for(let f=0;f<r.length;f++){let p=u+r[f];try{if(Sa.sync(p,{pathExt:s}))if(t.all)o.push(p);else return p}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw Ea(e)};$a.exports=Ta;Ta.sync=Am});var Oa=X((FE,hs)=>{"use strict";var Aa=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};hs.exports=Aa;hs.exports.default=Aa});var Na=X((jE,Pa)=>{"use strict";var Ca=Re("path"),Om=Ra(),Cm=Oa();function Ia(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=Om.sync(e.command,{path:n[Cm({env:n})],pathExt:t?Ca.delimiter:void 0})}catch{}finally{o&&process.chdir(r)}return i&&(i=Ca.resolve(s?e.options.cwd:"",i)),i}function Im(e){return Ia(e)||Ia(e,!0)}Pa.exports=Im});var Da=X((HE,ys)=>{"use strict";var gs=/([()\][%!^"`<>&|;, *?])/g;function Pm(e){return e=e.replace(gs,"^$1"),e}function Nm(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(gs,"^$1"),t&&(e=e.replace(gs,"^$1")),e}ys.exports.command=Pm;ys.exports.argument=Nm});var La=X((BE,Ma)=>{"use strict";Ma.exports=/^#!(.*)/});var ja=X((zE,Fa)=>{"use strict";var Dm=La();Fa.exports=(e="")=>{let t=e.match(Dm);if(!t)return null;let[n,r]=t[0].replace(/#! ?/,"").split(" "),s=n.split("/").pop();return s==="env"?r:r?`${s} ${r}`:s}});var Ba=X((UE,Ha)=>{"use strict";var bs=Re("fs"),Mm=ja();function Lm(e){let n=Buffer.alloc(150),r;try{r=bs.openSync(e,"r"),bs.readSync(r,n,0,150,0),bs.closeSync(r)}catch{}return Mm(n.toString())}Ha.exports=Lm});var Ga=X((ZE,Za)=>{"use strict";var Fm=Re("path"),za=Na(),Ua=Da(),jm=Ba(),Hm=process.platform==="win32",Bm=/\.(?:com|exe)$/i,zm=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Um(e){e.file=za(e);let t=e.file&&jm(e.file);return t?(e.args.unshift(e.file),e.command=t,za(e)):e.file}function Zm(e){if(!Hm)return e;let t=Um(e),n=!Bm.test(t);if(e.options.forceShell||n){let r=zm.test(t);e.command=Fm.normalize(e.command),e.command=Ua.command(e.command),e.args=e.args.map(o=>Ua.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 Gm(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:Zm(r)}Za.exports=Gm});var Wa=X((GE,Ka)=>{"use strict";var ks=process.platform==="win32";function _s(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 Jm(e,t){if(!ks)return;let n=e.emit;e.emit=function(r,s){if(r==="exit"){let o=Ja(s,t);if(o)return n.call(e,"error",o)}return n.apply(e,arguments)}}function Ja(e,t){return ks&&e===1&&!t.file?_s(t.original,"spawn"):null}function Km(e,t){return ks&&e===1&&!t.file?_s(t.original,"spawnSync"):null}Ka.exports={hookChildProcess:Jm,verifyENOENT:Ja,verifyENOENTSync:Km,notFoundError:_s}});var Ya=X((JE,pt)=>{"use strict";var Va=Re("child_process"),ws=Ga(),xs=Wa();function qa(e,t,n){let r=ws(e,t,n),s=Va.spawn(r.command,r.args,r.options);return xs.hookChildProcess(s,r),s}function Wm(e,t,n){let r=ws(e,t,n),s=Va.spawnSync(r.command,r.args,r.options);return s.error=s.error||xs.verifyENOENTSync(s.status,r),s}pt.exports=qa;pt.exports.spawn=qa;pt.exports.sync=Wm;pt.exports._parse=ws;pt.exports._enoent=xs});function B(e,t){Xa.set(e,t)}function Gn(e){return Xa.get(e)}var Xa,W=h(()=>{"use strict";Xa=new Map});var N,Ss,w,de,tn=h(()=>{(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})(N||(N={}));(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Ss||(Ss={}));w=N.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),de=e=>{switch(typeof e){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(e)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":return Array.isArray(e)?w.array:e===null?w.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?w.promise:typeof Map<"u"&&e instanceof Map?w.map:typeof Set<"u"&&e instanceof Set?w.set:typeof Date<"u"&&e instanceof Date?w.date:w.object;default:return w.unknown}}});var g,Vm,V,Jn=h(()=>{tn();g=N.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"]),Vm=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),V=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,N.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()}};V.create=e=>new V(e)});var qm,xe,Es=h(()=>{Jn();tn();qm=(e,t)=>{let n;switch(e.code){case g.invalid_type:e.received===w.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case g.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,N.jsonStringifyReplacer)}`;break;case g.unrecognized_keys:n=`Unrecognized key(s) in object: ${N.joinValues(e.keys,", ")}`;break;case g.invalid_union:n="Invalid input";break;case g.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${N.joinValues(e.options)}`;break;case g.invalid_enum_value:n=`Invalid enum value. Expected ${N.joinValues(e.options)}, received '${e.received}'`;break;case g.invalid_arguments:n="Invalid function arguments";break;case g.invalid_return_type:n="Invalid function return type";break;case g.invalid_date:n="Invalid date";break;case g.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}"`:N.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case g.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 g.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 g.custom:n="Invalid input";break;case g.invalid_intersection_types:n="Intersection results could not be merged";break;case g.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case g.not_finite:n="Number must be finite";break;default:n=t.defaultError,N.assertNever(e)}return{message:n}},xe=qm});function Ym(e){Qa=e}function mt(){return Qa}var Qa,Kn=h(()=>{Es();Qa=xe});function _(e,t){let n=mt(),r=nn({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===xe?void 0:xe].filter(s=>!!s)});e.common.issues.push(r)}var nn,Xm,z,E,Ze,J,Wn,Vn,Ie,ht,vs=h(()=>{Kn();Es();nn=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}},Xm=[];z=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 E;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 E;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}}},E=Object.freeze({status:"aborted"}),Ze=e=>({status:"dirty",value:e}),J=e=>({status:"valid",value:e}),Wn=e=>e.status==="aborted",Vn=e=>e.status==="dirty",Ie=e=>e.status==="valid",ht=e=>typeof Promise<"u"&&e instanceof Promise});var el=h(()=>{});var x,tl=h(()=>{(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(x||(x={}))});function O(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}}function ol(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 hh(e){return new RegExp(`^${ol(e)}$`)}function il(e){let t=`${sl}T${ol(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 gh(e,t){return!!((t==="v4"||!t)&&lh.test(e)||(t==="v6"||!t)&&uh.test(e))}function yh(e,t){if(!sh.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 bh(e,t){return!!((t==="v4"||!t)&&ch.test(e)||(t==="v6"||!t)&&fh.test(e))}function kh(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}function gt(e){if(e instanceof q){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=ne.create(gt(r))}return new q({...e._def,shape:()=>t})}else return e instanceof ve?new ve({...e._def,type:gt(e.element)}):e instanceof ne?ne.create(gt(e.unwrap())):e instanceof me?me.create(gt(e.unwrap())):e instanceof pe?pe.create(e.items.map(t=>gt(t))):e}function $s(e,t){let n=de(e),r=de(t);if(e===t)return{valid:!0,data:e};if(n===w.object&&r===w.object){let s=N.objectKeys(t),o=N.objectKeys(e).filter(a=>s.indexOf(a)!==-1),i={...e,...t};for(let a of o){let l=$s(e[a],t[a]);if(!l.valid)return{valid:!1};i[a]=l.data}return{valid:!0,data:i}}else if(n===w.array&&r===w.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=$s(i,a);if(!l.valid)return{valid:!1};s.push(l.data)}return{valid:!0,data:s}}else return n===w.date&&r===w.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}function al(e,t){return new tt({values:e,typeName:$.ZodEnum,...O(t)})}function rl(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function ll(e,t={},n){return e?Ne.create().superRefine((r,s)=>{let o=e(r);if(o instanceof Promise)return o.then(i=>{if(!i){let a=rl(t,r),l=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:l})}});if(!o){let i=rl(t,r),a=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:a})}}):Ne.create()}var re,nl,I,Qm,eh,th,nh,rh,sh,oh,ih,ah,Ts,lh,ch,uh,fh,dh,ph,sl,mh,Pe,Ge,Je,Ke,We,yt,Ve,qe,Ne,Ee,ce,bt,ve,q,Ye,Se,qn,Xe,pe,Yn,kt,_t,Xn,Qe,et,tt,nt,De,se,ne,me,rt,st,wt,_h,rn,sn,ot,wh,$,xh,cl,ul,Sh,Eh,fl,vh,Th,$h,Rh,Ah,Oh,Ch,Ih,Ph,Nh,Dh,Mh,Lh,Fh,jh,Hh,Bh,zh,Uh,Zh,Gh,Jh,Kh,Wh,Vh,qh,Yh,Xh,Qh,eg,tg,ng,rg,sg,dl=h(()=>{Jn();Kn();tl();vs();tn();re=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}},nl=(e,t)=>{if(Ie(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 V(e.common.issues);return this._error=n,this._error}}};I=class{get description(){return this._def.description}_getType(t){return de(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:de(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new z,ctx:{common:t.parent.common,data:t.data,parsedType:de(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(ht(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:de(t)},s=this._parseSync({data:t,path:r.path,parent:r});return nl(r,s)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:de(t)};if(!this["~standard"].async)try{let r=this._parseSync({data:t,path:[],parent:n});return Ie(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=>Ie(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:de(t)},s=this._parse({data:t,path:r.path,parent:r}),o=await(ht(s)?s:Promise.resolve(s));return nl(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:g.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 se({schema:this,typeName:$.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 ne.create(this,this._def)}nullable(){return me.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ve.create(this)}promise(){return De.create(this,this._def)}or(t){return Ye.create([this,t],this._def)}and(t){return Xe.create(this,t,this._def)}transform(t){return new se({...O(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new rt({...O(this._def),innerType:this,defaultValue:n,typeName:$.ZodDefault})}brand(){return new rn({typeName:$.ZodBranded,type:this,...O(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new st({...O(this._def),innerType:this,catchValue:n,typeName:$.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return sn.create(this,t)}readonly(){return ot.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Qm=/^c[^\s-]{8,}$/i,eh=/^[0-9a-z]+$/,th=/^[0-9A-HJKMNP-TV-Z]{26}$/i,nh=/^[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,rh=/^[a-z0-9_-]{21}$/i,sh=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,oh=/^[-+]?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)?)??$/,ih=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ah="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",lh=/^(?:(?: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])$/,ch=/^(?:(?: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])$/,uh=/^(([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]))$/,fh=/^(([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])$/,dh=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ph=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,sl="((\\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])))",mh=new RegExp(`^${sl}$`);Pe=class e extends I{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==w.string){let o=this._getOrReturnCtx(t);return _(o,{code:g.invalid_type,expected:w.string,received:o.parsedType}),E}let r=new z,s;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(s=this._getOrReturnCtx(t,s),_(s,{code:g.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),_(s,{code:g.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?_(s,{code:g.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&_(s,{code:g.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")ih.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"email",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Ts||(Ts=new RegExp(ah,"u")),Ts.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"emoji",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")nh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"uuid",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")rh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"nanoid",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")Qm.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cuid",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")eh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cuid2",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")th.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"ulid",code:g.invalid_string,message:o.message}),r.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{s=this._getOrReturnCtx(t,s),_(s,{validation:"url",code:g.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),_(s,{validation:"regex",code:g.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),_(s,{code:g.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),_(s,{code:g.invalid_string,validation:{startsWith:o.value},message:o.message}),r.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(s=this._getOrReturnCtx(t,s),_(s,{code:g.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?il(o).test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:g.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?mh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:g.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?hh(o).test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:g.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?oh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"duration",code:g.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?gh(t.data,o.version)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"ip",code:g.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?yh(t.data,o.alg)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"jwt",code:g.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?bh(t.data,o.version)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cidr",code:g.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?dh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"base64",code:g.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?ph.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"base64url",code:g.invalid_string,message:o.message}),r.dirty()):N.assertNever(o);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(s=>t.test(s),{validation:n,code:g.invalid_string,...x.errToObj(r)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...x.errToObj(t)})}url(t){return this._addCheck({kind:"url",...x.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...x.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...x.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...x.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...x.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...x.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...x.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...x.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...x.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...x.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...x.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...x.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,...x.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,...x.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...x.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...x.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,...x.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...x.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...x.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...x.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...x.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...x.errToObj(n)})}nonempty(t){return this.min(1,x.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}};Pe.create=e=>new Pe({checks:[],typeName:$.ZodString,coerce:e?.coerce??!1,...O(e)});Ge=class e extends I{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)!==w.number){let o=this._getOrReturnCtx(t);return _(o,{code:g.invalid_type,expected:w.number,received:o.parsedType}),E}let r,s=new z;for(let o of this._def.checks)o.kind==="int"?N.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),_(r,{code:g.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),_(r,{code:g.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),_(r,{code:g.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="multipleOf"?kh(t.data,o.value)!==0&&(r=this._getOrReturnCtx(t,r),_(r,{code:g.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),_(r,{code:g.not_finite,message:o.message}),s.dirty()):N.assertNever(o);return{status:s.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,x.toString(n))}gt(t,n){return this.setLimit("min",t,!1,x.toString(n))}lte(t,n){return this.setLimit("max",t,!0,x.toString(n))}lt(t,n){return this.setLimit("max",t,!1,x.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:x.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:x.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:x.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:x.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.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"&&N.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)}};Ge.create=e=>new Ge({checks:[],typeName:$.ZodNumber,coerce:e?.coerce||!1,...O(e)});Je=class e extends I{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)!==w.bigint)return this._getInvalidInput(t);let r,s=new z;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),_(r,{code:g.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),_(r,{code:g.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),_(r,{code:g.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):N.assertNever(o);return{status:s.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return _(n,{code:g.invalid_type,expected:w.bigint,received:n.parsedType}),E}gte(t,n){return this.setLimit("min",t,!0,x.toString(n))}gt(t,n){return this.setLimit("min",t,!1,x.toString(n))}lte(t,n){return this.setLimit("max",t,!0,x.toString(n))}lt(t,n){return this.setLimit("max",t,!1,x.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:x.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:x.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:x.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}};Je.create=e=>new Je({checks:[],typeName:$.ZodBigInt,coerce:e?.coerce??!1,...O(e)});Ke=class extends I{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==w.boolean){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.boolean,received:r.parsedType}),E}return J(t.data)}};Ke.create=e=>new Ke({typeName:$.ZodBoolean,coerce:e?.coerce||!1,...O(e)});We=class e extends I{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==w.date){let o=this._getOrReturnCtx(t);return _(o,{code:g.invalid_type,expected:w.date,received:o.parsedType}),E}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return _(o,{code:g.invalid_date}),E}let r=new z,s;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(s=this._getOrReturnCtx(t,s),_(s,{code:g.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),_(s,{code:g.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):N.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:x.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:x.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}};We.create=e=>new We({checks:[],coerce:e?.coerce||!1,typeName:$.ZodDate,...O(e)});yt=class extends I{_parse(t){if(this._getType(t)!==w.symbol){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.symbol,received:r.parsedType}),E}return J(t.data)}};yt.create=e=>new yt({typeName:$.ZodSymbol,...O(e)});Ve=class extends I{_parse(t){if(this._getType(t)!==w.undefined){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.undefined,received:r.parsedType}),E}return J(t.data)}};Ve.create=e=>new Ve({typeName:$.ZodUndefined,...O(e)});qe=class extends I{_parse(t){if(this._getType(t)!==w.null){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.null,received:r.parsedType}),E}return J(t.data)}};qe.create=e=>new qe({typeName:$.ZodNull,...O(e)});Ne=class extends I{constructor(){super(...arguments),this._any=!0}_parse(t){return J(t.data)}};Ne.create=e=>new Ne({typeName:$.ZodAny,...O(e)});Ee=class extends I{constructor(){super(...arguments),this._unknown=!0}_parse(t){return J(t.data)}};Ee.create=e=>new Ee({typeName:$.ZodUnknown,...O(e)});ce=class extends I{_parse(t){let n=this._getOrReturnCtx(t);return _(n,{code:g.invalid_type,expected:w.never,received:n.parsedType}),E}};ce.create=e=>new ce({typeName:$.ZodNever,...O(e)});bt=class extends I{_parse(t){if(this._getType(t)!==w.undefined){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.void,received:r.parsedType}),E}return J(t.data)}};bt.create=e=>new bt({typeName:$.ZodVoid,...O(e)});ve=class e extends I{_parse(t){let{ctx:n,status:r}=this._processInputParams(t),s=this._def;if(n.parsedType!==w.array)return _(n,{code:g.invalid_type,expected:w.array,received:n.parsedType}),E;if(s.exactLength!==null){let i=n.data.length>s.exactLength.value,a=n.data.length<s.exactLength.value;(i||a)&&(_(n,{code:i?g.too_big:g.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&&(_(n,{code:g.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&&(_(n,{code:g.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 re(n,i,n.path,a)))).then(i=>z.mergeArray(r,i));let o=[...n.data].map((i,a)=>s.type._parseSync(new re(n,i,n.path,a)));return z.mergeArray(r,o)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:x.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:x.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:x.toString(n)}})}nonempty(t){return this.min(1,t)}};ve.create=(e,t)=>new ve({type:e,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...O(t)});q=class e extends I{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=N.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==w.object){let c=this._getOrReturnCtx(t);return _(c,{code:g.invalid_type,expected:w.object,received:c.parsedType}),E}let{status:r,ctx:s}=this._processInputParams(t),{shape:o,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ce&&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],f=s.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new re(s,f,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof ce){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&&(_(s,{code:g.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 f=s.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new re(s,f,s.path,u)),alwaysSet:u in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let f=await u.key,p=await u.value;c.push({key:f,value:p,alwaysSet:u.alwaysSet})}return c}).then(c=>z.mergeObjectSync(r,c)):z.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(t){return x.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:x.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:$.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 N.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 N.objectKeys(this.shape))t[r]||(n[r]=this.shape[r]);return new e({...this._def,shape:()=>n})}deepPartial(){return gt(this)}partial(t){let n={};for(let r of N.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 N.objectKeys(this.shape))if(t&&!t[r])n[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof ne;)o=o._def.innerType;n[r]=o}return new e({...this._def,shape:()=>n})}keyof(){return al(N.objectKeys(this.shape))}};q.create=(e,t)=>new q({shape:()=>e,unknownKeys:"strip",catchall:ce.create(),typeName:$.ZodObject,...O(t)});q.strictCreate=(e,t)=>new q({shape:()=>e,unknownKeys:"strict",catchall:ce.create(),typeName:$.ZodObject,...O(t)});q.lazycreate=(e,t)=>new q({shape:e,unknownKeys:"strip",catchall:ce.create(),typeName:$.ZodObject,...O(t)});Ye=class extends I{_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 V(a.ctx.common.issues));return _(n,{code:g.invalid_union,unionErrors:i}),E}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 V(l));return _(n,{code:g.invalid_union,unionErrors:a}),E}}get options(){return this._def.options}};Ye.create=(e,t)=>new Ye({options:e,typeName:$.ZodUnion,...O(t)});Se=e=>e instanceof Qe?Se(e.schema):e instanceof se?Se(e.innerType()):e instanceof et?[e.value]:e instanceof tt?e.options:e instanceof nt?N.objectValues(e.enum):e instanceof rt?Se(e._def.innerType):e instanceof Ve?[void 0]:e instanceof qe?[null]:e instanceof ne?[void 0,...Se(e.unwrap())]:e instanceof me?[null,...Se(e.unwrap())]:e instanceof rn||e instanceof ot?Se(e.unwrap()):e instanceof st?Se(e._def.innerType):[],qn=class e extends I{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.object)return _(n,{code:g.invalid_type,expected:w.object,received:n.parsedType}),E;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}):(_(n,{code:g.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),E)}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=Se(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:$.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:s,...O(r)})}};Xe=class extends I{_parse(t){let{status:n,ctx:r}=this._processInputParams(t),s=(o,i)=>{if(Wn(o)||Wn(i))return E;let a=$s(o.value,i.value);return a.valid?((Vn(o)||Vn(i))&&n.dirty(),{status:n.value,value:a.data}):(_(r,{code:g.invalid_intersection_types}),E)};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}))}};Xe.create=(e,t,n)=>new Xe({left:e,right:t,typeName:$.ZodIntersection,...O(n)});pe=class e extends I{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==w.array)return _(r,{code:g.invalid_type,expected:w.array,received:r.parsedType}),E;if(r.data.length<this._def.items.length)return _(r,{code:g.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),E;!this._def.rest&&r.data.length>this._def.items.length&&(_(r,{code:g.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 re(r,i,r.path,a)):null}).filter(i=>!!i);return r.common.async?Promise.all(o).then(i=>z.mergeArray(n,i)):z.mergeArray(n,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};pe.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new pe({items:e,typeName:$.ZodTuple,rest:null,...O(t)})};Yn=class e extends I{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!==w.object)return _(r,{code:g.invalid_type,expected:w.object,received:r.parsedType}),E;let s=[],o=this._def.keyType,i=this._def.valueType;for(let a in r.data)s.push({key:o._parse(new re(r,a,r.path,a)),value:i._parse(new re(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?z.mergeObjectAsync(n,s):z.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof I?new e({keyType:t,valueType:n,typeName:$.ZodRecord,...O(r)}):new e({keyType:Pe.create(),valueType:t,typeName:$.ZodRecord,...O(n)})}},kt=class extends I{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!==w.map)return _(r,{code:g.invalid_type,expected:w.map,received:r.parsedType}),E;let s=this._def.keyType,o=this._def.valueType,i=[...r.data.entries()].map(([a,l],c)=>({key:s._parse(new re(r,a,r.path,[c,"key"])),value:o._parse(new re(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 E;(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 E;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}}}};kt.create=(e,t,n)=>new kt({valueType:t,keyType:e,typeName:$.ZodMap,...O(n)});_t=class e extends I{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==w.set)return _(r,{code:g.invalid_type,expected:w.set,received:r.parsedType}),E;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(_(r,{code:g.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&&(_(r,{code:g.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 E;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 re(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:x.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:x.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};_t.create=(e,t)=>new _t({valueType:e,minSize:null,maxSize:null,typeName:$.ZodSet,...O(t)});Xn=class e extends I{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.function)return _(n,{code:g.invalid_type,expected:w.function,received:n.parsedType}),E;function r(a,l){return nn({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,mt(),xe].filter(c=>!!c),issueData:{code:g.invalid_arguments,argumentsError:l}})}function s(a,l){return nn({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,mt(),xe].filter(c=>!!c),issueData:{code:g.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof De){let a=this;return J(async function(...l){let c=new V([]),u=await a._def.args.parseAsync(l,o).catch(d=>{throw c.addIssue(r(l,d)),c}),f=await Reflect.apply(i,this,u);return await a._def.returns._def.type.parseAsync(f,o).catch(d=>{throw c.addIssue(s(f,d)),c})})}else{let a=this;return J(function(...l){let c=a._def.args.safeParse(l,o);if(!c.success)throw new V([r(l,c.error)]);let u=Reflect.apply(i,this,c.data),f=a._def.returns.safeParse(u,o);if(!f.success)throw new V([s(u,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:pe.create(t).rest(Ee.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||pe.create([]).rest(Ee.create()),returns:n||Ee.create(),typeName:$.ZodFunction,...O(r)})}},Qe=class extends I{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})}};Qe.create=(e,t)=>new Qe({getter:e,typeName:$.ZodLazy,...O(t)});et=class extends I{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return _(n,{received:n.data,code:g.invalid_literal,expected:this._def.value}),E}return{status:"valid",value:t.data}}get value(){return this._def.value}};et.create=(e,t)=>new et({value:e,typeName:$.ZodLiteral,...O(t)});tt=class e extends I{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),r=this._def.values;return _(n,{expected:N.joinValues(r),received:n.parsedType,code:g.invalid_type}),E}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 _(n,{received:n.data,code:g.invalid_enum_value,options:r}),E}return J(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})}};tt.create=al;nt=class extends I{_parse(t){let n=N.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==w.string&&r.parsedType!==w.number){let s=N.objectValues(n);return _(r,{expected:N.joinValues(s),received:r.parsedType,code:g.invalid_type}),E}if(this._cache||(this._cache=new Set(N.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let s=N.objectValues(n);return _(r,{received:r.data,code:g.invalid_enum_value,options:s}),E}return J(t.data)}get enum(){return this._def.values}};nt.create=(e,t)=>new nt({values:e,typeName:$.ZodNativeEnum,...O(t)});De=class extends I{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.promise&&n.common.async===!1)return _(n,{code:g.invalid_type,expected:w.promise,received:n.parsedType}),E;let r=n.parsedType===w.promise?n.data:Promise.resolve(n.data);return J(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};De.create=(e,t)=>new De({type:e,typeName:$.ZodPromise,...O(t)});se=class extends I{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.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=>{_(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 E;let l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?E:l.status==="dirty"?Ze(l.value):n.value==="dirty"?Ze(l.value):l});{if(n.value==="aborted")return E;let a=this._def.schema._parseSync({data:i,path:r.path,parent:r});return a.status==="aborted"?E:a.status==="dirty"?Ze(a.value):n.value==="dirty"?Ze(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"?E:(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"?E:(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(!Ie(i))return E;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=>Ie(i)?Promise.resolve(s.transform(i.value,o)).then(a=>({status:n.value,value:a})):E);N.assertNever(s)}};se.create=(e,t,n)=>new se({schema:e,typeName:$.ZodEffects,effect:t,...O(n)});se.createWithPreprocess=(e,t,n)=>new se({schema:t,effect:{type:"preprocess",transform:e},typeName:$.ZodEffects,...O(n)});ne=class extends I{_parse(t){return this._getType(t)===w.undefined?J(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};ne.create=(e,t)=>new ne({innerType:e,typeName:$.ZodOptional,...O(t)});me=class extends I{_parse(t){return this._getType(t)===w.null?J(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};me.create=(e,t)=>new me({innerType:e,typeName:$.ZodNullable,...O(t)});rt=class extends I{_parse(t){let{ctx:n}=this._processInputParams(t),r=n.data;return n.parsedType===w.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};rt.create=(e,t)=>new rt({innerType:e,typeName:$.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...O(t)});st=class extends I{_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 ht(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new V(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new V(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};st.create=(e,t)=>new st({innerType:e,typeName:$.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...O(t)});wt=class extends I{_parse(t){if(this._getType(t)!==w.nan){let r=this._getOrReturnCtx(t);return _(r,{code:g.invalid_type,expected:w.nan,received:r.parsedType}),E}return{status:"valid",value:t.data}}};wt.create=e=>new wt({typeName:$.ZodNaN,...O(e)});_h=Symbol("zod_brand"),rn=class extends I{_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}},sn=class e extends I{_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"?E:o.status==="dirty"?(n.dirty(),Ze(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"?E: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:$.ZodPipeline})}},ot=class extends I{_parse(t){let n=this._def.innerType._parse(t),r=s=>(Ie(s)&&(s.value=Object.freeze(s.value)),s);return ht(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};ot.create=(e,t)=>new ot({innerType:e,typeName:$.ZodReadonly,...O(t)});wh={object:q.lazycreate};(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"})($||($={}));xh=(e,t={message:`Input not instance of ${e.name}`})=>ll(n=>n instanceof e,t),cl=Pe.create,ul=Ge.create,Sh=wt.create,Eh=Je.create,fl=Ke.create,vh=We.create,Th=yt.create,$h=Ve.create,Rh=qe.create,Ah=Ne.create,Oh=Ee.create,Ch=ce.create,Ih=bt.create,Ph=ve.create,Nh=q.create,Dh=q.strictCreate,Mh=Ye.create,Lh=qn.create,Fh=Xe.create,jh=pe.create,Hh=Yn.create,Bh=kt.create,zh=_t.create,Uh=Xn.create,Zh=Qe.create,Gh=et.create,Jh=tt.create,Kh=nt.create,Wh=De.create,Vh=se.create,qh=ne.create,Yh=me.create,Xh=se.createWithPreprocess,Qh=sn.create,eg=()=>cl().optional(),tg=()=>ul().optional(),ng=()=>fl().optional(),rg={string:(e=>Pe.create({...e,coerce:!0})),number:(e=>Ge.create({...e,coerce:!0})),boolean:(e=>Ke.create({...e,coerce:!0})),bigint:(e=>Je.create({...e,coerce:!0})),date:(e=>We.create({...e,coerce:!0}))},sg=E});var k={};Ft(k,{BRAND:()=>_h,DIRTY:()=>Ze,EMPTY_PATH:()=>Xm,INVALID:()=>E,NEVER:()=>sg,OK:()=>J,ParseStatus:()=>z,Schema:()=>I,ZodAny:()=>Ne,ZodArray:()=>ve,ZodBigInt:()=>Je,ZodBoolean:()=>Ke,ZodBranded:()=>rn,ZodCatch:()=>st,ZodDate:()=>We,ZodDefault:()=>rt,ZodDiscriminatedUnion:()=>qn,ZodEffects:()=>se,ZodEnum:()=>tt,ZodError:()=>V,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>Xn,ZodIntersection:()=>Xe,ZodIssueCode:()=>g,ZodLazy:()=>Qe,ZodLiteral:()=>et,ZodMap:()=>kt,ZodNaN:()=>wt,ZodNativeEnum:()=>nt,ZodNever:()=>ce,ZodNull:()=>qe,ZodNullable:()=>me,ZodNumber:()=>Ge,ZodObject:()=>q,ZodOptional:()=>ne,ZodParsedType:()=>w,ZodPipeline:()=>sn,ZodPromise:()=>De,ZodReadonly:()=>ot,ZodRecord:()=>Yn,ZodSchema:()=>I,ZodSet:()=>_t,ZodString:()=>Pe,ZodSymbol:()=>yt,ZodTransformer:()=>se,ZodTuple:()=>pe,ZodType:()=>I,ZodUndefined:()=>Ve,ZodUnion:()=>Ye,ZodUnknown:()=>Ee,ZodVoid:()=>bt,addIssueToContext:()=>_,any:()=>Ah,array:()=>Ph,bigint:()=>Eh,boolean:()=>fl,coerce:()=>rg,custom:()=>ll,date:()=>vh,datetimeRegex:()=>il,defaultErrorMap:()=>xe,discriminatedUnion:()=>Lh,effect:()=>Vh,enum:()=>Jh,function:()=>Uh,getErrorMap:()=>mt,getParsedType:()=>de,instanceof:()=>xh,intersection:()=>Fh,isAborted:()=>Wn,isAsync:()=>ht,isDirty:()=>Vn,isValid:()=>Ie,late:()=>wh,lazy:()=>Zh,literal:()=>Gh,makeIssue:()=>nn,map:()=>Bh,nan:()=>Sh,nativeEnum:()=>Kh,never:()=>Ch,null:()=>Rh,nullable:()=>Yh,number:()=>ul,object:()=>Nh,objectUtil:()=>Ss,oboolean:()=>ng,onumber:()=>tg,optional:()=>qh,ostring:()=>eg,pipeline:()=>Qh,preprocess:()=>Xh,promise:()=>Wh,quotelessJson:()=>Vm,record:()=>Hh,set:()=>zh,setErrorMap:()=>Ym,strictObject:()=>Dh,string:()=>cl,symbol:()=>Th,transformer:()=>Vh,tuple:()=>jh,undefined:()=>$h,union:()=>Mh,unknown:()=>Oh,util:()=>N,void:()=>Ih});var Rs=h(()=>{Kn();vs();el();tn();dl();Jn()});var xt=h(()=>{Rs();Rs()});var Me,on=h(()=>{"use strict";xt();Me=k.object({slug:k.string().min(1).max(64),description:k.string().max(255).optional(),match_command:k.string().min(1),priority:k.number().int().default(50),strip_ansi:k.boolean().default(!1),strip_lines_matching:k.array(k.string()).default([]),drop_lines_matching:k.array(k.string()).default([]),keep_failures:k.boolean().default(!1),strip_on_failure:k.boolean().default(!1),fold_passing:k.boolean().default(!1),fold_passing_threshold:k.number().int().positive().max(1e3).optional(),mask_abs_paths:k.boolean().default(!1),preserve_exact:k.boolean().default(!1),truncate_lines_at:k.number().int().positive().max(1e4).optional(),max_lines:k.number().int().positive().max(1e5).optional(),scale_with_level:k.boolean().default(!0),transform:k.string().max(64).optional(),transform_on_failure:k.boolean().default(!1),on_empty:k.string().max(255).optional()})});import{readdir as og,readFile as ig}from"node:fs/promises";import{join as ml,dirname as ag}from"node:path";import{fileURLToPath as lg}from"node:url";function fg(){return!1}async function hl(){return St||(fg()?(St=await dg(ug),St):(!pl&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
27
- `),pl=!0),St=new Map,St))}async function dg(e){let t=new Map,n,r;try{n=(await Promise.resolve().then(()=>(zn(),ps))).parse,r=(await og(e)).filter(s=>s.endsWith(".toml"))}catch{return t}for(let s of r){let o=await ig(ml(e,s),"utf8"),a=n(o).filters;if(a)for(let[l,c]of Object.entries(a)){let u=Me.parse({slug:l,...c});t.set(l,{...u,matchRegex:new RegExp(u.match_command)})}}return t}var cg,ug,St,pl,gl=h(()=>{"use strict";on();cg=ag(lg(import.meta.url)),ug=process.env.TOKMIZER_FILTERS_DIR||ml(cg,"..","..","filters"),St=null,pl=!1});var _l={};Ft(_l,{OutputVerbosity:()=>bl,ReducerLevel:()=>kl,Settings:()=>Et,slugKey:()=>ee});import{createHash as pg}from"node:crypto";function ee(e){let t=yl.get(e);return t||(t=pg("sha256").update(`tkr:${e}`).digest("hex").slice(0,16),yl.set(e,t)),t}var bl,kl,Et,yl,Le=h(()=>{"use strict";xt();bl=k.enum(["normal","compact","minimal"]),kl=k.enum(["off","light","balanced","max"]),Et=k.object({enabled:k.boolean().default(!0),telemetryOptIn:k.boolean().default(!0),outputVerbosity:bl.default("compact"),reducer:kl.default("off"),filters:k.object({enableAll:k.boolean().default(!0),disabled:k.array(k.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),yl=new Map});function vt(e,t,n,r=t){let s=wl.get(r);s||(s=new Map,wl.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(ee(l.slug))||l.matchRegex.test(e)&&(!a||l.priority>a.priority)&&(a=l);if(s.size>=mg){let l=s.keys().next().value;l&&s.delete(l)}return s.set(o,a),a}var wl,mg,Qn=h(()=>{"use strict";Le();wl=new WeakMap,mg=256});function he(e){return e.replace(hg,"").replace(gg,"")}var hg,gg,an=h(()=>{"use strict";hg=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,gg=/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g});function As(e,t){return t.length===0?e:e.filter(n=>!t.some(r=>r.test(n)))}var xl=h(()=>{"use strict"});function Sl(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`})}var El=h(()=>{"use strict"});function Tt(e){return`\u2026 (${e} more lines omitted)`}function vl(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),Tt(s.length),...e.slice(e.length-r)],dropped:s}}var Os=h(()=>{"use strict"});function Tl(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)yg.test(a)&&!oe.test(a)?(i.push(a),s+=1):(o(i),i=[],s=0,r.push(a));return o(i),r}var yg,oe,ln=h(()=>{"use strict";yg=/^\s*(?:[✓✔√]|ok )/,oe=/✕|✗|×|\bFAIL\b|\bERROR\b|\bFATAL\b|\bError|\berror|Expected|Received|\bfailed\b|^\s*Tests?:|^\s*Test Suites?:/});function $l(e){return e.map(t=>t.replace(bg,n=>{let r=n.split("/").filter(Boolean);return r.length<=2?n:`\u2026/${r.slice(-2).join("/")}`}))}var bg,Rl=h(()=>{"use strict";bg=/(?:\/[\w.@+-]+){3,}/g});function Sg(e){let t=wg.exec(e);return!t||xg.has(t[1])?!1:!/=>|\bfunction\b/.test(t[2])}function vg(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 Tg(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==="&"))&&vg(e,s+1,o)&&(r=o),s+=1;continue}o==="{"||o==="("||o==="["?n+=1:(o==="}"||o===")"||o==="]")&&(n-=1),s+=1}return n}function Rg(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 Cs(e){let t=new Array(e.length).fill(!1);for(let n=0;n<e.length;n+=1){let r=$g.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 cn(e,t=3,n=!1){let r=[],s=0;for(;s<e.length;){let o=e[s];if(kg.test(o)&&_g.test(o)||Sg(o)||Eg.test(o)){let i={inBlockComment:!1,inTemplate:!1},a=0,l=s,c=!1;for(;l<e.length&&l-s<200;)if(a+=Tg(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 f=u-2,p=/^\s*/.exec(e[s+1]??"")?.[0]??" ";r.push(o),r.push(Rg(p,f,n?s+2:null));for(let d=0;d<f-1;d++)r.push("");r.push(e[l-1]),s=l;continue}}r.push(o),s+=1}return r}function tr(e){let t=e.slice(0,4096);return!(!Ag.test(t)||t.split(`
28
- `).length<6)}var kg,_g,wg,xg,Eg,er,$g,Ag,$t=h(()=>{"use strict";kg=/^(\s*)(?:export\s+)?(?:async\s+)?(?:function|interface|type|const|let|var|def|fn|impl|trait|struct|enum)\s+[\w$]+/,_g=/\{\s*$/,wg=/^\s*(?:(?:public|private|protected|static|async|get|set|readonly|override)\s+)*([\w$]+)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\{\s*$/,xg=new Set(["if","for","while","switch","catch","do","with","return","else","function","await","yield"]);Eg=/^\s*(?:if|for|while|switch|try|do)\b[^{}]*\{\s*$/;er=/^\s*… \d+ lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/,$g=/^\s*… (\d+) lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/;Ag=/\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 Ml(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(Pl.test(s.replace(Il,""))&&!Nl.test(s)&&!Dl.test(s)){n+=1;continue}r(),t.push(s)}return r(),t}function Cl(e){if(e.trim()===""||/^\s/.test(e)||Nl.test(e)||Dl.test(e)||Cg.test(e))return null;let t=e.replace(Il,"");return Pl.test(t)||Og.test(t)?"\0verbose":e.replace(/\d+/g,"#")}function Ll(e){let t=[],n=0;for(;n<e.length;){let r=Cl(e[n]),s=n+1;if(r!==null)for(;s<e.length&&Cl(e[s])===r;)s+=1;let o=s-n;r===null||o<Ig?t.push(...e.slice(n,s)):(t.push(...e.slice(n,n+Al)),t.push(`\u2026 ${o-Al-Ol} similar log lines dropped \u2026`),t.push(...e.slice(s-Ol,s))),n=s}return t}function nr(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.trim()?`${r} \xD7${n}`:r),r=e[s],n=1}return t.push(n>1&&r.trim()?`${r} \xD7${n}`:r),t}function Fl(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 Il,Pl,Nl,Dl,Og,Cg,Ig,Al,Ol,rr=h(()=>{"use strict";ln();Il=/^\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*/,Pl=/^\s*(?:\[(?:DEBUG|TRACE|INFO|VERBOSE)\]|(?:DEBUG|TRACE|INFO|VERBOSE)(?!\s*:))(?=\s|:|$)(?!\s*[+\-*\/%&|^?]*=)/,Nl=new RegExp(oe.source,"i"),Dl=/\bWARN(?:ING)?\b/i;Og=/^(?:DEBUG|INFO):[\w.-]+:/,Cg=/Error|Exception|Traceback|panic|fail|FAIL|Fail|SEVERE|CRITICAL/,Ig=8,Al=1,Ol=2});function Mg(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 Lg(e){let t=/^(\d+(?:[.,]\d+)?)([KMGTPkmgtp])?/.exec(e),n=t[2]?Dg[t[2].toLowerCase()]:0;return Number(t[1].replace(",","."))*1024**n}function Fg(e){let t=Ng.exec(e);if(!t)return null;let n=t[4].trim();if(n===""||n==="."||n==="..")return null;let r=t[3],s=/^\d+$/.test(r)?Mg(Number(r)):r,o=e.charCodeAt(0)===100;return{name:n,size:s,sizeKey:Lg(r),isDir:o,mode:t[1],owner:t[2].replace(/\s+/g," ")}}function jg(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 jl(e,t){let n=[],r=e;for(let s of t)r.length+1+s.length>zg&&r!==e&&r!==" "&&(n.push(r),r=" "),r+=r===" "?s:` ${s}`;return n.push(r),n}function Ug(e){let t=e.endsWith("/")?"":e,n=t.indexOf(".",1);return n>0?t.slice(n):""}function Zg(e){let t=e.filter(l=>l.trim()!=="");if(t.length<Hg)return null;let n=e.findIndex(l=>l.trim()!==""),r=e.length-1-[...e].reverse().findIndex(l=>l.trim()!=="");if(e.slice(n,r+1).some(l=>l.trim()==="")||t.some(l=>l.endsWith(":")||Bl.test(l.trim())||Hl.test(l)||/^total\s+\d+/.test(l)||l!==l.trimEnd()||l.startsWith(" "))||t.filter(l=>/\s/.test(l)).length>t.length*.2)return null;let s=l=>/\s|"/.test(l)?JSON.stringify(l):l,o=new Map;for(let l of t){let c=Ug(l),u=o.get(c)??[];u.push(l),o.set(c,u)}let i=[`${t.length} entries:`],a=[];for(let[l,c]of[...o.entries()].sort((u,f)=>f[1].length-u[1].length||u[0].localeCompare(f[0])))l&&c.length>=Bg&&c.every(u=>!/\s|"/.test(u))?i.push(...jl(`*${l} (${c.length}):`,c.map(u=>u.slice(0,-l.length)))):a.push(...c);return a.length&&i.push(...jl(`other (${a.length}):`,a.map(s))),i.join(`
27
+ `:s}var vm,ia,ca=y(()=>{vm=/^[a-z0-9-_]+$/i,ia=!!"".isWellFormed});var ys={};Bt(ys,{TomlDate:()=>Je,TomlError:()=>$,default:()=>Cm,parse:()=>Zn,stringify:()=>gs});var Cm,Gn=y(()=>{oa();ca();ls();We();Cm={parse:Zn,stringify:gs,TomlDate:Je,TomlError:$}});var Ta=Q((Fv,va)=>{va.exports=Ea;Ea.sync=ah;var xa=Ce("fs");function ih(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 Sa(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:ih(t,n)}function Ea(e,t,n){xa.stat(e,function(r,s){n(r,r?!1:Sa(s,e,t))})}function ah(e,t){return Sa(xa.statSync(e),e,t)}});var Ca=Q((jv,Oa)=>{Oa.exports=Ra;Ra.sync=lh;var $a=Ce("fs");function Ra(e,t,n){$a.stat(e,function(r,s){n(r,r?!1:Aa(s,t))})}function lh(e,t){return Aa($a.statSync(e),t)}function Aa(e,t){return e.isFile()&&ch(e,t)}function ch(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,f=n&c||n&l&&s===i||n&a&&r===o||n&u&&o===0;return f}});var Pa=Q((Bv,Ia)=>{var Hv=Ce("fs"),Kn;process.platform==="win32"||global.TESTING_WINDOWS?Kn=Ta():Kn=Ca();Ia.exports=ks;ks.sync=uh;function ks(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){ks(e,t||{},function(o,i){o?s(o):r(i)})})}Kn(e,t||{},function(r,s){r&&(r.code==="EACCES"||t&&t.ignoreErrors)&&(r=null,s=!1),n(r,s)})}function uh(e,t){try{return Kn.sync(e,t||{})}catch(n){if(t&&t.ignoreErrors||n.code==="EACCES")return!1;throw n}}});var Ha=Q((zv,ja)=>{var yt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Na=Ce("path"),fh=yt?";":":",Da=Pa(),Ma=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),La=(e,t)=>{let n=t.colon||fh,r=e.match(/\//)||yt&&e.match(/\\/)?[""]:[...yt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(n)],s=yt?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=yt?s.split(n):[""];return yt&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:r,pathExt:o,pathExtExe:s}},Fa=(e,t,n)=>{typeof t=="function"&&(n=t,t={}),t||(t={});let{pathEnv:r,pathExt:s,pathExtExe:o}=La(e,t),i=[],a=c=>new Promise((u,f)=>{if(c===r.length)return t.all&&i.length?u(i):f(Ma(e));let d=r[c],p=/^".*"$/.test(d)?d.slice(1,-1):d,g=Na.join(p,e),h=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+g:g;u(l(h,c,0))}),l=(c,u,f)=>new Promise((d,p)=>{if(f===s.length)return d(a(u+1));let g=s[f];Da(c+g,{pathExt:o},(h,m)=>{if(!h&&m)if(t.all)i.push(c+g);else return d(c+g);return d(l(c,u,f+1))})});return n?a(0).then(c=>n(null,c),n):a(0)},dh=(e,t)=>{t=t||{};let{pathEnv:n,pathExt:r,pathExtExe:s}=La(e,t),o=[];for(let i=0;i<n.length;i++){let a=n[i],l=/^".*"$/.test(a)?a.slice(1,-1):a,c=Na.join(l,e),u=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;for(let f=0;f<r.length;f++){let d=u+r[f];try{if(Da.sync(d,{pathExt:s}))if(t.all)o.push(d);else return d}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw Ma(e)};ja.exports=Fa;Fa.sync=dh});var za=Q((Uv,_s)=>{"use strict";var Ba=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};_s.exports=Ba;_s.exports.default=Ba});var Wa=Q((Zv,Ga)=>{"use strict";var Ua=Ce("path"),ph=Ha(),mh=za();function Za(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=ph.sync(e.command,{path:n[mh({env:n})],pathExt:t?Ua.delimiter:void 0})}catch{}finally{o&&process.chdir(r)}return i&&(i=Ua.resolve(s?e.options.cwd:"",i)),i}function hh(e){return Za(e)||Za(e,!0)}Ga.exports=hh});var Ja=Q((Gv,xs)=>{"use strict";var ws=/([()\][%!^"`<>&|;, *?])/g;function gh(e){return e=e.replace(ws,"^$1"),e}function yh(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(ws,"^$1"),t&&(e=e.replace(ws,"^$1")),e}xs.exports.command=gh;xs.exports.argument=yh});var Va=Q((Wv,Ka)=>{"use strict";Ka.exports=/^#!(.*)/});var Ya=Q((Jv,qa)=>{"use strict";var bh=Va();qa.exports=(e="")=>{let t=e.match(bh);if(!t)return null;let[n,r]=t[0].replace(/#! ?/,"").split(" "),s=n.split("/").pop();return s==="env"?r:r?`${s} ${r}`:s}});var Qa=Q((Kv,Xa)=>{"use strict";var Ss=Ce("fs"),kh=Ya();function _h(e){let n=Buffer.alloc(150),r;try{r=Ss.openSync(e,"r"),Ss.readSync(r,n,0,150,0),Ss.closeSync(r)}catch{}return kh(n.toString())}Xa.exports=_h});var rl=Q((Vv,nl)=>{"use strict";var wh=Ce("path"),el=Wa(),tl=Ja(),xh=Qa(),Sh=process.platform==="win32",Eh=/\.(?:com|exe)$/i,vh=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Th(e){e.file=el(e);let t=e.file&&xh(e.file);return t?(e.args.unshift(e.file),e.command=t,el(e)):e.file}function $h(e){if(!Sh)return e;let t=Th(e),n=!Eh.test(t);if(e.options.forceShell||n){let r=vh.test(t);e.command=wh.normalize(e.command),e.command=tl.command(e.command),e.args=e.args.map(o=>tl.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 Rh(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:$h(r)}nl.exports=Rh});var il=Q((qv,ol)=>{"use strict";var Es=process.platform==="win32";function vs(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 Ah(e,t){if(!Es)return;let n=e.emit;e.emit=function(r,s){if(r==="exit"){let o=sl(s,t);if(o)return n.call(e,"error",o)}return n.apply(e,arguments)}}function sl(e,t){return Es&&e===1&&!t.file?vs(t.original,"spawn"):null}function Oh(e,t){return Es&&e===1&&!t.file?vs(t.original,"spawnSync"):null}ol.exports={hookChildProcess:Ah,verifyENOENT:sl,verifyENOENTSync:Oh,notFoundError:vs}});var cl=Q((Yv,bt)=>{"use strict";var al=Ce("child_process"),Ts=rl(),$s=il();function ll(e,t,n){let r=Ts(e,t,n),s=al.spawn(r.command,r.args,r.options);return $s.hookChildProcess(s,r),s}function Ch(e,t,n){let r=Ts(e,t,n),s=al.spawnSync(r.command,r.args,r.options);return s.error=s.error||$s.verifyENOENTSync(s.status,r),s}bt.exports=ll;bt.exports.spawn=ll;bt.exports.sync=Ch;bt.exports._parse=Ts;bt.exports._enoent=$s});var L,Rs,w,he,rn=y(()=>{(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})(L||(L={}));(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Rs||(Rs={}));w=L.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),he=e=>{switch(typeof e){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(e)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":return Array.isArray(e)?w.array:e===null?w.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?w.promise:typeof Map<"u"&&e instanceof Map?w.map:typeof Set<"u"&&e instanceof Set?w.set:typeof Date<"u"&&e instanceof Date?w.date:w.object;default:return w.unknown}}});var b,Ih,q,Vn=y(()=>{rn();b=L.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"]),Ih=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),q=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,L.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()}};q.create=e=>new q(e)});var Ph,Ee,As=y(()=>{Vn();rn();Ph=(e,t)=>{let n;switch(e.code){case b.invalid_type:e.received===w.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case b.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,L.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:n=`Unrecognized key(s) in object: ${L.joinValues(e.keys,", ")}`;break;case b.invalid_union:n="Invalid input";break;case b.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${L.joinValues(e.options)}`;break;case b.invalid_enum_value:n=`Invalid enum value. Expected ${L.joinValues(e.options)}, received '${e.received}'`;break;case b.invalid_arguments:n="Invalid function arguments";break;case b.invalid_return_type:n="Invalid function return type";break;case b.invalid_date:n="Invalid date";break;case b.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}"`:L.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case b.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 b.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 b.custom:n="Invalid input";break;case b.invalid_intersection_types:n="Intersection results could not be merged";break;case b.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case b.not_finite:n="Number must be finite";break;default:n=t.defaultError,L.assertNever(e)}return{message:n}},Ee=Ph});function Nh(e){ul=e}function kt(){return ul}var ul,qn=y(()=>{As();ul=Ee});function _(e,t){let n=kt(),r=sn({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===Ee?void 0:Ee].filter(s=>!!s)});e.common.issues.push(r)}var sn,Dh,Z,T,Ke,J,Yn,Xn,De,_t,Os=y(()=>{qn();As();sn=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}},Dh=[];Z=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 T;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 T;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}}},T=Object.freeze({status:"aborted"}),Ke=e=>({status:"dirty",value:e}),J=e=>({status:"valid",value:e}),Yn=e=>e.status==="aborted",Xn=e=>e.status==="dirty",De=e=>e.status==="valid",_t=e=>typeof Promise<"u"&&e instanceof Promise});var fl=y(()=>{});var E,dl=y(()=>{(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(E||(E={}))});function I(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}}function gl(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 Xh(e){return new RegExp(`^${gl(e)}$`)}function yl(e){let t=`${hl}T${gl(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 Qh(e,t){return!!((t==="v4"||!t)&&Gh.test(e)||(t==="v6"||!t)&&Jh.test(e))}function eg(e,t){if(!Bh.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 tg(e,t){return!!((t==="v4"||!t)&&Wh.test(e)||(t==="v6"||!t)&&Kh.test(e))}function ng(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}function wt(e){if(e instanceof Y){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=oe.create(wt(r))}return new Y({...e._def,shape:()=>t})}else return e instanceof $e?new $e({...e._def,type:wt(e.element)}):e instanceof oe?oe.create(wt(e.unwrap())):e instanceof ye?ye.create(wt(e.unwrap())):e instanceof ge?ge.create(e.items.map(t=>wt(t))):e}function Is(e,t){let n=he(e),r=he(t);if(e===t)return{valid:!0,data:e};if(n===w.object&&r===w.object){let s=L.objectKeys(t),o=L.objectKeys(e).filter(a=>s.indexOf(a)!==-1),i={...e,...t};for(let a of o){let l=Is(e[a],t[a]);if(!l.valid)return{valid:!1};i[a]=l.data}return{valid:!0,data:i}}else if(n===w.array&&r===w.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=Is(i,a);if(!l.valid)return{valid:!1};s.push(l.data)}return{valid:!0,data:s}}else return n===w.date&&r===w.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}function bl(e,t){return new ot({values:e,typeName:R.ZodEnum,...I(t)})}function ml(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function kl(e,t={},n){return e?Le.create().superRefine((r,s)=>{let o=e(r);if(o instanceof Promise)return o.then(i=>{if(!i){let a=ml(t,r),l=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:l})}});if(!o){let i=ml(t,r),a=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:a})}}):Le.create()}var ie,pl,M,Mh,Lh,Fh,jh,Hh,Bh,zh,Uh,Zh,Cs,Gh,Wh,Jh,Kh,Vh,qh,hl,Yh,Me,Ve,qe,Ye,Xe,xt,Qe,et,Le,Te,pe,St,$e,Y,tt,ve,Qn,nt,ge,er,Et,vt,tr,rt,st,ot,it,Fe,ae,oe,ye,at,lt,Tt,rg,on,an,ct,sg,R,og,_l,wl,ig,ag,xl,lg,cg,ug,fg,dg,pg,mg,hg,gg,yg,bg,kg,_g,wg,xg,Sg,Eg,vg,Tg,$g,Rg,Ag,Og,Cg,Ig,Pg,Ng,Dg,Mg,Lg,Fg,jg,Hg,Bg,Sl=y(()=>{Vn();qn();dl();Os();rn();ie=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}},pl=(e,t)=>{if(De(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 q(e.common.issues);return this._error=n,this._error}}};M=class{get description(){return this._def.description}_getType(t){return he(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:he(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Z,ctx:{common:t.parent.common,data:t.data,parsedType:he(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(_t(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:he(t)},s=this._parseSync({data:t,path:r.path,parent:r});return pl(r,s)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:he(t)};if(!this["~standard"].async)try{let r=this._parseSync({data:t,path:[],parent:n});return De(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=>De(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:he(t)},s=this._parse({data:t,path:r.path,parent:r}),o=await(_t(s)?s:Promise.resolve(s));return pl(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:b.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 ae({schema:this,typeName:R.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 oe.create(this,this._def)}nullable(){return ye.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return $e.create(this)}promise(){return Fe.create(this,this._def)}or(t){return tt.create([this,t],this._def)}and(t){return nt.create(this,t,this._def)}transform(t){return new ae({...I(this._def),schema:this,typeName:R.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new at({...I(this._def),innerType:this,defaultValue:n,typeName:R.ZodDefault})}brand(){return new on({typeName:R.ZodBranded,type:this,...I(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new lt({...I(this._def),innerType:this,catchValue:n,typeName:R.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return an.create(this,t)}readonly(){return ct.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Mh=/^c[^\s-]{8,}$/i,Lh=/^[0-9a-z]+$/,Fh=/^[0-9A-HJKMNP-TV-Z]{26}$/i,jh=/^[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,Hh=/^[a-z0-9_-]{21}$/i,Bh=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,zh=/^[-+]?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)?)??$/,Uh=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Zh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Gh=/^(?:(?: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])$/,Wh=/^(?:(?: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])$/,Jh=/^(([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]))$/,Kh=/^(([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])$/,Vh=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,qh=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hl="((\\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])))",Yh=new RegExp(`^${hl}$`);Me=class e extends M{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==w.string){let o=this._getOrReturnCtx(t);return _(o,{code:b.invalid_type,expected:w.string,received:o.parsedType}),T}let r=new Z,s;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(s=this._getOrReturnCtx(t,s),_(s,{code:b.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),_(s,{code:b.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?_(s,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):a&&_(s,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),r.dirty())}else if(o.kind==="email")Uh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"email",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="emoji")Cs||(Cs=new RegExp(Zh,"u")),Cs.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"emoji",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="uuid")jh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"uuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="nanoid")Hh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"nanoid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid")Mh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cuid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="cuid2")Lh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cuid2",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="ulid")Fh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"ulid",code:b.invalid_string,message:o.message}),r.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{s=this._getOrReturnCtx(t,s),_(s,{validation:"url",code:b.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),_(s,{validation:"regex",code:b.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),_(s,{code:b.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),_(s,{code:b.invalid_string,validation:{startsWith:o.value},message:o.message}),r.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(s=this._getOrReturnCtx(t,s),_(s,{code:b.invalid_string,validation:{endsWith:o.value},message:o.message}),r.dirty()):o.kind==="datetime"?yl(o).test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:b.invalid_string,validation:"datetime",message:o.message}),r.dirty()):o.kind==="date"?Yh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:b.invalid_string,validation:"date",message:o.message}),r.dirty()):o.kind==="time"?Xh(o).test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{code:b.invalid_string,validation:"time",message:o.message}),r.dirty()):o.kind==="duration"?zh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"duration",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="ip"?Qh(t.data,o.version)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"ip",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="jwt"?eg(t.data,o.alg)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"jwt",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="cidr"?tg(t.data,o.version)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"cidr",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64"?Vh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"base64",code:b.invalid_string,message:o.message}),r.dirty()):o.kind==="base64url"?qh.test(t.data)||(s=this._getOrReturnCtx(t,s),_(s,{validation:"base64url",code:b.invalid_string,message:o.message}),r.dirty()):L.assertNever(o);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(s=>t.test(s),{validation:n,code:b.invalid_string,...E.errToObj(r)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...E.errToObj(t)})}url(t){return this._addCheck({kind:"url",...E.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...E.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...E.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...E.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...E.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...E.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...E.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...E.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...E.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...E.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...E.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...E.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,...E.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,...E.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...E.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...E.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,...E.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...E.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...E.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...E.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...E.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...E.errToObj(n)})}nonempty(t){return this.min(1,E.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}};Me.create=e=>new Me({checks:[],typeName:R.ZodString,coerce:e?.coerce??!1,...I(e)});Ve=class e extends M{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)!==w.number){let o=this._getOrReturnCtx(t);return _(o,{code:b.invalid_type,expected:w.number,received:o.parsedType}),T}let r,s=new Z;for(let o of this._def.checks)o.kind==="int"?L.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),_(r,{code:b.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),_(r,{code:b.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),_(r,{code:b.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="multipleOf"?ng(t.data,o.value)!==0&&(r=this._getOrReturnCtx(t,r),_(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),_(r,{code:b.not_finite,message:o.message}),s.dirty()):L.assertNever(o);return{status:s.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,E.toString(n))}gt(t,n){return this.setLimit("min",t,!1,E.toString(n))}lte(t,n){return this.setLimit("max",t,!0,E.toString(n))}lt(t,n){return this.setLimit("max",t,!1,E.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:E.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:E.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:E.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:E.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.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"&&L.isInteger(t.value))}get isFinite(){let t=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(t===null||r.value<t)&&(t=r.value)}return Number.isFinite(n)&&Number.isFinite(t)}};Ve.create=e=>new Ve({checks:[],typeName:R.ZodNumber,coerce:e?.coerce||!1,...I(e)});qe=class e extends M{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)!==w.bigint)return this._getInvalidInput(t);let r,s=new Z;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),_(r,{code:b.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),_(r,{code:b.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),_(r,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):L.assertNever(o);return{status:s.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return _(n,{code:b.invalid_type,expected:w.bigint,received:n.parsedType}),T}gte(t,n){return this.setLimit("min",t,!0,E.toString(n))}gt(t,n){return this.setLimit("min",t,!1,E.toString(n))}lte(t,n){return this.setLimit("max",t,!0,E.toString(n))}lt(t,n){return this.setLimit("max",t,!1,E.toString(n))}setLimit(t,n,r,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:E.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:E.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:E.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}};qe.create=e=>new qe({checks:[],typeName:R.ZodBigInt,coerce:e?.coerce??!1,...I(e)});Ye=class extends M{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==w.boolean){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.boolean,received:r.parsedType}),T}return J(t.data)}};Ye.create=e=>new Ye({typeName:R.ZodBoolean,coerce:e?.coerce||!1,...I(e)});Xe=class e extends M{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==w.date){let o=this._getOrReturnCtx(t);return _(o,{code:b.invalid_type,expected:w.date,received:o.parsedType}),T}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return _(o,{code:b.invalid_date}),T}let r=new Z,s;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(s=this._getOrReturnCtx(t,s),_(s,{code:b.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),_(s,{code:b.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),r.dirty()):L.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:E.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:E.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}};Xe.create=e=>new Xe({checks:[],coerce:e?.coerce||!1,typeName:R.ZodDate,...I(e)});xt=class extends M{_parse(t){if(this._getType(t)!==w.symbol){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.symbol,received:r.parsedType}),T}return J(t.data)}};xt.create=e=>new xt({typeName:R.ZodSymbol,...I(e)});Qe=class extends M{_parse(t){if(this._getType(t)!==w.undefined){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.undefined,received:r.parsedType}),T}return J(t.data)}};Qe.create=e=>new Qe({typeName:R.ZodUndefined,...I(e)});et=class extends M{_parse(t){if(this._getType(t)!==w.null){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.null,received:r.parsedType}),T}return J(t.data)}};et.create=e=>new et({typeName:R.ZodNull,...I(e)});Le=class extends M{constructor(){super(...arguments),this._any=!0}_parse(t){return J(t.data)}};Le.create=e=>new Le({typeName:R.ZodAny,...I(e)});Te=class extends M{constructor(){super(...arguments),this._unknown=!0}_parse(t){return J(t.data)}};Te.create=e=>new Te({typeName:R.ZodUnknown,...I(e)});pe=class extends M{_parse(t){let n=this._getOrReturnCtx(t);return _(n,{code:b.invalid_type,expected:w.never,received:n.parsedType}),T}};pe.create=e=>new pe({typeName:R.ZodNever,...I(e)});St=class extends M{_parse(t){if(this._getType(t)!==w.undefined){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.void,received:r.parsedType}),T}return J(t.data)}};St.create=e=>new St({typeName:R.ZodVoid,...I(e)});$e=class e extends M{_parse(t){let{ctx:n,status:r}=this._processInputParams(t),s=this._def;if(n.parsedType!==w.array)return _(n,{code:b.invalid_type,expected:w.array,received:n.parsedType}),T;if(s.exactLength!==null){let i=n.data.length>s.exactLength.value,a=n.data.length<s.exactLength.value;(i||a)&&(_(n,{code:i?b.too_big:b.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&&(_(n,{code:b.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&&(_(n,{code:b.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 ie(n,i,n.path,a)))).then(i=>Z.mergeArray(r,i));let o=[...n.data].map((i,a)=>s.type._parseSync(new ie(n,i,n.path,a)));return Z.mergeArray(r,o)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:E.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:E.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:E.toString(n)}})}nonempty(t){return this.min(1,t)}};$e.create=(e,t)=>new $e({type:e,minLength:null,maxLength:null,exactLength:null,typeName:R.ZodArray,...I(t)});Y=class e extends M{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=L.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==w.object){let c=this._getOrReturnCtx(t);return _(c,{code:b.invalid_type,expected:w.object,received:c.parsedType}),T}let{status:r,ctx:s}=this._processInputParams(t),{shape:o,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof pe&&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],f=s.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new ie(s,f,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof pe){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&&(_(s,{code:b.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 f=s.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new ie(s,f,s.path,u)),alwaysSet:u in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let f=await u.key,d=await u.value;c.push({key:f,value:d,alwaysSet:u.alwaysSet})}return c}).then(c=>Z.mergeObjectSync(r,c)):Z.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(t){return E.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:E.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:R.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 L.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 L.objectKeys(this.shape))t[r]||(n[r]=this.shape[r]);return new e({...this._def,shape:()=>n})}deepPartial(){return wt(this)}partial(t){let n={};for(let r of L.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 L.objectKeys(this.shape))if(t&&!t[r])n[r]=this.shape[r];else{let o=this.shape[r];for(;o instanceof oe;)o=o._def.innerType;n[r]=o}return new e({...this._def,shape:()=>n})}keyof(){return bl(L.objectKeys(this.shape))}};Y.create=(e,t)=>new Y({shape:()=>e,unknownKeys:"strip",catchall:pe.create(),typeName:R.ZodObject,...I(t)});Y.strictCreate=(e,t)=>new Y({shape:()=>e,unknownKeys:"strict",catchall:pe.create(),typeName:R.ZodObject,...I(t)});Y.lazycreate=(e,t)=>new Y({shape:e,unknownKeys:"strip",catchall:pe.create(),typeName:R.ZodObject,...I(t)});tt=class extends M{_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 q(a.ctx.common.issues));return _(n,{code:b.invalid_union,unionErrors:i}),T}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 q(l));return _(n,{code:b.invalid_union,unionErrors:a}),T}}get options(){return this._def.options}};tt.create=(e,t)=>new tt({options:e,typeName:R.ZodUnion,...I(t)});ve=e=>e instanceof rt?ve(e.schema):e instanceof ae?ve(e.innerType()):e instanceof st?[e.value]:e instanceof ot?e.options:e instanceof it?L.objectValues(e.enum):e instanceof at?ve(e._def.innerType):e instanceof Qe?[void 0]:e instanceof et?[null]:e instanceof oe?[void 0,...ve(e.unwrap())]:e instanceof ye?[null,...ve(e.unwrap())]:e instanceof on||e instanceof ct?ve(e.unwrap()):e instanceof lt?ve(e._def.innerType):[],Qn=class e extends M{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.object)return _(n,{code:b.invalid_type,expected:w.object,received:n.parsedType}),T;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}):(_(n,{code:b.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),T)}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=ve(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:R.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:s,...I(r)})}};nt=class extends M{_parse(t){let{status:n,ctx:r}=this._processInputParams(t),s=(o,i)=>{if(Yn(o)||Yn(i))return T;let a=Is(o.value,i.value);return a.valid?((Xn(o)||Xn(i))&&n.dirty(),{status:n.value,value:a.data}):(_(r,{code:b.invalid_intersection_types}),T)};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}))}};nt.create=(e,t,n)=>new nt({left:e,right:t,typeName:R.ZodIntersection,...I(n)});ge=class e extends M{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==w.array)return _(r,{code:b.invalid_type,expected:w.array,received:r.parsedType}),T;if(r.data.length<this._def.items.length)return _(r,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),T;!this._def.rest&&r.data.length>this._def.items.length&&(_(r,{code:b.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 ie(r,i,r.path,a)):null}).filter(i=>!!i);return r.common.async?Promise.all(o).then(i=>Z.mergeArray(n,i)):Z.mergeArray(n,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};ge.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ge({items:e,typeName:R.ZodTuple,rest:null,...I(t)})};er=class e extends M{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!==w.object)return _(r,{code:b.invalid_type,expected:w.object,received:r.parsedType}),T;let s=[],o=this._def.keyType,i=this._def.valueType;for(let a in r.data)s.push({key:o._parse(new ie(r,a,r.path,a)),value:i._parse(new ie(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?Z.mergeObjectAsync(n,s):Z.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof M?new e({keyType:t,valueType:n,typeName:R.ZodRecord,...I(r)}):new e({keyType:Me.create(),valueType:t,typeName:R.ZodRecord,...I(n)})}},Et=class extends M{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!==w.map)return _(r,{code:b.invalid_type,expected:w.map,received:r.parsedType}),T;let s=this._def.keyType,o=this._def.valueType,i=[...r.data.entries()].map(([a,l],c)=>({key:s._parse(new ie(r,a,r.path,[c,"key"])),value:o._parse(new ie(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 T;(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 T;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}}}};Et.create=(e,t,n)=>new Et({valueType:t,keyType:e,typeName:R.ZodMap,...I(n)});vt=class e extends M{_parse(t){let{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==w.set)return _(r,{code:b.invalid_type,expected:w.set,received:r.parsedType}),T;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(_(r,{code:b.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&&(_(r,{code:b.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 T;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 ie(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:E.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:E.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};vt.create=(e,t)=>new vt({valueType:e,minSize:null,maxSize:null,typeName:R.ZodSet,...I(t)});tr=class e extends M{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.function)return _(n,{code:b.invalid_type,expected:w.function,received:n.parsedType}),T;function r(a,l){return sn({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,kt(),Ee].filter(c=>!!c),issueData:{code:b.invalid_arguments,argumentsError:l}})}function s(a,l){return sn({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,kt(),Ee].filter(c=>!!c),issueData:{code:b.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof Fe){let a=this;return J(async function(...l){let c=new q([]),u=await a._def.args.parseAsync(l,o).catch(p=>{throw c.addIssue(r(l,p)),c}),f=await Reflect.apply(i,this,u);return await a._def.returns._def.type.parseAsync(f,o).catch(p=>{throw c.addIssue(s(f,p)),c})})}else{let a=this;return J(function(...l){let c=a._def.args.safeParse(l,o);if(!c.success)throw new q([r(l,c.error)]);let u=Reflect.apply(i,this,c.data),f=a._def.returns.safeParse(u,o);if(!f.success)throw new q([s(u,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:ge.create(t).rest(Te.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||ge.create([]).rest(Te.create()),returns:n||Te.create(),typeName:R.ZodFunction,...I(r)})}},rt=class extends M{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})}};rt.create=(e,t)=>new rt({getter:e,typeName:R.ZodLazy,...I(t)});st=class extends M{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return _(n,{received:n.data,code:b.invalid_literal,expected:this._def.value}),T}return{status:"valid",value:t.data}}get value(){return this._def.value}};st.create=(e,t)=>new st({value:e,typeName:R.ZodLiteral,...I(t)});ot=class e extends M{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),r=this._def.values;return _(n,{expected:L.joinValues(r),received:n.parsedType,code:b.invalid_type}),T}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 _(n,{received:n.data,code:b.invalid_enum_value,options:r}),T}return J(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})}};ot.create=bl;it=class extends M{_parse(t){let n=L.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==w.string&&r.parsedType!==w.number){let s=L.objectValues(n);return _(r,{expected:L.joinValues(s),received:r.parsedType,code:b.invalid_type}),T}if(this._cache||(this._cache=new Set(L.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let s=L.objectValues(n);return _(r,{received:r.data,code:b.invalid_enum_value,options:s}),T}return J(t.data)}get enum(){return this._def.values}};it.create=(e,t)=>new it({values:e,typeName:R.ZodNativeEnum,...I(t)});Fe=class extends M{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==w.promise&&n.common.async===!1)return _(n,{code:b.invalid_type,expected:w.promise,received:n.parsedType}),T;let r=n.parsedType===w.promise?n.data:Promise.resolve(n.data);return J(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};Fe.create=(e,t)=>new Fe({type:e,typeName:R.ZodPromise,...I(t)});ae=class extends M{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===R.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=>{_(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 T;let l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?T:l.status==="dirty"?Ke(l.value):n.value==="dirty"?Ke(l.value):l});{if(n.value==="aborted")return T;let a=this._def.schema._parseSync({data:i,path:r.path,parent:r});return a.status==="aborted"?T:a.status==="dirty"?Ke(a.value):n.value==="dirty"?Ke(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"?T:(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"?T:(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(!De(i))return T;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=>De(i)?Promise.resolve(s.transform(i.value,o)).then(a=>({status:n.value,value:a})):T);L.assertNever(s)}};ae.create=(e,t,n)=>new ae({schema:e,typeName:R.ZodEffects,effect:t,...I(n)});ae.createWithPreprocess=(e,t,n)=>new ae({schema:t,effect:{type:"preprocess",transform:e},typeName:R.ZodEffects,...I(n)});oe=class extends M{_parse(t){return this._getType(t)===w.undefined?J(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};oe.create=(e,t)=>new oe({innerType:e,typeName:R.ZodOptional,...I(t)});ye=class extends M{_parse(t){return this._getType(t)===w.null?J(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};ye.create=(e,t)=>new ye({innerType:e,typeName:R.ZodNullable,...I(t)});at=class extends M{_parse(t){let{ctx:n}=this._processInputParams(t),r=n.data;return n.parsedType===w.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};at.create=(e,t)=>new at({innerType:e,typeName:R.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...I(t)});lt=class extends M{_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 _t(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new q(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new q(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};lt.create=(e,t)=>new lt({innerType:e,typeName:R.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...I(t)});Tt=class extends M{_parse(t){if(this._getType(t)!==w.nan){let r=this._getOrReturnCtx(t);return _(r,{code:b.invalid_type,expected:w.nan,received:r.parsedType}),T}return{status:"valid",value:t.data}}};Tt.create=e=>new Tt({typeName:R.ZodNaN,...I(e)});rg=Symbol("zod_brand"),on=class extends M{_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}},an=class e extends M{_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"?T:o.status==="dirty"?(n.dirty(),Ke(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"?T: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:R.ZodPipeline})}},ct=class extends M{_parse(t){let n=this._def.innerType._parse(t),r=s=>(De(s)&&(s.value=Object.freeze(s.value)),s);return _t(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};ct.create=(e,t)=>new ct({innerType:e,typeName:R.ZodReadonly,...I(t)});sg={object:Y.lazycreate};(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"})(R||(R={}));og=(e,t={message:`Input not instance of ${e.name}`})=>kl(n=>n instanceof e,t),_l=Me.create,wl=Ve.create,ig=Tt.create,ag=qe.create,xl=Ye.create,lg=Xe.create,cg=xt.create,ug=Qe.create,fg=et.create,dg=Le.create,pg=Te.create,mg=pe.create,hg=St.create,gg=$e.create,yg=Y.create,bg=Y.strictCreate,kg=tt.create,_g=Qn.create,wg=nt.create,xg=ge.create,Sg=er.create,Eg=Et.create,vg=vt.create,Tg=tr.create,$g=rt.create,Rg=st.create,Ag=ot.create,Og=it.create,Cg=Fe.create,Ig=ae.create,Pg=oe.create,Ng=ye.create,Dg=ae.createWithPreprocess,Mg=an.create,Lg=()=>_l().optional(),Fg=()=>wl().optional(),jg=()=>xl().optional(),Hg={string:(e=>Me.create({...e,coerce:!0})),number:(e=>Ve.create({...e,coerce:!0})),boolean:(e=>Ye.create({...e,coerce:!0})),bigint:(e=>qe.create({...e,coerce:!0})),date:(e=>Xe.create({...e,coerce:!0}))},Bg=T});var k={};Bt(k,{BRAND:()=>rg,DIRTY:()=>Ke,EMPTY_PATH:()=>Dh,INVALID:()=>T,NEVER:()=>Bg,OK:()=>J,ParseStatus:()=>Z,Schema:()=>M,ZodAny:()=>Le,ZodArray:()=>$e,ZodBigInt:()=>qe,ZodBoolean:()=>Ye,ZodBranded:()=>on,ZodCatch:()=>lt,ZodDate:()=>Xe,ZodDefault:()=>at,ZodDiscriminatedUnion:()=>Qn,ZodEffects:()=>ae,ZodEnum:()=>ot,ZodError:()=>q,ZodFirstPartyTypeKind:()=>R,ZodFunction:()=>tr,ZodIntersection:()=>nt,ZodIssueCode:()=>b,ZodLazy:()=>rt,ZodLiteral:()=>st,ZodMap:()=>Et,ZodNaN:()=>Tt,ZodNativeEnum:()=>it,ZodNever:()=>pe,ZodNull:()=>et,ZodNullable:()=>ye,ZodNumber:()=>Ve,ZodObject:()=>Y,ZodOptional:()=>oe,ZodParsedType:()=>w,ZodPipeline:()=>an,ZodPromise:()=>Fe,ZodReadonly:()=>ct,ZodRecord:()=>er,ZodSchema:()=>M,ZodSet:()=>vt,ZodString:()=>Me,ZodSymbol:()=>xt,ZodTransformer:()=>ae,ZodTuple:()=>ge,ZodType:()=>M,ZodUndefined:()=>Qe,ZodUnion:()=>tt,ZodUnknown:()=>Te,ZodVoid:()=>St,addIssueToContext:()=>_,any:()=>dg,array:()=>gg,bigint:()=>ag,boolean:()=>xl,coerce:()=>Hg,custom:()=>kl,date:()=>lg,datetimeRegex:()=>yl,defaultErrorMap:()=>Ee,discriminatedUnion:()=>_g,effect:()=>Ig,enum:()=>Ag,function:()=>Tg,getErrorMap:()=>kt,getParsedType:()=>he,instanceof:()=>og,intersection:()=>wg,isAborted:()=>Yn,isAsync:()=>_t,isDirty:()=>Xn,isValid:()=>De,late:()=>sg,lazy:()=>$g,literal:()=>Rg,makeIssue:()=>sn,map:()=>Eg,nan:()=>ig,nativeEnum:()=>Og,never:()=>mg,null:()=>fg,nullable:()=>Ng,number:()=>wl,object:()=>yg,objectUtil:()=>Rs,oboolean:()=>jg,onumber:()=>Fg,optional:()=>Pg,ostring:()=>Lg,pipeline:()=>Mg,preprocess:()=>Dg,promise:()=>Cg,quotelessJson:()=>Ih,record:()=>Sg,set:()=>vg,setErrorMap:()=>Nh,strictObject:()=>bg,string:()=>_l,symbol:()=>cg,transformer:()=>Ig,tuple:()=>xg,undefined:()=>ug,union:()=>kg,unknown:()=>pg,util:()=>L,void:()=>hg});var Ps=y(()=>{qn();Os();fl();rn();Sl();Vn()});var $t=y(()=>{Ps();Ps()});var je,ln=y(()=>{"use strict";$t();je=k.object({slug:k.string().min(1).max(64),description:k.string().max(255).optional(),match_command:k.string().min(1),priority:k.number().int().default(50),strip_ansi:k.boolean().default(!1),strip_lines_matching:k.array(k.string()).default([]),drop_lines_matching:k.array(k.string()).default([]),keep_failures:k.boolean().default(!1),strip_on_failure:k.boolean().default(!1),fold_passing:k.boolean().default(!1),fold_passing_threshold:k.number().int().positive().max(1e3).optional(),mask_abs_paths:k.boolean().default(!1),preserve_exact:k.boolean().default(!1),truncate_lines_at:k.number().int().positive().max(1e4).optional(),max_lines:k.number().int().positive().max(1e5).optional(),scale_with_level:k.boolean().default(!0),transform:k.string().max(64).optional(),transform_on_failure:k.boolean().default(!1),on_empty:k.string().max(255).optional()})});import{readdir as zg,readFile as Ug}from"node:fs/promises";import{join as vl,dirname as Zg}from"node:path";import{fileURLToPath as Gg}from"node:url";function Kg(){return!1}async function Tl(){return Rt||(Kg()?(Rt=await Vg(Jg),Rt):(!El&&process.env.TOKMIZER_DEBUG==="1"&&(process.stderr.write(`tokmizer: disk loader disabled (set TOKMIZER_DEV=1 to re-enable for local dev).
28
+ `),El=!0),Rt=new Map,Rt))}async function Vg(e){let t=new Map,n,r;try{n=(await Promise.resolve().then(()=>(Gn(),ys))).parse,r=(await zg(e)).filter(s=>s.endsWith(".toml"))}catch{return t}for(let s of r){let o=await Ug(vl(e,s),"utf8"),a=n(o).filters;if(a)for(let[l,c]of Object.entries(a)){let u=je.parse({slug:l,...c});t.set(l,{...u,matchRegex:new RegExp(u.match_command)})}}return t}var Wg,Jg,Rt,El,$l=y(()=>{"use strict";ln();Wg=Zg(Gg(import.meta.url)),Jg=process.env.TOKMIZER_FILTERS_DIR||vl(Wg,"..","..","filters"),Rt=null,El=!1});var Cl={};Bt(Cl,{OutputVerbosity:()=>Al,ReducerLevel:()=>Ol,Settings:()=>At,slugKey:()=>te});import{createHash as qg}from"node:crypto";function te(e){let t=Rl.get(e);return t||(t=qg("sha256").update(`tkr:${e}`).digest("hex").slice(0,16),Rl.set(e,t)),t}var Al,Ol,At,Rl,He=y(()=>{"use strict";$t();Al=k.enum(["normal","compact","minimal"]),Ol=k.enum(["off","light","balanced","max"]),At=k.object({enabled:k.boolean().default(!0),telemetryOptIn:k.boolean().default(!0),outputVerbosity:Al.default("compact"),reducer:Ol.default("off"),filters:k.object({enableAll:k.boolean().default(!0),disabled:k.array(k.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),Rl=new Map});function Ot(e,t,n,r=t){let s=Il.get(r);s||(s=new Map,Il.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(te(l.slug))||l.matchRegex.test(e)&&(!a||l.priority>a.priority)&&(a=l);if(s.size>=Yg){let l=s.keys().next().value;l&&s.delete(l)}return s.set(o,a),a}var Il,Yg,nr=y(()=>{"use strict";He();Il=new WeakMap,Yg=256});function be(e){return e.replace(Xg,"").replace(Qg,"")}var Xg,Qg,cn=y(()=>{"use strict";Xg=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,Qg=/\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)/g});function Ns(e,t){return t.length===0?e:e.filter(n=>!t.some(r=>r.test(n)))}var Pl=y(()=>{"use strict"});function Nl(e){let t=e.trim();if(t.length>4096||!(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]")))return!1;try{return JSON.parse(t),!0}catch{return!1}}function Dl(e,t){return e.some(n=>n.length>t)&&Nl(e.join(`
29
+ `))?e:e.map(n=>{if(n.length<=t||Nl(n))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`})}var Ml=y(()=>{"use strict"});function Ct(e){return`\u2026 (${e} more lines omitted)`}function Ll(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 Ds=y(()=>{"use strict"});function Fl(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)ey.test(a)&&!le.test(a)?(i.push(a),s+=1):(o(i),i=[],s=0,r.push(a));return o(i),r}var ey,le,un=y(()=>{"use strict";ey=/^\s*(?:[✓✔√]|ok )/,le=/✕|✗|×|\bFAIL\b|\bERROR\b|\bFATAL\b|\bError|\berror|Expected|Received|\bfailed\b|^\s*Tests?:|^\s*Test Suites?:/});function jl(e){return e.map(t=>t.replace(ty,n=>{let r=n.split("/").filter(Boolean);return r.length<=2?n:`\u2026/${r.slice(-2).join("/")}`}))}var ty,Hl=y(()=>{"use strict";ty=/(?:\/[\w.@+-]+){3,}/g});function iy(e){let t=sy.exec(e);return!t||oy.has(t[1])?!1:!/=>|\bfunction\b/.test(t[2])}function ly(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 cy(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==="&"))&&ly(e,s+1,o)&&(r=o),s+=1;continue}o==="{"||o==="("||o==="["?n+=1:(o==="}"||o===")"||o==="]")&&(n-=1),s+=1}return n}function fy(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 Ms(e){let t=new Array(e.length).fill(!1);for(let n=0;n<e.length;n+=1){let r=uy.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 fn(e,t=3,n=!1){let r=[],s=0;for(;s<e.length;){let o=e[s];if(ny.test(o)&&ry.test(o)||iy(o)||ay.test(o)){let i={inBlockComment:!1,inTemplate:!1},a=0,l=s,c=!1;for(;l<e.length&&l-s<200;)if(a+=cy(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 f=u-2,d=/^\s*/.exec(e[s+1]??"")?.[0]??" ";r.push(o),r.push(fy(d,f,n?s+2:null));for(let p=0;p<f-1;p++)r.push("");r.push(e[l-1]),s=l;continue}}r.push(o),s+=1}return r}function sr(e){let t=e.slice(0,4096);return!(!dy.test(t)||t.split(`
30
+ `).length<6)}var ny,ry,sy,oy,ay,rr,uy,dy,It=y(()=>{"use strict";ny=/^(\s*)(?:export\s+)?(?:async\s+)?(?:function|interface|type|const|let|var|def|fn|impl|trait|struct|enum)\s+[\w$]+/,ry=/\{\s*$/,sy=/^\s*(?:(?:public|private|protected|static|async|get|set|readonly|override)\s+)*([\w$]+)\s*\(([^)]*)\)\s*(?::\s*[^{]+)?\{\s*$/,oy=new Set(["if","for","while","switch","catch","do","with","return","else","function","await","yield"]);ay=/^\s*(?:if|for|while|switch|try|do)\b[^{}]*\{\s*$/;rr=/^\s*… \d+ lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/,uy=/^\s*… (\d+) lines? folded(?: \(\d+-\d+\): Read offset=\d+ limit=\d+ before editing)? …$/;dy=/\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 Kl(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(Gl.test(s.replace(Zl,""))&&!Wl.test(s)&&!Jl.test(s)){n+=1;continue}r(),t.push(s)}return r(),t}function Ul(e){if(e.trim()===""||/^\s/.test(e)||Wl.test(e)||Jl.test(e)||my.test(e))return null;let t=e.replace(Zl,"");return Gl.test(t)||py.test(t)?"\0verbose":e.replace(/\d+/g,"#")}function Vl(e){let t=[],n=0;for(;n<e.length;){let r=Ul(e[n]),s=n+1;if(r!==null)for(;s<e.length&&Ul(e[s])===r;)s+=1;let o=s-n;r===null||o<hy?t.push(...e.slice(n,s)):(t.push(...e.slice(n,n+Bl)),t.push(`\u2026 ${o-Bl-zl} similar log lines dropped \u2026`),t.push(...e.slice(s-zl,s))),n=s}return t}function ql(e){return e.some(t=>gy.test(t))}function or(e){if(e.length===0||ql(e))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.trim()?`${r} \xD7${n}`:r),r=e[s],n=1}return t.push(n>1&&r.trim()?`${r} \xD7${n}`:r),t}function Yl(e){if(ql(e))return 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 Zl,Gl,Wl,Jl,py,my,hy,Bl,zl,gy,ir=y(()=>{"use strict";un();Zl=/^\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*/,Gl=/^\s*(?:\[(?:DEBUG|TRACE|INFO|VERBOSE)\]|(?:DEBUG|TRACE|INFO|VERBOSE)(?!\s*:))(?=\s|:|$)(?!\s*[+\-*\/%&|^?]*=)/,Wl=new RegExp(le.source,"i"),Jl=/\bWARN(?:ING)?\b/i;py=/^(?:DEBUG|INFO):[\w.-]+:/,my=/Error|Exception|Traceback|panic|fail|FAIL|Fail|SEVERE|CRITICAL/,hy=8,Bl=1,zl=2;gy=/^@@ -\d+(?:,\d+)? \+\d+(?:,\d+)? @@/});function U(e,t){Xl.set(e,t)}function Ql(e){return Xl.get(e)}var Xl,X=y(()=>{"use strict";Xl=new Map});function _y(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 wy(e){let t=/^(\d+(?:[.,]\d+)?)([KMGTPkmgtp])?/.exec(e),n=t[2]?ky[t[2].toLowerCase()]:0;return Number(t[1].replace(",","."))*1024**n}function xy(e){let t=by.exec(e);if(!t)return null;let n=t[4].trim();if(n===""||n==="."||n==="..")return null;let r=t[3],s=/^\d+$/.test(r)?_y(Number(r)):r,o=e.charCodeAt(0)===100;return{name:n,size:s,sizeKey:wy(r),isDir:o,mode:t[1],owner:t[2].replace(/\s+/g," ")}}function Sy(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 ec(e,t){let n=[],r=e;for(let s of t)r.length+1+s.length>Ty&&r!==e&&r!==" "&&(n.push(r),r=" "),r+=r===" "?s:` ${s}`;return n.push(r),n}function $y(e){let t=e.endsWith("/")?"":e,n=t.indexOf(".",1);return n>0?t.slice(n):""}function Ry(e){let t=e.filter(l=>l.trim()!=="");if(t.length<Ey)return null;let n=e.findIndex(l=>l.trim()!==""),r=e.length-1-[...e].reverse().findIndex(l=>l.trim()!=="");if(e.slice(n,r+1).some(l=>l.trim()==="")||t.some(l=>l.endsWith(":")||nc.test(l.trim())||tc.test(l)||/^total\s+\d+/.test(l)||l!==l.trimEnd()||l.startsWith(" "))||t.filter(l=>/\s/.test(l)).length>t.length*.2)return null;let s=l=>/\s|"/.test(l)?JSON.stringify(l):l,o=new Map;for(let l of t){let c=$y(l),u=o.get(c)??[];u.push(l),o.set(c,u)}let i=[`${t.length} entries:`],a=[];for(let[l,c]of[...o.entries()].sort((u,f)=>f[1].length-u[1].length||u[0].localeCompare(f[0])))l&&c.length>=vy&&c.every(u=>!/\s|"/.test(u))?i.push(...ec(`*${l} (${c.length}):`,c.map(u=>u.slice(0,-l.length)))):a.push(...c);return a.length&&i.push(...ec(`other (${a.length}):`,a.map(s))),i.join(`
29
31
  `).length<t.join(`
30
- `).length?i:null}function Gg(e){let t=Zg(e);if(t)return t;let n=[],r=[],s=!1;for(let d of e){if(d.trim()===""||/^total\s+\d+/.test(d))continue;if(Bl.test(d.trim())||!Hl.test(d))return e;let m=Fg(d);if(!m){if(/\s\.\.?$/.test(d))continue;return e}s=!0,(m.isDir?n:r).push(m)}if(!s)return e;let o=(d,m)=>d.name.localeCompare(m.name);n.sort(o),r.sort((d,m)=>m.sizeKey-d.sizeKey||o(d,m));let i=[...n,...r],a=i.every(d=>d.owner===i[0].owner)?i[0].owner:null,l=[];for(let d of i){let m=`${d.mode} ${a===null?`${d.owner} `:""}${d.isDir?`${d.name}/`:d.name}`;l.push(d.isDir?m:`${m} ${d.size}`)}if(l.length>Is){let d=l.length-Is;l=[...l.slice(0,Is),`\u2026 ${d} more lines omitted`]}let c=r.length===1?"file":"files",u=n.length===1?"dir":"dirs",f=jg(r),p=`${r.length} ${c}, ${n.length} ${u}`+(f?` (${f})`:"")+(a===null?"":`, owner ${a.replace(" ",":")}`);return l.push(p),l}var Hl,Bl,Pg,Ng,Dg,Is,Hg,Bg,zg,zl=h(()=>{"use strict";W();Hl=/^[dbclps\-][rwxsStT\-]{9}[@.+]?(?:\s|$)/,Bl=/^[./~][^\s]*:$/,Pg=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})?`,Ng=new RegExp(String.raw`^(\S+)\s+\d+\s+(\S+(?:\s+\S+)??)\s+(\d+(?:[.,]\d+)?[KMGTPkmgtp]?i?B?)\s+(?:${Pg})\s+(.+)$`),Dg={k:1,m:2,g:3,t:4,p:5},Is=1e3;Hg=12,Bg=3,zg=180;B("smart-ls",Gg)});var Ul=h(()=>{"use strict";$t();W();B("smart-read",e=>cn(e))});function Jg(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 Kg(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 Wg(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 f=u.replace(/^\.\//,"").replace(/\/+$/,""),p=f.lastIndexOf("/"),d=p>=0?f.slice(0,p):"",m=p>=0?f.slice(p+1):f;if(!m)continue;let y=r.get(d)??[];y.push(/\s/.test(m)?`"${m}"`:m),r.set(d,y),o+=1}if(o===0)return e;let i=[...r.keys()].sort(),a=i.every(c=>c!=="")?Jg(i):"",l=[`${o}F ${i.length}D${a?` in ${a}/`:""}:`];for(let c of i){let u=a?c.slice(a.length).replace(/^\//,""):c,f=r.get(c),p=Kg(f),d=p?f.map(m=>m.slice(0,-p.length)):f;l.push(`${u?`${u}/`:"./"} (${f.length}${p?`, *${p}`:""}): ${d.join(" ")}`)}if(l.length+s.length>Zl){let c=Math.max(0,Zl-s.length),u=l.length-c;return[...l.slice(0,c),`\u2026 ${u} more lines omitted`,...s]}return[...l,...s]}var Zl,Gl=h(()=>{"use strict";W();Zl=1e3;B("smart-find",Wg)});function qg(e){let t=[];for(let i of e){if(i.trim()==="")continue;let a=Vg.exec(i);if(!a)return e;t.push({counts:a[1].replace(/\s+/g," "),path:a[2]})}let n=t.filter(i=>i.path!=="total");if(n.length<2)return t.length?t.map(i=>`${i.counts} ${i.path}`):e;let r=n.map(i=>i.path.includes("/")?i.path.slice(0,i.path.lastIndexOf("/")+1):""),s=r[0];for(let i of r)for(;s&&!i.startsWith(s);)s=s.slice(0,s.slice(0,-1).lastIndexOf("/")+1);let o=s?[`in ${s}:`]:[];for(let i of t)o.push(`${i.counts} ${i.path!=="total"&&s?i.path.slice(s.length):i.path}`);return o}var Vg,Jl=h(()=>{"use strict";W();Vg=/^\s*(\d+(?:\s+\d+){0,3})\s+(\S.*)$/;B("smart-wc",qg)});function Qg(e){let t=[];for(let n=0;n<e.length;n+=1){let r=1;for(;n+r<e.length&&e[n+r]===e[n];)r+=1;t.push(r>1?`${e[n]} \xD7${r}`:e[n]),n+=r-1}return t}function ey(e){if(e.length<=Ps+Ns+1)return e;let t=e.slice(Ps,-Ns),n=t.filter(s=>Xg.test(s)),r=t.length-n.length;return r===0?e:[...e.slice(0,Ps),...n,`\u2026 ${r} more lines omitted`,...e.slice(-Ns)]}function ty(e){if(!e.some(s=>Kl.test(s)))return e;let t=[],n=[],r=()=>{t.push(...ey(Qg(n))),n=[]};for(let s=0;s<e.length;s+=1){let o=e[s];if(Yg.test(o))return r(),t.push(...e.slice(s)),t;if(Kl.test(o)){r(),t.push(o);continue}n.push(o)}return r(),t}var Kl,Yg,Xg,Ps,Ns,Wl=h(()=>{"use strict";W();ln();Kl=/^\s*\d+\/\d+ Test\s+#\s*\d+: \S+ \.{2,}/,Yg=/^\d+% tests passed, \d+ tests? failed out of \d+$/,Xg=new RegExp(`${oe.source}|\\*\\*\\*|Exception|FAIL|ERROR`),Ps=3,Ns=8;B("smart-ctest",ty)});function ny(e){if(e.length<2)return"";let t=e[0].slice(0,e[0].lastIndexOf("/")+1);for(let n of e)for(;t&&!n.startsWith(t);)t=t.slice(0,t.slice(0,-1).lastIndexOf("/")+1);return t}function ry(e){let t=e.join(`
31
- `).trim();if(!t.startsWith("{"))return e;let n;try{n=JSON.parse(t)}catch{return e}if(!n||typeof n!="object"||!n.files||typeof n.files!="object")return e;let r=Object.keys(n.files),s=ny(r),o=r.reduce((a,l)=>a+(n.files[l].messages?.length??0),0),i=[`phpstan: ${o} error${o===1?"":"s"} in ${r.length} file${r.length===1?"":"s"}${s?` under ${s}`:""}`];for(let a of r){let l=n.files[a].messages??[];i.push(`${a.slice(s.length)} (${l.length})`);for(let c of l){let u=typeof c.line=="number"?`:${c.line}`:":?",f=typeof c.tip=="string"&&c.tip?` \u2014 ${c.tip}`:"";i.push(` ${u} ${String(c.message??"")}${f}`)}}for(let a of Array.isArray(n.errors)?n.errors:[])i.push(`error: ${String(a)}`);return i}var Vl=h(()=>{"use strict";W();B("smart-phpstan",ry)});function iy(e){if(!e.some(n=>Ds.test(n)))return e;let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];Ds.test(r)||sy.test(r)&&!Ds.test(e[n+1]??"")&&!oy.test(r)||t.push(r)}return t}var sy,Ds,oy,ql=h(()=>{"use strict";W();ln();sy=/^\d+ \| /,Ds=/^\s+\^\s*$/,oy=new RegExp(`${oe.source}|\\*\\*\\*|Exception|FAIL|ERROR`);B("bun-frames",iy)});function Ql(e){let t=e.trim();return t.length>Yl?`${t.slice(0,Yl)}\u2026`:t}function dy(e){let t=[],n="";for(let r of e){let s=n?`${n}, ${r}`:r;s.length>=ly&&n?(t.push(`${n},`),n=r):n=s}return n&&t.push(n),t}function py(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 my(e){let t=e.filter(d=>d.trim()!=="");if(t.length===0)return e;let n=new Map,r=new Map,s=null,o=0,i=0;for(let d of t){if(d==="--"){s&&n.get(s).push({separator:!0});continue}if(/^[A-Za-z]:[\\/]/.test(d))return e;let m=cy.exec(d),y=uy.exec(d);if(m&&y)return e;let b=m||y?null:fy.exec(d),R=(m??y??b)?.[1];if(!R)return e;let T=m?{line:m[2],content:m[3],context:!1}:y?{line:y[2],content:y[3],context:!0}:{line:"",content:b[2],context:!1},D=n.get(R)??[];D.push(T),n.set(R,D),T.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((d,m)=>{let y=Xl.test(d)?1:0,b=Xl.test(m)?1:0;return y-b||(d<m?-1:d>m?1:0)}),l=a.length>1?py(a):"",c=d=>l?d.slice(l.length+1):d,u=[];for(let d of a){u.push(`${c(d)} (${r.get(d)??0}):`);for(let m of n.get(d))"separator"in m?u.push(" --"):m.line?u.push(` ${m.line}${m.context?"-":":"} ${Ql(m.content)}`):u.push(` ${Ql(m.content)}`)}let f=a.length>1&&u.length>ay?dy(a.map(d=>`${c(d)} (${r.get(d)??0})`)):[],p=[`${o}m ${a.length}f${l?` in ${l}/`:""}:`,...f,"",...u];if(p.length>Ms){let d=p.length-Ms;return[...p.slice(0,Ms),`\u2026 ${d} more lines omitted`]}return p}var Ms,Yl,ay,ly,cy,uy,fy,Xl,ec=h(()=>{"use strict";W();Ms=1e3,Yl=200,ay=60,ly=190,cy=/^([^\s:]+):(\d+):(.*)$/,uy=/^([^:]+?)-(\d+)-(.*)$/,fy=/^([^\s:]+):(.*)$/,Xl=/(?:^|\/)(?:__tests__|tests?|spec|fixtures?|__mocks__|__snapshots__)\/|\.(?:test|spec)\.[^/]+$/i;B("smart-grep",my)});function Ey(e){let t=[];for(let l=0;l<e.length;l+=1){let c=nc.exec(e[l]);if(!c)continue;let u=l+1,f=null;e[u]?.startsWith("Merge: ")&&(f=e[u].slice(7),u+=1);let p=ky.exec(e[u]??""),d=_y.exec(e[u+1]??"");if(!p||!d)return null;let m=wy.indexOf(d[1])+1;if(m===0)return null;t.push({at:l,hash:c[1].slice(0,xy),refs:c[2]??"",merge:f,author:p[1],date:`${d[4]}-${String(m).padStart(2,"0")}-${d[2].padStart(2,"0")} ${d[3]}`,zone:d[5],end:u+2})}if(t.length===0)return null;let n=[...new Set(t.map(l=>l.author))],r=n.length===1&&t.length>1?n[0]:null,s=n.length>1&&n.length<=Sy&&t.length>n.length,o=t.length>1&&t.every(l=>l.zone===t[0].zone)?t[0].zone:null,i=r?[`author: ${r}`]:s?[`authors: ${n.map((l,c)=>`[${c+1}] ${l}`).join("; ")}`]:[];o&&i.push(`dates: UTC${o}`);let a=0;for(let l of t){i.push(...e.slice(a,l.at));let c=r?"":s?` [${n.indexOf(l.author)+1}]`:` ${l.author}`;i.push(`${l.hash} ${l.date}${o?"":` ${l.zone}`}${c}${l.merge?` merge ${l.merge}`:""}${l.refs}`),a=l.end}return i.push(...e.slice(a)),i}function vy(e){if(!e.some(r=>tc.test(r)))return e;let t=e.some(r=>nc.test(r))&&!e.some(r=>/^[|\\/*]/.test(r)),n=Ty(e,t?by:yy);return Ey(n)??n}function Ty(e,t){let n=[],r=0,s=0,o=0,i="",a=!1,l=!1,c=()=>{s>0&&n.push(`${i} \u2026 ${s} ${s===1?"line":"lines"} folded \u2026`),s=0};for(let u of e){let f=u.slice(0,o),p=hy.test(f),d=p?u.slice(o):u,m=gy.test(d),y=a&&m?null:tc.exec(u);if(y){c(),r=0,o=y[1]?.length??0,a=!0,l=!1,n.push(u);continue}if(/^diff --(?:git|cc|combined) /.test(d)&&(l=!0),m&&!l&&!(o>0&&d.trim().length===0)){r+=1,r<=t?n.push(u):(s+=1,i=p?f:"");continue}c(),n.push(u)}return c(),n}var tc,hy,gy,yy,by,nc,ky,_y,wy,xy,Sy,rc=h(()=>{"use strict";W();tc=/^(?:([|\\/ ._-]*\*[|\\/* ._-]* ))?commit [0-9a-f]{7,40}\b/,hy=/^[|\\/* ._-]*$/,gy=/^ {4}/,yy=2,by=1,nc=/^commit ([0-9a-f]{40})(\s.*)?$/,ky=/^Author:\s+(.+)$/,_y=/^Date:\s+(?:[A-Z][a-z]{2} )?([A-Z][a-z]{2}) +(\d{1,2}) (\d{2}:\d{2}):\d{2} (\d{4}) ([+-]\d{4})$/,wy=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],xy=12,Sy=5;B("smart-log",vy)});var $y,Ry,Ay,sc=h(()=>{"use strict";W();$y=/^[\s=]+$/,Ry=/^\s*=+\s+(.*?)\s+=+\s*$/,Ay=512;B("strip-banners",e=>{let t=[];for(let n of e){if($y.test(n))continue;let r=n.length<=Ay?Ry.exec(n):null;t.push(r?r[1]:n)}return t})});function Oy(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}var oc=h(()=>{"use strict";W();B("squeeze-output",Oy)});function Cy(e){return e==="compact"?.6:e==="minimal"?.3:1}function Py(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}function Ny(e){let t=ic.get(e);if(t)return t;let n=e.strip_lines_matching.map(o=>new RegExp(o)),r=(e.drop_lines_matching??[]).map(o=>new RegExp(o)),s={def:e,stripRegexes:n,dropRegexes:r};return ic.set(e,s),s}function sr(e,t,n={}){return Ls(e,t,n).text}function Ls(e,t,n={}){let r=n.verbosity??"normal";if(!t.strip_ansi&&t.strip_lines_matching.length===0&&(t.drop_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=Ny(t),o=!t.preserve_exact&&e.includes(`\r
32
+ `).length?i:null}function Ay(e){if(!e)return!1;let t=/(?:^|[\s;&|(])ls(?=\s|$)([^|;&]*)/.exec(e);if(!t)return!1;for(let n of t[1].trim().split(/\s+/)){if(n==="--")break;if(/^--(?:sort|reverse|time)(?:=|$)/.test(n)||/^-[A-Za-z0-9]+$/.test(n)&&/[tSUfrvX]/.test(n))return!0}return!1}function Fs(e,t){if(Ay(t))return e;let n=Ry(e);if(n)return n;let r=[],s=[],o=!1;for(let g of e){if(g.trim()===""||/^total\s+\d+/.test(g))continue;if(nc.test(g.trim())||!tc.test(g))return e;let h=xy(g);if(!h){if(/\s\.\.?$/.test(g))continue;return e}o=!0,(h.isDir?r:s).push(h)}if(!o)return e;let i=(g,h)=>g.name.localeCompare(h.name);r.sort(i),s.sort((g,h)=>h.sizeKey-g.sizeKey||i(g,h));let a=[...r,...s],l=a.every(g=>g.owner===a[0].owner)?a[0].owner:null,c=[];for(let g of a){let h=`${g.mode} ${l===null?`${g.owner} `:""}${g.isDir?`${g.name}/`:g.name}`;c.push(g.isDir?h:`${h} ${g.size}`)}if(c.length>Ls){let g=c.length-Ls;c=[...c.slice(0,Ls),`\u2026 ${g} more lines omitted`]}let u=s.length===1?"file":"files",f=r.length===1?"dir":"dirs",d=Sy(s),p=`${s.length} ${u}, ${r.length} ${f}`+(d?` (${d})`:"")+(l===null?"":`, owner ${l.replace(" ",":")}`);return c.push(p),c}var tc,nc,yy,by,ky,Ls,Ey,vy,Ty,rc=y(()=>{"use strict";X();tc=/^[dbclps\-][rwxsStT\-]{9}[@.+]?(?:\s|$)/,nc=/^[./~][^\s]*:$/,yy=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})?`,by=new RegExp(String.raw`^(\S+)\s+\d+\s+(\S+(?:\s+\S+)??)\s+(\d+(?:[.,]\d+)?[KMGTPkmgtp]?i?B?)\s+(?:${yy})\s+(.+)$`),ky={k:1,m:2,g:3,t:4,p:5},Ls=1e3;Ey=12,vy=3,Ty=180;U("smart-ls",Fs)});var sc=y(()=>{"use strict";It();X();U("smart-read",e=>fn(e))});function Oy(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 Cy(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 Iy(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 f=u.replace(/^\.\//,"").replace(/\/+$/,""),d=f.lastIndexOf("/"),p=d>0?f.slice(0,d):d===0?"/":"",g=d>=0?f.slice(d+1):f;if(!g)continue;let h=r.get(p)??[];h.push(/\s/.test(g)?`"${g}"`:g),r.set(p,h),o+=1}if(o===0)return e;let i=[...r.keys()].sort(),a=i.every(c=>c!=="")&&!i.includes("/")?Oy(i):"",l=[`${o}F ${i.length}D${a?` in ${a}/`:""}:`];for(let c of i){let u=c==="/"?"/":a?c.slice(a.length).replace(/^\//,""):c,f=r.get(c),d=Cy(f),p=d?f.map(g=>g.slice(0,-d.length)):f;l.push(`${u==="/"?"/":u?`${u}/`:"./"} (${f.length}${d?`, *${d}`:""}): ${p.join(" ")}`)}if(l.length+s.length>oc){let c=Math.max(0,oc-s.length),u=l.length-c;return[...l.slice(0,c),`\u2026 ${u} more lines omitted`,...s]}return[...l,...s]}var oc,ic=y(()=>{"use strict";X();oc=1e3;U("smart-find",Iy)});function Ny(e){let t=[];for(let i of e){if(i.trim()==="")continue;let a=Py.exec(i);if(!a)return e;t.push({counts:a[1].replace(/\s+/g," "),path:a[2]})}let n=t.filter(i=>i.path!=="total");if(n.length<2)return t.length?t.map(i=>`${i.counts} ${i.path}`):e;let r=n.map(i=>i.path.includes("/")?i.path.slice(0,i.path.lastIndexOf("/")+1):""),s=r[0];for(let i of r)for(;s&&!i.startsWith(s);)s=s.slice(0,s.slice(0,-1).lastIndexOf("/")+1);let o=s?[`in ${s}:`]:[];for(let i of t)o.push(`${i.counts} ${i.path!=="total"&&s?i.path.slice(s.length):i.path}`);return o}var Py,ac=y(()=>{"use strict";X();Py=/^\s*(\d+(?:\s+\d+){0,3})\s+(\S.*)$/;U("smart-wc",Ny)});function Ly(e){let t=[];for(let n=0;n<e.length;n+=1){let r=1;for(;n+r<e.length&&e[n+r]===e[n];)r+=1;t.push(r>1?`${e[n]} \xD7${r}`:e[n]),n+=r-1}return t}function Fy(e){if(e.length<=js+Hs+1)return e;let t=e.slice(js,-Hs),n=t.filter(s=>My.test(s)),r=t.length-n.length;return r===0?e:[...e.slice(0,js),...n,`\u2026 ${r} more lines omitted`,...e.slice(-Hs)]}function jy(e){if(!e.some(s=>lc.test(s)))return e;let t=[],n=[],r=()=>{t.push(...Fy(Ly(n))),n=[]};for(let s=0;s<e.length;s+=1){let o=e[s];if(Dy.test(o))return r(),t.push(...e.slice(s)),t;if(lc.test(o)){r(),t.push(o);continue}n.push(o)}return r(),t}var lc,Dy,My,js,Hs,cc=y(()=>{"use strict";X();un();lc=/^\s*\d+\/\d+ Test\s+#\s*\d+: \S+ \.{2,}/,Dy=/^\d+% tests passed, \d+ tests? failed out of \d+$/,My=new RegExp(`${le.source}|\\*\\*\\*|Exception|FAIL|ERROR`),js=3,Hs=8;U("smart-ctest",jy)});function Hy(e){if(e.length<2)return"";let t=e[0].slice(0,e[0].lastIndexOf("/")+1);for(let n of e)for(;t&&!n.startsWith(t);)t=t.slice(0,t.slice(0,-1).lastIndexOf("/")+1);return t}function By(e){let t=e.join(`
33
+ `).trim();if(!t.startsWith("{"))return e;let n;try{n=JSON.parse(t)}catch{return e}if(!n||typeof n!="object"||!n.files||typeof n.files!="object")return e;let r=Object.keys(n.files),s=Hy(r),o=r.reduce((a,l)=>a+(n.files[l].messages?.length??0),0),i=[`phpstan: ${o} error${o===1?"":"s"} in ${r.length} file${r.length===1?"":"s"}${s?` under ${s}`:""}`];for(let a of r){let l=n.files[a].messages??[];i.push(`${a.slice(s.length)} (${l.length})`);for(let c of l){let u=typeof c.line=="number"?`:${c.line}`:":?",f=typeof c.tip=="string"&&c.tip?` \u2014 ${c.tip}`:"";i.push(` ${u} ${String(c.message??"")}${f}`)}}for(let a of Array.isArray(n.errors)?n.errors:[])i.push(`error: ${String(a)}`);return i}var uc=y(()=>{"use strict";X();U("smart-phpstan",By)});function Zy(e){if(!e.some(n=>Bs.test(n)))return e;let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];Bs.test(r)||zy.test(r)&&!Bs.test(e[n+1]??"")&&!Uy.test(r)||t.push(r)}return t}var zy,Bs,Uy,fc=y(()=>{"use strict";X();un();zy=/^\d+ \| /,Bs=/^\s+\^\s*$/,Uy=new RegExp(`${le.source}|\\*\\*\\*|Exception|FAIL|ERROR`);U("bun-frames",Zy)});function qy(e){let t=e.split("\r").filter(n=>n.trim()!=="");return t.length>0&&t.every(n=>Jy.test(n))}function Yy(e){let t=e.some(r=>Ky.test(r)),n=[];for(let r=0;r<e.length;r+=1){let s=e[r];if(Gy.test(s)){let o=r+1;for(Wy.test(e[o]??"")&&(o+=1);qy(e[o]??"");)o+=1;r=o-1;continue}t&&Vy.test(s)||n.push(s)}return n}var Gy,Wy,Jy,Ky,Vy,dc=y(()=>{"use strict";X();Gy=/^\s*% Total\s+% Received\s+% Xferd\s+Average Speed/,Wy=/^\s+Dload\s+Upload\s+Total\s+Spent\s+Left\s+Speed/,Jy=/^\s*\d+\s+[\d.]+[kMGTP]?\s+\d+\s+[\d.]+[kMGTP]?\s+\d+\s+[\d.]+[kMGTP]?\s+[\d.]+[kMGTP]?\s+[\d.]+[kMGTP]?\s+[-\d:]+\s+[-\d:]+\s+[-\d:]+\s+[\d.]+[kMGTP]?\s*$/,Ky=/^\* (?:Trying |Connected to |Host .* was resolved|Connection #\d+|IPv[46]:|Uses proxy)|^> [A-Z]+ \S+ HTTP\/[\d.]+\s*$|^< HTTP\/[\d.]+ \d{3}/,Vy=/^(?:\* |[<>] (?:[A-Za-z][\w-]*: .*|[A-Z]+ \S+ HTTP\/[\d.]+|HTTP\/[\d.]+ .*)$|[<>]\s?$|[{}] \[\d+ bytes data\])/;U("curl-progress",Yy)});function hc(e,t=!1){let n=t?e.trimEnd():e.trim();return n.length>pc?`${n.slice(0,pc)}\u2026`:n}function eb(e){let t=[],n="";for(let r of e){let s=n?`${n}, ${r}`:r;s.length>=Qy&&n?(t.push(`${n},`),n=r):n=s}return n&&t.push(n),t}function tb(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 kc(e){return e.includes("/")||e.includes("\\")||/\.[A-Za-z][\w-]*$/.test(e)}function nb(e,t,n){return/^\d+$/.test(e)?!1:kc(e)?!0:(t||n)&&/^[\w.-]+$/.test(e)}function rb(e){let t=0,n=0;for(let r of e){let s=(gc.exec(r)??yc.exec(r)??bc.exec(r))?.[1];s&&(n+=1,kc(s)&&(t+=1))}return t>=2&&t*2>n}function _c(e,t={}){let n=e.filter(m=>m.trim()!=="");if(n.length===0)return e;let r=rb(n),s=new Map,o=new Map,i=null,a=0,l=0,c=null;for(let m of n){if(m==="--"){i&&s.get(i).push({separator:!0});continue}if(/^[A-Za-z]:[\\/]/.test(m))return e;let x=gc.exec(m),S=yc.exec(m);if(x&&S)return e;let O=x||S?null:bc.exec(m),P=(x??S??O)?.[1];if(!P||!nb(P,!!x,r))return e;let F=x?{line:x[2],content:x[3],context:!1}:S?{line:S[2],content:S[3],context:!0}:{line:"",content:O[2],context:!1},N=s.get(P)??[];N.push(F),s.set(P,N);let D=F.line?Number(F.line):NaN,j=t.astGrep&&P===i&&c!==null&&D===c+1;(t.astGrep?!j:!F.context)&&(a+=1,o.set(P,(o.get(P)??0)+1)),c=t.astGrep&&Number.isFinite(D)?D:null,l+=1,i=P}if(s.size===l)return e;let u=[...s.keys()].sort((m,x)=>{let S=mc.test(m)?1:0,O=mc.test(x)?1:0;return S-O||(m<x?-1:m>x?1:0)}),f=u.length>1?tb(u):"",d=m=>f?m.slice(f.length+1):m,p=[];for(let m of u){p.push(`${d(m)} (${o.get(m)??0}):`);for(let x of s.get(m))"separator"in x?p.push(" --"):x.line?p.push(` ${x.line}${x.context?"-":":"} ${hc(x.content,t.astGrep)}`):p.push(` ${hc(x.content,t.astGrep)}`)}let g=u.length>1&&p.length>Xy?eb(u.map(m=>`${d(m)} (${o.get(m)??0})`)):[],h=[`${a}m ${u.length}f${f?` in ${f}/`:""}:`,...g,"",...p];if(h.length>zs){let m=h.length-zs;return[...h.slice(0,zs),`\u2026 ${m} more lines omitted`]}return h}var zs,pc,Xy,Qy,gc,yc,bc,mc,wc=y(()=>{"use strict";X();dc();zs=1e3,pc=200,Xy=60,Qy=190,gc=/^([^\s:]+):(\d+):(.*)$/,yc=/^([^:]+?)-(\d+)-(.*)$/,bc=/^([^\s:]+):(.*)$/,mc=/(?:^|\/)(?:__tests__|tests?|spec|fixtures?|__mocks__|__snapshots__)\/|\.(?:test|spec)\.[^/]+$/i;U("smart-grep",_c);U("smart-grep-ast",e=>_c(e,{astGrep:!0}))});function mb(e){let t=[];for(let l=0;l<e.length;l+=1){let c=Sc.exec(e[l]);if(!c)continue;let u=l+1,f=null;e[u]?.startsWith("Merge: ")&&(f=e[u].slice(7),u+=1);let d=cb.exec(e[u]??""),p=ub.exec(e[u+1]??"");if(!d||!p)return null;let g=fb.indexOf(p[1])+1;if(g===0)return null;t.push({at:l,hash:c[1].slice(0,db),refs:c[2]??"",merge:f,author:d[1],date:`${p[4]}-${String(g).padStart(2,"0")}-${p[2].padStart(2,"0")} ${p[3]}`,zone:p[5],end:u+2})}if(t.length===0)return null;let n=[...new Set(t.map(l=>l.author))],r=n.length===1&&t.length>1?n[0]:null,s=n.length>1&&n.length<=pb&&t.length>n.length,o=t.length>1&&t.every(l=>l.zone===t[0].zone)?t[0].zone:null,i=r?[`author: ${r}`]:s?[`authors: ${n.map((l,c)=>`[${c+1}] ${l}`).join("; ")}`]:[];o&&i.push(`dates: UTC${o}`);let a=0;for(let l of t){i.push(...e.slice(a,l.at));let c=r?"":s?` [${n.indexOf(l.author)+1}]`:` ${l.author}`;i.push(`${l.hash} ${l.date}${o?"":` ${l.zone}`}${c}${l.merge?` merge ${l.merge}`:""}${l.refs}`),a=l.end}return i.push(...e.slice(a)),i}function hb(e){if(!e.some(r=>xc.test(r)))return e;let t=e.some(r=>Sc.test(r))&&!e.some(r=>/^[|\\/*]/.test(r)),n=gb(e,t?lb:ab);return mb(n)??n}function gb(e,t){let n=[],r=0,s=0,o=0,i="",a=!1,l=!1,c=()=>{s>0&&n.push(`${i} \u2026 ${s} ${s===1?"line":"lines"} folded \u2026`),s=0};for(let u of e){let f=u.slice(0,o),d=sb.test(f),p=d?u.slice(o):u,g=ob.test(p),h=a&&g?null:xc.exec(u);if(h){c(),r=0,o=h[1]?.length??0,a=!0,l=!1,n.push(u);continue}if(/^diff --(?:git|cc|combined) /.test(p)&&(l=!0),g&&!l&&!(o>0&&p.trim().length===0)){if(ib.test(p)){n.push(u);continue}r+=1,r<=t?n.push(u):(s+=1,i=d?f:"");continue}c(),n.push(u)}return c(),n}var xc,sb,ob,ib,ab,lb,Sc,cb,ub,fb,db,pb,Ec=y(()=>{"use strict";X();xc=/^(?:([|\\/ ._-]*\*[|\\/* ._-]* ))?commit [0-9a-f]{7,40}\b/,sb=/^[|\\/* ._-]*$/,ob=/^ {4}/,ib=/^ {4}(?:Co-[Aa]uthored-[Bb]y|Signed-off-by|Reviewed-by|Acked-by|Tested-by|Reported-by|Fixes|Closes):/,ab=2,lb=1,Sc=/^commit ([0-9a-f]{40})(\s.*)?$/,cb=/^Author:\s+(.+)$/,ub=/^Date:\s+(?:[A-Z][a-z]{2} )?([A-Z][a-z]{2}) +(\d{1,2}) (\d{2}:\d{2}):\d{2} (\d{4}) ([+-]\d{4})$/,fb=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],db=12,pb=5;U("smart-log",hb)});var yb,bb,kb,vc=y(()=>{"use strict";X();yb=/^[\s=]+$/,bb=/^\s*=+\s+(.*?)\s+=+\s*$/,kb=512;U("strip-banners",e=>{let t=[];for(let n of e){if(yb.test(n))continue;let r=n.length<=kb?bb.exec(n):null;t.push(r?r[1]:n)}return t})});function _b(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}var Tc=y(()=>{"use strict";X();U("squeeze-output",_b)});function wb(e){return e==="compact"?.6:e==="minimal"?.3:1}function Sb(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}function Eb(e){let t=$c.get(e);if(t)return t;let n=e.strip_lines_matching.map(o=>new RegExp(o)),r=(e.drop_lines_matching??[]).map(o=>new RegExp(o)),s={def:e,stripRegexes:n,dropRegexes:r};return $c.set(e,s),s}function Us(e){return!!e&&vb.test(e)}function Zs(e,t,n){if(e==="smart-ls")return Fs(t,n);let r=Ql(e);return r?r(t):t}function ar(e,t,n={}){return Gs(e,t,n).text}function Gs(e,t,n={}){let r=n.verbosity??"normal";if(!t.strip_ansi&&t.strip_lines_matching.length===0&&(t.drop_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=Eb(t),o=!t.preserve_exact&&e.includes(`\r
32
34
  `)?e.replace(/\r\n/g,`
33
- `):e;t.strip_ansi&&(o=he(o));let i=o.endsWith(`
35
+ `):e;t.strip_ansi&&(o=be(o));let i=o.endsWith(`
34
36
  `),a=(i?o.slice(0,-1):o).split(`
35
- `);s.stripRegexes.length&&(a=t.keep_failures?a.filter(p=>oe.test(p)||!s.stripRegexes.some(d=>d.test(p))):As(a,s.stripRegexes)),s.dropRegexes.length&&(a=As(a,s.dropRegexes)),r!=="normal"&&!t.preserve_exact&&(a=nr(a),a=Fl(a)),r==="minimal"&&!t.preserve_exact&&(a=Ml(a),(t.slug==="vitest"||t.slug==="npm-test")&&(a=Py(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"&&tr(o))&&(a=cn(a,l)),t.transform){let p=Gn(t.transform);t.transform==="smart-read"?a=cn(a,l,t.slug==="read-tool"):p&&(a=p(a))}let c=t.slug==="read-tool";if(!c){let p=Cs(a);p.some(Boolean)&&(a=a.filter((d,m)=>!p[m]))}t.mask_abs_paths&&(a=$l(a)),t.fold_passing&&(a=Tl(a,t.fold_passing_threshold??5)),t.truncate_lines_at&&(a=Sl(a,t.truncate_lines_at));let u=null;if(t.max_lines){let p=t.scale_with_level?Cy(n.verbosity):1,d=Math.min(t.max_lines,Math.max(Iy,Math.round(t.max_lines*p))),m=c?Cs(a):null,y=m?m.filter(b=>!b).length:a.length;if(y>d){let b=d;if(m){let T=0;for(b=0;b<a.length&&T<d;)m[b]||(T+=1),b+=1}let R=y-d;if(t.keep_failures){let T=a.slice(b),D=T.filter(M=>!oe.test(M)),C=T.reduce((M,L,F)=>M+(!oe.test(L)&&!m?.[b+F]?1:0),0);u=D.length>0?D.join(`
36
- `):null,a=[...a.slice(0,b),...C>0?[Tt(C)]:[],...T.filter(M=>oe.test(M))]}else if(c)u=a.slice(b).join(`
37
- `),a=[...a.slice(0,b),Tt(R)];else{let{kept:T,dropped:D}=vl(a,d);u=D.length>0?D.join(`
38
- `):null,a=T}}}let f=a.join(`
37
+ `);s.stripRegexes.length&&(a=t.keep_failures?a.filter(d=>le.test(d)||!s.stripRegexes.some(p=>p.test(d))):Ns(a,s.stripRegexes)),s.dropRegexes.length&&(a=Ns(a,s.dropRegexes)),r!=="normal"&&!t.preserve_exact&&(a=or(a),a=Yl(a)),r==="minimal"&&!t.preserve_exact&&(a=Kl(a),(t.slug==="vitest"||t.slug==="npm-test")&&(a=Sb(a)));let l=t.transform==="smart-read"&&n.smartCode!==!0?r==="compact"?8:r==="minimal"?6:3:3;!t.preserve_exact&&(n.smartCode||n.smartCode===void 0&&r!=="normal"&&sr(o))&&(a=fn(a,l)),t.transform&&(t.transform==="smart-read"?a=fn(a,l,t.slug==="read-tool"):a=Zs(t.transform,a,n.cmd));let c=t.slug==="read-tool";if(!c){let d=Ms(a);d.some(Boolean)&&(a=a.filter((p,g)=>!d[g]))}t.mask_abs_paths&&(a=jl(a)),t.fold_passing&&(a=Fl(a,t.fold_passing_threshold??5)),t.truncate_lines_at&&(a=Dl(a,t.truncate_lines_at));let u=null;if(t.max_lines){let d=t.scale_with_level?wb(n.verbosity):1,p=Math.min(t.max_lines,Math.max(xb,Math.round(t.max_lines*d))),g=c?Ms(a):null,h=g?g.filter(m=>!m).length:a.length;if(h>p){let m=p;if(g){let S=0;for(m=0;m<a.length&&S<p;)g[m]||(S+=1),m+=1}let x=h-p;if(t.keep_failures){let S=a.slice(m),O=S.filter(F=>!le.test(F)),P=S.reduce((F,N,D)=>F+(!le.test(N)&&!g?.[m+D]?1:0),0);u=O.length>0?O.join(`
38
+ `):null,a=[...a.slice(0,m),...P>0?[Ct(P)]:[],...S.filter(F=>le.test(F))]}else if(c)u=a.slice(m).join(`
39
+ `),a=[...a.slice(0,m),Ct(x)];else{let{kept:S,dropped:O}=Ll(a,p);u=O.length>0?O.join(`
40
+ `):null,a=S}}}let f=a.join(`
39
41
  `);return i&&f.length>0&&(f+=`
40
- `),f.trim().length===0&&t.on_empty&&(f=t.on_empty),{text:f,droppedTail:u}}var Iy,ic,Fs=h(()=>{"use strict";an();xl();El();Os();ln();Rl();$t();rr();W();zl();Ul();Gl();Jl();Wl();Vl();ql();ec();rc();sc();oc();Iy=20;ic=new WeakMap});import{readdir as Dy,readFile as uc,writeFile as CT,mkdir as IT,rename as PT}from"node:fs/promises";import{readdirSync as My,statSync as ac}from"node:fs";import{createHash as Ly}from"node:crypto";import{basename as LT,join as lr}from"node:path";function ar(){return lr(S(),"filters")}function dc(){return lr(S(),"filters-trust.json")}function pc(e){return typeof e=="string"&&e.startsWith(fc)}function jy(e){return Ly("sha256").update(e).digest("hex")}async function Hy(){try{let e=JSON.parse(await uc(dc(),"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 By(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 zy(e,t){let n=typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{},{tests:r,...s}=n,o=By(e,r);if("message"in o)return o;let i=Me.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:`${fc}${i.data.slug}`,matchRegex:a},tests:o.tests}}function Uy(e){return e===void 0||e===or?null:typeof e=="number"&&Number.isInteger(e)?`schema_version ${e} is not supported: this tkr reads schema_version = ${or}. Update tkr, or write the file for version ${or}`:`schema_version must be the number ${or}`}async function Zy(e){try{return(await Dy(e)).filter(t=>t.endsWith(".toml")).sort()}catch{return[]}}async function Gy(e={}){let t=e.requireTrust!==!1,n=ar(),r=new Map,s=new Map,o=[],i=await Zy(n);if(i.length===0)return{dir:n,filters:r,tests:s,issues:o};let a=t?await Hy():null;for(let l of i){let c;try{c=await uc(lr(n,l),"utf8")}catch{o.push({file:l,message:"could not be read"});continue}if(a){let f=a.files[l];if(!f){o.push({file:l,message:`not trusted yet. Review it, then run: tkr filters trust ${l}`});continue}if(f!==jy(c)){o.push({file:l,message:`changed since it was trusted. Review it, then run: tkr filters trust ${l}`});continue}}let u=await Jy(c,l);for(let[f,p]of u.filters)r.set(f,p);for(let[f,p]of u.tests)s.set(f,p);o.push(...u.issues)}return{dir:n,filters:r,tests:s,issues:o}}async function Jy(e,t){let n=new Map,r=new Map,s=[],{parse:o}=await Promise.resolve().then(()=>(zn(),ps)),i;try{i=o(e)}catch(c){return s.push({file:t,message:`not valid TOML (${String(c.message).split(`
41
- `)[0]})`}),{filters:n,tests:r,issues:s}}let a=Uy(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 f=zy(c,u);if("message"in f){s.push({file:t,message:f.message});continue}n.set(f.filter.slug,f.filter),f.tests.length>0&&r.set(f.filter.slug,{file:t,tests:f.tests})}return{filters:n,tests:r,issues:s}}function Ky(){let e=[];for(let t of[dc(),ar()])try{let n=ac(t);e.push(`${n.mtimeMs}:${n.size}`)}catch{e.push("-")}try{for(let t of My(ar()).filter(n=>n.endsWith(".toml")).sort()){let n=ac(lr(ar(),t));e.push(`${t}:${n.mtimeMs}:${n.size}`)}}catch{}return e.join("|")}function Wy(){let e=Date.now();if(!ir||e-cc>=Fy){cc=e;let t=Ky();(!ir||t!==lc)&&(lc=t,ir=Gy())}return ir}async function Vy(e){let{filters:t}=await Wy();return t.size===0?null:vt(e,t.values(),null,t)}function mc(e){return async(t,n)=>await Vy(t)??e(t,n)}var fc,or,ir,lc,cc,Fy,js=h(()=>{"use strict";on();Qn();Fs();j();fc="user/",or=1,ir=null,lc="",cc=0,Fy=1e3});function hc(e){if(!e)return!1;for(let t of he(e).split(`
42
- `))if(!/^\s*[✓✔√]\s/.test(t)&&qy.some(n=>n.test(t)))return!0;return!1}var qy,gc=h(()=>{"use strict";an();qy=[/\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 Te(e){let t=e.trim(),n=t.split(/\s+/),r=0;for(;r<n.length;){let a=n[r];if(Xy.test(a)){r++;continue}if(Yy.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}function yc(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 eb(e){let t=yc(e,!1);for(let n=t.length-1;n>=0;n--){let r=t[n].trim();if(r)return r}return e.trim()}function un(e){let t=yc(e,!0).map(n=>n.trim()).filter(Boolean);if(t.length===0)return null;for(let n of t.slice(0,-1)){let r=Te(n).split(/\s+/)[0]??"";if(!Qy.has(r))return null}return eb(t[t.length-1])}function bc(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()}function Bs(e){let t=tb.exec(e);return t?Te(e.slice(t[0].length)):null}function kc(e){let t=Hs.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=un(n),s=r?Te(r):null,i=[s?Bs(s):null,s,e].filter(a=>!!a);return[...new Set(i)]}var Yy,Xy,Hs,Qy,tb,zs=h(()=>{"use strict";Yy=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Xy=/^[A-Za-z_][A-Za-z0-9_]*=/,Hs=/^([a-z]+)-tool(?::\s|$)/;Qy=new Set(["cd","export","source","set","unset","mkdir","true",":","pushd","popd","alias","ulimit","umask","echo","printf","sleep","touch","rm","cp","mv","chmod","ln"]);tb=/^(?: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 Us(e){let t=Buffer.from(e,"utf8");if(t.length<=256)return e;let n=256-Buffer.byteLength(_c,"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")+_c+t.subarray(s).toString("utf8")}var _c,wc=h(()=>{"use strict";_c=`
42
+ `),f.trim().length===0&&t.on_empty&&(e.length===0||e.trim().length>0)&&(n.exitCode==null||n.exitCode===0||n.exitCode===1&&Tb.has(t.slug))&&!Us(n.cmd)&&(f=t.on_empty),{text:f,droppedTail:u}}var xb,$c,vb,Tb,Ws=y(()=>{"use strict";cn();Pl();Ml();Ds();un();Hl();It();ir();X();rc();sc();ic();ac();cc();uc();fc();wc();Ec();vc();Tc();xb=20;$c=new WeakMap;vb=new RegExp([String.raw`(?:^|[\s;&|(])grep(?=\s)[^|;&]*?\s(?:-[A-Za-z]*q[A-Za-z]*|--quiet|--silent)(?=\s|$)`,String.raw`(?:^|[\s;&|(])find(?=\s)[^|;&]*?\s-(?:delete|quit|exec|execdir|ok|okdir|fprint0?|fprintf|fls|prune)(?=\s|$)`,String.raw`(?:^|[\s;&|(])(?:ruff|black|flake8)(?=\s)[^|;&]*?\s(?:-q+|--quiet)(?=\s|$)`,String.raw`(?:^|[\s;&|(])eslint(?=\s)[^|;&]*?\s(?:-o|--output-file)(?=[\s=]|$)`,String.raw`(?:^|[\s;&|(])prettier(?=\s)[^|;&]*?\s(?:-l|--list-different)(?=\s|$)`].join("|")),Tb=new Set(["grep","ast-grep"])});import{readdir as $b,readFile as Cc,writeFile as j$,mkdir as H$,rename as B$}from"node:fs/promises";import{readdirSync as Rb,statSync as Rc}from"node:fs";import{createHash as Ab}from"node:crypto";import{basename as G$,join as fr}from"node:path";function ur(){return fr(v(),"filters")}function Pc(){return fr(v(),"filters-trust.json")}function Nc(e){return typeof e=="string"&&e.startsWith(Ic)}function Cb(e){return Ab("sha256").update(e).digest("hex")}async function Ib(){try{let e=JSON.parse(await Cc(Pc(),"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 Pb(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 Nb(e,t){let n=typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{},{tests:r,...s}=n,o=Pb(e,r);if("message"in o)return o;let i=je.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:`${Ic}${i.data.slug}`,matchRegex:a},tests:o.tests}}function Db(e){return e===void 0||e===lr?null:typeof e=="number"&&Number.isInteger(e)?`schema_version ${e} is not supported: this tkr reads schema_version = ${lr}. Update tkr, or write the file for version ${lr}`:`schema_version must be the number ${lr}`}async function Mb(e){try{return(await $b(e)).filter(t=>t.endsWith(".toml")).sort()}catch{return[]}}async function Lb(e={}){let t=e.requireTrust!==!1,n=ur(),r=new Map,s=new Map,o=[],i=await Mb(n);if(i.length===0)return{dir:n,filters:r,tests:s,issues:o};let a=t?await Ib():null;for(let l of i){let c;try{c=await Cc(fr(n,l),"utf8")}catch{o.push({file:l,message:"could not be read"});continue}if(a){let f=a.files[l];if(!f){o.push({file:l,message:`not trusted yet. Review it, then run: tkr filters trust ${l}`});continue}if(f!==Cb(c)){o.push({file:l,message:`changed since it was trusted. Review it, then run: tkr filters trust ${l}`});continue}}let u=await Fb(c,l);for(let[f,d]of u.filters)r.set(f,d);for(let[f,d]of u.tests)s.set(f,d);o.push(...u.issues)}return{dir:n,filters:r,tests:s,issues:o}}async function Fb(e,t){let n=new Map,r=new Map,s=[],{parse:o}=await Promise.resolve().then(()=>(Gn(),ys)),i;try{i=o(e)}catch(c){return s.push({file:t,message:`not valid TOML (${String(c.message).split(`
43
+ `)[0]})`}),{filters:n,tests:r,issues:s}}let a=Db(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 f=Nb(c,u);if("message"in f){s.push({file:t,message:f.message});continue}n.set(f.filter.slug,f.filter),f.tests.length>0&&r.set(f.filter.slug,{file:t,tests:f.tests})}return{filters:n,tests:r,issues:s}}function jb(){let e=[];for(let t of[Pc(),ur()])try{let n=Rc(t);e.push(`${n.mtimeMs}:${n.size}`)}catch{e.push("-")}try{for(let t of Rb(ur()).filter(n=>n.endsWith(".toml")).sort()){let n=Rc(fr(ur(),t));e.push(`${t}:${n.mtimeMs}:${n.size}`)}}catch{}return e.join("|")}function Hb(){let e=Date.now();if(!cr||e-Oc>=Ob){Oc=e;let t=jb();(!cr||t!==Ac)&&(Ac=t,cr=Lb())}return cr}async function Bb(e){let{filters:t}=await Hb();return t.size===0?null:Ot(e,t.values(),null,t)}function Dc(e){return async(t,n)=>await Bb(t)??e(t,n)}var Ic,lr,cr,Ac,Oc,Ob,Js=y(()=>{"use strict";ln();nr();Ws();H();Ic="user/",lr=1,cr=null,Ac="",Oc=0,Ob=1e3});function Mc(e){if(!e)return!1;for(let t of be(e).split(`
44
+ `))if(!/^\s*[✓✔√]\s/.test(t)&&zb.some(n=>n.test(t)))return!0;return!1}var zb,Lc=y(()=>{"use strict";cn();zb=[/\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 Jb(e){let t=0;for(;t<e.length;){let n=e[t];if(Gb.has(n))t+=2;else if(Wb.has(n))t+=1;else if(/^--(?:git-dir|work-tree|namespace|exec-path|super-prefix|config-env)=/.test(n))t+=1;else if(/^-[Cc]\S/.test(n))t+=1;else break}return e.slice(t)}function Re(e){let t=e.trim(),n=t.split(/\s+/),r=0;for(;r<n.length;){let a=n[r];if(Zb.test(a)){r++;continue}if(Ub.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=o==="git"?Jb(n.slice(r+1)):n.slice(r+1);return i.length?`${o} ${i.join(" ")}`:o}function Fc(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 Vb(e){let t=Fc(e,!1);for(let n=t.length-1;n>=0;n--){let r=t[n].trim();if(r)return r}return e.trim()}function dn(e){let t=Fc(e,!0).map(n=>n.trim()).filter(Boolean);if(t.length===0)return null;for(let n of t.slice(0,-1)){let r=Re(n).split(/\s+/)[0]??"";if(!Kb.has(r))return null}return Vb(t[t.length-1])}function jc(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()}function Vs(e){let t=qb.exec(e);return t?Re(e.slice(t[0].length)):null}function Hc(e){let t=Ks.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=dn(n),s=r?Re(r):null,i=[s?Vs(s):null,s,e].filter(a=>!!a);return[...new Set(i)]}var Ub,Zb,Ks,Gb,Wb,Kb,qb,qs=y(()=>{"use strict";Ub=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Zb=/^[A-Za-z_][A-Za-z0-9_]*=/,Ks=/^([a-z]+)-tool(?::\s|$)/,Gb=new Set(["-C","-c","--git-dir","--work-tree","--namespace","--exec-path","--super-prefix","--config-env"]),Wb=new Set(["-p","--paginate","-P","--no-pager","--bare","--no-replace-objects","--literal-pathspecs","--glob-pathspecs","--noglob-pathspecs","--icase-pathspecs","--no-optional-locks","--no-lazy-fetch","--no-advice"]);Kb=new Set(["cd","export","source","set","unset","mkdir","true",":","pushd","popd","alias","ulimit","umask","echo","printf","sleep","touch","rm","cp","mv","chmod","ln"]);qb=/^(?: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 Ys(e){let t=Buffer.from(e,"utf8");if(t.length<=256)return e;let n=256-Buffer.byteLength(Bc,"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")+Bc+t.subarray(s).toString("utf8")}var Bc,zc=y(()=>{"use strict";Bc=`
43
45
  [YOLO: omitted]
44
- `});function sb(e,t){if(!t)return e.split(`
46
+ `});function Qb(e,t){if(!t)return e.split(`
45
47
  `).map(o=>o.replace(/^[ \t]+|[ \t]+(?=\r?$)/g,"")).join(`
46
48
  `);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!==`
47
49
  `&&(n+=o);return n+(e.endsWith(`
48
50
  `)?`
49
- `:"")}function ob(e,t){if(/@(?:p)?\d|\r/.test(e))return e;let n=e.endsWith(`
51
+ `:"")}function ek(e,t){if(/@(?:p)?\d|\r/.test(e))return e;let n=e.endsWith(`
50
52
  `)?`
51
53
  `:"",r=(n?e.slice(0,-1):e).split(`
52
- `),s=r.findIndex(b=>nb.test(b));if(s>=0&&r.slice(0,s).some(b=>b!==""&&!/^Showing \d+ of \d+ (?:open|closed|all) pull requests in \S+$/.test(b)))return e;let o=s>=0?[...r[s].matchAll(/\S+/g)].map(b=>b.index):[],i=[];for(let b=s+1;b<r.length;b+=1){let R=r[b];if(rb.test(R))continue;if(/…|\.\.\./.test(R))return e;let T;if(s>=0){if(/[^\x20-\x7e]/.test(R))return e;let D=o.map((C,M)=>R.slice(C,o[M+1]));if(D.slice(0,-1).some(C=>C[0]===" "||!C.endsWith(" "))||(T=D.map(C=>C.replace(/ +$/,"")),!/^#\d+$/.test(T[0])||!/^\S+$/.test(T[2])||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(T[3])||!/^\d+(?:s|m|h|d|w|mo|y)$/.test(T[4])))return e}else if(T=R.split(" "),T.length!==5||!/^\d+$/.test(T[0])||!T[1]||!T[2]||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(T[3])||!Zs.test(T[4])||!Number.isFinite(Date.parse(T[4])))return e;if(T.some(D=>/[\u0000-\u001f\u007f]/.test(D)))return e;i.push({index:b,cells:T})}if(i.length===0)return e;s>=0&&(r[s]="ID TITLE BRANCH STATE CREATED");for(let b of i)r[b.index]=b.cells.join(" ");let a=r.join(`
53
- `)+n;if(!t)return a;let l=new Map;for(let{cells:b}of i)l.set(b[1],(l.get(b[1])??0)+1);let c=new Map,u=[];for(let[b,R]of l){if(b.length<40||R<3||b.trim().split(/\s+/).length<8)continue;let T=`@${c.size+1}`,D=JSON.stringify(b).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),C=`TITLE ${T} = ${D}`;R*(Buffer.byteLength(b)-Buffer.byteLength(T))<=Buffer.byteLength(C)+1||(c.set(b,T),u.push(C))}let f=new Map;for(let{cells:b}of i){if(c.has(b[1]))continue;let R=/^((?:\S+\s+){4})\S/.exec(b[1])?.[1];R&&R.length>=24&&f.set(R,(f.get(R)??0)+1)}let p=new Map;for(let[b,R]of f){if(R<3)continue;let T=`@p${p.size+1}`,D=`TITLE prefix ${T} = ${JSON.stringify(b).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}`;R*(Buffer.byteLength(b)-Buffer.byteLength(T)-1)<=Buffer.byteLength(D)+1||(p.set(b,T),u.push(D))}let d=i[0].cells[4].slice(10),m=i.length>=3&&Zs.test(i[0].cells[4])&&i.every(({cells:b})=>Zs.test(b[4])&&b[4].slice(10)===d)&&i.length*d.length>`CREATED suffix = ${JSON.stringify(d)}`.length+1;if(m&&u.push(`CREATED suffix = ${JSON.stringify(d)}`),u.length===0)return a;for(let{index:b,cells:R}of i){let T=c.get(R[1]),D=/^((?:\S+\s+){4})\S/.exec(R[1])?.[1],C=D?p.get(D):void 0;r[b]=R.map((M,L)=>L===1?T??(C?`${C}:${M.slice(D.length)}`:M):L===4&&m?M.slice(0,10):M).join(" ")}let y=[...r,"",...u].join(`
54
- `)+n;return Buffer.byteLength(y)<Buffer.byteLength(a)?y:a}function ub(e){let t=lb.exec(e[0]??"");if(!t)return e;let n=cb.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 Sc(e){let t=e.endsWith(`
54
+ `),s=r.findIndex(m=>Yb.test(m));if(s>=0&&r.slice(0,s).some(m=>m!==""&&!/^Showing \d+ of \d+ (?:open|closed|all) pull requests in \S+$/.test(m)))return e;let o=s>=0?[...r[s].matchAll(/\S+/g)].map(m=>m.index):[],i=[];for(let m=s+1;m<r.length;m+=1){let x=r[m];if(Xb.test(x))continue;if(/…|\.\.\./.test(x))return e;let S;if(s>=0){if(/[^\x20-\x7e]/.test(x))return e;let O=o.map((P,F)=>x.slice(P,o[F+1]));if(O.slice(0,-1).some(P=>P[0]===" "||!P.endsWith(" "))||(S=O.map(P=>P.replace(/ +$/,"")),!/^#\d+$/.test(S[0])||!/^\S+$/.test(S[2])||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(S[3])||!/^\d+(?:s|m|h|d|w|mo|y)$/.test(S[4])))return e}else if(S=x.split(" "),S.length!==5||!/^\d+$/.test(S[0])||!S[1]||!S[2]||!/^(OPEN|CLOSED|MERGED|DRAFT)$/.test(S[3])||!Xs.test(S[4])||!Number.isFinite(Date.parse(S[4])))return e;if(S.some(O=>/[\u0000-\u001f\u007f]/.test(O)))return e;i.push({index:m,cells:S})}if(i.length===0)return e;s>=0&&(r[s]="ID TITLE BRANCH STATE CREATED");for(let m of i)r[m.index]=m.cells.join(" ");let a=r.join(`
55
+ `)+n;if(!t)return a;let l=new Map;for(let{cells:m}of i)l.set(m[1],(l.get(m[1])??0)+1);let c=new Map,u=[];for(let[m,x]of l){if(m.length<40||x<3||m.trim().split(/\s+/).length<8)continue;let S=`@${c.size+1}`,O=JSON.stringify(m).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"),P=`TITLE ${S} = ${O}`;x*(Buffer.byteLength(m)-Buffer.byteLength(S))<=Buffer.byteLength(P)+1||(c.set(m,S),u.push(P))}let f=new Map;for(let{cells:m}of i){if(c.has(m[1]))continue;let x=/^((?:\S+\s+){4})\S/.exec(m[1])?.[1];x&&x.length>=24&&f.set(x,(f.get(x)??0)+1)}let d=new Map;for(let[m,x]of f){if(x<3)continue;let S=`@p${d.size+1}`,O=`TITLE prefix ${S} = ${JSON.stringify(m).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}`;x*(Buffer.byteLength(m)-Buffer.byteLength(S)-1)<=Buffer.byteLength(O)+1||(d.set(m,S),u.push(O))}let p=i[0].cells[4].slice(10),g=i.length>=3&&Xs.test(i[0].cells[4])&&i.every(({cells:m})=>Xs.test(m[4])&&m[4].slice(10)===p)&&i.length*p.length>`CREATED suffix = ${JSON.stringify(p)}`.length+1;if(g&&u.push(`CREATED suffix = ${JSON.stringify(p)}`),u.length===0)return a;for(let{index:m,cells:x}of i){let S=c.get(x[1]),O=/^((?:\S+\s+){4})\S/.exec(x[1])?.[1],P=O?d.get(O):void 0;r[m]=x.map((F,N)=>N===1?S??(P?`${P}:${F.slice(O.length)}`:F):N===4&&g?F.slice(0,10):F).join(" ")}let h=[...r,"",...u].join(`
56
+ `)+n;return Buffer.byteLength(h)<Buffer.byteLength(a)?h:a}function ok(e){let t=rk.exec(e[0]??"");if(!t)return e;let n=sk.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 Zc(e){let t=e.endsWith(`
55
57
  `)?`
56
- `:"",n=ub((t?e.slice(0,-1):e).split(`
57
- `)),r=null,s=[];for(let o of n){if(Object.hasOwn(xc,o)){r=xc[o];continue}if(!o.startsWith(" ")){r=null,s.push(o);continue}if(r==="untracked"){s.push(`?? ${o.slice(1)}`);continue}let i=r?ab.exec(o):null;if(!i)return e;let a=ib[i[1]];s.push(r==="staged"?`${a} ${i[2]}`:` ${a} ${i[2]}`)}return s.join(`
58
- `)+t}function db(e){let t=e.split(`
59
- `);for(let n=0;n<t.length;n+=1){if(!fb.test(t[n]))continue;let r=n;for(;r>0&&Ec.test(t[r-1]);)r-=1;for(let s=r;s<n;s+=1)t[s]=t[s].replace(Ec," $1 | $2")}return t.join(`
60
- `)}function mb(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 hb(e){let t=e.endsWith(`
58
+ `:"",n=ok((t?e.slice(0,-1):e).split(`
59
+ `)),r=null,s=[];for(let o of n){if(Object.hasOwn(Uc,o)){r=Uc[o];continue}if(!o.startsWith(" ")){r=null,s.push(o);continue}if(r==="untracked"){s.push(`?? ${o.slice(1)}`);continue}let i=r?nk.exec(o):null;if(!i)return e;let a=tk[i[1]];s.push(r==="staged"?`${a} ${i[2]}`:` ${a} ${i[2]}`)}return s.join(`
60
+ `)+t}function ak(e){let t=e.split(`
61
+ `);for(let n=0;n<t.length;n+=1){if(!ik.test(t[n]))continue;let r=n;for(;r>0&&Gc.test(t[r-1]);)r-=1;for(let s=r;s<n;s+=1)t[s]=t[s].replace(Gc," $1 | $2")}return t.join(`
62
+ `)}function ck(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 uk(e){let t=e.endsWith(`
61
63
  `)?`
62
64
  `:"",n=(t?e.slice(0,-1):e).split(`
63
- `),r=[],s=[];for(let c of n)c.startsWith("WARNING:")?r.includes(c)||r.push(c):s.push(c);let o=s.findIndex(c=>vc.test(c));if(o<0)return[...r,...s].join(`
64
- `)+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(Tc.test(c)){l.push(c);continue}let u=c.startsWith(" ")||/[^\x20-\x7e]/.test(c)?null:mb(c,a);if(!u)return[...r,...s].join(`
65
+ `),r=[],s=[];for(let c of n)c.startsWith("WARNING:")?r.includes(c)||r.push(c):s.push(c);let o=s.findIndex(c=>Wc.test(c));if(o<0)return[...r,...s].join(`
66
+ `)+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(Jc.test(c)){l.push(c);continue}let u=c.startsWith(" ")||/[^\x20-\x7e]/.test(c)?null:ck(c,a);if(!u)return[...r,...s].join(`
65
67
  `)+t;l.push(u.join(" "))}return l.join(`
66
- `)+t}function gb(e){let t=e.endsWith(`
68
+ `)+t}function fk(e){let t=e.endsWith(`
67
69
  `)?`
68
70
  `:"",n=(t?e.slice(0,-1):e).split(`
69
- `),r=n.findIndex(i=>vc.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(Tc.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(`
70
- `)+t}function Gs(e,t,n){if(t!=="compact"&&t!=="minimal"){if(n!=="git-status")return e;let s=Sc(e);return Buffer.byteLength(s)<Buffer.byteLength(e)?s:e}let r=e;if(/^[ \t\r\n]*[\[{]/.test(e)){try{JSON.parse(e)}catch{return e}r=sb(e,t==="minimal")}else n==="gh"?r=ob(e,t==="minimal"):n==="git-status"?r=Sc(e):n==="gcloud"?r=hb(e):n==="oc"?r=gb(e):n==="git-diff"?r=db(e):n==="tofu-plan"&&(r=e.replace(pb,"$1 = "));return Buffer.byteLength(r)<Buffer.byteLength(e)?r:e}var nb,rb,Zs,xc,ib,ab,lb,cb,Ec,fb,pb,vc,Tc,$c=h(()=>{"use strict";nb=/^ID {2,}TITLE {2,}BRANCH {2,}STATE {2,}CREATED *$/,rb=/^… \([1-9]\d* more lines omitted\)$/,Zs=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;xc={"Changes to be committed:":"staged","Changes not staged for commit:":"unstaged","Untracked files:":"untracked"},ib={modified:"M",deleted:"D","new file":"A",renamed:"R",copied:"C",typechange:"T"},ab=/^\t(modified|deleted|new file|renamed|copied|typechange):\s+(.+)$/,lb=/^On branch (\S+)$/,cb=/^Your branch is (?:up to date with '([^']+)'|(ahead|behind)(?: of)? '([^']+)' by (\d+) commits?(?:, and can be fast-forwarded)?)\.$/;Ec=/^ (\S.*?) +\| +(\d+(?: [+-]+)?|Bin .*)$/,fb=/^ \d+ files? changed(?:, \d+ insertions?\(\+\))?(?:, \d+ deletions?\(-\))?$/;pb=/^( *(?:[~+-] +)?(?:[\w.-]+|"[^"\n]*")) {2,}= /gm,vc=/^[A-Z][A-Z0-9_]*(?: +[A-Z][A-Z0-9_]*)+$/,Tc=/^… \(\d+ more lines omitted\)$/});function Rc(e){if(Buffer.byteLength(e)<2048||tr(e)||bb.test(e))return e;let t=e.split(`
71
- `),n=[];for(let r=0;r<t.length;){let s=t[r],o=r+1;if(yb.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(`
72
- `)}var yb,bb,Ac=h(()=>{"use strict";$t();yb=/^(?:\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|$)/,bb=/^\[tkr: previous log line repeated \d+ additional times\]$/m});function Oc(e){return _b.test(e)}function Cc(e){let t=e.endsWith(`
71
+ `),r=n.findIndex(i=>Wc.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(Jc.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(`
72
+ `)+t}function Qs(e,t,n){if(t!=="compact"&&t!=="minimal"){if(n!=="git-status")return e;let s=Zc(e);return Buffer.byteLength(s)<Buffer.byteLength(e)?s:e}let r=e;if(/^[ \t\r\n]*[\[{]/.test(e)){try{JSON.parse(e)}catch{return e}r=Qb(e,t==="minimal")}else n==="gh"?r=ek(e,t==="minimal"):n==="git-status"?r=Zc(e):n==="gcloud"?r=uk(e):n==="oc"?r=fk(e):n==="git-diff"?r=ak(e):n==="tofu-plan"&&(r=e.replace(lk,"$1 = "));return Buffer.byteLength(r)<Buffer.byteLength(e)?r:e}var Yb,Xb,Xs,Uc,tk,nk,rk,sk,Gc,ik,lk,Wc,Jc,Kc=y(()=>{"use strict";Yb=/^ID {2,}TITLE {2,}BRANCH {2,}STATE {2,}CREATED *$/,Xb=/^… \([1-9]\d* more lines omitted\)$/,Xs=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;Uc={"Changes to be committed:":"staged","Changes not staged for commit:":"unstaged","Untracked files:":"untracked"},tk={modified:"M",deleted:"D","new file":"A",renamed:"R",copied:"C",typechange:"T"},nk=/^\t(modified|deleted|new file|renamed|copied|typechange):\s+(.+)$/,rk=/^On branch (\S+)$/,sk=/^Your branch is (?:up to date with '([^']+)'|(ahead|behind)(?: of)? '([^']+)' by (\d+) commits?(?:, and can be fast-forwarded)?)\.$/;Gc=/^ (\S.*?) +\| +(\d+(?: [+-]+)?|Bin .*)$/,ik=/^ \d+ files? changed(?:, \d+ insertions?\(\+\))?(?:, \d+ deletions?\(-\))?$/;lk=/^( *(?:[~+-] +)?(?:[\w.-]+|"[^"\n]*")) {2,}= /gm,Wc=/^[A-Z][A-Z0-9_]*(?: +[A-Z][A-Z0-9_]*)+$/,Jc=/^… \(\d+ more lines omitted\)$/});function Vc(e){if(Buffer.byteLength(e)<2048||sr(e)||pk.test(e))return e;let t=e.split(`
73
+ `),n=[];for(let r=0;r<t.length;){let s=t[r],o=r+1;if(dk.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(`
74
+ `)}var dk,pk,qc=y(()=>{"use strict";It();dk=/^(?:\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|$)/,pk=/^\[tkr: previous log line repeated \d+ additional times\]$/m});function Yc(e){return hk.test(e)}function Xc(e){let t=e.endsWith(`
73
75
  `),n=(t?e.slice(0,-1):e).split(`
74
- `),r=0;for(let s of n)if(s.trim()!==""){if(!kb.test(s))return null;r+=1}return r<2?null:`tsc: 0 errors, ${r} files${t?`
75
- `:""}`}var kb,_b,Ic=h(()=>{"use strict";kb=/^(?:[A-Za-z]:)?[^\s"'<>|]+\.(?:[cm]?[jt]sx?|json)$/,_b=/--(?:listFiles|listFilesOnly|listEmittedFiles|showConfig|explainFiles|traceResolution)(?:\s|=|$)/});function Rt(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 cr(e){return wb.test(e)}function ur(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 Js(e,t=()=>!1){let n=[],r=null,s=-1,o=!1;for(let f of e){let p=f.trimEnd(),d=p.trim();if(!d||vb.test(p)||/^─+$/.test(d))continue;if(t(d)){o=!0,n.push({kind:"out",text:d.replace(/\s*─+$/,"")});continue}if(o){n.push({kind:"out",text:d});continue}let m=xb.exec(p)??Sb.exec(p);if(m){s=-1;let b=m[1].replace(/^file:\/\//,"");cr(b)||(r=ur(n,`${b}:${m[2]}${m[3]?`:${m[3]}`:""}`,r));continue}let y=Eb.exec(p);if(y){s=-1,n.push({kind:"code",text:d,num:Number(y[2]),pointed:y[1]===">"});continue}if(Tb.test(d)){s=n.length,n.push({kind:"legend",text:d});continue}n.push(s>=0?{kind:"diff",text:p,segment:s}:{kind:"msg",text:d})}let i=n.some(f=>f.kind==="code"&&f.pointed),a=r?Number(/:(\d+)(?::\d+)?$/.exec(r)?.[1]):NaN,l=!1,c=n.filter(f=>{if(f.kind!=="code")return!0;let p=!l&&(i?f.pointed===!0:f.num===a);return p&&(l=!0),p}),u=new Map;for(let f of c){if(f.kind!=="diff")continue;let p=f.text.length-f.text.trimStart().length;u.set(f.segment,Math.min(u.get(f.segment)??p,p))}for(let f of c)f.kind==="diff"&&(f.text=f.text.slice(u.get(f.segment)??0)),f.kind==="code"&&(f.kind="source",f.text=f.text.replace(/^>\s*/,""));return{body:c,loc:r}}function Y(e,t=!1){return{text:e.trim().replace(/\s{2,}/g," "),minor:t}}function $b(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=Rt(e,/^\s*Tests\s+(\d+) failed/),n=[];for(let l of e)/^\s*Test Files\s{2,}\S/.test(l)?n.push(Y(l,!0)):/^\s*(?:Tests|Errors|Type Errors)\s{2,}\S/.test(l)&&n.push(Y(l));let r=[],s=0,o=[],i=[],a=()=>{if(o.length){let{body:l,loc:c}=Js(i);for(let u of o)u.body=l,u.loc=c}o=[],i=[]};for(let l of e){let c=l.trim(),u=/^ ?FAIL\s+(\S.*?)\s*$/.exec(l);if(u){i.some(b=>b.trim())&&a();let p=u[1],d=/^(\S+) \[ \S+ \]$/.exec(p),m=p.split(" > "),y=d?{file:d[1],name:"(suite)",loc:null,body:[]}:m.length>1?{file:m[0],name:m.slice(1).join(" > "),loc:null,body:[]}:{file:null,name:p,loc:null,body:[]};d||(s+=1),r.push(y),o.push(y);continue}let f=/^⎯+ (Unhandled [A-Za-z ]+?) ⎯+$/.exec(c);if(f){a();let p={file:null,name:f[1],loc:null,body:[]};r.push(p),o.push(p);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 f=/^\s+[×✗]\s+(.+?)(?:\s+\d+(?:\.\d+)?m?s)?$/.exec(c);f&&(r.push({file:l,name:f[1],loc:null,body:[]}),s+=1)}}return{failures:r,summary:n,reported:t,counted:s}}function Rb(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=Rt(e,/^Tests:\s+(\d+) failed/),n=[];for(let u of e)/^Test Suites:\s/.test(u)?n.push(Y(u,!0)):(/^Tests:\s/.test(u)||/^Snapshots:\s/.test(u)&&/failed|obsolete/.test(u))&&n.push(Y(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:f,loc:p}=Js(l);a.body=f,a.loc=p,r.push(a),a.name!=="Test suite failed to run"&&(o+=1)}}a=null,l=[]};for(let u of e){let f=/^(?:FAIL|PASS)\s+(\S+)/.exec(u);if(f){c(),i=f[1];continue}if(/^(?:Summary of all failing tests|Test Suites:|Tests:|Snapshots:|Time:|Ran all test suites)/.test(u)){c();continue}let p=/^\s{2}● (.+)$/.exec(u);if(p){c(),p[1].trim()!=="Console"&&(a={file:i,name:p[1].trim(),loc:null,body:[]});continue}a&&l.push(u)}return c(),{failures:r,summary:n,reported:t,counted:o}}function Fc(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:f,used:p}=r(u[1],e.slice(l+1,Math.min(n,l+8)));l+=p,a=i.get(f)??null,a||(a=[],i.set(f,a),o.push({file:null,name:f,loc:null,body:[]}));continue}/^\s+Retry #\d+ ─*/.test(c)||a&&a.push(c)}for(let l of o){let{body:c,loc:u}=Js(i.get(l.name),s);l.body=c,l.loc=u}return o}function Ab(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=>Y(o.replace(/ \(\S+\)\s*$/,""))),s=Fc(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 Ob(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=Rt(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=>Y(a.replace(/ \([\d.]+m?s\)\s*$/,""))),i=Fc(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 Cb(e){if(!e.some(i=>/^test result: /.test(i))||!e.some(i=>/^---- .+ stdout ----$/.test(i)))return null;let t=Rt(e,/^test result: FAILED\. \d+ passed; (\d+) failed/),n=[];for(let i of e)/^test result: FAILED/.test(i)?n.push(Y(i.replace(/; finished in [\d.]+m?s\s*$/,""))):/^test result: ok/.test(i)?n.push(Y(i.replace(/; finished in [\d.]+m?s\s*$/,""),!0)):/^error(?:\[\w+\])?: /.test(i)&&n.push(Y(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 f=u.trimEnd(),p=f.trim();if(!p)continue;let d=/^thread '.+?'(?: \(\d+\))? panicked at (?:'(.*)', )?(\S+?):(\d+):(\d+):?$/.exec(p);if(d){l=!0,i.loc??=`${d[2]}:${d[3]}:${d[4]}`,d[1]&&i.body.push({kind:"msg",text:d[1]});continue}if(!/^note: run with `RUST_BACKTRACE/.test(p)){if(/^stack backtrace:$/.test(p)){c=!0;continue}if(c){let m=/^at\s+(\S+?):(\d+):(\d+)$/.exec(p);m&&!cr(m[1])&&(i.loc=ur(i.body,`${m[1]}:${m[2]}:${m[3]}`,i.loc));continue}i.body.push(l?{kind:"msg",text:f}:{kind:"out",text:f})}}}return{failures:r,summary:n,reported:t,counted:r.length}}function Ib(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(Y(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(Y(a,!0));continue}if(i)r.get(i).push(a);else if(o){let f=t.get(o)??[];f.push(a),t.set(o,f)}else(/^#\s\S+$/.test(a)||/^\S+\.go:\d+(?::\d+)?: /.test(a))&&s.push(Y(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){cr(u[1])||(a.loc=ur(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}}function Nc(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 f=/^(\S+?\.py):(\d+):(?: (.*))?$/.exec(c);if(f){if(cr(f[1]))o>=0&&n.splice(o,1);else{let p=f[3]?.startsWith("in ")?` ${f[3]}`:"";r=ur(n,`${f[1]}:${f[2]}${r===null?"":p}`,r)}o=-1;continue}/^>\s/.test(c)&&(o=n.length,n.push({kind:"source",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 Dc(e,t){return t.push(Y(e.replace(/ in [\d.]+s(?: \([\d:]+\))?$/,""))),(Rt([e],/(\d+) failed/)??0)+(Rt([e],/(\d+) errors?\b/)??0)}function Pb(e){if(!e.some(f=>/^={3,} (?:FAILURES|ERRORS|short test summary info) ={3,}$/.test(f)||Pc.test(f)))return null;let t=new Map,n=[],r=[],s="",o=null,i=null,a=null;for(let f of e){let p=/^={3,} (.+?) ={3,}$/.exec(f);if(p){s=p[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=Dc(s,r));continue}if(/^(?:\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)(?:, |\s|$))+(?:in [\d.]+s(?: \([\d:]+\))?)?$/.test(f.trim())){a=Dc(f.trim(),r);continue}if(/^!{3,} .+ !{3,}$/.test(f)){r.push(Y(f.replace(/^!+ | !+$/g,"")));continue}let d=/^_{3,} (.+?) _{3,}$/.exec(f);if(d&&(s==="FAILURES"||s==="ERRORS")){o=[],t.set(d[1],o);continue}let m=Pc.exec(f);if(m&&s!=="FAILURES"&&s!=="ERRORS"){o=null;let y={kind:m[1],id:m[2],msg:m[3]??null,inline:[]};n.push(y),i=y;continue}if(o){o.push(f);continue}i&&/^E(?:\s|$)/.test(f)?i.inline.push(f):i&&f.trim()&&(i=null)}let l=new Set,c=[],u=new Set;for(let f of n){if(u.has(f.id))continue;u.add(f.id);let[p,...d]=f.id.split("::"),m=d.join("."),y=[m,`ERROR collecting ${f.id}`,`ERROR at setup of ${m}`,`ERROR at teardown of ${m}`].find(D=>D&&t.has(D)&&!l.has(D));y&&l.add(y);let{body:b,loc:R}=Nc(y?t.get(y):f.inline,f.msg),T=d.length?d.join("::"):"(collection)";c.push({file:p,name:f.kind==="ERROR"?`${T} [error]`:T,loc:R,body:b,exact:!0})}for(let[f,p]of t){if(l.has(f))continue;let{body:d,loc:m}=Nc(p,null);c.push({file:m?m.replace(/:\d+$/,""):null,name:f,loc:m,body:d,exact:!0})}if(c.length===0)for(let f of e){let p=/^(\S+?)::(\S+) (FAILED|ERROR)\b/.exec(f);p&&c.push({file:p[1],name:p[3]==="ERROR"?`${p[2]} [error]`:p[2],loc:null,body:[]})}return{failures:c,summary:r,reported:a,counted:c.length}}function Mb(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 Lb(e,t,n){let r=Lc[n],s=e.body.filter(d=>d.kind==="msg");if(!t)return[...e.body.filter(d=>d.kind==="source"),...s.slice(0,1)].map(d=>` ${d.text}`);let o=e.body.filter(d=>d.kind==="diff"),i=r.trimDiff&&Mb(o,s.map(d=>d.text).join(`
76
- `)),a={msg:0,legend:0,diff:0,frame:0,code:0,source:0,out:0},l={msg:0,legend:0,diff:0,frame:0,code:0,source:0,out:0},c={msg:r.msg,legend:1/0,diff:r.diff,frame:e.exact?1/0:r.frames,code:0,source:1/0,out:r.out},u=r.changedOnly&&o.length>Nb,f=[];for(let d of e.body){if((d.kind==="diff"||d.kind==="legend")&&i)continue;if(d.kind==="diff"&&u&&!/^[-+]/.test(d.text.trim())){l.diff+=1;continue}let m=d.kind==="legend"?"diff":d.kind;if(a[m]>=c[m]&&d.kind!=="legend"){l[m]+=1;continue}d.kind!=="legend"&&(a[m]+=1),f.push(d.kind==="frame"?` at ${d.text}`:` ${d.text}`)}let p=l.msg+l.diff+(n==="normal"?l.frame+l.out:0);return p>0&&f.push(` ${Tt(p)}`),f}function Fb(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 jb(e){if(!e.loc)return`\xD7 ${e.name}`;let t=!e.exact&&e.file&&e.loc.startsWith(`${e.file}:`)?e.loc.slice(e.file.length):e.loc;return`\xD7 ${e.name} ${t}`}function Hb(e,t){let n=Lc[t],r=new Map,s=e.failures.length>n.bulk,o=e.failures.map(c=>{let u=c.body.find(d=>d.kind==="msg")?.text??"",f=(r.get(u)??0)+1;r.set(u,f);let p=u===""||!s||f<=n.repeats;return{f:c,full:p,body:Lb(c,p,t).join(`
77
- `)}}),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 f=c;if(!u.full&&u.f.loc===null)for(;f+1<o.length;){let d=o[f+1];if(d.full||d.f.loc!==null||d.f.file!==u.f.file||d.body!==u.body)break;f+=1}i.push(f>c?`\xD7 ${Fb(o.slice(c,f+1).map(d=>d.f.name))}`:jb(u.f)),c=f;let p=o[c+1];p&&p.f.file===u.f.file&&p.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(`
76
+ `),r=0;for(let s of n)if(s.trim()!==""){if(!mk.test(s))return null;r+=1}return r<2?null:`tsc: 0 errors, ${r} files${t?`
77
+ `:""}`}var mk,hk,Qc=y(()=>{"use strict";mk=/^(?:[A-Za-z]:)?[^\s"'<>|]+\.(?:[cm]?[jt]sx?|json)$/,hk=/--(?:listFiles|listFilesOnly|listEmittedFiles|showConfig|explainFiles|traceResolution)(?:\s|=|$)/});function Pt(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 dr(e){return gk.test(e)}function xk(e){if(!/^file:\/\//i.test(e))return e;let t=e.replace(/^file:\/\/(?:localhost)?/i,"");try{t=decodeURIComponent(t)}catch{}return t.replace(/^\/([A-Za-z]:[\\/])/,"$1")}function pr(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 eo(e,t=()=>!1){let n=[],r=null,s=-1,o=!1;for(let f of e){let d=f.trimEnd(),p=d.trim();if(!p||_k.test(d)||/^─+$/.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 g=yk.exec(d)??bk.exec(d);if(g){s=-1;let m=xk(g[1]);dr(m)||(r=pr(n,`${m}:${g[2]}${g[3]?`:${g[3]}`:""}`,r));continue}let h=kk.exec(d);if(h){s=-1,n.push({kind:"code",text:p,num:Number(h[2]),pointed:h[1]===">"});continue}if(wk.test(p)){s=n.length,n.push({kind:"legend",text:p});continue}n.push(s>=0?{kind:"diff",text:d,segment:s}:{kind:"msg",text:p})}let i=n.some(f=>f.kind==="code"&&f.pointed),a=r?Number(/:(\d+)(?::\d+)?$/.exec(r)?.[1]):NaN,l=!1,c=n.filter(f=>{if(f.kind!=="code")return!0;let d=!l&&(i?f.pointed===!0:f.num===a);return d&&(l=!0),d}),u=new Map;for(let f of c){if(f.kind!=="diff")continue;let d=f.text.length-f.text.trimStart().length;u.set(f.segment,Math.min(u.get(f.segment)??d,d))}for(let f of c)f.kind==="diff"&&(f.text=f.text.slice(u.get(f.segment)??0)),f.kind==="code"&&(f.kind="source",f.text=f.text.replace(/^>\s*/,""));return{body:c,loc:r}}function V(e,t=!1){return{text:e.trim().replace(/\s{2,}/g," "),minor:t}}function Sk(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=Pt(e,/^\s*Tests\s+(\d+) failed/),n=[];for(let l of e)/^\s*Test Files\s{2,}\S/.test(l)?n.push(V(l,!0)):(/^\s*(?:Tests|Errors|Type Errors)\s{2,}\S/.test(l)||/^\s*ERROR: Coverage for \S.*threshold/.test(l))&&n.push(V(l));let r=[],s=0,o=[],i=[],a=()=>{if(o.length){let{body:l,loc:c}=eo(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(m=>m.trim())&&a();let d=u[1],p=/^(\S+) \[ \S+ \]$/.exec(d),g=d.split(" > "),h=p?{file:p[1],name:"(suite)",loc:null,body:[]}:g.length>1?{file:g[0],name:g.slice(1).join(" > "),loc:null,body:[]}:{file:null,name:d,loc:null,body:[]};p||(s+=1),r.push(h),o.push(h);continue}let f=/^⎯+ (Unhandled [A-Za-z ]+?) ⎯+$/.exec(c);if(f){a();let d={file:null,name:f[1],loc:null,body:[]};r.push(d),o.push(d);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 f=/^\s+[×✗]\s+(.+?)(?:\s+\d+(?:\.\d+)?m?s)?$/.exec(c);f&&(r.push({file:l,name:f[1],loc:null,body:[]}),s+=1)}}return{failures:r,summary:n,reported:t,counted:s}}function Ek(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=Pt(e,/^Tests:\s+(\d+) failed/),n=[];for(let u of e)/^Test Suites:\s/.test(u)?n.push(V(u,!0)):(/^Tests:\s/.test(u)||/^Snapshots:\s/.test(u)&&/failed|obsolete/.test(u))&&n.push(V(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:f,loc:d}=eo(l);a.body=f,a.loc=d,r.push(a),a.name!=="Test suite failed to run"&&(o+=1)}}a=null,l=[]};for(let u of e){let f=/^(?:FAIL|PASS)\s+(\S+)/.exec(u);if(f){c(),i=f[1];continue}if(/^(?:Summary of all failing tests|Test Suites:|Tests:|Snapshots:|Time:|Ran all test suites)/.test(u)){c();continue}let d=/^\s{2}● (.+)$/.exec(u);if(d){c(),d[1].trim()!=="Console"&&(a={file:i,name:d[1].trim(),loc:null,body:[]});continue}a&&l.push(u)}return c(),{failures:r,summary:n,reported:t,counted:o}}function ou(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:f,used:d}=r(u[1],e.slice(l+1,Math.min(n,l+8)));l+=d,a=i.get(f)??null,a||(a=[],i.set(f,a),o.push({file:null,name:f,loc:null,body:[]}));continue}/^\s+Retry #\d+ ─*/.test(c)||a&&a.push(c)}for(let l of o){let{body:c,loc:u}=eo(i.get(l.name),s);l.body=c,l.loc=u}return o}function vk(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=>V(o.replace(/ \(\S+\)\s*$/,""))),s=ou(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 Tk(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=Pt(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=>V(a.replace(/ \([\d.]+m?s\)\s*$/,""))),i=ou(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 $k(e){if(!e.some(i=>/^test result: /.test(i))||!e.some(i=>/^---- .+ stdout ----$/.test(i)))return null;let t=Pt(e,/^test result: FAILED\. \d+ passed; (\d+) failed/),n=[];for(let i of e)/^test result: FAILED/.test(i)?n.push(V(i.replace(/; finished in [\d.]+m?s\s*$/,""))):/^test result: ok/.test(i)?n.push(V(i.replace(/; finished in [\d.]+m?s\s*$/,""),!0)):/^error(?:\[\w+\])?: /.test(i)&&n.push(V(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 f=u.trimEnd(),d=f.trim();if(!d)continue;let p=/^thread '.+?'(?: \(\d+\))? panicked at (?:'(.*)', )?(\S+?):(\d+):(\d+):?$/.exec(d);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(d)){if(/^stack backtrace:$/.test(d)){c=!0;continue}if(c){let g=/^at\s+(\S+?):(\d+):(\d+)$/.exec(d);g&&!dr(g[1])&&(i.loc=pr(i.body,`${g[1]}:${g[2]}:${g[3]}`,i.loc));continue}i.body.push(l?{kind:"msg",text:f}:{kind:"out",text:f})}}}return{failures:r,summary:n,reported:t,counted:r.length}}function Rk(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(V(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(V(a,!0));continue}if(i)r.get(i).push(a);else if(o){let f=t.get(o)??[];f.push(a),t.set(o,f)}else(/^#\s\S+$/.test(a)||/^\S+\.go:\d+(?::\d+)?: /.test(a))&&s.push(V(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){dr(u[1])||(a.loc=pr(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}}function tu(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 f=/^(\S+?\.py):(\d+):(?: (.*))?$/.exec(c);if(f){if(dr(f[1]))o>=0&&n.splice(o,1);else{let d=f[3]?.startsWith("in ")?` ${f[3]}`:"";r=pr(n,`${f[1]}:${f[2]}${r===null?"":d}`,r)}o=-1;continue}/^>\s/.test(c)&&(o=n.length,n.push({kind:"source",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 nu(e,t){return t.push(V(e.replace(/ in [\d.]+s(?: \([\d:]+\))?$/,""))),(Pt([e],/(\d+) failed/)??0)+(Pt([e],/(\d+) errors?\b/)??0)}function Ak(e){if(!e.some(h=>/^={3,} (?:FAILURES|ERRORS|short test summary info) ={3,}$/.test(h)||eu.test(h)))return null;let t=new Map,n=[],r=[],s="",o=null,i=null,a=null,l=/^(?:\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)(?:, |\s|$))+(?:in [\d.]+s(?: \([\d:]+\))?)?$/,c=/\b\d+ (?:failed|passed|errors?|skipped|xfailed|xpassed|deselected|warnings?)\b|no tests ran/,u=/^(?:FAILURES|ERRORS|short test summary info|warnings summary|test session starts|PASSES)$/,f=-1;for(let h=e.length-1;h>=0&&f<0;h--){let m=/^={3,} (.+?) ={3,}$/.exec(e[h]);m&&!u.test(m[1])&&c.test(m[1])&&(f=h)}if(f<0){for(let h=e.length-1;h>=0;h--)if(e[h].trim()){l.test(e[h].trim())&&(f=h);break}}for(let[h,m]of e.entries()){let x=/^={3,} (.+?) ={3,}$/.exec(m);if(x){s=x[1],o=null,i=null,h===f&&(a=nu(s,r));continue}if(h===f&&l.test(m.trim())){a=nu(m.trim(),r);continue}if(/^!{3,} .+ !{3,}$/.test(m)){r.push(V(m.replace(/^!+ | !+$/g,"")));continue}let S=/^_{3,} (.+?) _{3,}$/.exec(m);if(S&&(s==="FAILURES"||s==="ERRORS")){o=[],t.set(S[1],o);continue}let O=eu.exec(m);if(O&&s!=="FAILURES"&&s!=="ERRORS"){o=null;let P={kind:O[1],id:O[2],msg:O[3]??null,inline:[]};n.push(P),i=P;continue}if(o){o.push(m);continue}i&&/^E(?:\s|$)/.test(m)?i.inline.push(m):i&&m.trim()&&(i=null)}let d=new Set,p=[],g=new Set;for(let h of n){if(g.has(h.id))continue;g.add(h.id);let[m,...x]=h.id.split("::"),S=x.join("."),O=[S,`ERROR collecting ${h.id}`,`ERROR at setup of ${S}`,`ERROR at teardown of ${S}`].find(D=>D&&t.has(D)&&!d.has(D));O&&d.add(O);let{body:P,loc:F}=tu(O?t.get(O):h.inline,h.msg),N=x.length?x.join("::"):"(collection)";p.push({file:m,name:h.kind==="ERROR"?`${N} [error]`:N,loc:F,body:P,exact:!0})}for(let[h,m]of t){if(d.has(h))continue;let{body:x,loc:S}=tu(m,null);p.push({file:S?S.replace(/:\d+$/,""):null,name:h,loc:S,body:x,exact:!0})}if(p.length===0)for(let h of e){let m=/^(\S+?)::(\S+) (FAILED|ERROR)\b/.exec(h);m&&p.push({file:m[1],name:m[3]==="ERROR"?`${m[2]} [error]`:m[2],loc:null,body:[]})}return{failures:p,summary:r,reported:a,counted:p.length}}function Ik(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 Pk(e,t,n){let r=su[n],s=e.body.filter(p=>p.kind==="msg");if(!t)return[...e.body.filter(p=>p.kind==="source"),...s.slice(0,1)].map(p=>` ${p.text}`);let o=e.body.filter(p=>p.kind==="diff"),i=r.trimDiff&&Ik(o,s.map(p=>p.text).join(`
78
+ `)),a={msg:0,legend:0,diff:0,frame:0,code:0,source:0,out:0},l={msg:0,legend:0,diff:0,frame:0,code:0,source:0,out:0},c={msg:r.msg,legend:1/0,diff:r.diff,frame:e.exact?1/0:r.frames,code:0,source:1/0,out:r.out},u=r.changedOnly&&o.length>Ok,f=[];for(let p of e.body){if((p.kind==="diff"||p.kind==="legend")&&i)continue;if(p.kind==="diff"&&u&&!/^[-+]/.test(p.text.trim())){l.diff+=1;continue}let g=p.kind==="legend"?"diff":p.kind;if(a[g]>=c[g]&&p.kind!=="legend"){l[g]+=1;continue}p.kind!=="legend"&&(a[g]+=1),f.push(p.kind==="frame"?` at ${p.text}`:` ${p.text}`)}let d=l.msg+l.diff+(n==="normal"?l.frame+l.out:0);return d>0&&f.push(` ${Ct(d)}`),f}function Nk(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 Dk(e){if(!e.loc)return`\xD7 ${e.name}`;let t=!e.exact&&e.file&&e.loc.startsWith(`${e.file}:`)?e.loc.slice(e.file.length):e.loc;return`\xD7 ${e.name} ${t}`}function Mk(e,t){let n=su[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??"",f=(r.get(u)??0)+1;r.set(u,f);let d=u===""||!s||f<=n.repeats;return{f:c,full:d,body:Pk(c,d,t).join(`
79
+ `)}}),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 f=c;if(!u.full&&u.f.loc===null)for(;f+1<o.length;){let p=o[f+1];if(p.full||p.f.loc!==null||p.f.file!==u.f.file||p.body!==u.body)break;f+=1}i.push(f>c?`\xD7 ${Nk(o.slice(c,f+1).map(p=>p.f.name))}`:Dk(u.f)),c=f;let d=o[c+1];d&&d.f.file===u.f.file&&d.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(`
78
80
  `)}
79
- `}function jc(e,t="normal"){let n=he(e).split(`
80
- `).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 Db){let s=r(n);if(!(!s||s.failures.length===0))return s.counted===0||s.reported!==null&&s.counted<s.reported?null:Hb(s,t)}return null}var Mc,Lc,wb,xb,Sb,Eb,vb,Tb,Pc,Nb,Db,Hc=h(()=>{"use strict";an();Os();Mc=/^(?:(?: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|$)/,Lc={normal:{msg:40,diff:60,frames:6,out:20,bulk:50,repeats:10,trimDiff:!1,changedOnly:!1},compact:{msg:12,diff:24,frames:2,out:5,bulk:20,repeats:2,trimDiff:!0,changedOnly:!1},minimal:{msg:6,diff:8,frames:0,out:0,bulk:10,repeats:1,trimDiff:!0,changedOnly:!0}},wb=/node_modules|^node:|^internal\/|site-packages|dist-packages|\/lib\/python\d|\/rustc\/|\.cargo\/registry|\.rustup\/|\/go\/src\/|\/go\/pkg\/mod\/|\/libexec\/src\/|<anonymous>/,xb=/^\s*at\s+(?:.*?\()?((?:file:\/\/)?[^\s()]+?):(\d+)(?::(\d+))?\)?\s*$/,Sb=/^\s*❯\s+(?:\S+\s+)?([^\s]+?):(\d+)(?::(\d+))?\s*$/,Eb=/^\s*(>)?\s*(\d+)\s*\|/,vb=/^\s*\|\s*[\^~]+\s*$/,Tb=/^(?:- Expected|\+ Received|- Snapshot|\+ expected - actual|\+ actual - expected|- expected \+ actual)(?:\s+[-+]\s*\d+)?$/;Pc=/^(FAILED|ERROR) (\S+?\.py(?:::\S+)?)(?: - (.*))?$/;Nb=12,Db=[Cb,Ib,Pb,Rb,$b,Ab,Ob]});import{createCipheriv as t$,createDecipheriv as Bb,hkdfSync as zb,randomBytes as n$}from"node:crypto";function Gb(e){return Buffer.from(zb("sha256",Buffer.from(e,"utf8"),Ub,Zb,32))}function fr(e,t){let n=Gb(t),r=Buffer.from(e,"base64url"),s=r.subarray(0,12),o=r.subarray(12,28),i=r.subarray(28),a=Bb("aes-256-gcm",n,s);return a.setAuthTag(o),Buffer.concat([a.update(i),a.final()]).toString("utf8")}var Ub,Zb,Ks=h(()=>{"use strict";Ub=Buffer.from("tokmizer-bundle-enc-v1"),Zb=Buffer.from("rules-bundle")});import{createRequire as Jb}from"node:module";function Wb(){let e="0.9.69";if(e)return e;for(let t of["../package.json","../../package.json"])try{let n=Kb(t).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}function Bc(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 Kb,fn,dr=h(()=>{"use strict";Kb=Jb(import.meta.url);fn=Wb()});var zc,Uc=h(()=>{"use strict";zc=`-----BEGIN PUBLIC KEY-----
81
+ `}function iu(e,t="normal"){let n=be(e).split(`
82
+ `).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 Ck){let s=r(n);if(!(!s||s.failures.length===0))return s.counted===0||s.reported!==null&&s.counted<s.reported?null:Mk(s,t)}return null}var ru,su,gk,yk,bk,kk,_k,wk,eu,Ok,Ck,au=y(()=>{"use strict";cn();Ds();ru=/^(?:(?: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|$)/,su={normal:{msg:40,diff:60,frames:6,out:20,bulk:50,repeats:10,trimDiff:!1,changedOnly:!1},compact:{msg:12,diff:24,frames:2,out:5,bulk:20,repeats:2,trimDiff:!0,changedOnly:!1},minimal:{msg:6,diff:8,frames:0,out:0,bulk:10,repeats:1,trimDiff:!0,changedOnly:!0}},gk=/node_modules|^node:|^internal\/|site-packages|dist-packages|\/lib\/python\d|\/rustc\/|\.cargo\/registry|\.rustup\/|\/go\/src\/|\/go\/pkg\/mod\/|\/libexec\/src\/|<anonymous>/,yk=/^\s*at\s+(?:.*?\()?((?:file:\/\/)?[^\s()]+?):(\d+)(?::(\d+))?\)?\s*$/,bk=/^\s*❯\s+(?:\S+\s+)?([^\s]+?):(\d+)(?::(\d+))?\s*$/,kk=/^\s*(>)?\s*(\d+)\s*\|/,_k=/^\s*\|\s*[\^~]+\s*$/,wk=/^(?:- Expected|\+ Received|- Snapshot|\+ expected - actual|\+ actual - expected|- expected \+ actual)(?:\s+[-+]\s*\d+)?$/;eu=/^(FAILED|ERROR) (\S+?\.py(?:::\S+)?)(?: - (.*))?$/;Ok=12,Ck=[$k,Rk,Ak,Ek,Sk,vk,Tk]});import{createCipheriv as cR,createDecipheriv as Lk,hkdfSync as Fk,randomBytes as uR}from"node:crypto";function Bk(e){return Buffer.from(Fk("sha256",Buffer.from(e,"utf8"),jk,Hk,32))}function mr(e,t){let n=Bk(t),r=Buffer.from(e,"base64url"),s=r.subarray(0,12),o=r.subarray(12,28),i=r.subarray(28),a=Lk("aes-256-gcm",n,s);return a.setAuthTag(o),Buffer.concat([a.update(i),a.final()]).toString("utf8")}var jk,Hk,to=y(()=>{"use strict";jk=Buffer.from("tokmizer-bundle-enc-v1"),Hk=Buffer.from("rules-bundle")});import{createRequire as zk}from"node:module";function Zk(){let e="0.9.70";if(e)return e;for(let t of["../package.json","../../package.json"])try{let n=Uk(t).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}function lu(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 Uk,pn,hr=y(()=>{"use strict";Uk=zk(import.meta.url);pn=Zk()});var cu,uu=y(()=>{"use strict";cu=`-----BEGIN PUBLIC KEY-----
81
83
  MCowBQYDK2VwAyEAj/kMlXlhTIGHRKxOKMuGFa1S1ybxxwgdYcAE0YM9fgU=
82
84
  -----END PUBLIC KEY-----
83
- `});import{existsSync as Vb,mkdirSync as l$,rmSync as c$,writeFileSync as u$}from"node:fs";import{join as Zc}from"node:path";function Xb(){return Zc(S(),"network-off")}function Qb(){let e=process.env.TOKMIZER_NETWORK;return e!==void 0&&qb.has(e.trim().toLowerCase())}function dn(){return Qb()?!1:!Vb(Xb())}function Gc(){return Zc(S(),Yb)}var qb,Yb,p$,pn=h(()=>{"use strict";j();qb=new Set(["0","off","false","no"]),Yb="network-notice-shown",p$=["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, token counts and install health 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(`
84
- `)});function Jc(){return zc.replace(/\\n/g,`
85
- `)}var k$,_$,Ws=h(()=>{"use strict";dr();Uc();pn();k$=300*1e3,_$=120*1e3});import{chmodSync as S$,readFileSync as ek,writeFileSync as E$,mkdirSync as v$,renameSync as T$}from"node:fs";import{join as tk}from"node:path";function rk(){return tk(S(),"bundle-cache.json")}function Kc(){try{let e=ek(rk(),"utf8"),t=nk.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}var nk,Wc=h(()=>{"use strict";xt();j();nk=k.object({payload:k.string().min(1),signature:k.string().min(1),enc:k.literal("v1"),fetchedAt:k.number().int().nonnegative()})});import{createPublicKey as ok,verify as ik}from"node:crypto";function lk(){let e=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(e)&&e>0?e:ak}function ck(e,t){let n=Jc();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=ok({key:n,format:"pem"});if(!ik(null,Buffer.from(e.payload,"utf8"),r,Buffer.from(e.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(fr(e.payload,t))}function uk(e,t){let n=ck(e,t),r=Vs.parse(n);if(Date.now()-r.signedAt>lk())throw new Error("tkr-daemon: rules bundle is stale");return qs(r,{signedAt:r.signedAt,fetchedAt:Date.now()})}function qs(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)=>vt(r,n.values(),o?new Set(o):null,n)}}async function Vc(){try{let e=Kc();if(!e)return null;let t=await He();return t?.signingSecret?uk(e,t.signingSecret):null}catch{return null}}var Vs,H$,ak,Ys=h(()=>{"use strict";xt();on();Qn();Bt();Ws();Ks();Wc();Vs=k.object({bundleVersion:k.number().int().nonnegative(),signedAt:k.number().int(),filters:k.array(Me)}),H$=k.object({payload:k.string().min(1),signature:k.string().min(1),enc:k.literal("v1")}),ak=10080*60*1e3});function qc(){let e="SmptklvA_Bng4_0L1orgqxAi-z1lgaQeHP_2q4Ru_CdyDMPJyTPXmxoPDNrHWUo3mvmfeGXcsVodrfX_NuUytixne0FbBVOCGTqg48ANkHe3HHfnOAIqqw_jIzPKCQodrZj2_WwY-cPfBDRCSqEf-bhNoHHe30TYjLN4IhLRFPEH0QMPlObef6Du8bJ6CyDqTqepULPiCWeXcvsx6RkhZz5FbB76PeqmWZSQIPuS4UR5JPLDTOQsdSvEhSm6G33fHJxFyT0nfqh335E6LkzGtKTwSOE2hQ5ywZt2wKMKgB53DhcfROvki012I0pJAcmSQy3Jg30Z9jS3YDGNhezR88OFy3wionVFRYimbXYi1Qlr6HL1Oy4Fxrcc2jcwEYIQhORWV4H89EMf0lhSL399cID5i4bSD4WQ7UiwIf8bkdk-Mq7d5PhO4ZLz1QNqi1bLxfMCKWIHcA8KurfdblE4zAEnzgPC8Pnat8LG9rT1VC5sbx1hb8L27BlXFwIsWblo_XVWGv3OiOAIxGaQ3enluOyah6rq9i51CTb4yU7u0_xOg_9HyVvu7ZKfJlVUOIatrtzlb9-gElr2IpYo9z_GVuw9RGrJb8pFSLR5UiMi_kntR8B9JB7OEO8B_1lmYwvGEMJVgDRRoJhnwQFUMbkdlaBW67PlwZZaMG3Y6Xnwphfzk721EAPxxEXsMTJBNqVvKZ4uN3Qk5oirhoe0e_HoLOBbZRQoT-v3fX_8unFeZxARplkPl423tc80keXuYJmmf60fv5bsuGpThn2VnW5ZIrbvcc16GYFTykyA0FSnIiJYhMfPCuNYnjOCYeQxPgfUU94ZHv14sWvmUGmzTsHwN_7Og96QQtGdCJHvGlzJxs8bOERABzjRBdQuiyUK48hGahSyPqQgw7RoqfR8WlTxsqdAn6rsAZuylcxt17Ql1tlxSIAXm1sp5hXfl0hogAmX-YZcJlaDJAYjzNQsi3zG0aHmcI2PE-OdkJOmTfl28YivR5TgEVdgEJbOtklt3b7Y8f32u2KcljJrgFxcQzcdygdtkbfr24NFBAgLsa0p_ibNyZ_Y8ZijXHIqw70RVsETy6zpeE3QeE1KQdiUEaxXeBfnZQt24J6NSefc8J9RyoA2YrqZeoKVAHcKgN_Fve6IXAZTeE2LEMjW4HKUo0lSOPKw3upAPDw1zOm2sHQd3BRr80mt1qjmOfArCV8rrlWhkVPuRcFrCkg35t3gHDmC8VN6W11lagsfTFqJJvJRJQ-e4yeCjvXTbohK_sYwMOJ9z92niqRj_GIJjQs2ezxp6xb0v0daJseV_ku9Kk2ha2Qfcms6kpu5iY_GJO3HXfXvjzaJOpsqH06X6leOUlYS9QaiygRUg4cqi-gezCCQThojiY5TayABvcAv0TaAkKxdxH6kYPB75waQjppBicokZ5-XhesRJnaunJkg3Y2qfWrLu_qu5fTl-nH9ub3hSyqwguwGjDwoBelMQFJwtWd-DsqVwgIB9z5orD0BOgduJ915CKd4Zeb-K7etAw5qk9hmc7KmG2PVgtThsu8lsG-Fzj9-Z9crlBTcMZK4rCQNWc8cln3bN7W0LACWWtbjYjaLE_zmQCDaR_IHj0CMBFLFV62bE1J1_2upOcV939k40YhG2spNPSE2Cr6R2Eq3XMZzPTvcWO1yZhKk0ba1c-Nyfa0BTCFOfA7yvrCskx6E6vIixXrjfH5ct2M-svIiXR1sroYeaLfT02dgo348im83p78MJSWcqZoUAe0txV3IKvegGk4KEMkExSqFDQwCxUKOAS1fDYQTtU-cSPx82jlQntPYbnc0dBBwpgdZqFt6xWxq4bZb6cqbDgcSbp2bbVxaMdIggsdZ6HFEeO8Rvf2CgEgE4NpTmWxi3KoGDUDuBIgA7sRQ_9ZqfJopUhoGIS2cgGMz9NOSSaRUrV9wUE8vGN_5pUSiosdI2-yk5uFdfTFraL2m8PG44evshrtkRS4uKsKloEDudACNe8LFao4xzHktH475-5NAM3u1kFrR88NavqAxxOkVQTMoc7ir1GfoHpdTxBRZnYm2D0zBSjR4YBlXIJ_NBKSSk-KPW4L7kQAj6Ndv9eAVCtT4s1l4ixxQ5tNgGq0-3CXmwlrV6YlQd_IBc6lTpPZkWTC8KvXU95k6l7s43p8k8JQacmJ6t5F8Um--S3UeKvsKReVlx8M5PpeipG59FUbVb3OHYHiMYC4dk7RT_5Qnj8ZxXvF6S1_vnzMOFYH6GjQw_EZMeHEi6tD2HkHCNjlLqeRvFZdKPGuaVUHTyE866P__P1Z4_V3zcAuhwlCIawFpKOss6LQfQTfvqeYxk5X6Bf7apvzCGOFYXLilvfDMhP6T-XRYtb6K5tWy_pElMJwNxi1DrL9kbq2YEDebqg1j3Wn0JZzBRWk9i6b_qs5n0SsozZ1ailmkK0JU9xaGK9ax53kUCWs4yPPdJmjGcgjCqyV5h9OyDcHI-7Wo53lsY7Z_4mA1S7EEmCHoD1DLj6ci0zFY75ROtAvfFvFh2c7hbJOJ03oZF9oVa2utotbN2UxrCKHaaw90g2tqXWgjnAvG3RuNXrEbcKop4uXoAVnMZE_XqYlU0chH3VS2do7Gi_M-pe9bFZD-mOJo0qI6uQZjrdr4NhSC7fn2w2ugAxWhZcH35tMw2k1WDn4dEk0jAhLF8ND4dN4pOqeD87EWaWEkELmUGHRlefBNCR0QDSiTRFAEMj8_yZYiLYWIjM7O1EwtamIUU0-k2wCCX1gPrgb4g84ktU8yBPseeLSxIOgHJoAP4NX6etHrgNgAgbqT79sl9yp4lmaMH_XHYoe38moZQ6V0JKC2O_SmPAj7fDZsO90aTNnP7BmQ1uBOwtFfFf8GDrqBh-ubv_jQgL8g6ODNAaIz8fBesIorEKCUxIjeelAwnD7WQS-miAbYJNWL-emSTcBNsv50EdXgoqA5Xc5a-U6GUyvjDXP6ObU8iXqnNAR64t9R0rMoRNXfcqvWoKJrrVHV8sMDTQuf5yUF_kOrXYfl8cyCB3Wpx2A9_YgeFlx5DZyNvrLeu6cz-CVGWcUtMzv6deiM9wAgUzTL1UaQLP1jRaNTWOKV-qkEdES7QeGm-__yi5wDZyANNVKbjAgDcOAeZeas-hPjFeMTRVDmSz7VMbz3iUUlo1VaqkG7GUC8nNOKKAbcxEZlWu05qFgx_sAEFflXiF10OFIKEGI4Grz71ofiNiFUCWyGVwbXcB7zHhHkbll-LlA9SdytpLzvmjD8M_yUWUa5wpfmCbmzO1PCO74dayg08pt30CtoJhB_wVqhXRs8lWyOgw8ZoE5Jhu_BFbZBLGm0rVPibwuKZyAy4qrVpfEitUukwjcKmvwG6nlVyGBAsJPqxXSU5q0smRsNnSu_MB3w2Pn9p-Ag2og0DgZnJ0ROxY4y37X_uzSy8yxu1x18dPOuxAoKumNlxzbJP9frhxWcV-MFU9I6NGTJpTqWZnb4Z_zSVj7iVqgG0wACy77YTgv2gNxcGlE-fEna-mnJXzNqiiRfWJQwA55sMO65JVLLUl90p2XmVb4IuPl-j6IJcOiErDYvF5CT1eHaDgELQ9022iui0x-7ykr12nPsTjtLjUZ6kzZRi40JN9VPv-7tDvr1ijygLz4kngjbTJulzJ38BA_LZBVZzMoenkB9hL2P3b4hL3ihJhcZCEf-lvBqThGDEchgSmQYqODIDWQ69jtAas8ojkuQdU7W9ZnQ8X0FfO-UEf3gl7APWOKPu8TDhVpdwOTg6yoEgQypAX5w6YaRjQZcPffsaL44bc64Li_6Xj7UOfxKfbs75DYk89YMpki8_7OnqZJPPAegMGXOMiqIR3ynFNLqAp3KmH5QXBHPqyehVQh8XRITQ2tnBbvd2-zMrBUo-BNH9YR9PYOibfkp7GHplbWj1iZQO395fEzIiKT_IjESIfsVt54gDqbNVAtLJ66u3GG9QV9PUWZrsqBNhw9gQEuHvjH5cTE1ugRkTwiQfkPsm_8Q77SOIguOxczJB4-rBrOXQKJOeSUn_wOcvvNpU-hi1Wt4Zzfrz5Amfj7wbbNndMPc_LMZ_MA1rVPSf-sIQ-9fV0ikqeV5peRnguWTRtM__6tvzSUfibNr3gZiIoWtpalV3Fe5wpTHy5c8keWC1Md2MafxzuEPIUl4eHuDPxfIXTnm7958vOiTvZ8fpyp4X8T6t-daUt7O8xrTD_Z7FudqhpVCGIF-YO_0qPCK5L3VMliFz2rKoXRyzweG6yWPlGz2JF3zvCqmpmEugIC0ztqqeyXPH_PvsnX6BsWsiXf4fiF-4DRSCytpmZ3u67DwiWwBuheGAMVcRJlXMUvOa41HWYrNVQKrcFcWuIKevTiY4TejJpe9iJOTChjAqyjg9ZEPoTYA1tTTF91TwvwBD_l6kUlOiFENxSiiz7h5Dysy8cA5MyKQ7caniFsKs4TK6Ta4FLNrPSgyRyKqi4Ucn86EWueFOZG9kP_Zf-3YDXDB5VGi1e8h4B-SBE0mHr9VVGoT-tpnCIboN1-ccSdfY03VvgbVUjmfh9QlfLt8L8oPkNG8XCxAArrpVEx4alrK1cPOT6F87QS5PP9Zw5394080oDQ8oYkY2Gylre7eWQusHYDxSyvulWozh_33vcl85ovDRhQMZI31yujw3r_33ZrDCJGXx8cNAJqCNqzmiU6MgcdLL-L2sq13Np77vf_8MiJAZOVAJPZtUDgpRDF9SacsuCvZcTzRDMIpeBGySJxJHEQillNc7Zc7Oi8wA_mq1EYpRmKVvzBYK4Uqp2Y8KKOhWVEYt39UJcIkjXdBAyWcY2tV97QcrbqlK9bVgBw92XLaR9LgbR-C6pUb4LmLcxO9SGwx19ksXVmt12uePjEtoAV4d6b5EPoxLR3GrCh2FVL-xZ_WFg84nHhs4LdG5bgxnANnxmIcNbmVwv8K_dzGQiTSvZ5ihpgCDKPT_oz0WAyE2jIoUErEBPks_jABK0VoLMguzgQevAeNgasWDoiuyw6aEM675hiYalzV7C2q8HTdhMjwmW57k7Ke0s3sCf04WVewjZDvAc4i2yBfFF9H9ApC5LoinUgtNkPkkkShdGVHnzYeSu4Y-_JtVF5FX5phLnrcHw6g42sqnHi8uQJyExidl0zse0SuCoEfF6k8Lgu88keURE7g0yI_ffkdoEIMVe0oiyL-GeIIMAYQ3QMIkUmGYlLGzjOfWuMRhQ9VxNOEZCujKggAoCqjID6bW6TDgTauJfQRn1gRKGTXo1NLq5_ERoSV-Sq73xA5ZqpazU6QvBG6qwgUqQNWIP_v12vV-xFKjZtGEytx4fkx2p53mhNHkPMWMS4QXsLeTx-w1il3dwEOhsp2ZmDJv-fwCDCmQwa3PiBmkt1jD4PkBHcytRDDlYrPd8Bl2j4NXDIphoRY6wKScQCm7hgEEzV5Bpymmk4r90OA8nhnObB9hJMuMR5wbBKdVbYBAsDCz1kzwePe__oUaNXKe97_I9yLLT6DveQ1_UMx8PXw90ZpumgpxrJscXDy9O9N-IaUXoh7D471xwGNd1H3NDZQD1qH1ZomgZFVbWfeYxwX93GDyz-4nChD8fgMTC6Qvfv-tlAiz3plIIm31LVkl6Rt2sWQHphzuveBnW3bSA1PG4zjeYpDT2uaMRUAGuwMr6xD0gGjphT3DLVkba-veHrGCxfllOATqorsR7z36m6z_znEhYmGpa_GAKb3JfOFF315T-U6n7hNGdw0V8SbHCRNsQOf3HfpmAAb1KETy-SHh9ZY8oIE_n735ag2--LHbmVcTfr9yKe9t6tvPl_yK7MPOk0djmvErkACH9IvzKu-DW3TbF3d95w_AYX5pk9_HryvL_RLyTgra6dQurD0SzRng-ElGBusTkx3ssJ-DGqWKeZkmlMWd-Sz6zSwZ7YIahAAdxC6FC4cgUXFVbVk8pzNnxAkHm7yhv97579iuYSkNgJbWoJCBL3eDXj2R_BbsJKT42u3xogQVuOHRLJ6JbH8oGCdlex3tsdTDsFdkeaE1ljPlt6sac5Ehny39dL1OwIuR8GoqnZ_3mlf9m3lKVUiTc4a8uKdkV-z3_PewUPNhaE2LG-3VpGeAm8dguq0Zc-IZcVsSoZQqcoEHkKMSXUP7Bjzcl26ki4_501m70oCUG3Xbl8v4qei7difgA75TtALuV7zU7I-UvQRBJTxq6iXclhTn_4J6nRfUf_d-ni26MB9m8sfZU1yhmsFD_tLG5eZbyqmHYL3bUkBtXL3tZXZEKbIcEOZtyIAg9ELu6Uy8YiOsvkQF_7mF0Vw6HrTUhcqL5MXNmbpebanGfiblXG8dsCgLF662NVWw2KoVJjwVl8TlaUDtTJ-GBSajBvrA7zVRXUonBsW6j1_0byeCLSjXgYDotQR_OQLQiK6wa85z-KTzT9dqsBNY2yX3FHd4JPCizgRKslyjrl3bxxtuMPBmjixQFE3drF18MNZVTykscgtW51RHZnODknDfEoCRe3PV1vF38RydgvbnjEz7--j88Z71tUMoM-et45tlvEDGpM5cjci9dmileol-BBHvC2FULjZBLu_9A4tZV2P5L4u2Ttrh7hiCRcjPJmAcLuoOo-6c8I316Os9eBOToQ4DofZYBtBUfTqaIAylCGoxFwPGa_hWY8gRXBy5dqKVjp6tLX5H9-GNX5EaRwXS3ZNCnVCfQ68-GlSuoxLj3U2K216CGJIjj7CCInHrQN3gVZXMthsq4sd2ZFBPH0UotHOqmLrbEbnqnVvPemEl3inTzbFFFyKzSrWWkDEI_UouX8gvpHORYyZog8p5x6zsRhoS6YP6Ydnq6ly9sKbP7-mtRGaHmSNpNyntdymKtfe83jl8crNPrnsHkX1TRmWXVr9iUWoy9HpGw6-zGT0iItcVQDPWBJRP_9TWZBQ4PBHGHtfYKAzGL7gNe140I5O7WDv2HaBEriofaI6E-vvwRFBvVdwXojkehEuWrOcgRr5ykc8x0icJM1KWrq7YhcbCLpJPT9lgvL0Jtau88KGus8scUNwEq6HLK87Trbmvq04eUjd4jl7vmefDtbLP0kJK3RYWJvEfKOA5P8rXe-IW0n0F5HoWr8gcriGFJwuEPyChq4T8X26bOgMFBFRvgbzRgAS6OV7Gn1_h89KiXhloarhc_zm5VhnFE5EKiigvBNKo52ST9yiKqsn08HE7kkUqRc9x_ivumHZov9XhFgx7hHt7DBdxdybhcoDiDy_aLK-PGI237bLAT8Cj_XMpa_CQR2htRsKZLBezRyof_gLvUxe6NAJuWK5cUyDL_IzefX0525OpZ2Fa6Pf1Q8IEgar2VqnE5VKsGdgI9R9lblWLuQK1v9v4CNB_V_r2uHqk4cQEDluF5I1zKcd0YcqGdcqo2YLM6nTVEvZHBxUIbZD-trilKplBQGJ9-c5pznt8RrSlbBI32ZzyXwHxIJoTBgh14sUY-j7QRnQxE0lANC5_Q-cuNG7wZQ3cVuhFWnsAJFokZ_Sut_Cf0YqbKzyaOMOx919Q-Ap7LQAHgMpHqRJPkSUBjw0M_iQKwUia-tmWhmaCNKXibQ5KaQ2nSc884ywoDVNFQrn5v44MLxGC36vVMAzYnUEhhTYFB-BYi5D_Ku9KtYaKsXEeECvXg1R8zk2uDRi6rEaxtALTk952jL-6a9-oDToPC37uexUJd1oLIFEi40ITPgNakJVPAU15yEHsCh782F0Kj-heuZEK7GE9ihKPTNfQgt2t_Ziz7c1XE5x2RE82VzCFysYezrZDgTM1paHBQjIQBMnP1-4omIMxm-0GlyIBQnlG_KqSST8XPp7ZTbdKvbpkclkIKXe54LGBjus41BBG7FVlmdvZHFF1IhyGWndAvhh7QeS6s53At6Pmj7sRVdD_P5uWxrQeFB1yMMM1z8TuTk81nJdD_fnCHrWybZbOUw4KWxU_t2qeRZHCtdO8wS0NVvoJdM_caGAlZdMpzpMwzZB6KgVP6zAxxTRR0w9QJaCTq0FW5QA0cZXIIDq1jBXaxORGn-UIr30tF7F_O5LHcn99NArgE3Fm7y8nbpwDURKjwdgNTeDotL5aNE3bgIVrtQPDY1izwI9XxwGhX9tVgHAuX7QJzRMqF2cZB1fYGRTq1mbTXdv-OnUe-fW1IxV12Cawb9oHe10Tij26KazVotZWZIY-urEkdTaXpP_igxLa3PD7Dl3g0pxIG60opDF2mW-hJi8SuG4E98Xhjp_7bOzYo-_FRw3BZjjk8zUHfMC4TLsVWacA8WblBWVHPqjTTwIGwWRbKbwQLwvn9xECQvOhuyIvHEg_aoJn4gHaq_zduKu53NKg5bGwrsuAw9x075HtHMa3gRWkjziB83ls_Xn5XENAKjpwebDRKQs7QJn7xRUZCgSs1vIyxyW-2j_eftj4bFRHC_COZhX7mP8JvwNrY4LXG7f2ViWcn9bT-uR6jPBmAMqIl9Tp2LzqcBSxG_XHzsqMsGER7nKED2IGwMDJ7s6qK0lxWI0qUpkB_y4kIxJyVM6xQu3Mqrh1U3H6cGUChUYNMCjZ2RqXSuA03bVotWaI6aEzTvNw6QGkwoWqgAR7nxQCqD-gmPw0Jbik6qxMNyFtNXr5SNfV8lKSjHcIB0GzY-xO41GeNlMLa8PzUJWVSZKB6sVPBBqn_lgvWxiDE5XeVebixDswrrk10n-DgIMdkaYvU2S_sY3Gl3PTho7ue6Zr4SgQatsUSiC4s6RO2D9oT1w7LhUiXTtJRafMglVUfttnLwXdNHGjN9oC2WM1wlEg5ZAD5UfGJhvj7po0PqLqYve2kQx_5vITK2JUk38EJvJVX2KV3ZTXXoa7TaJle0sZNAaKRtGn-HXerYiWzkvQeY2l2rYBJTuro3-_lzaUinTZOkoSE05AYYtiuNsyTTRVxreDKp8VSzd1__gg51mUvUppLMrgGEN8Agygf_jPfQYrw3GyiqIZkXraq-F7QyUEKyZzpbbf28kuOS6hUrW8DVI2eDSyvRxX9IgPnhMjP3czaWHFjvt_vGtxl-KD1YpnaofcNHoLHt0FVhSWBxRrt8hwmjMnODBfAVuUgxwlJnjQr6wa5g_hxl5faLtlYooCNIphr2RYnYmvslYJCx4CoU1S3dH5U_Vu2aAYJUKcZ9XxUgJtx2nxBp58Ukl16mNgavMbP2BjMhKJ1EsyD8bWslr6YpzsmwVOvIG9MEcbvA4MK3w9Hjh79RMVKrk4-s0xD7oEcPfWtNvaH4Jd2f9wDjWDcwE1fA5SB_6e-ddROP64Th5DRAjhnR2TNJB0keJrQSgmbRLTDI06S1gbF5ou-whv3qi3lV3_9qnnVWIDeiY1iYrgXXa3NSH5iJDfrVzq5lUwd-lD-mOstxdSuoaeGMVYFiWvPUir8iIC3ojZP9iMU3MoOxnqNHOhak1Wr6WLvYrnzyygpEByvDXqsDBPOOw0ulPTAewg4KvUPFVZ59ZINojR2Zk6GPyZg7IDYt5CFo90jZC2cn8XBI-KNuEoW86gAdz6dNvCGCOKjUN0pZZrV3TeS6pXYpqinsBJNk2JjTvOK-sX1u9w7W5vV-DdysHQa41g3H6ceQSAMA9MR4DSnY-wgGbF93M-5iykD_ORUznYJoI3vAFbVdVn4nykyr3HIZ7SrEYWzIXKsgB_L2kz02wIsVUjE91RBZdbWEaZdUUFLzTNHGZjD2wIg2MJswODsVCqKVNF_eedT8anagkpgkY1-mULeQJQxyTj1zea5sdlfuIYk4inaUNrj8CX-Hpuie_uAV0GUf3uVYtfwpRgzQRDixLjWEkFfGrKmTbLLKq_RKV43GK3CDhnHqSupv2tqkEF1DEzi2s3TlStruslQ563mwepfupEz-9B4yt7UwuSyLU_Phjvn3IZ9tBTtI5UAVLDc0cfqugkJ2Vr9Rgw4GFAIABd765y6-uHX7DvCMWKJjf37cu2JS0rv6WrqdHKc_z2Hx4xMiCFURAzxYq6sKIGGaRfej63GuV1gWma6n94wtv0vW52oEVeVLr2tX1Din05mMPu6WbR5RecwvKmWP3BPbQAmi7nJU1_FeqW7BF3nxjynmVzS0OVgvusA6T1j18vbN-7icCbNKSuZEMm2WGocqMfoWxa3VsimVMdE29qlZpqofvliwbruqWn-5s4t-ghfhUmPLp37MpDxPKFJXzhTTRGzvkRtU8SVlMzkTo5IBPUVl9myX5hPCGJP4P9pJWe2PblBMp0PTPDdvZr388Wa6NmCl5HW8EsecZ-qofohvKtcfHYt-Fb5KuYlskCytS_wdNt3N47DxfbW1IEGXv0vXtFVUtea7-coEg2HDDgSnpryhY40INqPO6y9ww5ZmkRpZO_iCDRDIMAyap2HiqysG2DP9rHIJ1Qe2NyT6jQ7ClN22DayDpziVw8bM_f-ESoh8eSmAregwm85FxOm6l-1i6ehyh1stDjQfaWs8Tz-E0LAQjiiuG4HlGgT0cuzsZK45ohIqNwsZM2FAqa2lJzzmM6eB-taBP-2JDajWnkHcI14WXpgWBEFuzQR-eee_8E2F8hQcTSL0zCPnPjex7LQtHMB8qISxGPPB2sMOMT8MHRXY52h44AvQZQDeanp1AThhvpxpJyLTMohS1uzw17QcQBIhjPZFjrYnBlr7G8Z1dx-pxfCgcJNgxwVsuUSy-Xw6QqC5ZeeVl0ueAbPmifCDN76XEx4cepg346lfbI32jQlav6tcp7D3QtxVoFTC9_SL59LKvV1IbwAYK4yWFJmZqPMsmIoDNJOwpvYqqmOBAi--2vBQak_OeT_RUOCLE91IBttoel9BVhzuKhVKeBkg1RqJ9QkAn27EneJFvKfIKsDCHmRE8ZygQLyi_Gxo99ePK4AX06DVAQjJ05LC1vDUvfqScbNrVKuIIMw0Qjqj_0yeq_3Nz8t-sooPltm8sTXpUVTNT0GT7YD0rewCfzwcZeKSiKNo038WTTk2NhWWe53glJIL71zD2WdDy047p_mmmFgNxRbdRrgN_ZGDe5R40R5YH7DiJdK384ISDdhKkUkVF9NcvtD-FfVwAcl_fZ-HQKTUOdYZr0k51AKnM0N1Hx2f6JUG4BjnICcEWggdj5SFMPi2hCoUlW0zIW6GCo4q0G_FRkpu8KQhzFyl6hZBZvGvN86QQM5lvCrylYJBrveMVZHUlLsLRAQTZI1hPRqht9EW4_IsQA5togC285j5KGaIyx6RkP4hmdv8ptvBXleeiYNqkT1d8-4d3TB2CrVVM2I4aeySkSKyfC-3SCAzrhJ6T1X0zTkql1GlEANTQGyB0c-UMKjk2XwHmSjPIQuEm_zhQ-KHaVOqj5t7LYy0YIG2a1jaDOiQUGr-Jjos7vUZAp6gXilgxJt6Osevt40bARzlfrRaLr959QVD_au_2EPZZOJzbW3Sh5T4LgbMoVrMc8cczwskGSbAd2DWD2l-PpRDKLNa8vElJktOxSIAtT6-BYK7pwsWis091vPI4htmvkmo9odwB9fzHGV62_1552c5sDtJ5t7GRxFQ5jageXPhld8ritjXgbvRZ3D25TGEqx8wXG4DeiZCLWBvRDu5_ZBKmc-p1-O0PVqtD5b-7CFc6oL6c0kZg546Ps1qEmHQqqUlgKLeSXDqCVh8bFoecn5F8k4mF8vPdnxGMy3qPI77yPhjV0Gx_qz5TsT9ivjn3Nj40x8FSwjuJB2UCjjKzQNfBGoxOI51AQhosTTwT6UcXAInJGTywsldFMi8yXmS0TzVMm-EGXgEgr2719OwTfX6EMemI6uyy19xvLBmrEjcKv90KbD0otOFMGTGZZIIkgg_FPA9MFh3YHsIv4h_MvZfNu_DGhxTmn6pYcfwe3SFAi7KBil0YeXvCR-uejL7vfCCPoySBPLG2EQyeIvAtRGecoSzMISGmCTpEMuhWNmGY9HvWQ13ek9QB7DBDTrNWWEldzxI7whNEKwgZ2qO503OIpFMDfUskAc_u9vEr7BJeleE1t-rIk__DHhXErm_U618cdzyHr2PHvm9Qbq_NJInLuQg9-vvrAEcQLhoh0fLt7ixgr2-_ywLrawnJzBUGKhS5y1GS2tpWwfOw43Cr9R13LAb1ePscUreAC2GGgodL-Z6t7LzRmh5-RJe743KqJY3xg7h6dmxvaxDzwhm4It-YD73HJgjqqqtIclAZB0zyNvErpWnokErrBddr5IFz_h4rUlZCBTdpPMwU_S4RdOBcas2aVDGGmiXp9COpDO9GNas1nuL9OTOTlfMRdivQMIBYltq25UtHz3vVlEiRSSgu1PMC7_wfwa3uZe3wZd7s7C39DKHdQppZlrWd550vozNd3rGN13huW7ngM7rdJExMaOcXlJeuIEH__fmYVVw81YzYB_D3Rr8aLA9W5XJFp-JZ9z79kgNXBtfDOKF9hI8JVnLu7q0MKOTY2vp-QwN6CDPznFwwa8dsd1weo1x9iueR8EXNIwb85Y4Xjanx1JevTRLDhNLKu6Zgu67UwPcfCzxJjL5DsOno9GEybp2HBAR07h2d26etAJmk8GNEGLrJD-BvmDUgj9G-LN7BeRJ_I6pgjFR1Tmi_kpY0noA3kc9q8BVMwdgVYgouuJchsPj34XTmjQC4Opk5vb9na4MINW6Hv154LGr5u2FWNZ1hC9Wx90v5NTWDwsWUa9kgienEnUfFIdaxbsLGhPIEkAJ-QBgU_lJLBjTVoNrUjwTrsmtkZozqMc_fM5ncE5oKGpvgq6ElIjD-PO2yNRQCiLxhhIeHKEk9Yr6IP91nwHWw2sqIyI1Ss_meSYrYPJI9o4hvsy907m7dhtDsSC9RqYxR8IeHzfT1teje4cpB0T1PiPoOA5jET9BOT9zEmUnXRRpPagrU33EbpQSJBablHRgg0j7iP69PmSZjctv5r8ZNGTZcTJA5DhoJQSg0LSi7lU2OIl4MgmmqTh4XTxKg6l_Ll4uNeJsZgfbP2fZahpO2SY7tA0lI-AIkjzhWlcgx2R5JZqPpmOUI1NlK97-OS27zFL0ZmOpYu8inHgIdR5VSspxWU7ioOaz_jWvyELS5OqU26Gc2gB18ekm8N6KE20hKi-tzfjUceZeB5shEmzB4L5QG78kgXHy7H-O4IrZpoZqZEizziiKcW3XzPBBqwt-xX-_XYD4JLqq9LkDjw4z3s7rwrB8nCMYYembeIcsrAR80bISuYL_vNq-oHgf4Z55wtvm5kemuaVAS61ux9_1ahDVxmpHqx66aHce5akFQY68qtn67TJYOgYr91IEwmxV7lUsWdhM86woqbtVakyGPr09AgUuwWN0hozVuPfO9KluaXseRxJf7jgFXdUEAq3xXcreNabRpQPr6fuJJ5tyPR7J855ht7SKqRQW0huk4n_T9DBTOWX_Um0ZBIZ1DOrizrqtzDJvaxBVf360KrxpxxdjwhKs0-ReWuvv_Yy4HxhNcruA_9LBlis1xqCrIqDGcHkpBEh7cZiuooMbmsO3gs9y8AB3VGZZ571PjHqL7iAO81vI2EX2IL0PvslhAQ00FhsS4vtJfmFQM2SAW4J0YLwjFvwPPUw_L8xxourQu82V-5iE4y2JI2LK2VFeP_0-2znzx21jUOwjhHzy6WAAOZIZimQZLWeFRvGzDgLbPFsoc-Nbg70JlTdKqFzc3wEvUCN-a1mpGqxKPnelD6zgznsTnKJ8ONzlPNn7kvTepkTdMwFOfQmzk5hxY-y79gvKTiXunxKzJ3q5zRA13aNjUDCQR5fPySc0yb8JJFEGT7v6GopBGZ0VSNV5CtDQXgMIZMoOFTeEUeaG6Ca0WKket0Vo5JfAJfJlxWwS7h6vbr5Y5tS6XPZUHyzQdFJjoXxuTynW4So_Xa1oRCAQPson6h138yO6EQGPEPgQFosSBT1owVWcGWurZDB-cXX2i9awhIwb-0sYspYlmUzuU316rcNjj-9mjLGxX4dh_A3r5fPfxxyA5siKDFwavR2fmF9bvYPEUb2bb6FrkYnNkK8ZLf4t6_yU4c1hwpv4O19W7lZ4az0VJ9QwKzo5VYaftL_ZjJtcRQJaZyDgfYDg4JaHXp-grgtJV4FlaZQNyKQ0ZkFfOs3e50iwIXiF8mMbuilWAXHbpFiIecYtl10_BtE-T2sa4rrmdO2ju88PquiyhfjHaaLtNXcSqWI_3DsNEfcTWUV8mYW2_YGn9JWGB-3QVQK85gc5uQP4fyxBMcGzfL4WHk6FmO-quMwC1VZW3a79WhZYVNAalvMqI75Ip6Xpr1ydBbJCef2ylS1vBfYEMb4gXsI5X9X6XcC-0lthixB7ggwGskmjRe0FXEycacz0zBtfLkbbBdr3e3VEAcd-w1eWFl1YvQqPHffWZQhIZprloRjuT5U93CHHXUfg5a2iK3FloSo4M9oW_E34QwKNDQAUDkpqSL435IzIEHcgGq-j0oswHlHKVZvjQ9JsTczCpMzX7lD-czPAzUviKhbSLz1mMIPB5LlEcI6gq-674BHloa91mBGAkz8yYkmgcE7PdFzCzQvGlxdnC8XEWA9kpnI3k8c00LG10pWKCSZ4PsBhTnP666ifOX7hTYG-B3UgY_kQfPDmQ6PWUlXaNcHunOYfKk-N_YBZDWH8OBiMoB_S1LkPOXWnqvn6IfsIBYz5qYIJZvT1rJ0ofVSnPyeGWKsXELO0YevKAjqedYU5kv_YuHM1bLS0CIL9UxdccIpChRzYbZ8MO2cWjxbzJXb-s0p5L-gbGKTsnsWS-3dbN0VGnFiwW__vO3eCaxCT2hHPsfzHtRHAYsNS-o_nxE15q-H4ApNFX5OrXXMlI190W0qRecvCcaQ6_Sl99T4sh8bjG5LvFLYnKfJibk89rT_8XRkxN0wZ8nkE3yaNLIMMAFZwzLYlRaItSoQBtLluPncniX7YsJzOJr4JyQPZp1mh4i-rhLGb15rBmRllJ3Jz_Fc7hLXtwFubmUWXJmA2ai10yuXiEIOg3xCxZV1qSm_VzfTjufACnfi0zgl5rT7Mgh98pUC38_Xz0oFXmid7VYCX32ckMZ_6jDeiClcxl1d_BPmS1LzukCAJu-YzEJWaq6BeBgfJp2EwPxGgQkH16YJxWrz9M8Wv0Q6ePgStpTOPR07PFB3SwKONlJn2Z0ZGLX-aYZpyQAiUXBKFlReFx6pCfzLgp3xUiDtIRVhV0-ZdWhBuLoS6vYlB7T5mDdjT4YnLLOCRap27kdEpheiYSHc7nL4hLcTJf7CJB24XJ9VZgx9j8DRP2gdns7yOJDi8AeRVSFXiVxpqdPn6UeNwZKrJy-zGPCjhSQBQUrmZagjA8r2aJ_FX2yiBiuUg1pGxAmLhLb0Y74NUadVN71MMrqFvN1B3YG7YARy3EqUMRmZ9F5EABqSMLZZSP4ay-GCaVhU0pTZ4mTmRKPCB-O9rSlyb22pfqH9h5_050bvyXiv4kd5UzWUhnxO3_gldnPXBA9bYL16a7K70i5-YWL8zizQdDV-fPkqHHc86jcKL-jRZ1RWn6OfFmF0H9JgUl81lBMaHRia5K6-GY9ICyybK1STAFesKmR8iScFpjYPBXBpMlEF7ks8Lodg8C69HMIfbLThH4_otWuVzr6Z41PA392B4ItqV_1MwfRhmfqinfTf-ccfqtRrwKrrfZYRF0z1yh5PpF87BtjnO3hzodvIA1LOxCWBGlcDKNISB9yO73PrqDoKC0vXhWCBh5w52jTSBakcDZXuG_whR9Dh1WRjG1_BUIihtG7twISCbZcv8-uJHCgeR2Mew2Oo66Esgw0NvJHecEnzh9kx_a14RlLr4W0tCnOQw_W56ncMA82igXzNzV8hswqsm-RTqLM4WVAzBsB0AFaHbS_LwIVurrfNqmWhGguAgWEcAw1PiNcwLIXtQmNZFvP5BuFv0yNm0yHEwGwXMT5NW0H46PjNKzdhAV4zezbCtGcf-zTYHwxqdwrmzWo1lpST97AWFfnkeKuoEFF0YWexROZReZkEwM8indNadajVverxFNeRq13jjmxjFj6Gp-qcE8IZh7eUzLaE9gERNPMVitnHGPqXvm17Z__jfX7w7XECB-10En9IoTApFXc_vkIxVm13Omji9j3StNXSVtpH6DtVePhNNm4YATTqCGTtEwscgxnoI4A1d7p-iBgmvMhoWrPffsXz1JPTANj5xcnkwknBovVTJGD5ZbnBjtwQgUyJu0JfAT-SqLkvxYDhvPZaJBkZiV-2NXxFjG3wAg42am_ClgRCH5sHKNuVZI8x6KkqeUaftyQHeehRIZTWT7ckwb1AJsttt791YhWoJYacbMRaM5WqySCvpUfXCTJExs4licTT95MGPAhufroYoNqleS5Ik2OcGXe6r3UYfB-Zpw3M1RgFOc4-pibi3_jAerlSUrn2UwRMOedBbN6D-C1UNtKH8J-XhHna0iDbteW5kVjrihnURTYN3PDeCbMcf7LwGTi6gRwpy2lplJKdZYzo3E0TTIIkxQy62pLvhcbsMRtt6WH78W9IPfqYVjSyNvkOXgQbONt6epARD6VWX86awo5i9z8CPMcv79iORL45o4_8PVLNbNNj_xWEyW3VSmcATMy_nZm4CT7ncixQk_OcJ_YxYTmhfVTSB7QLIJwx15mLoXkvBlV8c22-HjByXYxy3em8KbO0o5TTDbpGXg2iTSN87EsoPZQrK3-wYfmc6go3LwYo6jhb_bYLzv2GnqNqg-eN-zN1WCLM43xubwRbbpCGmriykFuTp5Y8tLQGRd0u8kCgK6UDinKeZFRKynMWOV3bkpHKV_F5ETONxVld6hurlQkHJHTefoc35C6hYDRNFdWRndapinPorU_VhQUkoJPXGs01KWfNleJTkb8usK3WzvNch70mGi3hzN3gbyjXAcvc_JsgHunAjtYEM2O20G2sQLr2F1hstnr1JeMKI0oQu8_UL5KaCuOBSoPSZMpr2fJcGvNZ6kQ5E02n1OugPTvcdQ3f7t64G8zF5ht2yF60uv9DSP1tmtksF45ONkgh6Am4SXq0p6pt2vPQ23EHwxVY4ZyIh8H5ZozVej4yVRgf8yMyMj1tf5HwwxtNwQ98ZsRnmgJLbhNJ90W_4noYWoZLFGKko5B12CJ5CAxseFHzQ_nIYlgZSXgcANw3GQ_rvXvJU2pEMaDWKgCzGWovoKf6TrXp5WHyydFLpemIIoj5EbY8XWrd_jkn_QNZcHvOuiJRRr6h2n1pBLcJQbaJjqB8PS-27BrmbDKAboxZyqEigP42yoFHjmbcLQfT63AgiRiM6SaiyPeviJqg39XViaiTgvNchlA9h-rZiaQDetQB8N0_X1vyk8FEmwH2HN1j9neo3Xo3gv3ecpVv2CNezeDQgCLtaw4H9iuqNATXCj2aRUmGeZaSf2FIBo694Og6XywR0wUUyGPHJq4mwMlmdL3g-Gyt_K0n-eK9X1-OSK5obOznoyibvy-JKh43wQpP9cjOEPF7orDZt-_EhrW8hQ8JpdAHb4hm484UVZeAfj9GCgeikvlBFaTLczibnddSxpFcZtiSlMnM5AhKBbEZNiJBf0cGALF_I2SdlxHU_B39Avwmer1Ox7AxtOvbpDDiiCJz---cNCQVGZ07OZ5WbA_2pF2afvJzGqTkBjj55Rn2tFvYXIxNGl7ob0tB4SfYAJ9IHwoFoKqsIv6xYBjzPTnL6cJ_HDaToCGLqbvInLsXXcnZZqxfIq02PWaTOLjmlVv2CsKxe1nYUKwNwSWfQk_h_H2Tp0fQrj8_DTTPICZIm2K_1pqc481XODfOrrzDXDMTMb30U6rlRvL6TVjPkSGPA7AS3V9-hCADVNYtOdriVltijyS1Aa9VGunCqXG5UxpolZg7JC2cktVG66yy_DL423wqolVXtdtrRRfqYxLnUBFe6fO8gKIjD6ZIIwWdjx0r09126Joon-fhMBIt9BbOqYbTBseZPBhpsdaeZ3tVubye-qjbyq35_dlvPMt6T-WOCk-KJeg6tLgeV1kDh19VN8Lx5J4NZPkYcietUqYyO82tB2_M2vGVmAke8acDo82vut6yn82BQ_Jd5onJsey2mz2vMxZ2tsd5QKkMiMrNgGkMnBBIDTgz_FnDm77RxGR_8rwe8WhOckiHrfwSa1mauuk0z7Pd0YVSUi80_QskJCMA5PwLhA6PhUdraXXxnT2_kFA34CNB8oEl6c9D6XHVhYbj334bJvBUIqmwN3xO_TTIncoMe_zMIgvXJWG5vWpBthHYHpwVbUkch7mMjBn0zAO8foAvRC1XIGn3NKGLiLAgzM9q8goJ6ZFTsGLWfHwOlrmMYCItIjoz-VB_BNV-mDOMZ0uH_UMAwR6HrX_oHGwD5dVqjMmOxKrve-9-3G9zhJCvBoHwTzyC3HFo2Sxffsd1kIYFiqcZWCRQnFVlf-lKsZAqOjhSIQZRUk271tJXAJSlR818sovSUDxkK02lqadvfPW7-qUjEE9J3s0ZEOJx5jzCo2l-W8Sg3SwF642NXYpxbd_dQwuVWO8o54Vb_Lnzv0WkE5HMs0S8K4UMP3gAFVsO_oaaMOe2kDsR8JTaoMTHqlsdgZv64YUsvtPTINe9JPr58XICL64DoDLLUNcQqHshWmLeVNRqXW3HDN_3fFy2VElad7PG2kRtBAbk-cq-rmb_2Pur6k1qpVbL6Uh4MbUVGIi23XLYxym0Am3lUdENmnOjHzqKSQeEGZCZ9Zquh1bAnRlFTzXoPV2LBneoyuN_W5Ua6XZxksR3mUGOUQqLV4deX0vqoRnqDhnAiRhr3UTTxkAVL-2D0Xb70NB8ioJBas49rl3I4HM9TRfFCq6JfMZNtulDAlC4LadtXxx-U1BdY2k30bc1MkMZrhtLH9lyfOLf9cNi9m4lgjrMe7VTjkWaz1r3TvstSI4A1AWs7PewQJhjW8XIlJ29IK7yfujvQoIMoKEqg6iqKO4ZCV4UH8CTUQstdsGoffo_HyVaq7P-ixjZCpNp84JYQedGH5TB6stIIiPLIzXm2edtSmBQr819vLeir7ErdQLqY9DBnM5tjHwl1o6-GxoJPQkVQ6c3BdRRXlV3OeVoaeQr8d8b5Z0mUpZGqp0FqBvOTeVF8zKvIqXZR08UHdrqXjCiPP7ruOQZKlROBcmoJLYvHhe8UeVEvtizy0yz0ZAkhFPMQTQELAC_DjdsZTcHHU4qL7auF16ZcJQGRmjUpLPh16tjJKvX3havYk_kwHc4b7iMN9XgcEdeN6GzSs2nS9sca9pbzvNaSdZaRuM-HNXiCAF4V7qKgbKb1uDYtixDzGXI2DBC8u5MIlzv7jqyRQ7Sumg6ZtwFZn703oM0834UO_D5gLxeG_LGf-5M2y3LkHr7y7YxSQX2r7A7T2WRsfRr5D1xGbCA1LxzRw887aA0pTYiKDaR-JZ7dDdc7X_LWEfMVoLXCgL2RwnRp3hw26CvaBRz-95e2higxg14OShfkekw6ufRw-mmfgJ-urlTN9aevh_-jeqMl7I__S4I7F05lVe3rARNTZqS2-2J0jTUFa-LjnHm9nJOExx5mCN8nPIqOZTkHjzKsex4csEURrfBLfB6XF62fgkiZO1MAIX4S0oT2euKUChUA39SSavXbs9h1u2TCjeEaWa873Fr0J8vl5uNjXyY9Qmk71WTlXpEHPTfGjJUGznYUUKf8bMiv0UCtEo41u6NAQANxGuvPGPQqrMG4fqTztUHN7Hzih5YDJg9nECGVEx8iDlvM4iSRHohZ-ywi9SoqsU7YDGz_E56CO5jLpWgJU8zTYuqYgs3Bejb85fFqj4zxfgtiuXi0cBAtJT3OVVu9Ylf7kFVWBAPANAMTVBqBqUzG__9BstbfWvWTvwCPJmXpsmhisAnBBRK0TasNKAI7iwux92KNwc2iHIKfPKfSjaltDETgEQpFv-IcGdyEIPkfqzKop39I8xmUQZlugPKh7SOUGjow9eWrGy80-Rpg16aBuhnKHrNto0ehooXd8y4tkyLDKifHvfz1E2J3eyUj0b79LLs8hdoaHJ_0ehJrv7AOkq79O3znVdP7Od1zaMR42uFcQzx7DXuzCVTQnjtZ9jnM7bNGfzNWPLGNr_VPZbm5ATmuTRIghb-VM6cgzjtshjBSSbweuNATbIlaCn7fznu9ofj3goJfcTOK-6EbfArGhIveKD4GmRgDiOxeNrnV0GBWaFdwc3To6k9dQeineLy_rqQpEqtVhH40DX7PJUCmL_SP_Soam2XPHSFY6ppl7_Tn-oQ6BodvKXdkmfZxptlFQZdFKYQs9zHMMwtLK3U1_LIUN9U84Dqqc_pXt7CeBXu7vpkra3RLKYYIgXh2TxgTt6hPlGp-6RjEaLxQq_bkdIeRx-TKQTRGCjL2XcoF2ghQMLR13KsDZAEskOCtFoP726k_KokTJ1ZT-MShzQ-nS5BlIlfI2O0Vfv0JVqyyEhsUmdoNXdaUMLX4T64Jxic6pI42S0nwUSw9yCe5gZ9jtdVimp0M6PoMCS0GHaAzgDpd0JoM6ImNAatuiniqEFiBpQD35ptRMB2RY4MvEyHqETLDIbkYosxgy-6BGVdruiTvHa6s0O9QjYTa0LeUn_XGsuuY0GNQtG0lHWQmoJkCJs3LqhgocYat2avVfTqfflwr6JGRLALl4QoU7lQr9528DsLLGkkiHA6Vi_E-F290_4_4ChvbBxdIX5VMeogYbKljIR19A6pBI4xIUBpmZIB-XqtmoAx7X0UH_eqhVd1tqBSjJGAVRFMWcdwcjAA4ADhP09-Fb6gxiqNTCmTT-V8RdNjpY6JHzDriuOHbc8m9ramNcY4ZaFOck_DVYElgXVCO2cKPkI7PX4b-TCgjfkV8rTbbRcFv7myNLJv5kx8myHov6h5AIgY9-wBXey8U31c82WCS2KU8BB0h1nwwBf3Um19iJTMiv4ZBSmN-SPZM-ibXbdFBorYst0hRE5entTbeVL1j5hGOqeVokxrj7OwE7GBDz4yTxPNrVz5e07AQy44bZC-w9UkLY5xjP-TExHN778aWmVc6TwnR-VNhKd0wv5zbyIFw5h3MQzH6NrbWFACgkNQ_7F_w_FkwrbYdncxOjf-2AyCRTk3hMhk4QU8ZHHde3r_YKvXFr3lxE9UGPBlXlNezWmetAG4l_YzHZyf2KyPnH6kdW7RwUEs1B48qA1uFpa6O3lfEKGlIAzg3HQ6pp2IKmbLcfBUK4bkCmmPhQx0Sjghh12UUrAvgGiS5X7gb6w8LPizUnq1nl6WFfYe3OMcekxbdkIip0R-YG4VoqMGDKSOozILo-yFeDrO2Ag61nT35oHUNpybmKUcQAleZsmaUg0ul6USKjNsiNrBgiwEMGbBCvrZzZbgzclx0adrsQDjZ2VDXJa94LYI9dq1XCrNdXaQXbaVknH38wM1bupeBrZXWAYl8Y7BOPC_kklQdGZc2zF9eahsjXz_crvK45h04Oij_VgbbfSyPb5m-e5AqaJ0lf5EGALRDlpaQJC1DTm3LRLiGISyToczWSWdDpPgIF_pEcIL2rvZShzO3shCCmCbVWPvHYrq6tp7_eORTxX20E-rROFmN1f42EjhoB919AO3Zz_jYpr7TbHcknCT6QWctt0Z7_doI56SfIthz53WB-gfgEGspR1ZdJCrPC3xIlfPkuF6ftZ2mlsdNvjR7P4iNVM-Sr1ZGOHCGmjFd42zJy7u5W4qY2p4s5PkqBPLokS7HUjNRJTqlFCEHBjvdq1hMDqWnc7Vblv_aiwaTEWbkCnr38VrRKxEhMsIyZwpsOLV06T2klzUmn4I9y1Gra04zmPWOaDhNDb6AipWOFrHtcORTZwc-sYbhRBLTPDkwz7voFirH6FfwjfSUfNUyrhG5BqJpnNWCKbq_B5zk1dJ6Q7VWHElKTKx8c52vkK6Nf0W55nYS1wieZP7bkdL9BYkQ8Z_oNiYj7kg9GrBXPdD-mcR7saGtXWyT-_dXGsm20eidFMzR5NcuNLyMXxcs-Q-jdZnCcrjX0Kb_0nquBsoz1NFE3qn7OxFldPn4Cyr6caJujEViNCf6o0VYD5yps0e7toHZO-AEXQ3cs4oTDZ6Bu8NG-FQA8PFLKORQpClP7Xr528tADWofPqwSfHKWnKpYL7kkU0MYRhIK_FryJKdB1n0BVjPokMsPLQrl9fRZrMMmXJfVbT1CoJK__OdY8mvWFD59XkdwrG1lmqRh4yhpV-kBZ1qt1Iqu-An-kv4jQv2_06ebH5BKU11c6WnGh46uEFKx81VPEy6oxZXIgBwGgWVrUHgWoKhLwC-I4hTT7uZYiPp7TQETpIorPljhc9LAoqjtowETJS3JNWypNjc5wblfZWfG0NaxdzgkA8Eq8o7xl-A-w7UsR5lBL7B3AovyH-Hgz-NPG-Kbs8hUvlgup15MsNR_fyrBbwcGGEBgDMquvNva945UC6PKWwaonfrr0oZAyOnxeQ22rx6IjG8C86SdlatB9GZGfQwBUbZY4SwkcVxPXbaFgpTuO2O267j_eoQo4q-f8cMvMRCPM00UZsEDxyYDr_ai7rCx-F6V2mpdqx1M6x-Jwahk330LpL6C9GXSccezz4m0w-eVs6vA3ufc5sQQJKazWoZhbv8cn1Yl3OFk2sX3XsufCgGOUj-CczujnuI838Y--SarHrDRoj2vMCaNZSzk-BVZZcckKMv3DYsCefqkxDpJKdsnjfrHsiWtGF0ibdBmY9hciEFrLfwxYUuRUjHnXOUJZMwT99OripGodkGjn8u-tDxe9Vr23f87aVV-nnkG8s98n7gerfzOHroLvPvh6mEpEbXqdX5D_x5_A1BDJvEcqBxHzOxlD81qwDoRsJtyg-P4RtSOTnKFl8RnyCQgQqAsK3AkJXm8WodOr0ago9ykO2sLb2zL-iqeNzH9OoPxwN9GRnDnGofj07I_o7XbhizXejAOpUaJ63RGylTDSvtEX4348SaKF6_yOHt3hZMRY9erB7oJMm4ZSJ66mY_CqsPyE4L2wFPerViDHMiM6cNY39tE5U_WvO9u6BpzNlMqN3_97nQOY50AXu04puigOlc0hcqYddCPAEwpumAWUN_kUi7kCvjGEkEwQD9dqoFjJpj9LOgI5zeEp8AEP_NK9971DLiPb_nwjGY2PNxSPlbYOpVebBT6oRGZTS1jCux3YtjadT2KDqAOsJ0ivYAlILPpj3NDcUW95BHRPXo3Bhnr6jO71X-j7hpKUJ90VepcEAp7rYz75T-AJK58F7QpoGzNy-KvxE7PAW_wrw5U89pdrkHH_wpTxt2avn1_iMEGj7sLbhd4FZ4WvzHSTsRCSFjTZoWErTQ_bU9lSttYmCwxa9FV5_cTS3brsCLB7ar6Tz53trHnNMy1I2_gexnE5a3_8aGoihx3QTQUiK7b5MDyt0CNk_AdvVGnwikmGm5vaJjcFrNl6kFqC6-U0PQ1tBs9UfNjcP2X896TtYk3smOoVgOaruU_OTQ0SpFIP9E0WUUN3NjIhtrVmCkmMuXsMLF4jZSr8oAebFbMvBr9W6zM78_kYpjZj1Y-bYjQxzORqSW24DdqOzhystS7piHNunJnUN88cEaBr8Pa2K6HwLFa0gE9LisjJTV1bAIPa3FMV2LAbfLFVhQ621wTg8k3nK-yKFW3TDoECVngK5y7MUao-BBn1KTzxfSNbkyzEFnKhIbDsKgG-xplBjsDFLt89DminzLh8fmaEakYN_Neaxn4zQZSY2HB52jUD9UJyNnoUnF-Jm_V2fYFVplQzzO8iDIa88SsY6aIvDFqzWjFjbirBMTrq-UQPRTbp75lw0NR4m0ujF__FW5NloLjLeif-WB_cmUSVj3odwYmAw4E435KIC6pd8aiu67mZ0z7jPES_p5ZPDmh16Sv0dPQFaoHKM9_wLYOwxtK7Xj3ouD3QhpvS4RFnMtgWUkXgf-T-eerKWNWIb91qKOH3RYEFnSpx9Qhq7kHJXx3rWZvZGOOcuKDm7-kTVnr8hoy83h1QV9cDbL44V2-dOcLCKE_vzaqE9_ZKIJJ3f76En5191oxkoxykHR6gk7bqOrJZaPraPDArItxzkb9H3mwCVeQJt9pbCDkQxGuEZUYlTctY_cK-PTQ3Iafo768FDxwMeQlAjg9_wc3kJP_l7Pm8qr1Tu6IQWeWbwwFIuNZqi1-e7CZbnfRu8ZwSQYf77qcGVHBBc6yIPZ8qIG4yzhnl7vVi4fLywkOBYo0yvW7JP54771-UXdiIf5e0LSFk6PzOnfsQnoU95pNMyR_YNClhl50NbxEjvLa25XSTAPMNpYszH2zxULhiZvAh2BuFiKJoonCt7nSGxoOOU5gVwsFX8aYyUXWV1DP-eRI27OLov9OmAW-DEIf_2i2-mrs6YOgF9mpGmIL9leRzD36_oQRzbTnQZgzYz4AZHa4C2rpJZqpZH9Z3HIBuYwbHE_Y_8LyYRilMIdmO86jX-XqrpSggumcV-mPnXhCKdCwcMYzuz8NoUyYM1IsfUNRfeQjUBUivyr84jCc3PxIFi-Ubn-c4Vq2RCPrYRGGoEWWzG9Qh8I931mRCQoP30V81-SxVc5SCg69OMWLcXFHKTKWpRUEYaH8yURJOL3eCBk0LcH1YiFggP4g_pzUFeEKEdkpKLUv-crQXUSWOIOK_-IbwXHh2kCATTJaL0Rrd5SGog1IXeruBGe6KYffGj6nxiLezBs_KZV0evVeQrvEyaTbqnnUCzDZ-TKysCwc84WyZkAZqAyGzDVqyt4r9yZMwDsXJ4qEQlH6hZ13F_l-gsO75sMI5c3lYnsc2e8VLNn4BiggvGyvY-2zIcP0TOr9lqjVANpntcxwyev5tO6NzX0x1Mi57NjfU3ttPmT8pZS3gG3oUJneJNOZYI4Y-OSnC-M56V5LmuH4vDfeMkecFLW4Im9pD56pMUOyMjHXBhEoCPZHKteqc5wmHIxPXaGClY8MLSByDpm43dzTiX7JuBkKJG7EYraaxqJ-kkoxGaUAAiM7qaitEI8Bs18lWntaD9Zq97dHr5ohUczSERgT3wn0i1ILn7YwqKvI_1WOWjarVX9bo0sEnnTtUA4EG9yGSTOLEO8s7xpq1elhygnBOQ_gkfUFfRKlpHIOhT1bGNAEnDaa1KmyILo8yuA-Hc9NWE142uIsVoHyGTQCA02IRBU2GX5o1pOs-SMJuaiUmk2iFH5VFVbl23ayTczuG9Vga4NK4Zw7q3EDJMFUDibVpmFBAlmHbtIQUnzH2xTO6hwkPNZSXF6KEewrjuHSiYRhZNkKVTZ-zjy3TWojsSqZWaKQ0uyS5dB56kFEuQ0pZfs_BOZOFjFjmlJU1NtcFNYSfNjESWl0ufpOLKQ-DF0xvb8lzCNLcMo1muotxvRr-C72tjUHUwfZxQ8S_Khk8zcjWEZjd-sU7iRIRR5wvcUjnPyC3qPKJYgYoLf0R8iDz47yu67AflkQh5RdihO8dxtM3BFTOTT2i1jUUizGLqekmYxpft1mtnuhIcWU1uBNkarQmlno2NDu1Y1rcIMKVzze2HgO9TS0mboegj4--zwdAiSIs6sNeCIuPTLjCpPBgYkV1UB-UvkauY3zrzMRkfegSf-pr3ftwXKQ1V_m_hEiNIu87H3Uby-xjv4zjarKRP20TDfzUQBRU8q1UxFVVk954lw6gpLtsUL7jkHirSRyzVmq4SQGzySajHEFMeWqWwkmSZsf1PKZCVLgEPreUZB0K5W342oq1I_KGgK0rGRJqbyuXXOH4FFRgtoQp1mKevFUysz3UoAYcde6NaFCWcvtB8s0qrUNhRx8VPJf2h5Qx0wZEsQnrxorJDdibXmZEtiFG12YUpjo3FABVOAQfUxG6yGzKJT8VyBHwLj6jOnAY3vFeiweH3l8MhxKn1zlo65Y56RzWRVmpeHxyJBDDkgavevL0Mh0pjtdrcckdbHRClpoHZjAaotZOnGWl6VqvPurEJ2DqWAxovaesf_8l2BBbBINHPwxsQRtRVEVxEakUs6TndEv3VN_2CUzwDf9Y-b3fpci-JgXbypXu-JvTBl8PT4e0Bwev8r5-JwUF-lf1jmefb3jpjuf2PD1pLdXMhS6RD5phlglfheyz5nNvAV6JP47bnhVxsC7Ur38MSH9LKDQ1kUl4_ZCql8aM0AWiamssKMRLQC7nrEoedB8GWndEuqMnzf_av-QpiY0cMNgrjSgOcNU0Y7WGzGBgMUSGCxhpFheHuCof9l6y6_ha98Vrw-B68pH_bs_ASiCKzsunOH9Vi3a-f1IQQJdgAEaS_nloHLNfZMnIA_W6rY1LLTvrTpoCNpEtHiXDegL7IzZzFAT5qgIOl94Pg2vnjXf8AJeIDue503CsvTPoANhNQf9naAtGsquPgVLPSgAyGWpefFau_2KTqHdapjBFwGluWxjc0Bo8LxnW6-WIC3WEtsF5QZFf2DRSF7Y58Ngkz4JS0n6VpUaBl4czjwmBPlG6dXVphkT4OO9_TkuFCYi83iusSHIeq9De-ifCUCRhkhudSofiRr9h1_HkPJyQowssAlpt9GyKaXNhtniQYUj5jAwI0iXTgrHjsUZq52MUuOTClygtMZLmD5Ugrc1bf4qcxAfgFF5c90pTNUsXkh8XyxDsyszWDPR-TeFCwCcv0lWgSgJYjWY4PaK7g45rbOxWB_MhbQfKv78wuSTHBa6-PWHIWpImkuIMa8MQZmRAjfmtqNex5oH_veZ01NLCNC1BNV4RM4xBJodHAmvcp8RO3zDnCmBtpGlFuLRN64MZszinK8jVXGOgYZOVvMskwaRjpsVlSTKpWUP66HjFV7_-w9NY9ipGYF2nE1CwrEEq6oqsytmOpqmT_rBhr94nxZOg6WmoNEvjQNH4_p3MsnfGAcxGcJYOKD-If6UU15LhfMgkA6iTaxBq5xCvaRqnvGCpZnmzG4c1uDxSe6_d7XilNTo1jp-uoXwSvzmOf6AIUfA6w03U779iW5_sA6Ggt3BiG1thQu_AyGFP2YcJU2DAI8rnFIAZJ9JqLC_TBVchaVbjOBl_4oNFUmxzqY1ZLSf7UWI47Jnp8OKjMBueUWbbLVR7BAIp45fS6FXJIhG1UoRHrYXRDZl-WghKMMJzCh_aqufMOCTil3Hgk40gleoX0j0bPuPh-Q1BqUmHt2r4vC-wOYUZq8ad1EOMo31EFK0OljsIItOCkoq3N7i-bvwYgP6IE8NrLin5xtjdPEzQnzN9X5P2dmKAik6xyT-RquS-GVg2-JRtEwl05xN9krPxvol3CNjl-0qT2_9yolso5Vye4_dBEpKiCkvezu-hA-N5WkadRW15q9mz3L1xToulFZCACAhUEx3exwcfq-chBKaba-FqhTdIs3fDRv9DFHrHTMUhmFSM7bFmROgnuEMg76Ru_2jaUypWvJRapw6QxjQXbfMYiiF3Xw80poIQVtUCNYjrTXDDXqQNIvv7WFFKYZsSTpJG32Bbi-HT8BXn4rpi0jZPUZ7Yx31b_2ZGxXUDHv0GeaIlT6sXV1IS8pq31KSv0ZPOF5BnjOUJHn5E33zk8TXFLg61z2DT4UMKccj7vK9TtQ9fnRP4OziEgRytkOaB14HQ7CIh2E33P4AdlAaD4bpePMhYrjp7Obz5mlnUzRwwxHKxIpGdO7J8IY4MuvmrSOeZ0lHGMINXGaDp7-U7XH-Sj-XAn0lKHYq-5CfUJW_WxBzhl7rkIrYb6jA4ccIa_45rYcxw5zgSXOq9Wc1yLh_G8U6CDvAyYPNC4p-4qoveJA0zyDdwHBNDa0RPmvhZeyXBy21dMhPJr7v_YzRw3LKfJ8JDROuVxfxqkUuvstDB7LeJvhb1mRKFqLF7lBaQW7LZEHvXkYFHQnUHrdrazm0qPqKhUr91Wurmy3QIhiP_bjIiATS0piNzSRP1QF7ByZWWfxD2oYEi8EcxlQvztk79Av2dAkMVPKGomxtcqgjfybQD0diZ6OhfOnpUucfw3fIMnTKfBiSCY_pJ_1MmYwju4OsN-QsrD0_CQaN3i7scz1a4uCzUFKJ5BjgWow6fNcafSj2Ky-XGZa1efHKw47s8DZuLkZzZofPjSZYt7s8xJ_er1-3kHS14ze5LkJKhRRu6Poy-jid-JM40VJ63NniQD1NkMgsNkP9J19mXB6s-Z7nZZyNqklW48NvXwkFwT8-vtO_irD22e35OjT2hA0VNxWiTD1nc8zmSHb009M2J4bWBp_wpEzFtjBqaFknvLNvXQ_vyQzQ2C7lpbLxDm3hs1j26l1fLdtFtzMKwOc9Mr89kpPtmjWzClWHtEdUJE6zux1l8nB5fyT2HO0JQCSLkTmivVK3ZHZco8KPJz2nC5Ffph4F3a10w2jSbULm4Y9n5jZ2qAWZ4n4JevY4clYqiBeLX656uX8O-euHKnIg4PecvGf4vTIZQGg14UO43VlcwpMIy5fOJDZRbCH9WaWG5_K9Yny5CmxEMk9ThQdySQFVRKofXsrVnS21pnI4fBrefsCSH6Mxu1zUPtoFLLTnr0OMLG5qOFoDQj79Gdyzby9pke0SUM-g1btDxZOlLQCDBYLXgghIEyx_uP92Zt6Xqn9SeBhfJyw938wVkXByUxO9Sm9iaVPPsuazMbazDFEMdF26YOyuP0DahCmeGmPHxAW1fn0eMon9_85QTVLrpNnnvsU1Jw8h0KQyDl2Y7lFPrkTq1W4Hc-bL5lAIIkJ9GUyQwhG7ayUDc_90XPu97otWLM4DC2bYHrz-4z9MVzbBjpLX4oLck4bY8lz9Fe6gRUlGo1Drlewulws_tSW8nfsIFutL3ccOVK6TZYE-UZbvH2zRUHHemy_SzhERHAI770sTYJ_dKxWaBcPOAmCFb0VjZ2C1utxi11318-i2IcRnGozGQgN_fnzGeaIvhE9RNT1mW5_EAOgFScvZ2qKv4vAlGhjOIwDztEPTr24IihvAmDRw56CKe0MzmLIDyHs930whuKjLwLVKwZ_TQodn5vD5QhhI1uQWJ9tfxIoqWShweNRwANwx61v2N7bt-_2kO9MfzXgPJvFnVYCXbaLXJpE3wUHap8vNhaIuIv0mGYteRQ0DQeCnbeUXBikgxs72k5odmmHsQbzp-JVJAs0_koQEdQfSPH1GICcFhWpVgPuUHcFV6CjHT25uEicA-l78VFfjaIxgGp_6AN8gXBWvldT37nfSPgsZKoBuC64aOpQPiLsDCeIhSoqXfcboeqlHApgMgDP4ZJrTmaLwDaQK4NFvHDeEs0-9uIIiLlbukk_X-Hsf6MXNO4nBJU5PTJCfBTH9fm2DvHHwMopw58iGJOlsJnteUX0d6b7vJCJ4D00nqLVeZKKSH8qHia4W5zJ223G2L5mW1GMYM08Yf0YGfYRe-VzK4cxEoKeTPO4dkb1zdzV96Bv-bVPpghlCPghLQCM8bMZnYDqVrko4dq2zvriuLVHwjuKJ-XYdsRHKkg1lY2d3uZnSML6Vkb1lgAzWLwyKmTztCDbja6KTRNeBvhMnQHEK5JBEVkcTw8ThnxaN_tYT_PElmCumlzjgUquLG-SCiARvGFcoHz-5kHLLQ_ZXgkUmRIzxF6YZwD5zUNjGci07yEbOltx3xIGSkFHfN18VgUq1rM0HvR88281Qmxb0FjikZ0j5KA3RTKU5ohqEA_AF1GdTb-96gPkP7o5CwCXfhcsW3n2Z38gwY1LH9L7SNly8Pl96rEJQfRiI_gDtZ_KRIAuIfVDzNge-QWHROB2dBUQIc2h4yGSr1iSG_isHG4-vTFwFYqFbb7hj1eYtYY-VIYczpkPsdsAbKnPTGjUD-YnA8XNuJ8MZz074oPEsBMvDm6CCV5FoI5bbDH9u36dMxQdmA9yaEGnGvSgdzd8d8ckDWmlV-nQUQVF2n7mWBUH2cR0WU1cVPcZ5rn47dH1JVZXZm4t4iXUjW80nv9klJba-kJ6TLlroIwqRCOtFsFmYes6YEMPS5Or5pdIX372QmddjvspBXXPl8BxzuBon3MXpdfQETTkNAse_AYE-mNJUZSfVvsFnQwMMlOP1ypQJMn3C9MQTh3HFS1Jmz70dSLwgHl6kmYBGWfS4Wrd0VFa_3886egvHcE_gliZeEcoj3sj6irFZ8Pn5s9yiaxac_5CL00EqRO-Z9I4s8L9WIaKxrcV96kF0fbsemx-_YU6xIHrV27U-Y3s748LHA2xDMyD9xMRvMqt3qvXPFV5_3w8f0PAoCJnhjvA3QgW17q4OW4tG3nPxxzOsjjrqjjzDhs3Cs3nUdV4s-B1FfWyyZJc58HCiNI8ZHOhDLv8EskRXb297nfCzKyTPD3VWk3QegElAdu43J0sOPIu6TKX2Pcl7q_miA0Nty-bEwJvlgjboS8whGotL1WlBuEP-28x1502xIDsqU6SFPCXGKq2eBdWwLS11DMfx_w2Xyqzq0ndN-5L_E3mR6naKr5skBUjcXwumpTYa2lZdC86ON2iB0Ncxg_XRSi_gkBN5QgLfYs8Q5v97ldid2ie96bxLnfXyKC5imrXXJwluu3s55orDPRtShf4-7JogpsSWgFy_pZPSL9i4trWrhOWRy-MA18poUU0FwDVR_Y7g8LRAF_KgeXMKcwxdBDUTPMe2rAzYoibhtO85qnKTKNPxU97z8gePg-Iwj0dsG1aMXT16HhswshYIzsmFEo5EAZmPbfZLmYM59qmH_u3bYCcqg3ID_QEDN0ICADfRlH7dnDoIS07fx2hXPQQ_H5n7T18qlDtgMVo43s9aIpnSK1zctHQWUVZB3vb42M9E0TAAm6RCpT5UoGZTNWPQCAanWN-6VLsT-Ogc0b1QxP1lvXLCtQbBydDqqqrUTfuG85dpSw7kNBRKkEHnTBkoGsi8w_ZYXpKBLjAYyS95kSmtplQOGhF756y3K-YHawHIFzVzS9zwFsxNmpQ4A5LC0mb1xXUzYFGMyqC-AzbRP-7RI8bRICLwA_OL3BcgON6HyMkSS-YD16wkqU2i8KhfQRxegXzEu8HZerrolW3Ck-jOl5NvkBAR-cUiC26s4fBKJPIUXSwf1SQLwhdFzzzoh23ZInX918Gn373z1_IoBo6j5uDU0okVu6X60sN2yzwfJNLOVd8Km-Pvgfl3G2GM22gwjQ1ptuuQCJNM2Db8sFkQbBmZ-Z_O_LniQVGlv1V-n4TQiLP7S2t0SR_91KyLxb1OA8ZclQUVCAHoRb5OgnfDXUBqGwgscClYOSDpu1gjKH0cJLLh3Tzf5rZGE0NJrygrOLe1VOlw9Wlc6C4udnUW3S8zkKrV2LGoT6L3838-yQ-Wa1DzyyRzeoR9vbWLiNqjgdXpAPKj4BHkDnhFNT-IXoztv3iKBdsH0z7oExUntDnhulLeLvyfHYhv21UoZ26RFjkwgGrVADYBFLCTYiN6EMN2wyZYaO-lVAx8jgvBb2_PZQUWEHoxwkN_7ekQUPAxf79Lbu03OmmOXaoWr0RJAYTIMYQVfNioxruVR-DL6bDSeY70pWZiNSTdBAwkYjf_dCWs0fAWmVT479wE1Qslzb2DsIfinSmIDSAtfncuEPIzqXWgcFro1h1dMzoEj9mQs5iaqTwyiCUeSCnKYugwlisusmYioH4vJE0Z31PRdtPj9r79pENBlLvzl0YuD4jWIhi7CGg5pLhY3lhmYYwqnU23cX-sv04PKU4Hxj8Mio9yzhPhlp0f3GQ4XJnt8AHK0je6z05uj-HB-e6qhas0Cvs9nS9Ttu4Zt4gnKLE5syNuAlSkIFqobj7K8YSeTZwLXyWqEEfF8fAwRvTpNc8PBIOnLKFIAnvPdmQ4MFvRt4P4C303a3M1_BTBM97LZlZ1du5sTU-kiXhlYH2hr755HPbRdBxHunUnL8amjKJjacVEOaxU4tH85_LEiAyrnOpfTSTF8TEvCNPuLniYq8DBLXXmRDg1V_lrXmAh2-KEnSi7p6lF--1RBaIcQT-2qeQwgHAqPDEJ_gI2wnj5TdCVw63unTB1ZkmDis2KUT5ZDawjfV71rBI5OuJOGL3zvf0TKc8gcK1iY7pS5hDcHCo0EUnhWQeQglijeRyCnQoaGudCtjRV8mK_t-XHzsy2KHyQ_VhELEJ-tp3H8LFp_GEbHoWaMjbya87SdDN6lrv_ZSu2poDkdHHpiLpR8obPBSWo7BT25rfdP2PElfiNlAwm5YwBrvZc5ympaPWSn8HJD-mwDEWsw6SMAbvDLfDVIT0vYgUQUbzERhnU-LfiTWjE3ucZxNlAn00OndhULIBFCW7BeC7ndS38TeUf77P-aFdzSHEkjeSdlHb7fuSJF3HGy2TQiHh6DUpflffIZb3ikKEjkdJVx1v5kUsIv2H3PaUyg5XA9k4Ox_4qAMsm5glQhd3UbkIkXPxdof928Y8JoURYdN0sPy_4LFvlgFDSp2vPjGIy4cdbQ_znXhDesglvh8dIq36bTBm9sYBSV8-X5vTkaPn1K8fiEmn3GCieLL4eib3ptZvkvc2_o5EdRqL7iRH89dPfzZDUykjbjI3iiAmd-SWWDBLPHhfbAm5G6chKOS5Qv1Wnh5pBsZXEIKfdViw5unXrXtQxUnhy3yynEI9EGxNnKiya0mqllgJCTVK3T4KzNgNziCCI2fp8Jm5ivXHyQvOLKkvQGTkv8Pp32td7blJHBvpQlP7g-kRz8SUrvM5qIr8IHjSB3WYYWe-LySyhG9Ex45O883X7JEvYT5RoCm6rvO_Mrp2dPpHqNdmS20CjwPyz-cmhBPQ2lDqVD1bdVPiW3w1BlBVxyZllyWWj37wd-3jGc4Q-yjzpaYm-pza7FHf9tZSpMnTulfEAoyu40Qddxzj6JJqW7FXg3QJiHaGsvpe7qGZCdAz6cwBJVtks9mbRC4_jT5qe1aH6JaH6uiTui9_cm1kCwRv_Wb-PK7c8bsIhjLAJeV8a1gZnzayRG2IJrQYvFSN0v5ArHdnuHcPHcYqcTrj_dvn9qZPYbCANpVGD1wX5oUBU5FI3qXSgW7iJxH9y0y0O-yuoOhuTS8cyn24BjPNubdW--INDtOU2oI4U3HJ4ACcQHzSdqNi9f9ZJ8irY1PdF_JU5D8Teooh4kJz-uPNeJjnvA_qBIlIvC2ow6BCAzghxIPlSOic53zFtLpGHRxqN9PSE2SXTBQBCH8NaC4gu4M7CoUlWPtjIfdPHgRH3yPuyWcFAzFPWJaKHkSo7xstOEye79cE_8NQbGOMjsqTqYFAg-2AmK0YKS2Oh8CkJt2QoCd_n__cnfhfLI_t1Q5uJFiq_ZulUlKuTiEtNqufw9BXCMuMMkEd3VUrLifVecilrITiJ-8FCSfkt6aA-6jFpIuJ_vyBu5cR69cibj3rxQqru7S5vQ8LS3PAUFPYhF1cBNqWvhRFnJDMMw76mJkP18M4yBM7ShQ4qlwMAmjrLvBPOwMZYEyQ8wFCOMlDcUrWrAZ-85sqMOMX4_Ve9YFw3S8F3fTIne-RvXOJ-T2zhNzidO0Qpt7UexQ-x2sZyJ-XGxTJOuk9563eLNBvGQxBuNr0qVtqetnn0MuxzyktXxV-hQZaGcFPeIE940X3_N9kFtqikwLXHFidYEdiwSqWYAq0j4I9m38hvW7I1Etvfkm7YQu49wB2NDa-W3vUs06E4I6GMz5j0IKyh1hcEIN-GQwb6hq9pPVP4hm4iEGKJVG2OswWerDyW72FAsqY--gdgSPrvq4fock7rI-QxPnmTVzJOUoKT38X7XPPMvapv83eD9yvBFB0ckGh6bPpQXxNt9RSWBY1TNaiF-JmIKve4gGS1n8Dy8LNMzQjfNsgnPdWIPRD-ldsaYeRoLU010wfkYnf-giob8E7tJir2Qc1fPiqHFbQa9hxcjR8eQ-VtqmumAjMkMHtNyzSWJs7PdEv14Ow9o4acx2DmjGmaX0XXg1nrg9O3jRVFpMjm7Co4od1-7B0XAhOAr82ly5rvLDsO7--MyPDvIWugDhQxdCNCC5ibUmoJRObIrkzzXEUHk6K22wNDp7cWro3FpCi6_Bx5xB6fc_9PRs-FQJC7JNVZtX8PblIZEtrTBt8_RS7spCRts1_O-1eaxPnPPFrYFMWUVqs5okrM49VrKSJoEAIXO5zBzaa2FAUoTWRzZCPiFqNMbXmCOw4uYEvtFWdoWErpNb-Nos2nXLvSbIiwX7zwteTP9nd4K__i2JQxYzz5BtErxV16hXJi9GFj-GrmD3cVJlXv7wyPCeoTHDfPBSFDi_9hMbIrSwccUXnZ-yJMzRZhSAEQjoj0ESnfwAciCoiHRNk2n8SEagU9nGh_BAKfy6l9ZDIxciB5ISJfGyExwYzv7AL8Is0hYyX36VMwyEKlQrJ8AC3r_Z08pZS5bUqTiZDcGyTfDZBwc26cLuJry4N_dV9w2fX1--V3WRzPTULbHqRyXee0GaPKsJE6Ql9NgV33HDtd-4G7mbbytFmr2M80ZGsBiXb-V97VV4vO8wmz4oAiHKxx2SFUZQH7YAqTGPOAG7QexecbW3HqW6eGFG9GhecVHb2bHnXJxDAo8WmglTHQKSYhmToNvNnu2lIW4peFZltNcSrjs7E5w2I4oOH1rRFWgl2kkz3kZ16MstgdFhoEbUF53SoR5k5XpOcPiWlEdCgypF-Sx11BTaL0lDIgqMOavRdWz0jDWh2EOHs2fgg1_OFpuW9b457BiM10vTJNsdeMhFy-rdCcMda5eMoavfm3H0DIUhf_zkBKq3yR3EyWJ447mLVpl8EsiXCysHEbTIP3sPCCJp-VSjO8gj0yvpLTnFWbiQWhWwCMMF_iNNdgzCkvaHFteXQFtVUYQMV-aSXpgpACIf2tDbLhjMi28rXREIPjsoATzxrBG5EZuPdhkIaX3P1FqB1jWz0hnD-lWT_UVoJ-poBu68nSNkKO7YaWUIMsyaFIQIWCx0jk_azIGyu0ChWghKOC-yGhgYsc-XLb85cPgIzDpWZktRTx2vP2SoF4q7htdHqow_vQ4-MXAPeMqOshbAXwVH6ET2WKvUFRi5TUYcS6gMAFPz-PnP3Y0QJ6h-IVg8wlBPBHtlv4xoW_OVuqOI_KELG_Q_YMu-iggXu_revS7Lp0wTCg1-PfMens5nNRiUeVzGL6AL0FNfLexbu5ge-yvqbB65gbrM_Dp1svS5K5M__jkIUDbdJy84GgFeexofwwPItkWeBl_PKax1g4mViQshW8uPnWhJvKXGm_r52om34Lm4qMuGka4GXtIM_vYsq3wPJHtJBrQgYF4xSBZWLlxJ6UxTuevrPfyaHK7rv2ffcCHq6lQz69iJkdE6cs15m2T7m0GvvrlOTjXUR5zy6TXSB3FznlW9S5iFlExKNU3TQbb8u_lyHo_B8I5kOeJkb4BjAW0GNzpaGibWV1r2bphPjhEE3uQTy6IaXH2hEHGhqNeCoS46_IbXFj7bt1xrPgt5byw6yYm7aTqcXstWCk4ddhsZUrmT5myXRmF4huOXHsEaHsvtc9JFc9D7lkArkGJeKTDZj7e3vIcvOsVl90lRSuT0Fe3F_dOLg7HneER_e3K2x9usNkly1veV7bnw_h69IAUPh84E54mbh0N3Q0cPMhJknZY-umsJJ9Pe8Xi3ZdMkmKriQqJbMU1woNOziHC5yb5uT8ySpkcIjjzIQbIjPyZ4DDVWIrrwAnthJGcW3LeOsOfKo5beDJKpOiTiguWnfxe0TqQ1Uj9j_XzZBgQ5IESaKivNxR3hGkRJ_V_heSRKPqqyy3hewJQ9pVrxH6wU2jBYYUyk3eh8DuunXyIeaYZn707-wQxm1iToLD85l-I7Z9Sb_DF0gJIJydMFy5BEG7iU1lu31Ygc7gTbLfue7ILFqf2QDSgoNREFxqgjN4T8UoYrOcfrddtwgclyf-puVnV9WfoZnyL0rtvc2n-tI4KDKazmq-68TARm1OdTZFE7btUkB2X2tW7CIcSnkd4AS5cQug4TiJOb4na5kKUyT6FdOw3__Qwsar_XzOWvvxxfGV2hCl3_kPHtXMh_dGAn7b2ENDasIspYdpGXhNbfQPo5idlNOi1hcXc--3zlD3jhVZhjxzvFsNuD3Yo2CXemaLfWQbRMN7RzGewdDolIJPf8ZYs6wQCpAX8wlNPj00se2JzJhr3vFiqzPx3lCMSH2Lj2IuloyJTIFMNg9R8anqkGjP2AJ4zyX8dgmGneJUyHJUAeBeDg4Z0gccd2CfE__g03EGI4DUg0yxtL9CB1fYRVH28ArjXVbQAFK-ZVDOJAhdercHU8mMjVaOmjBjhB94JDq5bTPWhGrSsJUXon2MCJc6py0rWPLvfQ0Wt2XK7VeMHv1dTKDAhtBksnwMceOdtQsJD-s_gltm8J1HRsxO3Hbq5cdkWv7y6FY26Ove5GahMmoURuyycFvdOYgQr8hF7YZiTDB_YdEwrSmJL9iLa7q4mAckhtcUNdXCZIrEbGkqiy0Me2I8ACOkeCu9qDTtfVV9I3ahQsnXsIGP9loS_Wop0tcggdHbZ5m3JxwmjSAKZzGkMjMneQCnh4_PWH3pOeMxPRE4zKN8TvqzAryxFBnKYoRnnVuaNFye3Cn_r5o9iR12d0HB78q03nakPu_yv0voyHXQTUOG5oaaEHD1Tul3K_53M2TfHIZtWnuHqDHBTK_euzKvGBNkSqyNocpQ6O0LRzVptSOmGpDHa-tem1qWdfJz8qyMZF52S2DWPgMaeo4RIsRmMbaz5CKiSswAORG4qGqy_KzWL8qhM_jCs86wX6UJaIWAEWtGZiQILSfPuQEmC5-AbiI3c7-SacaaCCN2Qm4Fai68wwOcn7JPYbQ0rCIyHWFtSO1u_hf12r7lsnxzhfvIqP3spSZv1YGN-qLa8sFD_WgUODEukPiWjCCzn3DRYvmBtW1DIAoeqm4XLuuWSvpunvxc_vqCw1EtSE0yraotKGrYyBL-GvAsGWyYooiMTabFJIsx1UtDeAeuojF2t2fRyDuX7Vhhl0COPQm0PjqmN9LWoa5JhbciDcWRvFFQRDcu-JFrfqLSrqoKwAmQNKZGTrQ8Pc27dRW8ZMJbrkIB8clB-LR5arBAWJ8a5Y5UOzYl2_brrqeQKEvRiEf4lz6V_5RS-EjO6A3Sr_XoCugtFUg1I8mqrHtCclBMbP3u59fWt8R6oGqtqZL9CdWrvYs8bohej_IIA8qPTt7xdrqEIVzuI2w5swP7774uKUBvyzJWRoavd8pqBg3sAhEwMi2BfCvFJ2akFvBQwfS7FoNUoEvoQnW0bQRR2Q2ugdbQMJIYlnk_yrUNSXQo5t3pJxizloZSktQw-rpBk6D-U6o-T8Byw_WzYYc-s7LS_xgVMaMTutbKcOtRqTM_TIiV-HO9EF7S52XQudaOmLmWY2XhQ7jZj2s_tbDnTYjDRJqpfvnqpg8_PLI8GhZPIng_SoS5t4KKHVxGkGUXqghplm1Prt8pQLOFu4sR4h1A24OdwS7BdJHdYr1h4avSGgFD2Iye-So14jOTVec165OOnvKRRHAZpBAWYQ_MgmQn6W3_8pB6qfSzPBqelIGyb8kTVcyykjHDOmlH2Vns51V52VMRxckmuNs3EnLE9VU9CPdWEodQG5ZxFIy7dJivHfLFqcp6s2jgWSpdv14TJTw3GEy8eTTdnwF5dUiYCWejYdo23Xd62jvK5g0gVu6SV3LUQrdVjJ7XGxEHXOcRgEj98p3pckVma2xW-6rafN18t62_wABXC-qMLGMX_C4yLyH0wHxYowv2XNNwR0tWOGn9HmX3esIWNS4dW2qAfypO2hx_9ooJ_2IRdZ2s1RHkDe8Q_SJIUdd86xCruCPhrmtL9o8TXSUik8E_gOr4g9ifyzVBzw9b3I9dMQaTkJF2WkLuPb-Hs-wfBmrlsVrZMBwUuWKinyECCn7Mii70wr4B13MJ_MoasTs0n2icVFlXfg05uDi9-YOvRrzZKFlP3Tdf92ND91wMo9IHIsThKOo0t8XxUD9KG4kVcI5vuYY0kp_gKYi1KjXEYZ36mGhIST3aryLiKx1jXomkW75wNb9AXVN5fZPavJE7KQT-wo8asSuELcLSRvK5i8Sa41u7t3goNSo6d9OX6K9i8-D5axck1qv76LcjP_a385ONdh0GRDYn_bVoYIxSu_4S5mwvk6nCsETlOWIccZdLgKdo4BKEVAmXG087h6GAAmD_KW9ZLrwq_A3Jfnp72q8xMEM13b6YSH5fccMO7cnE7TNzpShAlm1uYUa0oBBuJloZlstNqvAe_xrb6308hcWf8Rre72r7Mzp6Y5VXmT2ZzfybL3j_e_CdLM-K8ScI5jRxOug2WwXUbifpSOZh_4_8DUrVzGWQBDjZxGaBg3Fa-R49sbNiu7H9yv_TloVhaWfj9ojR-FdA6BFfjkvaAk4FTaORTvSjMCXgEk3lN8FgLsTnTzDCXQKXzIR-_BMD8lXo4-0_vkC5d32mQskfrB2SQBOBgCKcRwE2jzQXeglfWVdJ22nVwG4Si-rWkMwd6cbuk0_Jg30_h5b-pJ12LHmaT-jadyodgnulMq9w29CT66vk0l8Q92XR_1xtC4o6zyf14W7NVdPoB6ul8zGhQEbv_kgiE_ccH3nM3iz7ZcpfAIX2R7o4s-phQiSyQK0lnmaPrYjVNfX2-9akcZ-ccBRUYjjQX87gjxgyJwZi3mJKW2Jn2HUai0YVxYQ_M8NG41VA9yJt_Cc7Eg5d7SUNC8xtEi_CVv28HtD4ZFCNNu9hwrOxp2C79MRAt66KJlZAXwqHA4Vx9sBylU_OyVHDNO8nL8jinJIbIRfRQrLJtfAiNdYWC22wXJPGkIFN-HZr1gA5Q6wPzzK72seHTaPic_l0U7DGE5wuXuu4PqVw73S-Pt_f7rKkyOGMVC9qxGdSRJVQUA-4ALDAdIMFOlTrN9B9FaYJqn9bNjM27QjUgo_aWpQ8wn1dGM2TVGTTHKAiwoJbw_GUSqj9nyfTTYcJ1KggjlF02JVyLbAp26GbcODsmFl_GDN4yT6RqyyjR-agofRwrwTsOGP2STFNjApdQj4Aj6or2e_pmE7LVkmZxDTWp5IXSg7P9Qvo5mLotro7b8CvedGJ35sJyexDxZ3HgHYL6joPAiChgfYCXi7pJ3zr5c2NZn6pdOt-SYO1bAO3lWjVnS8lb4BmdiWzcEv6tU-8gG04Q4y1U5ftUBJZrIJu6bSQgjDqjCAmZwiotddXT3J-IMUvv9qvEkb08fuMj2FzwhyCLYHM5zaFzbAO9OSTXV3AOfQZHWaa2ularqP9DcvF3xxE05rktuC8J8xT4W3wZer4uIU0-HjYAnu3IJ9GuZeP8vLJkzSux8UyYxsi-7XQ5v-6iW-0fa91L_ikwRwGiV_CFsWy2kxLk_IBlv1tedDobYr3EH1w8A4-9s8CXVGGx1obcEf5br6ekCZtSUYrTX47xHwzgZoeXQEPB-ISslvM_KwuJhDxRvVhYdRshInzbafUpP4PSwzBkCrLAeBLyUekgQVN4D-OxsTST-8iUU_1x4E1A5rZOM_l32P146UdRJ8Lh35VKPGnVRiBapiuinKvFOsbCMuECR5JBx6M8d2zAAcyZCKeT7uXVX5_hotY0x3LFSKcOZNScijECj5MfBQIE9X4RMk08YcrmdkSR5F7xaWn24px57lcIF3rXnfjOf9UN5cL8rPhCl6Iv-aFmqnTSm2K81RalZhU2S8jA6Lm163KDjgbBXqi7SMvgJFgXIghMNPGGixGZouoEcyr2S1Gx9keFjE-MfdRMREXicHgdp62h3pwSzsDMUM0vE3K4vosAHXn5WIavhs3VSItyWJ-Xfg2PNAB5VnnvK87tPtrt_IW4O7tYi-YIlk1384heYrTrQUXhoO1uZnpWHrElmm6-xvSuAEG_KYUJZIesxi92ZsMdItq9LdxkgLfRmQYXtRZP0tF6zj255Ak2rVcQpQ6Tev21muhD2ZGDA7q_Fc7O6ues_w9t8XQDf_PbZWopFnGqPaJzILm8GYl5EzuMQ1j7YLyNpEOCjvqL-NJigyAupyCeVQfEwR5R_C-gNqsqvMA6WIJ1JIzGna36WpVtE300UN3sm9nt_NcFHDGStTLlzOFK88Gj01JDmPTC5N9Oogk4y2m2P_M0iL_YCYxoAUe9ln9jsD4OzsGAJrYm9r2E9sRkYAz12wcP_WKduRPXQK8UB4XO0_ApRmOnBWGR8kQDF9GZ_K0cy665qxLrASIhnv3f3LbDASvOVvvw9d1A4rD6Srv50sl9EMIGs2eh1Ht5xwpKwzSsqvmID0MMIu8oHDBjv_xCGajuT2XGAoGmKDFSWdE0BhJ5zaasNzjA7g9xzUjb88x0ZBWCtfHlhEFxVgKfDyy5ORNFc-ATDoXuFevDNsMOJoXZthXY_mMnr5pe3zOhUbNUiqDHWRZ4FOhsS5aNWzD_isCkBqoseac36hUEs5HzEVlGshfL7KVWyAiHeb_bgjOqFg4DfBoeU-AQIWQ4FA38VRsHRS1bq7SCODMkjuAnhErRj8S6RaunfVQc9kqesmCXLV3Vliiu_U5RGSmzaw2p9ALUkzeGfWS2YFrFzqR1jnIOXtTAlekLmecVEoI97nf2YgjSeCnmVp9_C-9UN8vHsETMgXsaEeJ6tHgNVSo10UySa0qFSdA_0HFAt48_2eLu7IOMCChSRal_XP57vQD6ynHG4DyMGsC6nd0x7LNoqSNfU15gPPHMbERYwy0GcPTKnvTKxpnVP35lVniTScJk8pafRvQH6os8FDJ_eyhsKF5y3tmho6_9RubPudKArCHj9zyyqKhX7MRtIfQJfJcaPy7L42CfrTUNBnfDNQEQ646DtygSACHhv2U2ZhGG7NBdLu29VP5QUwabk07YouCXrfD-hmCGHRPq19cEXPCFgPbYBS2aUjaS-YWuvHbu1GAIp3CRfzMl2ov1sTgBTkYgsrPwWKZX6PFuC4EBEYGsH7Ew12ddWlTK37_9xsYpO8WVcVt28FJlBzhnAHUQNCnTqT9y2QboHvzjOM0IOaUrZAvyYbTx37GcIzzrFTlKmlEnzsVULzeUl-LUKSFI7ZeI1_gnWzfvKlgSO_VbGl6c_9fDRSiXSn1wx8NoKRJte9macZZlgJpUcUdTdSYuSFuAaRnoR51zNYhYRwLreuPaAvoltiwzRIXlS2AJL8kJX1iWJB6rRBBJQPA3qr2sOtre2ZDSk5qFDBU3-rCaL-CzdEDS0AOyUdNGZoXVvSJx0SS_F019YYDlPFYVvMqoptgYe-r9gjOAcduEFv3xbf4B1dxdH4c8RRG8kMoEHGxep8-F9E5GzgjprqiuOsz0FcthX8o8_TZrZgOsf2UA5w6rIUbmbZgX_OOq1dyyy09S9meutPkv9yUKO9MyB3oTiT4FUxHG-rXt0-gPLS3FOwQZsHdcSEZ1hQBHC0Tp9xrqKPpLgNGG-dVVfFJ0fOH5eIJnTW0-g2tuTF_RLjkvExE-5NPz3hZDvpqyTEL_tkTeNTlWLkMXpZ1pn0D6RRjnOYpRtxFVjT8nO1rHnATqj_zhMCsO1FuBIxfjooFz6n-cDKBXAl1bOITPUsjz4QBWBokI3JgeLa3aqoJs6d4laUMlOEta4iVejs22on9MC_cClelkzeynZDvf9lmMcHQh1PYkFr3BKbuZk3jDVrE5lx2SHwn2IKOKXpfFg3OtbozpK04gnidyuPKQSwlWTpEq8HUJpgf6UbEUMjANRBez3IVR3on0ikYCvJu2HuBnX82SEyz7Bn_fqLabkTWuOnPZuer5M7u2Q8nhGPM5WIog9an8puMUurgOHz4fCi04xGF35qIKp7-s_oiOzNwyIbfza6FTQDZCu7IRbrRIflLcSe7Pn_XRf071Kb5Z4CKm7Xlf-eIbVis5JnwuWbhmOUBM4xLCk9J_ZnAnC6nX88mdnEHL9rJGr1RN4WPk6sd6oCEsS5Oa2l6d8atDT2Mo31sed7yOAWyeUezByW418iNtYpHWqwuEkWa1PCGeHvBbNMDWqbZD1anz8ujZFZUcHfAaEPl65ds3IVaVWH0iOMZnEFJeicifUxIGHgO0O1R0t_AyL9FbQvgYNv544Ae0N-CtpCT_x9c9N9FwcV0_GlZCP4aCmmTq_sbUVUyuPc3ZocDldZjOrLkAnVKrRlMu54kQOSqYKZ8WK44BqLPWin14BrHFRBdxfAgb3B6G-J2oPqPA2rqn2kuGUj10DEcjgnWV4w33myN25a9SRQk0_XjCTaHYyulSf5hUT2hI6dKu2h11uf9RmIUgYSr114eU_x8CGjheyoXBzZxbz4X-1Mu7oVhPblCm5vuxyNslS47Yl1Z9DP388ej6S96DYpYCmyM3GCYXOq15ClN-eulB0w_-PeYIeXGtI9a4HwlHW4-ozZgBlh_f2RUIuzMzoiwYFZP5qfqlwUXYq0fLdNTjsvTEXPsgl5AzoFdT_XrVNAKexpWKhzJ12FUDvYY3K9c6bhM25g57PtN7CNODxFWhau0KwiAOuhhh6IWwZ9u5qW_yyCNVD6T8vc2l1d19Wrhi5WZ8GIcf4-UyoMM4g2I8z6JmttyXRcQTyC45sKuhX-_mrgrqoNXUwOtTBPR4QJIMRsfh40ZjOsPImFFTdShmVrvamE2bCGalXfPnydxIbAFJpA-eK_8MvIJO19JWDywlsZvhdOZO7xX2usPsfqbdN86_AWtpzF3tus_qD7PY_elcl7FCWjcumwWu0m-1xLgeoLfYebnmGBRQsUtajtnBVxVaFL6IgeijY3KHxpe6TB5SRftUmoNax4AwVcsABN4Yjiyq0AtT3aF82Ol5Sm3p77vozuP_CsfWVIWkqsBYsj34nrWx2ooTGmT4Wy6GEzz4r_jbbIFN2bWgj5l_H-z6pEYT7SfWkBAh0lTmeFoOQznney6xU9kMso4vP9_WBjj6Bg8v0aMtrSNTjF2pQ85VKHr34SIddcZg4ciurdUIZF0_2Vq0Ezkm0Kh2LPKkmC3yfySGu-91-z46NO-YpxH4snYDngFkbrKzv8tduVQgNd8zNGwnryxDpByqYQ458KS8HbYu71uzIWeJzh3Jm391iamWPOuTIiXzHlgmkF-kG-fNye7vsLOBpwHiD7Dbm9Q1Fdk2L-5-jfTg6q1X4jk7SprzLD1dq3Bli8-Ku0HZITp0SDpogcDb10A5sc5wBM1uMp9014RPIH_lsk0T30RojGTHA2vwtV4BSGOu7TBYJd90PHqAiIrRI3ZhObFQkIxsOv_XvOWyheIXaU7HBoA_bwuX_97bxidUILWFA0eQ4V5TiKI2aP8lOD12R6eDm19oBLB0kQWS_xGHYQNh4Up71dRXDwdSBLkbKPS2MkHQP2tGYOF5lmJ4g2G23c6t-gMqk0tCa7WS8rwzg4mxz8PyKYiOsDcs3E0L0GDzlIjSEwWa36xjMUlTwRZ_VnH7Z53HIAY5BLzQf23UjpWhw4JAcLhKEzbvixPz00W9vxtOgrWaEiuCQRM9K585HnaA4l_wzhGRkcq4vqF63n0CDMsJhXfXx6Aumc103apE2sNCHdqfx-NpBo2WnzLTu_2hXr6ekWzl133g9fo6wMNwmZ041oPGcpbnjGwT_-Q_GGGvm7tliN6RUdEBn1GLzb8I9ynlkRDHHApC22MSOGFC6d7pmJlBbXqP7ym2kZDQAaiI1dupYYXJOx56BD0v4EjfdN-LxXchO9bzK5UWXzlrgui4UhEdGvDmo7P0rqMQ_FAJCtVz1aEOHkfNRBn0VTHOo9tVHhHLWR9pkQ4DV8ey7wxO4PumKzTBcnLzV9fZQNGfHeeW5_LnIKXpo0dHs7kXJZ7sZiEs_HJeiIzPpGtK3rsn7rRzYK21Xj9xCcyYecuUqIPTB8LSGzF9lohsIGKNTB1BKsOO9k0wj939PSSuhWTCMz23HKJAhGeuisXJgeKwhR_H_KOygYxhYXXeE--BodaW7eRq1j-L0YruZg0zILFKyOo3TjpDnYcJVd71lebEiDudTgXCkHm7d0lE1RmBJu4c-ffoXpwA-ThMvEgq5hDnMR6932ezlb0EpRVaRWTL8rnOMebAGV3BJFpHgtIEptG0P20DpT4xC6VYbmmB0tQZM4QK2k9_n_bVTYS3KSHuRrynDTemWSWDO1UQG4YMvkMjqOFp1yoi31gUnr8GhOA_wENxF9SOnL2SPJfQ03Esx63_gXWGFtoaYZ0LG8LGg8l4dAmPoS0ppH7pJxAfGe6nyX6xf47UoSCWycmjut7elkS2yREPDc-cbKA_4pz8XLzJoHMGm4nNUMK7iEhKLZJ9Cri3xkIQvtXBu-CUqXcnw2Si7jU7mKUP31hME92QhMtJBTEuAyWKF-QwpAVBYRFqj2vynv2Mao_xRTFVALi-viq9sO0ZT9PBWSUP0L7tzF9Sy2wltRU5Nvy0wPV1HTgWW13nqsPUILz_RRAvQrzvbnNDEXa6b1GsLjk4CyUOuky6_PEH6lU5RsSR-u-J9XNb3BpRW0EPjxYEgveYBYED2tmfKkVLKF2Dqw2kdx6N8d1v4ShxysMXz79IXZ77NGGQffEYMLXIDo3s_-6opjqStXKP2-rkcwZdu73WI4bc2A1brGDbIGkgSZDhKjjNk-O7RTedCmCK_HoFhdAcyiIzRlU4AZysCrwDdVO6cyo-nKaUt_SicY71PG78CZRTa_Z7bM6hb2u-uBZzBqGDbPVIm2Yi5SAvuOUmzAd3KyJ1Yb7Qnsi542pcy_Tca3tHFBoJ43UFBBVlFgSqrbcq-aCOhzw6Q2ASEyf4VcPj-FBtNWuc-pFQasg6nG8tfo-BmLXc77bQJ0qTbt_SD6ptNSIUndQRaiylOCqvbEXBUZnosEywIKwES3zFxIB1jTfP-WzVocrOAdV24cIrVRAFc23JSD5q9xg0hCiT0SNYHuqi85M9S-izCTS3QltTuLT3-B0bjhSLmrVu8Ls7XLxDOFIRCBMo9fqP5Bl7n1mzS1Fk3khv_ri2zaBE-wNC0-bpoI3mJ7-jOXx1HUQ0AMefimLf7uy5urgGBcr1ByZTbR_5w_RDtJ7GKoFHoEt9Pbwjhs-XJ8nTwj7Dnyb6pCx7aIgT8hsqdAihRD9BeAGKJRBvyelJ82_2FIuvZWx1Stkt1yjbnaEgn_x0Vtf-cMPAJ96h3vP7SmYntNtkHPFXEwID9O0H4-FietsPz9DTG-NqeoeE8aLgRs1zR8Kj_wnxa5p7Tn3I3gLwEyMOJXaIWLDXIg-zVRH-GIj-joflVQa3m80rJQkzh0VVGwzoOeL4bmxuf2OrrSY16vnkAn5JesTpcyFa6TonY8fQ1eIqTpuQaMO18qk_fMsHjYEeUJCS3KUVeEQQwVTbj2nq30BCw7zL4kUD85Wtxtwy2fl0ysOUXLsv1RGfxhnbTM7D83QzMWJAn6XcIJIfm4NBeerlrc1RXY_8ennxvRoDAwfLYfRjnEVRiA9-nZTYOL91gvSPaR-5oSHucv4-JD8YiIGVi1Ncvh4iLxhbeK5v-V8ol0HXhiGuJzy0IKkqWbaJEpmB_AYkqf9vs6BRychbQtkCpdBZPT1SA1EC7bA3XK3ydY3W0xp12wwKw5cQW7ic7O4jiATZ-VSVBpLgzusz2dsSMl8inFgWo1ECA2snoPkO-KNqxpiX8AXNeuN9fflNeSK3HFU9FAYdWslrpxpTi8e1D8y5H5VRe97lfhPj9jmwWql5UTCYHJeDSmssJZZgcvEznPfWCrOZkwINoW5OFMlNZGAqC3JHPT398bhGRN_MonjyPAiNyRWXIMXo6UBIJwP1GPUEZkR4ZCOxw5n1fVrjzPBDGUi7ESBJ1x3O9i6JsySjw4t1zU7zo8tlYXzxt19VVGKUz4J3-nvyUq0-kMn4FC7m7litX3CuiSCLFEpSNiGvOq-G429542ZLd7X6DMui3vCCwIkgur3VuZ9BA8LqffOWgFzjdagFUoYzSybx3bh5ceRFHgMT7_kGULuj21RBNpMDoxryq21AU-Qdy8kcgMn6ud-1hRe8d89K3-t17OlKc0GTNTW2K1MhkS_6uORRR1GfNCdiBYGW5IwryRYu-26t31mqUFlVyXdeL_O_KkdkfJ0RM2oQQJMQJj-XrlHGsxvW9x6MYvJRvNWPiZ8e52qkJKbBEsd5KPyVOC9xlRGbKOo1ipcU_9qBDxRfE9WnsZ8KzMs_5s70LZebh4LjBeBz1RO4URUXZIfLTma3ZrHJGGUNHkCoVAGoXXR2XOCLJO6jIbiGKM0NJWekeBvSEOX8C7Arit2MjlQgzxBMJNvUVfLte1qk4D3mWdr1IgwNBcooJHZ1dvHY5I_hibiK-D17Kyt68OP7-pS9HuoDLDUsWTnSeUopILJjXENxsm5EF0qZ9yasmFLTKHhtXqeJXmFDr-QyjpKq_c1VawQvPhOY9bclUaRWlKwNdmSxDXuogVslfrRHd1oEsvK9II7x894jQrw1gjQagbYA_AIUZcrcrXiABQb_pCunFbXIXJh2ysjanERx90JVDSSfQs-hzT3T4wv85LYu90SkJ3a1EBfEd0bIsrHW-NqluIjvpvSSdaQcHVqa7MuOFIUlOJ8usc78xFyQW41Txf4AkRY2G0TV2mwZDH4LqG-CbIIn9P1PSL9WRByvyibFfTaVgqbUvanpMMrWZ2JS64jtWilYnUVxeGAS1RAXK0dptGjbO4akXOuyWdAEnBg7Gg193DkCNDLlnq2S4XKLazM8QEg4z2Vt-tI5M0bI2LARvTML44iN_iI9BSqk6jHopByvcwHi8HZaywFGSbWSldQeiEt39ndKSQ0luFlC5QVQiXjH52GIT1Su_XVPtigny8DhyLE648uURNnam2pO6C1CuYg5mQ_UDnqJ6cK3TEFcwcUQdwnGjwdf9xfxrac0RtavdqADpoNg8ggW5e-ctR9q3zUEoASkvZBLucR2ddAY-uRFr1ICvAIPcamqSAcuMnUp-jS250Ds0yOPwV7NHtmzfnCoL2bG8NHezpfVQsG1Ff81G49rbA3M2NvrT2IsXHK_RojsRT-6fHXqK3nR9z7GVY8ghiFKZiDSwNRxjQyG_8s46LZIRZesx-qFFFkezjizFP4NZmukNzXiiWk7xid5dmKTwpL_Wb784OSiDwiADn9Jh00JPGDC7NTq5_QzCI67JYZMkrMKDEXlMJ40yWZJm7UcoFcKkqvXaFlnjFAiYhfYPrOyD52hZZFK-m4PAS2EiA0Dypsfz9YhsDYDhjuTVt7Y_5sBxKyMEJtzmEo1GibrTrLdVaK3u3j8UbaAlHYJvQ3EBNxyvj7MQJDauQxY1Vz7oVjh_V_qzRTVsC5lkrLihpD3151Tv9Uyf0xlFqE139l1cu_9bp9He3ZtdA93An1wkxkkcbHlqq-p27l1UoitBNShjAuOTaRVjRzJ1ST0GhUHkfcIybr6KjAyKbIWk-6OMrUhgBl4OE4VDKA7mirY3qor_3ZmmD_EKa9BQaykNkfxe-ozbc3VuKyaTwmxu2uOPpyF8N0rbCYaQ_fPoiWrl5ERTToamGs_jyU_tB5NxH2A6nEHjSmmTTQE3B081MhsjJlsr6QHyUhXsQgWRN-fnOD6jW0eXwFTPpW4W0Xano0d13mxp0Ujyb2z7x5ZFqVkjRjrSrFKv0pfB80kKUGB42GofSZTgFvpp2sBog9gGIL5hYUxCq6Eh16LnidA_fo7NO8fDYOuId3dxSTkmbCKQ86WhCQ3UZFtS18EJXPRWD6kKfYHnTHgGGDOKyYzO1OTh5PO_h59RtbBocH-_rmKLAJIwrz2k6bbkWhU2jmZCddM0c1ABElQe-1ssVdNaYeRya7ulj1FfabdE_0fATklus0f_-mt6OkaW8cLYkFY-DTDLlvlCgOrxP_SnVzkE9w32v_7_F0gOgvf9vlLmtSL6oLM8wpwCcPlkD3vfSAdbWchQLBQ7CKF7jprN5cBWR84QD2ugi54hHNHsMZwgvvrcCaYK8yFteVgmLKJGeRNLJT29fVf7zwasOBbyoTCpQ7I8a74u1Oji-rlVI6d-3672PVz2yhZf3LwrtVpoxGSAnCSicwlIm0B1nchUYny_bIFq41NQMhPl_LYAkZaOx8d_kkYyimFkiu1kvJA2eDxJehYIdWKvaB1ZMvKP6GyJXTQVm8UPsLOkc58QmP1N63YfRsLBhYKE_cJJNOc3A-ORHPnY_zz1Pt-1hzKpNR-a0XY60Yve5d7B3n6ueWRddDAi2VogX2C9WjN7Mm9wR9ri2pCo43K_SL-nAyD5HNsDGARRzfJ-H8pij035x0HxFUbR4yPE6CC9_FQZfXGA6D3gHVQ4bTZulRWK8u1YmzIAU87wtVz-6PizUC5TUWUb3C-wABapYiRwhvQEwKtxvu1lRL4ariyltYDhLLQHM3BndOtDwkrTNbpuvI9FL0hnkLho-L2UGum1yrcX0EDCC01NF2SpObv5cxRtw9zESfu_NvIcjQl7alnNV57CByqFj49Stc4QJ1tlOAo6UuF4r-53P1U3pPCzmvuWOzWY8bI25vUubu6C4ZI5Suo1LzSua9eW-Pxm8xa9kqjdNviTG-ZJhKydN8k8IiFABtl2hl81DxckjEDrdcXwUt5AdHLkWwz3RuONJg2OSRZby2a_DCzVXw2_4j6YpJczC9egqDZkXw6ImpbZueXu3UY9zSJyEddeXA9bYJcG45FvZmTd9F9DDmGsMzJLmkJgjPVHlkmarEz0GbNSLiSGUHl3PceLiywAWiGC7PmpTgKi9XS4q6ePcKXL3QFvaRaiyUjle2mjI9E6VucuumFdekNkEH37X8F3lRNaTnuAMFrqd-Dz6dIjf3hFRi7QWyYNCTawHE9nb31L82d1llZud0-L_LH1dSEpk39ii5R9H51Lrn-vghib4hH9BLyN5g2ov2PrUdvZdVVrZsijViumEyXt78dI4j7n1pZT_H0qPLbXY-phCY0oKkcXHFk_PiUlew9xZg50P4dJm6u3HLQi7C4xRUGvIwNhP8Pfx7enoqp3YY1i2QRXNtoTfxzqvCL9zpWtJYfS_U2oLW08YZrK81ci1Ofo5ekOzA719Pm6Ls5NSoqk_5VOWtJ711Hqkf91U1AwGJQ-6tLtgVT9N98d2WUerR3SRGyi4RqOgk0EGcyqy4w9mgdVElXzIG3q_hQ4IzsXHJWVUvXF79HyZl8A4w2AxQNPU41RDHVeJhPgbz0bX6BzXHgGL27ANly94AkrteSgAb-eWpdcLxQ1IzJZyb7Xlts45sWMj-zt-tPofpmme5hDHr_z1BzucGjEteWPquPGOKNf1cS2AwDM9y43r_YC6Tf_R2q499qo_aEBVdEiRDFGVsd1gxyf7VyT5xd4jNStQ2DmoqZV_2M6KCA6ylgxCsYhRjWd-scZLTttrS7NmXTOJe3lgTX7jV7xhrJO3-icZQluDspCUiiA1Vq-Vgo6UncuaGOmVWaeZy1k-v7kKlLhpuuzTMNfxz3ug9GqokL2GDTlFEF7HNxKuvF3C2QT8a2UVFJQULjRtX4tb2DgQEWZXXdOFV3Jwn6dLao_Gh1pBr_bd6AC5uXKWpofpe_mzwlv7RvTmiio_TIwz_cvJ67M_vv-JWx_VW16M056VwB6IQYaN5ABuJfPaUosrXcPbTrJN5KWWl1ebHs8kSd49o2g4BOriIsbau-lSBiGs6RlC0dXw9RBN2L5d8skhalI_SV1dAFn8TlsdxTOlzfB1hWq8PzkUt51v77_v7hkRubjkOo60JGz39YNmxUA8o3jVUHbqleHSUYOwi3fD96HlMNcda9KHxg8AKX921PqKK2gsiSmMK-vVBQ-J7ozJHd-JMZJ7wMqLSA01vzRhN03FuxPTJ28JPSPP4z1YkxZqf-2HrBm5ijEMORL9U374eAIVs9utBqv-Zjg8DMcihnVuZbqFFsccXtBYipkd-2--Gp3nBjToKigTG6m_oHR6D7kqSpXQbueYFY_rgUqweTeuHJQnJYY1w5wKR2Wum-vFVTQCGrl_O-sT-l4lY6FtGNc8gHOl2mUumGUEZlg881AjY3t-9WCEvrgpWnzuizgV_VLqMDdqrnqz3ELyC5muhr4uG3eOOCOUVDqnnIMLtKVx_Z3WN0vaeCRjkPKXH_kg7bI0u6zOMlFF_g0zYQMdu9Fz9fuTY7eNhmOLdk1qX_JDWW4pWrRMQW3zbi0KPtB7k8dd9zkt3C0qnV9u4d3Q3hFdRRtijD62YZccUluCxi_AoJQd6AZBFFkfCEPaKNPaIJIVQFo1VXECBpVVgQ0rUbovKcdQhVPaoEyFQ6wbeCoPD4Sbn795R0bNEm81lTaCzdA7AUDVYHvptrkaflyy-u16kCcEgVfV9CfTFuKle-zoaMLP5Go_Ft4qXPmew0Kl4mEQPrd3rHTwJ3hsEloMD-3qlrekbIXEzI3qC3tAg658aVNCNLCrH_dKhiY4C8giur9_CAKVul-rzQ8UqbNmB4kekf2iE_RS4dGCXgsgH5ooG4WOuMtApY1PsLoYOHgMRvAXDR1Du_7IWQ9v5uYeqmZ6EPY6RuLloJPbstCzn49bcXLbqWAYmhqMFggNeuBqinIiK_fZg0uVvEM1sPeELrqWc2r9tkxFyRHgJW3c-MjtIgSftI1mGCjCserzVFrDyQgGCN3FqxFqEwEQS25ytblt0y48pOU3mOkAPevjVURofW09AvXwo8HKQyHvgt8T8P-nrjt3BkTXyVD0vjJ5dkbxfNO7INnLjopm4kRxhq-KVmOyx0gTZCfBrIIm3akbaL01JdXDJDvqi4K_HhBHUoSouGXe9rYllA6O36elnQvjqEeXlIrO_f7tgEGiYmJzQKbJ5G7e2aZAfABeGIZL-Xa39eAPEQigINQ24ZMInAX1usau1TQjlQub9khDRGfLMWw7x25swyNzL68lIZawlPFV7KutRH6dL2ThmiYqLt3Op-X7ErKfDR5_z0fVFtdiLEjfevbZiZB9nODftiSoHEZW0wvh6iWsGfZ2CC0qqgfSJjaTMsX4srf-to35DoCi5p8-EyBzTHkRDmcscUlqn9LBHJHnMn1zmqQOPk0HaeURs5D6xixP8CFxUfDuLj-3Mx2xK5oheZmHJGxrSZvC3BT648zbVVSu-JwZ31XHVv41F_6uDm3row2bouN4U4tQLG_2JWVisQiBOHZpy6IVfrrQdhDVoB5Hz6hhngjm9oGhBkDxaW9fytMH15paXq-fVjO0p4nJDqJ76fcBVeZgt_wT5yb4j1k_5_38llzAk1IoXAwfgXhFCkHFs7sZ1ARSqpjzx6KqPx9rdfhYhrJNqfctn0bDVjdGZ0DR_TGCeEyQPgCyxfncS4GC-GjLh3q2sAuUYaIydX2ZtbVQVuIoRpmRZPTOBs_aUkfjPRcGsVhPQ6Gz8Z7CfRIABnhO2QP7cXen6KZ5whvcNNqb86pzSelf-xnpCamKaaC6JBTmAXIwPy0_E6TjMn9PmTnH-d5xUcKqSo2v63Uf2B8PK7Uf2ueofJlg_xpuYGEHg1fHn-LsCos_oXJlnnZKSrlPizCH4jkbi9RJ9KzXRgyFDRBjV3lZgwex2hWwSRDAKHQ9AOL5Lo2ygWPNAYWaCCdsxrliylLhdhJraqwA0wjXKAGhdeSKkM5DFZ-q5UN_HpWdC_PYBsTAO40XsMbdRKFEiEoN1nkGnadGLON2kQvBuLCFwaACXKSmUOa8u9YwMgYuqJuwXc6jBGh9DAUexBAHFnSH9_aB40HzVBSJPlp1EKkxFN8axfc1-KNzB7GU5IcJQYWxHXtuuUtKQA7fJrJDXJDp9e_zpolol3Uhfg8DzDJRCSE5uKaZITmTiVWr1XW-RbVJmT8JM4ZN8ZIL0tDm0kNb-09kvoqVobMhIUPf1QbYZW7dVjlM4SjL-jaBwSyGtO1qdQeNgKPRScfXHH9p-EFPH_O3v52HzFVf3RU0Gx6dG2tff3IF8cdpaFouHTf3tnXuCjhy0tW0GQ9eKfGmHD9RmpZ5cfSzDNvb3Z3JYv8RIKStnVI104pAXpwG91oPrpFmAQichn1N-4GmS8H9I5n202irF501wRwdU5elhzb-p_XBkD2OO58bWtlogj1u25bYTK82_mw2ASTM72Qo7Uqa5aUFVwTQ5-347kBLVZsAWCnVzo5jZGsIM2oVix_pDzdPg4fVgY13Ejbki69KUasKppazYSAl52WQyRW4-H2Z9LHclPrXY_38D2s_KyN4No4rG1WcFazaX1gA-tcIVQIvlP7u_10X1T_I2_zxciCB5ERadMWzEO1C72jYf9Qocv_PgEtQnmDycaQvJywxwTYDYLFtWB7lJwrI_l4xbTeazeJ7Kk_rE8e6uZqmyN3rdmoUhIvrzagaHL1E8DId0Rf62YqjGaK8aohe4U1uc2yBM8NgszqlPt7wS4dowf5OIaBMC_2YnTQaSJdkPzo5_jHC-5yNJu7kAdV9ZgMW-DgDkfJ5zjoUX1YbYiCV9LffP8eK5-JX2XxC1DYDWNoz39rnup_4oN4gJjxGWhv4gosb4TbSRCu7p8KYGhGSN2Xaa62euF64-_6id_DCOZrr3re4SeYax0ZEbLlxD3oHywLSDtgsFnYyr7q7bfN-s4bcJt80IMym5ciqifajcHJw16SRSxpgH5IFgESCcvVSyeREZrzDJGMDg4LbNZLnOG3AlfktLvRnS_pjknEzaXvcKkpk9EuM6Kr_1OQaXGKP9EvZc4VpMQIxkLYGcEiWm1D6P-vciMMs3vGOs3eWtbVB80UEL8pQlZhlHRek-ZoWHzE4_zOD4kfQJzhwKKQVj5ypQIZIWBLayej7Gq_CwXHXLPsqEY8B_d5AbWkmzvAmSdO9Sm29qPrIbKovSDQ8G26f8tUywBAgdDgpsGPwvEHQPVtArchPIy9KOucX1g8QN6BtP_eErDoBC_n3_h4F5X8pVAq9iXm0NKh6RVBOBpqYku12r5oUrqXl1a3ZZFXY92V2sO2lqyORlvaN5PTnoBnLZOwhxv2M_CvGLxWnzrwL7-2g_-j2BCkY-byrhZaxk8v5cCg0yATtK6QNBWAFPQeFeP2qDnj63XWgVPG-OU96DwOuZD92_MbvlqXc5kMFdAbujtiyAVizzBgJs-TRMI3I5EZdrV3I_ulCiNrI1e_eIeSdmzk_kI-AdiXJ8hjdouXd4MH179zq0UYuELuDhIR8Jcu0fz5ye5ZMxUmQ-6tjEVp51KOGllBlp9gYdAPo02vgEYJiTtC5mhOj0xE9WKbRtAH9H_-oMzFao_3IU3Vzm4b6TPTjwZhjQiZ37qb9aEHpjJOpW-ooO9Xe43JNc_2XbqkIKD4z4Iopezx50i6QbeTrSg6LMzg-zuDdxRCQpigSydb70xpOh8kid3KW3-RotN4MjEizen-YSuYrneYmtp8WJv-U_3Dh843LdD_wXDwYD2qblQxzDmRuK5jEyC3GZTOYqsSiXzli45e7_Rbu45oFuCsuCmRhbKgIpAYDli67--q_vCO0hkVoaCbRG6l3AqznRfEyqz6MPrmTXy2DBWGlx46psHJ-TgS99XiPF28_Tyf9Hs7RhitBYFIGUdK5d3MuZSGEO87sw45LNCW9H5cRtYUQdKp0i8fuGg89GaGh98Des1nI1759m-J_MRAKP8n14BBpHE8GAB6fg1eUt5IgyC-a87sM_sMCziOtmI9r80l2kgU8pIJU5HRAtfk7rhDlWG_94hUkDGtmYsU60nnJfLRNhWiSn--sGdp4EFRlOcoilE7U3dlpTygR3cC91r-NtTgl2VJvaH3-lXuzGr0sgxgeyhSaEfBpEGmgakNS5xvj5ZHFweRxDXv_fC6QTMTY8G2EeonxsrSObw2f-6Tnwl-4nRE6H_h2KqDJS7C02uJxNWYSIXyKXKgCtzou7sNbhkmOI2TVnFyfp17drpq1MBxaFHGQIJ9lgh2qK6hVAvrbhp1YXyCpULAWqPi--g1WNrWPm9qbpnwj794ERTMrpktKhFuYt0t-lovcVP6sV-WFDleeF00-KJwuMnmK_81Bw3oySMJDq2UCWM6FDai7N75HlQhEKGA_hXVo34oZA8lF1uACukIFiSkGRg8g3TZjWZEWq25gvYjQVLQgMmXI0haMH8Tcf0NdcPfJNZRTOEERYmrAiCHJnC43ojG_AZ35D_yOE4IY1-9EyW22H_30WTWbok5zRKODW7oXHMIOeCTwJ6sh_JdV_L-r_a9BbUlqwCZljdsXvq_JkVv3zfRdG7b1acK3ESVWqiJSfwKyBUOwALzdJU7-F92GtLU_mBOvaGYLIFr7rTtde9tuDKI5NXdWJd1n_rmZ5MtSuAliQFKKHNPzExwoONm5rZM8P_CKyxejFOKB_X6ijeNctuojv4vrq3lQ61cPwBlke4eLFrC3LjlEdYjCjyx_3Ih9BrZre-aKOkxI4MseMxlJZbycfl6vRMepkaqkq3CEH-2uec-l-Rxckl3YPWi7HjJDflJkJWNWv1_dOKekAFtJJGoJxW6rjfrPHR9IYswtqQJkrZ75kRecvEq5DBx1UfnKsl_kpGQLR7sKx7GPK__U6WUiSo_uB8UWxuWdKwatdl1G5JZ6998WGpuUppy5mv_Xdp9ph2eJqPpmGp6yLgJ8BzBLzj06OP4WO3hs4c7HhioLcsOm7sUJmkxDUUtux_gjLGWZSCxLgrtmW_WjTtjs-HPUZcFIPAtpE-IWVRE224_KsFTxquinH-wHSycAEZj5V-hPggTjNM-yA1q72fq0FMHeBVy8qZgEN5MUoHUzn31iZxB2jX-xKa8m0n4rSw8IUijGEPUZslL26JzSGSCHEzt9w-zaPzX1KQ4xeS00pICOwbQgekTfeYerSWtN1B3f23HgPHLDtG-c3vkMDLLUIcYSGU-zdkHtZpXCarZSfd88h3zj8J-acTm-_qqkETKPM8NuVEdoyczyg_cKH22t0vYbDSztsEzqgCle6JjtbszwWutmQT2MhC1VghYlCtoZ7kqNuIboO6AYD1nzGnLjrLp5tLqcDAt2iEbT2ezwAub_-FZn2gPOVflGLvmw34ULCm7YehgdwJS_2BsxTdQMoIHlstdLsuk8lXfcWXUx2mHNOiLu2lCICjyeMooW445313TR1Ju9xJAC8uTliJH6N-u9YlwOrsoy7wDITl7cMIpepnJbzH7DGiWEwrABRXP9Lj5epRw_EiSXUGOTTIj_vhSXebJwVTZ7xTIrvGEbTTZ56y9dzeuvKsg5hV22e5cr_uoW7cE786AQ8BHg2BJToxPe64juVK9LGrpcRjnFX-Hwsxsr9p73hmelwbM4i8fi3rq4B-3xMSP-H3oABPjEGPI9j2iOOHVcc78Ir5HQ5AX33Xy_KpPGZtGX_1yZlODM0LdwkmBUVBc0Ugs30JnC_xEU-swLMBy5ySxlw4DGOdPOxtF4x7n7hS_OnlyQZYJvrxltfBkMA-2fVBDjgc0sxwW0Kc2Q8z9d_4FBeNsZSc1vNWoC2cXJ2eThDkgZE-V5HmM-JnwiAGbNRuuUC-2_BblF_SkNylcNDAAbFdWlU75rr-4ISTpU7yI57yY8og7FI7bi_YzTzbGcLxz6zKbiGmXxZsrMsBA0uYPXTfk79Kkd8r0uJYZXu1mr7VxS9RMoHT-zcdXWp02CBr3LqntjAn841pPUtfbZBqHHVIdrhJiw8JHrg_V0tC3rr_-0X9oOu4h3kiu8gSjUXZyg3mtlT-mhGXgGalZsGxEgI0HhaGTD_IT_fgWur0Z2b7K45LEQCeCofEeVOspTPVkfwiczIlWmT-gwfIzxILBhmIqRQNwlVE6AnKvjUqZtwfRZ9dIuvllyqJlzfHM5nCQcrTRNUSnTM1YDvaLiSw7nz18cYz5gAyqgsXjzntbG72QoMCJ1yuvAySleaSSOUt5zHE9kg_Adv0hl0u-qNQ_Qjw6fhbUSW4hDyUwyMKV6TMfT65pWDuWFJP22gTSFW7EgD8mw0sVUslzLbhxQE5paF2Z_8e1KRZPOUOcSs66QoCj47xy5obZL_26M4vex_7E7-mIRU-pF47UYir9wTRWETbok1Rlcz5KQmi1qFpZ1Hde3BiEu4hwR-8cqiJ2h4jMMBh53Vuyb1U_3_nVCpmTlDg7ulQJaQ1ErUIT1IldzMbw80sHD0r1D5R6g0_lC_lQq6qKztys8Y1uVx0FkQzkyyp8HrNIrMvh2ZznopcjgKZmXnSLowIJv6xBao9T6Qh7xWxcSfcM4sDmlL6eok4Gw2xwYXNP1VavfvjabGk3F3cWIFWdvFtTLJZpqgl1dqzZF4WBfa5QxqYRd7qG1WWkWAThg_od89AUU9n9bpBxHkCU5QsMDBsUvajac4jmygQMd4TE7bqdGIJzz7uhB7x_psMDQTXKM0xDIOJoGlgY_PGZGmUfg1YYs3_RJDZtEevzY_YlBn1jYL1KDBpQsfi7gOIk0Cdg8eU-ruUfO9yvLF79tQ2MF6AzGq9-66T8tvFlHnx7qectbcJ1Js0k73457Cn78PoR9Sq07RiP4NTuyBbx9YWjy-hkX5reu_lj2IUcp0EUMHJncCauGcdJrqJwUYVKl6qPRLTIdJdqK5vC3_xk0N3Tr8K_3FZg3Hdyq_nNsYAiPzep2rRbKfct5PSh6IUEOgwyhs_k5wLbDiFxaDZX9aXqckmrwRvwBg_0e2WM1OJAddkp4qPpugIEF5xU75nO4shTGp_sQ7a_VVvX8tr_vx5CtLAJWP1OM2ozJJW_2a6c5auyjYLTghoEMhZC7Ggyl1yXYKJgeqCVTQjVkNbHZVJN9JVoDgubvOeFS9HPbXrJwVOsJz3x7TwRlBl8M2EVc_tWZ7xPd_fU4vOW-aA3F7FmFEa7KGvOM3ahm53mAETMU0QlohTeRDGUp4pBwsUjUvzcvEkmpdxzCexLh54ovhpM7gYhqFlXHDa_5YFK0DOesg8lI7P0nyS93nzX_Yq96oLn-pLXQNPkdg5vYqnaiDVfZsYyg_Zyc-PrSzYwhS2GDgeIfUSWAJmPXOqq_JTdHM-1OGsc5JlucYAB-zEudinPu0YrPCtBwCUA5-eemnRVP_eXwj2sXpv3LHsVVzhVK0DZAz7HSmBzm1u2RiDvKybny6YkHvCY8IxPiKrNq964WKn3wqmAw_41lG--LhIBV6Cn2mlj6vC5ckTBVst2sM6SyteKYP29s8yIOcjH7yV9HGlpigThcaLu0bmE2086L6DAJrjx8pvZrjX24AlerTLanJR3TzSYBqkvUZSimvssbvxv3SLDdK2FVAEPF9eRIpEkehLhuQnK7VrjbMixUfm_zHdT36-yMNL5YcheLXzHjrnUGjteGrDLVgRpPZn7UNIdhnnSxBclMbh8OulOwDCgdzZy3i7MsVl34PqWlksYnonRLCYaxST2ThiPulrGO7GQlNbI2nX1e0MhU1o4pEhWHrNiHmtJu3iTPEF7qhoHI351IceoDh_rPxG5FdvtT6GAsANU54xuGByHxzjq9IsfHx5n11mIslHTpq-uLA425Dxh2zPTAVeTTCVqGH1y_4sozDncGMAaf3sHkzjLoWXjqaS9RTOJWLPgoACJebIyS9ZU9Tdt74eQc_n9ZQoablW-aeozktnk6NV2mj8p50bCwGd9lrFCMMFxTx42YJLLrVQLLMlWEl7bZKA_u71uyXJ6Ke92PeiELTPwIIjzPwcwr554nfqr7VoXwAh01EdndGLBX8oUeLSL6Sb2JS3oTKSyNjudhKXzD30qVgouoNiMO2CjP7MCYqpIkOzn4HDeijISANp8miq8KsoEh7CKD8VcX8_0NjZFjMTR8QozXW9lDxpDyTdPpfh6KrHEIwZg8kFFoYRouyDl6pYsZemx5HqghN1qh1LIUnqkkYpd7P4b7deMpOn0GSo_SN3Vtqa3jmmIl889kBgxy2ramrml53ZjHNUq3CZEX_o_RjSuinZNVOxvU6Os2loG6AfzeQv3YgegczKQO0yjDvQTulrvyJJ1B8p3V8nyzFaE93CYMbqSpiq90tAqzZz0o_yJrp_ipAUMWCpxTdMDEramTK-Cg0iY_YnMzhpejKbpe1lfoKl5OAC4GliGrwfxna1rYHybWoMCXubQYuu8yWIeU6hwS2ASbBKXrgRSim4ekDj21XhDiUKhUTtlBnWjTGRNQ3GhfcRlEEfQ3RFFib3VlnS5wJP6e_T0x40GJ1I4lHTfpIujKQ47mEKkz9zb4WpQcETPZEhq39IKXJAf1Rp7iROS4u8I6Lp2E638ngKTTNvRhBcnfs0DTgdK4pKKumOowM26wHYfMpzLkbfNtByhFYOd_9UtartX8AduJLPT6gdoeNUE7wTK_K7t63AmWBiYpeKRnjl3ETMF_KAgdAqJuiju_HuUUU1bkh_zYs95TyhY3QdjNQh2AvVg9zCuCSAOmZNy3TK7GotAw8DnTRi8aXULAcnVf-6VlEyPnZRbOznUsmNnAvE7T8bMDVsXPpToV2P4n87hb9_OGOof2m8oqDvw_pjlp6LMjxkt5kKuWxYUWjKb3Pqa7xOziAARp0CPM3QnnFwcYMW1Wm40fKA9458kBcNJeVLV_7Rl16LrnbYyMFhfH2XV_l5vExHDLpRCRk6QEOexpAWiAOEpmDqCPGmyPlRe28xjC11J0lJq_jkxzlOX9kNIZ-qNKeYq90EJxCGsj1e1pYYtvlomxKS6GSIgUu_A7QaGXy3tdFQpHc3rrHakcg_fVaDFZ7ts9AS9c7pjexSHBT5lCB0EjFz9pNr-8IUP8PUTKeptw9KcbPDoVxTkNv5xvyq1C3h7Kf2EXYxNZL6-n1yTg3vpjCFdYmdTpUxwb5K8NGMP-WAYKTQz02R9X6k55BURYhOMSe2QQ0NXnzzHxTzU_sU1Kf0aP4SNuAv9shabSCgUXMUkZ4rTL9RAAvpaSzogsDpsYw8NH1_OTqCFAS9xcH7kkbs_fgS-kCXSISVoOkArWnCYB6hqqIh4ELf2_9BDcVkSwK6a_6s1Usu3VGsGagS-yqFSP6ey2LnFOt2SWhjKZxdOf8C50VaM0Ivc3Nd44vMzUPKY8eWOwFJmBqJ5iAqP31LlvN8h_4_6WpBgenqLEG2rE8dbEjZhLEqh1SOcy5JBxDi0N19s7CqRpuLFLxnTz7KIwUulB84UPt1a9FV8TEaYEz-e8JBgu5suKi02h6QxvYpv3TkwFQ8EE_41bkqpc6A2EzXcpCkSD63w9OK6OLqqX35VwAq7r8yE2UEqkQc0p6MOO6QMntlT6T-W67sPwWcPxN9GASnhsEKpcOApj6zkrcWMHzm_MS0ImpLVc5lPKe8BCj5zVfHoeGFhAzpEm0v_8v7qyIYftOosaLQtqfreMgM49CaOeA6VxZMOSv2Bf1Q8_1ylSOi4lrujHWQa6RO5VPv29r9dHLQ5gsIuw9Vko3r71YZVgFajW-U5wzuWfzkdbSQPy9MFOmk_CrfBMmXxZPqrSzi0qeCzdugJinnYd4K8M5owPYMrBAIvb6ZM9K4NshygsOOKUY5qsl9RKaKJEcstwOJUZWB1Ck3ZohJyZm8R9aTEoDH7fRSHCx18EXkyZB68nSCKXKUzN9--2Vk24AFqMfarQFkzMRTzW5pbpbQkpuCxuFFqhBUAAoYpbVEKU7wv-_MBWdnhbJkDm1kyaJ0ZJGJ4ziBegqDN3WoUqni0zkVnCz1OZFGfYM-v5CA0PsoQqx-5DAwhPTsaKEgfFwuckdu6y03T3XFjoAbMiP6jRJN8dBLTO17sZtQqyBdaJQCSAu_CtHsdKu_L2Fe1GmT30DKWkYGdtfQdfsHjd83OQb-0BIBFzzOeFODrMEoUKAAK4ZbJDwX4FrFos-O8DpN6Jnqiqh4VW6njAddWWQ3b81fMluncxJSwA7w8ade-sCr94sybSQcq-AHERWeFpFE4-icslZVThQfHaVLnmrnLYgYREdULEutXy5nyvUpHKlQ9C9W9KdeMlrSnSm3515XIFUVLLe4fp4zvXuLys9EFcA6k60Xe__B_ysz6Y9a95b21Vr5klPJH6brlFOK2GzrIuiAWRPjKnC-g0-A89e1otNStjnrJba8xJvZ3d0qicwVUuD3MeqLnpvpLQwEJxYJ28gqfVuXTGZ6fqJ50lgxIGY7Rs02KizDP1O3k27MxHZpD9XtrI3RJ263wSqD9zObG1r19t50WkaK5Xp3SqbwW40U6W6WlUhJuzdGFuYoC3rmlXqWVCee53BF6O-qtRRkWtz_0uUp_uHGh4d2OrhawqBvff9FGWn6jXNytSKH8CTtQNdbZY_uYUTruCLdleDvLexYX9UX4V__-7iRr1ILAIU7fPaO3_aUSso36BtgwlETB7vYFlgimnKg6aptky-mj4J6QYR6MYRLQf8Po1Z3DF0fa_CJpQYH1J_5SwT6U4CXEKDarmbqJUMIsuzVAmyfx6uoj5QGbsfxesmxM0f_0rcyGPvXnI-mCBVUDFuD2NeZz_Fan3NHGXCoXCrhJHtN1QePkppUSkyn06khGAcU-y9wVB-RyI0hoqfC2TNU_UW-K7PWryowh4qJqlp1nKbif79Fys8ZiUTmpAa7xGBYI23pXObZ5_uPS-RyN7HXYy-x-mUEcOchF4xP57vnVvzo52UvmnGb3P711uiwVpGGdZpSIe4L5Xnq5L4BAUmBCpcm-9_uVXYHkM0klcN32oQo766SUnH9J8h-ODGyxAgrkSAOZ_UZwUQrXF5x1KZc9we3CxAAQ_6gt-iKt1iCPXjJm_rQmwM9H0Fhk9GTJ_PYyBI9Vtw9bqCUDxa80D6wia-USh5gir7GHL_d9l5zEsKl1jxeVAM2rGEemIDTHp3PRWSW7_QnEq5_jDb1YAiewwDs7IiEDcaZ1gDZVssqSONtQg_rS7kyXe1MgEKN1OnBG__PmddpZEp9gPO_191B5rVnnY35mrDDj7-unhkQX_JcxHLZtk-QP2-Bc_g5Hpxh4AVtIU5Uq6twDUy9Rt5V1KvquR6l2s0f49yP4pzw9IvZXbmuEeC7OkafJ6xbqHNxfilOZxgPRXgQF9QdI2cT4okgzss7WrliU7l1J_JdjPqic8XxeQGRWxESiThfbPF5ezNMB_8-iWg3bTdUryJkdk3FSm-DTYlejCtdXEr1-N44ouZq3ARSHsnJKe1vBnL3PrghI1u_bGFnHYoJ5w73DTismiLZ_yo6Ma4vfKMn6RD26pdY7N3SgfY92X9eV_AMFaslv5_HRJS7cCgXwJSmQhu7jxQCCDCP3_fnedBkMwPnYcFnp0eFdgUn5soGDwIg96pIrDfEiYfkfHeXBdCShNAZmGDrGUjkCijesZ780rx430VJt3j_s7tyiWIvefLQZDQuot03QTPib8h5Q_WdWEeAfJ5q4lkuDWTW0rHcRjcIZq5R3tFNLbDO_tOU7phRJiiCB5d1z-BnjfKKpXohCxNnRWMyWh2FkpjPes6oe4ahvVGDXizCXcIA2K_EpJ9S_T9SpvqI5_379BY18i_9xd3gC5RU_folbvzfEoT7FEZRX98TF89nzzc7ohn0VGvrhekwMyc6S7iLvtmcSoh1ArvWRFfibPvF6erdF6UtOloZC3pshEYm9P1XD4Kamu3O0UZm1rcJaLyYTrCdqbEMBMCUMSm1Ig-tbbBkt6apfk9qZ6YOTuInMxdBGKYWJxkZOrXnYU48F1xGEnE5_Ace3upHJzY8A22Mv8uV704oZt2cZsRnIRokWmcQF-L_66KiNV9juCWqgegFV9ol_sKVCpGi73YXR4KDLmsVkQGvHERGPpQ1VXdmOxALPPq71kWCfnrqHdoKBYXFGuOenE1xPkxFniOp3oWvn1GyMzX1wBUe-BDch-tAUTcr3nk62ipyXTiBrAJbfP9fWPw5VVXK_DzH8T65toLecLeMC2HR1ifs06ULX0Cad7bjTBNnu4nuVvvDeoc8vuRn_cKIXVmBa_9tB-qP-Wf5L3cGgOMG5T7N_Ds9adCHNfyi2_XqZD-oUP1YCFEzCr4HO4L8eMQaMcsKZPGRc6XFnp8qr3Fv6FICpPK5Prts3ijEfcTb_QOhbUkHn-DqH-WMl-0Zegfu2ppY3aYAN0It0D9PW4SQ_XVNcwnehlxwVwx_Lhy1IXX4BkIjl2e7ejfXCxpalMcJxXGrnEa0s73Sa4c9vZNTiJiTdPKWCak90rcaOepDSJedOD4_iC2bdroTdBh2FPWPxL5VTMw3ZqgAJ_Qy_TmrmbrLEW6zdQST6r5nF_hIqSsfmNICFthu3kV7OG1ynLc328Ljbkcb6gwSlIj54_Pr5WJCq1W-HPnAdoviTFHPeDt2G1fAEOxDIfMTWdutQ0XDsK66uU3mcBSAfvXh8TPr7zhz1YfW6aqowSp8RjHMu_5Xg1twT2l1P1PfbqHSpjclR9JRibVhLD01dRo10rhRPfJqGSNWYxBWdo1VPtWJXzEM8uSxXt8OK9RgCs-R7A1Ru5JNYM0tKZj033lTUebIJZ9L0NqPqxDM5R08ZerJiCjNQ_OrGEch9yjlwIhIK8SBOHN0QkVm39yLy7nnI_jhdF7B3Oa36z6QXutfVlapdNNkBMqsyx-o7MAOcnduiNRRx5aLr5VVqBTuHZgk9EnvxepO1t33h9KIqBvM2UZaXVmjGhCVK8aasl7cEAYqBJvwqu4OfaoKrxB6ypqe4LqvDo8RkHquecnsjchh-AbGIys6Jzmkz8Iv0R3fZuXdje3hTE2PTJzGIdl-SL_Rds1tghhrsZ0f5-iCME-91P8DCJnVVX8adWX-64pBBtfQcCnVnHg0MK_0U0gkhn0bLpkDp9lTRKZ_asuhXVvbRJSVrBke9yaOaYR0XfZ3Japrh-rkLRj5rKsq_kw5lSn1ulK-JvimMkIZ2KECt8D0eYWhaE--y7pj6ei_ikxgvkjop5PWORzeWmIVusFxCoxp-YXuIY2-tUGX3fyUGRL2JdSavTWUe9wK2hDJeXxjj4KJcQyGiV5wsOM1J_yiJiVX9bcBimZ_LLpBiCX1GDoTRnJMEZNoeGkuYdhLwtXEANaVOIUoJESU7TgWxOk1l6tJABJ-HvyfHV2b1wxrLmwoOUL6Ctm-YiYSs1gsxnZh18tqdAWZy9CeW57KzlaWk5KUPFFDSItWZxvAEDZNwk5MpdKgr32MdsrJ9fx4NyqjDhnyliifkwCO_gg5tlBSPY4K84Nc0xp8MTZA5qs24DV8ircUkSQ6OZ_nqntscx37Ws7pOSN9frLboC1cyPIbJItquDIGME580MOxWZjRifc72ljY_USE17DZ-iAC5yDvhwwC_eRlagFqPdU0hFErzC9_Sckit83N3CsRJ5Cubp4psjLrBb_mpGoMP50-F9hQBcocKUiFdW9xnSQQmI4kLCkEDL4uk75icbZlbidu6SVCpKwr9VMuWMq6mwcVsR5CRnQAoe7ArqBCGZOK9S2Jd8gK7s3zJQ8mIvPxm3g9nKLnEE08G0ub0rB4Vqpjnfr1JFj_bCqScaDzdJzjIzhxtOWpthfteeDqxWApEhT9q8Sw7kncZLStyZbWbdTo3ahwWsYaYR4F91X0QdDK0HR5_63I9qq5UBuZLdlxYZdd2IIbP3Hi64eBN2c2Ci8FFlQx9BSggiEozGOHpYOozxcmZgKhTlVKNmQnz9-1AwXdhtBU3i3PA5JwhVqQSADBDVoZlwd96cbvccvasiIdYObVTPGhkVPJzXRwn1yEUBVJHVe5elfz_tVL124hj3v0ewjiq1f4jyoAa5n8bb8h-7phubWaTJD0SRHghtvE9XcgA9e5pte70w9zW61ENfc4ndDiR-W-ZCjYyW7MeAXN-Ptk1mSFoVn45X1aLb-wnl7ux7uLaMJVVxB4SzA7lJvJ8TKQ1TXJcv2Mk0TlDQxxfohdZxz3mOV4O0XxoFl1oXrOfZsK4phDAcRX0FUrAyq_gLLlsy4A3vS8fkgXRXActwfUCrcvPMcB6W6wWbXiZlTAbi_7NrYhOb1TBjbooz0ubr30O9hryugGyirgnUfQ2lpgOwlH9yLdAz8U4G1VLkRyg0oHRe7mvQY1Pd8OSKii8waOmPqyH9ozjGz11SoXyw73WuCBOlHvtr3bAgofkNKodrUuH8aT_g0ZqBg4pV4mEcWhJ7Xc6EFCioSIVcMHwloeCjytlGL0JHF9-wkn9nAwIENMJknpss6bYDPS55XQnqBhKIoH33dovyAQhihB626ex2a3hUH-1QZSvdtRyW0zxSezrM-gD_42gYu8ujk3a05zdsl-mOg_wOTs3BiwalkAPBdOIHUMwfBghUasjFEwLbp-hj1VAc9jmIto31pvBjjSJribPzT9UBxlBcs48fEqvfLp55XuKuMFkYgB6913zzvIcMiABUL0jfNORLyVGs_k7kSftJY2eCmtMzh190vvGork8to-jOvhNbJTsb6wwlgqeXzvrtZDz_lo2AC30y1BcL2jYkpm4UCHTwkAwM3AcJPCHnTyLksD2ovFkx2hfSLS3wHIVWStPDYZ9ve8Ren5Oio7d3wWqD3Kk4IbdCB_avE0PtwZl1yv7NWfIcNZ66ZHeWcnII_Y6VQ0lqC8Jnlg6WMM47vbuGpzO1abTSH4YA_X8GHMkXqMdt3rx2nlMMuHsdm1FKfvGXhOrYjmZGrUoFSvWIXlfk53i_bSFzlX1xr1dSpeULFrh0vDuQZ7HoC3q-Jv8ajtC5sE-h9Oy8yInkGJI6HuDnGgTdvfnGEbXEUJZ6euyNDWlwOpvt4CpMz_WmKJ-Fx9yGzElJCJbO0Br5_qS9G6NBZCOut5ltzmUv_WelTsKBdFM7wk1hhxX0iJVg4wINBfiOPqWKaW0cJSuIXGjkcHggJvhxPLo6dq4AZTxcHEGPytlGlxwY1VhITin9puzWdmGuMq4zOihWlNnBtwTyEkuyd2DeUFF35cxMVMllLyRHn7IDof7zdNAw7J37ZXZ1ZHk5K78iieP2hLMp-vk3ShIB6GGfjXs2WmfDEyqQ_iFMoRuiRaD40iGgFbz7dOW-IpfM0KJC0GNom6mNB3ooqRAu5p6_2MjZKPH4TFgkPTluC4IDfqpvmnKjA1rbWRFAU2EZsGNZ2-RRC9FABRb_QAzpQBD3iG3lCgHyB4JRLa2EAPiAHKI7BHycfkn82_S7a19Q55bsoX2Akt0HtC_JVm-l2D9Rnr_HZKJsiWaCzNYU7r46AcWTipmC1ACP9UkX5zXAyO5-g7O9OUPaAmN68XRp6_vT3j0-sP0YWyuHQMM5yDL4LRPjE5Xi1skLKSN_jq96ITZG1chJ2ucerr1KiM3Wix7vBw3sFvxA7hSW4m69vHii4iHB8rvr7ufB7mRzocbmQg3nBkGJQZIgET28jUsh035N2mnW5CLNRR1rkclHEKqWBaqxjZ2fy2LqCKR6ciO8lEIeZoM3IYNf2zKiM75HcK_xdy2iCAPynfLbCU_43zUkYUWl3lTItRiAbkxRu2ZJApxIVn77NTQ1bzNtNV6T-9DnWql_02lSUzNJHxf0MddxhUBtgFs--G4awqm0vOtHZt5oi24p6mFwtZAhIaJptCXerQE1PqOf12Ak01UBDi5nTrLBWA-FYb7zamdCCkETNWV1NQxnUjgyyKPSNeU0tRaIjiJT1Z0RgKQHL5_esmcO6OZdj33UGdp79T-b4oy7PDvypgHpbAMrx6eD0ZyoOjpgFQAA96zsy6Oxo2Ozh1E90GW6KdqIap3jFeW7zBtgQnM97O7WPWYASPZh-2u5KmFSQlzX1PZcc31IJfUsGaxU5VrVCI2hyAhOjuERFZ49JAL38-dGyfdrS9I5fXIlXYkp3RXPWG5LovRtokyqdWgFa1AQ7DSiaCaDDqm4u6M9rf54Ytg_cqBd9FO0EyIaK1tsYDKa1jWGEKR7eTN-ck1ngAYHG2xSC4sIy0p3-pdUCyCXfVjfZo1N7wX-hPSCvQAHK06FXIG4CIk_-ZFNTH-F6QBD7r73lXwhhEvh83Slc8WSIqtjRDUps9NCMNLa1gX7Rbj0MCTA7p0nyh8_dPoYTR-IzFNKGZec1Q38pBz9XXtzthUoVDSeljjmdSEDhLF8UFHWrALlVE_0qnYetrG-7B2MvMtCxhpV3BL4PZx5Mf8qQjunRlzs7vI5l6N0FACBiYaBWLb31Mt7jFDioLxzyFF524T3W4Wq_QCSEFGrqdQAlwKY0s9BYu2tvBQDtk-ewWghPVJW4Q76-GeWkJGXTJv2mlE8lZkviod2uQ6KjiFAnSoHrpx3bxb4BfF5rSw3heXLmUwp9wTm26hWuaJ6VBYgl-WSvvwY2Ol7NFI0kGC9XsGukYMYsarop_uKyqKCY6vyz7-gwIJtZPxlywLVIGfVa2jHo6sPWumGlnlUb8mlT0DFduChiTNHNWPK-rXi5PgCPeo98tMnzRwr7Pf1cH2icL8VBnhvIOzRS0Z1j7n4JLH6NzTKG7WzX3Gp-imgFNYJx2gDHCZwHiFH1XS4zae903QqHw2ZRJ2m8AR4uz0RJMdcOR_ABBSomykzCx23_Sl-pXqULLJZGh6fe2xmZWfcFdmFm_rZQWMYcPRjw7-ioC-Yc2byuZPFuiWnSv3TSJZsEoFEKlnHk8nQMmC_BuAXWExwEAOkimhcDMGk4i3uN0CYP4HULBxfTg6NAPhDoznJSyi6nNIZBfHlG9fP00Be2oLjhtWtbg8ZSaUClr56snIUDwClNn0ppKYuiSVCLdCO5tWdyZROlnzQTxQHet0rxKyLI6HHq1yrMJ_FjE_PVYGqoaRA2Qzf2StwTe-d6ZtpiT_x9X4V9dZeD48vhei1jkwB1AWRrlRkpvz7TFjpn4PuNuNETOxX0coTrLFv5FmbuDJEdzTvonD3JxVREpyR4Lxe5sZCvwGidBDbODcK8eaNsQNk5VVdteFu0Cyy4QA_NrTRLkrw_PNECsPCpruNvBCvjJ3cIbsm-k6pIT1OVvTSiwaq6hp7szVtkFB3czqcZuvuLIUNCGpsHnpZehHI3dXBk_dW0ME4Z9alxcsPSyRs7knwfEmnwVY6X6U24LASpEJgLLTWIx48lXAd-u_OSwbNs8wUr1aKvIzqVZssCuW0P4Kz3a6T2bMFodDjp42v8zS4xFjFvOzlCRiYx0SS-3yioW3_V5BYdcltbwnClf44u8MdhalL4rWTCdGSrU_YeYKO5_5hSsdsu1pNJkZSl9orGq9CTI0B_Gsm5cP94QK-78G26OVVjxVafHV1iKHAD3r44O1CVSG6N45k8qAUyW9IbFYrgOFveBw0yql0P_1OiNiA4FZ3oI-BPmVE_ub9ZQ5EoPvhcVPyAyzKd1dmsWPlZJ91y3LdFYwDC1Yi2dFiI8LY6g4YBmULbJPptFLNwD-Pi3XMLx32RAnSp5O1nNg53hLvPgQu4UYkaK89GqEf3nUB2mM0ln5adoE3UfYZhgBSxLg_yVG5hvrR4gcV-E_AvWmHaZP5DGLPjttFG7UnbbQIRf8SdDWHzDbJ95nr6HiNdE4Cx7-qin__XcMFGFRLri6MJ6Pp-w1xsaUZVzjjfKu43QpCwVCYBq2cxTBRGDJL4geVHZ_JSBd92xtDDKQj4Ohlgxyu-EuJ9a4XeWImzUufAEMGBb8MTNPfBDhPt4n8Ztys62O0Sm0mvCGZupfmF55MnUeGVgqq7tENq4yn7w4G3JKpX9sTLCXDu04sCoklI82RX6hZLM0iVpvEJ8FTebcmpQWbyOymmxkNqxxBFrBZz2mtJKjhJFq9LtYfUbF8tF6KrhUqCz-UhiqS2Ns4dZ79aWZteDZXTyA8HkPMieVsbcueROMbKsKH-VUpazr6XOJSIOQLp1lxOD33rKrnPzoV7FQ2layE7VsAXudPHNHPGfoz6GXbE--cSGB3_T0Jq07XZFiOpVFrL9MhjTHECYsKR5rQQEiwyb0Ec44oZHjOcnBQr0WFrlaM0UMz6HRZh_zC-HTSoyjmkPsMYlY9iDkgdO1Zz1vBbhkZMgjgC8eCpFwA6eHncK7_tzJGDFXKO0uTXVpC-pEbSkdMG-GriCHVwBjVCJx6akC9BoUGAUmBMGlon_nhRUq2_N92Ea1g0DoMAcgjL4ZVeQttM-1b6VT16DErm8yXldYPJlg8APfWda7NbnK-QO4o1Hw32TqeC78P6HdKb_R8kzmiB9SYvGu1uMftiTR_bwYzI8KD5Mqu_j-4BgQSwhVazQDMkSfQ0NdSEwGsUYkZUnLBvgjDOXJe1sXVGbIgmf8VDMVD3PiwOhSuOo6WumEEXwwKzyqabPEJAMqDp5NE-N0VDQ275F2HItWVcdw8eS6ESnyAoE8JeasxTwG8fB2XUgIPQlxpyTJC-7sWqWWgNPdk12tDSGOAdqxOtcnUnuDdcano5sWT9WD62yy4qjCFKnGeVo9NjIiI6NFYVg4epS-7N9liu1StL_0u9-AKlHqluISO3KbIt_UPDPvNHKY4vqYocFe0uCbH0fMrcDRRph9HpCjMlwpNXLLZGLh43YyS5tw24BbBb7579LGikY7e8-_45g7sH3do09RJHnX5AokTkNXn_DgfFvjyJCExsycdG5qMD5Sgw5F_PbBh4le_NmV3A11swTCC2nIMD0CexvDP4QMkg5KXlRN6Vd034Bo_ynU9zLFjlWr72XtnLnn5Pt1sRxmHeW-Yd8Lvu_ifng2HcGMlpbH-KVuCrV12uO1a4vLCgivG1hIRk6pAYPwqZwP1u05GvjfunuJm19N-D2RbtUQeB9kKQu6ABF1T968R5eCatIXOCpiMZwmPpuT_NudVh32vh-HSv-DJT3JgrEVqhAWW9u_FDkZ9hF1-1s7jffEDLSiElV_gmQkHd9IE1mbpkvdLdt9sE0lq0TcCZk8pNVgEm2givX7QnO9rIWOx8sr1K0acqO6oBDEFBxHR6oPvDLJvUFA6BPU0oS8RKOuziAgbr8uBeZXWbHvyYO0SHql6ZFTGWnzOz8oxk1yLpLtd9KOPhlgHATCUYKYJ06QkhFoZOsOq3SeVjNYzvAGXD3gvZ2py5YX97GDR5e-FXLgKPeWiVlxX7yesK_6G87iTZC8dJAjHO_A-TsI3fyuvIzGRJIZLCVmPoOgJ1RsfBUWICvlP6OOxwfSNlGtcgwfWx2r2seQwJHzIKlXU2bdcP9URpjD4zfKhDD_nBq-sJz88dxvSG0gwHpkRUVLQ4igG7SxT8nCUwI40fCoSbPqMFUYiCVtkaIrqefHX2C2xVCOVC57EOcpLZS1ifKRdFxe1EfCjbNnMfNczLss75sJsFRGr_b7FmQaFaZKfM0lmgOSC9N30nu1rkcitqeuNIy9btMlEE4ItD6wQ0GJ57CIUYRr9zClXeY-Tit0G58GnxogOCYz-ADIFkRPmaHpSoPEb0f_paXNVNUWWr1Q4dADrxTHoFw-L2H9wjXcZLV6X6CWqNCNUAeRgEY0uilfNC2G_nG5BR8Ahz6Pv8c5q6KD_mV_oc1nYMcHALZIl0erdhdMHnjTx7OItng5kg_W68Gy4gbLaY-u1DDq7uMeKiUbSK4rcA7uqSzIcdVvkP_rkT8-LRKn5XQ5QJnMJAfLCHcr1nkGTMv9fVU5NrWTgNiADu9LF4vuyJ_j4QSSMWKcCAL7yYkBv_wdkSYyzHUAPPrkGI9KGPTygnWVfPFvWL8Urvhg7JeWtfJPCxYnPXnidWc7hZBh0ZaTDt77YessnNDnvkNwsdKqveyp1SO-fQ-0rUgrwAwpG0JNqsoAJBv6n95r2vylfN2jl4nyOqMEabliF4wElnktdgD2jynnTltuDVNIvBu5SpWtUC9ZZWWX0e9mNmuSd8LaEWbJKXZpvwHvk0E6iwDsnQG6j-7HGkuDIyBX5mKMojvCVFXX_pwNZMAZ7WY0Hp6tsiQnW4mM6g_rrP41pYzhJciV5OpbKdTdWWF3RO9AvqY20lrbMul5leCwZl2bR67FQdf0RRB7YepaTIpky23Z4MHz6bAcRhYwYQBqy9X6WZ4mdwaH37XzSW-zaV6KIWJDsrZ9NGjvlrah1eGrZJmg3kmeQ0VaySaWZxVQppL0akWv2CCAKBFRHV5yXl9P2kTAtbDXjF2UjnBrldgqPT3nSXUkp-C65HF9P1yVSsaimFbFHBmQdCkmQmWtOn5dnj4KjyUnGvuqdRrx-qe0YMLK7tQzalIK5faC8cD4kSFm7b117zFu3pvowAk-VXrIk7UtX0V7KieLPS6WtoOhON1sqeIT_IsVkuiyeegTtwmd-TRP8atnYGpe7yml0uBq3we29iNsDHQe-eZ8ayrAqW0zysxDcSyVGyl3aSvFCSZ7fptxedYeFhDLGtxF32oBwfpjbdjCBxcFYsppIt8UfVYLUeG_bvgFoWMlFofMp9KsCrooVlH6Gcf-MHL1etdxJS3C8RyKId_Z4jXzIn_POzGy8gBE3ouLqvFqoqD0Z8GAns7ETfGkZFGPEZR2FEW_kTQyKh3aZHH1DHg5tk8g-859uEbiQnzxd04rqaGuDzjN4aYfVdWwiP1uKYp8Dy1osjKqkYf9ara4pu0NJrGlPj3mhoNgayq4mdCPETnYd_j5pcIYFlRHfVEhW6LcWyRiOqXz6vWfzB24gunmkEo811C_0iRNNdw5bk2yiG4khPckikBuYBSAbtrd8-6ZGIAmnGxijohpv_XSE7rUGZqWVbNawhehr--tZ3-KKYSaDvmNu1Rzn_M12xqyzth-5yGhRYi41yVLgE8wKv6LH-nDxmMgTl1TWRt4xCOWIkOY05dnDpUmGxFkjoXiWCXKO80wHYsHa0efr-NcHfh5eEvGXV5JPPIw2y6Y-ciCgscKyBWD3BSuFHSfG2twgYPXkPkrwaxjh-vRA26JtuOaoiQi6kGUFW8T4kQlMQ4j2VKJBFDmbVS8oVl6Ea8OgswOWZ2rgXvOrXKM_UzYePyVZZm8VjtwMGBZAEgqCYFmkG1Es1-OX2-xzX6REJSJ4khGO10vWySnovCnDgFcsJJob42DAwyiYw7SOkh46MGY7TuKH7uXZnG-IvXHvNApOKVDAwrE_td0SuJAxZe2-w59b76ueW9bE_yE8C2pl_8ZCOtLJruEWqqYhExyBzfDWHHcUNW6tvupxmcu1G3tynmmUiJHua3jAbYd61QGQZkNbrcun8CD_DoCE76NYMY0T0yMM_OBaAqiKyO5mMUyeKZ4SKpZk_9OOalBGNAlvg0RR4f6Q_kqrU-FtFP0IcOS6wVgekfv4D_AqAPWdSxkqcWV7EbrqvQa-hj_Qj9MmbwIe8_6qOjj6LvPuofJm8XFdr7vImiQ938X60NxJmboo5WKv9CcLOVqEEFxrOyY-XPxiok0VU5tDGkB5T2hOyRF2SXaVRQIXEGTP4J4IcQH_689z-l0Ym7wA-R0sWpQPz8rDerIiVotmB4_tBZ1c88pQm5AW9q4hosQ7cZPsjTX2VwiErQ3H7mJQTaC_gNOlgNMJUTtFx6WJb13PSyxR8whO2TUDYIlgJWkFyQH12FYeDuNnYMjmfQs7taCE4C9Miy-_whj9qF-z5Uo44yR83cMpNUjopjMoppa_BOhpDCHULWYWKRy4FYKds5xJ2yQmRWSADm7tace07LuhsNAq9zJ6YGGbgUiOMS-lHu_mX7f_1tCLhVL3ZiUv3oyP1-p8y5g7HUiNWhXhy3VVFbJ38hNhY4cpnMpO5CmGWpogya351j7HsOtRmo1yrI1eGwibFze18kZtwp9vHfAlFclIfHrEy4ZT3ul53LwC6dU2MFZXAbOGCIb9ib_1HsayJk9lvJtpwrtxTNLF1U3UOwWGyh7U_PlRu4K1uH3QSOF49aCxyrNR4yBOnwfTy-gkJT0ilAiIOC1wRJUzWcwHLgZC3TytbecL9x4a5MIdA5TLT7_kEoAsbgsOZB17TyxkoMvNAS1LedDLzJogqOjXgpuYbHultiIWhnzDG1pcB7ogwUhc2-YOGavRUJIGqPLHoEMpUgvvunQfapQAhUFd1N5R8DQAGuwxlNSM2XKstc_gnbVAY1fjzAf3YGDXVCnFx431YAXAlQsq06RKcAFdgckOzSsVwLmdYyD4MatLN2sC3bWws9qjWHgpRU5XWxm12PNK2k6fwfLoUxRPJDDs4uYhp5R0WaiapzHh2eifA0efZkypeRPE2t7w_wY_7gAT5TBq-i-i3Is-7vYFz0YPYxM7iMlLA1LXgPB0ITsN7ciNYpmkHB8TFyQvIuGWU2VuOrv68FJsTG4BgDgE8cjEUC7_hdIGY0V2a_ri_Cmyc5QJ7leAYO3BeASPwDq54Ajhv-r6-caWr7TVw3Tu-uSJdvNBQ5CPpbNG1gTfEp0x5GPfLulSiNNh6V0tqjqLwCKEf0cOXnHbrGgh5y93d-1MbuwY2rc3ckSFOQen5dclDAuAPvQ3FNFaPzwb-2Wp9dYt8WOYtPcFEUbGtZ1McVkxKs7P_twKJWzdDZMJZUiBkaSraUddzFI7dQMfNKQmbLsRPrZDqewKVkvTYJcN76TOM6FUhltu0csaWd8xvJVZ8UXL7azb-7AI_GtaJ1-TjVOR2IBvDQRn2dqGrIebv-w2sQjg_Mf4KfhUXtqTxvdPuHbPW9UHf60K2CV8TB3TacZ36P-zVZ5rDofjKadn_eS8gtq9Tc8h28Cbuvmd-mZDK-hFz7TqNkTZaNClP_LpFrsOnwtEaHOVbSpVbDlrRBOM0lLpYM3nbcTsHk5CmwjA_l8dTzRFG8eyMMkiArsVPoHCJ-GFMvVQZZGDQuBrrxW0oipz8KWneOzoe5B8o6vrQywl9JY5uGspwCejxZnAKkYbKXaTlIBN_mdS0dlcsVUG1DyJoC6gJf8G4Z-u4rq6F3JJxkG84OfBw9bJiYAnhFkUQNa4YLX_jSsv652RxEH00Ljz62oSvQpKG_DpVuX3qmFyP_vE6mhGwiM7O-cw63Bn_pTHXjkv24Nx-PyZZX87nhHIRZd5ba3rlhZi56ZTHAsrs25_a7WrK5WdCxYSmDBY_P2sPufNzNDQg4ZT0BDCbDqiTLXA8INDpH2STuBONNcL3-Pt3drLwrUlb9Lerpt5WkLwk9Xk6MEaMFtBeCuHK2D_GKBOeHIo6gab5uD6BVcazoFoFEdqs5N8AW0VWFfWAbPKzxqkwj-K4m2nInWnEIjX_b7LScodGCGxHBKnFbaFtjclD6wyZdvh3l30udHoDLmu8Ivf1tyFIH_1zzy01tK7PHjSmGxKIJCgTvnBPJyMjG34EZXXr9RnQ7q_hA_iPRbbbJ3xq-eTGgb4JNHvEA1QopeFehulzo2CRF6vvv3Rn4JA9Q8n39Ev0HgAZxri-AR0pZNxFJC3kCYLrnzShVLosfuSzM3Yg9uJIg-tnDG74NUHEYUESzky72zavBw78s0izL04hBtQFrXO8jdtzOln2AN7ve-CaYFz-3pz9EMMUTJzYy0bl40K-BrMU08h5DTj6gLa-OvQ2TCWJTwkERDB68bJ8a2ms4QgBumhk7Wk1mke4mrSIwro5pCPIbErBUfdkfU8kJ2rKEVTRkxvlhanFhR0LSGjBzNSrE8sXKi6zLoLR8KpNyNDHpZveTRgUOTWOsQKuE5_grrzPCcnyRqMXjzCmtCYfV-z3-ptD_WcqhoMhfk6cSfd1jfTDFj9VRtVEZTCYlqkmhRPkbCp_sx61l6VhgdBGxPbkF5NWjnu56m0F0MN10BQR7uLn2tM-v7d433XW9KKaSUMnB0MEGpOf7ucHV_XjU-uxeS26T3MMHGGdlgwV9PfyDVUU-aEaLCDf0GIpEjHMCsl9k_N_pnDq11paChuZjLk3TxgieYwFbsK3qCnDbTeZaSIXXdcVzjKIm5ZUE0M8PzYhwKou0STwNxjY68rZra0uyL0M1VIwdC7O4XOKl00nNlhJjX5nxPkR72mxVQe_k22DfBSzsw-fAvPm24haEBqC_TMhwhiLu11_riwZuTkqyKJxHrJ4-AyaWhBpRUYw1-vXFzyzWgx4JS5YQhyynD_meadNwXr7-chzAUPYKWikQorcqhpDaOGVlpTQjaewtX_-IsbfedQAe0b17cjCI0BlCrzjXQ4tgwAZR3cvYgc7famXweyaYqdlxmnjXg0GydMQiMdp8y1povCP4DG8-GIp4YaohZW_GMsXnMGKG0NNTLL5ss4VNohzUdkeBDxzBuvlGBT2c6ZHKbTdx5RgQmXBmUGxwlDsX40YwfNnFrMg3zBVIXDUrpA6bYPV9VVc-lWhC_KooLl7HOaKZ82gYdF5aYjsE3iwP9w_31GXynr4FuGwsqg3fFZT8j8nlZDqK8hhkaMYJqisIHdi43lVD9CpFUZ3w5cMc2stid5stZG_qiUKXohLXYkfN9HVunGywP3zAwKqBMXRIadxa1nrrcaQD8E_5tZ-8BuBLzNRRPGRoOAJlxNm2WuwZswGA93ICeOLc_KjzBKRdW7CO97HPIyGRhfzDjKO1lQWII56I58yBufKF4Hk9D4pZG7uGO39ZpNMHXctDxnVewfypoxvSrgLmqXT5MbA4MHRJ4HvfUa5WC1YPGAkMkU5AgOsVF3TTKs1qbPwfd-wEB3CRaqKok47my98rrrr4zifkNcLTnOmXG6vM0LagCfPAT_KYDMt1FY28aQASyUFkfKXKOsSsnDuZf814bTqgs7x69-uIhoU5Q9y97W-7CWlDqx3oxNAKx9Zez9xoElcEq6lFosDY1amarDrWZYcIAJVxxCpNtjaADqssaexHEopRt8bb7w7sD6-4i6x5qkyXdcVMTDnNuri-lMLJeIf2GOuHkoZMv-JmKBsi1flOYsCmf8l6DwLDSeEzHpwahpGX5KzFdUAozawmzPq7ml-2YgXKU74IxNIn1Wa85PYbsGAvAjYTFXdS6LVB0Zgcf5rUAZw18uSpteNle-MJQlA1aQ3Jz3Jxk0iTxm_6v4lO5GBD7guaLF2CSdq2WDNl63z4S0ndpzt1k61J0ClGRLtNckM762NAMuqst4V8XIE6SPVfWETkR48IRLDFTNMPO58bn_MdXgfMz1VKwHKiwOlxDjph8ZxT6qvMDGPAk9dudBH5lr8WVkGOAOnuP6jN-mC994XhM1fueD6NPPVGfW82JKaLfuWAwYnAgupnRs_V-ZR0IydyXe33N6oPdc7qHs2wubKLa3klGL8loRBgffccoTPLMdOeryXVX6_sCTimeVvjyWgmLM8iQ7yjHvnKbzi4wgOLX3hLwu6n-3rUlJ9K6Ze27_wuLPsJ81ffGNzNhES-OkajAlUIujjDOXDczKwo10k7KWyXFaDW3rYD0lRGd0b4X8nrP2uhhksodqdJc67_PUue6ggYxu7eEJdF-Fn2d7ZMhcqC5msXHWg1Dq-mVwprV7Pnh7G7XEX1dfFyTXAxeAXXTgQkvgxGgY40K17bHyhV7_zyB6aVE8alA6DPzAO8n-2dZqYynjsVYFG5uK5MngTymg4zRs_sfrvcgzWlT2DPNGAmjfeYxiQ1IPjrb2LwfwSt2VbMDZ76CkuF3iZdjEY7t7018cC6EzSchdkyR-9Ss4rGAIJPd8eeL9idkAKB2cQCxmDASARirbZRP7L0HJjow5eH0SwOk3Dqqtb593QbhjWHUi92pD_8xUkrfKdZDy2Jw7E26cU45xBv1E5zO6VcPOLAkkOFbAWav7Wr07cDGEX_gfdEjkUVmDdCoeFn9TdlRpyPpRbM_Dz_w7FcYM1o9v_xE_sROifOAxFH_Ypt41ysg_BjBgK0HYWUeFdG03s_Sz2PXqvQ03Y0cYm0KxdI8w0dljooqkBdrHPT0BPQUvqRqCrDeuxwYLfHkc_LQp0-tggdmJ2Ur9q_n36FWrPRuF6uDiTcQoCrFFp6SucOVu943ijLzgLYpr4XmQYtbDOOpzVn-1qFpfRg9pA9bki3ZMzihpxANinOTfvFuqS_UVWdQrEh3UGd8JjY_hD3tNtcNsTQqX1qWpkxszS9kUP4_NN1phFPQNKobRiOm5QBwsFiKgQlWqhWqpCIUHoS9Z2Bxm8noid_hE6aIhzRybf5cQkvFao7Xu6FyD6_gQFSVv_pR1j6hyoPxJbRhb2O7J8nH-eaj8Dxl8dD4VAv1rhrl23JDBUwXx2_bvgvJUDXvao83mV_XKYQcGszxAkA723XrFAzN9L-K4q9krp5Qatgff68GyUac6RRoZoH-ItRvRa7b7uM2vosDMG5y3v_pZYvlzTUDnBn8zYdW5FnLJpAQgYC7akiZwJdb1MGPeWZUfy1RJajqlODDC77vgrCv4U_2hvjTW_aL4bdbgf0rXLvhHptrFFQf4jyVgNmZnZDha4IeEEx4eGVW2H2W7_3hBYhOSPMM1K_0a3_xemKOtEmQxiSXvVDgO9gkJZP8Hw_YLDPCdbYYM33N7XttNBhJTxGfFnbICBdvgligsN9bNXkjU6P-qE4fl3rjctf_Ig1eZxgERIlhQyPcle_M4EBP6xkKlIuLTsuf_V452cEtkTeuy_VMwA-rRkm8Syx5CrdTLfRD3yCYAuCQsITd8U_qE4bm0WlqC-fDiHURs9a_ftmt_SVTNko8kGAsN2JuWuTL80eLSRiHspgpFWEiT2lPA0WJ_a3ATEVgDjjTxciJtOq1U5jIxwkMKttfKeybvcUz48buYVNdW3BrnMlyvoaPoVpOKzYU9F8SBQwpeq4-iPIPZ_3IvLNhYKbQsAcplOiOActiOp3w7tSGXaeeCCaN35fIvgFR1gtPWoXwYO7Wj5PRKYFGvnUkGmSSRP5Vq0xHe8f7Q-ITk9jDE4EdOs_8UtgQxFJz24i2P_u-oR8QVkCBsd9JDpYi9HSHIRa9iB1YDMkG5V5ywAg8nUCRTGoDUACrdRs3hZFcG_y4oTVi9pTSiy0JDdd8upC_6bt5qPkBWT5gSNz20u5LbKE-MI_2UEAYlzBStyeCrGZAnt9IBcTC5iuvYcWzkyvtohKzAPsUZHSwyhpuv8xBGwIYMr6IswpnVH7dR9PLh7CS_nt7-XGKZznY9a0v5pjsXh3EaSvyAP1EcuKLl4I1LvJI2U-j1owsBBQ9MLAzsS4D27JKEoObbm6IS6NM-oe8sl-y9RIDLD8xJCCXpEesWsm-x4Lk4fJMUJVQonF_fiUYet_46REcmLDJ1-6o-RuuM6x6ISwDbGApYpkLDlqcvc0RpjJLKErIF6CLU1PrtQwFJsE5R3HHwEo7kLvwx0-Gr2MNHgnsxtx474USiD22sxrrUQmTuQH2O9h5vhAGiP6tjqNQ7dLPo6h-DWflcINtoywaT8hKVTPwRQPaqvAR5Ze-wIEpP5iA-9Tjxt4kuDJENKPjB9cbJCBn1QwhMbbDEf0iace3ke54hbXMvHklwdBhJRBfk3JX5Q1i2zkEdCBWAYWaTcjJiJf2j8luFF4JkEX_7DH1HCuqFjlzaarZqYb6rPxt2011j8YmJYvXUwrimGUC6dV0Hj7f3AGtPwhTxSo-EJT0NgH_KBg7h3UeoAadCuHvgrWXovT8x4Mzl7r8vU2qGYCeSL4BHK2gwwUekYpznvROnJ7w_bEHrpdrtbIvT0e2ooY2yDGqbk7ruxwom5IZKUtReAPIE07MFLCBh-gRaKXbMDUikG_TmwfvUx24Mlf1IAFdtnChMfiRl2hjPfoCR78nyY9PzhWlXhONwZJnnKWWuFFXHgPZaPZgjuUcL1r270_TH6j1xFgtNRhGA-eK8p2NgGpeWGEFdl6Hlgw5HfN91R42O8h0AJmqKjdDJIEYYYko_eull9dDv-pQCdOA3kr4MZr8u4evJMt0FH-9Rw3M-MB8sbUqe_VzLk19jwl_kAoNSBQlYIwKoOpZXmXvEaYAN5TUXv6ALaVauvDl4fO4PfGvY6Q56ahAADICIsWV6wJQ5TZTnz8fUY7gpdlTiTR3UCFzcBotqCIomzj3AgEXpjWAiLRKDRcv3NLvg9SpH2y4IFqAxS0TXuM2hen_scBfRorzP75l9T20EfhSfuNunspA_fG1rR8dm8RVTFZtenes5HJ_cz6_0PmgqGGgE7ocvUuFC0NukLs-M5K9w8rXpe_sK44VQEDtY75xtyo6cNIgK4TIAKwwda_ZPEBrtj14C1WhMHPKUk2p4FuNXzfARJvnEDrL24L5Q0VzRKNw8ezBjWiSWnwR2xZ6IVkUJAhLHfuqHt5xY8EPs40aPeaKZ3zbx5KDSskTMnAOAxgWWBmVolCDDxpHc5EnvfjdUpRo2PDlKbH7nRxjmCyr--qpzH-Je5WXVEaM77LWVTCL02yYKT0ie0M_S5yTw655wLcPiwAdvDO8MFElwdcx_r6LtLyVi3IGjSFgJz60mK7NbtBxhkhu45Krf2_Ph7oaEqogAJENmwtsIj6BUaiZYUuRdBPrKUMfY7ycXMW9xNr0K3hEWgbAEhAR7rxDcnkJ11hleFSY4AAB7fHe6zbc2-FDfuTbmZeU1eBBb9aoqkQaHaHscPXaU9MGXU7fkZwO1-0JTYifvBlwxRWIXDR3is_XmWyOM9JT9LREBFX-EYc0GnTyYpKOwK7ZeszvmmZ0bR4iR-cxx5ZOqMJHoZUgHMSEq4ynsClBxqbp3FJoCHLGfIrYjyFKUI1VfHSKV8dwZhZDA3z_7FQYCtPwJ0MBZS8pxg40RyBoXzVHywRv12Ztz7Xaytrvo990BpxXDps5CmxPVY1McsydTPpXtg83Z9oKSLVO51tmA12btPu0Z2n6XWJMpEkUZYwL1FBG5LMsmdAmdO988YNQqRVjSiTN9hireplLaUOCfhnqDEFzESkxuaBsqcMMhkEtZ-wYYLkRJmukIM41Di5xSQGfJIES6LzGzzCWNnF1J-FdEVJi0nMM8CrWX3qy-TTKEUcSAUZLADQwyYzHjkab7pvQVWI5fvCWJhDadmnkRfC2lpLw3zC2km2Nk0I_k8678WSGX2laoALPmsvuIFx2v8qZ-v9-ExvHzACziz6kmPrsiFx3VEH_wabvUTv2FAD3sYS8Ix_XMLFbzionCrOAeM0k2ILAV0DH0olv9zk69giXv-a-e8GmVZeSzBpd1dQFn7UqPYnbpa0zl2cmxP18A1nlL7MYR7B6EVQyhFo0yc5neTG9yTNruNoHKoj2hn5aR4wWH-r8h9za6sWzeeHTwECey9H_DfnSdsB3zf6_OiV_75UY8g5MDcokQGS_aGAiRxncyL3OzJewQ9FYSS79bfnT8CDfHsH16EcX6FQVDolcOfvQ7avw2EeVrSiL_87ATuU7nIF6WBOS82lRXq_foNSZpsGC3HQj6ZQQ2KoRzwDta1Eq9UowDSsLNt0J0qdoJvMXz9ek5eLxeQ4JUvT0f8rynPbTOK3I3PNWnCfsfVMAu5rc8P1tEQ3ikirBxxjQCqYHK0veS349PClEdlD0uH9bVzFuSTj3hxNFPzC4pdIfHBbvXnvotrabl12nKagLIN3aec43AdkEz5tWkm5NNINYyDtsyJNqI4IVzKumL9GJkOFiKaa8aBqK29jV390NOlyVrkVSMxKem8I0y98E0YCqN2fs8mLE6MSIT9nlF6wmcyntMMHpuWo8OP-bxYNoVXSNUo3-mEJduhLUR2Tt6kPw0z6QwYQighd7EXvYHT1OkopW_tnrhvQsSnL0ZB0112jiH-15D8BEVIbmpPudj8FqYl4qFr91Z2FVYaCiti_4F3wp_HqEvTMe134JAyrSuVOxiuA5lIwwwM968pmIewL3xZshYmleizICfjwGZr2Nd-SMEMYvVvJfD11EMT6Xd_Dxy_0Gwti2hWwbineyewtMoUEAGMZ8zQXBL5jh3GQjqWsNyPN75kqAtyaViEP_mAqLOPwfG_fD8xr5oJlwmU6v9MOJEj0mCshw6QIUINJOAVCY2NSs6yL2T3LPRQvWuKtZI_vOABhM8M-uhUCH8xWdfGgE1o7TOf2yPjto5Yaca6CamAX-6TVUquCDvnqW9on3yTB2-UpvKuFbRHPANUix6FPKaWNDij1xY7rpMLGvGimiwnFcJRLWRsVeCkO3YrcqqoAL6f3fAT99ACA3fQxjWwvRuPj-NwmikaNTB76gMZ27QCe4Weuzv5EAHBCzz0BUhFIcREqOcCk0HUbAMplDNzEp0siV6hFPmJX2SpTR9e8n7b0xc5tZ1X_MssgT7CHs2SoqCU9nmryWpz374mSZwgb7GXcQ9QMnUIRp1f-PrTgD5MdGLqHij5YINwmUwiRjiRPZzF2zzhM8SYtvpMkufI8U9W_klAcNk_x5SDMxNiJ82pkusSM45CaZ5JxU6k604JEPaGLkc8-HtiHIIr5H9EtmqDnKemDtUCHlxXwwN_cmCgNd81hwDIqrRurJl9oB4aLUuH1MKRQrztRIdfKutKD3wWNP6ek915I_CRnwpUDi-uGvrlKPSi9sjOaw-Q0YZQzBAP98Bl_ala3c4l_4wkJJRuDNIWXJ9XMps4E0rhhUeqXLuYFefw0oIsMy9qRyEylGz4Ea6PVlh9mf0t5fjn2GrNdHh0Zn-6wniKOVYUku6K8uoOPVbcT1mlyUyddKe3knGW8ybVp-96X2JfuIz25hkE2wHvXZDjexVlkNhiaJHYVLprP4Jsa6MCIeuC7gfcMLeE6REUoF7VxHQufT1FmfqFrggbPWnl6nIoYbNgf3lN_JI72b5i1SmH8cWSJqHDHjteFDeZ6e3t2dpq_Xkl-F_LZ6S5wljZv1vG29WKwhILvWy-C5k6aiOLvbWDSRkGn6ttFwOdwGDjy5VFb6K7n_4lvoGjg8VcfB2s4FHQNMx80KAJR4cEAo1z3rgDCPMK7zfYMQLiCobRHPRu6P4rTPdfCA2c6Q98oFDSPzoUcZBkNhlkcX8w4bWHehs2BlPc3A17fDs8u4b5sCHAkDNGWhrwc3DhOiPaIX8Tk5QwJkLrFDL24Y_WnSGJMs4PwnljouXWZVxeAVGdgLdmY0xd64bsUQfNL7lLfq6pHgOaq6ZhdKJtq-E6D8JuhBYhfrQ5pbIf0rmx60t95kmEoGWP-IY7JBPgIr--7zqyLijb6Po6EKii5jWwydCMlFBHdccfifFvGvBEOUr0yIntHgVv22SthLu1jJwsvC7UgdjK6G3qILdo8DBo-RHmXdubRKaVN3L3CiHo8fGfdiinhfgJq_Pd0mCfEcpYb7JnbGKtZh8dSSPvufvqC5fu9Z8q7BdKi6hmz4BWF6krZEtjK7yrZORl4FAK3pmeOh27z3Cbsu2g3tegr9rp3Lz1B4gC49tXw_8V10cSjc7uPxx_dZkTeQg1r0YO951XF41HDdyHcMMnHUCTDtqyi4SvVcIQAPfKxichkY1S7VJiCOQQPHRHY6YCHApon9yObONLKW5ov_RANI7wtzVuae2zxBKYIghTlLtl0qj7bL4LHUv0YRUN--Nm_VwMey72k6zafI6ndvhFUHdDb1YEuPfzTrgEi5Fjt7pV0PyUr5RH3HdxxbRtqoemwqoolup7NrF-K1ugfjx3HRWJIeLBrkxmImgwgLhRPU-Ue676UOC37e6LXdDiY0iFHaA6dKJ29ARO-SUT_z1PwahaOtF5SI0VRAHAuferH9f2CcE-OGuRyVUJEwYvsSOcia7aM42zPQ1m5ShYbmNQ7th4oDBD_MP-3xGD4IMTLC660PMU9I06nIS6dTS-VHgC8LUaiEURONQOX764ok4KR0WJuBdkARiIOCZZoAD3RpamvqwFaSANlmSXzbFruP_6p3MuK7Q8pQ2t-CD3YZYWav0_w2HuS80L3yz3fFhD3NdlBF4CSp_9jOnFI-hgL9v-wRBDyJBIHPnW3tME3UagF6lpzOV-4W2RfxeyE7ldtV9V58347Wof6HHDQBAI0KBjKMMPcxJTvK1U1wzcwk8nyFBy1xGltpJSSngBXE4nmcE3vAjmcmY01eovQURm7qCKjEwULjAZImDywINNqTjxGaNtQDJP18WyH1VqaKukv6KPLYx8njOMFhQP78AB0sO7zmRslKgJ1N4I85jqTikgUzdw6PV3rsPu_cORaVcPzwU0kz7zJNqOvgJ4_4ojnGLLp3fbeASSbEbacfcgiAtG0n53vVhBPDYTGxBk1rE5rvQButkt-MtyZ5vU-mwP0GvyowloQNvsVDV2WLp9WdnyzFcvgS7u-qQyXjK3F-OZ8ckClNkm3gCA6PBQGzKKKRo4YTYu4penTOC5nfGdgcLA4ZLnr--_2a7JvlBKRvFjXxtGts7dVCHUzRgcU82a6Cko4HGjZbNtyvpem0RHrfe4RvC8SzlmjaUVLhzwTKHvqsqbn7QiLpy51Q_gCJY1Kc19baFFG3xNcRaLMpK6pzZEX3JXzoVGmT1zW-LnjtFGQKgHoBD3YEFFDYhRhPws7UbYUsgbRXaNCcT9Nn8fBCtSmsthBHPb2FjtLzOvBUtki9KGwW_vAdXZt4wrZeLqPI-lFYzRnN72LVN1_HbEjIVIr4kHDUsjcd2Zqsd9rWXDLypES42tfTzqT__1wgqJggRaDIHay1lm5q2_897goYCEfmDYwHft4HcMepq1DaIpJQfkIJi87gRHAWWYpert7UF0JNawQXdtLMUL6T5mtKwTMx1kYqBFuNPtz9ERyD7fQEqhwxUlU7mKxwT3RyZqwcfNS1d5QtsMWRXCghIsBPz1-7nOiRPNFqxGRlJNcrMuOT71yvZs8szeyiec7L_zq8inmtlYH6QBUIZAcLtt0blcwvwHpZrRa5exp_GXlyRRuJSiWs8odCG1uIQ9cJgB4bBf-ne4Tmu0n9SzuQwaojOY71LyKKmzNKV1GPsaZsXiDzG1Yo_WrM2yW7QFisixz99v49xy9Cf2MYt3TzwyjXfbl_xj4PC9_8B_9On_UUWSTRoApzecIm8JSzdJ3wbJukg2JGHJDFfm1YR9_xSWusTRSD7th0MPUFjvmplB77bxomu7ve0sLiWbZlwce5NIk1JBUB7FwEkmq_ZSbTN4TpEutJZMQIQIpyLpSqZhIca8OBV4dCjwjZwbW1dMrPaFGQFrU-Vlw39G266_35KrUm7RzV1qrozzP_SRzN6oGEg_b0EP_9zrvGmkbsNWj7G1mYaF09Gr9W9UcxkBYKCaXYnumQ8cO0rmkSYvuRcDbDDCM8FQ63P2LsfB79wgZQVX80g6XVET7LHrYmX4EMs2DfI7evP98vyF63TsqXaZpAWS_GzxjrDCQAOLRZ8FTUxU5-l5apXcHaExMVj0OZXny1gWm8poiaTJPrRJ8k3y4DcpvY18qn3Htc57GSr_WyV8MlWoNB_ZMBib0p0WBfKKZEDnKzDhPQI0wG3JUlzkxjOp1i7UY_94c49OZw85H-IimpLOVdM40IoJz-5gmfLWofsj-O0M9uiw6FLdzOhTjuNem28IvmH97aBs_7CY61tPrm4LqPVq9L8_jtamsddeZCAsE-qbHVSPdCZ4JuxdC0XiJVL2rLDpYsVpwBUutvdJWPvHm_IPPrkSLP-OCuhGNt6C3hZi5KH8q7NITB34znBzRs3WfqmluYh_XLVH0aKggBMFyItwp08898s0B5HwNpyQASwH7Sx6WN-qkEwZm6wnjVITAAPwBmJwav-ASLHOuqtSK04MaqF20qeqj14n4ou8dx0jm96SzA6naDgJySwA2TGYR_p-12icycx-9Wq8F1j-g9IyUzSaO_fb0ISM554KtyYty6wuRGiNyshRX8tqEOZiNFiFVbYpvDSJoN4Emo27ZadO56Lv42Xndl3uVeUt7Ky9jrYVfiwK_7hvtFICkX14ymCfs_57PR6JBovVTb7mw5BI4zf2EL3M6Vr5sfg_TRdtAHFhl--Ctgey9iFMU6fFFQBJD4GLH2yinFANICZYrdk15lSP2s2JVcKOnq7_PS11mEK5xHWDQbIWj-lQtkdld1tyi0ANqviO9NKgnFWsN2MBa6YwuVUP4kZU_81XJYdyoeJ5cqRICqBziwm3pjXIEmlVZRNPWjYsUVZ-genC542jQYDN5vuhiiRBNG3CzoI0U2XhizAO9bsN6IZsoVBGFJmmpzJE9YaOWAz_hgScA4KgYUNyK8E2KncFvIfrv8b48rPy3y6swkZP8sAii0nyp3I1BnzEXEeEOzCppGSnTSogV1vnRmIOhk1EBswSrzLaAoUoByYebG7kkXkQoHA4s0yD7n8DGpoqZ3eBS5ZQvUpvSdzOxvIRKFUGHPliX8DiYL4_9pxS9rJkIMRCgr0fhBrnvPreh6ZbGrg55kn7LRLJUYKmNhDEFtyTv-knC1Bv14Am90o0p4uVtjdnaMQ96xLcdZtgUWQeSeZ7QAsoi6LzNAcCqKO8gr3Kig7EURejU2WPXh8mmohvYNtQaBKetqgAJn0L9wyXdQy2DazXttNq63ow5neMjvGZuJ9xSI2cVFoh2KuAVPfz74OI9Jka186jOmsaCm4w1-skqzHPcW5hdxWgAcgn_8GX2xWyTOvHcgBwGSuHJvx4-xTNLkd3URn8kvPVJ9uhJBrYQM82_QhDP0Yv-htqjw0OJvKfYFM82AhFjUhlbi6-44huctWWAVIN1w8ddXfZjGfb257oMzgoh2bQR-3ARaAFxrwp-DEBgF8YNFGC9o41JH9I1_EuRSZ3iwBp2wFHHcxf34nUegcXsFwvjNfwcEpePzUNc95Xup7_YXCVVLhnoRvT8y1JK7ZCmtuiXFLgQWOZqTdFPktQL05YYHB-rbvkL2jxbOvoybNCajggxMuGQIH4_fV2aa5hrWsu__OsMlh7kCoZOa1_v_-GxxTEKKaoF3cV0jPCI-VnqXiBOZ7IXP3Oxm9szWRhd8Hg_tfB5kNlPLYag_IqQBF4t0GCx3TM_IdVcrgd_07w-dHdAQoar5jHKHnHwYiloVJpIds4EdJV5gNW4FaLLcmQRqgE34nyo5fgr-Xg-fqyUf1XQ-snoyAzMWwuyoeXIAf8v_S8YOoS3UMRVjURxYPClMIXdjxJoW7XAFop3P2d4uCJdWmTl0QBXWPbXwdiLCYUTipreLbfwDYrYW9L8ojSgo51ZBFqHySWF9h6U7n4GJuXR1oWoGOjuwe4bQ00q8_MUPqLp39xMMJsIYJy4UHnH47CGojBzDbUMEUK2D2pB3SemRq4cmzHAGtUhIrOYfIQMsCBpOOnyxHsMsZcIkE80fC4u96FJG0KWwqfEIAIASi4sSbTPhWQj0n78nnrjuWfGfPRCX23rc7AoUmLlnoatFXKsAzhjcY_7lTNrTNBVmfyy2IXuon8o5nvMiiXGLvxPE4wVSHkSIoISNod1L_Z--acM3YuyEjZ1-WcVFHozZrLRAAoKFo_sDq286E4MdU0gz0gLdnoWKAYboJdFRsShRvGiezT6TT1_ahx8BLEKFADxu4x-uxTHdauwx_zsfhjLzZhsHgJaz6uY2IrZdKNx9JqftiWjhAoZ6-LEHXhVb_IBer0J9D45w1tDbL-UJVxh3Ld05JE4zJ6tKUDvgqnp4k0AMRhNj_OQLR0BVYFPZHaQbxEnFC46C30mmUjVipHzkLROxJXGlBF7qTv3uTgEh26A80__ZWSOu4O6Zg33BQjL0yUCjgQezlNxwAVzkPQvSFA9kdJB0So97uIfbgaHlIMw2wzYop_uHysPT8hi5ywgJ17rq8bvhTyFlfMjr8zCY1vjXVw-v2pquoMiGW-XbznNP05BckdPku4UM6ZBjL_oWS6nmPWRdw2KR4TYdsJ4o_xeExtO76hr5ltYcPFI5jr8M1za9HcAlzp-yiort-hh96hSJuqmzONav7SH0t1yeFYVVhSvGu7lw5y5C66myKNqma240INdpruMxZHI4BavPzM2mmNbxBjMF5btSTc3E9VykHC9WRP4HiwetOkHePM7Y_nA3qFRPjWv4SHPYNfLkfYrHcZZ5fzFJBcguNTJFhNuVWQRPEWf_E8wQph-iGQlXLsD8wk0-Xnqp3EOwSsnDMRMIjhkkkka6DqOqESUTjsGELZQ4KXvau25XPhcOOUSFLNb3ufuA39BZovRM2pR3TvvyiiVByaxZe_zPeYcj-FTIgLKtY1WRCnKO1spoyPlm_dryvDwwGLd4WKzH2DSLMQL5HAqtSP9Be11Dbxm02HIrJWzfM0MeHzA1J6TqljJimQicp6-DibyuDzx-Nx0l-ODlipcHOe3fguCQUhhJiNGzDk7rgc7E4m-AYY99bxxRp5wCIxCq2PO9vpCwTTHFozBjSlO1niKJbAphWWTa1BdLT4fjYshexVNi8VO0z5EdMIHhsAlolEp6MxEW4GMcysKmUga3OqcgA9sH0Ba_9XXEuYjJwwEmuvfXjErc4ItgTIkba59lD-lzbe7BCHYChFI3sGbAN7iv9vLXL6PimKaEdrqTw2B7bWei0auwN9u5ONqI6dYSlfR_AkXXHugRFDXyysTjADnuB0iam8T_8FpXGKL1UDzNqXL-_gMdm-UIOK6rxLw4avNOzCo6AT_3DwlrdLuIfzSuQzheYaJh9yBOsIsOlHST3zhN0fNRkhqKSBYWAydiv3YIsckx_SbFAAzBM_D5_l8i1ln44ObJ7-bRbqVx_PBc6BxA-uSnvlhkrk6GUHP71hzlD8Gb71eJsseJHFTZdovUqqGHSAlPWDbXSXusIeCkTpvW56xTRmc19pq0tQe4_lgRPoT-TWJfv8sEWpr7potjqA8VRW3zPuav6_GnxAFe6Jhn2kFqErNFl5GMBFHY42gGCVy5eDj-p8ETlsiYVH9ify_Epchkk9DtKYiJy-0u9HiLB4bg9uAUGagi66hg8YbVYpb8SdfqcJmqrx2BbbA4XaQjHf8JeAtyJWeZfXrYdDcDx4aR_jZNErmylp9k6UpG_0yHwVyTnk74F5XxsfQU0hhb5QbWJo8MXToPqK2grnOozype9IM7yrTeTJypPgfIa4fNbZzOcSH13KIHpw8dUbBT1mCxYt7zYKtDkj1CQSm1gH5WVDjt2gZiOXwHKxkIiJbZe99lfuQJ_ljSEIdVUaVXgI9M_R2wrNHBdJvCe0E4c-W-bJcTMZ4Qy7YOMfKLI4Hn7qPHy5rnAi_pZzVju8IaP-v1f9ufuL1xoJ3sDSNz3ZE-qPUEmz9gDsKE9lksCmrEJe9XrRI9AqI2Qd3SfvasiJjBGFcJPwvQoZHoOljS0mrCfRcEuRlUDbVlABwn60jWxTRxcMJ6u3XMA5_FecBq9fW83Mtfbw__iZpF2IoXIiy0XVILM8XsnDMjVMXyHEvOviXji_fVIBt78QYaLa8n8LJvXbXl6na7XnGTe0J8FpJv1OlIUH-vCQw8GKcH4YjcmGuoU-B6uipXSEzuv4BGQ7B1veYEYd2FnjeXvf56WvjUJQ2CxW0IXxsCIv9LTz44NIgo5OchFvj8KQmV3XJTddHYdXpPbBAo10OHfhnIwbrR6u0hEpJBqZ5ZMdUov7Vwbi_t21DI0ACH2dcQfEKgfa7EFOO4N9TfA4KYR3NIEEJCmhHHIZiGgdvFLM_mQkY4HvIcFOT1DLB9NTBc212qW-2JCWr4VRtC3ODNYrk0WstV8gPB34PgpcI7Qs4W2mvorgkTpaX5Inlbgqj5Yc1bj4tnTrITBtc3FfCYU7h-Udm-11tKxgfTk5E3yIII01bti-maBgGFErIdNdad3GSPx_p3Fa3PceHzDByEJkBRijBGowNNqUUgpp5P_e6HiUONwOA4201gbuCNcYyz9DgAxySa64-ynrYhP956rM1BZVrjClSK5T0ZZijg0UdNyO9qplVMaUQXYJd4sfgeKlPhXy6vayjVjzV0NuYKzLKy8n7GPtxgc4jTqaPORH0w0QcyZxPYDMLYUSo-TXYTpDVoJWxl2fHMlh5uUQRxJsUc3gSR-vZB0ILBMKw4hWKzq_3WP7Fy7rpjZepG6IAIUcnLyTcPw4N6jM9S0rw5LHfPSU2vedptE5JY7BGvRmH9ZDK6sbPlYeyBTXhCnkEaOLFlQ5DVQIqwbtFthJBEc1F9hsswDFKMDgxgklf_3aa55bF0Cmd-T7rzRO2gGvRzpFSmjpJlenkTTAwvZhvlPcf8K3dgAuEU5Js9GIc7MuCdNxm8yT7VAet8ZyYCLv9lhAJbD6Co9QH788ooOdqRsQq3FjpWPxQZeiaT1HOW29Q7MdJ0EOnAWotLcMEjPhicBu_YivOZdsy3deF4Q8gIHSGt-3oxY8kiyXUWbDVIIMTlt2jjYhEph2aowb9e37Y7R8Gdevx6SLCCgXvQubNxfh4hNCcjlWBpOGL0lYhp3tJmYLJPfqQFqY7S1qBndflTqZzrcdFZYqnRHXNJ9oRmt_rvcSvXxqJFqwX_JRtJreqowQHZCBwux_yNWS3YuYqS4EC2ALim-EkJRWbcWBtAnr4Zw3ZhFG9X9vCNXIlefJWbXBo9PSl5wVqdduCq77oruDlVEURzSUb8VhPCq3Mb9hRseMHk_UqdXZwXxaDGyjsjCzG_KwgohYrwJ8rAdF2FUm1Tg5fTGgbw5FMQ8uDMvkkZVjGZ735_latc_hXsA50WXa_Qfoc5c_PCW4Jc-AkHc7AdYZjE4hyZi3QWqwMMTbI7Hbvw7DmrRBVBFtLeAWYV99KI3LqESGmQWLOSwKrug-p8ZxwK3xkKjoPVn-wQncaNGmZQum73_1dcMDFsicHaT9vN7tEkHI837vwgD-gQBiC8ORlWWF8df_14fpxaayjb40GoEbPSVw3uP_-MAnHRzAxcg-5O1kYAaTLiepcgB3-E7O1ehsTyCrCgEM5QnKNQUzKDwHMKXl34U4q0x35MGJ9vbaBRVACDAtNhjKg8GU40hyAbTgty0qi0CS3KdlMLiy8yBIodIUkeOWDphjgtEcLq-65bsitjsO5pEAxz9kpBriRJ93eAzH4xNhaZGrjUdz6sYpkha91jlrDLpHcQpL7amzKmuAWLLs9iHaf93SAwek5mkwXu0M-sc_5q-X9xu5gd56Rw30ivF1o25wjWzmQILd2elqHgp2kUY6WiOOGDFKAStggNhSh1XvoF9naDN4ju63Ka-r78pxRjHXzq9wbH5rdFlh8WhbN_5teJ3bmrrS2xuXvOFu-4kOJmvvK0Zt7Bup7mjvvJs5NyKj9QmmJxuZ9p8N-SR-J5u097kqSwfu08pAKXp89-A_7dKPEMBxGq3myJtK8ieq-wJbI_POO3zcZ8CNAlaasPqXuUVBoXE4DBameSU29pradUeIhE_-UR4QBk7GdcWajdHo0f8hXKylCFloYJ43JQW0y0XkUZUHhoAFhGzAf0W2iHFhi0OrQpdDH92mGA0zpkkr9VOS22TULQ7dW9cJBZSRqBvuWJdsCvd8CbsE2Q6kECnhJvtumDjD-dWY13GIW8krLcMRgZTgWNj-XMtGP-rsTOchxwn8R9PFrkT4ObtovPcci5JL-qgJXTJkF-nfd7mSQBLSqKqbKIhvG8RJq505X0EpcVX0shF-MYOQZZpG4BJgleWLxMEN7wAKsBDtvv3sF2q_DMkHvjd1SDkdsoq5HalzfKMwHJJyHgiWOOccwbbzeNxeF5R2QYhtizPqacJbZN2KZLrhFZGgYtbssAtZw4jobZyezoZ219LZQwbw_9jVRU7Vum39xX0wE8yhMRjQJYdGR7PN_nxIOlQxWt_WOKhjc54qf5la9LolWYJiV7ajDXHPetOvYmGWZKCySDko4Cj-P76i9CNB6cbCestvjpsSa6gwOUNqD0QKGSa7KYLCg4vT0ezBHeiFncmmNbaFRNCmyhKyiSgR7ba1c_I_vGpv21hGIFGkABSrvhIYXCNJoSuXZmO4DJ1xefXfBCca4ZD58WPaqOSUW_qsPATm8RUqRPK6xatGJVbGzlrNnp5QJus5jCpAnwQRTjOx9wkLb-lvHdanxGwmabdY__VvigJH8pfHeNiag9Rn4B0jR9DAXwqUUeU8Tv-5KiKKbpghJo-mE_R0HOoC2FwrcVO9e6AiGjJer9DK2kp5MqEl4I-zfCwnHxi-WzCUVjWHkDfuQhtsStLbF1H-aCHD_BOsz99eG2iK3JH-mOyl2yd37nyQhB3mrCbzZ0zjFLCPOKmEHqUSw7wkocIaQ36iFxw3L0i2HYDnwk0KgcrmAntPDhZvoqcrn47qTYKX_0yI02SVOcw5QtdZMFVmSk9SuiGi_5pijijYXqepbfJRxzzh-76reGasRdCw2KQxm1_-JRnZnAIKvZgD0lTBnMs3039NZYVjHkCeNWm7uVJcPDxSvJhw2PMRO-DMgNNun16cRlUgjoo1RiK4Wo5CFpPpCqLVLR7WeHk_8iL66JBfQCZ4t-XIJAxSAZo9vCtGLfEo2LdDBanrvDG-ZlNYdcrrrtBBXjO9BAO_eBZt14o80d3jMHPoC9EfzrEhOVuo_c3wyX2FS6KnUfRDtfyxKnEfIGUtlR8nOegz9mCbg77AH3QJUEHK48DQj8RKoevn7ob0WhXdqIk2pYgQtwwQUBpbmlsc1PSj1ODD2uh6h0PJ9SuxU0jfM6ha6J-zWt13D9-INqKZX6XQ9nL0-21dGSKUDQ7wBCErgoCg-Zdtnmd-dAWtq3Ow4Vk4l05-3jWngOkRwvA0lS75fx3EDWHVbMPs3OPFIfaEzpRVkfBWMcY6kk-y249DNgS49yNmOdGSE0f9S1LHJw3gk-S6D6PgJMRbQm7wcfhlLOYuoHIU7fZZ9h2s_6tTh6e2Ub6-bc_hAGINPk9T0NNJ_yptfeMusviKQxR8ZOPGc-VGDUfo1pGRKD9ZNy6KwPrxFCAfXVxz0KXPDoFscW1GzEf8G3EaXsFjE_vGHVWOMr0wyY0TLSsBT4yfcy1qTl17RclTmDP2OWOYdtRX76GOZavopvR9yg7IOTUTqqX_52rCuZg8YD22_ZaIdQy908NgfdGI9dHQ1o99i5xAxX8QQAiNmY3Iv_ztT2QmlSnkd-dBFkDb4raext3Azw-6SR1BmNMsAx0Gp_o0u3d1OTyJgOHW4XDlbDtcr-MplvgyYED71dZg9Y_JYScsPbpzyxJGRd42jszuYdn91WO0EzZKLKZfNCz7gLMxPxRDi6JjmMnUMcZBlhc7HBVJNvLBUJ-MKFbjeQBV2H3xVgDBJt-YSnpj4LnMF-u8yGWHbhBdiv5RrH_caFuYtTSBTNR4K7r3Nm4gISquaaxT7p-UYtq3b1fREMv4w4KgeVqUEJzK-GLkGDSNgG2obMwyl1Hvgcwh8bqKNyNMqTZtqegdh74ZjEPikOdxpm_OSpA6W_YbSOHf49x5_Lb2H-MCFpEOOO2flKM5SdmfH8A_kEtuitwmH6oWl_vIlu9af1KD72SiL6e9hWpjIy77iaC_Y99DVORHBtWjYKHhLnXLnZcyQMwqnOz9w1J-t3XDVZwdm0xydJR-TJKyLKNlMvwexk1fjmdGRX7P_m5MXApBMmCeTKVaUwytkWO9jsL9HnN-uMjTzmbG-76vLX5BUvJY80ExcXo8zceE25VHEFDoUdRMoSZNKgupmzVCGs1fdW3g4QgOMYWdzqhXli_FjVWV6ltTi-H6nsBy6GCfNbZKXAkVz_s53dC3mkc96SMqex4h6HoJJCAn8R4dZAeGjoVfDGQoujwEvhmqQ3lw_V7_AcOA2np4iUw2TJ1tWAQKmXkxIkjuptK24XbNziM_7LfBFeQUknPJbL-qRM1PlPhAj9ypOd40zHPf_g1EaL-n3fZr9qNzTuhX8uhkyQRcNQ-rE6ySJQnOwWvutQ2DqfS5B91MhFUv1NfDY5ZfNrrbj4MZeeJea0V6vIZaoaeb24kQYcxyQb-V2ZcI-B5gda1EvA3goD9D4kd6QAviXfnSV91ARZSupOCS7FvZ0jE2h_SPMF7PcB4rVnoFabWRL4LU4SUdrsIPp5S32h2BHN-bnbCgJDTOc5OJbowhfJAaSCmmjewKQIFherHmdTsJ2UOwfGVUGBNQxvpKv2ss4xPTX1f_xLiEW4J4gGOxqOIvV5V09Af093T0CFJVlACpXMCKqxqjR3oKiIwTFwWo9OUnsG25Ec6sbgtx1rauQnOWnhzetx5m230pz9h24WjEVhgfBwI7yvGjNb29svTFp7o8jSNNqYGKKhwVc9KX7KuWaiLeWgRvhfTB4lK39KcKOUo0DpRvakO1KNAr-_ffC0ilwnKjb3gs48uoFe_VH_FcZ2ItsHQwiiL-jDxY5mC1TdLvGbc9KkLeaKoY2UrRI1IP3Sh3osWHuRnpOze9lxO7vmeKo6KFKciG2PguTD8l7C960lLhBCG-T0xkrH3KcyIXQixh6q63I1PpOWvgFWMrjXBc93dICfw3RtQUruocrmxOtruC7smtLJCWMhFTH0bj9liJeXmJ5UGQfijgT3yYZ7nXq_x4WcSXIAxbttqlpybHu46uv3OYoFdaYm5NL-RlUamOLOsLALQtSzWpMxhXKyOG_fi4BiCEE5SgD9zPDvQQUvr1bLSBU9UqJr7pfiVHCvp4zb3D14t_TwyuY2ezgk8OFyDCY8pQYugJ3lZVXMpy7QTQSQa5HQjB3yfzHcMrq5pBLmuXQPU-JcaLyG2MuuN9XIwlsfgTn1RQFSufYdfkrcXT8aG7L0MtkFMN7KRb5Fq02vAdZuqvmNOynaOUdhHK-JRFLEYTn15OgvoeWRnOHupwYEZNVBF8dHHGjyRpFtlJ1KnSzUO_Ap5uvUwXs6rtsyLFfs01ZnKlB8AABlhI3u0z2z-_6xRvcpG2Jbmm0_CqQUxYI7O7_1hPk__DNsck950s291cb1FC4M0UwFKa9TlicDSVoaCBfkS5RwOdLM_3YT_NKd0kAAGY0ery-EBzDKGqSn4MKKVDraUClxLhcz5pooYdg2ZvU0mQtxNT7kZjBm1_CusTe6XtFoLVAj0oL4LH39p7QfY8fTGJsVvH2ZqcUjsLhkZL5CaKbY-E0zUE9F5BSS32dxfzoaj-0TmrDcHRGhu2Xxr6Rge-rO7TPQ-j2g6SQ1XMeOWnV8E2UP_eowZYPmO9yk9gfwp9Aw1gmNifFNtxJZ3d_-aVQkSD7VkJU2WjpfSt6PRI4NhWhXn0BpzwR7jnoyrbLdoeEaO3NTtbLEVFwtPmZaCtHBMJl7sz5gQHiP68A3L209PTbF_MefOvAKr5rm9YIhoZ9h-LYXw41qwbC2YEBbQOaZPX1S3ZVKThcFRBoOj7cIOQlOib7J8K7J6AG2byd1fkgPCoCqLxhatmn0Jba-8Wgkdm3wFxOl8XkI8XNm9UOLDYfcDinTnVtNxvu0AoV1bN2OmkWYRoo4lY5LdE1E5vmpZCc-v7CE9SKRci9QmetBhX_t9mf6BAqVyhTw-QRaXaEhzmf-sQmkcugF_n7FBvpgYpDpTPSkSq-xoTzYSSrtEVPXpr8dSdqtopbeT9WyC5tEk4BPOjRI-7oZhRGvSVKFPaS-KBOWNyVyFw5ZoQDp9EH9jZejMxoYVR2AfUUiyqhQeYVIwPhIFL8qFtSeidNB_JapHLQRftSzReA-53imllVRYN78jcGJpabWy-F2yeAP2V23Yx8N8uB16AaQDdKnxAxYLOG2XeB1I794IOzGWuX0xc3lRYgFbifZWkn9jdknwj_x9_RfIG3WAU7yTguY41OTT3Yca8BnA-l903mZX8So47bNMydDG2K_aknbmJS462Y2vAToG_9PK1ubLo3eTmc_yrcBM2cLdeQzO7lu3SHooqKKKNvq26Q0kMwaZXQyPKtLfUVhLgMB_2fNGQw-UVhzZ6mMfCm4IjCoJp5oRlSi1SmDbWoYrUklDALuiPlxLYXomgMIPkrG9Q7ciKux_y7Dd4bAUN5c-gzJfl8WBBEorUshVOYv2PVD6Z2XEGM6Hm5cMz4xim_KKIx3ukYm6Tn5SBJ9hfe2zei3XHHsnKbxAHpsJ2_Gp-eisr4NP0ZGEtImEz8C13Qop8Z5_afVmWN_eO3KYkMTGennciPIhn0DiNOp_AV8AgQrlcQiSIm0KOmeokw8izhDpM3tkJ9lciO-nSXjfZgHWROtnS_QfDCHNxVVaYf_sW0c1rW8CWwHgQpg7uDzI_wr3IgoLgH_gK5-IXsTT8ijG9hDPvg_xUehozVH4q36oLsHv7rIvkGXn35-VKMU6yh7VNf3LP3sPO_RJieCqp5OtP7P9iCLogjqafv0pVwhbkjerm7O8Omuexrrn8fUTQdSA2AgGynIQ-lB3mKsHgKVoWvCH2t96uufa7ghTrZ3-2mSBCveMoqrKp92tnoktXvZmDgMRqvoescTwwbzEhKb4ogN0PRCVKfNDZXcvCEdO6Fa7q0dobWLUSLHCCPVzOaBGY04WAQOQPLu2WLoB32gGyxY_Ek7RPxjEUIz1SKsXR3giDHUV55UXlYTOAYPGYQ_TmlwbEriGqnUBv9BBjK3VvPZAuhA93jqN6IQ4T8gMP-kMpKwdKD6kjzEzsFHF4xk0FGEPc2c25LeFCSBTEcH-arI6tf72iyTMLHcWOE0tNtn1FaKS18ffsi-P731MqvuJm-b3QOi6VlTfOxhz4KEWWrAvEhNSqy-1ZDm6FeGBjv3p7SSZquoSYkWrw6x1hM3JdhIl-oe1gNG-_YIapNLN_rXTwkyNSYkqud70qFmpkWA862tQxjKEjqifIZQwfboHHjVpGBiqCE1ZsXPxuYnVGArBiTAvV4Yd9xniPugMk9XludJKAvsBKOgJ0L4zjOCJwUhxNcwtGX42F0SeHosHo3RM94S9oFPsxEnId8SBmy3z04QEDFO4e8L0ZAHEg4J7DPZnJdCSqKhZgRouOPzcWhVJbswAcXoCpcO5d_jttHi1ISy9aDkb2jUaR9PIxtRhE2bd5PiAQRNWLrY6NJhXGEaLMjmj4ys8FiqbjKcMPb-9mFqd_FBOggGCiAhpiEdR_4cUK6wCvsxhldaomNC8tO3pU12n9UR0mJiRA6-pwI1ZPrykArGdWiSU1JRVSkgONOfHsAmNDPbIM-9ZhmR_Ozd_huijCAcxmOdggyL_6xN8uBNprNjDwmJ-_SKBKmXpmUKqcLwzRFS6rwfNhGM7Jo3GBLCod4g2nqHgZevqrq6hhgZiv5n4GOtAmJwnTgICSogL12fSirSstTesmOQAa6IxAP-YPTrgaDnGZJsfRk3_bkNDlBm1CDlUWdqrMqwZgPJu0dWIEJhAs5Y8xeYPEPytMMxRPg8X9IrCbncd0n5rRAYmDHyOmsaapTrAnfSj_e347vKUntPKHtHz27qvfXCJm_ufm4pA-0iQfUaUiy1NOf-tBp4YZUHimTHTfeMZgFwDVrA5cx570eRiR0sbf55UIG_W7LLs0FlCujL3qSR7colSzpy_tCxvEaKCx_vpje4ky5H4ubhBr9advTRYXkEP0vQKpKYgzIkcDumJdcJsrN6Epu2bXAHHdEHBEU8lddZDQLCpZb8oF3VDJhz7FwGlz8MGEOYBzTCZSYUd9kqLh1q91TC_D0ANHf83QQzxzaB9GDVpn4YJ1-wyzeC8AQgGtOcrZFXXcxDGyam-aslX06ouRJAt7TmhIEwdK1MJjGa9dMJiJrdAS-tBQ3mF1SewjQgdm4j3Gny-6se1UcIbLq5YLlo3q6DXCOs48cG3-2rwg4r1X-2IrlnivCW1Ae7XjHuNo-QdQKiUv-JYeryYVrKtk3_7yj1QzQRVCimKsjuCYJHqtY7kKQkyTH28mmJXI-OyWep3CBZEyxTCiGNguxAhyUXWV1ziKXvOhFr5T5TcU0pJ2hOrUeYzA449fP_ICn-5rkMa2JvLJlCT0-xgxg06dd-s0CLN4MHyJEfuKmyNepsVYeutn17YaBf9kkiBnGQppvO4pLKUzn4eR-1a4COptJuTCDtQU6O1ACAsPGgLcxV_ja0xpZXpiDnbg9m7nVaKNHNkIfFMMN5QEgm3wsiBj4J6TnfsUKu1u5Iuk1MKNXms5elrSXQoRDSLyyay2V-VUfoFnkZl0cIicRDnIZInHlqxPGaTxoKfZEXmLRawFFXMbG4B7Cd7OgnB36lw03cWDYKXB7xAdKOwV51OQJYIXOUFI7t1uRfXIBLr5hvoLuYLVjhokaxNPL3VzE6t6b6YDb1RlQglTM8yifp57NXOYrROg31ZqvR_Gtj5IoScCDgFVe4j38qXULsZdLW5dLNrc8wIMZFUtoPc3AIxPp3htdQ81fd8mWhjiS7ce8-5bKMKzNvT2ojvVgUsob2APolkrKKcHlQrNHHyIUljmoP1uoRCYcxcs1iPacp_u956JidS2M0QpQCp4yV7Y8xfQG_hXa4ghtSPpuKO8kvZf5h0_MosJiczCydegPek68o9oWSEKsLhQotcg0mFh2_0AJC8dhQBul72355BK9qB7IJ490ZOCnm3T39Gt9R1zuZtNqORCOGsvK0paWCFoBrkXJckWtUib06VCTB1-D-kpyh-YdHY7t5NfXLHoPDKh5FSpI-0RA1vsr02mxh2_exvnlutY3jji3gjoA5VDav6fJprFtbsw-yItXSnBlDmoXW9q6Gc_EwO8D9LiFj8TP-Pi05JnAs3Zl0I_5KcgkINct-_5UjMxtjkxa1-4Ls_FOGhl8yb0PCELoFEdW1YFdUS4HI9s_djMQCW6PBoDF2xTN_jkpktTxWEQYXri4Ysha1Q1slU9nfZ0J-Ag_bHspXpxjajpcoSIi86T2YnmT-pd65Hx8qlic1NCbD2WwsArfi8rCVVcIMJ2Fk63rHJgbTaJ3jjilYc9miCmdWxi3JmObh0mK3SgKmWygwEy9eC_22ugyR8vGTw_lmUQk2yNLawf0i0EgCoBidHj_LIC4LqQ2TUeFpgY8BWBrO0L_DPSOdnQhUbczosd_ZPmZwX0jpsLG0Dvizt9UjdhXjRVmM35URZiYaRj1dbeVAKM1-qsAisnP85jfUMVqV5TT0lEHB1_ECEctwO1UgZgNThSHN4oV9ZPDY-5_q__8xICiWnqBVEn6C-RYOriFgDT_6wlxVSypcj0wcOOQPQAgOhdbrEAyfRdViIFC2sX8GtrjpRzKXhA1UbVd78HPennAeZIfdvX_sk5dQqZeQM-y4T8DFm9WDjb93r6hw5TgAo-vgJ8DX49u9tei8KY9UfHRLC-_u8HEBZUF6-FE9g8I2sDgvgdpmEXqySiT79yuXgHJt5Yh6HB53SM7ZlYh75W7TWIIGN6-43B94KEifrk6Re0Mg1Em5ONYzn_CG8x4yU1R8Qq6Pc-fG9sLwuj0WAP49Y6sIfTyjiGdSs4hqzJjxv_pb5e4HiHlYOrKO_S8eh29ZoLwTctj_NecCYOfUrM1WEVZPQZLM9UBCYPKHKJnGGON-vrLnJMqFo-ttFSgrR-L0cAGCGG9QAZ66fxe0KkFlcaquJryLPaG19nR107fL6BS59RNA58oS72SeJpIHFY4terQj_cxH95LX6WKvZK4AGgnU1KimWocrgPwQSeucgS42H2oX6X5I2yALL2aaJbVs-KGNvivQHvH62yvO0Nx5RydzLBeyYEL5uhtxPscKVa7udkSeg-fpfZRbfXRqWGXpWLuIxttK2KRkh_PeZ1l0bRg-goWjPQSoIYldiEqSsFXgMydY0b6zdAtFRklUT-skc95K4_hwAjjPZ0UH5lINUNsKz7h-wqGiZJ2HYKGFwSnNep1";if(!e)return null;if(mn&&mn.sealed===e)return mn;let t=null;try{t=Vs.parse(JSON.parse(fr(e,fk)))}catch{t=null}return mn={sealed:e,bundle:t},mn}function pr(){let e=qc();if(!e?.bundle)return null;if(e.runtime===void 0){let t=Date.now();try{e.runtime=qs(e.bundle,{signedAt:t,fetchedAt:t})}catch{e.runtime=null}}return e.runtime}function pk(){let e=qc();return e?.bundle?(e.keys??=new Set(e.bundle.filters.map(t=>ee(t.slug))),e.keys):null}function At(e,t=!1){if(t||!e||e.length===0){let n=pk();return n?new Set(n):null}return new Set(e.map(n=>dk.test(n)?n:ee(n)))}var fk,dk,mn,hn=h(()=>{"use strict";Ks();Le();Ys();fk="tokmizer-default-rules-v1",dk=/^[0-9a-f]{16}$/,mn=null});function Xs(e){Yc=e}async function mk(e,t){let n=await hl();if(n.size>0)return vt(e,n.values(),t,n);let r=pr();return r?r.selectFor(e,"free",t?[...t]:void 0):null}function kk(e,t,n){let r=sr(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 he(e);if(n!=="compact"&&n!=="minimal")return r;let s=r.endsWith(`
85
+ `});import{existsSync as Gk,mkdirSync as gR,rmSync as yR,writeFileSync as bR}from"node:fs";import{join as fu}from"node:path";function Kk(){return fu(v(),"network-off")}function Vk(){let e=process.env.TOKMIZER_NETWORK;return e!==void 0&&Wk.has(e.trim().toLowerCase())}function mn(){return Vk()?!1:!Gk(Kk())}function du(){return fu(v(),Jk)}var Wk,Jk,wR,hn=y(()=>{"use strict";H();Wk=new Set(["0","off","false","no"]),Jk="network-notice-shown",wR=["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, token counts and install health 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(`
86
+ `)});function pu(){return cu.replace(/\\n/g,`
87
+ `)}var $R,RR,no=y(()=>{"use strict";hr();uu();hn();$R=300*1e3,RR=120*1e3});import{chmodSync as CR,readFileSync as qk,writeFileSync as IR,mkdirSync as PR,renameSync as NR}from"node:fs";import{join as Yk}from"node:path";function Qk(){return Yk(v(),"bundle-cache.json")}function mu(){try{let e=qk(Qk(),"utf8"),t=Xk.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}var Xk,hu=y(()=>{"use strict";$t();H();Xk=k.object({payload:k.string().min(1),signature:k.string().min(1),enc:k.literal("v1"),fetchedAt:k.number().int().nonnegative()})});import{createPublicKey as t0,verify as n0}from"node:crypto";function s0(){let e=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(e)&&e>0?e:r0}function o0(e,t){let n=pu();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=t0({key:n,format:"pem"});if(!n0(null,Buffer.from(e.payload,"utf8"),r,Buffer.from(e.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(mr(e.payload,t))}function i0(e,t){let n=o0(e,t),r=ro.parse(n);if(Date.now()-r.signedAt>s0())throw new Error("tkr-daemon: rules bundle is stale");return so(r,{signedAt:r.signedAt,fetchedAt:Date.now()})}function so(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)=>Ot(r,n.values(),o?new Set(o):null,n)}}async function gu(){try{let e=mu();if(!e)return null;let t=await Ue();return t?.signingSecret?i0(e,t.signingSecret):null}catch{return null}}var ro,KR,r0,oo=y(()=>{"use strict";$t();ln();nr();Zt();no();to();hu();ro=k.object({bundleVersion:k.number().int().nonnegative(),signedAt:k.number().int(),filters:k.array(je)}),KR=k.object({payload:k.string().min(1),signature:k.string().min(1),enc:k.literal("v1")}),r0=10080*60*1e3});function yu(){let e="z3vwUrVQysEDFIi_uD6z3M8WxJL_HaeiNSQ6jlX-Aw9fePxU3wjCWhRon3KbhKdlcHkV3umWjxZdNjtxIUG5RmO3t9i6ywdFTSCMJLYSkvZUxyNzO9DDqTBQwU9EzAIPiwjlz0bWdbGcy9PKFH9UOdDU5cX9KM87ljb82LlsyFlvne0n1fae4ZrvpZfdJa0HXGTABHQIbmgVDbuf1AbP90VWspY9tekL8uHo4Tl7-772ZeqW5iY4npn1qA06l5HqDWrhtAFjKBWFKtULF5NIxtLwDMD_iSBGR2ed9ZPI44f6NT0EeB1oiKk3R3fWXHPzUwHgwdaOiHM2nEapZygGMYBO2TGl4CoCSe85z1RAU_s09h-R9wjH_TQYx4k9yfqfkEzkS-W5b0uKJ4AyBGBqil4XSWDeTGVrrvQiWzd7WdXl8lbDwiyBheNEWcCOGbbB92y9D9tF0Gspdp5TetsJCqDL0lzxEhjAbpUnODboNZTrKMVWgVSZ4Xzr9qzxd7r_VFeahRTSqP9WpZ8spNo_yQhJTdcRRaCPhhCFeBHTNc0gGkntMI9O9p5kB456GX2A5y1hbKbaZ7kVZubrN_qxzn1NQnLbULxNDhyiRGtBzU7Uiqk58fXL92H8n-TbOY3OKFFlSSJlhtuy6i6uscCiruCR9GEQFvIgaraH5Yrsxetp_VJ_bAr20wOafPC9CLFvi_MzfclGeTKssJg4X1f2qewO-q-l1nXbuPjvWjA5dLvxA_3bmzGsTJzSOP-287MOjD4HymaGbIWALIKHmggwXXvzpF51K7ekBxn85qi2m2zw5kDpv6flDn2FhNEcwrFcpma3_m1P_5TIHEJuAjvZ2-8K3Sb_AnZefI70eDCwR4pzY-ARIbLkj3swnJt7STAkElgg7ZlHHaBVLAXhzVhX1pKzhQTY7aOZxIzflDnPZdrJq1zDPLnSeJoDQjeTjHnQkSfkJYZhJBlqdYMDg_gfWwlKUBb4F0N2M6h7cBtwEzlgAS_86kVFrIwcg1Om8NiUxb4SkZ7FaCmBQdQGJfg1qk-ZM8OYTqIQhCl5mTgRJQJ_4u_cTd1TOdZ8jMd5ajadbY3zzHiHuTQVpzWYnP6HHZfsaBfc623jCA-nkSvUqlkYFQ-r-ijlifo70LSPs9IWixFnzqj6A4EcnUbHZfalMYvIv3i1bUcSEP4Z5WuO3h0y-_-xVpoIMRB54sDWe19MJYScVQywyV23okv2sIoFeNE1B-C7z7NkPPragZNN1295NxLmxzxdgZlnsAHZ_QA-Y1MNd-WTEUoB6QOq6Py5mL895x7Mhp-VJzdl37wPXHIyqOzDIjJGcZiKZd2zYD5y10fi1iVvXWmgg1OwD2VqZ5zzU7_uyJHQi8gGMoycA3Aaat2ruGSPLXBKUYWFAL4YTgArJb40amttOkGZy76P9ngfdTkvyApUalkQk6KL2Q8tEAksqBylaQeioSNsRZ3OjpvWE9VcIh2lNeBuxz7hXoqkjzljMHUTMkwwEZw4KAwAOIRnoC2KR1muDfGVF7hGj7Cp2PezBZED-WHwONU2cpVedRlGjZJ_9_fQdQ6gb52aDei1Alf3aACBUfWgT2LmbkdteqEkhAV06BcoeWyIqAvrUVm-KU-Y9cZPgo-r1xJaT4dJgnafOc89JHS5CDEApHqjx5OT27Q74Zl6O6aB2zVwcmS5DEiDK6PjBlMgzsDi_pNuPzGBvhqf2mKSMqV0R3fJdUgT5lnMDgtoRJ6_IirKqlnQz35zlH0LZFRsrKNZZLSFCQuKFR4Y47U034-HN9jbgjnoVa7Fm5s2G4NCT-ZqYhiOc9AC8GAQ3hmTSoga4s2mOzlxLxwHi85twsIzNWE-mY_IfAC4PZHThZQEkeTzAFGSVEyvR_Vt1xTMDUemuLcr_u8GKmnys5Xoglgg_ZdQ3lzM9mwdivgYjae6II-vhZJ-AZNHNgvi83lLZGKgE09BQQD1Wnso1lH0SEAQSI81oOtNd5iNrWMm9R57OAvwuYFnotctTjiD7y6TVdjPQDjGEgqBcsFWwRgJWeGkA10XyjFQP6Zx17GQqg-LjbKPZbKpKd8Ow15KiQhz5eYLdPu1T4EmLxqNxlEC5tQz203W90HCCnVvugosnDavLIBXpbFgfwdLkUIQ00m6Hl39QQXTGwKwomJbx6W_iYIBNLHD54-X3XUaSfQX9v_uvupV8Xy77bfJHi09xrgIlU52T_7xZWc8sqN1l2DEo1VuL8RLeBQ3reG67d9Drsv12wL5fwzet3m_07i9TAqa2sQW63Awsj2NRYgykD3CaHIyA2zHSNfAb0AXfbFnfDHzmxcnJuEz_MRcYTjmkvs97BGHqnmqA1VtjCm49F_7C6QtYzB05N3nIj-aZrYHhmjt8jlyHFYfsVaCKGQJ2SVN9bl6_Cp1Jm4CuXjYEn-ekjAbl2aaXUXPpQ6TKInMNgI3YTDAOjWAU9CWEBlTXZlp9aXpS8OIW2p1WGSyiP2DKE8pT8R_tvhlEoT-Ul04bgBg7pSTkr7tTy7R6LGk0pYkSwo-YxQCyzPGBMmbJGVyI84cAZCAh5JjNiad5YVj1-9kAJItXIs8X_s0c-TT7dU55uvy6qTP-Pl4AD_Try8BdR0zAubcDz3jgL9kMDt8rYmcIMh-i7aU_c1oiaRf1cgTWCMkIzy49oxEXNPrIwuQJVMIZVV4S9MUtgLItrW0-2YK6RU6r8pE7mu2wVT5OxmFZfNUqd1sG61qX02IjYfBHOBPnSycMzR0f170tb1exURGPClAI579MIqv_UdprWdmXCSNyok9NuAwsViukgNAJVQb72s5UwrrWckJA42Mdz0JKT43n47PvC51TW2pK7-iFQp4d_Ps4btgu5WvVWWUWLzWFJ0inegmMB79IqRI6f43prAyfwcwRL8v6DwwFmW2HqvVBdGQOZoSzZI775TPPuxvgzKZ-O29CSCGA7BSWell9kTESj51Tk1HaWdDUeYvDgAh5YmvtJHki7ygI3Ey35QjLMq36H3mJ0hGz4CpIXD7so9Sfnr862o4qv3Y1TCA_RTWKhZbzigZLEjZqrwGjl5Al-X9qF-QfLFa6TekzITTKvX2BM4ZdZS95SZyZX9SNj-NfvpJ1dEsEEAWg5l8qmeoMs5QpJOPRukvPMEvMR_afIGDuEkz9BwV1DVHfrg8BZiiMe8Iux2co4DneDF-pHVCCx63XnAcJ4THXkNm7KGSKXAp0-deg0A5RCGUePuJwtkB4xPqBFglgHeZIMUrZQDvviCYhU4KNQOKxYU3_GlQBs2AgSvSkLcR5iNVMZYjRNOgl-9O8UGDLxRZWIkPYPNNDhGHhIgvwSTP9M9qbdRo_c-7rcu97L96vNXZNGoylxWuWRqX6B2fcMj1-QaHFtMC35Tnrq4BOIL5wDj_GwLLPUKf3TZOkAJkCxkCXyxH5UjP1lvATBxURe_NO3Aiuvi0ZsJll6NuNgYjNbpe8I9s2u90QzJRCB-mxxgoGgZPY8QNQZBedY792INuRU5DuBis2cYvmwD9dcgMtnebCZyPnR6yuEsXNzxWz2RW8Y_mL-JZBefUx8EguoO4u235VZmCEBUWSU1YOh5AsLjkM9jBED5SfDcyl7Shq0AaJ-YwBzR0d65Y7dc_Xj54kxCkoqXoRXAE6v75H-BCrCnQi4gBk1QVP3m0DLte5K8g6OUEr7JD-T-tQgw7SYDLafohSz3D5wtzsynEe5_WQZ4e3tXv9pV3CmxT_ouTEz1cyzDnlPccn66bT8lMhWPVhZQke4hcU7LqC1c0K6QSAa3yjRGKSHiSIoCAOgvgo2r02VQiEbiDff4u1zt_Zqf1g1Eq7Yc9muqCYdFfFoxMpx0RIyQVSCgMpmfYqwEhEXcuVVMJnY6QpHfgxixE5Mqn_hWM0LZMDFgC36d7m3MZakhRt_ugoPF6522W0kv_z8_9WPZ98pbGqW6gad6hMWkKXBfnPjK_cmA2BNoSd0puFm88XNSDtJ9086X9TxjNGO-Tk0IoL0t12Z0Q8hjeA1ecJzkL5vngXVymzMqRd4wkLM5zYZqJSKXLYu4vmTV5uE2VF1U-DSYais7RUx67xAm6A__J-ZOqfS4F81YEBL-SVzyfv-Nd__HiiuX6u04jhPg9SXGjuOH9Nel68lkE2x8uuJRHb_ZIfqw-rL-DyjR79OP9Adf72KudPEbWdMOR0F4dJmYDhRUv-SWzHSL75u9b-gfZTEHtP_atiWTjNjKwMfcQgiKuaaxReB379PCb3a-cVCCw64vErxqCVAN5uOHi-zhchmlf00dVoIZoPt1Fo5ifMTQLTrsx_TKEXHRU4PCLW8b6NrMa0z2Yg7Se5niYr-LpBLoXCyb7nMHHf1eur9XjLyBSvKUq66n-Jtj7Q-k6IHC1qp3EueZXgByAXB9Jarc250gulhQuZ9NtbBq-jHgEwHexdCR_vQOktxYpLDGUm6ZLLdIY4Uky-hI38hcxkyFbMwBtTD1JJnIKN_i8YLy9ELXHlliyf34p4zqTltzjwu5MavlwdeZ2hTNjP7nNeTDwpCSAuy_PeSK0WSva0Yz9eJ6GWt89qS7TDHVNTwHLwvyVIRX97UpGPQJIRtLjeEffoddbhO8hojAbJF7wddKMqaHkzWFsd6adm8w0ZMhr-LWf8TJl1vPaAUjmuMK0-Egye5v0lwSqVexXxmbh08kehwfucixUpwMqk6_mCDEuj5KIJIfY2xQ6Uv82_QbBIlOWr7Vem6beLg5oRRfMqge3uL6zdwlQ-vLgYj6XDql71qA1jmfCl6wTIZ3eZby021GAhCgA6-UJ_FjrSg0HTofNglD6LsNmzBJ3HZSM37ma3b5rjwW061lQ2NA9JaP0-q76toWYGhG2yHtsblrAqMhZZr_T_VHEl0YU9QbswMmMwbJocL51plIgds_hjydD_472Eh8aAF8gVHzSuxjRti9okxBl8X_xV5QQdq5I5eMy77mRv0Rf4jawfz8WUObq9smmHVORLMgYBeu-ycBbdFw3HJI-i3mtPfPSgJqS_nDlmqNQTmVzv5t65xJkU4fivvrZJeGKLzdgaqrSQh826UZRRbmPVnJWU1DgauSOuAlO_7or-IGYRq5LCaPhSK8lcylWUeUUvjCrboUc5AceCdr8emFHl7j6x-G2Db6_wQfAVveJVNq-Drye199cPN8fqUic3A5zCZg-6uSKSTqZJXdyh8kViSXMRhSaz4YR1tT9xYKERTWQT_tn4WVMxqM612QDBVsfmisyj12mgERr8In3RqLU50-p-9mDBQ46fExas_Af8LMrSJ4xyhQOSRjFySIwS-E3HuhUed8zIC5JtiiqdEkvnKWMQPWPvoAcd_lscguzrx6gaqMxIZHneU3PlWgozcTYSVmk9nzoVE7YBNgK97qWfwGro1QFXjViG3Oonz6FVfQyxs_0TkppUP1lkTN4kf1F1bzVNexeH8bNomTmrgB5QumsJx60HhaWIM5FM9gxkO-_sTUfa6vMRKB4Io8N3jU8YzVxb7DboR75wTKyBIzCjW2rKIYbHWPOGDDvT0dM6SnnOiEuyzFscGa70kg_ahu4TZAsPMR9fMPcseoK48YDQM1v3gfZucLivwlmr9IOQXV5mnxzB0a82SYxHqnohZE-oAkcZTiFwCVdnZVhNHTemPyr0kWEGpmMLQ7o1S-LdT_x6TWq8T8zXeCTq_xHWIx5CtyUgILVqLRZ3O3Gw0UYxC9RXOu2byGWw0yrEongZunKt5uyW_GCd42FLSxnnzAHXJEKKYEWSbsEp-QgCiMuyXPLo6YS2Gz2WyxNDxEWZtnoRX8VFmBo7UfYhDwoBGkVppBnDfj2l67eTlpfTtvZlo5_rkf7hCbv10qwHuECuDYxM9_-b3FpIufGvJL_os-cPKbO06ND2d3_udVvI2Q7TzlLnsKOEWAtDO1UpFKWcX6F3F4lyStHD-Vius4iWSk742jb_Bl19rJwS5H0O4YoxDqFisSwo13VAamgY_gzlyOWFsirnDNt8sclv-9vkaqh73pJV82T6dAYGm0mhbdILf5CFVj4fUagdz8TG2KO8dndr7dVrSLgfRESs3gDinufnRA_xm7TVoZPlIkbdkFscJvR29xqmPDWVJXAC0UsUSQSATjjkouJZExsnAonKELoDx_XNGTC7ujJgNxs_cpKPN9GHZ3eaUl5WUXAtdwYxNP5qgz0oQ52H91ssqmY1mPMavSQpwNe5dOgED63PhztGUDFt2MGV11sOKNn3aCwSuaBSVYznmGFX9fIl2-7XQqnGKOAka5J5wZzVi5VtlaO018Uni__0sGK6t5vr4BL2qXlzgcI9brmXbMPZ4ll_JuLH6KFPAl0AGzqEzeSAI_f7DEedzFVwddaXqq7-mmbexhkwSXjQLndC_80_RjaFwVMdeMwkEQIRywqH39EJGprvU8vxv_1OHGllfvNcnZZlhm8_gpexktTruyFGqtsspP_Jqz5zQvzYaqCWI08Wm8j9VbLlBevQtDKZX1ORr7Vi7Zo_aeXDnuEH7M0XaperXwRz2Af6uTklPKrmPlyrBBz7AhvSZvBIQrl_ARFzNFV1fEswR8KNAOeUytt1HwCSYF0TTjwmalYFZwA_AXghl79ekhLwIv-64xaKAWIpgSMryabS-79A9svLTq-cGlu-wZb766fWPKUtGz7fT8uJL2D468S5j2fMlakoswvvy7Rx0997aanq3oW6UWuA0nkQNz17Wg9Q3pX4zZ-pZzMJ0qumKyKXOZwbwdQQQ8iPF7_lo6u5llHNY5W8oVVOls4jtiEBs4mtKt7dkbzXFwAEZSQTmWveCvxvNw7ali47pSZFYnWSa1CIRnrAJaGIPuWvxXEW4q9jhXaYU909GaIeupBNvd3wtHrAX53IEZ5uBYXfkhNPNKh9uVA_-UFbg7_oWbL3ppWdSOlVCoxbjT7nFnvSWnQLGv027kfp-BRDNbChqjOQPLHJ2FRWaSQby6ibJX2yG_Iaaxg4_M_Z7H4jqsEriJYgo7PJh17cxbhVB6HkPhzUskbE-J40eLmFzQX5cocRbajCjpLjWG9nK6mP-eDpNV2JE1bfujnYB5qY4_JzRAx2B_TXANsGFGY2630HknVVD-OIpeSLLqHfi3xoBc8qlNpBenU-rkBuQInD0FYBW-Lhw6HElX7hk3-KAkWg8a1_TQuzWbDCmcPocUy9VQK9lNW4tsWooK5mzT7tJa46OWStRD3OEDaTdoosOeN1V7bfJ78x48ZbVvD4xs4g73Kw_mLFJStao-7Qsy_l-1F-rKqCoxcAYQrjx0nSxlXwj1V1YJ4f13Wb2E6hLebZow1B8R-R0UZdcTAaCErWnwCvU5RjDnMzrP6B5ZnFh22InsX6F_GtPdJMNxwgdfTvWrNoQPTkm1wrjP1H9H5e-066dfl4bFecWxM8o6etPWCF3cGDpfIsnxVsnMEmFDyx8t5nVFBrmZK8-WrVEUQRqeYec_rbwkMa9ZlmHk5sqjh1hWH9Rib1CloT9EU9ttjFmdDkvTJJ_vXmkt6kIF7R2eu8H7z976w2zDpfdhKt9j4BuAmMs8lrJvor9l23XwCUaFM5qS6qkEh_5Mpu6sEDFofm2GhiBm5JvX5dVO8fXNPH3NvlbqnErwqhXb_si6E-EBIYdGZxViYaaGaG0doXTwsFVRus9DYdKddNrzZnGetVZDlpLD-dJYffzQ0k_dsggJYjpTP7474ascZ0phL9XmPZjUeNGFl8kg3jWLuy6hRxDIk8vN2lZuCsifPs840l4Pmt9NSDicL1wtinZvKaXMXnJLvzXFk3tRb_K9GA6esuT_HEkvQKwlXYIBQTK9MVl9DdOFccVIEzzLhSNuLZZeOhPpbdxhEO0VJwnUQ70mNz3gtAtd5a1iYpr73BmStdjbaaiuVGkFx0qAKiYHlTENKoP92wWmHmO__qfBWBxJtpy7ECOglPxGIxGJO1ZtH6f7Y1RTfIYF7Glq_cN5oDj1qbo4d2yHz2cnDdFZu4rWPtrgUFtHuSApFWqqxqVjUGuxvFT4bRJ4GI4ssnTzah0aA46eW80V9jZYyyF5K0GWcZzjwwFnEfWokNnK2XCPcCUWCwZtFsHlgfcGpm4wY2I3TxexgRk_F67A0A5G0Q09VvXoK0YRQqD6o25JtlhV_A6rMMQ0ujF6fPZLtyaLj3PjRB4j5dIU8vuFW1F030O36zOqawMj3s0i57aRLNH7BsX1YWZA_Jg0Nti9Le7nxwMrM7lJBK1wEBQ763DAuimDlwgpLearMUwW2R6fs_cdLEv4rmEpclGSzeMdqnXZFGW9PsEVMRSbrtXpvXiJVfzNAxG3p2JMv_sSZNOLxJaBGdDkrXBonrJ1rM_jinuj__eHND36UaYJnhfLwEnGcrCSHujOaA2wCNi1GFgvqO4jB_kAgtNWRFheSQwrnB0QtYhvco1qbH78WWg2Ve3Z3vifYl8quM9m30sqi-5CwLHEDtSGGy0A6g7HSWubI8S7oqYMvSjdo4Jibh_WOPPhhDTLHXOFjINzdlhRrDxJYRF6MRRRDSKiAuABtxkyW7JkXA308bqoLFutlZhYeLPeolTvNndpPJYl70uICqPDqlTG97WxoZetTlRDJlXDImvwbpuky8JtSaUZJwN1EUN2p7H4V31akr-fvSKqxbUTBIA-MZ4xzrDTTQyBG6ZVjJJbuk0DA_RWXH1YqheIRyyKlAcQp-SUeHwdt1AHgw2be0VJVbYnl5_WzHVP-95UdFG4fe_EhKB5ddQ6oUb4JSxXAPytDx_UT4I_YDpNNZbR7kz2i8kHbT79uMfiINWDf6odoPVtVhsAk8H_JQfdXNzJFDlqDlr4XR8mI5ZDnqblf1FiwPOARkETUq_hZKWLWMVTmNjyOeNg6_fFOm8Hb_wTbAwgh5D0WuUxd5w2TyeBuqiZzt2NotJuTzGbVoF5OX4dMmr_y87WpVU6KhosEgJNy87bfTzDDEHyd58RZdLER_MKIDT5EwR_NxedXDg6Inw64omupaf-xA0lOvnvJtwWQKtZQhfj2tQLeuSmHuQtRt4J0LWYlmXMxhTqob3l_gS8MVh3wdP2Xo26hHSDdHLj6L2v2Gz0NTYBVrtQAu-3MLB-bnc_Ql0A4AZk9cGMAA0nQy465z_UeGtUPIU4lYD0949vRl775R44A0F8KWnrZwmX0Sc1xXZ2w7i2AgiTlkliZ2JmF2a9EbpA7IoYkWD5hIfz2cSVsK7AHLIIYUZrV069yUBB_3LYIT7as3zqxj71WffQpg8R6Zl7MnQzgzasq7e_1OlfDMibb3NG6UZzadSht1eeWvqm5G_bUzg0JDjbz008_IvCJJif1wWf9YG3P8CPS1iSBpu16JO0GkGH8z1rWOrBDFSlFbxfajs7fLDRLVTC3Cf4YmEjHbf8cP5nrtgygsjXtKEwxR_fwKtZeAj7VExrJh6XKrivL0BB3Fd1OQcHHdGztHRGxVs9CxsdO68bgNf8bpNERuqgTmgG0h-NxG5HNcn7nrF-FqaxTbgZlKxiAFT0AxS9cqstzuSydBgPg3lxA6pJbXFzLPupv1pvsDfZ9-3dwv_ITJBCOEwq6AIGQ9I4iQyITSsDc05FL67tiW55_E4OMFO3eqpYy830di-79CQuqey6w46wRTfQTX4oPtn34fydM2GwUNh8OHQEAy_o7kYyQrHgrAy10cep2c957GzWQ8_rIbN4Xt8y7LZLLMe1z9kTJTz0EYPhjcS53GasqnGjWRMyv9rHAVHWBh411KKdTQv9bDsotgPPnG71E9MS_phhKeFRVk6d84pU-4SGqwCmPoOt2IZTi2-nMQj49q7HOhcHOwOu8INAPBQOcCbJHyNTZRFEKRelsyyTkzTlbQCqiQhilfNI4HnKsnz6B_6g0g__aEOkvJdZ75JaTmJmkHXUgfhk4IGkcbZETwpv7FXBGQ2xuCLE5yCRfhYq1Myxqxc94Qj6SRdZKJaWfWRS4J-G3m0N7zUBHuSnAClE9NzQsqdON4RJmNjLpKpkBiKY5PRqB9nV9AT4h2glVRI7NUvJrsxC1k1gjZkMKaQjEWtYSW_yWar5V9XZmyt-5snPin-yWk5PP-J1deR2Jeb7mFwWrSn2o_bTPxB7lwh2ngjP2oTzCrG47tzY3D-GBkLoIO_sOSZ43Wkmb-WSnAFHKESpEdXSJnYj7Tf9Im5f3tvr5leooZAyaVH0HT1XUduaz6vrJ-D6epqd290MTS4Mw2zCUW5td7ATTaMKRxBY3svxlVllcs3Nl7lTSiNOmU7WZxMnSSjJrBFQzZrC0OZEtvMk7jfO4aJCwQKzM5wdfTTpOB54rsuwcrqASoeO8A1DAt_xehVOweHvZsgda1TVdr8MSBEd8emVTRqTv_TP0F3RtpKAVhm-wAm5JqrUMxsMcj7ohcVrL0u_PSCMIML3Cs_to2JowiPwbZDyn8l3PhkbpIlmPTySNuFpPL-dFUBVpaQsYJlc_vasYJ0l0BWNTrps_7pz-376gR78hT6cSqgEGX1zLTm1B3xTuBMBvvsAy69ogatoxRT4rsmk5LdlUbHbtuVNsz-CljeaYU3byxhuL_R9tXUtbuGFDSbZr4teiWDu0Um8SIQ8x900A5DjybEc3eQ6KAGWa0CK6Y1EMYaA21kmqnLioCtC1zjS1lkYizXXmZaSUs3CaexCCsQ7aaM9cKynWbD6ebHPj2oZ9t2IhsN0DlcP2YZGKasSiY6zokut0HN-VuxTWUNAwjGZxJ4q7pHzAigvDWwhhO5r1ApPraRJuF3C_1xh44AYo436SK0y_7l0-Ynq107Kz6MYQlaSiPO3fyAIPoPPXDQShq-bg3Ke-srr_SFoFJEMpT4cMcEMjcl6ZDtoleIXpF1gOzS25iCgFSp0_KtydH9IwCAQKasOTqr3jpLRFHGWBcnW2ZRvWUmVo9M84D3Ik58oWeb72ha_mVtshXj3TYQJd-qaiiCSQIvN7b45d-NOdxfyS1fx7hRhQQObhqdWpxH8iOG6DOQ9Nn3rfN-piaG_CsA2gt6aeNkLdlQbTzM6X11Uk3DRw-uVBESXHOW8FPvbpdvWrWBsCtK-92h1X32ErirR2yH9ECAhdhUUmXjCN2O3BovVphrGN-77zii4MDnDtwhuGA1xjjQanem1FRpoZTexUw3pBl7Tf9fbssEVU_a17ToRgi_veS_-lvD_xPfh6I3u0rnetNKYgQ3N0CKfb8sB6z1kZ_T-K2ty_h8uvp12EPLWRUYb5AOXcroH68DOv0rg6ZMdh1w1KELc55tjZ-o_159aV931a0KEBs0ln-kM_vLv-BQp7d6H2i91OZN1gSyFDpMOEQWA53bUpCX7s9gC3m_2qBordgD3Dm_2yZIw_YJymWDLWaKTgZ7GcutYe8USDMr5mHVcNVDtHFeNbj1HnvsTyBN7NN893cOt7255YAPWjl5YqkJc349wGGCyNP-8tAIlwYKo3iUM2dTpHwb69AmUEhc50eYoaIdW8Tg8IyGB81ZL8t3tCOIW1i0PDcKndn-JK-SJa_ZU7d4QormJ1Ezo9ctBhhAYtXD1c3veBU_zlwOcYETLq4flCkuFQAiUZcMIVbFgvrSQyorZ-rn2GqDFLifIumVYUX1gPiqupTkK1pSkWLfHuc0dBPNdR0aSxsM-hW_D3FlvAK8AtJ5eMT-HowxvyCvh6vVNYdgJbh1Cu53-FYbXcQesXHVbhRfSyZx9G5Q_eTjZv6gbRIoIIQhEaX2nUnRjojySZWS5YaQlzB-GuAj2CfacZac4BSXNCqvmHklFT60UMe8UmYHPPlsFQIvNeYrB2st11DXP0eRYNBjjt1iRzLG0FVhYQJi-kpqSE5Ty0tPSVpS_rL55yVC3N4BoWY3YO536iUEWRezBcKuXXsU8kH7K0GSqeIwNMZhXfS1khP9rlDVCFP_ydFZnti6FT_bt7qnpuneqwdeXlC9MUv7odo8he4RAlCMHr0Ff2l46G0f7TiXqNAFHQOLh4-Th-VtTRrlfmnLKLQ9FACusgs05WIZN64l7bdFJrO7Yrsp_OYh_oAXzAzrY09cYdUMxgkrsVvFEU2xjhirjyonbcG8EgBBG8PJfZJLk2BhnvAFmC78VN75FrHot5xRclRyda7bJM4J0f5N5cIN9Mx9NwW1CpgAWmmikG_sktm0DaBvvLkVrr574RxVUEMAK7OyuUTDX0fZhUoFyNG24d1BFQLmb6chL_5xQLe0vD_7f4LA8h6RsuClySzvGLqKkaGzrzm-43ZjptFWXsawsWESmoCps2Q8Bq_tskeO2XipA5yO6zyXkYPa9K1UCx3mLp6ecq8TsNQeNQwLcAxRSBtRaitJdkorNqX2y3SBUZ4LPRYu_j9hICFHuWXYawhMDFmnslvOGfHbGt5R5ClhNsu8WPq6bV4crc4RpYj7mejXy1HwNyOKAxVZzyxsr0TTrhRKzchPdrlDpwGslSrqRBvq1ivS29nGoa6FiCmJfd5oBLg0wvxDymaFrHSdIhw4hb9gkeJLN8xkGLlBI_cafhJYzY9ZspYMvnY1N9N8lvg_81vGCkztmcwQR7ZklizTS3qdFOJyaXUwAR9ONuY1upd24nawFk2ETdY_HjBRLix8D5hLE5jyjRQlHGACt9eMoVh8x7yVGbrnUhtIXE4TwIR-4yFu4HX6qUwa06nqVV_TznP7e5Q2QfPFkA31V6h-1hbH6LPNnTPMLoYJIsMiZVJHgNG9waxTaOaF8uZd5eh4mPqtNixp3u5flLoJl9gFGPw_HPk4JjTxdqrduhOG5Gt98V-MJtRgV_Fb-mLXAAze4Y2NBjznDjuTmbYU_Qx8jzrSeM-_gthHsJQVmuWdOTRSAukMLqkG8WlQsww9CJSffHDvRTSf0ObZPUIWo0AcH9Uy0T5rD7S0BdydJ5hZMIPdBTz-zqWBZV30--xlEgDGJzjIKeQi-1yOHeQbHPhbuLVuUdHSfhGeV1YEZjAT2bss8M083dK6eK2IVgEcivpN4ppf1COSrJBkz99tvygkWEoost3QHd5jNXsB7rjnt3hBUg5w_I6ZeDyca62oQhNGL3UwuA3XQrSlNe1nCDcsylJrqudq7VSVgLRcv1HCHR1qv0Yoo59cYDZQxuxPPlWjrpqhHrS_ibQ2xwiK5DjZnBnu_iD3sVjjMTqe3FWI6-iBBZAadUpgQ5ZJmuOfVQ49WwCgXgH4kOXQzY2jJGFNLOKm9DpxNnulQ3jKLWwoG9KlJJw1VINq1aW--U2ebOMUK01u4BHu12gkgYvxmbqv-MPSwpvsB4mqxhhsdMW4fUHIyEt2b5MbRTms-DtC1F90jLNh393_kXDGTl2-yngOK5CO7rO280sEYAL5zaTwGFhWWe5dnPh_T9PQ3tYtjatHG4Fu7msTeodkIDLFA20S5a8wHifEzoZwWeeQmFedGKrsuZ46MCJYitX2tWZYHMFX77yFpfbXsG_jFQ6Wa9GNqK0gPRueKF-ayINg9j4YmnZj8r6vMeXnv4k3GIMzA9JstCY_OO6GFROtu2dcAyAo4A1dcLr5NPafcRG6kvs6O5pKgleB8qgnP91rPOQYuNhSz06Gb8geb69U4srQ6W65dVsRFMJ01TfWqK8jBSwv5jM2sdG4HMhwtw638zsjgl_N_1onYv_JQDFJOCt7QD_uBfHtOo96dcYfKN1jnmF4HsL4b3VprJtGm0aM3a7BV1wXsUsHEuSilNCUJnBq8ZIKpQ9i2cOK3bL7TcYNPal3NkxsZ-27MZwq62HRUw9aE1zkUbYiMMzpP126Al7ecNPBa9ERbGzazYMhcFw9fKpY-ewgyHlnpLMunHxjDSLnyjPOwi9j0J_iSupiD7l0YMeh46Gy4zh5pwFrsD6C-t573mMRzWOi3QHQjyS8kStIVeP52WT4gPsP8d3yyInYRlZvbIXHP5B2au2WEQFGuLju4TNov02-H0c84AzRMFhGxeoVdYdPXjMR2nvULokSx11L5S_AzicuJb6J-qg9kAoUqhqD3QJw5Na_n5pf-HNEEYy9Ax7uuID_2n51DVEWy84K9xk9Z-j12iqr-F4CYJxvgRz68vSwEzvxpIt_AzECyoEj3E935dHdMs3GreSdnAZonWmJZKCLpfzs-stH9bX1KdprIxsYGwSEcDRAKf63D4NoCK2jrYcCgFv_tett4rFVFukTe5rjR8b8sphZGRB9lJ3yuKAxIOskDMWonPPGovmUMSsn3EoK4FBl-G6C-qrUjPipj8_m7c3NO5UJ7xmcXUtRXCy8DaSXtEG65hB-ww0Nsg_Fw8u5MOtCuAkyJ9ROpzQDxWHFon1VHiJhhlSsdJmSy4PqxqBPrpLuG70nlgWIlekVICbl1izq5DVhX3vKNHCuGsRKfk1WFrx9g4VyP1PcoNGVe3vzk91giHShjeYURhCkKsOnN3e1UEpGbDmPuPy1N5cuyg4vwwCK5L5yxeyRhcukBD9YQ4Bm_uvhRdIDDrSLERwlP0ARAbo0X76E_zDM6wzC4kWOQyRDFkw5lghWZ0RRSxQWly1VAz3GtqOoQBjkhgX1ew5zHaAQmmaUl9FcNEo9xHiOMmbC4iR-b1CFG91kL_hHKl6FPIllOkKuEqbOcisxTWv0p2yJYWYqmiYqUvHQjuGdCRXXWYsF0OumfTTMR84t5IqLzgG2Qz9Y8mkv1-OXnZVzvQYsBuvVOZm2JaXW3W26ZnAOC35jryy1WQfCq-aLjF452S8jI4NizsfSGDmqzJlutFc5lHqTCVABxVHN3NwQpPCmmeswDRzk79Nn1SDIfGxa7sMWqEi_GS3HYjtpvTnWfUoS62CBYsAk69Xng9kQCP_Fz_--uEQmmg1sgKK4Q4bPVcqipyjvupJY95dwQojNN1iarZGmx7ZxyuA631QOKp2hXuG8mjwVX56cyj4iL-xf2tT168D7tp26hWUCG8q4JDmZeJlKqMYjcAqXh9vctueoIraCmZL6rYgZQvP6Q_5ScJcEjpqaMUl3t6cBL8tBAp80z4lV8x-VrUKkD6vWwtvQkF0l9y5fikpLbPWIuUZmMSjSwHqxfmt47ac9fxa_RGtiJNpIroGNJrUEcfHWhnGGeztt_9--_SJf78gnxcASsKYTYvpEiHSTxcC60B8AUHB5aimk0tVywjl_fjIC-wm-MbBvDOA0Ymj1OgGgIHYFGsadR-9mV7h0EhwwI0M1nTeHxTHDG57Y1wn1drtR53ovrgj51fW_oM9SE7vDQ74Lp_5TrC0zFFw_5eTCK6xpIhWwnQxnyD54jW_8JOJDBRZPMCs4NndLSKqcrariUmxTZsFXK_C7ER5_n_w8m13fDZi2H0_TmbLhKK6iB-R5kn6UJg-9xtD0nfEI8FC3biZFh9Q-Q_0D6-JI-fbf3buT0tGyVGITrFfPFNvXyzdjb_7Y98KSzRZK9UAhWs9Iv99s_isI0NpdKAP9jfMfjTot-rUHpxCsgAHK5f5Yu9BP7cpiN12zaOq30A_Pch9aKOBoLAjJFrZHSriAl4h6rS28pypbbCYIj3pv5Ni4LBILzRDAdNGjo9PoiUKn_LMdRolyiDCEWNJ9GrhNpwmDtcM2NbCVSZC-_R-wb4S1uOhJuHue4wWEZFdl963UT_GU6iguT-O0-GjlUKExEM6itN_2hFAj_Rta5oyJ9rfBtgqVb2UKn-KGJ0MSWJQwYiihwwfb7k3T_vO99--GWgZoGJEZv-5_KhAlr8KYBNbi7GN7yRnRjREmKc0Hr0JK7MZQrOtZZI0ZGIIsQeBDpz1OAb70vlS6uqHrPVx7baZUn6mKqprun5o0xmZbbCinJa-cKZw6ClYicdnoi7gr_9c27lrewQHLEPWeUaWviTNmgo1L57IadHaIgStJm8_vY31J81XIUfGVmqB7P5Ar_zFwMGQDnCGp1RbkH_FxiGKc5aKQNu6m8pOvdNIjX_Y9BA4I98a0XuExBsPJbe1SmU0VRzF8wvLQtq7SneJcHg1IOnx2EHv0sy1WO_eYGtSgMHsnXoAAf4sgDM_So5Nhqw5Xf9THNQs45tTcxQ6TYwiNehjOazR8KAOmYJw4F571wI3kUDPn1L7NlB0_4KeGlaItMIPkL22yYWLkIZBeoU5i0mhjhj_etzWL2oLGZMHhNl_7ijtVj7NuUWvp06hyn6Rj98JLo79NCUEe3m9jtNZVKb6yITE7Y02CKV4-vApqJw77GAeYiTRNH2u_2RJSw6JuPIdrI-z1QXWyxNuBcPJnZW8bUkYfPcO5zqQuWa2nYqm_bsTEmU2Yl8TM2G3Zn29Pq4vy3kC6OzujgVis0LTeBj_JgqjHnMaVnkgOq_wJoT2f-vo5_yw59ZlAlRNj_BQyuQPl-s0q-1N7bZsU5HiISz9guUlmYZKhZKjWjZyW3sBXRXQXa518lN3WojgXUB8GJUT7yTMTSUqyljcF9Qf9H_Wq8yznRrEY2rfRCEulkVrtB45JXZz_l4YWOfd5Kro6yBKSe1q59gjxcCtFiuZb_rIxQU00V5ZcClWQ7S6qccJOZ0lY0-vSIr4Xo-YDI4fYqNh5GjsDNBZY0vePX5MskOysp_qRptzJSf9jQzvT1PV8nKpRiZr23Jtn0tCvrmeTmROS3Twp4XWz8lOLQboBzGGTEXhv91sof5hSdQGHNgb3WiDx0dAy1gNgyZFpId8HkbQx6GCjvSYfy_9Uyy5CF7SAq_4j4sTOb0Q_bsV7yC0OEWvGumm6hg4Mm9XVB0FV_7DWUZsAWRgo64iuGZRIDIFjMKNGTkXxcmX9SmMs8T87AHot-1lmz-XWnka2r-nsBwYAPBawvb8g5OBxNs79R07SUHBv31s8UC45I3MjrSkowykKEe-beca1DlWM9pY2WTz6qvHIyz7DNGw0kCNda75HolTP0-6b5Tg6hq47CJ9Nsy-mdWeZgOtbFHzFnYacpUfpvvMOKsnmjKZMXyOyXhMDXV90WS0GlvBWdvF03BhTqKRe9cE9dhrtmmtEcNEn8JJbnyEBSp30VQglFlkiDmagELCBFSFA9BIVilSyP9NntHchIQq7s3sMLWMNGluDTOek1A4qS_BuLB3B4NTJ33vnpNjbEj7rCPgdpLha0Q49iaBqnt9EsJmuUXrnW3cT2wLJVQad84hnDN-Iq1-zn-73teEzZiI5_RkPayIBBe01ljNcSEVr9kiop4B8PNeZsb0jkiiIVAUZ7LHEAuWHFKFQVqKuivhrgkWZ9-_l0jH0HsXmW17RQ9zm9ICBQs-TxtCRdabgYJEATc4tMi9IQVAwWCmIKbzakP7sNgL7nn-i-Ompfzq88IvUkKgDd_2oAZRlF9VxUgZfvKPLC2m3rBBju--w45TSbjiS4ZqINBvkuujxt4gRlPZN8-OrNCRnLrA7eNphTl4sdPPcNiym_GOPb2kGSoVYbLUoeOaF6TNr1xOwKnXAIm-KcdIwNb8JC2TcklYOR0jUrZt_kFi90D1P9dXuhCoxr2VK-zsMmRzVhKWfU298EMHU8nKQ9ESqx28HTZtiC0eMNandALPAKEebpnxKeuKKL6sCOgZ7WWHGe1WDrPS-kG9CVzE1vuM4R95XhSEV_DwEK5nHupA2egRK1aGYdgZ7-gGhU2jaK8JFu70LORq_EciMjsi3iU3GZICOHbyuYwUNjlkwVjPfqMWCRy-FhVE-PNvHbLImRU8s_QIhZ5msqGHcZrMqvixCR0Rbw4UouzwKIsLo3hQJKEO_h1ebJDQSKr5klgt7w7S-Qel7Is5yWNOoRoSJYtpvW5Lg6gIHigelOcKRQIaTFTf5GoqDUh-v63xzBHMZYuVDnoPalg3L40AxgnDodPNvBV6SKlAlYdHrEHndHRW5xUhxXbr3zc2BvcS-0t6FCl2ZRKU-WM6Eboslu8RPUehiJqSPNYDLK0iLshx4wIQcikiz47RtwxkK8uKrEa84rAlqACsMUh6dF99G0UXjbDhA6mhUCbTRWoSCmnEbXv_LkSERi-RhqH70nLeI1_GSH9kbk-O1kU0Ccl8ptUeXsrDgvj_MVS4Tbbc9CVrsIzMRtnG4i0dkdYkqrrWjQiIBGyPzT-jtNAVK4qCl-LwFEEnRnMxdZ6MTv8cXuNdUwpmQl37rN2nt-i_lXuZMaLNHqrADmZ2qHw67m1FvZWJzGS5einK-_o3-iSwaIJy4hQIfhs-YmdHf2Wr4BHRm98W-CGk7jro7zH-xSEx-9oA2BGePUvz_O6EI_k-hjG69h6x34cdSSFAKRQ008Q4Ygq5wafuihKOmQfSAz6aI44v6GPQYWzqzRmcR9R7NByl_1MDRtq09cd1E-DBKOcqhXzH4ijGGUhivD2hWhQQC1ZXw99nQ84Ae1EQFQSi3GNjNjz4JKg6UAlIISthNzkXGLjkzItJyRDqxPIlj1sH8UZoiyl0qFzjvySl0beFOuVSz3pcDCMtNduTubIzkz-6Hwniqq6Sp3RVfEJdpUwCz0FSCSXULtELd-C3tqAp01xVPIpzaowLxbA2VJez9JVpVeVmpUiGKJ5PXW_Bv5Dl3m0wkJcTxHo4A1V-hmZzzpjYeiX6Yn3Y0cTJjioAVoGJNhuGqyRHTG9VrZYWmsc0PNdDmBIclVl_LVSnBjan6ncwizvRnC87YcxFVbVUt0pj0TBEbtdMnYv4f710Re7he1itrcICiyk5OWi5W0I28eEGetlGHd3G90CM9lQavrLtGKRcxRvTzsvhM36SwsZGicu9tbhtgEHP8imJlr41hz2FbFzxddAs-cs0MS_EcFsMzDZLN3b7jBGXN8VA9EBwL2OpiLuMLsGn9-w19bWMImNI7OgTmyQljYsZYzIXsHlGTkE1-3i-NrbcKcm2tQj8l3degs7Ap3ZL6PjAwnsB74zHhPGzso-yKipSwy4ycXDOOHgAxY1Jn2zziH3iUyLuVTXf65LQ6c_NmUoMoakjksNhNU1ZWyQyw--lkVOiNeRHLn5nmjK5t0WLe9CF57tAf2Q9M61pJicTj9w-xjWcJfwCI5rzYMlWkOVMJsFGia4bg9tkVHmukjdA1ACAwHGuoKYekNdUcF7h2ikpaAYzgU28YR4dE5oW9x9F7kIvoN2vsvLMu0cE5JY4szBkYVryXyXxMnVfUEp-InWb9cltnzFlkPJ46jYFsIBBEWGxHmIFOAGB9C0RzDBU_MtvOK5DuJqUME4KUU0xUwipRAaK5fP3M60wJULQg_BwzDkjtFpt-KkTD_IvAEVu6iJGry198RZCU4pwhi7HC7AbzzbHMFuypZys2-ygodYhIHE6ypv0jMZlvALuL6h12JjFJHOuWfsjz7NWgsz5wMI-mzvcssmS8em4hG2dnMY2JLjOsnv9omUdpT9HQuE3XHc1ooX4U8gzJ2OVZoDfAz2WnK_SAPSGnjYwBhqUdu9H29G9Sc0eHDsKbu63wS249O5JAVJSHPZiFv5xw-AM_wGWif23ONmkdRmZwuk_PiwoPy6BcvODmMYxGIr7Zq68f5Qkoxm_dHrOGUd55Az8ziOsp2F_CZ1kAqbqJiBqTSEpzVDenwma39oe0rMc9Q--3jzsgjoSbll9eWbuDBbdsZMbunpBoPsI9t2zmk4EheCoou6koi-CzJA2HkqZlnYpQ55AUh3ZsXTQfWH4AWrJRDe07oXv-VVciwR_Pl3TOr3Ju9O3x0qkDRLjSLvLPmXjzxRqHm52n3_CmRLJ8oc6ISXHijPIR5kSuJ79yxjBDbSm6anLHhOiaAXL7pfCPsUocQS3_3bFyGkobpm2VN_kRgv5B1lhfN4PKlVYhccR1NSMXJ7KlO8rN-fsl_8L_lCawh9PSgu9gI0NsaBcZxiHMJxGLo0auChFwWSNw09m7lhrYst35PXLtkA1MP6sdKTMwpqngg6CWq2r22A8v32zYGd_tPD3dLT-k96x15rXbYqnIa9RlOvWrCf9mb8FrKWJDfUapHlEo4CcwrPWS7KJ9KFFmVLte1nwwmsFW6qrycfvUb6Gd5MAklMmYeGVpEecEZo-caXPtUVv8EsitkymVhIsyCVH-m7vRgV626IVZXOovNH_F8ZbuWAtYQ8JwOXVktCYkMBHqLFbG3OVmXuhRuJYx1skJgiDFgftdwJ_qROhHNYgiYBO5n9piG9XWsgvHI7js8hZbCh3ouY5rOI2_XvRp-NNEQ9prbIKJztIk6AcDYlWe_J04DoRuRoZRn_Sdfe22af9t2t0pyrECxEFu9YO00zxjWHn5JmSF4IBYsnCt-P57v_bVuBzBau956Hryw7EuDRtHDmp29kCB1IgjmaeLkAcXb7kPoLfv-bWHd9soQq1vjRAJKNq4SHe9QQhkqZNMFHfIb2p7Cq0mC5ASR2M6Q1HT7ayptfQW16zXGDrXM_IWBa3SneVvJpEzKzTFU_8Yut6r69-FA3Bc-TY1BPW_qAoeyXlbPJdXwN0L08GRMbGiA9UOAIZBHVHKdK5-dZ8OKAV8SP7qgRYphwwuu0qaTufamTK1Jp-JRYvoyiP42sBtrSCWWq22oc90KwuDZJsgWf3uqgmx49PsEs0yS21NNMdTxeEpuhCUH_yUvHxOYNunpAOP46MuORDzaxZPfqvudNIJ4WqoHOGES5ODWMmNtV-UGTLy-3VGocupALS92kJApOwHNDFGbv8yyTTDKWPKOSBhzcQiYDqLCmMINespVq_wgMZpHkQVeBoeFvrOYk3G0F8fKKPJaO2rMs2YA-3Hf6XN7pbfRyF1F7gIEtybWumIxtzC6fY0rppWFps-yPB7sU7D8JJIEU_kE4EtRWdNyfo9ZZgIVOjRE1Y4-0NygMLAnBICgBjy1xGS22tlzLwJ-pcxrLV2AMBnHu9mp2JgypQ0tfUVcIdm6_luQ-vTV_61uHW0hBmTA9vJosCems4vuNEuC6eL_km3hvCGEsGqaTJbE5PQYzxBsj-b2QW8lHKuJKtSA7hBh0KqYxDh3WbI1gXnHXEfVGNfYIc0FwOxm5dxx_jySpE1Q4wVA6h8-Vj5rPR7U4ZX-LrzKl4OxDb8t3f2IHO_GQjojAiJVoE3Ar5c_KMYh85lmaNcOcP9WsbXJsXip3dnVvDlHNCEXgYR4b4Mp7t9KR4xjj8io96yjvJwpQcv084c5luoFFC_Hp-7LVPiAiMbqaEf0Q2fOJhnGPEA2TF2Cxy-u225ehvGTpO3xmsMjxDRvj1YOhEOZV4Uu5TbS5MtFkpAk2I7L-yd7DJmEYDB37smM0Ah0g9zWIEbBLe_KoQQ7WD_xILKyllE8i5eN5sJXcf7LtiXE7tZam4NB9FyjWuYx9f1ErPteLh29K3tv-E4Foz7a84_p9DF1UXJJrnzhbt7LCoa0-SFsG6KXPjQ0iHcqrnTzMBbm484ANZC8TzJs0OJ3feADxjzIdp74AkQ10VHZvpQjkcNJ3PwXq15RU2RBTqTUn-ROv-6GqS20Mw5vhDoUx9RGQbuo_bohNxaWHXCI_po_0MTDCKVEQmsbShZWMxQfg7Rbqk-GZAqubsvPtTeeymvk47iptWOxUZ6aMVkBnKlDDmyXPNuC0gFLGSMEJVbg-5HVOWUiwvm5JhU-aqTLysYX6e6Rm0-ynXszGkrzNKuDzweF3tp9L_aHcYSgFX5Qu4mR-vHt0-dVIDVBt8fQMmRkDNWLJ3v_y57rEJ9j64ZeOWnK1rdRu9D-i1F6lVH-_rR-6718CeUDvCZe5adz1Fe4GHEz5My783CNXlwD_6VubqgBYIMYC7WEHBaO9XqamKPd2JAkNVT0K4q__G0xZT0Domeqny6CndhZyX19AaOtlzpgXyU2g9nOPDP8_jE36i6h_IihisoMwJeI9sIsHwcal1KsasicnNeuw5KLaq7rkXv5kyvIa8MoaZ-YnBra0gk8cAuU3DyyjPQpUkgEzlOBp3VhV4Eeil8pzOISsb0sQ4NUYIEzDJzQRSsiQ2X_asc5I3TW5flmq61qLqGdnk35EN45_3TgPzV6l9tYVnrdqum0jlYh-xHVH6VsZJN-R2YBkgBZ8wXYUcni-w0pj6A9fGKELCWqZFVJVPjdEvOsdRVqNAKYfs23358SlyWqVlAQHagC8L_fIFpAKm1OsYVOHdLXh1MuQ-beupU3oTHCpH8m1kyIugLqJZ4PPMt-aS3zupDs0X5nVYBEUE_1SvD8DU-NDyAFaPP__Riqgc1q5Pmcs7KywP5Mi6gtOBhatqHqN_nqdPili1xo0pLhPBRY-WuZC0w8JUdYJsPQ4b3-LLERMquxkGd0vTONLZ5eIYpZujfhUcyhmHNo-cfx1xPFNBj6k36Mi8iEGAh5A7HIw5yAr5Y2LYWxlCAeB8Xpx5qGwvMOlju14kcWZGCWXalN79t6OM_MP9Q5noETdvAVWlaFnCrrSPQ8APd4de6sr3BL91eo-mKwlQ2ju4FZwzaxhUi158bRoVCqw__f4WQAoTh_YTx9H39FTzvuDfKYPGNxCLo4q6lTEZXhCpkHBUcbDP7Uu3yuSyM5WRiPbp1ik8cM9l7rIHZdWQSlfDwWI_yB4gd4PfVwVyIojzcgVkRt4q5XufvmpJYHupsbohAWjrrGTuPGS7NkDlHGIZSk140Fj0ECpWGWF79C3_oDtQK6IT_Dth4TnfHzpXthF-ZqSOASfiCjJhP9DVZJ1JKIIxkWNQfRun1IkEnCzxGRt5pIPFrck8HexRS53RUGiBk-wyAkcb0K8EsldFiorsGbPsJjogsBGDIufcBaDjgBchHrLb8ZT3QqT37SuKuH21y-vsepaH1wGGrXJcdKL2O5deMFjFLBPmJFJMi50ep0Hc-8CBThu4vjSfnCcMNSe8CHgz7SapEKKEmz_Z76PaaJIXr3VR3WAnMWy2wzEI6z8JLzaMcfrbZ8KTD2VheruhQH8QF2ZoGidOttfvloe4SQCSi16Kahkcn5w0Mp7dtlULdx1FIEf5R2m8GOxM4QkCpmVZKCcRXH72RsM5jh7IcLOKFFXuw2p55iJLm-pjQgLqzQnUCsAQeuzMJthx_10qOqemurCnmOgtV3pgnn8r6jpYKUvlRPcovr4qZbM78vPVQirHcAoqEt82BVH5i0NpOl853gaydIwuWaMtQqdVBJqkgvwLIU2YRVbfGUrD2R1kpPhcCoKeGLgJX_BTowgx75nrDNpAlQGHFrfdj5WjmiWBC7pjR6_NBSY05cjpenv5eWkX--zCrtzoUuXbbNXizw1ocu57UsUOCDeWrosm_bJDHjYdzjwPKjyaf5jWnrK54uwDeIQSq0UByTNli_GX-1STbEgktFQdzvfaH8eTINi6LYLglIGAHm48OfhDQFHyvw3gUJf8ICNoQQSOSuDAd7CnXZBt4vimnMA96-lSvVoxkW1TIHB2WtLZH9w4EElK1xRZleai9ikMe9AbeEC7n_ifpZIhtb_HXY3oiBoH6cBPIr9t9TamGpRlzy-1JGr4htTUhNfMPEyMc5FFhg9qLKQRFvDm0ITVngMCDHR3XBuUZjfjKLqFtQGGdUnrxbi68Y_PR1vNtA3hBAzsNPCaX2VlBu9EWBv54RI6civLf30nLuquP0IFD1Hl547ZFCFyrBIPMH3cRTrDiDvG9qx1cdnqrnxnMFciBzkL_xrxB0lHrrhM1pMlDhjCcZph6N1wSD-UCFekiaVxcJJQRF5XJmea4JpFIhAVJLsWaksg-_QNzYf6Az2rv_V31xku9X2G3kxAt11CwblxMwfXTR1On3ZMGPFhGBwS_ffCMkyg4IoayDaTLFdsyx52buiifnt9GhN6ZnTGXPWcbRRPltsRKXIaEl3N8Mc8mCNfK08MmzLsx9l6MVLZckJZ8lWx-EBIb6byI6byMVlDYRwhvr0NRXnPNfiTaE4yJdblb8u8CLIbsunYL388KySv16Wf8RpGGVtnrCJ6QGqP1iBCZJDmvR777lo1veCUxiBwxLYqYtL-gk1ADN83YXCNxlB09BJ8EUW5PCBlSZtI01KTJBNufNTknFRK3L6IQdDFJ73vkzmsrEZgCLVEKdhtsNT-VwW1A2jcehtdc6joduw64jiexyXuoLZezmYS2uhwGCizHFOa39GLMeEDdbATDq_cDNHFS4T-cvpOSvonHbNNdgcSGtxuhAKEl5561Ic9Qf0JDG7CEWZKkVgWiBaXuWDuQg2HkmXxngFRsnbtKP6nwN7c8MyN0DPKP2oRLbjiRuMrNqmkzdKV47qsCtE1lB-OW3gsSnqYGwBCWl-v53XpZDGfkIbN4nNezGbQWKV-ZB3TwnTu6YdSlBvfefgSV4HNJ-aucBsK2ZspjMBifynLNBaCtlO_AFj9_EwGEWVrqdSygpoXJg48xPblJhfaulJ7uANvG51UI6c8A-XGn1Mwgoun3lQH9_Kz3UQmtpO6F9CfwnzDGiB-ipG9_x3cZop8eYKpujR9esMBX-8ISug7jdJy5p0iuup_4MBvRYvdfpEgCKJAf80DCVw8G6ACPJ05L8AzFoJ6y7txpMxjE2JV4DX7yrlYxl5ZWXGkCPHR1La9a_p0mOIs5OvP9r0cGrVHpGIVtxxPS4pFaZ0P93XFz7-jb5G1GUcFIcJJQhIkwNs270hW37ogcbrEY7xKAxXH1RD2sjVDJb0r9oeqlb0NvVKPoDD1fNZE_iZheoHdCJetWZ7kG0nv2Fw5WnxEEX7dblp3PDMG91Qr2g6oRlVQ30TDxqXbJ48m_3Vw3yke77PuCLIMQTKcn4rSBHgNMfJVUWx8LrNLcY-9Yw6Fsnuiz1Xh4bxPeISTw3xYX0gJ8MKuzsWX8wdwMd5HUx2xvvsqFBfy3ty2LIPyvbQxxOSZ6B5xipBI3F_uVgG14QnNzpRH5UIkulo7VKfIs9bfNOKZXMRet_CRAgfPxFrAM_PoVfaCFz4t_vQguBzLiniUU0_7YlBBGFEkbs5UPOg65_SICJ7oPfeqJhhGgcKv5LeuGrtAbOu-99YPVewuK5GFwIXVTMUScqpo6cl2QdLmC0_rIw_Yg1rOOTj8hbshXRHF-2A77d7eXegNNAAkjXVmvMQOH2ubIgRTWMqm6a235_Sd3oYibNyuExSsBzEBImjZqaOBj0SaeKCB7tjyO8IYcld3JeB2eXGyZFJ0XRihtiYRXDKRCjpAEAsWoFCCqFaVfMGx4SCS6cbnNYlxiHZDnxeA-M5Bp2KYXo1sWSWONcpl8PLhDNFGpHg8AefhLVbIVVCKjXmQMEAvpNfyqQT794shRAPcSqUSdAy98thsTbjgNDCOcjHdJCIhaHGDb8FU4O2qnk5jQ3jsAw-WY5wFQfJsJz3wBuzJkt71YRaZzo9KSenBbbuWyS7J9JF3oduHXfnnqf_k4fSFLdk8lj-It0bm4vb3nVMwNOhMRda_YhWXXxc1sMPfSRZatWhohVdXojpmBlJh1bX2S3oZvKFBPitQVHw0OBPnvc0n-w9WVNLCTaglJFRQPqo5J14_GCKOx0k0zKs5jgj2CjKZAlmxZMH0gK_qddLEldJJJKYpXgrbKM3nWiFVY3YggfqpBk9w_sHdYaEgcvFS43txOc69QG0_aSz6qO3-lvs26aexzO18-D-xwbUTUa4VZf1STU1Jt_VH0st0z5Z_wNwVfLCtYbmZnYPcGlpH5y1wvXRG4B-hp6qKSYBPUgtvyaVGsOjU8HFc2K04dmHbwR6xTi5_d_vNkQKpfSpPj9a6SuLMZzLcDDO1X5FI8sjYuzy4vDyDEzORb6zxykA6MP5OCygHgWO-3Hyu1KDVQ0GrYBsDhQxBptS1-KqmwkjXmzJq3AYjOprxkQKBuok5iO8-Hhbjfa1vJhm6sTPMALJEVFTlvIVPMg542LOaE6n4Ksy7J0DtbicKqMsmG9lOgGR9fV5qAB2no38nlaej2x6Yrrq_ek9Pc7s1_y1zGLvcX1zglEH1OAb_QPhomnejNWnQI7F4LBK-8GLKOj0q8gZEf8jCwgp5idZ2ZhfXBh2awO6ILqbgsT4pmlD9vBZHiXD0w_864VZD1ZuNjo_5wZMjOCdVmLLpQBvGgfnxTjTmqVZzS6S-2r6tnvgOCAl4ZMbt5D4VqmHq__cDAaNnkhql83hFuypQdzfS_SQt0YM0g_6_osNaGMZHMNTRKMGef4SoZ2leQEnZgs3d5fT1-RkqTrQJJsXJ767Pey_313_cjRfuEtQE-Gl41RwOqflLtD8r6Z9y3jIgZXZWoxt37eNqULFxEZgMZvHNJRYoeWaUT4PRa0-L1z3PNZm-3w96VI4fpdmGKpRsyPTaxR202Gav3KR4xy2mVQPEoqifmvxpiAHbv9RAouzJPiBagD3Nwwbpzsggj1lmzJ3p7Pb_WNTcOz3uWUNWi_uKwdQiaRfg_FWiNERTGEylhke4ZIKs7mCgW_MweRsloW-H-xRs1aKAUAX6uE6PTY5tfHdPld8Y5G7G3lxaf6X2Y99TzDEOsID4p9jx_nwQDwmdC3eUCeGFCG0v-JlwGEStMdA6ix7cirjaeTkvJMXCvQIVNENdS55wUSbBOBg0bfKO7lS-CC7CXxoNqTUfh0d_iERwzbuhAhy2yKn1IhBT3TbKDlgKa8vM7cOpzPcsUFYHMZ30G_BmRH3RdFMC_jIwiD_HjBT-h83oAS_-H5NzVBDKewXJPITceIEMDVUwWA2pbcf49pKv-PddyjSd-T-xLHa9F6qr-wsumItSCNrjaB-DSegew64tk-q86Tgc79UQwwiVPiGKCnZOn4HsVHiqW1XaAXLOAP3pQHBp1ybaRfZ5Wyt_imoo_G45YUq04NT3UA2_gjfqMh_rmb8jk3GFDWfX_Fuqet1l_RRj_C5cE4NFYuSS60WCrZI8uukovcxemnowC_5HY00QzZ8XXtpYnwIWC7m-YEBZX08Z1FTR1pG0LaqMVvj91-qKTQCeGtOvBrBJb_pe0vKzkFg6iGsuTBG7z0kfPs5_8xRPNaW-zOiE0_Cz6fYcUnc_HXuadOfvriaOAJzeHJGfu2Kebi0YCYi41RXyhrlkydmb9Fk0LO7IcFqTEKbE3LStxZycRdgApPFpreDuk3E-qcITCQIPQhO7ayOg0rSx8NdxW8Vqa98CvkbpyeyXqhxn4m3MPWRjchj_ibXsEfofIgWi4SQboz-cI7HA_Sj021Z6cSGp6C2v-bTPHXTru-6KZRQgvf2ySfuMDQSpGIh9zXV348Rftpv2Q76spm8xRHBzFJDXJG56HSwrkoBrqeIzWbDXr-gY0dPh9cCrmt5mbPQ9QXhaqUnQoSTGaMD6XKuntATTT-gNQmTD5LfggAezIR7oCVdapnqYX-FUkOpkgYnS2XqrzL4pFYhYGkB4HJQI-h5TExis4dBnW0Cf9n_8iY-XdQuim5qnXUlbBOPHMVxf8J2ie8YaWqaNjUO7sc-YEc8G1-7Qgd0FBH4a_EDrNYm9ybz9gmu3YO0TawIVrsyMEAg6gJXhxUdT_RpKhuOGLmf8CtgDJVDpo6DUQYOdg0J3_uCB3B0ZLJhIxb1B1bqr5xjQPvGaymotvdmTxvp4SVTYtn4HotQwIKruJplvfhd10e6ymtKd1aUq2On2A2ITrdBL-1N2sW9w9aGgVnDKpj2sF85HriXbtQ3Ku5brdwb-IhwrXD65Hf6-Sn7JJaCQC11x3Cdkq9Xn0QScsf5Sg2LMJe48lIGEldggqcXkk8jiL3hcK4A9nNZVLfguqG62LP5yUJT37k0s-T2pm1MX5FEZLcUYZWEXzWqzhwT6mk6068AzhcWzZkUGTkkcL6C1kA1KaPSOsl_z8NFYKdi9IFSge6R26eXGlTbYoUeh3_VXBpvkBXmMRfYd0cy85N1ayaBf1Yf9Lx5Okjo7LKycuT-BzwWjeQQZ7WHCivf22o9Eg1GNjcS_0KXtx6eVdgIkaU4bXmppVCVQQOYAEgM1EDPsQBEd20yunlm9i7RUXVeXbpw3ANga_K5I2xQkrhwwGcmUMLdEgx9SrC06L3fTdNMG6TeeaygMk4YGIdKQx-kJN5vrOfbo0APUei2t42fTG7JFcnMucrYRxyXw5GS4b0H-UFJehO9YKcAjM5TF0Guoqwb4I6T3UqoFg6flB5qF8f-7F8xuuXKUuOOaNq-EAZ8iVZHhfdiYF6xsqPCj91cyKZtvw0i8rloM1G3AgPMVxbkjhAd-c3-O4RxwBq4X9UPPntSjN5fN5FzyQhytuIW-ikFdn_v5e4jhSstQujuGsrcTOlY2rCLA-HGcxDtzSL37d3ChARH4EJR0QPJIyGA2nMXslf4RfkyljNsNNx_FteSyznmZ-VBMGgXhIl6j0wnKH_qCWHDeoeH8eNGr_1MoGW-EgAZxF_Z_q19Bi38BjbNieSSpy062kZEeY5oa4K0cavxW3a6_gikxD56xEVVg9UJdWBtlkueqeKv7YYAvkysJKPwe1nCEAMzmd7fuwTYr3PzQVRo8kwkLBXVfK9vCdYxz9XDwiapeqodunRsLF8Ee2Sq-lEBgmJtApWTYbLLjL1LkhAqsY_eYQIKJeZXr-5gknts8Rt9mgn5VIgmcvE2a8b8AQMYqjmnV4jPHwPwLf0LtcvN9fGEDIHridRpGdMMSozMjXo4ooA6tNfiMLdEDwUdx8l5vVgfGfzucFBRxww5dpUUdhb-gLR228aV6-nOs6XUUmDZ02A4YMC3M8Gof61Ye6uPOXK1InUub6F3zwVxQPStVlUwTtBpjjl1p2hj7UpQvQ-lXVM8I7As52Z5VjW7GQZxIgwQeH2MX5ts2DBewRSHDOSzx3Fm178jlnr5axayPL2cDEuya81YdDChvBfN6mjVZWwg3ODl9Bg_lbRycs1-3bqFYBG34iZoWGHuPMjM-2tjWhBookQsK6RuzQDnKKVxoK6rz0vyVT2Letg7ybyQvRVegNmuJl6DWi0WPfZy6d5ZDJ8k2PSKoPpv1UOtF1MDvd2B44jYJd2U5KoN_XByjsdQn5o3Xy0cJBuK27JxvoITX9jqgyfD247_EHZDfOiGRY_powO6M2s9WJFFwufF_R8_VdJiS6rT1MZQYTqfdM7uk6-lpOxp8FtOMD3zpxqZChM5FcPCSr8MRjiSmOsrrUlcNVhIEQXH_73SNt8p8ODOMc_O2cFqpLBXD3Q9eWk4VNdErKG8433C_ydEvP4aB3yKMfjaU1AHIecgovLclPKEPVwmOD7La1mrTi53mlcX9ifawNI_nbBnVxhZlo4HletGWBF3KaHcHwTxkm-ag28GB6TvYQ8EiWLT8_lEtIEjsYYctqzlfBjTRjRu9mEquescQ0k3SPqL6n8mQ5SqraOvbQrTHB9yMR2M1twTHjd4-NfRI_eSkTksoKhCtLx_zAj--BLiAhrZq-cYnGqMYOCbOiXU0ZqrZbAprdhwGWSL6z1R0uCBXRk3YCElcvCjhTTBmI8kNnyiWgo-KVXSsou9nMH5dSa6jlo3-3XJZYoivg7p_VgszhT3pQt8CtFhBh-onKetLJ78FfHr2XHuBLYoTXK1-NwjgBsWeLaSVxtb2LPxYYmujvOcK3ffyTDthwTCXwRVPuIAsqZfAYzbLpufythnM8HLoa957JsAtJMzkzJjqLdIaB6fdTWoLZsawGhwqPciPpZ2Yp2qnIiu9MRbXrRu2q5rT9Av1vvpyN963K1TIklmpZJUq2Mqfr2cqEuFE4nMFGPlTlJ2mHKCQ2m4Ld5aBMqlvadVhbiyieGMEtoZ8f38KtIIfGibIYL8QdyAZbbGhK6E_TraHtigX9rzg0upuS28r8x1uOXyESHE5mcghHXk0I86VsYeGTcuS9L7Gd7F4ThRFvlE6j3z25bwyJTsTF4m-HIY3eYKZNXpUqurkPlg_uX7hLl3Ccr3uV24vVX7BWX62fGcmBOsXDfPlccK4_wDFKqsMvRdmb81cZ-l6DpF3lCHebk7QUOeW86L9MrJfUft6wMo6SiOfG8EvNmlKucut3fMsuMLQK1s7h3XIMdm3F6lp6rdIRO_VJhWAKp1JT2WgXJrEBwIKzz_B35YiQaDTOAhZ0wwH3t4GUJk-JxoNBJHh_xSp83cE1ahiVF5dC9cNua48IdM-NSt7rL0CTcBzdTK-MgH7mZN2sLRmF2bjHB9SZimQoAAHtcCQTo3McXvYwcmR1N0OZiCcHsqjNXTKtJ1IsnOE-lgVWUr_64mkiFP4s1LRWmbZ1gnP0GMH1FIFFxVgxg62vQNQc8yP5GmhfZYLiB6yPO1MMkbCAqvxoDX6TKF2M6N6gyHIo4UQgEbc0dtLAmkX28-uz1yoi7oh5-b0WR8U9flBWcxH0IOb2XCoUZ43xS2Fw6tZIT5DAVi8rL3A1mI4jKYquuPj7eWK-TK9Bz-rBEhpfqITgvffos_8O7NsBbtMfI4JTTxM61NkZ_u3G37umOUWm4NCgszVmLbbkCoIvTAJUHz6b_n8Z0MzvoT7DHrP1OFFyXYlhUpFaFmT6wusETkbYp5DyB3sumX9WZZX7cnS0ms1cbR__HmvlTxvSgUxd117v_FnorWCUVUyOZFFBsBngCzJXKNUT0owKVfqioti66zf7jVfp9IDJD99-xg5zctunB4gOBJQyBzKqiRgThfM4a79qNYkeavZmPIzlxBEP3ynzADA_tVdDvsECjrv3YH8T4WKN9Y2JcEIgmkbysGV5desWJpbjrRSAESXTgf6_rhevrebJBQ-wZlJKj_IRZNcThnA397dunCaqKVX5VgabTui1zMxBB1vu4mpSHKVPODvZxWAEgdjNcN7YY6AAIYnKv-9tv8oe2vk8d6wjFC2Fazx-ahvxmidu19AzEfOCJIbN1RaD37Cv2l6Y38aSY5e0EFpnZ85cCfh9TKEp-U40vxySwLGExKQhoyXNvr3SFbY27IspmVjM0CixjgaNUysK1zAXR-RBRWU7GjRm8rOqEWvpht2DAzQwd73TuWJtlkqq4wzOOysqEUI1JhzVzPf3M5lW3vEcXq55KYyVR38kU50xXuBWdthA90hZqct3ogYdI79mydjLOFyXC8Co40iAX5TDa3ApiG-kS__I_74peP1mO2cON_vVE47YI-P38Z36yYvyJxj4l9CA2hCcfHf3x-eybUDH1f9-gCHdjOUoiq2HCVqGab_XYux_Kr_5UoFsPdVmQwjQuslpNrHt61jAmb1HajCwJVn368MI_Dpgi-z3crSId9b6GMHRFhAWv4Q_lkV-sXVmWItxvslOsRLpGe2-3PY4l-jJYPJQ0Wo749Lu9_F7BjufLlflkwUIeaAbkoBXN4PMlwDAo7KDZsKsl06e8EW2J2X5I2qKV6y6mj_YwK3FwvxhJx_C7vNV1I5XCGcYxhF2N0rvFHd4NBVl09Wv57hfw4DvsNFS0bH22zM9k17am_dIQUo5x92yURo8MuAYboLjTktLrI0rdPie-NbkD_n99fjnP3AWEEIydA_5s_l4UAFwdoBdavxvwbxnNPZp6YIAtwVQ1LSpmklRYf2tI7sF03tz9gN85WCjCioMDOnjatHfo89VhRWwooan6Zo9r2es-w71cxwbqkBZAP3KXijWV9AJbiKDtzt1z6XqIBGbnYSOPeAeSxLTyZId8hVzcH4Ipt771hl24SWyZfiwFiIf_QcUNvOTtyxzcR6r1z5n_AdF0Rud-LmYobk3PsnWHiQlRe9r88FKFZawD0FvB9JrSOSz20Mx-QX9C5zI4ulNQJJuE_rOh10278U01iUu9fsdN4tWQgu00L1767BIBNZA66X9QL3q1AatUaLEmpXxffOVtz6iCpHKO-GRi8-36g8JkmUL5tDxAYwitLOaS3vuYrQYqhbw85cSywnD4UwuA2fIvCknB6tywSj3NMR7EW88mHy6aAeC3r48hzuerG79GvvAat_U0qPEZVGiuNy1T43D_YzHmfz6v3CmLZZGvM6Pnpx1IlJSac7nq8LH1KwAa83gTxiJJBHJLWtamTfUiOqXsSUQ5JlWUZBkvRcRTKOukdo4bZze4ssFmMgSdl9Xm-3TASsCwrmeKky56HHc31CPNnuCTVNn7kMJQd8z0gyPz6CNDGAjpzobFhxYdW22F3a3Y49ao6hbDnpgxI1H-2Jo0YW7df8HzKqVoVcBhZPAxO5CpwqapMJq8OX-pKzcsWLTb6uVZE2IALPlWv8vX4QMqnTzINEIaZ993UkJ_dr5I9sF5oPpY2azGNy9KuHgpEzwHzHwnqNEhcFHGzLJlgA5V_xY-OtpzhZ1sk3KXkVcbww94LFMQph6_yDXjkgIYdatWJSJysOCCYpRVGAqSyHtZdOLWmjN3QSi3Mv2SDHXKkb7__3N4bjenmJxabXQ8y8t1FwiHeYkNEt3AuWhb5f2eNHF7z67_tfNDPQePc3kZtiq0LAP_2g3_D6nB3KCXxWSeKXqOTwL45tNwKy4_745h1s76hDJkzYEi4WMQD1Geb9bHinJakX9IOV3Q0scvpHInc698bLCEG-BSMZtVSjxHJ2wmO29O7SMbZdVaaWQT54KFQja8JBOFpf2b203kw4MDu648a2kdO1rQIVHVGbLjlXYolgj3ZNWlyt4CiMzbdV_ALw2I8ievrcg3up8x9I-bEsjfagGnOvw1TyzG9_2YCV8hcxK76Z8nH5xCIDHxpfI9WCu9qNUxelX6-WG_BmAJK4zhYk4zQ3mcuznP7IS4NfSNYUQSOlKTBLNlBwbXDnTtXpXVDqTs5O0WFBldKTltC-0LAZD35qacaFmN9eDWGaaV7nK3nKvjU9_fgsgC4KsMHg19sBH791ioMHtPL5EHESO9mZ4HyyfnQ5zNSNy7F8w7XDBTnZFjO9ogQHLt1xpjk5BykZ1Bc72Zq_T3NVG5YPtNycmlfmIaAgvJo_SGwK2Wnf-pXlpLbujQNRMOOezJCIyvxVI60vOh0Elqj-8OEtR3no4GWzKrIVRF4C5oEp8ZjOgQ64DI6nwOQKs0QmbHnMlbo_ZU3YIeUfub6mGOozfuqkySAxgS6aIZrteh6hgKlHvYVbyT_WEor3XNOjEJ3vMg9DySHkFc6GIRpzz819ZQj525sxGi1IstmDmXj37MZdYYtxqJFFTuC3xc0MNsOhxecRfx3mz7fk4XBWfVLhYnIJA9zKuHLK9ujKuzcqNiNvCwIKY0TVRNwh_Jh3sk9ng85V7wbEyFd_vwl1HUR4lhtEudE2fr7fg-NNwGC_gw-lbZ18RI3DlNO1J5OzVkZ9PgTEmHfiAhGXrkzGquc7K8Kbs5Gul42QJ6tn6pJLQmqNXul5APQqKSU4Pp4LvU-zIwsC3-aWLlpZTSlIuK-6pmgRfyyQN2abhPBNEuooxH7GH_qXd35D7DWfAAG1vNKr1-HJwUdary6cOLZ8L3pq0c-1hAfPy_WGMPq_MsaU4ppGoFd0dCSPpUIra6AFVkCWXg66DTtv_RS3NjsJlK8xSjOXu_r6WOLG0DdjsfaK-YCpTXaabxZhKE9bXd3ZPR6F3vvhwP_qwsy2tlMz8keLyjzXkMuBC6oeTgYYFsvDdGSKdpIinoHrm63t7_AW8OUKVNHuB97_G0NKV9YXSLX1AAMP5ID6yDe-ORQ4tF7Jh8owLlfoZerbaA01rH-J8q0jGUfu9KKd8FQeVjBjV98F8XAHcDuD05rzsGS4SXxcZpgRs_XXuGhCSjJl-lacQflTuUPh07-qKIfN5NQUROilSqTxxnCi2lmqkCbrZl6phSftPi_1n8vIKIbpwAxkS_L74iz2PLPc1xFzIll5xIsD1sIB3qk3TnFseSkfrlJuLKC3Xi9J0bs2LCzS9a9z_dJOmXRGVC5NjzgOEJtvk0tUsEPu2BM9IcU5SLbFWjlVn0hz_f_dikSV_V9np8dNEkBygtJmfPTYlIF0VMSwMJjF9ULMtiJMVnGRW7dK0InFechokhzNwzeS_1L1bmGOTTBrPHHEc111RTFexgGYZjxNg7N2Rz8IacrKDJ7unFbalS6rbnuczLgldRzPYvKcxg2tzhPlq4JwSti53X8VMfmytjBX3-RgeVlKFoku5WwHlOFPnQNmt1LCjhOX6BZmBmZVXb7es9Kv-Rg3jEKB2f1us7j_avq8onwUR3GdrnCtDslpuqVpfc4ZNlY2YBF17o9604DdliXFNeOheQWVhA-sLtvPbvakF0dYZ1NplnoEGqUOAl-FijbxWshqLTvDNNC57EqKXzhFGUKsXqdrXZn6ffoZICNQnYFdDjvRoMzRjvwBnIF9U6VuD6VCrrRmFjGnIUX5ui3vJYkFLpD2MWRmQA-lk8z2L_qbLuFQ4SEBC4aqCaLwj3KE6ZPPNMX1mQlx_PpBcAq-H2WVTDACvoe9MxVHUyyi3XDQ89P3wlm5OW_5-o0Yr-h0bLmpVLGiI66LhPZk7S91uX1ocyzu7rg9gQRdxH2I_M3eLCTRVVfiHJwCcA-11ORpkdrYRcEnvsLsmgSp_deHxikW7FsQz0JXckkwEbVwTon_454crDAavn7MvGBq4zdhHCSD6yvBRXGttOyF3_D0jLBUuIEEmXvz8iJTDHoU1nIsMQ099wHmDh-vLrHjIvUEt_lXuhZqSniM7txdLfWaM4BDnHW8NGV0wmZ0UoU1eHHufz98WxRC5IKx1s5zCrwl4gxhFpvYHt2oHE9OE6KwUrTnQEnVEOZgoJq0G5VbI-Cw3RuHjZIMC3RFERZ6ErK-qQD7r1TXNLh7rLrCvMDQRB8NF96LaPmKuuMk58fAG0KVIDi55ZVGai7X2CrZz76NAlERxn52Y4eUSq2ZvOMRYfZ2ImnXUutFdTQfxLWgqZ9-0eaNf-60fuR1Dluo8v2hSD-U6rd1JyAliceVrfucLlA1Vf9OzitvXmC8AHEB-p-jjLTW0q75Koni56p4WFx-DI3I9hM8HnEhRmFEE8-8sO8n1yjiKEJQDRBgauZn0nT8zFz_8vBKlOM2bq0UksQKQLAhGPnI3WhbCFev4J6TPY84wIkjCrl7B-ynpaiFzPNl42kn3DWUStWAfZLD9ed_00xLZvihFfJWGO1EpnL3q4K5gBXC9TZPLB0vKUCFQ9ZVVvEiOEg6wGNnIGP-yESdZt1JDAjd6JVwnATPewHPQjbb58UDfMPudlGI_638UA_ETUfnlAZkBejaJzgXSI7yz3toQsXVJSpvsU9VVGyj_SzDsSvpZJL7KiEt_Rcsh45AH1yDz5iDZFTXCxBFwWBMxJc69wHDnCgWuejlK4zyVnfqLeWb23SlduDUrm-Tz6J-XvMOa1j85t_ZfGHxJa9SU9iPDpXYD8RvQ29-joYJemlAQwEKN6bMAYS-8StOOQ8G-NRJ57thVPFMgk_ZFOEb67m-Yab6hFMTIGRrmlu__yHynkh9AZVgUFQYkntMEtsQ0qpKOJwhXTLmA9Rw_u2bmj528LGcEnVNuQgu45MDozC21Z6aR8WO7TljnMTzZK-AIsTI_6abrL5-RRzvar_ew6Gqcydctiu2QizLWqnVVljZqR89uBBJEruNCxSpW-N6ilF5658VvKOnRpjpyUPnHh0YG7YfxZLlBGPZ4XpOCCyAni9CJCJIGJMoqDt1KayKEzdAch-grAWapM6pQ7KUXhMwIZxNYX5iH_ClubjpGoh1bB0BhWh-BdDKWAYmWCgpS7UR2bchcNjlmevf9tNX9c3-zV6qDmNsokat26CMha6sLwLCErzvW8cYgi_tTpjQzcpbDAs1ahR-fHeQGhYtNEj4DhMQDMFOOfgMc-PF60nyswyUZlVZ55QMv-fnP9359uvdr_9OYEdcDskF0bt_i2HlIw5ENHu82u78MIcADuW38LnLfEhnwVwnuTBhwYb6fgmT9-ebAYPYg9TgAcJLc5umYzXmciGyftOWyBaoQXjrS0Daq382u0mXYW1bn0THDCT5jpTuAGxyA3nJVLkJUwXldyAAL29gqeJsl54tCfH-SB6OF5EEVJq1bvZjOMuCQVZDcbLVdFpsSRQlDQKj80TEWZjhRxuJkhWSgdylkN8KTlzOD1HIb_l8aZn-TgOf2dwdo2yjNUis3L8gbIFvcp-VbEQr4W1MfRNsqubtzXv8VXkyYRd299oE92OCVGo5rDwPeADZAU2PLSJhdoILaSrtl7kxXUgE2B65tQYIler38k4zvTpSNVQZCEmRbHzjpKXuIVVZewxR8ZyNGZPEtN2TzmhXWfm8E_nozIEy4bFIUMgKuAOMulX2uOI-5ye-htXUZFdhqeiGlN37RR8K8N85KWkFDIb0i0G-hw9AnopuGhr8fPR9PkRgnpQgDg0NJdjYLqcdpawE0zaM-fuMKY9cYO5eTU-NltZosKaQEkWPqu6up2IgQLA93UnzHl4t_3O9_vXOZT6YjnIaM1Lk_of9JyX1uA_TvQiG4tnFsblfrcchL1h79WvbBPlGPChZiU5hGa7qCKvj6qEKb4_D4SY28HqSpjiziWNUbeubqd8vCVw8Jb1jD5aHHAEurafaVOOaR8s1GeqQsA6TFfrZknZ8XerdXSP38_6XyH8zbsHw0S_vZIxMf2ceALR8VQEiO5dFRYsZn2bxspqnFDsV--ZoMwHVa3jOm8DHhuRzR7F5g4ZwSHiCWcKST1CQuukEYAFQY7-Na0Ry74JUznEvS9fA1QhRGwFYF9mdfE2Y0XWOcaeh4Fj0Ru2tpTALa8UK4nI5au73P6abqo-CYzazbra_8aJxVTv75kdcAxO0bp1sOlxh6iL0V4oYuDisNF5ImaICqHXYgt1kljlfWUHOYLwIrq7LfLwessBNpmjFIpT7vm-aNY5GzBs4wbILjh7TUECpLXxQU-yBLxE8Aup1blacsH8YiSp1N-Q-a8pc1oAppz3_36YnF8VCnpeJWPXmt2OMKW-RlJ_L2NM7eh3s6rP_aTHoavMbGn41L-ZCXUy8tBTBxLfcXA-rQg4TpXYe-Yfkm-FD7On745RWLtmMHKqraA7Q6b1QJ24KUpV8U3FHgwzb7gRWcoMqovcfMFvczUxatJFn9X9XnwlZqZ5n-e6MvKcy-yI356nlwgjxM6-fi6161yd8OeCmzuDg1SfAzBvW6XRNsRyMyjO0PuVRthXt6_A9Xsk9H58x5Zdgd8HMtd5aDAaghPWqL7FiR1jO4-sypfixvBgOnVuL370lIRtMED0dpUVUjXY_GEDPVmSyFFC-W9FCJiNH_Oi7uSyLKx3Q_oRTOAfXUgPp3EvHWUys_LLW6yMzKj3z1f3sH1MLBB3HEyTwmwL0lh11nnQgkn8tJwrh1J_jvTQy2wc-0gF2F_ELzFrYPu0AQZ1-uQwr1dUhBZ_xnQqZkAr0A1MC4sx7Ifl4ekFTamt-j8LSTO3gLB3XnSzJNPh1dcmDs6EynNbC0-pnOBVaTUwx3U4hY1EcCFm7M7SfxStf69IrfjuSuYuu7rrEydcpEEU6vlzeeXMuSoe3NLoY4FjAs-L1ORDV6qFxjnRa49nqSHiX6YjrwvlPlviS2GoYk1Ruv4M5e6X-e1tBJiR-V2E9KtKVh-HUVQgt_NosuSjcVlSp475hhsCOL5pJgZneRlV2LbcpkEYqssLFDh47u3hn8PAobd_X7tvd_1Hh6EexggZPbenGbWlc3IJRhDxjf2x1M2E12k0tvQZTqhGcc6E-ZODS-sQDnw1cjw0nE6EEYE13wz79g_4ZmCug77XZ6AV4Ae3AkYBu3TNQZK0vBDe1LDAKdB0SzivPJ_pE6GMEhM6CagREFtRLzeWbb6ixsFmrmQD_-u8I12_bIpIUPEsI2VWDX3qPLwo-L_JX8Y_lnOhwAFdJNMgihXFshqucJLWNzlRMbARecb8pxKZkuoYWQZnIzKQFTYew1NY8X0f0Jo2BOQTxlxDvYTxwBDiiXfU2Ra_aVsDCm-Vgufa0RpQ_DyluIwpC18XSjbijttF5vsPISlc157uzSg0khgKmX47iZj_1pQAwVVKB2H18xcu2MuRm6u0yLQTIDgAgJLTOzO5khE_5ItcvgpPc9wv6wky8m2pjU6QrnuLgMQdIf-thZwkEMPUOwuU6QcPcGew3Hf9LA1c4oRZnPz5pHEPkagEWRFZG0BTTIPhpGv1PpZkaD624dfs6oq4siuyI3OC9mks50Trf_f71FtZr_xqIxGEnPl_jH_PhsLU-lRSkDRYynKHf6y5lQTm-oMmuXwa-6yV8mT7RXE0f0dlzV6JNX7C2uo2Gpq6yeZEPQUsCPlALl9m-TsMEiz23PTgQ2gTC4f0GSl32CMMi2XFootSkCPd4DQvRYREWD--6SAcG82pCk5gGSgQZXYCT0_YrfGeDCszCvVzFTDb-Am98bAwyfVusKJTdd2pRBQ1gJ3auRwYrkKcJ_N6UEfvCzvcGawgEvkWiSBe84HfRZpYT50d5u-jByxA4v6wb5CL6XR6Rna3DnXatQfzvZmuW5f3JK4jXdXwzPcmx61Aj1pGXfibcHkjVgPUc-7fOMD2uy9LIR2Wzloli8V-jQCHNCMIPokRiXbDwlH-f-DAo7a8CRQgnUNQW0RgZIYB_YO0pqQbwPlNVXCNaGnuqyQyiihjR00TYnCoLtlOO0PEW_0_5MMTWKwTyxMemcOG0hYdqSkMRO9c9Xj9BOe3sfI7SeOhXuJKlt_F3EdJ5xarnM5xcNfrRdN9al-hqJw0rEbgu_rXK1O_6NZxNTCa5eHLVMMs2CMOkXuwKhXaCPjBbTs_S7_GnM9n0W56MQsdm49lASvyNCa5opjwsESENF4xPUxb_7cB52H2dqFKSxTmHY5iYtPCGNSO0mJzpbFWosob8bQTOVlSidWCJhXfW1v3HiN5a8otet6H9XIaxGlMXBsrc6oEaqZOEVyBsTVVT63gTtMtWL-ZYtaA89NxmXIjcx-8ccSmr1aGbGWBgeghEOuQfWFGMmLgryYHbjotmBw2jyPs_W2XaLHO7cMINP01JrvZ1nXFtDN8Mokx9tq6sYIscX7nn-7gT86aDJhL8Lhmlicn0XE5NNg_01CnYDZWjUUtfD5mZWzIkpUB5xzT7oBwMQQj0XqYXl3vKRogqnXPX8tVNURljwqMys4zUyBhiFXxoEObt8YKuHYDcA4LVNODHie0P9ufaZDYKIA1KeKLsXDbiAkiCeKqOY8l-o70_BCwiDDi5UjnHqyTBte9pENKmQ5APqe4CmLGDbw3y8FUcSTZkHp9JbTzzwVq_wnkXjA8Out9i_Od_kbbEgefuMFJczwgBIiDzETz0kaXIcpXBIq1RNeMw2ZY3aBeVphqsK-BusOBAkAxsEf8K0fmJ8TW_sakR8GRRwDWL-4NNgwrbpjznUP-v9NIDwd0cJpQhq_R0RYC93TilgmjN-LOqawyLoNTJ1F0YK-_uPsyc2wWbYxeVJWR0ECZM-MC2MeJ37cSEgGDdEYhRXLIufVpVV4wz1yXs-4Oay2x7HcyopgLEHpAIjyRE012eB6kqiTYlgG_tGzktHS4A28SCHD2QtSdaGRkcEKzPwLUi740rCosxrMI4R7kHoQD4x9YE2iL7x4XZSRtf4y9q7CC7r3-ekHZ3kjC0mo3xEubzCz3YFX6XgpKtUVrLex4IScBmmwTeg8HIBkb-VrzzV9nRKZ1kozNhO5QfInAnXbVdVAPTRyHpMisiHDJItTw0kLiiIUrqluFV4O9deLZdDzhltbIR1rvi-MfH5Tu-9tcNwt1LVx66vCN4BPlEaxx0UFXHta7iw974K17IkgiQDWgrnxr1-bZmjHW99RoXHVIQqHUHiIM0DjkS4VTsFFwDFN1soyU8eWhLU4wJDmAQ6QcuofgTJd4LASD21Aunhsc_Z81jGWAhzZ6EQ_CSHlt-5cwNkkWe79sLJ8zxIjVqtS0_GdI0MOYJR3NDw_r885CyzFZsxTmbk11184Qij3RSZ8g0TJPexOSj2DwhfxAZw5uEtz-sEDj0jEuFPXoaFYhu2nJHZ1w8esaG-ZYh595iLYK6deaxahygY-1PdKWxmVbYNJP1c3KnQYLz2BGfJAwNsdpUKllEClhcoegUUSY2HbFiiTioQVcIvMX6l1CsD7Yp-X-3id3y6IUzT4OIgzSF7Wj3NEZNPhj3D68giFBKKQ8DdfyQUhaOpv4itj0HSX8u2iDCl87ZgPpj2HtS3L_NeJHC0FCmYllQJCpbpYy9fyDr72DAEj12kyWyPYevWfsRLCyQtn9DSJ1bTWVbefSWpTjLE_vU7gck4H0Gdb335lG1VqemJALsKD8Td1KpmYohawcik_RsMpw_easxAa35PFTznHg8kCxmLMOXkReiAILEW7mZ2R2N_yX488MA5g8r-_qQAhwb9-yg9dH-a-6KF8AVQrBKcZGF9mFJRwRyKM-7XlYB2jCIDBb7jCPvMh1wnjktbegdZ7MlkvsPdudkB2NFVQQLVnvY-J7BWRFX4Kr9fpbUxX03e69PBEofvkqRlzc0fRiwwKk9L29YZyNKAAtkTuuaHXPUcRlVxaESRaMeb1gU-ChOVQ3_0vuYD2NiAiQj39fDku8Vd4oyH35oYqiKQAIydm1LPut9Wo6lrahZkZiJ8778FPCV9nZyoMEmQkKYKLC6xRg4plzdU5M0G8ecPTi66LLJoZPsDbPhVCqMOdI8yClcLLEs5-DTLeFNZ45JMRtl2H4brF6S_a9rZ5imZG2B3mL_JklHXe5iHbkcqCDWIgJL0Y7A4vmFeZeccGgAwsEle23gTV6BtKDFO26qeIgsP3gkSbeVzTSoZBBmjvhe_EZvzgY2fSEHEMcZezJmLOgAlZ2tLrSNbsoSBr5-07BQxHaLEt-30JBeFxDs9d4Tl4M-V4qKcTxtnMF3A-l98Q02HDgmRek-QxsfnuQB9ipWqPQPyPMRdVvfW9xcPVf4gnlmga4wLdYN-L4vIfbnEFqEdgPOKGiPZRWTYezTtWQhOBRcaQiYOPW59yvdPJIc4EZosfiAlbhu3Ogo5gBJTHVXbaPIUMmBpOe8oOllCQkcsJhszvmO4kcgXt5GQbhzngWMQOorUBFXdwLQe1jh-1aeeLnAE2Jnn-rl-fjwSWFFEgKZiSbwKTHim_1O5Wf77f9FuF-RT-uatQbha_ce76mnp9kY30FsJZ_38HrpCRZxQdRp2CE9LPhYvNKcNWOdkcHOJpCIJDrWYLk8cLbJpJCQiWMeTDEW7AJ5TQRAYZHZjxp2PgrbznTYtltzFlItg7Ya2dlb4UJZAXA6AFLxFXvuqkF6EDJEbOqjAehctYUdvV_VenmGpfA8bvfRN8RliacM-LYaw160fMgmUV_Kzp8DreYXBuROgfIKwxNUkNs10JIgAKSv2DdqZa51P1VvWeveP7zX3BBYl68TdMRy7mtYI9t1s8qtW1OObkDseLrP83IV09hYp2GIGIuiyF-PxBZVq4GiH5cpUCU6GTyKvgK-2EwTY8dkdDrv89zjOJLEFHE7kcuIMNazum6-ZkJWgZOG6pIO89NcYjU2qDn3YYTVCN3Iw_PX_XwP7HTyMXSgplkl5Zw-HFTKnqXALELJUxpZR9auFtskAyY5ClRS6MX36nGZhiDu4lOVMFXA2BrZO_arnaJAuHeKYlaFSkcpo-EhtVQie7Crv62U2vSrOkbvTyAeIeMcJodkD4fkXDRg1OzJDg1oQfmLhkZllp94EKKqbzcjPkrmlRkamsMsk8pnQiCj0FXSrhNh06lKbyVQHGjDMr2zzWGYF-SaduPuFVxONMdXb-vZZq1VniVTESpNE3gzKWfsYSmWwyXakTHpP8K4GbILnJ3OQieDlVeuBtnHr38KXD2sgRbhIlN7ZeCssB23g6fURI6gMmznDFo0Rbhyt9Q2PheZ8anABudIf3aVKzBl2fGm6XBhSfT4ThdQ9fBzpMBILV5Ldv4bKFHB30yBpabGeEYq2GAMP8kvPlG-zMllonRSSAubySBXrlwcOXTUe_OBeZJAh5MQz_Oua-Lo7bLY0-QLenDk9GQfydj9w-PFEik1M7urtalmpmygvN8CuuKOXCHmWGxbvAb7NMZhA-jW7hqCTMmOWl2Jtpv5Sweemc3mj-ta44NhA5blROkRO3rzvpR6ob54ytfEbsooF7apErEcwnpwY35rwTYNtloraUIXraIGY86YOxvVj7SLSz8wVLpjGX-6FruTtWyZ2ijM_Ak7R6IOFL4z5ezG_Q0FF4OKftoWEfkMdF1R2Lsw_qnzJ9bbK7dCqrggIYa1PISb8tGAHpCC9Na-fT38dYFMYY6njqN1ElJ5yer3cW7r1P2-NE9uk_QVoSDS_BN175A3UT8OG37pMs3g4uoJZ6_MIEqWoAWOhCuNxKHtmgsxC53MRVK4qhGYHe8ms0dKn7TigQmpWDbzc9nTSGYEtS-d-VQAodPOHdv74gf7kGMYwjfYPBmqcbYBw65nJph3obTQPoGzSXfhUHBelaWA9eo5hbmGYq9cqPr0UDyBiZvmXicO_RY1F9qdPiD4nMhdHcifvToefUgwvfRlFQA4119IalTdFUx2RwUc5CAo6hh6yD66oMareEypdP5k8vlV7xZ5Sl5h9M9tztCsuyhkrYSjX8FMaIC3n_Lphw2IAtnHAEBZqGt2-SY_EOBYa55JSlMfk-wiSptiXoUKsnH0vlnDT1d5gLPgDkUfVj1IkMLWeWW1XZwowhRHrgxzXdaswjrSe0F2P2TBpyiK1yVuiKOXnhvDgBAR26o8yd-aMT9oHxvPPBUam5GbT23KPYOtVPbA1Q30H2YC92bsIjttmN0LgIQCHDNpBgq-kcOvINn5K3A_ZzqqoRnXrbDVesCmwkb3lyHRk5pmq2mtXxUspTaLVoPSqzBaIm3w1W7il-45ou6UMhVr01qnNALKrbPoGbvVcye0MlYWA_7ovgdwnv6Hbv7LKSQ734HQTYVtdLkI-Cnibb1dbwTglsZfhRp-vVjdeCjMHCOVHMhem4Nh0TjM7u1tdtAwUYCCeOYkNRvBlCz1DU19w4qEz9_zt0CS0zxs7MzwKxM7Pp2bLGjVIJFdRU54D71uOcHqdNpvzKly2x_hjEN57yfk45GL2VE3ubMfuYRy7bHg2nyfIyc3edSfeY_4qVN3Ah-6SrJm4qBapmYHKNQKe4GI2RK6ltcgCZC2_F7FoHsx1PP2m5KwwogahBXgt6JPz7csyZ7lL0wrU6X1qKI27Js13c9Oh89jOOhnHhKIdRFREs5pRoZf23v7f5UlRK5z4t3W677rdgLqP73qL07FjTMXXHujEa6wmLhJxNREiwrQnZYOPTRbsJd5zBQKEl4pCx-hzPYw4ZxgfwcZlLIxNGMEPSl-VgIUwgvW6mq06JwHR-CiJjl-5SEboNruGj7f2jGaZhkGfpoIlFVHQfTu-ZfQDH_149sDt8rjzYXPsd2eMkod-15E0pNLEEiWMJu4ou9Er4CSLOy08b85dDzLoVToHpp8oL4k1IHcK4eXhICMRzhbAhDr5iBczHy7oJBuK41XICDyOO1mcjQF2vV6D4e8J32nIGjYI78cex8MvwE9jcoj8c9eTfcPRTxI9DCrn57ETL57jmAeH0WtDiOlS4EN_0fYpgLkyYKHwvurG8XNpDP4AfN6GD1Qk3Oroh-A6p6mCfGSXqvw74rD-Rpig_-7gcM6fB9d9HAo-TkbBgkVfWadDXikRbozpad-JwfNQhKgb0fQ0uEfElABrmnB6iusoyMGHTnsTc-gUTV8MWi1qyNk_fgTfgImGesLxIvNz5pkbpQG1G-FdOR4mWnz6ylgwBxlDvhHnAGXVMQPD3rUL-pKA-Sj6Bk-1yv7Q29ZjklzBlTla8rCGqB9KIylaEQRbpePEWGINf5fJx92sR3TaF-fpP8zHdOPZCNG3tpC46YffaiW_j5pKepgXtZ52YS_ud8Oxsv3IBnKnnd48_KKE-tiC8GXNxJCnjfullrOsUVDm5sELeYv8bjIEl_MT4WMPV57IZ_sG2a8HMaVoqMTIzOpTWzlVc0MpijKYEhd7fHIgnxTDc_p-1Qc-YFX48mLIk5kHLsjMwWSmBaPxrPnHjqxDUkMyl-qSbz3IPAXIBmj6sKqqAMtdUQXcVgLtWLAZJf94Rw3E3EhEhcuM6pMs2ZxuCxmR_ZiAGOfCL2WujE5nYFE8Axw0D3mSG-maMQABRzIgL0FyHi_bGT-JTperynycrn6ulIysDxIZvuZg99vPM5WJsZjSSQP5mqREyq7VdPd2PXNIj40hjse18S1QLBr-Y7r6wgVA172dHGX3V5FoBWnRaMKb9-dvHF8Ry1l4KuTYiBpO5duWw1vugV2WjYa7av20QY-ZdFUy6ZUtmSdy-X3fj0W2Uc9sACoAXR67W6eO0qNpZD2hODvafvwXSKyLj0GAghGABm_TvjgwJlN3IoO9fRIlshErl0TmrKZs0zEbEJE8PnWgIip2PjQNylf43pupv64E_nmLAG6hWa_EsoCUylmZIc1oN5Tc2WD1PX5BiYZExNteHsmppw-D5wWWmuLEyHxi8_63Z1xNrdR5pP-KYr0BD8dabIp6P3YqtjhwKcp9v-1fOI_-hYXZOHj11N-PVppgQk1EKe-2ntck9RGqBumNJIuHtsPNQ1TmXZXDOFT9s-9TOexsAmQWFUxp0DgR1rOqtgGoQ4Mdi6CHhBUyp0UendaLYRzoPJ50zeVsJW6Ezg-9nG897bXZ4Iswr_500KBs5XCziN8YXrHAVFbPcxuT-TVM6ifB0RLYf82gwhFeM6B17hiP3A3E0yQynH9dwQWkwkWlyfj8zChArXxFl6mU5adSJ6XxRjfyXTZVb0G4htPaZ0BfKLh-zdQ9xE2RCJ8kLxagxKHwDYRqMpWkZLkkAAkfpQMbIxalzfjzs6iBcpNOxKpmirfOtiubFK8vkFKD6GvTxQ8l_ccYL-St4Rhk7HRGUbhiLdkeZvhi3gSJS-Qok6Z-kao4V_j84xNgCkqZYNhhzPrjdH1Upd5-59VjZ2EysR2Ai9vC7IDrP6tUrBNwti_WrEQY25u7wD9ZXxkpOHy1Q7p47tZb6bHwbhfwZFN1zf0elO1k06otSGyr60qHeKff5y5BRZAP2pikOn8dOeCkGFC5bcfp45eqWiyDWFo7ELdu3YsgnIeOfSeEshKEeeY30sunF63QS271X6z8VNL8b0e4uLrcPF8ZcgWdVThZ0ADukY0d9aOjZbxzEzlBabxNRe6qL7FTCHZ6kGa4JBASnvcIvvZonBNMgKZHlr-7YMzZqk7hrfaZZzJjUdl7V3BrdAbB4CW75PCPHcmxrTn7wjlDaFLX9WizbE-T5GyV6Nk4dIFYZ1aZQyPPIohdEMKGW3VgtQErwlycIMubvK0wNXjk8BEvvtn1kwg9mVI6fPsTQ8dNcVTzIxkRHPvq6N-D64q61RtUbIcpNAX732-pc6k0x2WCagNXnJa15QhrNmy0d5znioVqn2wqI3SjRP1uBzXWMOuqKJkfX0yY_DnZOgdKUrjvk0vK7hM27Jjf1nI3_0SQdNSDrqoMxCtpLvwqbFP-O6X2Ek2vuSmfWC-aitMOmJU4tJRfo77qUIDA1irWl2DayHGbfyNdQ5VvT0WUDQe7T4qjeZbP3wqnOdL4oozvY4oPDSfQ2jKRkxWeJGoP1FyBq7sEn6eumKKuXiV4PfNVyUvNwBzkRsxgLevkU3dBjomeT7K2Offhs1fdV7XhO0EXGiaWdClMNkYP_Sjh7_hXPIZnizz3ihYF8wDEbwjsiwnhcxZ9r41nRlnVW7zgf8zwyNN-oAnVP5NZxy6YQLjIi99HIjWmcp7GY9js-Y1syOUexuJrEb79jUZeyNpMTzgGgpkRyP3u7jI8lnU5ZJK19lIKTM2w4D38g-CNwcvUu5kzmhuG550bxj0NUwxrNVMtZMm27c3dsOR5jMLQxjHCs6-tbs0vOLnRbRsxNVQtcxs42itkCezKDkfkH14iSLgTNisV1C9beAPN-UIKtG_a6jdEARRmBotdwC8_QJF6yZmYHxYnK1FDlqZt3rX-AwNa10N1pNi0DNPKnGkMnsj4pXWUPQ5GQbf0xEKdordMAj4y0SSH_HTlFmDeXyhjBG6xek99hRzN99YDmNGlUnu56sYWMYBcCG6ou2QhlXJK9Kn-lcdlOuQPVHGlo7IXsph6Ami1Zq4cyGY-mXSAzzuwWFit3nWNkHrkj4J2hz_WUuy19ihr5l0sTe7WL-YKg2u3msm8glb9cVEQyXILk94z4BBTj5DOe5zTj9XTJEWCzrSQeUgRwHEsSWrWWX_6ow35ylvnStL44Boknwi4-7pcmUvFwQcx_uyrlE6fV4U7M1AbGrXAJyTZXQIpcEJau4kNKpfVuRHCb39z-ql4Z4LZ54o5TvMH5dFASUTfDPsH_bet3sMFe_BIiZYHCP28-x8iMrGlCeag1F3OkYrW2P1zPCcbGZdpMgdMKOJjRYrIsiKsmzx7Khbc_C7cqnzGmGyCRXHLHbGDFD3I88HG9AnW0PNjPjQ950VHkws0vLvxbsfpIbp6ZpYwHAwK7n7WERMHI8h2_i6Sqe5WVLXmfVea-opielC6k9i15XTWkYFDFKEoDSoo7OF8oz_2NTCjHQlYygIAMzzH-Qx7993iywts64NJ3MS5VpQyr6VlFCS28jJP-_53-rYHTcGlJ3aHJu7RGu27LrlhF_hHTJcJrNFx4gRBXzHNjhz3MATE_lMScQvr1q7pkQo0RjlICDWNomkEIvxxYBr8SkSwo_EhmswG9ed5604p3KQ-0R_mnvs7yHFGODT9WaA0tDGcbO2QMHGtI9FTiL46Z4C4X9rIgL5m5ifc6DE9H2Ct5VbwKTe78EusNaodiUIjq1Gd3_7N-9jDIrlgoyGBFt5WgtIGw7gQdxKH05BXmI4vzWXUGG334NPCpUb70ej-XMywhl9HKboekQBQwMg5TRHzL0au2o8KVh63ZPaJZdKuheGuYq1fQPJiMMUV0AXP7fspYpLTsi5BdiVaBwMWssSYhM_KX-iARCybRy1Ugqaief7C_akdAonSQtnkX_NAlFx2XtvgZRfbSWtDi9rjeW2aHvQ7IWcifeGXF5kXqC01Xa0HzRKsE8Y6tswEBd76j7rpn7zbbB6-kCqtdsmvq48ct5AoyNscb-vaMffAZu48tbP_doQZ2b2iefD0f3FKz1q_GGj68pAZvjXqZQhY_FK8r-Q9aB8eyI8Yt9Z8DHFNjqMI8aPjrONSe3FPBhFLonbjif_zNrnyUr8kxXclaLemlP5dLLVFmsEAHy5f0Yy9hd0vIxBlJrFv44d0SEa70tO4LYGozpkfJzwXS8b9MQXnlvhxmUiW3sU5Wm_NOjCdd3YsqCcKu-BHf27X3iMYGRExGVsKzPPeiLkFUi2OHKT8N9HRPCjSpMCFRhhRvq9CzDtVNtQdZfAbjj92oNwpHEFhNFyC8NTLxKlsWVZZZ9lfrDW3HtTIpTYgirp4Iw23IxUyxCODc5fEroD9D0adxLgJepEL923zirkTYZlPrk70daONL7bFXL70ZV7iNLSMJVzq9HklcElV6VWzv1DZ9_2AIzRFRZQc1l_rCv0BEmMKWMVQTjwQk1HZAabWLELw6fgoiemUkZB1kBkVrANNJNTD6zQufOwOiaAWPmuTET2ogfeOl90PPeqOkicuch207ohUYh7oeHdiJ4o4M3b82SW-sGwukyeoMo-85cRJe9FTs4AAOqFudA49Q-FqIpPx-De_NEQqwJQ0Gu3YJRgXM9FFSwqUaTiM_pwSVJCEw0y2glNXMmKjsEZO2Np33NYFxTlW5on5kYpQzgkmJJgB8bAYDdYdYVf8Pio1Pd2N3eicIu-LpTCOWipvKoJcdrQPZTlEB5rq7o3H1pdkm-Jx48TwHZ7YtXa4l332hnSrgTotsTRmWcgpWN2mJ6KAmXOBg2Jj7F-lGSWuKCNl4Pn66l9WW4h82S3UrAPr9bdkeuSjLixuqcEUraiaGKDKkfgIcULoiQTPHVDeAiSMxLTY1_1KLT095SK0pZNkvlmdidj4YAyeKg-q9CM1yOCShSD894-JcS1yoSnBab3A8yK5cSX04n4GVjrr4Vo0Z7yW0BTxTdN4xtWxsuWde7vdkO9SwEZDzktt0bmaXO2VB8IPWPSKnD15YO2Q4HMFHUJSMfw7xEMOhn9Nxmwi6_Chic5iO-JSXeRuG9qpKoLcdR8wvdtLgCzliU4Om6LZPjCmu3Banu3t9OT6l9baPfNi6Po-NVCXjZn0KuyPG_bZIPmqwbWaqFdR1OqgleTSx5B3Hfz5GnDevCrvewG8Gcehr2L7bl-9yhcC-Cy1NgvhlXpgbTXnlE5vQr9bw7kU9RpXyVf1od5AGGnOxNQbBxKpPXV5qQABeqgEIotIcekng6a-sJEul_hEHRAd2TFCZ2Rz4H8l_dACr-CsBye8SQaQuv2TU7zhDtDtsbUXj5GBfvXWPZWdVFuwpYakm4xfG30dvgAoPJTUJCfP7ohAXSNfNzu0KNeZrpKD32UnIf4phy0KkDJbODDjZx4cqzLTF4rgyTglghs8lOq1WLd7yaXqY1S25q90cgZqACGT9f0NbBC2xMreABijZ8uQMTLedjQOpMWxsW4QmhSJoHj8_WNLpLEERzTPgXjxkBASTekf0vLqUlIHEO_nRpcPjXv7J8Woy9Hb9uxwnSpW4oXCGWTgbL7a-REJrkf1lgKLiZETd2L9DuMBfn860OJKLW6ubUnC73Ml9knIndrt9ntzIrMt8RlCQXGOuzC_BmF9uZxT6juOQW7mYdyHEVDTqkK5jR6koyNT2h4jLTMrcmId9U198wQX74jInOm7swBE8WiuDgSGop7EOy-ejVxYOXe3QsY3abX86dmRGfDWHzSyWFyGgY85pl0SYB8R81gRSyijaJhpMtiNNl-3dHSvhaj9wdGwSXbgjaN_DziYg2h2B9V9dn7KTJlS_KZSMOmS7Gm6Rl3AWfQYSXvyNHwOiaCFthy-1pCTuzxOkCljfeGJEAYq36nFR3zeyvzFutiPwxcT-eUdWLKZabGLaIgpjg7gJuBH0CwKBkn5FH02oshd4WHvhCAZdCCwNaOvkSm5tBNJ_HIMF9CeW7vObadR5Sp0dgrGghn3-91L20CbKNk0fE62T4OD5I7nUv85mFPdFbaoKLESMBrFkJCr0sOQRC8SBwtKIfylpDAWREERuc6um5EeubiRWo-95jaX_g8y4xWtusknhD_3XWwC6l1p0yn-ZAHQACi1ar3vaU_JZcnWJGMHDrwuvCLbCPJryL3NVPrMhLGRLZHv8uNicb1-R3WjeCbkSrEXJ1sIb5o-Ilwrm6pKEX0-Msp0JbXfleCdyMq3x_1lmfCGPuiwF2pqj8m7da9i5wET5RyAZ9dghBAOqe3hrvSExBcAgEMXSDAGhJpF70JGAWbd9F__maGrP21t2eKSm_YUzfswGhnSZ-e0rn8jhs-83PzSfJIcWxCzWI0b7kLjnt5PcVfiIwOqSK-d46S6bXms05LWV-uk8PNyfF_m4IW3sWbj2Ax9LUViCYk5Zg1tdwnekq4K1H-N8wM2F-DQiVGZMZFx7f8lovgNMyQROFN2Ov3bY3JTFTrCJqDYLCfSDysSgmN6QrL1-8HCFSh5Y_okuqDLRBP9iGZWdC6qSZ7hJEABj9B9xsQLh90s3sGXYI5XgjFQFDHtTpYh1qpR1bdQB4AuquttdmWklWvJJWHlQCM4Kxh21SlEVgczqNGlZJuh1wojMMyLRyTd2wA4RLiYtgd1S72Tt5Lg_H1mf9hIIY4hs4A2XasGW4Mch7GuarDAE1eFEmZpaObuDGWeyUqjNQdF2eqGYvjrwkeFPdt3wcb4nhv9sxxxbK3oFgiDparOF81zv_XWGnjCAWJyfkjF4L0H33giUdmlTQhwmcF7h0UidzBUPHVH4IChdsr-cpQqGnF_hynBe-y6sQ16ETTmaVCziec9hpy56nXDxOtNFgyhV1cUkcjFdRBZ-qpvpehARftWiVEn66_Ko4E5iBpGTZ_xQ5EBK0DQRyCHHUs1d13dGF4_X3Ng8VoEpSMPe93lKcsHCcpXgeTPlWZdr0wJvD4izkcKcvA7L8Tj_B029WjBc_JSuZ1I-2oJsXnBEenWWn4n_hOFp-5TxvNP7B0w-2o2zZsA4kRbX5OO2c2SIe8gxrZSNZaUyZMvuek8SKxzRSBUsiFJS0J5tFxYBUilVuG1s7ioFG6ekrcHpnWMc9L_0XmxEsTUIYNPfc0rTaSk0_th61QR_26QcTVmB1nCWB1Nm27SM6QARx6SH2Q0jqpoDcCasJTTB_7VAxEjmsWqNF8b1Lq39AK3iuneHfHUBmpGMyXM3iYrxeO7cXcZ6VvdfZjQunQIFlG6QzcZQrbH9zJxIGs7lwFVOU41vftGnkM6jfOAX7z5FU_XfP80GrArpSFHzvDGpCYDqEU9ogsWXrgPNIzGl-tQUDTEBzw7GXqZz817pcpu6dvG_MAd5C15_eQEJ_bvekUBrUdnKmt4F7Aykn5OOGMvNM7CFBRF3GqDoMiEUPTSWDCNLk_vylqPLkshGrq6RSr-6CuRxv8tR9yzHTzib0rjjKp0_6HJIVxtbvmpCaVpo4aTFlOfXC3qyJdVrK7RvFOQAF2u14V-S7Oyx0ANHzdIMZfo9UirK_0i1zB1lil70TKTir2LMqHeI_fmtVj-zLO14VA1UVJLrsLpmeZeTAwDMEdZQclMxSRqkLJ9mjUOJt8UG0yb5y-GVKtkvx3gnqCNAPquBSzQtv2ZCP5JmrP2ab8qqLE1Flzj5W5Jry27MSQQAvJ8zY865eBDXikoMnVT_--B5fqyhvzHZo6kZnpcMeOmA9etX8nJifuPlUeGuF1u3zT1eu49wFwa1vjARHYu-6HD3tRbCy8KbtFMbB247VSV0ITEv-MSYFfAlwvxmbO1XifN4mD2jUYf7jiHqWyQQuLt-VD6dW-Hk-Eecoc_SwUAgkg_DYBBEftzT286P1cYVIxeGQ8Gcae11yoEyVV5umqZsFXjWreYkJ8Mz5zLXGwMDKatPDxUnqDzJ3qG_-Ch5rVq2oQ-lYqsXGTIbGpA95YESd8tDA4qCmcYQ3ANok-tvKB4uWmqn-Zo_QOpiAUKJvMsgkIawWyVk4ijuIO02p1bkHd4F5A1zLCEsKFTnb8qoUhRW-_290CmwN-P2JKMlhDklvry-rBnhgYSm0TmdF4mm8Cb3iquTIvYwvgV4oGQAoH3nK5rcZUQuq7mc3Sklp5ScedpVRhVzEVhz5EqnOpAzCKGGB1TT9i1OckAvZw9b0KNRk-QVKGswsLBUldc1IRFfXDtCwAH_TddsrzMcKACnfymmu7nLhDUhLjzIskdkKDhyEs9NcXGh6BeS7wvo9cV4DXkLECPCbOBpXIwaUPh4m9FpW9VEBeEgT6j3wUIwLUgUWrTkqe2cwdV5kbIinHHMGQdb9S44ixq460IhDMgb4Wuyj1YIgUOnid2Ve46ALGWBaboVp3kV03Av9SbvnYyB2caBJIoC9TOp9DPG7l_XbPFk9FfgvXTZaHUiQgrNSQM_sItTKJg2XTuUZ9a9smCVCjLh8Zo5_F7rHlFIS-FOZwsmrQ0yedi6mXHSRywm2FOedXjZFpBzZUlHMVmuUmqScaPnfwzcOT02YhoM--aMbrIgjgvTUBOAhHlcIkLZwSDoejquh_xgHDOba6J1h7fTZ6GsZ1i6rg7KbDzsTdLy_B_-XOwCNigLHFAKge5VeAa_cAMVAcPsie4Y3HJR0dYqLxrDxMb9dmfBZbCYkjIvG3IQLHD-hgoexvHfnRpxs44NT42kf0lmgra9JMxqvG7GRFbzm3pDBa4CvZZL9hAhHjAbNyebjmkmZ1WuFgeZqewRTn-mvIWvUH3Gh9MAXRxHsDuppCC0Y9DSLL_n9lOFd3twd2oK3TsHhJpjGPL_AGdGIGlBREidlg65fz5ZahUi9ZZ9hrntWIWV5stGEKtGcuKgp-Tex6_2xapfPinnPpHRhn5WTqacFpJ1BA0zGKqhh1ejjaqiGTzlPWxrYmlyuq5laqFcFkfLhRt96JMTVZJtZXtViuzDisfkuUy1ezpSxV5NaeDTuxgYemapaQhQdw3BQJO1y615h8ASjl38eqIU0iTBRUJBn_ljAItXJwvGP1O5jWPKiDkWv19kimIDtM5N6KG_K2sYKkZKaJiBPUxXIiXBFJOcWCUqLCLvxipfFZEKUpqKftefc6wgO70KL-g5quBQtgxilTGNffUCZNLYgGwpNejbpE2n9K6rEzuC-9OtDzBsAhDZ7YNT14FpQm68oWzrit3AnLfBw-LahjRv15huwcOlEE8s2l4rElUmxtMQMS30iANGXSVTw9JMFxau1RwAf7k9YfaXqWi3T7TBqv-kJYS1Zf3hHyBuRqlYMZX4vDiKIjRrBhUvtfcU12IUMcVW3hCC2VFU0ztoklDG-yvd_qx20TfmWDkdvpgvvcdV9hy4T6YE7EJvdG2kAcegPkRC73ae-W3bxLr1iqZF0FhqXIarSTgBowZvofzAqLaczqjvSqhDnjFjGsz81f3dVmEdDEj53fVJmys7e93HotD_i_0qoj3M3Mqakhjt6Dytak7DHrPzCi88_Kw2MqI3Y9gJ4zjnQ_nY9uAP8LJKi8cU-Tu3HbQ0WpnuJgOn3y-gOYdKPZHy0nbiNgr_aDpyVhG_LIcmELBZwWjXg93nn7qbB-HUGJz8xSRxDPa-KvOAgofec4aj5Tf9b0fjxobU1Kfyo4UcKBhHCuhTosjy-uLQbQZbLD6GwI70HLU-oy59U77_PDVHrdrDjBVAHyPKFJshLzqJz1i3L31wuUd7mcDxCqNR5UgkHyiYFxd5yHd0qUhLcsZxDZt7DGUhSO1tZ_UcXhQL5J7Cc_vgi-VGt5l3tMMOdL09_s0NGbXs_tZq0qHtLXSqsPe2EeLnE06rBg88J7KiKhsshEN2Jf_PaxclhUBzpqYZffCGd4ExF-ZPtifr14G1tJE879ORZAVOrRgMN6wVF1Aa72TQwyMNTHbBFw8sr4SfKqNGFfEYVvejfr9qej_YQ5LxYwCabAdEaTQ09htYpSeG1Wt5M-oAgKbuybNtuaE0M0OG3XoToqO_t2U-Z-A4MfKQHCl_u0K9RcyFa4S4b7cfW1Ki7SoydMx8w_2v3MJLoP_WavcJaf6efwTRxk9P4OxEUIEjo3XveFW6GFdlqVRIuZXjbm523_qTvAZcssQFtp7F88b41jQUPS6DiVc4GE-iH4aZyhm2XjR281rxqg9uoEM2U_XF3QxJfu0EkqXUGhlBiw3NhJTcW5gpUFEmTjR9Mv7Ok4sUnI64Id1aC-E9CklGE6WlCEwmtmYgPHPwHR8PUqQ_hR2Px1nYlGgsUjv9sfcoNyHUbd7Af7LkRZZTIQ8qrcQJPR4-uS_XtGHgMW4aBr7aclG8yvQRheC3krbvSqHuoyP8_D_a5eqbYhUgfG_4P7f-5Qym9jMrlY3-KsKZlw-sBXEREZ_uRd9Ur2_FwmUykl61GQVzYFl8t2domCqbHoa-uzURLN6mi9ymQZ3ysBJ1URF6Wu5vE98T5CERWWGMoC1KhwlddBsVsENfioro67znWfS8pK-NNNVGpDAgSk9dTmLXX7qEx_tTr5DCRk6r_jpVX9KCldkrt08XFb8f08o3hDM98-xyVYf_TF0PF1ZKdAO4iaO2xFhM3NDRpqO5mifdK59Cq8nBTy9-FmMgH6zoqEhtlZzSFNNNaEaiBZ9hR1hgcNTjPaKE77izi4-WP7vRifD9z-cFSqA-xe1Cfzx0U0yAeC8Baa00lfC6L51jtU8iHgHObVFj2nsLxVxa76Od0GtbPJcQ0v6MLEcDHfKeFUDVnIOH7PrM6fxJ_GzkyfAP89filOuYkA_NamdNCUVRqxndTf_7pjsYdbF1chelnvTkc1DrTa5VNs4tU-_vM64tzGSrgd1ugVM4IgOldaYRybsbLS1RrCfYGPoGg0jcSvgP8aVcWJq5SDkcD8JbzM-XlTcWKjDm8LtnIhXkgIqTSKmhwBK7pHs0rRZYt5Zvct1lm_zNP4vx-ofpZpdnhDK0DjAAlCFDdQSI6Mb58e7RF29QQje57NDolMaletMy5nh4S_iW6d66qOJyua3tBwhQhJgYEHm4aC9t1DitunKeLtJfyo23fLAf7tSqzAZElX0VWtWNgI8lzUG65odmyBdHHN6fivvd5G-h0-XPA1Ek-MInmNiDjxQUCBPCTDj-S7wEZK5ca3mHKti0wlrkXXMHLRbvPuwRgUkfS0TmFmHhWJwxZze5Gd6lkLAY_uu9gcyRElQnPqtzK69mceKhXpKvoxI8F1UEl3xBAyaLWxLX2bDAijrCRdlNxEP9N_4o3O6NvbBG2QxgYL-8Qu6waC-QatT7fuXd1TKnUDSunz-Cb_nnIprpn84IKC2r9AyeZJJ3AcikPaRvnSqcn2Bf2eVpgtI_Iv0LnGXrB-3elMlkfCrMX4Euhc8tOzcxMiN-F6a0y2smge9Gny57L81iGCiZKkyRr5xwnrGGDbfo_kG0e-0cFCtAZmy80FHQmhI5sLnbEib2ypSMMhlE8Vv_KKTqcrebS9if8dXbv7kBToGUkE6PurXapyAw4rjzDKEDrqcOuNTgWv3vJkSOH6rnrNpe6uyO2lhxO4a4Poy1DAh4EsIX5OcFv1DRbWj1rB6LHqaFFDCRvES7z4--Ub1soloff6qCK13pprhxKTQAio8iWhRfoTc4FelYrbXvbOuoyKsPMDCu1CNm_kqBmTRa6AGEad6ox1QmBQJ0GkgK9CSrp2IStLYFzQFpUTdkp8VX1NADWkmBIqIFoE45NK_H3W-1-EsRibYQYtl-cnopcc75lHDrWLbDGrQy0-OlSULY-pLJr8GnVDSECHbpo1HgQWGSqzRdNQlxR-cw5JDNDsqYmBx4JpnuCobo9g62V8ACu5zoVKMNNCebFSgki1pFFwNyZ7hQETs80MI7_DftUbdX1s9CV0O-qQUfNyz6KcfpYjErsdIGWMVgIMVXUrZukkVmUwJcmA-Xi3HUF0HI59XUokNLg97iUl38EXRoGVotQ70H6-xFt6_SdUguU2VypjGjU_GeW9g6UjiztIMVk8NnWS6nEOJMT7t-9JewEk1gaNitaYHSyjjapT4hhUDGczWqlnwG9YREswGL9tPLnrb1PnjpvaZ_sgXyX8lb2NjMMIOrulJ4rgcx1J5Ba6dKNNpbd6ffbEY8vGvueod3UlhFu-HESiqNYahu-KfIsyPKbHbzAbSjfirfrdOI-TWiPukgSKoiL9TcxzOnw57iBIjMd2Q82yU7ZDZzIvCLQr0Ol-RcKE4uAvvPytmaMM2h-Q9zfssb1SNr8Cg3_WV8hO4D8TzTk3wBdNf3SNiypcgip7N0n7HzWvj1qPIMD48JPPFs7r8f5BvKMtBDSVVl9cLCzI8npfGYo8Ndqj3e_OkPEYoDvMkjkX1JGpm1QI3f1diWQSlHNULBvdzq39vLVrJ5cuG_U0i0K4owxbFcJCfdCO6MRp5zuk2WvtA8h8ffmUn3dc0qpQ9knb9MlBkHxob3WQBqSEZWUSg8NED6HwIUv7Fh1QiFWpce0EbKoOvd7ECGEgMKvuF9Qy943ifrswjEy9ag4gJrOzSqKNeKLDVyDqkoeuTxbVqovZ833Z3OLLKpr3Di1_wojiFILa6navRx5tTzNWz13HyA4qqKM8trD9dh0IIAkyxx5QfkWTH7XkQYmOlEvF_IwKen2e--3C5bXkvRX8aytcGNy_gPneuWOlbruDUvQWOubYgc2jxdGjl9hACJuaHQ9nqS-8xrTPCSkBcyYj--yS3xa51oN6rZWTuivAsr0TETWCvnTKq4meF0Fsb-899-86wsMQWUadH9TBe-69D5Zm6tybpYWyMidaxyI_F0kPPkyLyLLleyRuhE2ohOt6fMA2C4skmWYnKB0TLcWHk_qgHQE4TrbKihSPg20f7S1q_0SxfqNTbcRXCqZgyUgTzn5eaQonupSCWLbCgpr0xPpjG2lOCTrrgZuFnv5974hRrAvqyWLWwgAfKIRd4j7EkDKRTiWxBYyVvFTepOwUXcSTWEAr-xfnEWCM_GR0lsOEIjSSgZ0DlyqzfiKoKzDsvpSs3Fmai3yHDEWN0P_OA4eWknXNknVBqm2KoJ5nSnTH36i1fiTXeMtaeOqx60HP2QGS2VXKTKngdSkmVKZuGGItqlLYNF9hlMeTSFrgctjJNpmJ4A7Vs_FWd0QKZf40EnUB6umE5CMuhuP1eSNFs5M6jVT6tuDimVSJFYWQvUfHyxXLOanKrSTKiLudjH_wd97JIA9dCn7DFvHaUIEQeM9C57k0KzRMh3XdmQ51CdEJEU3zVaR0ndVaX7jdz6DPB-riF4Ki5sq2bTOGjIimuC9wBX9i5K2lawMk6CCxgaF95oMAbA2Effy0WqEx_hO3DjvYLfDt9dAIY3oUPVYAMyevBcV_FR4FekG1cUrls6Nsmt8aX9FyrEAf5PqR3h-6UBJ2AmDSLTrp0Y0rEQgo2oENsuKtwGlrKGAILuHZIa_uwlCKPZpUaqi3KDs-z9geDG3NVjjSoj_TegE3a0ZrZQuBM2-baP_lWZgYA7gQAs6VgDhKML36-3jJOx7Xg2XWvwi_tos2bRilbVeaDGsBEQjtFxEZli5m_fykETRStd3sm9H6eemn5nHWapaNUKMzgG6MmoacGAtG70ObxqM7IJV8_X-6I-VaAJK_qLoNzS4t0o0WjD7gd9PkAkXBrEXqJ5p84i_44uWkvo6NUXq01u60iV9qi9zxIq_WK3ihPubgRR9PwSprfA7wat5J1S8jV6hRPU6Hq29Jc89oPIjqPSuz7nSEjTGx33R1ckMDYa1tgcLjy8mwUHs3aXuX8IKmZg2okd62tjgxh5tkJod3ryqp6oBuH82-V6xV-N9_YkKP8VBCvfIHk1M1fovugLDcL_gUmQP_kp16L2sEm30SUkurVRGhPfMHnA_CFJrC9-qORmUaBHUiPhU3xG5zcKztEriM7OM_hMwF53XYgNh01mN93kmPL6XnfA1bvBija_LmdxsacONY6PdlZMiJkiaiLDLWAP_2-ixECo9idxh1Caqz9dUM4LI6VRAXmEvcxu7_cgifnUX47n_RbaSdj8nT_iFZK-0o29FKMfi8j3dNGtsCVkpfJ91_Lb0Zj742uXJcnl7BJL8xcH__afHHzU97Eb2NeUbvS5gxChothGd0w-tbGEzywrBUDcIF0yYR6NpbJLztOS7Uel1JsPizhHEzFa-UdSkanngpC38umzZXaw3giFe7pUGKcIAj0yhojAW03viBTWpFLW11tOCnUcCn_gp3yerQY5WDsGw7k4KjDraEmV9RVnKtVRzJe2NTPKnQqHd1NgJz40XJVfQeJVnjnflaTY1yZ6UGticAN-1Z6yn3iR2-Xn6v8sprkccqh_-8pq-SREZvbnG2xe2dwzvZ-1lTOfvb9caJXv-ADjivdFAjsgejLaz1A24MWCN4318W1NJaXVrFRO7yB5tqLl6IR3oxjxoWcKp5kQFBDECZsU8TKw8Esqz7gcaWEsZ7R4CelIO_xTFfYExwRc7jlFiHdUMYBkIkiHb7epb-mzwaI_vY8fHv017CofwO7b-ARYSidnVw0kzJxZ5l4k7OT2XM1V-dI-9Q_zK_PjkFt2MxAFWCQZeWOk0yR1Bbklc96fP--yyZmXfWMrfQAZBhHe-Ag2tYXX_ysRhkIwxvPjFTAONrbRdl3Kd7KxXgKB84vMEPeoLUcZxlgZMehfu20lVAL32bki13rGx5L0i2yCr6B29lFACXxJbcvJYDwKtSWSPDCCWpw_zq26xikpKyZmDMR38ZOHdmj0q6Wn6N32fhdO_XQzIpbgHSsxUugnkYmAmV8fIUd72wbL4qMQDlTnEMfEmtZR_LTXV94rpjJ9w0V8_1--1GRffxOJxbHdp7X2Uhhwrbn3RK2gDaIxwZPf8DrHo8_0obef5xmEq0Q79oATaPMrpTwwFM-E2vQDdBP70sg06fQU0aGoWdx-Rlb7rkImphAjTP0b3t1JC_jtPn7K5q_RJXxd2j1Vd4hu0veTZP-mFsy9cKvKn8SKXzeyzSB1mS_Kd6ZgPAeS-SZl-ZxSpskdHxzYLvwagT2uJ0JH24Snv0FDXHgGLujK9qbMgRdwv8BCx98bPq094eY4k9jywntMcX5XibrcCBfMOnfI-R1Gq5i-4T0g_zwGCCB9k2SvwGiUAwlDChwolKSomF7zMPokbXv4fGV6c9JzpylhWEgiuzBjNz5zt-072r8T0-y_-e0e_NY2Ai115IUMbwDhWtAdbh80Kc8hFC8nB3GpbEpvtc95xkfjPMm8HYtU2VkowgDG3xwZuM3y1dupSJgvrgluk0r96Q68ZM4yzqoWuBt7j3nBu5aEc58_xAeCIpJCM65CbuPNlW8ixrFGWbtG6WtngDW2pckRlk87KzeJXWsVss7vUSwD9DWuizYA012Ve3wgrPFNleCsdmUj-BO1H-udQ2DxPXKg1MkRl1v0HlyFFiANaJsYFk-jLYKsjRJy00DREtXZStLrWp_iINLh3_m7b_dIAXUYuyoBdZqQZONHbVwHgR7N9PPfr-glMkAoMjWcU5oIUiRWCBbMK2GWLk6iEizF69J8viUGleRrjK_KExvDalBNcpPvm7chF79EYzug5MXRKvAzh1uM87vHD8Lo5iiW-dwd8_Gzajj1m4VlD_ylAzZTb9OajD-BcqSrmf6QmwfhWb0IumGH0caH-Q3hywOJPNHGwguPqfLS2b9lQ5CwZ7ldzCH6bh5hEqTwR6n4OtXMzmsfleynciLwlZ6XZVn_TYhmMtI8CRtbJUmwjyFYXS2Px9s4alqqGhWHUeR_HDr6NERUT9tLSZFGxH2Cy7MYx3Jt0GpWGpHXIp8Ia1mfJ-d_TRTBqH5HAmCMFof39DkGmLzXrZ6qfkIDNh39GpkJtItUrZYKqUTMFvypkPcLOB6HIkyUv-_-993RQvpdXr2FU4XAl7J4NHLQ2cnBvXKeU59jz1ripHqI2JCFjXRfLR7RBld5CsujlKHAju97tcNCUzfBvLYRbfTcImubyF_Sgvmszb6rMlsQ2StnhSESdlAsUHthnTB-HpmmqWis7syGWUzDT1G5waiJM8N9wHNXshtwo7Pp3K_0-JODqn98c9jVlnTUQQxUgzmNtgqkWn4LyUMVlegMnyaAnUGBkF61AXpyL5RWHOjt9nXW_h7n5xl63yfcrCRjZ1TiYdMSPEDjh-TZNWlbp4kQkhryTKWRXgUFb7_1cNRnGCrkwVxB0-iitKBbZ5NRbLh9m4DgNMKlEpS7OEw2hLUmPyRdzHqy32WzDC6AhWaqTs8vtjGUtKh1QYPvEYsUGB0Y45DlfhgRolAEOKAxO6kTb5b1jT1u-sZto76iQUxoE0dBNdcw-tJvPANkArxSSqTBHymvElfU-0WRYOEGBmeVTuZyYNXY40jBeJ03OxwJeYKSf5a38qF3kmQtTDkvc_HqDOhiJMk_LIH0bhQOMth-xcd-3IlkCgLZ5XxW0t4zc3ecuz4ZskK-EF3dcmmxZsruGyJCSbf45IHuYOl8sqimH1gf75IwqteOnw5zdl96WJ4_VuajlgLTxsHatP8tNBKIVYh5101eDdndxWwHOhsAZRLiLW8HQa5adKXE6TRw-G3PGA4gnXtfDMdYwUOV5JVd53YaTbESf_ftVAa8u7m_GtX0QDBo6kdzvgw34TLYBhBqnGGCFIZZiBF0SDui2bSokf0G81kLFNxCc_av1PTbJinhdIVglY7oSf6b-I-cDYk9AzxA7auZMNN3ax_aPyMrmxf68Mb39VDldKX_qY8qtaABIdLiJpY1jtU4d_0TEgtc35lUWJXaVynwBEQfWjvqFCLN9pKXcggGvi-ZxZqKxIeSMNx85st4ulqDvny-9oeE2jlpGsmaxWdJGynpY95OEOPGyeJKc6krnT4vYZm6JVo-mK4gkFwVh6Ap5GDV8BPTnmBG8lG3szt-xx5km-SgsGolKjwr3hnR6jwQkKpRvhOUaaOBGwSWgCzL8XN07tqDpttsdaiUIVkiHu11Wen_9yth8mYJ0jOZekAtLrAS-vsww_ninXJOH-tMsz6kxaa6g9JWDeEINk13vyrbcQbJNZJ7gZCmPx00Es8SM37VwmcmQUML4FgAo1nXgRM5Qr0Xp0AmBBsqjSjeioa6VVItA4v2FHI_WgLrEcadmK0G4EsKcNFkSq5JfXZm9QZ1tAnwOpbAmVjcMlwc7RWVnydPinCIBhF0KevN59fjaCYUAntwG-Bk_CHUgiHudHyc9l_O-nme3cXj6vu7h6wGPvjxkqCwtEeK08nvl9Z6lBDNkLHeArDWIavWZ7eBFu5Bqxeip7tZj_EFSF7ItxRq2YEhn6XFlMCztJoGKrWh9KJJobdnLQkgc5qBwsZamNqFtqNbiCBpayXW6OBR4v1inPfHNDLPzUYSN_JVFfzHHJUnR9ytlQBRLiFBo09q9s_4nj9BYuzgOdUmehgicK6XxgiycHLR_M-c9R6Dww8ABS2cYFIuuTbqNvQra178hzdVca_Fm6_-AU6GQIh-kk5b0oJ0fHqVLsRjHtbPsYMHoyPCGfd0xwTCKnvRAlFSqFUyCmVXNrnoTODHUEcseNC-gchpVBTviYWCU6IwXWgh9FVU4S82dSG4pnUFGsq3OY7gn08XJRjX-hdZZODgN0GBuU28Sld96-vPdyfFYvc2uCTn4xULyoo5X78UEOOZ7FTEF2q6JTWnauo7cAimm0IlxqD2g1aGO3fOlJIDkot9nDedFJogDEI5h8obuqClWsQHoUBQdu8qj7rkhUFS-YhkftntPNp0afrub71ESo8_To64glq7JdTqFcl6EwpUBD5wc3i2DejqJLeuC1aB800Cx7DrlgousJxYdJSGU3eAs102m6-nyWmyx4yPIuFrcr73Ketv3nXzJ86AZp0TJ3cWZVyAosrEZC8vZrH6sVMsYhQd9ZaslpJlE2dn6PKMhg3IOqsh2zOpimuS5gCMHChb1tDLUHimAmxxesVbLLadB47RLTA96GjthwvRyk-TlkZPzWfhL_61HyF8LaVkm0MKPNB7QMcnAkBqclSA3Ka4x0JUjw-CjUUrvaXF800eKu3i9DfyRVUwZlctZ4zZWCradMvP20_9Qw7oC4h_13gayc2rYCqW4fv03CQ3U4fMwgg1GMJYdJ9bpkoWa_yDzm5K8T5TKoU5SwuKGlZnKvY92cl8padHMNpJF2D2ElW9PLE4blhB6kdDJWkusqBcb-1SwVOgfZ6v-XJHYaKstswYv1ivwU341ottrR9xoQRmVEhWF49HlFy7_Vc6mgPurp-dgyDramR4Y7YQYGmKsGP_ILu4LxtNgbelvTj7rRrTEYl5RrVtjpQZp6gasqMK6GD1s2RA36PamdrxyLfbE0U6GYvUDCr2Yv82tjPLxVOVStA7vJo0P-6yoJOrkuqvZz2b2OwUGXer5ZFzueX4cg7rvHZ-vVGS7QHaUqIc4-4Vso5QLsEKk_nWD6x5JlvyWCTfCCiyd8KCd8gdIKeKT5fpDJOid1Xpd-aMf_tlhSlfdbM_PQL5wSR1zg2sc8vtMUyMknhVgWA8NRkVLxC_wzgtHeSX1gCn2_gZodbK7E7q0JFckVRQ5-LNkcAevpTBK-SgR_P46R5QhtgudaVn_okpGBTs08obrQAh6FiHVi9AKvYdJ30u_YXvug9XwUF34eyIpMfSQtulp0jDHCWZXBfkOh9vungJioQuiyYqd_rCtCzQpNHwFc8U5kohkf4FbI3_iDpoOJZYyRmXSkz5F796l6HsjK0ePpdeOQINKT-ThmHtJLDW4wL5mH3lG4_WGjMCb_idY6cbUf8mxm4t5_1UIGk3Ga6cSt2fcrzRd_oufIu3UROqLyLbYvlerHtkdhLLhqL2dVpB0gE8kkjikGtXA1cyBC6DW1J0Cxz7v7X7QNPwEcxvOsIUdn9tuq9uGO6VhikbDeh1aolKoMBUYbfn2jLVx3Y_PLPXzqiR7n6Bl3GBCB5kCwotO21GQ4jiuUhiY49TAvPk7wnUzP0PRPNHbgQnJf2hEpsFoQMxrkRnGbnWsmPRK_khSOwD0CojgJ9AyxnWo0er4dW-stY8sPHTbIVKVsuRpV9tVYvuIixiaTOrFH1-V2k_MHDqrv54ufSlarve2apBY2L9Iir8RVx5jY-kKwU4xtooDcpXNATd9O_-bXOGbpBnVkh8umh4cfyDmkwq22_oULo5yuI6Ag9xI-TNnOGMJbLw_2XGH0MAevCPie7sjrh368mSN7sY4HqDd_PXWwPKB1o2NRzhrEss_6MZDkcA7_ygaEVNf2SeJ5VlApfniKzPtuQEKr02aNlIp_g06HzIeubS11MX2kE6EEoxGOjOlgii-rgQpJspD5j_WHq92SxQyPae7bV0LRhOX7DJWa5SpYfQEti9N9AiG6e7T1oyUesDs6TXavO_j_eQI9fATqpDYEcHT0gViiOyMYuvIUOciWl_rTLaRWNspWPeF3yvxCdDR76K50u6jBKpi7uxtIncT57zChQyn3gBkTO2Dv3FriOSxMnrloXkDhay1SDtHdsW9uAeXLDdGxfB9tsJInpngUNRBBVeY1TOG42xznCTayqc0ruExk1qDf4jXmVxIN-XmhARilowpnym0skuGSH2vxEdXhIcO_8e7f_HMRuptTlOi-0YE8xYNgt5iJLp8lhAiNGVx79jfFf_Pp9Vi3HcVbp0saUMpj_1-0WWd4FWTDQfwDfWUFOXG-85v64tn4WPfG4v93e1ZixdNiDFVcAkoMkmDgVCGpbJk1hPppTDO41Q1679F3f7wLy3ZZxJlzkl7gSGhivOgyGeJGWf0VS7N5duu0xcB0oYnkVCHSaE2JQUmkrk0MuZOGB2vYSe7tJpF-rjS1MkDh9wAwjSjfvMCyrkSc4a2eaKLzg-AdHK8RIRaAjK331_ojxB0Rd2d_e1P3d5z95wwrVUBY3wOkrOQuFZYSO0Aw4567RnK61ic7bWcRMxx9y7ziEOhNdcwB2REw4IlbHsAwfr4WmofjxRpOIevdvGG2GbS7vnoETSJli4Ewfek24hb_n6znwV3gMAq3ESpKJSMQbOO6lW9cn9ggbNn5SoW29qhby_46wbOKtDjs7WpcySZbNEqMX6YIJiGW77lXGsmyx0x-BlRm0QwkHfQC4oFghR9XyCaSHKZfPy-9xX0DtPYe1qrKL4cZX8GRVwYkEFxbknHHEGEq0s54-drz3JYzGwgA7GypNNb8U2cHpnhSGjmE27W75p2S44L1RI-pTzvKAMU2BpOX3Xy37lwH9XfTYBG0sblSyB4P2uJRzS5mnsKIrfp0KGlBcwXtaPoqIjN6QvJh-m0ZiIhjpkOIbVqovRXpdXga_vfrWX584_emmw7MDZOkHaeHMKlS_Twf3-zh2wUgUmaS0otcnOmqLUna93iWt9RMaHuAZ5S49a_sJ_Vyfl4JSM-WVjxH1w8_dNxKsYI2Mb1hOSLPtxZLkdvWNL2bm-rWBN8RhRzO-8RzUiMd9tYuORpgmGZTzHxnSWs2-VRFBwm6SQAs0MJQdFBpeuiEhommYbkSTu82CmDFiGXtWV-GxN9YDN1QtlDuxtymg7BKELOAdLw5pjw4wS9P-Wg6906bRrE4DTLE2yrEaoLH1PlBLjlKQODdY8_oq_M4t3UaORzSfxBRjWojpuLiK2CJ-Hp-1o0Y4jGk-_t9WAb1-TzlBEmYxIaNmxsxi9Hzecqd6L593toGLf_USfFOAHzBQmtDuhU6-xT9m-y-l2oF8YpJgGM2zE_SyVoBWDZtQR3UbGdMu-B_jDMRpIu4nGawjwhA95QxInqoisHS8xrcfVHDgWioXWbAfWveCeKynIXmTFJgJ3cLago64xKzB1qDgU7Nx8rhHZqv-xKf-wsVCX5RWPWNB2MliEJ4k_pNPMaeBCcjyc_rPYttJYEHPwgNrEiZKY4dJ_nkkVHh87gjlEUBWsvSU3vwLpnA6B-9-eEFZ4ZygYOBC48oFYlL_XY7LMHAnzZqP7gmDDcyeNiJADHAfPmvPDJtXXS1AIK1pucyXleH8h073c5Mp75rqlsZnTSN_Ad85pOBFzh39Y3yIDAGmz1-L5mnv23DbA2T9HotFg605ogtD9L54RG2CuIQG7nYnzP5YZQyJNo1P_b1a7PzTo2Nh7njKYOHNnfNcPnuvRDEg2Spmi6r1GA4Xyg5ogn0CAHQpDhi3A22BNuUHZ4fw4QgAnGWgEli0NespbWcZVuPpDbIz7iPrFvhCJd8XxwTcPRqOWUPxMnAAfwtKRJImgeHjz5D9dRj94ITNY84CEqkPVUy_spcl-vMtQfXNgLj40qDliwuiq78VfUcF01vo2dta1jKiFJ4-a6DHrzO8lkrBrtEToYLwtKBl-KrPkxfNTShZsOedHCZ3TISyAd6otdqjMV0rdoNv6AlpNcBi9EZ0v6TFqkk3hfT6Jw4RRsWTDhFYenFz3rvIIArCQiJ46QZy9wH0XcxhFJuUFelF5im33OhTDEpDOWYxcRkuA5JX8ZAdLcVjFEsoGXPXg3CucBI4CZvgjHtNqko_zUA8Ki8XWtkZAAT3HtP1cKlGn9QfzeoLj5AydCCrsrqY1_ztjwEnNw6Yz6Mre6oTUysuIKsyvSAwmawHQFJguOoPfl1NmFgqB7Av8UVhl-iiwPTpZyukIooDasVo_nw_ewxnjWcxguOgoYHhaOLrrMVfFqr6nX5N9Y5ly8LeLMdQGtnFYzQGvkKr8h_ciWdBOyBJfchvC5KtigYRAiRg2CZLubvYYwtbhPL3pDy1g0uF7o-tQbM2sUVU_6h3EQLzzQdpPwAsGPxA4HsTX7ikMSbKNZV6bHXLnZZMJGt3gzhESQkja3wjs2oZUPQ-WYTB8xQH3ooHqI0QSoOnZGU5C94peZBdVc9aYRumV6q3cMhCxHRZg1WDuUYvHti_R477leR6Fn3eazDUOkRBQavg7vEkwUkc9PTkESGz-KePfcQDwM3BYffbTGwzCA4c-b1ySodCNlVgYzxMb9Zy1QBT5wA7f4y9xWoSHh8qfjxRiDYGkB6E0eUIwbOxNgwjgvDwR5yh5qve0G3xpzdkbZc88TaURU7WncZpLEyKnMKICvoOtK91U2HXkkk_ZauLntb-n0I-2arJkDEFpk-ehCvqdPvgLUhO_Y7g2joX1KDJ82Ii7SFzeO3KHiGTrXc0_kpECcGxBZMlrFJeLf6xgJ8Ol3U9jrAm0dnYdUGgCoBGV-L3hZ1pquW4L3d12HaBXP--EhQVrLE15aLnArr7ZycHLITkXa5OO2PKgDTSTpssKcTkAihF2DRNPad5aaFmHXzUxVNEeLfUSw8wqLPMiu5U7BZngJ-p5E7rRmcHps7cOnU61HlIQ_MKkNtNf5GGFqYLefRFIv_R6u2UAxFAWgLW-56-zkQbT2xErSOzRnL__FGPJ-Zr6mfPMiFrbIoYhtkbXuNOzes2LgRlfD5P58mkFTd44-n2HKQMF_6xcS7F5EwhX5TTKsioFafXi_VgiVtSvGKV33Vw4kchsUa0ivV4Ymp5C99IYr6XO8-xsN88kzWips00u2Dy7eEgaBpIC3v32yGX6nquyHfFYrnpXs4sFdieY3YiBWnZDjAC20JmSZS1Ql5BH3NPEV-Lwu_5B9B46G10e1PvIkJIiV5UOAISnEqHGf5N3BwtQHlkeWELWEEmHkCswtlhPA0s7lM3JNTAYaQDO-RpuIaU8CZdgej1VZE3noNioqI62yVDJa5cVCPnEASGzfRv083fbrZhuDTnHCWMabMIoxpmg0m4p-tVydsJf-2fj2DUv1ILpwn2jsOBzo5vULGXn2xNJZ5ozgKuyEsOZ5Bvb2xKuNLpCGxK61A9qskNNmq67zJ3Ri39wrdPEQ8UzFEaNGuXptQOyuevpjqPduO1RV2vW7tWvKUSh2cZza9gFVEcqobge-k4B44vF4tmjSco_fLYp0q3tJMVkPhZnt4jGe8MYe4LWnr_7jP9j3-HdP-LWQZ0syiWfZdi_XmGGhvMeCZmtWqfo01tVrXPoGYEZegFQUwdcq_BoeV_Dd--PfFXds4WAy_t8l7FdgXXRcDp8QvBK9FlKx_QECix5ml13newnkM7xOjJcLrF6CpR_HjsVsvnrvK1Bo21kVMi4THwUcBC_t9l-JQgOMvmHZPdyKcTMi-7EEGKK9e3dKgwAWeILc1I-L4Rs_Io44Pq2UU8ekXdzF6c2QdDPVp9QEiArXuG7JzkNPMxYRn15RDGNB2NbC9KwZBer2NjW3kVMSfrhswMCVTMkYt4iO2TcqaI_kw1pgqcYPkaiK5-plY8Jc0BvjsvkDfn1wgwyvgZNT2IpvDi6c7hy4CcioVvUGnvrRayRyBxyYKW8u1M_SSLGr8I5tFspDTm1nk2dprhnKSZV39Aq76MgLKnfw4lPb-aCBrQDhSKnXzs7DPaq_1F5rt-lvgC8r8pVvv6Ja4Kv-kFvAgWULLAZ_I8l7NHQeiiUOAD0yMEkUewxi330Myhu6Nc101CcIDHAkL_A2GwoT7G0oyAxnZ05JhCb8u2Gpe7gV5R_6ihA3alCYnA7voysrqyZbMrTicZUls4G2QP3YjdayXce3utiKrRG4QfJSqiAZPhvoIqO61C3kOAyjSbmAl0xTfM-RMOSJ2bf745L_uF9QlruG1kipnWjVdNsjodMH-_6McFHR-YqXd1DFy6kIsfYiRTXDo_2LsgItE6jgKKXtZQOLKFTvSlEcJy8hCjvMZOdjVxxRmrLRQB88fklncCzH4x_0b_-Z7IZRIF0IfEQHaeol_drXxEsGCTVGGCAOpQueavmcMnJVXyxFGGXlJkf27eEk9EquKoXba2nvh4rIcYIISACEOeANWuTP444FC90xY2LmiBl7Hk86rt8krheNhoRRISyLjxbewEJkJZuNmKNCm_7682Yp6jImALfbb2pFxzfTay8NhqkjxpVcUdWGdumrUpsfcJABNP85IGNUx9dFhebuwaWEQBk1iIC4mUEuJBgdyBbbZSgGw4o5A9zqivbR_k1HNyjSPNUAeu8Ta7p9Ey7N3_B8wz55KynTd8CFdGTa_A7VmhAa1Sn9F-YahBrPueTFp0RDmVH_54GMaLv39Y5fWj6F8UKeREL5OKRKvCx8pSThJl0yqxgTVNybu9A0-zD63A8J9I9Ev1LbeZZng7W-mMxrGi1rB0kroikKS3QtcgHohvlL_ESgGBQkSbDoaPkreuWmcbI19KxmJUDK3K7d-tJP9QuzR0aIR6CmaDw6LBpQKp-us7bsiEY9U3OsvA72gOAdvjnEI66iiHxpLfiPdMR3H7jSuoDwj3rR5mf_bJ6D_UKRKWZ_JhMfES81UxWSaY48swElpbcP6xA7GDvvvRJD1apEJo7PIOwqUO334foIQ-Par_ExqYS5EzQ3wdMXdN1fdqiMXmPTy5f8cAvQYf_SQGeRxS0TZZMFRDQVVdDa5uDz63ne3ivcMadWJKRBmuIxVox_cJ4S7Qfv1c6epiDa12o4sPCHMdq3m4-n2TLpGEsPcWvSy1L_4z3i5BRvWPG_dM7yb28hwuhztdsukNh_FTfFXuSe7UiejtrAi0NbxlT_5jHcmpE7saali80dLEV-tbBGHrM_9oXehra3amEeh2eFy6zDpSugThgRFF4AhQ4O5XDn4sHOy8v3aLLNg30MP56YoJShXHzUX1BhnjNF1kI5B6PJoH4xRX_GRszxp0csXcUXTFkNKUI5ne4Omri7WH9CEjSIiFpzC1UifzaAbUQ2_-YZxD6j_35y8RrODVz0MzzqQRh8MVlhGd0s42rBIkk7lfrDB4R0VaeGr3HICcyiT0EiwZEFIleoiZWWS9S07rPS0msBjRBEIG4j9D3fvx-eydsAaxI4kyvEsqSOTgf8egEYcpvfLZa6aYNZoVWcG4HcmYAwUC9D3MT7NPl72c8lU12ff2i2EjWJ3UKG2mCjRyQ_orgR7zbI_ErMSbjT-OMfSlsADpOXfjBAwrQIG9tj470ccpxj_xCN_OEzU4xBF4CZ9sv6YTIrhpeGtjENubhmhQ1f8hK3df3oXQ4NbvUXdz2LdQkmtCi_uKKMYXks3McycoP_coeJ8sLQV40cqJ307clG2WJIx53FZxPkV-L5YyMMKczxo7gC3pGjBN_D3D1bYZzkjHwpD-L2izQ__7xVlIXOsu-Tgtl2CZyqyOFE8op_7_hCo0jdMTh-jgX5l1apNkcUn0a2wuk8frf2-3Yave-RvIpQiUIeknQrUBnbNxsCpPtmk4N9aCATD6PgM0Lt7Y_IV4yUPCnxWRpnQBa1T5kAYjmk2dVfUG7vXfCet0v78aR3gj_GfXwsMyQUhrNq7ASiQd2HDAEGUW-LkoEi4Yg5tbA3_L8T13xuePAGUfTglBx_0_vJtWnt4-vfBqRg78wdlpS4V8AmpgK3f4oRipzk1bfyPyuTuI7TzikQAF4OL9HJOYxMDp1JqtD5SMWt6133eDvJvwaHo5wJIvJM2vUSHLidN2t9Pz962FDIbAMoWJ51ksIAvlE2C0e-wBKqHUz4TArkTNbNJsXgPT6RKw3IJZpCX8U-rDEuPo8qqbv2TkaGzhyy-Ha-XDhkofYEwJxPuy0DepsXPuPDjVe1zW2q1DspQBH2NQ1NgUtGNON8ErRXA5zVU-PLYRIZrldTePve_Ughh0YOENy5F-eAgdhLaZt6b9cPk1PfgOH-r351z6cIR8KYDjKMZnebQpPqr4BIWWX2JVJgmkFRJziO_h7pjSeRIUujhoGFqAJWy2jXkVbP-g5MWb-05-qwqv8YrpGyXgDRh8PZTtW6Ui4kN0DiBG00n9tYyUCBKgMN317OC5yHuR04hGNpreyBU8eefWnppqfbgpTvSLzdVl_9-ewEcT9TmUu_UyWt6PNseiOO1qOPOQ-Bqlz4k2e3cgoTZH_lbPzKjajeeIlPgWogiLpOS7vy64A9z2hmBbUJcIDBoVFiszzmfzJwgDhSwzogqBq92P4t9KRS8h4jLQgN6QIjo3sAE6HVPbV3H8OLtte4v0cvUM14yWZ8dyqY7HWs0CydhEHy_UDJ9ZeCK8_A5SgY_U4Ww_ppQ0y-KMi3sNlBqoouYo5mDNRd8ZI8yXfsOZmu0GwTpJoS9QvhecXr27EFSfsTS1joMZQZIGmbemYVY_wb0FrTdLrqG2RrnkD1YpNoqTRiu19_CnptzBfkNLsMS4TzadybYFjDE_-W_en417UyltvAOTHAoc01e3vrc5zXHa7K1ORq4I4HtooTnZvyaHNIUjZxHKe8saXrZFYOo5DQyE1wSlPCxTqKvNgYoSGEztYvAemI5sRJa1PDh2NkiaNe9e6aeUQ9SjlSKNPPfsiArCCMejPMpzTcUQ1ZzdYUUBdTRRSariJdnp9DwHqBY8lhw-9y6efdcqyhtU2E4AIIkk3XSE0ZWIp_MPkZUQxSpbTfvNra-6VYqhYh5rn6J7ZptVeNvXmTVYcnVoHreY7ZfChSUGPMOnoIPu4A6BSQxVIscPpk1DZ0eLTn-9wW9WvSwwzRuOzQfS7FkEK205N_lnn98pC-H2ai5ahiKLGNaW_e5gfBANP2zbnmCkz0Y3vwyxQLbGwwahb54U-mUg08KRiGw_IHMGvxaVTyJfHTPPejlPUvw2tg1fKSoT8O10PgYo6Jbv0j9pItqU31t35SbSHe5f-BeGXZ6-7sBjt-KZlAo3kpAspkFIYN1cFEk6C0BiqGEeF6NqktZensDD2SfuFraigRr_EpdsvTix3LWEygP00moKLCDL4Qf29b3dtQmzNr3dz5aP3eMCO7SI-LZhVYHfyNz4v85cNOpb7jhUmCEUtASRoO7ZpiAEUqm0i37-0mpRtazxt9xE4l5KCEAmu8nxfr2NthbtRAQ34PDZeed2D6KsMhVnCz7KtZtRAB9SRFyzHwKCdQNI39LFM2FRqAAeiXsqQmMTBMuvBaojSxFhnXSnDZY5gmQyHLZKVNaO6_GZ7wWQdh8CH0PdxBDcvGE--OIG-Pz8hIjUyxS4yUYwuBHgTkpnaOVpohmE-uiwaRX5U-JSGXJ6tZ-7eRJEzDbixDucPLxakW81EoBcRzF33VAXcEZacuXuUkLMVRsOylexPQVZOAyfKR2UfVLu4ZMiV5bzrkHtBvAToLsCTSDnQ1C6iDQzu6KnPGyQSu5AwJxREdlhwCsY9fdd4cDcRi3xOreUwqrT6VpWH3os0CRipaj8ypj3a8hZUR3d7BpdqasBMeEzvMnWJ6JBWBDjE8EQiEQ_9aqS48GKpzlRDr0xjFXRWHyGcrXZ0cZ2eGXeTtpO-9RU-EbVJVJNuyUVzPhktta6VpjWMbrZZpXwxX8hGfIJ7ZlZu2sr-09aeLrMr5r0dKjsCWK3O8FdOFddSyKWZRYS6MVvAsUjQX0VA0kpYgpYt4IKlsP67wWRI15a31sJrfYSmcJ0f_2e5slYQ_aJQdVf-_OwAJhHf4l6cyEbSQ87kT9OiCUe59hh-kbXfF7HhITg8Pl17jvroEl_oMhMFxbq7F0_f5GwFSgBniHI876hSkfdsSalh1kU5dG6AD8gAuUeZmCRYK0VO-OFJhqpXFyx7lcwkf9snUs0VzGk3ScY9No6IC20eANov9hoB6FOCOELE-eB6T0-MdaRMokHKwdUTv_H3LpUR5FdnWfq5iWTmp_IckaQeSRnTaTraJhUzUPOCOm2-44yDk-ocHO3ZiYsQKg8bzWsWExbJRId14HLvX1AJF9ixjkQz3M1qoTKFhe2he45hCvnUlArF6jWlmpuIjBCit21TNNA_h4opbpTjIBCxuxjAW5iGxiYSCr5i0eZ8G5Vf9jkLHDhPeghFF88--3qiPUBYcOeZ7G0iwgKFZS_q7M0U8htdZKBx-tMsqex7tfPjhapsBJ8mF3gQr3gYIx-rAij1CI6c6mZdKlMJYDUKqTyqogbbZ2JTnOeMEUGTS6NmTfn3V2ljcZYppGJ_58S4R60CrE5x-1eBfBHxjr3FAFAKMD9xT66R1S92BwJOsIO9y74-7eTifHSYZoxtoj7EVS4A1z2qi6oi00Hq-eXweeqZxmoWqPJGXBVo9n53GtHojIK-REyG3twOXqzuLGgBPb_NH9Dyjz7jIlq1j_GVk7Kzl10EQX-0PnpOOyHxycAFdncLWI2vumppRscTeUKckCwxH4bQcF42BcLigsonKSWLQAz71WYw6r6-jorfIJjm46Hu1RASfnAXxmlLXA609NgTfIihCxcOZJtelahDw3Uhk28snhxklPOHR8mURwLaVWCxVLZ5KeZIApj8QBrus8B8IjHbUm8vYztFFCuhyHKJuIJRMu6onU2gMKzurylfhzj3VcLX00SRa4MmF3iYnhrnLDlRdorDMlktPoAZ2BiXWXo1dQ8m5S5sOlsQVX5rBmccJFcRfASKGqe9c1Im4cTeIz2bna4ATBWfHyArdo4q8IS21-m0H-2yj02qXmDcU5_pgWcHy8zNiAIX2hDqohaTN6oDvR3zuaO3Df_5ctXZ7Owld0ra6A26S-ykLA3tfQSxRN7oCXO3c3VknOQhCF6IlZQ99DTpNb40S1MWebVIKlu8B7-WXEDHuCLLoHqlmioZoVFPBeyf1aWEVLSoi5_r_TX3vr81I7bnPV5GZ7f8A7i0YojjrNTfzF0Hhxdgb_XYbOoSkcB8br50ohvIVuxetlwJYoCp_fANJEFmx6xBQLqs79uVle5yc7R_cBCtDB3KM3E_ZbA6xWhwbwBWd9VS0oPEKVvgY1t2dY7YoWaaUCjRg54KNM-xOCygaCTi7HhBBPZNvmM6PqnG0qD6IDb9G_QzQvb4qfv6ZMYhr429CCnadd7xMJ1KjVZikH9vMtbM6i8FKRTGcbExYl_qkrL-p0dzFP59krb4b0GdUYPof312H5nTM0nxaZJaFEdqrJL5DrN1GL5_cRd6ZjWBZKIz0MT3CBMNuVLPK0fMKrfzldty_a4Sm7wcNwDGZiwK2EbfNEpdmOeiiwq0H4tc5oKtNUj5Mxp8IQJvY9PSmgUoFhmwrjuV7J81pzSwJOuf6i-1fTmlJ2nNKu-hFLX0370cKC7Wbf5SremF-rG14wt7rsI4rIhXVU6h_3FDu3dTR1WR73XvxFIkmQiVQcIq7Yy2BC8DDUa_zUTIP-IDNlQgLuj-cSfbrSERb_t52KGQIkwGM0Iql0caoR-QRRAJ7990HkcNED2rhQFGsew5oIjSZM5vmL384N1XxaXXtwB8rYgpz6x9fIAlAK_zmDWLCS67cawFVaJFp2FWmplOpd2Bdzpzr_W1Rr87xEUGz0W9AH5D-iiYE_xR4G-I0T-nxJ62nFp2PpRUWzyt4bSdV6TyUO52hk8zA03HfVLX-CeYP7H0aW853T6f4k2iuuCmOBKL6Dqq8fEa-M9mvPoHSeQILkTuT7orOQKh1RFrE7qhe0moB4qCA-03cA5gTpSTz4bCGbvix7YU_Y3THlJygaJ6ECFc6ZRap880OtlSv2m7lvVGH10RuwYvISgNM0yyiqpP2vzDx4Sgo67BITmrdiwCQAUe4v-JxbE9HwcLzgQLR_HPD-_CdBjrPTjDXH4JDHrUnsvHKR8mdHid93jLIic82ZEFKTNy73uzGnzjDY_wUKiFBFUh3o_8ybU3OFbq0rAcRntiN3nSlbEjoQs3av_b3EqVBzqZAcEPPTCSQuJRe9_tsHzi5XMiF4iIYEojE_kQ3vdaEZN9EjwHT_zTJoRPnl2ypQ2FBtLrQQgSAHkQRomPTDj5qAtutUCYBiuN8ZhSrv5EhcjvHXNNi6K0Bd5zmAAdN79TzfT68J2YUTCn8hFIJ86z0H-qJPmJG78OsWoRjfMZNCAfe1qK_zBe4hZ2aRbpKTdMufYRgaNPEAwJjEY4_Z5JfFIFE-RUtC7mHj2eLZt9NAFu9opdMcGPdgUk7qCDRBGlj8W_wskchgszHmBiQUYHvPEXAI4aW1WJxLzyGx-YGyoMJ8UnTB4rN66beSIq65UGhYE3oYqsik0WB7AFc4YQBUocqsU6DxUAS6doPYjnFY56lGfVmO4ZkLk3i9c_vAXexTXkNA4JyxuqVcwk18SupCjnEEBssGMK8CVu362STo3LmUyWc6LN2-7gyD1HRAQNyEIkMlh0bAGhD1sjKvQ3LgFejjhdPBtyFA9O_8qOf7n73MW8OcYw7H6LQkbUeTTWb8fnAG7-GXi21h57DVfJQw8sy0RsLD5yjwKEAVRDdKLaYgeuZbDdMyrn7PkS5n8ReRmof8Ik0ezS9ogyfsHndpej4a_-het3EHP6HtAy5LotAgG2Dl__urcRvDyGuUpm9iV5DTG8XnGRMFIDZ2Ny3Cq3enm3TUCavd-RPvXg7VQSxu7B0PwG7YXu1K5DnEe7Dj64tkwN3SuKeHnZE_7dcrLH-mYreSfmGznp24Iz1YZde6Pmw_6iiCK9Y-dQJyqf8u4ixN7bibHjj1pP1lsop_biPZgJRptBiR1gl5WwI8f1PPRWMgrqa0CY4nm9tdoKnllEhjCVx-DMqUyrX5_KibWSgfJGP6qSjxhHXn3tz3zWjatdNthWNkIsobMZbExK25heMMfXRS57quyVsnP-FgBFXrMtTYGZzoE3sIFv87nn1dw8swstRaPgn5WZolIYWko33avUaAfX3bXHANMz9067LjqsLBn38HT6af42BNwNZ_bb9iisZf_uegkh4KSjme2l8Z_SShbtszBzvmXI1xMuKTUna3gazMyIm5Du2TjmTTNINvnKiwYKzOLmwYAT68i7r2yfFfJIf-_S_fpooNfh38e1ZqR583SZ5gBONIvqQX34tw1WWvV4QPoKDDZhLXwWT5ftgrbqVS8UBmTo_sbRXZb5et-4cq8iRSV8BkWOKRDyE2FSClxpp-FWPrNMktnSsP3ylFV3NOLsUOXTOX481Pp6XiyMMeS_HmGNUiEsCYp2a0DTIVKN_3_-7ZeYfNXLzRWzXVYRHFWSesQ7l9nAECuH1uDREaxV5rCupEoW9ZtZ2WsVSMsL_aGsagS4LxjadnnfOrR1gU4ZNs_v3ja11WZ3fAxOZcv8RZ3V8O9BnVidZpYKRxshDYMoXzLYIpFfi1Ud6nE2qhgipWMcwl91P6ooByH8mDhCNodg0WTB6Iskg5ohMU0yRNKiRpZD8n0D1D2NTVdn1T2fAmbXzM2jq8R06c0HmJUv_y4r0dqeRg4N82wkpyRl6GgU8X4sTtiCTeyv5cnY_OOUmWJc7beldFRQBCpR7enU-RqqwCCB_WjBCU7VBFe5YxLun9jGWITWO_GMAkbNvBPZ8ZCvWpZum-LwRBVHWL9mtgcwJv95mNJtmrU9SCe1zna-PQ2Uo0ePtLnrLiCCV6PnLbwgIDt11x6CzLU9Ip3SZdJ4JplQ9MtnOyCC6aTK-MKib422H7aehOGAg98WyNqbfvsXICNwBzy3Mm5n8HtKXTYKdSiFWsg_z6dAkckp_48Kb2sRGmlk2LO4ibKGMr55oVrZd3Nnm2ZjWoqRLvxFqxLTyWGDsxqLT_JrYG7G5UYVQXbUheSDk5ulWB7F_HgCDxzDJm7xgt6g-Usf8_mVqPYZZppeqJC0NwqKfN0ZJwTT4AZlIyzXw6rEFAMp9aJzrgs02LsViIW2TS4DofbA6bqr8Rp3yvUn-pjJs2W8v7lQDASvlpkbGnnrDxsHuATSCcNOCklKPXmQrxXF1G-kC8JeGufuuZMNv1fZWQO1o3eZ1_LZVStBvKByIOtqxpSIVoB7R6sRKkBS30C1DFAFbQ9BIZ6sTkc9RZcrUIcKrCF2aanDUNVTnbr9_waThxakdu0XBrzR6f_YxqPPNrvxhr51j5RD5K1nzP24YG2JlMoERJzsuVoLjLCrkL3ShJYZbVOd6xqaINz1nJS1ywFjHHrtv9P0QAhWhWW-hJUFc7ZvDFE05SvffIhxecNr99LAQKX-x1y0rz7qIL0lIk-iRdycnr3govUrjMV5N4J6ST62VCC6r52j4IlxT2IH9zI4y7m_QOydWlA0GXmnApl5-Yf9C09iJLP1r6s-6jKThg0SCO1A7AAsMOQEwuckOPkQ_t2OlTrRsjTIZIEJbucPiaJFLaSK23bzDs-1yLHjUXGfxd0FGkradTQAT4ZHGkM8YMVQdrcoo1O5cR1d7cFq21Tp1pdej9iCgVAcmj4SszSe70NCPjMb5nN1whdMhZQklhjaV2swpgI5TmDVA3ATG9Tb01IVxSdRq2WD7supoWCC-rdNkgcgyKUKg9HzrzJWBk2766cXB1CWSrBsDF6nn6S-22sHIqxmA_Tv-2Q7XKQZxcERIE-t0qoT5p6LFPDSbta0YxPq-BICJNHqDqt1M7AuNfC1CfnQ59rwRmYcRIQ3pxuQBUSYPihRmKtLlprWP2dSlY8Py1QBm1jKR0ZdqI99QxKleZRHQix5_oaJhKaJww-In8S2nlhrjpyev4PKHkdkkKErv9D1S3k5TUqTr_12avOCi6xhsulw4VVw1j3sm-xTn3R1sjdpqMP8bGJsmZ6SVjnb-clhn3FkpovheFqpEFqDuEB-xdKPygzMrBrnp2WzH9yXxbn4Gwlyxxwxo3UcvUJxtP7vwOMON0CfE68u8ZhqtyX7NXKE48HrrrEZL6eT6N10sFA3mhf2PtS7gQ6Qo0gt7Qbci_3rj5Dgvt2p5VK64e0I_304KehAClCcMCTRedglvzQJhgwK6UyZu529TFT3_PHZGDkWmqUGqyN1v6omJhtvgJiBmm6iaZtQL58zwG_heEd262oM6VRRJaVmYO7B7QmOypn1sU5pNFz-_c5NzGYwMXVxj2n6EF0XXhhkwlLQB_lgwb7XmFzyZGenChWK_9DerNipSyZW-3QOt9zNhAr3zqTiV2_eHi-rTQ_dVgzK4oYuAy578xuDNV0dmYJrJQ0WqWHqSfUk8RjnPCrUwHmBlTIrmKDpeWXTAMCh86s19RnOFEfx_BGEu7cc7lwhFeKMAQPDfCMqClZbL6eMaledii9uMcw7kIFraIzRv6FLNBQ2Yji3PVRbZYz42BV0zR-mPtVlJnjqZB6QjfAQ-YZM7mNbQiSB5t1EPfhrLjmfK1uX5-i0UGBMZX7sOI-GkJfhHUJfgL8PCKMcudM7RID0OZQXtWQ-GRWLdkWaBZsmtNxVrMM9rd7ahTESc6-7OutPyOF-AjEODotsgIKY6hoVYotw_uVVxFHi0OkXbQ2W0IfH5o2PFW9qHT-qlJHJ9cuUzfj09Tdxz_BDNsPaCSDRKhegOGLRxvdZ1lASBWDVFNA80Cm0kvwKPW8Fi8YgLpOMXbnZc-RgCTiA7PjlqnZrexXBAjWjY8C4NTry0p5L_gi15Vtb8ey0BwmjTzaXMlj26_vXdn550ON68wqR_XpypHPS8anyxq5_BqTWgmtwPR_rUD1vqs3AV1RMxiDo74DIN_nFHxheiw5PvmXAkiVFeYcQe1fOBEiYANcO76TeXYSR7iXhR2sAs6b1UC_XWoDHCAdxki2oiL6bMlJWrEw_0ct7wEz2gUfKwQUU6v-hexJzsbQDn922kDICEBiS9sqH-Y9YGB8ZBDy--u4BeLGGCNR8_4ChVCVHGLUzb98p9RB_MppGTq8INsL0ezbSPoqq9bq0H2Yz2gX_RJ4yI9fUkvtmpsN7rlJQ1cP8rCJVtQjvvOAa44GaLIwdmQG-AHFK6GbgKmoWZ7jJ4m_B-qX69fBAIT2q51ItEnHcOZkux6umY7A_uxOFB_qr3emY5FMiMyKhjywwej_aPlfL9TpvM1V-zqsTWz93F_p8IbzbGFsiEQGkcm3DEHII5X5fUcwXbGnyv0lIAsdF5Be1XZjRLYsUPb_ulEkme1YwjT2CjnSGC34umhImw46fs36d0dhP0zTxGSBtrkziNA_oJyEi8H2MADHrHYxCbQMd0lhHJU29wAB_MS3op1bC0_WoqJy3SETZ6YZ5JxCDYoEuEMnESn_Ntn2w9XYLBN0pZGr5zArcN3BEGUoAt-HDT7Emy4NVq5jONLT-dAC4FNEpnHvl416HWQNQucRQZzgiybjQidc2rthqiDiHfGHeL3vnFfq3ZysNZNE2Y6FEaczwjN7fyA_ZkMo8mfFLcs4xXWs92ZYZMYJw_A6I4yh829Py9tmTVteq3HqLk5TcZGRfjy2iuikdOmHdueFd7KYOFTY3_h5i_fLNZi1Do0NN8C21dG_oUwP9uSFK-dur4VdIlaumN6rmKSfpj3PLerKf6K7lmEFjMbBLuK7QhFY_a4h1hz5ObJ6pQ_pdX-67IcNy-m5wxLN9Rq2mwF1LGhOjPQRc12x8lEpRuiEiT8bdPc7dxXOizv89T8qlwIVzejOU2I2VBk_NW_9nroGKW0BhNomlYaH60X-oAq5MtpJQ4pkq8OS_8qa6BKY5GL1LrtUOzsR2W5S_tJJPBTEeS8K4ihR-_2RFHDFOWDMjNEEoQ2cX9lI9ZYEyae2sgZrsceb6A__Zw4r4IfxaV8UPHdW6GgqzD_VJKUM5EhlA-vedavVheWLEB3MA-q413TTzna1JrMd7GSg1-oWTlCT1tM1RYw7UPYDcmXYKow8p76cDKiZyN8F3cE9gmd-KdDYo4FYaGUxmmRuT2ZzZzlgLCZY49wHk80-exYJ3uPFEk9vE6urQTzR1Nh7e15gsJq806D6f7h9AyySyU0qRnalW601YHVpnfxOnA87wqIIM-xA0HywH-HTsGDUT7lE6fXV37oH9angJuBwSqv0nXP3ydjWYk6OuhfOp5VEDz-ysu9dZ2vdD1wxGhh8aDKIpmWEGt1k5UphVj7zMEuhyzn0DG74UygHM7B2EhLfJn5mvk8nWeRIWzbLQNAr6IoJfFk4PsJx5ikkr_rxAUWhOSgacX1hYhl5vkX6PYSdO9EY1d_VGWKe_WODuiPa9FiZTWrWxV2tzMzF6zxtV3OecGt2mobAMCCItYcqM5IaxhMR2q2OCmsMEUJk7JKpHOlZDKYjXeRdx20X6BxYTGS20-xqER04fBSoP0qMll5YGw-cmCVlAEGSAC6yUuZUVDZdS_vxFdZpP_Z0gNeI_2MkRJhIxSdkeRHbvk_4VLVYDXZzVpssXC7CBYbmlmQYiBHnRDC7eSplza6ib9125TuqDjSIUzHCp3-f0p84bngxDBCrlBFLnxxGFiOSW-xJP3LtzONvzQ4dg6b64lKtnjRahqxOSG4MFOzhuFkYuLlVBp7KmvjHIGlhDLbcwRJnc9bFYPWVLbUEDAu1D7UIdZvE1heq8juJBiL4kR3LxDzemXmfTign0rgoQ4Sa1wu9_dbAp2N0LKXFxvdqpqHogOFaPNGDRyEFqZzcxjcLGK9sSuXHq48Fz0LZA1vIwWzbVnmb4dd6QiB6AVgeT3yiHCOoKXtuIdDDqSSbamEyKkgQtyXsYazVx3RgSd_cgAmyOzAJTk8E67S3qadMhYrWLIFrXoSROE6_DD1k6Mg-j_0O5n4KTFbjlUjvACESD6P2diVK6q7UIZYuj7J1m9BP11hnaQh_JZwLssAKFfJT2YPU0p1i3VNKVLEa_9ICSJROTDWs-C-QDirGQqpvPoqf3vmO5YTygVfhKio1y7wQBHcoc53ZbXt186YBJ0UHgV5EGtaztsjMJBwB1Q6sA3vQm8RIpxxRwTFdcH2SAfAUUpwRiGFJNn67BRSUBqjDk6wcEuq--RxDnuH8ZzXutWhar9_ICjMHnvktZCzybnVgbEMFhGQlWBaDGc3kQsXKT1uU55A_KuaHjYAoyZd66yG342Y52DJ9AnkeKYtLTnEsi80P85l26Kf_Oa3O1DR69OOTO7YD-h87OsGRnL56R869Q3F9Xh3tKkkzoMR_oGKQ3ANufjSkpFasp3BgWq1U8VpcLFiIrAQdFexrLlViWfOr4WwPoSszbb4KEGjnzSmbeDDlWACacYnHNtOj6lZ-Qo4v5RKBtZu_GYzXoAaCs4Bpj0qQp3mNcJObYq_2dVm8y1sDBO0C7neMmZqS5lEqkF5srMSQXmCs2k1qhZYMganrtpy_Qno78lfMCB_txdL_E3-YmadkFWNtymm1uGr-x5Ef4WTYBImYia6kaSty70y-78Hr0XGlUn0X5G3mJ15539JxOKeQdrRq_Cqy23WFvvvARY2kckVqnYyjPABKSkd3pmbXzpTPhwms5eCuc06LUiu0M-viMhimeBBUPeCsG-JXiWz9gmCaMcBc2RfNXhiNAFujHjc1ExWrwoIzjqN5lFDnF-mI5kC7gyIx-TjbKh4A1hSzH-zCpnuku9qI4Y-FsWZ5A49eHigp24et-cui0Tb68muRA3YBkxd83jl-tF1nd5IooHnB9Im3odFPSXGJvaivBTLR1h7W7ST4f2k2iJfObIbEzZV0GNcRs8Wz3mj3tA96yEiKlvmp1W07DAwDqaZsKCdV-oirtzvcGOA96eBHtj1CLg3JmKgF3unNOtrexgAXtW9TYadKZSmKhwEljfwjy-72t4LC49hMNn5zhJs50M8PgNUEcAslHj1J_s6rvdmTwxYjvwy97RJrdiNlujF6WXnosJEc4Nuw6Rd5SFbpcMo9Fg0V4FTiR1TqZ7hFdvHzbyT_yGO52NwOQEfV3fyLnB0fw49TWu5nXS7uTcUwovHJLjAcC90SNN_CCw3RaI2aPt4DKSGIhwHUWECjuTus2ywLeRBXeDR_Ra9YnfFTDTdXcdOCjQHHIDVb-QmF2TE2yxZn5D3ICvXYN1HCwPorVHI_WD9egBqqFkNpkuLpPefarzthh6e72UJijTP5UOPv1tr4JcpnxNiljO8dkZ1Y_730Q6DpG4GwilNYQuw4Wm5M9Q-TC88Med3xFpSVPwKXK7OPF-jvhT_qIaqx1k70vOjtT6S1PnIqn8Ubi0lZrVsiOJaCVvS0ks9NdPbDj1IRqr9QJ4wNJTemP5BqoHbIEZ-ZRQuxh1VSYS9-FHeelOkeyh9cjnJsBBk8LHL1BmDeA0KDbqmZhGuYxD-jWtNM0EwjLIhu2I6EhZQLyaaEdrliLPmCdQrFyfp9YavaSzExM4MObMWwxjay7j9MbXzOiSE1x1QfT2zEuYj1ZNeYpFGPWX9c7qSgkg-yxRgdx9PR3tE0PnEzXgLJtiz4Qj6RJqwEZ_XqU5OcevMAjSJN_fC8BTt0CQup2_sTQCdMC-gNw_PSovFlblzBzclRlMdrPFh66nOWsDAeIfTRxdlBvhJALXSbWzrllBQFZK0g64gulrC9tMAoCZBoQKveJe4lCg8BqDylYBLjRaYyr3G7YBjzN98s7dIaYCC0PWu2f9gpxs_5VD8oWPNp0uOEfe2fhQ45mDlyTk6kyQmOXOCKD4nkN0Sob74cFWbh5yEkVXVu1G90omKHIIty71Ifni0IXlBO74Bda1G7VunA9OUwmHQrCS7SSmhsKqWyvuQAeCdZP9Hp6J8mAyiIRmh0fjAZVz6wW2cBT3fotiZjbrockzIlCltWzKssILq1Bf3OTQLi2CfHTpw5lJA6Mh77QrakW9YcqhjCGOv-JVTgfUGAXtL-NeHPorDXlMK-KHxHoeYz8lleuHn-O91rpyGjqhIoTr2qyMM-QJ2YEbHzEhTdlyFi0JeLmhnwbWnkyw7974LuYPrz8lEbWW472z68rVsIEhLbzdBw09JNjrFsDcenB4tAFlLgFexJ-gklHEOPrKQjglhqL6z-PValM8YXgXILXjOUHRTQRweoTev97LUk6ND5XuUk84sfl9-2FOciX4cJpeEHHkDi58Wao9RKBlieDVUFkncgOEzxzZ0RRbhqmM0YBu6FbfxWaYofwoW6iEG_vA76ZpCm5LcLEI1sdoX3XWej5rnaY51oH8vD87cV6gOj3J6MGFbsciJwueh0JVGH5NYdeROcm5GR0GS1wZcUXG_vtlLNnAHsL73yKZS7S1qSUwiRoMYkHwEEAxwx2VsBBzaWkd52ns55tx_c4XluOrWw_p7qu0WlkEVDuTqoWre4moOZdQQZg7sQZFq68nAu-9VlJNEVd69fgdpJemBcZ_n9nlB4MNcSCCApT4VTUcyFO48j210HsvXw76Avk08PR2eNQTNcM5Ngdf8a1PB72sKwtKfFh1oOIPT9GtQ0j5c2Or831J8xtlHnH-dCx_lCo6WrI0xvAcx1jEcDakfOd2sJQwxidNy5D-HadVguX-vzYw6W7fJhCdriLOY56WBfBSz4hYlN_g4Bdj0lbgUMH-7G6QPj2skHYOXsul4x4Bvt5qUWVsmzz8oZCBgicVLZPMZaoirk5O7bGsdfxr-hOB7pkqRLx10ZdHq_UArkZ3wShilk1hiAcDNFsxTIubau2Kr-DOp_72VfvItaB6UmBnTN59dsajAeDu1O8iIqbeIDRgIQrXY8kY2G4q7Jurpdvwr9uBFsCHoIAct09LIZJAAQokLWaqbnQzc1AO05frVixnsi4o_tSqaCEZbF5To2v59cCJ2w72vw6gpA70o_LoCX6kkupOuL1h_MML70hmd56ThkYzeJbGuyXD7_RK24oX06YbfCz2u6ed8uA0tmORldU3BKbQJ57uukTherQh3sXYvfF_ptqetF3J3Bo0a1ej-XVognvD4P226lz3LaJHAxKTDIj-g2MQEufl5uv01thTL--78pAdRAoyclUE0zafQnzo1n_L4VIqiERgncmafpe4Qio17F-ZPn5GsgopY6eLN0myKtjMSeJdaEeMR2FDVdQRAFTNWOVpL864v1UnP048fhzvG9iIU-F4VIt_yx1r3T24K_uNkYD4tkLhDzV8vjusNt-INCKAHYqCglfSQBHVo1g5VEjm0IWRA9E2b85_o-Ghuopm6HrN_YxlfCHzoFOwYnyfeELqD9J9szcuzygWDAtvnmOf5HPs0P2PXyFA3qvcK8z7FcKhYAuwDbLg-cNHzHJE9t7UCVbZgvz_703DvanhjWbgDn2aEitHvIEd46B87L21k1QH2JJqahT56xv6KmNsbM2YMcMVQjgw2fuVV6kyDuaTNqb0wEK8fZTXJAJau0fQOECo_UwWUMwXrZ6dHNX2gollYFoW_Lsdue9xIbpOKqLNpb1Vl81XVrgsO3LBRpb2ZbLYcbohoneGzKTcfJXpEAUg1HTT-dhR5k-xo6B3T2HNCkbC7c68GpviE51j3zV7pyraWgX6bh78BTAjg_lTLeqUPod9RfkCgBK4FBAE5P3a7_DRBOBkQp9Y2HG9klguxoCzvfwe7QiXpUvQxcCiiU_e-VcZyIx7ysbTojIgnKYJuqOPpN2cf_Ud3ZdHdFnOT8lcPVhNySYE4d5x5jvxlWYo8uxlBtbaXAqjjAnTjPTHSbeLPaRmFnlcrvHonoehUZqBbTaCQpMwEOg59fnHvrjtNdeTM32n3ROooLoA_qmQR1bdPeCX08-QHnhzlk3a1QraBJnNGdor_OGt18c_q74OJt8VaEITPuLbhx2FsjZbCtP3PgqqVVzzVtUeUFkVPKOGhFkvmmbWE_L88SpuazfK6Xq1l2drXoz0D8FtXtC-C_0RZfW_w5aoZIIIKOYbJnXaFmmEFQV44PKZY_wMB1laNlqEkLJupzIQotng9BnxQHbkgwknsS1jtL1I8yTtTKfOczoIUVBBaVWQXhqHmqd2E6GHvElGdmJMj7ZipLNFrWWfzLW8Hc4TcliOGf_n-h4A_PUI-jRnHDil2w7xkvefsp7UkqVtSOPLE85X7MJ797_lGsX7LcMwI7jQIwPqpOMTeFTZEZ0m5ZvSpnze9Vftm1kzh17RnynUiCyQsPhgQ2pavwA7JMvcqQQStFvXuFua_amnjHsuAmm5iJM78X1IaKOLbP-1wKxYt9r_vJjhAS0rKkaudlNvzII7cBZ6_QCZpsqSzi5tansu6PDnrKXx7rb-YnbZIQuysPWUVEYLiuxwNj6UfjYDUCzvjXnBV60C5vTWqciMTv0zjodsIFBcz1Nd979nBa1_JavXsRBsDKG3lnygghq1zQvUXevPhsnnK9S7vP7V4n4XeDCmhdCxcMXfQUsO8zqCx55lILQjfuicx6i5q5UR5QE54NX3nfLvvjE-CJ5CSK3BVymqiVXBkOVRwFZbbJh2FSoVwo2uNVSy3aECUcPc4CoCwCAzyoHNTrwSvIBLBlN2M5RpBZ0orHhXqfy1kvGkss9CKbYOMvhcSvPinnbl3PpM_y6Yfq71OqP_KqpJSVyXjDD6S6SiSJKeFVzYM9uIXngOsxh6IndTjG9Z5wNKgUHdMiKFZ7xrSrGU28k-Ny5a0IzGSogxTlKkH8A4F9ErFaIEUZyi7HmL3oxo-nkiim2aKhen3G8rhYRAf9-JnI-O4FEHBTAmTKl1sLk3Y0-dUlFDyMGIrHgpzntXVUH89qnad_J7NB4_y6YOt2wpsJNiqdWMNWdm7EYqyHErIDnhl-DsKeT1TMcNAdfk-ckBnhajSWT1t_7q-tbEX2Jz3S7GULAxi2shwqQtYkGNki3L7TmlBAWiLIPlMXLcbjQGcjygplXBdUEwjIfSIDsyBgu6EAhGCvKi9C_FuwJ2bPcUduOzoGB7gor98LKHSxn0aV_gGfSOzMm_Fpaf3SpvxiLDBCFLxrzlHBawp9wHDyd2cqtq8zYjB6Xal9aYZGb89LdNyFm0QKUg3Sj9KbfFm84uEqcrIUqqkUegFSS7iQnulqN2jgSSd97zj7wJSTofO8nB6F_VQpWaDFKq_J2gyfNcJTn6kqUrmRPK16BlYp7xvk0nd4d23gr-Tty2s8yWYm6i3viW6mAJPCpKSFgUbyYVJ_qidjT3JCEIGrl19ZGW5kqtzgeIsRnDuxc6s47GU73UI96j0TLokH5_JOed5rZ8C323jqk0CJX6TCnbvy7GK8wgJh7W2ZVfk7qPIWWgLMD0hLkdJztNOuTSGn6mMbakEvf9ponlV2YItjOQG7QWFTa2L21vuP5mP2uadiczRQIVw_c2JuhetubPd0wCOrDK24lA_X60J9B7iKwEJ-68CxGSqc5zBe9zLV6lbRwZUSePwzMVi8btLz5Y-_Y0R5fPRoF8KyT21OMamxS1JVAPrKKvRcrKq70lUDHf1L_ga3oi4An7q9U-1Y_BtgIx3CO_X37FIyCBSEBNM5llzf0Bbf3TJmZGI6gt1cT2kM5cdHp0HFVugkNj1N6TuTrioqlqOfzzxxLPYU9hihW9qeFGUvZBDJWJO-UwM3ORzOgmTBYv04zr59662BuL_DpBosgqM_q-Y1wCp-8-KUmHpwvlVPz8mIUER_Mz1jUv4VDQERqSPYcHfdKmPrONUY6WrPnUMNIvqDNR5swcKV9Zodn2DZlEOfvYt1Za3MBsb_jAk0nWa7EyutN_sxLHp0ixXyXTFhkFjoj41NfC2iFmmNXbDV6LJAWgBiGbKHT6lYoMv-ja9GQbahLhK_jrTIIF-q4W3janC8aV-o9pOQfcaEIdBIjqut1B-b1Oc0f1C8U6S7BmuQj8JMd_lfmCSr3p6hYy5GLqpq1veumsH-52XWadE9SFBl8eNhs6XHB_Pe_1cEtFM1RlIZjW8awqCEVf0drZDxJhp0FWl47Vbn04jwwq5gt1VACK3bUSOrcsO93k3vqOevidr-DJJm1vDzOKYDeXiPf8uMV8gfEAsevAW1mkq8b0y8b9J8yEjds0CHUKvnGdh9ubUm3Kbc81Oz0Xjcg6XcpY9OmSQ0ZChWfGUUrcOh6R-leXtegMn0vV-jys4hp6JlMij2RQzE95ZkGlRQrET02dMLhLhIArl1I2tB5yqWT9MD-GwEfH-WLkgSe4ZDmCJO7xLUJGuy8gqYSULbfZPtybx3Pc6R_4rBZYqnvcKQp-G9lxFPEDnBb1BsefzYjtlsqBLdN-RHjsKbrKOiaiR9GNVxvTF01QB1sNl5JKt-bkN2WVp12SA8zSwkH7qbckMGus4em7eV_1kHG7tkxBhRLsos1lBsr6jq2Jq3YKj1bvInvyUAg_eaXYzmXA_gjAjPb9NMTShUecPEM0PpOWu1Gf4oTPuNinixESdRxTRMq2N2xtA6xzziQa8Tf3SJtu3Ru1jBoIlh0RLMlXdq04Dlr7n815zCW7655wFBOpjWNKRdf9pG9ifM9v5_bhJybgx2BaHOXBwfH_NHGWbwO7w5jt8LAcdNsBiOPlQk9OpOA-GJZbIbP3MmIGpAtYmg1kZjlHpel5MlTLjErAcPxYurKGivf_4quNjLy5VmlpEz6xh6PtVz3EiaEM00wRuWXqUaIIKqiOKcIEWoB_lNBhejzigqheO92CRKcfwpbPR07LU1DNnmD5V0Lmov-TGrQ7my519B266v_lDAjbIIDYsJ-AClQqDZYPGwUOwAm-LzUIJB39nVCU2kWUgo4rofRKK5bPezeil0asrvRIVNuEiUOzjo0a_9-20LVBrQnfz7i4qKbpWoDHhpVqjc5Js8OyihIm32MaHTNiUKe0IaYs6AZnyiC7Abev-QvL1_tZjQr5fMxInjXnvlPsMwqKs8d28fp5V5dB20qxPwPqzpzFunZ_77V3zZ1exz1z-jnKZMT6U-6OH80u8QgYboAfgHguzburaLcZ4EmRMb9ikKvXx_KrJndjrgZc_D29sYm0YGbkFrenEJD7LiCvtpz4s-RXPHpMy2JrCxhpic91dbVaZt6HB0gtGH4hhdkz8rxBuMnyNsmW5KYNp3KWLu2JqEfiDtI3uFFuIIa0UncrmZrBQgjoXpchOqSDEi7mSfmXMU4ZxdD24M6-qJvIqfXuVluET8I2RRutAMBafjzSdsf1ycoj95bTckjT-bndsfv1IprqPKlAV2x6ln1gcSToofixyI8v2vIuPhVa-9dStleGmWbCmzMUZnl89btzmzzhczIBETMpxPHoE4_L4jSe-S2UyIejkvQHhvEIqWEXp5bIrxQ6HyqEvVpy8uC_Ex27pciq8bUznvUeNz0tGKqz8g53xouGQLg9WHM1HsK6tRnhrZhSWO3u8Oa7OugIMWjA3dqGcnXKHsRMSHXAAYly6N8gGt07he25lJJI9AGyFj6uNAczxWtL6ZKpMKCt8iugvIgf6v8MpEd35SZmmOfJnltI4mKFzYhSXa4ISeKayNRyTDVYFs7pxoBv6KXeipJRp-q14P7rr7IRwVFdoTIjwAdb5unKYRVuYQdRg6aa7CjhW3LAXfCqcMj0oY8uKXV0gksIIfjgWwP76vasI25FOrNnz-0PTSDp4pFHkCKYe5hBZsTzX-xasulHohzYpVw_W-RiwIIMb_ZTB1EA4xZa12la00GnFeAfVUtpaa7Ds6NYUuQKUGF-1UfLmbPOdVs6btqgXN3fajm3s5DlLVOvjbhbp6yXvbcMDg3qSm0m2VmDKEuZbhP90E3IUe1AyjPptIHlhDM7QdY7AENPL1XBqLYK6ZBFEMS52-eYGS8tKKOu8LvEvJjpJgNBkuD4noUYy5cxVgkv-LEzbb5KREnAZN7rTEo_-Ck4n3pyCd4q2Zz9qTPSKSjEh_gGDJaBGcD0897ramTM_JYoXD-9Gf6QQ6Nnn7bdjdJZNsjepT-_qlgKxafsTkpz0SiytCtMV8XAuLI1DW7z2l8VNE4AVZgwvTF_E61srIW3aTIhxplTPl2bJC4BGMg0Mp8JygavSf-hPmus_a-a6ztRT9Ite4jYx2oSeO6a4L7-F6lNefWvU49Heml96Qdx1ueSNs_RVKo8L5Xm3jeCwgDoYge7IGCf8pbufQaIP1M62k47eC_PFsZ2xW1r6qwE3w7MooLTk9GHucxvSgCewudr7HWMVNqbJpCujhU1zYYXzZQWpXJZjkYr7UfeTQs_ihvAlhnNMuxdPWgRNdjjIKwQ79qqUwMBK8-0_rBbvcW4NVwvo2F6m7JqhEmPXS96ekmFjwqP8U0EWtUlTU0nHholQd2kBWx-aXXU4O9gA_bdfQ-G5_IU2K8adkdyrppe_ilOT7jex5djobYghId0Uw8Iu9EW-IoGFUfaGPPTjs85hNOPuFtBeHoxc608HInVBuMm1j4IvbkCj-1iUdTMwFFldPusHUzjrhEn9HklDHDXRYo89c6CNb5P60VvxSTftPJ5kP7XdtIzt-qdoTwGunalLdpV1G_W9X6SDim9uAHLvjeWLTDtisXKkrFFm2q8ShVjtnIRDIQBKdHA77pVOlmrTDgN2kIxTe6RBlFCBQ1zdiNGk1wFeCHngAMXNnxlWCajZT5mHAwDZB2PmcLAblxpz-is2k6LtiE_N7BMeLhjkAckt30OQXlWcb3QjhP1Ep3JLA0huc6t3LVzDPR_-lB8-sTkJQ9q6LYvfmjWrtmef7vWEC9G_08oyt8L-3e-gVkOCzKaO9SYqBi_Ij5TINPjsZ6_KiZfsu0Xts69nP4ctzHQ6svI3_HFQdn8-BOrJDTgGLa8TZpc319hDQxcXlJkGYjIJJd_lt7mM6SsnzXrs84Mmd9PDRe18sXbRZNXN7188e4zHCAZP3l1Zn3KCKLMv5ErD9sOSkkhk38CM4si3L0X6qqyZmNuIs5C-ynYNg6MXF7t6jTePHcBo7YO4kHfCbUWDxEUqsnMWQ4-zznk3wLjOoKYpp09G3ToHwvpWvF4biBrWQG1peKaCMCYOHY6W_pJpopoRykMkqR9T64mMpmefHsAEZaGS_VjZ0c1HlVSv2MJXsm3zLQVYNySuA-sTX79wa1Z2wIPc1_g87q4-xED2wDazbm0vMHFd9f8ThGJY6VGQmOO4GOkbuNg7ukLXj7oTh78H4ZyW-1DLvtdPaRIuuCZTG9EbpRMNZ7SfiqngI5Tjw0kbeEen3SRJh30smc_jOKanri_8-nLRXjV02v_mzFP4eO9ryYtPinUtAsT3kPj6M5bxXMt4J0zYLg030kJCxmMjKOone2InM3xFH9AqHyf9ZOAzmz_ccFHOwtnbkM8MzlAQ1_H5Nm4KSaYpbwhSCezWkkne0t9GUAYNmNnikk_ujzHoyeT3l6rBqx22bIcPtGdGZ5-OlvXXMPxpEhr-Lpb-90hd40LECAU7UDcgrZbfrnLgSK4anCN7tX1OUg1von99xXJ_YUs64aM9H0mo5waeHxtyFkLkuBBIGp-EVxK1iwSTCJyURzM1cPgZ77oIRLOprwDF0HHJlp9nGsmkqehNIlPe1BBlwErguE8HkEHEIIArrRzSMqIvWIVy3ci9vNlRIU6N1Mmi51kFLyfcwXEuGhqcRJ2dTmSqDaNtDkGmoFOinUDTvY6_46bFo3jeZBymz5YSnuiaYB2MtA3Y6dL-qoD6vZm5GIHDlYk9es4TkATJnGu9eCkDkLHFAxqwn-oV7R4c4E6Je35AmvEObG0Fa1QF60RxvdUvUzUtwQy6Wi9BXtojvw-UINg3TNl0GPQpyp6JaFXRrB2spnVUZ5mWMxGz4VsD_kooqbGO_Cc2EXUFS_z4DAybfetB6ZnI_ZpZO_R4sk5FpBNIxQRbYZ3zfpcswFtLWZK1YIi64vYKyp0eSbN16iLVsA9_SueicgugQvT2I4xZCep11NZGjthnPhnsngP6rkEp_D5P0pQvmlr20gNl0CDy3AUua4cdlCxG1VHTHk8VF3rH2Lds-AhauCF4qyjQqYk9NN7KweA2dyJOemaH4gRG30rySNmB7eRfUyGuqbLa-6V9EoqFRIZc1uDcXn5LiuOImfoFxdhGadCl09ybQhUDB8FdG_G9lPAuG9m0B77akrOUysMC84s6pX04GXEmODHAzHz2iiJyJSHs8McgXjwGHCjhPU1hBzgY1IsCESw2tV2yDhw3br6yCJHyd81-SwupHlwDQ2HMsxo_TjRd7SL6JbLjuC34l_w6SWXHrBeyT417Nw-1vpJrQr83W8JVuVZB54zVvTSHC59UOMZQz3lmUFRvRkmBdbX2qBImwqjtFU9gNHh1bGvDN2q4tbG75WnvfDojPniO_yXbFZX9TF59j3p-wLB5bwzr5nxqfn9UGezuZEwVI4w55YZhp42bvIdyQAssxIgf7HkNa1SI8SrcPvUYOKzap0UA3_ntXZT2fLyZuNSCyhIK7VWVx__zJnJDw2cmBQ5nWWE6zyB5hhfBud8Itwc37ltCJtxZUKXeGE4u1LSRgQPd2Y7z8M_X1rBLaIH0kXVqgyCfhlvIWGskIsx9xuQ28qdK93Kxrg99dB_r7OUvFa3lK584ZizjwYGQoYUFwwy_PIhTvzIlSZlwvUFPvucvtEF1ncBPEVJfFp2q7EFij9AW_qkzx8BQnn-85biqIkWvfW2H02RCKa-TWxKqPhNtDziwNlrH22H7AdwXjwIJL8aJPiBxUhwOyv6JP6sI7IUCm0kvXbIYoGh8lwyzoCU3qgsrLZFsE08ubr23_C5Qf_RbQcQS8fnoEMUUkcVqi8K0a1BmXquW08Oom3L-zaCYAgXWpC7qUXFrJifZiX7lG1vZOKZeFFnZezVP1p9IX4az2ysoM0TB7tO6wkrttKoflEHAlvB0iFYe9mtcRKSBGwUNNPk9PA_AimL4X3YVBQduYyaqxYMyMPjXeVuuwGMDoVHiEDfbx1XQsUG22Nk-bmClp6oROV9oDkxyBOsCflmIH3saHjfxPthtX7gZVXoqTyzVnHNjdQpO4TqQkVYEDtT8fqqaksVEXrn5ayePdLjTiBfj3w2TW_zDstQxcR8PsOxKRZTzoficUzde3PLM3SDBmfryG1YzanUH2-F9JOi-zpnFVGhSwzcK7lp9nPNqA0itiX-GHO-M26WWTCFDTgL-X_H6VBNBZ3o2Km3htuU25HeDCW4cDwQvr8MK4xDNPWX0g89-PWpkPTAhpetWBBFry_ePDXoapmKpb2GMuYcyTPJEG8LW7VcxIFGlP2vMSpEKUo8HBNfnSVKqxqRJmKQwxdbJUwzwFg8SBP3DvowQpoiggcV2XStADiKOfUjY3w4PFqycoh0jpLCeeiRQ7wmZrc-y3dOOsnJfHo1jHkZDydhyXK4KVuooNiC6duiu_oqGNHRZxBDoAt__PlB8SnLzB1zTkoRcnQyMZhNgi-0lbMsKj3FbxXBfCUYbU3cCSptLymifSPYV2TR4LxyW65Ev74o4uFiq0fFxpzpSZYbarA_1dT6cgbI7LzZvRHhTZVNC8FDOqcWyPW2o8vWFLXuVTmg8JPdCNBZezv7i3wEeYvdHjC9umw6Arz8_RHjJVvVpeBhLRocaTIjBC7qmB1istCFs_N8jBV561ueg7kvegh_TInWmRU6iimf3VegHQ1JFEVrNXHe76tsfmQ5NU3n8cy1plMLMvAxjmzbAnRGEg6rV8EInFjugc2kY4B4b6MVG7-iUMwXok6eoWJoAjZ7cl6tYSvgYl4QddEt_jY9v17c_DbsJYhuh4Fs0lwDRqgXlCx94hos9Jx8eIiHG9FPLl3XVyliIlyBi9FKYctHLVL6e7rc_TFpfgVYSSZwsN1oh17rVDSpxhtWdVzOyunN-MCEmeI9fc3fWOv5ApBS8LbPP5LnZPsfmcJykCC7c0d0Fo8ajilED7e9S3VZCZeVRiByf6PK07Oq34S6K5oR09tU4Yx6Ce11qW3-DYAxk6RzbZqcd3vi854JE2n85ROgsmuBG08zlDgpoZlZ43PZpX8FpaGTp78KCjKXa4vMaLB15DrmpZvmViSXb5NxSP5QqSCBQBksVGJ0E8KGYJMzHkbzC_1ZZkEtHHo5h1P-ez0V0TD04VtbG5G_WdPCzaatGWj3SGnw_SnV2AWue0lhlCmMYRElA6zn8koAS6KB3Ooks4suNvfEpXdVNQqXJ44BPXIvbk5OpLGzGKUDb3wBNV9WWRVY_1LApkg06sBeVrb0pVjBD5zSeEIE_BpipPYyEonVH1bHPLMrSm6homD-ryDdxk4633yyCsBYUdI2Xu5bd4qzv3_N01UJWy5Eg7UtLW1o2bn3mQifWD5MTBVcPuyDMLjws6vFDmop2vEun53Ifr5HwNlflFx1qAty0COSoixfclpPv821v9SGmsEHIf680Cp7FIAD-6icUx2qr6vRTTjQ96GcAFRI0yFwKFM2N5CUQmDdqFQo8uKc1imUmmAxtPTxNLFuA2c5H2t4Wg6dT5HpI6Xf9AYn9lnhTc4SYWPw1xYuAKidG6GtjmhIibOeau97UTbtWIem65RNxQLD4jSq0TSGc7xgGuVC5AUhftRJpPI2_5tGRwdGvuIK42BibXwQESzZNlJKE5IwJSh9AsURGMEOCAjGOijbWSD6R-tEVDbKCxgKySVw54kg3JFKJYry75Lklcvr2Q0-e2eM_zfhCyvZBKIRh4VTlywf3YkH-frgEzqK_8P_YMmHHzmCClFiGb8gYlM5GZ04cZnxBuzd8vnZk4sUo4NO5_zanSKjbZE0IZ4puCtY3KoKanM8-x_jn1hKoOYmnhOWIz7SWOaJ2a7fJYJ-mylnpb6pzL4G5LMGnoz2BTg3-yRaK-GaC1n20pQvBEydqle8lRnqv_BPjuU0C-2XxBrqIZxAGLnc8T6l33HNCwBXLz8EhajihwxF-U3yH5ZZV0VMiU6QqQQiYGNJBI2t9jiPBPf-pe6EuJt4w6Z-PrAYQJieIPO2M58qJqsjeQQbQw_wGD6Gfgw2Lrq2IWowXrvDROLfaC78rYRrDUQmRgGZIWOJjeB_KSRFmcUIUxgrSRnpVFFt7mh1ENkufCrf5OEcjE0o4FHtbsBXRsWEInz7ww52VgRFETMKyFvrNElzP2xZGlOBqdHlKhUBVa0yLIgk2WKoxNhvS7iOj_2DFwHt4qp7bXYseIYcLk8ngoqreCgKeTfvExv-rW_HcNS9dvTZ8a7HAjDS_HcZTfjR_hYypHB99Leo2jbTxtWmsboq6Pg6UhP32ei0BU2fja3SJHs592stt9HwNW1dxXrVR2FDq_-VHvYA651z4MYsnxt1x-4iRs0c9CT_MXmNu4b0ZFSbfilQ4ElTtKwyEABLhJggz4GvlK2svKpgN5k81nm0SoybDZrmfIS40jtCNV2bfRDPrW0Y3Yboxka0I6a-fQ_PXr5vEKQhgnsZisP1RrWCP5W72s0UO1cK0vJRv7WXCF1fmvnr9Rp2gFsL3UKCEI2Uw6Dj3S5zyCj5GAIjUFCQNZIYi5wom0ZaBZYrA2yuCpa4nAwebGG5S3NEG5STgEiJYf3ZoLDqKF6PUVl6ohBm0ByyyMd34lfTsBBCjqv1-NPZ8rT8RI047EwcKdWZZxaM0MfAl4jv-SeSygRm-REm3asLd2NdcNYvX1ZPPP02l9LL8cjFf1_Arv0o0ii5B7Q5c_9iMa6bwrKwpVE9rjYyLGVqDwueo7piuoUSMRA_4x2Rb-HG60V_8pldsH_6nGNPXYrGARqsDfEs02rrD4nCpOe1sk9TILBitYrBdpP7Y0EaLoYdIxQ52eTXWqpiwatJ_vw6X00NV6qKEeXkI0Dg-8OF2aQAm-T4PNfTmv_eu9PchdGV2IgPLQcO4q81iodrONwHCfVsjg0dsdrcB1mVhiTOd4C05htneI43wf1cxr71F-baP116_G9kYB5Jbkf7MoNCnA-SrFKtA64Du9BNnJOzuH6PcmaaSnI4DlJn3wzKn2H2Rkz8pOtmQtGAPYG-WA935Mx0iN_knmHqwxfCe8KY6RxpEvcghcTy2-mFmO6CHewbML6IJpWD87UqKfY2rL8_R1vUsLDwuL1zfn4uZNis8sXdPrhkkGLQShPU5d5ePsDZhz18a9Z6tb1XW5P0g3HTqt5w2d_s9Yfv2rliDO6U01haRCqbkBAIBq9rjia9C19CQ5kVSCs7Zj9tcnghkBWT4tFNU9lo_YA2D91UhEU-YQyfGnvzo9TNGZNUqjGkiAMa52OS9Uv7fOUp8gBdXdgm9p4II3Fk8X_dSFGsKwg5Fe539wTKo7WuKjjIVDx7y2Lk4WVN4ycLUKD6zn8LBQeixCGpbS76k22iYiPCHhxanOvZX5jsC9UcbYQZuADiX62MPI4bYlMNtIndmFK1HgLtK0_LoPPI7HI4YCpGaD_ETvP5YE-kXlcZfeL6jm3r-UI83EFZMVH8wu6aOOhDAN2bK3oQKHOu-yr1jW_6y0WK7LQuBp8xgFnfEv2SL811NrBG63ebnbYd1F9E6e0LLT-hXtyo24cp3hSPrGa4dTIJ9yZdEE8_Qx6J1Oidx2Xeaderz6vUYRQG7BACAzDnA_Si3u8CKQrfs1CpXJ5NqQ8RSosq61pL91aQjXKBr9TVR89TVWCRkPYb0jzQMizy3HHbBkpuRSCFpHLrH17qeFaTJ02Cp9VX1_zHXuK-Ugp6U8vn8_3626gy9Y2FQNXbjEnTWnmeoH0rtQ8SvycseW-IVn5N6FPKQe0oWcDyZ0p_8Z8LNmMVbSmNjGDNiO-VksVgmOxqd9T1CM3nGclCs286zMen3IwD7I_FAw-lYd8xb-LpKUrUDKalKaORk2qhn-VZs9wql2EXBVmkqu67vE188s_j3bw-HSwlzh4StW3Q6rbqaX8ABgKSTzqMJGLjTCQVzV21m-GFOhuW_0YimQYx8cDHLcO_kHHAvntvLTtMDjoPUK50PAnlOS8Mr2tOS4vl-DGbR-1x6QccjNtkuNBL9YpOo7u6YDIulC16TSOCEtai7JbRSiYOXF0XZ_DZVVmwFz47tljILsq8pftetLtlP26D7iqjsUCfkeVq_QNc1RrVVqM_WPGwmXf5ENaFOAvn4IID-T7JasIuK_tHOOQuwRkRF8kKTSvbih3YhaNlKITYuVZKbwe5lEgxaL6O5wzopWuKgtWN3k0UYka-TQTmrzalM4ZrvJGEWhEqMkKfTBjMZBvxoavpfGyXvW0HpPk2oB4sMVt24zPansyka78QAlqdz19SiPPnxtOMp7xsfwEEhWnGw4LykJGBIVuMGPWENNFeY5S9xt1RCfFAzVM4s8J2w7uxDTQvYkPJtKrk3Vyi51E6eoJELd2h_Q4dP1gUz4votz--N_8lthVzvY8uREkKNoRgnRjXv8Fsjd4Yq7TxYtLi9IzRMB9ebg54G9-E0jtHikGXjEM9Dm1KPodlc9OvpDtC7LS5vIuApE1sVo-EZnbm4TGbZxhQo7OzK8yNsUO1qwIwO8Qovfg-hLUsh0ddQubSASq3aFOmyHu_8P-SNJcUgCA_zmA4tmfpgqBinekyK3NAoNaynCpqYIqBtVKjJXCwsvDhI51vPG9qLpA6FAYhHGE-bqlUXuaoooYOwA4b9pcT0UsMfngKjYYvmRHu7kdlVp3KQUJ1BTUlAMCagg_kssVQVL1rvN8DRX0guSH0FZgNpUhj4zAJzU-gLXvZkZgpVCq5eAdrrfGT7e5IVu0xBNSHo8BFm4W0XSPfmJ-WLl1LPLFljrIeDLBSMuqoisTyfv0s4JFFUPztl9faxfujBAl8ngl2C3odS3C6M1Zoqo1Cxp4mER43t9DxG-8ttP5lYnMU1gkWVcHXVXzD1kwmH--DHJpfHqskps7DD8rMeTR_yvwPKw9kXdok8LLyAdRo6-_RL-QvGC0348Qu3fV3dUTZfojfHqJ2kNmTTQAi3lk7lQqUAu5I_i3aVC9HD4HqoOrqSYte10-TWEG5LvyEJZVlWh0abNoQchYqcmCqNePtTRopK8h2oP8BgsJ4thtZiDaZmtLudHbr5pNZcqf2CHnfn9pcVeGg436lrigiR3GEDYGs_r5vh_pekU_QWlfOSpWSZecOxYyUgBnO_4QcDPv88RZmfOiyvy-91gX71PJmzvY7JPkfuHiUTTuTWKoXhzlsqcLupKAkqdRl5sixFPoYnSJKHnR6Pa-JFdMUaobLDlaJFbyZFHpWFOkg2UhwsaXZPBVRInTtxVH_tH5YqFrN4aeKQJ-2PiTccxYxAKQf_MbMzlV-u7zGtrPczK1nbcxTWwslWlWYcb7N8fb7bGxbs5SNCTw7b1LYtnepUOS_FLHQmco2wpeBrP3ghCX45yqji07wlVUOaTWuQkpr-m7id5qtk4Yg4JwUME4kc-Z3_EaZI6gAtOeFJ2nxQec6WMLWMwdwZqxYcDW3XiGZ2T79pVdMUcV4wHhNyDIlHzBYgGu85y_taSBzai_aPn60t-xxlFHOBZkMpkUCVOeVcv87Nk8SKEGS7Nc_8Gzk826cMnSk4z3erM8u92UgVzYlKUrRGgxI3xt3aKcH6YftkHbNLTFfi-e8ZqLmywioKqRI8RBI2VnqZ2k8i-wLtmdvvYj1VhHV7NrlexaMLzkMaLt8iqEgUpkbItlMGUyHkssY0BAv56SFeGDBdUCUaodhRKLkVSGJKRFIbwJg7lXo3TRSvTsEFq6P49_oxVbQL2aWqwPytYLUePuG9sMKuoQJ7BX3wG07kdyKkzLSQGKqxmf0oiY9vXK_aN6-DiFUOJYTYH6glZ-3tYUXKWL5OU0WiIKksUQUH6Zqm5bCNbPT36vtfO6uepLOu43yTT0TpMzCP-z3gOPHBB9YicVblI0uCLjrOmQ-9hLh1jLLiMS3oAXpDY3uLKHB0BladCraTWp1GBrJEpNvK72roCuyVDSB0hAC-0XWtUCBSz2UgCAQBsegFFyB7Pc0ZLJjFwIOFu1DRMhu-K-l2TY2BS8th-wAOqpp7KU3vgIY4I4LbaC8PfqsHoZF9zIS_55NzcXjNOrPTpZBRaHEcNLcumlcV1XdZZMumz2mv33Zb_voY7i8FQ0rtlVRVVsg-RVYJy6fyCd-whxJdHonZlSyhfWyQteLWbLXmsuxfQatVbMjWF5XayUqkTrxGWnbgBMBuySMy8AYqxVFd_u9ESsQgFi6_25F-Vd0_VZ9bUlsDN4IQ9bpDpNvs-oe25U1oKwk9WpWqiT3ujU3HwFmZvhMYClXXnPkcOtRfKICj0pnLWP59QXTqx2SUbOB_CH9OGkZrT7O93bjxCbwz7W03luUnB1Gc5lPezFIptxHqQ2NMCvlYmH2rGkeihVw_GNTuUCkkb3W5c99S155Qe9mJjG2WaXp6EJc7Jyii7NZ6lk623IlGxlSexR7xOgtTHmftT2089Tuc4KCoVcIyAsTF2K3txxdlDFd4mlQUortH_wSRqPL1AOaxhgjIesKTXdqbEzfyuIV35cPjIWwrM_vMzlzG_y9kcLpTbgieSvy80e3K3EO7fh3PhPJFsA8jziMvs5MmnqvTpWwNj3OfL1Pi17wMXE_WtgQ7I--t98_8yeztNEu8OvuUAu_qkLAXj4aSEUCQG95FZWNr3iQJY_K4APb8cfk0AYyK5_6pTovfcobFCFTNyTpyKYLnT7lOO2K0Xw_6C6M7h9YMCXLdsRDLH1qoU7P7wTRED-EH82hY2tjPeTQZ0WzonwU5Dsz_897ZXEEM-ZxjhXMwmQWDIqdOlLK9GgLq6PBzuPln0YjwKpcmjXFyn71KYU_9RSOtVr1gJRreoTC-zUiAabmbpKUs5c-9x8BPB-r50jayehCr78PSkwvWxs27IJAUAdhKxbg5pE4SQb5SGvcqJDpuPp_vuO6rsfw1hseeO4dHEdj1DH7cwvaszCiO4EH91sAUDoWF-uyqGh1-fvKeN3Hiz_fBd7IecS4F8QGr-SxH765EetUahvm3_OIJqSqaEN_g2XIlcTEvIWcYWRl6ELcOOCsqwgozgJwUH_03RnzFnDUStikGiQkCMhN1dheIvKVh_cA9CrpHc_jpGjupK7RR04UnCrp6JYehbv2m6qOv0981NIbchANBiy26Bnkvpn3oanHt1IJ4xacwMqXM6c2Ry4MWqr-rIOM_5WhJ9kAKFZr9GzZz4ivslHf4PBbvtN_EtmXhB-oqRWFGNzpFNrAwWjy0wG8puHDnFtSqqIx7DgjKL-FUNrAm2qASSOCNI9izBrjdpnbJHIrjKs73smsLMDDpUWm7N9dn8XfGFTg0T_Tyu4wZQkRmLOTJirsuEHSIEoLtlAMbo4ZgSwt8ZhP5TInBCgkAcbmSU38nAiha9DppiLdtK0QCstJ7NH4KcckG4lmaZ1-K2Dq0aY4txr8N9CM5a7EVNu_7nptDykRPMD46fd7jg_wqnfMTwut5cPPdbeGEvEfcpQzYWvPmKt_-PfxCWiLFK4q8CbqBFik4KQt5WUU9b8U7v-gcA5BBlzwyyAg_YE8u9AWJ2Pd079mSfZqPra-Gq10eXXjVsU8u75qdrONW56Z-Ma3f4V1pBVRfxCmRNCThjyjhEfIUndbRW5pbbtj0gIEe_UlerKIAR865xZcfV5YDmNPGxRC5WxjkPKR9H5KkPHZKNKAdFR_sHJFIMAwRgnUyeTh3v15f0S1dn8OZvSzMb-mImP572X_Dc0wnvUb7bLB9UfFFqk";if(!e)return null;if(gn&&gn.sealed===e)return gn;let t=null;try{t=ro.parse(JSON.parse(mr(e,a0)))}catch{t=null}return gn={sealed:e,bundle:t},gn}function gr(){let e=yu();if(!e?.bundle)return null;if(e.runtime===void 0){let t=Date.now();try{e.runtime=so(e.bundle,{signedAt:t,fetchedAt:t})}catch{e.runtime=null}}return e.runtime}function c0(){let e=yu();return e?.bundle?(e.keys??=new Set(e.bundle.filters.map(t=>te(t.slug))),e.keys):null}function Nt(e,t=!1){if(t||!e||e.length===0){let n=c0();return n?new Set(n):null}return new Set(e.map(n=>l0.test(n)?n:te(n)))}var a0,l0,gn,yn=y(()=>{"use strict";to();He();oo();a0="tokmizer-default-rules-v1",l0=/^[0-9a-f]{16}$/,gn=null});function io(e){bu=e}async function u0(e,t){let n=await Tl();if(n.size>0)return Ot(e,n.values(),t,n);let r=gr();return r?r.selectFor(e,"free",t?[...t]:void 0):null}function h0(e,t,n){let r=ar(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 be(e);if(n!=="compact"&&n!=="minimal")return r;let s=r.endsWith(`
86
88
  `)?`
87
- `:"";return nr((s?r.slice(0,-1):r).split(`
89
+ `:"";return or((s?r.slice(0,-1):r).split(`
88
90
  `)).join(`
89
- `)+s}async function Ot(e,t,n,r={}){let s=Buffer.byteLength(t,"utf8"),{exitCode:o,yolo:i=!1,resolver:a,...l}=r,c=Te(bc(e.startsWith("bash-tool: ")?e.slice(11):e)),u=o!=null&&o!==0&&!(o===1&&hk.test(Bs(c)??c)),f=mc(a??Yc??mk),p=null;for(let P of kc(e))if(p=await f(P,n),p)break;!p&&s>=gk&&!Hs.test(e)&&(p=await f(`bash-tool: ${e}`,n));let d=un(e.startsWith("bash-tool: ")?e.slice(11):e),m=p?.slug==="git-log"&&d!=null&&/^git\s+log(?:\s|$)/.test(Te(d)),y=o==null&&(m?/^(?:fatal|error):/im.test(he(t)):hc(t)),b=p?.transform==="smart-read"&&s<=2048&&(t.endsWith(`
91
+ `)+s}async function Dt(e,t,n,r={}){let s=Buffer.byteLength(t,"utf8"),{exitCode:o,yolo:i=!1,resolver:a,...l}=r,c=Re(jc(e.startsWith("bash-tool: ")?e.slice(11):e)),u=o!=null&&o!==0&&!(o===1&&f0.test(Vs(c)??c)),f=Dc(a??bu??u0),d=null;for(let A of Hc(e))if(d=await f(A,n),d)break;!d&&s>=d0&&!Ks.test(e)&&(d=await f(`bash-tool: ${e}`,n));let p=dn(e.startsWith("bash-tool: ")?e.slice(11):e),g=d?.slug==="git-log"&&p!=null&&/^git\s+log(?:\s|$)/.test(Re(p)),h=o==null&&(g?/^(?:fatal|error):/im.test(be(t)):Mc(t)),m=d?.transform==="smart-read"&&s<=2048&&(t.endsWith(`
90
92
  `)?t.slice(0,-1):t).split(`
91
- `).length<=60,R=s<=16384&&d!=null&&/^(?:head|tail)(?:\s|$)|^sed\s+(?:(?:-[Eru]+|--(?:regexp-extended|unbuffered|sandbox))\s+)*(?:-[Enruse]*n[Enruse]*(?:\s|$)|--(?:quiet|silent)(?:\s|$))/.test(Te(d)),T=p?.transform==="smart-read"&&s<=16384&&(l.verbosity??"normal")==="normal"&&l.smartCode!==!0,D=p?.slug==="read-tool"&&s<bk;if(!i&&(T||D||R||b&&l.smartCode!==!0))return{output:t,filterId:p?.slug??null,rawBytes:s,filteredBytes:s,debugBypass:u||y,droppedTail:null};if(!i&&p&&!p.preserve_exact&&(u||y)&&Mc.test(c)){let P=jc(t,l.verbosity??"normal"),U=P===null?s:Buffer.byteLength(P,"utf8");if(P!==null&&U<s)return{output:P,filterId:p.slug,rawBytes:s,filteredBytes:U,debugBypass:!0,droppedTail:t,failureSummary:!0}}if(!p||(u||y)&&p.preserve_exact&&!i)return{output:t,filterId:null,rawBytes:s,filteredBytes:s,debugBypass:u||y,...i?{droppedTail:null}:{}};let C=P=>{if(!i)return P.output!==t&&!P.droppedTail?{...P,droppedTail:t}:P;let U=P.filteredBytes>s||s>0&&P.output.length===0?t:P.output,ie=!P.debugBypass&&!p?.preserve_exact?Gs(U,"minimal",P.filterId??""):U,ae=Us(ie)===ie?ie:Us(U);return{...P,output:ae,filteredBytes:Buffer.byteLength(ae,"utf8"),droppedTail:null}};if(p.slug==="tsc"&&!u&&!y&&!Oc(e)){let P=Cc(t);if(P!==null)return C({output:P,filterId:p.slug,rawBytes:s,filteredBytes:Buffer.byteLength(P,"utf8"),debugBypass:!1,droppedTail:null})}if(u||y){let P=i?sr(t,{...p,keep_failures:!0,transform:void 0,max_lines:void 0,truncate_lines_at:void 0,on_empty:void 0},{verbosity:"minimal",smartCode:!1}):p.strip_on_failure&&!p.preserve_exact?kk(t,p,l.verbosity):p.strip_ansi&&!p.preserve_exact?he(t):t;if(!i&&p.transform&&p.transform_on_failure&&!p.preserve_exact){let be=Gn(p.transform);be&&(P=be(P.split(`
93
+ `).length<=60,x=s<=16384&&p!=null&&/^(?:head|tail)(?:\s|$)|^sed\s+(?:(?:-[Eru]+|--(?:regexp-extended|unbuffered|sandbox))\s+)*(?:-[Enruse]*n[Enruse]*(?:\s|$)|--(?:quiet|silent)(?:\s|$))/.test(Re(p)),S=d?.transform==="smart-read"&&s<=16384&&(l.verbosity??"normal")==="normal"&&l.smartCode!==!0,O=d?.slug==="read-tool"&&s<m0;if(!i&&(S||O||x||m&&l.smartCode!==!0))return{output:t,filterId:d?.slug??null,rawBytes:s,filteredBytes:s,debugBypass:u||h,droppedTail:null};if(!i&&d&&!d.preserve_exact&&(u||h)&&ru.test(c)){let A=iu(t,l.verbosity??"normal"),B=A===null?s:Buffer.byteLength(A,"utf8");if(A!==null&&B<s)return{output:A,filterId:d.slug,rawBytes:s,filteredBytes:B,debugBypass:!0,droppedTail:t,failureSummary:!0}}if(!d||(u||h)&&d.preserve_exact&&!i)return{output:t,filterId:null,rawBytes:s,filteredBytes:s,debugBypass:u||h,...i?{droppedTail:null}:{}};let P=A=>{if(!i)return A.output!==t&&!A.droppedTail?{...A,droppedTail:t}:A;let B=A.filteredBytes>s||s>0&&A.output.length===0?t:A.output,re=!A.debugBypass&&!d?.preserve_exact?Qs(B,"minimal",A.filterId??""):B,Oe=Ys(re)===re?re:Ys(B);return{...A,output:Oe,filteredBytes:Buffer.byteLength(Oe,"utf8"),droppedTail:null}};if(d.slug==="tsc"&&!u&&!h&&!Yc(e)){let A=Xc(t);if(A!==null)return P({output:A,filterId:d.slug,rawBytes:s,filteredBytes:Buffer.byteLength(A,"utf8"),debugBypass:!1,droppedTail:null})}if(u||h){let A=i?ar(t,{...d,keep_failures:!0,transform:void 0,max_lines:void 0,truncate_lines_at:void 0,on_empty:void 0},{verbosity:"minimal",smartCode:!1}):d.strip_on_failure&&!d.preserve_exact?h0(t,d,l.verbosity):d.strip_ansi&&!d.preserve_exact?be(t):t;!i&&d.transform&&d.transform_on_failure&&!d.preserve_exact&&(A=Zs(d.transform,A.split(`
94
+ `),e).join(`
95
+ `)),!i&&l.verbosity==="minimal"&&d.transform!=="smart-read"&&(A=Vc(A)),!i&&d.slug==="pytest"&&(l.verbosity==="compact"||l.verbosity==="minimal")&&/^={3,} test session starts ={3,}\r?$/m.test(A)&&/^={3,} FAILURES ={3,}\r?$/m.test(A)&&(A=A.replace(/^([=_])\1{2,} (.+?) \1{3,}(\r?)$/gm,"$2$3"));let B=!i&&!d.preserve_exact&&s>=p0?Vl(A.split(`
92
96
  `)).join(`
93
- `))}!i&&l.verbosity==="minimal"&&p.transform!=="smart-read"&&(P=Rc(P)),!i&&p.slug==="pytest"&&(l.verbosity==="compact"||l.verbosity==="minimal")&&/^={3,} test session starts ={3,}\r?$/m.test(P)&&/^={3,} FAILURES ={3,}\r?$/m.test(P)&&(P=P.replace(/^([=_])\1{2,} (.+?) \1{3,}(\r?)$/gm,"$2$3"));let U=!i&&!p.preserve_exact&&s>=yk?Ll(P.split(`
94
- `)).join(`
95
- `):P,ie=U.length<P.length;return C({output:U,filterId:p.slug,rawBytes:s,filteredBytes:Buffer.byteLength(U,"utf8"),debugBypass:!0,...ie?{droppedTail:t}:{}})}let{text:M,droppedTail:L}=Ls(t,p,i?{...l,verbosity:"minimal",...p.transform==="smart-read"?{smartCode:!0}:{}}:l),F=!i&&!p.preserve_exact?Gs(M,l.verbosity,p.slug):M,ue=Buffer.byteLength(F,"utf8");return t.trim().length>0&&ue>=s?C({output:t,filterId:p.slug,rawBytes:s,filteredBytes:s,debugBypass:!1,droppedTail:null}):C({output:F,filterId:p.slug,rawBytes:s,filteredBytes:ue,debugBypass:!1,droppedTail:L})}var Yc,hk,gk,yk,bk,mr=h(()=>{"use strict";W();gl();Qn();js();Fs();gc();zs();wc();an();rr();$c();Ac();rr();Ic();Hc();hn();Yc=null;hk=/^(?:grep|rg|find|eslint|ruff|flake8|mypy|prettier|biome|black|stylelint)(?:\s|$)|^git\s+(?:diff|grep)\b/,gk=2048,yk=8192,bk=32*1024});function _k(){let e=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(e)&&e>0?e:6048e5}function hr(e,t=Date.now()){let n=e.lastHeartbeatOkAt;if(typeof n=="number"&&t-n>_k())return!0;if(e.subEndsAt){let r=Date.parse(e.subEndsAt);if(Number.isFinite(r)&&t>r)return!0}return!1}function gr(e,t=Date.now()){return e.plan}var Qs=h(()=>{"use strict"});function gn(e){let t=e;for(let[n,r]of wk)t=t.replace(n,r);return t}function vk(e){if(!e.includes("PRIVATE KEY-----"))return e;let t=e.split(`
96
- `),n=[];for(let r of t){if(Sk.test(r)){let s=n.length;for(;s>0&&Ek.test(n[s-1]);)s-=1;if(s<n.length){n.length=s,n.push(`${ge}${r}`);continue}}n.push(r)}return n.join(`
97
- `)}function Xc(e){let t=e;for(let[n,r]of xk)t=t.replace(n,r);return vk(t)}var wk,ge,xk,Sk,Ek,yr=h(()=>{"use strict";wk=[[/(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]"]];ge="[tkr: secret masked]",xk=[[/(-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----)(?:\r?\n(?:[A-Za-z0-9+/=]{16,}|[A-Za-z-]+: [^\r\n]*|\r?(?=\n)))*(?:(?:\r?\n[A-Za-z0-9+/=]{1,15})?\r?\n-----END [A-Z0-9 ]*PRIVATE KEY-----)?/g,`$1${ge}`],[/(?<![A-Za-z0-9_])(gh[pousr])_[A-Za-z0-9]{36,255}(?![A-Za-z0-9])/g,`$1_${ge}`],[/(?<![A-Za-z0-9_])github_pat_[A-Za-z0-9_]{22,255}/g,`github_pat_${ge}`],[/(?<![A-Za-z0-9_])npm_[A-Za-z0-9]{36}(?![A-Za-z0-9])/g,`npm_${ge}`],[/(?<![A-Z0-9])(AKIA|ASIA)[A-Z0-9]{16}(?![A-Z0-9])/g,`$1${ge}`],[/(?<![A-Za-z0-9])(xox[abpors]-)[A-Za-z0-9-]{10,}/g,`$1${ge}`],[/(?<![A-Za-z0-9])((?:sk|rk)_live_)[A-Za-z0-9]{16,}/g,`$1${ge}`],[/(authorization["']?\s*[:=]\s*["']?bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi,`$1${ge}`],[/(?<![A-Za-z0-9+.-])([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^\s:/@]*:)[^\s@/]+(@[^\s@/]+)/g,`$1${ge}$2`]],Sk=/^-----END [A-Z0-9 ]*PRIVATE KEY-----/,Ek=/^[A-Za-z0-9+/=]{16,}\r?$/});var Qc=h(()=>{"use strict"});import{createHash as pR,createHmac as mR,randomUUID as Tk}from"node:crypto";import{readFile as eu,writeFile as tu,mkdir as $k}from"node:fs/promises";async function eo(){try{let n=(await eu(Ht(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await $k(S(),{recursive:!0});let e=Tk();try{return await tu(Ht(),e,{mode:384,flag:"wx"}),e}catch{try{let t=(await eu(Ht(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(t))return t}catch{}return await tu(Ht(),e,{mode:384}),e}}var to=h(()=>{"use strict";j()});import{readFile as Rk,writeFile as kR,mkdir as _R,chmod as wR,rm as xR,rename as SR,readdir as ER}from"node:fs/promises";import{join as Ak}from"node:path";async function $e(){let e=null;try{let t=JSON.parse(await Rk(Ak(S(),Ok),"utf8"));typeof t=="object"&&t!==null&&!Array.isArray(t)&&(e=t)}catch{}return e?Et.parse({...nu,...e}):nu}var Ok,nu,RR,Ct=h(()=>{"use strict";Le();j();Ok="settings-cache.json",nu=Et.parse({}),RR=Et.partial().extend({filters:Et.shape.filters.removeDefault().partial().optional()})});var ru=h(()=>{"use strict";j();Ct();pn();dr()});import{join as su}from"node:path";import{appendFileSync as Ck,chmodSync as Ik,existsSync as Pk,mkdirSync as Nk,readFileSync as BR,renameSync as zR,rmdirSync as UR,statSync as Dk,unlinkSync as ZR,utimesSync as GR,writeFileSync as JR}from"node:fs";function ou(){return su(S(),"spool")}function Lk(e){return su(ou(),`${e}.jsonl`)}function br(e,t){if(dn())try{Nk(ou(),{recursive:!0,mode:448});let n=Lk(e);if(Pk(n)&&Dk(n).size>=Mk)return;Ck(n,JSON.stringify(t)+`
98
- `,{mode:384}),Ik(n,384)}catch{return}}var Mk,no=h(()=>{"use strict";Qc();j();Bt();to();Ws();Ct();pn();ru();Mk=512*1024});function Wk(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 lu.has(n.toLowerCase())?n:""}function Vk(e,t,n){let r=0;for(;e==="git"&&r<n.length&&n[r].startsWith("-");)r+=Kk.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return t.has(s)?`${e} ${s}`:e}function iu(e){let t=e.toLowerCase();return t.startsWith("git")||zk.has(t)}function ro(e){let t=e.trim().split(/\s+/).filter(l=>l.length>0),n=0;for(;n<t.length&&Bk.test(t[n]??"");)n+=1;let r=Wk(t[n]??"");if(!r||!jk.test(r)||r.length>Zk)return"";let s=Jk.get(r.toLowerCase());if(s)return Vk(r.toLowerCase(),s,t.slice(n+1));if(iu(r)||Uk.test(r)||gn(r)!==r)return"";let o=t[n+1];return o&&iu(o)?"":(o&&au.has(r.toLowerCase())&&Hk.test(o)?`${r} ${o}`:r).slice(0,64)}function qk(e){return Gk.has((e.split(" ")[0]??"").toLowerCase())}async function kr(e){if(!e.telemetryOptIn)return;let t=ro(e.cmd),n=t&&gn(t)===t&&qk(t)?t:"other",r=e.sessionId?e.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";br("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}:{}})}var jk,Hk,Bk,zk,Uk,Zk,au,lu,Gk,Jk,Kk,_r=h(()=>{"use strict";yr();no();jk=/^[a-z0-9][a-z0-9._-]*$/i,Hk=/^[a-z][a-z-]+$/,Bk=/^[A-Za-z_][A-Za-z0-9_]*=/,zk=new Set(["gh","glab","gup","hub","gist"]),Uk=/^(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,Zk=24,au=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"]),lu=new Set([...au,"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"]),Gk=new Set([...lu,"cd","cat","head","tail","ls","tree","find","grep","wc","nl","sort","cut","uniq","tr","diff","stat","file","du","df","ps","yq","pwd","which","echo","printf","seq","sed","awk","gawk","xargs","sleep","tar","zip","unzip","rsync","scp","ssh","curl","wget","dig","host","nslookup","ping","lsof","journalctl","iptables","ip6tables","open","md5","md5sum","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shasum","sudo","env","command","time","nodejs","bunx","pytest","mypy","dmypy","pyright","basedpyright","ruff","black","ty","gradlew","mvnw","mvnd","ninja","cmake","bazel","bazelisk","sbt","gcc","clang","gmake","swift","xcodebuild","pod","flutter","nx","turbo","next","eslint","prettier","biome","oxlint","golangci-lint","shellcheck","hadolint","yamllint","markdownlint","mdl","sqlfluff","rubocop","rspec","bundler","php","artisan","composer","phpunit","phpstan","pest","paratest","pint","mix","javap","jar","docker-compose","skopeo","oc","ecs","nomad","consul","packer","pulumi","tofu","ansible","ansible-playbook","vault","sops","vercel","netlify","wrangler","firebase","supabase","stripe","shopify","theme-check","redis-cli","liquibase","ollama","ast-grep","just","task","mise","trunk","pre-commit","jj","yadm","gt","quarto","act","jira","fail2ban-client","ctest","pio","platformio","reducer","restore","read-tool","grep-tool","glob-tool","bash-tool"]),Jk=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"])]]),Kk=new Set(["-C","-c"])});async function wr(e){if(e.plan!=="pro"||pc(e.filterId)||!(await $e()).telemetryOptIn)return;let t=ro(e.cmd);!t||gn(t)!==t||br("learn",{cmd:t,filterId:e.filterId==null?null:ee(e.filterId),rawBytes:e.rawBytes,filteredBytes:e.filteredBytes})}var so=h(()=>{"use strict";_r();yr();no();Le();js();Ct()});function cu(e){return e?Yk[e]??"anthropic":"anthropic"}var Yk,uu=h(()=>{"use strict";Yk={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});import{appendFileSync as Xk,chmodSync as Qk,mkdirSync as e0,readFileSync as hu,realpathSync as t0,renameSync as gu,rmSync as yu,statSync as bu,writeFileSync as oo}from"node:fs";import{basename as fu,dirname as ku,join as xr,resolve as n0,sep as mA}from"node:path";function _u(){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 c0(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"&&a0.has(n.o)?{o:n.o}:{}}}catch{return null}}function u0(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),t.h==="shell"&&t.k!=="restore"&&(n.tn=(n.tn??0)+1,n.tr=(n.tr??0)+t.r,n.tf=(n.tf??0)+t.f,t.f<t.r&&(n.tnc=(n.tnc??0)+1,n.trr=(n.trr??0)+t.r,n.trf=(n.trf??0)+t.f)),n.r+=t.r,n.f+=t.f,e.cmds[t.c]=n}function f0(e){return e.s==="b"?`b:${(e.c??"").split(" ")[0]||"other"}`:e.s?.startsWith("u:")?e.s:e.o==="n"?"n":"?"}function d0(e,t){let n=f0(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 p0(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>i0){e.ox+=1;return}if(u0(e,t),t.k==="restore"?(e.rn+=1,e.rb+=t.f):d0(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=cu(t.h),r=e.prov[n]??{r:0,f:0};r.r+=t.r,r.f+=t.f,e.prov[n]=r}}function m0(e){let t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function wu(e){return xr(ku(e),s0)}function h0(e){let t=wu(e),n;try{n=hu(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]={..._u(),...i});return s}catch{try{gu(t,`${t}.corrupt-${Date.now()}`)}catch{}return{}}}function pu(e,t){let n=`${e}.tmp-${process.pid}`;oo(n,t,{mode:384}),gu(n,e)}function g0(e){try{return oo(e,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-bu(e).mtimeMs<o0?!1:(yu(e,{force:!0}),oo(e,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function y0(e,t=du,n=du/2){try{if(bu(e).size<=t)return}catch{return}let r=`${e}.lock`;if(g0(r))try{let s=hu(e,"utf8").split(`
99
- `).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=h0(e);for(let c of s.slice(0,o)){let u=c0(c);if(!u)continue;let f=m0(u.t),p=a[f]??_u();p0(p,u),a[f]=p}let l=s.slice(o);pu(e,l.length?`${l.join(`
97
+ `):A,re=B.length<A.length;return P({output:B,filterId:d.slug,rawBytes:s,filteredBytes:Buffer.byteLength(B,"utf8"),debugBypass:!0,...re?{droppedTail:t}:{}})}let F={...l,cmd:e,exitCode:o},{text:N,droppedTail:D}=Gs(t,d,i?{...F,verbosity:"minimal",...d.transform==="smart-read"?{smartCode:!0}:{}}:F),j=!i&&!d.preserve_exact?Qs(N,l.verbosity,d.slug):N,ne=d.on_empty&&j===d.on_empty&&!j.endsWith(`
98
+ `)?`${j}
99
+ `:j,ce=Buffer.byteLength(ne,"utf8"),ue=ne.trim().length===0&&t.trim().length>0&&(o!=null&&o!==0||Us(e));return t.trim().length>0&&(ce>=s||ue)?P({output:t,filterId:d.slug,rawBytes:s,filteredBytes:s,debugBypass:!1,droppedTail:null}):P({output:ne,filterId:d.slug,rawBytes:s,filteredBytes:ce,debugBypass:!1,droppedTail:D})}var bu,f0,d0,p0,m0,yr=y(()=>{"use strict";$l();nr();Js();Ws();Lc();qs();zc();cn();ir();Kc();qc();ir();Qc();au();yn();bu=null;f0=/^(?:grep|rg|find|eslint|ruff|flake8|mypy|prettier|biome|black|stylelint)(?:\s|$)|^git\s+(?:diff|grep)\b/,d0=2048,p0=8192,m0=32*1024});function g0(){let e=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(e)&&e>0?e:6048e5}function br(e,t=Date.now()){let n=e.lastHeartbeatOkAt;if(typeof n=="number"&&t-n>g0())return!0;if(e.subEndsAt){let r=Date.parse(e.subEndsAt);if(Number.isFinite(r)&&t>r)return!0}return!1}function kr(e,t=Date.now()){return e.plan}var ao=y(()=>{"use strict"});function bn(e){let t=e;for(let[n,r]of y0)t=t.replace(n,r);return t}function w0(e){if(!e.includes("PRIVATE KEY-----"))return e;let t=e.split(`
100
+ `),n=[];for(let r of t){if(k0.test(r)){let s=n.length;for(;s>0&&_0.test(n[s-1]);)s-=1;if(s<n.length){n.length=s,n.push(`${ke}${r}`);continue}}n.push(r)}return n.join(`
101
+ `)}function ku(e){let t=e;for(let[n,r]of b0)t=t.replace(n,r);return w0(t)}var y0,ke,b0,k0,_0,_r=y(()=>{"use strict";y0=[[/(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]"]];ke="[tkr: secret masked]",b0=[[/(-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----)(?:\r?\n(?:[A-Za-z0-9+/=]{16,}|[A-Za-z-]+: [^\r\n]*|\r?(?=\n)))*(?:(?:\r?\n[A-Za-z0-9+/=]{1,15})?\r?\n-----END [A-Z0-9 ]*PRIVATE KEY-----)?/g,`$1${ke}`],[/(?<![A-Za-z0-9_])(gh[pousr])_[A-Za-z0-9]{36,255}(?![A-Za-z0-9])/g,`$1_${ke}`],[/(?<![A-Za-z0-9_])github_pat_[A-Za-z0-9_]{22,255}/g,`github_pat_${ke}`],[/(?<![A-Za-z0-9_])npm_[A-Za-z0-9]{36}(?![A-Za-z0-9])/g,`npm_${ke}`],[/(?<![A-Z0-9])(AKIA|ASIA)[A-Z0-9]{16}(?![A-Z0-9])/g,`$1${ke}`],[/(?<![A-Za-z0-9])(xox[abpors]-)[A-Za-z0-9-]{10,}/g,`$1${ke}`],[/(?<![A-Za-z0-9])((?:sk|rk)_live_)[A-Za-z0-9]{16,}/g,`$1${ke}`],[/(authorization["']?\s*[:=]\s*["']?bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi,`$1${ke}`],[/(?<![A-Za-z0-9+.-])([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^\s:/@]*:)[^\s@/]+(@[^\s@/]+)/g,`$1${ke}$2`]],k0=/^-----END [A-Z0-9 ]*PRIVATE KEY-----/,_0=/^[A-Za-z0-9+/=]{16,}\r?$/});var _u=y(()=>{"use strict"});import{createHash as _A,createHmac as wA,randomUUID as x0}from"node:crypto";import{readFile as wu,writeFile as xu,mkdir as S0}from"node:fs/promises";async function lo(){try{let n=(await wu(Ut(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await S0(v(),{recursive:!0});let e=x0();try{return await xu(Ut(),e,{mode:384,flag:"wx"}),e}catch{try{let t=(await wu(Ut(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(t))return t}catch{}return await xu(Ut(),e,{mode:384}),e}}var co=y(()=>{"use strict";H()});import{readFile as E0,writeFile as TA,mkdir as $A,chmod as RA,rm as AA,rename as OA,readdir as CA}from"node:fs/promises";import{join as v0}from"node:path";async function Ae(){let e=null;try{let t=JSON.parse(await E0(v0(v(),T0),"utf8"));typeof t=="object"&&t!==null&&!Array.isArray(t)&&(e=t)}catch{}return e?At.parse({...Su,...e}):Su}var T0,Su,DA,Mt=y(()=>{"use strict";He();H();T0="settings-cache.json",Su=At.parse({}),DA=At.partial().extend({filters:At.shape.filters.removeDefault().partial().optional()})});var Eu=y(()=>{"use strict";H();Mt();hn();hr()});import{join as vu}from"node:path";import{appendFileSync as $0,chmodSync as R0,existsSync as A0,mkdirSync as O0,readFileSync as KA,renameSync as VA,rmdirSync as qA,statSync as C0,unlinkSync as YA,utimesSync as XA,writeFileSync as QA}from"node:fs";function Tu(){return vu(v(),"spool")}function P0(e){return vu(Tu(),`${e}.jsonl`)}function wr(e,t){if(mn())try{O0(Tu(),{recursive:!0,mode:448});let n=P0(e);if(A0(n)&&C0(n).size>=I0)return;$0(n,JSON.stringify(t)+`
102
+ `,{mode:384}),R0(n,384)}catch{return}}var I0,uo=y(()=>{"use strict";_u();H();Zt();co();no();Mt();hn();Eu();I0=512*1024});function Z0(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 Au.has(n.toLowerCase())?n:""}function G0(e,t,n){let r=0;for(;e==="git"&&r<n.length&&n[r].startsWith("-");)r+=U0.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return t.has(s)?`${e} ${s}`:e}function $u(e){let t=e.toLowerCase();return t.startsWith("git")||F0.has(t)}function fo(e){let t=e.trim().split(/\s+/).filter(l=>l.length>0),n=0;for(;n<t.length&&L0.test(t[n]??"");)n+=1;let r=Z0(t[n]??"");if(!r||!D0.test(r)||r.length>H0)return"";let s=z0.get(r.toLowerCase());if(s)return G0(r.toLowerCase(),s,t.slice(n+1));if($u(r)||j0.test(r)||bn(r)!==r)return"";let o=t[n+1];return o&&$u(o)?"":(o&&Ru.has(r.toLowerCase())&&M0.test(o)?`${r} ${o}`:r).slice(0,64)}function W0(e){return B0.has((e.split(" ")[0]??"").toLowerCase())}async function xr(e){if(!e.telemetryOptIn)return;let t=fo(e.cmd),n=t&&bn(t)===t&&W0(t)?t:"other",r=e.sessionId?e.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";wr("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}:{}})}var D0,M0,L0,F0,j0,H0,Ru,Au,B0,z0,U0,Sr=y(()=>{"use strict";_r();uo();D0=/^[a-z0-9][a-z0-9._-]*$/i,M0=/^[a-z][a-z-]+$/,L0=/^[A-Za-z_][A-Za-z0-9_]*=/,F0=new Set(["gh","glab","gup","hub","gist"]),j0=/^(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,H0=24,Ru=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"]),Au=new Set([...Ru,"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"]),B0=new Set([...Au,"cd","cat","head","tail","ls","tree","find","grep","wc","nl","sort","cut","uniq","tr","diff","stat","file","du","df","ps","yq","pwd","which","echo","printf","seq","sed","awk","gawk","xargs","sleep","tar","zip","unzip","rsync","scp","ssh","curl","wget","dig","host","nslookup","ping","lsof","journalctl","iptables","ip6tables","open","md5","md5sum","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shasum","sudo","env","command","time","nodejs","bunx","pytest","mypy","dmypy","pyright","basedpyright","ruff","black","ty","gradlew","mvnw","mvnd","ninja","cmake","bazel","bazelisk","sbt","gcc","clang","gmake","swift","xcodebuild","pod","flutter","nx","turbo","next","eslint","prettier","biome","oxlint","golangci-lint","shellcheck","hadolint","yamllint","markdownlint","mdl","sqlfluff","rubocop","rspec","bundler","php","artisan","composer","phpunit","phpstan","pest","paratest","pint","mix","javap","jar","docker-compose","skopeo","oc","ecs","nomad","consul","packer","pulumi","tofu","ansible","ansible-playbook","vault","sops","vercel","netlify","wrangler","firebase","supabase","stripe","shopify","theme-check","redis-cli","liquibase","ollama","ast-grep","just","task","mise","trunk","pre-commit","jj","yadm","gt","quarto","act","jira","fail2ban-client","ctest","pio","platformio","reducer","restore","read-tool","grep-tool","glob-tool","bash-tool"]),z0=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"])]]),U0=new Set(["-C","-c"])});async function Er(e){if(e.plan!=="pro"||Nc(e.filterId)||!(await Ae()).telemetryOptIn)return;let t=fo(e.cmd);!t||bn(t)!==t||wr("learn",{cmd:t,filterId:e.filterId==null?null:te(e.filterId),rawBytes:e.rawBytes,filteredBytes:e.filteredBytes})}var po=y(()=>{"use strict";Sr();_r();uo();He();Js();Mt()});function Ou(e){return e?J0[e]??"anthropic":"anthropic"}var J0,Cu=y(()=>{"use strict";J0={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});import{appendFileSync as K0,chmodSync as V0,mkdirSync as q0,readFileSync as Mu,realpathSync as Y0,renameSync as Lu,rmSync as Fu,statSync as ju,writeFileSync as mo}from"node:fs";import{basename as Iu,dirname as Hu,join as vr,resolve as X0,sep as w1}from"node:path";function Bu(){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 o_(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"&&r_.has(n.o)?{o:n.o}:{}}}catch{return null}}function i_(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),t.h==="shell"&&t.k!=="restore"&&(n.tn=(n.tn??0)+1,n.tr=(n.tr??0)+t.r,n.tf=(n.tf??0)+t.f,t.f<t.r&&(n.tnc=(n.tnc??0)+1,n.trr=(n.trr??0)+t.r,n.trf=(n.trf??0)+t.f)),n.r+=t.r,n.f+=t.f,e.cmds[t.c]=n}function a_(e){return e.s==="b"?`b:${(e.c??"").split(" ")[0]||"other"}`:e.s?.startsWith("u:")?e.s:e.o==="n"?"n":"?"}function l_(e,t){let n=a_(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 c_(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>n_){e.ox+=1;return}if(i_(e,t),t.k==="restore"?(e.rn+=1,e.rb+=t.f):l_(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=Ou(t.h),r=e.prov[n]??{r:0,f:0};r.r+=t.r,r.f+=t.f,e.prov[n]=r}}function u_(e){let t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function zu(e){return vr(Hu(e),e_)}function f_(e){let t=zu(e),n;try{n=Mu(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]={...Bu(),...i});return s}catch{try{Lu(t,`${t}.corrupt-${Date.now()}`)}catch{}return{}}}function Nu(e,t){let n=`${e}.tmp-${process.pid}`;mo(n,t,{mode:384}),Lu(n,e)}function d_(e){try{return mo(e,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-ju(e).mtimeMs<t_?!1:(Fu(e,{force:!0}),mo(e,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function p_(e,t=Pu,n=Pu/2){try{if(ju(e).size<=t)return}catch{return}let r=`${e}.lock`;if(d_(r))try{let s=Mu(e,"utf8").split(`
103
+ `).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=f_(e);for(let c of s.slice(0,o)){let u=o_(c);if(!u)continue;let f=u_(u.t),d=a[f]??Bu();c_(d,u),a[f]=d}let l=s.slice(o);Nu(e,l.length?`${l.join(`
100
104
  `)}
101
- `:""),pu(wu(e),JSON.stringify({v:1,days:a}))}catch{return}finally{yu(r,{force:!0})}}function b0(e){let t=n0(e),n=t,r="";for(;;){try{return xr(t0(n),r)}catch{}let s=ku(n);if(s===n)return t;r=r?xr(fu(n),r):fu(n),n=s}}function mu(e){return e.length===0||e[0]==="cd"||e.every(t=>xu.test(t))}function S0(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(`|;&<>
102
- `.includes(i)){if(o(),mu(t)){t=[];continue}return t}n+=i,r=!0}return o(),mu(t)?[]:t}function it(e){let t=S0(e).map(a=>a.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<t.length;){let a=t[n];if(xu.test(a)){n+=1;continue}if(k0.has(a)){for(n+=1;n<t.length;){let l=t[n];if(l.startsWith("-")){n+=_0.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("-")&&w0.test(o)&&x0.has(s.toLowerCase())?`${s} ${o}`:s).slice(0,24)}function E0(){return xr(S(),r0)}function Sr(e,t,n=E0(),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)}`:"",f=i?`,"c":${JSON.stringify(i.slice(0,24))}`:"",p=a?b0(a):"",d=p&&p.length<=l0?`,"p":${JSON.stringify(p)}`:"",m=l.s?`,"s":${JSON.stringify(l.s.slice(0,66))}`:"",y=l.o?`,"o":${JSON.stringify(l.o)}`:"",b=`{"t":${Math.floor(Date.now()/1e3)},"r":${e},"f":${t}${r?',"m":1':""}${c}${u}${f}${d}${m}${y}}
103
- `;try{e0(S(),{recursive:!0,mode:448}),Xk(n,b,{mode:384}),Qk(n,384),y0(n)}catch{return}}function Er(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 vr(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}}var r0,s0,du,o0,i0,a0,l0,k0,_0,w0,x0,xu,io=h(()=>{"use strict";j();uu();r0="stats.jsonl",s0="stats-ledger.json",du=2*1024*1024,o0=3e4,i0=3e4,a0=new Set(["n","g","e"]),l0=256;k0=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),_0=new Set(["-u","-g","-n","-s","-k"]),w0=/^[a-z0-9][a-z0-9._-]*$/i,x0=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"]),xu=/^[A-Za-z_][A-Za-z0-9_]*=/});import{existsSync as EA,realpathSync as v0}from"node:fs";import{basename as TA,delimiter as Su,join as $A,dirname as RA}from"node:path";function Eu(e){try{return v0(e)}catch{return e}}function vu(){let e=xn(),t={...process.env},n=process.platform==="win32"?"Path":"PATH",r=t[n]??t.PATH??"",s=Eu(e),o=r.split(Su).filter(i=>i&&i!==e&&Eu(i)!==s);return t[n]=o.join(Su),n==="Path"&&(t.PATH=t[n]),t}var Tu=h(()=>{"use strict";zt();Ae();j();Nn();Zt();Sn();Zt()});function ao(e){return JSON.stringify(e)+Tr}function*Ru(e){let t=0;for(;;){let n=e.indexOf(Tr,t);if(n<0)return;yield e.slice(t,n),t=n+1}}function yn(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var T0,$0,R0,A0,jA,HA,BA,$u,Tr,zA,Au=h(()=>{"use strict";xt();on();T0=k.object({id:k.string().min(1).max(64),op:k.literal("filter"),cmd:k.string().min(1).max(2048),plan:k.enum(["trial","smart","pro"]),allowed:k.array(k.string().min(1).max(64)).max(512).optional(),installId:k.string().min(1).max(64).optional()}),$0=k.object({id:k.string().min(1).max(64),op:k.literal("ping")}),R0=k.object({id:k.string().min(1).max(64),op:k.literal("shutdown"),installId:k.string().min(1).max(64)}),A0=k.object({id:k.string().min(1).max(64),op:k.literal("reload"),installId:k.string().min(1).max(64).optional()}),jA=k.discriminatedUnion("op",[T0,$0,R0,A0]),HA=k.object({id:k.string(),ok:k.literal(!0),data:k.unknown()}),BA=k.object({id:k.string(),ok:k.literal(!1),err:k.string(),retryAfterMs:k.number().int().nonnegative().optional()}),$u=k.object({filter:Me.nullable(),cacheHit:k.boolean().optional()}),Tr=`
104
- `,zA=64*1024});import O0 from"node:os";import{join as bn}from"node:path";import{existsSync as C0,statSync as I0,lstatSync as Ou,unlinkSync as P0,mkdirSync as N0,chmodSync as D0}from"node:fs";import{createHash as M0}from"node:crypto";function L0(e){let t=M0("sha256").update(S()).digest("hex").slice(0,8),n=bn(O0.tmpdir(),`tkr-${e}-${t}`),r=bn(n,"d.sock");if(Buffer.byteLength(r)>lo)throw new Error("Temporary directory path is too long for IPC");return Cu(n,e),r}function F0(e,t){try{let n=Ou(e);return n.isDirectory()&&n.uid===t&&(n.mode&63)===0}catch{return!1}}function Cu(e,t){N0(e,{recursive:!0,mode:448});let n=Ou(e);if(!n.isDirectory()||n.uid!==t)throw new Error("Unsafe IPC directory");D0(e,448)}function kn(){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&&F0(t,e)){let s=bn(t,`tokmizer-${e}.sock`);if(Buffer.byteLength(s)<=lo)return{path:s,isPipe:!1}}let n=bn(S(),"run"),r=bn(n,"daemon.sock");return Buffer.byteLength(r)>lo?{path:L0(e),isPipe:!1}:(Cu(n,e),{path:r,isPipe:!1})}async function co(){let{path:e,isPipe:t}=kn();if(t||!C0(e))return;try{if(!I0(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{P0(e)}catch{}}var lo,VA,Iu=h(()=>{"use strict";j();lo=100;VA=5*6e4});import{createConnection as j0}from"node:net";import{spawn as H0}from"node:child_process";import{existsSync as Du,openSync as uo,closeSync as Pu,unlinkSync as po,writeFileSync as mo,mkdirSync as ho,readFileSync as B0,appendFileSync as z0,rmSync as U0,statSync as Z0}from"node:fs";import{dirname as G0,join as go}from"node:path";import{fileURLToPath as J0}from"node:url";function yo(){return go(S(),"daemon.spawn.fail")}function bo(){return go(S(),"daemon.log")}function q0(){try{let e=Number(B0(yo(),"utf8"));return Number.isFinite(e)&&Date.now()-e<W0}catch{return!1}}function Y0(e){try{ho(S(),{recursive:!0});let t=bo();try{Z0(t).size>V0&&po(t)}catch{}z0(t,`${new Date().toISOString()} ${e}
105
- `)}catch{}}function X0(e){try{ho(S(),{recursive:!0}),mo(yo(),String(Date.now()))}catch{}Y0(`spawn failed: ${e.message}`)}function Q0(){try{U0(yo(),{force:!0})}catch{}}async function $r(e,t){return new Promise((n,r)=>{let s=j0(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 e_(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:J0(new URL("../bin/tkr-daemon.js",import.meta.url))}async function fo(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 $r(e,75)).destroy(),!0}catch{}else if(Du(e))return!0;await new Promise(o=>setTimeout(o,75))}return!1}async function t_(e){let t=e_();if(!ke()&&!Du(t))throw new Error(`tkr-daemon binary not found at ${t}`);let{path:n}=kn(),r=process.platform==="win32"?S():G0(n);try{ho(r,{recursive:!0})}catch{}let s=go(r,"daemon.spawn.lock"),o=null;try{o=uo(s,"wx"),mo(o,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await fo(n,5e3))return;try{po(s)}catch{}try{o=uo(s,"wx"),mo(o,String(process.pid))}catch(l){if(l.code==="EEXIST"){await fo(n,5e3);return}throw l}}else throw i}try{let i=null;try{i=uo(bo(),"a")}catch{}let[a,...l]=Ut(t);if(H0(a,l,{detached:!0,stdio:["ignore","ignore",i??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:e}}).unref(),i!==null)try{Pu(i)}catch{}if(!await fo(n,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(o!==null){try{Pu(o)}catch{}try{po(s)}catch{}}}}async function n_(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:kn(),n=await eo();try{let r=await $r(t,Mu);r.write(ao({id:yn(),op:"shutdown",installId:n})),await new Promise(s=>setTimeout(s,150));try{r.destroy()}catch{}return!0}catch{return!1}}async function r_(e,t){let n=Date.now()+t;for(;Date.now()<n;){try{(await $r(e,250)).destroy()}catch{return!0}await new Promise(r=>setTimeout(r,100))}return!1}async function ko(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:kn(),n=await eo(),r=null,s=0,o=!1;for(;s<=Nu;)try{r=await $r(t,Mu),Q0();break}catch{if(s+=1,s>Nu)throw new Error(`tkr-daemon unreachable at ${t}`);if(q0())throw new Error(`tkr-daemon spawn on cooldown (see ${bo()})`);await co();try{await t_(n),o=!0}catch(u){throw X0(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 f=-1;for(let d=0;d<a.length;d++)a[d]===Tr&&(f=d);if(f<0)return;let p=[];for(let d of Ru(a.slice(0,f+1)))p.push(d);a=a.slice(f+1);for(let d of p)if(d)try{let m=JSON.parse(d),y=i.get(m.id);if(!y)continue;clearTimeout(y.timer),i.delete(m.id),y.resolve(m)}catch{}}),r.on("close",()=>{for(let u of i.values())clearTimeout(u.timer),u.reject(new Error("daemon socket closed"));i.clear()}),r.on("error",()=>{});function l(u){return new Promise((f,p)=>{if(r.destroyed||!r.writable){p(new Error("daemon socket closed"));return}let d=setTimeout(()=>{i.delete(u.id),p(new Error(`daemon request timeout (${u.op})`))},K0);i.set(u.id,{resolve:f,reject:p,timer:d}),r.write(ao(u))})}let c={filter:async(u,f,p)=>{let d=await l({id:yn(),op:"filter",cmd:u.slice(0,2048),plan:f,...p&&p.length>0?{allowed:p.slice(0,512)}:{},installId:n});if(!d.ok)return null;let m=$u.safeParse(d.data);return m.success?m.data.filter:null},ping:async()=>{let u=await l({id:yn(),op:"ping"});if(!u.ok)throw new Error(u.err);return u.data},reload:async()=>{let u=await l({id:yn(),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 f=await c.ping();if(f.version&&Bc(fn,f.version))throw new Error(`newer daemon ${f.version} already running`);u=f.version!==fn}catch(f){throw c.close(),f}if(u){try{await n_(e.socketPath?{socketPath:e.socketPath}:{})}catch{}c.close();let f=await r_(t,2e3);if(await co(),!f)throw new Error("stale daemon still running after shutdown request");return ko({...e,skipVersionCheck:!0})}}return c}var Mu,K0,Nu,W0,V0,Lu=h(()=>{"use strict";Au();Iu();j();Ae();to();dr();Mu=500,K0=3e3,Nu=1,W0=6e4,V0=256*1024});async function s_(){if(It)return It;if(_n)return _n;let e=ko().then(t=>{if(_n===e)return It=t,t;try{t.close()}catch{}return null}).catch(()=>null);return _n=e,e}async function o_(){return wo||(wo=!0,_o=await Vc()??pr()),_o}async function Fu(e,t,n){let r=await o_();if(!r)return null;let s=r.selectFor(e,t,n?[...n]:void 0);return!s||n&&!n.has(ee(s.slug))?null:s}function i_(e){return e?{...e,matchRegex:new RegExp(e.match_command)}:null}function Rr(e){Xs(async(t,n)=>{let r=e==="free"?"trial":e,s=n??At(void 0),o=await s_();if(!o)return Fu(t,r,s);try{let i=await o.filter(t,r,s?[...s]:void 0);return!i||s&&!s.has(ee(i.slug))?null:i_(i)}catch{return Fu(t,r,s)}})}function Ar(){if(Xs(null),It)try{It.close()}catch{}It=null,_n=null,_o=null,wo=!1}var It,_n,_o,wo,xo=h(()=>{"use strict";Lu();mr();Le();Ys();hn();It=null,_n=null;_o=null,wo=!1});import{chmod as Gu,mkdir as a_,readFile as y1,writeFile as ju,stat as b1,readdir as k1,rm as Hu,rename as l_}from"node:fs/promises";import{existsSync as c_,readFileSync as u_,realpathSync as f_}from"node:fs";import{createHash as d_}from"node:crypto";import{dirname as Bu,join as p_,resolve as zu}from"node:path";function b_(){try{let e=JSON.parse(u_(Ho(),"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 k_(e,t,n=process.env){let r=Number(n[e]);return Number.isFinite(r)&&r>0?r:t}function __(e){return`${Lr(e)}${y_}`}async function Uu(e){await a_(e,{recursive:!0,mode:448});try{await Gu(e,448)}catch{}}function w_(e=process.cwd()){let t;try{t=f_(zu(e))}catch{t=zu(e)}for(let n=t;;n=Bu(n)){if(c_(p_(n,".git")))return n;if(Bu(n)===n)return t}}function x_(e){return e===""?[]:(e.endsWith(`
105
+ `:""),Nu(zu(e),JSON.stringify({v:1,days:a}))}catch{return}finally{Fu(r,{force:!0})}}function m_(e){let t=X0(e),n=t,r="";for(;;){try{return vr(Y0(n),r)}catch{}let s=Hu(n);if(s===n)return t;r=r?vr(Iu(n),r):Iu(n),n=s}}function Du(e){return e.length===0||e[0]==="cd"||e.every(t=>Uu.test(t))}function k_(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(`|;&<>
106
+ `.includes(i)){if(o(),Du(t)){t=[];continue}return t}n+=i,r=!0}return o(),Du(t)?[]:t}function ut(e){let t=k_(e).map(a=>a.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<t.length;){let a=t[n];if(Uu.test(a)){n+=1;continue}if(h_.has(a)){for(n+=1;n<t.length;){let l=t[n];if(l.startsWith("-")){n+=g_.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("-")&&y_.test(o)&&b_.has(s.toLowerCase())?`${s} ${o}`:s).slice(0,24)}function __(){return vr(v(),Q0)}function Tr(e,t,n=__(),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)}`:"",f=i?`,"c":${JSON.stringify(i.slice(0,24))}`:"",d=a?m_(a):"",p=d&&d.length<=s_?`,"p":${JSON.stringify(d)}`:"",g=l.s?`,"s":${JSON.stringify(l.s.slice(0,66))}`:"",h=l.o?`,"o":${JSON.stringify(l.o)}`:"",m=`{"t":${Math.floor(Date.now()/1e3)},"r":${e},"f":${t}${r?',"m":1':""}${c}${u}${f}${p}${g}${h}}
107
+ `;try{q0(v(),{recursive:!0,mode:448}),K0(n,m,{mode:384}),V0(n,384),p_(n)}catch{return}}function $r(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 Rr(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}}var Q0,e_,Pu,t_,n_,r_,s_,h_,g_,y_,b_,Uu,ho=y(()=>{"use strict";H();Cu();Q0="stats.jsonl",e_="stats-ledger.json",Pu=2*1024*1024,t_=3e4,n_=3e4,r_=new Set(["n","g","e"]),s_=256;h_=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),g_=new Set(["-u","-g","-n","-s","-k"]),y_=/^[a-z0-9][a-z0-9._-]*$/i,b_=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"]),Uu=/^[A-Za-z_][A-Za-z0-9_]*=/});import{existsSync as C1,realpathSync as w_}from"node:fs";import{basename as P1,delimiter as Zu,join as N1,dirname as D1}from"node:path";function Gu(e){try{return w_(e)}catch{return e}}function Wu(){let e=En(),t={...process.env},n=process.platform==="win32"?"Path":"PATH",r=t[n]??t.PATH??"",s=Gu(e),o=r.split(Zu).filter(i=>i&&i!==e&&Gu(i)!==s);return t[n]=o.join(Zu),n==="Path"&&(t.PATH=t[n]),t}var Ju=y(()=>{"use strict";Gt();Ie();H();Ln();mt();Tn();mt()});function go(e){return JSON.stringify(e)+Ar}function*Vu(e){let t=0;for(;;){let n=e.indexOf(Ar,t);if(n<0)return;yield e.slice(t,n),t=n+1}}function kn(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var x_,S_,E_,v_,W1,J1,K1,Ku,Ar,V1,qu=y(()=>{"use strict";$t();ln();x_=k.object({id:k.string().min(1).max(64),op:k.literal("filter"),cmd:k.string().min(1).max(2048),plan:k.enum(["trial","smart","pro"]),allowed:k.array(k.string().min(1).max(64)).max(512).optional(),installId:k.string().min(1).max(64).optional()}),S_=k.object({id:k.string().min(1).max(64),op:k.literal("ping")}),E_=k.object({id:k.string().min(1).max(64),op:k.literal("shutdown"),installId:k.string().min(1).max(64)}),v_=k.object({id:k.string().min(1).max(64),op:k.literal("reload"),installId:k.string().min(1).max(64).optional()}),W1=k.discriminatedUnion("op",[x_,S_,E_,v_]),J1=k.object({id:k.string(),ok:k.literal(!0),data:k.unknown()}),K1=k.object({id:k.string(),ok:k.literal(!1),err:k.string(),retryAfterMs:k.number().int().nonnegative().optional()}),Ku=k.object({filter:je.nullable(),cacheHit:k.boolean().optional()}),Ar=`
108
+ `,V1=64*1024});import T_ from"node:os";import{join as _n}from"node:path";import{existsSync as $_,statSync as R_,lstatSync as Yu,unlinkSync as A_,mkdirSync as O_,chmodSync as C_}from"node:fs";import{createHash as I_}from"node:crypto";function P_(e){let t=I_("sha256").update(v()).digest("hex").slice(0,8),n=_n(T_.tmpdir(),`tkr-${e}-${t}`),r=_n(n,"d.sock");if(Buffer.byteLength(r)>yo)throw new Error("Temporary directory path is too long for IPC");return Xu(n,e),r}function N_(e,t){try{let n=Yu(e);return n.isDirectory()&&n.uid===t&&(n.mode&63)===0}catch{return!1}}function Xu(e,t){O_(e,{recursive:!0,mode:448});let n=Yu(e);if(!n.isDirectory()||n.uid!==t)throw new Error("Unsafe IPC directory");C_(e,448)}function wn(){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&&N_(t,e)){let s=_n(t,`tokmizer-${e}.sock`);if(Buffer.byteLength(s)<=yo)return{path:s,isPipe:!1}}let n=_n(v(),"run"),r=_n(n,"daemon.sock");return Buffer.byteLength(r)>yo?{path:P_(e),isPipe:!1}:(Xu(n,e),{path:r,isPipe:!1})}async function bo(){let{path:e,isPipe:t}=wn();if(t||!$_(e))return;try{if(!R_(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{A_(e)}catch{}}var yo,nO,Qu=y(()=>{"use strict";H();yo=100;nO=5*6e4});import{createConnection as D_}from"node:net";import{spawn as M_}from"node:child_process";import{existsSync as nf,openSync as ko,closeSync as ef,unlinkSync as wo,writeFileSync as xo,mkdirSync as So,readFileSync as L_,appendFileSync as F_,rmSync as j_,statSync as H_}from"node:fs";import{dirname as B_,join as Eo}from"node:path";import{fileURLToPath as z_}from"node:url";function vo(){return Eo(v(),"daemon.spawn.fail")}function To(){return Eo(v(),"daemon.log")}function W_(){try{let e=Number(L_(vo(),"utf8"));return Number.isFinite(e)&&Date.now()-e<Z_}catch{return!1}}function J_(e){try{So(v(),{recursive:!0});let t=To();try{H_(t).size>G_&&wo(t)}catch{}F_(t,`${new Date().toISOString()} ${e}
109
+ `)}catch{}}function K_(e){try{So(v(),{recursive:!0}),xo(vo(),String(Date.now()))}catch{}J_(`spawn failed: ${e.message}`)}function V_(){try{j_(vo(),{force:!0})}catch{}}async function Or(e,t){return new Promise((n,r)=>{let s=D_(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 q_(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:z_(new URL("../bin/tkr-daemon.js",import.meta.url))}async function _o(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 Or(e,75)).destroy(),!0}catch{}else if(nf(e))return!0;await new Promise(o=>setTimeout(o,75))}return!1}async function Y_(e){let t=q_();if(!we()&&!nf(t))throw new Error(`tkr-daemon binary not found at ${t}`);let{path:n}=wn(),r=process.platform==="win32"?v():B_(n);try{So(r,{recursive:!0})}catch{}let s=Eo(r,"daemon.spawn.lock"),o=null;try{o=ko(s,"wx"),xo(o,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await _o(n,5e3))return;try{wo(s)}catch{}try{o=ko(s,"wx"),xo(o,String(process.pid))}catch(l){if(l.code==="EEXIST"){await _o(n,5e3);return}throw l}}else throw i}try{let i=null;try{i=ko(To(),"a")}catch{}let[a,...l]=Wt(t);if(M_(a,l,{detached:!0,stdio:["ignore","ignore",i??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:e}}).unref(),i!==null)try{ef(i)}catch{}if(!await _o(n,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(o!==null){try{ef(o)}catch{}try{wo(s)}catch{}}}}async function X_(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:wn(),n=await lo();try{let r=await Or(t,rf);r.write(go({id:kn(),op:"shutdown",installId:n})),await new Promise(s=>setTimeout(s,150));try{r.destroy()}catch{}return!0}catch{return!1}}async function Q_(e,t){let n=Date.now()+t;for(;Date.now()<n;){try{(await Or(e,250)).destroy()}catch{return!0}await new Promise(r=>setTimeout(r,100))}return!1}async function $o(e={}){let{path:t}=e.socketPath?{path:e.socketPath}:wn(),n=await lo(),r=null,s=0,o=!1;for(;s<=tf;)try{r=await Or(t,rf),V_();break}catch{if(s+=1,s>tf)throw new Error(`tkr-daemon unreachable at ${t}`);if(W_())throw new Error(`tkr-daemon spawn on cooldown (see ${To()})`);await bo();try{await Y_(n),o=!0}catch(u){throw K_(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 f=-1;for(let p=0;p<a.length;p++)a[p]===Ar&&(f=p);if(f<0)return;let d=[];for(let p of Vu(a.slice(0,f+1)))d.push(p);a=a.slice(f+1);for(let p of d)if(p)try{let g=JSON.parse(p),h=i.get(g.id);if(!h)continue;clearTimeout(h.timer),i.delete(g.id),h.resolve(g)}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((f,d)=>{if(r.destroyed||!r.writable){d(new Error("daemon socket closed"));return}let p=setTimeout(()=>{i.delete(u.id),d(new Error(`daemon request timeout (${u.op})`))},U_);i.set(u.id,{resolve:f,reject:d,timer:p}),r.write(go(u))})}let c={filter:async(u,f,d)=>{let p=await l({id:kn(),op:"filter",cmd:u.slice(0,2048),plan:f,...d&&d.length>0?{allowed:d.slice(0,512)}:{},installId:n});if(!p.ok)return null;let g=Ku.safeParse(p.data);return g.success?g.data.filter:null},ping:async()=>{let u=await l({id:kn(),op:"ping"});if(!u.ok)throw new Error(u.err);return u.data},reload:async()=>{let u=await l({id:kn(),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 f=await c.ping();if(f.version&&lu(pn,f.version))throw new Error(`newer daemon ${f.version} already running`);u=f.version!==pn}catch(f){throw c.close(),f}if(u){try{await X_(e.socketPath?{socketPath:e.socketPath}:{})}catch{}c.close();let f=await Q_(t,2e3);if(await bo(),!f)throw new Error("stale daemon still running after shutdown request");return $o({...e,skipVersionCheck:!0})}}return c}var rf,U_,tf,Z_,G_,sf=y(()=>{"use strict";qu();Qu();H();Ie();co();hr();rf=500,U_=3e3,tf=1,Z_=6e4,G_=256*1024});async function ew(){if(Lt)return Lt;if(xn)return xn;let e=$o().then(t=>{if(xn===e)return Lt=t,t;try{t.close()}catch{}return null}).catch(()=>null);return xn=e,e}async function tw(){return Ao||(Ao=!0,Ro=await gu()??gr()),Ro}async function of(e,t,n){let r=await tw();if(!r)return null;let s=r.selectFor(e,t,n?[...n]:void 0);return!s||n&&!n.has(te(s.slug))?null:s}function nw(e){return e?{...e,matchRegex:new RegExp(e.match_command)}:null}function Cr(e){io(async(t,n)=>{let r=e==="free"?"trial":e,s=n??Nt(void 0),o=await ew();if(!o)return of(t,r,s);try{let i=await o.filter(t,r,s?[...s]:void 0);return!i||s&&!s.has(te(i.slug))?null:nw(i)}catch{return of(t,r,s)}})}function Ir(){if(io(null),Lt)try{Lt.close()}catch{}Lt=null,xn=null,Ro=null,Ao=!1}var Lt,xn,Ro,Ao,Oo=y(()=>{"use strict";sf();yr();He();oo();yn();Lt=null,xn=null;Ro=null,Ao=!1});import{chmod as pf,mkdir as rw,readFile as EO,writeFile as af,stat as vO,readdir as TO,rm as lf,rename as sw}from"node:fs/promises";import{existsSync as ow,readFileSync as iw,realpathSync as aw}from"node:fs";import{createHash as lw}from"node:crypto";import{dirname as cf,join as cw,resolve as uf}from"node:path";function mw(){try{let e=JSON.parse(iw(Vo(),"utf8")),t=e.maxAgeDays;return{...typeof t=="number"&&Number.isFinite(t)&&t>0?{maxAgeDays:Math.min(t,365)}:{},...e.disabled===!0?{disabled:!0}:{}}}catch{return{}}}function hw(e,t,n=process.env){let r=Number(n[e]);return Number.isFinite(r)&&r>0?r:t}function gw(e){return`${Hr(e)}${pw}`}async function ff(e){await rw(e,{recursive:!0,mode:448});try{await pf(e,448)}catch{}}function yw(e=process.cwd()){let t;try{t=aw(uf(e))}catch{t=uf(e)}for(let n=t;;n=cf(n)){if(ow(cw(n,".git")))return n;if(cf(n)===n)return t}}function bw(e){return e===""?[]:(e.endsWith(`
106
110
  `)?e.slice(0,-1):e).split(`
107
- `)}async function S_(e,t,n=process.env,r={}){if(we()||!g_.test(e))return!1;t=Xc(t);let s=Buffer.byteLength(t,"utf8");if(s>k_("TOKMIZER_CCR_ENTRY_MAX_BYTES",h_,n))return!1;let o=Lr(e),i=`${o}.tmp-${process.pid}-${process.hrtime.bigint()}`;try{if(await Uu(S()),await Uu(Mr()),we())return!1;if(await ju(i,t,{mode:384}),await Gu(i,384),we())return await Hu(i,{force:!0}),!1;await l_(i,o)}catch{try{await Hu(i)}catch{}return!1}let a={at:Date.now(),bytes:s,lines:x_(t).length,partial:r.partial===!0,...r.label?{label:r.label.slice(0,40)}:{},project:w_(r.cwd)};try{await ju(__(e),JSON.stringify(a),{mode:384})}catch{}return!0}function Ju(e){let t=e.TOKMIZER_CCR_DISABLED;return t==="1"||t==="true"||we()||b_().disabled===!0}function ye(e,t){let n=e.replace(E_,"> ");if(!n.includes("[tkr:")&&!n.includes("[same output as "))return n;let r=t==null?null:t.split(`
108
- `).map(o=>o.replace(/\r$/,"")).filter(o=>Zu.test(o)),s=o=>{if(r==null)return!1;let i=v_.find(a=>a(o));return i!=null&&!r.some(i)};return n.split(`
109
- `).map(o=>Zu.test(o)&&!s(o)?`> ${o}`:o).join(`
110
- `)}async function So(e,t,n,r){let s=d_("sha256").update(e).digest("hex").slice(0,16);return await S_(s,e,r,{partial:t,label:n})?s:null}async function Pt(e,t,n=process.env,r={}){if(t=ye(t,r.raw),Ju(n)||!e)return t;let s=i=>`
111
- [tkr restore ${i}]`;if(Buffer.byteLength(e,"utf8")<=Buffer.byteLength(s("0".repeat(16)),"utf8"))return t;if(r.raw){let i=await So(r.raw,!1,r.label,n);if(i)return`${t}${s(i)}`}let o=await So(e,!0,r.label,n);return o?`${t}${s(o)}`:t}async function Or(e,t,n=process.env,r={}){if(t=ye(t,e),Ju(n)||!e)return t;let s=await So(e,!1,r.label,n);return s?`${t}
112
- [tkr restore ${s}]`:t}var m_,$1,R1,h_,g_,y_,A1,E_,Zu,v_,Eo=h(()=>{"use strict";yr();Ln();j();Mn();m_=1440*60*1e3,$1=30*m_,R1=200*1024*1024,h_=8*1024*1024,g_=/^[0-9a-f]{8,64}$/i,y_=".meta",A1=["usage: tkr restore <hash> [--lines a:b] [--grep pattern]"," tkr restore --list [--all-projects]"," tkr restore --grep <pattern> [--all-projects]",""].join(`
113
- `);E_=/^(?=\[tkr |\[tokmizer\])/gm,Zu=/^\[(?:tkr:|same output as )/,v_=[e=>e===ft,e=>/^\[tkr: previous log line repeated \d+ additional times\]$/.test(e),e=>/^\[same output as `.*` earlier in this session, unchanged, ~\d+ tokens\]$/.test(e)]});var ef={};Ft(ef,{CAPTURING_ENV:()=>To,kickBackgroundEnroll:()=>qu,processCapturedOutput:()=>Qu,resolveExecTimeoutMs:()=>Yu,runWrapped:()=>L_,signalNumber:()=>Xu,underCapturingExec:()=>P_});import{existsSync as Ku,readFileSync as T_,writeFileSync as $_,mkdirSync as R_}from"node:fs";import{join as A_}from"node:path";import{fileURLToPath as O_}from"node:url";import{StringDecoder as C_}from"node:string_decoder";function P_(e=process.env){return e[To]==="1"}function Vu(e,t){let n=new C_("utf8"),r=n.write(Buffer.concat(e));return t?r:r+n.end()}function qu(){try{if(!dn()||!Ku(Gc()))return;let e=process.env.TOKMIZER_TKR_BIN||O_(new URL("../bin/tkr.js",import.meta.url));if(!ke()&&!Ku(e))return;let t=A_(S(),"enroll-kick");try{let o=Number(T_(t,"utf8"));if(Number.isFinite(o)&&Date.now()-o<I_)return}catch{}R_(S(),{recursive:!0}),$_(t,String(Date.now()));let[n,...r]=Ut(e);(0,vo.default)(n,[...r,"heartbeat"],{detached:!0,stdio:"ignore"}).unref()}catch{}}function Yu(e){let t=Number(e.TOKMIZER_EXEC_TIMEOUT_MS);if(Number.isFinite(t)&&t>0)return t;let n=Number(e.BASH_MAX_TIMEOUT_MS);return Number.isFinite(n)&&n>6e5?n:6e5}function Xu(e){return D_[e]??15}function M_(e){let t=un(e);if(t===null)return!1;let[n,...r]=Te(t).split(/\s+/);return/^(?:cat|head|nl)(?:\.exe)?$/i.test(n?.split(/[\\/]/).pop()??"")&&r.some(s=>s!==""&&!s.startsWith("-"))}async function L_(e){let[t,...n]=e;if(!t)throw new Error("tkr-exec: missing command");let r=we(),s=(0,vo.default)(t,n,{stdio:["inherit","pipe","pipe"],env:{...vu(),[To]:"1"}}),o=!1;s.on("spawn",()=>{o=!0});let i=C=>{try{s.kill(C)}catch{}},a=()=>i("SIGINT"),l=()=>i("SIGTERM");process.on("SIGINT",a),process.on("SIGTERM",l);let c=[],u=[],f=0,p=0,d=!1,m=!1;s.stdout?.on("data",C=>{if(f>=Nt){d=!0;return}let M=Nt-f,L=C.length>M?C.subarray(0,M):C;c.push(L),f+=L.length,C.length>M&&(d=!0)}),s.stderr?.on("data",C=>{if(p>=Nt){m=!0;return}let M=Nt-p,L=C.length>M?C.subarray(0,M):C;u.push(L),p+=L.length,C.length>M&&(m=!0)});let y,b,R;try{R=await new Promise((C,M)=>{s.on("error",L=>{y&&clearTimeout(y),o?C(1):M(L)}),s.on("close",(L,F)=>{y&&clearTimeout(y),C(L??(F?128+Xu(F):0))}),y=setTimeout(()=>{s.kill("SIGTERM"),b=setTimeout(()=>s.kill("SIGKILL"),2e3)},N_),y.unref?.()})}finally{y&&clearTimeout(y),b&&clearTimeout(b),process.off("SIGINT",a),process.off("SIGTERM",l)}let T=Vu(c,d),D=Vu(u,m);return Qu({argv:e,stdout:T,stderr:D,exitCode:R,truncated:d,stderrTruncated:m},{yolo:r,env:process.env,onMissingState:qu})}async function Qu({argv:e,stdout:t,stderr:n,exitCode:r,truncated:s,stderrTruncated:o},{yolo:i,env:a,resolver:l,onMissingState:c,deferAccounting:u,...f}){let p=s?`
114
- \u2026 (output truncated at ${Nt/1048576}MB)`:"",d=o?`
115
- \u2026 (stderr truncated at ${Nt/(1024*1024)}MB)`:"",m=()=>{let y=t+p,b=Buffer.byteLength(y,"utf8");return{stdout:y,stderr:n+d,code:r,filterId:null,rawBytes:b,filteredBytes:b,truncated:s}};try{let y=await He();y||c?.();let b=await $e();if(!b.enabled)return m();let R=a.CLAUDE_CODE_SESSION_ID;R&&y?.token&&Dn(R,{tool:"Bash",target:e.join(" "),...r!==0?{fail:1}:{}});let T=y?gr(y):null,D=y?At(y.allowedFilters,hr(y)):null,C=new Set(b.filters.disabled.map(ee)),M=D&&C.size>0?new Set([...D].filter(A=>!C.has(A))):D,L=e.join(" ");y&&!l&&Rr(T);let F=await Ot(L,t,M,{verbosity:b.outputVerbosity,resolver:l,yolo:i,exitCode:r}),ue=ye(n,n),P=0,U=0;if((i||r===0)&&Buffer.byteLength(n,"utf8")>=(i?1:Wu)){let A=await Ot(L,n,M,{verbosity:b.outputVerbosity,resolver:l,yolo:i,exitCode:r});if(ue=ye(A.output,n),!i&&A.output!==n)try{ue=await Pt(A.droppedTail??null,A.output,a,{raw:o?null:n,label:it(L)})}catch{}P=A.rawBytes,U=A.filteredBytes}else if(!i&&r!==0&&Buffer.byteLength(n,"utf8")>=Wu){let A=await Ot(L,n,M,{verbosity:b.outputVerbosity,resolver:l,exitCode:r});if(A.failureSummary){try{ue=await Pt(A.droppedTail??null,A.output,a)}catch{ue=ye(A.output,n)}P=A.rawBytes,U=A.filteredBytes}}let be=!i&&F.output!==t&&M_(L)?`${F.output}${F.output.endsWith(`
111
+ `)}async function kw(e,t,n=process.env,r={}){if(Se()||!dw.test(e))return!1;t=ku(t);let s=Buffer.byteLength(t,"utf8");if(s>hw("TOKMIZER_CCR_ENTRY_MAX_BYTES",fw,n))return!1;let o=Hr(e),i=`${o}.tmp-${process.pid}-${process.hrtime.bigint()}`;try{if(await ff(v()),await ff(jr()),Se())return!1;if(await af(i,t,{mode:384}),await pf(i,384),Se())return await lf(i,{force:!0}),!1;await sw(i,o)}catch{try{await lf(i)}catch{}return!1}let a={at:Date.now(),bytes:s,lines:bw(t).length,partial:r.partial===!0,...r.label?{label:r.label.slice(0,40)}:{},project:yw(r.cwd)};try{await af(gw(e),JSON.stringify(a),{mode:384})}catch{}return!0}function mf(e){let t=e.TOKMIZER_CCR_DISABLED;return t==="1"||t==="true"||Se()||mw().disabled===!0}function _e(e,t){let n=e.replace(_w,"> ");if(!n.includes("[tkr:")&&!n.includes("[same output as "))return n;let r=t==null?null:t.split(`
112
+ `).map(o=>o.replace(/\r$/,"")).filter(o=>df.test(o)),s=o=>{if(r==null)return!1;let i=ww.find(a=>a(o));return i!=null&&!r.some(i)};return n.split(`
113
+ `).map(o=>df.test(o)&&!s(o)?`> ${o}`:o).join(`
114
+ `)}async function Co(e,t,n,r){let s=lw("sha256").update(e).digest("hex").slice(0,16);return await kw(s,e,r,{partial:t,label:n})?s:null}function hf(e,t){return`${e===""||e.endsWith(`
115
+ `)?"":`
116
+ `}[tkr restore ${t}]
117
+ `}async function Ft(e,t,n=process.env,r={}){if(t=_e(t,r.raw),mf(n)||!e)return t;let s=i=>hf(t,i);if(Buffer.byteLength(e,"utf8")<=Buffer.byteLength(s("0".repeat(16)),"utf8"))return t;if(r.raw){let i=await Co(r.raw,!1,r.label,n);if(i)return`${t}${s(i)}`}let o=await Co(e,!0,r.label,n);return o?`${t}${s(o)}`:t}async function Pr(e,t,n=process.env,r={}){if(t=_e(t,e),mf(n)||!e)return t;let s=await Co(e,!1,r.label,n);return s?`${t}${hf(t,s)}`:t}var uw,NO,DO,fw,dw,pw,MO,_w,df,ww,Io=y(()=>{"use strict";_r();Hn();H();jn();uw=1440*60*1e3,NO=30*uw,DO=200*1024*1024,fw=8*1024*1024,dw=/^[0-9a-f]{8,64}$/i,pw=".meta",MO=["usage: tkr restore <hash> [--lines a:b] [--grep pattern]"," tkr restore --list [--all-projects]"," tkr restore --grep <pattern> [--all-projects]",""].join(`
118
+ `);_w=/^(?=\[tkr |\[tokmizer\])/gm,df=/^\[(?:tkr:|same output as )/,ww=[e=>e===gt,e=>/^\[tkr: previous log line repeated \d+ additional times\]$/.test(e),e=>/^\[same output as `.*` earlier in this session, unchanged, ~\d+ tokens\]$/.test(e)]});var vf={};Bt(vf,{CAPTURING_ENV:()=>Do,POST_EXIT_IDLE_MS:()=>kf,POST_EXIT_MAX_MS:()=>_f,commandLine:()=>Sf,kickBackgroundEnroll:()=>wf,processCapturedOutput:()=>Ef,resolveExecTimeoutMs:()=>xf,runWrapped:()=>Dw,signalNumber:()=>Po,underCapturingExec:()=>Ow});import{existsSync as gf,readFileSync as xw,writeFileSync as Sw,mkdirSync as Ew}from"node:fs";import{join as vw}from"node:path";import{constants as Tw}from"node:os";import{fileURLToPath as $w}from"node:url";import{StringDecoder as Rw}from"node:string_decoder";function Ow(e=process.env){return e[Do]==="1"}function bf(e,t){let n=new Rw("utf8"),r=n.write(Buffer.concat(e));return t?r:r+n.end()}function wf(){try{if(!mn()||!gf(du()))return;let e=process.env.TOKMIZER_TKR_BIN||$w(new URL("../bin/tkr.js",import.meta.url));if(!we()&&!gf(e))return;let t=vw(v(),"enroll-kick");try{let o=Number(xw(t,"utf8"));if(Number.isFinite(o)&&Date.now()-o<Aw)return}catch{}Ew(v(),{recursive:!0}),Sw(t,String(Date.now()));let[n,...r]=Wt(e);(0,No.default)(n,[...r,"heartbeat"],{detached:!0,stdio:"ignore",windowsHide:!0}).unref()}catch{}}function xf(e){let t=Number(e.TOKMIZER_EXEC_TIMEOUT_MS);if(Number.isFinite(t)&&t>0)return t;let n=Number(e.BASH_MAX_TIMEOUT_MS);return Number.isFinite(n)&&n>6e5?n:6e5}function Po(e){return Tw.signals[e]??Iw[e]??15}function Sf(e){return e.map(t=>Pw.test(t)?t:vn(t)).join(" ")}function Nw(e){let t=dn(e);if(t===null)return!1;let[n,...r]=Re(t).split(/\s+/);return/^(?:cat|head|nl)(?:\.exe)?$/i.test(n?.split(/[\\/]/).pop()??"")&&r.some(s=>s!==""&&!s.startsWith("-"))}async function Dw(e){let[t,...n]=e;if(!t)throw new Error("tkr-exec: missing command");let r=Se(),s=(0,No.default)(t,n,{stdio:["inherit","pipe","pipe"],env:{...Wu(),[Do]:"1"},windowsHide:!0}),o=!1;s.on("spawn",()=>{o=!0});let i=N=>{try{s.kill(N)}catch{}},a=()=>i("SIGINT"),l=()=>i("SIGTERM");process.on("SIGINT",a),process.on("SIGTERM",l);let c=[],u=[],f=0,d=0,p=!1,g=!1;s.stdout?.on("data",N=>{if(f>=jt){p=!0;return}let D=jt-f,j=N.length>D?N.subarray(0,D):N;c.push(j),f+=j.length,N.length>D&&(p=!0)}),s.stderr?.on("data",N=>{if(d>=jt){g=!0;return}let D=jt-d,j=N.length>D?N.subarray(0,D):N;u.push(j),d+=j.length,N.length>D&&(g=!0)});let h,m,x,S,O;try{O=await new Promise((N,D)=>{s.on("error",A=>{h&&clearTimeout(h),o?N(1):D(A)});let j=null,ne=()=>{j!=null&&(h&&clearTimeout(h),x&&clearTimeout(x),S&&clearTimeout(S),N(j))},ce=()=>{s.stdout?.destroy(),s.stderr?.destroy(),ne()},ue=()=>{x&&clearTimeout(x),x=setTimeout(ce,kf)};s.on("exit",(A,B)=>{h&&clearTimeout(h),m&&clearTimeout(m),j=A??(B?128+Po(B):0),ue(),S=setTimeout(ce,_f),s.stdout?.on("data",ue),s.stderr?.on("data",ue)}),s.on("close",(A,B)=>{j==null&&(j=A??(B?128+Po(B):0)),ne()}),h=setTimeout(()=>{s.kill("SIGTERM"),m=setTimeout(()=>s.kill("SIGKILL"),2e3)},Cw),h.unref?.()})}finally{h&&clearTimeout(h),m&&clearTimeout(m),x&&clearTimeout(x),S&&clearTimeout(S),process.off("SIGINT",a),process.off("SIGTERM",l)}let P=bf(c,p),F=bf(u,g);return Ef({argv:e,stdout:P,stderr:F,exitCode:O,truncated:p,stderrTruncated:g},{yolo:r,env:process.env,onMissingState:wf})}async function Ef({argv:e,stdout:t,stderr:n,exitCode:r,truncated:s,stderrTruncated:o},{yolo:i,env:a,resolver:l,onMissingState:c,deferAccounting:u,...f}){let d=s?`
119
+ \u2026 (output truncated at ${jt/1048576}MB)`:"",p=o?`
120
+ \u2026 (stderr truncated at ${jt/(1024*1024)}MB)`:"",g=()=>{let h=t+d,m=Buffer.byteLength(h,"utf8");return{stdout:h,stderr:n+p,code:r,filterId:null,rawBytes:m,filteredBytes:m,truncated:s}};try{let h=await Ue();h||c?.();let m=await Ae();if(!m.enabled)return g();let x=a.CLAUDE_CODE_SESSION_ID;x&&h?.token&&Fn(x,{tool:"Bash",target:e.join(" "),...r!==0?{fail:1}:{}});let S=h?kr(h):null,O=h?Nt(h.allowedFilters,br(h)):null,P=new Set(m.filters.disabled.map(te)),F=O&&P.size>0?new Set([...O].filter(C=>!P.has(C))):O,N=Sf(e);h&&!l&&Cr(S);let D=await Dt(N,t,F,{verbosity:m.outputVerbosity,resolver:l,yolo:i,exitCode:r}),j=_e(n,n),ne=0,ce=0;if((i||r===0)&&Buffer.byteLength(n,"utf8")>=(i?1:yf)){let C=await Dt(N,n,F,{verbosity:m.outputVerbosity,resolver:l,yolo:i,exitCode:r});if(j=_e(C.output,n),!i&&C.output!==n)try{j=await Ft(C.droppedTail??null,C.output,a,{raw:o?null:n,label:ut(N)})}catch{}ne=C.rawBytes,ce=C.filteredBytes}else if(!i&&r!==0&&Buffer.byteLength(n,"utf8")>=yf){let C=await Dt(N,n,F,{verbosity:m.outputVerbosity,resolver:l,exitCode:r});if(C.failureSummary){try{j=await Ft(C.droppedTail??null,C.output,a)}catch{j=_e(C.output,n)}ne=C.rawBytes,ce=C.filteredBytes}}let A=!i&&D.output!==t&&Nw(N)?`${D.output}${D.output.endsWith(`
116
121
  `)?"":`
117
- `}${ft}`:F.output,ae=ye(be,t);if(!i&&F.filteredBytes<F.rawBytes)try{ae=new RegExp(er.source,"m").test(F.output)?await Or(t,be,a,{label:it(L)}):await Pt(F.droppedTail??null,be,a,{raw:s?null:t,label:it(L)})}catch{}!s&&t.length>0&&Buffer.byteLength(ae,"utf8")>=Buffer.byteLength(t,"utf8")&&(ae=ye(t,t));let at=ae+p,Dt=ue+d,Mt=Pn(a).host,Fe=vr(F.rawBytes+Buffer.byteLength(n,"utf8"),Buffer.byteLength(at,"utf8")+Buffer.byteLength(Dt,"utf8"),In(Mt)),lt=!1,wn=async()=>{if(!lt){lt=!0;try{Sr(Fe.raw,Fe.filtered,void 0,!1,Mt,"sh",it(L),"cwd"in f?f.cwd:process.cwd(),Er(F)),await wr({cmd:L,filterId:F.filterId,rawBytes:F.rawBytes,filteredBytes:F.filteredBytes,plan:T}),await kr({cmd:L,tokensSaved:Math.max(0,Math.round((Fe.raw-Fe.filtered)/4)),rawTokens:Math.round(Fe.raw/4),optimized:F.filterId!=null,telemetryOptIn:b.telemetryOptIn&&(!u||(await $e()).telemetryOptIn),sessionId:R,host:Mt})}catch{}}};return u?u(wn):await wn(),{stdout:at,stderr:Dt,code:r,filterId:F.filterId,rawBytes:F.rawBytes+P,filteredBytes:F.filteredBytes+U,truncated:s}}catch{return m()}finally{l||Ar()}}var vo,Nt,Wu,I_,To,N_,D_,tf=h(()=>{"use strict";vo=Tf(Ya(),1);mr();Le();hn();Bt();j();Qs();so();_r();io();Qr();Ct();Nn();Tu();xo();Eo();$t();Ln();zs();Mn();Ae();pn();Nt=10*1024*1024,Wu=1024,I_=6e4,To="TOKMIZER_EXEC_CAPTURING";N_=Yu(process.env),D_={SIGHUP:1,SIGINT:2,SIGQUIT:3,SIGILL:4,SIGTRAP:5,SIGABRT:6,SIGBUS:7,SIGFPE:8,SIGKILL:9,SIGUSR1:10,SIGSEGV:11,SIGUSR2:12,SIGPIPE:13,SIGALRM:14,SIGTERM:15}});var $o={};Ft($o,{FOLD_MARKER_RE:()=>er,captureForRestore:()=>Pt,captureOriginalForRestore:()=>Or,closeDaemonResolver:()=>Ar,countedSaving:()=>vr,gatingPlan:()=>gr,graceExceeded:()=>hr,installDaemonResolver:()=>Rr,loadSettingsCache:()=>$e,neutralizeMarkers:()=>ye,processOutput:()=>Ot,recordEvent:()=>wr,recordStat:()=>Sr,recordTelemetry:()=>kr,resolveAllowedFilters:()=>At,statCmdLabel:()=>it,statOutcome:()=>Er});var Ro=h(()=>{"use strict";mr();Eo();$t();hn();Qs();so();_r();io();xo();Ct()});function Mo(e=5e3){return new Promise(t=>{let n=[],r=process.stdin,s=!1,o=()=>{s||(s=!0,clearTimeout(a),r.off("data",i),r.pause(),r.unref?.(),t(Buffer.concat(n).toString("utf8")))},i=l=>{n.push(Buffer.isBuffer(l)?l:Buffer.from(l))},a=setTimeout(o,e);r.on("data",i).once("end",o).once("error",o),r.resume()})}import{realpathSync as Lo}from"node:fs";import{fileURLToPath as $f,pathToFileURL as Rf}from"node:url";var Fo=null;function jo(e,t,n){if(n!==void 0&&Fo===n)return!0;if(Fo!==null||!e)return!1;if(t===Rf(e).href)return!0;try{return Lo(e)===Lo($f(t))}catch{return!1}}j();Bt();Nn();Qr();import{existsSync as F_,writeFileSync as j_,appendFileSync as H_,statSync as B_,constants as nf}from"node:fs";import{lstat as z_,open as U_}from"node:fs/promises";import{basename as Z_,dirname as G_,isAbsolute as J_,join as lf}from"node:path";j();Zt();import{readFileSync as xp}from"node:fs";import{join as Sp}from"node:path";function Bi(){if(zo())return!1;try{return JSON.parse(xp(Sp(S(),"settings-cache.json"),"utf8")).enabled!==!1}catch{return!0}}j();import{createHash as Ep}from"node:crypto";import{appendFileSync as vp,chmodSync as Tp,mkdirSync as $p,readFileSync as Rp,rmSync as Ap,statSync as Op}from"node:fs";import{join as zi}from"node:path";var Cp=256*1024,Ip=80;function Pp(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return zi(S(),"sessions",`${t}.seen`)}function es(e){return e.replace(/[\t\r\n]+/g," ").trim().slice(0,Ip)}function ts(e,t,n,r){try{let s=Pp(e),o=es(t),i=Ep("sha256").update(n).digest("hex").slice(0,32),a="";try{a=Rp(s,"utf8")}catch{}for(let l of a.split(`
118
- `)){let[c,u,f]=l.split(" ");if(c===o&&u===i)return{cmd:f??""}}$p(zi(S(),"sessions"),{recursive:!0,mode:448}),vp(s,`${o} ${i} ${es(r)}
119
- `,{mode:384}),Tp(s,384),Op(s).size>Cp&&Ap(s,{force:!0})}catch{}return null}function ns(e,t){return`[same output as \`${es(e)}\` earlier in this session, unchanged, ~${Math.round(t/4)} tokens]`}Mn();Ln();function K(e,t){let n=e[t];return typeof n=="string"&&n?n:null}function qt(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function Mp(e){return K(e,"prompt_id")||K(e,"scratchpad_dir")?!0:qt(e.effort)}function Lp(e){return K(e,"tool_use_id")?.startsWith("toolu_")===!0||/^claude/i.test(K(e,"model")??"")}var Fp=new Set(["BeforeTool","AfterTool","BeforeAgent","AfterAgent","BeforeModel","AfterModel","BeforeToolSelection"]),jp=new Set(["preToolUse","postToolUse","beforeShellExecution","afterShellExecution","beforeSubmitPrompt","sessionStart","sessionEnd","stop"]),Hp=new Set(["pre_tool","post_tool"]),Bp=new Set(["before_tool_call","after_tool_call"]),zp=new Set(["runTerminalCommand","run_in_terminal"]),Up=[["codex",e=>K(e,"turn_id")!==null],["claude-code",Mp],["cursor",e=>K(e,"cursor_version")!==null||K(e,"generation_id")!==null||K(e,"conversation_id")!==null||Array.isArray(e.workspace_roots)||jp.has(K(e,"hook_event_name")??"")],["gemini-cli",e=>Fp.has(K(e,"hook_event_name")??"")],["qwen-code",e=>e.hook_event_name==="PreToolUse"&&e.tool_name==="run_shell_command"],["vibe",e=>Hp.has(K(e,"hook_event_name")??"")],["antigravity",e=>qt(e.toolCall)],["copilot",e=>K(e,"toolName")!==null&&"toolArgs"in e||zp.has(K(e,"tool_name")??"")],["grok",e=>e.toolName==="run_terminal_command"||e.tool_name==="run_terminal_command"||qt(e.toolInput)&&!("toolArgs"in e)],["droid",e=>e.tool_name==="Execute"],["trae",e=>e.tool_name==="RunCommand"],["crush",e=>e.hook_event_name===void 0&&K(e,"event")!==null&&!Bp.has(K(e,"event"))]],Zp=new Set(["codex","antigravity"]);function Gp(e){return qt(e)?Up.filter(([,t])=>t(e)).map(([t])=>t):[]}function Jp(e,t){if(!qt(e))return null;let n=Gp(e);return n.length>1?null:n.length===1?n[0]:Lp(e)&&Zp.has(t)?"claude-code":t==="codex"?null:t}function Ui(e,t){let n=Jp(e,t);return n==="claude-code"||n==="codex"?n:null}Sn();zn();j();var fE=2*1024*1024;Ae();j();var pE=4*1024*1024;var am=new Set(["tkr","tkr-exec","token","claude","cd","export","source","echo","mkdir","rm","mv","cp","chmod","ln","true","false",":","test","[","exit","return","nohup","sudo","doas","env"]),lm=new Set(["for","while","until","if","then","else","elif","fi","do","done","case","esac","select","function","time","coproc","in","!","[[","]]","{","}",".","declare","typeset","local","readonly","unset","set","shift","trap","wait","read","eval","exec","break","continue","pushd","popd","dirs","alias","unalias","hash","ulimit","umask","getopts","let","shopt","builtin","command","compgen","complete","disown","suspend","jobs","fg","bg","kill","history","fc","bind","enable","caller","type","printf","pwd","times","logout","mapfile","readarray","help","which","print","whence","where","autoload","zmodload","setopt","unsetopt","emulate","noglob","rehash","functions","bindkey","zle","vared","sched","limit","unlimit","zstyle","zparseopts","ttyctl"]),ea=new Set(["sh","bash","zsh","dash","ksh","fish","python","python3","python2","node","ruby","perl","php","awk","sed","deno","bun"]),ta="(?:dev|start|serve|watch|preview)",cm=new RegExp(`^(?:\\S*/)?(?:bun\\s+(?:install|i|add|remove|rm|update|outdated|audit|test|build|pm|x)(?:\\s|$)|bun\\s+run\\s+(?!${ta}(?:\\s|$))[A-Za-z0-9:_-]+(?:\\s|$)|deno\\s+(?:test|lint|fmt|check|compile|install|info|doc|bench|outdated)(?:\\s|$)|deno\\s+task\\s+(?!${ta}(?:\\s|$))[A-Za-z0-9:_-]+(?:\\s|$)|php\\s+-l(?:\\s|$)|php\\s+(?:\\S*/)?(?:phpunit|pest|paratest|phpstan|pint|ecs|php-cs-fixer|psalm|rector|run-tests\\.php)(?:\\s|$)|php\\s+artisan\\s+(?!(?:serve|tinker|queue:work|queue:listen|horizon|octane:start|reverb:start|schedule:work|pail|dev)(?:\\s|$))\\S)`),um=/(?:^|\s)--watch(?:\s|=|$)/;function fm(e){return cm.test(e)&&!um.test(e)}var dm=/^((?:\S*\/)?(sh|bash|zsh|dash|ksh|fish)\s+(-[elux]*c[elux]*)\s+)(['"])/,pm=/[()$]|(?:^|[;&|\n]\s*)(?:and|or|not|begin|end|if|else|switch|case|while|for|function|return)(?:\s|;|$)/,mm=3;function hm(e){let t=dm.exec(e);if(!t)return null;let n=t[2]==="fish";if(n&&t[3]!=="-c")return null;let r=t[4],s=t[1].length+1,o=e.indexOf(r,s);if(o<=s)return null;let i=e.slice(o+1);if(i&&!/^\s/.test(i))return null;let a=e.slice(s,o);return r==='"'&&/[$`\\!]/.test(a)||n&&pm.test(a)?null:{script:a,start:s,end:o,quote:r}}var gm=new Set(["cd","export","set","unset","source",".","true",":","pushd","popd"]);function ym(e){return en(e).filter(n=>{if(n.kind!=="cmd"||n.unsafe)return!1;let r=aa(n.text);return r!==""&&!gm.has(r)&&!sa.test(r)}).length>1}function bm(e,t,n,r,s){if(n>=mm)return null;let o=hm(e);if(!o)return null;let{script:i,start:a,end:l,quote:c}=o,u=[],f=ca(i,t,n+1,r,y=>u.push(y));if(f===i||c==='"'&&/["$`]/.test(f))return null;let p=c==="'"?f.replace(/'/g,"'\\''"):f,d=`${e.slice(0,a)}${p}${e.slice(l)}`,m=ym(i);if(s)for(let y of m?[e,...u]:u)s(y);return m?`${t} ${d}`:d}var na=/(?:^|\s)(?:--follow|-[0-9a-zA-Z]*f[a-zA-Z]*)(?:\s|=|$)/,km=new Set(["docker","podman","kubectl","nerdctl","docker-compose","stern","flyctl"]);function _m(e,t){let n=oa(t);return n==="tail"||n==="journalctl"?na.test(e):n==="stern"?!0:km.has(n)?/\blogs?\b/.test(e)&&na.test(e):!1}var sa=/^[A-Za-z_][A-Za-z0-9_]*\+?=/,wm=/^[A-Za-z_][A-Za-z0-9_-]*\s*\(\s*\)/,xm=/(?:^|[;&|\n({])\s*[A-Za-z_][A-Za-z0-9_-]*\s*\(\s*\)/;function oa(e){let t=e.lastIndexOf("/");return t===-1?e:e.slice(t+1)}function ia(e){let t=new Array(e.length).fill(!1),n=[],r=0;for(;r<e.length;){let s=e[r],o=e[r+1],i=n[n.length-1];if(i==="'"){s==="'"&&n.pop(),r+=1;continue}if(s==="\\"){if(o===void 0)return null;r+=2;continue}if(i==="$'"){s==="'"&&n.pop(),r+=1;continue}if(s==="$"&&(o==="("||o==="{")){n.push(o==="("?")":"}"),r+=2;continue}if(s==="`"){i==="`"?n.pop():n.push("`"),r+=1;continue}if(i==='"'){s==='"'&&n.pop(),r+=1;continue}if(s==="$"&&o==="'"){n.push("$'"),r+=2;continue}if(s==="'"||s==='"'){n.push(s),r+=1;continue}if(s==="("||s==="{"&&i==="}"){n.push(s==="("?")":"}"),r+=1;continue}if(s===i){n.pop(),r+=1;continue}if(s===")"&&i===void 0)return null;t[r]=i===void 0,r+=1}return n.length===0?t:null}function ra(e){let t=ia(e);if(!t)return!0;for(let n=0;n<e.length;n++)if(t[n]&&e[n]===">")return!0;return!1}function en(e){let t=ia(e);if(!t)return[{kind:"cmd",text:e,unsafe:!0}];let n=[],r="",s=0,o=()=>{r.length>0&&(n.push({kind:"cmd",text:r}),r="")},i=(a,l)=>{o(),n.push({kind:"sep",text:a}),s+=l};for(;s<e.length;){let a=e[s],l=e[s+1];if(t[s]){if(a===">"&&l==="|"){r+=">|",s+=2;continue}if(a==="&"&&l==="&"){i("&&",2);continue}if(a==="&"&&l!==">"){let c=r.replace(/\s+$/,""),u=c[c.length-1];if(u!==">"&&u!=="<"&&u!=="&"){i("&",1);continue}}if(a==="|"&&l==="|"){i("||",2);continue}if(a==="|"&&l==="&"){i("|&",2);continue}if(a===";"&&l===";"){let c=e[s+2]==="&";i(c?";;&":";;",c?3:2);continue}if(a===";"||a===`
120
- `||a==="|"){i(a,1);continue}}r+=a,s+=1}return o(),n}function aa(e){return e.trim().split(/\s+/)[0]??""}function la(e,t="tkr-exec",n=()=>!0,r){return ca(e,t,0,n,r)}function ca(e,t,n,r,s){if(e.includes("<<")||xm.test(e))return e;let o=en(e),i=[];for(let a=0;a<o.length;a++){let l=o[a];if(l.kind==="sep"||l.unsafe){i.push(l.text);continue}let c=l.text.trim();if(!c){i.push(l.text);continue}let u=aa(c),f=o[a+1],p=f?.kind==="sep"&&(f.text==="|"||f.text==="|&"),d=f?.kind==="sep"&&f.text==="&",m=!p&&!d&&!ra(l.text)&&!l.text.includes("<(")&&!l.text.includes(">(")?bm(c,t,n,r,s):null;if(m!==null){i.push(`${l.text.match(/^\s*/)?.[0]??""}${m}${l.text.match(/\s*$/)?.[0]??""}`);continue}if(c===t||c.startsWith(t)&&/^\s/.test(c.slice(t.length))||am.has(u)||lm.has(u)||(ea.has(u)||ea.has(oa(u)))&&!fm(c)||sa.test(u)||u.startsWith("(")||u.startsWith("#")||u.startsWith("<")||u.startsWith(">")||wm.test(c)||_m(c,u)||u.endsWith(")")||p||d||ra(l.text)||l.text.includes("<(")||l.text.includes(">(")||u==="node"&&c.includes("tkr-exec.js")||!r(u)){i.push(l.text);continue}let y=l.text.match(/^\s*/)?.[0]??"",b=l.text.match(/\s*$/)?.[0]??"";s?.(c),i.push(`${y}${t} ${c}${b}`)}return i.join("")}var Un=["test","run test","run build","run lint","run typecheck"],CE={npm:new Set(Un),pnpm:new Set([...Un,"build","lint","typecheck"]),yarn:new Set([...Un,"build","lint","typecheck"]),bun:new Set(Un),cargo:new Set(["test","build","check","clippy"]),go:new Set(["test","build","vet"]),mvn:new Set(["test","compile","verify"]),gradle:new Set(["test","build","check"]),dotnet:new Set(["test","build"])};var K_=new Set(["Read","Grep","Glob","Bash"]),Cr=10*1024*1024,cf=1024,W_=10,V_=25e3,q_=/^… \(?\d+ more lines omitted\)?$/,Y_=/^\[tkr restore [0-9a-f]{8,64}\]$/,X_=/^\d+F \d+D(?: in .+\/)?:$|^\S.*\/ \(\d+(?:, \*\.[^)]+)?\): \S/,Q_=/^… \(\d+ more lines omitted\)$/m;function ew(e){return q_.test(e)||Y_.test(e)||e==="[YOLO: omitted]"}function uf(e,t,n){if(!e||typeof e=="string")return t;if(e.file?.content!=null)return{...e,file:{...e.file,content:t}};if(e.content!=null)return{...e,content:t};if(e.output!=null)return{...e,output:t};if(e.stdout!=null||e.stderr!=null){let{persistedOutputPath:r,persistedOutputSize:s,...o}=e;return{...o,stdout:t,stderr:""}}if(Array.isArray(e.filenames)){let r=new Set(e.filenames),s=n==="Glob",o=t.split(`
121
- `).filter(i=>r.has(i)||ew(i)||s&&X_.test(i));return{...e,filenames:o}}return t}function ff(e,t,n){return JSON.stringify({...n?{systemMessage:n}:{},hookSpecificOutput:{hookEventName:"PostToolUse",updatedToolOutput:uf(e.tool_response,t,e.tool_name)}})}var tw=100,Ao=null;function df(){let e=Ao;return Ao=null,e}function rf(e){let t=Math.round(e/4);return t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function pf(e,t){try{if(Math.round((e-t)/4)<tw)return;let n=lf(S(),"first-save");if(F_(n))return;j_(n,String(Date.now())),Ao=`Tokmizer just optimized its first command output here: ~${rf(e)} tokens down to ~${rf(t)}. Watch it add up: /tkr-gain`}catch{}}function sf(e){return e?typeof e=="string"?e:e.file?.content!=null?e.file.content:e.content!=null?e.content:e.output!=null?e.output:e.stdout!=null||e.stderr!=null?[e.stdout??"",e.stderr??""].filter(Boolean).join(`
122
+ `}${gt}`:D.output,B=_e(A,t);if(!i&&D.filteredBytes<D.rawBytes)try{B=new RegExp(rr.source,"m").test(D.output)?await Pr(t,A,a,{label:ut(N)}):await Ft(D.droppedTail??null,A,a,{raw:s?null:t,label:ut(N)})}catch{}!s&&t.length>0&&Buffer.byteLength(B,"utf8")>=Buffer.byteLength(t,"utf8")&&(B=_e(t,t));let re=B+d,ft=j+p,Oe=Mn(a).host,Be=Rr(D.rawBytes+Buffer.byteLength(n,"utf8"),Buffer.byteLength(re,"utf8")+Buffer.byteLength(ft,"utf8"),Dn(Oe)),dt=!1,Sn=async()=>{if(!dt){dt=!0;try{Tr(Be.raw,Be.filtered,void 0,!1,Oe,"sh",ut(N),"cwd"in f?f.cwd:process.cwd(),$r(D)),await Er({cmd:N,filterId:D.filterId,rawBytes:D.rawBytes,filteredBytes:D.filteredBytes,plan:S}),await xr({cmd:N,tokensSaved:Math.max(0,Math.round((Be.raw-Be.filtered)/4)),rawTokens:Math.round(Be.raw/4),optimized:D.filterId!=null,telemetryOptIn:m.telemetryOptIn&&(!u||(await Ae()).telemetryOptIn),sessionId:x,host:Oe})}catch{}}};return u?u(Sn):await Sn(),{stdout:re,stderr:ft,code:r,filterId:D.filterId,rawBytes:D.rawBytes+ne,filteredBytes:D.filteredBytes+ce,truncated:s}}catch{return g()}finally{l||Ir()}}var No,jt,yf,Aw,kf,_f,Do,Cw,Iw,Pw,Tf=y(()=>{"use strict";No=qf(cl(),1);yr();He();yn();Zt();H();ao();po();Sr();ho();rs();Mt();Ln();Ju();Oo();Io();It();Hn();qs();jn();Ie();hn();mt();jt=10*1024*1024,yf=1024,Aw=6e4,kf=200,_f=1e3,Do="TOKMIZER_EXEC_CAPTURING";Cw=xf(process.env),Iw={SIGHUP:1,SIGINT:2,SIGQUIT:3,SIGILL:4,SIGTRAP:5,SIGABRT:6,SIGBUS:7,SIGFPE:8,SIGKILL:9,SIGUSR1:10,SIGSEGV:11,SIGUSR2:12,SIGPIPE:13,SIGALRM:14,SIGTERM:15};Pw=/^[A-Za-z0-9_@%+=:,./-]+$/});var Mo={};Bt(Mo,{FOLD_MARKER_RE:()=>rr,captureForRestore:()=>Ft,captureOriginalForRestore:()=>Pr,closeDaemonResolver:()=>Ir,countedSaving:()=>Rr,gatingPlan:()=>kr,graceExceeded:()=>br,installDaemonResolver:()=>Cr,loadSettingsCache:()=>Ae,neutralizeMarkers:()=>_e,processOutput:()=>Dt,recordEvent:()=>Er,recordStat:()=>Tr,recordTelemetry:()=>xr,resolveAllowedFilters:()=>Nt,statCmdLabel:()=>ut,statOutcome:()=>$r});var Lo=y(()=>{"use strict";yr();Io();It();yn();ao();po();Sr();ho();Oo();Mt()});function Go(e=5e3){return new Promise(t=>{let n=[],r=process.stdin,s=!1,o=()=>{s||(s=!0,clearTimeout(a),r.off("data",i),r.pause(),r.unref?.(),t(Buffer.concat(n).toString("utf8")))},i=l=>{n.push(Buffer.isBuffer(l)?l:Buffer.from(l))},a=setTimeout(o,e);r.on("data",i).once("end",o).once("error",o),r.resume()})}import{realpathSync as Wo}from"node:fs";import{fileURLToPath as Yf,pathToFileURL as Xf}from"node:url";var Jo=null;function Ko(e,t,n){if(n!==void 0&&Jo===n)return!0;if(Jo!==null||!e)return!1;if(t===Xf(e).href)return!0;try{return Wo(e)===Wo(Yf(t))}catch{return!1}}H();Zt();Ln();rs();import{existsSync as Mw,writeFileSync as Lw,appendFileSync as Fw,statSync as jw,constants as $f}from"node:fs";import{lstat as Hw,open as Bw}from"node:fs/promises";import{basename as zw,dirname as Uw,isAbsolute as Zw,join as If}from"node:path";H();mt();import{readFileSync as Kp}from"node:fs";import{join as Vp}from"node:path";function Yi(){if(Yo())return!1;try{return JSON.parse(Kp(Vp(v(),"settings-cache.json"),"utf8")).enabled!==!1}catch{return!0}}H();import{createHash as qp}from"node:crypto";import{appendFileSync as Yp,chmodSync as Xp,mkdirSync as Qp,readFileSync as em,rmSync as tm,statSync as nm}from"node:fs";import{join as Xi}from"node:path";var rm=256*1024,sm=80;function om(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"-").replace(/\.\./g,"-").slice(0,80)||"default";return Xi(v(),"sessions",`${t}.seen`)}function ss(e){return e.replace(/[\t\r\n]+/g," ").trim().slice(0,sm)}function os(e,t,n,r){try{let s=om(e),o=ss(t),i=qp("sha256").update(n).digest("hex").slice(0,32),a="";try{a=em(s,"utf8")}catch{}for(let l of a.split(`
123
+ `)){let[c,u,f]=l.split(" ");if(c===o&&u===i)return{cmd:f??""}}Qp(Xi(v(),"sessions"),{recursive:!0,mode:448}),Yp(s,`${o} ${i} ${ss(r)}
124
+ `,{mode:384}),Xp(s,384),nm(s).size>rm&&tm(s,{force:!0})}catch{}return null}function is(e,t){return`[same output as \`${ss(e)}\` earlier in this session, unchanged, ~${Math.round(t/4)} tokens]`}jn();Hn();function K(e,t){let n=e[t];return typeof n=="string"&&n?n:null}function Xt(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function lm(e){return K(e,"prompt_id")||K(e,"scratchpad_dir")?!0:Xt(e.effort)}function cm(e){return K(e,"tool_use_id")?.startsWith("toolu_")===!0||/^claude/i.test(K(e,"model")??"")}var um=new Set(["BeforeTool","AfterTool","BeforeAgent","AfterAgent","BeforeModel","AfterModel","BeforeToolSelection"]),fm=new Set(["preToolUse","postToolUse","beforeShellExecution","afterShellExecution","beforeSubmitPrompt","sessionStart","sessionEnd","stop"]),dm=new Set(["pre_tool","post_tool"]),pm=new Set(["before_tool_call","after_tool_call"]),mm=new Set(["runTerminalCommand","run_in_terminal"]),hm=[["codex",e=>K(e,"turn_id")!==null],["claude-code",lm],["cursor",e=>K(e,"cursor_version")!==null||K(e,"generation_id")!==null||K(e,"conversation_id")!==null||Array.isArray(e.workspace_roots)||fm.has(K(e,"hook_event_name")??"")],["gemini-cli",e=>um.has(K(e,"hook_event_name")??"")],["qwen-code",e=>e.hook_event_name==="PreToolUse"&&e.tool_name==="run_shell_command"],["vibe",e=>dm.has(K(e,"hook_event_name")??"")],["antigravity",e=>Xt(e.toolCall)],["copilot",e=>K(e,"toolName")!==null&&"toolArgs"in e||mm.has(K(e,"tool_name")??"")],["grok",e=>e.toolName==="run_terminal_command"||e.tool_name==="run_terminal_command"||Xt(e.toolInput)&&!("toolArgs"in e)],["droid",e=>e.tool_name==="Execute"],["trae",e=>e.tool_name==="RunCommand"],["crush",e=>e.hook_event_name===void 0&&K(e,"event")!==null&&!pm.has(K(e,"event"))]],gm=new Set(["codex","antigravity"]);function ym(e){return Xt(e)?hm.filter(([,t])=>t(e)).map(([t])=>t):[]}function bm(e,t){if(!Xt(e))return null;let n=ym(e);return n.length>1?null:n.length===1?n[0]:cm(e)&&gm.has(t)?"claude-code":t==="codex"?null:t}function Qi(e,t){let n=bm(e,t);return n==="claude-code"||n==="codex"?n:null}Tn();Gn();H();var hv=2*1024*1024;Ie();Ze();H();var yv=4*1024*1024;var Pm=new Set(["tkr","tkr-exec","token","claude","cd","export","source","echo","mkdir","rm","mv","cp","chmod","ln","true","false",":","test","[","exit","return","nohup","sudo","doas","env"]),Nm=new Set(["for","while","until","if","then","else","elif","fi","do","done","case","esac","select","function","time","coproc","in","!","[[","]]","{","}",".","declare","typeset","local","readonly","unset","set","shift","trap","wait","read","eval","exec","break","continue","pushd","popd","dirs","alias","unalias","hash","ulimit","umask","getopts","let","shopt","builtin","command","compgen","complete","disown","suspend","jobs","fg","bg","kill","history","fc","bind","enable","caller","type","printf","pwd","times","logout","mapfile","readarray","help","which","print","whence","where","autoload","zmodload","setopt","unsetopt","emulate","noglob","rehash","functions","bindkey","zle","vared","sched","limit","unlimit","zstyle","zparseopts","ttyctl"]),ua=new Set(["sh","bash","zsh","dash","ksh","fish","python","python3","python2","node","ruby","perl","php","awk","sed","deno","bun"]),fa="(?:dev|start|serve|watch|preview)",Dm=new RegExp(`^(?:\\S*/)?(?:bun\\s+(?:install|i|add|remove|rm|update|outdated|audit|test|build|pm|x)(?:\\s|$)|bun\\s+run\\s+(?!${fa}(?:\\s|$))[A-Za-z0-9:_-]+(?:\\s|$)|deno\\s+(?:test|lint|fmt|check|compile|install|info|doc|bench|outdated)(?:\\s|$)|deno\\s+task\\s+(?!${fa}(?:\\s|$))[A-Za-z0-9:_-]+(?:\\s|$)|php\\s+-l(?:\\s|$)|php\\s+(?:\\S*/)?(?:phpunit|pest|paratest|phpstan|pint|ecs|php-cs-fixer|psalm|rector|run-tests\\.php)(?:\\s|$)|php\\s+artisan\\s+(?!(?:serve|tinker|queue:work|queue:listen|horizon|octane:start|reverb:start|schedule:work|pail|dev)(?:\\s|$))\\S)`),Mm=/(?:^|\s)--watch(?:\s|=|$)/;function Lm(e){return Dm.test(e)&&!Mm.test(e)}var Fm=/^((?:\S*\/)?(sh|bash|zsh|dash|ksh|fish)\s+(-[elux]*c[elux]*)\s+)(['"])/,jm=/[()$]|(?:^|[;&|\n]\s*)(?:and|or|not|begin|end|if|else|switch|case|while|for|function|return)(?:\s|;|$)/,Hm=3;function Bm(e){let t=Fm.exec(e);if(!t)return null;let n=t[2]==="fish";if(n&&t[3]!=="-c")return null;let r=t[4],s=t[1].length+1,o=e.indexOf(r,s);if(o<=s)return null;let i=e.slice(o+1);if(i&&!/^\s/.test(i))return null;let a=e.slice(s,o);return r==='"'&&/[$`\\!]/.test(a)||n&&jm.test(a)?null:{script:a,start:s,end:o,quote:r}}var zm=new Set(["cd","export","set","unset","source",".","true",":","pushd","popd"]);function Um(e){return nn(e).filter(n=>{if(n.kind!=="cmd"||n.unsafe)return!1;let r=ka(n.text);return r!==""&&!zm.has(r)&&!ya.test(r)}).length>1}function Zm(e,t,n,r,s){if(n>=Hm)return null;let o=Bm(e);if(!o)return null;let{script:i,start:a,end:l,quote:c}=o,u=[],f=wa(i,t,n+1,r,h=>u.push(h));if(f===i||c==='"'&&/["$`]/.test(f))return null;let d=c==="'"?f.replace(/'/g,"'\\''"):f,p=`${e.slice(0,a)}${d}${e.slice(l)}`,g=Um(i);if(s)for(let h of g?[e,...u]:u)s(h);return g?`${t} ${p}`:p}var da=/(?:^|\s)(?:--follow|-[0-9a-zA-Z]*f[a-zA-Z]*)(?:\s|=|$)/,Gm=/(?:^|\s)(?:--follow|-[0-9a-zA-Z]*[fF][a-zA-Z]*)(?:\s|=|$)/,Wm=new Set(["docker","podman","kubectl","nerdctl","docker-compose","stern","flyctl"]),pa=new Set(["npm","pnpm","yarn","bun"]),ma=/^(?:dev|start|serve|preview|watch)(?::\S*)?$/,Jm=new Set(["--filter","-F","--dir","-C","--prefix","--workspace","-w","--cwd"]),ha=new Set(["npx","pnpx","bunx"]),Km=new Set(["nodemon","top","htop","btop","watch"]),Vm=new Set(["tsc","vitest","jest","webpack","rollup","esbuild","tsup","babel","sass","tailwindcss","mocha","swc","parcel","nest"]),qm=/(?:^|\s)--watch(?:All)?(?:\s|=(?!false(?:\s|$))|$)/,ga=/(?:^|\s)-w(?:\s|$)/;function Ym(e){let t=e.map(i=>i.replace(/['"]/g,""));for(;t.length>1&&(t[0]==="env"||/^[A-Za-z_][A-Za-z0-9_]*=/.test(t[0]));)t=t.slice(1);let n=Jn(t[0]??"");if(ha.has(n)||pa.has(n)&&(t[1]==="exec"||t[1]==="dlx"))t=t.slice(ha.has(n)?1:2).filter((i,a,l)=>!(i.startsWith("-")&&l.slice(0,a).every(c=>c.startsWith("-")))),n=Jn(t[0]??"");else if(pa.has(n)){let i=t.slice(1).filter((l,c,u)=>!l.startsWith("-")&&!Jm.has(u[c-1]??""));i[0]==="workspace"&&i.splice(0,2);let a=i[0]==="run"||i[0]==="run-script"?i[1]:i[0];return a!==void 0&&ma.test(a)}let r=t.slice(1),s=r.join(" "),o=r.find(i=>!i.startsWith("-"));if(Km.has(n)||qm.test(s)||Vm.has(n)&&ga.test(s))return!0;switch(n){case"next":return o==="dev"||o==="start";case"vite":return!r.includes("build")&&!r.includes("optimize");case"vitest":return o==="watch"||o==="dev";case"cargo":case"dotnet":return o==="watch";case"turbo":{let i=o==="run"?r.filter(a=>!a.startsWith("-"))[1]:o;return i!==void 0&&ma.test(i)}case"nx":{let i=o==="run"?r.filter(a=>!a.startsWith("-"))[1]?.split(":")[1]:o;return i!==void 0&&/^(?:serve|dev|start|watch)$/.test(i)}case"ping":return!r.some(i=>/^-[a-zA-Z]*c/.test(i));case"docker":case"podman":case"nerdctl":case"docker-compose":{let i=n==="docker-compose"?r:o==="compose"?r.slice(r.indexOf("compose")+1):null;return i?i.includes("up")&&!i.some(a=>a==="--detach"||/^-[a-zA-Z]*d[a-zA-Z]*$/.test(a)):o==="stats"&&!r.includes("--no-stream")||o==="events"}case"kubectl":return o==="port-forward"||(o==="get"||o==="rollout")&&ga.test(s)||/(?:^|\s)--watch-only(?:\s|=|$)/.test(s);default:return!1}}function Xm(e,t){let n=Jn(t);return n==="tail"?Gm.test(e):n==="journalctl"?da.test(e):n==="stern"||Wm.has(n)&&/\blogs?\b/.test(e)&&da.test(e)?!0:Ym(e.split(/\s+/))}var ya=/^[A-Za-z_][A-Za-z0-9_]*\+?=/,Qm=/^[A-Za-z_][A-Za-z0-9_-]*\s*\(\s*\)/,eh=/(?:^|[;&|\n({])\s*[A-Za-z_][A-Za-z0-9_-]*\s*\(\s*\)/;function Jn(e){let t=e.lastIndexOf("/");return t===-1?e:e.slice(t+1)}function ba(e){let t=new Array(e.length).fill(!1),n=[],r=0;for(;r<e.length;){let s=e[r],o=e[r+1],i=n[n.length-1];if(i==="'"){s==="'"&&n.pop(),r+=1;continue}if(s==="\\"){if(o===void 0)return null;r+=2;continue}if(i==="$'"){s==="'"&&n.pop(),r+=1;continue}if(s==="$"&&(o==="("||o==="{")){n.push(o==="("?")":"}"),r+=2;continue}if(s==="`"){i==="`"?n.pop():n.push("`"),r+=1;continue}if(i==='"'){s==='"'&&n.pop(),r+=1;continue}if(s==="$"&&o==="'"){n.push("$'"),r+=2;continue}if(s==="'"||s==='"'){n.push(s),r+=1;continue}if(s==="("||s==="{"&&i==="}"){n.push(s==="("?")":"}"),r+=1;continue}if(s===i){n.pop(),r+=1;continue}if(s===")"&&i===void 0)return null;t[r]=i===void 0,r+=1}return n.length===0?t:null}function bs(e){let t=ba(e);if(!t)return!0;for(let n=0;n<e.length;n++)if(t[n]&&e[n]===">")return!0;return!1}function nn(e){let t=ba(e);if(!t)return[{kind:"cmd",text:e,unsafe:!0}];let n=[],r="",s=0,o=()=>{r.length>0&&(n.push({kind:"cmd",text:r}),r="")},i=(a,l)=>{o(),n.push({kind:"sep",text:a}),s+=l};for(;s<e.length;){let a=e[s],l=e[s+1];if(t[s]){if(a===">"&&l==="|"){r+=">|",s+=2;continue}if(a==="&"&&l==="&"){i("&&",2);continue}if(a==="&"&&l!==">"){let c=r.replace(/\s+$/,""),u=c[c.length-1];if(u!==">"&&u!=="<"&&u!=="&"){i("&",1);continue}}if(a==="|"&&l==="|"){i("||",2);continue}if(a==="|"&&l==="&"){i("|&",2);continue}if(a===";"&&l===";"){let c=e[s+2]==="&";i(c?";;&":";;",c?3:2);continue}if(a===";"||a===`
125
+ `||a==="|"){i(a,1);continue}}r+=a,s+=1}return o(),n}function ka(e){return e.trim().split(/\s+/)[0]??""}function _a(e,t="tkr-exec",n=()=>!0,r){return wa(e,t,0,n,r)}var th=new Set(["{","for","while","until","if","case","select"]),nh=new Set(["}","done","fi","esac"]),rh=new Set(["then","do","else","elif","!","time","{","if","while","until"]);function sh(e,t){let n=e[t+1];return bs(e[t].text)||n?.kind==="sep"&&(n.text==="|"||n.text==="|&")}function oh(e){let t=new Set,n=[];for(let r=0;r<e.length;r++){let s=e[r];if(!(s.kind!=="cmd"||s.unsafe))for(let o of s.text.trim().split(/\s+/)){if(nh.has(o)){let i=n.pop();if(i!==void 0&&sh(e,r))for(let a=i;a<=r;a++)t.add(a);continue}if(th.has(o)&&n.push(r),!rh.has(o))break}}return t}function wa(e,t,n,r,s){if(e.includes("<<")||eh.test(e))return e;let o=nn(e),i=oh(o),a=[];for(let l=0;l<o.length;l++){let c=o[l];if(c.kind==="sep"||c.unsafe||i.has(l)){a.push(c.text);continue}let u=c.text.trim();if(!u){a.push(c.text);continue}let f=ka(u),d=o[l+1],p=d?.kind==="sep"&&(d.text==="|"||d.text==="|&"),g=d?.kind==="sep"&&d.text==="&",h=!p&&!g&&!bs(c.text)&&!c.text.includes("<(")&&!c.text.includes(">(")?Zm(u,t,n,r,s):null;if(h!==null){a.push(`${c.text.match(/^\s*/)?.[0]??""}${h}${c.text.match(/\s*$/)?.[0]??""}`);continue}if(u===t||u.startsWith(t)&&/^\s/.test(u.slice(t.length))||Pm.has(f)||Nm.has(f)||(ua.has(f)||ua.has(Jn(f)))&&!Lm(u)||ya.test(f)||f.startsWith("(")||f.startsWith("#")||f.startsWith("<")||f.startsWith(">")||Qm.test(u)||Xm(u,f)||f.endsWith(")")||p||g||bs(c.text)||c.text.includes("<(")||c.text.includes(">(")||f==="node"&&u.includes("tkr-exec.js")||!r(f)){a.push(c.text);continue}let m=c.text.match(/^\s*/)?.[0]??"",x=c.text.match(/\s*$/)?.[0]??"";s?.(u),a.push(`${m}${t} ${u}${x}`)}return a.join("")}var Wn=["test","run test","run build","run lint","run typecheck"],Mv={npm:new Set(Wn),pnpm:new Set([...Wn,"build","lint","typecheck"]),yarn:new Set([...Wn,"build","lint","typecheck"]),bun:new Set(Wn),cargo:new Set(["test","build","check","clippy"]),go:new Set(["test","build","vet"]),mvn:new Set(["test","compile","verify"]),gradle:new Set(["test","build","check"]),dotnet:new Set(["test","build"])};var Gw=new Set(["Read","Grep","Glob","Bash"]),Nr=10*1024*1024,Pf=1024,Ww=10,Jw=25e3,Kw=/^… \(?\d+ more lines omitted\)?$/,Vw=/^\[tkr restore [0-9a-f]{8,64}\]$/,qw=/^\d+F \d+D(?: in .+\/)?:$|^\S.*\/ \(\d+(?:, \*\.[^)]+)?\): \S/,Yw=/^… \(\d+ more lines omitted\)$/m;function Xw(e){return Kw.test(e)||Vw.test(e)||e==="[YOLO: omitted]"}function Nf(e,t,n){if(!e||typeof e=="string")return t;if(e.file?.content!=null)return{...e,file:{...e.file,content:t}};if(e.content!=null)return{...e,content:t};if(e.output!=null)return{...e,output:t};if(e.stdout!=null||e.stderr!=null){let{persistedOutputPath:r,persistedOutputSize:s,...o}=e;return{...o,stdout:t,stderr:""}}if(Array.isArray(e.filenames)){let r=new Set(e.filenames),s=n==="Glob",o=t.split(`
126
+ `).filter(i=>r.has(i)||Xw(i)||s&&qw.test(i));return{...e,filenames:o}}return t}function Df(e,t,n){return JSON.stringify({...n?{systemMessage:n}:{},hookSpecificOutput:{hookEventName:"PostToolUse",updatedToolOutput:Nf(e.tool_response,t,e.tool_name)}})}var Qw=100,Fo=null;function Mf(){let e=Fo;return Fo=null,e}function Rf(e){let t=Math.round(e/4);return t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Lf(e,t){try{if(Math.round((e-t)/4)<Qw)return;let n=If(v(),"first-save");if(Mw(n))return;Lw(n,String(Date.now())),Fo=`Tokmizer just optimized its first command output here: ~${Rf(e)} tokens down to ~${Rf(t)}. Watch it add up: /tkr-gain`}catch{}}function Af(e){return e?typeof e=="string"?e:e.file?.content!=null?e.file.content:e.content!=null?e.content:e.output!=null?e.output:e.stdout!=null||e.stderr!=null?[e.stdout??"",e.stderr??""].filter(Boolean).join(`
122
127
  `):Array.isArray(e.filenames)?e.filenames.join(`
123
- `):null:""}var nw=64*1024;function rw(e,t){try{if(!t||typeof t!="object")return;let n=lf(S(),"drift.jsonl");try{if(B_(n).size>nw)return}catch{}let r=Object.keys(t).slice(0,12);H_(n,`${JSON.stringify({t:Math.floor(Date.now()/1e3),tool:e,keys:r})}
124
- `)}catch{}}function sw(e){let t=e.tool_name??"tool",n=e.tool_input??{};return n.command?n.command.split(`
125
- `)[0].trim().slice(0,200):n.file_path?`${t.toLowerCase()} ${n.file_path}`:n.pattern?`${t.toLowerCase()} ${n.pattern}`:n.path?`${t.toLowerCase()} ${n.path}`:t.toLowerCase()}var ow=/'(?:[A-Za-z]:)?\/[^']*\/(?:tkr-exec(?:\.exe|\.js)?'|tkr(?:\.exe)?' exec)(?:\\'')?(?:\s|$)/,iw=/;|\|\||\n|(?<![>&|])&(?![&>])/,aw=new Set(["cd","export","set","unset","true",":"]),lw=/^(?:\S*\/)?(?:sh|bash|zsh|dash|ksh)\s+-[elux]*c[elux]*\s+'([^']*)'$/,cw=/(?:^|[\s;&|(])(?:[A-Za-z]:)?\/\S*\/tkr-exec(?:\.exe|\.js)?\s|(?:^|[;&|(\n])\s*(?:\S*\/)?tkr-exec(?:\.exe|\.js)?\s/;function mf(e){return ow.test(e)||cw.test(e)}function hf(e,t,n=0){let r=en(e);for(let s=0;s<r.length;s++){let o=r[s];if(o.kind==="sep")continue;let i=o.text.trim();if(!i||i===t)continue;let a=r[s+1];if(a?.kind==="sep"&&(a.text==="|"||a.text==="|&")||aw.has(i.split(/\s+/)[0]))continue;let l=n<3?lw.exec(i):null;if(!(l&&hf(l[1],t,n+1)))return!1}return!0}function uw(e){let t=[],n="",r=!1;for(let s=0;s<e.length;s++){let o=e[s];if(o==="'"){let i=e.indexOf("'",s+1);if(i===-1)return null;n+=e.slice(s+1,i),r=!0,s=i}else if(o==='"'){let i=s+1;for(;i<e.length&&e[i]!=='"';i++)e[i]==="\\"&&/["\\$`]/.test(e[i+1]??"")&&i++,n+=e[i];if(i>=e.length)return null;r=!0,s=i}else if(o==="\\"){if(s+1>=e.length)return null;n+=e[++s],r=!0}else/\s/.test(o)?(r&&t.push(n),n="",r=!1):(n+=o,r=!0)}return r&&t.push(n),t.length>0?t:null}function of(e){let t="";for(let n=0;n<e.length;n++){let r=e[n];if(t==="'"){r==="'"&&(t="");continue}if(r==="\\"){n++;continue}if(r==="$"||r==="`")return!0;r==='"'?t=t?"":'"':r==="'"&&!t&&(t="'")}return!1}async function fw(e){if(!e||typeof e!="object"||e.persistedOutputPath==null)return;let{stdout:t,persistedOutputPath:n,persistedOutputSize:r}=e;if(typeof t!="string"||typeof n!="string"||typeof r!="number"||!Number.isFinite(r))return null;if(!(Buffer.byteLength(t,"utf8")>=r||t.length>=r)){if(!t||e.stderr!=null&&e.stderr!==""||e.interrupted===!0||e.isImage===!0||!J_(n)||Z_(G_(n))!=="tool-results")return null;try{let s=await z_(n);if(!s.isFile()||s.size>Cr)return null;let o=await U_(n,nf.O_RDONLY|(nf.O_NOFOLLOW??0));try{let i=await o.stat();if(!i.isFile()||i.size>Cr||i.size!==s.size)return null;let a=Buffer.alloc(i.size),{bytesRead:l}=await o.read(a,0,i.size,0);if(l!==i.size)return null;let c=a.toString("utf8");return a.length!==r&&c.length!==r?null:c.startsWith(t)?c:null}finally{await o.close()}}catch{return null}}}function dw(e,t){if(!t||typeof t!="object"||typeof t.stdout!="string"||t.stderr!=null&&typeof t.stderr!="string"||t.interrupted===!0||t.isImage===!0||t.backgroundTaskId!=null||iw.test(e)||of(e))return null;let n=[];if(la(e,"tkr-exec",()=>!0,s=>n.push(s)),n.length!==1||of(n[0])||!hf(e,n[0])||en(e).some(s=>s.kind==="sep"&&s.text!=="&&"&&s.text!=="|"&&s.text!=="|&"))return null;let r=uw(n[0]);return r?{argv:r,stdout:t.stdout,stderr:t.stderr??"",exitCode:t.returnCodeInterpretation!=null?1:0}:null}async function pw(e,t,n,r,s){let{processCapturedOutput:o}=await Promise.resolve().then(()=>(tf(),ef)),i=null,a=y=>{i=y},l={...process.env};t.session_id?l.CLAUDE_CODE_SESSION_ID=t.session_id:delete l.CLAUDE_CODE_SESSION_ID;let c=await o({argv:e.argv,stdout:e.stdout,stderr:e.stderr,exitCode:e.exitCode,truncated:!1,stderrTruncated:!1},{yolo:n,env:l,...r.resolver?{resolver:r.resolver}:{},deferAccounting:a,cwd:t.cwd||(r.inferCwd===!1?void 0:process.cwd())}),u=i,f=[e.stdout,e.stderr].filter(Boolean).join(`
126
- `),p=Buffer.byteLength(f,"utf8");if(s==null&&c.filterId!=null&&t.session_id&&p>=cf){let y=ts(t.session_id,t.agent_id??"main",f,(t.tool_input?.command??"").split(`
127
- `)[0]??"");if(y){let b=ns(y.cmd,p);if(n)return b;let{captureOriginalForRestore:R}=await Promise.resolve().then(()=>(Ro(),$o));return R(f,b)}}let d=[c.stdout,c.stderr].filter(Boolean).join(`
128
- `),m=c.stdout===e.stdout&&c.stderr===e.stderr;return s!=null&&(m||d.length>s)||(u&&(r.deferAccounting?r.deferAccounting(u):await u()),m||p>0&&Buffer.byteLength(d,"utf8")>=p)?null:(pf(p,Buffer.byteLength(d,"utf8")),d)}function mw(e){if(e==null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.session_id!=null&&typeof t.session_id!="string"||t.tool_name!=null&&typeof t.tool_name!="string")return!1;let n=t.tool_input;if(n==null)return!0;if(typeof n!="object"||Array.isArray(n))return!1;let r=n;return["command","file_path","pattern","path"].every(s=>r[s]==null||typeof r[s]=="string")}async function gf(e,t={}){if(!mw(e))return null;let n=e.tool_name==="Bash"&&!mf(e.tool_input?.command??"")?await fw(e.tool_response):void 0;return n===null?null:n===void 0?af(e,t):af({...e,tool_response:{...e.tool_response,stdout:n}},t,V_)}async function af(e,t,n){let r=we();if(!e.tool_name||!K_.has(e.tool_name))return null;let s=e.tool_name==="Bash"?e.tool_input?.command??"":"",o=mf(s);if(/\btkr(?:\.js)?\s+restore\b/.test(s))return null;let i=await He();if(!Bi())return null;let a=e.tool_name==="Bash"&&!o?dw(s,e.tool_response):null;if(a)return Buffer.byteLength(a.stdout,"utf8")+Buffer.byteLength(a.stderr,"utf8")>Cr?null:pw(a,e,r,t,n);if(e.session_id&&!o&&i?.token){let A=e.tool_input??{},Lt=A.command??A.file_path??A.pattern??A.path??"";Lt&&Dn(e.session_id,{tool:e.tool_name,target:Lt.split(`
129
- `)[0].trim()})}if(e.tool_name==="Read"&&(e.tool_input?.offset!=null||e.tool_input?.limit!=null))return null;let l=sf(e.tool_response);if(l==null)return rw(e.tool_name,e.tool_response),null;if(!l)return null;let c=Buffer.byteLength(l,"utf8");if(c>Cr||e.tool_name==="Bash"&&c<cf||e.tool_name==="Glob"&&l.split(`
130
- `).length<W_||o)return null;let{loadSettingsCache:u,processOutput:f,captureForRestore:p,captureOriginalForRestore:d,neutralizeMarkers:m,FOLD_MARKER_RE:y,resolveAllowedFilters:b,gatingPlan:R,graceExceeded:T,recordEvent:D,recordTelemetry:C,recordStat:M,countedSaving:L,statCmdLabel:F,statOutcome:ue,installDaemonResolver:P,closeDaemonResolver:U}=await Promise.resolve().then(()=>(Ro(),$o)),ie=await u();if(!ie.enabled)return null;let{slugKey:be}=await Promise.resolve().then(()=>(Le(),_l)),ae=i?.token?R(i):null;!t.resolver&&ae&&P(ae);let at=i?.token?b(i.allowedFilters,T(i)):null,Dt=new Set(ie.filters.disabled.map(be)),Mt=at&&Dt.size>0?new Set([...at].filter(A=>!Dt.has(A))):at,Fe=sw(e),lt=`${e.tool_name.toLowerCase()}-tool`,wn=`${lt}: ${Fe}`;try{let A=await f(wn,l,Mt,{verbosity:ie.outputVerbosity,resolver:t.resolver,yolo:r,exitCode:e.tool_name==="Bash"?void 0:0});if(A.filterId!=null&&e.tool_name==="Bash"&&e.session_id){let No=ts(e.session_id,e.agent_id??"main",l,s.split(`
131
- `)[0]??"");if(No){let Do=ns(No.cmd,c);return r?Do:await d(l,Do)}}let Lt=new RegExp(y.source,"m"),Ir=e.tool_name==="Bash"?F(e.tool_input?.command??""):e.tool_name,Co=e.tool_name==="Read"&&!r&&(Lt.test(A.output)||Q_.test(A.output))?`${A.output}${A.output.endsWith(`
128
+ `):null:""}var ex=64*1024;function tx(e,t){try{if(!t||typeof t!="object")return;let n=If(v(),"drift.jsonl");try{if(jw(n).size>ex)return}catch{}let r=Object.keys(t).slice(0,12);Fw(n,`${JSON.stringify({t:Math.floor(Date.now()/1e3),tool:e,keys:r})}
129
+ `)}catch{}}function nx(e){let t=e.tool_name??"tool",n=e.tool_input??{};return n.command?n.command.split(`
130
+ `)[0].trim().slice(0,200):n.file_path?`${t.toLowerCase()} ${n.file_path}`:n.pattern?`${t.toLowerCase()} ${n.pattern}`:n.path?`${t.toLowerCase()} ${n.path}`:t.toLowerCase()}var rx=/'(?:[A-Za-z]:)?\/[^']*\/(?:tkr-exec(?:\.exe|\.js)?'|tkr(?:\.exe)?' exec)(?:\\'')?(?:\s|$)/,sx=/;|\|\||\n|(?<![>&|])&(?![&>])/,ox=new Set(["cd","export","set","unset","true",":"]),ix=/^(?:\S*\/)?(?:sh|bash|zsh|dash|ksh)\s+-[elux]*c[elux]*\s+'([^']*)'$/,ax=/(?:^|[\s;&|(])(?:[A-Za-z]:)?\/\S*\/tkr-exec(?:\.exe|\.js)?\s|(?:^|[;&|(\n])\s*(?:\S*\/)?tkr-exec(?:\.exe|\.js)?\s/;function Ff(e){return rx.test(e)||ax.test(e)}function jf(e,t,n=0){let r=nn(e);for(let s=0;s<r.length;s++){let o=r[s];if(o.kind==="sep")continue;let i=o.text.trim();if(!i||i===t)continue;let a=r[s+1];if(a?.kind==="sep"&&(a.text==="|"||a.text==="|&")||ox.has(i.split(/\s+/)[0]))continue;let l=n<3?ix.exec(i):null;if(!(l&&jf(l[1],t,n+1)))return!1}return!0}function lx(e){let t=[],n="",r=!1;for(let s=0;s<e.length;s++){let o=e[s];if(o==="'"){let i=e.indexOf("'",s+1);if(i===-1)return null;n+=e.slice(s+1,i),r=!0,s=i}else if(o==='"'){let i=s+1;for(;i<e.length&&e[i]!=='"';i++)e[i]==="\\"&&/["\\$`]/.test(e[i+1]??"")&&i++,n+=e[i];if(i>=e.length)return null;r=!0,s=i}else if(o==="\\"){if(s+1>=e.length)return null;n+=e[++s],r=!0}else/\s/.test(o)?(r&&t.push(n),n="",r=!1):(n+=o,r=!0)}return r&&t.push(n),t.length>0?t:null}function Of(e){let t="";for(let n=0;n<e.length;n++){let r=e[n];if(t==="'"){r==="'"&&(t="");continue}if(r==="\\"){n++;continue}if(r==="$"||r==="`")return!0;r==='"'?t=t?"":'"':r==="'"&&!t&&(t="'")}return!1}async function cx(e){if(!e||typeof e!="object"||e.persistedOutputPath==null)return;let{stdout:t,persistedOutputPath:n,persistedOutputSize:r}=e;if(typeof t!="string"||typeof n!="string"||typeof r!="number"||!Number.isFinite(r))return null;if(!(Buffer.byteLength(t,"utf8")>=r||t.length>=r)){if(!t||e.stderr!=null&&e.stderr!==""||e.interrupted===!0||e.isImage===!0||!Zw(n)||zw(Uw(n))!=="tool-results")return null;try{let s=await Hw(n);if(!s.isFile()||s.size>Nr)return null;let o=await Bw(n,$f.O_RDONLY|($f.O_NOFOLLOW??0));try{let i=await o.stat();if(!i.isFile()||i.size>Nr||i.size!==s.size)return null;let a=Buffer.alloc(i.size),{bytesRead:l}=await o.read(a,0,i.size,0);if(l!==i.size)return null;let c=a.toString("utf8");return a.length!==r&&c.length!==r?null:c.startsWith(t)?c:null}finally{await o.close()}}catch{return null}}}function ux(e,t){if(!t||typeof t!="object"||typeof t.stdout!="string"||t.stderr!=null&&typeof t.stderr!="string"||t.interrupted===!0||t.isImage===!0||t.backgroundTaskId!=null||sx.test(e)||Of(e))return null;let n=[];if(_a(e,"tkr-exec",()=>!0,s=>n.push(s)),n.length!==1||Of(n[0])||!jf(e,n[0])||nn(e).some(s=>s.kind==="sep"&&s.text!=="&&"&&s.text!=="|"&&s.text!=="|&"))return null;let r=lx(n[0]);return r?{argv:r,stdout:t.stdout,stderr:t.stderr??"",exitCode:t.returnCodeInterpretation!=null?1:0}:null}async function fx(e,t,n,r,s){let{processCapturedOutput:o}=await Promise.resolve().then(()=>(Tf(),vf)),i=null,a=h=>{i=h},l={...process.env};t.session_id?l.CLAUDE_CODE_SESSION_ID=t.session_id:delete l.CLAUDE_CODE_SESSION_ID;let c=await o({argv:e.argv,stdout:e.stdout,stderr:e.stderr,exitCode:e.exitCode,truncated:!1,stderrTruncated:!1},{yolo:n,env:l,...r.resolver?{resolver:r.resolver}:{},deferAccounting:a,cwd:t.cwd||(r.inferCwd===!1?void 0:process.cwd())}),u=i,f=[e.stdout,e.stderr].filter(Boolean).join(`
131
+ `),d=Buffer.byteLength(f,"utf8");if(s==null&&c.filterId!=null&&t.session_id&&d>=Pf){let h=os(t.session_id,t.agent_id??"main",f,(t.tool_input?.command??"").split(`
132
+ `)[0]??"");if(h){let m=is(h.cmd,d);if(n)return m;let{captureOriginalForRestore:x}=await Promise.resolve().then(()=>(Lo(),Mo));return x(f,m)}}let p=[c.stdout,c.stderr].filter(Boolean).join(`
133
+ `),g=c.stdout===e.stdout&&c.stderr===e.stderr;return s!=null&&(g||p.length>s)||(u&&(r.deferAccounting?r.deferAccounting(u):await u()),g||d>0&&Buffer.byteLength(p,"utf8")>=d)?null:(Lf(d,Buffer.byteLength(p,"utf8")),p)}function dx(e){if(e==null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.session_id!=null&&typeof t.session_id!="string"||t.tool_name!=null&&typeof t.tool_name!="string")return!1;let n=t.tool_input;if(n==null)return!0;if(typeof n!="object"||Array.isArray(n))return!1;let r=n;return["command","file_path","pattern","path"].every(s=>r[s]==null||typeof r[s]=="string")}async function Hf(e,t={}){if(!dx(e))return null;let n=e.tool_name==="Bash"&&!Ff(e.tool_input?.command??"")?await cx(e.tool_response):void 0;return n===null?null:n===void 0?Cf(e,t):Cf({...e,tool_response:{...e.tool_response,stdout:n}},t,Jw)}async function Cf(e,t,n){let r=Se();if(!e.tool_name||!Gw.has(e.tool_name))return null;let s=e.tool_name==="Bash"?e.tool_input?.command??"":"",o=Ff(s);if(/\btkr(?:\.js)?\s+restore\b/.test(s))return null;let i=await Ue();if(!Yi())return null;let a=e.tool_name==="Bash"&&!o?ux(s,e.tool_response):null;if(a)return Buffer.byteLength(a.stdout,"utf8")+Buffer.byteLength(a.stderr,"utf8")>Nr?null:fx(a,e,r,t,n);if(e.session_id&&!o&&i?.token){let C=e.tool_input??{},Ht=C.command??C.file_path??C.pattern??C.path??"";Ht&&Fn(e.session_id,{tool:e.tool_name,target:Ht.split(`
134
+ `)[0].trim()})}if(e.tool_name==="Read"&&(e.tool_input?.offset!=null||e.tool_input?.limit!=null))return null;let l=Af(e.tool_response);if(l==null)return tx(e.tool_name,e.tool_response),null;if(!l)return null;let c=Buffer.byteLength(l,"utf8");if(c>Nr||e.tool_name==="Bash"&&c<Pf||e.tool_name==="Glob"&&l.split(`
135
+ `).length<Ww||o)return null;let{loadSettingsCache:u,processOutput:f,captureForRestore:d,captureOriginalForRestore:p,neutralizeMarkers:g,FOLD_MARKER_RE:h,resolveAllowedFilters:m,gatingPlan:x,graceExceeded:S,recordEvent:O,recordTelemetry:P,recordStat:F,countedSaving:N,statCmdLabel:D,statOutcome:j,installDaemonResolver:ne,closeDaemonResolver:ce}=await Promise.resolve().then(()=>(Lo(),Mo)),ue=await u();if(!ue.enabled)return null;let{slugKey:A}=await Promise.resolve().then(()=>(He(),Cl)),B=i?.token?x(i):null;!t.resolver&&B&&ne(B);let re=i?.token?m(i.allowedFilters,S(i)):null,ft=new Set(ue.filters.disabled.map(A)),Oe=re&&ft.size>0?new Set([...re].filter(C=>!ft.has(C))):re,Be=nx(e),dt=`${e.tool_name.toLowerCase()}-tool`,Sn=`${dt}: ${Be}`;try{let C=await f(Sn,l,Oe,{verbosity:ue.outputVerbosity,resolver:t.resolver,yolo:r,exitCode:e.tool_name==="Bash"?void 0:0});if(C.filterId!=null&&e.tool_name==="Bash"&&e.session_id){let Uo=os(e.session_id,e.agent_id??"main",l,s.split(`
136
+ `)[0]??"");if(Uo){let Zo=is(Uo.cmd,c);return r?Zo:await p(l,Zo)}}let Ht=new RegExp(h.source,"m"),Dr=e.tool_name==="Bash"?D(e.tool_input?.command??""):e.tool_name,Ho=e.tool_name==="Read"&&!r&&(Ht.test(C.output)||Yw.test(C.output))?`${C.output}${C.output.endsWith(`
132
137
  `)?"":`
133
- `}${ft}`:A.output,Z;if(A.filteredBytes>=A.rawBytes?Z=null:r?Z=m(A.output,l):e.tool_name==="Glob"||Lt.test(A.output)?Z=await d(l,Co,void 0,{label:Ir}):Z=await p(A.droppedTail??null,Co,void 0,{raw:l,label:Ir}),r&&Z!=null&&(Z=sf(uf(e.tool_response,Z,e.tool_name))),Z!=null&&Buffer.byteLength(Z,"utf8")>=A.rawBytes&&(Z=null),n!=null&&(Z==null||Z.length>n))return null;let yf=Z==null?A.rawBytes:Buffer.byteLength(Z,"utf8"),Pr=Pn().host,je=L(A.rawBytes,yf,In(Pr));Z!=null&&pf(je.raw,je.filtered);let bf=e.cwd||(t.inferCwd===!1?void 0:process.cwd()),kf=e.tool_name==="Bash"?"sh":void 0,Nr=t.deferAccounting,Io=!1,Po=async()=>{Io||(Io=!0,await D({cmd:lt,filterId:A.filterId,rawBytes:A.rawBytes,filteredBytes:A.filteredBytes,plan:ae}),M(je.raw,je.filtered,void 0,!1,Pr,kf,Ir,bf,ue(A)),await C({cmd:lt,tokensSaved:Math.round((je.raw-je.filtered)/4),rawTokens:Math.round(je.raw/4),optimized:A.filterId!=null,telemetryOptIn:ie.telemetryOptIn&&(!Nr||(await u()).telemetryOptIn),host:Pr}))};return Nr?Nr(Po):await Po(),Z}finally{t.resolver||U()}}async function Oo(e,t={}){if(Ui(e,"claude-code")!=="claude-code")return"";let n=await gf(e,t);return n?ff(e,n,df()??void 0):""}async function hw(){let e=await Mo();e||process.exit(0);let t;try{t=JSON.parse(e)}catch{process.exit(0)}let n=await Oo(t);n||process.exit(0),process.stdout.write(n)}var gw=process.argv[1]??"";jo(gw,import.meta.url,"post-tool-use")&&hw().catch(e=>{process.stderr.write(`tkr post-tool-use: ${e.message}
134
- `),process.exit(0)});export{ff as buildHookEnvelope,Oo as postToolUseResponse,gf as processToolOutput,df as takeFirstSaveNotice};
138
+ `}${gt}`:C.output,G;if(C.filteredBytes>=C.rawBytes?G=null:r?G=g(C.output,l):e.tool_name==="Glob"||Ht.test(C.output)?G=await p(l,Ho,void 0,{label:Dr}):G=await d(C.droppedTail??null,Ho,void 0,{raw:l,label:Dr}),r&&G!=null&&(G=Af(Nf(e.tool_response,G,e.tool_name))),G!=null&&Buffer.byteLength(G,"utf8")>=C.rawBytes&&(G=null),n!=null&&(G==null||G.length>n))return null;let Bf=G==null?C.rawBytes:Buffer.byteLength(G,"utf8"),Mr=Mn().host,ze=N(C.rawBytes,Bf,Dn(Mr));G!=null&&Lf(ze.raw,ze.filtered);let zf=e.cwd||(t.inferCwd===!1?void 0:process.cwd()),Uf=e.tool_name==="Bash"?"sh":void 0,Lr=t.deferAccounting,Bo=!1,zo=async()=>{Bo||(Bo=!0,await O({cmd:dt,filterId:C.filterId,rawBytes:C.rawBytes,filteredBytes:C.filteredBytes,plan:B}),F(ze.raw,ze.filtered,void 0,!1,Mr,Uf,Dr,zf,j(C)),await P({cmd:dt,tokensSaved:Math.round((ze.raw-ze.filtered)/4),rawTokens:Math.round(ze.raw/4),optimized:C.filterId!=null,telemetryOptIn:ue.telemetryOptIn&&(!Lr||(await u()).telemetryOptIn),host:Mr}))};return Lr?Lr(zo):await zo(),G}finally{t.resolver||ce()}}async function jo(e,t={}){if(Qi(e,"claude-code")!=="claude-code")return"";let n=await Hf(e,t);return n?Df(e,n,Mf()??void 0):""}async function px(){let e=await Go();e||process.exit(0);let t;try{t=JSON.parse(e)}catch{process.exit(0)}let n=await jo(t);n||process.exit(0),process.stdout.write(n)}var mx=process.argv[1]??"";Ko(mx,import.meta.url,"post-tool-use")&&px().catch(e=>{process.stderr.write(`tkr post-tool-use: ${e.message}
139
+ `),process.exit(0)});export{Df as buildHookEnvelope,jo as postToolUseResponse,Hf as processToolOutput,Mf as takeFirstSaveNotice};
135
140
  /*! Bundled license information:
136
141
 
137
142
  smol-toml/dist/error.js: