@qitqode/qitqode-android-arm64 0.1.28 → 0.1.30

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 (104) hide show
  1. package/bundle/{chunk-pdzpfkt0.js → chunk-07g7cybt.js} +1 -1
  2. package/bundle/{chunk-emtebxvs.js → chunk-0ch32p4c.js} +1 -1
  3. package/bundle/{chunk-yhk7d1j0.js → chunk-0df4kede.js} +1 -1
  4. package/bundle/{chunk-3j9hedmx.js → chunk-0fmbz83g.js} +1 -1
  5. package/bundle/chunk-0jgsp4c2.js +2 -0
  6. package/bundle/chunk-1ngtxja9.js +2 -0
  7. package/bundle/{chunk-61zpnwv6.js → chunk-27dgtm8r.js} +1 -1
  8. package/bundle/{chunk-rmr38x2f.js → chunk-2ec6ps8r.js} +1 -1
  9. package/bundle/{chunk-1t6bvbgy.js → chunk-2gerf08b.js} +1 -1
  10. package/bundle/{chunk-04h4afhf.js → chunk-2y90ad1v.js} +1 -1
  11. package/bundle/{chunk-hxgs0d4t.js → chunk-3f4zht9e.js} +1 -1
  12. package/bundle/{chunk-f2tdfry8.js → chunk-3g1yz39h.js} +1 -1
  13. package/bundle/chunk-3n1324bt.js +2 -0
  14. package/bundle/{chunk-xvfpzmrf.js → chunk-3pxnp6jb.js} +1 -1
  15. package/bundle/{chunk-ebrt1me3.js → chunk-3szwfy7w.js} +1 -1
  16. package/bundle/{chunk-37s5hwtc.js → chunk-426dt7be.js} +1 -1
  17. package/bundle/{chunk-x1rx6fm7.js → chunk-42f7p0hq.js} +1 -1
  18. package/bundle/{chunk-4sk0rmw3.js → chunk-4p5e5tsz.js} +1 -1
  19. package/bundle/{chunk-13hz1kvh.js → chunk-4pjm21a5.js} +1 -1
  20. package/bundle/chunk-4xh1qm90.js +2 -0
  21. package/bundle/{chunk-ebcv65e3.js → chunk-58x5seqn.js} +1 -1
  22. package/bundle/{chunk-smt14yjb.js → chunk-5v4py9p2.js} +1 -1
  23. package/bundle/{chunk-qvxvc2c2.js → chunk-5xe6x2rt.js} +1 -1
  24. package/bundle/{chunk-h602h2gx.js → chunk-618tmyx9.js} +1 -1
  25. package/bundle/{chunk-k2tamnfv.js → chunk-76wrw0cs.js} +1 -1
  26. package/bundle/chunk-8qkhddq3.js +8 -0
  27. package/bundle/{chunk-zw0yh3dv.js → chunk-9amwe0ed.js} +1 -1
  28. package/bundle/{chunk-hk698g9e.js → chunk-a0v55ywn.js} +1 -1
  29. package/bundle/{chunk-3dvd1bb6.js → chunk-b3rpzkcb.js} +1 -1
  30. package/bundle/{chunk-anjg3mwn.js → chunk-b8bytvka.js} +1 -1
  31. package/bundle/{chunk-x9s04nze.js → chunk-bn15mzd7.js} +1 -1
  32. package/bundle/{chunk-df6a167w.js → chunk-bpbptx89.js} +1 -1
  33. package/bundle/{chunk-066eeq5q.js → chunk-bt6yw07v.js} +1 -1
  34. package/bundle/{chunk-xrxyrr00.js → chunk-bzgj60w4.js} +1 -1
  35. package/bundle/{chunk-92d9469t.js → chunk-d0nkvp57.js} +1 -1
  36. package/bundle/{chunk-5g8108nf.js → chunk-dcvatax2.js} +1 -1
  37. package/bundle/{chunk-612f97vv.js → chunk-ddnpx1yx.js} +2 -2
  38. package/bundle/chunk-dxe29jj6.js +2 -0
  39. package/bundle/{chunk-jr907144.js → chunk-eercqt72.js} +1 -1
  40. package/bundle/{chunk-kb6w3wbd.js → chunk-efxd6b2k.js} +1 -1
  41. package/bundle/{chunk-qc1w4b12.js → chunk-ejjea8hh.js} +1 -1
  42. package/bundle/{chunk-hnb8v476.js → chunk-eneawsj8.js} +1 -1
  43. package/bundle/{chunk-g16zb3y1.js → chunk-ezja6njs.js} +1 -1
  44. package/bundle/{chunk-bkbngcvc.js → chunk-feyphhxd.js} +1 -1
  45. package/bundle/{chunk-z37aqajx.js → chunk-fjgyrsbw.js} +1 -1
  46. package/bundle/chunk-fnnch1e9.js +2 -0
  47. package/bundle/{chunk-cmbxrgyx.js → chunk-fqw4y7x0.js} +1 -1
  48. package/bundle/{chunk-2abdrqrx.js → chunk-ft93f33g.js} +1 -1
  49. package/bundle/{chunk-5syxjhg3.js → chunk-gj3hzx3d.js} +1 -1
  50. package/bundle/{chunk-457y2816.js → chunk-h6rv626m.js} +1 -1
  51. package/bundle/chunk-hw1dmx28.js +2 -0
  52. package/bundle/{chunk-t2tgz0rc.js → chunk-hwbyqezq.js} +1 -1
  53. package/bundle/{chunk-scsf8r98.js → chunk-hxpgs78j.js} +1 -1
  54. package/bundle/{chunk-n0mygdfp.js → chunk-hxz2rdjq.js} +1 -1
  55. package/bundle/{chunk-48fvrggx.js → chunk-j5ymkhry.js} +1 -1
  56. package/bundle/{chunk-1etdhr36.js → chunk-jvqbvgjy.js} +1 -1
  57. package/bundle/{chunk-dafbntks.js → chunk-k8ss3135.js} +130 -130
  58. package/bundle/{chunk-3fx5jda0.js → chunk-mj4bepvj.js} +1 -1
  59. package/bundle/{chunk-gj7y56y6.js → chunk-mrw279k3.js} +1 -1
  60. package/bundle/chunk-my6sz5d6.js +2 -0
  61. package/bundle/{chunk-e0152ayv.js → chunk-n26yf3he.js} +1 -1
  62. package/bundle/{chunk-z6dnv8g5.js → chunk-ngytjdg2.js} +1 -1
  63. package/bundle/{chunk-k3epfxmq.js → chunk-nrc3bj9p.js} +1 -1
  64. package/bundle/{chunk-8tc8x27z.js → chunk-pvpy9kq1.js} +4 -4
  65. package/bundle/{chunk-krhkrca9.js → chunk-qt80mhdn.js} +1 -1
  66. package/bundle/{chunk-s1cnzvb2.js → chunk-qtw5nrr4.js} +1 -1
  67. package/bundle/{chunk-w9vh7rhg.js → chunk-rc9ex3vt.js} +1 -1
  68. package/bundle/{chunk-kfsn9c7m.js → chunk-s9672vvv.js} +1 -1
  69. package/bundle/{chunk-dpkynwgm.js → chunk-shpq6es1.js} +1 -1
  70. package/bundle/{chunk-fzna6jdj.js → chunk-sn4nez18.js} +1 -1
  71. package/bundle/{chunk-4yawrap2.js → chunk-svvgv1s0.js} +1 -1
  72. package/bundle/{chunk-yc1jk3rm.js → chunk-ta3k9syc.js} +1 -1
  73. package/bundle/chunk-tge53d52.js +3 -0
  74. package/bundle/{chunk-cydewa1c.js → chunk-tk5afan4.js} +1 -1
  75. package/bundle/{chunk-cwqd48xt.js → chunk-vcmrrt8b.js} +1 -1
  76. package/bundle/{chunk-wrfvqp2w.js → chunk-vcrn3v70.js} +1 -1
  77. package/bundle/{chunk-0nj8axbw.js → chunk-wfs4pcwa.js} +2 -2
  78. package/bundle/{chunk-t22jbw8x.js → chunk-wgpsmxqx.js} +1 -1
  79. package/bundle/{chunk-jx27xrk1.js → chunk-whcg14sc.js} +1 -1
  80. package/bundle/{chunk-k7g3h9tn.js → chunk-wpajh5s5.js} +1 -1
  81. package/bundle/chunk-xd3xc1vv.js +3 -0
  82. package/bundle/{chunk-1m2e2w1q.js → chunk-xm08fc2q.js} +1 -1
  83. package/bundle/{chunk-288hw03f.js → chunk-yn6sbycg.js} +1 -1
  84. package/bundle/{chunk-x7ers083.js → chunk-yy526n9c.js} +1 -1
  85. package/bundle/{chunk-8815p61h.js → chunk-yzc53n88.js} +1 -1
  86. package/bundle/{chunk-my7mn79h.js → chunk-yzjc15vp.js} +1 -1
  87. package/bundle/{chunk-24xc0dvv.js → chunk-z8r65yw3.js} +1 -1
  88. package/bundle/{chunk-va316nee.js → chunk-zfd70p01.js} +1 -1
  89. package/bundle/{chunk-pxtqqmkc.js → chunk-zv6pjtz1.js} +1 -1
  90. package/bundle/{chunk-d7qscj5p.js → chunk-zz36xg2n.js} +1 -1
  91. package/bundle/index.js +3 -3
  92. package/bundle/worker.js +1 -1
  93. package/package.json +1 -1
  94. package/bundle/chunk-6q87abbr.js +0 -2
  95. package/bundle/chunk-a7cxf56j.js +0 -2
  96. package/bundle/chunk-btneef3z.js +0 -2
  97. package/bundle/chunk-erg0ske8.js +0 -2
  98. package/bundle/chunk-fff3151r.js +0 -2
  99. package/bundle/chunk-k5q52wdq.js +0 -2
  100. package/bundle/chunk-m8yv4sd2.js +0 -3
  101. package/bundle/chunk-xxbqhg9n.js +0 -3
  102. package/bundle/chunk-y88xh6w3.js +0 -8
  103. package/bundle/chunk-z4z8hk7e.js +0 -2
  104. package/bundle/chunk-zqv7fx25.js +0 -2
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{bg as In,cg as a2,dg as d2,eg as o2,fg as x2,gg as t2,hg as b2,ig as e2,jg as s2,kg as f2,lg as k2,og as nA}from"./chunk-df6a167w.js";import{pg as Er,qg as R2}from"./chunk-04h4afhf.js";import{Cg as P2,zg as U2}from"./chunk-my7mn79h.js";import{Ig as Sc}from"./chunk-4amgp4yd.js";import{Kg as Ey}from"./chunk-scnz207s.js";import{Lg as fj}from"./chunk-anjg3mwn.js";import{$g as gl,Mg as _n,Tg as Xr,Ug as Km,Wg as Hm,Xg as xi,Yg as ai,Zg as im,_g as Ll,ah as b0,bh as Zm,ch as S2,dh as Dr,eh as jn,fh as Wr,hh as e}from"./chunk-612f97vv.js";import{Ah as bc,Ih as y2,Jh as ql,Qh as tc,Rh as _l,Uh as Ml,Vh as yn,ih as Tl,jh as zl,kh as ui,oh as hl,vh as mm,yh as _r}from"./chunk-0nj8axbw.js";import{$j as f0,Cl as J,Dl as mr,Wk as Pn,Xj as wr,Xk as Qr,Yj as Y2,Zj as J2,ak as qn,bk as K2,fk as sj,fl as qr,gk as tr,gl as _i,hk as Zr,hl as jA,ik as Q1,jk as yr,kk as br,lk as Si,mk as pi,ml as c2,pk as Ym,rl as ir,sl as Cr,tl as vr,vl as w1,wl as j0,xk as A2,yk as lr,zk as er}from"./chunk-8tc8x27z.js";import{Fl as ul,Pl as uI}from"./chunk-k7g3h9tn.js";import{Ql as Lr,Ul as tj,Vl as nr,Wl as Xi,Xl as Ki,am as iA,bm as b,dm as Ci,fm as l0,jm as Gr,lm as M}from"./chunk-rmr38x2f.js";import{xm as yi}from"./chunk-5syxjhg3.js";import{Bn as Li,Dn as dj,Gn as d,In as nm,Jn as g2,Kn as z2,On as M2,Pn as fn,co as c0}from"./chunk-nj4d554m.js";import{Jp as rm,Op as D2}from"./chunk-hk698g9e.js";import{aq as F}from"./chunk-1sgby720.js";import{ds as tI,es as bI,fs as Dn}from"./chunk-fzna6jdj.js";import{os as sI,ps as fI}from"./chunk-x1rx6fm7.js";import{$s as eI,Ks as B0,Ls as Pr,Ms as CI,Ns as o0,Os as WI,Ps as XI,Qs as KI,Rs as HI,Ss as zr,Ts as Ql,Us as x0,Vs as ZI,Ws as VI,Xs as YI,Ys as JI,Zs as k0,_s as RI,at as OI,bt as LI,ct as qI,dt as q1,et as Im,vs as PI,ys as Wn}from"./chunk-4qqkqrn9.js";import{qt as En}from"./chunk-12bssxd4.js";import{Ft as pI,ou as Vi,pu as k,tt as mA,yu as _}from"./chunk-ebrt1me3.js";import{Cu as m0,Nu as kl,Ou as yA,Su as Wi}from"./chunk-whxjkz9a.js";import{Uu as I}from"./chunk-k309zez0.js";import{NA as mI,OA as cI,mA as ji}from"./chunk-phxrg7aw.js";import{$I as EI,$L as ml,AL as Nl,BI as Pl,BM as Zn,EL as f1,FD as u1,FM as Cn,HH as Gl,HM as Fr,IB as gi,JC as Dl,LC as x1,MD as $r,MG as J0,MH as $m,ML as rI,ND as V0,NH as wI,OF as Sm,OH as Ul,OL as iI,PD as or,PI as C,PL as nI,QD as Ai,RC as k1,RD as O0,RH as z1,SC as p1,SG as t,TD as Um,TI as $I,TL as W0,UC as Qm,UD as Il,VD as vl,VI as GI,VL as X0,WD as Mr,WI as Ln,XD as Am,XI as Cl,XL as Pm,YD as a1,ZD as Zi,ZG as vm,ZL as El,_C as II,_G as wm,_I as NI,aH as AI,aK as DI,cG as g1,dM as X1,eH as Ti,eJ as QI,eP as UI,fJ as S0,gG as Y0,hJ as d1,iB as Ii,iH as SI,iJ as A0,iO as gr,jJ as t1,kB as Xl,kH as h0,kJ as Al,kO as cl,lB as Fi,lJ as Sl,lO as H0,mD as MI,mG as T,mJ as b1,mM as Dm,nJ as e1,oD as Mi,oH as R0,oJ as W1,pB as o1,pJ as ec,pO as g,qJ as wl,rB as P1,rJ as s1,rM as sc,uH as hi,uM as jm,wD as O1,xD as L1,zD as K0,zH as vI,zL as T0}from"./chunk-snm5q21k.js";import{$P as jv,aQ as rr,bQ as Nr,dQ as bi}from"./chunk-aztre27e.js";var pm=rr((By)=>{Object.defineProperty(By,"__esModule",{value:!0});By.default=aA;var Ty=/[A-Z]/g;function hy(r){return r.toLowerCase()}function aA(r,i){let n=r.replace(Ty,hy),m=i.replace(Ty,hy);return n===m}});var Zc=rr((oy)=>{Object.defineProperty(oy,"__esModule",{value:!0});oy.DnsTxt=void 0;class Hc{constructor(r={}){this.binary=r?r.binary:!1}encode(r={}){return Object.entries(r).map(([i,n])=>{let m=`${i}=${n}`;return Buffer.from(m)})}decode(r){var i={};try{let m=r.toString().split(/=(.+)/),c=m[0],l=m[1];i[c]=l}catch(n){}return i}decodeAll(r){return r.filter((i)=>i.length>1).map((i)=>this.decode(i)).reduce((i,n)=>{var m=i;let[c]=Object.keys(n),[l]=Object.values(n);return m[c]=l,m},{})}}oy.DnsTxt=Hc;oy.default=Hc});var Vc=rr((py)=>{Object.defineProperty(py,"__esModule",{value:!0});py.toType=py.toString=void 0;var ky=(r)=>{return"_"+r},bA=(r)=>{return["name","protocol","subtype"].includes(r)},eA=(r)=>{let i={name:r.name,protocol:r.protocol,subtype:r.subtype};return Object.entries(i).filter(([m,c])=>bA(m)&&c!==void 0).reduce((m,[c,l])=>{switch(typeof l){case"object":l.map((y)=>m.push(ky(y)));break;default:m.push(ky(l));break}return m},[]).join(".")};py.toString=eA;var sA=(r)=>{let i=r.split("."),n;for(let m in i){if(i[m][0]!=="_")continue;i[m]=i[m].slice(1)}if(i.includes("sub"))n=i.shift(),i.shift();return{name:i.shift(),protocol:i.shift()||null,subtype:n}};py.toType=sA});var Jc=rr((ti)=>{var dy=ti&&ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ti,"__esModule",{value:!0});ti.Service=void 0;var ay=dy(bi("os")),rS=dy(Zc()),iS=bi("events"),nS=Vc(),um=".local";class Yc extends iS.EventEmitter{constructor(r){super();if(this.probe=!0,this.published=!1,this.activated=!1,this.destroyed=!1,this.txtService=new rS.default,!r.name)throw Error("ServiceConfig requires `name` property to be set");if(!r.type)throw Error("ServiceConfig requires `type` property to be set");if(!r.port)throw Error("ServiceConfig requires `port` property to be set");this.name=r.name.split(".").join("-"),this.protocol=r.protocol||"tcp",this.type=(0,nS.toString)({name:r.type,protocol:this.protocol}),this.port=r.port,this.host=r.host||ay.default.hostname(),this.fqdn=`${this.name}.${this.type}${um}`,this.txt=r.txt,this.subtypes=r.subtypes,this.disableIPv6=!!r.disableIPv6}records(){var r=[this.RecordPTR(this),this.RecordSRV(this),this.RecordTXT(this)];for(let n of this.subtypes||[])r.push(this.RecordSubtypePTR(this,n));let i=Object.values(ay.default.networkInterfaces());for(let n of i){let m=n;for(let c of m){if(c.internal||c.mac==="00:00:00:00:00:00")continue;switch(c.family){case"IPv4":r.push(this.RecordA(this,c.address));break;case"IPv6":if(this.disableIPv6)break;r.push(this.RecordAAAA(this,c.address));break}}}return r}RecordPTR(r){return{name:`${r.type}${um}`,type:"PTR",ttl:28800,data:r.fqdn}}RecordSubtypePTR(r,i){return{name:`_${i}._sub.${r.type}${um}`,type:"PTR",ttl:28800,data:`${r.name}.${r.type}${um}`}}RecordSRV(r){return{name:r.fqdn,type:"SRV",ttl:120,data:{port:r.port,target:r.host}}}RecordTXT(r){return{name:r.fqdn,type:"TXT",ttl:4500,data:this.txtService.encode(r.txt)}}RecordA(r,i){return{name:r.host,type:"A",ttl:120,data:i}}RecordAAAA(r,i){return{name:r.host,type:"AAAA",ttl:120,data:i}}}ti.Service=Yc;ti.default=Yc});var by=rr((ei)=>{var ty=ei&&ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ei,"__esModule",{value:!0});ei.Registry=void 0;var mS=ty(pm()),Rc=ty(Jc()),cS=3600000,lS=3,yS=function(){};class Oc{constructor(r){this.services=[],this.server=r}publish(r){function i(c,l,y){if(c.activated)return;if(c.activated=!0,l.services.push(c),!(c instanceof Rc.default))return;if(y===null||y===void 0?void 0:y.probe)l.probe(l.server.mdns,c,(j)=>{if(j){if(c.stop!==void 0)c.stop();console.log(Error("Service name is already in use on the network"));return}l.announce(l.server,c)});else l.announce(l.server,c)}function n(c,l,y){if(!y)y=yS;if(!c.activated)return process.nextTick(y);if(!(c instanceof Rc.default))return process.nextTick(y);l.teardown(l.server,c,y);let j=l.services.indexOf(c);if(j!==-1)l.services.splice(j,1)}let m=new Rc.default(r);return m.start=i.bind(null,m,this),m.stop=n.bind(null,m,this),m.start({probe:r.probe!==!1}),m}unpublishAll(r){this.teardown(this.server,this.services,r),this.services=[]}destroy(){this.services.map((r)=>r.destroyed=!0)}probe(r,i,n){var m=!1,c=0,l;let y=()=>{if(!i.activated||i.destroyed)return;r.query(i.fqdn,"ANY",function(){m=!0,l=setTimeout(++c<3?y:S,250),l.unref()})},j=(v)=>{if(!m)return;if(v.answers.some(A)||v.additionals.some(A))S(!0)},A=(v)=>{return(0,mS.default)(v.name,i.fqdn)},S=(v)=>{r.removeListener("response",j),clearTimeout(l),n(!!v)};r.on("response",j),setTimeout(y,Math.random()*250)}announce(r,i){var n=1000,m=i.records();r.register(m);let c=()=>{if(!i.activated||i.destroyed)return;r.mdns.respond(m,function(){if(!i.published)i.activated=!0,i.published=!0,i.emit("up");if(n=n*lS,n<cS&&!i.destroyed)setTimeout(c,n).unref()})};c()}teardown(r,i,n){if(!Array.isArray(i))i=[i];i=i.filter((c)=>c.activated);var m=i.flatMap(function(c){c.activated=!1;var l=c.records();return l.forEach((y)=>{y.ttl=0}),l});if(m.length===0)return n&&process.nextTick(n);r.unregister(m),r.mdns.respond(m,function(){if(i.forEach(function(c){c.published=!1}),typeof n==="function")n.apply(null,arguments)})}}ei.Registry=Oc;ei.default=Oc});var ey=rr((jS)=>{jS.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};jS.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}if(r.toUpperCase().startsWith("UNKNOWN_"))return parseInt(r.slice(8));return 0}});var sy=rr((SS)=>{SS.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};SS.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var fy=rr(($S)=>{$S.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};$S.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var rj=rr((ES)=>{ES.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};ES.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var ij=rr((US)=>{US.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}if(r<0)return null;return`OPTION_${r}`};US.toCode=function(r){if(typeof r==="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let i=r.match(/_(\d+)$/);if(i)return parseInt(i[1],10);return-1}});var cj=rr((mj,Lc)=>{var nj=function(r){Object.defineProperty(r,"__esModule",{value:!0}),r.decode=w,r.encode=v,r.familyOf=S,r.name=void 0,r.sizeOf=A,r.v6=r.v4=void 0;let i=/^(\d{1,3}\.){3,3}\d{1,3}$/,n=4,m=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,c=16,l={name:"v4",size:n,isFormat:(N)=>i.test(N),encode(N,E,Q){Q=~~Q,E=E||new Uint8Array(Q+n);let W=N.length,Z=0;for(let X=0;X<W;){let K=N.charCodeAt(X++);if(K===46)E[Q++]=Z,Z=0;else Z=Z*10+(K-48)}return E[Q]=Z,E},decode(N,E){return E=~~E,`${N[E++]}.${N[E++]}.${N[E++]}.${N[E]}`}};r.v4=l;let y={name:"v6",size:c,isFormat:(N)=>N.length>0&&m.test(N),encode(N,E,Q){Q=~~Q;let W=Q+c,Z=-1,X=0,K=0,R=!0,q=!1;E=E||new Uint8Array(Q+c);for(let z=0;z<N.length;z++){let L=N.charCodeAt(z);if(L===58){if(R){if(Z!==-1){if(Q<W)E[Q]=0;if(Q<W-1)E[Q+1]=0;Q+=2}else if(Q<W)Z=Q}else{if(q===!0){if(Q<W)E[Q]=K;Q++}else{if(Q<W)E[Q]=X>>8;if(Q<W-1)E[Q+1]=X&255;Q+=2}X=0,K=0}R=!0,q=!1}else if(L===46){if(Q<W)E[Q]=K;Q++,K=0,X=0,R=!1,q=!0}else{if(R=!1,L>=97)L-=87;else if(L>=65)L-=55;else L-=48,K=K*10+L;X=(X<<4)+L}}if(R===!1)if(q===!0){if(Q<W)E[Q]=K;Q++}else{if(Q<W)E[Q]=X>>8;if(Q<W-1)E[Q+1]=X&255;Q+=2}else if(Z===0){if(Q<W)E[Q]=0;if(Q<W-1)E[Q+1]=0;Q+=2}else if(Z!==-1){Q+=2;for(let z=Math.min(Q-1,W-1);z>=Z+2;z--)E[z]=E[z-2];E[Z]=0,E[Z+1]=0,Z=Q}if(Z!==Q&&Z!==-1){if(Q>W-2)Q=W-2;while(W>Z)E[--W]=Q<W&&Q>Z?E[--Q]:0}else while(Q<W)E[Q++]=0;return E},decode(N,E){E=~~E;let Q="";for(let W=0;W<c;W+=2){if(W!==0)Q+=":";Q+=(N[E+W]<<8|N[E+W+1]).toString(16)}return Q.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=y;let j="ip";r.name=j;function A(N){if(l.isFormat(N))return l.size;if(y.isFormat(N))return y.size;throw Error(`Invalid ip address: ${N}`)}function S(N){return A(N)===l.size?1:2}function v(N,E,Q){Q=~~Q;let W=A(N);if(typeof E==="function")E=E(Q+W);if(W===l.size)return l.encode(N,E,Q);return y.encode(N,E,Q)}function w(N,E,Q){if(E=~~E,Q=Q||N.length-E,Q===l.size)return l.decode(N,E,Q);if(Q===y.size)return y.decode(N,E,Q);throw Error(`Invalid buffer size needs to be ${l.size} for v4 or ${y.size} for v6.`)}return"default"in r?r.default:r}({});if(typeof define==="function"&&define.amd)define([],function(){return nj});else if(typeof Lc==="object"&&typeof mj==="object")Lc.exports=nj});var lj=rr((ZS)=>{var Y=bi("buffer").Buffer,Pi=ey(),WS=sy(),XS=fy(),dm=rj(),Fc=ij(),si=cj(),H=ZS.name={};H.encode=function(r,i,n,{mail:m=!1}={}){if(!i)i=Y.alloc(H.encodingLength(r));if(!n)n=0;let c=n,l=r.replace(/^\.|\.$/gm,"");if(l.length){let y=[];if(m){let j="";l.split(".").forEach((A)=>{if(A.endsWith("\\"))j+=(j.length?".":"")+A.slice(0,-1);else if(y.length===0&&j.length)y.push(j+"."+A);else y.push(A)})}else y=l.split(".");for(let j=0;j<y.length;j++){let A=i.write(y[j],n+1);i[n]=A,n+=A+1}}return i[n++]=0,H.encode.bytes=n-c,i};H.encode.bytes=0;H.decode=function(r,i,{mail:n=!1}={}){if(!i)i=0;let m=[],c=i,l=0,y=0,j=!1;while(!0){if(i>=r.length)throw Error("Cannot decode name (buffer overflow)");let A=r[i++];if(y+=j?0:1,A===0)break;else if((A&192)===0){if(i+A>r.length)throw Error("Cannot decode name (buffer overflow)");if(l+=A+1,l>254)throw Error("Cannot decode name (name too long)");let S=r.toString("utf-8",i,i+A);if(n)S=S.replace(/\./g,"\\.");m.push(S),i+=A,y+=j?0:A}else if((A&192)===192){if(i+1>r.length)throw Error("Cannot decode name (buffer overflow)");let S=r.readUInt16BE(i-1)-49152;if(S>=c)throw Error("Cannot decode name (bad pointer)");i=S,c=S,y+=j?0:1,j=!0}else throw Error("Cannot decode name (bad label)")}return H.decode.bytes=y,m.length===0?".":m.join(".")};H.decode.bytes=0;H.encodingLength=function(r){if(r==="."||r==="..")return 1;return Y.byteLength(r.replace(/^\.|\.$/gm,""))+2};var O={};O.encode=function(r,i,n){if(!i)i=Y.alloc(O.encodingLength(r));if(!n)n=0;let m=i.write(r,n+1);return i[n]=m,O.encode.bytes=m+1,i};O.encode.bytes=0;O.decode=function(r,i){if(!i)i=0;let n=r[i],m=r.toString("utf-8",i+1,i+1+n);return O.decode.bytes=n+1,m};O.decode.bytes=0;O.encodingLength=function(r){return Y.byteLength(r)+1};var ar={};ar.encode=function(r,i,n){if(!i)i=ar.encodingLength(r);if(!n)n=0;let m=(r.flags||0)&32767,c=r.type==="response"?32768:0;return i.writeUInt16BE(r.id||0,n),i.writeUInt16BE(m|c,n+2),i.writeUInt16BE(r.questions.length,n+4),i.writeUInt16BE(r.answers.length,n+6),i.writeUInt16BE(r.authorities.length,n+8),i.writeUInt16BE(r.additionals.length,n+10),i};ar.encode.bytes=12;ar.decode=function(r,i){if(!i)i=0;if(r.length<12)throw Error("Header must be 12 bytes");let n=r.readUInt16BE(i+2);return{id:r.readUInt16BE(i),type:n&32768?"response":"query",flags:n&32767,flag_qr:(n>>15&1)===1,opcode:XS.toString(n>>11&15),flag_aa:(n>>10&1)===1,flag_tc:(n>>9&1)===1,flag_rd:(n>>8&1)===1,flag_ra:(n>>7&1)===1,flag_z:(n>>6&1)===1,flag_ad:(n>>5&1)===1,flag_cd:(n>>4&1)===1,rcode:WS.toString(n&15),questions:Array(r.readUInt16BE(i+4)),answers:Array(r.readUInt16BE(i+6)),authorities:Array(r.readUInt16BE(i+8)),additionals:Array(r.readUInt16BE(i+10))}};ar.decode.bytes=12;ar.encodingLength=function(){return 12};var vi=ZS.unknown={};vi.encode=function(r,i,n){if(!i)i=Y.alloc(vi.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(r.length,n),r.copy(i,n+2),vi.encode.bytes=r.length+2,i};vi.encode.bytes=0;vi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m=r.slice(i+2,i+2+n);return vi.decode.bytes=n+2,m};vi.decode.bytes=0;vi.encodingLength=function(r){return r.length+2};var wi=ZS.ns={};wi.encode=function(r,i,n){if(!i)i=Y.alloc(wi.encodingLength(r));if(!n)n=0;return H.encode(r,i,n+2),i.writeUInt16BE(H.encode.bytes,n),wi.encode.bytes=H.encode.bytes+2,i};wi.encode.bytes=0;wi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m=H.decode(r,i+2);return wi.decode.bytes=n+2,m};wi.decode.bytes=0;wi.encodingLength=function(r){return H.encodingLength(r)+2};var $i=ZS.soa={};$i.encode=function(r,i,n){if(!i)i=Y.alloc($i.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.mname,i,n),n+=H.encode.bytes,H.encode(r.rname,i,n,{mail:!0}),n+=H.encode.bytes,i.writeUInt32BE(r.serial||0,n),n+=4,i.writeUInt32BE(r.refresh||0,n),n+=4,i.writeUInt32BE(r.retry||0,n),n+=4,i.writeUInt32BE(r.expire||0,n),n+=4,i.writeUInt32BE(r.minimum||0,n),n+=4,i.writeUInt16BE(n-m-2,m),$i.encode.bytes=n-m,i};$i.encode.bytes=0;$i.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.mname=H.decode(r,i),i+=H.decode.bytes,m.rname=H.decode(r,i,{mail:!0}),i+=H.decode.bytes,m.serial=r.readUInt32BE(i),i+=4,m.refresh=r.readUInt32BE(i),i+=4,m.retry=r.readUInt32BE(i),i+=4,m.expire=r.readUInt32BE(i),i+=4,m.minimum=r.readUInt32BE(i),i+=4,$i.decode.bytes=i-n,m};$i.decode.bytes=0;$i.encodingLength=function(r){return 22+H.encodingLength(r.mname)+H.encodingLength(r.rname)};var Gi=ZS.txt={};Gi.encode=function(r,i,n){if(!Array.isArray(r))r=[r];for(let c=0;c<r.length;c++){if(typeof r[c]==="string")r[c]=Y.from(r[c]);if(!Y.isBuffer(r[c]))throw Error("Must be a Buffer")}if(!i)i=Y.alloc(Gi.encodingLength(r));if(!n)n=0;let m=n;return n+=2,r.forEach(function(c){i[n++]=c.length,c.copy(i,n,0,c.length),n+=c.length}),i.writeUInt16BE(n-m-2,m),Gi.encode.bytes=n-m,i};Gi.encode.bytes=0;Gi.decode=function(r,i){if(!i)i=0;let n=i,m=r.readUInt16BE(i);i+=2;let c=[];while(m>0){let l=r[i++];if(--m,m<l)throw Error("Buffer overflow");c.push(r.slice(i,i+l)),i+=l,m-=l}return Gi.decode.bytes=i-n,c};Gi.decode.bytes=0;Gi.encodingLength=function(r){if(!Array.isArray(r))r=[r];let i=2;return r.forEach(function(n){if(typeof n==="string")i+=Y.byteLength(n)+1;else i+=n.length+1}),i};var Ni=ZS.null={};Ni.encode=function(r,i,n){if(!i)i=Y.alloc(Ni.encodingLength(r));if(!n)n=0;if(typeof r==="string")r=Y.from(r);if(!r)r=Y.alloc(0);let m=n;n+=2;let c=r.length;return r.copy(i,n,0,c),n+=c,i.writeUInt16BE(n-m-2,m),Ni.encode.bytes=n-m,i};Ni.encode.bytes=0;Ni.decode=function(r,i){if(!i)i=0;let n=i,m=r.readUInt16BE(i);i+=2;let c=r.slice(i,i+m);return i+=m,Ni.decode.bytes=i-n,c};Ni.decode.bytes=0;Ni.encodingLength=function(r){if(!r)return 2;return(Y.isBuffer(r)?r.length:Y.byteLength(r))+2};var Ei=ZS.hinfo={};Ei.encode=function(r,i,n){if(!i)i=Y.alloc(Ei.encodingLength(r));if(!n)n=0;let m=n;return n+=2,O.encode(r.cpu,i,n),n+=O.encode.bytes,O.encode(r.os,i,n),n+=O.encode.bytes,i.writeUInt16BE(n-m-2,m),Ei.encode.bytes=n-m,i};Ei.encode.bytes=0;Ei.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.cpu=O.decode(r,i),i+=O.decode.bytes,m.os=O.decode(r,i),i+=O.decode.bytes,Ei.decode.bytes=i-n,m};Ei.decode.bytes=0;Ei.encodingLength=function(r){return O.encodingLength(r.cpu)+O.encodingLength(r.os)+2};var pr=ZS.ptr={},KS=ZS.cname=pr,HS=ZS.dname=pr;pr.encode=function(r,i,n){if(!i)i=Y.alloc(pr.encodingLength(r));if(!n)n=0;return H.encode(r,i,n+2),i.writeUInt16BE(H.encode.bytes,n),pr.encode.bytes=H.encode.bytes+2,i};pr.encode.bytes=0;pr.decode=function(r,i){if(!i)i=0;let n=H.decode(r,i+2);return pr.decode.bytes=H.decode.bytes+2,n};pr.decode.bytes=0;pr.encodingLength=function(r){return H.encodingLength(r)+2};var Qi=ZS.srv={};Qi.encode=function(r,i,n){if(!i)i=Y.alloc(Qi.encodingLength(r));if(!n)n=0;i.writeUInt16BE(r.priority||0,n+2),i.writeUInt16BE(r.weight||0,n+4),i.writeUInt16BE(r.port||0,n+6),H.encode(r.target,i,n+8);let m=H.encode.bytes+6;return i.writeUInt16BE(m,n),Qi.encode.bytes=m+2,i};Qi.encode.bytes=0;Qi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m={};return m.priority=r.readUInt16BE(i+2),m.weight=r.readUInt16BE(i+4),m.port=r.readUInt16BE(i+6),m.target=H.decode(r,i+8),Qi.decode.bytes=n+2,m};Qi.decode.bytes=0;Qi.encodingLength=function(r){return 8+H.encodingLength(r.target)};var Jr=ZS.caa={};Jr.ISSUER_CRITICAL=128;Jr.encode=function(r,i,n){let m=Jr.encodingLength(r);if(!i)i=Y.alloc(Jr.encodingLength(r));if(!n)n=0;if(r.issuerCritical)r.flags=Jr.ISSUER_CRITICAL;return i.writeUInt16BE(m-2,n),n+=2,i.writeUInt8(r.flags||0,n),n+=1,O.encode(r.tag,i,n),n+=O.encode.bytes,i.write(r.value,n),n+=Y.byteLength(r.value),Jr.encode.bytes=m,i};Jr.encode.bytes=0;Jr.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i);i+=2;let m=i,c={};return c.flags=r.readUInt8(i),i+=1,c.tag=O.decode(r,i),i+=O.decode.bytes,c.value=r.toString("utf-8",i,m+n),c.issuerCritical=!!(c.flags&Jr.ISSUER_CRITICAL),Jr.decode.bytes=n+2,c};Jr.decode.bytes=0;Jr.encodingLength=function(r){return O.encodingLength(r.tag)+O.encodingLength(r.value)+2};var Ri=ZS.mx={};Ri.encode=function(r,i,n){if(!i)i=Y.alloc(Ri.encodingLength(r));if(!n)n=0;let m=n;return n+=2,i.writeUInt16BE(r.preference||0,n),n+=2,H.encode(r.exchange,i,n),n+=H.encode.bytes,i.writeUInt16BE(n-m-2,m),Ri.encode.bytes=n-m,i};Ri.encode.bytes=0;Ri.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.preference=r.readUInt16BE(i),i+=2,m.exchange=H.decode(r,i),i+=H.decode.bytes,Ri.decode.bytes=i-n,m};Ri.encodingLength=function(r){return 4+H.encodingLength(r.exchange)};var Di=ZS.a={};Di.encode=function(r,i,n){if(!i)i=Y.alloc(Di.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(4,n),n+=2,si.v4.encode(r,i,n),Di.encode.bytes=6,i};Di.encode.bytes=0;Di.decode=function(r,i){if(!i)i=0;i+=2;let n=si.v4.decode(r,i);return Di.decode.bytes=6,n};Di.decode.bytes=0;Di.encodingLength=function(){return 6};var Ui=ZS.aaaa={};Ui.encode=function(r,i,n){if(!i)i=Y.alloc(Ui.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(16,n),n+=2,si.v6.encode(r,i,n),Ui.encode.bytes=18,i};Ui.encode.bytes=0;Ui.decode=function(r,i){if(!i)i=0;i+=2;let n=si.v6.decode(r,i);return Ui.decode.bytes=18,n};Ui.decode.bytes=0;Ui.encodingLength=function(){return 18};var Kr=ZS.option={};Kr.encode=function(r,i,n){if(!i)i=Y.alloc(Kr.encodingLength(r));if(!n)n=0;let m=n,c=Fc.toCode(r.code);if(i.writeUInt16BE(c,n),n+=2,r.data)i.writeUInt16BE(r.data.length,n),n+=2,r.data.copy(i,n),n+=r.data.length;else switch(c){case 8:let l=r.sourcePrefixLength||0,y=r.family||si.familyOf(r.ip),j=si.encode(r.ip,Y.alloc),A=Math.ceil(l/8);i.writeUInt16BE(A+4,n),n+=2,i.writeUInt16BE(y,n),n+=2,i.writeUInt8(l,n++),i.writeUInt8(r.scopePrefixLength||0,n++),j.copy(i,n,0,A),n+=A;break;case 11:if(r.timeout)i.writeUInt16BE(2,n),n+=2,i.writeUInt16BE(r.timeout,n),n+=2;else i.writeUInt16BE(0,n),n+=2;break;case 12:let S=r.length||0;i.writeUInt16BE(S,n),n+=2,i.fill(0,n,n+S),n+=S;break;case 14:let v=r.tags.length*2;i.writeUInt16BE(v,n),n+=2;for(let w of r.tags)i.writeUInt16BE(w,n),n+=2;break;default:throw Error(`Unknown roption code: ${r.code}`)}return Kr.encode.bytes=n-m,i};Kr.encode.bytes=0;Kr.decode=function(r,i){if(!i)i=0;let n={};n.code=r.readUInt16BE(i),n.type=Fc.toString(n.code),i+=2;let m=r.readUInt16BE(i);switch(i+=2,n.data=r.slice(i,i+m),n.code){case 8:n.family=r.readUInt16BE(i),i+=2,n.sourcePrefixLength=r.readUInt8(i++),n.scopePrefixLength=r.readUInt8(i++);let c=Y.alloc(n.family===1?4:16);r.copy(c,0,i,i+m-4),n.ip=si.decode(c);break;case 11:if(m>0)n.timeout=r.readUInt16BE(i),i+=2;break;case 14:n.tags=[];for(let l=0;l<m;l+=2)n.tags.push(r.readUInt16BE(i)),i+=2}return Kr.decode.bytes=m+4,n};Kr.decode.bytes=0;Kr.encodingLength=function(r){if(r.data)return r.data.length+4;switch(Fc.toCode(r.code)){case 8:let n=r.sourcePrefixLength||0;return Math.ceil(n/8)+8;case 11:return typeof r.timeout==="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw Error(`Unknown roption code: ${r.code}`)};var Or=ZS.opt={};Or.encode=function(r,i,n){if(!i)i=Y.alloc(Or.encodingLength(r));if(!n)n=0;let m=n,c=$n(r,Kr);return i.writeUInt16BE(c,n),n=pn(r,Kr,i,n+2),Or.encode.bytes=n-m,i};Or.encode.bytes=0;Or.decode=function(r,i){if(!i)i=0;let n=i,m=[],c=r.readUInt16BE(i);i+=2;let l=0;while(c>0)m[l++]=Kr.decode(r,i),i+=Kr.decode.bytes,c-=Kr.decode.bytes;return Or.decode.bytes=i-n,m};Or.decode.bytes=0;Or.encodingLength=function(r){return 2+$n(r||[],Kr)};var Ur=ZS.dnskey={};Ur.PROTOCOL_DNSSEC=3;Ur.ZONE_KEY=128;Ur.SECURE_ENTRYPOINT=32768;Ur.encode=function(r,i,n){if(!i)i=Y.alloc(Ur.encodingLength(r));if(!n)n=0;let m=n,c=r.key;if(!Y.isBuffer(c))throw Error("Key must be a Buffer");return n+=2,i.writeUInt16BE(r.flags,n),n+=2,i.writeUInt8(Ur.PROTOCOL_DNSSEC,n),n+=1,i.writeUInt8(r.algorithm,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,Ur.encode.bytes=n-m,i.writeUInt16BE(Ur.encode.bytes-2,m),i};Ur.encode.bytes=0;Ur.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);if(i+=2,m.flags=r.readUInt16BE(i),i+=2,r.readUInt8(i)!==Ur.PROTOCOL_DNSSEC)throw Error("Protocol must be 3");return i+=1,m.algorithm=r.readUInt8(i),i+=1,m.key=r.slice(i,n+c+2),i+=m.key.length,Ur.decode.bytes=i-n,m};Ur.decode.bytes=0;Ur.encodingLength=function(r){return 6+Y.byteLength(r.key)};var sr=ZS.rrsig={};sr.encode=function(r,i,n){if(!i)i=Y.alloc(sr.encodingLength(r));if(!n)n=0;let m=n,c=r.signature;if(!Y.isBuffer(c))throw Error("Signature must be a Buffer");return n+=2,i.writeUInt16BE(Pi.toType(r.typeCovered),n),n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.labels,n),n+=1,i.writeUInt32BE(r.originalTTL,n),n+=4,i.writeUInt32BE(r.expiration,n),n+=4,i.writeUInt32BE(r.inception,n),n+=4,i.writeUInt16BE(r.keyTag,n),n+=2,H.encode(r.signersName,i,n),n+=H.encode.bytes,c.copy(i,n,0,c.length),n+=c.length,sr.encode.bytes=n-m,i.writeUInt16BE(sr.encode.bytes-2,m),i};sr.encode.bytes=0;sr.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.typeCovered=Pi.toString(r.readUInt16BE(i)),i+=2,m.algorithm=r.readUInt8(i),i+=1,m.labels=r.readUInt8(i),i+=1,m.originalTTL=r.readUInt32BE(i),i+=4,m.expiration=r.readUInt32BE(i),i+=4,m.inception=r.readUInt32BE(i),i+=4,m.keyTag=r.readUInt16BE(i),i+=2,m.signersName=H.decode(r,i),i+=H.decode.bytes,m.signature=r.slice(i,n+c+2),i+=m.signature.length,sr.decode.bytes=i-n,m};sr.decode.bytes=0;sr.encodingLength=function(r){return 20+H.encodingLength(r.signersName)+Y.byteLength(r.signature)};var fr=ZS.rp={};fr.encode=function(r,i,n){if(!i)i=Y.alloc(fr.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.mbox||".",i,n,{mail:!0}),n+=H.encode.bytes,H.encode(r.txt||".",i,n),n+=H.encode.bytes,fr.encode.bytes=n-m,i.writeUInt16BE(fr.encode.bytes-2,m),i};fr.encode.bytes=0;fr.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.mbox=H.decode(r,i,{mail:!0})||".",i+=H.decode.bytes,m.txt=H.decode(r,i)||".",i+=H.decode.bytes,fr.decode.bytes=i-n,m};fr.decode.bytes=0;fr.encodingLength=function(r){return 2+H.encodingLength(r.mbox||".")+H.encodingLength(r.txt||".")};var jr={};jr.encode=function(r,i,n){if(!i)i=Y.alloc(jr.encodingLength(r));if(!n)n=0;let m=n;var c=[];for(var l=0;l<r.length;l++){var y=Pi.toType(r[l]);if(c[y>>8]===void 0)c[y>>8]=[];c[y>>8][y>>3&31]|=1<<7-(y&7)}for(l=0;l<c.length;l++)if(c[l]!==void 0){var j=Y.from(c[l]);i.writeUInt8(l,n),n+=1,i.writeUInt8(j.length,n),n+=1,j.copy(i,n),n+=j.length}return jr.encode.bytes=n-m,i};jr.encode.bytes=0;jr.decode=function(r,i,n){if(!i)i=0;let m=i;var c=[];while(i-m<n){var l=r.readUInt8(i);i+=1;var y=r.readUInt8(i);i+=1;for(var j=0;j<y;j++){var A=r.readUInt8(i+j);for(var S=0;S<8;S++)if(A&1<<7-S){var v=Pi.toString(l<<8|j<<3|S);c.push(v)}}i+=y}return jr.decode.bytes=i-m,c};jr.decode.bytes=0;jr.encodingLength=function(r){var i=[];for(var n=0;n<r.length;n++){var m=Pi.toType(r[n]);i[m>>8]=Math.max(i[m>>8]||0,m&255)}var c=0;for(n=0;n<i.length;n++)if(i[n]!==void 0)c+=2+Math.ceil((i[n]+1)/8);return c};var ri=ZS.nsec={};ri.encode=function(r,i,n){if(!i)i=Y.alloc(ri.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.nextDomain,i,n),n+=H.encode.bytes,jr.encode(r.rrtypes,i,n),n+=jr.encode.bytes,ri.encode.bytes=n-m,i.writeUInt16BE(ri.encode.bytes-2,m),i};ri.encode.bytes=0;ri.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.nextDomain=H.decode(r,i),i+=H.decode.bytes,m.rrtypes=jr.decode(r,i,c-(i-n)),i+=jr.decode.bytes,ri.decode.bytes=i-n,m};ri.decode.bytes=0;ri.encodingLength=function(r){return 2+H.encodingLength(r.nextDomain)+jr.encodingLength(r.rrtypes)};var ii=ZS.nsec3={};ii.encode=function(r,i,n){if(!i)i=Y.alloc(ii.encodingLength(r));if(!n)n=0;let m=n,c=r.salt;if(!Y.isBuffer(c))throw Error("salt must be a Buffer");let l=r.nextDomain;if(!Y.isBuffer(l))throw Error("nextDomain must be a Buffer");return n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.flags,n),n+=1,i.writeUInt16BE(r.iterations,n),n+=2,i.writeUInt8(c.length,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,i.writeUInt8(l.length,n),n+=1,l.copy(i,n,0,l.length),n+=l.length,jr.encode(r.rrtypes,i,n),n+=jr.encode.bytes,ii.encode.bytes=n-m,i.writeUInt16BE(ii.encode.bytes-2,m),i};ii.encode.bytes=0;ii.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);i+=2,m.algorithm=r.readUInt8(i),i+=1,m.flags=r.readUInt8(i),i+=1,m.iterations=r.readUInt16BE(i),i+=2;let l=r.readUInt8(i);i+=1,m.salt=r.slice(i,i+l),i+=l;let y=r.readUInt8(i);return i+=1,m.nextDomain=r.slice(i,i+y),i+=y,m.rrtypes=jr.decode(r,i,c-(i-n)),i+=jr.decode.bytes,ii.decode.bytes=i-n,m};ii.decode.bytes=0;ii.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+jr.encodingLength(r.rrtypes)};var ni=ZS.ds={};ni.encode=function(r,i,n){if(!i)i=Y.alloc(ni.encodingLength(r));if(!n)n=0;let m=n,c=r.digest;if(!Y.isBuffer(c))throw Error("Digest must be a Buffer");return n+=2,i.writeUInt16BE(r.keyTag,n),n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.digestType,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,ni.encode.bytes=n-m,i.writeUInt16BE(ni.encode.bytes-2,m),i};ni.encode.bytes=0;ni.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.keyTag=r.readUInt16BE(i),i+=2,m.algorithm=r.readUInt8(i),i+=1,m.digestType=r.readUInt8(i),i+=1,m.digest=r.slice(i,n+c+2),i+=m.digest.length,ni.decode.bytes=i-n,m};ni.decode.bytes=0;ni.encodingLength=function(r){return 6+Y.byteLength(r.digest)};var Rr=ZS.sshfp={};Rr.getFingerprintLengthForHashType=function(i){switch(i){case 1:return 20;case 2:return 32}};Rr.encode=function(i,n,m){if(!n)n=Y.alloc(Rr.encodingLength(i));if(!m)m=0;let c=m;m+=2,n[m]=i.algorithm,m+=1,n[m]=i.hash,m+=1;let l=Y.from(i.fingerprint.toUpperCase(),"hex");if(l.length!==Rr.getFingerprintLengthForHashType(i.hash))throw Error("Invalid fingerprint length");return l.copy(n,m),m+=l.byteLength,Rr.encode.bytes=m-c,n.writeUInt16BE(Rr.encode.bytes-2,c),n};Rr.encode.bytes=0;Rr.decode=function(i,n){if(!n)n=0;let m=n,c={};n+=2,c.algorithm=i[n],n+=1,c.hash=i[n],n+=1;let l=Rr.getFingerprintLengthForHashType(c.hash);return c.fingerprint=i.slice(n,n+l).toString("hex").toUpperCase(),n+=l,Rr.decode.bytes=n-m,c};Rr.decode.bytes=0;Rr.encodingLength=function(r){return 4+Y.from(r.fingerprint,"hex").byteLength};var mi=ZS.naptr={};mi.encode=function(r,i,n){if(!i)i=Y.alloc(mi.encodingLength(r));if(!n)n=0;let m=n;return n+=2,i.writeUInt16BE(r.order||0,n),n+=2,i.writeUInt16BE(r.preference||0,n),n+=2,O.encode(r.flags,i,n),n+=O.encode.bytes,O.encode(r.services,i,n),n+=O.encode.bytes,O.encode(r.regexp,i,n),n+=O.encode.bytes,H.encode(r.replacement,i,n),n+=H.encode.bytes,mi.encode.bytes=n-m,i.writeUInt16BE(mi.encode.bytes-2,m),i};mi.encode.bytes=0;mi.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.order=r.readUInt16BE(i),i+=2,m.preference=r.readUInt16BE(i),i+=2,m.flags=O.decode(r,i),i+=O.decode.bytes,m.services=O.decode(r,i),i+=O.decode.bytes,m.regexp=O.decode(r,i),i+=O.decode.bytes,m.replacement=H.decode(r,i),i+=H.decode.bytes,mi.decode.bytes=i-n,m};mi.decode.bytes=0;mi.encodingLength=function(r){return O.encodingLength(r.flags)+O.encodingLength(r.services)+O.encodingLength(r.regexp)+H.encodingLength(r.replacement)+6};var ci=ZS.tlsa={};ci.encode=function(r,i,n){if(!i)i=Y.alloc(ci.encodingLength(r));if(!n)n=0;let m=n,c=r.certificate;if(!Y.isBuffer(c))throw Error("Certificate must be a Buffer");return n+=2,i.writeUInt8(r.usage,n),n+=1,i.writeUInt8(r.selector,n),n+=1,i.writeUInt8(r.matchingType,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,ci.encode.bytes=n-m,i.writeUInt16BE(ci.encode.bytes-2,m),i};ci.encode.bytes=0;ci.decode=function(r,i){if(!i)i=0;let n=i,m={},c=r.readUInt16BE(i);return i+=2,m.usage=r.readUInt8(i),i+=1,m.selector=r.readUInt8(i),i+=1,m.matchingType=r.readUInt8(i),i+=1,m.certificate=r.slice(i,n+c+2),i+=m.certificate.length,ci.decode.bytes=i-n,m};ci.decode.bytes=0;ci.encodingLength=function(r){return 5+Y.byteLength(r.certificate)};var gc=ZS.record=function(r){switch(r.toUpperCase()){case"A":return Di;case"PTR":return pr;case"CNAME":return KS;case"DNAME":return HS;case"TXT":return Gi;case"NULL":return Ni;case"AAAA":return Ui;case"SRV":return Qi;case"HINFO":return Ei;case"CAA":return Jr;case"NS":return wi;case"SOA":return $i;case"MX":return Ri;case"OPT":return Or;case"DNSKEY":return Ur;case"RRSIG":return sr;case"RP":return fr;case"NSEC":return ri;case"NSEC3":return ii;case"SSHFP":return Rr;case"DS":return ni;case"NAPTR":return mi;case"TLSA":return ci}return vi},Sr=ZS.answer={};Sr.encode=function(r,i,n){if(!i)i=Y.alloc(Sr.encodingLength(r));if(!n)n=0;let m=n;if(H.encode(r.name,i,n),n+=H.encode.bytes,i.writeUInt16BE(Pi.toType(r.type),n),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw Error("OPT name must be root.");i.writeUInt16BE(r.udpPayloadSize||4096,n+2),i.writeUInt8(r.extendedRcode||0,n+4),i.writeUInt8(r.ednsVersion||0,n+5),i.writeUInt16BE(r.flags||0,n+6),n+=8,Or.encode(r.options||[],i,n),n+=Or.encode.bytes}else{let c=dm.toClass(r.class===void 0?"IN":r.class);if(r.flush)c|=32768;i.writeUInt16BE(c,n+2),i.writeUInt32BE(r.ttl||0,n+4),n+=8;let l=gc(r.type);l.encode(r.data,i,n),n+=l.encode.bytes}return Sr.encode.bytes=n-m,i};Sr.encode.bytes=0;Sr.decode=function(r,i){if(!i)i=0;let n={},m=i;if(n.name=H.decode(r,i),i+=H.decode.bytes,n.type=Pi.toString(r.readUInt16BE(i)),n.type==="OPT")n.udpPayloadSize=r.readUInt16BE(i+2),n.extendedRcode=r.readUInt8(i+4),n.ednsVersion=r.readUInt8(i+5),n.flags=r.readUInt16BE(i+6),n.flag_do=(n.flags>>15&1)===1,n.options=Or.decode(r,i+8),i+=8+Or.decode.bytes;else{let c=r.readUInt16BE(i+2);n.ttl=r.readUInt32BE(i+4),n.class=dm.toString(c&-32769),n.flush=!!(c&32768);let l=gc(n.type);n.data=l.decode(r,i+8),i+=8+l.decode.bytes}return Sr.decode.bytes=i-m,n};Sr.decode.bytes=0;Sr.encodingLength=function(r){let i=r.data!==null&&r.data!==void 0?r.data:r.options;return H.encodingLength(r.name)+8+gc(r.type).encodingLength(i)};var ur=ZS.question={};ur.encode=function(r,i,n){if(!i)i=Y.alloc(ur.encodingLength(r));if(!n)n=0;let m=n;return H.encode(r.name,i,n),n+=H.encode.bytes,i.writeUInt16BE(Pi.toType(r.type),n),n+=2,i.writeUInt16BE(dm.toClass(r.class===void 0?"IN":r.class),n),n+=2,ur.encode.bytes=n-m,r};ur.encode.bytes=0;ur.decode=function(r,i){if(!i)i=0;let n=i,m={};if(m.name=H.decode(r,i),i+=H.decode.bytes,m.type=Pi.toString(r.readUInt16BE(i)),i+=2,m.class=dm.toString(r.readUInt16BE(i)),i+=2,!!(m.class&32768))m.class&=-32769;return ur.decode.bytes=i-n,m};ur.decode.bytes=0;ur.encodingLength=function(r){return H.encodingLength(r.name)+4};ZS.AUTHORITATIVE_ANSWER=1024;ZS.TRUNCATED_RESPONSE=512;ZS.RECURSION_DESIRED=256;ZS.RECURSION_AVAILABLE=128;ZS.AUTHENTIC_DATA=32;ZS.CHECKING_DISABLED=16;ZS.DNSSEC_OK=32768;ZS.encode=function(r,i,n){let m=!i;if(m)i=Y.alloc(ZS.encodingLength(r));if(!n)n=0;let c=n;if(!r.questions)r.questions=[];if(!r.answers)r.answers=[];if(!r.authorities)r.authorities=[];if(!r.additionals)r.additionals=[];if(ar.encode(r,i,n),n+=ar.encode.bytes,n=pn(r.questions,ur,i,n),n=pn(r.answers,Sr,i,n),n=pn(r.authorities,Sr,i,n),n=pn(r.additionals,Sr,i,n),ZS.encode.bytes=n-c,m&&ZS.encode.bytes!==i.length)return i.slice(0,ZS.encode.bytes);return i};ZS.encode.bytes=0;ZS.decode=function(r,i){if(!i)i=0;let n=i,m=ar.decode(r,i);return i+=ar.decode.bytes,i=am(m.questions,ur,r,i),i=am(m.answers,Sr,r,i),i=am(m.authorities,Sr,r,i),i=am(m.additionals,Sr,r,i),ZS.decode.bytes=i-n,m};ZS.decode.bytes=0;ZS.encodingLength=function(r){return ar.encodingLength(r)+$n(r.questions||[],ur)+$n(r.answers||[],Sr)+$n(r.authorities||[],Sr)+$n(r.additionals||[],Sr)};ZS.streamEncode=function(r){let i=ZS.encode(r),n=Y.alloc(2);n.writeUInt16BE(i.byteLength);let m=Y.concat([n,i]);return ZS.streamEncode.bytes=m.byteLength,m};ZS.streamEncode.bytes=0;ZS.streamDecode=function(r){let i=r.readUInt16BE(0);if(r.byteLength<i+2)return null;let n=ZS.decode(r.slice(2));return ZS.streamDecode.bytes=ZS.decode.bytes,n};ZS.streamDecode.bytes=0;function $n(r,i){let n=0;for(let m=0;m<r.length;m++)n+=i.encodingLength(r[m]);return n}function pn(r,i,n,m){for(let c=0;c<r.length;c++)i.encode(r[c],n,m),m+=i.encode.bytes;return m}function am(r,i,n,m){for(let c=0;c<r.length;c++)r[c]=i.decode(n,m),m+=i.decode.bytes;return m}});var Ij=rr((eQ,jj)=>{var yj=hS;process.nextTick(TS,42);jj.exports=FS;function FS(r){var i=m;return n;function n(c){i(c||zS)}function m(c){var l=[c];i=y,r(j);function y(A){l.push(A)}function j(A){var S=arguments;i=gS(A)?m:v;while(l.length)v(l.shift());function v(w){yj(MS,w,S)}}}}function gS(r){return Object.prototype.toString.call(r)==="[object Error]"}function zS(){}function MS(r,i){r.apply(null,i)}function TS(r){if(r===42)yj=process.nextTick}function hS(r,i,n){process.nextTick(function(){r(i,n)})}});var vj=rr((sQ,Sj)=>{var zc=lj(),BS=bi("dgram"),oS=Ij(),xS=bi("events"),Tc=bi("os"),Mc=function(){};Sj.exports=function(r){if(!r)r={};var i=new xS.EventEmitter,n=typeof r.port==="number"?r.port:5353,m=r.type||"udp4",c=r.ip||r.host||(m==="udp4"?"224.0.0.251":null),l={address:c,port:n},y={},j=!1,A=null;if(m==="udp6"&&(!c||!r.interface))throw Error("For IPv6 multicast you must specify `ip` and `interface`");var S=r.socket||BS.createSocket({type:m,reuseAddr:r.reuseAddr!==!1,toString:function(){return m}});S.on("error",function(w){if(w.code==="EACCES"||w.code==="EADDRINUSE")i.emit("error",w);else i.emit("warning",w)}),S.on("message",function(w,N){try{w=zc.decode(w)}catch(E){i.emit("warning",E);return}if(i.emit("packet",w,N),w.type==="query")i.emit("query",w,N);if(w.type==="response")i.emit("response",w,N)}),S.on("listening",function(){if(!n)n=l.port=S.address().port;if(r.multicast!==!1)i.update(),A=setInterval(i.update,5000),S.setMulticastTTL(r.ttl||255),S.setMulticastLoopback(r.loopback!==!1)});var v=oS(function(w){if(!n||r.bind===!1)return w(null);S.once("error",w),S.bind(n,r.bind||r.interface,function(){S.removeListener("error",w),w(null)})});return v(function(w){if(w)return i.emit("error",w);i.emit("ready")}),i.send=function(w,N,E){if(typeof N==="function")return i.send(w,null,N);if(!E)E=Mc;if(!N)N=l;else if(!N.host&&!N.address)N.address=l.address;v(Q);function Q(W){if(j)return E();if(W)return E(W);var Z=zc.encode(w);S.send(Z,0,Z.length,N.port,N.address||N.host,E)}},i.response=i.respond=function(w,N,E){if(Array.isArray(w))w={answers:w};w.type="response",w.flags=(w.flags||0)|zc.AUTHORITATIVE_ANSWER,i.send(w,N,E)},i.query=function(w,N,E,Q){if(typeof N==="function")return i.query(w,null,null,N);if(typeof N==="object"&&N&&N.port)return i.query(w,null,N,E);if(typeof E==="function")return i.query(w,N,null,E);if(!Q)Q=Mc;if(typeof w==="string")w=[{name:w,type:N||"ANY"}];if(Array.isArray(w))w={type:"query",questions:w};w.type="query",i.send(w,E,Q)},i.destroy=function(w){if(!w)w=Mc;if(j)return process.nextTick(w);j=!0,clearInterval(A);for(var N in y)try{S.dropMembership(c,N)}catch(E){}y={},S.close(w)},i.update=function(){var w=r.interface?[].concat(r.interface):pS(),N=!1;for(var E=0;E<w.length;E++){var Q=w[E];if(y[Q])continue;try{S.addMembership(c,Q),y[Q]=!0,N=!0}catch(W){i.emit("warning",W)}}if(N){if(S.setMulticastInterface)try{S.setMulticastInterface(r.interface||kS())}catch(W){i.emit("warning",W)}i.emit("networkInterface")}},i};function kS(){var r=Tc.networkInterfaces(),i=Object.keys(r);for(var n=0;n<i.length;n++){var m=r[i[n]];for(var c=0;c<m.length;c++){var l=m[c];if(Aj(l.family)&&!l.internal){if(Tc.platform()==="darwin"&&i[n]==="en0")return l.address;return"0.0.0.0"}}}return"127.0.0.1"}function pS(){var r=Tc.networkInterfaces(),i=Object.keys(r),n=[];for(var m=0;m<i.length;m++){var c=r[i[m]];for(var l=0;l<c.length;l++){var y=c[l];if(Aj(y.family)){n.push(y.address);break}}}return n}function Aj(r){return r===4||r==="IPv4"}});var $j=rr((fQ,wj)=>{wj.exports=function r(i,n){if(i===n)return!0;if(i&&n&&typeof i=="object"&&typeof n=="object"){if(i.constructor!==n.constructor)return!1;var m,c,l;if(Array.isArray(i)){if(m=i.length,m!=n.length)return!1;for(c=m;c--!==0;)if(!r(i[c],n[c]))return!1;return!0}if(i instanceof Map&&n instanceof Map){if(i.size!==n.size)return!1;for(c of i.entries())if(!n.has(c[0]))return!1;for(c of i.entries())if(!r(c[1],n.get(c[0])))return!1;return!0}if(i instanceof Set&&n instanceof Set){if(i.size!==n.size)return!1;for(c of i.entries())if(!n.has(c[0]))return!1;return!0}if(ArrayBuffer.isView(i)&&ArrayBuffer.isView(n)){if(m=i.length,m!=n.length)return!1;for(c=m;c--!==0;)if(i[c]!==n[c])return!1;return!0}if(i.constructor===RegExp)return i.source===n.source&&i.flags===n.flags;if(i.valueOf!==Object.prototype.valueOf)return i.valueOf()===n.valueOf();if(i.toString!==Object.prototype.toString)return i.toString()===n.toString();if(l=Object.keys(i),m=l.length,m!==Object.keys(n).length)return!1;for(c=m;c--!==0;)if(!Object.prototype.hasOwnProperty.call(n,l[c]))return!1;for(c=m;c--!==0;){var y=l[c];if(!r(i[y],n[y]))return!1}return!0}return i!==i&&n!==n}});var Gj=rr((fi)=>{var hc=fi&&fi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fi,"__esModule",{value:!0});fi.Server=void 0;var uS=hc(vj()),aS=hc($j()),dS=hc(pm());class Bc{constructor(r,i){this.registry={},this.mdns=(0,uS.default)(r),this.mdns.setMaxListeners(0),this.mdns.on("query",this.respondToQuery.bind(this)),this.errorCallback=i!==null&&i!==void 0?i:function(n){throw n}}register(r){let i=(n)=>{var m=this.registry[n.type];if(!m)m=this.registry[n.type]=[];else if(m.some(this.isDuplicateRecord(n)))return;m.push(n)};if(Array.isArray(r))r.forEach(i);else i(r)}unregister(r){let i=(n)=>{let m=n.type;if(!(m in this.registry))return;this.registry[m]=this.registry[m].filter((c)=>c.name!==n.name)};if(Array.isArray(r))r.forEach(i);else i(r)}respondToQuery(r){let i=this;r.questions.forEach((n)=>{var{type:m,name:c}=n,l=m==="ANY"?Object.keys(i.registry).map(i.recordsFor.bind(i,c)).flat(1):i.recordsFor(c,m);if(l.length===0)return;var y=[];if(m!=="ANY")l.forEach((j)=>{if(j.type!=="PTR")return;y=y.concat(i.recordsFor(j.data,"SRV")).concat(i.recordsFor(j.data,"TXT"))}),y.filter(function(j){return j.type==="SRV"}).map(function(j){return j.data.target}).filter(this.unique()).forEach(function(j){y=y.concat(i.recordsFor(j,"A")).concat(i.recordsFor(j,"AAAA"))});i.mdns.respond({answers:l,additionals:y},(j)=>{if(j)this.errorCallback(j)})})}recordsFor(r,i){if(!(i in this.registry))return[];return this.registry[i].filter((n)=>{var m=~r.indexOf(".")?n.name:n.name.split(".")[0];return(0,dS.default)(m,r)})}isDuplicateRecord(r){return(i)=>{return r.type===i.type&&r.name===i.name&&(0,aS.default)(r.data,i.data)}}unique(){var r=[];return(i)=>{if(~r.indexOf(i))return!1;return r.push(i),!0}}}fi.Server=Bc;fi.default=Bc});var Ej=rr((Nj)=>{Object.defineProperty(Nj,"__esModule",{value:!0});Nj.default=(r,i)=>{if(i===void 0)return!0;let n=r.txt,m=Object.entries(i).map(([c,l])=>{let y=n[c];if(y===void 0)return!1;if(l!=y)return!1;return!0});if(m.length==0)return!0;if(m.includes(!1))return!1;return!0}});var Dj=rr((Qj)=>{Object.defineProperty(Qj,"__esModule",{value:!0});Qj.default=(r)=>Object.keys(r).filter((i)=>!i.includes("binary")).reduce((i,n)=>{return Object.assign(i,{[n]:r[n]})},{})});var Pj=rr((Uj)=>{Object.defineProperty(Uj,"__esModule",{value:!0});Uj.default=eS;function eS(r,i){if(r===void 0||i===void 0)return!1;let n=Object.keys(r),m=Object.keys(i);if(n.length!=m.length)return!1;for(let c of n)if(r[c]!=i[c])return!1;return!0}});var Xj=rr((rn)=>{var an=rn&&rn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(rn,"__esModule",{value:!0});rn.Browser=void 0;var fS=an(Zc()),Oi=an(pm()),rv=bi("events"),oc=Vc(),Cj=an(Ej()),iv=an(Dj()),nv=an(Pj()),Wj=".local",mv="_services._dns-sd._udp"+Wj;class tm extends rv.EventEmitter{constructor(r,i,n){super();if(this.onresponse=void 0,this.serviceMap={},this.wildcard=!1,this._services=[],typeof i==="function")return new tm(r,null,i);if(this.mdns=r,this.txt=new fS.default(i!==null&&i.txt!=null?i.txt:void 0),i===null||i.type===void 0)this.name=mv,this.wildcard=!0;else{if(this.name=(0,oc.toString)({name:i.type,protocol:i.protocol||"tcp"})+Wj,i.name)this.name=i.name+"."+this.name;this.wildcard=!1}if(i!=null&&i.txt!==void 0)this.txtQuery=(0,iv.default)(i.txt);if(n)this.on("up",n);this.start()}start(){if(this.onresponse||this.name===void 0)return;var r=this,i={};if(!this.wildcard)i[this.name]=!0;this.onresponse=(n,m)=>{if(r.wildcard)n.answers.forEach((c)=>{if(c.type!=="PTR"||c.name!==r.name||c.name in i)return;i[c.data]=!0,r.mdns.query(c.data,"PTR")});Object.keys(i).forEach(function(c){r.goodbyes(c,n).forEach(r.removeService.bind(r));var l=r.buildServicesFor(c,n,r.txt,m);if(l.length===0)return;l.forEach((y)=>{if(r.serviceMap[y.fqdn]){r.updateService(y);return}r.addService(y)})})},this.mdns.on("response",this.onresponse),this.update()}stop(){if(!this.onresponse)return;this.mdns.removeListener("response",this.onresponse),this.onresponse=void 0}update(){this.mdns.query(this.name,"PTR")}get services(){return this._services}addService(r){if((0,Cj.default)(r,this.txtQuery)===!1)return;this._services.push(r),this.serviceMap[r.fqdn]=!0,this.emit("up",r)}updateService(r){var i;if((0,nv.default)(r.txt,((i=this._services.find((n)=>(0,Oi.default)(n.fqdn,r.fqdn)))===null||i===void 0?void 0:i.txt)||{}))return;if(!(0,Cj.default)(r,this.txtQuery)){this.removeService(r.fqdn);return}this._services=this._services.map(function(n){if(!(0,Oi.default)(n.fqdn,r.fqdn))return n;return r}),this.emit("txt-update",r)}removeService(r){var i,n;if(this._services.some(function(m,c){if((0,Oi.default)(m.fqdn,r))return i=m,n=c,!0}),!i||n===void 0)return;this._services.splice(n,1),delete this.serviceMap[r],this.emit("down",i)}goodbyes(r,i){return i.answers.concat(i.additionals).filter((n)=>n.type==="PTR"&&n.ttl===0&&(0,Oi.default)(n.name,r)).map((n)=>n.data)}buildServicesFor(r,i,n,m){var c=i.answers.concat(i.additionals).filter((l)=>l.ttl>0);return c.filter((l)=>l.type==="PTR"&&(0,Oi.default)(l.name,r)).map((l)=>{let y={addresses:[],subtypes:[]};if(c.filter((j)=>{return j.type==="PTR"&&(0,Oi.default)(j.data,l.data)&&j.name.includes("._sub")}).forEach((j)=>{let A=(0,oc.toType)(j.name);y.subtypes.push(A.subtype)}),c.filter((j)=>{return(j.type==="SRV"||j.type==="TXT")&&(0,Oi.default)(j.name,l.data)}).forEach((j)=>{if(j.type==="SRV"){var A=j.name.split("."),S=A[0],v=(0,oc.toType)(A.slice(1,-1).join("."));y.name=S,y.fqdn=j.name,y.host=j.data.target,y.referer=m,y.port=j.data.port,y.type=v.name,y.protocol=v.protocol}else if(j.type==="TXT")y.rawTxt=j.data,y.txt=this.txt.decodeAll(j.data)}),!y.name)return;return c.filter((j)=>(j.type==="A"||j.type==="AAAA")&&(0,Oi.default)(j.name,y.host)).forEach((j)=>y.addresses.push(j.data)),y}).filter((l)=>!!l)}}rn.Browser=tm;rn.default=tm});var Kj=rr((dr)=>{var bm=dr&&dr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(dr,"__esModule",{value:!0});dr.Browser=dr.Service=dr.Bonjour=void 0;var cv=bm(by()),lv=bm(Gj()),xc=bm(Xj());dr.Browser=xc.default;var yv=bm(Jc());dr.Service=yv.default;class kc{constructor(r={},i){this.server=new lv.default(r,i),this.registry=new cv.default(this.server)}publish(r){return this.registry.publish(r)}unpublishAll(r){return this.registry.unpublishAll(r)}find(r=null,i){return new xc.default(this.server.mdns,r,i)}findOne(r=null,i=1e4,n){let m=new xc.default(this.server.mdns,r);var c;return m.once("up",(l)=>{if(c!==void 0)clearTimeout(c);if(m.stop(),n)n(l)}),c=setTimeout(()=>{if(m.stop(),n)n(null)},i),m}destroy(r){this.registry.destroy(),this.server.mdns.destroy(r)}}dr.Bonjour=kc;dr.default=kc});var bl={};Nr(bl,{url:()=>AA,openapi:()=>B$,listen:()=>o$,Server:()=>bl,Default:()=>T$});var cc=(r)=>{let i=r.split("/");if(i[0]==="")i.shift();return i},el=(r)=>{let{groups:i,path:n}=SA(r),m=cc(n);return vA(m,i)},SA=(r)=>{let i=[];return r=r.replace(/\{[^}]+\}/g,(n,m)=>{let c=`@${m}`;return i.push([c,n]),c}),{groups:i,path:r}},vA=(r,i)=>{for(let n=i.length-1;n>=0;n--){let[m]=i[n];for(let c=r.length-1;c>=0;c--)if(r[c].includes(m)){r[c]=r[c].replace(m,i[n][1]);break}}return r},Fm={},sl=(r,i)=>{if(r==="*")return"*";let n=r.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(n){let m=`${r}#${i}`;if(!Fm[m])if(n[2])Fm[m]=i&&i[0]!==":"&&i[0]!=="*"?[m,n[1],new RegExp(`^${n[2]}(?=/${i})`)]:[r,n[1],new RegExp(`^${n[2]}$`)];else Fm[m]=[r,n[1],!0];return Fm[m]}return null},Sn=(r,i)=>{try{return i(r)}catch{return r.replace(/(?:%[0-9A-Fa-f]{2})+/g,(n)=>{try{return i(n)}catch{return n}})}},fl=(r)=>Sn(r,decodeURI),lc=(r)=>{let i=r.url,n=i.indexOf("/",i.indexOf(":")+4),m=n;for(;m<i.length;m++){let c=i.charCodeAt(m);if(c===37){let l=i.indexOf("?",m),y=i.indexOf("#",m),j=l===-1?y===-1?void 0:y:y===-1?l:Math.min(l,y),A=i.slice(n,j);return fl(A.includes("%25")?A.replace(/%25/g,"%2525"):A)}else if(c===63||c===35)break}return i.slice(n,m)};var ry=(r)=>{let i=lc(r);return i.length>1&&i.at(-1)==="/"?i.slice(0,-1):i},Ji=(r,i,...n)=>{if(n.length)i=Ji(i,...n);return`${r?.[0]==="/"?"":"/"}${r}${i==="/"?"":`${r?.at(-1)==="/"?"":"/"}${i?.[0]==="/"?i.slice(1):i}`}`},gm=(r)=>{if(r.charCodeAt(r.length-1)!==63||!r.includes(":"))return null;let i=r.split("/"),n=[],m="";return i.forEach((c)=>{if(c!==""&&!/\:/.test(c))m+="/"+c;else if(/\:/.test(c))if(/\?/.test(c)){if(n.length===0&&m==="")n.push("/");else n.push(m);let l=c.replace("?","");m+="/"+l,n.push(m)}else m+="/"+c}),n.filter((c,l,y)=>y.indexOf(c)===l)},mc=(r)=>{if(!/[%+]/.test(r))return r;if(r.indexOf("+")!==-1)r=r.replace(/\+/g," ");return r.indexOf("%")!==-1?Sn(r,Mn):r},iy=(r,i,n)=>{let m;if(!n&&i&&!/[%+]/.test(i)){let y=r.indexOf("?",8);if(y===-1)return;if(!r.startsWith(i,y+1))y=r.indexOf(`&${i}`,y+1);while(y!==-1){let j=r.charCodeAt(y+i.length+1);if(j===61){let A=y+i.length+2,S=r.indexOf("&",A);return mc(r.slice(A,S===-1?void 0:S))}else if(j==38||isNaN(j))return"";y=r.indexOf(`&${i}`,y+1)}if(m=/[%+]/.test(r),!m)return}let c={};m??=/[%+]/.test(r);let l=r.indexOf("?",8);while(l!==-1){let y=r.indexOf("&",l+1),j=r.indexOf("=",l);if(j>y&&y!==-1)j=-1;let A=r.slice(l+1,j===-1?y===-1?void 0:y:j);if(m)A=mc(A);if(l=y,A==="")continue;let S;if(j===-1)S="";else if(S=r.slice(j+1,y===-1?void 0:y),m)S=mc(S);if(n){if(!(c[A]&&Array.isArray(c[A])))c[A]=[];c[A].push(S)}else c[A]??=S}return i?c[i]:c},ny=iy,my=(r,i)=>{return iy(r,i,!0)},Mn=decodeURIComponent;var wA=/^[\w!#$%&'*.^`|~+-]+$/,$A=/^[ !#-:<-[\]-~]*$/,cy=(r)=>{let i=0,n=r.length;while(i<n){let m=r.charCodeAt(i);if(m!==32&&m!==9)break;i++}while(n>i){let m=r.charCodeAt(n-1);if(m!==32&&m!==9)break;n--}return i===0&&n===r.length?r:r.slice(i,n)},yc=(r,i)=>{if(i&&r.indexOf(i)===-1)return{};let n=r.split(";"),m=Object.create(null);for(let c of n){let l=c.indexOf("=");if(l===-1)continue;let y=cy(c.substring(0,l));if(i&&i!==y||!wA.test(y)||y in m)continue;let j=cy(c.substring(l+1));if(j.startsWith('"')&&j.endsWith('"'))j=j.slice(1,-1);if($A.test(j)){if(m[y]=j.indexOf("%")!==-1?Sn(j,Mn):j,i)break}}return m};var ly=(r,i,n)=>{let m=r.req.raw.headers.get("Cookie");if(typeof i==="string"){if(!m)return;let l=i;if(n==="secure")l="__Secure-"+i;else if(n==="host")l="__Host-"+i;return yc(m,l)[l]}if(!m)return{};return yc(m)};var kr=class extends Error{res;status;constructor(r=500,i){super(i?.message,{cause:i?.cause});this.res=i?.res,this.status=r}getResponse(){if(this.res)return new Response(this.res.body,{status:this.status,headers:this.res.headers});return new Response(this.message,{status:this.status})}};var jc=async(r)=>{return await GA(r,{name:"SHA-256",alias:"sha256"})};var GA=async(r,i)=>{let n;if(ArrayBuffer.isView(r)||r instanceof ArrayBuffer)n=r;else{if(typeof r==="object")r=JSON.stringify(r);n=new TextEncoder().encode(String(r))}if(crypto&&crypto.subtle){let m=await crypto.subtle.digest({name:i.name},n);return Array.prototype.map.call(new Uint8Array(m),(l)=>("00"+l.toString(16)).slice(-2)).join("")}return null};var yy=(r,i)=>{let n=r.length,m=i.length,c=Math.max(n,m),l=n^m;for(let y=0;y<c;y++){let j=y<n?r.charCodeAt(y):0,A=y<m?i.charCodeAt(y):0;l|=j^A}return l===0},jy=async(r,i,n)=>{if(!n)n=jc;let[m,c]=await Promise.all([n(r),n(i)]);if(m==null||c==null||typeof m!=="string"||typeof c!=="string")return!1;let l=yy(m,c),y=yy(r,i);return l&&y},Ic=async(r,i,n)=>{if(typeof r==="string"&&typeof i==="string")return jy(r,i,n);if(!n)n=jc;let[m,c]=await Promise.all([n(r),n(i)]);if(!m||!c||typeof m!=="string"||typeof c!=="string")return!1;return jy(m,c)};var zm=(r,i)=>{return new Response(r,{headers:{"Content-Type":i.replace(/^[^;]+/,(m)=>m.toLowerCase())}}).formData()};var NA=/^application\/([a-z-\.]+\+)?json(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i,EA=/^multipart\/form-data(;\s?boundary=[a-zA-Z0-9'"()+_,\-./:=?]+)?$/i,QA=/^application\/x-www-form-urlencoded(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i,Ac=(r,i)=>{return async(n,m)=>{let c={},l=n.req.header("Content-Type");switch(r){case"json":if(!l||!NA.test(l))break;try{c=await n.req.json()}catch{throw new kr(400,{message:"Malformed JSON in request body"})}break;case"form":{if(!l||!(EA.test(l)||QA.test(l)))break;let j;if(n.req.bodyCache.formData)j=await n.req.bodyCache.formData;else try{let S=await n.req.arrayBuffer();j=await zm(S,l),n.req.bodyCache.formData=j}catch(S){let v="Malformed FormData request.";throw v+=S instanceof Error?` ${S.message}`:` ${String(S)}`,new kr(400,{message:v})}let A=Object.create(null);j.forEach((S,v)=>{if(v.endsWith("[]"))(A[v]??=[]).push(S);else if(Array.isArray(A[v]))A[v].push(S);else if(Object.hasOwn(A,v))A[v]=[A[v],S];else A[v]=S}),c=A;break}case"query":c=Object.fromEntries(Object.entries(n.req.queries()).map(([j,A])=>{return A.length===1?[j,A[0]]:[j,A]}));break;case"param":c=n.req.param();break;case"header":c=n.req.header();break;case"cookie":c=ly(n);break}let y=await i(c,n);if(y instanceof Response)return y;return n.req.addValidatedData(r,y),await m()}};var Iy={header:["cookie"]};function DA(r,i,n){if(!(n in Iy))return r;let m=Iy[n]||[];if(i==="arktype")return UA(r,m);if(i==="valibot")return PA(r,m);return r}function UA(r,i){return r.map((n)=>{if(n&&typeof n==="object"&&"data"in n&&typeof n.data==="object"&&n.data!==null&&!Array.isArray(n.data)){let m={...n.data};for(let l of i)delete m[l];let c=Object.create(Object.getPrototypeOf(n));return Object.assign(c,n,{data:m}),c}return n})}function PA(r,i){return r.map((n)=>{if(n&&typeof n==="object"&&"path"in n&&Array.isArray(n.path)){for(let m of n.path)if(typeof m==="object"&&"input"in m&&typeof m.input==="object"&&m.input!==null&&!Array.isArray(m.input))for(let c of i)delete m.input[c]}return n})}var Ay=(r,i,n)=>Ac(r,async(m,c)=>{let l=await i["~standard"].validate(m);if(n){let y=await n(l.issues?{data:m,error:l.issues,success:!1,target:r}:{data:m,success:!0,target:r},c);if(y){if(y instanceof Response)return y;if("response"in y)return y.response}}if(l.issues){let y=DA(l.issues,i["~standard"].vendor,r);return c.json({data:m,error:y,success:!1},400)}return l.value});var vc=Symbol("openapi"),WA=["GET","PUT","POST","DELETE","OPTIONS","HEAD","PATCH","TRACE"],XA=(r)=>r.split("/").map((i)=>{let n=i;if(n.startsWith(":")){let m=n.match(/^:([^{?]+)(?:{(.+)})?(\?)?$/);if(m)n=`{${m[1]}}`;else{if(n=n.slice(1,n.length),n.endsWith("?"))n=n.slice(0,-1);n=`{${n}}`}}return n}).join("/"),Sy=(r)=>r.charAt(0).toUpperCase()+r.slice(1),KA=(r)=>{let i=r.method.toLowerCase();if(r.path==="/")return`${i}Index`;for(let n of r.path.split("/"))if(n.charCodeAt(0)===123)i+=`By${Sy(n.slice(1,-1))}`;else i+=Sy(n);return i},HA=(r)=>("$ref"in r)?r.$ref:`${r.in} ${r.name}`;function vy(...r){let i=r.flatMap((n)=>n??[]).reduce((n,m)=>{return n.set(HA(m),m),n},new Map);return Array.from(i.values())}var vn=new Map;function ZA(r){let i=[];for(let[n,m]of vn)if(m&&r.match(n))i.push(m);return i}function VA(){vn.clear()}function wy(r,...i){return i.reduce((n,m)=>{if(!m||!n)return n;for(let[c,l]of Object.entries(m)){if(l==null)continue;if(c in n&&(typeof l==="object"||typeof l==="function"&&c==="operationId"))if(Array.isArray(l)){let y=[...n[c]??[],...l];if(c==="tags")n[c]=Array.from(new Set(y));else if(c==="parameters")n[c]=vy(y);else n[c]=y}else if(typeof l==="function")n[c]=l(r);else if(c==="parameters")n[c]=vy(n[c],l);else n[c]={...n[c],...l};else n[c]=l}return n},{operationId:KA(r)})}function $y({route:r,specs:i,paths:n}){let m=XA(r.path),c=r.method.toLowerCase();if(c==="all"){if(!i)return;if(vn.has(m)){let l=vn.get(m)??{};vn.set(m,wy(r,l,i))}else vn.set(m,i)}else{let l=ZA(m);if(!(m in n))n[m]={};if(n[m])n[m][c]=wy(r,...l,n[m]?.[c],i)}}function YA(r,i){let{exclude:n,excludeStaticFile:m}=i.options,c={},l=Array.isArray(n)?n:[n];for(let[y,j]of Object.entries(r)){if(j==null)continue;if(l.some((v)=>{if(typeof v==="string")return y===v;return v.test(y)}))continue;if(y.includes("*")&&!y.includes("{"))continue;if(m){let v=y.includes("{"),N=(y.split("/").pop()||"").includes(".");if(!v&&N)continue}for(let v of Object.keys(j)){let w=j[v];if(w==null)continue;if(y.includes("{")){w.parameters=w.parameters?[...w.parameters]:[];let N=y.split("/").filter((E)=>E.startsWith("{")&&!w.parameters.find((Q)=>Q.in==="path"&&Q.name===E.slice(1,E.length-1)));for(let E of N){let Q=E.slice(1,E.length-1);if(w.parameters.findIndex((Z)=>{if("$ref"in Z){let X=Z.$ref.split("/").pop();if(X){let K=i.components.parameters?.[X];if(K&&!("$ref"in K))return K.in==="path"&&K.name===Q}return!1}return Z.in==="path"&&Z.name===Q})===-1)w.parameters.push({schema:{type:"string"},in:"path",name:Q,required:!0})}}if(!w.responses)w.responses={200:{}}}c[y]=j}return c}var Gy={documentation:{},excludeStaticFile:!0,exclude:[],excludeMethods:["OPTIONS"],excludeTags:[]};function Qy(r,i){let n;return async(m)=>{if(n)return m.json(n);return n=await wc(r,i,m),m.json(n)}}async function wc(r,i=Gy,n){let m={components:{},options:{...Gy,...i}},c=m.options.documentation??{};VA();let l=await JA(r,m);for(let j in l)for(let A in l[j])if(RA({valueOrFunc:l[j][A]?.hide,method:A,path:j,c:n}))l[j][A]=void 0;let y=$c(c.components,m.components);return{openapi:"3.1.0",...c,tags:c.tags?.filter((j)=>!m.options.excludeTags?.includes(j?.name)),info:{title:"Hono Documentation",description:"Development documentation",version:"0.0.0",...c.info},paths:{...YA(l,m),...c.paths},components:y}}async function JA(r,i){let n={};for(let m of r.routes){let c=m.handler[vc];if(!c){if(i.options.includeEmptyPaths)$y({route:m,paths:n});continue}let l=m.method;if(l!=="ALL"){if(i.options.excludeMethods?.includes(l))continue;if(!WA.includes(l))continue}let y=i.options.defaultOptions?.[l],{schema:j,components:A={}}=await OA(c,y);i.components=$c(i.components,A),$y({route:m,specs:j,paths:n})}return n}function RA(r){let{valueOrFunc:i,c:n,method:m,path:c}=r;if(i!=null){if(typeof i==="boolean")return i;if(typeof i==="function")return i({c:n,method:m,path:c})}return!1}async function OA(r,i){if("spec"in r){let c={},l={...i,...r.spec,responses:{...i?.responses,...r.spec.responses}};if(l.responses)for(let y of Object.keys(l.responses)){let j=l.responses[y];if(!j||!("content"in j))continue;for(let A of Object.keys(j.content??{})){let S=j.content?.[A];if(!S)continue;if(S.schema&&"toOpenAPISchema"in S.schema){let v=await S.schema.toOpenAPISchema();if(S.schema=v.schema,v.components)c=$c(c,v.components)}}}return{schema:l,components:c}}let n=await r.toOpenAPISchema(),m=i??{};if(r.target==="form"||r.target==="json"){let c=r.options?.media??r.target==="json"?"application/json":"multipart/form-data";if(!m.requestBody||!("content"in m.requestBody)||!m.requestBody.content)m.requestBody={content:{[c]:{schema:n.schema}}};else m.requestBody.content[c]={schema:n.schema}}else{let c=[];if("$ref"in n.schema){let y=n.schema.$ref.split("/").pop();if(y&&n.components?.schemas?.[y]){let j=n.components.schemas[y],A=Ny(r.target,j)[0];if(!n.components.parameters)n.components.parameters={};n.components.parameters[y]=A,delete n.components.schemas[y],c.push({$ref:`#/components/parameters/${y}`})}}else c=Ny(r.target,n.schema);m.parameters=c}return{schema:m,components:n.components}}function Ny(r,i){let n=[];for(let[m,c]of Object.entries(i.properties??{})){let l={in:r==="param"?"path":r,name:m,schema:c};if(i.required?.includes(m))l.required=!0;if(l.schema&&"description"in l.schema&&l.schema.description)l.description=l.schema.description,l.schema.description=void 0;n.push(l)}return n}function $c(...r){return r.reduce((i,n,m)=>{if(n==null||m===0)return i;if(i.schemas&&Object.keys(i.schemas).length>0||n.schemas&&Object.keys(n.schemas).length>0)i.schemas={...i.schemas,...n.schemas};if(i.parameters&&Object.keys(i.parameters).length>0||n.parameters&&Object.keys(n.parameters).length>0)i.parameters={...i.parameters,...n.parameters};return i},r[0]??{})}function $(r,i){return{vendor:r["~standard"].vendor,validate:r["~standard"].validate,toJSONSchema:(n)=>Ey(r,{...i,...n}),toOpenAPISchema:(n)=>Sc(r,{...i,...n})}}function D(r,i,n,m){let c=Ay(r,i,n);return Object.assign(c,{[vc]:{target:r,...$(i,m),options:m}})}function G(r){return Object.assign(async(n,m)=>{await m()},{[vc]:{spec:r}})}var Gc=(r,i,n)=>{return(m,c)=>{let l=-1;return y(0);async function y(j){if(j<=l)throw Error("next() called multiple times");l=j;let A,S=!1,v;if(r[j])v=r[j][0][0],m.req.routeIndex=j;else v=j===r.length&&c||void 0;if(v)try{A=await v(m,()=>y(j+1))}catch(w){if(w instanceof Error&&i)m.error=w,A=await i(w,m),S=!0;else throw w}else if(m.finalized===!1&&n)A=await n(m);if(A&&(m.finalized===!1||S))m.res=A;return m}}};var Dy=Symbol();var Nc=(r)=>("headers"in r),Uy=async(r,i=Object.create(null))=>{let{all:n=!1,dot:m=!1}=i,y=(Nc(r)?r.headers:r.raw.headers).get("Content-Type")?.split(";")[0].trim().toLowerCase();if(y==="multipart/form-data"||y==="application/x-www-form-urlencoded")return LA(r,{all:n,dot:m});return{}};async function LA(r,i){let n=Nc(r)?r.headers:r.raw.headers,m=await r.arrayBuffer(),c=zm(m,n.get("Content-Type")||"");if(!Nc(r))r.bodyCache.formData=c;let l=await c;if(l)return qA(l,i);return{}}function qA(r,i){let n=Object.create(null);if(r.forEach((m,c)=>{if(!(i.all||c.endsWith("[]")))n[c]=m;else _A(n,c,m)}),i.dot)Object.entries(n).forEach(([m,c])=>{if(m.includes("."))FA(n,m,c),delete n[m]});return n}var _A=(r,i,n)=>{if(r[i]!==void 0)if(Array.isArray(r[i]))r[i].push(n);else r[i]=[r[i],n];else if(!i.endsWith("[]"))r[i]=n;else r[i]=[n]},FA=(r,i,n)=>{if(/(?:^|\.)__proto__\./.test(i))return;let m=r,c=i.split(".");c.forEach((l,y)=>{if(y===c.length-1)m[l]=n;else{if(!m[l]||typeof m[l]!=="object"||Array.isArray(m[l])||m[l]instanceof File)m[l]=Object.create(null);m=m[l]}})};var Py=(r)=>Sn(r,Mn),Cy=class{raw;#r;#i;routeIndex=0;path;bodyCache={};constructor(r,i="/",n=[[]]){this.raw=r,this.path=i,this.#i=n,this.#r={}}param(r){return r?this.#n(r):this.#l()}#n(r){let i=this.#i[0][this.routeIndex][1][r],n=this.#c(i);return n&&/\%/.test(n)?Py(n):n}#l(){let r={},i=Object.keys(this.#i[0][this.routeIndex][1]);for(let n of i){let m=this.#c(this.#i[0][this.routeIndex][1][n]);if(m!==void 0)r[n]=/\%/.test(m)?Py(m):m}return r}#c(r){return this.#i[1]?this.#i[1][r]:r}query(r){return ny(this.url,r)}queries(r){return my(this.url,r)}header(r){if(r)return this.raw.headers.get(r)??void 0;let i={};return this.raw.headers.forEach((n,m)=>{i[m]=n}),i}async parseBody(r){return Uy(this,r)}#m=(r)=>{let{bodyCache:i,raw:n}=this,m=i[r];if(m)return m;let c=Object.keys(i)[0];if(c)return i[c].then((l)=>{if(c==="json")l=JSON.stringify(l);return new Response(l)[r]()});return i[r]=n[r]()};json(){return this.#m("text").then((r)=>JSON.parse(r))}text(){return this.#m("text")}arrayBuffer(){return this.#m("arrayBuffer")}bytes(){return this.#m("arrayBuffer").then((r)=>new Uint8Array(r))}blob(){return this.#m("blob")}formData(){return this.#m("formData")}addValidatedData(r,i){this.#r[r]=i}valid(r){return this.#r[r]}get url(){return this.raw.url}get method(){return this.raw.method}get[Dy](){return this.#i}get matchedRoutes(){return this.#i[0].map(([[,r]])=>r)}get routePath(){return this.#i[0].map(([[,r]])=>r)[this.routeIndex].path}};var Mm={Stringify:1,BeforeStream:2,Stream:3},Wy=(r,i)=>{let n=new String(r);return n.isEscaped=!0,n.callbacks=i,n};var Tn=async(r,i,n,m,c)=>{if(typeof r==="object"&&!(r instanceof String)){if(!(r instanceof Promise))r=r.toString();if(r instanceof Promise)r=await r}let l=r.callbacks;if(!l?.length)return Promise.resolve(r);if(c)c[0]+=r;else c=[r];let y=Promise.all(l.map((j)=>j({phase:i,buffer:c,context:m}))).then((j)=>Promise.all(j.filter(Boolean).map((A)=>Tn(A,i,!1,m,c))).then(()=>c[0]));if(n)return Wy(await y,l);else return y};var Xy="text/plain; charset=UTF-8",Ec=(r,i)=>{return{"Content-Type":r,...i}},hn=(r,i)=>new Response(r,i),Qc=class{#r;#i;env={};#n;finalized=!1;error;#l;#c;#m;#S;#I;#A;#j;#v;#w;constructor(r,i){if(this.#r=r,i)this.#c=i.executionCtx,this.env=i.env,this.#A=i.notFoundHandler,this.#w=i.path,this.#v=i.matchResult}get req(){return this.#i??=new Cy(this.#r,this.#w,this.#v),this.#i}get event(){if(this.#c&&"respondWith"in this.#c)return this.#c;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#c)return this.#c;else throw Error("This context has no ExecutionContext")}get res(){return this.#m||=hn(null,{headers:this.#j??=new Headers})}set res(r){if(this.#m&&r){r=hn(r.body,r);for(let[i,n]of this.#m.headers.entries()){if(i==="content-type")continue;if(i==="set-cookie"){let m=this.#m.headers.getSetCookie();r.headers.delete("set-cookie");for(let c of m)r.headers.append("set-cookie",c)}else r.headers.set(i,n)}}this.#m=r,this.finalized=!0}render=(...r)=>{return this.#I??=(i)=>this.html(i),this.#I(...r)};setLayout=(r)=>this.#S=r;getLayout=()=>this.#S;setRenderer=(r)=>{this.#I=r};header=(r,i,n)=>{if(this.finalized)this.#m=hn(this.#m.body,this.#m);let m=this.#m?this.#m.headers:this.#j??=new Headers;if(i===void 0)m.delete(r);else if(n?.append)m.append(r,i);else m.set(r,i)};status=(r)=>{this.#l=r};set=(r,i)=>{this.#n??=new Map,this.#n.set(r,i)};get=(r)=>{return this.#n?this.#n.get(r):void 0};get var(){if(!this.#n)return{};return Object.fromEntries(this.#n)}#y(r,i,n){let m=this.#m?new Headers(this.#m.headers):this.#j??new Headers;if(typeof i==="object"&&"headers"in i){let l=i.headers instanceof Headers?i.headers:new Headers(i.headers);for(let[y,j]of l)if(y.toLowerCase()==="set-cookie")m.append(y,j);else m.set(y,j)}if(n)for(let[l,y]of Object.entries(n))if(typeof y==="string")m.set(l,y);else{m.delete(l);for(let j of y)m.append(l,j)}let c=typeof i==="number"?i:i?.status??this.#l;return hn(r,{status:c,headers:m})}newResponse=(...r)=>this.#y(...r);body=(r,i,n)=>this.#y(r,i,n);text=(r,i,n)=>{return!this.#j&&!this.#l&&!i&&!n&&!this.finalized?new Response(r):this.#y(r,i,Ec(Xy,n))};json=(r,i,n)=>{return this.#y(JSON.stringify(r),i,Ec("application/json",n))};html=(r,i,n)=>{let m=(c)=>this.#y(c,i,Ec("text/html; charset=UTF-8",n));return typeof r==="object"?Tn(r,Mm.Stringify,!1,{}).then(m):m(r)};redirect=(r,i)=>{let n=String(r);return this.header("Location",!/[^\x00-\xFF]/.test(n)?n:encodeURI(n)),this.newResponse(null,i??302)};notFound=()=>{return this.#A??=()=>hn(),this.#A(this)}};var o="ALL",Ky="all",Hy=["get","post","put","delete","options","patch"],Tm="Can not add a route since the matcher is already built.",hm=class extends Error{};var Dc="__COMPOSED_HANDLER";var gA=(r)=>{return r.text("404 Not Found",404)},Zy=(r,i)=>{if("getResponse"in r){let n=r.getResponse();return i.newResponse(n.body,n)}return console.error(r),i.text("Internal Server Error",500)},Vy=class r{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#r="/";routes=[];constructor(i={}){[...Hy,Ky].forEach((l)=>{this[l]=(y,...j)=>{if(typeof y==="string")this.#r=y;else this.#l(l,this.#r,y);return j.forEach((A)=>{this.#l(l,this.#r,A)}),this}}),this.on=(l,y,...j)=>{for(let A of[y].flat()){this.#r=A;for(let S of[l].flat())j.map((v)=>{this.#l(S.toUpperCase(),this.#r,v)})}return this},this.use=(l,...y)=>{if(typeof l==="string")this.#r=l;else this.#r="*",y.unshift(l);return y.forEach((j)=>{this.#l(o,this.#r,j)}),this};let{strict:m,...c}=i;Object.assign(this,c),this.getPath=m??!0?i.getPath??lc:ry}#i(){let i=new r({router:this.router,getPath:this.getPath});return i.errorHandler=this.errorHandler,i.#n=this.#n,i.routes=this.routes,i}#n=gA;errorHandler=Zy;route(i,n){let m=this.basePath(i);return n.routes.map((c)=>{let l;if(n.errorHandler===Zy)l=c.handler;else l=async(y,j)=>(await Gc([],n.errorHandler)(y,()=>c.handler(y,j))).res,l[Dc]=c.handler;m.#l(c.method,c.path,l,c.basePath)}),this}basePath(i){let n=this.#i();return n._basePath=Ji(this._basePath,i),n}onError=(i)=>{return this.errorHandler=i,this};notFound=(i)=>{return this.#n=i,this};mount(i,n,m){let c,l;if(m)if(typeof m==="function")l=m;else if(l=m.optionHandler,m.replaceRequest===!1)c=(A)=>A;else c=m.replaceRequest;let y=l?(A)=>{let S=l(A);return Array.isArray(S)?S:[S]}:(A)=>{let S=void 0;try{S=A.executionCtx}catch{}return[A.env,S]};c||=(()=>{let A=Ji(this._basePath,i),S=A==="/"?0:A.length;return(v)=>{let w=new URL(v.url);return w.pathname=this.getPath(v).slice(S)||"/",new Request(w,v)}})();let j=async(A,S)=>{let v=await n(c(A.req.raw),...y(A));if(v)return v;await S()};return this.#l(o,Ji(i,"*"),j),this}#l(i,n,m,c){i=i.toUpperCase(),n=Ji(this._basePath,n);let l={basePath:c!==void 0?Ji(this._basePath,c):this._basePath,path:n,method:i,handler:m};this.router.add(i,n,[m,l]),this.routes.push(l)}#c(i,n){if(i instanceof Error)return this.errorHandler(i,n);throw i}#m(i,n,m,c){if(c==="HEAD")return(async()=>new Response(null,await this.#m(i,n,m,"GET")))();let l=this.getPath(i,{env:m}),y=this.router.match(c,l),j=new Qc(i,{path:l,matchResult:y,env:m,executionCtx:n,notFoundHandler:this.#n});if(y[0].length===1){let S;try{S=y[0][0][0][0](j,async()=>{j.res=await this.#n(j)})}catch(v){return this.#c(v,j)}return S instanceof Promise?S.then((v)=>v||(j.finalized?j.res:this.#n(j))).catch((v)=>this.#c(v,j)):S??this.#n(j)}let A=Gc(y[0],this.errorHandler,this.#n);return(async()=>{try{let S=await A(j);if(!S.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return S.res}catch(S){return this.#c(S,j)}})()}fetch=(i,...n)=>{return this.#m(i,n[1],n[0],i.method)};request=(i,n,m,c)=>{if(i instanceof Request)return this.fetch(n?new Request(i,n):i,m,c);return i=i.toString(),this.fetch(new Request(/^https?:\/\//.test(i)?i:`http://localhost${Ji("/",i)}`,n),m,c)};fire=()=>{addEventListener("fetch",(i)=>{i.respondWith(this.#m(i.request,i,void 0,i.request.method))})}};var Bn=[];function Bm(r,i){let n=this.buildAllMatchers(),m=(c,l)=>{let y=n[c]||n[o],j=y[2][l];if(j)return j;let A=l.match(y[0]);if(!A)return[[],Bn];let S=A.indexOf("",1);return[y[1][S],A]};return this.match=m,m(r,i)}var om="[^/]+",on=".*",xn="(?:|/.*)",di=Symbol(),zA=new Set(".\\+*[^]$()");function MA(r,i){if(r.length===1)return i.length===1?r<i?-1:1:-1;if(i.length===1)return 1;if(r===on||r===xn)return 1;else if(i===on||i===xn)return-1;if(r===om)return 1;else if(i===om)return-1;return r.length===i.length?r<i?-1:1:i.length-r.length}var Yy=class r{#r;#i;#n=Object.create(null);insert(i,n,m,c,l){if(i.length===0){if(this.#r!==void 0)throw di;if(l)return;this.#r=n;return}let[y,...j]=i,A=y==="*"?j.length===0?["","",on]:["","",om]:y==="/*"?["","",xn]:y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),S;if(A){let v=A[1],w=A[2]||om;if(v&&A[2]){if(w===".*")throw di;if(w=w.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(w))throw di}if(S=this.#n[w],!S){if(Object.keys(this.#n).some((N)=>N!==on&&N!==xn))throw di;if(l)return;if(S=this.#n[w]=new r,v!=="")S.#i=c.varIndex++}if(!l&&v!=="")m.push([v,S.#i])}else if(S=this.#n[y],!S){if(Object.keys(this.#n).some((v)=>v.length>1&&v!==on&&v!==xn))throw di;if(l)return;S=this.#n[y]=new r}S.insert(j,n,m,c,l)}buildRegExpStr(){let n=Object.keys(this.#n).sort(MA).map((m)=>{let c=this.#n[m];return(typeof c.#i==="number"?`(${m})@${c.#i}`:zA.has(m)?`\\${m}`:m)+c.buildRegExpStr()});if(typeof this.#r==="number")n.unshift(`#${this.#r}`);if(n.length===0)return"";if(n.length===1)return n[0];return"(?:"+n.join("|")+")"}};var Jy=class{#r={varIndex:0};#i=new Yy;insert(r,i,n){let m=[],c=[];for(let y=0;;){let j=!1;if(r=r.replace(/\{[^}]+\}/g,(A)=>{let S=`@\\${y}`;return c[y]=[S,A],y++,j=!0,S}),!j)break}let l=r.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let y=c.length-1;y>=0;y--){let[j]=c[y];for(let A=l.length-1;A>=0;A--)if(l[A].indexOf(j)!==-1){l[A]=l[A].replace(j,c[y][1]);break}}return this.#i.insert(l,i,m,this.#r,n),m}buildRegExp(){let r=this.#i.buildRegExpStr();if(r==="")return[/^$/,[],[]];let i=0,n=[],m=[];return r=r.replace(/#(\d+)|@(\d+)|\.\*\$/g,(c,l,y)=>{if(l!==void 0)return n[++i]=Number(l),"$()";if(y!==void 0)return m[Number(y)]=++i,"";return""}),[new RegExp(`^${r}`),n,m]}};var TA=[/^$/,[],Object.create(null)],Ry=Object.create(null);function Oy(r){return Ry[r]??=new RegExp(r==="*"?"":`^${r.replace(/\/\*$|([.\\+*[^\]$()])/g,(i,n)=>n?`\\${n}`:"(?:|/.*)")}$`)}function hA(){Ry=Object.create(null)}function BA(r){let i=new Jy,n=[];if(r.length===0)return TA;let m=r.map((S)=>[!/\*|\/:/.test(S[0]),...S]).sort(([S,v],[w,N])=>S?1:w?-1:v.length-N.length),c=Object.create(null);for(let S=0,v=-1,w=m.length;S<w;S++){let[N,E,Q]=m[S];if(N)c[E]=[Q.map(([Z])=>[Z,Object.create(null)]),Bn];else v++;let W;try{W=i.insert(E,v,N)}catch(Z){throw Z===di?new hm(E):Z}if(N)continue;n[v]=Q.map(([Z,X])=>{let K=Object.create(null);X-=1;for(;X>=0;X--){let[R,q]=W[X];K[R]=q}return[Z,K]})}let[l,y,j]=i.buildRegExp();for(let S=0,v=n.length;S<v;S++)for(let w=0,N=n[S].length;w<N;w++){let E=n[S][w]?.[1];if(!E)continue;let Q=Object.keys(E);for(let W=0,Z=Q.length;W<Z;W++)E[Q[W]]=j[E[Q[W]]]}let A=[];for(let S in y)A[S]=n[y[S]];return[l,A,c]}function wn(r,i){if(!r)return;for(let n of Object.keys(r).sort((m,c)=>c.length-m.length))if(Oy(n).test(i))return[...r[n]];return}var xm=class{name="RegExpRouter";#r;#i;constructor(){this.#r={[o]:Object.create(null)},this.#i={[o]:Object.create(null)}}add(r,i,n){let m=this.#r,c=this.#i;if(!m||!c)throw Error(Tm);if(!m[r])[m,c].forEach((j)=>{j[r]=Object.create(null),Object.keys(j[o]).forEach((A)=>{j[r][A]=[...j[o][A]]})});if(i==="/*")i="*";let l=(i.match(/\/:/g)||[]).length;if(/\*$/.test(i)){let j=Oy(i);if(r===o)Object.keys(m).forEach((A)=>{m[A][i]||=wn(m[A],i)||wn(m[o],i)||[]});else m[r][i]||=wn(m[r],i)||wn(m[o],i)||[];Object.keys(m).forEach((A)=>{if(r===o||r===A)Object.keys(m[A]).forEach((S)=>{j.test(S)&&m[A][S].push([n,l])})}),Object.keys(c).forEach((A)=>{if(r===o||r===A)Object.keys(c[A]).forEach((S)=>j.test(S)&&c[A][S].push([n,l]))});return}let y=gm(i)||[i];for(let j=0,A=y.length;j<A;j++){let S=y[j];Object.keys(c).forEach((v)=>{if(r===o||r===v)c[v][S]||=[...wn(m[v],S)||wn(m[o],S)||[]],c[v][S].push([n,l-A+j+1])})}}match=Bm;buildAllMatchers(){let r=Object.create(null);return Object.keys(this.#i).concat(Object.keys(this.#r)).forEach((i)=>{r[i]||=this.#n(i)}),this.#r=this.#i=void 0,hA(),r}#n(r){let i=[],n=r===o;if([this.#r,this.#i].forEach((m)=>{let c=m[r]?Object.keys(m[r]).map((l)=>[l,m[r][l]]):[];if(c.length!==0)n||=!0,i.push(...c);else if(r!==o)i.push(...Object.keys(m[o]).map((l)=>[l,m[o][l]]))}),!n)return null;else return BA(i)}};var oA=class{name="PreparedRegExpRouter";#r;#i;constructor(r,i){this.#r=r,this.#i=i}#n(r,i){let n=this.#r[r];n[1].forEach((m)=>m&&m.push(i)),Object.values(n[2]).forEach((m)=>m[0].push(i))}#l(r,i,n,m,c){let l=this.#r[r];if(!c)l[2][i][0].push([n,{}]);else m.forEach((y)=>{if(typeof y==="number")l[1][y].push([n,c]);else l[2][y||i][0].push([n,c])})}add(r,i,n){if(!this.#r[r]){let c=this.#r[o],l={};for(let y in c[2])l[y]=[c[2][y][0].slice(),Bn];this.#r[r]=[c[0],c[1].map((y)=>Array.isArray(y)?y.slice():0),l]}if(i==="/*"||i==="*"){let c=[n,{}];if(r===o)for(let l in this.#r)this.#n(l,c);else this.#n(r,c);return}let m=this.#i[i];if(!m)throw Error(`Path ${i} is not registered`);for(let[c,l]of m)if(r===o)for(let y in this.#r)this.#l(y,i,n,c,l);else this.#l(r,i,n,c,l)}buildAllMatchers(){return this.#r}match=Bm};var Uc=class{name="SmartRouter";#r=[];#i=[];constructor(r){this.#r=r.routers}add(r,i,n){if(!this.#i)throw Error(Tm);this.#i.push([r,i,n])}match(r,i){if(!this.#i)throw Error("Fatal error");let n=this.#r,m=this.#i,c=n.length,l=0,y;for(;l<c;l++){let j=n[l];try{for(let A=0,S=m.length;A<S;A++)j.add(...m[A]);y=j.match(r,i)}catch(A){if(A instanceof hm)continue;throw A}this.match=j.match.bind(j),this.#r=[j],this.#i=void 0;break}if(l===c)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,y}get activeRouter(){if(this.#i||this.#r.length!==1)throw Error("No active router has been determined yet.");return this.#r[0]}};var kn=Object.create(null),xA=(r)=>{for(let i in r)return!0;return!1},Ly=class r{#r;#i;#n;#l=0;#c=kn;constructor(i,n,m){if(this.#i=m||Object.create(null),this.#r=[],i&&n){let c=Object.create(null);c[i]={handler:n,possibleKeys:[],score:0},this.#r=[c]}this.#n=[]}insert(i,n,m){this.#l=++this.#l;let c=this,l=el(n),y=[];for(let j=0,A=l.length;j<A;j++){let S=l[j],v=l[j+1],w=sl(S,v),N=Array.isArray(w)?w[0]:S;if(N in c.#i){if(c=c.#i[N],w)y.push(w[1]);continue}if(c.#i[N]=new r,w)c.#n.push(w),y.push(w[1]);c=c.#i[N]}return c.#r.push({[i]:{handler:m,possibleKeys:y.filter((j,A,S)=>S.indexOf(j)===A),score:this.#l}}),c}#m(i,n,m,c,l){for(let y=0,j=n.#r.length;y<j;y++){let A=n.#r[y],S=A[m]||A[o],v={};if(S!==void 0){if(S.params=Object.create(null),i.push(S),c!==kn||l&&l!==kn)for(let w=0,N=S.possibleKeys.length;w<N;w++){let E=S.possibleKeys[w],Q=v[S.score];S.params[E]=l?.[E]&&!Q?l[E]:c[E]??l?.[E],v[S.score]=!0}}}}search(i,n){let m=[];this.#c=kn;let l=[this],y=cc(n),j=[],A=y.length,S=null;for(let v=0;v<A;v++){let w=y[v],N=v===A-1,E=[];for(let W=0,Z=l.length;W<Z;W++){let X=l[W],K=X.#i[w];if(K)if(K.#c=X.#c,N){if(K.#i["*"])this.#m(m,K.#i["*"],i,X.#c);this.#m(m,K,i,X.#c)}else E.push(K);for(let R=0,q=X.#n.length;R<q;R++){let z=X.#n[R],L=X.#c===kn?{}:{...X.#c};if(z==="*"){let Br=X.#i["*"];if(Br)this.#m(m,Br,i,X.#c),Br.#c=L,E.push(Br);continue}let[f,hr,Yr]=z;if(!w&&!(Yr instanceof RegExp))continue;let x=X.#i[f];if(Yr instanceof RegExp){if(S===null){S=Array(A);let An=n[0]==="/"?1:0;for(let zn=0;zn<A;zn++)S[zn]=An,An+=y[zn].length+1}let Br=n.substring(S[v]),Yi=Yr.exec(Br);if(Yi){if(L[hr]=Yi[0],this.#m(m,x,i,X.#c,L),Yi[0].length===Br.length&&x.#i["*"])this.#m(m,x.#i["*"],i,X.#c,L);if(xA(x.#i)){x.#c=L;let An=Yi[0].match(/\//)?.length??0;(j[An]||=[]).push(x)}continue}}if(Yr===!0||Yr.test(w))if(L[hr]=w,N){if(this.#m(m,x,i,L,X.#c),x.#i["*"])this.#m(m,x.#i["*"],i,L,X.#c)}else x.#c=L,E.push(x)}}let Q=j.shift();l=Q?E.concat(Q):E}if(m.length>1)m.sort((v,w)=>{return v.score-w.score});return[m.map(({handler:v,params:w})=>[v,w])]}};var Pc=class{name="TrieRouter";#r;constructor(){this.#r=new Ly}add(r,i,n){let m=gm(i);if(m){for(let c=0,l=m.length;c<l;c++)this.#r.insert(r,m[c],n);return}this.#r.insert(r,i,n)}match(r,i){return this.#r.search(r,i)}};var V=class extends Vy{constructor(r={}){super(r);this.router=r.router??new Uc({routers:[new xm,new Pc]})}};var Cc=/^\s*(?:text\/(?!event-stream(?:[;\s]|$))[^;\s]+|application\/(?:javascript|json|xml|xml-dtd|ecmascript|dart|msgpack|postscript|rtf|tar|toml|vnd\.dart|vnd\.ms-fontobject|vnd\.ms-opentype|vnd\.msgpack|wasm|x-httpd-php|x-javascript|x-msgpack|x-ns-proxy-autoconfig|x-sh|x-tar|x-virtualbox-hdd|x-virtualbox-ova|x-virtualbox-ovf|x-virtualbox-vbox|x-virtualbox-vdi|x-virtualbox-vhd|x-virtualbox-vmdk|x-www-form-urlencoded)|font\/(?:otf|ttf)|image\/(?:bmp|vnd\.adobe\.photoshop|vnd\.microsoft\.icon|vnd\.ms-dds|x-icon|x-ms-bmp)|message\/rfc822|model\/gltf-binary|x-shader\/x-fragment|x-shader\/x-vertex|[^;\s]+?\+(?:json|text|xml|yaml|msgpack))(?:[;\s]|$)/i;var kA={br:".br",zstd:".zst",gzip:".gz"},oN=Object.keys(kA);var Wc="x-hono-disable-ssg",jE=(()=>{try{return new Response("SSG is disabled",{status:404,headers:{[Wc]:"true"}})}catch{return null}})();var{write:xE}=Bun;var qy=class{#r;constructor(r){this.#r=r,this.raw=r.raw,this.url=r.url?new URL(r.url):null,this.protocol=r.protocol??null}send(r,i){this.#r.send(r,i??{})}raw;binaryType="arraybuffer";get readyState(){return this.#r.readyState}url;protocol;close(r,i){this.#r.close(r,i)}},_y=(r)=>{return new MessageEvent("message",{data:r})},Fy=(r)=>{return(...i)=>{if(typeof i[0]==="function"){let[n,m]=i;return async function(l,y){let j=await n(l),A=await r(l,j,m);if(A)return A;await y()}}else{let[n,m,c]=i;return(async()=>{let l=await r(n,m,c);if(!l)throw Error("Failed to upgrade WebSocket");return l})()}}};var km=(r)=>("server"in r.env)?r.env.server:r.env;var Xc=(r)=>{return new qy({send:(i,n)=>{r.send(i,n?.compress)},raw:r,readyState:r.readyState,url:r.data.url,protocol:r.data.protocol,close(i,n){r.close(i,n)}})},gy=Fy((r,i)=>{let n=km(r);if(!n)throw TypeError("env has to include the 2nd argument of fetch.");if(n.upgrade(r.req.raw,{data:{events:i,url:new URL(r.req.url),protocol:r.req.header("sec-websocket-protocol")?.split(",")[0]?.trim()??""}}))return new Response(null);return}),zy={open(r){let i=r.data.events;if(i.onOpen)i.onOpen(new Event("open"),Xc(r))},close(r,i,n){let m=r.data.events;if(m.onClose)m.onClose(new CloseEvent("close",{code:i,reason:n}),Xc(r))},message(r,i){let n=r.data.events;if(n.onMessage){let m=typeof i==="string"?i:i.buffer;n.onMessage(_y(m),Xc(r))}}},Kc=()=>({upgradeWebSocket:gy,websocket:zy});var My={create(r){let i=Kc();return{upgradeWebSocket:i.upgradeWebSocket,async listen(n){let m={fetch:r.fetch,hostname:n.hostname,idleTimeout:0,websocket:i.websocket},c=(y)=>{try{return Bun.serve({...m,port:y})}catch{return}},l=n.port===0?c(4096)??c(0):c(n.port);if(!l)throw Error(`Failed to start server on port ${n.port}`);if(!l.port)throw Error(`Failed to resolve server address for port ${n.port}`);return{port:l.port,stop(y){return Promise.resolve(l.stop(y))}}}}}};var Nn={};Nr(Nn,{unpublish:()=>Zj,publish:()=>Iv,MDNS:()=>Nn});var Hj=jv(Kj(),1),dn=_.create({service:"mdns"}),li,em;function Iv(r,i){if(em===r)return;if(li)Zj();try{let n=i??"qitqode.local",m=`qitqode-${r}`;li=new Hj.Bonjour;let c=li.publish({name:m,type:"http",host:n,port:r,txt:{path:"/"}});c.on("up",()=>{dn.info("mDNS service published",{name:m,port:r})}),c.on("error",(l)=>{dn.error("mDNS service error",{error:l})}),em=r}catch(n){if(dn.error("mDNS publish failed",{error:n}),li)try{li.destroy()}catch{}li=void 0,em=void 0}}function Zj(){if(li){try{li.unpublishAll(),li.destroy()}catch(r){dn.error("mDNS unpublish failed",{error:r})}li=void 0,em=void 0,dn.info("mDNS service unpublished")}}var Vj=(r)=>{let i=atob(r),n=new Uint8Array(new ArrayBuffer(i.length)),m=i.length/2;for(let c=0,l=i.length-1;c<=m;c++,l--)n[c]=i.charCodeAt(c),n[l]=i.charCodeAt(l);return n};var Av=/^ *(?:[Bb][Aa][Ss][Ii][Cc]) +([A-Za-z0-9._~+/-]+=*) *$/,Sv=/^([^:]*):(.*)$/,vv=new TextDecoder,Yj=(r)=>{let i=Av.exec(r.headers.get("Authorization")||"");if(!i)return;let n=void 0;try{n=Sv.exec(vv.decode(Vj(i[1])))}catch{}if(!n)return;return{username:n[1],password:n[2]}};var Jj=(r,...i)=>{let n="username"in r&&"password"in r,m="verifyUser"in r;if(!(n||m))throw Error('basic auth middleware requires options for "username and password" or "verifyUser"');if(!r.realm)r.realm="Secure Area";if(!r.invalidUserMessage)r.invalidUserMessage="Unauthorized";if(n)i.unshift({username:r.username,password:r.password});return async function(l,y){let j=Yj(l.req.raw);if(j)if(m){if(await r.verifyUser(j.username,j.password,l)){if(r.onAuthSuccess)await r.onAuthSuccess(l,j.username);await y();return}}else for(let N of i){let[E,Q]=await Promise.all([Ic(N.username,j.username,r.hashFunction),Ic(N.password,j.password,r.hashFunction)]);if(E&&Q){if(r.onAuthSuccess)await r.onAuthSuccess(l,j.username);await y();return}}let A=401,S={"WWW-Authenticate":'Basic realm="'+r.realm?.replace(/"/g,"\\\"")+'"'},v=typeof r.invalidUserMessage==="function"?await r.invalidUserMessage(l):r.invalidUserMessage,w=typeof v==="string"?new Response(v,{status:A,headers:S}):new Response(JSON.stringify(v),{status:A,headers:{...S,"content-type":"application/json"}});throw new kr(A,{res:w})}};var Rj=(r)=>{let i={origin:"*",allowMethods:["GET","HEAD","PUT","POST","DELETE","PATCH"],allowHeaders:[],exposeHeaders:[],...r},n=((c)=>{if(typeof c==="string")if(c==="*")return()=>c;else return(l)=>c===l?l:null;else if(typeof c==="function")return c;else return(l)=>c.includes(l)?l:null})(i.origin),m=((c)=>{if(typeof c==="function")return c;else if(Array.isArray(c))return()=>c;else return()=>[]})(i.allowMethods);return async function(l,y){function j(S,v){l.res.headers.set(S,v)}let A=await n(l.req.header("origin")||"",l);if(A)j("Access-Control-Allow-Origin",A);if(i.credentials)j("Access-Control-Allow-Credentials","true");if(i.exposeHeaders?.length)j("Access-Control-Expose-Headers",i.exposeHeaders.join(","));if(l.req.method==="OPTIONS"){if(i.origin!=="*")j("Vary","Origin");if(i.maxAge!=null)j("Access-Control-Max-Age",i.maxAge.toString());let S=await m(l.req.header("origin")||"",l);if(S.length)j("Access-Control-Allow-Methods",S.join(","));let v=i.allowHeaders;if(!v?.length){let w=l.req.header("Access-Control-Request-Headers");if(w)v=w.split(/\s*,\s*/)}if(v?.length)j("Access-Control-Allow-Headers",v.join(",")),l.res.headers.append("Vary","Access-Control-Request-Headers");return l.res.headers.delete("Content-Length"),l.res.headers.delete("Content-Type"),new Response(null,{headers:l.res.headers,status:204,statusText:"No Content"})}if(await y(),i.origin!=="*")l.header("Vary","Origin",{append:!0})}};var Lj=(r)=>r===32||r===9||r===10||r===13,sm=(r,i)=>{while(i<r.length){if(!Lj(r.charCodeAt(i)))break;i++}return i},tn=(r,i)=>{while(i>0){if(!Lj(r.charCodeAt(i-1)))break;i--}return i},Oj=(r,i)=>{while(i<r.length){let n=r.charCodeAt(i);if(n===59)return[i+1,!0];if(n===44)return[i+1,!1];i++}return[i,!1]},wv=(r,i)=>{let n=i,m=!1;while(n<r.length){let c=r.charCodeAt(n);if(m&&c===92)n++;else if(c===34)m=!m;else if(!m&&c===44)return n+1;n++}return n},$v=(r,i)=>{i=sm(r,i);let n=i,m,c,l=!1;while(n<r.length){let A=r.charCodeAt(n);if(A===61){m=r.slice(i,tn(r,n)),n++;break}if(A===59)return[n+1,void 0,void 0,!0];if(A===44)return[n+1,void 0,void 0,!1];n++}if(m===void 0)return[n,void 0,void 0,!1];if(n=sm(r,n),r.charCodeAt(n)===61){let A=Oj(r,n+1);return[A[0],m,void 0,A[1]]}let y=!1,j=n;while(n<r.length){let A=r.charCodeAt(n);if(y&&A===92)n++;else if(A===34){if(y){let S=sm(r,n+1),v=r.charCodeAt(S);if(S<r.length&&!(v===59||v===44)){let w=Oj(r,S);return[w[0],m,void 0,w[1]]}if(c=r.slice(j+1,n),c.includes("\\"))c=c.replace(/\\(.)/g,"$1");if(v===44)return[S+1,m,c,!1];if(v===59)l=!0,S++;n=S;break}y=!0}else if(!y&&(A===59||A===44)){if(c=r.slice(j,tn(r,n)),A===59)l=!0;n++;break}n++}return[n,m,c??r.slice(j,tn(r,n)),l]},Gv=(r,i)=>{let n={type:"",params:{},q:1};i=sm(r,i);let m=i;while(m<r.length){let j=r.charCodeAt(m);if(j===59||j===44){if(n.type=r.slice(i,tn(r,m)),m++,j===44)return[m,n.type?n:void 0];if(!n.type)return[wv(r,m),void 0];break}m++}if(!n.type)return n.type=r.slice(i,tn(r,r.length)),[r.length,n.type?n:void 0];let c,l,y;while(m<r.length){if([m,c,l,y]=$v(r,m),c&&l)n.params[c]=l;if(!y)break}return[m,n]},qj=(r)=>{if(!r)return[];let i=[],n=0,m,c=!1,l;while(n<r.length)if([n,m]=Gv(r,n),m){if(m.q=Nv(m.params.q),i.push(m),l&&l.q<m.q)c=!0;l=m}if(c)i.sort((y,j)=>j.q-y.q);return i},Nv=(r)=>{if(r===void 0)return 1;if(r==="")return 1;if(r==="NaN")return 0;let i=Number(r);if(i===1/0)return 1;if(i===-1/0)return 0;if(Number.isNaN(i))return 1;if(i<0||i>1)return 1;return i};var Ev=["gzip","deflate"],Qv=/(?:^|,)\s*?no-transform\s*?(?:,|$)/i,Dv=(r,i)=>{if(r===void 0)return;let n=qj(r),m=n.find((l)=>l.type==="*")?.q,c;for(let l of i){let y=n.find((A)=>A.type.toLowerCase()===l),j=y?y.q:m??0;if(j===1)return l;else if(j>0&&(!c||j>c.q))c={encoding:l,q:j}}return c?.encoding},_j=(r)=>{let i=r?.threshold??1024,n=r?.encoding?[r.encoding]:Ev,m=r?.contentTypeFilter??Cc,c=typeof m==="function"?(l)=>{let y=l.headers.get("Content-Type");return y&&m(y)}:(l)=>{let y=l.headers.get("Content-Type");return y&&m.test(y)};return async function(y,j){await j();let A=y.res.headers.get("Content-Length");if(y.res.status===206||y.res.headers.has("Content-Encoding")||y.res.headers.has("Transfer-Encoding")||y.req.method==="HEAD"||A&&Number(A)<i||!c(y.res)||!Uv(y.res))return;let S=y.req.header("Accept-Encoding"),v=Dv(S,n);if(!v||!y.res.body)return;let w=new CompressionStream(v);y.res=new Response(y.res.body.pipeThrough(w),y.res),y.res.headers.delete("Content-Length"),y.res.headers.set("Content-Encoding",v);let N=y.res.headers.get("ETag");if(N&&!N.startsWith("W/"))y.res.headers.set("ETag",`W/${N}`)}},Uv=(r)=>{let i=r.headers.get("Cache-Control");return!i||!Qv.test(i)};import{randomUUID as Pv}from"crypto";var fm="ticket",Fj="x-qitqode-ticket",gj="1",Cv=/^\/pty\/[^/]+\/connect$/,Wv=60000,bn=new Map;function Xv(){let r=Date.now();for(let[i,n]of bn)if(n.expiresAt<=r)bn.delete(i)}function zj(r){return Cv.test(r)}function Mj(r,i=Wv){Xv();let n=Pv();return bn.set(n,{ptyID:r,expiresAt:Date.now()+i}),{ticket:n,expires_in:Math.round(i/1000)}}function Tj(r,i){let n=bn.get(r);if(!n)return!1;if(bn.delete(r),n.expiresAt<=Date.now())return!1;return n.ptyID===i}var r0=_.create({service:"server"}),hj=(r,i)=>{let n=crypto.randomUUID();r0.error("failed",{error_id:n,error:r});let m=()=>i.json(new En.Unknown({message:"Internal server error"}).toObject(),{status:500,headers:{"x-qitqode-error-id":n}});if(r instanceof En){let c;if(r instanceof Ci)c=404;else if(r instanceof ir.ModelNotFoundError)c=400;else if(r.name==="ProviderAuthValidationFailed")c=400;else if(r.name.startsWith("Worktree"))c=400;else c=500;if(c===500)return m();return i.json(r.toObject(),{status:c})}if(r instanceof J.BusyError)return i.json(new En.Unknown({message:r.message}).toObject(),{status:409});if(r instanceof kr)return r.getResponse();return m()},Bj=(r,i)=>{if(r.req.method==="OPTIONS")return i();let n=k.QITQODE_SERVER_PASSWORD;if(!n)return i();let m=new URL(r.req.url).pathname;if(zj(m)&&r.req.query(fm))return i();let c=k.QITQODE_SERVER_USERNAME??"qitqode";return Jj({username:c,password:n})(r,i)},oj=async(r,i)=>{let n=r.req.path==="/log";if(!n)r0.info("request",{method:r.req.method,path:r.req.path});let m=r0.time("request",{method:r.req.method,path:r.req.path});if(await i(),!n)m.stop()};function xj(r){return Rj({maxAge:86400,origin(i){if(!i)return;if(r?.cors?.includes(i))return i}})}function Kv(r){return r==="localhost"||r==="::1"||/^127(\.\d{1,3}){3}$/.test(r)||r==="127.0.0.1"}function Hv(r){if(r.startsWith("[")){let i=r.indexOf("]");return i===-1?r:r.slice(1,i)}return r.split(":")[0]}function kj(r){let i=r.hostname===void 0,n=r.hostname==="0.0.0.0"||r.hostname==="::";return(m,c)=>{if(i||n)return c();let l=m.req.header("host");if(!l)return c();let y=Hv(l);if(Kv(y))return c();if(r.hostname&&y===r.hostname)return c();if(r.mdnsDomain&&y===r.mdnsDomain)return c();if(r.allowedHosts?.includes(y))return c();throw r0.warn("rejected request with unexpected Host header",{host:y}),new kr(403,{message:`Forbidden: unexpected Host header "${y}"`})}}var Zv=_j(),pj=(r,i)=>{let n=r.req.path,m=r.req.method;if(n==="/event"||n==="/global/event")return i();if(m==="POST"&&/\/session\/[^/]+\/(message|prompt_async)$/.test(n))return i();return Zv(r,i)};var p={};Nr(p,{waitForSync:()=>Tv,status:()=>zv,startWorkspaceSyncing:()=>uc,sessionRestore:()=>qv,remove:()=>Fv,list:()=>_v,isSyncing:()=>Mv,get:()=>i1,create:()=>Ov,Workspace:()=>p,Info:()=>i0,Event:()=>sn,ConnectionStatus:()=>r1});var uj=["forgewise"];var Vv=new TextEncoder;function Yv(r){return Vv.encode(r).byteLength}function aj(r,i=16384){let n=[...uj.filter((l)=>(l in r)),...Object.keys(r).filter((l)=>!uj.includes(l))],m={},c=0;for(let l of n){let y={...m,[l]:r[l]},j=JSON.stringify(y);if(Yv(j)>i)continue;m[l]=r[l],c+=1}if(c===0)return;return JSON.stringify(m)}var Hr=dj("workspace",{id:Li().$type().primaryKey(),type:Li().notNull(),name:Li().notNull().default(""),branch:Li(),directory:Li(),extra:Li({mode:"json"}),project_id:Li().$type().notNull().references(()=>tj.id,{onDelete:"cascade"})});async function bj(r,i,n){let m=r.getReader(),c=new TextDecoder,l="",y="",j=1000,A=()=>{m.cancel().catch(()=>{return})};if(i.addEventListener("abort",A),i.aborted)A();try{while(!i.aborted){let S=await m.read().catch(()=>({done:!0,value:void 0}));if(S.done)break;l+=c.decode(S.value,{stream:!0}),l=l.replace(/\r\n/g,`
2
+ import{bg as In,cg as a2,dg as d2,eg as o2,fg as x2,gg as t2,hg as b2,ig as e2,jg as s2,kg as f2,lg as k2,og as nA}from"./chunk-bpbptx89.js";import{pg as Er,qg as R2}from"./chunk-2y90ad1v.js";import{Cg as P2,zg as U2}from"./chunk-yzjc15vp.js";import{Ig as Sc}from"./chunk-4amgp4yd.js";import{Kg as Ey}from"./chunk-scnz207s.js";import{Lg as fj}from"./chunk-b8bytvka.js";import{$g as gl,Mg as _n,Tg as Xr,Ug as Km,Wg as Hm,Xg as xi,Yg as ai,Zg as im,_g as Ll,ah as b0,bh as Zm,ch as S2,dh as Dr,eh as jn,fh as Wr,hh as e}from"./chunk-ddnpx1yx.js";import{Ah as bc,Ih as y2,Jh as ql,Qh as tc,Rh as _l,Uh as Ml,Vh as yn,ih as Tl,jh as zl,kh as ui,oh as hl,vh as mm,yh as _r}from"./chunk-wfs4pcwa.js";import{$j as f0,Cl as J,Dl as mr,Wk as Pn,Xj as wr,Xk as Qr,Yj as Y2,Zj as J2,ak as qn,bk as K2,fk as sj,fl as qr,gk as tr,gl as _i,hk as Zr,hl as jA,ik as Q1,jk as yr,kk as br,lk as Si,mk as pi,ml as c2,pk as Ym,rl as ir,sl as Cr,tl as vr,vl as w1,wl as j0,xk as A2,yk as lr,zk as er}from"./chunk-pvpy9kq1.js";import{Fl as ul,Pl as uI}from"./chunk-wpajh5s5.js";import{Ql as Lr,Ul as tj,Vl as nr,Wl as Xi,Xl as Ki,am as iA,bm as b,dm as Ci,fm as l0,jm as Gr,lm as M}from"./chunk-2ec6ps8r.js";import{xm as yi}from"./chunk-gj3hzx3d.js";import{Bn as Li,Dn as dj,Gn as d,In as nm,Jn as g2,Kn as z2,On as M2,Pn as fn,co as c0}from"./chunk-nj4d554m.js";import{Jp as rm,Op as D2}from"./chunk-a0v55ywn.js";import{aq as F}from"./chunk-1sgby720.js";import{ds as tI,es as bI,fs as Dn}from"./chunk-sn4nez18.js";import{os as sI,ps as fI}from"./chunk-42f7p0hq.js";import{$s as eI,Ks as B0,Ls as Pr,Ms as CI,Ns as o0,Os as WI,Ps as XI,Qs as KI,Rs as HI,Ss as zr,Ts as Ql,Us as x0,Vs as ZI,Ws as VI,Xs as YI,Ys as JI,Zs as k0,_s as RI,at as OI,bt as LI,ct as qI,dt as q1,et as Im,vs as PI,ys as Wn}from"./chunk-4qqkqrn9.js";import{qt as En}from"./chunk-12bssxd4.js";import{Ft as pI,ou as Vi,pu as k,tt as mA,yu as _}from"./chunk-3szwfy7w.js";import{Cu as m0,Nu as kl,Ou as yA,Su as Wi}from"./chunk-whxjkz9a.js";import{Uu as I}from"./chunk-k309zez0.js";import{NA as mI,OA as cI,mA as ji}from"./chunk-phxrg7aw.js";import{$I as EI,$L as ml,AL as Nl,BI as Pl,BM as Zn,EL as f1,FD as u1,FM as Cn,HH as Gl,HM as Fr,IB as gi,JC as Dl,LC as x1,MD as $r,MG as J0,MH as $m,ML as rI,ND as V0,NH as wI,OF as Sm,OH as Ul,OL as iI,PD as or,PI as C,PL as nI,QD as Ai,RC as k1,RD as O0,RH as z1,SC as p1,SG as t,TD as Um,TI as $I,TL as W0,UC as Qm,UD as Il,VD as vl,VI as GI,VL as X0,WD as Mr,WI as Ln,XD as Am,XI as Cl,XL as Pm,YD as a1,ZD as Zi,ZG as vm,ZL as El,_C as II,_G as wm,_I as NI,aH as AI,aK as DI,cG as g1,dM as X1,eH as Ti,eJ as QI,eP as UI,fJ as S0,gG as Y0,hJ as d1,iB as Ii,iH as SI,iJ as A0,iO as gr,jJ as t1,kB as Xl,kH as h0,kJ as Al,kO as cl,lB as Fi,lJ as Sl,lO as H0,mD as MI,mG as T,mJ as b1,mM as Dm,nJ as e1,oD as Mi,oH as R0,oJ as W1,pB as o1,pJ as ec,pO as g,qJ as wl,rB as P1,rJ as s1,rM as sc,uH as hi,uM as jm,wD as O1,xD as L1,zD as K0,zH as vI,zL as T0}from"./chunk-snm5q21k.js";import{$P as jv,aQ as rr,bQ as Nr,dQ as bi}from"./chunk-aztre27e.js";var pm=rr((By)=>{Object.defineProperty(By,"__esModule",{value:!0});By.default=aA;var Ty=/[A-Z]/g;function hy(r){return r.toLowerCase()}function aA(r,i){let n=r.replace(Ty,hy),m=i.replace(Ty,hy);return n===m}});var Zc=rr((oy)=>{Object.defineProperty(oy,"__esModule",{value:!0});oy.DnsTxt=void 0;class Hc{constructor(r={}){this.binary=r?r.binary:!1}encode(r={}){return Object.entries(r).map(([i,n])=>{let m=`${i}=${n}`;return Buffer.from(m)})}decode(r){var i={};try{let m=r.toString().split(/=(.+)/),c=m[0],l=m[1];i[c]=l}catch(n){}return i}decodeAll(r){return r.filter((i)=>i.length>1).map((i)=>this.decode(i)).reduce((i,n)=>{var m=i;let[c]=Object.keys(n),[l]=Object.values(n);return m[c]=l,m},{})}}oy.DnsTxt=Hc;oy.default=Hc});var Vc=rr((py)=>{Object.defineProperty(py,"__esModule",{value:!0});py.toType=py.toString=void 0;var ky=(r)=>{return"_"+r},bA=(r)=>{return["name","protocol","subtype"].includes(r)},eA=(r)=>{let i={name:r.name,protocol:r.protocol,subtype:r.subtype};return Object.entries(i).filter(([m,c])=>bA(m)&&c!==void 0).reduce((m,[c,l])=>{switch(typeof l){case"object":l.map((y)=>m.push(ky(y)));break;default:m.push(ky(l));break}return m},[]).join(".")};py.toString=eA;var sA=(r)=>{let i=r.split("."),n;for(let m in i){if(i[m][0]!=="_")continue;i[m]=i[m].slice(1)}if(i.includes("sub"))n=i.shift(),i.shift();return{name:i.shift(),protocol:i.shift()||null,subtype:n}};py.toType=sA});var Jc=rr((ti)=>{var dy=ti&&ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ti,"__esModule",{value:!0});ti.Service=void 0;var ay=dy(bi("os")),rS=dy(Zc()),iS=bi("events"),nS=Vc(),um=".local";class Yc extends iS.EventEmitter{constructor(r){super();if(this.probe=!0,this.published=!1,this.activated=!1,this.destroyed=!1,this.txtService=new rS.default,!r.name)throw Error("ServiceConfig requires `name` property to be set");if(!r.type)throw Error("ServiceConfig requires `type` property to be set");if(!r.port)throw Error("ServiceConfig requires `port` property to be set");this.name=r.name.split(".").join("-"),this.protocol=r.protocol||"tcp",this.type=(0,nS.toString)({name:r.type,protocol:this.protocol}),this.port=r.port,this.host=r.host||ay.default.hostname(),this.fqdn=`${this.name}.${this.type}${um}`,this.txt=r.txt,this.subtypes=r.subtypes,this.disableIPv6=!!r.disableIPv6}records(){var r=[this.RecordPTR(this),this.RecordSRV(this),this.RecordTXT(this)];for(let n of this.subtypes||[])r.push(this.RecordSubtypePTR(this,n));let i=Object.values(ay.default.networkInterfaces());for(let n of i){let m=n;for(let c of m){if(c.internal||c.mac==="00:00:00:00:00:00")continue;switch(c.family){case"IPv4":r.push(this.RecordA(this,c.address));break;case"IPv6":if(this.disableIPv6)break;r.push(this.RecordAAAA(this,c.address));break}}}return r}RecordPTR(r){return{name:`${r.type}${um}`,type:"PTR",ttl:28800,data:r.fqdn}}RecordSubtypePTR(r,i){return{name:`_${i}._sub.${r.type}${um}`,type:"PTR",ttl:28800,data:`${r.name}.${r.type}${um}`}}RecordSRV(r){return{name:r.fqdn,type:"SRV",ttl:120,data:{port:r.port,target:r.host}}}RecordTXT(r){return{name:r.fqdn,type:"TXT",ttl:4500,data:this.txtService.encode(r.txt)}}RecordA(r,i){return{name:r.host,type:"A",ttl:120,data:i}}RecordAAAA(r,i){return{name:r.host,type:"AAAA",ttl:120,data:i}}}ti.Service=Yc;ti.default=Yc});var by=rr((ei)=>{var ty=ei&&ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ei,"__esModule",{value:!0});ei.Registry=void 0;var mS=ty(pm()),Rc=ty(Jc()),cS=3600000,lS=3,yS=function(){};class Oc{constructor(r){this.services=[],this.server=r}publish(r){function i(c,l,y){if(c.activated)return;if(c.activated=!0,l.services.push(c),!(c instanceof Rc.default))return;if(y===null||y===void 0?void 0:y.probe)l.probe(l.server.mdns,c,(j)=>{if(j){if(c.stop!==void 0)c.stop();console.log(Error("Service name is already in use on the network"));return}l.announce(l.server,c)});else l.announce(l.server,c)}function n(c,l,y){if(!y)y=yS;if(!c.activated)return process.nextTick(y);if(!(c instanceof Rc.default))return process.nextTick(y);l.teardown(l.server,c,y);let j=l.services.indexOf(c);if(j!==-1)l.services.splice(j,1)}let m=new Rc.default(r);return m.start=i.bind(null,m,this),m.stop=n.bind(null,m,this),m.start({probe:r.probe!==!1}),m}unpublishAll(r){this.teardown(this.server,this.services,r),this.services=[]}destroy(){this.services.map((r)=>r.destroyed=!0)}probe(r,i,n){var m=!1,c=0,l;let y=()=>{if(!i.activated||i.destroyed)return;r.query(i.fqdn,"ANY",function(){m=!0,l=setTimeout(++c<3?y:S,250),l.unref()})},j=(v)=>{if(!m)return;if(v.answers.some(A)||v.additionals.some(A))S(!0)},A=(v)=>{return(0,mS.default)(v.name,i.fqdn)},S=(v)=>{r.removeListener("response",j),clearTimeout(l),n(!!v)};r.on("response",j),setTimeout(y,Math.random()*250)}announce(r,i){var n=1000,m=i.records();r.register(m);let c=()=>{if(!i.activated||i.destroyed)return;r.mdns.respond(m,function(){if(!i.published)i.activated=!0,i.published=!0,i.emit("up");if(n=n*lS,n<cS&&!i.destroyed)setTimeout(c,n).unref()})};c()}teardown(r,i,n){if(!Array.isArray(i))i=[i];i=i.filter((c)=>c.activated);var m=i.flatMap(function(c){c.activated=!1;var l=c.records();return l.forEach((y)=>{y.ttl=0}),l});if(m.length===0)return n&&process.nextTick(n);r.unregister(m),r.mdns.respond(m,function(){if(i.forEach(function(c){c.published=!1}),typeof n==="function")n.apply(null,arguments)})}}ei.Registry=Oc;ei.default=Oc});var ey=rr((jS)=>{jS.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};jS.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}if(r.toUpperCase().startsWith("UNKNOWN_"))return parseInt(r.slice(8));return 0}});var sy=rr((SS)=>{SS.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};SS.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var fy=rr(($S)=>{$S.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};$S.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var rj=rr((ES)=>{ES.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};ES.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var ij=rr((US)=>{US.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}if(r<0)return null;return`OPTION_${r}`};US.toCode=function(r){if(typeof r==="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let i=r.match(/_(\d+)$/);if(i)return parseInt(i[1],10);return-1}});var cj=rr((mj,Lc)=>{var nj=function(r){Object.defineProperty(r,"__esModule",{value:!0}),r.decode=w,r.encode=v,r.familyOf=S,r.name=void 0,r.sizeOf=A,r.v6=r.v4=void 0;let i=/^(\d{1,3}\.){3,3}\d{1,3}$/,n=4,m=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,c=16,l={name:"v4",size:n,isFormat:(N)=>i.test(N),encode(N,E,Q){Q=~~Q,E=E||new Uint8Array(Q+n);let W=N.length,Z=0;for(let X=0;X<W;){let K=N.charCodeAt(X++);if(K===46)E[Q++]=Z,Z=0;else Z=Z*10+(K-48)}return E[Q]=Z,E},decode(N,E){return E=~~E,`${N[E++]}.${N[E++]}.${N[E++]}.${N[E]}`}};r.v4=l;let y={name:"v6",size:c,isFormat:(N)=>N.length>0&&m.test(N),encode(N,E,Q){Q=~~Q;let W=Q+c,Z=-1,X=0,K=0,R=!0,q=!1;E=E||new Uint8Array(Q+c);for(let z=0;z<N.length;z++){let L=N.charCodeAt(z);if(L===58){if(R){if(Z!==-1){if(Q<W)E[Q]=0;if(Q<W-1)E[Q+1]=0;Q+=2}else if(Q<W)Z=Q}else{if(q===!0){if(Q<W)E[Q]=K;Q++}else{if(Q<W)E[Q]=X>>8;if(Q<W-1)E[Q+1]=X&255;Q+=2}X=0,K=0}R=!0,q=!1}else if(L===46){if(Q<W)E[Q]=K;Q++,K=0,X=0,R=!1,q=!0}else{if(R=!1,L>=97)L-=87;else if(L>=65)L-=55;else L-=48,K=K*10+L;X=(X<<4)+L}}if(R===!1)if(q===!0){if(Q<W)E[Q]=K;Q++}else{if(Q<W)E[Q]=X>>8;if(Q<W-1)E[Q+1]=X&255;Q+=2}else if(Z===0){if(Q<W)E[Q]=0;if(Q<W-1)E[Q+1]=0;Q+=2}else if(Z!==-1){Q+=2;for(let z=Math.min(Q-1,W-1);z>=Z+2;z--)E[z]=E[z-2];E[Z]=0,E[Z+1]=0,Z=Q}if(Z!==Q&&Z!==-1){if(Q>W-2)Q=W-2;while(W>Z)E[--W]=Q<W&&Q>Z?E[--Q]:0}else while(Q<W)E[Q++]=0;return E},decode(N,E){E=~~E;let Q="";for(let W=0;W<c;W+=2){if(W!==0)Q+=":";Q+=(N[E+W]<<8|N[E+W+1]).toString(16)}return Q.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=y;let j="ip";r.name=j;function A(N){if(l.isFormat(N))return l.size;if(y.isFormat(N))return y.size;throw Error(`Invalid ip address: ${N}`)}function S(N){return A(N)===l.size?1:2}function v(N,E,Q){Q=~~Q;let W=A(N);if(typeof E==="function")E=E(Q+W);if(W===l.size)return l.encode(N,E,Q);return y.encode(N,E,Q)}function w(N,E,Q){if(E=~~E,Q=Q||N.length-E,Q===l.size)return l.decode(N,E,Q);if(Q===y.size)return y.decode(N,E,Q);throw Error(`Invalid buffer size needs to be ${l.size} for v4 or ${y.size} for v6.`)}return"default"in r?r.default:r}({});if(typeof define==="function"&&define.amd)define([],function(){return nj});else if(typeof Lc==="object"&&typeof mj==="object")Lc.exports=nj});var lj=rr((ZS)=>{var Y=bi("buffer").Buffer,Pi=ey(),WS=sy(),XS=fy(),dm=rj(),Fc=ij(),si=cj(),H=ZS.name={};H.encode=function(r,i,n,{mail:m=!1}={}){if(!i)i=Y.alloc(H.encodingLength(r));if(!n)n=0;let c=n,l=r.replace(/^\.|\.$/gm,"");if(l.length){let y=[];if(m){let j="";l.split(".").forEach((A)=>{if(A.endsWith("\\"))j+=(j.length?".":"")+A.slice(0,-1);else if(y.length===0&&j.length)y.push(j+"."+A);else y.push(A)})}else y=l.split(".");for(let j=0;j<y.length;j++){let A=i.write(y[j],n+1);i[n]=A,n+=A+1}}return i[n++]=0,H.encode.bytes=n-c,i};H.encode.bytes=0;H.decode=function(r,i,{mail:n=!1}={}){if(!i)i=0;let m=[],c=i,l=0,y=0,j=!1;while(!0){if(i>=r.length)throw Error("Cannot decode name (buffer overflow)");let A=r[i++];if(y+=j?0:1,A===0)break;else if((A&192)===0){if(i+A>r.length)throw Error("Cannot decode name (buffer overflow)");if(l+=A+1,l>254)throw Error("Cannot decode name (name too long)");let S=r.toString("utf-8",i,i+A);if(n)S=S.replace(/\./g,"\\.");m.push(S),i+=A,y+=j?0:A}else if((A&192)===192){if(i+1>r.length)throw Error("Cannot decode name (buffer overflow)");let S=r.readUInt16BE(i-1)-49152;if(S>=c)throw Error("Cannot decode name (bad pointer)");i=S,c=S,y+=j?0:1,j=!0}else throw Error("Cannot decode name (bad label)")}return H.decode.bytes=y,m.length===0?".":m.join(".")};H.decode.bytes=0;H.encodingLength=function(r){if(r==="."||r==="..")return 1;return Y.byteLength(r.replace(/^\.|\.$/gm,""))+2};var O={};O.encode=function(r,i,n){if(!i)i=Y.alloc(O.encodingLength(r));if(!n)n=0;let m=i.write(r,n+1);return i[n]=m,O.encode.bytes=m+1,i};O.encode.bytes=0;O.decode=function(r,i){if(!i)i=0;let n=r[i],m=r.toString("utf-8",i+1,i+1+n);return O.decode.bytes=n+1,m};O.decode.bytes=0;O.encodingLength=function(r){return Y.byteLength(r)+1};var ar={};ar.encode=function(r,i,n){if(!i)i=ar.encodingLength(r);if(!n)n=0;let m=(r.flags||0)&32767,c=r.type==="response"?32768:0;return i.writeUInt16BE(r.id||0,n),i.writeUInt16BE(m|c,n+2),i.writeUInt16BE(r.questions.length,n+4),i.writeUInt16BE(r.answers.length,n+6),i.writeUInt16BE(r.authorities.length,n+8),i.writeUInt16BE(r.additionals.length,n+10),i};ar.encode.bytes=12;ar.decode=function(r,i){if(!i)i=0;if(r.length<12)throw Error("Header must be 12 bytes");let n=r.readUInt16BE(i+2);return{id:r.readUInt16BE(i),type:n&32768?"response":"query",flags:n&32767,flag_qr:(n>>15&1)===1,opcode:XS.toString(n>>11&15),flag_aa:(n>>10&1)===1,flag_tc:(n>>9&1)===1,flag_rd:(n>>8&1)===1,flag_ra:(n>>7&1)===1,flag_z:(n>>6&1)===1,flag_ad:(n>>5&1)===1,flag_cd:(n>>4&1)===1,rcode:WS.toString(n&15),questions:Array(r.readUInt16BE(i+4)),answers:Array(r.readUInt16BE(i+6)),authorities:Array(r.readUInt16BE(i+8)),additionals:Array(r.readUInt16BE(i+10))}};ar.decode.bytes=12;ar.encodingLength=function(){return 12};var vi=ZS.unknown={};vi.encode=function(r,i,n){if(!i)i=Y.alloc(vi.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(r.length,n),r.copy(i,n+2),vi.encode.bytes=r.length+2,i};vi.encode.bytes=0;vi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m=r.slice(i+2,i+2+n);return vi.decode.bytes=n+2,m};vi.decode.bytes=0;vi.encodingLength=function(r){return r.length+2};var wi=ZS.ns={};wi.encode=function(r,i,n){if(!i)i=Y.alloc(wi.encodingLength(r));if(!n)n=0;return H.encode(r,i,n+2),i.writeUInt16BE(H.encode.bytes,n),wi.encode.bytes=H.encode.bytes+2,i};wi.encode.bytes=0;wi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m=H.decode(r,i+2);return wi.decode.bytes=n+2,m};wi.decode.bytes=0;wi.encodingLength=function(r){return H.encodingLength(r)+2};var $i=ZS.soa={};$i.encode=function(r,i,n){if(!i)i=Y.alloc($i.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.mname,i,n),n+=H.encode.bytes,H.encode(r.rname,i,n,{mail:!0}),n+=H.encode.bytes,i.writeUInt32BE(r.serial||0,n),n+=4,i.writeUInt32BE(r.refresh||0,n),n+=4,i.writeUInt32BE(r.retry||0,n),n+=4,i.writeUInt32BE(r.expire||0,n),n+=4,i.writeUInt32BE(r.minimum||0,n),n+=4,i.writeUInt16BE(n-m-2,m),$i.encode.bytes=n-m,i};$i.encode.bytes=0;$i.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.mname=H.decode(r,i),i+=H.decode.bytes,m.rname=H.decode(r,i,{mail:!0}),i+=H.decode.bytes,m.serial=r.readUInt32BE(i),i+=4,m.refresh=r.readUInt32BE(i),i+=4,m.retry=r.readUInt32BE(i),i+=4,m.expire=r.readUInt32BE(i),i+=4,m.minimum=r.readUInt32BE(i),i+=4,$i.decode.bytes=i-n,m};$i.decode.bytes=0;$i.encodingLength=function(r){return 22+H.encodingLength(r.mname)+H.encodingLength(r.rname)};var Gi=ZS.txt={};Gi.encode=function(r,i,n){if(!Array.isArray(r))r=[r];for(let c=0;c<r.length;c++){if(typeof r[c]==="string")r[c]=Y.from(r[c]);if(!Y.isBuffer(r[c]))throw Error("Must be a Buffer")}if(!i)i=Y.alloc(Gi.encodingLength(r));if(!n)n=0;let m=n;return n+=2,r.forEach(function(c){i[n++]=c.length,c.copy(i,n,0,c.length),n+=c.length}),i.writeUInt16BE(n-m-2,m),Gi.encode.bytes=n-m,i};Gi.encode.bytes=0;Gi.decode=function(r,i){if(!i)i=0;let n=i,m=r.readUInt16BE(i);i+=2;let c=[];while(m>0){let l=r[i++];if(--m,m<l)throw Error("Buffer overflow");c.push(r.slice(i,i+l)),i+=l,m-=l}return Gi.decode.bytes=i-n,c};Gi.decode.bytes=0;Gi.encodingLength=function(r){if(!Array.isArray(r))r=[r];let i=2;return r.forEach(function(n){if(typeof n==="string")i+=Y.byteLength(n)+1;else i+=n.length+1}),i};var Ni=ZS.null={};Ni.encode=function(r,i,n){if(!i)i=Y.alloc(Ni.encodingLength(r));if(!n)n=0;if(typeof r==="string")r=Y.from(r);if(!r)r=Y.alloc(0);let m=n;n+=2;let c=r.length;return r.copy(i,n,0,c),n+=c,i.writeUInt16BE(n-m-2,m),Ni.encode.bytes=n-m,i};Ni.encode.bytes=0;Ni.decode=function(r,i){if(!i)i=0;let n=i,m=r.readUInt16BE(i);i+=2;let c=r.slice(i,i+m);return i+=m,Ni.decode.bytes=i-n,c};Ni.decode.bytes=0;Ni.encodingLength=function(r){if(!r)return 2;return(Y.isBuffer(r)?r.length:Y.byteLength(r))+2};var Ei=ZS.hinfo={};Ei.encode=function(r,i,n){if(!i)i=Y.alloc(Ei.encodingLength(r));if(!n)n=0;let m=n;return n+=2,O.encode(r.cpu,i,n),n+=O.encode.bytes,O.encode(r.os,i,n),n+=O.encode.bytes,i.writeUInt16BE(n-m-2,m),Ei.encode.bytes=n-m,i};Ei.encode.bytes=0;Ei.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.cpu=O.decode(r,i),i+=O.decode.bytes,m.os=O.decode(r,i),i+=O.decode.bytes,Ei.decode.bytes=i-n,m};Ei.decode.bytes=0;Ei.encodingLength=function(r){return O.encodingLength(r.cpu)+O.encodingLength(r.os)+2};var pr=ZS.ptr={},KS=ZS.cname=pr,HS=ZS.dname=pr;pr.encode=function(r,i,n){if(!i)i=Y.alloc(pr.encodingLength(r));if(!n)n=0;return H.encode(r,i,n+2),i.writeUInt16BE(H.encode.bytes,n),pr.encode.bytes=H.encode.bytes+2,i};pr.encode.bytes=0;pr.decode=function(r,i){if(!i)i=0;let n=H.decode(r,i+2);return pr.decode.bytes=H.decode.bytes+2,n};pr.decode.bytes=0;pr.encodingLength=function(r){return H.encodingLength(r)+2};var Qi=ZS.srv={};Qi.encode=function(r,i,n){if(!i)i=Y.alloc(Qi.encodingLength(r));if(!n)n=0;i.writeUInt16BE(r.priority||0,n+2),i.writeUInt16BE(r.weight||0,n+4),i.writeUInt16BE(r.port||0,n+6),H.encode(r.target,i,n+8);let m=H.encode.bytes+6;return i.writeUInt16BE(m,n),Qi.encode.bytes=m+2,i};Qi.encode.bytes=0;Qi.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i),m={};return m.priority=r.readUInt16BE(i+2),m.weight=r.readUInt16BE(i+4),m.port=r.readUInt16BE(i+6),m.target=H.decode(r,i+8),Qi.decode.bytes=n+2,m};Qi.decode.bytes=0;Qi.encodingLength=function(r){return 8+H.encodingLength(r.target)};var Jr=ZS.caa={};Jr.ISSUER_CRITICAL=128;Jr.encode=function(r,i,n){let m=Jr.encodingLength(r);if(!i)i=Y.alloc(Jr.encodingLength(r));if(!n)n=0;if(r.issuerCritical)r.flags=Jr.ISSUER_CRITICAL;return i.writeUInt16BE(m-2,n),n+=2,i.writeUInt8(r.flags||0,n),n+=1,O.encode(r.tag,i,n),n+=O.encode.bytes,i.write(r.value,n),n+=Y.byteLength(r.value),Jr.encode.bytes=m,i};Jr.encode.bytes=0;Jr.decode=function(r,i){if(!i)i=0;let n=r.readUInt16BE(i);i+=2;let m=i,c={};return c.flags=r.readUInt8(i),i+=1,c.tag=O.decode(r,i),i+=O.decode.bytes,c.value=r.toString("utf-8",i,m+n),c.issuerCritical=!!(c.flags&Jr.ISSUER_CRITICAL),Jr.decode.bytes=n+2,c};Jr.decode.bytes=0;Jr.encodingLength=function(r){return O.encodingLength(r.tag)+O.encodingLength(r.value)+2};var Ri=ZS.mx={};Ri.encode=function(r,i,n){if(!i)i=Y.alloc(Ri.encodingLength(r));if(!n)n=0;let m=n;return n+=2,i.writeUInt16BE(r.preference||0,n),n+=2,H.encode(r.exchange,i,n),n+=H.encode.bytes,i.writeUInt16BE(n-m-2,m),Ri.encode.bytes=n-m,i};Ri.encode.bytes=0;Ri.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.preference=r.readUInt16BE(i),i+=2,m.exchange=H.decode(r,i),i+=H.decode.bytes,Ri.decode.bytes=i-n,m};Ri.encodingLength=function(r){return 4+H.encodingLength(r.exchange)};var Di=ZS.a={};Di.encode=function(r,i,n){if(!i)i=Y.alloc(Di.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(4,n),n+=2,si.v4.encode(r,i,n),Di.encode.bytes=6,i};Di.encode.bytes=0;Di.decode=function(r,i){if(!i)i=0;i+=2;let n=si.v4.decode(r,i);return Di.decode.bytes=6,n};Di.decode.bytes=0;Di.encodingLength=function(){return 6};var Ui=ZS.aaaa={};Ui.encode=function(r,i,n){if(!i)i=Y.alloc(Ui.encodingLength(r));if(!n)n=0;return i.writeUInt16BE(16,n),n+=2,si.v6.encode(r,i,n),Ui.encode.bytes=18,i};Ui.encode.bytes=0;Ui.decode=function(r,i){if(!i)i=0;i+=2;let n=si.v6.decode(r,i);return Ui.decode.bytes=18,n};Ui.decode.bytes=0;Ui.encodingLength=function(){return 18};var Kr=ZS.option={};Kr.encode=function(r,i,n){if(!i)i=Y.alloc(Kr.encodingLength(r));if(!n)n=0;let m=n,c=Fc.toCode(r.code);if(i.writeUInt16BE(c,n),n+=2,r.data)i.writeUInt16BE(r.data.length,n),n+=2,r.data.copy(i,n),n+=r.data.length;else switch(c){case 8:let l=r.sourcePrefixLength||0,y=r.family||si.familyOf(r.ip),j=si.encode(r.ip,Y.alloc),A=Math.ceil(l/8);i.writeUInt16BE(A+4,n),n+=2,i.writeUInt16BE(y,n),n+=2,i.writeUInt8(l,n++),i.writeUInt8(r.scopePrefixLength||0,n++),j.copy(i,n,0,A),n+=A;break;case 11:if(r.timeout)i.writeUInt16BE(2,n),n+=2,i.writeUInt16BE(r.timeout,n),n+=2;else i.writeUInt16BE(0,n),n+=2;break;case 12:let S=r.length||0;i.writeUInt16BE(S,n),n+=2,i.fill(0,n,n+S),n+=S;break;case 14:let v=r.tags.length*2;i.writeUInt16BE(v,n),n+=2;for(let w of r.tags)i.writeUInt16BE(w,n),n+=2;break;default:throw Error(`Unknown roption code: ${r.code}`)}return Kr.encode.bytes=n-m,i};Kr.encode.bytes=0;Kr.decode=function(r,i){if(!i)i=0;let n={};n.code=r.readUInt16BE(i),n.type=Fc.toString(n.code),i+=2;let m=r.readUInt16BE(i);switch(i+=2,n.data=r.slice(i,i+m),n.code){case 8:n.family=r.readUInt16BE(i),i+=2,n.sourcePrefixLength=r.readUInt8(i++),n.scopePrefixLength=r.readUInt8(i++);let c=Y.alloc(n.family===1?4:16);r.copy(c,0,i,i+m-4),n.ip=si.decode(c);break;case 11:if(m>0)n.timeout=r.readUInt16BE(i),i+=2;break;case 14:n.tags=[];for(let l=0;l<m;l+=2)n.tags.push(r.readUInt16BE(i)),i+=2}return Kr.decode.bytes=m+4,n};Kr.decode.bytes=0;Kr.encodingLength=function(r){if(r.data)return r.data.length+4;switch(Fc.toCode(r.code)){case 8:let n=r.sourcePrefixLength||0;return Math.ceil(n/8)+8;case 11:return typeof r.timeout==="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw Error(`Unknown roption code: ${r.code}`)};var Or=ZS.opt={};Or.encode=function(r,i,n){if(!i)i=Y.alloc(Or.encodingLength(r));if(!n)n=0;let m=n,c=$n(r,Kr);return i.writeUInt16BE(c,n),n=pn(r,Kr,i,n+2),Or.encode.bytes=n-m,i};Or.encode.bytes=0;Or.decode=function(r,i){if(!i)i=0;let n=i,m=[],c=r.readUInt16BE(i);i+=2;let l=0;while(c>0)m[l++]=Kr.decode(r,i),i+=Kr.decode.bytes,c-=Kr.decode.bytes;return Or.decode.bytes=i-n,m};Or.decode.bytes=0;Or.encodingLength=function(r){return 2+$n(r||[],Kr)};var Ur=ZS.dnskey={};Ur.PROTOCOL_DNSSEC=3;Ur.ZONE_KEY=128;Ur.SECURE_ENTRYPOINT=32768;Ur.encode=function(r,i,n){if(!i)i=Y.alloc(Ur.encodingLength(r));if(!n)n=0;let m=n,c=r.key;if(!Y.isBuffer(c))throw Error("Key must be a Buffer");return n+=2,i.writeUInt16BE(r.flags,n),n+=2,i.writeUInt8(Ur.PROTOCOL_DNSSEC,n),n+=1,i.writeUInt8(r.algorithm,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,Ur.encode.bytes=n-m,i.writeUInt16BE(Ur.encode.bytes-2,m),i};Ur.encode.bytes=0;Ur.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);if(i+=2,m.flags=r.readUInt16BE(i),i+=2,r.readUInt8(i)!==Ur.PROTOCOL_DNSSEC)throw Error("Protocol must be 3");return i+=1,m.algorithm=r.readUInt8(i),i+=1,m.key=r.slice(i,n+c+2),i+=m.key.length,Ur.decode.bytes=i-n,m};Ur.decode.bytes=0;Ur.encodingLength=function(r){return 6+Y.byteLength(r.key)};var sr=ZS.rrsig={};sr.encode=function(r,i,n){if(!i)i=Y.alloc(sr.encodingLength(r));if(!n)n=0;let m=n,c=r.signature;if(!Y.isBuffer(c))throw Error("Signature must be a Buffer");return n+=2,i.writeUInt16BE(Pi.toType(r.typeCovered),n),n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.labels,n),n+=1,i.writeUInt32BE(r.originalTTL,n),n+=4,i.writeUInt32BE(r.expiration,n),n+=4,i.writeUInt32BE(r.inception,n),n+=4,i.writeUInt16BE(r.keyTag,n),n+=2,H.encode(r.signersName,i,n),n+=H.encode.bytes,c.copy(i,n,0,c.length),n+=c.length,sr.encode.bytes=n-m,i.writeUInt16BE(sr.encode.bytes-2,m),i};sr.encode.bytes=0;sr.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.typeCovered=Pi.toString(r.readUInt16BE(i)),i+=2,m.algorithm=r.readUInt8(i),i+=1,m.labels=r.readUInt8(i),i+=1,m.originalTTL=r.readUInt32BE(i),i+=4,m.expiration=r.readUInt32BE(i),i+=4,m.inception=r.readUInt32BE(i),i+=4,m.keyTag=r.readUInt16BE(i),i+=2,m.signersName=H.decode(r,i),i+=H.decode.bytes,m.signature=r.slice(i,n+c+2),i+=m.signature.length,sr.decode.bytes=i-n,m};sr.decode.bytes=0;sr.encodingLength=function(r){return 20+H.encodingLength(r.signersName)+Y.byteLength(r.signature)};var fr=ZS.rp={};fr.encode=function(r,i,n){if(!i)i=Y.alloc(fr.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.mbox||".",i,n,{mail:!0}),n+=H.encode.bytes,H.encode(r.txt||".",i,n),n+=H.encode.bytes,fr.encode.bytes=n-m,i.writeUInt16BE(fr.encode.bytes-2,m),i};fr.encode.bytes=0;fr.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.mbox=H.decode(r,i,{mail:!0})||".",i+=H.decode.bytes,m.txt=H.decode(r,i)||".",i+=H.decode.bytes,fr.decode.bytes=i-n,m};fr.decode.bytes=0;fr.encodingLength=function(r){return 2+H.encodingLength(r.mbox||".")+H.encodingLength(r.txt||".")};var jr={};jr.encode=function(r,i,n){if(!i)i=Y.alloc(jr.encodingLength(r));if(!n)n=0;let m=n;var c=[];for(var l=0;l<r.length;l++){var y=Pi.toType(r[l]);if(c[y>>8]===void 0)c[y>>8]=[];c[y>>8][y>>3&31]|=1<<7-(y&7)}for(l=0;l<c.length;l++)if(c[l]!==void 0){var j=Y.from(c[l]);i.writeUInt8(l,n),n+=1,i.writeUInt8(j.length,n),n+=1,j.copy(i,n),n+=j.length}return jr.encode.bytes=n-m,i};jr.encode.bytes=0;jr.decode=function(r,i,n){if(!i)i=0;let m=i;var c=[];while(i-m<n){var l=r.readUInt8(i);i+=1;var y=r.readUInt8(i);i+=1;for(var j=0;j<y;j++){var A=r.readUInt8(i+j);for(var S=0;S<8;S++)if(A&1<<7-S){var v=Pi.toString(l<<8|j<<3|S);c.push(v)}}i+=y}return jr.decode.bytes=i-m,c};jr.decode.bytes=0;jr.encodingLength=function(r){var i=[];for(var n=0;n<r.length;n++){var m=Pi.toType(r[n]);i[m>>8]=Math.max(i[m>>8]||0,m&255)}var c=0;for(n=0;n<i.length;n++)if(i[n]!==void 0)c+=2+Math.ceil((i[n]+1)/8);return c};var ri=ZS.nsec={};ri.encode=function(r,i,n){if(!i)i=Y.alloc(ri.encodingLength(r));if(!n)n=0;let m=n;return n+=2,H.encode(r.nextDomain,i,n),n+=H.encode.bytes,jr.encode(r.rrtypes,i,n),n+=jr.encode.bytes,ri.encode.bytes=n-m,i.writeUInt16BE(ri.encode.bytes-2,m),i};ri.encode.bytes=0;ri.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.nextDomain=H.decode(r,i),i+=H.decode.bytes,m.rrtypes=jr.decode(r,i,c-(i-n)),i+=jr.decode.bytes,ri.decode.bytes=i-n,m};ri.decode.bytes=0;ri.encodingLength=function(r){return 2+H.encodingLength(r.nextDomain)+jr.encodingLength(r.rrtypes)};var ii=ZS.nsec3={};ii.encode=function(r,i,n){if(!i)i=Y.alloc(ii.encodingLength(r));if(!n)n=0;let m=n,c=r.salt;if(!Y.isBuffer(c))throw Error("salt must be a Buffer");let l=r.nextDomain;if(!Y.isBuffer(l))throw Error("nextDomain must be a Buffer");return n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.flags,n),n+=1,i.writeUInt16BE(r.iterations,n),n+=2,i.writeUInt8(c.length,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,i.writeUInt8(l.length,n),n+=1,l.copy(i,n,0,l.length),n+=l.length,jr.encode(r.rrtypes,i,n),n+=jr.encode.bytes,ii.encode.bytes=n-m,i.writeUInt16BE(ii.encode.bytes-2,m),i};ii.encode.bytes=0;ii.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);i+=2,m.algorithm=r.readUInt8(i),i+=1,m.flags=r.readUInt8(i),i+=1,m.iterations=r.readUInt16BE(i),i+=2;let l=r.readUInt8(i);i+=1,m.salt=r.slice(i,i+l),i+=l;let y=r.readUInt8(i);return i+=1,m.nextDomain=r.slice(i,i+y),i+=y,m.rrtypes=jr.decode(r,i,c-(i-n)),i+=jr.decode.bytes,ii.decode.bytes=i-n,m};ii.decode.bytes=0;ii.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+jr.encodingLength(r.rrtypes)};var ni=ZS.ds={};ni.encode=function(r,i,n){if(!i)i=Y.alloc(ni.encodingLength(r));if(!n)n=0;let m=n,c=r.digest;if(!Y.isBuffer(c))throw Error("Digest must be a Buffer");return n+=2,i.writeUInt16BE(r.keyTag,n),n+=2,i.writeUInt8(r.algorithm,n),n+=1,i.writeUInt8(r.digestType,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,ni.encode.bytes=n-m,i.writeUInt16BE(ni.encode.bytes-2,m),i};ni.encode.bytes=0;ni.decode=function(r,i){if(!i)i=0;let n=i;var m={},c=r.readUInt16BE(i);return i+=2,m.keyTag=r.readUInt16BE(i),i+=2,m.algorithm=r.readUInt8(i),i+=1,m.digestType=r.readUInt8(i),i+=1,m.digest=r.slice(i,n+c+2),i+=m.digest.length,ni.decode.bytes=i-n,m};ni.decode.bytes=0;ni.encodingLength=function(r){return 6+Y.byteLength(r.digest)};var Rr=ZS.sshfp={};Rr.getFingerprintLengthForHashType=function(i){switch(i){case 1:return 20;case 2:return 32}};Rr.encode=function(i,n,m){if(!n)n=Y.alloc(Rr.encodingLength(i));if(!m)m=0;let c=m;m+=2,n[m]=i.algorithm,m+=1,n[m]=i.hash,m+=1;let l=Y.from(i.fingerprint.toUpperCase(),"hex");if(l.length!==Rr.getFingerprintLengthForHashType(i.hash))throw Error("Invalid fingerprint length");return l.copy(n,m),m+=l.byteLength,Rr.encode.bytes=m-c,n.writeUInt16BE(Rr.encode.bytes-2,c),n};Rr.encode.bytes=0;Rr.decode=function(i,n){if(!n)n=0;let m=n,c={};n+=2,c.algorithm=i[n],n+=1,c.hash=i[n],n+=1;let l=Rr.getFingerprintLengthForHashType(c.hash);return c.fingerprint=i.slice(n,n+l).toString("hex").toUpperCase(),n+=l,Rr.decode.bytes=n-m,c};Rr.decode.bytes=0;Rr.encodingLength=function(r){return 4+Y.from(r.fingerprint,"hex").byteLength};var mi=ZS.naptr={};mi.encode=function(r,i,n){if(!i)i=Y.alloc(mi.encodingLength(r));if(!n)n=0;let m=n;return n+=2,i.writeUInt16BE(r.order||0,n),n+=2,i.writeUInt16BE(r.preference||0,n),n+=2,O.encode(r.flags,i,n),n+=O.encode.bytes,O.encode(r.services,i,n),n+=O.encode.bytes,O.encode(r.regexp,i,n),n+=O.encode.bytes,H.encode(r.replacement,i,n),n+=H.encode.bytes,mi.encode.bytes=n-m,i.writeUInt16BE(mi.encode.bytes-2,m),i};mi.encode.bytes=0;mi.decode=function(r,i){if(!i)i=0;let n=i,m={};return i+=2,m.order=r.readUInt16BE(i),i+=2,m.preference=r.readUInt16BE(i),i+=2,m.flags=O.decode(r,i),i+=O.decode.bytes,m.services=O.decode(r,i),i+=O.decode.bytes,m.regexp=O.decode(r,i),i+=O.decode.bytes,m.replacement=H.decode(r,i),i+=H.decode.bytes,mi.decode.bytes=i-n,m};mi.decode.bytes=0;mi.encodingLength=function(r){return O.encodingLength(r.flags)+O.encodingLength(r.services)+O.encodingLength(r.regexp)+H.encodingLength(r.replacement)+6};var ci=ZS.tlsa={};ci.encode=function(r,i,n){if(!i)i=Y.alloc(ci.encodingLength(r));if(!n)n=0;let m=n,c=r.certificate;if(!Y.isBuffer(c))throw Error("Certificate must be a Buffer");return n+=2,i.writeUInt8(r.usage,n),n+=1,i.writeUInt8(r.selector,n),n+=1,i.writeUInt8(r.matchingType,n),n+=1,c.copy(i,n,0,c.length),n+=c.length,ci.encode.bytes=n-m,i.writeUInt16BE(ci.encode.bytes-2,m),i};ci.encode.bytes=0;ci.decode=function(r,i){if(!i)i=0;let n=i,m={},c=r.readUInt16BE(i);return i+=2,m.usage=r.readUInt8(i),i+=1,m.selector=r.readUInt8(i),i+=1,m.matchingType=r.readUInt8(i),i+=1,m.certificate=r.slice(i,n+c+2),i+=m.certificate.length,ci.decode.bytes=i-n,m};ci.decode.bytes=0;ci.encodingLength=function(r){return 5+Y.byteLength(r.certificate)};var gc=ZS.record=function(r){switch(r.toUpperCase()){case"A":return Di;case"PTR":return pr;case"CNAME":return KS;case"DNAME":return HS;case"TXT":return Gi;case"NULL":return Ni;case"AAAA":return Ui;case"SRV":return Qi;case"HINFO":return Ei;case"CAA":return Jr;case"NS":return wi;case"SOA":return $i;case"MX":return Ri;case"OPT":return Or;case"DNSKEY":return Ur;case"RRSIG":return sr;case"RP":return fr;case"NSEC":return ri;case"NSEC3":return ii;case"SSHFP":return Rr;case"DS":return ni;case"NAPTR":return mi;case"TLSA":return ci}return vi},Sr=ZS.answer={};Sr.encode=function(r,i,n){if(!i)i=Y.alloc(Sr.encodingLength(r));if(!n)n=0;let m=n;if(H.encode(r.name,i,n),n+=H.encode.bytes,i.writeUInt16BE(Pi.toType(r.type),n),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw Error("OPT name must be root.");i.writeUInt16BE(r.udpPayloadSize||4096,n+2),i.writeUInt8(r.extendedRcode||0,n+4),i.writeUInt8(r.ednsVersion||0,n+5),i.writeUInt16BE(r.flags||0,n+6),n+=8,Or.encode(r.options||[],i,n),n+=Or.encode.bytes}else{let c=dm.toClass(r.class===void 0?"IN":r.class);if(r.flush)c|=32768;i.writeUInt16BE(c,n+2),i.writeUInt32BE(r.ttl||0,n+4),n+=8;let l=gc(r.type);l.encode(r.data,i,n),n+=l.encode.bytes}return Sr.encode.bytes=n-m,i};Sr.encode.bytes=0;Sr.decode=function(r,i){if(!i)i=0;let n={},m=i;if(n.name=H.decode(r,i),i+=H.decode.bytes,n.type=Pi.toString(r.readUInt16BE(i)),n.type==="OPT")n.udpPayloadSize=r.readUInt16BE(i+2),n.extendedRcode=r.readUInt8(i+4),n.ednsVersion=r.readUInt8(i+5),n.flags=r.readUInt16BE(i+6),n.flag_do=(n.flags>>15&1)===1,n.options=Or.decode(r,i+8),i+=8+Or.decode.bytes;else{let c=r.readUInt16BE(i+2);n.ttl=r.readUInt32BE(i+4),n.class=dm.toString(c&-32769),n.flush=!!(c&32768);let l=gc(n.type);n.data=l.decode(r,i+8),i+=8+l.decode.bytes}return Sr.decode.bytes=i-m,n};Sr.decode.bytes=0;Sr.encodingLength=function(r){let i=r.data!==null&&r.data!==void 0?r.data:r.options;return H.encodingLength(r.name)+8+gc(r.type).encodingLength(i)};var ur=ZS.question={};ur.encode=function(r,i,n){if(!i)i=Y.alloc(ur.encodingLength(r));if(!n)n=0;let m=n;return H.encode(r.name,i,n),n+=H.encode.bytes,i.writeUInt16BE(Pi.toType(r.type),n),n+=2,i.writeUInt16BE(dm.toClass(r.class===void 0?"IN":r.class),n),n+=2,ur.encode.bytes=n-m,r};ur.encode.bytes=0;ur.decode=function(r,i){if(!i)i=0;let n=i,m={};if(m.name=H.decode(r,i),i+=H.decode.bytes,m.type=Pi.toString(r.readUInt16BE(i)),i+=2,m.class=dm.toString(r.readUInt16BE(i)),i+=2,!!(m.class&32768))m.class&=-32769;return ur.decode.bytes=i-n,m};ur.decode.bytes=0;ur.encodingLength=function(r){return H.encodingLength(r.name)+4};ZS.AUTHORITATIVE_ANSWER=1024;ZS.TRUNCATED_RESPONSE=512;ZS.RECURSION_DESIRED=256;ZS.RECURSION_AVAILABLE=128;ZS.AUTHENTIC_DATA=32;ZS.CHECKING_DISABLED=16;ZS.DNSSEC_OK=32768;ZS.encode=function(r,i,n){let m=!i;if(m)i=Y.alloc(ZS.encodingLength(r));if(!n)n=0;let c=n;if(!r.questions)r.questions=[];if(!r.answers)r.answers=[];if(!r.authorities)r.authorities=[];if(!r.additionals)r.additionals=[];if(ar.encode(r,i,n),n+=ar.encode.bytes,n=pn(r.questions,ur,i,n),n=pn(r.answers,Sr,i,n),n=pn(r.authorities,Sr,i,n),n=pn(r.additionals,Sr,i,n),ZS.encode.bytes=n-c,m&&ZS.encode.bytes!==i.length)return i.slice(0,ZS.encode.bytes);return i};ZS.encode.bytes=0;ZS.decode=function(r,i){if(!i)i=0;let n=i,m=ar.decode(r,i);return i+=ar.decode.bytes,i=am(m.questions,ur,r,i),i=am(m.answers,Sr,r,i),i=am(m.authorities,Sr,r,i),i=am(m.additionals,Sr,r,i),ZS.decode.bytes=i-n,m};ZS.decode.bytes=0;ZS.encodingLength=function(r){return ar.encodingLength(r)+$n(r.questions||[],ur)+$n(r.answers||[],Sr)+$n(r.authorities||[],Sr)+$n(r.additionals||[],Sr)};ZS.streamEncode=function(r){let i=ZS.encode(r),n=Y.alloc(2);n.writeUInt16BE(i.byteLength);let m=Y.concat([n,i]);return ZS.streamEncode.bytes=m.byteLength,m};ZS.streamEncode.bytes=0;ZS.streamDecode=function(r){let i=r.readUInt16BE(0);if(r.byteLength<i+2)return null;let n=ZS.decode(r.slice(2));return ZS.streamDecode.bytes=ZS.decode.bytes,n};ZS.streamDecode.bytes=0;function $n(r,i){let n=0;for(let m=0;m<r.length;m++)n+=i.encodingLength(r[m]);return n}function pn(r,i,n,m){for(let c=0;c<r.length;c++)i.encode(r[c],n,m),m+=i.encode.bytes;return m}function am(r,i,n,m){for(let c=0;c<r.length;c++)r[c]=i.decode(n,m),m+=i.decode.bytes;return m}});var Ij=rr((eQ,jj)=>{var yj=hS;process.nextTick(TS,42);jj.exports=FS;function FS(r){var i=m;return n;function n(c){i(c||zS)}function m(c){var l=[c];i=y,r(j);function y(A){l.push(A)}function j(A){var S=arguments;i=gS(A)?m:v;while(l.length)v(l.shift());function v(w){yj(MS,w,S)}}}}function gS(r){return Object.prototype.toString.call(r)==="[object Error]"}function zS(){}function MS(r,i){r.apply(null,i)}function TS(r){if(r===42)yj=process.nextTick}function hS(r,i,n){process.nextTick(function(){r(i,n)})}});var vj=rr((sQ,Sj)=>{var zc=lj(),BS=bi("dgram"),oS=Ij(),xS=bi("events"),Tc=bi("os"),Mc=function(){};Sj.exports=function(r){if(!r)r={};var i=new xS.EventEmitter,n=typeof r.port==="number"?r.port:5353,m=r.type||"udp4",c=r.ip||r.host||(m==="udp4"?"224.0.0.251":null),l={address:c,port:n},y={},j=!1,A=null;if(m==="udp6"&&(!c||!r.interface))throw Error("For IPv6 multicast you must specify `ip` and `interface`");var S=r.socket||BS.createSocket({type:m,reuseAddr:r.reuseAddr!==!1,toString:function(){return m}});S.on("error",function(w){if(w.code==="EACCES"||w.code==="EADDRINUSE")i.emit("error",w);else i.emit("warning",w)}),S.on("message",function(w,N){try{w=zc.decode(w)}catch(E){i.emit("warning",E);return}if(i.emit("packet",w,N),w.type==="query")i.emit("query",w,N);if(w.type==="response")i.emit("response",w,N)}),S.on("listening",function(){if(!n)n=l.port=S.address().port;if(r.multicast!==!1)i.update(),A=setInterval(i.update,5000),S.setMulticastTTL(r.ttl||255),S.setMulticastLoopback(r.loopback!==!1)});var v=oS(function(w){if(!n||r.bind===!1)return w(null);S.once("error",w),S.bind(n,r.bind||r.interface,function(){S.removeListener("error",w),w(null)})});return v(function(w){if(w)return i.emit("error",w);i.emit("ready")}),i.send=function(w,N,E){if(typeof N==="function")return i.send(w,null,N);if(!E)E=Mc;if(!N)N=l;else if(!N.host&&!N.address)N.address=l.address;v(Q);function Q(W){if(j)return E();if(W)return E(W);var Z=zc.encode(w);S.send(Z,0,Z.length,N.port,N.address||N.host,E)}},i.response=i.respond=function(w,N,E){if(Array.isArray(w))w={answers:w};w.type="response",w.flags=(w.flags||0)|zc.AUTHORITATIVE_ANSWER,i.send(w,N,E)},i.query=function(w,N,E,Q){if(typeof N==="function")return i.query(w,null,null,N);if(typeof N==="object"&&N&&N.port)return i.query(w,null,N,E);if(typeof E==="function")return i.query(w,N,null,E);if(!Q)Q=Mc;if(typeof w==="string")w=[{name:w,type:N||"ANY"}];if(Array.isArray(w))w={type:"query",questions:w};w.type="query",i.send(w,E,Q)},i.destroy=function(w){if(!w)w=Mc;if(j)return process.nextTick(w);j=!0,clearInterval(A);for(var N in y)try{S.dropMembership(c,N)}catch(E){}y={},S.close(w)},i.update=function(){var w=r.interface?[].concat(r.interface):pS(),N=!1;for(var E=0;E<w.length;E++){var Q=w[E];if(y[Q])continue;try{S.addMembership(c,Q),y[Q]=!0,N=!0}catch(W){i.emit("warning",W)}}if(N){if(S.setMulticastInterface)try{S.setMulticastInterface(r.interface||kS())}catch(W){i.emit("warning",W)}i.emit("networkInterface")}},i};function kS(){var r=Tc.networkInterfaces(),i=Object.keys(r);for(var n=0;n<i.length;n++){var m=r[i[n]];for(var c=0;c<m.length;c++){var l=m[c];if(Aj(l.family)&&!l.internal){if(Tc.platform()==="darwin"&&i[n]==="en0")return l.address;return"0.0.0.0"}}}return"127.0.0.1"}function pS(){var r=Tc.networkInterfaces(),i=Object.keys(r),n=[];for(var m=0;m<i.length;m++){var c=r[i[m]];for(var l=0;l<c.length;l++){var y=c[l];if(Aj(y.family)){n.push(y.address);break}}}return n}function Aj(r){return r===4||r==="IPv4"}});var $j=rr((fQ,wj)=>{wj.exports=function r(i,n){if(i===n)return!0;if(i&&n&&typeof i=="object"&&typeof n=="object"){if(i.constructor!==n.constructor)return!1;var m,c,l;if(Array.isArray(i)){if(m=i.length,m!=n.length)return!1;for(c=m;c--!==0;)if(!r(i[c],n[c]))return!1;return!0}if(i instanceof Map&&n instanceof Map){if(i.size!==n.size)return!1;for(c of i.entries())if(!n.has(c[0]))return!1;for(c of i.entries())if(!r(c[1],n.get(c[0])))return!1;return!0}if(i instanceof Set&&n instanceof Set){if(i.size!==n.size)return!1;for(c of i.entries())if(!n.has(c[0]))return!1;return!0}if(ArrayBuffer.isView(i)&&ArrayBuffer.isView(n)){if(m=i.length,m!=n.length)return!1;for(c=m;c--!==0;)if(i[c]!==n[c])return!1;return!0}if(i.constructor===RegExp)return i.source===n.source&&i.flags===n.flags;if(i.valueOf!==Object.prototype.valueOf)return i.valueOf()===n.valueOf();if(i.toString!==Object.prototype.toString)return i.toString()===n.toString();if(l=Object.keys(i),m=l.length,m!==Object.keys(n).length)return!1;for(c=m;c--!==0;)if(!Object.prototype.hasOwnProperty.call(n,l[c]))return!1;for(c=m;c--!==0;){var y=l[c];if(!r(i[y],n[y]))return!1}return!0}return i!==i&&n!==n}});var Gj=rr((fi)=>{var hc=fi&&fi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fi,"__esModule",{value:!0});fi.Server=void 0;var uS=hc(vj()),aS=hc($j()),dS=hc(pm());class Bc{constructor(r,i){this.registry={},this.mdns=(0,uS.default)(r),this.mdns.setMaxListeners(0),this.mdns.on("query",this.respondToQuery.bind(this)),this.errorCallback=i!==null&&i!==void 0?i:function(n){throw n}}register(r){let i=(n)=>{var m=this.registry[n.type];if(!m)m=this.registry[n.type]=[];else if(m.some(this.isDuplicateRecord(n)))return;m.push(n)};if(Array.isArray(r))r.forEach(i);else i(r)}unregister(r){let i=(n)=>{let m=n.type;if(!(m in this.registry))return;this.registry[m]=this.registry[m].filter((c)=>c.name!==n.name)};if(Array.isArray(r))r.forEach(i);else i(r)}respondToQuery(r){let i=this;r.questions.forEach((n)=>{var{type:m,name:c}=n,l=m==="ANY"?Object.keys(i.registry).map(i.recordsFor.bind(i,c)).flat(1):i.recordsFor(c,m);if(l.length===0)return;var y=[];if(m!=="ANY")l.forEach((j)=>{if(j.type!=="PTR")return;y=y.concat(i.recordsFor(j.data,"SRV")).concat(i.recordsFor(j.data,"TXT"))}),y.filter(function(j){return j.type==="SRV"}).map(function(j){return j.data.target}).filter(this.unique()).forEach(function(j){y=y.concat(i.recordsFor(j,"A")).concat(i.recordsFor(j,"AAAA"))});i.mdns.respond({answers:l,additionals:y},(j)=>{if(j)this.errorCallback(j)})})}recordsFor(r,i){if(!(i in this.registry))return[];return this.registry[i].filter((n)=>{var m=~r.indexOf(".")?n.name:n.name.split(".")[0];return(0,dS.default)(m,r)})}isDuplicateRecord(r){return(i)=>{return r.type===i.type&&r.name===i.name&&(0,aS.default)(r.data,i.data)}}unique(){var r=[];return(i)=>{if(~r.indexOf(i))return!1;return r.push(i),!0}}}fi.Server=Bc;fi.default=Bc});var Ej=rr((Nj)=>{Object.defineProperty(Nj,"__esModule",{value:!0});Nj.default=(r,i)=>{if(i===void 0)return!0;let n=r.txt,m=Object.entries(i).map(([c,l])=>{let y=n[c];if(y===void 0)return!1;if(l!=y)return!1;return!0});if(m.length==0)return!0;if(m.includes(!1))return!1;return!0}});var Dj=rr((Qj)=>{Object.defineProperty(Qj,"__esModule",{value:!0});Qj.default=(r)=>Object.keys(r).filter((i)=>!i.includes("binary")).reduce((i,n)=>{return Object.assign(i,{[n]:r[n]})},{})});var Pj=rr((Uj)=>{Object.defineProperty(Uj,"__esModule",{value:!0});Uj.default=eS;function eS(r,i){if(r===void 0||i===void 0)return!1;let n=Object.keys(r),m=Object.keys(i);if(n.length!=m.length)return!1;for(let c of n)if(r[c]!=i[c])return!1;return!0}});var Xj=rr((rn)=>{var an=rn&&rn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(rn,"__esModule",{value:!0});rn.Browser=void 0;var fS=an(Zc()),Oi=an(pm()),rv=bi("events"),oc=Vc(),Cj=an(Ej()),iv=an(Dj()),nv=an(Pj()),Wj=".local",mv="_services._dns-sd._udp"+Wj;class tm extends rv.EventEmitter{constructor(r,i,n){super();if(this.onresponse=void 0,this.serviceMap={},this.wildcard=!1,this._services=[],typeof i==="function")return new tm(r,null,i);if(this.mdns=r,this.txt=new fS.default(i!==null&&i.txt!=null?i.txt:void 0),i===null||i.type===void 0)this.name=mv,this.wildcard=!0;else{if(this.name=(0,oc.toString)({name:i.type,protocol:i.protocol||"tcp"})+Wj,i.name)this.name=i.name+"."+this.name;this.wildcard=!1}if(i!=null&&i.txt!==void 0)this.txtQuery=(0,iv.default)(i.txt);if(n)this.on("up",n);this.start()}start(){if(this.onresponse||this.name===void 0)return;var r=this,i={};if(!this.wildcard)i[this.name]=!0;this.onresponse=(n,m)=>{if(r.wildcard)n.answers.forEach((c)=>{if(c.type!=="PTR"||c.name!==r.name||c.name in i)return;i[c.data]=!0,r.mdns.query(c.data,"PTR")});Object.keys(i).forEach(function(c){r.goodbyes(c,n).forEach(r.removeService.bind(r));var l=r.buildServicesFor(c,n,r.txt,m);if(l.length===0)return;l.forEach((y)=>{if(r.serviceMap[y.fqdn]){r.updateService(y);return}r.addService(y)})})},this.mdns.on("response",this.onresponse),this.update()}stop(){if(!this.onresponse)return;this.mdns.removeListener("response",this.onresponse),this.onresponse=void 0}update(){this.mdns.query(this.name,"PTR")}get services(){return this._services}addService(r){if((0,Cj.default)(r,this.txtQuery)===!1)return;this._services.push(r),this.serviceMap[r.fqdn]=!0,this.emit("up",r)}updateService(r){var i;if((0,nv.default)(r.txt,((i=this._services.find((n)=>(0,Oi.default)(n.fqdn,r.fqdn)))===null||i===void 0?void 0:i.txt)||{}))return;if(!(0,Cj.default)(r,this.txtQuery)){this.removeService(r.fqdn);return}this._services=this._services.map(function(n){if(!(0,Oi.default)(n.fqdn,r.fqdn))return n;return r}),this.emit("txt-update",r)}removeService(r){var i,n;if(this._services.some(function(m,c){if((0,Oi.default)(m.fqdn,r))return i=m,n=c,!0}),!i||n===void 0)return;this._services.splice(n,1),delete this.serviceMap[r],this.emit("down",i)}goodbyes(r,i){return i.answers.concat(i.additionals).filter((n)=>n.type==="PTR"&&n.ttl===0&&(0,Oi.default)(n.name,r)).map((n)=>n.data)}buildServicesFor(r,i,n,m){var c=i.answers.concat(i.additionals).filter((l)=>l.ttl>0);return c.filter((l)=>l.type==="PTR"&&(0,Oi.default)(l.name,r)).map((l)=>{let y={addresses:[],subtypes:[]};if(c.filter((j)=>{return j.type==="PTR"&&(0,Oi.default)(j.data,l.data)&&j.name.includes("._sub")}).forEach((j)=>{let A=(0,oc.toType)(j.name);y.subtypes.push(A.subtype)}),c.filter((j)=>{return(j.type==="SRV"||j.type==="TXT")&&(0,Oi.default)(j.name,l.data)}).forEach((j)=>{if(j.type==="SRV"){var A=j.name.split("."),S=A[0],v=(0,oc.toType)(A.slice(1,-1).join("."));y.name=S,y.fqdn=j.name,y.host=j.data.target,y.referer=m,y.port=j.data.port,y.type=v.name,y.protocol=v.protocol}else if(j.type==="TXT")y.rawTxt=j.data,y.txt=this.txt.decodeAll(j.data)}),!y.name)return;return c.filter((j)=>(j.type==="A"||j.type==="AAAA")&&(0,Oi.default)(j.name,y.host)).forEach((j)=>y.addresses.push(j.data)),y}).filter((l)=>!!l)}}rn.Browser=tm;rn.default=tm});var Kj=rr((dr)=>{var bm=dr&&dr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(dr,"__esModule",{value:!0});dr.Browser=dr.Service=dr.Bonjour=void 0;var cv=bm(by()),lv=bm(Gj()),xc=bm(Xj());dr.Browser=xc.default;var yv=bm(Jc());dr.Service=yv.default;class kc{constructor(r={},i){this.server=new lv.default(r,i),this.registry=new cv.default(this.server)}publish(r){return this.registry.publish(r)}unpublishAll(r){return this.registry.unpublishAll(r)}find(r=null,i){return new xc.default(this.server.mdns,r,i)}findOne(r=null,i=1e4,n){let m=new xc.default(this.server.mdns,r);var c;return m.once("up",(l)=>{if(c!==void 0)clearTimeout(c);if(m.stop(),n)n(l)}),c=setTimeout(()=>{if(m.stop(),n)n(null)},i),m}destroy(r){this.registry.destroy(),this.server.mdns.destroy(r)}}dr.Bonjour=kc;dr.default=kc});var bl={};Nr(bl,{url:()=>AA,openapi:()=>B$,listen:()=>o$,Server:()=>bl,Default:()=>T$});var cc=(r)=>{let i=r.split("/");if(i[0]==="")i.shift();return i},el=(r)=>{let{groups:i,path:n}=SA(r),m=cc(n);return vA(m,i)},SA=(r)=>{let i=[];return r=r.replace(/\{[^}]+\}/g,(n,m)=>{let c=`@${m}`;return i.push([c,n]),c}),{groups:i,path:r}},vA=(r,i)=>{for(let n=i.length-1;n>=0;n--){let[m]=i[n];for(let c=r.length-1;c>=0;c--)if(r[c].includes(m)){r[c]=r[c].replace(m,i[n][1]);break}}return r},Fm={},sl=(r,i)=>{if(r==="*")return"*";let n=r.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(n){let m=`${r}#${i}`;if(!Fm[m])if(n[2])Fm[m]=i&&i[0]!==":"&&i[0]!=="*"?[m,n[1],new RegExp(`^${n[2]}(?=/${i})`)]:[r,n[1],new RegExp(`^${n[2]}$`)];else Fm[m]=[r,n[1],!0];return Fm[m]}return null},Sn=(r,i)=>{try{return i(r)}catch{return r.replace(/(?:%[0-9A-Fa-f]{2})+/g,(n)=>{try{return i(n)}catch{return n}})}},fl=(r)=>Sn(r,decodeURI),lc=(r)=>{let i=r.url,n=i.indexOf("/",i.indexOf(":")+4),m=n;for(;m<i.length;m++){let c=i.charCodeAt(m);if(c===37){let l=i.indexOf("?",m),y=i.indexOf("#",m),j=l===-1?y===-1?void 0:y:y===-1?l:Math.min(l,y),A=i.slice(n,j);return fl(A.includes("%25")?A.replace(/%25/g,"%2525"):A)}else if(c===63||c===35)break}return i.slice(n,m)};var ry=(r)=>{let i=lc(r);return i.length>1&&i.at(-1)==="/"?i.slice(0,-1):i},Ji=(r,i,...n)=>{if(n.length)i=Ji(i,...n);return`${r?.[0]==="/"?"":"/"}${r}${i==="/"?"":`${r?.at(-1)==="/"?"":"/"}${i?.[0]==="/"?i.slice(1):i}`}`},gm=(r)=>{if(r.charCodeAt(r.length-1)!==63||!r.includes(":"))return null;let i=r.split("/"),n=[],m="";return i.forEach((c)=>{if(c!==""&&!/\:/.test(c))m+="/"+c;else if(/\:/.test(c))if(/\?/.test(c)){if(n.length===0&&m==="")n.push("/");else n.push(m);let l=c.replace("?","");m+="/"+l,n.push(m)}else m+="/"+c}),n.filter((c,l,y)=>y.indexOf(c)===l)},mc=(r)=>{if(!/[%+]/.test(r))return r;if(r.indexOf("+")!==-1)r=r.replace(/\+/g," ");return r.indexOf("%")!==-1?Sn(r,Mn):r},iy=(r,i,n)=>{let m;if(!n&&i&&!/[%+]/.test(i)){let y=r.indexOf("?",8);if(y===-1)return;if(!r.startsWith(i,y+1))y=r.indexOf(`&${i}`,y+1);while(y!==-1){let j=r.charCodeAt(y+i.length+1);if(j===61){let A=y+i.length+2,S=r.indexOf("&",A);return mc(r.slice(A,S===-1?void 0:S))}else if(j==38||isNaN(j))return"";y=r.indexOf(`&${i}`,y+1)}if(m=/[%+]/.test(r),!m)return}let c={};m??=/[%+]/.test(r);let l=r.indexOf("?",8);while(l!==-1){let y=r.indexOf("&",l+1),j=r.indexOf("=",l);if(j>y&&y!==-1)j=-1;let A=r.slice(l+1,j===-1?y===-1?void 0:y:j);if(m)A=mc(A);if(l=y,A==="")continue;let S;if(j===-1)S="";else if(S=r.slice(j+1,y===-1?void 0:y),m)S=mc(S);if(n){if(!(c[A]&&Array.isArray(c[A])))c[A]=[];c[A].push(S)}else c[A]??=S}return i?c[i]:c},ny=iy,my=(r,i)=>{return iy(r,i,!0)},Mn=decodeURIComponent;var wA=/^[\w!#$%&'*.^`|~+-]+$/,$A=/^[ !#-:<-[\]-~]*$/,cy=(r)=>{let i=0,n=r.length;while(i<n){let m=r.charCodeAt(i);if(m!==32&&m!==9)break;i++}while(n>i){let m=r.charCodeAt(n-1);if(m!==32&&m!==9)break;n--}return i===0&&n===r.length?r:r.slice(i,n)},yc=(r,i)=>{if(i&&r.indexOf(i)===-1)return{};let n=r.split(";"),m=Object.create(null);for(let c of n){let l=c.indexOf("=");if(l===-1)continue;let y=cy(c.substring(0,l));if(i&&i!==y||!wA.test(y)||y in m)continue;let j=cy(c.substring(l+1));if(j.startsWith('"')&&j.endsWith('"'))j=j.slice(1,-1);if($A.test(j)){if(m[y]=j.indexOf("%")!==-1?Sn(j,Mn):j,i)break}}return m};var ly=(r,i,n)=>{let m=r.req.raw.headers.get("Cookie");if(typeof i==="string"){if(!m)return;let l=i;if(n==="secure")l="__Secure-"+i;else if(n==="host")l="__Host-"+i;return yc(m,l)[l]}if(!m)return{};return yc(m)};var kr=class extends Error{res;status;constructor(r=500,i){super(i?.message,{cause:i?.cause});this.res=i?.res,this.status=r}getResponse(){if(this.res)return new Response(this.res.body,{status:this.status,headers:this.res.headers});return new Response(this.message,{status:this.status})}};var jc=async(r)=>{return await GA(r,{name:"SHA-256",alias:"sha256"})};var GA=async(r,i)=>{let n;if(ArrayBuffer.isView(r)||r instanceof ArrayBuffer)n=r;else{if(typeof r==="object")r=JSON.stringify(r);n=new TextEncoder().encode(String(r))}if(crypto&&crypto.subtle){let m=await crypto.subtle.digest({name:i.name},n);return Array.prototype.map.call(new Uint8Array(m),(l)=>("00"+l.toString(16)).slice(-2)).join("")}return null};var yy=(r,i)=>{let n=r.length,m=i.length,c=Math.max(n,m),l=n^m;for(let y=0;y<c;y++){let j=y<n?r.charCodeAt(y):0,A=y<m?i.charCodeAt(y):0;l|=j^A}return l===0},jy=async(r,i,n)=>{if(!n)n=jc;let[m,c]=await Promise.all([n(r),n(i)]);if(m==null||c==null||typeof m!=="string"||typeof c!=="string")return!1;let l=yy(m,c),y=yy(r,i);return l&&y},Ic=async(r,i,n)=>{if(typeof r==="string"&&typeof i==="string")return jy(r,i,n);if(!n)n=jc;let[m,c]=await Promise.all([n(r),n(i)]);if(!m||!c||typeof m!=="string"||typeof c!=="string")return!1;return jy(m,c)};var zm=(r,i)=>{return new Response(r,{headers:{"Content-Type":i.replace(/^[^;]+/,(m)=>m.toLowerCase())}}).formData()};var NA=/^application\/([a-z-\.]+\+)?json(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i,EA=/^multipart\/form-data(;\s?boundary=[a-zA-Z0-9'"()+_,\-./:=?]+)?$/i,QA=/^application\/x-www-form-urlencoded(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/i,Ac=(r,i)=>{return async(n,m)=>{let c={},l=n.req.header("Content-Type");switch(r){case"json":if(!l||!NA.test(l))break;try{c=await n.req.json()}catch{throw new kr(400,{message:"Malformed JSON in request body"})}break;case"form":{if(!l||!(EA.test(l)||QA.test(l)))break;let j;if(n.req.bodyCache.formData)j=await n.req.bodyCache.formData;else try{let S=await n.req.arrayBuffer();j=await zm(S,l),n.req.bodyCache.formData=j}catch(S){let v="Malformed FormData request.";throw v+=S instanceof Error?` ${S.message}`:` ${String(S)}`,new kr(400,{message:v})}let A=Object.create(null);j.forEach((S,v)=>{if(v.endsWith("[]"))(A[v]??=[]).push(S);else if(Array.isArray(A[v]))A[v].push(S);else if(Object.hasOwn(A,v))A[v]=[A[v],S];else A[v]=S}),c=A;break}case"query":c=Object.fromEntries(Object.entries(n.req.queries()).map(([j,A])=>{return A.length===1?[j,A[0]]:[j,A]}));break;case"param":c=n.req.param();break;case"header":c=n.req.header();break;case"cookie":c=ly(n);break}let y=await i(c,n);if(y instanceof Response)return y;return n.req.addValidatedData(r,y),await m()}};var Iy={header:["cookie"]};function DA(r,i,n){if(!(n in Iy))return r;let m=Iy[n]||[];if(i==="arktype")return UA(r,m);if(i==="valibot")return PA(r,m);return r}function UA(r,i){return r.map((n)=>{if(n&&typeof n==="object"&&"data"in n&&typeof n.data==="object"&&n.data!==null&&!Array.isArray(n.data)){let m={...n.data};for(let l of i)delete m[l];let c=Object.create(Object.getPrototypeOf(n));return Object.assign(c,n,{data:m}),c}return n})}function PA(r,i){return r.map((n)=>{if(n&&typeof n==="object"&&"path"in n&&Array.isArray(n.path)){for(let m of n.path)if(typeof m==="object"&&"input"in m&&typeof m.input==="object"&&m.input!==null&&!Array.isArray(m.input))for(let c of i)delete m.input[c]}return n})}var Ay=(r,i,n)=>Ac(r,async(m,c)=>{let l=await i["~standard"].validate(m);if(n){let y=await n(l.issues?{data:m,error:l.issues,success:!1,target:r}:{data:m,success:!0,target:r},c);if(y){if(y instanceof Response)return y;if("response"in y)return y.response}}if(l.issues){let y=DA(l.issues,i["~standard"].vendor,r);return c.json({data:m,error:y,success:!1},400)}return l.value});var vc=Symbol("openapi"),WA=["GET","PUT","POST","DELETE","OPTIONS","HEAD","PATCH","TRACE"],XA=(r)=>r.split("/").map((i)=>{let n=i;if(n.startsWith(":")){let m=n.match(/^:([^{?]+)(?:{(.+)})?(\?)?$/);if(m)n=`{${m[1]}}`;else{if(n=n.slice(1,n.length),n.endsWith("?"))n=n.slice(0,-1);n=`{${n}}`}}return n}).join("/"),Sy=(r)=>r.charAt(0).toUpperCase()+r.slice(1),KA=(r)=>{let i=r.method.toLowerCase();if(r.path==="/")return`${i}Index`;for(let n of r.path.split("/"))if(n.charCodeAt(0)===123)i+=`By${Sy(n.slice(1,-1))}`;else i+=Sy(n);return i},HA=(r)=>("$ref"in r)?r.$ref:`${r.in} ${r.name}`;function vy(...r){let i=r.flatMap((n)=>n??[]).reduce((n,m)=>{return n.set(HA(m),m),n},new Map);return Array.from(i.values())}var vn=new Map;function ZA(r){let i=[];for(let[n,m]of vn)if(m&&r.match(n))i.push(m);return i}function VA(){vn.clear()}function wy(r,...i){return i.reduce((n,m)=>{if(!m||!n)return n;for(let[c,l]of Object.entries(m)){if(l==null)continue;if(c in n&&(typeof l==="object"||typeof l==="function"&&c==="operationId"))if(Array.isArray(l)){let y=[...n[c]??[],...l];if(c==="tags")n[c]=Array.from(new Set(y));else if(c==="parameters")n[c]=vy(y);else n[c]=y}else if(typeof l==="function")n[c]=l(r);else if(c==="parameters")n[c]=vy(n[c],l);else n[c]={...n[c],...l};else n[c]=l}return n},{operationId:KA(r)})}function $y({route:r,specs:i,paths:n}){let m=XA(r.path),c=r.method.toLowerCase();if(c==="all"){if(!i)return;if(vn.has(m)){let l=vn.get(m)??{};vn.set(m,wy(r,l,i))}else vn.set(m,i)}else{let l=ZA(m);if(!(m in n))n[m]={};if(n[m])n[m][c]=wy(r,...l,n[m]?.[c],i)}}function YA(r,i){let{exclude:n,excludeStaticFile:m}=i.options,c={},l=Array.isArray(n)?n:[n];for(let[y,j]of Object.entries(r)){if(j==null)continue;if(l.some((v)=>{if(typeof v==="string")return y===v;return v.test(y)}))continue;if(y.includes("*")&&!y.includes("{"))continue;if(m){let v=y.includes("{"),N=(y.split("/").pop()||"").includes(".");if(!v&&N)continue}for(let v of Object.keys(j)){let w=j[v];if(w==null)continue;if(y.includes("{")){w.parameters=w.parameters?[...w.parameters]:[];let N=y.split("/").filter((E)=>E.startsWith("{")&&!w.parameters.find((Q)=>Q.in==="path"&&Q.name===E.slice(1,E.length-1)));for(let E of N){let Q=E.slice(1,E.length-1);if(w.parameters.findIndex((Z)=>{if("$ref"in Z){let X=Z.$ref.split("/").pop();if(X){let K=i.components.parameters?.[X];if(K&&!("$ref"in K))return K.in==="path"&&K.name===Q}return!1}return Z.in==="path"&&Z.name===Q})===-1)w.parameters.push({schema:{type:"string"},in:"path",name:Q,required:!0})}}if(!w.responses)w.responses={200:{}}}c[y]=j}return c}var Gy={documentation:{},excludeStaticFile:!0,exclude:[],excludeMethods:["OPTIONS"],excludeTags:[]};function Qy(r,i){let n;return async(m)=>{if(n)return m.json(n);return n=await wc(r,i,m),m.json(n)}}async function wc(r,i=Gy,n){let m={components:{},options:{...Gy,...i}},c=m.options.documentation??{};VA();let l=await JA(r,m);for(let j in l)for(let A in l[j])if(RA({valueOrFunc:l[j][A]?.hide,method:A,path:j,c:n}))l[j][A]=void 0;let y=$c(c.components,m.components);return{openapi:"3.1.0",...c,tags:c.tags?.filter((j)=>!m.options.excludeTags?.includes(j?.name)),info:{title:"Hono Documentation",description:"Development documentation",version:"0.0.0",...c.info},paths:{...YA(l,m),...c.paths},components:y}}async function JA(r,i){let n={};for(let m of r.routes){let c=m.handler[vc];if(!c){if(i.options.includeEmptyPaths)$y({route:m,paths:n});continue}let l=m.method;if(l!=="ALL"){if(i.options.excludeMethods?.includes(l))continue;if(!WA.includes(l))continue}let y=i.options.defaultOptions?.[l],{schema:j,components:A={}}=await OA(c,y);i.components=$c(i.components,A),$y({route:m,specs:j,paths:n})}return n}function RA(r){let{valueOrFunc:i,c:n,method:m,path:c}=r;if(i!=null){if(typeof i==="boolean")return i;if(typeof i==="function")return i({c:n,method:m,path:c})}return!1}async function OA(r,i){if("spec"in r){let c={},l={...i,...r.spec,responses:{...i?.responses,...r.spec.responses}};if(l.responses)for(let y of Object.keys(l.responses)){let j=l.responses[y];if(!j||!("content"in j))continue;for(let A of Object.keys(j.content??{})){let S=j.content?.[A];if(!S)continue;if(S.schema&&"toOpenAPISchema"in S.schema){let v=await S.schema.toOpenAPISchema();if(S.schema=v.schema,v.components)c=$c(c,v.components)}}}return{schema:l,components:c}}let n=await r.toOpenAPISchema(),m=i??{};if(r.target==="form"||r.target==="json"){let c=r.options?.media??r.target==="json"?"application/json":"multipart/form-data";if(!m.requestBody||!("content"in m.requestBody)||!m.requestBody.content)m.requestBody={content:{[c]:{schema:n.schema}}};else m.requestBody.content[c]={schema:n.schema}}else{let c=[];if("$ref"in n.schema){let y=n.schema.$ref.split("/").pop();if(y&&n.components?.schemas?.[y]){let j=n.components.schemas[y],A=Ny(r.target,j)[0];if(!n.components.parameters)n.components.parameters={};n.components.parameters[y]=A,delete n.components.schemas[y],c.push({$ref:`#/components/parameters/${y}`})}}else c=Ny(r.target,n.schema);m.parameters=c}return{schema:m,components:n.components}}function Ny(r,i){let n=[];for(let[m,c]of Object.entries(i.properties??{})){let l={in:r==="param"?"path":r,name:m,schema:c};if(i.required?.includes(m))l.required=!0;if(l.schema&&"description"in l.schema&&l.schema.description)l.description=l.schema.description,l.schema.description=void 0;n.push(l)}return n}function $c(...r){return r.reduce((i,n,m)=>{if(n==null||m===0)return i;if(i.schemas&&Object.keys(i.schemas).length>0||n.schemas&&Object.keys(n.schemas).length>0)i.schemas={...i.schemas,...n.schemas};if(i.parameters&&Object.keys(i.parameters).length>0||n.parameters&&Object.keys(n.parameters).length>0)i.parameters={...i.parameters,...n.parameters};return i},r[0]??{})}function $(r,i){return{vendor:r["~standard"].vendor,validate:r["~standard"].validate,toJSONSchema:(n)=>Ey(r,{...i,...n}),toOpenAPISchema:(n)=>Sc(r,{...i,...n})}}function D(r,i,n,m){let c=Ay(r,i,n);return Object.assign(c,{[vc]:{target:r,...$(i,m),options:m}})}function G(r){return Object.assign(async(n,m)=>{await m()},{[vc]:{spec:r}})}var Gc=(r,i,n)=>{return(m,c)=>{let l=-1;return y(0);async function y(j){if(j<=l)throw Error("next() called multiple times");l=j;let A,S=!1,v;if(r[j])v=r[j][0][0],m.req.routeIndex=j;else v=j===r.length&&c||void 0;if(v)try{A=await v(m,()=>y(j+1))}catch(w){if(w instanceof Error&&i)m.error=w,A=await i(w,m),S=!0;else throw w}else if(m.finalized===!1&&n)A=await n(m);if(A&&(m.finalized===!1||S))m.res=A;return m}}};var Dy=Symbol();var Nc=(r)=>("headers"in r),Uy=async(r,i=Object.create(null))=>{let{all:n=!1,dot:m=!1}=i,y=(Nc(r)?r.headers:r.raw.headers).get("Content-Type")?.split(";")[0].trim().toLowerCase();if(y==="multipart/form-data"||y==="application/x-www-form-urlencoded")return LA(r,{all:n,dot:m});return{}};async function LA(r,i){let n=Nc(r)?r.headers:r.raw.headers,m=await r.arrayBuffer(),c=zm(m,n.get("Content-Type")||"");if(!Nc(r))r.bodyCache.formData=c;let l=await c;if(l)return qA(l,i);return{}}function qA(r,i){let n=Object.create(null);if(r.forEach((m,c)=>{if(!(i.all||c.endsWith("[]")))n[c]=m;else _A(n,c,m)}),i.dot)Object.entries(n).forEach(([m,c])=>{if(m.includes("."))FA(n,m,c),delete n[m]});return n}var _A=(r,i,n)=>{if(r[i]!==void 0)if(Array.isArray(r[i]))r[i].push(n);else r[i]=[r[i],n];else if(!i.endsWith("[]"))r[i]=n;else r[i]=[n]},FA=(r,i,n)=>{if(/(?:^|\.)__proto__\./.test(i))return;let m=r,c=i.split(".");c.forEach((l,y)=>{if(y===c.length-1)m[l]=n;else{if(!m[l]||typeof m[l]!=="object"||Array.isArray(m[l])||m[l]instanceof File)m[l]=Object.create(null);m=m[l]}})};var Py=(r)=>Sn(r,Mn),Cy=class{raw;#r;#i;routeIndex=0;path;bodyCache={};constructor(r,i="/",n=[[]]){this.raw=r,this.path=i,this.#i=n,this.#r={}}param(r){return r?this.#n(r):this.#l()}#n(r){let i=this.#i[0][this.routeIndex][1][r],n=this.#c(i);return n&&/\%/.test(n)?Py(n):n}#l(){let r={},i=Object.keys(this.#i[0][this.routeIndex][1]);for(let n of i){let m=this.#c(this.#i[0][this.routeIndex][1][n]);if(m!==void 0)r[n]=/\%/.test(m)?Py(m):m}return r}#c(r){return this.#i[1]?this.#i[1][r]:r}query(r){return ny(this.url,r)}queries(r){return my(this.url,r)}header(r){if(r)return this.raw.headers.get(r)??void 0;let i={};return this.raw.headers.forEach((n,m)=>{i[m]=n}),i}async parseBody(r){return Uy(this,r)}#m=(r)=>{let{bodyCache:i,raw:n}=this,m=i[r];if(m)return m;let c=Object.keys(i)[0];if(c)return i[c].then((l)=>{if(c==="json")l=JSON.stringify(l);return new Response(l)[r]()});return i[r]=n[r]()};json(){return this.#m("text").then((r)=>JSON.parse(r))}text(){return this.#m("text")}arrayBuffer(){return this.#m("arrayBuffer")}bytes(){return this.#m("arrayBuffer").then((r)=>new Uint8Array(r))}blob(){return this.#m("blob")}formData(){return this.#m("formData")}addValidatedData(r,i){this.#r[r]=i}valid(r){return this.#r[r]}get url(){return this.raw.url}get method(){return this.raw.method}get[Dy](){return this.#i}get matchedRoutes(){return this.#i[0].map(([[,r]])=>r)}get routePath(){return this.#i[0].map(([[,r]])=>r)[this.routeIndex].path}};var Mm={Stringify:1,BeforeStream:2,Stream:3},Wy=(r,i)=>{let n=new String(r);return n.isEscaped=!0,n.callbacks=i,n};var Tn=async(r,i,n,m,c)=>{if(typeof r==="object"&&!(r instanceof String)){if(!(r instanceof Promise))r=r.toString();if(r instanceof Promise)r=await r}let l=r.callbacks;if(!l?.length)return Promise.resolve(r);if(c)c[0]+=r;else c=[r];let y=Promise.all(l.map((j)=>j({phase:i,buffer:c,context:m}))).then((j)=>Promise.all(j.filter(Boolean).map((A)=>Tn(A,i,!1,m,c))).then(()=>c[0]));if(n)return Wy(await y,l);else return y};var Xy="text/plain; charset=UTF-8",Ec=(r,i)=>{return{"Content-Type":r,...i}},hn=(r,i)=>new Response(r,i),Qc=class{#r;#i;env={};#n;finalized=!1;error;#l;#c;#m;#S;#I;#A;#j;#v;#w;constructor(r,i){if(this.#r=r,i)this.#c=i.executionCtx,this.env=i.env,this.#A=i.notFoundHandler,this.#w=i.path,this.#v=i.matchResult}get req(){return this.#i??=new Cy(this.#r,this.#w,this.#v),this.#i}get event(){if(this.#c&&"respondWith"in this.#c)return this.#c;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#c)return this.#c;else throw Error("This context has no ExecutionContext")}get res(){return this.#m||=hn(null,{headers:this.#j??=new Headers})}set res(r){if(this.#m&&r){r=hn(r.body,r);for(let[i,n]of this.#m.headers.entries()){if(i==="content-type")continue;if(i==="set-cookie"){let m=this.#m.headers.getSetCookie();r.headers.delete("set-cookie");for(let c of m)r.headers.append("set-cookie",c)}else r.headers.set(i,n)}}this.#m=r,this.finalized=!0}render=(...r)=>{return this.#I??=(i)=>this.html(i),this.#I(...r)};setLayout=(r)=>this.#S=r;getLayout=()=>this.#S;setRenderer=(r)=>{this.#I=r};header=(r,i,n)=>{if(this.finalized)this.#m=hn(this.#m.body,this.#m);let m=this.#m?this.#m.headers:this.#j??=new Headers;if(i===void 0)m.delete(r);else if(n?.append)m.append(r,i);else m.set(r,i)};status=(r)=>{this.#l=r};set=(r,i)=>{this.#n??=new Map,this.#n.set(r,i)};get=(r)=>{return this.#n?this.#n.get(r):void 0};get var(){if(!this.#n)return{};return Object.fromEntries(this.#n)}#y(r,i,n){let m=this.#m?new Headers(this.#m.headers):this.#j??new Headers;if(typeof i==="object"&&"headers"in i){let l=i.headers instanceof Headers?i.headers:new Headers(i.headers);for(let[y,j]of l)if(y.toLowerCase()==="set-cookie")m.append(y,j);else m.set(y,j)}if(n)for(let[l,y]of Object.entries(n))if(typeof y==="string")m.set(l,y);else{m.delete(l);for(let j of y)m.append(l,j)}let c=typeof i==="number"?i:i?.status??this.#l;return hn(r,{status:c,headers:m})}newResponse=(...r)=>this.#y(...r);body=(r,i,n)=>this.#y(r,i,n);text=(r,i,n)=>{return!this.#j&&!this.#l&&!i&&!n&&!this.finalized?new Response(r):this.#y(r,i,Ec(Xy,n))};json=(r,i,n)=>{return this.#y(JSON.stringify(r),i,Ec("application/json",n))};html=(r,i,n)=>{let m=(c)=>this.#y(c,i,Ec("text/html; charset=UTF-8",n));return typeof r==="object"?Tn(r,Mm.Stringify,!1,{}).then(m):m(r)};redirect=(r,i)=>{let n=String(r);return this.header("Location",!/[^\x00-\xFF]/.test(n)?n:encodeURI(n)),this.newResponse(null,i??302)};notFound=()=>{return this.#A??=()=>hn(),this.#A(this)}};var o="ALL",Ky="all",Hy=["get","post","put","delete","options","patch"],Tm="Can not add a route since the matcher is already built.",hm=class extends Error{};var Dc="__COMPOSED_HANDLER";var gA=(r)=>{return r.text("404 Not Found",404)},Zy=(r,i)=>{if("getResponse"in r){let n=r.getResponse();return i.newResponse(n.body,n)}return console.error(r),i.text("Internal Server Error",500)},Vy=class r{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#r="/";routes=[];constructor(i={}){[...Hy,Ky].forEach((l)=>{this[l]=(y,...j)=>{if(typeof y==="string")this.#r=y;else this.#l(l,this.#r,y);return j.forEach((A)=>{this.#l(l,this.#r,A)}),this}}),this.on=(l,y,...j)=>{for(let A of[y].flat()){this.#r=A;for(let S of[l].flat())j.map((v)=>{this.#l(S.toUpperCase(),this.#r,v)})}return this},this.use=(l,...y)=>{if(typeof l==="string")this.#r=l;else this.#r="*",y.unshift(l);return y.forEach((j)=>{this.#l(o,this.#r,j)}),this};let{strict:m,...c}=i;Object.assign(this,c),this.getPath=m??!0?i.getPath??lc:ry}#i(){let i=new r({router:this.router,getPath:this.getPath});return i.errorHandler=this.errorHandler,i.#n=this.#n,i.routes=this.routes,i}#n=gA;errorHandler=Zy;route(i,n){let m=this.basePath(i);return n.routes.map((c)=>{let l;if(n.errorHandler===Zy)l=c.handler;else l=async(y,j)=>(await Gc([],n.errorHandler)(y,()=>c.handler(y,j))).res,l[Dc]=c.handler;m.#l(c.method,c.path,l,c.basePath)}),this}basePath(i){let n=this.#i();return n._basePath=Ji(this._basePath,i),n}onError=(i)=>{return this.errorHandler=i,this};notFound=(i)=>{return this.#n=i,this};mount(i,n,m){let c,l;if(m)if(typeof m==="function")l=m;else if(l=m.optionHandler,m.replaceRequest===!1)c=(A)=>A;else c=m.replaceRequest;let y=l?(A)=>{let S=l(A);return Array.isArray(S)?S:[S]}:(A)=>{let S=void 0;try{S=A.executionCtx}catch{}return[A.env,S]};c||=(()=>{let A=Ji(this._basePath,i),S=A==="/"?0:A.length;return(v)=>{let w=new URL(v.url);return w.pathname=this.getPath(v).slice(S)||"/",new Request(w,v)}})();let j=async(A,S)=>{let v=await n(c(A.req.raw),...y(A));if(v)return v;await S()};return this.#l(o,Ji(i,"*"),j),this}#l(i,n,m,c){i=i.toUpperCase(),n=Ji(this._basePath,n);let l={basePath:c!==void 0?Ji(this._basePath,c):this._basePath,path:n,method:i,handler:m};this.router.add(i,n,[m,l]),this.routes.push(l)}#c(i,n){if(i instanceof Error)return this.errorHandler(i,n);throw i}#m(i,n,m,c){if(c==="HEAD")return(async()=>new Response(null,await this.#m(i,n,m,"GET")))();let l=this.getPath(i,{env:m}),y=this.router.match(c,l),j=new Qc(i,{path:l,matchResult:y,env:m,executionCtx:n,notFoundHandler:this.#n});if(y[0].length===1){let S;try{S=y[0][0][0][0](j,async()=>{j.res=await this.#n(j)})}catch(v){return this.#c(v,j)}return S instanceof Promise?S.then((v)=>v||(j.finalized?j.res:this.#n(j))).catch((v)=>this.#c(v,j)):S??this.#n(j)}let A=Gc(y[0],this.errorHandler,this.#n);return(async()=>{try{let S=await A(j);if(!S.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return S.res}catch(S){return this.#c(S,j)}})()}fetch=(i,...n)=>{return this.#m(i,n[1],n[0],i.method)};request=(i,n,m,c)=>{if(i instanceof Request)return this.fetch(n?new Request(i,n):i,m,c);return i=i.toString(),this.fetch(new Request(/^https?:\/\//.test(i)?i:`http://localhost${Ji("/",i)}`,n),m,c)};fire=()=>{addEventListener("fetch",(i)=>{i.respondWith(this.#m(i.request,i,void 0,i.request.method))})}};var Bn=[];function Bm(r,i){let n=this.buildAllMatchers(),m=(c,l)=>{let y=n[c]||n[o],j=y[2][l];if(j)return j;let A=l.match(y[0]);if(!A)return[[],Bn];let S=A.indexOf("",1);return[y[1][S],A]};return this.match=m,m(r,i)}var om="[^/]+",on=".*",xn="(?:|/.*)",di=Symbol(),zA=new Set(".\\+*[^]$()");function MA(r,i){if(r.length===1)return i.length===1?r<i?-1:1:-1;if(i.length===1)return 1;if(r===on||r===xn)return 1;else if(i===on||i===xn)return-1;if(r===om)return 1;else if(i===om)return-1;return r.length===i.length?r<i?-1:1:i.length-r.length}var Yy=class r{#r;#i;#n=Object.create(null);insert(i,n,m,c,l){if(i.length===0){if(this.#r!==void 0)throw di;if(l)return;this.#r=n;return}let[y,...j]=i,A=y==="*"?j.length===0?["","",on]:["","",om]:y==="/*"?["","",xn]:y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),S;if(A){let v=A[1],w=A[2]||om;if(v&&A[2]){if(w===".*")throw di;if(w=w.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(w))throw di}if(S=this.#n[w],!S){if(Object.keys(this.#n).some((N)=>N!==on&&N!==xn))throw di;if(l)return;if(S=this.#n[w]=new r,v!=="")S.#i=c.varIndex++}if(!l&&v!=="")m.push([v,S.#i])}else if(S=this.#n[y],!S){if(Object.keys(this.#n).some((v)=>v.length>1&&v!==on&&v!==xn))throw di;if(l)return;S=this.#n[y]=new r}S.insert(j,n,m,c,l)}buildRegExpStr(){let n=Object.keys(this.#n).sort(MA).map((m)=>{let c=this.#n[m];return(typeof c.#i==="number"?`(${m})@${c.#i}`:zA.has(m)?`\\${m}`:m)+c.buildRegExpStr()});if(typeof this.#r==="number")n.unshift(`#${this.#r}`);if(n.length===0)return"";if(n.length===1)return n[0];return"(?:"+n.join("|")+")"}};var Jy=class{#r={varIndex:0};#i=new Yy;insert(r,i,n){let m=[],c=[];for(let y=0;;){let j=!1;if(r=r.replace(/\{[^}]+\}/g,(A)=>{let S=`@\\${y}`;return c[y]=[S,A],y++,j=!0,S}),!j)break}let l=r.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let y=c.length-1;y>=0;y--){let[j]=c[y];for(let A=l.length-1;A>=0;A--)if(l[A].indexOf(j)!==-1){l[A]=l[A].replace(j,c[y][1]);break}}return this.#i.insert(l,i,m,this.#r,n),m}buildRegExp(){let r=this.#i.buildRegExpStr();if(r==="")return[/^$/,[],[]];let i=0,n=[],m=[];return r=r.replace(/#(\d+)|@(\d+)|\.\*\$/g,(c,l,y)=>{if(l!==void 0)return n[++i]=Number(l),"$()";if(y!==void 0)return m[Number(y)]=++i,"";return""}),[new RegExp(`^${r}`),n,m]}};var TA=[/^$/,[],Object.create(null)],Ry=Object.create(null);function Oy(r){return Ry[r]??=new RegExp(r==="*"?"":`^${r.replace(/\/\*$|([.\\+*[^\]$()])/g,(i,n)=>n?`\\${n}`:"(?:|/.*)")}$`)}function hA(){Ry=Object.create(null)}function BA(r){let i=new Jy,n=[];if(r.length===0)return TA;let m=r.map((S)=>[!/\*|\/:/.test(S[0]),...S]).sort(([S,v],[w,N])=>S?1:w?-1:v.length-N.length),c=Object.create(null);for(let S=0,v=-1,w=m.length;S<w;S++){let[N,E,Q]=m[S];if(N)c[E]=[Q.map(([Z])=>[Z,Object.create(null)]),Bn];else v++;let W;try{W=i.insert(E,v,N)}catch(Z){throw Z===di?new hm(E):Z}if(N)continue;n[v]=Q.map(([Z,X])=>{let K=Object.create(null);X-=1;for(;X>=0;X--){let[R,q]=W[X];K[R]=q}return[Z,K]})}let[l,y,j]=i.buildRegExp();for(let S=0,v=n.length;S<v;S++)for(let w=0,N=n[S].length;w<N;w++){let E=n[S][w]?.[1];if(!E)continue;let Q=Object.keys(E);for(let W=0,Z=Q.length;W<Z;W++)E[Q[W]]=j[E[Q[W]]]}let A=[];for(let S in y)A[S]=n[y[S]];return[l,A,c]}function wn(r,i){if(!r)return;for(let n of Object.keys(r).sort((m,c)=>c.length-m.length))if(Oy(n).test(i))return[...r[n]];return}var xm=class{name="RegExpRouter";#r;#i;constructor(){this.#r={[o]:Object.create(null)},this.#i={[o]:Object.create(null)}}add(r,i,n){let m=this.#r,c=this.#i;if(!m||!c)throw Error(Tm);if(!m[r])[m,c].forEach((j)=>{j[r]=Object.create(null),Object.keys(j[o]).forEach((A)=>{j[r][A]=[...j[o][A]]})});if(i==="/*")i="*";let l=(i.match(/\/:/g)||[]).length;if(/\*$/.test(i)){let j=Oy(i);if(r===o)Object.keys(m).forEach((A)=>{m[A][i]||=wn(m[A],i)||wn(m[o],i)||[]});else m[r][i]||=wn(m[r],i)||wn(m[o],i)||[];Object.keys(m).forEach((A)=>{if(r===o||r===A)Object.keys(m[A]).forEach((S)=>{j.test(S)&&m[A][S].push([n,l])})}),Object.keys(c).forEach((A)=>{if(r===o||r===A)Object.keys(c[A]).forEach((S)=>j.test(S)&&c[A][S].push([n,l]))});return}let y=gm(i)||[i];for(let j=0,A=y.length;j<A;j++){let S=y[j];Object.keys(c).forEach((v)=>{if(r===o||r===v)c[v][S]||=[...wn(m[v],S)||wn(m[o],S)||[]],c[v][S].push([n,l-A+j+1])})}}match=Bm;buildAllMatchers(){let r=Object.create(null);return Object.keys(this.#i).concat(Object.keys(this.#r)).forEach((i)=>{r[i]||=this.#n(i)}),this.#r=this.#i=void 0,hA(),r}#n(r){let i=[],n=r===o;if([this.#r,this.#i].forEach((m)=>{let c=m[r]?Object.keys(m[r]).map((l)=>[l,m[r][l]]):[];if(c.length!==0)n||=!0,i.push(...c);else if(r!==o)i.push(...Object.keys(m[o]).map((l)=>[l,m[o][l]]))}),!n)return null;else return BA(i)}};var oA=class{name="PreparedRegExpRouter";#r;#i;constructor(r,i){this.#r=r,this.#i=i}#n(r,i){let n=this.#r[r];n[1].forEach((m)=>m&&m.push(i)),Object.values(n[2]).forEach((m)=>m[0].push(i))}#l(r,i,n,m,c){let l=this.#r[r];if(!c)l[2][i][0].push([n,{}]);else m.forEach((y)=>{if(typeof y==="number")l[1][y].push([n,c]);else l[2][y||i][0].push([n,c])})}add(r,i,n){if(!this.#r[r]){let c=this.#r[o],l={};for(let y in c[2])l[y]=[c[2][y][0].slice(),Bn];this.#r[r]=[c[0],c[1].map((y)=>Array.isArray(y)?y.slice():0),l]}if(i==="/*"||i==="*"){let c=[n,{}];if(r===o)for(let l in this.#r)this.#n(l,c);else this.#n(r,c);return}let m=this.#i[i];if(!m)throw Error(`Path ${i} is not registered`);for(let[c,l]of m)if(r===o)for(let y in this.#r)this.#l(y,i,n,c,l);else this.#l(r,i,n,c,l)}buildAllMatchers(){return this.#r}match=Bm};var Uc=class{name="SmartRouter";#r=[];#i=[];constructor(r){this.#r=r.routers}add(r,i,n){if(!this.#i)throw Error(Tm);this.#i.push([r,i,n])}match(r,i){if(!this.#i)throw Error("Fatal error");let n=this.#r,m=this.#i,c=n.length,l=0,y;for(;l<c;l++){let j=n[l];try{for(let A=0,S=m.length;A<S;A++)j.add(...m[A]);y=j.match(r,i)}catch(A){if(A instanceof hm)continue;throw A}this.match=j.match.bind(j),this.#r=[j],this.#i=void 0;break}if(l===c)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,y}get activeRouter(){if(this.#i||this.#r.length!==1)throw Error("No active router has been determined yet.");return this.#r[0]}};var kn=Object.create(null),xA=(r)=>{for(let i in r)return!0;return!1},Ly=class r{#r;#i;#n;#l=0;#c=kn;constructor(i,n,m){if(this.#i=m||Object.create(null),this.#r=[],i&&n){let c=Object.create(null);c[i]={handler:n,possibleKeys:[],score:0},this.#r=[c]}this.#n=[]}insert(i,n,m){this.#l=++this.#l;let c=this,l=el(n),y=[];for(let j=0,A=l.length;j<A;j++){let S=l[j],v=l[j+1],w=sl(S,v),N=Array.isArray(w)?w[0]:S;if(N in c.#i){if(c=c.#i[N],w)y.push(w[1]);continue}if(c.#i[N]=new r,w)c.#n.push(w),y.push(w[1]);c=c.#i[N]}return c.#r.push({[i]:{handler:m,possibleKeys:y.filter((j,A,S)=>S.indexOf(j)===A),score:this.#l}}),c}#m(i,n,m,c,l){for(let y=0,j=n.#r.length;y<j;y++){let A=n.#r[y],S=A[m]||A[o],v={};if(S!==void 0){if(S.params=Object.create(null),i.push(S),c!==kn||l&&l!==kn)for(let w=0,N=S.possibleKeys.length;w<N;w++){let E=S.possibleKeys[w],Q=v[S.score];S.params[E]=l?.[E]&&!Q?l[E]:c[E]??l?.[E],v[S.score]=!0}}}}search(i,n){let m=[];this.#c=kn;let l=[this],y=cc(n),j=[],A=y.length,S=null;for(let v=0;v<A;v++){let w=y[v],N=v===A-1,E=[];for(let W=0,Z=l.length;W<Z;W++){let X=l[W],K=X.#i[w];if(K)if(K.#c=X.#c,N){if(K.#i["*"])this.#m(m,K.#i["*"],i,X.#c);this.#m(m,K,i,X.#c)}else E.push(K);for(let R=0,q=X.#n.length;R<q;R++){let z=X.#n[R],L=X.#c===kn?{}:{...X.#c};if(z==="*"){let Br=X.#i["*"];if(Br)this.#m(m,Br,i,X.#c),Br.#c=L,E.push(Br);continue}let[f,hr,Yr]=z;if(!w&&!(Yr instanceof RegExp))continue;let x=X.#i[f];if(Yr instanceof RegExp){if(S===null){S=Array(A);let An=n[0]==="/"?1:0;for(let zn=0;zn<A;zn++)S[zn]=An,An+=y[zn].length+1}let Br=n.substring(S[v]),Yi=Yr.exec(Br);if(Yi){if(L[hr]=Yi[0],this.#m(m,x,i,X.#c,L),Yi[0].length===Br.length&&x.#i["*"])this.#m(m,x.#i["*"],i,X.#c,L);if(xA(x.#i)){x.#c=L;let An=Yi[0].match(/\//)?.length??0;(j[An]||=[]).push(x)}continue}}if(Yr===!0||Yr.test(w))if(L[hr]=w,N){if(this.#m(m,x,i,L,X.#c),x.#i["*"])this.#m(m,x.#i["*"],i,L,X.#c)}else x.#c=L,E.push(x)}}let Q=j.shift();l=Q?E.concat(Q):E}if(m.length>1)m.sort((v,w)=>{return v.score-w.score});return[m.map(({handler:v,params:w})=>[v,w])]}};var Pc=class{name="TrieRouter";#r;constructor(){this.#r=new Ly}add(r,i,n){let m=gm(i);if(m){for(let c=0,l=m.length;c<l;c++)this.#r.insert(r,m[c],n);return}this.#r.insert(r,i,n)}match(r,i){return this.#r.search(r,i)}};var V=class extends Vy{constructor(r={}){super(r);this.router=r.router??new Uc({routers:[new xm,new Pc]})}};var Cc=/^\s*(?:text\/(?!event-stream(?:[;\s]|$))[^;\s]+|application\/(?:javascript|json|xml|xml-dtd|ecmascript|dart|msgpack|postscript|rtf|tar|toml|vnd\.dart|vnd\.ms-fontobject|vnd\.ms-opentype|vnd\.msgpack|wasm|x-httpd-php|x-javascript|x-msgpack|x-ns-proxy-autoconfig|x-sh|x-tar|x-virtualbox-hdd|x-virtualbox-ova|x-virtualbox-ovf|x-virtualbox-vbox|x-virtualbox-vdi|x-virtualbox-vhd|x-virtualbox-vmdk|x-www-form-urlencoded)|font\/(?:otf|ttf)|image\/(?:bmp|vnd\.adobe\.photoshop|vnd\.microsoft\.icon|vnd\.ms-dds|x-icon|x-ms-bmp)|message\/rfc822|model\/gltf-binary|x-shader\/x-fragment|x-shader\/x-vertex|[^;\s]+?\+(?:json|text|xml|yaml|msgpack))(?:[;\s]|$)/i;var kA={br:".br",zstd:".zst",gzip:".gz"},oN=Object.keys(kA);var Wc="x-hono-disable-ssg",jE=(()=>{try{return new Response("SSG is disabled",{status:404,headers:{[Wc]:"true"}})}catch{return null}})();var{write:xE}=Bun;var qy=class{#r;constructor(r){this.#r=r,this.raw=r.raw,this.url=r.url?new URL(r.url):null,this.protocol=r.protocol??null}send(r,i){this.#r.send(r,i??{})}raw;binaryType="arraybuffer";get readyState(){return this.#r.readyState}url;protocol;close(r,i){this.#r.close(r,i)}},_y=(r)=>{return new MessageEvent("message",{data:r})},Fy=(r)=>{return(...i)=>{if(typeof i[0]==="function"){let[n,m]=i;return async function(l,y){let j=await n(l),A=await r(l,j,m);if(A)return A;await y()}}else{let[n,m,c]=i;return(async()=>{let l=await r(n,m,c);if(!l)throw Error("Failed to upgrade WebSocket");return l})()}}};var km=(r)=>("server"in r.env)?r.env.server:r.env;var Xc=(r)=>{return new qy({send:(i,n)=>{r.send(i,n?.compress)},raw:r,readyState:r.readyState,url:r.data.url,protocol:r.data.protocol,close(i,n){r.close(i,n)}})},gy=Fy((r,i)=>{let n=km(r);if(!n)throw TypeError("env has to include the 2nd argument of fetch.");if(n.upgrade(r.req.raw,{data:{events:i,url:new URL(r.req.url),protocol:r.req.header("sec-websocket-protocol")?.split(",")[0]?.trim()??""}}))return new Response(null);return}),zy={open(r){let i=r.data.events;if(i.onOpen)i.onOpen(new Event("open"),Xc(r))},close(r,i,n){let m=r.data.events;if(m.onClose)m.onClose(new CloseEvent("close",{code:i,reason:n}),Xc(r))},message(r,i){let n=r.data.events;if(n.onMessage){let m=typeof i==="string"?i:i.buffer;n.onMessage(_y(m),Xc(r))}}},Kc=()=>({upgradeWebSocket:gy,websocket:zy});var My={create(r){let i=Kc();return{upgradeWebSocket:i.upgradeWebSocket,async listen(n){let m={fetch:r.fetch,hostname:n.hostname,idleTimeout:0,websocket:i.websocket},c=(y)=>{try{return Bun.serve({...m,port:y})}catch{return}},l=n.port===0?c(4096)??c(0):c(n.port);if(!l)throw Error(`Failed to start server on port ${n.port}`);if(!l.port)throw Error(`Failed to resolve server address for port ${n.port}`);return{port:l.port,stop(y){return Promise.resolve(l.stop(y))}}}}}};var Nn={};Nr(Nn,{unpublish:()=>Zj,publish:()=>Iv,MDNS:()=>Nn});var Hj=jv(Kj(),1),dn=_.create({service:"mdns"}),li,em;function Iv(r,i){if(em===r)return;if(li)Zj();try{let n=i??"qitqode.local",m=`qitqode-${r}`;li=new Hj.Bonjour;let c=li.publish({name:m,type:"http",host:n,port:r,txt:{path:"/"}});c.on("up",()=>{dn.info("mDNS service published",{name:m,port:r})}),c.on("error",(l)=>{dn.error("mDNS service error",{error:l})}),em=r}catch(n){if(dn.error("mDNS publish failed",{error:n}),li)try{li.destroy()}catch{}li=void 0,em=void 0}}function Zj(){if(li){try{li.unpublishAll(),li.destroy()}catch(r){dn.error("mDNS unpublish failed",{error:r})}li=void 0,em=void 0,dn.info("mDNS service unpublished")}}var Vj=(r)=>{let i=atob(r),n=new Uint8Array(new ArrayBuffer(i.length)),m=i.length/2;for(let c=0,l=i.length-1;c<=m;c++,l--)n[c]=i.charCodeAt(c),n[l]=i.charCodeAt(l);return n};var Av=/^ *(?:[Bb][Aa][Ss][Ii][Cc]) +([A-Za-z0-9._~+/-]+=*) *$/,Sv=/^([^:]*):(.*)$/,vv=new TextDecoder,Yj=(r)=>{let i=Av.exec(r.headers.get("Authorization")||"");if(!i)return;let n=void 0;try{n=Sv.exec(vv.decode(Vj(i[1])))}catch{}if(!n)return;return{username:n[1],password:n[2]}};var Jj=(r,...i)=>{let n="username"in r&&"password"in r,m="verifyUser"in r;if(!(n||m))throw Error('basic auth middleware requires options for "username and password" or "verifyUser"');if(!r.realm)r.realm="Secure Area";if(!r.invalidUserMessage)r.invalidUserMessage="Unauthorized";if(n)i.unshift({username:r.username,password:r.password});return async function(l,y){let j=Yj(l.req.raw);if(j)if(m){if(await r.verifyUser(j.username,j.password,l)){if(r.onAuthSuccess)await r.onAuthSuccess(l,j.username);await y();return}}else for(let N of i){let[E,Q]=await Promise.all([Ic(N.username,j.username,r.hashFunction),Ic(N.password,j.password,r.hashFunction)]);if(E&&Q){if(r.onAuthSuccess)await r.onAuthSuccess(l,j.username);await y();return}}let A=401,S={"WWW-Authenticate":'Basic realm="'+r.realm?.replace(/"/g,"\\\"")+'"'},v=typeof r.invalidUserMessage==="function"?await r.invalidUserMessage(l):r.invalidUserMessage,w=typeof v==="string"?new Response(v,{status:A,headers:S}):new Response(JSON.stringify(v),{status:A,headers:{...S,"content-type":"application/json"}});throw new kr(A,{res:w})}};var Rj=(r)=>{let i={origin:"*",allowMethods:["GET","HEAD","PUT","POST","DELETE","PATCH"],allowHeaders:[],exposeHeaders:[],...r},n=((c)=>{if(typeof c==="string")if(c==="*")return()=>c;else return(l)=>c===l?l:null;else if(typeof c==="function")return c;else return(l)=>c.includes(l)?l:null})(i.origin),m=((c)=>{if(typeof c==="function")return c;else if(Array.isArray(c))return()=>c;else return()=>[]})(i.allowMethods);return async function(l,y){function j(S,v){l.res.headers.set(S,v)}let A=await n(l.req.header("origin")||"",l);if(A)j("Access-Control-Allow-Origin",A);if(i.credentials)j("Access-Control-Allow-Credentials","true");if(i.exposeHeaders?.length)j("Access-Control-Expose-Headers",i.exposeHeaders.join(","));if(l.req.method==="OPTIONS"){if(i.origin!=="*")j("Vary","Origin");if(i.maxAge!=null)j("Access-Control-Max-Age",i.maxAge.toString());let S=await m(l.req.header("origin")||"",l);if(S.length)j("Access-Control-Allow-Methods",S.join(","));let v=i.allowHeaders;if(!v?.length){let w=l.req.header("Access-Control-Request-Headers");if(w)v=w.split(/\s*,\s*/)}if(v?.length)j("Access-Control-Allow-Headers",v.join(",")),l.res.headers.append("Vary","Access-Control-Request-Headers");return l.res.headers.delete("Content-Length"),l.res.headers.delete("Content-Type"),new Response(null,{headers:l.res.headers,status:204,statusText:"No Content"})}if(await y(),i.origin!=="*")l.header("Vary","Origin",{append:!0})}};var Lj=(r)=>r===32||r===9||r===10||r===13,sm=(r,i)=>{while(i<r.length){if(!Lj(r.charCodeAt(i)))break;i++}return i},tn=(r,i)=>{while(i>0){if(!Lj(r.charCodeAt(i-1)))break;i--}return i},Oj=(r,i)=>{while(i<r.length){let n=r.charCodeAt(i);if(n===59)return[i+1,!0];if(n===44)return[i+1,!1];i++}return[i,!1]},wv=(r,i)=>{let n=i,m=!1;while(n<r.length){let c=r.charCodeAt(n);if(m&&c===92)n++;else if(c===34)m=!m;else if(!m&&c===44)return n+1;n++}return n},$v=(r,i)=>{i=sm(r,i);let n=i,m,c,l=!1;while(n<r.length){let A=r.charCodeAt(n);if(A===61){m=r.slice(i,tn(r,n)),n++;break}if(A===59)return[n+1,void 0,void 0,!0];if(A===44)return[n+1,void 0,void 0,!1];n++}if(m===void 0)return[n,void 0,void 0,!1];if(n=sm(r,n),r.charCodeAt(n)===61){let A=Oj(r,n+1);return[A[0],m,void 0,A[1]]}let y=!1,j=n;while(n<r.length){let A=r.charCodeAt(n);if(y&&A===92)n++;else if(A===34){if(y){let S=sm(r,n+1),v=r.charCodeAt(S);if(S<r.length&&!(v===59||v===44)){let w=Oj(r,S);return[w[0],m,void 0,w[1]]}if(c=r.slice(j+1,n),c.includes("\\"))c=c.replace(/\\(.)/g,"$1");if(v===44)return[S+1,m,c,!1];if(v===59)l=!0,S++;n=S;break}y=!0}else if(!y&&(A===59||A===44)){if(c=r.slice(j,tn(r,n)),A===59)l=!0;n++;break}n++}return[n,m,c??r.slice(j,tn(r,n)),l]},Gv=(r,i)=>{let n={type:"",params:{},q:1};i=sm(r,i);let m=i;while(m<r.length){let j=r.charCodeAt(m);if(j===59||j===44){if(n.type=r.slice(i,tn(r,m)),m++,j===44)return[m,n.type?n:void 0];if(!n.type)return[wv(r,m),void 0];break}m++}if(!n.type)return n.type=r.slice(i,tn(r,r.length)),[r.length,n.type?n:void 0];let c,l,y;while(m<r.length){if([m,c,l,y]=$v(r,m),c&&l)n.params[c]=l;if(!y)break}return[m,n]},qj=(r)=>{if(!r)return[];let i=[],n=0,m,c=!1,l;while(n<r.length)if([n,m]=Gv(r,n),m){if(m.q=Nv(m.params.q),i.push(m),l&&l.q<m.q)c=!0;l=m}if(c)i.sort((y,j)=>j.q-y.q);return i},Nv=(r)=>{if(r===void 0)return 1;if(r==="")return 1;if(r==="NaN")return 0;let i=Number(r);if(i===1/0)return 1;if(i===-1/0)return 0;if(Number.isNaN(i))return 1;if(i<0||i>1)return 1;return i};var Ev=["gzip","deflate"],Qv=/(?:^|,)\s*?no-transform\s*?(?:,|$)/i,Dv=(r,i)=>{if(r===void 0)return;let n=qj(r),m=n.find((l)=>l.type==="*")?.q,c;for(let l of i){let y=n.find((A)=>A.type.toLowerCase()===l),j=y?y.q:m??0;if(j===1)return l;else if(j>0&&(!c||j>c.q))c={encoding:l,q:j}}return c?.encoding},_j=(r)=>{let i=r?.threshold??1024,n=r?.encoding?[r.encoding]:Ev,m=r?.contentTypeFilter??Cc,c=typeof m==="function"?(l)=>{let y=l.headers.get("Content-Type");return y&&m(y)}:(l)=>{let y=l.headers.get("Content-Type");return y&&m.test(y)};return async function(y,j){await j();let A=y.res.headers.get("Content-Length");if(y.res.status===206||y.res.headers.has("Content-Encoding")||y.res.headers.has("Transfer-Encoding")||y.req.method==="HEAD"||A&&Number(A)<i||!c(y.res)||!Uv(y.res))return;let S=y.req.header("Accept-Encoding"),v=Dv(S,n);if(!v||!y.res.body)return;let w=new CompressionStream(v);y.res=new Response(y.res.body.pipeThrough(w),y.res),y.res.headers.delete("Content-Length"),y.res.headers.set("Content-Encoding",v);let N=y.res.headers.get("ETag");if(N&&!N.startsWith("W/"))y.res.headers.set("ETag",`W/${N}`)}},Uv=(r)=>{let i=r.headers.get("Cache-Control");return!i||!Qv.test(i)};import{randomUUID as Pv}from"crypto";var fm="ticket",Fj="x-qitqode-ticket",gj="1",Cv=/^\/pty\/[^/]+\/connect$/,Wv=60000,bn=new Map;function Xv(){let r=Date.now();for(let[i,n]of bn)if(n.expiresAt<=r)bn.delete(i)}function zj(r){return Cv.test(r)}function Mj(r,i=Wv){Xv();let n=Pv();return bn.set(n,{ptyID:r,expiresAt:Date.now()+i}),{ticket:n,expires_in:Math.round(i/1000)}}function Tj(r,i){let n=bn.get(r);if(!n)return!1;if(bn.delete(r),n.expiresAt<=Date.now())return!1;return n.ptyID===i}var r0=_.create({service:"server"}),hj=(r,i)=>{let n=crypto.randomUUID();r0.error("failed",{error_id:n,error:r});let m=()=>i.json(new En.Unknown({message:"Internal server error"}).toObject(),{status:500,headers:{"x-qitqode-error-id":n}});if(r instanceof En){let c;if(r instanceof Ci)c=404;else if(r instanceof ir.ModelNotFoundError)c=400;else if(r.name==="ProviderAuthValidationFailed")c=400;else if(r.name.startsWith("Worktree"))c=400;else c=500;if(c===500)return m();return i.json(r.toObject(),{status:c})}if(r instanceof J.BusyError)return i.json(new En.Unknown({message:r.message}).toObject(),{status:409});if(r instanceof kr)return r.getResponse();return m()},Bj=(r,i)=>{if(r.req.method==="OPTIONS")return i();let n=k.QITQODE_SERVER_PASSWORD;if(!n)return i();let m=new URL(r.req.url).pathname;if(zj(m)&&r.req.query(fm))return i();let c=k.QITQODE_SERVER_USERNAME??"qitqode";return Jj({username:c,password:n})(r,i)},oj=async(r,i)=>{let n=r.req.path==="/log";if(!n)r0.info("request",{method:r.req.method,path:r.req.path});let m=r0.time("request",{method:r.req.method,path:r.req.path});if(await i(),!n)m.stop()};function xj(r){return Rj({maxAge:86400,origin(i){if(!i)return;if(r?.cors?.includes(i))return i}})}function Kv(r){return r==="localhost"||r==="::1"||/^127(\.\d{1,3}){3}$/.test(r)||r==="127.0.0.1"}function Hv(r){if(r.startsWith("[")){let i=r.indexOf("]");return i===-1?r:r.slice(1,i)}return r.split(":")[0]}function kj(r){let i=r.hostname===void 0,n=r.hostname==="0.0.0.0"||r.hostname==="::";return(m,c)=>{if(i||n)return c();let l=m.req.header("host");if(!l)return c();let y=Hv(l);if(Kv(y))return c();if(r.hostname&&y===r.hostname)return c();if(r.mdnsDomain&&y===r.mdnsDomain)return c();if(r.allowedHosts?.includes(y))return c();throw r0.warn("rejected request with unexpected Host header",{host:y}),new kr(403,{message:`Forbidden: unexpected Host header "${y}"`})}}var Zv=_j(),pj=(r,i)=>{let n=r.req.path,m=r.req.method;if(n==="/event"||n==="/global/event")return i();if(m==="POST"&&/\/session\/[^/]+\/(message|prompt_async)$/.test(n))return i();return Zv(r,i)};var p={};Nr(p,{waitForSync:()=>Tv,status:()=>zv,startWorkspaceSyncing:()=>uc,sessionRestore:()=>qv,remove:()=>Fv,list:()=>_v,isSyncing:()=>Mv,get:()=>i1,create:()=>Ov,Workspace:()=>p,Info:()=>i0,Event:()=>sn,ConnectionStatus:()=>r1});var uj=["forgewise"];var Vv=new TextEncoder;function Yv(r){return Vv.encode(r).byteLength}function aj(r,i=16384){let n=[...uj.filter((l)=>(l in r)),...Object.keys(r).filter((l)=>!uj.includes(l))],m={},c=0;for(let l of n){let y={...m,[l]:r[l]},j=JSON.stringify(y);if(Yv(j)>i)continue;m[l]=r[l],c+=1}if(c===0)return;return JSON.stringify(m)}var Hr=dj("workspace",{id:Li().$type().primaryKey(),type:Li().notNull(),name:Li().notNull().default(""),branch:Li(),directory:Li(),extra:Li({mode:"json"}),project_id:Li().$type().notNull().references(()=>tj.id,{onDelete:"cascade"})});async function bj(r,i,n){let m=r.getReader(),c=new TextDecoder,l="",y="",j=1000,A=()=>{m.cancel().catch(()=>{return})};if(i.addEventListener("abort",A),i.aborted)A();try{while(!i.aborted){let S=await m.read().catch(()=>({done:!0,value:void 0}));if(S.done)break;l+=c.decode(S.value,{stream:!0}),l=l.replace(/\r\n/g,`
3
3
  `).replace(/\r/g,`
4
4
  `);let v=l.split(`
5
5
 
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{N as R9}from"./chunk-3dvd1bb6.js";import{Ed as E9}from"./chunk-pdzpfkt0.js";import{Fd as P6,Id as p$,Jd as S9,Kd as U9,Nd as H9,Od as q6}from"./chunk-jje0srjq.js";import"./chunk-27yxgy03.js";import{Rd as T0}from"./chunk-yajd975f.js";import{Vf as O}from"./chunk-7ppd2phw.js";import{Wg as j9,dh as I9,hh as E$}from"./chunk-612f97vv.js";import"./chunk-0nj8axbw.js";import"./chunk-p68rwmhc.js";import"./chunk-0a0vat1h.js";import"./chunk-z8v2tsz2.js";import"./chunk-j8efst22.js";import"./chunk-a1pw9r6f.js";import"./chunk-d5bxan80.js";import{Cl as b9,Xj as T9,lk as O6,mk as M0,rl as w9,tl as D9}from"./chunk-8tc8x27z.js";import{Pl as N9}from"./chunk-k7g3h9tn.js";import{cm as A0,lm as T$}from"./chunk-rmr38x2f.js";import"./chunk-5syxjhg3.js";import"./chunk-nj4d554m.js";import"./chunk-1t6bvbgy.js";import"./chunk-cmbxrgyx.js";import"./chunk-a1p2f16h.js";import"./chunk-nt4e3em9.js";import"./chunk-hk698g9e.js";import"./chunk-v965rsr8.js";import"./chunk-1sgby720.js";import"./chunk-5g8108nf.js";import"./chunk-4tbwha3m.js";import"./chunk-m612agnk.js";import"./chunk-yq3m8190.js";import"./chunk-btz9jvec.js";import"./chunk-cqtkxwd8.js";import"./chunk-fkgv2hqd.js";import"./chunk-zyhdxggp.js";import"./chunk-q6ztpfcs.js";import"./chunk-jm1ptn8n.js";import"./chunk-c5e6sk9c.js";import"./chunk-m02zt1a3.js";import"./chunk-vg2fmyje.js";import"./chunk-fzna6jdj.js";import"./chunk-x1rx6fm7.js";import"./chunk-4qqkqrn9.js";import"./chunk-j6emx6jn.js";import"./chunk-be216spx.js";import"./chunk-12bssxd4.js";import"./chunk-24xc0dvv.js";import{At as R6,Bt as L9,Gt as F9,xt as V9}from"./chunk-ebrt1me3.js";import{Hu as C6,Su as A9}from"./chunk-whxjkz9a.js";import"./chunk-89v6dgpp.js";import"./chunk-k309zez0.js";import"./chunk-09kba1hg.js";import"./chunk-t12xrrfr.js";import"./chunk-phxrg7aw.js";import{PI as M9}from"./chunk-snm5q21k.js";import"./chunk-xpc2zgj7.js";import"./chunk-qjjch1zt.js";import{$P as q0,aQ as D,dQ as E}from"./chunk-aztre27e.js";var JZ=D((zZ)=>{/*!
2
+ import{N as R9}from"./chunk-b3rpzkcb.js";import{Ed as E9}from"./chunk-07g7cybt.js";import{Fd as P6,Id as p$,Jd as S9,Kd as U9,Nd as H9,Od as q6}from"./chunk-jje0srjq.js";import"./chunk-27yxgy03.js";import{Rd as T0}from"./chunk-yajd975f.js";import{Vf as O}from"./chunk-7ppd2phw.js";import{Wg as j9,dh as I9,hh as E$}from"./chunk-ddnpx1yx.js";import"./chunk-wfs4pcwa.js";import"./chunk-p68rwmhc.js";import"./chunk-0a0vat1h.js";import"./chunk-z8v2tsz2.js";import"./chunk-j8efst22.js";import"./chunk-a1pw9r6f.js";import"./chunk-d5bxan80.js";import{Cl as b9,Xj as T9,lk as O6,mk as M0,rl as w9,tl as D9}from"./chunk-pvpy9kq1.js";import{Pl as N9}from"./chunk-wpajh5s5.js";import{cm as A0,lm as T$}from"./chunk-2ec6ps8r.js";import"./chunk-gj3hzx3d.js";import"./chunk-nj4d554m.js";import"./chunk-2gerf08b.js";import"./chunk-fqw4y7x0.js";import"./chunk-a1p2f16h.js";import"./chunk-nt4e3em9.js";import"./chunk-a0v55ywn.js";import"./chunk-v965rsr8.js";import"./chunk-1sgby720.js";import"./chunk-dcvatax2.js";import"./chunk-4tbwha3m.js";import"./chunk-m612agnk.js";import"./chunk-yq3m8190.js";import"./chunk-btz9jvec.js";import"./chunk-cqtkxwd8.js";import"./chunk-fkgv2hqd.js";import"./chunk-zyhdxggp.js";import"./chunk-q6ztpfcs.js";import"./chunk-jm1ptn8n.js";import"./chunk-c5e6sk9c.js";import"./chunk-m02zt1a3.js";import"./chunk-vg2fmyje.js";import"./chunk-sn4nez18.js";import"./chunk-42f7p0hq.js";import"./chunk-4qqkqrn9.js";import"./chunk-j6emx6jn.js";import"./chunk-be216spx.js";import"./chunk-12bssxd4.js";import"./chunk-z8r65yw3.js";import{At as R6,Bt as L9,Gt as F9,xt as V9}from"./chunk-3szwfy7w.js";import{Hu as C6,Su as A9}from"./chunk-whxjkz9a.js";import"./chunk-89v6dgpp.js";import"./chunk-k309zez0.js";import"./chunk-09kba1hg.js";import"./chunk-t12xrrfr.js";import"./chunk-phxrg7aw.js";import{PI as M9}from"./chunk-snm5q21k.js";import"./chunk-xpc2zgj7.js";import"./chunk-qjjch1zt.js";import{$P as q0,aQ as D,dQ as E}from"./chunk-aztre27e.js";var JZ=D((zZ)=>{/*!
3
3
  * content-type
4
4
  * Copyright(c) 2015 Douglas Christopher Wilson
5
5
  * MIT Licensed
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{Gl as a,Hl as b,Il as c,Jl as d,Kl as e,Ll as f,Ml as g,Nl as h,Ol as i}from"./chunk-k7g3h9tn.js";import"./chunk-5syxjhg3.js";import"./chunk-a1p2f16h.js";import"./chunk-1sgby720.js";import"./chunk-4qqkqrn9.js";import"./chunk-ebrt1me3.js";import"./chunk-whxjkz9a.js";import"./chunk-89v6dgpp.js";import"./chunk-k309zez0.js";import"./chunk-09kba1hg.js";import"./chunk-t12xrrfr.js";import"./chunk-phxrg7aw.js";import"./chunk-snm5q21k.js";import"./chunk-aztre27e.js";export{i as stopRefresh,h as startRefresh,g as refresh,d as readModelCatalogResponse,f as get,c as Provider,b as Model,a as MODEL_CATALOG_MAX_BYTES,e as Data};
2
+ import{Gl as a,Hl as b,Il as c,Jl as d,Kl as e,Ll as f,Ml as g,Nl as h,Ol as i}from"./chunk-wpajh5s5.js";import"./chunk-gj3hzx3d.js";import"./chunk-a1p2f16h.js";import"./chunk-1sgby720.js";import"./chunk-4qqkqrn9.js";import"./chunk-3szwfy7w.js";import"./chunk-whxjkz9a.js";import"./chunk-89v6dgpp.js";import"./chunk-k309zez0.js";import"./chunk-09kba1hg.js";import"./chunk-t12xrrfr.js";import"./chunk-phxrg7aw.js";import"./chunk-snm5q21k.js";import"./chunk-aztre27e.js";export{i as stopRefresh,h as startRefresh,g as refresh,d as readModelCatalogResponse,f as get,c as Provider,b as Model,a as MODEL_CATALOG_MAX_BYTES,e as Data};
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{bi as P}from"./chunk-p68rwmhc.js";import{Jp as o,Tp as k,Xp as u}from"./chunk-hk698g9e.js";import{pu as t,yu as L}from"./chunk-ebrt1me3.js";import{PI as j}from"./chunk-snm5q21k.js";class Q extends Error{cause;constructor(J,Z){super(J);this.name="ForgewiseError",this.cause=Z}}class K extends Q{constructor(J="Device flow is not supported by this issuer."){super(J);this.name="DeviceFlowUnsupportedError"}}var e=L.create({service:"forgewise.config"}),J1="https://accounts.forgewise.tech",Z1="forgewise-cli",b=!1,$1={defaultFallbacks:0};function D(...J){return J.find((Z)=>Z!==void 0&&Z.trim().length>0)}function X1(){return!!process.env.REPLIT_DEV_DOMAIN}async function H(){let J=process.env.ACCOUNTS_ISSUER,Z=process.env.FORGEWISE_CLIENT_ID;if(J&&Z)return{issuer:J.replace(/\/+$/,""),clientId:Z};let $,X;try{$=await k()}catch(N){$=void 0,X=N}let Y=D(J,$?.issuer,J1).replace(/\/+$/,""),V=D(Z,$?.clientId,Z1),x=D(J,$?.issuer)===void 0,G=D(Z,$?.clientId)===void 0;if((x||G)&&!b)b=!0,$1.defaultFallbacks++,e.warn("remote Forgewise coordinate lookup unavailable; falling back to baked-in defaults",{issuer:Y,clientId:V,usedDefaultIssuer:x,usedDefaultClientId:G,remoteError:X instanceof Error?X.message:X?String(X):void 0});return{issuer:Y,clientId:V}}function C(J,Z,$){if(J>=200&&J<300)return{kind:"success"};let X=Z?.error??"";if(X==="authorization_pending")return{kind:"wait",intervalMs:$};if(X==="slow_down")return{kind:"wait",intervalMs:$+5000};if(X==="access_denied")return{kind:"fatal",message:"Sign-in was denied in the browser."};if(X==="expired_token")return{kind:"fatal",message:"The sign-in code expired before it was approved. Try again."};return{kind:"fatal",message:`Device sign-in failed: ${Z?.error_description||X||`HTTP ${J}`}`}}import v from"http";var g="/callback",E=[51737,51738],_=new Set;function h(J){return J.replace(/[&<>\"']/g,(Z)=>{switch(Z){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";default:return"&#39;"}})}function R(J){return`http://127.0.0.1:${J}${g}`}async function V1(J){return new Promise((Z,$)=>{let X=v.createServer();X.listen(J,"127.0.0.1",()=>{X.close(()=>Z(J))}),X.on("error",$)})}async function d(){for(let J of E){if(_.has(J))continue;_.add(J);try{return await V1(J)}catch{_.delete(J)}}throw new Q(`Could not bind to any loopback port (tried ${E.join(", ")}). Free one of those ports and retry.`)}function m(J,Z,$,X){return new Promise((Y,V)=>{let x=()=>_.delete(J),G=v.createServer((q,W)=>{try{let z=new URL(q.url??"/",`http://localhost:${J}`);if(z.pathname!==g){W.writeHead(404),W.end();return}let B=z.searchParams.get("code"),M=z.searchParams.get("state"),O=z.searchParams.get("error"),U=z.searchParams.get("error_description");if(O){let r=`${h(O)}${U?": "+h(U):""}`;W.writeHead(200,{"Content-Type":"text/html"}),W.end(`<html><body style="font-family:sans-serif;padding:2rem"><h2>Authorization failed</h2><p>${r}</p><p>You can close this tab.</p></body></html>`),G.close(),V(new Q(`Authorization error: ${O}${U?" \u2014 "+U:""}`));return}if(!B||M!==Z){W.writeHead(400),W.end("Invalid request");return}W.writeHead(200,{"Content-Type":"text/html"}),W.end('<html><body style="font-family:sans-serif;padding:2rem"><h2>Signed in! You can close this tab.</h2><p>Return to your terminal to continue.</p></body></html>'),G.close(),Y({code:B})}catch(z){G.close(),V(z)}});if($?.aborted){x(),V(new Q("Login cancelled"));return}let N=()=>{x(),G.close(()=>V(new Q("Login cancelled")))};if($?.addEventListener("abort",N,{once:!0}),$?.aborted){N();return}G.listen(J,"127.0.0.1",()=>{x(),X?.()}),G.on("error",(q)=>{x(),V(q)})})}function p(J,Z){return new Promise(($,X)=>{if(Z?.aborted){X(new Q("Login cancelled"));return}let Y,V=()=>{clearTimeout(Y),Z?.removeEventListener("abort",V),X(new Q("Login cancelled"))};if(Y=setTimeout(()=>{Z?.removeEventListener("abort",V),$()},J),Z?.addEventListener("abort",V,{once:!0}),Z?.aborted)V()})}function T(J,Z=300000){if(!J)return!1;return Date.now()>=J-Z}async function Y1(J){let{issuer:Z}=await H();return u({issuer:Z,...J.accessToken?{accessToken:J.accessToken}:{}})}import F from"crypto";var c="openid profile email",w=(J)=>J.toString("base64url");function i(){let J=w(F.randomBytes(32)),Z=w(F.createHash("sha256").update(J).digest()),$=w(F.randomBytes(16));return{verifier:J,challenge:Z,state:$}}function l(J){let Z=new URL(`${J.issuer}/api/oauth/authorize`);return Z.searchParams.set("response_type","code"),Z.searchParams.set("client_id",J.clientId),Z.searchParams.set("redirect_uri",J.redirectUri),Z.searchParams.set("scope",c),Z.searchParams.set("state",J.state),Z.searchParams.set("code_challenge",J.challenge),Z.searchParams.set("code_challenge_method","S256"),Z.toString()}async function A(J,Z){let $=await fetch(`${J}/api/oauth/userinfo`,{headers:{Authorization:`Bearer ${Z.access_token}`}});if(!$.ok)throw new Q(`Failed to fetch user profile (${$.status})`);let X=await $.json();if(!X.sub)throw new Q("Userinfo response is missing required 'sub' field \u2014 the server returned an invalid user profile.");return{sub:X.sub,name:X.name??"",email:X.email??"",access_token:Z.access_token,expires_at:Date.now()+(Z.expires_in??3600)*1000,...Z.refresh_token?{refresh_token:Z.refresh_token}:{}}}async function y(J){let Z=await fetch(`${J.issuer}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"authorization_code",code:J.code,redirect_uri:J.redirectUri,client_id:J.clientId,code_verifier:J.verifier}).toString(),signal:J.signal??null});if(!Z.ok){let X=await Z.text().catch(()=>"");throw new Q(`Token exchange failed (${Z.status}): ${X}`)}let $=await Z.json();return A(J.issuer,$)}async function x1(J,Z,$=5000){let X=new AbortController,Y=setTimeout(()=>X.abort(),$);try{let V=await fetch(`${J}/api/oauth/userinfo`,{headers:{Authorization:`Bearer ${Z}`},signal:X.signal});if(V.status===401||V.status===403)return!1;if(!V.ok)return null;return!0}catch{return null}finally{clearTimeout(Y)}}async function f(J){let{issuer:Z,clientId:$}=await H(),X;try{X=await fetch(`${Z}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"refresh_token",client_id:$,refresh_token:J}).toString()})}catch(V){throw new Q(`Could not reach the sign-in server to refresh the session: ${V instanceof Error?V.message:String(V)}`,V)}if(!X.ok){let V=await X.json().catch(()=>{return});if(V?.error==="invalid_grant")return"invalid_grant";throw new Q(`Token refresh failed (${X.status}): ${V?.error??""}`)}let Y=await X.json();return A(Z,Y)}async function a(J){let Z;try{Z=await fetch(`${J.issuer}/api/oauth/device_authorization`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:J.clientId,scope:c}).toString(),signal:J.signal??null})}catch{if(J.signal?.aborted)throw new Q("Login cancelled");throw new K}if(Z.status===404||Z.status===405||Z.status===501)throw new K;if(!Z.ok){let X=await Z.text().catch(()=>"");throw new Q(`Device authorization failed (${Z.status}): ${X}`)}let $;try{$=await Z.json()}catch{throw new K}if(!$.device_code||!$.user_code||!$.verification_uri)throw new K;return{deviceCode:$.device_code,info:{userCode:$.user_code,verificationUri:$.verification_uri,verificationUriComplete:$.verification_uri_complete,expiresAt:Date.now()+($.expires_in??900)*1000},intervalMs:Math.max(1,$.interval??5)*1000}}async function n(J){let Z;try{Z=await fetch(`${J.issuer}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",device_code:J.deviceCode,client_id:J.clientId}).toString(),signal:J.signal??null})}catch{if(J.signal?.aborted)throw new Q("Login cancelled");return{kind:"wait",intervalMs:J.currentIntervalMs}}let $;try{$=await Z.json()}catch{$=void 0}let X=C(Z.status,$,J.currentIntervalMs);if(X.kind==="success"){if(!$?.access_token)throw new Q("Token endpoint returned success without an access_token.");return{kind:"success",profile:await A(J.issuer,{access_token:$.access_token,expires_in:$.expires_in})}}if(X.kind==="fatal")throw new Q(X.message);return{kind:"wait",intervalMs:X.intervalMs}}var I="forgewise",G1=()=>j.gen(function*(){let J=yield*o.Service,Z=yield*J.get(I);if(!Z||Z.type!=="api")return;let $=Z.metadata??{},X=$.access_token;if(!X)return;let Y=Number($.access_token_expires_at??0);if(!T(Y))return X;let V=$.refresh_token;if(!V)return;let x=yield*j.promise(()=>f(V).catch(()=>null));if(!x||x==="invalid_grant")return;let G=yield*J.get(I);if(!G||G.type!=="api"||G.key!==Z.key)return x.access_token;let N={...G,metadata:{...G.metadata??{},access_token:x.access_token,access_token_expires_at:String(x.expires_at),...x.refresh_token?{refresh_token:x.refresh_token}:{}}};return yield*j.orElseSucceed(J.set(I,N),()=>{return}),x.access_token}),Q1=(J)=>j.gen(function*(){if(J.method==="sso")return{key:J.key,method:"sso",accessToken:J.key};let Z=yield*G1();return{key:J.key,method:"api-key",accessToken:Z}});var W1=300000;async function s(){let{issuer:J,clientId:Z}=await H(),{verifier:$,challenge:X,state:Y}=i(),V=await d(),x=R(V),G=l({issuer:J,clientId:Z,redirectUri:x,challenge:X,state:Y});return{issuer:J,clientId:Z,verifier:$,port:V,redirectUri:x,authorizeStr:G,state:Y}}async function z1(J){let{issuer:Z,clientId:$}=await H(),{deviceCode:X,info:Y,intervalMs:V}=await a({issuer:Z,clientId:$,signal:J.signal});if(J.onCode(Y),J.tryOpen){let G=Y.verificationUriComplete??Y.verificationUri;P(G)}let x=V;while(Date.now()<Y.expiresAt){await p(x,J.signal);let G=await n({issuer:Z,clientId:$,deviceCode:X,currentIntervalMs:x,signal:J.signal});if(G.kind==="success")return G.profile;x=G.intervalMs}throw new Q("The sign-in code expired before it was approved. Try again.")}async function N1(){let{issuer:J,clientId:Z,verifier:$,port:X,redirectUri:Y,authorizeStr:V,state:x}=await s();process.stdout.write(`
2
+ import{bi as P}from"./chunk-p68rwmhc.js";import{Jp as o,Tp as k,Xp as u}from"./chunk-a0v55ywn.js";import{pu as t,yu as L}from"./chunk-3szwfy7w.js";import{PI as j}from"./chunk-snm5q21k.js";class Q extends Error{cause;constructor(J,Z){super(J);this.name="ForgewiseError",this.cause=Z}}class K extends Q{constructor(J="Device flow is not supported by this issuer."){super(J);this.name="DeviceFlowUnsupportedError"}}var e=L.create({service:"forgewise.config"}),J1="https://accounts.forgewise.tech",Z1="forgewise-cli",b=!1,$1={defaultFallbacks:0};function D(...J){return J.find((Z)=>Z!==void 0&&Z.trim().length>0)}function X1(){return!!process.env.REPLIT_DEV_DOMAIN}async function H(){let J=process.env.ACCOUNTS_ISSUER,Z=process.env.FORGEWISE_CLIENT_ID;if(J&&Z)return{issuer:J.replace(/\/+$/,""),clientId:Z};let $,X;try{$=await k()}catch(N){$=void 0,X=N}let Y=D(J,$?.issuer,J1).replace(/\/+$/,""),V=D(Z,$?.clientId,Z1),x=D(J,$?.issuer)===void 0,G=D(Z,$?.clientId)===void 0;if((x||G)&&!b)b=!0,$1.defaultFallbacks++,e.warn("remote Forgewise coordinate lookup unavailable; falling back to baked-in defaults",{issuer:Y,clientId:V,usedDefaultIssuer:x,usedDefaultClientId:G,remoteError:X instanceof Error?X.message:X?String(X):void 0});return{issuer:Y,clientId:V}}function C(J,Z,$){if(J>=200&&J<300)return{kind:"success"};let X=Z?.error??"";if(X==="authorization_pending")return{kind:"wait",intervalMs:$};if(X==="slow_down")return{kind:"wait",intervalMs:$+5000};if(X==="access_denied")return{kind:"fatal",message:"Sign-in was denied in the browser."};if(X==="expired_token")return{kind:"fatal",message:"The sign-in code expired before it was approved. Try again."};return{kind:"fatal",message:`Device sign-in failed: ${Z?.error_description||X||`HTTP ${J}`}`}}import v from"http";var g="/callback",E=[51737,51738],_=new Set;function h(J){return J.replace(/[&<>\"']/g,(Z)=>{switch(Z){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";default:return"&#39;"}})}function R(J){return`http://127.0.0.1:${J}${g}`}async function V1(J){return new Promise((Z,$)=>{let X=v.createServer();X.listen(J,"127.0.0.1",()=>{X.close(()=>Z(J))}),X.on("error",$)})}async function d(){for(let J of E){if(_.has(J))continue;_.add(J);try{return await V1(J)}catch{_.delete(J)}}throw new Q(`Could not bind to any loopback port (tried ${E.join(", ")}). Free one of those ports and retry.`)}function m(J,Z,$,X){return new Promise((Y,V)=>{let x=()=>_.delete(J),G=v.createServer((q,W)=>{try{let z=new URL(q.url??"/",`http://localhost:${J}`);if(z.pathname!==g){W.writeHead(404),W.end();return}let B=z.searchParams.get("code"),M=z.searchParams.get("state"),O=z.searchParams.get("error"),U=z.searchParams.get("error_description");if(O){let r=`${h(O)}${U?": "+h(U):""}`;W.writeHead(200,{"Content-Type":"text/html"}),W.end(`<html><body style="font-family:sans-serif;padding:2rem"><h2>Authorization failed</h2><p>${r}</p><p>You can close this tab.</p></body></html>`),G.close(),V(new Q(`Authorization error: ${O}${U?" \u2014 "+U:""}`));return}if(!B||M!==Z){W.writeHead(400),W.end("Invalid request");return}W.writeHead(200,{"Content-Type":"text/html"}),W.end('<html><body style="font-family:sans-serif;padding:2rem"><h2>Signed in! You can close this tab.</h2><p>Return to your terminal to continue.</p></body></html>'),G.close(),Y({code:B})}catch(z){G.close(),V(z)}});if($?.aborted){x(),V(new Q("Login cancelled"));return}let N=()=>{x(),G.close(()=>V(new Q("Login cancelled")))};if($?.addEventListener("abort",N,{once:!0}),$?.aborted){N();return}G.listen(J,"127.0.0.1",()=>{x(),X?.()}),G.on("error",(q)=>{x(),V(q)})})}function p(J,Z){return new Promise(($,X)=>{if(Z?.aborted){X(new Q("Login cancelled"));return}let Y,V=()=>{clearTimeout(Y),Z?.removeEventListener("abort",V),X(new Q("Login cancelled"))};if(Y=setTimeout(()=>{Z?.removeEventListener("abort",V),$()},J),Z?.addEventListener("abort",V,{once:!0}),Z?.aborted)V()})}function T(J,Z=300000){if(!J)return!1;return Date.now()>=J-Z}async function Y1(J){let{issuer:Z}=await H();return u({issuer:Z,...J.accessToken?{accessToken:J.accessToken}:{}})}import F from"crypto";var c="openid profile email",w=(J)=>J.toString("base64url");function i(){let J=w(F.randomBytes(32)),Z=w(F.createHash("sha256").update(J).digest()),$=w(F.randomBytes(16));return{verifier:J,challenge:Z,state:$}}function l(J){let Z=new URL(`${J.issuer}/api/oauth/authorize`);return Z.searchParams.set("response_type","code"),Z.searchParams.set("client_id",J.clientId),Z.searchParams.set("redirect_uri",J.redirectUri),Z.searchParams.set("scope",c),Z.searchParams.set("state",J.state),Z.searchParams.set("code_challenge",J.challenge),Z.searchParams.set("code_challenge_method","S256"),Z.toString()}async function A(J,Z){let $=await fetch(`${J}/api/oauth/userinfo`,{headers:{Authorization:`Bearer ${Z.access_token}`}});if(!$.ok)throw new Q(`Failed to fetch user profile (${$.status})`);let X=await $.json();if(!X.sub)throw new Q("Userinfo response is missing required 'sub' field \u2014 the server returned an invalid user profile.");return{sub:X.sub,name:X.name??"",email:X.email??"",access_token:Z.access_token,expires_at:Date.now()+(Z.expires_in??3600)*1000,...Z.refresh_token?{refresh_token:Z.refresh_token}:{}}}async function y(J){let Z=await fetch(`${J.issuer}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"authorization_code",code:J.code,redirect_uri:J.redirectUri,client_id:J.clientId,code_verifier:J.verifier}).toString(),signal:J.signal??null});if(!Z.ok){let X=await Z.text().catch(()=>"");throw new Q(`Token exchange failed (${Z.status}): ${X}`)}let $=await Z.json();return A(J.issuer,$)}async function x1(J,Z,$=5000){let X=new AbortController,Y=setTimeout(()=>X.abort(),$);try{let V=await fetch(`${J}/api/oauth/userinfo`,{headers:{Authorization:`Bearer ${Z}`},signal:X.signal});if(V.status===401||V.status===403)return!1;if(!V.ok)return null;return!0}catch{return null}finally{clearTimeout(Y)}}async function f(J){let{issuer:Z,clientId:$}=await H(),X;try{X=await fetch(`${Z}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"refresh_token",client_id:$,refresh_token:J}).toString()})}catch(V){throw new Q(`Could not reach the sign-in server to refresh the session: ${V instanceof Error?V.message:String(V)}`,V)}if(!X.ok){let V=await X.json().catch(()=>{return});if(V?.error==="invalid_grant")return"invalid_grant";throw new Q(`Token refresh failed (${X.status}): ${V?.error??""}`)}let Y=await X.json();return A(Z,Y)}async function a(J){let Z;try{Z=await fetch(`${J.issuer}/api/oauth/device_authorization`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:J.clientId,scope:c}).toString(),signal:J.signal??null})}catch{if(J.signal?.aborted)throw new Q("Login cancelled");throw new K}if(Z.status===404||Z.status===405||Z.status===501)throw new K;if(!Z.ok){let X=await Z.text().catch(()=>"");throw new Q(`Device authorization failed (${Z.status}): ${X}`)}let $;try{$=await Z.json()}catch{throw new K}if(!$.device_code||!$.user_code||!$.verification_uri)throw new K;return{deviceCode:$.device_code,info:{userCode:$.user_code,verificationUri:$.verification_uri,verificationUriComplete:$.verification_uri_complete,expiresAt:Date.now()+($.expires_in??900)*1000},intervalMs:Math.max(1,$.interval??5)*1000}}async function n(J){let Z;try{Z=await fetch(`${J.issuer}/api/oauth/token`,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",device_code:J.deviceCode,client_id:J.clientId}).toString(),signal:J.signal??null})}catch{if(J.signal?.aborted)throw new Q("Login cancelled");return{kind:"wait",intervalMs:J.currentIntervalMs}}let $;try{$=await Z.json()}catch{$=void 0}let X=C(Z.status,$,J.currentIntervalMs);if(X.kind==="success"){if(!$?.access_token)throw new Q("Token endpoint returned success without an access_token.");return{kind:"success",profile:await A(J.issuer,{access_token:$.access_token,expires_in:$.expires_in})}}if(X.kind==="fatal")throw new Q(X.message);return{kind:"wait",intervalMs:X.intervalMs}}var I="forgewise",G1=()=>j.gen(function*(){let J=yield*o.Service,Z=yield*J.get(I);if(!Z||Z.type!=="api")return;let $=Z.metadata??{},X=$.access_token;if(!X)return;let Y=Number($.access_token_expires_at??0);if(!T(Y))return X;let V=$.refresh_token;if(!V)return;let x=yield*j.promise(()=>f(V).catch(()=>null));if(!x||x==="invalid_grant")return;let G=yield*J.get(I);if(!G||G.type!=="api"||G.key!==Z.key)return x.access_token;let N={...G,metadata:{...G.metadata??{},access_token:x.access_token,access_token_expires_at:String(x.expires_at),...x.refresh_token?{refresh_token:x.refresh_token}:{}}};return yield*j.orElseSucceed(J.set(I,N),()=>{return}),x.access_token}),Q1=(J)=>j.gen(function*(){if(J.method==="sso")return{key:J.key,method:"sso",accessToken:J.key};let Z=yield*G1();return{key:J.key,method:"api-key",accessToken:Z}});var W1=300000;async function s(){let{issuer:J,clientId:Z}=await H(),{verifier:$,challenge:X,state:Y}=i(),V=await d(),x=R(V),G=l({issuer:J,clientId:Z,redirectUri:x,challenge:X,state:Y});return{issuer:J,clientId:Z,verifier:$,port:V,redirectUri:x,authorizeStr:G,state:Y}}async function z1(J){let{issuer:Z,clientId:$}=await H(),{deviceCode:X,info:Y,intervalMs:V}=await a({issuer:Z,clientId:$,signal:J.signal});if(J.onCode(Y),J.tryOpen){let G=Y.verificationUriComplete??Y.verificationUri;P(G)}let x=V;while(Date.now()<Y.expiresAt){await p(x,J.signal);let G=await n({issuer:Z,clientId:$,deviceCode:X,currentIntervalMs:x,signal:J.signal});if(G.kind==="success")return G.profile;x=G.intervalMs}throw new Q("The sign-in code expired before it was approved. Try again.")}async function N1(){let{issuer:J,clientId:Z,verifier:$,port:X,redirectUri:Y,authorizeStr:V,state:x}=await s();process.stdout.write(`
3
3
  `),process.stdout.write(` Opening Forgewise sign-in in your browser...
4
4
  `),process.stdout.write(" Sign-in URL: "+V+`
5
5
  `),process.stdout.write(`