fluxflow-cli 4.39.0 → 4.40.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/chunks/{ai-Z2RCLVQR.js → ai-7QKBUDTZ.js} +1 -1
  2. package/dist/chunks/app-UJZARXCV.js +324 -0
  3. package/dist/chunks/{auto_completion-AIWB2XM2.js → auto_completion-RBEVTROV.js} +2 -2
  4. package/dist/chunks/{chunk-M2LU3TCU.js → chunk-APL7DQ7S.js} +1 -1
  5. package/dist/chunks/chunk-JTITXS7B.js +1 -0
  6. package/dist/chunks/{chunk-MX5Q32YU.js → chunk-OLQYLDNC.js} +1 -1
  7. package/dist/chunks/{chunk-HIP66OBL.js → chunk-UYWKQZ3D.js} +175 -173
  8. package/dist/chunks/{chunk-IXXTQAO2.js → chunk-WWRLNBDT.js} +1 -1
  9. package/dist/chunks/{click-O33RKVOZ.js → click-DL6M37AS.js} +2 -2
  10. package/dist/chunks/{computer_action-BUZAZ3LJ.js → computer_action-EMOKDYYR.js} +1 -1
  11. package/dist/chunks/{drag-BZRZLDLG.js → drag-WOY67DNR.js} +1 -1
  12. package/dist/chunks/{generate_image-N2SIC5BA.js → generate_image-NZGID2Y2.js} +1 -1
  13. package/dist/chunks/{invoke-O2YAE4FY.js → invoke-ABHHLDTD.js} +2 -2
  14. package/dist/chunks/{invokeSync-URGZXNDC.js → invokeSync-RNFLZCPV.js} +2 -2
  15. package/dist/chunks/{key_press-Y7F3VAKL.js → key_press-A7AVAUQA.js} +1 -1
  16. package/dist/chunks/{keyboard_typing-IEVRWQJJ.js → keyboard_typing-COAVEOJM.js} +1 -1
  17. package/dist/chunks/{screen_grid-7APUBF2H.js → screen_grid-DMDO5YC3.js} +1 -1
  18. package/dist/chunks/{scroll-FIN5Z7W4.js → scroll-OFESVZ7L.js} +1 -1
  19. package/dist/chunks/{search_keyword-YLKWY2XH.js → search_keyword-IXMFP35K.js} +1 -1
  20. package/dist/chunks/{settings-IGHDSHFT.js → settings-4VMHJDHK.js} +1 -1
  21. package/dist/chunks/{update_file-CYGKZXSH.js → update_file-3WHORCBX.js} +1 -1
  22. package/dist/chunks/{usage-IR23BYQX.js → usage-FDNLBYGE.js} +1 -1
  23. package/dist/chunks/{usageServer-ZYJCDO27.js → usageServer-FRXNO6LD.js} +1 -1
  24. package/dist/chunks/{write_file-TZ2Q6CEB.js → write_file-LNHCLACS.js} +1 -1
  25. package/dist/cli.js +5 -6
  26. package/dist/package.json +2 -2
  27. package/package.json +2 -2
  28. package/dist/chunks/app-IKYO4AHO.js +0 -331
  29. package/dist/chunks/chunk-EUNKA2MP.js +0 -1
@@ -1,4 +1,4 @@
1
- import{b as z}from"./chunk-EUNKA2MP.js";import{p as ut}from"./chunk-KMOTPBF5.js";import{a as mt,b as W}from"./chunk-P5HBJA23.js";import{d as J,h as Z,i as M,j as b}from"./chunk-26BQ45XP.js";import S from"fs-extra";import U from"path";import bt from"http";import N from"fs-extra";import et from"path";import{spawn as vt}from"child_process";import{fileURLToPath as Ft}from"url";var $=52991,Rt=15e3,ft=et.join(J,"usage","usage_error.txt"),ht=async(e,t)=>{let o=t?.stack||t?.message||String(t);console.error(`[Usage Daemon Error] [${e}]:`,t);try{await N.ensureDir(et.dirname(ft));let s=`[${new Date().toISOString()}] [Daemon:${e}] ${o}
1
+ import{b as z}from"./chunk-JTITXS7B.js";import{p as ut}from"./chunk-KMOTPBF5.js";import{a as mt,b as W}from"./chunk-P5HBJA23.js";import{d as J,h as Z,i as M,j as b}from"./chunk-26BQ45XP.js";import S from"fs-extra";import U from"path";import bt from"http";import N from"fs-extra";import et from"path";import{spawn as vt}from"child_process";import{fileURLToPath as Ft}from"url";var $=52991,Rt=15e3,ft=et.join(J,"usage","usage_error.txt"),ht=async(e,t)=>{let o=t?.stack||t?.message||String(t);console.error(`[Usage Daemon Error] [${e}]:`,t);try{await N.ensureDir(et.dirname(ft));let s=`[${new Date().toISOString()}] [Daemon:${e}] ${o}
2
2
  -------------------------------------
3
3
 
4
4
  `;await N.appendFile(ft,s,"utf8")}catch{}},B={agent:0,background:0,search:0,toolSuccess:0,toolFailure:0,toolDenied:0,duration:0,tokens:0,cachedTokens:0,candidateTokens:0,linesAdded:0,linesRemoved:0,cost:0,imageCalls:[]},tt=(e,t)=>{if(!e)return{};let o=Object.keys(e),i=new Date(new Date(t).getTime()-720*60*60*1e3),s={};for(let n of o)new Date(n)>=i&&(s[n]=e[n]);return s};async function Ut(){let e=new Date().toISOString().split("T")[0],t=null;try{if(await N.exists(M)){let o=(await N.readFile(M,"utf8")).trim();o.startsWith("{")||o.startsWith("[")?t=JSON.parse(o):t=JSON.parse(W(o))}}catch(o){await ht("loadUsageFromDisk",o)}if(t){let o={...B,...t.stats||{}};Array.isArray(o.imageCalls)||(o.imageCalls=[]);let i=t.history||{},s=tt(i,e);if(t.date===e)return{...t,stats:o,history:s};{let n=t.date,c={...s};return n&&(c[n]=o),{date:e,stats:{...B},history:tt(c,e)}}}return{date:e,stats:{...B},history:{}}}async function Ot(e=$){let t=await Ut(),o=!1,i=!1,s=Date.now(),n=null,c=async()=>{if(t)try{await N.ensureDir(et.dirname(M));let l=new Date().toISOString().split("T")[0];t.history=tt(t.history||{},t.date||l),t.saveId=Math.random().toString(36).substring(2)+Date.now().toString(36);let a=mt(JSON.stringify(t,null,2));await N.writeFile(M,a,"utf8"),i=!1}catch(l){await ht("flushToDisk",l)}},r=async()=>{n&&clearInterval(n),await c(),m.close(()=>{process.exit(0)}),setTimeout(()=>process.exit(0),1e3).unref()};n=setInterval(async()=>{if(o)return;Date.now()-s>Rt&&await r()},5e3),n.unref&&n.unref();let m=bt.createServer(async(l,a)=>{let u=l.url||"";if(l.method==="POST"&&u==="/heartbeat"){o||(s=Date.now()),a.writeHead(200,{"Content-Type":"application/json"}),a.end(JSON.stringify({ok:!0}));return}if((l.method==="GET"||l.method==="POST")&&u==="/finalize"){o=!0,n&&clearInterval(n),await c(),a.writeHead(200,{"Content-Type":"application/json"}),a.end(JSON.stringify({success:!0,message:"Finalized and written to disk"})),setTimeout(()=>{m.close(()=>process.exit(0)),setTimeout(()=>process.exit(0),500).unref()},3e3);return}if(l.method==="POST"&&u==="/flush"){o||(s=Date.now(),await c()),a.writeHead(200,{"Content-Type":"application/json"}),a.end(JSON.stringify({success:!0}));return}if(l.method==="POST"&&u==="/write"){if(o){a.writeHead(403,{"Content-Type":"application/json"}),a.end(JSON.stringify({error:"Daemon finalized. Writes locked."}));return}s=Date.now();let d="";l.on("data",p=>{d+=p}),l.on("end",async()=>{try{let p=JSON.parse(d||"{}"),C=new Date().toISOString().split("T")[0];if(t.date!==C){let y=t.date;y&&(t.history||(t.history={}),t.history[y]={...t.stats}),t.date=C,t.stats={...B}}t.stats||(t.stats={...B});let{key:h,amount:f=1,provider:w,model:T}=p;if(h&&t.stats[h]!==void 0&&(h==="cost"?t.stats.cost=Number(((t.stats.cost||0)+Number(f)).toFixed(6)):typeof t.stats[h]=="number"&&(t.stats[h]+=Math.floor(f))),h==="agent"&&w&&(t.stats.providerRequests||(t.stats.providerRequests={}),t.stats.providerRequests[w]=(t.stats.providerRequests[w]||0)+Math.floor(f)),w&&T&&(h==="tokens"||h==="cachedTokens"||h==="candidateTokens"||h==="ttft"||h==="cost")){t.stats.models||(t.stats.models={}),t.stats.models[w]||(t.stats.models[w]={}),t.stats.models[w][T]||(t.stats.models[w][T]={tokens:0,cachedTokens:0,candidateTokens:0,ttftSum:0,ttftCalls:0,cost:0});let y=t.stats.models[w][T];h==="tokens"&&(y.tokens+=Math.floor(f)),h==="cachedTokens"&&(y.cachedTokens+=Math.floor(f)),h==="candidateTokens"&&(y.candidateTokens+=Math.floor(f)),h==="cost"&&(y.cost=Number(((y.cost||0)+Number(f)).toFixed(6))),h==="ttft"&&(y.ttftSum=(y.ttftSum||0)+Math.floor(f),y.ttftCalls=(y.ttftCalls||0)+1)}i=!0,await c(),a.writeHead(200,{"Content-Type":"application/json"}),a.end(JSON.stringify({success:!0}))}catch(p){a.writeHead(400,{"Content-Type":"application/json"}),a.end(JSON.stringify({error:p.message}))}});return}a.writeHead(404,{"Content-Type":"text/plain"}),a.end("Not Found")});m.listen(e,"127.0.0.1",()=>{s=Date.now()}),m.on("error",l=>{l.code==="EADDRINUSE"&&process.exit(0)})}async function At(e=$){try{if((await fetch(`http://127.0.0.1:${e}/heartbeat`,{method:"POST",signal:AbortSignal.timeout(300)})).ok)return!0}catch{}try{let t=Ft(import.meta.url);vt(process.execPath,[t,"--usage-daemon-worker",`--port=${e}`],{detached:!0,stdio:"ignore",windowsHide:!0}).unref();for(let i=0;i<10;i++){await new Promise(s=>setTimeout(s,100));try{if((await fetch(`http://127.0.0.1:${e}/heartbeat`,{method:"POST",signal:AbortSignal.timeout(300)})).ok)return!0}catch{}}}catch{}return!1}async function st(e,t=$){try{await At(t),await fetch(`http://127.0.0.1:${t}/write`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:AbortSignal.timeout(1e3)})}catch{}}async function It(e=$){try{await fetch(`http://127.0.0.1:${e}/heartbeat`,{method:"POST",signal:AbortSignal.timeout(600)})}catch{}}async function Et(e=$){try{await fetch(`http://127.0.0.1:${e}/finalize`,{method:"GET",signal:AbortSignal.timeout(1e3)})}catch{}}if(process.argv.includes("--usage-daemon-worker")){let e=process.argv.find(o=>o.startsWith("--port=")),t=e?parseInt(e.split("=")[1],10):$;Ot(t)}var pt=U.join(J,"usage","usage_error.txt"),H=new Map,Nt=(e,t)=>{let o=`${e}:${t}`;if(H.has(o))return H.get(o);try{let i=yt();if(S.existsSync(i)){let n=S.readFileSync(i,"utf8").split(`
@@ -1,2 +1,2 @@
1
- import{a as W}from"./chunk-M2LU3TCU.js";import{f as B,h as S}from"./chunk-MX5Q32YU.js";import{a as P}from"./chunk-Y5JU726N.js";import X from"screenshot-desktop";import O from"sharp";import j from"fs-extra";import G from"path";import"@nut-tree-fork/nut-js";async function U(t,o,e){if(!(!process.env.SHOW_DEBUG_GRID&&!process.env.DEBUG_OCR))try{let s=G.resolve(process.cwd(),"screenshots",t);await j.ensureDir(s),await j.writeFile(G.join(s,o),e)}catch{}}function K(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Q(t,o,e=1/0){if(t===o)return 0;if(t.length===0)return o.length;if(o.length===0)return t.length;if(Math.abs(t.length-o.length)>e)return e+1;let s=Array.from({length:o.length+1},(r,i)=>i);for(let r=1;r<=t.length;r++){let i=[r],a=r;for(let n=1;n<=o.length;n++){let c=t[r-1]===o[n-1]?0:1,l=Math.min(i[n-1]+1,s[n]+1,s[n-1]+c);i.push(l),l<a&&(a=l)}if(s=i,a>e)return e+1}return s[o.length]}function V(t){return t<=4?0:t<=8?1:2}async function H(t,o=3){let e=await O(t).metadata();return O(t).resize(Math.round(e.width*o),Math.round(e.height*o),{kernel:"lanczos3"}).greyscale().normalise().toBuffer()}function Y(t){if(!t)return{words:[],lines:[]};let o=[],e=new Map;for(let r of t.split(`
2
- `)){let i=r.split(" ");if(i.length<12||parseInt(i[0])!==5)continue;let n=i[2],c=i[3],l=i[4],w=parseInt(i[6]),x=parseInt(i[7]),R=parseInt(i[8]),M=parseInt(i[9]),f=parseFloat(i[10]),h=i.slice(11).join(" ").trim();if(!h||f<0)continue;let p={x0:w,y0:x,x1:w+R,y1:x+M},g={text:h,confidence:f,bbox:p};o.push(g);let u=`${n}_${c}_${l}`;e.has(u)||e.set(u,{words:[],bbox:{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}});let d=e.get(u);d.words.push(g),d.bbox.x0=Math.min(d.bbox.x0,p.x0),d.bbox.y0=Math.min(d.bbox.y0,p.y0),d.bbox.x1=Math.max(d.bbox.x1,p.x1),d.bbox.y1=Math.max(d.bbox.y1,p.y1)}let s=[];for(let r of e.values())r.words.length>0&&s.push({text:r.words.map(i=>i.text).join(" "),bbox:r.bbox,words:r.words});return{words:o,lines:s}}function Z(t){if(!(t.words&&t.words.length>0)){if(t.blocks&&t.blocks.length>0){t.words=[],t.lines=[];for(let o of t.blocks)for(let e of o.paragraphs||[])for(let s of e.lines||[]){s.bbox&&t.lines.push(s);for(let r of s.words||[])r.bbox&&t.words.push(r)}if(t.words.length>0)return}if(t.tsv){let o=Y(t.tsv);t.words=o.words,t.lines=o.lines}}}function L(t,o,e=0,s=0,r=1){Z(t);let i=n=>({x0:Math.round(n.x0/r)+e,y0:Math.round(n.y0/r)+s,x1:Math.round(n.x1/r)+e,y1:Math.round(n.y1/r)+s}),a=[];if(t.lines&&t.lines.length>0)for(let n of t.lines){let c=n.text?n.text.toLowerCase().trim():"";if(!c||!n.bbox||!(c===o||new RegExp(`\\b${K(o)}\\b`,"i").test(c)))continue;let w=n.words||(t.words?t.words.filter(f=>f.bbox&&f.bbox.x0>=n.bbox.x0-5&&f.bbox.x1<=n.bbox.x1+5&&f.bbox.y0>=n.bbox.y0-5&&f.bbox.y1<=n.bbox.y1+5):[]),x=o.split(/\s+/),R=x.map(f=>f.replace(/[^a-z0-9]/g,"")).join(" "),M=!1;if(w.length>0)for(let f=0;f<=w.length-x.length;f++){let h=w.slice(f,f+x.length),p=h.map(g=>(g.text||"").toLowerCase().trim().replace(/[^a-z0-9]/g,"")).join(" ");if(p===R||p.includes(R)){let g={x0:Math.min(...h.map(u=>u.bbox.x0)),y0:Math.min(...h.map(u=>u.bbox.y0)),x1:Math.max(...h.map(u=>u.bbox.x1)),y1:Math.max(...h.map(u=>u.bbox.y1))};a.push(i(g)),M=!0}}M||a.push(i(n.bbox))}if(a.length===0&&t.words&&t.words.length>0)for(let n of t.words){let c=n.text?n.text.toLowerCase().trim().replace(/[^a-z0-9]/g,""):"",l=o.replace(/[^a-z0-9]/g,"");c===l&&n.bbox&&a.push(i(n.bbox))}if(a.length===0&&t.words&&t.words.length>0){let n=V(o.length);for(let c of t.words){let l=c.text?c.text.toLowerCase().trim():"";l.length>=3&&Math.abs(l.length-o.length)<=n&&Q(l,o,n)<=n&&c.bbox&&a.push(i(c.bbox))}}return a}function N(t,o){let e=null,s=1/0;for(let r of t){let i=Math.round((r.x0+r.x1)/2),a=Math.round((r.y0+r.y1)/2),n=o.x>=r.x0&&o.x<=r.x1&&o.y>=r.y0&&o.y<=r.y1,c=Math.hypot(i-o.x,a-o.y),l=n?0:c;l<s&&(s=l,e={x:i,y:a,dist:c,containsPoint:n,bbox:r})}return e}var C=null;async function tt(){return C||(C=(async()=>{let{createWorker:t}=await import("tesseract.js"),o=await import("fs-extra"),{CU_CACHE_DIR:e}=await import("./paths-RQRI2XRY.js");return o.ensureDirSync(e),t("eng",1,{cachePath:e,logger:()=>{}})})().catch(t=>{throw C=null,t})),C}var I=null,F=null;async function et(){let{getActiveDisplay:t}=await import("./screen_grid-7APUBF2H.js"),o=await t();if(I&&F===o)return I;F=o,I={format:"png"};try{let e=await X.listDisplays();e&&e.length>0&&(I={format:"png",screen:(e[o]||e[0]).id})}catch{}return I}var pt=async(t,o={})=>{let e=P(t),s=e.gridId||e.grid||e.coordinate||e.target||e.id,r=(e.type||e.clickType||"single").toLowerCase(),i=(e.button||"left").toLowerCase(),a=e.intendedClickText||e.text||"",n=e.ocrCorrection!==void 0?e.ocrCorrection===!0||e.ocrCorrection==="true":e.useOCR!==void 0?e.useOCR===!0||e.useOCR==="true":!1;if(!s&&!a)return'ERROR: Missing required "gridId" parameter for Click tool.';let c=s;if(n&&a)try{let x=s?B(s):null,R=await et(),M=await X(R),f=await O(M).metadata(),h=f.width||1920,p=f.height||1080,g=x?{x:Math.round(x.x*(h/1280)),y:Math.round(x.y*(p/720))}:{x:h/2,y:p/2},u=a.toLowerCase().trim(),d=await tt(),D=null,T="",q=x?320:500;if(x){let m=Math.min(Math.round(h/2),h),y=Math.min(Math.round(p/2),p),b=Math.max(0,Math.min(h-m,g.x-Math.floor(m/2))),k=Math.max(0,Math.min(p-y,g.y-Math.floor(y/2))),_=await O(M).extract({left:b,top:k,width:m,height:y}).toBuffer(),z=2,A=await H(_,z),J=u.replace(/[^a-z0-9]/g,"_");await U("cropped",`crop_${Date.now()}_${J}.png`,A),await d.setParameters({tessedit_pageseg_mode:"11"});let{data:v}=await d.recognize(A,{},{tsv:!0,blocks:!0});if(v&&v.text){let E=L(v,u,b,k,z);if(E.length>0){let $=N(E,g);$&&($.containsPoint||$.dist<=q)&&(D=$,T="centered target crop OCR")}}}if(!D){let m=await H(M,2),y=u.replace(/[^a-z0-9]/g,"_");await U("fullscreen",`full_${Date.now()}_${y}.png`,m),await d.setParameters({tessedit_pageseg_mode:"3"});let{data:b}=await d.recognize(m,{},{tsv:!0,blocks:!0});if(b&&b.text){let k=L(b,u,0,0,2);if(k.length>0){let _=N(k,g);_&&(D=_,T="full-screen OCR")}}}if(D){let m={x:Math.round(D.x*(1280/h)),y:Math.round(D.y*(720/p))},y=await W("click",m,{button:i,clickType:r});if(typeof y=="string"&&y.startsWith("ERROR:"))return y;let b=S(m),k=`${r==="double"?"Double":"Single"} clicked ${i} button`;return s&&b&&String(s)!==String(b)?`${k}. Tried clicking grid ${s}, but OCR corrected to grid ${b} (${T} for "${a}"). If the click landed unintended, try with ocr correction off.`:`${k} on grid ${b||s} (${T} for "${a}").`}}catch{}let l=await W("click",c,{button:i,clickType:r});if(typeof l=="string"&&l.startsWith("ERROR:"))return l;let w=s||(typeof c=="object"?S(c):c);return`${r==="double"?"Double":"Single"} clicked ${i} button on grid ${w}.`};export{pt as click};
1
+ import{a as W}from"./chunk-APL7DQ7S.js";import{f as B,h as S}from"./chunk-OLQYLDNC.js";import{a as P}from"./chunk-Y5JU726N.js";import X from"screenshot-desktop";import O from"sharp";import j from"fs-extra";import G from"path";import"@nut-tree-fork/nut-js";async function U(t,o,e){if(!(!process.env.SHOW_DEBUG_GRID&&!process.env.DEBUG_OCR))try{let s=G.resolve(process.cwd(),"screenshots",t);await j.ensureDir(s),await j.writeFile(G.join(s,o),e)}catch{}}function K(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Q(t,o,e=1/0){if(t===o)return 0;if(t.length===0)return o.length;if(o.length===0)return t.length;if(Math.abs(t.length-o.length)>e)return e+1;let s=Array.from({length:o.length+1},(r,i)=>i);for(let r=1;r<=t.length;r++){let i=[r],a=r;for(let n=1;n<=o.length;n++){let c=t[r-1]===o[n-1]?0:1,l=Math.min(i[n-1]+1,s[n]+1,s[n-1]+c);i.push(l),l<a&&(a=l)}if(s=i,a>e)return e+1}return s[o.length]}function V(t){return t<=4?0:t<=8?1:2}async function H(t,o=3){let e=await O(t).metadata();return O(t).resize(Math.round(e.width*o),Math.round(e.height*o),{kernel:"lanczos3"}).greyscale().normalise().toBuffer()}function Y(t){if(!t)return{words:[],lines:[]};let o=[],e=new Map;for(let r of t.split(`
2
+ `)){let i=r.split(" ");if(i.length<12||parseInt(i[0])!==5)continue;let n=i[2],c=i[3],l=i[4],w=parseInt(i[6]),x=parseInt(i[7]),R=parseInt(i[8]),M=parseInt(i[9]),f=parseFloat(i[10]),h=i.slice(11).join(" ").trim();if(!h||f<0)continue;let p={x0:w,y0:x,x1:w+R,y1:x+M},g={text:h,confidence:f,bbox:p};o.push(g);let u=`${n}_${c}_${l}`;e.has(u)||e.set(u,{words:[],bbox:{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}});let d=e.get(u);d.words.push(g),d.bbox.x0=Math.min(d.bbox.x0,p.x0),d.bbox.y0=Math.min(d.bbox.y0,p.y0),d.bbox.x1=Math.max(d.bbox.x1,p.x1),d.bbox.y1=Math.max(d.bbox.y1,p.y1)}let s=[];for(let r of e.values())r.words.length>0&&s.push({text:r.words.map(i=>i.text).join(" "),bbox:r.bbox,words:r.words});return{words:o,lines:s}}function Z(t){if(!(t.words&&t.words.length>0)){if(t.blocks&&t.blocks.length>0){t.words=[],t.lines=[];for(let o of t.blocks)for(let e of o.paragraphs||[])for(let s of e.lines||[]){s.bbox&&t.lines.push(s);for(let r of s.words||[])r.bbox&&t.words.push(r)}if(t.words.length>0)return}if(t.tsv){let o=Y(t.tsv);t.words=o.words,t.lines=o.lines}}}function L(t,o,e=0,s=0,r=1){Z(t);let i=n=>({x0:Math.round(n.x0/r)+e,y0:Math.round(n.y0/r)+s,x1:Math.round(n.x1/r)+e,y1:Math.round(n.y1/r)+s}),a=[];if(t.lines&&t.lines.length>0)for(let n of t.lines){let c=n.text?n.text.toLowerCase().trim():"";if(!c||!n.bbox||!(c===o||new RegExp(`\\b${K(o)}\\b`,"i").test(c)))continue;let w=n.words||(t.words?t.words.filter(f=>f.bbox&&f.bbox.x0>=n.bbox.x0-5&&f.bbox.x1<=n.bbox.x1+5&&f.bbox.y0>=n.bbox.y0-5&&f.bbox.y1<=n.bbox.y1+5):[]),x=o.split(/\s+/),R=x.map(f=>f.replace(/[^a-z0-9]/g,"")).join(" "),M=!1;if(w.length>0)for(let f=0;f<=w.length-x.length;f++){let h=w.slice(f,f+x.length),p=h.map(g=>(g.text||"").toLowerCase().trim().replace(/[^a-z0-9]/g,"")).join(" ");if(p===R||p.includes(R)){let g={x0:Math.min(...h.map(u=>u.bbox.x0)),y0:Math.min(...h.map(u=>u.bbox.y0)),x1:Math.max(...h.map(u=>u.bbox.x1)),y1:Math.max(...h.map(u=>u.bbox.y1))};a.push(i(g)),M=!0}}M||a.push(i(n.bbox))}if(a.length===0&&t.words&&t.words.length>0)for(let n of t.words){let c=n.text?n.text.toLowerCase().trim().replace(/[^a-z0-9]/g,""):"",l=o.replace(/[^a-z0-9]/g,"");c===l&&n.bbox&&a.push(i(n.bbox))}if(a.length===0&&t.words&&t.words.length>0){let n=V(o.length);for(let c of t.words){let l=c.text?c.text.toLowerCase().trim():"";l.length>=3&&Math.abs(l.length-o.length)<=n&&Q(l,o,n)<=n&&c.bbox&&a.push(i(c.bbox))}}return a}function N(t,o){let e=null,s=1/0;for(let r of t){let i=Math.round((r.x0+r.x1)/2),a=Math.round((r.y0+r.y1)/2),n=o.x>=r.x0&&o.x<=r.x1&&o.y>=r.y0&&o.y<=r.y1,c=Math.hypot(i-o.x,a-o.y),l=n?0:c;l<s&&(s=l,e={x:i,y:a,dist:c,containsPoint:n,bbox:r})}return e}var C=null;async function tt(){return C||(C=(async()=>{let{createWorker:t}=await import("tesseract.js"),o=await import("fs-extra"),{CU_CACHE_DIR:e}=await import("./paths-RQRI2XRY.js");return o.ensureDirSync(e),t("eng",1,{cachePath:e,logger:()=>{}})})().catch(t=>{throw C=null,t})),C}var I=null,F=null;async function et(){let{getActiveDisplay:t}=await import("./screen_grid-DMDO5YC3.js"),o=await t();if(I&&F===o)return I;F=o,I={format:"png"};try{let e=await X.listDisplays();e&&e.length>0&&(I={format:"png",screen:(e[o]||e[0]).id})}catch{}return I}var pt=async(t,o={})=>{let e=P(t),s=e.gridId||e.grid||e.coordinate||e.target||e.id,r=(e.type||e.clickType||"single").toLowerCase(),i=(e.button||"left").toLowerCase(),a=e.intendedClickText||e.text||"",n=e.ocrCorrection!==void 0?e.ocrCorrection===!0||e.ocrCorrection==="true":e.useOCR!==void 0?e.useOCR===!0||e.useOCR==="true":!1;if(!s&&!a)return'ERROR: Missing required "gridId" parameter for Click tool.';let c=s;if(n&&a)try{let x=s?B(s):null,R=await et(),M=await X(R),f=await O(M).metadata(),h=f.width||1920,p=f.height||1080,g=x?{x:Math.round(x.x*(h/1280)),y:Math.round(x.y*(p/720))}:{x:h/2,y:p/2},u=a.toLowerCase().trim(),d=await tt(),D=null,T="",q=x?320:500;if(x){let m=Math.min(Math.round(h/2),h),y=Math.min(Math.round(p/2),p),b=Math.max(0,Math.min(h-m,g.x-Math.floor(m/2))),k=Math.max(0,Math.min(p-y,g.y-Math.floor(y/2))),_=await O(M).extract({left:b,top:k,width:m,height:y}).toBuffer(),z=2,A=await H(_,z),J=u.replace(/[^a-z0-9]/g,"_");await U("cropped",`crop_${Date.now()}_${J}.png`,A),await d.setParameters({tessedit_pageseg_mode:"11"});let{data:v}=await d.recognize(A,{},{tsv:!0,blocks:!0});if(v&&v.text){let E=L(v,u,b,k,z);if(E.length>0){let $=N(E,g);$&&($.containsPoint||$.dist<=q)&&(D=$,T="centered target crop OCR")}}}if(!D){let m=await H(M,2),y=u.replace(/[^a-z0-9]/g,"_");await U("fullscreen",`full_${Date.now()}_${y}.png`,m),await d.setParameters({tessedit_pageseg_mode:"3"});let{data:b}=await d.recognize(m,{},{tsv:!0,blocks:!0});if(b&&b.text){let k=L(b,u,0,0,2);if(k.length>0){let _=N(k,g);_&&(D=_,T="full-screen OCR")}}}if(D){let m={x:Math.round(D.x*(1280/h)),y:Math.round(D.y*(720/p))},y=await W("click",m,{button:i,clickType:r});if(typeof y=="string"&&y.startsWith("ERROR:"))return y;let b=S(m),k=`${r==="double"?"Double":"Single"} clicked ${i} button`;return s&&b&&String(s)!==String(b)?`${k}. Tried clicking grid ${s}, but OCR corrected to grid ${b} (${T} for "${a}"). If the click landed unintended, try with ocr correction off.`:`${k} on grid ${b||s} (${T} for "${a}").`}}catch{}let l=await W("click",c,{button:i,clickType:r});if(typeof l=="string"&&l.startsWith("ERROR:"))return l;let w=s||(typeof c=="object"?S(c):c);return`${r==="double"?"Double":"Single"} clicked ${i} button on grid ${w}.`};export{pt as click};
@@ -1 +1 @@
1
- import{a as i,b as s}from"./chunk-M2LU3TCU.js";import"./chunk-MX5Q32YU.js";import{a as c}from"./chunk-Y5JU726N.js";var d=async(a,p={})=>{let e=c(a),r=e.action||e.type||e.cmd,n=e.target||e.grid||e.gridCode||e.location||e.input;if(!r)return'ERROR: Missing required "action" argument for computer_action (e.g. move, click, drag, scroll, type, key_press, key_combination).';let t=r.toLowerCase();if(t.startsWith("mouse_")||["move","click","drag","scroll"].includes(t)){let o=t.replace("mouse_","");return await i(o,n,{button:e.button,clickType:e.clickType||e.type,from:e.from,to:e.to,direction:e.direction,amount:e.amount?parseInt(e.amount,10):void 0})}if(t.startsWith("key_")||t==="type"||t==="press"){let o=t;t==="press"&&(o="key_press");let u=e.autoPressEnter===!0||e.autoPressEnter==="true"||e.enter===!0||e.enter==="true";return await s(o,n||e.text||e.keys,{...e,autoPressEnter:u})}return`ERROR: Unrecognized action "${r}". Supported actions: move, click, drag, scroll, type, key_press, key_combination.`};export{d as computer_action};
1
+ import{a as i,b as s}from"./chunk-APL7DQ7S.js";import"./chunk-OLQYLDNC.js";import{a as c}from"./chunk-Y5JU726N.js";var d=async(a,p={})=>{let e=c(a),r=e.action||e.type||e.cmd,n=e.target||e.grid||e.gridCode||e.location||e.input;if(!r)return'ERROR: Missing required "action" argument for computer_action (e.g. move, click, drag, scroll, type, key_press, key_combination).';let t=r.toLowerCase();if(t.startsWith("mouse_")||["move","click","drag","scroll"].includes(t)){let o=t.replace("mouse_","");return await i(o,n,{button:e.button,clickType:e.clickType||e.type,from:e.from,to:e.to,direction:e.direction,amount:e.amount?parseInt(e.amount,10):void 0})}if(t.startsWith("key_")||t==="type"||t==="press"){let o=t;t==="press"&&(o="key_press");let u=e.autoPressEnter===!0||e.autoPressEnter==="true"||e.enter===!0||e.enter==="true";return await s(o,n||e.text||e.keys,{...e,autoPressEnter:u})}return`ERROR: Unrecognized action "${r}". Supported actions: move, click, drag, scroll, type, key_press, key_combination.`};export{d as computer_action};
@@ -1 +1 @@
1
- import{a as e}from"./chunk-M2LU3TCU.js";import"./chunk-MX5Q32YU.js";import{a as d}from"./chunk-Y5JU726N.js";var m=async(a,i={})=>{let r=d(a),o=r.fromGridId||r.from||r.start,t=r.toGridId||r.to||r.end;return!o||!t?'ERROR: Drag requires both "fromGridId" and "toGridId" parameters.':await e("drag",o,{from:o,to:t})};export{m as drag};
1
+ import{a as e}from"./chunk-APL7DQ7S.js";import"./chunk-OLQYLDNC.js";import{a as d}from"./chunk-Y5JU726N.js";var m=async(a,i={})=>{let r=d(a),o=r.fromGridId||r.from||r.start,t=r.toGridId||r.to||r.end;return!o||!t?'ERROR: Drag requires both "fromGridId" and "toGridId" parameters.':await e("drag",o,{from:o,to:t})};export{m as drag};
@@ -1 +1 @@
1
- import{a as k}from"./chunk-6EYQQ7GQ.js";import{a as b}from"./chunk-Y5JU726N.js";import{t as B,u as T,v as $}from"./chunk-IXXTQAO2.js";import{b as I}from"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import C from"fs-extra";import x from"path";var F=(a,y={})=>{try{if(a.length<8||a[0]!==137||a[1]!==80||a[2]!==78||a[3]!==71)return a;let s=[],c=[];for(let r=0;r<256;r++){let e=r;for(let n=0;n<8;n++)e&1?e=3988292384^e>>>1:e=e>>>1;c[r]=e}let l=r=>{let e=4294967295;for(let n=0;n<r.length;n++)e=c[(e^r[n])&255]^e>>>8;return(e^4294967295)>>>0},f=(r,e)=>{let n=Buffer.from(r,"ascii"),i=Buffer.from(e,"utf-8"),u=n.length+1+i.length,o=Buffer.alloc(8+u+4);o.writeUInt32BE(u,0),o.write("tEXt",4,"ascii"),n.copy(o,8),o[8+n.length]=0,i.copy(o,8+n.length+1);let w=l(o.subarray(4,8+u));return o.writeUInt32BE(w,8+u),o};for(let[r,e]of Object.entries(y))e!=null&&s.push(f(r,String(e)));if(s.length===0)return a;if(a.subarray(12,16).toString("ascii")==="IHDR"){let e=a.subarray(0,33),n=a.subarray(33);return Buffer.concat([e,...s,n])}return a}catch{return a}},N=async(a,y={})=>{let s=b(a),c=s.prompt||s.text,l=s.path||s.outputPath||s.output||"generated_image.png",f=s.ratio;if(!c)return'ERROR: Missing "prompt" argument for generate_image.';let r=["nsfw","naked","nudity","nude","porn","sex","xxx","erotic","gore","bloody","violence","abuse","suicide","murder","hentai","pedophile","rape"],e=c.toLowerCase();if(r.some(i=>e.includes(i)))return"ERROR: Prompt blocked by system safety filter (inappropriate or unsafe content detected).";try{let i=await I();if(!await B(i))return`ERROR: Insufficient Quota for selected quality. Either tell user reduce quality or wait for next refresh cycle (${(await T()).nextResetMin||60}m).`;let o=i.imageSettings||{keyType:"Default",quality:"Low-High",apiKey:""},w=o.keyType==="Custom"&&o.apiKey?o.apiKey:FALLBACK_IMAGE_KEY,E={Low:"flux","Low-High":"zimage",Medium:"gptimage","Medium-High":"gptimage",High:"qwen-image",Ultra:"gptimage-large",Premium:"nanobanana-pro"}[o.quality]||"zimage",g=1024,m=1024;if(f){let t=f.replace(/\s+/g,"");t==="16:9"?(g=1024,m=576):t==="9:16"?(g=576,m=1024):t==="4:3"?(g=1024,m=768):t==="3:4"?(g=768,m=1024):t==="1:1"&&(g=1024,m=1024)}let M=Math.floor(Math.random()*1e7),S=`https://gen.pollinations.ai/image/${encodeURIComponent(c)}?model=${E}&width=${g}&height=${m}&seed=${M}&enhance=true&reasoning=high&quality=high&negative=${encodeURIComponent("deformed, distorted, disfigured, poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs, disconnected limbs, mutation, mutated hands and fingers, blurry, low quality, low resolution, extra fingers, censored, watermarks, signatures")}`,d=await fetch(S,{method:"GET",headers:{Authorization:`Bearer ${w}`}});if(!d.ok){let t=d.status,h="";try{h=await d.text()}catch{}return t===402||h.includes("Insufficient balance")||h.includes("PAYMENT_REQUIRED")?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed with status [${t}]: ${h||"Unknown API Error"}`}if((d.headers.get("content-type")||"").includes("application/json")){let t=await d.json();return t.status===402||t.error&&t.error.code==="PAYMENT_REQUIRED"?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed: ${t.error?.message||JSON.stringify(t)}`}let O=await d.arrayBuffer(),p=Buffer.from(O),P={Title:c,Description:"Generated via FluxFlow CLI",Software:"FluxFlow CLI",Author:"FluxFlow","Creation Time":new Date().toISOString(),Prompt:c,Model:`Fluxflow:${E}`,Ratio:f||"1:1",Seed:String(M)};p=F(p,P);let R=x.resolve(process.cwd(),l);await C.ensureDir(x.dirname(R)),await k.recordFileChange(R),await C.writeFile(R,p),await $(i);let v=x.extname(l).toLowerCase(),L={".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".webp":"image/webp"}[v]||"image/png";return y.isMultiModal!==!1?{text:`Image successfully generated from prompt [${c}] and saved to [${l}]. Output attached to multimodal part`,binaryPart:{inlineData:{data:p.toString("base64"),mimeType:L}}}:`Image successfully generated from prompt [${c}] and saved to [${l}].`}catch(i){return`ERROR: Failed during image generation: ${i instanceof Error?i.message:String(i)}`}};export{N as generate_image};
1
+ import{a as k}from"./chunk-6EYQQ7GQ.js";import{a as b}from"./chunk-Y5JU726N.js";import{t as B,u as T,v as $}from"./chunk-WWRLNBDT.js";import{b as I}from"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import C from"fs-extra";import x from"path";var F=(a,y={})=>{try{if(a.length<8||a[0]!==137||a[1]!==80||a[2]!==78||a[3]!==71)return a;let s=[],c=[];for(let r=0;r<256;r++){let e=r;for(let n=0;n<8;n++)e&1?e=3988292384^e>>>1:e=e>>>1;c[r]=e}let l=r=>{let e=4294967295;for(let n=0;n<r.length;n++)e=c[(e^r[n])&255]^e>>>8;return(e^4294967295)>>>0},f=(r,e)=>{let n=Buffer.from(r,"ascii"),i=Buffer.from(e,"utf-8"),u=n.length+1+i.length,o=Buffer.alloc(8+u+4);o.writeUInt32BE(u,0),o.write("tEXt",4,"ascii"),n.copy(o,8),o[8+n.length]=0,i.copy(o,8+n.length+1);let w=l(o.subarray(4,8+u));return o.writeUInt32BE(w,8+u),o};for(let[r,e]of Object.entries(y))e!=null&&s.push(f(r,String(e)));if(s.length===0)return a;if(a.subarray(12,16).toString("ascii")==="IHDR"){let e=a.subarray(0,33),n=a.subarray(33);return Buffer.concat([e,...s,n])}return a}catch{return a}},N=async(a,y={})=>{let s=b(a),c=s.prompt||s.text,l=s.path||s.outputPath||s.output||"generated_image.png",f=s.ratio;if(!c)return'ERROR: Missing "prompt" argument for generate_image.';let r=["nsfw","naked","nudity","nude","porn","sex","xxx","erotic","gore","bloody","violence","abuse","suicide","murder","hentai","pedophile","rape"],e=c.toLowerCase();if(r.some(i=>e.includes(i)))return"ERROR: Prompt blocked by system safety filter (inappropriate or unsafe content detected).";try{let i=await I();if(!await B(i))return`ERROR: Insufficient Quota for selected quality. Either tell user reduce quality or wait for next refresh cycle (${(await T()).nextResetMin||60}m).`;let o=i.imageSettings||{keyType:"Default",quality:"Low-High",apiKey:""},w=o.keyType==="Custom"&&o.apiKey?o.apiKey:FALLBACK_IMAGE_KEY,E={Low:"flux","Low-High":"zimage",Medium:"gptimage","Medium-High":"gptimage",High:"qwen-image",Ultra:"gptimage-large",Premium:"nanobanana-pro"}[o.quality]||"zimage",g=1024,m=1024;if(f){let t=f.replace(/\s+/g,"");t==="16:9"?(g=1024,m=576):t==="9:16"?(g=576,m=1024):t==="4:3"?(g=1024,m=768):t==="3:4"?(g=768,m=1024):t==="1:1"&&(g=1024,m=1024)}let M=Math.floor(Math.random()*1e7),S=`https://gen.pollinations.ai/image/${encodeURIComponent(c)}?model=${E}&width=${g}&height=${m}&seed=${M}&enhance=true&reasoning=high&quality=high&negative=${encodeURIComponent("deformed, distorted, disfigured, poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs, disconnected limbs, mutation, mutated hands and fingers, blurry, low quality, low resolution, extra fingers, censored, watermarks, signatures")}`,d=await fetch(S,{method:"GET",headers:{Authorization:`Bearer ${w}`}});if(!d.ok){let t=d.status,h="";try{h=await d.text()}catch{}return t===402||h.includes("Insufficient balance")||h.includes("PAYMENT_REQUIRED")?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed with status [${t}]: ${h||"Unknown API Error"}`}if((d.headers.get("content-type")||"").includes("application/json")){let t=await d.json();return t.status===402||t.error&&t.error.code==="PAYMENT_REQUIRED"?"ERROR: Image Generation Currently unavailable. Try again later.":`ERROR: Image Generation failed: ${t.error?.message||JSON.stringify(t)}`}let O=await d.arrayBuffer(),p=Buffer.from(O),P={Title:c,Description:"Generated via FluxFlow CLI",Software:"FluxFlow CLI",Author:"FluxFlow","Creation Time":new Date().toISOString(),Prompt:c,Model:`Fluxflow:${E}`,Ratio:f||"1:1",Seed:String(M)};p=F(p,P);let R=x.resolve(process.cwd(),l);await C.ensureDir(x.dirname(R)),await k.recordFileChange(R),await C.writeFile(R,p),await $(i);let v=x.extname(l).toLowerCase(),L={".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".webp":"image/webp"}[v]||"image/png";return y.isMultiModal!==!1?{text:`Image successfully generated from prompt [${c}] and saved to [${l}]. Output attached to multimodal part`,binaryPart:{inlineData:{data:p.toString("base64"),mimeType:L}}}:`Image successfully generated from prompt [${c}] and saved to [${l}].`}catch(i){return`ERROR: Failed during image generation: ${i instanceof Error?i.message:String(i)}`}};export{N as generate_image};
@@ -1,6 +1,6 @@
1
- import{a as k,c as d}from"./chunk-56EJGQU3.js";import{a as b}from"./chunk-Y5JU726N.js";var I=async(w,s={})=>{let{runSubagent:U}=await import("./ai-Z2RCLVQR.js"),l=b(w),c=l.task||l.instruction||l.prompt,E=l.model||null,C=l.title||null,m=l.tools||null;if(!c)return'ERROR: Missing "task" argument for invoke.';let f=null;if(m)try{let t=m.trim();t.startsWith("[")&&t.endsWith("]")&&(t=t.substring(1,t.length-1)),f=t.split(",").map(n=>n.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let i=`subagent-${Date.now()}-${Math.floor(Math.random()*1e3)}`,h=null,S=null,$=new Promise((t,n)=>{h=t,S=n}),e={id:i,title:C||c.substring(0,30),task:c,status:"running",startedAt:Date.now(),lastChunkTime:Date.now(),wps:0,questions:[],pendingSteerMessages:[],steer:t=>{t&&e.pendingSteerMessages.push(t)},completionPromise:$,_resolveCompletion:h,_rejectCompletion:S,progress:[]},r={chunks:[],totalWords:0};k.push(e),s.onSubagentUpdate&&s.onSubagentUpdate();let a=[],A={...s,taskId:i,onAskMain:async t=>{let n=`q-${Date.now()}-${Math.floor(Math.random()*1e3)}`,o=null,p=new Promise(g=>{o=g}),u={id:n,question:t,answered:!1,answer:null,askedAt:Date.now(),_resolve:o};return e.questions.push(u),e.status="waiting",s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" is WAITING FOR YOUR INPUT: "${t}"
1
+ import{a as k,c as d}from"./chunk-56EJGQU3.js";import{a as b}from"./chunk-Y5JU726N.js";var I=async(w,s={})=>{let{runSubagent:U}=await import("./ai-7QKBUDTZ.js"),l=b(w),c=l.task||l.instruction||l.prompt,E=l.model||null,C=l.title||null,m=l.tools||null;if(!c)return'ERROR: Missing "task" argument for invoke.';let f=null;if(m)try{let t=m.trim();t.startsWith("[")&&t.endsWith("]")&&(t=t.substring(1,t.length-1)),f=t.split(",").map(n=>n.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let i=`subagent-${Date.now()}-${Math.floor(Math.random()*1e3)}`,h=null,S=null,$=new Promise((t,n)=>{h=t,S=n}),e={id:i,title:C||c.substring(0,30),task:c,status:"running",startedAt:Date.now(),lastChunkTime:Date.now(),wps:0,questions:[],pendingSteerMessages:[],steer:t=>{t&&e.pendingSteerMessages.push(t)},completionPromise:$,_resolveCompletion:h,_rejectCompletion:S,progress:[]},r={chunks:[],totalWords:0};k.push(e),s.onSubagentUpdate&&s.onSubagentUpdate();let a=[],A={...s,taskId:i,onAskMain:async t=>{let n=`q-${Date.now()}-${Math.floor(Math.random()*1e3)}`,o=null,p=new Promise(g=>{o=g}),u={id:n,question:t,answered:!1,answer:null,askedAt:Date.now(),_resolve:o};return e.questions.push(u),e.status="waiting",s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" is WAITING FOR YOUR INPUT: "${t}"
2
2
  Respond using tool: [action:Answer(id="${i}", answer="...")]
3
3
  [/SYSTEM]`),await p},onVisualFeedback:t=>{e.lastChunkTime=Date.now();let n=t.replace(/\x1b\[[0-9;]*m/g,""),o=n.match(/[✔✘✗✖🔍📖→➕↻•]\s*([A-Za-z0-9\s-]+)/);o?e.currentTool=o[1].trim():e.currentTool=n,s.onSubagentUpdate&&s.onSubagentUpdate()},onTokenChunk:(t,n)=>{let o=Date.now();if(e.lastChunkTime=o,e.currentTool="Thinking",typeof n=="number"&&n>0){r.totalWords+=n,r.chunks.push({time:o,words:n});let p=o-400;if(r.chunks=r.chunks.filter(u=>u.time>=p),r.chunks.length>0){let u=r.chunks.reduce((M,_)=>M+_.words,0),T=r.chunks[0].time,g=Math.max(.4,(o-T)/1e3);e.wps=Math.round(u/g)}}s.onSubagentUpdate&&s.onSubagentUpdate()}};return U(c,A,E,f,50,t=>{if(e.status==="cancelled")return;if(t.startsWith("[Subagent Turn")&&a.length>0&&(e.progress.push([...a]),a=[]),t.includes("[Executing Tool]")){let o=t.match(/\[Executing Tool\]\s*([a-zA-Z0-9_]+)/);o&&(!e.currentTool||e.currentTool==="Thinking")&&(e.currentTool=o[1])}let n=t;if(n.startsWith("[Tool Result]")||n.startsWith("[Action Result]")){let o=n.split(`
4
4
  `);o.length>5&&(n=o.slice(0,4).join(`
5
5
  `)+`
6
- ... [Content/Diff Truncated from Logs] ...`)}a.push(n),s.onSubagentUpdate&&s.onSubagentUpdate()},!0).then(t=>{if(e.status==="cancelled"){e._resolveCompletion&&e._resolveCompletion(t);return}a.length>0&&(e.progress.push([...a]),a=[]),e.status="completed",e.finalAnswer=t,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) has FINISHED. Call GetProgress(id="${i}") to see the final result. [/SYSTEM]`),e._resolveCompletion&&e._resolveCompletion(t)}).catch(async t=>{let{isTerminationSignaled:n}=await import("./ai-Z2RCLVQR.js");if(t.message==="Subagent task was cancelled."||e.status==="cancelled"||n()){e.status="cancelled",a.push("[SUBAGENT CANCELLED] Task was cancelled."),e.progress.push([...a]),s.onSubagentUpdate&&s.onSubagentUpdate(),e._resolveCompletion&&e._resolveCompletion(null);return}a.push(`[SUBAGENT FAILURE] Error: ${t.message}`),e.progress.push([...a]),e.status="failed",e.error=t.message,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) FAILED with error: ${t.message}. [/SYSTEM]`),e._rejectCompletion&&e._rejectCompletion(t)}),`Background subagent started. Task ID: ${i}`};export{I as invoke};
6
+ ... [Content/Diff Truncated from Logs] ...`)}a.push(n),s.onSubagentUpdate&&s.onSubagentUpdate()},!0).then(t=>{if(e.status==="cancelled"){e._resolveCompletion&&e._resolveCompletion(t);return}a.length>0&&(e.progress.push([...a]),a=[]),e.status="completed",e.finalAnswer=t,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) has FINISHED. Call GetProgress(id="${i}") to see the final result. [/SYSTEM]`),e._resolveCompletion&&e._resolveCompletion(t)}).catch(async t=>{let{isTerminationSignaled:n}=await import("./ai-7QKBUDTZ.js");if(t.message==="Subagent task was cancelled."||e.status==="cancelled"||n()){e.status="cancelled",a.push("[SUBAGENT CANCELLED] Task was cancelled."),e.progress.push([...a]),s.onSubagentUpdate&&s.onSubagentUpdate(),e._resolveCompletion&&e._resolveCompletion(null);return}a.push(`[SUBAGENT FAILURE] Error: ${t.message}`),e.progress.push([...a]),e.status="failed",e.error=t.message,s.onSubagentUpdate&&s.onSubagentUpdate(),d(`[SYSTEM] Background subagent "${e.title}" (id: ${i}) FAILED with error: ${t.message}. [/SYSTEM]`),e._rejectCompletion&&e._rejectCompletion(t)}),`Background subagent started. Task ID: ${i}`};export{I as invoke};
@@ -1,3 +1,3 @@
1
- import{a as o}from"./chunk-Y5JU726N.js";var k=async(b,t={})=>{let{runSubagent:u}=await import("./ai-Z2RCLVQR.js"),s=o(b),a=s.task||s.instruction||s.prompt,m=s.model||null,l=s.tools||null;if(!a)return'ERROR: Missing "task" argument for invokeSync.';let r=null;if(l)try{let e=l.trim();e.startsWith("[")&&e.endsWith("]")&&(e=e.substring(1,e.length-1)),r=e.split(",").map(i=>i.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let n=s.title||a.substring(0,30);try{t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n}`);let e=await u(a,t,m,r,50);return t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} [COMPLETED]
2
- `),e}catch(e){let{isTerminationSignaled:i}=await import("./ai-Z2RCLVQR.js"),c=e.message==="Subagent task was cancelled by user."||i();if(t.onVisualFeedback){let d=c?"[CANCELLED]":"[FAILED]";t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} ${d}
1
+ import{a as o}from"./chunk-Y5JU726N.js";var k=async(b,t={})=>{let{runSubagent:u}=await import("./ai-7QKBUDTZ.js"),s=o(b),a=s.task||s.instruction||s.prompt,m=s.model||null,l=s.tools||null;if(!a)return'ERROR: Missing "task" argument for invokeSync.';let r=null;if(l)try{let e=l.trim();e.startsWith("[")&&e.endsWith("]")&&(e=e.substring(1,e.length-1)),r=e.split(",").map(i=>i.trim().replace(/^["']|["']$/g,"")).filter(Boolean)}catch{}let n=s.title||a.substring(0,30);try{t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n}`);let e=await u(a,t,m,r,50);return t.onVisualFeedback&&t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} [COMPLETED]
2
+ `),e}catch(e){let{isTerminationSignaled:i}=await import("./ai-7QKBUDTZ.js"),c=e.message==="Subagent task was cancelled by user."||i();if(t.onVisualFeedback){let d=c?"[CANCELLED]":"[FAILED]";t.onVisualFeedback(`\x1B[95mSubAgent\x1B[0m: \x1B[32mGeneralist\x1B[0m \u2192 ${n} ${d}
3
3
  `)}return`ERROR: Subagent execution failed: ${e.message}`}};export{k as invokeSync};
@@ -1 +1 @@
1
- import{b as e}from"./chunk-M2LU3TCU.js";import"./chunk-MX5Q32YU.js";import{a as i}from"./chunk-Y5JU726N.js";var k=async(s,c={})=>{let t=i(s),a=t.key||t.keys||t.input||t.shortcut;if(!a)return'ERROR: Missing required "key" parameter for KeyPress tool.';let r=String(a).trim().toLowerCase();if(r==="clearinput"||r==="clear_input"||r==="clear")return await e("clear_input");if(r==="back"||r==="browser_back"||r==="browserBack")return await e("browser_back");if(r.includes(";")||r.includes("+")){let o=r.split(/[;+]/).map(n=>n.trim()).filter(Boolean);return await e("key_combination",o)}return await e("key_press",r)};export{k as key_press};
1
+ import{b as e}from"./chunk-APL7DQ7S.js";import"./chunk-OLQYLDNC.js";import{a as i}from"./chunk-Y5JU726N.js";var k=async(s,c={})=>{let t=i(s),a=t.key||t.keys||t.input||t.shortcut;if(!a)return'ERROR: Missing required "key" parameter for KeyPress tool.';let r=String(a).trim().toLowerCase();if(r==="clearinput"||r==="clear_input"||r==="clear")return await e("clear_input");if(r==="back"||r==="browser_back"||r==="browserBack")return await e("browser_back");if(r.includes(";")||r.includes("+")){let o=r.split(/[;+]/).map(n=>n.trim()).filter(Boolean);return await e("key_combination",o)}return await e("key_press",r)};export{k as key_press};
@@ -1 +1 @@
1
- import{b as n}from"./chunk-M2LU3TCU.js";import"./chunk-MX5Q32YU.js";import{a as r}from"./chunk-Y5JU726N.js";var p=async(o,u={})=>{let t=r(o),e=t.text||t.input||t.value||"",s=t.autoPressEnter===!0||t.autoPressEnter==="true"||t.enter===!0||t.enter==="true";return e==null?'ERROR: Missing required "text" parameter for KeyboardTyping tool.':await n("type",String(e),{autoPressEnter:s})};export{p as keyboard_typing};
1
+ import{b as n}from"./chunk-APL7DQ7S.js";import"./chunk-OLQYLDNC.js";import{a as r}from"./chunk-Y5JU726N.js";var p=async(o,u={})=>{let t=r(o),e=t.text||t.input||t.value||"",s=t.autoPressEnter===!0||t.autoPressEnter==="true"||t.enter===!0||t.enter==="true";return e==null?'ERROR: Missing required "text" parameter for KeyboardTyping tool.':await n("type",String(e),{autoPressEnter:s})};export{p as keyboard_typing};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h}from"./chunk-MX5Q32YU.js";export{a as GRID_CONFIG,e as captureGriddedScreenshot,h as coordinates720pToGridId,d as getActiveDisplay,g as gridToNativeCoordinates,f as parseGridCodeTo720p,c as rawModelOnly,b as useModel};
1
+ import{a,b,c,d,e,f,g,h}from"./chunk-OLQYLDNC.js";export{a as GRID_CONFIG,e as captureGriddedScreenshot,h as coordinates720pToGridId,d as getActiveDisplay,g as gridToNativeCoordinates,f as parseGridCodeTo720p,c as rawModelOnly,b as useModel};
@@ -1 +1 @@
1
- import{a as r}from"./chunk-M2LU3TCU.js";import"./chunk-MX5Q32YU.js";import{a as t}from"./chunk-Y5JU726N.js";var m=async(n,i={})=>{let o=t(n),e=(o.direction||"down").toLowerCase(),c=o.amount?parseInt(o.amount,10):6,s=o.gridId||o.grid||o.coordinate||o.target||o.id||null;return await r("scroll",s,{direction:e,amount:c})};export{m as scroll};
1
+ import{a as r}from"./chunk-APL7DQ7S.js";import"./chunk-OLQYLDNC.js";import{a as t}from"./chunk-Y5JU726N.js";var m=async(n,i={})=>{let o=t(n),e=(o.direction||"down").toLowerCase(),c=o.amount?parseInt(o.amount,10):6,s=o.gridId||o.grid||o.coordinate||o.target||o.id||null;return await r("scroll",s,{direction:e,amount:c})};export{m as scroll};
@@ -1,4 +1,4 @@
1
- import{a as Y}from"./chunk-Y5JU726N.js";import{b as Q}from"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import{w as V,x as q,y as J}from"./chunk-26BQ45XP.js";import K from"fs/promises";import E from"path";import j from"fast-glob";import{Minimatch as tt}from"minimatch";async function A(f,o,n=f,p=1){if(p>12)return[];let h=[],s;try{s=await K.readdir(f,{withFileTypes:!0})}catch{return[]}for(let t of s){let a=E.join(f,t.name),y=E.relative(n,a),L=y.split(E.sep).map(w=>w.toLowerCase()),O=t.name.toLowerCase();if(!o.some(w=>{let F=w.toLowerCase();return F.startsWith(".")&&O.endsWith(F)?!0:L.some(M=>M===F||M.startsWith(".pnpm"))}))if(t.isDirectory()){let w=await A(a,o,n,p+1);h=h.concat(w)}else t.isFile()&&h.push({fullPath:a,relativePath:y})}return h}function rt(f,o,n=1/0){if(f===o)return 0;if(f.length===0)return o.length;if(o.length===0)return f.length;if(Math.abs(f.length-o.length)>n)return n+1;let p=Array.from({length:o.length+1},(h,s)=>s);for(let h=1;h<=f.length;h++){let s=[h],t=h;for(let a=1;a<=o.length;a++){let y=f[h-1]===o[a-1]?0:1,L=Math.min(s[a-1]+1,p[a]+1,p[a-1]+y);s.push(L),L<t&&(t=L)}if(p=s,t>n)return n+1}return p[o.length]}function nt(f,o){if(!f||!o)return!1;let n=f.toLowerCase(),p=o.toLowerCase();if(n.includes(p))return!0;let h=n.split(/[^a-z0-9]+/).filter(t=>t.length>0),s=p.split(/[^a-z0-9]+/).filter(t=>t.length>1||p.length===1&&t.length>0);return s.length===0?!1:s.every(t=>{let a=t.length<=2?0:t.length<=5?1:2;for(let y of h)if(y.includes(t)||t.length>=3&&y.length>=3&&Math.abs(y.length-t.length)<=a&&rt(t,y,a)<=a)return!0;return!1})}var gt=async f=>{let{keyword:o,path:n,fuzzy:p,subString:h,regex:s}=Y(f);if(o==null)return'ERROR: Missing "keyword" argument.';let t=String(o);if(n){let e=n.trim().toLowerCase();if(e==="#docs"||e==="#doc"||e==="#documentation"||e.includes("#skill/global/fluxflow")||e.startsWith("#skill"))return"ERROR: Cannot search in reserved VFS '#skill' namespace. Use 'ReadFile' to read specific skills."}let a=e=>e===!0||e==="true"||e===1||e==="1"||e==="yes",y=s===!1||s==="false"||s===0||s==="0"||s==="no",L=s===!0||s==="true"||s===1||s==="1"||s==="yes",O=a(p)||a(h),G=null,w=null;if(y)O||(w=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i"));else{try{G=new RegExp(t,"i")}catch(e){if(L)return`ERROR: Invalid regex pattern "${t}": ${e.message}`}w=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i")}let F=Array.from(new Set([...V,...q(process.cwd())])),M=150;try{let e=[],P=process.cwd(),u=null;if(n){let i=r=>r.startsWith("!")||!r.startsWith("-")?r:"!"+r.replace(/^-+/,""),g=n.split(";").map(r=>r.trim()).filter(Boolean).map(i).filter(r=>r!=="!"),c=g.some(r=>r.startsWith("!"));if(g.some(r=>j.isDynamicPattern(r)||/[*?{}[\]()|+]/.test(r))){u="glob";let r=n.replace(/\\/g,"/"),l=g.map(m=>m.replace(/\\/g,"/")),z=F.map(m=>m.startsWith(".")?`**/*${m}`:`**/${m}/**`);if(c&&!g.some(m=>!m.startsWith("!"))){let m=await A(P,F,P),R=$=>$.endsWith("/")?$+"**":$,d=l.filter($=>$.startsWith("!")).map($=>R($.slice(1))),v=l.filter($=>!$.startsWith("!")).map(R);e=m.filter($=>{let x=$.relativePath.replace(/\\/g,"/"),_=v.length===0||v.some(b=>{try{return new tt(b).match(x)}catch{return!1}}),Z=d.some(b=>{try{return new tt(b).match(x)}catch{return!1}});return _&&!Z})}else{let m=l.some(d=>/[\(\)\|]|\.\*/.test(d)),R=[];if(!m)try{R=await j(l,{cwd:P,ignore:z,dot:!0,onlyFiles:!0,absolute:!1})}catch{R=[]}if(R.length===0&&(m||j.isDynamicPattern(r))){let d=r.match(/^([^\*\?\(\)\|\[\]\s]+)\//),v=d&&!/[\*\?\(\)\|\[\]]/.test(d[1])?E.resolve(P,d[1]):P,$=await A(v,F,P);try{let x=r.replace(/^\.\//,"");x=x.replace(/\.\*\/(\\.|[^\/])/g,".*$1"),!x.startsWith("^")&&!x.startsWith(".*")&&(x=`.*${x}`);let _=new RegExp(x.endsWith("$")?x:`${x}$`,"i");e=$.filter(Z=>{let b=Z.relativePath.replace(/\\/g,"/");return _.test(b)})}catch{e=[]}}else e=R.map(d=>({fullPath:E.resolve(P,d),relativePath:d}))}}else{let r=[],l=!1,z=!1;for(let k of g){let m=k.replace(/[\/\\]+$/,""),R=E.resolve(P,m);try{let d=await K.stat(R);if(d.isDirectory()){z=!0;let v=await A(R,F,P);r.push(...v)}else if(d.isFile())l=!0,r.push({fullPath:R,relativePath:E.relative(P,R)});else return`ERROR: Path is neither a file nor a directory: ${k}`}catch{return`ERROR: Path not found: ${k}`}}e=r,l&&!z?u="file":u="dir"}}else e=await A(P,F);let et=e.map(async i=>{try{let g=await K.readFile(i.fullPath,"utf-8");if(g.includes("\0"))return[];let c=g.split(/\r?\n/),W=[];for(let l=0;l<c.length;l++)(O?c[l].toLowerCase().includes(t.toLowerCase())||nt(c[l],t):y?w&&w.test(c[l]):G&&G.test(c[l])||w&&w.test(c[l]))&&W.push({line:l+1,content:c[l].trim()});return W.length===0?null:{path:i.relativePath.replace(/\\/g,"/"),matches:W}}catch{return[]}}),st=await Promise.all(et),S=[],D=0;for(let i of st){if(!i||!i.matches)continue;if(D>=M)break;let g=M-D,c=i.matches.slice(0,g);S.push({path:i.path,matches:c}),D+=c.length}typeof global.gc=="function"&&global.gc();let I=null;if(S.length===0){let i=u==="file"?` in '${n}'`:u==="dir"||u==="glob"?` in '${n}'`:". Try to specify files",g=u==="dir"?"[DIR]":u==="glob"?"[GLOB]":"";return`${g}${g?" ":""}Found 0 matches of '${t}'${i}${I?` ${I}`:""}`}let B=I?` ${I}`:"",T=`${S.length} file${S.length===1?"":"s"}`,U=`${D} match${D===1?"":"es"}`,N;u==="file"?N=`Found ${U} of '${t}' in '${n}'${B}:`:u==="dir"||u==="glob"?N=`Found ${U} of '${t}' in '${n}' across ${T}${B}:`:N=`Found ${U} of '${t}' across ${T}${B}:`;let X=u==="dir"?"[DIR]":u==="glob"?"[GLOB]":"",C=`${X}${X?" ":""}${N}
1
+ import{a as Y}from"./chunk-Y5JU726N.js";import{b as Q}from"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import{w as V,x as q,y as J}from"./chunk-26BQ45XP.js";import K from"fs/promises";import E from"path";import j from"fast-glob";import{Minimatch as tt}from"minimatch";async function A(f,o,n=f,p=1){if(p>12)return[];let h=[],s;try{s=await K.readdir(f,{withFileTypes:!0})}catch{return[]}for(let t of s){let a=E.join(f,t.name),y=E.relative(n,a),L=y.split(E.sep).map(w=>w.toLowerCase()),O=t.name.toLowerCase();if(!o.some(w=>{let F=w.toLowerCase();return F.startsWith(".")&&O.endsWith(F)?!0:L.some(M=>M===F||M.startsWith(".pnpm"))}))if(t.isDirectory()){let w=await A(a,o,n,p+1);h=h.concat(w)}else t.isFile()&&h.push({fullPath:a,relativePath:y})}return h}function rt(f,o,n=1/0){if(f===o)return 0;if(f.length===0)return o.length;if(o.length===0)return f.length;if(Math.abs(f.length-o.length)>n)return n+1;let p=Array.from({length:o.length+1},(h,s)=>s);for(let h=1;h<=f.length;h++){let s=[h],t=h;for(let a=1;a<=o.length;a++){let y=f[h-1]===o[a-1]?0:1,L=Math.min(s[a-1]+1,p[a]+1,p[a-1]+y);s.push(L),L<t&&(t=L)}if(p=s,t>n)return n+1}return p[o.length]}function nt(f,o){if(!f||!o)return!1;let n=f.toLowerCase(),p=o.toLowerCase();if(n.includes(p))return!0;let h=n.split(/[^a-z0-9]+/).filter(t=>t.length>0),s=p.split(/[^a-z0-9]+/).filter(t=>t.length>1||p.length===1&&t.length>0);return s.length===0?!1:s.every(t=>{let a=t.length<=2?0:t.length<=5?1:2;for(let y of h)if(y.includes(t)||t.length>=3&&y.length>=3&&Math.abs(y.length-t.length)<=a&&rt(t,y,a)<=a)return!0;return!1})}var gt=async f=>{let{keyword:o,path:n,fuzzy:p,subString:h,regex:s}=Y(f);if(o==null)return'ERROR: Missing "keyword" argument.';let t=String(o);if(n){let e=n.trim().toLowerCase();if(e==="#docs"||e==="#doc"||e==="#documentation"||e.includes("#skill/global/fluxflow")||e.startsWith("#skill"))return"ERROR: Cannot search in reserved VFS '#skill' namespace. Use 'ReadFile' to read specific skills."}let a=e=>e===!0||e==="true"||e===1||e==="1"||e==="yes",y=s===!1||s==="false"||s===0||s==="0"||s==="no",L=s===!0||s==="true"||s===1||s==="1"||s==="yes",O=a(p)||a(h),G=null,w=null;if(y)O||(w=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i"));else{try{G=new RegExp(t,"i")}catch(e){if(L)return`ERROR: Invalid regex pattern "${t}": ${e.message}`}w=new RegExp(`(?<![\\w])${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w])`,"i")}let F=Array.from(new Set([...V,...q(process.cwd())])),M=150;try{let e=[],P=process.cwd(),u=null;if(n){let i=r=>r.startsWith("!")||!r.startsWith("-")?r:"!"+r.replace(/^-+/,""),g=n.split(";").map(r=>r.trim()).filter(Boolean).map(i).filter(r=>r!=="!"),c=g.some(r=>r.startsWith("!"));if(g.some(r=>j.isDynamicPattern(r)||/[*?{}[\]()|+]/.test(r))){u="glob";let r=n.replace(/\\/g,"/"),l=g.map(m=>m.replace(/\\/g,"/")),z=F.map(m=>m.startsWith(".")?`**/*${m}`:`**/${m}/**`);if(c&&!g.some(m=>!m.startsWith("!"))){let m=await A(P,F,P),R=$=>$.endsWith("/")?$+"**":$,d=l.filter($=>$.startsWith("!")).map($=>R($.slice(1))),v=l.filter($=>!$.startsWith("!")).map(R);e=m.filter($=>{let x=$.relativePath.replace(/\\/g,"/"),_=v.length===0||v.some(b=>{try{return new tt(b).match(x)}catch{return!1}}),Z=d.some(b=>{try{return new tt(b).match(x)}catch{return!1}});return _&&!Z})}else{let m=l.some(d=>/[\(\)\|]|\.\*/.test(d)),R=[];if(!m)try{R=await j(l,{cwd:P,ignore:z,dot:!0,onlyFiles:!0,absolute:!1})}catch{R=[]}if(R.length===0&&(m||j.isDynamicPattern(r))){let d=r.match(/^([^\*\?\(\)\|\[\]\s]+)\//),v=d&&!/[\*\?\(\)\|\[\]]/.test(d[1])?E.resolve(P,d[1]):P,$=await A(v,F,P);try{let x=r.replace(/^\.\//,"");x=x.replace(/\.\*\/(\\.|[^\/])/g,".*$1"),!x.startsWith("^")&&!x.startsWith(".*")&&(x=`.*${x}`);let _=new RegExp(x.endsWith("$")?x:`${x}$`,"i");e=$.filter(Z=>{let b=Z.relativePath.replace(/\\/g,"/");return _.test(b)})}catch{e=[]}}else e=R.map(d=>({fullPath:E.resolve(P,d),relativePath:d}))}}else{let r=[],l=!1,z=!1;for(let k of g){let m=k.replace(/[\/\\]+$/,""),R=E.resolve(P,m);try{let d=await K.stat(R);if(d.isDirectory()){z=!0;let v=await A(R,F,P);r.push(...v)}else if(d.isFile())l=!0,r.push({fullPath:R,relativePath:E.relative(P,R)});else return`ERROR: Path is neither a file nor a directory: ${k}`}catch{return`ERROR: Path not found: ${k}`}}e=r,l&&!z?u="file":u="dir"}}else e=await A(P,F);let et=e.map(async i=>{try{let g=await K.readFile(i.fullPath,"utf-8");if(g.includes("\0"))return[];let c=g.split(/\r?\n/),W=[];for(let l=0;l<c.length;l++)(O?c[l].toLowerCase().includes(t.toLowerCase())||nt(c[l],t):y?w&&w.test(c[l]):G&&G.test(c[l])||w&&w.test(c[l]))&&W.push({line:l+1,content:c[l].trim()});return W.length===0?null:{path:i.relativePath.replace(/\\/g,"/"),matches:W}}catch{return[]}}),st=await Promise.all(et),S=[],D=0;for(let i of st){if(!i||!i.matches)continue;if(D>=M)break;let g=M-D,c=i.matches.slice(0,g);S.push({path:i.path,matches:c}),D+=c.length}typeof global.gc=="function"&&global.gc();let I=null;if(S.length===0){let i=u==="file"?` in '${n}'`:u==="dir"||u==="glob"?` in '${n}'`:". Try to specify files",g=u==="dir"?"[DIR]":u==="glob"?"[GLOB]":"";return`${g}${g?" ":""}Found 0 matches of '${t}'${i}${I?` ${I}`:""}`}let B=I?` ${I}`:"",T=`${S.length} file${S.length===1?"":"s"}`,U=`${D} match${D===1?"":"es"}`,N;u==="file"?N=`Found ${U} of '${t}' in '${n}'${B}:`:u==="dir"||u==="glob"?N=`Found ${U} of '${t}' in '${n}' across ${T}${B}:`:N=`Found ${U} of '${t}' across ${T}${B}:`;let X=u==="dir"?"[DIR]":u==="glob"?"[GLOB]":"",C=`${X}${X?" ":""}${N}
2
2
 
3
3
  `,H="";try{let i=await Q();i?.systemSettings?.alwaysAskFiles&&(H=i.systemSettings.alwaysAskFiles)}catch{}for(let i of S)if(C+=`${i.path}:
4
4
  `,J(i.path,H)){let c=i.matches.map(W=>`Line ${W.line}`).join(", ");C+=` ${c}. Line snapshot not available due to file restriction policy. ReadFile if needed
@@ -1 +1 @@
1
- import{a,b,c}from"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";export{a as PROVIDER_BASE_URLS,b as loadSettings,c as saveSettings};
1
+ import{a,b,c}from"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";export{a as PROVIDER_BASE_URLS,b as loadSettings,c as saveSettings};
@@ -1,4 +1,4 @@
1
- import{g as h,h as m,i as R}from"./chunk-M46I73DX.js";import{a as F}from"./chunk-6EYQQ7GQ.js";import{a as $}from"./chunk-Y5JU726N.js";import{b as g}from"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import c from"fs";import P from"path";var j=async(w,y={})=>{let n=$(w),t=n.path;if(!t)return'ERROR: Missing "path" argument for PatchFile.';let{patchPairs:o,allowMultiple:E,error:p}=h(n);if(p)return`ERROR: ${p}`;if(o.length===0)return"ERROR: No valid replacement pairs found. Use searchContent1, newContent1, etc.";let M=n.allowMultiple!==void 0?n.allowMultiple===!0||String(n.allowMultiple).toLowerCase()==="true":E,i=P.resolve(process.cwd(),t);try{if(!c.existsSync(i))return`ERROR: File [${t}] does not exist. Use WriteFile instead.`;let e=y.forcedContent||c.readFileSync(i,"utf8");e.startsWith("\uFEFF")&&(e=e.slice(1));let s=e.replace(/\r\n/g,`
1
+ import{g as h,h as m,i as R}from"./chunk-M46I73DX.js";import{a as F}from"./chunk-6EYQQ7GQ.js";import{a as $}from"./chunk-Y5JU726N.js";import{b as g}from"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import c from"fs";import P from"path";var j=async(w,y={})=>{let n=$(w),t=n.path;if(!t)return'ERROR: Missing "path" argument for PatchFile.';let{patchPairs:o,allowMultiple:E,error:p}=h(n);if(p)return`ERROR: ${p}`;if(o.length===0)return"ERROR: No valid replacement pairs found. Use searchContent1, newContent1, etc.";let M=n.allowMultiple!==void 0?n.allowMultiple===!0||String(n.allowMultiple).toLowerCase()==="true":E,i=P.resolve(process.cwd(),t);try{if(!c.existsSync(i))return`ERROR: File [${t}] does not exist. Use WriteFile instead.`;let e=y.forcedContent||c.readFileSync(i,"utf8");e.startsWith("\uFEFF")&&(e=e.slice(1));let s=e.replace(/\r\n/g,`
2
2
  `).replace(/\r/g,`
3
3
  `),{content:u,results:l}=m(s,o,{allowMultiple:M}),a=l.filter(r=>!r.success),f=l.filter(r=>r.success);if(f.length===0)return`ERROR: Patch Failed to apply to [${t}].
4
4
  ${a.map(r=>` \u2022 ${r.error}`).join(`
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w}from"./chunk-IXXTQAO2.js";import"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";export{n as addToUsage,c as calculateTokenCost,t as checkImageQuota,q as checkQuota,p as checkQuotaDetailed,e as forceFlushUsage,w as getAllUsageData,o as getCustomPeriodUsage,j as getDailyUsage,r as getImageQuotaBuckets,s as getImageQuotaLimit,u as getImageQuotaStats,k as getMonthlyUsage,h as getTimedUsage,l as incrementUsage,i as initUsage,d as invalidateCachedBaseUrl,g as purgeTimedUsage,v as recordImageGeneration,f as recordTimedUsage,m as runtimeSession,b as sendUsageFinalize,a as sendUsageHeartbeat};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w}from"./chunk-WWRLNBDT.js";import"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";export{n as addToUsage,c as calculateTokenCost,t as checkImageQuota,q as checkQuota,p as checkQuotaDetailed,e as forceFlushUsage,w as getAllUsageData,o as getCustomPeriodUsage,j as getDailyUsage,r as getImageQuotaBuckets,s as getImageQuotaLimit,u as getImageQuotaStats,k as getMonthlyUsage,h as getTimedUsage,l as incrementUsage,i as initUsage,d as invalidateCachedBaseUrl,g as purgeTimedUsage,v as recordImageGeneration,f as recordTimedUsage,m as runtimeSession,b as sendUsageFinalize,a as sendUsageHeartbeat};
@@ -1,4 +1,4 @@
1
- import{g as h,h as w,w as y}from"./chunk-IXXTQAO2.js";import"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import{c as b}from"./chunk-26BQ45XP.js";import k from"http";import{exec as B}from"child_process";var x="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAwAAAAMACAYAAACTgQCOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nOzdB3RU5b7+8aGIkEJooSUh1NBBpIXee1MwiEhTBBFFBAQERUCkKCpNqoB0FETsiFTp0qRXC03UUzznnqOSBM///a+9J5OZSTLJZDIze7/v/u61Pstz71FP7lmD93me7F+w2Xh4DH6KHBEFww8nVipy5I/4QgcTuxY69OfAiMOJoyMO3ple6FDi0sIH72wpfCBxb+GDd45rCu2/c6nwgcTvdfvv/KYptP/O70X2JYpUX2vu2O11seeOKOpqt4tdLnbaFdPscPGVi+2aP3WRX7rY5uILF5/bFdd85uJTF584lfjY4Q9R4iMXW118+Ico6bDFxQcuNjuV2uTifRfv/e608XdR2mGDi/Uu1jlFrXWxxsVqF6t+F9Gr/mv3rouVLlbYxWiWu3jHxTIXS/8ryjgs0fzHbrGLRXaxmoVpvO1igVPZ+S7muZir+T+7Of8nyjm85eJNF284lZ/t4nUXr7mY9X+igu7fosJMFzNcTLerqHnVxTQXr7iY+m9RyWGKi8n/cnrZLk4zycVLLl50MfFforLDBBcvuBiv+U1U0YxzMdbF805Vx7gY7WKUi+fsqmlGOvxTVHvWxQin6s+4eNrF8DSe+qeo4TDMxZMO/xA1htrV1Axx8YSLwS4e/4eo5fCYi0EuBtrVHvh3UXuAi/4u+jnd96iLvi4ecdHHro7mYRe9/+aU4HT/Qy56uejp4kG7upoHXPRw0V3zq65eNxddXXRx0flXUd+hk4uOLjo4NWjv8Ito0M5FWxdtfhENHVq7aOWipVO8poWL5g4/i/hmTo2aumjys2jU+Pbv8Y1//i2+keb297r4ny81avTzcU3jhj/vbRT/85bG8T8vbdTw9vTGDW6Pim9we0CjBj93adLgl/iGDf9WqXHjv4cb/f93eXh4eAL/7BH5I47eKR9x9E7biKPJQwsduTOr0Dd3NhX65s7xiMOJtwsdSRS6wy4OJYrCDgddHHCx30mG8F/csuH/v+YK/67Bn/BP+Cf8E/69Df8OjV00smusiXfR0EUDpyb1b+sa17t9p3Hdn75vXPf2jsZ1by9tWven8U3r/pzQ9P7bdevW/S3C6P+3zcPDw+P1E31IFCh4IrlexNGkxwseS5pT8FjSzoijiX+LOJokHAp9k+jkCP4WCP8s/yYJ/yz/hH/CP+Hf4PCvq+eirov7b4umup9+bXLf7Z1N7vvpraZ1bj2mFYP4+BsFjP7/8zw8PBZ/Cp4TRcKPJ3YteCLxpYgTSZsijiddijie+FfE8SQRccwF4Z/wT/gn/BP+Cf+E/2yE/9uiaR0X99k1qf3TX01r377YtNZPm5rWvv1is9o/d4mvdqOI0XmAh4dH4afAiT9KR3yblFDwRNK88JOJxwseT/xfwRNJIkJz3AXhn/BP+Cf8E/4J/4R/v4Z/XW2nZrVc1Pzp+2Y1b61pWvP20CZVf65us4lcRmcGHh4eGR8hckWcSa4bfjLx+YLfJn1U8GTSrwVPJolUJ+wI/4R/wj/hn/BP+Cf8Gxn+9QJgV8OuafVbvzSrfmtr82q3xjSr8tP9FAIeHp5MX+nRFv7wU4lLC55KulXw2ySRivDPwS8Hv4R/wj/hn/Bv+vCvq/6TaO5QTXPrb82q/bSpeZWbA3hliIfH6o8QubWVP+xM4vjwU0k7Cp5KTC54KknoCP+Ef8I/4Z/wT/gn/CsQ/lNUtWtW9dZfzavcOt6s8q1ZLeJ+amqzidxGxxEeHp5AP0LkDj17t2X4mcRF4aeSfgk/nSQ0qcGf8M9rP7z2Q/gn/BP+Cf9Khn9dFacWlX8SzeNu/dyi8k9vN6t0uzllgIdHsUdf+k8nzQs/k/xT+Bl76Cf8E/4J/4R/wj/hn/Bv3fCfKs6ueaVbf29R8dZSvjPAwyPrI0Su8NPJ8WFnkuaEn02+GX4mWdgR/gn/hH/CP+Gf8E/4J/y7h39dJYdbokXFmzdaVLz5ZstKNxsaHWl4eHiyeCLOiMJh55KHhp9NPhN+NlnoCP+Ef8I/4Z/wT/gn/BP+vQ7/t0RLhwq3RIsKNy+3LH9zfLvyPxc3Oufw8PA4HiFyh51Lbhp6Nnlp+LmkP1ODP+Gfg18Ofgn/hH/CP+Gf8J+D8J+q/C3RotytpJblb21qXu5WtwSbyGN0/OHhseQTck6UDDuXPD70XPJ3YeeSRbiG8E/4J/wT/gn/hH/CP+Hfz+E/VbkUZW/dbBV7a1bb8j+VMToP8fBY4il4LrlB2Lnk98POJ93Vgj/hn9d+eO2H8E/4J/wT/gn/QQv/5W6JVmVTxN682zL25vttom/UNzof8fCo9wiRO/xiYrewc0k7ws4nCx3hn+Wf5Z/wT/gn/BP+Cf9GhX+9ALiIuXmgdZlbCbwexMOT0+eKuDfkQtKA0AvJF1KDP+Gf8E/4J/wT/gn/hH/Cv5nCfxmnltG3vmsdc3Nk11I/hRgdo3h4pHrCLolioeeTpoaeT/pb2AWX4E/457UfXvvhtR/CP+Gf8E/4N2n4bxVzS7TW3RStom/82jr6xuT20TeKGJ2reHhM/RS9KMLDLiSPDz2f9G89+BP+TRP+Wf5NEv5Z/gn/hH/CP+Hf9OG/dbSLqBv/bVX6xqwWsT8WMjpn8fCY6ok8J8L04H8x6bfU4E/4N034Z/k3Sfhn+Sf8E/4J/4R/ycK/i9I3/qMVgbblv48wOnfx8Bj7HBchoReTR4ZdTPol7KJL8Cf8myb8s/ybJPyz/BP+Cf+Ef8K/xOHfro32x5I3/tG61M3x3AjwWO85J/K5BX/CvynDP8u/ScI/yz/hn/BP+Cf8KxH+25Ryal3y5u02JW6MSKh2Lp/RsYyHJ+BP6OW7bUMuJp9PDf6Ef1OGf5Z/k4R/ln/CP+Gf8E/4Vy78tynp1LrEjSutS95KMDqf8fAE5Am7lFgl9GLS56GXXII/4d+U4Z/l3yThn+Wf8E/4J/wT/pUO/21KOLWOvLGzbfEbNY3Oazw8fnkKnhNFQi4lzQu9lHSX8E/4J/wT/gn/hH/CP+Gf8O8e/tsUvyna6m7cbRt5Y2nHkrcjjc5vPDy+PXtE3pDLyUNDLib9XQv+hH/zh39e+zFJ+Oe1H8I/4Z/wT/i3YPi/KdpG2rWJvPlb28jr4xNs3AfwSPQUuJIcH3I5+awj+BP+zR/+Wf5NEv5Z/gn/hH/CP+HfmuHfpQC0jbwh2ha7IdoUvX6qTdEb9Y3OdTw8mT8/iZDQy0mzQi8l/UX4J/wT/gn/hH/CP+Gf8E/49y38O7Qpev1/bYvcWNoi8tcwo2MeD0+6J+TS3Y6hl5OvhV52Bn/Cv/nDP6/9mCT889oP4Z/wT/gn/Fsz/Ed6Dv9ti94Q7VK0LXLjx7aFb3QwOu/x8OhPxHVROPRS8lI9+BP+Cf+Ef8I/4Z/wT/gn/BP+/Rr+2xVxUejGpo5hHAnzGPiEXkl6NORy0t8J//KFf177MUn457Ufwj/hn/BP+Ldm+C/uQ/gvbNe28I1f2xW+0cfoHMhjsafw9yIi5HLyutTgT/iXKvyz/Jsk/LP8E/4J/4R/wr81w3+k7+FfVyjVpi4R1wsbnQt5LPDkv5rcKPRK8veEf8I/4Z/wT/gn/BP+Cf+Ef8PCv2gfcUO0L3j9ertCN5obnQ95VH32iLyhl5OmhF5O+ovwT/gn/BP+Cf+Ef8I/4Z/wb3D4T9Gu4PX/tS94Yx6/bwCPX597L90pF3o56VDoFZfgT/iXKvzzzr9Jwj/v/BP+Cf+Ef8K/NcN/8cCE//YFndqFXT/aNvxmJaNzI48CT8jlpCGhV5J+J/wT/gn/hH/CP+Gf8E/4J/ybM/y3D08Rdv2/7cNvPGZ0fuSR9flR5A+9fHe5HvwJ/9KGf177MUn457Ufwj/hn/BP+Ldm+I8MYvi3FwDRIey69sc1CbYbBYyOkzwSPfmvipjQK3ePEv4J/4R/wj/hn/BP+Cf8E/7lCv+60Ouifej1k+3uvVbO6FzJI8ETevVuq5DLyb8S/gn/hH/CP+Gf8E/4J/wT/uUM/6kKXPtHu5Dr7Y3OlzxmfYTIFXIleXzo5eS/CP+Ef8I/4Z/wT/gn/BP+Cf+Sh/8Qu/Yh1/7qUOD6lMk2kdvouMljoqfoRREecjX5g9Ard+3Bn/Avbfjn4Nck4Z+DX8I/4Z/wT/i3Zvgvbq7wryuQIv+1T3pE/FjI6NzJY5If8Rly9e4Fwj/hn/BP+Cf8E/4J/4R/wr+a4b+jJr/m2rnO+X+INTp/8hj4FLic3CDkSvIvhH/CP+Gf8E/4J/wT/gn/hH/Vw79dh3zXf+6Y90Z9o3MojwFPgat3Hwi9kvwH4Z/wT/gn/BP+Cf+Ef8I/4d8a4b/jvQ7Xfu+Q73oPo/MoTxCfAleSR4ZeSf4f4Z/wT/gn/BP+Cf+Ef8I/4d9q4f+66JhP+07Atb865Lv2rNG5lCfQjxB5Qq7cnR96VQv+hH/Zwz8/7cck4Z+f9kP4J/wT/gn/1gz/kfKG/44O91wXne65Pi/BJvIYHVN5AvH8JEJCriZ/Qvgn/BP+Cf+Ef8I/4Z/wT/gn/He0h39dx7zXtvI7B6v2nBNhBa4k7yL8E/4J/4R/wj/hn/BP+Cf8E/47uoT/Tnk110SnPD/u62i7UtDo2MrjhyfiuigccvXuYcI/4Z/wT/gn/BP+Cf+Ef8I/4b9jRuFfLwDXRMfcPx5vY7tV1Oj8ypODJ/Q7UbzA1bunCP+Ef8I/4Z/wT/gn/BP+Cf+E/8zCfyeH3D+e72C7VsroHMvjwxNyQZQqcOXuOcK/IuF/6z9FiXXfi5KLT4qSb+zWlXrlE1Fq6sei5JQtotT4talKj3NY426si+c9GJOxqNEuRrla7fTcahGdkZEunvVghAfPrBYxDk97MNyDp1wMc1fG4UnNqvSG2sVqhmTiCQ8Gu3jcXVmHxzwY5GKgBwPcldO9K8r1d9EvvfKaRz3o6+IRD/qsTKeC5mEXvT1I8OAhF73sKqbVM2OVHnTxgAc9MrJCVOruoptTnKuumejiorMHnewqp9XRRQd3VRzae9DOYbmo0taDNk5VXbV20cqDlq7ecWrhVK25B83Sq65p6qKJB409aOQi/h1RIyMNPWjgsEzUqO9BvWWiZkbqurjfqVZadTy4z0VtD2rZ1U6rposarpY6Vfeg2lJxn0NVD6o41XFVWbPELs6DSkvE/XFrRN24DaJepY2iftwnuvi4r0Xjyt+KZpW/J/xLH/6v6Trnvnapo+1mtNF5licbz70X75QNuXr3O8K/HOG/+KabosSiI6LktA9FqefeFqX7TRDRnQaK6CZdRcx9zUSZirVEmdg4AABMLza2pihftomoWLaTqFKun6heboyoXWG2qFthrWhYcYdoWvEM4d/84V90znVNdMp17Vp7242KRudaHi+e8IuJlUOuJt8i/Jsw/H/wsygxd48oOe4dUbrvOBHdvIcoU6m24f+wBgAgmMrG1hKVynYV1cuOFHXKzxMNy30qmpU7T/g3Ufjv7GD78WYH2w+Vjc63PJk8+b8XZUKuJF8j/Jsg/H/+L1F84UFRatRCEdVtiIip1djwf+ACAGBm5WLjRZWyA8V9ZWeL+NgvRMuy3xP+DQ3/13SdbD/e6mK7Xt7onMuTwVPgsogKuXr3B8K/MeE/8rN/iBKzvxClh0wTUa0eEjHlqxn+D1IAAGQWG1tNxMU+KGrGviQaxG4SLcpcJfwHOfx3drre2fZDrNF5l8flCbsiIgtcvXuB8B/c8F9s41VRcvxyEdVpgChToYbh/6AEAEBlsbFVRVxsT1En5g3RJGa3aB1zg/AfhPDfRfej9jrQlc62H0sanXt5tJ/z/6MoVODq3ZOE/yCE/x2/i+Lzd4vSAyeKmDrNDP8HIQAAVlahTFNRM2aMaBTzsWgVdY3wH8Dw38XpdHvbjSJG519LP0WuiIIhV+4eJfwHMPzv+kMUX3JIlHpiqoip1cjwf9gBAID0ysXWE9XLPC0aRr0vWpW+RvgPQPjvqsmlO9LddjHc6BxszecnERJy9e4+wn9gwn/kmtOEfgAAJFQ+tpGoFfOCaFp6H+Hf/+FfdM31g+iW6/u9CbYbBYyOw9Z6hMgdciV5K+Hfz+H/q3+LEq99IqI6DzD8H14AACDnKpXpIuqVXixalbxC+Pdb+P9B1zXXD58m2EQeo2OxZZ6QK3fnE/79F/4jV520v9dfuY7h/6ACAAD+V7bMfaJm1BjRtNRuwn+unId/F28ZnYst8eS/mjya8O+H8L/nTxH59h4R1WOI4f9QAgAAwVM5pqdoWGqdaBN5nfBv8z38d9d9L7rbvnvW6Hys9BNy5W7X0CvJfxH+fQ//RXf+RxR/dZOIbtzZ8H8AAQAA41Qs00rULTVPtIm8Svi3+Rj+c30vuuX67n9dbVcfMDonK/kU+C65XujV5N8J/z6G/+2/iZLPLxIxNTnqBQAATuXKNBR1S80WrYtdIfxnM/w7ffdnN9uP8UbnZaWeey/eKRtyJfkXwn/2w3/RXf8RJSavFTG1Gxv+DxgAAGBe5crUF3VLzhZti14l/OfyPvz3SNE91/d/e8B2pYLRuVmJp/D3IiJE+11+Cf/ZCv9Fd/9XlJiyVsTc19Twf6AAAAB5lCvTwF4EinxH+M/lXfjX5f5OPJD7u/P8HgE5fYTIFXI1+QPCfzbC/947ovjrH4no+1sY/g8QAAAgrwoxzUV85DrCfy6vw7+uR67vPrLZRC6jY7S0T8jl5JcI/96H/2KrT4qo9n0M/wcGAABQR+WoHqJZ0S8J/7myDv8OD+b+brzROVrKJ/Ty3bahl7Wf+EP4zyr8F/3klig1aKIoU66q4f+QAAAA6omNrSJqlhouWhc+TfjPlWX4Fw/kvvK/nnmudjA6T0v15P9BxIZcSf474T+L8L/3D1FiwjJ+Ay8AABC031CsfuQ80a7gNcJ/7ozD/4O5r+oeyH31nwm2S+WMztVyPD+K/KGX7x4n/Gce/outPyuiW/Uy/B8EAADAeipFdxbNC+0i/OfOOPxretp9m2C7UcDoeG36J/Ty3ZWEf8/hv+ie30XJsYtETIXqhv/iBwAAFlamqqhTYpJoF/4d4T93huFf92Cuy2uMztemfkIuJw0h/HsO/5HLj4jo+PbG/4IHAABIUTG6rWheaBvhP3f68N8z95UUlwcZnbNN+RS8eqdiyJWk/xL+Mwj/e/8QJUfN4cgXAACYUmxsVVGn+CTRIewHwn9u9/DfS/tjniu/P2C7EGd03jbXs0fkDb2S9A3hP334L7r1BxHVrrfhv7ABAACyUrl0d9Eq/BDhP7cz/PfKY9cz95VjQ23H7zE6dpvmCb2cNJPwnz78F5+xWZSpfJ/hv5gBAAC8VbZMbdGw8CLCf25n+Nc8pLv8itG52xRP2OXkZqGXk/4i/LuE/x2/idIPP2v4L2AAAABf1SwxTLQvcJnwnyc1/IteeS79r1eeiy1tVn4ifhSFQi8nXyP8O8N/0c1XRHTTzob/ogUAAMipilFtRKuw/YT/PJddXLrR13amsM2qT8iV5I2Ef2f4j5y/XcRUrWf4L1YAAAB/KRtTWzSJWE/4z3NZJDhtslnxCb2S9CjhP8W+O6LEuEWiTLkqhv8iBQAA8L/K4v5ik0SHfD8Q/vNoLoneuS/3sVnpCb8gioZcSvqV8J/yvn+PwSb4hQkAABBY1UsOFO3zXSb857kkEvJc/HuC7UqkzSpPyOXkdYT/RFHk01siquUDhv9iBAAACJa40h1F23uPWzr893ZaZbPCE3LpbifCf6IouuGciL6/heG/CAEAAIKtQnRj0arALquHf9E77yXxcJ4L7W1KP6dEaOjl5B+sHv6LLd4rYqrUNfwXHwAAgJG/X0Cz0M3WDv95L4reeS9eS7CdC7Op+oRcSppn9fBffNYWUaZ8VcN/0QEAABiuTFXROPxdy4b/hx3yXHjDpuJT4HJyg9BLSX9ZOvy/sp6f9AMAAOAiNraKiA9fbN3wn/ei6JP3wl998l6sZ1PqOS7uCbmcfNbK4b/Ey6tEmbKVDf9FBgAAYD6VRYOItywa/i/qHs5z8dsWtj15bao8oZeSn7N0+Nd+xr/hv7AAAADMrW7hSZYM/33s3wUQj+S9MNymwlPwnCgScinpH1YN/yVHzDb8FxMAAIAs6haaatXwLx7Je+Gf/W0Xitpkf0IuJi2ybPgfPc/wX0QAAACyqR8x04rhX2j65Lkw1ybzE3YlsVropaS7Vgz/JV5aYfgvHgAAAFk1LDjbcuH/Ebu7/e65UMMm6xN6KWm7FcN/8envcfALAACQI5VFo/C3rRb+Rd+850XfvOd22GR8ClxK7GHZn/PPj/oEAADwy48IbRq2wmLh/7zoe8958Uie851tUj3nRL6QS8mXrRb+iy3azW/yBQAA4E9lqooWBT6wVPjvq8l7/mqC7Vw+myxP6MXkkVYL/0U3nhMxVesZ/4sEAABAMWVj7hNt791lmfD/aIq+ec89bZPiOSVCwy4m/WKl8F/k01si+v4Whv/iAAAAUFWF6MaiY96jlgn/j95zTvS95+ztobbjITazP2EXksdbKfwX3vGbiGrew/BfFAAAAKqrXKqL6JL7vCXC/6P3nBP9tD/mPTfaZuYn8pwIC72Q9DfLhP+v/xCleww2/BcDAACAVdQo3l90y3XVEuG/n+7s3x+3XQy3mfUJu5A8yTLhf7/2u/y+bvgvAgAAAKupX2iyRcL/OV3/vGdesJnxKfy9iAi9mPSbVcJ/5Nwv+Vn/AAAAhqgsWoausUb4v0f/LsC/Btq+LWQz2xN6IWmaVcJ/kc2XRUyVuib48AMAAFhT2ZjaosO9e5QP//3vOWuX98zLNjM9YZdEsdDzSf+xQvjXjn6jm3Q2/EMPAABgdXGl24juec8oGv7PpvXvwbZzRWxmeULPJ021RPjfnyhKPzzC8A87AAAA7O6LHGqF8C8G5Dsr+uc7M8lmiueGKBB6PunvVgj/xadtNPxDDgAAAHfNw5coFP7PZRj+dfec+TXBdqiA0fHfFnY++SkrhP+iH1wVMZXrGP4BBwAAgLtyZWqJTvm+Vjv85zujG3jP6SHGpn8hcoeeT76oevgvvPcPEdXmIcM/3AAAAMhY1VJdxYN5Lin32s8A1/Cv/fGeM5cm20Ruw/J/2PnEB5QP/9rP+3/2TcM/1AAAAMhcfOEpSof/gSn65zvb1bACEHo+ab/q4T9y+RFRplxVwz/QAAAAyFxsbFXRvsDH6r32k8/doHtO7zEk/Bc4m1xf9fBfdPd/RHSjjoZ/mAEAAOCduNKtxIN5zim5/A/Uwn++07rH8p5qGPQCEHYu+X2Vw3+RfYmi1IjZhn+IAQAAkD3xhScrHf4H2W0MavgPOSdKhp1PSlY5/Bdbf1bElK9m+AcYAAAA2RMbW0V0yv+lWq/95Dud1t2hIcdLBa0AhJ1Pnqhy+C+y908R1SbB8A8vAAAAfFOtVFfRK88FJcP/YykG5ft2fHDSvxC5Qs8mX1U2/O9LFCUmLDP8Q2u02LKVdUZ/HQAAAL5qFjFbtdd+hCP8P5bvlFYAvrfZRK6A5//QM3fbqRz+i376k4ipcr/hH1ijla9QTZSvwE8/AgAA8iobU1s8kO+IkuH/sXvtHr/321YBLwBhZ5M3qRr+NaUffd7wD6sZxFWuJSrF1TT86wAAAMiJusWeUeq1n8fcwr9eADYENvxfEsXCzyYlqhr+I9d8K8qUq2L4B9UMatSsJ6rXqGv41wEAAJDTg+DO+T9TcPk/5SgASUPDjhcLWAEIP5v8vKrhv8jXiSKqfR/DP6RmER/fQjSMb2741wEAAJBT1Uv1EL3zXFQw/J+yy3dyZOAKwJnkC6qG/+KvbTX8w2kmbdp21hn9dQAAAPhD27CVCr32cyrV4Hu/1b4LcCEw4f90cryq4b/orv+I6PtbGP7BNJPevfuJhIRHDf86AAAA/KFSVDORcM855cK/w+N5T9TzewEIO5M0R8XwX+TrO6LEpHcN/1CazfCnR+qM/joAAAD8pWXEHGVe+3EN/5on7v12tn/TvxC5w88m31Ix/BfZ+W8RU6eZ4R9Is5k2babO6K8DAADAXypGx4uEe04ptfynhH/xRL6TN/z6ewKEnU5upmT419b/Ce8Y/mE0mzr3NxJz5izQaf/a6K8HAADAX1pEzFYv/OtOiicKHI/3YwFIWqBi+C+y/TcRU5OAm9ZDCX1TC4D2r43+egAAAPylQnQD0fueU6q89uMM//eeFEPuPTnHf6//nEn+Sbnwv/eOKPn8IsM/hGYTW7ayeHnytNQCMHnKq/r/zuivCwAAwF+aF5qh1vJvD//aH29PtoncOc7/oWfvtlIx/Bfd+X8iphbrf7pfEC3apYZ/h2bN2xr+dQEAAPhLhej64uF7TikV/ofktxua/3jTHBeA8NOJi1UL/5oSk9ca/uEzo3HjX0xXAF6YMInvAgAAAKW0KbhAldd+UsO/5on8xxfk/PWfU0m/qBb+i+z5U0Q36mj4B89sOnTsni78O2j/ntFfHwAAgL9Ujmot+uQ9p8zyb3dCDL33xO0c/TSggieT6ysX/vfeEcXf2mb4h85sqteoK2bNesNjAdD+vWrV7zf86wQAAPCXTmHr1Ar/KYaFHK3jcwEIO5X4smrhv8ieOyK6PT/ZxlXFSjXEhAkvewz/Di++OFlUiqtp+NcLAADgD7VKPqTEaz+u4d/u+MScFIDDqoX/yFUnDf+wmUmFitXFqNHjsgz/Dtqfq/01Rn/dAAAA/tAj5DNllv9U957Y51P4L3hOFCl4KvEvlcJ/0T13ROmBEwz/oJnptR9vlv+0tL+G14EAAIAKGhYbodDyf0I8af/j3YER3xbKfgE4nfSIauG/6LZ/ipjKBFftJ/poR72ZvfOfFe2v1f4e/HQgAAAgs3Ix94k++U4qE/7tjosnCxx7KPsF4NvENUqF/z13RMkp6w3/kBlJC+vaz/kf/8JLPgf/tLS/l/xRnF4AACAASURBVPb3pAgAAABZtY2YL/1rP27hP/9xMSz/8eXZS/9C5Cr4bdIvKoV/TXTLnoZ/wIxQ5/5G4qGEvm6/w6+/aX9v7T9D+88y+v9eAACA7KhRqps6y789/Ith9x7P3o8DjTiTXFe18B+55rThH65AKV+hqoirXEt/pz8+voVo07azSEh4VAx/eqSYNm1mwEK/J9p/pvafrX0N2teifU3a16Z9jdrXavR/XwAAAGXSeLDAF+qE/xRPhZ6o5XUBCPs2cZxK4b/o7jui1BNTDf9gBboAaIe5Zi0A2tdGAQAAAGbVuOjzKrz241RAc/Q5rwtAwW+TPlYp/Bfd9YeIqd3Y8A+WUXgFCAAAIHMVoxuKfvecVib8P1XgmBiW/+jmbLz/n/g3ZcL/7jui+MKvDf9QmYF2qNuseVu/HwFrf0+OgAEAgOy6h25SJvzbC8Cxn73K/+GnEuNUCv+a0gNeNPwDZSb8GFAAAIC4dOKLjVQm/Ke692j5rAvAiaTHVAr/RXf8LmJqxBv+gTIj7b18fiMwAACAOF3F6Ab6a0DKhP8Cx8Tw/Ef7Z1kACp5IXK5M+N91RxSfv9vwD5OZVahYXYwaPc7r8K/9udpfY/TXDQAAEAjdw95TJ/xrf8z/zZKsC8DJpIuqhH9N6YETDf8gmV35CtXEuPEverX8E/4BAIDKGhV7VpnwP7zAUTE8/zdnM3/95xtRtODxxP+nSvjXRNdpYfgHSQbaKz2Z3QRo/x6v/QAAANXFRTdRJ/zrvvl/owoeKuK5ABxP7KJS+I9cdcbwD5FMtKNeTwVA+/eM/voAAACCISFkmyLh/6h4usBR8UzI0U6eX/85nviyKuG/6M47ouSYxYZ/gGST0atAL0yYxE/7AQAAltG68Axlwr9meP6jEzMpAEmbVQn/mqj2fQ3/AMmmeYt26QqA9nP+jf66AAAAguW+kr2VCf96ASjwzUaPBSDieNJlVcJ/5Gf/EDHlOVjNLm3pd/0dgydPeZX1HwAAWErZMtVF/3uPKhH+7b45n2H4jz4kCkQcT/xLhfBfbOcdUWL2F4Z/eGT1UELf1AKg/Wujvx4AAIBg6xb+rhLh/5kC34inQ765O9C2J3/613+OJtdXJfwX23FHlH7iFcM/OLKqc3+j1AKg/Wujvx4AAIBga1ZsnBLh/5kQuxEhR+ukf/3nWNJgVcK/JrplL8M/ODKbNm2meOWVGYZ/HQAAAEaoVaq7MuHf7siA9N8BOJY0V5XwX+zzf/H+fw4Nf3qkeGr4s4Z/HQAAAEbdAQy895gS4X+E9scC38zO4BWgpN1KhP8dd0TxhQcM/9DILiHhUZ3RXwcAAIBReoZtUiL82wvA4e3pXwE6mvSrCuG/2Fd3RKlRbxv+gZFdm7addUZ/HQAAAEZpXeQVJcL/iJAjmp/cwn/RAyJclfCvieo2xPAPjOwaxjfXGf11AAAAGKVuyb6qhH8xIuTw/xtqOx6SWgAKHU6qpUr418TU5CfX5FT1GnV1Rn8dAAAARqkUE69I+D8ing05IkaGHa7qLABHE7urEv6Lbblt+IdFBXGVa4lKcTUN/zoAAACM1D//fiXCv93hzqkFIPybxGeVCP/b74gSc3cb/kFRQfkK1UT5ClUN/zoAAACM9GD4BkXC/xHxbIHDw53fAfjmzlsqhP9i2/8UJccuM/yDooLYspV1Rn8dAAAARmpXeIYa4T/ksFYAXnctAFtVCP+aqEfGGf5BAQAAgBoaFR+mRPgfqRWAkEObnQXgyJ1vVQj/kV/+KaKb9zD8gwIAAAA11CzdRYnwb3fouMtPAbrzLxXCf+S2P0SZSrUN/6AAAABADeViaisS/vUC8A89/Bc+LiKUCP9f/imKb7pp+IcEAAAAahmQf5/84T/0sHgu9LAYW/RAuC38cGIlFcK/psSiI4Z/QAAAAKCW3mEfKBH+dffuL28r/M2fjVQI/5Hb/hQlX9li+AcEAAAAaukWsUiN8B96SIwqcKiBrdDBxK4qhH9NqZELDP+AAAAAQC1ti0xVIvxrRoYc7mSLOHxnkArhX1O63wTDPyAAAABQS9PIp5UI/6O0P4Yc7G+LOJw4RoXwH/nFnyK600DDPyAAAABQy/0leysR/lM8Z4s4eGeGCuFfE9O4i+EfEAAAAKilelQHVcK/9j9PsxU6lLhMhfCvF4DaTQ3/gAAAAEAtcdGNlQj/dgcX2wofvLNFhfAf+fmfokzFmoZ/QAAAAKCWcmVqqhL+xeiQA5tshQ8m7lEh/Edu+YfhHw4AAACoaXCBw/KH/9CDYlTIgV22QgfuHJU9/Bf//E9RYu33hn8wAAAAoKYBIV9JH/5THNZeATolc/h3FICSi08Y/sEAAACAmvqGf6hC+BejQw+csBXaf+eCrOG/uMNnf4qSb+41/IMBAAAANSUUXKdA+D8oxoQcPGcrfCDxexnDf2oB+Myu1GtfGf7BAAAAgJp6RqyUP/zr9l+1FdqfeFPm5d+h5PTPDf9gAAAAQE0PRiyVP/yHHRCjww5ctxXel/irzMu/7tM/RampHxn+wQAAAICaHohYJH34t9v/i63w/jv/lnn518K/XgAmbTL8gwEAAAA1dS80T4Hwf0CMCT3wm63Qvjt/yrz8pxaACesN/2AAAABATV0KvyF9+H/e/h2AP2xF9t35S+blX/fJn6LUuNWGfzAAAACgps5FZkkf/lP8ZVMh/GtKP7/S8A8GAAAA1NS5yHQVwr/OJvNrP47wrxeAMRQAAAAABKcADJc0/D8ftl/YZF/+NSU+pgAAAAAgOAVguMThf6y9AMi9/Gvh314AVhj+wQAAAIDaBWC45OHfWQAkXv7t/hClR1MAAAAAELgCMFyB8G8vAJIv/1r4L/ERBQAAAACBLgBHpQ//7gVA0uVfC/8UAAAAAARS5yKvKhH+x6UWAImXfwoAAAAAglUAnpY8/I8L2ydssi//uq0UAAAAAAS2ADytQPjXC4Dsy78W/ikAAAAACKQuaQqArOF/XLhrAZB0+U8tAKMoAAAAAAh8AXhG4vA/PrUASLz86z78Q0RRAAAAABDgAvCM5OHfXgAkX/618F+SAgAAAIAAF4BnFAj/7gVA0uVfC/8UAAAAAAS8AITIH/7Hh3+dUgAkXv51WygAAAAACJwuRV9VIvy/oBcAyZd/LfxTAAAAABCMAjBC8vDvXgAkXf5TC8BzFAAAAAAErgCMUCD8OwuAxMu/7gMKAAAAAAKna2oBkDv82wuA5Mu/Fv4pAAAAAAh8ATgiffhPLQAyL/8UAAAAAARa16LTlAj/E7QCIPvyr9tMAQAAAEDgC8Czkof/CeF7hU325V8L/xQAAAAABLoAPKtA+HcvAJIu/6kFYCQFAAAAAMEoAIelDf/OAiDx8q8ptYkCAAAAgGAUgMNSh/+JegGQfPnXwj8FAAAAAIEvAIelD//uBUDS5T+1ADxLAQAAAEDgCsBIBcL/xIKOAiDx8q97nwIAAACAwOnmWgAkDv8TC+4RNtmXfy38UwAAAAAQlAIQKnf4f9FeAORe/ikAAAAACEoBCJU//KcWAJmXf917v1MAAAAAENAC8JwC4V8vALIv/1r4pwAAAAAgkLqnFgC5w797AZB0+U8tACMoAAAAAAhkATgkffh/KbUASLz86zb+LqIpAAAAAAiQ7kVfUSL8v1Rwt7DJvvxr4b80BQAAAAABLgCjFAj/7gVA0uVfC/8UAAAAAAS3AByUMvw7C4DEy79uAwUAAAAAwSoAB6UN//YCIPnyr4V/CgAAAACCUwAOSh3+J7kVAEmX/9QC8AwFAAC8VymF0V8HAMhUAA5KH/6dBUDi5V+3ngIAAJkH/eww+msGAHMWgNEKhH97AZB8+dfCPwUAANJyD/UxZdzFN3hExNd7JN3/njIAAHEZ6pGmAMga/icV3CVssi//FAAAcOU59DuULVdTDO23TQzt94UoX66Gxz+PIgAAcRkWAJnD/8sRjgIgefgvvY4CAABZBX+Hzm0milFDj4tRQ46LTq0mZvnnUwIAIC61AMge/u0FQIHwTwEAAO/Cf7VqzcWzTxzRC8DoIcfFyMcPiWpVmlMCACA26wKgQvh3LwASh39NzNMUAABW5F3wd3ik14rU9X90ikcfXObVX0sJAFDG6gUgTP7w7ywAkof/qLUUAABWlJ3wX1HEN+wrRg09kbr+a8bojon4+n31P8f7ImD0/+0AEFw9ik1VIvxP1guAAuGfAgDAmrwL/pqy5Wrph79p138t/GuGP/qFqFCuZuqfTwkAgLgMC4Ds4X9yxE6XAiBx+NcLwHAKAAAr8S74R8fYdWzzksf1f8zgY2Ls4GOiU6sXU/98b4oAJQCA1QrA8wqEf2cBkDz8R62hAACwkqxe/XEGf031ai3EyJTD34zWfy38a5577KCoXqWF21+bWQngJgCAlTyQrgDIGf7tBUCB8E8BAGAdmYV/99Xf4eGHVmS5/tsdFX17LEv311MCACAuTQGQN/xPcS0AMod/CgAA6/B++Y+OqSDiG/ZLDf+Zrf9a+HdoVL+v/tdmrwQY/d8LAASrAOyXOvynFgDZw3/UagoAACvIXvgvV762GNr/S8/rfwYFYNzgo+IZ7SC4fE1KAADEpi0A8od/vQCoEP4pAACs/upP2vCv6eRy+Ovt+q8VgHGDvxFdW05M/ft4UwJ4FQiA6h4oNkWJ8D8lYoejAMgd/vUC8NRywz8YABA42Qv/1au3TPkdf7O3/mvGD/5GjHnsgKhetaUPJcDo/54AIDgFYJyk4T+lAMgf/qNWUQAAWHH9zzj8R0dXEH16rhDP+bj+j08xoPtS/e/lbQnguwAArFIAxkkc/qfqBUD68P9fEb3qvxQAABZ/9cce0qOiK4hGDfunhH/39X+0l+u/wwuPfyOa1ns0wxLAdwEAWLUAjJM8/LsXACnD/+96+KcAAFCX9+FfC+ply9kPf3O6/r+gF4AjYkTfz0SFcrUoAQAs74FiU5QI/1MLOQqAlOHfHvx171IAAFj11R9n+NfW/05tJ/lt/dcKwITHj4hurSbqf29vSwCvAgFQ0YN6AZA//NsLgOTLvxb+KQAA1JS9V3+qV2+lH/6mFoAcrv8TUowbtF9Ur9LKXgL4LgAAqxeAcLnD/ytuBUDS5T+1AAyjAACwbviPii4vHum10uf1f5yH9V8z8fEjYlC3pfp/hrclgO8CAFCyAITLHv6/0tlkX/51KykAAKz86k950bjhAD38+2v9dysAgw7rmtbrq/9nZe9VIKP/uwQA/xWA8VKHf9cCIPnyr4V/CgAAK6//2uHvk/23BWz9dxSA5/p8IiqUq8mrQAAsqadbAZAt/NuDf2oBkH35pwAAsOr673j1x3H4m1EBcPzGXzld/19K0V0/COZVIABWLgBfSxb+3QvAtNQCIPHyr1tBAQBgsfU/JfzXqN7a/fA3QOu/owBMGPC1qFm1VZpXgfguAACrFICvpV7+p6UWAMmXfy38a8pQAABY+PA3GOv/S4MO6QZ1W8J3AQBYTs9ik6Vf/tMXAEmXf3391wrAkxQAANZ69Sfd4W+A139HAZg06JBoWvdRDoIBCKsXgAmSLf9221MKgMTLvxb+Y5ZTAABY6dWfCqJceefhr3fr/zG/rP+OAjCqz0f67xDs/huE8SoQAOsUgAkSLv9a+H9VLwCSL/9a+KcAALDc4W+7lw1b/zUvDzooerSYwKtAACxZACZIuvy/mq4ASLr8pxaAoRQAAGqt/87w7/nw17f1/2iO1v9Jgw7qBeDF/ns4CAZguQIwQeLl370ASLz8696hAACw9uHvqCCv/y8PtBvchYNgANYpABMkX/6dBUDy5V8L/xQAAFY8/M1s/R8T4PVfC/+TdQdEs7qPcBAMQHm99AIg9/KfrgDIuvxTAABY/fDXqPXfUQCe772Vg2AAlioAEyVd/jXTC39pLwAyL/+6ZRQAANY6/PXP+p+2AGR//Z+SoicHwQAsUgAmSrz8a+FfLwCyL/9a+KcAALDE4e/QIz6t/2MDuP47CsDLHAQDsEABmCj58p++AEi6/KcWgCEUAAAqH/6+67f1f7yf13/N1IH7xRNdFvJdAADqF4CC8i7/7gVA4uVft5QCAEDxw99hJwK2/k/I4fo/NaUAvDJwv2jBQTAAlQtAQbmXf80MvQBIvvzr4Z8CAEDlw98B2wO8/h/J8frvKADjEj7kIBiAknpFTpZ++Z+RrgDIuvxTAACofvgryfqv679f9Gz+Aq8CAVBOr8iXpV/+7balFACZl3/NEgoAAPUPfzNd/4cYv/5r4X9a/31iyqO7RK04DoIBqOWhNAVAxuVfC//2AiD78q+F/yX/oQAAUPPw1+D1P7MCkNH6rxUAzdAub/NdAADKFoCXJF3+NTPdCoCsy78W/jVPUAAAqHb4ezLI63/aApA+/E/OYv3XvJqiRR0OggGoVwBeknj5n+lWAGRe/jWLKQAAFDz8lWD9z6wAvNBrCwfBAJQqAC9Jvvw7C4Dsy78W/ikAABRa/zvoh79yr/+v9vtaTO/3tejVfDyvAgFQqADslnr5Ty0A0i//DoMpAAAUOvxNVwDkWv+18K+Z1ncHB8EAlCwAkyRc/jWzUguAzMu/ZhEFAIAah78P64e/ma//owO+/h/yfv0f6Az/qQUgJfxrZvT7WgzrzEEwALUKwCRJl38t/M8q/IWwSb/8a+F/0X9ELAUAgOSv/sQ7Dn/9uf4PNm79dxSAGf32ipZ1+nAQDECJAjBJ4uVfC//uBUDW5V8L/xQAAAoc/g7RD3/Ntv4fzNH6r4X/mf32iom9PuAgGID0BWCS5Mu/roijAMi8/GsWUgAAKHL4m1EBkHz9n5kigYNgABJLcCsAci7/Wvi3FwDZl38t/FMAAEh++PtMhoe/2V//x5lw/XeY3ne7qBXXgoNgAJIXgF3SLv+a19wKgKzLv8PjFAAAkh/+ZvmjP7O//r9gkvV/lm6PGN5xAd8FACBxAdgl9fL/mlsBkHn5pwAAkPzw91kvwr+/1v+JPq//B3K0/mvhX/Na3z2iFQfBACSUEDlJ+uXf7nNhk375fzsFBQCAzIe/Xv7GX/5e/18K4vqvhX/NixwEA5BQ7+KTpF/+tfDvVgCkXf4pAAAkPvy12vqveb3vbvFw83G8CgRA2gIwWdLlX/O6owBIvfxTAADIfvib7fX/mLTrv6MAzOzzpbiPg2AAEhaAyRIv/687CoD0y79mAQUAgHyHv2Zb/1/2av3fn+P1XzO7727xdHsOggHIVQAmS778py8Asi7/WvinAACQ9fDXxOv/lACt/3oB6GPXus7DHAQDkKgA7JR6+XcvADIv/w6PUQAAyHP4K+P6/4of1397AdglJvfcxEEwACn0Lv6S9Mu/ZnaRz4RN+uV/wX9E2fkUAAASHv7meP0/KvX6/0afXbqHm47lVSAA0hSAKRIv/1r4dy8Aki7/WvinAACQ6fA3s/V/lDTr/74cr/+OAvB6bw6CAchRAKZIvvy7FwCJl38KAAApD3+9XP/HmHT9f9VP6/+bKZ5pP5fvAgAwtYfdCoCcy7+zAEi+/OvmUQAAyHH4m9P1f6wZ1n+X139mZFgAvF//7QVgp3irz07R+j4OggHIUAB2SLv8py8Aki7/WvinAACQ6vDX7+t/2gJg/Po/Kxvrv6MATOn5PgfBAExeAHZIvfxr3ijqKAASL/+pBWAQBQCAuQ9/nQXAeuv/61ms/5o5fXaKPk3H8CoQAFMXgKkSL/9a+LcXAMmXf91crQC8Y/gHA4AVZPfwt4374a8f1//xEq//ngrAGw99wUEwANMWgKmSL/92nwqb7Mu/Fv7Lzv0/CgAAUx/+BmP9n2D4+r83R+v/nN47dM9xEAzAzAWgkLzLvxb+nQVA4uVfC/96ARhIAQBgtsPfgWnCf6DX/yPGr//9fF//tfA/N0UbDoIBmLEAFJJ7+de8qRcAyZd/3Zz/E2UpAABMdvj7eMrhr1nW/8wKgJHr/1su67+jALzywAZRiYNgACYsAK9IvPy/ma4ASLr8a+G/HAUAgOkOfyf7tv4P8df6n7YApA//k026/mvm9f5KPMJBMACTFYBXJF/+3QuAxMu/Fv4pAADMdvj79NBjFl7/9+Ro/dfCv+bNhz7nIBiAafRJUwBkDf/2AiD58q97iwIAwJyHv5n9xl+s/57Xf8383l+J59rP4bsAAEyhT/EXlQj/bxX9xKUASLr8a+GfAgDATIe/I4Z963H9f86k6/9Uk63/81NtF+3u681BMADTFIBpkod/ZwGQePlPLQADKAAAzHX4a471/5D36/9AZ/ifZoL1X7Og93Yxvcd6DoIBmKIATFMg/NsLgOTLv+5NCgAAcxz+pl//T/pv/R8s2/q/O8frv1YAFiRsF/0acxAMwFiPuBUAecN/agGQefnXwj8FAIDZDn+9Wf8zKwCs/1+lhv+3E7aLub0+E3U4CAZgigKwXerwP0crALIv/xQAAGY5/FV1/Z/ul/V/l8/rv1YA3k74Uoxp9ybfBQBgcAHYLn34txcAyZd/3RsUAADmOfz11/o/zq/r/0G/rf8zg7z+OwrAwoQvOQgGYGgBeFWB8D+n6McuBUDS5V8L/xQAAEYf/ma9/p9Qdv1/LQjr/8IUMzkIBmCiAjBdwvA/p5ijAEi8/KfqTwEAYPzhL+t/5j/6Myfrv2ZRwpeif+PRvAoEwPACMF3S8G8vAJIv/5rysykAAIJ/+Fst5fDXq/U/gx/9mZ31/wVl1v+dPq//WvhflLBNzOv1iagT14yDYACGFYDpEof/uW4FQNLlXwv/FAAAZjj8Deb6n1kByHz9PyD1+q8VgMUJ2zgIBmBYAZguefh3FgCJl38KAAAjD3/Nsv6/ZNL1/00/r/+OArC41zbR/r4EDoIBBLUATFcg/NsLgOTLv+51CgAAYw9/zbb+v2zS9X+OH9Z/zZJe28Ssbms5CAYQNH1LTFQi/LsXAEmXfy38UwAABHP9b59y+Jvz9f+Yhdf/tAUge+v/kl5f6DgIBmBEAZghcfifV+yjlAIg8fKfWgD6UQAABPfwd4TU6/9+/6z/ff27/i/wcv13FICFD37MQTCAoBaAGZKHf3sBkHz5171GAQAQnMPf3imHvzKt/1MUXf+XphjbZjbfBQAQlAIwQ4HwrxcA2Zd/LfxTAAAE+/DXm/V/lEnX/3QFoN8+Kdd/RwFY1utz0b4mB8EAglUAtkkd/p0FQOLlP7UAPEoBABCcw1//r/9HDV3/XzV0/U97/OsM/wu9WP+18K95jYNgAEEpANukD//z9QIg+fKvm0UBABC8w1/V1/8ZJl3/MysA7/T6XAxsPIpXgQAETN8SE5QI/ykFQO7lXwv/FfQCsMzwDwYAdQ9/h6ce/vq2/o+x4vrfJ7vr//Zsrf9LU8K/owAsfnCrqMtBMIAAFoCZCoT/+cW2phQAiZd/LfxXmPVvCgCAoBz+plv/h/m2/o81w/rvcvw7I8MCIM/6r3vwM/ECB8EAAuTRNAVA1vBvLwCSL/9a+K8wkwIAIHCHv8+khv/Arf8ZFwDj1/9Zkqz/7/T6TCx/0K4jB8EAAlwAZkkc/he4FQBJl38t/FMAAATj8Jf137UAmG/9dxSAtzqv5iAYQMAKwCzJw/+CSEcBkHj5Ty0AfSkAAPx/+Gvc+n9EivX/jYCs/1/6vP6v0H0qBjUcyatAAPxeAGYpEP7tBUDy5V83gwIAILCHv8Fc/ycYvv7v9Xn9f8vg9d9RAJZ1/5CDYAABKABfSB/+UwuAzMu/Fv4pAAACcfhr6fW/n7zrv2Zlj0/FhJav810AAP4vAEXkDv8LIj8UNtmXfwoAgEAf/ppt/c+sAEix/vcO7PqvhX/Nuz0+FR1rPsRBMAD/FYAi8of/t/UCIPnyr5tOAQDg38PfHK//Q/y1/qctAOnD/2STrv9zc7z+b/N5/bcXgE/EnI6rRKUoDoIB+K8AvCZ5+HcvAG/LG/415SkAAPx4+Ou5AFhp/d/j1/V/fpDXf60AaB6vz0EwAP8UgNcUCP+eC4Bk4b+iVgAeoQAA8M/hb0bhP7UAsP77bf1/O8Drv2ZVj0/E8u5bOAgGkGP9UguA3OHfXgDelj/8V3yVAgDAH4e/q7xe/58z6fqfWQGw4vq/KsWLHAQD8EsB+Fz68L8wXQGQNPxTAADk9NWfhimHv76u/6MDvv4f8n79H+gM/9NkW/8TMlr/v/B5/des7vGxrhMHwQByoF+JF5QI/+4FQOLwTwEAkPPD3x1ZrP8n/bf+DzZu/Z/u0/q/O+Dr/6IArv+OAjC//UoOggGInBQAFcL/wsgtKQVA8vBfcRoFAEBgDn9VX/9nmnT9z6wA+LL+a9Z0+1gMrv8srwIBEL7on6YAyBr+7QVAgfBPAQDgj8PfbP3oT8uu/7sMWf+X5XD9X5NSAN7tulnUq9iUg2AAIicFQObwv8i1AMgc/vUC0IcCACD7h78PZXL466/1f5xf1/+0BcCa6/9yH9b/Nd0+Emu7fSReajGL7wIAEL4WANnDf2oBkD38V3yFAgDA18PfU0Ff/18w6fr/mtnX/wyOfx3hf6UX678W/h061+zJQTAAkd0CoEL41wuACuGfAgDAl8PfxzI5/JVj/T8Q0PV/tqnX/898Wv8167p9JN5uv0JUiqrBQTAAkZMCIGP4dy8AEod/vQA8TAEArMvXw18f1v8MfuMvq6z/bgWg905p13+tAKzrtlU8UX8ErwIBEL4WAFnD/+LiH6QUAMnDf8WpFADA2rJ/+Dssk8PfYK7/EyVe/+eYdP1flcX6r4X/9d22itVdN3EQDED4UgBkDv/2AqBA+K9EAQAszLfD3+EmXf+dBYD131/rv6cCoJncYibfBQAgslMAZA//7gVA4vBPAQCsyrfD38zCv9nW/5e9Wv/3W3j9/zTb679rAdjQ7UMOggEIbwuACuHfWQAkD/+VplAAAGvy7fDX/+v/saCtDH0ZWQAAIABJREFU/1NMt/6nLQDyrP8bNF0+FIs4CAYQm7UBJV9QIvzbC4AC4Z8CAFiRD4e/HSZnGP5HsP6L2X39u/4vkGT91wrAxi4fiiEcBAOI9aYAyB/+l9gLgPzhXy8AvSkAgLX4cPj75DHW/4Cu/2lf/3GG/4UmXf8dBWBt5/c5CAYgMjOg5Hglwv+S4ptTCoDk4b/S5H9RAABL8d/hrzfr/yiTrv/pCkC/fRZe/z/xef3XvNdli5jSdAbfBQAgMisAKoR/ewFQIPxTAAAr8fHw96lTflv/x3hc/48auv5n9voP67/n9d9RADRdq3MQDCDOqwIga/jXC4AK4Z8CAFiJD4e/g3ZYcv2fYdL1f7EJ13+Hxe2XcxAMQGRVAGQO/0tTC4Dk4b/SyxQAwBp8PPw1ZP1PWwCMX/9n+br+98nu+r89W+v/UpOs/++nePL+Z3gVCIDwVABkD//2AqBA+NdUoAAAFuC/w9906/8w39b/sWZY/12Of2dkWADkWv/fydH6/7HP67+9AHwgNnTeKOpzEAwgNn0BUCH8uxcAicN/nFYAEigAgNp8PPwN8vqfcQFg/c/J+r8iiOv/pi4f6F5pOp3vAgAQrgamKQCyhn9nAZA8/MdNogAAavPv4W8w1/8JJl3/nQWA9d91/dcLQKcPxOZOH4huHAQDiM24AMgc/pcV3yRsKoR/CgCgOh8Pf02x/h+RYv1/IyDr/5dSrv+OArCs7TIOggGItAVA9vDvXgAkDv96AXiIAgCoKaeHv6csvP7v9Xn9f8uk6/+7Xq//H+Vo/d/cabP4oNNmMez+p3kVCIBwFAAVwv+yEo4CIHn4j3uJAgCoy8fDX9Z/z8e/Pqz/c41Y/90KQMbhf3WA1n9HAdjYcQMHwQCEewGQO/zbC4AC4Z8CAKgq+4e/vdwOf829/mdWAPy//u/x//rf23zrf2YFILvrv8OrTV/luwAAhL0AyB/+33EtADKHfwoAoKIcHP76c/0f4q/1P20BSB/+Jyu7/m8zbP1fn4P1X7NFt4mDYABiYMlxSoT/1AIge/iPe5ECAKgnp4e/WRUA86//U026/s+30PqvhX/NirZLOQgGLG5gqXFKhP93SrwvbCqEfwoAoJocHP5msf6nFgDWf7+t/29na/3/Qrr1/8MUT3EQDAirF4C5CoR/9wIgcfjXC0AvCgCgjpwe/mb39R8rrf+7A77+LwrG+t8j++t/+gLg3frvKACbOq7jIBiwsEFpCoCs4d9ZACQP/3ETKQCAOnJw+OuH9X90wNf/Q96v/wOd4X+abOt/gvnX//ezsf5rtnZ6X0xvOo3vAgAWNcilAMgc/pfrBUCB8F+ZAgAowh+Hv0Fc/wcbt/5nVgBY/31b/zdnsv5r4V/zUaf3RbfqD3IQDFi4AMyTPPy7FwCJwz8FAFBFDg5/pVz/D/pt/Z9p0vU/swJg9vXfUwFY2XaxqMxBMGDJAjBPgfDvLACSh//KEygAgDUPf6fkcP0/oez6n1kBsIf/XYas/8tMsf5v8Xn9t3tPDL//KV4FAizmsVJjlQj/y0u8J2wqhH8KAGDxw98grf+ZHf+y/vu2/i8PxPrfLXDrv+bjDu+JzW3XigYVm3AQDFi0AMyXOPyvcCsAEod/vQD0pAAA1j78Df7671YAWP+9X/8zOP51hP+VQV//0xaAjMO/swC8pxcAzaymr/BdAMCCBWC+5OHfWQAkD/+VX6AAAJY9/DXR+j/R5/X/QEDX/9mmXv8/k279d/ikw3uiBwfBgKUKwHwFwr+9ACgQ/ikAgNUOf3fmfP3P4Df+ssr671YAersXANZ/79Z/Lfx/0mGjWN1mEQfBgOUKwFapw79eAFQI/xQAwKKHv6z/fln/55h0/V9l8vVfKwCfdtgonuYgGLBQAdgqffhfWVIvAPKH/8rjtQKw1PAPBoBgHP4edwv/w026/r8k5fqftgCYa/1f44/1v4un9X9zttf/T1N8yEEwYKkCsEDy8G8vAAqE/8rjfxMVKQCAtQ5/JVv/X/Zq/d/vn/W/r4zr/6fZXv/XmWD913zWYaN4rfFUvgsAWKAALFAg/K8sudGlAEgc/qtoBeBBCgCg/uHvaa8LgG/r/7Ggrf/pfvQn63+O1/8NBqz/9gKwQfdA9R4cBAMKe1wrAAqEf2cBkDz8VxlHAQBUP/wd5Hr46yH8j5B4/X/FpOt/ZgWA9d++/mvh//MOG8TaVgs5CAYsUwA+lDb8v6sXAAXCPwUAsMLhb7DX/6MWXv/Tvv7jDP8LlV//N/m0/n/ezu7ZOsN4FQhQvgB8KHX4dy8AEod/vQA8QAEAVD38fdL18DcH6/8oadb/fdKs/4v9vv5/4pf1/70gr/+OAvBxq9UcBANKF4APpQ//zgIgefivMpYCAKh9+BuY9X+MSdf/zF7/Yf33bf3fFIT1/4t263Wz46fwXQBAQY+Xel6J8G8vAAqEfwoAoO7h71NehH9/rf9jzbD+u7z+MyPDAmCl9f/jgK3/HwRg/XcUgG3t1osHq3IQDKheABZKGv7fLbnBXgBkD/8UAEDlw1+j1/+0BcD49X+Wr+t/n+yu/9uztf4vlXj9z6wAZGf935Zifau3OQgGFC4ACyUO/6u0AqBC+K/yPAUAUPHw177+n87e+j/Meuv/6yZd/9+x6Pqv+bLdOjGSg2BAyQKwUPLwby8ACoR/CgCg6uGvcet/xgWA9T8n6/8Ki6z/29qt0wvAZ61WiXgOggGlCsBCBcK/ewGQOPxrKvWgAAAqHf5mvP6fMmz9n2D4+r9XufX/Xa/X/4+Cuv5/5If1X7O93TrxZvzLfBcAUMTg1AIgd/h3FgDJw3/VMRQAQL3DX7Ot/0ekWP/fCMj6/2XO1/8HZV3/0xYA79Z/RwHY3notB8GAUgVgi/Thf7VeABQI/xQAQK3DX2nX/0HmW//f8nb99/CjP1n/06//mRUA9/BvLwAbmi/gIBhQqAAskjz8ry653qUASBz+KQCAwoe//lz/h0i8/vfzz/o/16Tr/2op1v+N2V7/v0oxss6TvAoEKFAAFikQ/leXchQAycN/1dEUAECJw99hxzNd/z0XAGPX/0lBXf/3+HX9n2/S9T+zAiDT+u8oAF+0epeDYECxArBY0vBvLwAKhH8KAKDo4a8p1/+0BSB9+J+s7Pq/zbD1f71J1/8vvFj/d+jWiLc4CAaUKQCLJQ7/a9wKgMThXy8A3SkAgNSHv8NPK7v+Z1YAWP+dx7/ZWf83mnT9/zKD9d9RAHa2XiN6Vu3OQTAgeQFYLHn4dxYAycN/1VEUAEDqw9/HdmZ7/X9W4vV/mknX/8wKQPr1/wsLr/8bvF7/7QVgTWoBeL/5fA6CAYkLwGIFwr+9ACgQ/ikAgLzrf1vt8Nfn9T9tAcjB+j9YtvV/d8DX/0WmXf8/lHL9dxhVZyivAgESeqL0GCXCv14AVAj/FABAscNfP6z/owO+/h/yfv0fqMb6v8Sk6//7kqz/ml2tV4svW6wQ8RUbcxAMSF4Alkga/teWWpdSACQP/1WfowAA0h7+Wnz9n+6X9X+Xhdf/LenC/2YTr/9aAdjVcrWYV28S3wUAJC4ASyQO//YCoED4pwAACh3+Srn+H/Tb+j9TuvX/c9Ov/1sCtv6vz/b6r4X/3Sl6cRAMSFkAlkge/t0LgMThv5pWALpRAACZDn8HaIe/flv/Tyi7/r9m0vV/mcTrv7MAGLP+OwrAB43nchAMSFYAligQ/p0FQPLwX20kBQBQ4vA3SOt/Zj/6k/Xft/V/eSDW/27qrv+7W64Se1quEqNrcxAMyGKIXgDkD//2AqBA+KcAAHId/g7VDn/9uf5n8KM/s7P+v6DM+r8zuOt/Bse/jvC/Mujr/wdSrf9a+Nd81WK5aMxBMCBdAVgqcfhf51YAJA7/1Ub+U1TqSgEApD78NdH6P9Hn9f9AQNf/2aZe/9O+/uMe/leZdP3/2C/r/zqf1n/N3parxPx6L/JdAECiArBU8vC/rtTalAIgefiv9iwFAJDl8HeYFv4lW/9fMun671YAWP/9sv5/GsT1f2+qd8VDVbtxEAxIUACWKhD+7QVAgfBPAQDkO/y1FwDWf3+u/3NMs/5/Kv/670UByHj9X5ut9V8L/1+3fFdsaTyHg2BAsgKwTNLwn1oAZA//FABAjsPfzNb/4X5f/49ZeP1PWwDMtf6v8cf638XT+r9ZuvX/6xTP1x7Cq0CAJAVgmcThf33ptcKmQvivNoICAMh0+OvN+j/CpOv/y16t//v9s/739e/6v8Ck6/86i6//mn0t3xW7WizjIBiQoAAskzz82wuAAuGfAgCY//DX4/r/lNzrf7of/cn6n+P1f4NJ1/9tAVz/tQKwr+VKsYCDYMDUBWCZAuHfvQBIHP41cV0oAIAMh7+qr//pCkC/fRZe/z/xy/r/nknX/8wKwC5NNtZ/Lfxr9rdcyUEwYFJDS49WIvyvL70mpQBIHv6rP0MBAMx8+Gvs+n/U0PX/VUPX/7THv87wv1D59X9T0Nf/HTlc//en2Br/FgfBgFkLQAn5w/8GvQAoEP4pAICZD3/P+H39HyXx+j/DpOt/ZgWA9d+39X+XD+u/5kCzFWJs7Sd4FQgwaQF4R/Lw714AJA7/FADAvIe/wVj/x7D++339X2rS9X+T0et/u8Cu/wea2QvAnqZLOQgGTFgA3lEg/DsLgOThv/rTFADAnIe/adf/00FZ/8eaYf13Of6dkWEBsNL6/3HA1v8PTL/+r872+q852GyFWFSXg2DAnAXgfanDv70AKBD+KQCAGQ9/z5hs/U9bAIxf/2f5uv73ye76v90y639mBcDI9X9PNtZ/RwHQ9K7ahYNgwFQF4H3pw797AZA4/OsFoDMFADDX4W8O1/9h1lv/Xzfp+v+OxOv/RyZd/7/OYv3XHGq2XHwS/yYHwYBJDC09Sonwv7H06pQCIHn4rz6cAgCY7fDXLOt/xgWA9T8n6/8Kadf/90y7/u9vlnEB0IzjIBgwVQFYLnn4txcABcI/BQAw2+FvSgHwuP6fMmz9n2D4+r9XufX/Xa/X/4/UXv+zOP7Nzvp/MCX8a/Y1XSyacBAMmKIALFcg/OsFQIXwTwEAzHX4a+71/4jx63+/rNf/NwKy/n+Z8/XfrQBkHP5Xm3T9/0TC9f9wiiV1J/JdAMBgT7oVAHnDv7MASB7+KQCAmQ5/MykAEqz/mRUAI9f/t7xd/3t7t/6PazNXjG8z18D1f6vh6/9nhq3/73q9/tsLwDviSLN3OAgGTFMA3pM6/L+nFwAFwn/1pygAgFkOf4Oy/g/x1/qftgCkD/+TTbr+z83B+r+g5yeiflwr3cKen1hw/d+YYfj/wqTrv6MAfMpBMGCCAvCe9OHfvQBIHP5rUAAAkxz+erf+ey4AVlr/9/h1/Z+fjfV/UKNxoniJaN3gpuMCuv5nVgBY/71f/zXfNHtHjK89mFeBAAMLwAoFwv97UY4CIHn41wtAJwoAYIrDXx/W/8x+4y/Wf9/Wf08FYFbXDaJSmVqpBaB8mVri9a7rg7b+6wWA9T/b67+jABxouoiDYMAgw9IUAFnD/3tRq4RNhfBfYxgFADD+8Nd/6/9zJl3/pyqw/neu82hq+HfoVudR/6z/PbK//qcvAOZY/78Myvq/Mlvr/zfNlumW1B3PdwEAgwvASonD//tuBUDi8E8BAEx8+CvF+n/I+/V/oDP8T5Ns/R/Xfk668O8wsc1bplj/3w/q+r/B6/X/KxOs/1r4P9rErg8HwYBhBWCl5OHfWQAkD/96AehIAQCMO/zN6fp/0n/r/2Dj1v/pPq3/uwO+/msWPGQ//C1RIiZD8XGtxJKeH7P+e7n+7zRo/XcUgC/iX+MgGDCgAKxUIPzbC4AC4b/GkxQAwJSHv35Y/0dLvP7PNNH6P7DxWFGiZEymHm/yvIXX//U5Wv93B3H9P6ZbKl6o/hivAgFBNCxqlBLhP6UAyB/+7QVgieEfDMCah7+s//5b/3cFZP2f1X2DiCtbK8sCUKFsLfFm57UGrf9b0oX/zZZZ/1dka/3Xwr/mcOOFoknFeA6CgaAWgI3Sh/9NWgFQIfzXePIfFADAbIe/QVr/x/l1/T+o5Prfqc6jKSG/TBZiRNfafVIKgPnW/8wKgNXWf83xJkvF0jocBAPBMizqOSXC/6aod4VNhfBfYygFADDm8Nff6/+JHK//L5h0/X/NoPV/bLu5qQG/ZBYcf97Etm9Ksf47C4C51v+9QVj/j6c40WSJ6BPHQTAQrALwrgLh370ASBz+NZUpAIB5Dn9Z/7Nc/2cHYf3XDn/rxbV0hvxSWUj58xrGtRRLu2/13/rfLTjr/8d+Wf/X+X393xeg9d9RALbFz+IgGAiCp9IVADnDv7MASB7+a2oFoAMFAAju4W8A1v8MfvSnNdf/nX5Z/7XD3/TBP9YD9yLwRMMxWRaAwKz/Hyi//mdWALK7/jtM5CAYCHIB2CBt+LcXAAXCf80hFADAyMPfp0y6/k/0ef0/IP36P7Pbev3wN/PQ77kMVClbS7zVcU268L+K9d/v6/+hHKz/mpNNlogjDReIphwEA0EqABukDv+b3QqAxOGfAgAE4fD3oVXSr/8vmXT9fzMA63+n+/qmC/+lNKU9yKAEdK3VJ8v1f41J1/9PLbT+n4zXLBbv1BnLdwGAgBeADdKHf2cBkDz8UwAA4w5/ZV7/X/Zq/d8f9PV/Tg7X/7Ht3nIL/87gXzYTGRWBMmJSyzeytf6vM9v670UByHj9X2v8+t/Mu/VfKwDfxi/WPcJBMBDQArBKgfC/OWqlsKkQ/ms+QQEAgnf4m/n6P9zv6/8xC6//aQtA1uv/fO3wt3ILZ/jPMvhnXAQcf32Dyi3E8q5bA7f+d/G0/m8O6Pq/zaTrf8av/2S9/jsKwI76M0VVDoKBoBSA1ZKGf7cCIHP4pwAAgTz8nZqj9X8E67+Y3de/639mBWBgo+c9rv6lHaLSSPnfpysCKSXgifhRrP8Grf9Hs7H+a07FLxYvchAMBLwArJY4/H8QnVIAZA//egFoTwEAAn/46/uP/jT7+j9F4vV/odvhb+2Mw78e9stlIeMSULlsLTGv/apsr/+ZFQDWf2/X/2Vu4f94Juu/Fv5PxS8SxxrOE03LchAMBKoArJY8/OsFQIXwX3MwBQAIzOHv2jTh/4zf1/9RJl3/0xWAfvtMv/53qqMd/rqHf/vin1Xwdy8B7t8NsH8XoFvt3jle/98z6fqfWQHYpTHx+p9RATgdv0is5CAYCEgBWK1A+HcvABKHfwoAEIjD30Hpwr+x6/9RQ9f/Vw1d/7/Kcv1/Xj/89Sb8l9dFpXD8z+n+vAxKwMstZhuw/m8K3PrfLuPwv0OG9b+J5/Dv0DeuMwfBgB8N1wuA/OHfWQAkD/96AWhHAQD8efjbP93hL+u/a/ifYaL1Xzv8rVu5RRbhPyX0R3uQURFwLQGlYkXDii3Eys5bLLf+7/Jl/W9p3PqvORO/SOzkIBjwq+FRI5UI/1v0AqBA+K/5+D9EFQoAEMDD3+Cs/2OsuP73ye76vz3d+j+g8fNu7/1nGP6jveO5BNjvAYY0es4v6/8mn9b/902x/u8xZP1PWwDSh3/3ArBQN6nyIF4FAvxcANZIHv63RK9wKQASh/9aFADAr4e/Tww7mcX6fzp76/8w39b/sWZY/12Of2dkWACMXf8dv+Ov2/qfZfh3lD1n6fNcAtxfBdJ+h+AF7Vf5ff3/wPTr/2qP4f9rE67/jgJwvOFcDoIBPxaANQqEf2cBkDz8UwCAwB7+mmX9z7gAGL/+zzJw/dcOf93Dv2sByDj4R6eRURHwWAJSDoIDvf5nVgBY/71b/8+mWFXjeb4LAASgAKyVNPzbC4AC4b/WYxQAwF+Hv0OHn5Vm/Z9g0vX/9SCt/9rhr+dXf9KHf/dj0DSyKgFpXgWa0uL1oK7/H5lq/V8lxfrvKADn4t/mIBjwcwFYK3H4/9CtAEgc/ikAgP8Of4dKtf4fkWL9fyMA6//8hz4XdeNaeHz1J134j/FO+hLg/Hu6vgrUsGJzsbrzFoPW/7QFwDzr//6Ar/9LsrX+a+Ffs6suB8GAvwrAWsnDv7MASB7+9QLQlgIA5PTwN6P1f1im6/8pC6//e31e/9/yw/o/oMmYlPU//as/7j/tJ23Id/0MpP88pCsBmbwK9GSj59Rc/1v7b/0/aIL1/1z9t8X5+m+LlzkIBnJcANYqEP7tBUCB8F9rEAUA8MfhL+t/Ntf/fsas/2kPfz2/+uNt+M+8BHh6FUg7CF7YfiXrfzbW/8N+Xf8Xe7X+OwrAt/XeEs05CAaEr57OoADIGP4/jF5uLwCyh38KAJDzw1+P6/9wOdf/zAqAFOt/b8/rf/rDXw/hP4Ol1z3wZVIC0twEeHoVqHuN3oav/58Ztv6/m+P1/5sgrf+aC/UXcBAM+LEArJM0/OsFQIXwTwEAcn74a8j6P8Rf63/aApA+/E826fo/N5vrv/PwN/NXfzyFf0fwT8tzCcjgVaA0B8FTW7xm0Pq/McPw7ywArP/OArBALwCafhwEAyKnBUDm8L9VLwAKhP9aAykAQM4Of31b/z0XACut/3v8uv7Pz2T9T3v4692rP2nDvzefkYpZvgqU9iB4XcfNpl3/9QLA+p9qb93pHAQDsb4XANnDv0sBkDv82wvAYsM/GICsh7/+Wv9TCwDrv9/Wf9cCMKDJWM/rf47CfyYlwOOrQO4HwcMajDR4/d/g9fr/lUnX/2M+r/+LvF7/L+rmi8mVB/AqEBCb/QKgQvjfGqMXAPnDf+2BfxdV2lAAYHXZO/ytknr4G7j1/zmTrv9TA7b+7w7Y+p/Z4W9Wr/54F/49F0ZvXgXSDoIXt19h0fV/ZUDW/xMBWP8dBeB0vTdF87INOQgGYr33jF4A5A//9gKgQPivPYACAKvz/fA3mOv/6ICv/4e8X/8HOsP/NAnWf68Pf3MU/rP+3GT2KlCPGgmp639mBYD137f1/1s/rf+XUqytMZrvAgCx3nsm6lklwv9HMe+4FACJwz8FANaW/Vd/GqQe/vp7/T/pv/V/sHHr/3STrf/eHf56/z63NwXA091IVgfBr7aYmWH432zS9X+nBdd/RwG4XH++6FeuIwfBQGz2CoDs4d9ZACQP/xQAWJvvh7+s/96t/zMNXP/n6Ye/rbM8/M35qz/++S5AfMXmYn3H9wxc/9fnaP3fLfX6n7YAeA7/9gIwT+yr+woHwUCs9wVAhfBvLwAKhP/a/SkAsKqcHP4Gev0/YeH1f5ff1n9fD38zC//OVzk8fX68LQEZHwQPbzBCmfV/b7bW/xVBW/9P+2H91wrAlfrzxNTK/XkVCIjN2jPRzyoR/t0KgMzhnwIA6/L98Nds6/84v67/B5VY/7N/+Jv98J9VCfD0WcrqIHhp2+Ue1/8tEq//+0y6/p/1Yf13FIBz9d7gIBiIzU4BkDv8f+woALKHf70AtKYAwGqyv9o+kHr4a/71/wWTrv+vBXH99/fhr+flNrMS4NurQA/WSPB6/XcWAJXW/+WGrv/nvVz/HdZzEAwI7wqA/OFfLwAqhP/a/SgAsBrfDn+HpIR/Gdf/iT6v/wcCuv7PDtD67+/D36wDWzZKgJcHwdObzfRp/f/YL+v/Oguv/2+nC/8XPaz/mqv3z9UN4CAYEJl5JnqEEuHfvQBIHP4pALCenBz+BmH9z+A3/rLK+u9WAHrv9Gn99/fhr/drbfaLZVYHwe+135jj9f9Tk67/BxRZ/x0F4OB9HAQDZTIxIoMCIGP4/zhmWUoBkDz8a6q2+v/tnQl0VFW+r4t5csAZBFIZK0lVwpAwJMxDGAQVJxQBxREBmVGSMCUMIoqCaGs7tD2o13Zqe9DWdp4QEUFmEARCJtTbffu+d++7b93Xenu/dU6RoSqVSlVyqvbZ+3z/tb6lq221hFPnfL9f7X/l59IvDAA7L/5G0v77AwDtv5Xt/5ZmtP83Wbz4G52kWb8Q7JT2P9zy785h9m7/j59hbfoMjgIBuCMLAKrK/5/MAKCB/PedTgAAJxH94u/ttYu/0bX/c23a/q9Usv1/L6L23+rF3+bJmbULwb8oeMaR7X/o4z8xaP/zomv/wwWAI/1YCAZIiCAAqCz/gQFAYfknAIBzaN7ib137f0DL9n91RO3/Z0q0/+MtXPxtfjtr7VGgq7OubXn7H0EACN3+P2+b9n9n3Nv/4AAQWv7rAsAWcSJni3gxaxGfAgC4Gw8Aqst/XQBQXP4JAOAMWrr4K7v9/ypu7X+pTdv/rU20/7FZ/G3+9WblQvD9wzbEpP1/m/bfsvbfkP8aWAgG8IQMADrIvz8AaCD/facRAMAJNG/x16r2fz7tv9g0zdr2v34AiM3ib8uuN6sXgl8d99uYt//hAoCz2/9HI2r/DU7mbBHb+5aKzB5eFoIB3I0HAFXlv2EAUFT+CQCgPy1d/I2i/Z8Tj/Z/p4Pb/+DjP9Yv/lp3JMPaheD5A+fHvf1/zzbt/9MB8r/Lxu2/EQBO5mwW61gIBhCNBQCV5f+NhKfqBQCF5d8MACMJAKAzzVv8DRcArG7/F9u0/W8QAGZ8arv23x6Lv/FZCH624ElJ7f9ztm7/v7ZR+2/If1nOZvFNv01iBAvBACI4AKgu/3UBQHH573sjAQB0xurF3/i0/0tt2v6vt2H7b4/F3/gcBbom61rr2/+xCrf/Q0LL/17J7X/ZGV7KWsinAADuugCgg/z7A4AG8k8AAH1pxuJvnn/xl/Y/svZ/g+T2316Lv/FZCH5g2AYp7X/jASBM+z9St/Y/OAA0Lv8Gp3IeFjOTxrMQDOD2iAU1AUBx+TcDgA7yTwAAfbF68ddu7X9wAJDf/m9sbvs/Ndr2/x0bLv7GbyH4dwUvSG//P5LS/j+lTPt/6kwA+JKFYABRGwA0kP83awOA4vLfdyoBAHQkeukafWbxN/L2f1907f/s5rX/99qh/a+3/LvMYQurAAAgAElEQVQhZACIf/tvz8XfeC0E32279v8Tm7b/+yW2/wblOQ+L9enTbXY9AsSfBb3mayH//gCggfwTAEBPmrH4O/drJdr/0AHAWe2/vRd/47MQ/OuCJ23d/n8W8/b/yWa1/wfj2P6Xn+FYvwdZCAbHs6DXPC3k/82EJ+sFAIXlv58RAEYQAEAnom9br7z+eWXb/2Kbtv8PxrD9t/fib3yOAl2bdW3s2/8mln91aP8PN6v9fyTi9t+gIuch8XLWAptelwByAsArisp/XQBQXP773UAAAJ1o5uLvvED5n6VU+79Difb/IYvafzUWf+OzEPxg/jraf4vb/28sbv9rAoDBLSwEg4NZUC8AqCz/fzYDgAbyTwAApy/+Tr/tgybb/9lh2/+9Dm7/P252+7850va/XgBQZ/E3Pp8C5KcOE78veKG2/X/Tpu3/5w5v/w0qcx4SX2WXsBAMwukB4BXF5b9eAFBb/gkAkOD0xV87tP93Ktz+z7Cm/X8kgvZfrcXf+CwEL8y9u+74jyLt/xeWtv8/V6L9NwJAZe+HxIYUFoLBuQHgFQ3k/0wAUF/++13/rwQAcOzi761z90TW/s8N3/7Ps2n7Hy4AWN/+fxTT9n+Dkou/cVgI7tZbPDf6CYnt/69a3P5/adP2/1iT7f+WiNt/Q/4re28SJ3tvZCEYHMlCMwCoL//+AKCB/BMAwNGLv1q1/8EBoKH8lyjc/qu5+BuvheBrGsj/Wwq3/1/ZtP0/3sL2v6r3JpPXvPMVu14BrA8Aryoq/2/VBADV5d8MAMMJAOC8xd/b5x20uP3fo1z7v8am7f+jQe3/UqUXf+OzEPxQ/rqw7b8ZAGj/LW3/T0bZ/tcEgOrem8QtSeNsvq8CELsA8KrC8v9Wws+FSwf57zeFAAAOXfyNUftfGwBo/y1p/9Vf/I3fQvCfCp6LuP1/V7v2/wnp7X+4AFBf/g12Za9kIRgcGQBeVVz+/QFAA/knAIATF39j3/4HBwAntf8fWtr+67H4G5+F4EW5c5vd/r/f4vb/lzFp/3cr0f5vjqr9r+79oDjd+0FxPwvB4LAA8KoG8h8YABSWfwPvMAIAOGzxV2L7vyTm7f/2yNv/mXXyv86G7f+GK36r0eJvfBaCnx/1hNbt/x4N2v+aAHCq9/1iVOIADa5hAE+TLKoNAGrL/1vumgCguPznXEcAAGct/irV/t8ur/2/zwbtv16Lv/E5CnRd1jU2aP+fjVv7v8927X+9ABCm/a/hde88Ta5jAE8EAUB9+X/bDAAayD8BABy3+Ouo9v9zy9r/++Pc/i8d+4iGi7/xWghe26L2/0Ol2//Hbdn+NxYADG5lIRgcwKJed2sh/4EBQGH5JwCAkxZ/49/+79a2/Q8XAPzy/0Gz2399F3/j8ynA0NRh4s2CX1vW/n/slPZ/QHzb/xp2sxAMDgkAr2kg/2+7nzgTABSX/5xrCQDgoMXfM+3/nTZt/8Mt/zqp/dd78Tc+C8GLc+fErP3/1Kbt/wEF2/8aWAgGpwWA3ykq//4AoIH8EwDAKYu/Utr/WS1r/4u0af/fj7j9d8bib3wWgl8c+nhc2v9wAUBm+39Iavv/UMTyz0IwOC0A/E5h+f9LQABQWP7NADCUAAAOWPxtEADUa/+XN7v93xbT9n+The2/MxZ/43MUaErmNQ5u/3/WQP6P2LT9ZyEYnBQAfqe4/NcFAMXlP+caAgDov/grv/3fFZP2f6VN2/+Hm9n+O2vxNz4LwY/klTqn/c+Lrv0/apP2n4VgcEoA+J0G8u8PABrIPwEAHLH4G0X77w8AtP9Wtv/hAoBzF3/jtxD81qhfxa39D7f8u3OYrPb/Mdu3/ywEg+4sNgOA+vJvBgAd5J8AALov/ra0/Z9refv/lYPb/+AAUNf+O3PxNz4LwUtz50hr/0Mf/3FS+78pYvlnIRicEgBeV1j+33E/fiYAKC7/OVcTAEDzxd8mA0B07f98m7b/qyNq/z+zpv2fZm377+zFX2uu+XBHgbzdeouXhj5qi/Z/p03b/29t0P6zEAxOCACvKy7//gCggfwTAEDnxd8Wtf9z1G7/SxVq/529+Bufo0A3ZF5ty/Z/l03b/xOS2n8WgkHnAPC6BvIfGAAUlv9cIwAMIQCApou/tP+17f9am7b/LP7GbyF4a16p+MAIAI5t/x9tdvtfFqf2n4VgcEYA+IWy8l8XABSX/9yrCACg5+Kv/dv/nQ5u//0BYAuLv3FfCH531LMS2/+nG2//h6jV/ocLAC1t/1kIBr0DwC+Ulv93zQCggfwTAEDbxd8IAoDV7f9iZdr/T23R/s9g8TfuC8H39JtdLwBE0f6PjH37Hy4AOK39ZyEY9AwAv1Be/gMDgMLyTwAAHRd/7dL+L7Vp+7/eBu3/fSz+SlsIfnXwozZo/4MDQEP53+vg9p+FYNCNxb3maiH/7ybWBADF5T93MgEANFz8tWn7f68d2v96x382hAwA8Wn/WfyVuxDcMADYv/3fb1n7v9XS9r8yRu0/C8GgWwD4vQby/27iz4RLB/knAIBui7/+AKBS+x8cAOS3/xub2/5Pjaz9Z/FX/kLwY3klTQYA2v/mtf9WBwAWgkEHltQEAMXlvzYAqC7/ZgAYTAAAlRd/cwIWf2+Puv3fF137P9t57f+DFrb/LP7aZSF4qHhvxC8ayP8njmv/H7F1+89CMGgVAHqpL//vGQFAB/nPvdIIAE9IvzAArFj8DdX+z7Jp+1/o0PafxV/7LAQv63dXk+3/ZzFv/59sVvt/0EHtPwvBoANLEuZqIf/+AKCB/Ode+QMBALRZ/G15+79XWvtfLL39/zjm7T+Lv/ZbCH5t8Nao2v/Pbdr+H9a4/WchGHQJAH/QQP4DA4DC8m/gyycAgPqLv+q3/zuUaP8fakH7z+Kv/Y4CTc28Ssv2/xvN2n8WgkF1liTM0UL+6wKA4vLf/woCAOix+BvxV38q2v6HCwAy2//NEbb/S8ez+GvXheCfDShpZPlXn/b/WJPt/xZbt/8sBINOAeCPCsv/+4mPCZcO8k8AAG0Wf+3Q/t+pcPs/w5r2P1QA2DKFxV87fwowPHWo+HDEM1G3/19Y2v4HBwDafxaCQccA8EfF5T8wACgs/wQAUHPxd23z2v+54dv/xgOAk9r/jyxt/x81Fn+HsvirwkJwS9v/wABA+x9LWAgGFQPAHzWQ/7oAoLj897+cAACKLf5mh1j8jVH7v0BK+x8cABrKf4lC7f99k1n8VWUh+PeDt1ja/n9l0/b/uMLtfw0sBINqLA0IAOrKvz8AaCD/BABQb/H3BWnt/yKbtv9rbNz+s/irzlGgGzOvCvjBX1a3/7tt2v6HCwB2bP9rYCEY1AwATyst/x/UDwAqy78ZAPIIAKDw4q/W7f/2ZrX/62zS/rP4q95C8M8HrJLc/j8hvf0/ZfP2vz4sBINaAeBp5eW/NgCoLv/9JxEAQKXF34/i3P5/bV37f7tq7f+HLWr/N7P4q+xC8MfDnqL9ryf/FTZs/2tgIRhUCgB/0kD+P0h8VLh0kH8CACiz+Dthra3a/yV2av9n2q/9Z/FX3YXgwt53xrz9DxcAaP+jg4VgUIF7QgQAFeU/MAAoLP8EAFBm8ffuvbT/zWj/77Ok/f8gqvafxV/1F4L/kLclRACIXfu/z+r2f0BL2/+Hbd/+18BCMKgYAN5QVP4/TKoJAIrLf/+JP4gsAgDYffH3BmPx95BS7f8yS9v/zy1r/++PQ/vP4q8OC8GTpbb/DQOAPdp/OwYAAxaCQaUA8IbC8u8PABrI/wACAKiw+Dv/kOT2f7e27f8DFrf/i1n81WYh+Mn+K2n/bd7+14eFYFAhALyhuPwHBgCF5d8MAIMIAGDfxd9p5uJv6Pa/LgDQ/lvV/m9qQfvP4q9+C8GfDnvSBu1/XQCg/W8cFoLB7gHgDQ3kvy4AKC7/Ay4jAIDNF3/t0P6H+OrPaNr/Im3a/8AAwOKv/gvBy3vfYQYAme3/Iantf/Dyr3zRDwcLwWBX7kmYrYX8+wOABvJPAAA7L/7eYi7+Brf/B5Vv/5c3u/3fZtv2/77JL7H4q+lC8J/yNtuq/Q8MALT/9WEhGFQIAG8qLP8fJW2tFwAUln8CANh68dch7f9Km7b/D0fR/rP4q+9RoOmZk+Pb/udF1/4fjVv7v0m64EcCC8Fg5wDwpuLyXxcAFJf/ARMIAGDPxd/bTPlvfvvvDwC0/1a2/40FABZ/9V8Ifqr/irr2f5is9j84AISW/28d2v7Xh4VgsGMAeFMD+fcHAA3knwAAtl38tbj9n2t5+/+Vg9v/ugBgLP7msPjriIXgbcOepP1XBBaCwW7cWxsA1Jb/2gCguvybAWAgAQDstfgbWft/oEXt/3ybtv+rI2r/P7Om/Z/W8vafxV/nLASv6H1HbfsfLgDQ/tsDFoLBfgHgSeXl/2MjAOgg/wPGEwDAhou/Vrb/c9Ru/0tt3P6z+Ou0heBM8VbegwHHf2rkf5dN2/8TDmz/a2AhGOwYAP6suPz7A4AG8k8AALst/tL+h2//GwSAGZ9Ka/9Z/HXeUaAZmZNt0P4/2uz2v8wh7X8NLASDnQLAnzWQ/4+THqkXABSWfzMADCAAgI0Wf5Vr/3dKbf/XS2r/Wfx17kLwM/2XN97+D1Gr/Q8XAFRu/+vDQjDYMQC8paj81wUAxeV/4DgCANhn8bd57f9+y9v/xQq3/xvi0P6z+Ov0heB8sX3I4422/1/Htf3famn7X6lR+18DC8FgtwDwlsLy/4kZADSQfwIA2Gnx9zabtv9Lndj+T228/WfxV0WsXQhe2fuORgJAQ/kPDAC0/zJgIRjsEgDeUlz+AwOAwvI/cNz3BACwxeKvNe3/vuja/9nNa//vtUP7X2/5d0PIABCb9p/FX5WxdiH47bwHm9X+NwgAtP8xh4VgsEMAeEsD+f8kuSYAKC7/A8cSAMAei78h2/95arT/oQOA/PZ/YwzafxZ/Vcbao0A3ZV5hSft/0Kbtv04BwICFYJDJMjMAqC///gCggfwTAECmXOSeWfwN1f5HcvyH9j+69v/BFrb/LP7qgLULwb/sX2yT9j/4B3/R/oeChWCQxbKEu7SQ/0+St9QFAJXl3wwA/QkAIHfxN5L2fxbtv+Xt/0NRtP8Ps/irCdYvBH855GcBX/1J+29fWAgG6QHArbb8f1oTAFSX/4EFBACww+JvM5d/G23/90pr/4ult/8fN7v93xym/WfxVyesXQhe1fs2y9r/cAGA9t8aWAgGaQHArb78mwFAB/knAIDsxV/92v8d8tv/Gda2/2tZ/NUQaxeC3xmwMSbtvz8A0P5bCQvBIINl7ru0kP/AAKCw/BMAQP7ir4Vf/alA+x8uANi1/WfxV0esPQp0s+eKuLT/x5ps/7fQ/kcAC8EgLwA8obT81wUAxeV/4JjvRTYBACQt/tq2/b/TqvY/OAA0lP8Sm7b/NQFgEYu/GmPtQvCv+xSGCACxbf/DffUn7X94WAiG+AeAJ5SX/8/MAKCB/A8iAECcF3+nBiz+xqb9bzwAOKn9/6jF7T+Lv7pj7acAo1Lzxa68x2j/FYGFYIgny9yztJD/wACgsPybASCXAADxX/yNZ/tfGwBo/6Nq/6ez+OsArF0IXu27tUEAoP23LywEQzwDwF80kP/PkjefCQCKy/+g0QQAiNfi71hxc8Dir7z2f5FN2/81MWv/P4y6/Wfx10lYuxD83oCNUtr/cAGA9j80LARDvCgMCgCqyr8/AGgg/wQAkLH467z2f3vk7f/MOvlfJ7H9H8vir4OweiH4clu0/+ECAO1/HSwEQ7wDwDsKy/+2gACgsPybASCHAACxXvy9VdxSX/7nx7v9/9q69v92ee3/fXFq/1n8dSLWLgT/pk+h7dp/MwDQ/oeEhWCIVwB4R3H5rwsAisv/oFEEAIjP4u8tNm3/lyjc/t8fg/afxV+nYvFCcEK++Drv0TPy/7gt238CQB0sBEM8AsA7Gsi/PwBoIP8EAIjH4q+92v/dDm7/P2iy/Wfx18lYuxBc6ru15e3/gJa2//UCAO1/WFgIhlhSFBQAVJX/2gCguvwTACD2i7/7gtr/Q0q1/8ssbf8/t3X7z+IvWL0Q/MGAjbT/isBCMMQrALyrsPx/nvKwcOkg/4NGEgAgtou/urX/RTZt/x+woP1n8ResPgo003N5QPt/SGr7H7z8K1+67QYLwRDrAPCu4vLvDwAayD8BAGK7+Hs4ovb/Tke2/9ti2v5virL9Z/EXYrUQ/Hz2sgbHf2rkPzAA0P7bARaCIVYB4F0N5D8wACgs/wQAiNvirx3a/xBf/emU9j8gAFwfGABY/IVYLwTvG/Ao7b8isBAMMQ0AiWrLf10AUFz+84wA0I8AALFY/G2q/Q8OAI3L/xybtv/LFW7/6wcAFn8h1gvBa3wzaf8VgoVgiEkASFRf/v0BQAP5zxtBAIA4LP46pP1fqWD7z+IvWPXeD3cUKLtbpvgoZ0PY9v9o3Nr/TdIF2+6wEAyxCQA/U17+twcEAIXlnwAAsVn8jbb9P6Bl+786ovb/M6ntP4u/EK+jQLd4Jp2R/+AAEFr+6wIA7b8MWAgGKyly36mF/G9PeehMAFBc/gkAEPPFX4vb/7mWt/9fxa39L7VZ+79o/KMs/kJcF4JfyL6n2e1/uABA+x8bWAgGKwPAexrIvz8AaCD/ecMJAGD14m982//5tP9i07To2/+HprzN4i/E/VOA0Qn5Yv+ARyxp//0BgPY/lrAQDFZRHBQAVJX/MwFAffn3B4DHpV8YoP5Df2SoxV8r2/8mjv/Q/kfX/rP4C7IWgtf5bqb9VwgWgsHqAPC+wvL/RU0AUF3+84Z/J7L7EgCgJe3/mcXfefssaP/3W97+L7Zp+98gAMz4NG7t/9rJL7P4C1IXgj/J2dDgqz9p/+0JC8FgZQB4X3H5NwOADvKfN4wAAC1v/yeFWvxVrv3fKbX9Xx/H9n9sv+ks/oLUo0C3eSZZ2v6HCwC0/y2HhWCwIgC8r4H8BwYAheWfAAANiewh37P+4u8CQ/5p/61s/zfEqP1n8RfkLwT7jwK9mH1PPfnfamn7X0n7H4eF4Lrfd/aCICHKAKCq/NcFAMXl36A3AQCaedbXXPy9s+Hi7202bf+XOrH9PxMAWPwF+y0E54lDA7bQ/qu4EBzB/YF7BCQ0EgBUlv8dKZuESwf5zx9KAIDmt//m4m8E7f/tUbf/+6Jr/2c3r/2/1w7tf73l3w0hA4B17b+5+Btw9IfFX5C7ELzedzPtv4ILwaE/BSAAgKfJAKC6/AcGAIXlnwAAzX2wN7b4G7L9n6dG+x86AMhv/zda0P6bi79JLP6CzRaCu3vFtr7rYtr+EwCsXQgeaS4EUxSAJ+oAoIP870itCQCKy78ZAPoQACD69t9c/NW8/S+2afv/YDPa/7F9+Ym/YNOF4JTLQgYA2n97LwRTFkBCFCyvDQBqy78/AGgg//lDCAAQ/QM9N/+WkPIfSfs/S6n2f4cS7X+4AGAu/k7YGtl3/vNAh3gtBAcdBXopeyntv0LckmwsBFMYgCfKAKC+/H8ZEAAUln8CAET7ME9M6udf/LWo/Z8dtv3f6+D2/+Nmt/+b67X/xuJvP88oFn/Bdp8CXBq0EHwkZzPtvyLszlolMnv4KA1ARMpy9x1ayH9dAFBc/s0A0JsAAJE/yEc1svhL+x+D9n9Gy9v/hou/HP0BuywEBx4Fus93E+2/QtyfNo3iAEQ0AUAH+f8y9UHh0kH+8wcTACDyJi8je4x/8dfK9n+umu1/uABgffv/UbPa/7VX1Sz+8p3/YIejQMlhjwIZC8Hb+649I/9baP9VWAhO6k95ACISViTeoYX8mwFAB/knAEA0D/BJNzyvVvt/p1Xtf3AAaCj/JTZs/8f2m1Yn/7T/oMBRoNuSJ9L+K8TvvPP4mQAgmhMAVJX/ugCguPwTACDSAJCbN9Mv/3Fs/xsPAPZv/9dIbv/Nxd8mzv3zA33AjkeBXum9KCgA0P7bmZkpY7mHgIgmAKgs/zvNAKCB/OfnEwCg6Qd3UnLji7/xbP9rAwDtf9j23/yJv+mjQpz7D3/0h/O7ELtPASI/ClSQOEgczdkU0P6HCwC0//IXgjN6ermPgIgkAKgu/4EBQGH5JwA4ncg+vh85fo2N2v/gAOCk9v/DiNr/6UOXNXHun6M/YI9PARoLARsybgp5/If2355sMBaCWQQGd/gAoIP81wUAxeV/sBEAsgkAzqXpAJCRFbz4e9i27f+SmLf/2yNv/2fWyf+6OLb/5uJvYp8G8s/RH7DvUaCGIcBYCN7Rdw3tv0ILwcMTB1AmgIg0AKgq/ztTHxAuHeR/cB4BwNk0HQAmTX2+8fZ/vsLt/+3y2v/7Ytj+j+17Y9PyH9XRHx7YEKujQOFDwO3JE4Pkv14AoP23Ha9553M/ARFJAFBZ/r8KCAAKyz8BwOlE/g0ekTyw6y/yGT/ds1sACYF0i55LNCbsf3vwr129X1f/T/it+57/yOWf9h/kfgoQsA8Q43uKY+8dcb2nUCiAp8kAoLr81wUAxeWfAOB0omjswp7dbeSBHfKhHeLBDU3Q8Ncw5EM6aOE38EEd+U/7Rf7BHiGg/leENnVP4b7S0vtK3T0lnPw3vUtEAICERgKADvLvDwAayP/gQQQAZ9N4AGhyea/Jh3XDh3bjD26IhMYe0KEe0i2Xfx7UYJP7SoNyIZIwABHfU1pwX4l+n4j7ilNZWRsA1Jb/gACgsvwTAJxOYw/qyI4B+T8FaPiwDh0E6j20g0IBhCD41yrEwzl06x/c0EXX0tH+gzVEcl+JJgQkRX5f4d4S5b2lsftKBPLPp4rgjiYAqC//u9LOBADV5d8MAFkEAGfTnAd1UyGgqSAALSH0w/nMAzqCM/88pME+5UK0BQP3Fu4toCIrE2/XQv53pW0ULh3kf/BAAgA0/pAO+SlAiLau0cYu6IFdH9kPOhUI+DUL+VBu7OHckgc0D2mwUQgIGwRC319kv2/VvLc0cX/pGe5TxeD2nwAAnpABQAf5rxcA1JZ/AgBY9pCO6EEN1hJK/Bt/OCP/EH8au7dwf1H6/kK5AO5mBgDF5f9MAFBf/g36EAAcTvgA0OhDOtRxoJAPax7YVj6QG38oh3owR/Zwpp0D24WAcEGA+4uN7y8EAPA0HgA0kP/dZgDQQP6HDDhNAIAmH9CRPaQbeVAHPbTrU/cAh4CHb32a+jU982sf7sGM/IN9S4ZQIYB7jGr3mHDyzz0GEowAkHS7FvIfGAAUln8CAET6gA4bAs48pKN6UEMLaOyB3Jj4N/Vg5uEMdrzHNAwC3GMk3GOauM9wj4GEiAOA+vJfFwAUl38zAPgIAOBp4uEc4QM67MMaWkLPsA/j6MWfBzPYLwQ09mlAI/eZeu8J2e9PXQh/j2nJfUb2tQeyWZl0mxby7w8AGsj/kP4EAIju4dz4AzpMGIAYEfr3AfkH+8J9Rj3C3WO4z4AnIlYFBQBV5X932v31AoDC8k8AgOgfznUP6PAPaR7YsXwAN0f6eSiDPeA+o/59pul7DfcZSGgkAKgs/1/XBgDF5d8MAF4CADTn4dzchzRYQeCDGPEH3e81gde77Pefk4j2PsO9BhLCBADV5d8fADSQ/yG5BACwIgSEfkiHQvbDTAUi+XWM9veGBzLYE+413GvAKQHgMw3k3wwAOsg/AQAaJ60FD2ewC/V/H+VfUwCh4F6jA9xrICGiAKC2/NcFAMXlnwAg/01hf3g4q/0g5mEMqhB43cp+H0Fz7jeyryGwdwDYrLz87zEDgAbyPyTntOjLJwAQETyc7QzSD3rBvcbOcL+BhGYGANXlf0/ahnoBQGH5H0oAgKgJdfOX/0ByGqF/H2RfGwCxgPuNbLjfgBUBYJsG8r/HUxMAFJd/MwBkEgCgJTT2cIDYI/v3HkAGst93Tkb27z2oyuqgAKCq/PsDgAbyP7QfAQBkI/uBZhdk/z4A6Izs97ddkP37AE5ldb0AoLL87w0IAArLPwEAAAAAAOIRAD5XXP7rAoDi8k8AAAAAAIBYB4DPNZB/fwDQQP6H9iUAAAAAAEDsKEm6VQv53+u5ry4AqCz/BAAAAAAAiGcA2K6o/O+rCQCqy78ZADIIAAAAAAAQ+wCwXWH5NwOADvI/tA8BAAAAAABiHwC2Ky7//gCggfwTAAAAAAAg1gFguwbyHxgAFJZ/AgAAAAAAxD4APKS8/NcFAMXlf1hvAgAAAAAAxCcAfKGw/O83A4AG8k8AAAAAAIB4BIAvFJf//Z71NQFAbfk3A0A6AQAAAAAAYhcAvtBA/s8EAPXlf1i2EQB+Jv3CAAAAAAA9KQ0KAKrKvz8AaCD/w7KrCQAAAAAAEJcAsENh+T9QPwCoLP9mAPAQAAAAAAAgtgFgh+LyfyD9TABQXf6HZREAAAAAACC2AWCHBvJvBgAd5J8AAAAAAACxpDTpFi3k/0D6unoBQGH5JwAAAAAAQMwDQKr68n+wNgAoLv/DfNWiHwEAAAAAAGJEafItWsi/GQDyBp/+SXX5H+4zPgH4ufQLAwAAAAD0ZG3yrVrI/8H0tT+58od8939Vl3+DHM8z0i8MAAAAANCTjcl3aCD/68RBz7r/cuUPOf2/VJf/4V4jAPxK+oUBAAAAAHryUPJd6st/+jpxyLP278YRoB9Ul3+DXM+/SL8wAAAAAEBPtibPVV/+zQCw5ntX/uDvKlWXf4P+npelXxgAAAAAoCePJ9+tvvynrzU+ASh35eWfPqG6/A/PrBYDPK9LvzAAAAAAQE+eSlmovvz7A8C3rvz87w6rLv8GAz1vSr8wAAAAAEBPfpWyWH35T18rDnrWHHTl5Z3eq7r8G+R5PpZ+YQAAAACAnryaWqS8/J/5BGC3a3DedztVl//hGdViSPrX0i8MAAAAANCTv6SUKC//h80AsOYLV37e6Y9Ul3+DYeknpF8YAAAAAKAnn6duUNmc67MAACAASURBVF7+/az5wJWf991rqsu/wYj0auF2Z0u/OAAAAABAL9ITvZrI/1pxOKP0ZeMI0FM6yL9BcuIQ6RcIAAAAAOhFrjtHE/lfY/CEK3/Q6ft0kH+D1MSJ0i8QAAAAANCLUYn5Wsj/EYP0NWtdgwedXqKD/I/wVIuMpOnSLxAAAAAA0IvJiaP1kH8zAJQudA0ZcHqmDvJv4EtaKv0CAQAAAAC9mJU0WQ/5z1gjvvGsneHKH/jdJB3k36BP8oPSLxAAAAAA0IuVydO1kH9/ACiZ4Boy8Ps8HeR/RFq1yE15XvoFAgAAAAB68WjKbD3k3wwAawa48vJ+SNVB/g3yUt+VfoEAAAAAgF68lHKPHvKfUSq+8axLcuXm/v1cHeR/RFqVGJq6X/oFAgAAAAB68VHqGj3kP6NUHEl/4GyXMYMHnP531eV/RGqVGJlaKRITe0u/SAAAAABADzxunzby/016yd9cNTMk9/Qe9eXfT1ri5dIvFAAAAADQg4LEoXrIv5+vagPA4NzTr+sg/yNTqoQvcaH0CwUAAAAA9OCO5Ct0kX9xNKP01bpPAPpXb9ZB/g36JW+VfqEAAAAAyMSdmG4i+3XowLrkm3WRf/FNRsmDtQEgP7d6gQ7ybzAo6Q3pFwoAAACATJJTvCI5JVP669CB36Qu1EL+zwSAuXWfAPSrukIH+R+ZXCWGJR2WfqEAAAAAyMST3lukebKlvw4d+Di1VAv5P5pRIr7xrLqsNgDk5X6frYP815DkzpN+sQAAAADIIiu7v/Bl5Up/HaqTk9hPG/n3B4CSjLol4MF/PVsX+R+ZVCUyEm+RfsEAAAAAyCIvb4QYlDdc+utQnSmJBdrI/9GMkn9W55Z0dtWfof2qv9dB/g36Jm6SfsEAAAAAyGJMwUQT2a9DdVYnT9dC/o8ZZK6uDpB/cw+g7+n3dZB/gzz3W9IvGAAAAABZXH/9DDFlynTpr0N1fpu6WBP5N/589dshAkD1Zh3kf1RilRiZWCbcbp/0iwYAAABABnPvXmgi+3WoTIo7U3yZtl4L+Tep/xWgdUeAqm7VQf5rSHNfJf3CAQAAAJDBunX3m8h+HSpzWeJwfeQ/s0R8m7n6poYBIOd0ri7yP8pdJbLdK6VfOAAAAADxpl9Ovtiy5TET489lvx5VWZJ8nUbyXyKO+lb2aRAARowo6zikT/VPOsi/wUD3K9IvHAAAAIB4c92UabUBwPhz2a9HVZ5NuVsb+f82Y9WPx1Lnd2gQAMxPAfqcPqKD/BuMSDjOHgAAAAA4Cndiulhdsq42AJSUrjf/N9mvS8Xz/zs8a/WQ/8zV4ljmqgMh5d8MAL2rX9ZB/kcl+El33yD9AgIAAACIF8NHjK2V/xqGDS+Q/rpU46qkkdrIv59VLzYaAIb0Ob1SF/k36JfwkPQLCAAAACBeLCtc0SAAFBWv4lOAKFmbfJNG8r9afJuxurjRADCsz3eTdJH/Ub2qxNBe26RfQAAAAADxYPyEKxvIfw3GX5P9+lTiz2lF2sj/cZNVlzV+BCi7/Lxhvav/Rwf5H21SKZIThkm/iAAAAABiiS8rV2zc+FCjAcD4a15fjvTXqQIDEnO0kv9vM1f9T1mfkq6NBgDzU4Ds6kO6yP/onpUiu9dS6RcSAAAAQKxITcsSxcWrG5X/GlasKBFpnmzpr9fuzE6+Uhv5PxMA9oWVfzMAZFU9rYv8G+T3+qP0CwkAAAAgFqSk+sTiJcualP8ajP+v8ffIft125oW0BdrIvxkAMlY90XQAyK6aqYv8G4zqcUokJQySfjEBAAAAWH3sJ5LmPxjj7+E4kCckfRL7iK8967SR/+OZq8QJ7+rpTQaAEd6KVF3kf3QPP9m97pF+QQEAAABYgfGNPsZSb7gz/01h/L3GP4NvB/IEMC9lslbyb1CWXpLoimSGZlV9p4v8G+T3fFP6BQUAAADQEgxZN77nv7BoZbPFPxjjn2X8MwkCHpOXUhdpJf/HM1dWRyT/5jEgb9Xrusj/6EsrxahLy0Wye7D0iwoAAAAgWvrl5IvrpkwL+Am/VmP8s41/h/Hvkv3fK4tcdz+x17NeG/k/YfwxY9XLkQcAX9U9usi/wZhLK0XvXkXSLywAAACAYJJTMoUnvbd5pj8vb4QYUzBRTJkyXcy9e6FYt+7+mEl/Yxj/TuPfbbwG47UYr8l4bcZrNF6r7F+vWLEg+Wqt5N8MAJmrFkQeADKqc3SS/zHdK8XQSz+VfmEBAAAANBYAjMVcuwYA47XpHgDeTLtXK/n3fwJQkhVxAHC5RKvh3urTush/DZ5ek6VfXAAAAADRwBGg2DMhaah28n8ic2WlcLlaRREAXK7hmdW/1kn+x3SrFAN6PC39AgMAAABoDsai7rDhBZYvARv/TKcvAW9OvVUv+feuEie9K55xRTtDM6qm6iT/BqO6fSsSE/pKv8gAAAAAmgtfA2otGe4ssdOzRjP5XylO+JZfG30AyC4/b1hm1U+6yL/JJZUiu+cS6RcaAAAAQEsxzuXzg8BazpzkK7ST/5OZK34s61PS1dWcGZZevV0n+TcY2v1D6RcaAAAAgBWkpPrE4iXLIpZ/4/9r/D2yX7ed+GPaUr3k32j/vSs/aZb8mwEgo2qVTvJvcnGlSO91vfSLDQAAAMAKklO8Ylnhioiaf+Q/kMlJI7WT/zMBoLjZAWBE+un+usl/wcWVIr/7q9IvOAAAAACrMI70hNsJMP4ax34a8uvUudrJv0GZd3nfZgcAl0u0Hu6p+k4n+Te5qEKkJoyTftEBAAAAWIWx1NtYADD+muzXZzeGJQ0U+zzrtJP/k94V1VF//WfDTwGqf6aV/JsBoFIM7M5XggIAAIBehDoKVFS8im/7CcHm1Fu0k/8ykxWPuFo6w9JOD9dG/i+qY8xFJ0RyQp70iw8AAADAKoaPGNsgABjf8y/7ddmNvol9xNeetRrK/0pxyrdicIsDgP8YUHWVTvJvHAEquLBC5HbfJP0CBAAAALAKo+mv/xODS0rX0/6HYE3KNC3lvyxzZUWLj//UzIjUqq1Ky//FDeXfYMyF34rkBGf+yGsAAADQk+umTKsNAMafy349dmz/d3lK9ZN///f/P+SyakZ6qofo1PzXckGF6N9tq/QLEQAAAMAq+uXk1wYA489lvx67cX/KTVrKf5l3hTjhXT7QsgDgcolWw1MrT+km/2MvMP54XKQkDJF+MQIAAABYxbp194u1azdIfx12I9edI75OX6Ol/Jd5l5+07PhPzYxIrXxYh2M/9eXf5PwKMaDb49IvSAAAAACrmHv3QjFn7gLpr8NubEqdqaX8nzICQOaKjS6rZ2Ra5SCdmv8a+TcouOCkSOk1XPpFCQAAAGAFU6ZMN5H9OuzEoMRcsTd9rZbyb1CesSrXFYsZkVx5SDf5NzmvQuRd9IL0CxMAAADACsYUTDSR/TrsxNNps7SV/zLvigOuWM3IlKqluhz7qS//NWT0mCL94gQAAABoKYPyhpvIfh124fKk4drK/ymDzOULYhYAxmRUXTAiqeq/dZT/sV0rxPALPhRud6b0ixQAAACgJfiyck1kvw47kOjOEH/yLNFX/r0r/rvaU3KhK5YzIrnyZV2O/dSX/xqyuy+SfqECAAAAtARPem+R5smW/jrswOzkSTrLvyjLXP5CTOXfDABJVQW6Nf81jDu3Qow5b59ITOgn/WIFAAAAaC7JKV6RnMKphkx3lvg8fYW28n/KCAC+FSNjHgCMnwkwMrHqWx3lv4YBF/HDwQAAAEBd3InpJrJfh2w2ps7QWv5PZRYft/y7/xubUe7KYp2O/dSX/3HnVIix55wS6T2ukn7RAgAAAEDzGJc4WOxPX6ut/Jd7l4tTvuJlrnjNCHdZt1Huqn/oKP81jOj6qXAneKVfvAAAAAAQHcnuDPHntKV6y7+3+MdTGcu7u+I5oxIqX9Lp2E99+R93tp9+F6+VfgEDAAAAQHQUp0zRWv7LfWb7/6Ir3jOiV3l/neXfYOzZx0Vaz7HSL2IAAAAAiIz8xP5iT3qp1vJf7lsuKrzLB7pkzMiEqk90OvZTX/7HnVUuxp9VLoZ3fZufDQAAAACgAEmJ6eK1tAXay3+5r/gDl6wZ1avqSh2b/xr5N+lSLnIu4igQAAAAgCpHf/SW/+WiMrNoorQAYHwl6KielYd1ln+DcV1OivRL+VYgAAAAALsyPmmI2OdZq738V3iXHxGuktYSA4C5DDxLt2M/9eXfpHO5GH32DpGY0Ff6xQ0AAAAAgaQnesU7acv0l3/fclGRtfw2l+yZkHqsw+geld/pLP81DDr/aekXOAAAAAAE8ljqbc6Qf+/y78vcJR1ddpjRPStKdDv2Eyz/4zv5yb5ktvSLHAAAAAD8zEwe7wz595nLv8tddpkR7rKuoy+t/Hfd5X9Cp3IxrtMx4ekxUfrFDgAAAOB0hicNFLs9JY6Q/wpv8f8qzy46z2WnGdWjco2Ox37qy/+Ejn5Gd9kuknrlSL/oAQAAAJxKpjtLvGee+3eA/PuKDVa67DYFySfOHdW98t90l3+TDuVi6DkvC7c7Q/rFDwAAAOA0Et3p4ldpdzlG/st9xX87llpyjsuOM/rS8hU6HvsJlv8aci5YI/0NAAAAAOA0ilOuc4z8V/hZ5rLrjL3kuy6ju1f84AT5n9C+XIxvXyZ83WZKfxMAAAAAOIUbksaIA+lrnCP/3qJ//cFbcpbLzjOqW8U9uh77qS//NYxrf1RkdJ8s/c0AAAAAoDtjkvLEbs9qx8h/pZ+FLrvPCHdZxzGXVFY5Qf4ntCsXl7UrF2M77hEpPYZKf1MAAAAA6MqAxH5im2e5w+S/6HRF3uJOLhVmzCUV83U99hMs/yZty8Xojp/wzUAAAAAAMSDD7RNvpi1xmPwXG8u/c1yqTK5rV7sxF1d84xT5v6ztKZMRnf8k3Ale6W8SAAAAAF1IcmeIF9LmOE7+K73Fh3flzmrnUmnGXFJ1uc7HfoLl/7I2foac9bxwuzOlv1kAAAAAdJD/x9Nuc578+8zl3wkuFWf0xZVvO0n+TVqfEvlnP8PPCAAAAABoAW53ung49WaHyn/xGy5Vp6BbWWbBxZX/cJL8G0xsfUrknbNV+hsHAAAAQFXWpUx1pPxXeov/UZW9Mt2l8hRcWPmo0+R/Yis//btukP7mAQAAAFCN1SnXO1P+feY3/zzkUn0mnVt+XsGFFX91mvybuE6J3K78tGAAAACASClMuda58u8t+teyPiVdXTpMwUUV85wo/zUMOOcB6W8mAAAAALuzPOU6x8p/lT8AzHLpMiNcou2YC8r3OlH+DSa5Tom8sx9lMRgAAACgkYXf9anTnC3/vsLdYsqUNi6dZswFFQPGXFD+kxPlf5KrzGRIl2cJAQAAAABBX/W5JXWms+XfW/jj6eyiXJeOU3BBxWanyr/B5a4yMfSsZ0VCAj8nAAAAACDZnSGeSLvd0fJf5Ssy2OjSdS7vXt157PkVx50q/5e38jOy0+siqVeO9DcdAAAAgCzS3T7xm7TZjpf/Sm/hye96L+3i0nnGXnBq9Njzy//pVPm/vNVJcUWrk2Js+49ESo+h0t98AAAAAPEmJ7GveNOzGPn3Ff2zKrOowOWEGXtexW+cLP81TGi7S2R0nyT9TQgAAAAQL0YkDhKfeIocL/9VZvtf9KzLKTPm7KoLCs6r+MHJ8m9wZauTYlLrQyLr4pukvxkBAAAAYs31yaPFbs9q5N9nHv35vsK7+HyXk2bseRVTnS7/V7Y6cYbjIu/cjXxDEAAAAGj7NZ9LU64WB9LXIP++M2QXTXE5ccaeW/4vyL+fya1OiFGdf8tyMAAAAGhFhtsnnkm7M0D8HS//WYXPuZw6BeedOHfsORVlyH8dE9p/KtIvHSf9zQoAAABgxXn/9z3LkH9fnfxX+gpP/i215ByXk6fgvPKhY88p/wn5PyEmtz4urmp9XFzZ5pDoe9Es6W9aAAAAgOYyM3m8+NpTgvz7AuT/xyrfssGy/dsWM/bsivXIv1/+6zOyy685EgQAAADKHfnZlHKzOJS+Dvn31T/2Y1Ii27ttMyNcou24s8q/QP7ruNrkWzGp/efC2+1q6W9mAAAAgKYYlzhYvJtmHPlB/qsayH/hzl25s9rJ9m5bzYRzylPGnlX+H8h/nfzXcVQMPvd+4U7IlP7GBgAAAAgmKdH/LT/7zG/5Qf6rGsr/f1Zm3psm27dtOePOrrgV+Q+U/2vqMa7TH4Xn0jHS3+QAAAAANQxNHCheS1sgDprij/xXBcl/dVaROJ1VOEO2Z9t6xnUpfwb5byj/17Q+5qfNETG46wbhTvBJf8MDAACAc0lyZ5it/570UuTf17j8V2cVPSHbr20/E1zHOozrcmon8t9Q/q81aONnYof3RGb3K6W/+QEAAMB5jE8aIv6cttQUf+S/OIz8F+44ljq/g2y/VmLGdazqNa7TqX9F/kPLv8F15h+PiGHnbhJJvfpKvxEAAACA/mS6s8TG1Blif/pa5N8XXv6rfEU/VGYv6ynbq5WasV1OjR7f+dSPyH9o+b+uzdFarm63Swy84B7hdrMkDAAAANaT6E4XtyRPENs8y2vFH/kvDif/P1VnLRsr26eVnHEdywuR//DyP6Uekzr+WWR1u0b6TQIAAAD0YVLSMPEnz5IA8Uf+i8Od+Te+9WepbI9WeESrCZ3KX0H+m5b/KW2+EdefoeCsX4q0HsOk3zAAAABAXQYl5oqnUmeJA0Hij/wXh5d/X+HvhcvVSrZFKz1Xuo6cPaHjqYPIf2TyX8OUdofE6HOeEJ6ew6XfQAAAAEAdct39xPqUGeLr9DXIvy86+a/2Fe7/wVtylmx/1mLGdyhLHN++/DvkPzL5v77tN+KGtkdMrm93QIw85xGR2jNP+g0FAAAA7Eu2u7coSZ4qdpvivx7590Up/1nLTp/OXOqW7c1azbh25bkTOpz6P8h/5PJfw1QzCOwVw7tuECk9B0q/wQAAAIB96JvYR6xJmSZ2e0rPiD/yXxH1sZ9l/1XhXTZQti9rOePbn5o0vv2pn5D/6OS/jsNiarv9Ysw5j4uMHgXSbzgAAAAgj7zEXLE+eYbY5VkjDnhqxB/5r4j+zP9P1dmFk2V7stYzvm35Xch/8+T/xiAmdf6d6HvJNJHgTpd+EwIAAID4MCFpqPhF6l1in2ed2G+IP/Ivmn/sp9A4+jNPth87Yia0O/UI8t8y+TeY1vaQyeTOb4pBF87nB4oBAABoSoY7S8xOvkL8MW2pKf01IP/LWyj/hZtke7FjpsQlWl/Wtvx15L/l8j+tnZ/p7Q6JG9vvEePPflr07jaFTwUAAAA0YHRSvnggZab4Mm2N2O+5D/m3UP6rspa9JlwlrWV7saNmiqui02VtT32E/Fsj/34Omsxod1Bc3ektMfiCpSKtF98eBAAAoNrXeC5Ivlq8mbZM7PPcZ4L8W37s54Myd0lH2T7syBnr+q7LZa3LPkP+rZX/QPaLK7u8IvIvXCxSew6SflMDAACAhmQl9hYzky8Tv0mdJ/Z41teKP/IfA/n3FX7x1/R7z5btwY6eAteJcy9rXbYb+bde/m8yOVDLjHb7xJVnvSTyL1wgPD2HSL/ZAQAAOJkBiTlidvKV4oW0BeLrIOlH/mMm//sqvIvPl+2/jLEU7Dp20cTWZYeQ/9jJv8HN7WvYb3J9p/fE2K4Pi37dponEhCzpN0IAAACdSXFniiuSRoqVyTeK11KXir2eDWdoKP7Ifyzkf9nR77OKL5HtvUy9meSq6HFZq7ITyH985H9mEDd12CmuOPtXYtiFy0Tv7lcSCAAAACwQ/vFJw8TipOvEsyl3ix2etWJPrfQj/3H+tp/j5en3Xirbd5kQc7nrRMJlrlOnkP/4yv8t7fcFcGv7fWJmh13imrNeFqPPXytyu01jmRgAAKAJchL7ieuSxohVydPEi6mLxc60+8SetPvFnrQNpvgj/9Ka/6rvei9Nku25TJgZ7zqZPtFVVon8y5N/P3vFrR383HaGmzptE1ef/aIYd979Iv/iOSK7+0SR1KuP9BsuAABAPPG4faIgcYi4PfkKsTb5ZvFc6iLxSWqp+Drt/gCQfzvIf2FlVe8ij2y/ZSKYia6T7omusm+Rf/vIfw23d9gTwB0d9oibO30ippz1qrj83CdEwflrxNCL7hY53W4Qvh7jhadnvkhKyJZ+swYAAIgET6JX5LhzxIjEfHFV4hgxK+lKsTJ5ung0ZbZ4KeUe8WFqqdidtjGIQPFH/u0h/1W+ZWU/+O5Jke21TBQz0VXWbaKr7ADyb2/59/O1yZ0GHeuzW8w6w+2dvhA3d35XTDv7dXHdOc+J6875tbjq3CfF5HMfF5O7PiYmnveAyaQQXG6ysVGuMDg/FPfXcmUAG8Tk+lzQkKsacF8Drg7imgasb8C1Juv8XNiQ60IwxWRto1wfkjUB3BBAqZh6UXhuDKAkkIv9TAtiegCrQzLj4lVhuSmIm01W+rkkNDMbsKIBt9Sy3OTWJritlmJxW7fQ3B7EHbUU1dG9PoXiziaYFcRd3Zc1yewG3OvnUj9zarmnlrlNcHctSxtlXhDzTZaI+T1Cs6DH4iZZ2LM+i8SiCFgcwMIGLDFZEMDSYHoFco/J/LDcG8SyXvPCcLcoDEVCIEW1zDUpbgr3XLG8ljkhWeGeHcDKCFjlvissqxMbUpI4qxHuNCmNgDW13GGyNpikhqwzub1R1ifd5ifZz33Jt4nNKXPEI8lzxGMpd4tnkheKX6YsEq+mFIm3U0rEttT7xFepDwSwK81gYy3IvzLyf6Siz/Iesn2WacaMdR2/+HLXyT3Iv9ryX8NdtewymV2fTrvEnE5fNWCuyc5a7g5iXqcvxbzOdcyvZUctCwL4QiysT5cvxKJatpssbsDnYkkQSw3O2lbLPQ34TNwbxDKTT/2c/akoDOATURSCYpOPa1lewzkGH4kVQaw0+TCAVQF8IFafG0iJyfu1lAbwnsmaGrr6WWvybi3rAnhHrA/Bfef9JYANtbxtcn8QG03e8nO+nwdq+bPJg0FsOv/NBjx0QQ1vmDwcxOYL/hTAllr+KLZc6OeRILZe+IcAHq3l9yaPGVxUn9fFz4J4vJbfmTwRxM8vfq0BT5q8WstTQTx98St+LvHzTC0v1/KLAF4Szwbxy241/NbkVw14Ufw6iN+Y/Iv4TXc/zwXxfPcXGvCCyfO1/Mul9XlOvBiC3176mwBeqqGHwa/Fy0G8YvKrAF6t5Zcmr/UM5Hcmz9byegC/MPl9Db38/KHXMwH8MYCnxZ9C8EbCUwG8WcuTJn8O4i2Tn9fh/rl4u5YnTP4SxDvuxwN4t4ZEg5+ZvBfE+4mPBfBBLY+afJjUkI+StgbwcS2PmHxSQ3INW8SnQXxWy2aTbUF8nvJwA7abPFTLF0HsSNnkJ9XPl7U8WMvOAALFH/lXV/6rs5Z9fbpv8UWyPZZpwUx2lXWd1OrkduQf+Uf+kX/kH/lH/pF/5B/5rwrX/Gct28n3/Gv0E4Mvb3XyPeQf+Uf+kX/kH/lH/pF/5B/5rwp57KfwY37Cr2YzxVXR6YpWJ36P/CP/yD/yj/wj/8g/8o/8I//Vgc3/a2Xuko6yfZWJyYhWV7Q6Ueps+Q8Uf+Qf+Y+P/NeJP/KP/CP/yD/yj/zbSv59hVuFq6S1bEtlYjxXuI7PurLViR+Rf+Qf+Uf+kX/kH/lH/pF/Z8p/la/wp+qsZfNkeykTx5nsOjl+cqsT/4H8I//IP/KP/CP/yD/yj/w7Tv7/T5Wv8ArZPspImKtdJ/tc2epEJfKP/CP/yD/yj/wj/8g/8u8M+a/OWnb6dHZRrmwPZSTOZFdZ4lWtjx9C/pF/5B/5R/6Rf+Qf+Uf+NZd/X+H+am9hgmz/ZGwwU1wHz7qq1fFXkX/kH/lH/pF/5B/5R/6Rfz3lv8q37A8ncgvPle2djK1GtLqq9fGFV7f+9kc95J+v+kT++apP5B/5R/6Rf+Qf+a/yFf1UnV1UKFyuVrJtk7HpXOU6NuLq1se+R/6Rf+Qf+Uf+kX/kH/lH/hWX/6yiv1ZlFxXI9ktGgbnadazn1a2/3YH8I//IP/KP/CP/yD/yj/wrKv++ol2nM5e6ZXslo9BMcB3rcHWrY08h/8g/8o/8I//IP/KP/CP/ysn/Uwe9Je1l+ySj6FzT+ugt17Q59p/2l38WfpF/Fn6Rf+Qf+Uf+kX9ny39VVuH/Pp1VOEO2PzIazGTXkcRrWx/bhvwj/8g/8o/8I//IP/KP/NtT/quzir6s8BalyvZGRqMZ4fqo7bVtjpZe2+abn+wl/xz7Qf459oP8I//IP/KP/DtX/it9hT9W+Yo27sqd1U62LzKaztVtj+Vd1+ab48g/8o/8I//IP/KP/CP/yL9k+c8qPFWdXTxMth8yDpjprmPnTGlz9DnkH/lH/pF/5B/5R/6Rf+Rf0rEfX9Er5dlF58n2QsZhc33ro1Ovb3PkB878I//OkH/O/CP/yD/yj/wj//Llv9Jb+H1VdtEU2R7IOHgmu8q6Xt/mm6eub3vknzT/yL++8k/zj/wj/8g/8o/8y5d/o/Wv9iy5ULb/MYw5U9oeHnF9myNHkX/kH/lH/pF/5B/5R/6Rf4vl31t0ojpr2VjZvscwDWaKq6LT9W2ObJza9vBPHPtB/vWQf479IP/IP/KP/CP/8uS/0lv4Y5W3cOsP3pKzZHsew4SdqW2P9J/a5vBe5B/5R/6Rf+Qf+Uf+kX/kv5ny7yvcXZVZ2E+21zFMxFPiEq1vbH345qltD//AsR/kXz3559gP8o/8I//IP/IvS/6L/q3SV7hQTJnSRrbPMUyzZqZrT9epbQ5tvLHt4f9H84/8qyH/NP/IP/KP/CP/yL8E+fcW/6PKW7y1rE9JV9n+xjCWzA3tD3tubHvoDeQf+Uf+kX/kH/lH/pF/5D9Q/it8xe+VZy7zyfY1honJTGtzqGBa24MHOPaD/NtPVccUyQAABTVJREFU/jn2g/wj/8g/8o/8x1f+K3zFRyuzlk+S7WcME/OZ5drVblrbg3dPb3ugmuYf+beH/NP8I//IP/KP/CP/cZR/b1FVua94zq7cWe1kexnDxHWmuA62n9Hu4KwZ7Q6cpvlH/mn+kX/kH/lH/pF/3eW/wlf810pvUWFF3uJOsj2MYaTODNfeLtPbHlh4U7sD3yP/yD/NP/KP/CP/yD/yr5v8l/uK/1bpKy49llpyjmzvYhhbzRTXwbNmtN1fOKPdgX9H/pF/mn/kH/lH/pF/5F91+S/3Ff9Hha9444ncwnNlexbD2Hpudx08/6b2+1fd3G7f98g/8k/zj/wj/8g/8o/8Kyj/35X7ilbwlZ4M04wdgZvb7b15Zvv9B5F/5J/mH/lH/pF/5B/5t7v8l/uKj5X7ihdyxp9hWjyi1U0d9hfMbLfvDeQf+Uf+kX/kH/lH/pF/28m/d/m2ct/yK4TL1Uq2NTGMdnNb2/39b2m/77e3tN/3D+Qf+efYD/KP/CP/yD/yL03+vcv/ccpX/GJ5dlGubD9iGEfMzM4Hu93Sft/CWzvsPYj8I/80/8g/8o/8I//If7zk/5TXPOZTWuVb0Uu2DzGMY+eOdvtzb2u/96lbO+z9L+Qf+Uf+kX/kH/lH/pH/GMj/f5d5V7xSnrmigGM+DGOjmena0/WODntm3d5hz17kH/nn2A/yj/wj/8g/8t9i+c9ccaTcu7yw2lNyoWzPYRimibmt7e7+d3TYs+mO9ntOIf/IP/KP/CP/yD/yj/xHIf9lZd7lD5RnrOJsP8OoOne02+O7s8Pu0js7fn0C+Uf+kX/kH/lH/pF/5L+B/GeuqCzzrtha7l0xlCM+DKPRlLhE61kddw29o+Oux2Z12H0a+Uf+kX/kH/lH/pF/58r/Se+K6jLvyq2nfKuGIP0M46BPBmZ13F14V8dd793Vcdf/Q/51kH8WfpF/5B/5R/6R/9Dyf8K78qeT3hW7TmSuKDWO9yD9DOPwmeHa22VW+91X3NXxq6fu6rCrAvlH/pF/5B/5R/6Rf/Xl/3jmqu9Pele+cjJj5c1lfUq6yvYNhmFsPHO67O49u9PORbM77nx1Tsedp5F/u8s/x36Qf+Qf+Uf+kX+DldXHM1a+cjxz5cIT6SuzZfsEwzAKz92ddl86p9OuKXM67tw6t+POXXM6ffk/yD/yj/wj/8g/8o/8y5b/VSeOZ6x87njGqlnfZq70yfYFhmE0noXn7uk6t/NXE+d23Ll8bqcvX7q705eH7u785Y/IP/KP/CP/yD/yj/zHQP4zVv14LGP1wWMZq176NmN18fHMVZdxpIdhGOkz33Wsw/zOO/vN67zj5nmdvtw0v9OOd+d33lGN/CP/yD/yj/wj/8h/VPJfdTRz9TvHMkoe/Daj5OZjmSv7HfSWtJf9nGcYhol45rve6rCow87keV22FyzovGPWgk7bNy7s/MUrCzp/sW1Bl+0nFnXZ/k/kH/lH/pF/5B/5d4z8p5f8/Uh66aFv0kvf+yaj9KlvMlYXfpO+esrxjFW5R9LvPVv2c5thGCbms9S1t8v8c7alLOz0xaDFnbdNXNT585sWd9m+aFGX7esWdf78icWdt726uPO29xd3+XyXwdLOnx9c2mXbCYMlXT7729Iu2/5+T5dt/4n8I//IP/KP/CP/sZT/A551/3nIs/bvBz1r/nYofe0Jg4OeNQcPedbuMjicvvb9wxlrXjmcseaJwxml6w5nrFl0KLP0pqOZJROPppUMPJa6LmVv701dZD93GZfj5/8DGtYAEWlruwQAAAAASUVORK5CYII=";var C=null,f=null;function D(){let i=x;return`<!DOCTYPE html>
1
+ import{g as h,h as w,w as y}from"./chunk-WWRLNBDT.js";import"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import{c as b}from"./chunk-26BQ45XP.js";import k from"http";import{exec as B}from"child_process";var x="data:image/png;base64,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";var C=null,f=null;function D(){let i=x;return`<!DOCTYPE html>
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="UTF-8">
@@ -1,4 +1,4 @@
1
- import{a as S}from"./chunk-6EYQQ7GQ.js";import{a as y}from"./chunk-Y5JU726N.js";import{b as R}from"./chunk-EUNKA2MP.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import r from"fs";import F from"path";var B=async(v,E={})=>{let{path:s,content:o}=y(v);if(!s)return'ERROR: Missing "path" argument for WriteFile.';if(o===void 0)return'ERROR: Missing "content" argument for WriteFile.';o=o.replace(/^```[\w]*\n?/,"").replace(/```\s*$/,"").replace(/\r\n/g,`
1
+ import{a as S}from"./chunk-6EYQQ7GQ.js";import{a as y}from"./chunk-Y5JU726N.js";import{b as R}from"./chunk-JTITXS7B.js";import"./chunk-KMOTPBF5.js";import"./chunk-P5HBJA23.js";import"./chunk-26BQ45XP.js";import r from"fs";import F from"path";var B=async(v,E={})=>{let{path:s,content:o}=y(v);if(!s)return'ERROR: Missing "path" argument for WriteFile.';if(o===void 0)return'ERROR: Missing "content" argument for WriteFile.';o=o.replace(/^```[\w]*\n?/,"").replace(/```\s*$/,"").replace(/\r\n/g,`
2
2
  `).replace(/\r/g,`
3
3
  `);let t=F.resolve(process.cwd(),s),m=F.dirname(t);try{await S.recordFileChange(t);let n="";if(r.existsSync(t))try{n=`Old File contents:
4
4
  ${r.readFileSync(t,"utf8").split(/\r?\n/).map((g,j)=>`${j+1} | ${g}`).join(`