9remote 2.1.20 → 2.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.cjs +2 -2
- package/dist/server.cjs +15 -15
- package/dist/ui/assets/{index-UFRGjGeL.js → index-BRA8JHNZ.js} +3805 -3805
- package/dist/ui/index.html +1 -1
- package/package.json +1 -1
package/dist/server.cjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const __importMetaUrl = require('url').pathToFileURL(__filename).href;
|
|
2
|
-
var oM=Object.create;var Ya=Object.defineProperty;var aM=Object.getOwnPropertyDescriptor;var cM=Object.getOwnPropertyNames;var lM=Object.getPrototypeOf,uM=Object.prototype.hasOwnProperty;var ke=(r,e)=>()=>(r&&(e=r(r=0)),e);var A=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),rn=(r,e)=>{for(var t in e)Ya(r,t,{get:e[t],enumerable:!0})},Dv=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cM(e))!uM.call(r,i)&&i!==t&&Ya(r,i,{get:()=>e[i],enumerable:!(n=aM(e,i))||n.enumerable});return r};var W=(r,e,t)=>(t=r!=null?oM(lM(r)):{},Dv(e||!r||!r.__esModule?Ya(t,"default",{value:r,enumerable:!0}):t,r)),pM=r=>Dv(Ya({},"__esModule",{value:!0}),r);var Hi={};rn(Hi,{createRouter:()=>jp,jsonErr:()=>
|
|
2
|
+
var oM=Object.create;var Ya=Object.defineProperty;var aM=Object.getOwnPropertyDescriptor;var cM=Object.getOwnPropertyNames;var lM=Object.getPrototypeOf,uM=Object.prototype.hasOwnProperty;var ke=(r,e)=>()=>(r&&(e=r(r=0)),e);var A=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),rn=(r,e)=>{for(var t in e)Ya(r,t,{get:e[t],enumerable:!0})},Dv=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cM(e))!uM.call(r,i)&&i!==t&&Ya(r,i,{get:()=>e[i],enumerable:!(n=aM(e,i))||n.enumerable});return r};var W=(r,e,t)=>(t=r!=null?oM(lM(r)):{},Dv(e||!r||!r.__esModule?Ya(t,"default",{value:r,enumerable:!0}):t,r)),pM=r=>Dv(Ya({},"__esModule",{value:!0}),r);var Hi={};rn(Hi,{createRouter:()=>jp,jsonErr:()=>ue,jsonOk:()=>Z,parseJsonBody:()=>jt});function CM(r){return new Promise(e=>{let t="";r.on("data",n=>t+=n),r.on("end",()=>e(t))})}function Z(r,e={ok:!0}){r.setHeader("Content-Type","application/json"),r.writeHead(200),r.end(JSON.stringify(e))}function ue(r,e,t){r.setHeader("Content-Type","application/json"),r.writeHead(e),r.end(JSON.stringify({error:t}))}async function jt(r,e){try{let t=await CM(r);return JSON.parse(t||"{}")}catch{return ue(e,400,"Invalid JSON"),null}}function jp(r,{fallback:e}={}){let t=new Map,n=[];for(let a of r){let c=a.method==="*"?["GET","POST","PUT","DELETE"]:[a.method];for(let l of c)a.path.endsWith("/*")?n.push({...a,prefix:a.path.slice(0,-2),method:l}):t.set(`${l}:${a.path}`,a)}let i=new Set,s=[];for(let a of r)a.public&&(a.path.endsWith("/*")?s.push(a.path.slice(0,-2)):i.add(a.path));function o(a){return i.has(a)?!0:s.some(c=>a.startsWith(c))}return async(a,c)=>{let l=(0,Vv.parse)(a.url,!0),{pathname:u,search:f}=l,d=!!a.headers["cf-connecting-ip"],g=a.socket.remoteAddress==="127.0.0.1"||a.socket.remoteAddress==="::1";if(!o(u)&&(d||!g)){ue(c,403,"Forbidden");return}let y=`${a.method}:${u}`,b=t.get(y);if(b){try{await b.handler(a,c,{pathname:u,query:l.query,search:f})}catch(C){console.error("Error:",a.url,C),ue(c,500,C.message)}return}for(let C of n)if(C.method===a.method&&u.startsWith(C.prefix)){try{await C.handler(a,c,{pathname:u,query:l.query,search:f})}catch(R){console.error("Error:",a.url,R),ue(c,500,R.message)}return}if(e){try{await e(a,c,{pathname:u,search:f})}catch(C){console.error("Error:",a.url,C),ue(c,500,C.message)}return}ue(c,404,"Not found")}}var Vv,Ft=ke(()=>{Vv=require("url")});function wo(r,e={}){return fetch(r,{...e,headers:{...RM,...e.headers}})}var ec,nn,Yv,Wi,Up,kM,Nn,ie,Xv,Fp,AM,Qa,Kv,xo,tc,_o,qp,ti,Jv,Zv,Qv,bo,ey,ty,RM,St=ke(()=>{ec=W(require("dns"),1),nn=W(require("path"),1),Yv=W(require("os"),1),Wi="9remote",Up=process.env.NREMOTE_REGISTRY||`https://registry.npmjs.org/${Wi}/latest`,kM=`${Wi}@latest`,Nn=nn.default.join(Yv.default.homedir(),".9remote"),ie={ROOT:Nn,LOGS:nn.default.join(Nn,"logs"),STATE:nn.default.join(Nn,"state"),CONFIG:nn.default.join(Nn,"config"),BIN:nn.default.join(Nn,"bin"),PIDS:nn.default.join(Nn,"pids"),BUFFERS:nn.default.join(Nn,"buffers"),DAEMON:nn.default.join(Nn,"daemon")},Xv=new ec.default.promises.Resolver;Xv.setServers(["1.1.1.1","1.0.0.1","8.8.8.8"]);Fp=ec.default.lookup,AM=/^(\d{1,3}\.){3}\d{1,3}$|^::1$|^[0-9a-f:]+$/i;ec.default.lookup=(r,e,t)=>{if(typeof e=="function"&&(t=e,e={}),r==="localhost"||AM.test(r))return Fp(r,e,t);Xv.resolve4(r).then(n=>{if(!n?.length)return Fp(r,e,t);e.all?t(null,n.map(i=>({address:i,family:4}))):t(null,n[0],4)}).catch(()=>Fp(r,e,t))};Qa=2208,Kv=5173,xo="local-ui",tc=[`http://localhost:${Qa}`,`http://127.0.0.1:${Qa}`,`http://localhost:${Kv}`,`http://127.0.0.1:${Kv}`],_o={fileName:"agent.log",rotatedName:"agent.log.1",maxBytes:2*1024*1024,cleanupAfterDays:7},qp=60,ti={STOPPED:0,PREPARING:1,CONNECTING:2,TUNNELING:3,VERIFYING:4,READY:5},Jv=5e3,Zv=1e3,Qv=6e4,bo={CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN:"1"},ey=["claude","codex","gemini","opencode","grok","cursor","antigravity","kiro","copilot","codebuddy","factory","qoder","rovodev","hermes","amp","pi"],ty={claude:"Claude",codex:"Codex",gemini:"Gemini",opencode:"OpenCode",grok:"Grok",cursor:"Cursor",antigravity:"Antigravity",kiro:"Kiro",copilot:"Copilot",codebuddy:"CodeBuddy",factory:"Factory",qoder:"Qoder",rovodev:"Rovo Dev",hermes:"Hermes",amp:"Amp",pi:"Pi"},RM={Accept:"application/json, text/plain, */*","Accept-Language":"en-US,en;q=0.9","Cache-Control":"no-cache",Pragma:"no-cache","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}});function OM(){jr.default.existsSync(rc)||jr.default.mkdirSync(rc,{recursive:!0})}function MM(){try{if(jr.default.statSync(nc).size<_o.maxBytes)return;try{jr.default.rmSync(ic,{force:!0})}catch{}jr.default.renameSync(nc,ic)}catch{}}function PM(){try{let r=jr.default.statSync(ic);Date.now()-r.mtimeMs>_o.cleanupAfterDays*864e5&&jr.default.rmSync(ic,{force:!0})}catch{}}function Gp(r){try{MM(),jr.default.appendFileSync(nc,r+`
|
|
3
3
|
`)}catch{}}function $p(r){return r.map(e=>{if(e instanceof Error)return e.stack||e.message;if(typeof e=="object")try{return JSON.stringify(e)}catch{return String(e)}return String(e)}).join(" ")}function ny(){let r=new Date,e=(t,n=2)=>String(t).padStart(n,"0");return`${e(r.getHours())}:${e(r.getMinutes())}:${e(r.getSeconds())}.${e(r.getMilliseconds(),3)}`}function DM(r){return String(r).replace(IM,"").replace(NM,"").replace(/\s+$/g,"")}function So(r,e,t){let n=DM(t);if(!n)return;let i=e==="info"?r:`${r}:${e}`,s=`${ny()} [${i}] ${n}`;if(Gp(s),Hp)try{Hp(s)}catch{}}function LM(){process.on("uncaughtException",r=>So("crash","error",`uncaughtException: ${r?.stack||r?.message||r}`)),process.on("unhandledRejection",r=>{let e=r instanceof Error?r.stack||r.message:String(r);So("crash","error",`unhandledRejection: ${e}`)}),process.on("exit",r=>Gp(`${ny()} [exit] code=${r} pid=${process.pid}`))}function iy(){ry||(ry=!0,OM(),PM(),Gp(`
|
|
4
4
|
=== SESSION ${new Date().toISOString()} pid=${process.pid} argv=${process.argv.slice(2).join(" ")} ===`),LM())}function sy(r){Hp=r}function oy(r=60){try{return jr.default.readFileSync(nc,"utf8").split(`
|
|
5
|
-
`).filter(Boolean).slice(-r)}catch{return[]}}function Fr(r){return{info:(...e)=>So(r,"info",$p(e)),warn:(...e)=>So(r,"warn",$p(e)),error:(...e)=>So(r,"error",$p(e))}}var jr,Wp,rc,nc,ic,ry,Hp,IM,NM,ri=ke(()=>{jr=W(require("fs"),1),Wp=W(require("path"),1);St();rc=ie.LOGS,nc=Wp.default.join(rc,_o.fileName),ic=Wp.default.join(rc,_o.rotatedName),ry=!1,Hp=null;IM=/\x1b\[[0-9;]*m/g,NM=/https?:\/\/[^\s]+/g});var uy=A((g6,zp)=>{"use strict";zp.exports=ly;zp.exports.preferredCharsets=ly;var BM=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function jM(r){for(var e=r.split(","),t=0,n=0;t<e.length;t++){var i=FM(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function FM(r,e){var t=BM.exec(r);if(!t)return null;var n=t[1],i=1;if(t[2])for(var s=t[2].split(";"),o=0;o<s.length;o++){var a=s[o].trim().split("=");if(a[0]==="q"){i=parseFloat(a[1]);break}}return{charset:n,q:i,i:e}}function UM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=qM(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function qM(r,e,t){var n=0;if(e.charset.toLowerCase()===r.toLowerCase())n|=1;else if(e.charset!=="*")return null;return{i:t,o:e.i,q:e.q,s:n}}function ly(r,e){var t=jM(r===void 0?"*":r||"");if(!e)return t.filter(cy).sort(ay).map($M);var n=e.map(function(s,o){return UM(s,t,o)});return n.filter(cy).sort(ay).map(function(s){return e[n.indexOf(s)]})}function ay(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function $M(r){return r.charset}function cy(r){return r.q>0}});var my=A((v6,Vp)=>{"use strict";Vp.exports=hy;Vp.exports.preferredEncodings=hy;var HM=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function WM(r){for(var e=r.split(","),t=!1,n=1,i=0,s=0;i<e.length;i++){var o=GM(e[i].trim(),i);o&&(e[s++]=o,t=t||dy("identity",o),n=Math.min(n,o.q||1))}return t||(e[s++]={encoding:"identity",q:n,i}),e.length=s,e}function GM(r,e){var t=HM.exec(r);if(!t)return null;var n=t[1],i=1;if(t[2])for(var s=t[2].split(";"),o=0;o<s.length;o++){var a=s[o].trim().split("=");if(a[0]==="q"){i=parseFloat(a[1]);break}}return{encoding:n,q:i,i:e}}function zM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=dy(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function dy(r,e,t){var n=0;if(e.encoding.toLowerCase()===r.toLowerCase())n|=1;else if(e.encoding!=="*")return null;return{i:t,o:e.i,q:e.q,s:n}}function hy(r,e){var t=WM(r||"");if(!e)return t.filter(fy).sort(py).map(VM);var n=e.map(function(s,o){return zM(s,t,o)});return n.filter(fy).sort(py).map(function(s){return e[n.indexOf(s)]})}function py(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function VM(r){return r.encoding}function fy(r){return r.q>0}});var _y=A((y6,Kp)=>{"use strict";Kp.exports=xy;Kp.exports.preferredLanguages=xy;var KM=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function YM(r){for(var e=r.split(","),t=0,n=0;t<e.length;t++){var i=yy(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function yy(r,e){var t=KM.exec(r);if(!t)return null;var n=t[1],i=t[2],s=n;i&&(s+="-"+i);var o=1;if(t[3])for(var a=t[3].split(";"),c=0;c<a.length;c++){var l=a[c].split("=");l[0]==="q"&&(o=parseFloat(l[1]))}return{prefix:n,suffix:i,q:o,i:e,full:s}}function XM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=JM(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function JM(r,e,t){var n=yy(r);if(!n)return null;var i=0;if(e.full.toLowerCase()===n.full.toLowerCase())i|=4;else if(e.prefix.toLowerCase()===n.full.toLowerCase())i|=2;else if(e.full.toLowerCase()===n.prefix.toLowerCase())i|=1;else if(e.full!=="*")return null;return{i:t,o:e.i,q:e.q,s:i}}function xy(r,e){var t=YM(r===void 0?"*":r||"");if(!e)return t.filter(vy).sort(gy).map(ZM);var n=e.map(function(s,o){return XM(s,t,o)});return n.filter(vy).sort(gy).map(function(s){return e[n.indexOf(s)]})}function gy(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function ZM(r){return r.full}function vy(r){return r.q>0}});var Cy=A((x6,Yp)=>{"use strict";Yp.exports=Ey;Yp.exports.preferredMediaTypes=Ey;var QM=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function eP(r){for(var e=sP(r),t=0,n=0;t<e.length;t++){var i=Sy(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function Sy(r,e){var t=QM.exec(r);if(!t)return null;var n=Object.create(null),i=1,s=t[2],o=t[1];if(t[3])for(var a=oP(t[3]).map(iP),c=0;c<a.length;c++){var l=a[c],u=l[0].toLowerCase(),f=l[1],d=f&&f[0]==='"'&&f[f.length-1]==='"'?f.substr(1,f.length-2):f;if(u==="q"){i=parseFloat(d);break}n[u]=d}return{type:o,subtype:s,params:n,q:i,i:e}}function tP(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=rP(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function rP(r,e,t){var n=Sy(r),i=0;if(!n)return null;if(e.type.toLowerCase()==n.type.toLowerCase())i|=4;else if(e.type!="*")return null;if(e.subtype.toLowerCase()==n.subtype.toLowerCase())i|=2;else if(e.subtype!="*")return null;var s=Object.keys(e.params);if(s.length>0)if(s.every(function(o){return e.params[o]=="*"||(e.params[o]||"").toLowerCase()==(n.params[o]||"").toLowerCase()}))i|=1;else return null;return{i:t,o:e.i,q:e.q,s:i}}function Ey(r,e){var t=eP(r===void 0?"*/*":r||"");if(!e)return t.filter(wy).sort(by).map(nP);var n=e.map(function(s,o){return tP(s,t,o)});return n.filter(wy).sort(by).map(function(s){return e[n.indexOf(s)]})}function by(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function nP(r){return r.type+"/"+r.subtype}function wy(r){return r.q>0}function Ty(r){for(var e=0,t=0;(t=r.indexOf('"',t))!==-1;)e++,t++;return e}function iP(r){var e=r.indexOf("="),t,n;return e===-1?t=r:(t=r.substr(0,e),n=r.substr(e+1)),[t,n]}function sP(r){for(var e=r.split(","),t=1,n=0;t<e.length;t++)Ty(e[n])%2==0?e[++n]=e[t]:e[n]+=","+e[t];return e.length=n+1,e}function oP(r){for(var e=r.split(";"),t=1,n=0;t<e.length;t++)Ty(e[n])%2==0?e[++n]=e[t]:e[n]+=";"+e[t];e.length=n+1;for(var t=0;t<e.length;t++)e[t]=e[t].trim();return e}});var ky=A((_6,Xp)=>{"use strict";var aP=uy(),cP=my(),lP=_y(),uP=Cy();Xp.exports=pe;Xp.exports.Negotiator=pe;function pe(r){if(!(this instanceof pe))return new pe(r);this.request=r}pe.prototype.charset=function(e){var t=this.charsets(e);return t&&t[0]};pe.prototype.charsets=function(e){return aP(this.request.headers["accept-charset"],e)};pe.prototype.encoding=function(e){var t=this.encodings(e);return t&&t[0]};pe.prototype.encodings=function(e){return cP(this.request.headers["accept-encoding"],e)};pe.prototype.language=function(e){var t=this.languages(e);return t&&t[0]};pe.prototype.languages=function(e){return lP(this.request.headers["accept-language"],e)};pe.prototype.mediaType=function(e){var t=this.mediaTypes(e);return t&&t[0]};pe.prototype.mediaTypes=function(e){return uP(this.request.headers.accept,e)};pe.prototype.preferredCharset=pe.prototype.charset;pe.prototype.preferredCharsets=pe.prototype.charsets;pe.prototype.preferredEncoding=pe.prototype.encoding;pe.prototype.preferredEncodings=pe.prototype.encodings;pe.prototype.preferredLanguage=pe.prototype.language;pe.prototype.preferredLanguages=pe.prototype.languages;pe.prototype.preferredMediaType=pe.prototype.mediaType;pe.prototype.preferredMediaTypes=pe.prototype.mediaTypes});var Ay=A((b6,pP)=>{pP.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var Oy=A((w6,Ry)=>{Ry.exports=Ay()});var Iy=A(Ut=>{"use strict";var sc=Oy(),fP=require("path").extname,My=/^\s*([^;\s]*)(?:;|\s|$)/,dP=/^text\//i;Ut.charset=Py;Ut.charsets={lookup:Py};Ut.contentType=hP;Ut.extension=mP;Ut.extensions=Object.create(null);Ut.lookup=gP;Ut.types=Object.create(null);vP(Ut.extensions,Ut.types);function Py(r){if(!r||typeof r!="string")return!1;var e=My.exec(r),t=e&&sc[e[1].toLowerCase()];return t&&t.charset?t.charset:e&&dP.test(e[1])?"UTF-8":!1}function hP(r){if(!r||typeof r!="string")return!1;var e=r.indexOf("/")===-1?Ut.lookup(r):r;if(!e)return!1;if(e.indexOf("charset")===-1){var t=Ut.charset(e);t&&(e+="; charset="+t.toLowerCase())}return e}function mP(r){if(!r||typeof r!="string")return!1;var e=My.exec(r),t=e&&Ut.extensions[e[1].toLowerCase()];return!t||!t.length?!1:t[0]}function gP(r){if(!r||typeof r!="string")return!1;var e=fP("x."+r).toLowerCase().substr(1);return e&&Ut.types[e]||!1}function vP(r,e){var t=["nginx","apache",void 0,"iana"];Object.keys(sc).forEach(function(i){var s=sc[i],o=s.extensions;if(!(!o||!o.length)){r[i]=o;for(var a=0;a<o.length;a++){var c=o[a];if(e[c]){var l=t.indexOf(sc[e[c]].source),u=t.indexOf(s.source);if(e[c]!=="application/octet-stream"&&(l>u||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var oc=A((E6,Ny)=>{"use strict";var yP=ky(),xP=Iy();Ny.exports=Yt;function Yt(r){if(!(this instanceof Yt))return new Yt(r);this.headers=r.headers,this.negotiator=new yP(r)}Yt.prototype.type=Yt.prototype.types=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}if(!e||e.length===0)return this.negotiator.mediaTypes();if(!this.headers.accept)return e[0];var n=e.map(_P),i=this.negotiator.mediaTypes(n.filter(bP)),s=i[0];return s?e[n.indexOf(s)]:!1};Yt.prototype.encoding=Yt.prototype.encodings=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.encodings():this.negotiator.encodings(e)[0]||!1};Yt.prototype.charset=Yt.prototype.charsets=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.charsets():this.negotiator.charsets(e)[0]||!1};Yt.prototype.lang=Yt.prototype.langs=Yt.prototype.language=Yt.prototype.languages=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.languages():this.negotiator.languages(e)[0]||!1};function _P(r){return r.indexOf("/")===-1?xP.lookup(r):r}function bP(r){return typeof r=="string"}});var Zp=A((Dy,Ly)=>{var Eo=require("crypto"),Jp=function(){};Jp.prototype.getRandomBytes=function(r){var e=4096,t=this;if(r=r||12,r>e)return Eo.randomBytes(r);var n=parseInt(e/r),i=parseInt(n*.85);if(!i||(this.bytesBufferIndex==null&&(this.bytesBufferIndex=-1),this.bytesBufferIndex==n&&(this.bytesBuffer=null,this.bytesBufferIndex=-1),(this.bytesBufferIndex==-1||this.bytesBufferIndex>i)&&(this.isGeneratingBytes||(this.isGeneratingBytes=!0,Eo.randomBytes(e,function(o,a){t.bytesBuffer=a,t.bytesBufferIndex=0,t.isGeneratingBytes=!1})),this.bytesBufferIndex==-1)))return Eo.randomBytes(r);var s=this.bytesBuffer.slice(r*this.bytesBufferIndex,r*(this.bytesBufferIndex+1));return this.bytesBufferIndex++,s};Jp.prototype.generateId=function(){var r=Buffer.alloc(15);return r.writeInt32BE?(this.sequenceNumber=this.sequenceNumber+1|0,r.writeInt32BE(this.sequenceNumber,11),Eo.randomBytes?this.getRandomBytes(12).copy(r):[0,4,8].forEach(function(e){r.writeInt32BE(Math.random()*Math.pow(2,32)|0,e)}),r.toString("base64").replace(/\//g,"_").replace(/\+/g,"-")):Math.abs(Math.random()*Math.random()*Date.now()|0).toString()+Math.abs(Math.random()*Math.random()*Date.now()|0).toString()};Dy=Ly.exports=new Jp});var ac=A(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.ERROR_PACKET=Dn.PACKET_TYPES_REVERSE=Dn.PACKET_TYPES=void 0;var Ur=Object.create(null);Dn.PACKET_TYPES=Ur;Ur.open="0";Ur.close="1";Ur.ping="2";Ur.pong="3";Ur.message="4";Ur.upgrade="5";Ur.noop="6";var By=Object.create(null);Dn.PACKET_TYPES_REVERSE=By;Object.keys(Ur).forEach(r=>{By[Ur[r]]=r});var wP={type:"error",data:"parser error"};Dn.ERROR_PACKET=wP});var Fy=A(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.encodePacket=void 0;Gi.encodePacketToBinary=TP;var SP=ac(),EP=({type:r,data:e},t,n)=>e instanceof ArrayBuffer||ArrayBuffer.isView(e)?n(t?e:"b"+jy(e,!0).toString("base64")):n(SP.PACKET_TYPES[r]+(e||""));Gi.encodePacket=EP;var jy=(r,e)=>Buffer.isBuffer(r)||r instanceof Uint8Array&&!e?r:r instanceof ArrayBuffer?Buffer.from(r):Buffer.from(r.buffer,r.byteOffset,r.byteLength),Qp;function TP(r,e){if(r.data instanceof ArrayBuffer||ArrayBuffer.isView(r.data))return e(jy(r.data,!1));(0,Gi.encodePacket)(r,!0,t=>{Qp||(Qp=new TextEncoder),e(Qp.encode(t))})}});var qy=A(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.decodePacket=void 0;var cc=ac(),CP=(r,e)=>{if(typeof r!="string")return{type:"message",data:Uy(r,e)};let t=r.charAt(0);if(t==="b"){let n=Buffer.from(r.substring(1),"base64");return{type:"message",data:Uy(n,e)}}return cc.PACKET_TYPES_REVERSE[t]?r.length>1?{type:cc.PACKET_TYPES_REVERSE[t],data:r.substring(1)}:{type:cc.PACKET_TYPES_REVERSE[t]}:cc.ERROR_PACKET};lc.decodePacket=CP;var Uy=(r,e)=>e==="arraybuffer"?r instanceof ArrayBuffer?r:Buffer.isBuffer(r)?r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):r.buffer:Buffer.isBuffer(r)?r:Buffer.from(r)});var To=A(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.decodePayload=qt.decodePacket=qt.encodePayload=qt.encodePacket=qt.protocol=void 0;qt.createPacketEncoderStream=RP;qt.createPacketDecoderStream=OP;var tf=Fy();Object.defineProperty(qt,"encodePacket",{enumerable:!0,get:function(){return tf.encodePacket}});var rf=qy();Object.defineProperty(qt,"decodePacket",{enumerable:!0,get:function(){return rf.decodePacket}});var $y=ac(),Hy="",kP=(r,e)=>{let t=r.length,n=new Array(t),i=0;r.forEach((s,o)=>{(0,tf.encodePacket)(s,!1,a=>{n[o]=a,++i===t&&e(n.join(Hy))})})};qt.encodePayload=kP;var AP=(r,e)=>{let t=r.split(Hy),n=[];for(let i=0;i<t.length;i++){let s=(0,rf.decodePacket)(t[i],e);if(n.push(s),s.type==="error")break}return n};qt.decodePayload=AP;function RP(){return new TransformStream({transform(r,e){(0,tf.encodePacketToBinary)(r,t=>{let n=t.length,i;if(n<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,n);else if(n<65536){i=new Uint8Array(3);let s=new DataView(i.buffer);s.setUint8(0,126),s.setUint16(1,n)}else{i=new Uint8Array(9);let s=new DataView(i.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(n))}r.data&&typeof r.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}var ef;function uc(r){return r.reduce((e,t)=>e+t.length,0)}function pc(r,e){if(r[0].length===e)return r.shift();let t=new Uint8Array(e),n=0;for(let i=0;i<e;i++)t[i]=r[0][n++],n===r[0].length&&(r.shift(),n=0);return r.length&&n<r[0].length&&(r[0]=r[0].slice(n)),t}function OP(r,e){ef||(ef=new TextDecoder);let t=[],n=0,i=-1,s=!1;return new TransformStream({transform(o,a){for(t.push(o);;){if(n===0){if(uc(t)<1)break;let c=pc(t,1);s=(c[0]&128)===128,i=c[0]&127,i<126?n=3:i===126?n=1:n=2}else if(n===1){if(uc(t)<2)break;let c=pc(t,2);i=new DataView(c.buffer,c.byteOffset,c.length).getUint16(0),n=3}else if(n===2){if(uc(t)<8)break;let c=pc(t,8),l=new DataView(c.buffer,c.byteOffset,c.length),u=l.getUint32(0);if(u>Math.pow(2,21)-1){a.enqueue($y.ERROR_PACKET);break}i=u*Math.pow(2,32)+l.getUint32(4),n=3}else{if(uc(t)<i)break;let c=pc(t,i);a.enqueue((0,rf.decodePacket)(s?c:ef.decode(c),e)),n=0}if(i===0||i>r){a.enqueue($y.ERROR_PACKET);break}}}})}qt.protocol=4});var Vy=A((R6,zy)=>{var Ln=String.fromCharCode;function Wy(r){for(var e=[],t=0,n=r.length,i,s;t<n;)i=r.charCodeAt(t++),i>=55296&&i<=56319&&t<n?(s=r.charCodeAt(t++),(s&64512)==56320?e.push(((i&1023)<<10)+(s&1023)+65536):(e.push(i),t--)):e.push(i);return e}function MP(r){for(var e=r.length,t=-1,n,i="";++t<e;)n=r[t],n>65535&&(n-=65536,i+=Ln(n>>>10&1023|55296),n=56320|n&1023),i+=Ln(n);return i}function Gy(r,e){if(r>=55296&&r<=57343){if(e)throw Error("Lone surrogate U+"+r.toString(16).toUpperCase()+" is not a scalar value");return!1}return!0}function nf(r,e){return Ln(r>>e&63|128)}function PP(r,e){if((r&4294967168)==0)return Ln(r);var t="";return(r&4294965248)==0?t=Ln(r>>6&31|192):(r&4294901760)==0?(Gy(r,e)||(r=65533),t=Ln(r>>12&15|224),t+=nf(r,6)):(r&4292870144)==0&&(t=Ln(r>>18&7|240),t+=nf(r,12),t+=nf(r,6)),t+=Ln(r&63|128),t}function IP(r,e){e=e||{};for(var t=e.strict!==!1,n=Wy(r),i=n.length,s=-1,o,a="";++s<i;)o=n[s],a+=PP(o,t);return a}function zi(){if(Bn>=dc)throw Error("Invalid byte index");var r=fc[Bn]&255;if(Bn++,(r&192)==128)return r&63;throw Error("Invalid continuation byte")}function NP(r){var e,t,n,i,s;if(Bn>dc)throw Error("Invalid byte index");if(Bn==dc)return!1;if(e=fc[Bn]&255,Bn++,(e&128)==0)return e;if((e&224)==192){if(t=zi(),s=(e&31)<<6|t,s>=128)return s;throw Error("Invalid continuation byte")}if((e&240)==224){if(t=zi(),n=zi(),s=(e&15)<<12|t<<6|n,s>=2048)return Gy(s,r)?s:65533;throw Error("Invalid continuation byte")}if((e&248)==240&&(t=zi(),n=zi(),i=zi(),s=(e&7)<<18|t<<12|n<<6|i,s>=65536&&s<=1114111))return s;throw Error("Invalid UTF-8 detected")}var fc,dc,Bn;function DP(r,e){e=e||{};var t=e.strict!==!1;fc=Wy(r),dc=fc.length,Bn=0;for(var n=[],i;(i=NP(t))!==!1;)n.push(i);return MP(n)}zy.exports={version:"2.1.2",encode:IP,decode:DP}});var tx=A(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.packets=ht.protocol=void 0;ht.encodePacket=sf;ht.encodeBase64Packet=Xy;ht.decodePacket=of;ht.decodeBase64Packet=Jy;ht.encodePayload=FP;ht.decodePayload=qP;ht.encodePayloadAsBinary=Qy;ht.decodePayloadAsBinary=ex;var Yy=Vy();ht.protocol=3;var LP=r=>{for(let e of r)if(e.data instanceof ArrayBuffer||ArrayBuffer.isView(e.data))return!0;return!1};ht.packets={open:0,close:1,ping:2,pong:3,message:4,upgrade:5,noop:6};var Vi=Object.keys(ht.packets),Cr={type:"error",data:"parser error"},BP=Buffer.concat([]);function sf(r,e,t,n){if(typeof e=="function"&&(n=e,e=null),typeof t=="function"&&(n=t,t=null),Buffer.isBuffer(r.data))return Ky(r,e,n);if(r.data&&(r.data.buffer||r.data)instanceof ArrayBuffer)return Ky({type:r.type,data:af(r.data)},e,n);var i=ht.packets[r.type];return r.data!==void 0&&(i+=t?Yy.encode(String(r.data),{strict:!1}):String(r.data)),n(""+i)}function Ky(r,e,t){if(!e)return Xy(r,t);var n=r.data,i=Buffer.allocUnsafe(1);return i[0]=ht.packets[r.type],t(Buffer.concat([i,n]))}function Xy(r,e){var t=Buffer.isBuffer(r.data)?r.data:af(r.data),n="b"+ht.packets[r.type];return n+=t.toString("base64"),e(n)}function of(r,e,t){if(r===void 0)return Cr;let n;if(typeof r=="string")return n=r.charAt(0),n==="b"?Jy(r.slice(1),e):t&&(r=jP(r),r===!1)||Number(n)!=n||!Vi[n]?Cr:r.length>1?{type:Vi[n],data:r.slice(1)}:{type:Vi[n]};if(e==="arraybuffer"){var i=new Uint8Array(r);return n=i[0],{type:Vi[n],data:i.buffer.slice(1)}}return r instanceof ArrayBuffer&&(r=af(r)),n=r[0],{type:Vi[n],data:r.slice(1)}}function jP(r){try{r=Yy.decode(r,{strict:!1})}catch{return!1}return r}function Jy(r,e){var t=Vi[r.charAt(0)],n=Buffer.from(r.slice(1),"base64");if(e==="arraybuffer"){for(var i=new Uint8Array(n.length),s=0;s<i.length;s++)i[s]=n[s];n=i.buffer}return{type:t,data:n}}function FP(r,e,t){if(typeof e=="function"&&(t=e,e=null),e&&LP(r))return Qy(r,t);if(!r.length)return t("0:");function n(i,s){sf(i,e,!1,function(o){s(null,UP(o))})}Zy(r,n,function(i,s){return t(s.join(""))})}function UP(r){return r.length+":"+r}function Zy(r,e,t){let n=new Array(r.length),i=0;for(let s=0;s<r.length;s++)e(r[s],(o,a)=>{n[s]=a,++i===r.length&&t(null,n)})}function qP(r,e,t){if(typeof r!="string")return ex(r,e,t);if(typeof e=="function"&&(t=e,e=null),r==="")return t(Cr,0,1);for(var n="",i,s,o,a=0,c=r.length;a<c;a++){var l=r.charAt(a);if(l!==":"){n+=l;continue}if(n===""||n!=(i=Number(n))||(s=r.slice(a+1,a+1+i),n!=s.length))return t(Cr,0,1);if(s.length){if(o=of(s,e,!1),Cr.type===o.type&&Cr.data===o.data)return t(Cr,0,1);var u=t(o,a+i,c);if(u===!1)return}a+=i,n=""}if(n!=="")return t(Cr,0,1)}function $P(r){for(var e="",t=0,n=r.length;t<n;t++)e+=String.fromCharCode(r[t]);return e}function HP(r){for(var e=Buffer.allocUnsafe(r.length),t=0,n=r.length;t<n;t++)e.writeUInt8(r.charCodeAt(t),t);return e}function af(r){var e=r.byteLength||r.length,t=r.byteOffset||0;return Buffer.from(r.buffer||r,t,e)}function Qy(r,e){if(!r.length)return e(BP);Zy(r,WP,function(t,n){return e(Buffer.concat(n))})}function WP(r,e){function t(n){var i=""+n.length,s;if(typeof n=="string"){s=Buffer.allocUnsafe(i.length+2),s[0]=0;for(var o=0;o<i.length;o++)s[o+1]=parseInt(i[o],10);return s[s.length-1]=255,e(null,Buffer.concat([s,HP(n)]))}s=Buffer.allocUnsafe(i.length+2),s[0]=1;for(var o=0;o<i.length;o++)s[o+1]=parseInt(i[o],10);s[s.length-1]=255,e(null,Buffer.concat([s,n]))}sf(r,!0,!0,t)}function ex(r,e,t){typeof e=="function"&&(t=e,e=null);for(var n=r,i=[],s;n.length>0;){var o="",a=n[0]===0;for(s=1;n[s]!==255;s++){if(o.length>310)return t(Cr,0,1);o+=""+n[s]}n=n.slice(o.length+1);var c=parseInt(o,10),l=n.slice(1,c+1);a&&(l=$P(l)),i.push(l),n=n.slice(c+1)}var u=i.length;for(s=0;s<u;s++){var f=i[s];t(of(f,e,!0),s,u)}}});var nx=A((M6,rx)=>{var Ki=1e3,Yi=Ki*60,Xi=Yi*60,ni=Xi*24,GP=ni*7,zP=ni*365.25;rx.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return VP(r);if(t==="number"&&isFinite(r))return e.long?YP(r):KP(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function VP(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*zP;case"weeks":case"week":case"w":return t*GP;case"days":case"day":case"d":return t*ni;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Xi;case"minutes":case"minute":case"mins":case"min":case"m":return t*Yi;case"seconds":case"second":case"secs":case"sec":case"s":return t*Ki;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function KP(r){var e=Math.abs(r);return e>=ni?Math.round(r/ni)+"d":e>=Xi?Math.round(r/Xi)+"h":e>=Yi?Math.round(r/Yi)+"m":e>=Ki?Math.round(r/Ki)+"s":r+"ms"}function YP(r){var e=Math.abs(r);return e>=ni?hc(r,e,ni,"day"):e>=Xi?hc(r,e,Xi,"hour"):e>=Yi?hc(r,e,Yi,"minute"):e>=Ki?hc(r,e,Ki,"second"):r+" ms"}function hc(r,e,t,n){var i=e>=t*1.5;return Math.round(r/t)+" "+n+(i?"s":"")}});var cf=A((P6,ix)=>{function XP(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=a,t.humanize=nx(),t.destroy=l,Object.keys(r).forEach(u=>{t[u]=r[u]}),t.names=[],t.skips=[],t.formatters={};function e(u){let f=0;for(let d=0;d<u.length;d++)f=(f<<5)-f+u.charCodeAt(d),f|=0;return t.colors[Math.abs(f)%t.colors.length]}t.selectColor=e;function t(u){let f,d=null,g,y;function b(...C){if(!b.enabled)return;let R=b,O=Number(new Date),P=O-(f||O);R.diff=P,R.prev=f,R.curr=O,f=O,C[0]=t.coerce(C[0]),typeof C[0]!="string"&&C.unshift("%O");let B=0;C[0]=C[0].replace(/%([a-zA-Z%])/g,(F,V)=>{if(F==="%%")return"%";B++;let D=t.formatters[V];if(typeof D=="function"){let $=C[B];F=D.call(R,$),C.splice(B,1),B--}return F}),t.formatArgs.call(R,C),(R.log||t.log).apply(R,C)}return b.namespace=u,b.useColors=t.useColors(),b.color=t.selectColor(u),b.extend=n,b.destroy=t.destroy,Object.defineProperty(b,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(g!==t.namespaces&&(g=t.namespaces,y=t.enabled(u)),y),set:C=>{d=C}}),typeof t.init=="function"&&t.init(b),b}function n(u,f){let d=t(this.namespace+(typeof f>"u"?":":f)+u);return d.log=this.log,d}function i(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let f=(typeof u=="string"?u:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let d of f)d[0]==="-"?t.skips.push(d.slice(1)):t.names.push(d)}function s(u,f){let d=0,g=0,y=-1,b=0;for(;d<u.length;)if(g<f.length&&(f[g]===u[d]||f[g]==="*"))f[g]==="*"?(y=g,b=d,g++):(d++,g++);else if(y!==-1)g=y+1,b++,d=b;else return!1;for(;g<f.length&&f[g]==="*";)g++;return g===f.length}function o(){let u=[...t.names,...t.skips.map(f=>"-"+f)].join(",");return t.enable(""),u}function a(u){for(let f of t.skips)if(s(u,f))return!1;for(let f of t.names)if(s(u,f))return!0;return!1}function c(u){return u instanceof Error?u.stack||u.message:u}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}ix.exports=XP});var sx=A(($t,mc)=>{$t.formatArgs=ZP;$t.save=QP;$t.load=eI;$t.useColors=JP;$t.storage=tI();$t.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();$t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function JP(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let r;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(r=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(r[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function ZP(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+mc.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}$t.log=console.debug||console.log||(()=>{});function QP(r){try{r?$t.storage.setItem("debug",r):$t.storage.removeItem("debug")}catch{}}function eI(){let r;try{r=$t.storage.getItem("debug")||$t.storage.getItem("DEBUG")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function tI(){try{return localStorage}catch{}}mc.exports=cf()($t);var{formatters:rI}=mc.exports;rI.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var ax=A((I6,ox)=>{"use strict";ox.exports=(r,e=process.argv)=>{let t=r.startsWith("-")?"":r.length===1?"-":"--",n=e.indexOf(t+r),i=e.indexOf("--");return n!==-1&&(i===-1||n<i)}});var ux=A((N6,lx)=>{"use strict";var nI=require("os"),cx=require("tty"),ar=ax(),{env:mt}=process,jn;ar("no-color")||ar("no-colors")||ar("color=false")||ar("color=never")?jn=0:(ar("color")||ar("colors")||ar("color=true")||ar("color=always"))&&(jn=1);"FORCE_COLOR"in mt&&(mt.FORCE_COLOR==="true"?jn=1:mt.FORCE_COLOR==="false"?jn=0:jn=mt.FORCE_COLOR.length===0?1:Math.min(parseInt(mt.FORCE_COLOR,10),3));function lf(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function uf(r,e){if(jn===0)return 0;if(ar("color=16m")||ar("color=full")||ar("color=truecolor"))return 3;if(ar("color=256"))return 2;if(r&&!e&&jn===void 0)return 0;let t=jn||0;if(mt.TERM==="dumb")return t;if(process.platform==="win32"){let n=nI.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in mt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in mt)||mt.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in mt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(mt.TEAMCITY_VERSION)?1:0;if(mt.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in mt){let n=parseInt((mt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(mt.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(mt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(mt.TERM)||"COLORTERM"in mt?1:t}function iI(r){let e=uf(r,r&&r.isTTY);return lf(e)}lx.exports={supportsColor:iI,stdout:lf(uf(!0,cx.isatty(1))),stderr:lf(uf(!0,cx.isatty(2)))}});var fx=A((gt,vc)=>{var sI=require("tty"),gc=require("util");gt.init=fI;gt.log=lI;gt.formatArgs=aI;gt.save=uI;gt.load=pI;gt.useColors=oI;gt.destroy=gc.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");gt.colors=[6,2,3,4,5,1];try{let r=ux();r&&(r.stderr||r).level>=2&&(gt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}gt.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(i,s)=>s.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),r[t]=n,r},{});function oI(){return"colors"in gt.inspectOpts?!!gt.inspectOpts.colors:sI.isatty(process.stderr.fd)}function aI(r){let{namespace:e,useColors:t}=this;if(t){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),s=` ${i};1m${e} \x1B[0m`;r[0]=s+r[0].split(`
|
|
5
|
+
`).filter(Boolean).slice(-r)}catch{return[]}}function Fr(r){return{info:(...e)=>So(r,"info",$p(e)),warn:(...e)=>So(r,"warn",$p(e)),error:(...e)=>So(r,"error",$p(e))}}var jr,Wp,rc,nc,ic,ry,Hp,IM,NM,ri=ke(()=>{jr=W(require("fs"),1),Wp=W(require("path"),1);St();rc=ie.LOGS,nc=Wp.default.join(rc,_o.fileName),ic=Wp.default.join(rc,_o.rotatedName),ry=!1,Hp=null;IM=/\x1b\[[0-9;]*m/g,NM=/https?:\/\/[^\s]+/g});var uy=A((g6,zp)=>{"use strict";zp.exports=ly;zp.exports.preferredCharsets=ly;var BM=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function jM(r){for(var e=r.split(","),t=0,n=0;t<e.length;t++){var i=FM(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function FM(r,e){var t=BM.exec(r);if(!t)return null;var n=t[1],i=1;if(t[2])for(var s=t[2].split(";"),o=0;o<s.length;o++){var a=s[o].trim().split("=");if(a[0]==="q"){i=parseFloat(a[1]);break}}return{charset:n,q:i,i:e}}function UM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=qM(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function qM(r,e,t){var n=0;if(e.charset.toLowerCase()===r.toLowerCase())n|=1;else if(e.charset!=="*")return null;return{i:t,o:e.i,q:e.q,s:n}}function ly(r,e){var t=jM(r===void 0?"*":r||"");if(!e)return t.filter(cy).sort(ay).map($M);var n=e.map(function(s,o){return UM(s,t,o)});return n.filter(cy).sort(ay).map(function(s){return e[n.indexOf(s)]})}function ay(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function $M(r){return r.charset}function cy(r){return r.q>0}});var my=A((v6,Vp)=>{"use strict";Vp.exports=hy;Vp.exports.preferredEncodings=hy;var HM=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function WM(r){for(var e=r.split(","),t=!1,n=1,i=0,s=0;i<e.length;i++){var o=GM(e[i].trim(),i);o&&(e[s++]=o,t=t||dy("identity",o),n=Math.min(n,o.q||1))}return t||(e[s++]={encoding:"identity",q:n,i}),e.length=s,e}function GM(r,e){var t=HM.exec(r);if(!t)return null;var n=t[1],i=1;if(t[2])for(var s=t[2].split(";"),o=0;o<s.length;o++){var a=s[o].trim().split("=");if(a[0]==="q"){i=parseFloat(a[1]);break}}return{encoding:n,q:i,i:e}}function zM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=dy(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function dy(r,e,t){var n=0;if(e.encoding.toLowerCase()===r.toLowerCase())n|=1;else if(e.encoding!=="*")return null;return{i:t,o:e.i,q:e.q,s:n}}function hy(r,e){var t=WM(r||"");if(!e)return t.filter(fy).sort(py).map(VM);var n=e.map(function(s,o){return zM(s,t,o)});return n.filter(fy).sort(py).map(function(s){return e[n.indexOf(s)]})}function py(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function VM(r){return r.encoding}function fy(r){return r.q>0}});var _y=A((y6,Kp)=>{"use strict";Kp.exports=xy;Kp.exports.preferredLanguages=xy;var KM=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function YM(r){for(var e=r.split(","),t=0,n=0;t<e.length;t++){var i=yy(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function yy(r,e){var t=KM.exec(r);if(!t)return null;var n=t[1],i=t[2],s=n;i&&(s+="-"+i);var o=1;if(t[3])for(var a=t[3].split(";"),c=0;c<a.length;c++){var l=a[c].split("=");l[0]==="q"&&(o=parseFloat(l[1]))}return{prefix:n,suffix:i,q:o,i:e,full:s}}function XM(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=JM(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function JM(r,e,t){var n=yy(r);if(!n)return null;var i=0;if(e.full.toLowerCase()===n.full.toLowerCase())i|=4;else if(e.prefix.toLowerCase()===n.full.toLowerCase())i|=2;else if(e.full.toLowerCase()===n.prefix.toLowerCase())i|=1;else if(e.full!=="*")return null;return{i:t,o:e.i,q:e.q,s:i}}function xy(r,e){var t=YM(r===void 0?"*":r||"");if(!e)return t.filter(vy).sort(gy).map(ZM);var n=e.map(function(s,o){return XM(s,t,o)});return n.filter(vy).sort(gy).map(function(s){return e[n.indexOf(s)]})}function gy(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function ZM(r){return r.full}function vy(r){return r.q>0}});var Cy=A((x6,Yp)=>{"use strict";Yp.exports=Ey;Yp.exports.preferredMediaTypes=Ey;var QM=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function eP(r){for(var e=sP(r),t=0,n=0;t<e.length;t++){var i=Sy(e[t].trim(),t);i&&(e[n++]=i)}return e.length=n,e}function Sy(r,e){var t=QM.exec(r);if(!t)return null;var n=Object.create(null),i=1,s=t[2],o=t[1];if(t[3])for(var a=oP(t[3]).map(iP),c=0;c<a.length;c++){var l=a[c],u=l[0].toLowerCase(),f=l[1],d=f&&f[0]==='"'&&f[f.length-1]==='"'?f.substr(1,f.length-2):f;if(u==="q"){i=parseFloat(d);break}n[u]=d}return{type:o,subtype:s,params:n,q:i,i:e}}function tP(r,e,t){for(var n={o:-1,q:0,s:0},i=0;i<e.length;i++){var s=rP(r,e[i],t);s&&(n.s-s.s||n.q-s.q||n.o-s.o)<0&&(n=s)}return n}function rP(r,e,t){var n=Sy(r),i=0;if(!n)return null;if(e.type.toLowerCase()==n.type.toLowerCase())i|=4;else if(e.type!="*")return null;if(e.subtype.toLowerCase()==n.subtype.toLowerCase())i|=2;else if(e.subtype!="*")return null;var s=Object.keys(e.params);if(s.length>0)if(s.every(function(o){return e.params[o]=="*"||(e.params[o]||"").toLowerCase()==(n.params[o]||"").toLowerCase()}))i|=1;else return null;return{i:t,o:e.i,q:e.q,s:i}}function Ey(r,e){var t=eP(r===void 0?"*/*":r||"");if(!e)return t.filter(wy).sort(by).map(nP);var n=e.map(function(s,o){return tP(s,t,o)});return n.filter(wy).sort(by).map(function(s){return e[n.indexOf(s)]})}function by(r,e){return e.q-r.q||e.s-r.s||r.o-e.o||r.i-e.i||0}function nP(r){return r.type+"/"+r.subtype}function wy(r){return r.q>0}function Ty(r){for(var e=0,t=0;(t=r.indexOf('"',t))!==-1;)e++,t++;return e}function iP(r){var e=r.indexOf("="),t,n;return e===-1?t=r:(t=r.substr(0,e),n=r.substr(e+1)),[t,n]}function sP(r){for(var e=r.split(","),t=1,n=0;t<e.length;t++)Ty(e[n])%2==0?e[++n]=e[t]:e[n]+=","+e[t];return e.length=n+1,e}function oP(r){for(var e=r.split(";"),t=1,n=0;t<e.length;t++)Ty(e[n])%2==0?e[++n]=e[t]:e[n]+=";"+e[t];e.length=n+1;for(var t=0;t<e.length;t++)e[t]=e[t].trim();return e}});var ky=A((_6,Xp)=>{"use strict";var aP=uy(),cP=my(),lP=_y(),uP=Cy();Xp.exports=fe;Xp.exports.Negotiator=fe;function fe(r){if(!(this instanceof fe))return new fe(r);this.request=r}fe.prototype.charset=function(e){var t=this.charsets(e);return t&&t[0]};fe.prototype.charsets=function(e){return aP(this.request.headers["accept-charset"],e)};fe.prototype.encoding=function(e){var t=this.encodings(e);return t&&t[0]};fe.prototype.encodings=function(e){return cP(this.request.headers["accept-encoding"],e)};fe.prototype.language=function(e){var t=this.languages(e);return t&&t[0]};fe.prototype.languages=function(e){return lP(this.request.headers["accept-language"],e)};fe.prototype.mediaType=function(e){var t=this.mediaTypes(e);return t&&t[0]};fe.prototype.mediaTypes=function(e){return uP(this.request.headers.accept,e)};fe.prototype.preferredCharset=fe.prototype.charset;fe.prototype.preferredCharsets=fe.prototype.charsets;fe.prototype.preferredEncoding=fe.prototype.encoding;fe.prototype.preferredEncodings=fe.prototype.encodings;fe.prototype.preferredLanguage=fe.prototype.language;fe.prototype.preferredLanguages=fe.prototype.languages;fe.prototype.preferredMediaType=fe.prototype.mediaType;fe.prototype.preferredMediaTypes=fe.prototype.mediaTypes});var Ay=A((b6,pP)=>{pP.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var Oy=A((w6,Ry)=>{Ry.exports=Ay()});var Iy=A(Ut=>{"use strict";var sc=Oy(),fP=require("path").extname,My=/^\s*([^;\s]*)(?:;|\s|$)/,dP=/^text\//i;Ut.charset=Py;Ut.charsets={lookup:Py};Ut.contentType=hP;Ut.extension=mP;Ut.extensions=Object.create(null);Ut.lookup=gP;Ut.types=Object.create(null);vP(Ut.extensions,Ut.types);function Py(r){if(!r||typeof r!="string")return!1;var e=My.exec(r),t=e&&sc[e[1].toLowerCase()];return t&&t.charset?t.charset:e&&dP.test(e[1])?"UTF-8":!1}function hP(r){if(!r||typeof r!="string")return!1;var e=r.indexOf("/")===-1?Ut.lookup(r):r;if(!e)return!1;if(e.indexOf("charset")===-1){var t=Ut.charset(e);t&&(e+="; charset="+t.toLowerCase())}return e}function mP(r){if(!r||typeof r!="string")return!1;var e=My.exec(r),t=e&&Ut.extensions[e[1].toLowerCase()];return!t||!t.length?!1:t[0]}function gP(r){if(!r||typeof r!="string")return!1;var e=fP("x."+r).toLowerCase().substr(1);return e&&Ut.types[e]||!1}function vP(r,e){var t=["nginx","apache",void 0,"iana"];Object.keys(sc).forEach(function(i){var s=sc[i],o=s.extensions;if(!(!o||!o.length)){r[i]=o;for(var a=0;a<o.length;a++){var c=o[a];if(e[c]){var l=t.indexOf(sc[e[c]].source),u=t.indexOf(s.source);if(e[c]!=="application/octet-stream"&&(l>u||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var oc=A((E6,Ny)=>{"use strict";var yP=ky(),xP=Iy();Ny.exports=Yt;function Yt(r){if(!(this instanceof Yt))return new Yt(r);this.headers=r.headers,this.negotiator=new yP(r)}Yt.prototype.type=Yt.prototype.types=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}if(!e||e.length===0)return this.negotiator.mediaTypes();if(!this.headers.accept)return e[0];var n=e.map(_P),i=this.negotiator.mediaTypes(n.filter(bP)),s=i[0];return s?e[n.indexOf(s)]:!1};Yt.prototype.encoding=Yt.prototype.encodings=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.encodings():this.negotiator.encodings(e)[0]||!1};Yt.prototype.charset=Yt.prototype.charsets=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.charsets():this.negotiator.charsets(e)[0]||!1};Yt.prototype.lang=Yt.prototype.langs=Yt.prototype.language=Yt.prototype.languages=function(r){var e=r;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var t=0;t<e.length;t++)e[t]=arguments[t]}return!e||e.length===0?this.negotiator.languages():this.negotiator.languages(e)[0]||!1};function _P(r){return r.indexOf("/")===-1?xP.lookup(r):r}function bP(r){return typeof r=="string"}});var Zp=A((Dy,Ly)=>{var Eo=require("crypto"),Jp=function(){};Jp.prototype.getRandomBytes=function(r){var e=4096,t=this;if(r=r||12,r>e)return Eo.randomBytes(r);var n=parseInt(e/r),i=parseInt(n*.85);if(!i||(this.bytesBufferIndex==null&&(this.bytesBufferIndex=-1),this.bytesBufferIndex==n&&(this.bytesBuffer=null,this.bytesBufferIndex=-1),(this.bytesBufferIndex==-1||this.bytesBufferIndex>i)&&(this.isGeneratingBytes||(this.isGeneratingBytes=!0,Eo.randomBytes(e,function(o,a){t.bytesBuffer=a,t.bytesBufferIndex=0,t.isGeneratingBytes=!1})),this.bytesBufferIndex==-1)))return Eo.randomBytes(r);var s=this.bytesBuffer.slice(r*this.bytesBufferIndex,r*(this.bytesBufferIndex+1));return this.bytesBufferIndex++,s};Jp.prototype.generateId=function(){var r=Buffer.alloc(15);return r.writeInt32BE?(this.sequenceNumber=this.sequenceNumber+1|0,r.writeInt32BE(this.sequenceNumber,11),Eo.randomBytes?this.getRandomBytes(12).copy(r):[0,4,8].forEach(function(e){r.writeInt32BE(Math.random()*Math.pow(2,32)|0,e)}),r.toString("base64").replace(/\//g,"_").replace(/\+/g,"-")):Math.abs(Math.random()*Math.random()*Date.now()|0).toString()+Math.abs(Math.random()*Math.random()*Date.now()|0).toString()};Dy=Ly.exports=new Jp});var ac=A(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.ERROR_PACKET=Dn.PACKET_TYPES_REVERSE=Dn.PACKET_TYPES=void 0;var Ur=Object.create(null);Dn.PACKET_TYPES=Ur;Ur.open="0";Ur.close="1";Ur.ping="2";Ur.pong="3";Ur.message="4";Ur.upgrade="5";Ur.noop="6";var By=Object.create(null);Dn.PACKET_TYPES_REVERSE=By;Object.keys(Ur).forEach(r=>{By[Ur[r]]=r});var wP={type:"error",data:"parser error"};Dn.ERROR_PACKET=wP});var Fy=A(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.encodePacket=void 0;Gi.encodePacketToBinary=TP;var SP=ac(),EP=({type:r,data:e},t,n)=>e instanceof ArrayBuffer||ArrayBuffer.isView(e)?n(t?e:"b"+jy(e,!0).toString("base64")):n(SP.PACKET_TYPES[r]+(e||""));Gi.encodePacket=EP;var jy=(r,e)=>Buffer.isBuffer(r)||r instanceof Uint8Array&&!e?r:r instanceof ArrayBuffer?Buffer.from(r):Buffer.from(r.buffer,r.byteOffset,r.byteLength),Qp;function TP(r,e){if(r.data instanceof ArrayBuffer||ArrayBuffer.isView(r.data))return e(jy(r.data,!1));(0,Gi.encodePacket)(r,!0,t=>{Qp||(Qp=new TextEncoder),e(Qp.encode(t))})}});var qy=A(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.decodePacket=void 0;var cc=ac(),CP=(r,e)=>{if(typeof r!="string")return{type:"message",data:Uy(r,e)};let t=r.charAt(0);if(t==="b"){let n=Buffer.from(r.substring(1),"base64");return{type:"message",data:Uy(n,e)}}return cc.PACKET_TYPES_REVERSE[t]?r.length>1?{type:cc.PACKET_TYPES_REVERSE[t],data:r.substring(1)}:{type:cc.PACKET_TYPES_REVERSE[t]}:cc.ERROR_PACKET};lc.decodePacket=CP;var Uy=(r,e)=>e==="arraybuffer"?r instanceof ArrayBuffer?r:Buffer.isBuffer(r)?r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):r.buffer:Buffer.isBuffer(r)?r:Buffer.from(r)});var To=A(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.decodePayload=qt.decodePacket=qt.encodePayload=qt.encodePacket=qt.protocol=void 0;qt.createPacketEncoderStream=RP;qt.createPacketDecoderStream=OP;var tf=Fy();Object.defineProperty(qt,"encodePacket",{enumerable:!0,get:function(){return tf.encodePacket}});var rf=qy();Object.defineProperty(qt,"decodePacket",{enumerable:!0,get:function(){return rf.decodePacket}});var $y=ac(),Hy="",kP=(r,e)=>{let t=r.length,n=new Array(t),i=0;r.forEach((s,o)=>{(0,tf.encodePacket)(s,!1,a=>{n[o]=a,++i===t&&e(n.join(Hy))})})};qt.encodePayload=kP;var AP=(r,e)=>{let t=r.split(Hy),n=[];for(let i=0;i<t.length;i++){let s=(0,rf.decodePacket)(t[i],e);if(n.push(s),s.type==="error")break}return n};qt.decodePayload=AP;function RP(){return new TransformStream({transform(r,e){(0,tf.encodePacketToBinary)(r,t=>{let n=t.length,i;if(n<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,n);else if(n<65536){i=new Uint8Array(3);let s=new DataView(i.buffer);s.setUint8(0,126),s.setUint16(1,n)}else{i=new Uint8Array(9);let s=new DataView(i.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(n))}r.data&&typeof r.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}var ef;function uc(r){return r.reduce((e,t)=>e+t.length,0)}function pc(r,e){if(r[0].length===e)return r.shift();let t=new Uint8Array(e),n=0;for(let i=0;i<e;i++)t[i]=r[0][n++],n===r[0].length&&(r.shift(),n=0);return r.length&&n<r[0].length&&(r[0]=r[0].slice(n)),t}function OP(r,e){ef||(ef=new TextDecoder);let t=[],n=0,i=-1,s=!1;return new TransformStream({transform(o,a){for(t.push(o);;){if(n===0){if(uc(t)<1)break;let c=pc(t,1);s=(c[0]&128)===128,i=c[0]&127,i<126?n=3:i===126?n=1:n=2}else if(n===1){if(uc(t)<2)break;let c=pc(t,2);i=new DataView(c.buffer,c.byteOffset,c.length).getUint16(0),n=3}else if(n===2){if(uc(t)<8)break;let c=pc(t,8),l=new DataView(c.buffer,c.byteOffset,c.length),u=l.getUint32(0);if(u>Math.pow(2,21)-1){a.enqueue($y.ERROR_PACKET);break}i=u*Math.pow(2,32)+l.getUint32(4),n=3}else{if(uc(t)<i)break;let c=pc(t,i);a.enqueue((0,rf.decodePacket)(s?c:ef.decode(c),e)),n=0}if(i===0||i>r){a.enqueue($y.ERROR_PACKET);break}}}})}qt.protocol=4});var Vy=A((R6,zy)=>{var Ln=String.fromCharCode;function Wy(r){for(var e=[],t=0,n=r.length,i,s;t<n;)i=r.charCodeAt(t++),i>=55296&&i<=56319&&t<n?(s=r.charCodeAt(t++),(s&64512)==56320?e.push(((i&1023)<<10)+(s&1023)+65536):(e.push(i),t--)):e.push(i);return e}function MP(r){for(var e=r.length,t=-1,n,i="";++t<e;)n=r[t],n>65535&&(n-=65536,i+=Ln(n>>>10&1023|55296),n=56320|n&1023),i+=Ln(n);return i}function Gy(r,e){if(r>=55296&&r<=57343){if(e)throw Error("Lone surrogate U+"+r.toString(16).toUpperCase()+" is not a scalar value");return!1}return!0}function nf(r,e){return Ln(r>>e&63|128)}function PP(r,e){if((r&4294967168)==0)return Ln(r);var t="";return(r&4294965248)==0?t=Ln(r>>6&31|192):(r&4294901760)==0?(Gy(r,e)||(r=65533),t=Ln(r>>12&15|224),t+=nf(r,6)):(r&4292870144)==0&&(t=Ln(r>>18&7|240),t+=nf(r,12),t+=nf(r,6)),t+=Ln(r&63|128),t}function IP(r,e){e=e||{};for(var t=e.strict!==!1,n=Wy(r),i=n.length,s=-1,o,a="";++s<i;)o=n[s],a+=PP(o,t);return a}function zi(){if(Bn>=dc)throw Error("Invalid byte index");var r=fc[Bn]&255;if(Bn++,(r&192)==128)return r&63;throw Error("Invalid continuation byte")}function NP(r){var e,t,n,i,s;if(Bn>dc)throw Error("Invalid byte index");if(Bn==dc)return!1;if(e=fc[Bn]&255,Bn++,(e&128)==0)return e;if((e&224)==192){if(t=zi(),s=(e&31)<<6|t,s>=128)return s;throw Error("Invalid continuation byte")}if((e&240)==224){if(t=zi(),n=zi(),s=(e&15)<<12|t<<6|n,s>=2048)return Gy(s,r)?s:65533;throw Error("Invalid continuation byte")}if((e&248)==240&&(t=zi(),n=zi(),i=zi(),s=(e&7)<<18|t<<12|n<<6|i,s>=65536&&s<=1114111))return s;throw Error("Invalid UTF-8 detected")}var fc,dc,Bn;function DP(r,e){e=e||{};var t=e.strict!==!1;fc=Wy(r),dc=fc.length,Bn=0;for(var n=[],i;(i=NP(t))!==!1;)n.push(i);return MP(n)}zy.exports={version:"2.1.2",encode:IP,decode:DP}});var tx=A(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.packets=ht.protocol=void 0;ht.encodePacket=sf;ht.encodeBase64Packet=Xy;ht.decodePacket=of;ht.decodeBase64Packet=Jy;ht.encodePayload=FP;ht.decodePayload=qP;ht.encodePayloadAsBinary=Qy;ht.decodePayloadAsBinary=ex;var Yy=Vy();ht.protocol=3;var LP=r=>{for(let e of r)if(e.data instanceof ArrayBuffer||ArrayBuffer.isView(e.data))return!0;return!1};ht.packets={open:0,close:1,ping:2,pong:3,message:4,upgrade:5,noop:6};var Vi=Object.keys(ht.packets),Cr={type:"error",data:"parser error"},BP=Buffer.concat([]);function sf(r,e,t,n){if(typeof e=="function"&&(n=e,e=null),typeof t=="function"&&(n=t,t=null),Buffer.isBuffer(r.data))return Ky(r,e,n);if(r.data&&(r.data.buffer||r.data)instanceof ArrayBuffer)return Ky({type:r.type,data:af(r.data)},e,n);var i=ht.packets[r.type];return r.data!==void 0&&(i+=t?Yy.encode(String(r.data),{strict:!1}):String(r.data)),n(""+i)}function Ky(r,e,t){if(!e)return Xy(r,t);var n=r.data,i=Buffer.allocUnsafe(1);return i[0]=ht.packets[r.type],t(Buffer.concat([i,n]))}function Xy(r,e){var t=Buffer.isBuffer(r.data)?r.data:af(r.data),n="b"+ht.packets[r.type];return n+=t.toString("base64"),e(n)}function of(r,e,t){if(r===void 0)return Cr;let n;if(typeof r=="string")return n=r.charAt(0),n==="b"?Jy(r.slice(1),e):t&&(r=jP(r),r===!1)||Number(n)!=n||!Vi[n]?Cr:r.length>1?{type:Vi[n],data:r.slice(1)}:{type:Vi[n]};if(e==="arraybuffer"){var i=new Uint8Array(r);return n=i[0],{type:Vi[n],data:i.buffer.slice(1)}}return r instanceof ArrayBuffer&&(r=af(r)),n=r[0],{type:Vi[n],data:r.slice(1)}}function jP(r){try{r=Yy.decode(r,{strict:!1})}catch{return!1}return r}function Jy(r,e){var t=Vi[r.charAt(0)],n=Buffer.from(r.slice(1),"base64");if(e==="arraybuffer"){for(var i=new Uint8Array(n.length),s=0;s<i.length;s++)i[s]=n[s];n=i.buffer}return{type:t,data:n}}function FP(r,e,t){if(typeof e=="function"&&(t=e,e=null),e&&LP(r))return Qy(r,t);if(!r.length)return t("0:");function n(i,s){sf(i,e,!1,function(o){s(null,UP(o))})}Zy(r,n,function(i,s){return t(s.join(""))})}function UP(r){return r.length+":"+r}function Zy(r,e,t){let n=new Array(r.length),i=0;for(let s=0;s<r.length;s++)e(r[s],(o,a)=>{n[s]=a,++i===r.length&&t(null,n)})}function qP(r,e,t){if(typeof r!="string")return ex(r,e,t);if(typeof e=="function"&&(t=e,e=null),r==="")return t(Cr,0,1);for(var n="",i,s,o,a=0,c=r.length;a<c;a++){var l=r.charAt(a);if(l!==":"){n+=l;continue}if(n===""||n!=(i=Number(n))||(s=r.slice(a+1,a+1+i),n!=s.length))return t(Cr,0,1);if(s.length){if(o=of(s,e,!1),Cr.type===o.type&&Cr.data===o.data)return t(Cr,0,1);var u=t(o,a+i,c);if(u===!1)return}a+=i,n=""}if(n!=="")return t(Cr,0,1)}function $P(r){for(var e="",t=0,n=r.length;t<n;t++)e+=String.fromCharCode(r[t]);return e}function HP(r){for(var e=Buffer.allocUnsafe(r.length),t=0,n=r.length;t<n;t++)e.writeUInt8(r.charCodeAt(t),t);return e}function af(r){var e=r.byteLength||r.length,t=r.byteOffset||0;return Buffer.from(r.buffer||r,t,e)}function Qy(r,e){if(!r.length)return e(BP);Zy(r,WP,function(t,n){return e(Buffer.concat(n))})}function WP(r,e){function t(n){var i=""+n.length,s;if(typeof n=="string"){s=Buffer.allocUnsafe(i.length+2),s[0]=0;for(var o=0;o<i.length;o++)s[o+1]=parseInt(i[o],10);return s[s.length-1]=255,e(null,Buffer.concat([s,HP(n)]))}s=Buffer.allocUnsafe(i.length+2),s[0]=1;for(var o=0;o<i.length;o++)s[o+1]=parseInt(i[o],10);s[s.length-1]=255,e(null,Buffer.concat([s,n]))}sf(r,!0,!0,t)}function ex(r,e,t){typeof e=="function"&&(t=e,e=null);for(var n=r,i=[],s;n.length>0;){var o="",a=n[0]===0;for(s=1;n[s]!==255;s++){if(o.length>310)return t(Cr,0,1);o+=""+n[s]}n=n.slice(o.length+1);var c=parseInt(o,10),l=n.slice(1,c+1);a&&(l=$P(l)),i.push(l),n=n.slice(c+1)}var u=i.length;for(s=0;s<u;s++){var f=i[s];t(of(f,e,!0),s,u)}}});var nx=A((M6,rx)=>{var Ki=1e3,Yi=Ki*60,Xi=Yi*60,ni=Xi*24,GP=ni*7,zP=ni*365.25;rx.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return VP(r);if(t==="number"&&isFinite(r))return e.long?YP(r):KP(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function VP(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*zP;case"weeks":case"week":case"w":return t*GP;case"days":case"day":case"d":return t*ni;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Xi;case"minutes":case"minute":case"mins":case"min":case"m":return t*Yi;case"seconds":case"second":case"secs":case"sec":case"s":return t*Ki;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function KP(r){var e=Math.abs(r);return e>=ni?Math.round(r/ni)+"d":e>=Xi?Math.round(r/Xi)+"h":e>=Yi?Math.round(r/Yi)+"m":e>=Ki?Math.round(r/Ki)+"s":r+"ms"}function YP(r){var e=Math.abs(r);return e>=ni?hc(r,e,ni,"day"):e>=Xi?hc(r,e,Xi,"hour"):e>=Yi?hc(r,e,Yi,"minute"):e>=Ki?hc(r,e,Ki,"second"):r+" ms"}function hc(r,e,t,n){var i=e>=t*1.5;return Math.round(r/t)+" "+n+(i?"s":"")}});var cf=A((P6,ix)=>{function XP(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=a,t.humanize=nx(),t.destroy=l,Object.keys(r).forEach(u=>{t[u]=r[u]}),t.names=[],t.skips=[],t.formatters={};function e(u){let f=0;for(let d=0;d<u.length;d++)f=(f<<5)-f+u.charCodeAt(d),f|=0;return t.colors[Math.abs(f)%t.colors.length]}t.selectColor=e;function t(u){let f,d=null,g,y;function b(...C){if(!b.enabled)return;let R=b,O=Number(new Date),P=O-(f||O);R.diff=P,R.prev=f,R.curr=O,f=O,C[0]=t.coerce(C[0]),typeof C[0]!="string"&&C.unshift("%O");let B=0;C[0]=C[0].replace(/%([a-zA-Z%])/g,(F,V)=>{if(F==="%%")return"%";B++;let D=t.formatters[V];if(typeof D=="function"){let $=C[B];F=D.call(R,$),C.splice(B,1),B--}return F}),t.formatArgs.call(R,C),(R.log||t.log).apply(R,C)}return b.namespace=u,b.useColors=t.useColors(),b.color=t.selectColor(u),b.extend=n,b.destroy=t.destroy,Object.defineProperty(b,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(g!==t.namespaces&&(g=t.namespaces,y=t.enabled(u)),y),set:C=>{d=C}}),typeof t.init=="function"&&t.init(b),b}function n(u,f){let d=t(this.namespace+(typeof f>"u"?":":f)+u);return d.log=this.log,d}function i(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let f=(typeof u=="string"?u:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let d of f)d[0]==="-"?t.skips.push(d.slice(1)):t.names.push(d)}function s(u,f){let d=0,g=0,y=-1,b=0;for(;d<u.length;)if(g<f.length&&(f[g]===u[d]||f[g]==="*"))f[g]==="*"?(y=g,b=d,g++):(d++,g++);else if(y!==-1)g=y+1,b++,d=b;else return!1;for(;g<f.length&&f[g]==="*";)g++;return g===f.length}function o(){let u=[...t.names,...t.skips.map(f=>"-"+f)].join(",");return t.enable(""),u}function a(u){for(let f of t.skips)if(s(u,f))return!1;for(let f of t.names)if(s(u,f))return!0;return!1}function c(u){return u instanceof Error?u.stack||u.message:u}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}ix.exports=XP});var sx=A(($t,mc)=>{$t.formatArgs=ZP;$t.save=QP;$t.load=eI;$t.useColors=JP;$t.storage=tI();$t.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();$t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function JP(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let r;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(r=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(r[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function ZP(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+mc.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}$t.log=console.debug||console.log||(()=>{});function QP(r){try{r?$t.storage.setItem("debug",r):$t.storage.removeItem("debug")}catch{}}function eI(){let r;try{r=$t.storage.getItem("debug")||$t.storage.getItem("DEBUG")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function tI(){try{return localStorage}catch{}}mc.exports=cf()($t);var{formatters:rI}=mc.exports;rI.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var ax=A((I6,ox)=>{"use strict";ox.exports=(r,e=process.argv)=>{let t=r.startsWith("-")?"":r.length===1?"-":"--",n=e.indexOf(t+r),i=e.indexOf("--");return n!==-1&&(i===-1||n<i)}});var ux=A((N6,lx)=>{"use strict";var nI=require("os"),cx=require("tty"),ar=ax(),{env:mt}=process,jn;ar("no-color")||ar("no-colors")||ar("color=false")||ar("color=never")?jn=0:(ar("color")||ar("colors")||ar("color=true")||ar("color=always"))&&(jn=1);"FORCE_COLOR"in mt&&(mt.FORCE_COLOR==="true"?jn=1:mt.FORCE_COLOR==="false"?jn=0:jn=mt.FORCE_COLOR.length===0?1:Math.min(parseInt(mt.FORCE_COLOR,10),3));function lf(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function uf(r,e){if(jn===0)return 0;if(ar("color=16m")||ar("color=full")||ar("color=truecolor"))return 3;if(ar("color=256"))return 2;if(r&&!e&&jn===void 0)return 0;let t=jn||0;if(mt.TERM==="dumb")return t;if(process.platform==="win32"){let n=nI.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in mt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in mt)||mt.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in mt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(mt.TEAMCITY_VERSION)?1:0;if(mt.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in mt){let n=parseInt((mt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(mt.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(mt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(mt.TERM)||"COLORTERM"in mt?1:t}function iI(r){let e=uf(r,r&&r.isTTY);return lf(e)}lx.exports={supportsColor:iI,stdout:lf(uf(!0,cx.isatty(1))),stderr:lf(uf(!0,cx.isatty(2)))}});var fx=A((gt,vc)=>{var sI=require("tty"),gc=require("util");gt.init=fI;gt.log=lI;gt.formatArgs=aI;gt.save=uI;gt.load=pI;gt.useColors=oI;gt.destroy=gc.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");gt.colors=[6,2,3,4,5,1];try{let r=ux();r&&(r.stderr||r).level>=2&&(gt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}gt.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(i,s)=>s.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),r[t]=n,r},{});function oI(){return"colors"in gt.inspectOpts?!!gt.inspectOpts.colors:sI.isatty(process.stderr.fd)}function aI(r){let{namespace:e,useColors:t}=this;if(t){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),s=` ${i};1m${e} \x1B[0m`;r[0]=s+r[0].split(`
|
|
6
6
|
`).join(`
|
|
7
7
|
`+s),r.push(i+"m+"+vc.exports.humanize(this.diff)+"\x1B[0m")}else r[0]=cI()+e+" "+r[0]}function cI(){return gt.inspectOpts.hideDate?"":new Date().toISOString()+" "}function lI(...r){return process.stderr.write(gc.formatWithOptions(gt.inspectOpts,...r)+`
|
|
8
8
|
`)}function uI(r){r?process.env.DEBUG=r:delete process.env.DEBUG}function pI(){return process.env.DEBUG}function fI(r){r.inspectOpts={};let e=Object.keys(gt.inspectOpts);for(let t=0;t<e.length;t++)r.inspectOpts[e[t]]=gt.inspectOpts[e[t]]}vc.exports=cf()(gt);var{formatters:px}=vc.exports;px.o=function(r){return this.inspectOpts.colors=this.useColors,gc.inspect(r,this.inspectOpts).split(`
|
|
@@ -20,13 +20,13 @@ Connection: close\r
|
|
|
20
20
|
Content-type: text/html\r
|
|
21
21
|
Content-Length: `+i+`\r
|
|
22
22
|
\r
|
|
23
|
-
`+n)}r.destroy()}var No=[0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];function ID(r){if(r+="",r.length<1)return!1;if(!No[r.charCodeAt(0)])return te('invalid header, index 0, char "%s"',r.charCodeAt(0)),!0;if(r.length<2)return!1;if(!No[r.charCodeAt(1)])return te('invalid header, index 1, char "%s"',r.charCodeAt(1)),!0;if(r.length<3)return!1;if(!No[r.charCodeAt(2)])return te('invalid header, index 2, char "%s"',r.charCodeAt(2)),!0;if(r.length<4)return!1;if(!No[r.charCodeAt(3)])return te('invalid header, index 3, char "%s"',r.charCodeAt(3)),!0;for(let e=4;e<r.length;++e)if(!No[r.charCodeAt(e)])return te('invalid header, index "%i", char "%s"',e,r.charCodeAt(e)),!0;return!1}});var a_=A(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});Fc.Polling=void 0;var ND=ii(),o_=require("zlib"),DD=oc(),LD=Oe(),ur=(0,LD.default)("engine:polling"),BD={gzip:o_.createGzip,deflate:o_.createDeflate},od=class extends ND.Transport{constructor(e){super(e),this.closeTimeout=30*1e3}get name(){return"polling"}onRequest(e){let t=e.res;e.res=null,e.getMethod()==="get"?this.onPollRequest(e,t):e.getMethod()==="post"?this.onDataRequest(e,t):(t.writeStatus("500 Internal Server Error"),t.end())}onPollRequest(e,t){if(this.req){ur("request overlap"),this.onError("overlap from client"),t.writeStatus("500 Internal Server Error"),t.end();return}ur("setting request"),this.req=e,this.res=t;let n=()=>{this.writable=!1,this.onError("poll connection closed prematurely")},i=()=>{this.req=this.res=null};e.cleanup=i,t.onAborted(n),this.writable=!0,this.emit("ready"),this.writable&&this.shouldClose&&(ur("triggering empty send to append close packet"),this.send([{type:"noop"}]))}onDataRequest(e,t){if(this.dataReq){this.onError("data request overlap from client"),t.writeStatus("500 Internal Server Error"),t.end();return}let n=Number(e.headers["content-length"]);if(!n){this.onError("content-length header required"),t.writeStatus("411 Length Required").end();return}if(n>this.maxHttpBufferSize){this.onError("payload too large"),t.writeStatus("413 Payload Too Large").end();return}if(e.headers["content-type"]==="application/octet-stream"&&this.protocol===4)return this.onError("invalid content");this.dataReq=e,this.dataRes=t;let s,o=0,a={"Content-Type":"text/html"};this.headers(e,a);for(let l in a)t.writeHeader(l,String(a[l]));let c=l=>{this.onData(l.toString()),this.onDataRequestCleanup(),t.cork(()=>{t.end("ok")})};t.onAborted(()=>{this.onDataRequestCleanup(),this.onError("data request connection closed prematurely")}),t.onData((l,u)=>{let f=o+l.byteLength;if(f>n){this.onError("content-length mismatch"),t.close();return}if(!s){if(u){c(Buffer.from(l));return}s=Buffer.allocUnsafe(n)}if(Buffer.from(l).copy(s,o),u){if(f!=n){this.onError("content-length mismatch"),t.writeStatus("400 Content-Length Mismatch").end(),this.onDataRequestCleanup();return}c(s);return}o=f})}onDataRequestCleanup(){this.dataReq=this.dataRes=null}onData(e){ur('received "%s"',e);let t=n=>{if(n.type==="close")return ur("got xhr close packet"),this.onClose(),!1;this.onPacket(n)};this.protocol===3?this.parser.decodePayload(e,t):this.parser.decodePayload(e).forEach(t)}onClose(){this.writable&&this.send([{type:"noop"}]),super.onClose()}send(e){this.writable=!1,this.shouldClose&&(ur("appending close packet to payload"),e.push({type:"close"}),this.shouldClose(),this.shouldClose=null);let t=n=>{let i=e.some(s=>s.options&&s.options.compress);this.write(n,{compress:i})};this.protocol===3?this.parser.encodePayload(e,this.supportsBinary,t):this.parser.encodePayload(e,t)}write(e,t){ur('writing "%s"',e),this.doWrite(e,t,()=>{this.req.cleanup(),this.emit("drain")})}doWrite(e,t,n){let i=typeof e=="string",o={"Content-Type":i?"text/plain; charset=UTF-8":"application/octet-stream"},a=u=>{this.headers(this.req,o),this.res.cork(()=>{Object.keys(o).forEach(f=>{this.res.writeHeader(f,String(o[f]))}),this.res.end(u)}),n()};if(!this.httpCompression||!t.compress){a(e);return}if((i?Buffer.byteLength(e):e.length)<this.httpCompression.threshold){a(e);return}let l=DD(this.req).encodings(["gzip","deflate"]);if(!l){a(e);return}this.compress(e,l,(u,f)=>{if(u){this.res.writeStatus("500 Internal Server Error"),this.res.end(),n(u);return}o["Content-Encoding"]=l,a(f)})}compress(e,t,n){ur("compressing");let i=[],s=0;BD[t](this.httpCompression).on("error",n).on("data",function(o){i.push(o),s+=o.length}).on("end",function(){n(null,Buffer.concat(i,s))}).end(e)}doClose(e){ur("closing");let t,n=()=>{clearTimeout(t),e(),this.onClose()};this.writable?(ur("transport writable - closing right away"),this.send([{type:"close"}]),n()):this.discarded?(ur("transport discarded - closing right away"),n()):(ur("transport not writable - buffering orderly close"),this.shouldClose=n,t=setTimeout(n,this.closeTimeout))}headers(e,t){t=t||{};let n=e.headers["user-agent"];return n&&(~n.indexOf(";MSIE")||~n.indexOf("Trident/"))&&(t["X-XSS-Protection"]="0"),t["cache-control"]="no-store",this.emit("headers",t,e),t}};Fc.Polling=od});var l_=A(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.WebSocket=void 0;var jD=ii(),FD=Oe(),c_=(0,FD.default)("engine:ws"),ad=class extends jD.Transport{constructor(e){super(e),this.writable=!1,this.perMessageDeflate=null}get name(){return"websocket"}get handlesUpgrades(){return!0}send(e){this.writable=!1;for(let t=0;t<e.length;t++){let n=e[t],i=t+1===e.length,s=o=>{let a=typeof o!="string",c=this.perMessageDeflate&&Buffer.byteLength(o)>this.perMessageDeflate.threshold;c_('writing "%s"',o),this.socket.send(o,a,c),i&&(this.emit("drain"),this.writable=!0,this.emit("ready"))};n.options&&typeof n.options.wsPreEncoded=="string"?s(n.options.wsPreEncoded):this.parser.encodePacket(n,this.supportsBinary,s)}}doClose(e){c_("closing"),e&&e(),this.socket.end()}};Uc.WebSocket=ad});var u_=A(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var UD=a_(),qD=l_();cd.default={polling:UD.Polling,websocket:qD.WebSocket}});var p_=A(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.uServer=void 0;var $D=Oe(),ui=sd(),HD=u_(),qn=(0,$D.default)("engine:uws"),ld=class extends ui.BaseServer{init(){}cleanup(){}prepare(e,t){e.method=e.getMethod().toUpperCase(),e.url=e.getUrl();let n=new URLSearchParams(e.getQuery());e._query=Object.fromEntries(n.entries()),e.headers={},e.forEach((i,s)=>{e.headers[i]=s}),e.connection={remoteAddress:Buffer.from(t.getRemoteAddressAsText()).toString()},t.onAborted(()=>{qn("response has been aborted")})}createTransport(e,t){return new HD.default[e](t)}attach(e,t={}){let n=this._computePath(t);e.any(n,this.handleRequest.bind(this)).ws(n,{compression:t.compression,idleTimeout:t.idleTimeout,maxBackpressure:t.maxBackpressure,maxPayloadLength:this.opts.maxHttpBufferSize,upgrade:this.handleUpgrade.bind(this),open:i=>{let s=i.getUserData().transport;s.socket=i,s.writable=!0,s.emit("ready")},message:(i,s,o)=>{i.getUserData().transport.onData(o?s:Buffer.from(s).toString())},close:(i,s,o)=>{i.getUserData().transport.onClose(s,o)}})}_applyMiddlewares(e,t,n){if(this.middlewares.length===0)return n();e.res=new ud(t),super._applyMiddlewares(e,e.res,i=>{e.res.writeHead(),n(i)})}handleRequest(e,t){qn('handling "%s" http request "%s"',t.getMethod(),t.getUrl()),this.prepare(t,e),t.res=e;let n=(i,s)=>{if(i!==void 0){this.emit("connection_error",{req:t,code:i,message:ui.Server.errorMessages[i],context:s}),this.abortRequest(t.res,i,s);return}if(t._query.sid)qn("setting new request for existing client"),this.clients[t._query.sid].transport.onRequest(t);else{let o=(a,c)=>this.abortRequest(e,a,c);this.handshake(t._query.transport,t,o)}};this._applyMiddlewares(t,e,i=>{i?n(ui.Server.errors.BAD_REQUEST,{name:"MIDDLEWARE_FAILURE"}):this.verify(t,!1,n)})}handleUpgrade(e,t,n){qn("on upgrade"),this.prepare(t,e),t.res=e;let i=async(s,o)=>{if(s!==void 0){this.emit("connection_error",{req:t,code:s,message:ui.Server.errorMessages[s],context:o}),this.abortRequest(e,s,o);return}let a=t._query.sid,c;if(a){let f=this.clients[a];if(f){if(f.upgrading)return qn("transport has already been trying to upgrade"),e.close();if(f.upgraded)return qn("transport had already been upgraded"),e.close();qn("upgrading existing transport"),c=this.createTransport(t._query.transport,t),f._maybeUpgrade(c)}else return qn("upgrade attempt for closed client"),e.close()}else if(c=await this.handshake(t._query.transport,t,(f,d)=>this.abortRequest(e,f,d)),!c)return;let l={};!a&&this.emit("initial_headers",l,t),this.emit("headers",l,t),t.res.writeStatus("101 Switching Protocols"),Object.keys(l).forEach(f=>{t.res.writeHeader(f,l[f])}),e.upgrade({transport:c},t.getHeader("sec-websocket-key"),t.getHeader("sec-websocket-protocol"),t.getHeader("sec-websocket-extensions"),n)};this._applyMiddlewares(t,e,s=>{s?i(ui.Server.errors.BAD_REQUEST,{name:"MIDDLEWARE_FAILURE"}):this.verify(t,!0,i)})}abortRequest(e,t,n){let i=t===ui.Server.errors.FORBIDDEN?"403 Forbidden":"400 Bad Request",s=n&&n.message?n.message:ui.Server.errorMessages[t];e.writeStatus(i),e.writeHeader("Content-Type","application/json"),e.end(JSON.stringify({code:t,message:s}))}};qc.uServer=ld;var ud=class{constructor(e){this.res=e,this.statusWritten=!1,this.headers=[],this.isAborted=!1}set statusCode(e){e&&this.writeStatus(e===200?"200 OK":"204 No Content")}writeHead(e){this.statusCode=e}setHeader(e,t){Array.isArray(t)?t.forEach(n=>{this.writeHeader(e,n)}):this.writeHeader(e,t)}removeHeader(){}getHeader(){}writeStatus(e){if(!this.isAborted)return this.res.writeStatus(e),this.statusWritten=!0,this.writeBufferedHeaders(),this}writeHeader(e,t){this.isAborted||e!=="Content-Length"&&(this.statusWritten?this.res.writeHeader(e,t):this.headers.push([e,t]))}writeBufferedHeaders(){this.headers.forEach(([e,t])=>{this.res.writeHeader(e,t)})}end(e){this.isAborted||this.res.cork(()=>{this.statusWritten||this.writeBufferedHeaders(),this.res.end(e)})}onData(e){this.isAborted||this.res.onData(e)}onAborted(e){this.isAborted||this.res.onAborted(()=>{this.isAborted=!0,e()})}cork(e){this.isAborted||this.res.cork(e)}}});var m_=A(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.protocol=yt.Transport=yt.Socket=yt.uServer=yt.parser=yt.transports=yt.Server=void 0;yt.listen=YD;yt.attach=h_;var WD=require("http"),f_=sd();Object.defineProperty(yt,"Server",{enumerable:!0,get:function(){return f_.Server}});var GD=xf();yt.transports=GD.default;var d_=To();yt.parser=d_;var zD=p_();Object.defineProperty(yt,"uServer",{enumerable:!0,get:function(){return zD.uServer}});var VD=bf();Object.defineProperty(yt,"Socket",{enumerable:!0,get:function(){return VD.Socket}});var KD=ii();Object.defineProperty(yt,"Transport",{enumerable:!0,get:function(){return KD.Transport}});yt.protocol=d_.protocol;function YD(r,e,t){typeof e=="function"&&(t=e,e={});let n=(0,WD.createServer)(function(s,o){o.writeHead(501),o.end("Not Implemented")}),i=h_(n,e);return i.httpServer=n,n.listen(r,t),i}function h_(r,e){let t=new f_.Server(e);return t.attach(r,e),t}});var v_=A(g_=>{g_.Emitter=Mt;function Mt(r){if(r)return XD(r)}function XD(r){for(var e in Mt.prototype)r[e]=Mt.prototype[e];return r}Mt.prototype.on=Mt.prototype.addEventListener=function(r,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+r]=this._callbacks["$"+r]||[]).push(e),this};Mt.prototype.once=function(r,e){function t(){this.off(r,t),e.apply(this,arguments)}return t.fn=e,this.on(r,t),this};Mt.prototype.off=Mt.prototype.removeListener=Mt.prototype.removeAllListeners=Mt.prototype.removeEventListener=function(r,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+r];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+r],this;for(var n,i=0;i<t.length;i++)if(n=t[i],n===e||n.fn===e){t.splice(i,1);break}return t.length===0&&delete this._callbacks["$"+r],this};Mt.prototype.emit=function(r){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+r],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(t){t=t.slice(0);for(var n=0,i=t.length;n<i;++n)t[n].apply(this,e)}return this};Mt.prototype.emitReserved=Mt.prototype.emit;Mt.prototype.listeners=function(r){return this._callbacks=this._callbacks||{},this._callbacks["$"+r]||[]};Mt.prototype.hasListeners=function(r){return!!this.listeners(r).length}});var pd=A(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.isBinary=x_;Hc.hasBinary=$c;var JD=typeof ArrayBuffer=="function",ZD=r=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(r):r.buffer instanceof ArrayBuffer,y_=Object.prototype.toString,QD=typeof Blob=="function"||typeof Blob<"u"&&y_.call(Blob)==="[object BlobConstructor]",eL=typeof File=="function"||typeof File<"u"&&y_.call(File)==="[object FileConstructor]";function x_(r){return JD&&(r instanceof ArrayBuffer||ZD(r))||QD&&r instanceof Blob||eL&&r instanceof File}function $c(r,e){if(!r||typeof r!="object")return!1;if(Array.isArray(r)){for(let t=0,n=r.length;t<n;t++)if($c(r[t]))return!0;return!1}if(x_(r))return!0;if(r.toJSON&&typeof r.toJSON=="function"&&arguments.length===1)return $c(r.toJSON(),!0);for(let t in r)if(Object.prototype.hasOwnProperty.call(r,t)&&$c(r[t]))return!0;return!1}});var __=A(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.deconstructPacket=rL;Wc.reconstructPacket=nL;var tL=pd();function rL(r){let e=[],t=r.data,n=r;return n.data=fd(t,e),n.attachments=e.length,{packet:n,buffers:e}}function fd(r,e){if(!r)return r;if((0,tL.isBinary)(r)){let t={_placeholder:!0,num:e.length};return e.push(r),t}else if(Array.isArray(r)){let t=new Array(r.length);for(let n=0;n<r.length;n++)t[n]=fd(r[n],e);return t}else if(typeof r=="object"&&!(r instanceof Date)){let t={};for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=fd(r[n],e));return t}return r}function nL(r,e){return r.data=dd(r.data,e),delete r.attachments,r}function dd(r,e){if(!r)return r;if(r&&r._placeholder===!0){if(typeof r.num=="number"&&r.num>=0&&r.num<e.length)return e[r.num];throw new Error("illegal attachments")}else if(Array.isArray(r))for(let t=0;t<r.length;t++)r[t]=dd(r[t],e);else if(typeof r=="object")for(let t in r)Object.prototype.hasOwnProperty.call(r,t)&&(r[t]=dd(r[t],e));return r}});var Do=A(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.Decoder=Ar.Encoder=Ar.PacketType=Ar.protocol=void 0;Ar.isPacketValid=lL;var iL=v_(),b_=__(),w_=pd(),sL=Oe(),hd=(0,sL.default)("socket.io-parser"),S_=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];Ar.protocol=5;var fe;(function(r){r[r.CONNECT=0]="CONNECT",r[r.DISCONNECT=1]="DISCONNECT",r[r.EVENT=2]="EVENT",r[r.ACK=3]="ACK",r[r.CONNECT_ERROR=4]="CONNECT_ERROR",r[r.BINARY_EVENT=5]="BINARY_EVENT",r[r.BINARY_ACK=6]="BINARY_ACK"})(fe||(Ar.PacketType=fe={}));var md=class{constructor(e){this.replacer=e}encode(e){return hd("encoding packet %j",e),(e.type===fe.EVENT||e.type===fe.ACK)&&(0,w_.hasBinary)(e)?this.encodeAsBinary({type:e.type===fe.EVENT?fe.BINARY_EVENT:fe.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===fe.BINARY_EVENT||e.type===fe.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),hd("encoded %j as %s",e,t),t}encodeAsBinary(e){let t=(0,b_.deconstructPacket)(e),n=this.encodeAsString(t.packet),i=t.buffers;return i.unshift(n),i}};Ar.Encoder=md;var gd=class r extends iL.Emitter{constructor(e){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},typeof e=="function"?{reviver:e}:e)}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);let n=t.type===fe.BINARY_EVENT;n||t.type===fe.BINARY_ACK?(t.type=n?fe.EVENT:fe.ACK,this.reconstructor=new vd(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if((0,w_.isBinary)(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0,n={type:Number(e.charAt(0))};if(fe[n.type]===void 0)throw new Error("unknown packet type "+n.type);if(n.type===fe.BINARY_EVENT||n.type===fe.BINARY_ACK){let s=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);let o=e.substring(s,t);if(o!=Number(o)||e.charAt(t)!=="-")throw new Error("Illegal attachments");let a=Number(o);if(!E_(a)||a<0)throw new Error("Illegal attachments");if(a>this.opts.maxAttachments)throw new Error("too many attachments");n.attachments=a}if(e.charAt(t+1)==="/"){let s=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););n.nsp=e.substring(s,t)}else n.nsp="/";let i=e.charAt(t+1);if(i!==""&&Number(i)==i){let s=t+1;for(;++t;){let o=e.charAt(t);if(o==null||Number(o)!=o){--t;break}if(t===e.length)break}n.id=Number(e.substring(s,t+1))}if(e.charAt(++t)){let s=this.tryParse(e.substr(t));if(r.isPayloadValid(n.type,s))n.data=s;else throw new Error("invalid payload")}return hd("decoded %s as %j",e,n),n}tryParse(e){try{return JSON.parse(e,this.opts.reviver)}catch{return!1}}static isPayloadValid(e,t){switch(e){case fe.CONNECT:return Gc(t);case fe.DISCONNECT:return t===void 0;case fe.CONNECT_ERROR:return typeof t=="string"||Gc(t);case fe.EVENT:case fe.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&S_.indexOf(t[0])===-1);case fe.ACK:case fe.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}};Ar.Decoder=gd;var vd=class{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){let t=(0,b_.reconstructPacket)(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}};function oL(r){return typeof r=="string"}var E_=Number.isInteger||function(r){return typeof r=="number"&&isFinite(r)&&Math.floor(r)===r};function aL(r){return r===void 0||E_(r)}function Gc(r){return Object.prototype.toString.call(r)==="[object Object]"}function cL(r,e){switch(r){case fe.CONNECT:return e===void 0||Gc(e);case fe.DISCONNECT:return e===void 0;case fe.EVENT:return Array.isArray(e)&&(typeof e[0]=="number"||typeof e[0]=="string"&&S_.indexOf(e[0])===-1);case fe.ACK:return Array.isArray(e);case fe.CONNECT_ERROR:return typeof e=="string"||Gc(e);default:return!1}}function lL(r){return oL(r.nsp)&&aL(r.id)&&cL(r.type,r.data)}});var T_=A(cs=>{"use strict";var uL=cs&&cs.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(cs,"__esModule",{value:!0});cs.Client=void 0;var zc=Do(),pL=uL(Oe()),Rr=(0,pL.default)("socket.io:client"),yd=class{constructor(e,t){this.sockets=new Map,this.nsps=new Map,this.server=e,this.conn=t,this.encoder=e.encoder,this.decoder=new e._parser.Decoder,this.id=t.id,this.setup()}get request(){return this.conn.request}setup(){this.onclose=this.onclose.bind(this),this.ondata=this.ondata.bind(this),this.onerror=this.onerror.bind(this),this.ondecoded=this.ondecoded.bind(this),this.decoder.on("decoded",this.ondecoded),this.conn.on("data",this.ondata),this.conn.on("error",this.onerror),this.conn.on("close",this.onclose),this.connectTimeout=setTimeout(()=>{this.nsps.size===0?(Rr("no namespace joined yet, close the client"),this.close()):Rr("the client has already joined a namespace, nothing to do")},this.server._connectTimeout)}connect(e,t={}){if(this.server._nsps.has(e))return Rr("connecting to namespace %s",e),this.doConnect(e,t);this.server._checkNamespace(e,t,n=>{n?this.doConnect(e,t):(Rr("creation of namespace %s was denied",e),this._packet({type:zc.PacketType.CONNECT_ERROR,nsp:e,data:{message:"Invalid namespace"}}))})}doConnect(e,t){let n=this.server.of(e);n._add(this,t,i=>{this.sockets.set(i.id,i),this.nsps.set(n.name,i),this.connectTimeout&&(clearTimeout(this.connectTimeout),this.connectTimeout=void 0)})}_disconnect(){for(let e of this.sockets.values())e.disconnect();this.sockets.clear(),this.close()}_remove(e){if(this.sockets.has(e.id)){let t=this.sockets.get(e.id).nsp.name;this.sockets.delete(e.id),this.nsps.delete(t)}else Rr("ignoring remove for %s",e.id)}close(){this.conn.readyState==="open"&&(Rr("forcing transport close"),this.conn.close(),this.onclose("forced server close"))}_packet(e,t={}){if(this.conn.readyState!=="open"){Rr("ignoring packet write %j",e);return}let n=t.preEncoded?e:this.encoder.encode(e);this.writeToEngine(n,t)}writeToEngine(e,t){if(t.volatile&&!this.conn.transport.writable){Rr("volatile packet is discarded since the transport is not currently writable");return}let n=Array.isArray(e)?e:[e];for(let i of n)this.conn.write(i,t)}ondata(e){try{this.decoder.add(e)}catch(t){Rr("invalid packet format"),this.onerror(t)}}ondecoded(e){let{namespace:t,authPayload:n}=this._parseNamespace(e),i=this.nsps.get(t);!i&&e.type===zc.PacketType.CONNECT?this.connect(t,n):i&&e.type!==zc.PacketType.CONNECT&&e.type!==zc.PacketType.CONNECT_ERROR?process.nextTick(function(){i._onpacket(e)}):(Rr("invalid state (packet type: %s)",e.type),this.close())}_parseNamespace(e){if(this.conn.protocol!==3)return{namespace:e.nsp,authPayload:e.data};let t=new URL(e.nsp,"https://socket.io");return{namespace:t.pathname,authPayload:Object.fromEntries(t.searchParams.entries())}}onerror(e){for(let t of this.sockets.values())t._onerror(e);this.conn.close()}onclose(e,t){Rr("client close with reason %s",e),this.destroy();for(let n of this.sockets.values())n._onclose(e,t);this.sockets.clear(),this.decoder.destroy()}destroy(){this.conn.removeListener("data",this.ondata),this.conn.removeListener("error",this.onerror),this.conn.removeListener("close",this.onclose),this.decoder.removeListener("decoded",this.ondecoded),this.connectTimeout&&(clearTimeout(this.connectTimeout),this.connectTimeout=void 0)}};cs.Client=yd});var Kc=A(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.StrictEventEmitter=void 0;var fL=require("events"),xd=class extends fL.EventEmitter{on(e,t){return super.on(e,t)}once(e,t){return super.once(e,t)}emit(e,...t){return super.emit(e,...t)}emitReserved(e,...t){return super.emit(e,...t)}emitUntyped(e,...t){return super.emit(e,...t)}listeners(e){return super.listeners(e)}};Vc.StrictEventEmitter=xd});var _d=A(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.RESERVED_EVENTS=void 0;Yc.RESERVED_EVENTS=new Set(["connect","connect_error","disconnect","disconnecting","newListener","removeListener"])});var bd=A(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.RemoteSocket=ls.BroadcastOperator=void 0;var dL=_d(),hL=Do(),Xc=class r{constructor(e,t=new Set,n=new Set,i={}){this.adapter=e,this.rooms=t,this.exceptRooms=n,this.flags=i}to(e){let t=new Set(this.rooms);return Array.isArray(e)?e.forEach(n=>t.add(n)):t.add(e),new r(this.adapter,t,this.exceptRooms,this.flags)}in(e){return this.to(e)}except(e){let t=new Set(this.exceptRooms);return Array.isArray(e)?e.forEach(n=>t.add(n)):t.add(e),new r(this.adapter,this.rooms,t,this.flags)}compress(e){let t=Object.assign({},this.flags,{compress:e});return new r(this.adapter,this.rooms,this.exceptRooms,t)}get volatile(){let e=Object.assign({},this.flags,{volatile:!0});return new r(this.adapter,this.rooms,this.exceptRooms,e)}get local(){let e=Object.assign({},this.flags,{local:!0});return new r(this.adapter,this.rooms,this.exceptRooms,e)}timeout(e){let t=Object.assign({},this.flags,{timeout:e});return new r(this.adapter,this.rooms,this.exceptRooms,t)}emit(e,...t){if(dL.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);let n=[e,...t],i={type:hL.PacketType.EVENT,data:n};if(!(typeof n[n.length-1]=="function"))return this.adapter.broadcast(i,{rooms:this.rooms,except:this.exceptRooms,flags:this.flags}),!0;let o=n.pop(),a=!1,c=[],l=setTimeout(()=>{a=!0,o.apply(this,[new Error("operation has timed out"),this.flags.expectSingleResponse?null:c])},this.flags.timeout),u=-1,f=0,d=0,g=()=>{!a&&u===f&&c.length===d&&(clearTimeout(l),o.apply(this,[null,this.flags.expectSingleResponse?c[0]:c]))};return this.adapter.broadcastWithAck(i,{rooms:this.rooms,except:this.exceptRooms,flags:this.flags},y=>{d+=y,f++,g()},y=>{c.push(y),g()}),this.adapter.serverCount().then(y=>{u=y,g()}),!0}emitWithAck(e,...t){return new Promise((n,i)=>{t.push((s,o)=>s?(s.responses=o,i(s)):n(o)),this.emit(e,...t)})}allSockets(){if(!this.adapter)throw new Error("No adapter for this namespace, are you trying to get the list of clients of a dynamic namespace?");return this.adapter.sockets(this.rooms)}fetchSockets(){return this.adapter.fetchSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags}).then(e=>e.map(t=>t.server?t:new Jc(this.adapter,t)))}socketsJoin(e){this.adapter.addSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},Array.isArray(e)?e:[e])}socketsLeave(e){this.adapter.delSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},Array.isArray(e)?e:[e])}disconnectSockets(e=!1){this.adapter.disconnectSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},e)}};ls.BroadcastOperator=Xc;var Jc=class{constructor(e,t){this.id=t.id,this.handshake=t.handshake,this.rooms=new Set(t.rooms),this.data=t.data,this.operator=new Xc(e,new Set([this.id]),new Set,{expectSingleResponse:!0})}timeout(e){return this.operator.timeout(e)}emit(e,...t){return this.operator.emit(e,...t)}join(e){return this.operator.socketsJoin(e)}leave(e){return this.operator.socketsLeave(e)}disconnect(e=!1){return this.operator.disconnectSockets(e),this}};ls.RemoteSocket=Jc});var Sd=A(us=>{"use strict";var A_=us&&us.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(us,"__esModule",{value:!0});us.Socket=void 0;var pr=Do(),mL=A_(Oe()),gL=Kc(),C_=A_(Zp()),vL=bd(),yL=_d(),Et=(0,mL.default)("socket.io:socket"),xL=new Set(["transport error","transport close","forced close","ping timeout","server shutting down","forced server close"]);function k_(){}var wd=class extends gL.StrictEventEmitter{constructor(e,t,n,i){super(),this.nsp=e,this.client=t,this.recovered=!1,this.data={},this.connected=!1,this.acks=new Map,this.fns=[],this.flags={},this.server=e.server,this.adapter=e.adapter,i?(this.id=i.sid,this.pid=i.pid,i.rooms.forEach(s=>this.join(s)),this.data=i.data,i.missedPackets.forEach(s=>{this.packet({type:pr.PacketType.EVENT,data:s})}),this.recovered=!0):(t.conn.protocol===3?this.id=e.name!=="/"?e.name+"#"+t.id:t.id:this.id=C_.default.generateId(),this.server._opts.connectionStateRecovery&&(this.pid=C_.default.generateId())),this.handshake=this.buildHandshake(n),this.on("error",k_)}buildHandshake(e){var t,n,i,s;return{headers:((t=this.request)===null||t===void 0?void 0:t.headers)||{},time:new Date+"",address:this.conn.remoteAddress,xdomain:!!(!((n=this.request)===null||n===void 0)&&n.headers.origin),secure:!this.request||!!this.request.connection.encrypted,issued:+new Date,url:(i=this.request)===null||i===void 0?void 0:i.url,query:((s=this.request)===null||s===void 0?void 0:s._query)||{},auth:e}}emit(e,...t){if(yL.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);let n=[e,...t],i={type:pr.PacketType.EVENT,data:n};if(typeof n[n.length-1]=="function"){let o=this.nsp._ids++;Et("emitting packet with ack id %d",o),this.registerAckCallback(o,n.pop()),i.id=o}let s=Object.assign({},this.flags);return this.flags={},this.nsp.server.opts.connectionStateRecovery?this.adapter.broadcast(i,{rooms:new Set([this.id]),except:new Set,flags:s}):(this.notifyOutgoingListeners(i),this.packet(i,s)),!0}emitWithAck(e,...t){let n=this.flags.timeout!==void 0;return new Promise((i,s)=>{t.push((o,a)=>n?o?s(o):i(a):i(o)),this.emit(e,...t)})}registerAckCallback(e,t){let n=this.flags.timeout;if(n===void 0){this.acks.set(e,t);return}let i=setTimeout(()=>{Et("event with ack id %d has timed out after %d ms",e,n),this.acks.delete(e),t.call(this,new Error("operation has timed out"))},n);this.acks.set(e,(...s)=>{clearTimeout(i),t.apply(this,[null,...s])})}to(e){return this.newBroadcastOperator().to(e)}in(e){return this.newBroadcastOperator().in(e)}except(e){return this.newBroadcastOperator().except(e)}send(...e){return this.emit("message",...e),this}write(...e){return this.emit("message",...e),this}packet(e,t={}){e.nsp=this.nsp.name,t.compress=t.compress!==!1,this.client._packet(e,t)}join(e){return Et("join room %s",e),this.adapter.addAll(this.id,new Set(Array.isArray(e)?e:[e]))}leave(e){return Et("leave room %s",e),this.adapter.del(this.id,e)}leaveAll(){this.adapter.delAll(this.id)}_onconnect(){Et("socket connected - writing packet"),this.connected=!0,this.join(this.id),this.conn.protocol===3?this.packet({type:pr.PacketType.CONNECT}):this.packet({type:pr.PacketType.CONNECT,data:{sid:this.id,pid:this.pid}})}_onpacket(e){switch(Et("got packet %j",e),e.type){case pr.PacketType.EVENT:this.onevent(e);break;case pr.PacketType.BINARY_EVENT:this.onevent(e);break;case pr.PacketType.ACK:this.onack(e);break;case pr.PacketType.BINARY_ACK:this.onack(e);break;case pr.PacketType.DISCONNECT:this.ondisconnect();break}}onevent(e){let t=e.data||[];if(Et("emitting event %j",t),e.id!=null&&(Et("attaching ack callback to event"),t.push(this.ack(e.id))),this._anyListeners&&this._anyListeners.length){let n=this._anyListeners.slice();for(let i of n)i.apply(this,t)}this.dispatch(t)}ack(e){let t=this,n=!1;return function(){if(n)return;let i=Array.prototype.slice.call(arguments);Et("sending ack %j",i),t.packet({id:e,type:pr.PacketType.ACK,data:i}),n=!0}}onack(e){let t=this.acks.get(e.id);typeof t=="function"?(Et("calling ack %s with %j",e.id,e.data),t.apply(this,e.data),this.acks.delete(e.id)):Et("bad ack %s",e.id)}ondisconnect(){Et("got disconnect packet"),this._onclose("client namespace disconnect")}_onerror(e){this.emitReserved("error",e)}_onclose(e,t){if(!this.connected)return this;Et("closing socket - reason %s",e),this.emitReserved("disconnecting",e,t),this.server._opts.connectionStateRecovery&&xL.has(e)&&(Et("connection state recovery is enabled for sid %s",this.id),this.adapter.persistSession({sid:this.id,pid:this.pid,rooms:[...this.rooms],data:this.data})),this._cleanup(),this.client._remove(this),this.connected=!1,this.emitReserved("disconnect",e,t)}_cleanup(){this.leaveAll(),this.nsp._remove(this),this.join=k_}_error(e){this.packet({type:pr.PacketType.CONNECT_ERROR,data:e})}disconnect(e=!1){return this.connected?(e?this.client._disconnect():(this.packet({type:pr.PacketType.DISCONNECT}),this._onclose("server namespace disconnect")),this):this}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}get broadcast(){return this.newBroadcastOperator()}get local(){return this.newBroadcastOperator().local}timeout(e){return this.flags.timeout=e,this}dispatch(e){Et("dispatching an event %j",e),this.run(e,t=>{process.nextTick(()=>{if(t)return this._onerror(t);this.connected?super.emitUntyped.apply(this,e):Et("ignore packet received after disconnection")})})}use(e){return this.fns.push(e),this}run(e,t){if(!this.fns.length)return t();let n=this.fns.slice(0);function i(s){n[s](e,o=>{if(o)return t(o);if(!n[s+1])return t();i(s+1)})}i(0)}get disconnected(){return!this.connected}get request(){return this.client.request}get conn(){return this.client.conn}get rooms(){return this.adapter.socketRooms(this.id)||new Set}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){let t=this._anyListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){let t=this._anyOutgoingListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let t=this._anyOutgoingListeners.slice();for(let n of t)n.apply(this,e.data)}}newBroadcastOperator(){let e=Object.assign({},this.flags);return this.flags={},new vL.BroadcastOperator(this.adapter,new Set,new Set([this.id]),e)}};us.Socket=wd});var Td=A(fn=>{"use strict";var _L=fn&&fn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fn,"__esModule",{value:!0});fn.Namespace=fn.RESERVED_EVENTS=void 0;var R_=Sd(),bL=Kc(),wL=_L(Oe()),Zt=bd(),ps=(0,wL.default)("socket.io:namespace");fn.RESERVED_EVENTS=new Set(["connect","connection","new_namespace"]);var Ed=class extends bL.StrictEventEmitter{constructor(e,t){super(),this.sockets=new Map,this._preConnectSockets=new Map,this._fns=[],this._ids=0,this.server=e,this.name=t,this._initAdapter()}_initAdapter(){this.adapter=new(this.server.adapter())(this),Promise.resolve(this.adapter.init()).catch(e=>{ps("error while initializing adapter: %s",e)})}use(e){return this._fns.push(e),this}run(e,t){if(!this._fns.length)return t();let n=this._fns.slice(0);function i(s){n[s](e,o=>{if(o)return t(o);if(!n[s+1])return t();i(s+1)})}i(0)}to(e){return new Zt.BroadcastOperator(this.adapter).to(e)}in(e){return new Zt.BroadcastOperator(this.adapter).in(e)}except(e){return new Zt.BroadcastOperator(this.adapter).except(e)}async _add(e,t,n){var i;ps("adding socket to nsp %s",this.name);let s=await this._createSocket(e,t);if(this._preConnectSockets.set(s.id,s),!((i=this.server.opts.connectionStateRecovery)===null||i===void 0)&&i.skipMiddlewares&&s.recovered&&e.conn.readyState==="open")return this._doConnect(s,n);this.run(s,o=>{process.nextTick(()=>{if(e.conn.readyState!=="open"){ps("next called after client was closed - ignoring socket"),s._cleanup();return}if(o)return ps("middleware error, sending CONNECT_ERROR packet to the client"),s._cleanup(),e.conn.protocol===3?s._error(o.data||o.message):s._error({message:o.message,data:o.data});this._doConnect(s,n)})})}async _createSocket(e,t){let n=t.pid,i=t.offset;if(this.server.opts.connectionStateRecovery&&typeof n=="string"&&typeof i=="string"){let s;try{s=await this.adapter.restoreSession(n,i)}catch(o){ps("error while restoring session: %s",o)}if(s)return ps("connection state recovered for sid %s",s.sid),new R_.Socket(this,e,t,s)}return new R_.Socket(this,e,t)}_doConnect(e,t){this._preConnectSockets.delete(e.id),this.sockets.set(e.id,e),e._onconnect(),t&&t(e),this.emitReserved("connect",e),this.emitReserved("connection",e)}_remove(e){this.sockets.delete(e.id)||this._preConnectSockets.delete(e.id)}emit(e,...t){return new Zt.BroadcastOperator(this.adapter).emit(e,...t)}send(...e){return this.emit("message",...e),this}write(...e){return this.emit("message",...e),this}serverSideEmit(e,...t){if(fn.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);return t.unshift(e),this.adapter.serverSideEmit(t),!0}serverSideEmitWithAck(e,...t){return new Promise((n,i)=>{t.push((s,o)=>s?(s.responses=o,i(s)):n(o)),this.serverSideEmit(e,...t)})}_onServerSideEmit(e){super.emitUntyped.apply(this,e)}allSockets(){return new Zt.BroadcastOperator(this.adapter).allSockets()}compress(e){return new Zt.BroadcastOperator(this.adapter).compress(e)}get volatile(){return new Zt.BroadcastOperator(this.adapter).volatile}get local(){return new Zt.BroadcastOperator(this.adapter).local}timeout(e){return new Zt.BroadcastOperator(this.adapter).timeout(e)}fetchSockets(){return new Zt.BroadcastOperator(this.adapter).fetchSockets()}socketsJoin(e){return new Zt.BroadcastOperator(this.adapter).socketsJoin(e)}socketsLeave(e){return new Zt.BroadcastOperator(this.adapter).socketsLeave(e)}disconnectSockets(e=!1){return new Zt.BroadcastOperator(this.adapter).disconnectSockets(e)}};fn.Namespace=Ed});var N_=A(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});Lo.encode=Cd;Lo.decode=SL;Lo.yeast=EL;var P_="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Zc=64,I_={},O_=0,$n=0,M_;function Cd(r){let e="";do e=P_[r%Zc]+e,r=Math.floor(r/Zc);while(r>0);return e}function SL(r){let e=0;for($n=0;$n<r.length;$n++)e=e*Zc+I_[r.charAt($n)];return e}function EL(){let r=Cd(+new Date);return r!==M_?(O_=0,M_=r):r+"."+Cd(O_++)}for(;$n<Zc;$n++)I_[P_[$n]]=$n});var dn=A((DW,B_)=>{"use strict";var D_=["nodebuffer","arraybuffer","fragments"],L_=typeof Blob<"u";L_&&D_.push("blob");B_.exports={BINARY_TYPES:D_,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:L_,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Bo=A((LW,Qc)=>{"use strict";var{EMPTY_BUFFER:TL}=dn(),kd=Buffer[Symbol.species];function CL(r,e){if(r.length===0)return TL;if(r.length===1)return r[0];let t=Buffer.allocUnsafe(e),n=0;for(let i=0;i<r.length;i++){let s=r[i];t.set(s,n),n+=s.length}return n<e?new kd(t.buffer,t.byteOffset,n):t}function j_(r,e,t,n,i){for(let s=0;s<i;s++)t[n+s]=r[s]^e[s&3]}function F_(r,e){for(let t=0;t<r.length;t++)r[t]^=e[t&3]}function kL(r){return r.length===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.length)}function Ad(r){if(Ad.readOnly=!0,Buffer.isBuffer(r))return r;let e;return r instanceof ArrayBuffer?e=new kd(r):ArrayBuffer.isView(r)?e=new kd(r.buffer,r.byteOffset,r.byteLength):(e=Buffer.from(r),Ad.readOnly=!1),e}Qc.exports={concat:CL,mask:j_,toArrayBuffer:kL,toBuffer:Ad,unmask:F_};if(!process.env.WS_NO_BUFFER_UTIL)try{let r=Pf();Qc.exports.mask=function(e,t,n,i,s){s<48?j_(e,t,n,i,s):r.mask(e,t,n,i,s)},Qc.exports.unmask=function(e,t){e.length<32?F_(e,t):r.unmask(e,t)}}catch{}});var $_=A((BW,q_)=>{"use strict";var U_=Symbol("kDone"),Rd=Symbol("kRun"),Od=class{constructor(e){this[U_]=()=>{this.pending--,this[Rd]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[Rd]()}[Rd](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[U_])}}};q_.exports=Od});var Fo=A((jW,z_)=>{"use strict";var jo=require("zlib"),H_=Bo(),AL=$_(),{kStatusCode:W_}=dn(),RL=Buffer[Symbol.species],OL=Buffer.from([0,0,255,255]),tl=Symbol("permessage-deflate"),hn=Symbol("total-length"),fs=Symbol("callback"),Hn=Symbol("buffers"),ds=Symbol("error"),el,Md=class{constructor(e,t,n){if(this._maxPayload=n|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!el){let i=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;el=new AL(i)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[fs];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,n=e.find(i=>!(t.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(t.serverMaxWindowBits===!1||typeof t.serverMaxWindowBits=="number"&&t.serverMaxWindowBits>i.server_max_window_bits)||typeof t.clientMaxWindowBits=="number"&&!i.client_max_window_bits));if(!n)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(n.server_no_context_takeover=!0),t.clientNoContextTakeover&&(n.client_no_context_takeover=!0),typeof t.serverMaxWindowBits=="number"&&(n.server_max_window_bits=t.serverMaxWindowBits),typeof t.clientMaxWindowBits=="number"?n.client_max_window_bits=t.clientMaxWindowBits:(n.client_max_window_bits===!0||t.clientMaxWindowBits===!1)&&delete n.client_max_window_bits,n}acceptAsClient(e){let t=e[0];if(this._options.clientNoContextTakeover===!1&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!t.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(t.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return t}normalizeParams(e){return e.forEach(t=>{Object.keys(t).forEach(n=>{let i=t[n];if(i.length>1)throw new Error(`Parameter "${n}" must have only a single value`);if(i=i[0],n==="client_max_window_bits"){if(i!==!0){let s=+i;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${n}": ${i}`);i=s}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${n}": ${i}`)}else if(n==="server_max_window_bits"){let s=+i;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${n}": ${i}`);i=s}else if(n==="client_no_context_takeover"||n==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${n}": ${i}`)}else throw new Error(`Unknown parameter "${n}"`);t[n]=i})}),e}decompress(e,t,n){el.add(i=>{this._decompress(e,t,(s,o)=>{i(),n(s,o)})})}compress(e,t,n){el.add(i=>{this._compress(e,t,(s,o)=>{i(),n(s,o)})})}_decompress(e,t,n){let i=this._isServer?"client":"server";if(!this._inflate){let s=`${i}_max_window_bits`,o=typeof this.params[s]!="number"?jo.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=jo.createInflateRaw({...this._options.zlibInflateOptions,windowBits:o}),this._inflate[tl]=this,this._inflate[hn]=0,this._inflate[Hn]=[],this._inflate.on("error",PL),this._inflate.on("data",G_)}this._inflate[fs]=n,this._inflate.write(e),t&&this._inflate.write(OL),this._inflate.flush(()=>{let s=this._inflate[ds];if(s){this._inflate.close(),this._inflate=null,n(s);return}let o=H_.concat(this._inflate[Hn],this._inflate[hn]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[hn]=0,this._inflate[Hn]=[],t&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),n(null,o)})}_compress(e,t,n){let i=this._isServer?"server":"client";if(!this._deflate){let s=`${i}_max_window_bits`,o=typeof this.params[s]!="number"?jo.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=jo.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:o}),this._deflate[hn]=0,this._deflate[Hn]=[],this._deflate.on("data",ML)}this._deflate[fs]=n,this._deflate.write(e),this._deflate.flush(jo.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=H_.concat(this._deflate[Hn],this._deflate[hn]);t&&(s=new RL(s.buffer,s.byteOffset,s.length-4)),this._deflate[fs]=null,this._deflate[hn]=0,this._deflate[Hn]=[],t&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),n(null,s)})}};z_.exports=Md;function ML(r){this[Hn].push(r),this[hn]+=r.length}function G_(r){if(this[hn]+=r.length,this[tl]._maxPayload<1||this[hn]<=this[tl]._maxPayload){this[Hn].push(r);return}this[ds]=new RangeError("Max payload size exceeded"),this[ds].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[ds][W_]=1009,this.removeListener("data",G_),this.reset()}function PL(r){if(this[tl]._inflate=null,this[ds]){this[fs](this[ds]);return}r[W_]=1007,this[fs](r)}});var hs=A((FW,rl)=>{"use strict";var{isUtf8:V_}=require("buffer"),{hasBlob:IL}=dn(),NL=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function DL(r){return r>=1e3&&r<=1014&&r!==1004&&r!==1005&&r!==1006||r>=3e3&&r<=4999}function Pd(r){let e=r.length,t=0;for(;t<e;)if((r[t]&128)===0)t++;else if((r[t]&224)===192){if(t+1===e||(r[t+1]&192)!==128||(r[t]&254)===192)return!1;t+=2}else if((r[t]&240)===224){if(t+2>=e||(r[t+1]&192)!==128||(r[t+2]&192)!==128||r[t]===224&&(r[t+1]&224)===128||r[t]===237&&(r[t+1]&224)===160)return!1;t+=3}else if((r[t]&248)===240){if(t+3>=e||(r[t+1]&192)!==128||(r[t+2]&192)!==128||(r[t+3]&192)!==128||r[t]===240&&(r[t+1]&240)===128||r[t]===244&&r[t+1]>143||r[t]>244)return!1;t+=4}else return!1;return!0}function LL(r){return IL&&typeof r=="object"&&typeof r.arrayBuffer=="function"&&typeof r.type=="string"&&typeof r.stream=="function"&&(r[Symbol.toStringTag]==="Blob"||r[Symbol.toStringTag]==="File")}rl.exports={isBlob:LL,isValidStatusCode:DL,isValidUTF8:Pd,tokenChars:NL};if(V_)rl.exports.isValidUTF8=function(r){return r.length<24?Pd(r):V_(r)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let r=Ff();rl.exports.isValidUTF8=function(e){return e.length<32?Pd(e):r(e)}}catch{}});var Bd=A((UW,eb)=>{"use strict";var{Writable:BL}=require("stream"),K_=Fo(),{BINARY_TYPES:jL,EMPTY_BUFFER:Y_,kStatusCode:FL,kWebSocket:UL}=dn(),{concat:Id,toArrayBuffer:qL,unmask:$L}=Bo(),{isValidStatusCode:HL,isValidUTF8:X_}=hs(),nl=Buffer[Symbol.species],fr=0,J_=1,Z_=2,Q_=3,Nd=4,Dd=5,il=6,Ld=class extends BL{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||jL[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[UL]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=fr}_write(e,t,n){if(this._opcode===8&&this._state==fr)return n();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(n)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let n=this._buffers[0];return this._buffers[0]=new nl(n.buffer,n.byteOffset+e,n.length-e),new nl(n.buffer,n.byteOffset,e)}let t=Buffer.allocUnsafe(e);do{let n=this._buffers[0],i=t.length-e;e>=n.length?t.set(this._buffers.shift(),i):(t.set(new Uint8Array(n.buffer,n.byteOffset,e),i),this._buffers[0]=new nl(n.buffer,n.byteOffset+e,n.length-e)),e-=n.length}while(e>0);return t}startLoop(e){this._loop=!0;do switch(this._state){case fr:this.getInfo(e);break;case J_:this.getPayloadLength16(e);break;case Z_:this.getPayloadLength64(e);break;case Q_:this.getMask();break;case Nd:this.getData(e);break;case Dd:case il:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<2){this._loop=!1;return}let t=this.consume(2);if((t[0]&48)!==0){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(i);return}let n=(t[0]&64)===64;if(n&&!this._extensions[K_.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._fin=(t[0]&128)===128,this._opcode=t[0]&15,this._payloadLength=t[1]&127,this._opcode===0){if(n){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._compressed=n}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");e(i);return}if(n){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");e(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(t[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");e(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");e(i);return}this._payloadLength===126?this._state=J_:this._payloadLength===127?this._state=Z_:this.haveLength(e)}getPayloadLength16(e){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){if(this._bufferedBytes<8){this._loop=!1;return}let t=this.consume(8),n=t.readUInt32BE(0);if(n>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");e(i);return}this._payloadLength=n*Math.pow(2,32)+t.readUInt32BE(4),this.haveLength(e)}haveLength(e){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let t=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");e(t);return}this._masked?this._state=Q_:this._state=Nd}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Nd}getData(e){let t=Y_;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&$L(t,this._mask)}if(this._opcode>7){this.controlMessage(t,e);return}if(this._compressed){this._state=Dd,this.decompress(t,e);return}t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage(e)}decompress(e,t){this._extensions[K_.extensionName].decompress(e,this._fin,(i,s)=>{if(i)return t(i);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let o=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(o);return}this._fragments.push(s)}this.dataMessage(t),this._state===fr&&this.startLoop(t)})}dataMessage(e){if(!this._fin){this._state=fr;return}let t=this._messageLength,n=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=Id(n,t):this._binaryType==="arraybuffer"?i=qL(Id(n,t)):this._binaryType==="blob"?i=new Blob(n):i=n,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=fr):(this._state=il,setImmediate(()=>{this.emit("message",i,!0),this._state=fr,this.startLoop(e)}))}else{let i=Id(n,t);if(!this._skipUTF8Validation&&!X_(i)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");e(s);return}this._state===Dd||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=fr):(this._state=il,setImmediate(()=>{this.emit("message",i,!1),this._state=fr,this.startLoop(e)}))}}controlMessage(e,t){if(this._opcode===8){if(e.length===0)this._loop=!1,this.emit("conclude",1005,Y_),this.end();else{let n=e.readUInt16BE(0);if(!HL(n)){let s=this.createError(RangeError,`invalid status code ${n}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");t(s);return}let i=new nl(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!X_(i)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(s);return}this._loop=!1,this.emit("conclude",n,i),this.end()}this._state=fr;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",e),this._state=fr):(this._state=il,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=fr,this.startLoop(t)}))}createError(e,t,n,i,s){this._loop=!1,this._errored=!0;let o=new e(n?`Invalid WebSocket frame: ${t}`:t);return Error.captureStackTrace(o,this.createError),o.code=s,o[FL]=i,o}};eb.exports=Ld});var Ud=A(($W,nb)=>{"use strict";var{Duplex:qW}=require("stream"),{randomFillSync:WL}=require("crypto"),tb=Fo(),{EMPTY_BUFFER:GL,kWebSocket:zL,NOOP:VL}=dn(),{isBlob:ms,isValidStatusCode:KL}=hs(),{mask:rb,toBuffer:pi}=Bo(),dr=Symbol("kByteLength"),YL=Buffer.alloc(4),sl=8*1024,fi,gs=sl,Or=0,XL=1,JL=2,jd=class r{constructor(e,t,n){this._extensions=t||{},n&&(this._generateMask=n,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=Or,this.onerror=VL,this[zL]=void 0}static frame(e,t){let n,i=!1,s=2,o=!1;t.mask&&(n=t.maskBuffer||YL,t.generateMask?t.generateMask(n):(gs===sl&&(fi===void 0&&(fi=Buffer.alloc(sl)),WL(fi,0,sl),gs=0),n[0]=fi[gs++],n[1]=fi[gs++],n[2]=fi[gs++],n[3]=fi[gs++]),o=(n[0]|n[1]|n[2]|n[3])===0,s=6);let a;typeof e=="string"?(!t.mask||o)&&t[dr]!==void 0?a=t[dr]:(e=Buffer.from(e),a=e.length):(a=e.length,i=t.mask&&t.readOnly&&!o);let c=a;a>=65536?(s+=8,c=127):a>125&&(s+=2,c=126);let l=Buffer.allocUnsafe(i?a+s:s);return l[0]=t.fin?t.opcode|128:t.opcode,t.rsv1&&(l[0]|=64),l[1]=c,c===126?l.writeUInt16BE(a,2):c===127&&(l[2]=l[3]=0,l.writeUIntBE(a,4,6)),t.mask?(l[1]|=128,l[s-4]=n[0],l[s-3]=n[1],l[s-2]=n[2],l[s-1]=n[3],o?[l,e]:i?(rb(e,n,l,s,a),[l]):(rb(e,n,e,0,a),[l,e])):[l,e]}close(e,t,n,i){let s;if(e===void 0)s=GL;else{if(typeof e!="number"||!KL(e))throw new TypeError("First argument must be a valid error code number");if(t===void 0||!t.length)s=Buffer.allocUnsafe(2),s.writeUInt16BE(e,0);else{let a=Buffer.byteLength(t);if(a>123)throw new RangeError("The message must not be greater than 123 bytes");s=Buffer.allocUnsafe(2+a),s.writeUInt16BE(e,0),typeof t=="string"?s.write(t,2):s.set(t,2)}}let o={[dr]:s.length,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==Or?this.enqueue([this.dispatch,s,!1,o,i]):this.sendFrame(r.frame(s,o),i)}ping(e,t,n){let i,s;if(typeof e=="string"?(i=Buffer.byteLength(e),s=!1):ms(e)?(i=e.size,s=!1):(e=pi(e),i=e.length,s=pi.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[dr]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:s,rsv1:!1};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,!1,o,n]):this.getBlobData(e,!1,o,n):this._state!==Or?this.enqueue([this.dispatch,e,!1,o,n]):this.sendFrame(r.frame(e,o),n)}pong(e,t,n){let i,s;if(typeof e=="string"?(i=Buffer.byteLength(e),s=!1):ms(e)?(i=e.size,s=!1):(e=pi(e),i=e.length,s=pi.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[dr]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:s,rsv1:!1};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,!1,o,n]):this.getBlobData(e,!1,o,n):this._state!==Or?this.enqueue([this.dispatch,e,!1,o,n]):this.sendFrame(r.frame(e,o),n)}send(e,t,n){let i=this._extensions[tb.extensionName],s=t.binary?2:1,o=t.compress,a,c;typeof e=="string"?(a=Buffer.byteLength(e),c=!1):ms(e)?(a=e.size,c=!1):(e=pi(e),a=e.length,c=pi.readOnly),this._firstFragment?(this._firstFragment=!1,o&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(o=a>=i._threshold),this._compress=o):(o=!1,s=0),t.fin&&(this._firstFragment=!0);let l={[dr]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:c,rsv1:o};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,this._compress,l,n]):this.getBlobData(e,this._compress,l,n):this._state!==Or?this.enqueue([this.dispatch,e,this._compress,l,n]):this.dispatch(e,this._compress,l,n)}getBlobData(e,t,n,i){this._bufferedBytes+=n[dr],this._state=JL,e.arrayBuffer().then(s=>{if(this._socket.destroyed){let a=new Error("The socket was closed while the blob was being read");process.nextTick(Fd,this,a,i);return}this._bufferedBytes-=n[dr];let o=pi(s);t?this.dispatch(o,t,n,i):(this._state=Or,this.sendFrame(r.frame(o,n),i),this.dequeue())}).catch(s=>{process.nextTick(ZL,this,s,i)})}dispatch(e,t,n,i){if(!t){this.sendFrame(r.frame(e,n),i);return}let s=this._extensions[tb.extensionName];this._bufferedBytes+=n[dr],this._state=XL,s.compress(e,n.fin,(o,a)=>{if(this._socket.destroyed){let c=new Error("The socket was closed while data was being compressed");Fd(this,c,i);return}this._bufferedBytes-=n[dr],this._state=Or,n.readOnly=!1,this.sendFrame(r.frame(a,n),i),this.dequeue()})}dequeue(){for(;this._state===Or&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][dr],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][dr],this._queue.push(e)}sendFrame(e,t){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}};nb.exports=jd;function Fd(r,e,t){typeof t=="function"&&t(e);for(let n=0;n<r._queue.length;n++){let i=r._queue[n],s=i[i.length-1];typeof s=="function"&&s(e)}}function ZL(r,e,t){Fd(r,e,t),r.onerror(e)}});var fb=A((HW,pb)=>{"use strict";var{kForOnEventAttribute:Uo,kListener:qd}=dn(),ib=Symbol("kCode"),sb=Symbol("kData"),ob=Symbol("kError"),ab=Symbol("kMessage"),cb=Symbol("kReason"),vs=Symbol("kTarget"),lb=Symbol("kType"),ub=Symbol("kWasClean"),mn=class{constructor(e){this[vs]=null,this[lb]=e}get target(){return this[vs]}get type(){return this[lb]}};Object.defineProperty(mn.prototype,"target",{enumerable:!0});Object.defineProperty(mn.prototype,"type",{enumerable:!0});var di=class extends mn{constructor(e,t={}){super(e),this[ib]=t.code===void 0?0:t.code,this[cb]=t.reason===void 0?"":t.reason,this[ub]=t.wasClean===void 0?!1:t.wasClean}get code(){return this[ib]}get reason(){return this[cb]}get wasClean(){return this[ub]}};Object.defineProperty(di.prototype,"code",{enumerable:!0});Object.defineProperty(di.prototype,"reason",{enumerable:!0});Object.defineProperty(di.prototype,"wasClean",{enumerable:!0});var ys=class extends mn{constructor(e,t={}){super(e),this[ob]=t.error===void 0?null:t.error,this[ab]=t.message===void 0?"":t.message}get error(){return this[ob]}get message(){return this[ab]}};Object.defineProperty(ys.prototype,"error",{enumerable:!0});Object.defineProperty(ys.prototype,"message",{enumerable:!0});var qo=class extends mn{constructor(e,t={}){super(e),this[sb]=t.data===void 0?null:t.data}get data(){return this[sb]}};Object.defineProperty(qo.prototype,"data",{enumerable:!0});var QL={addEventListener(r,e,t={}){for(let i of this.listeners(r))if(!t[Uo]&&i[qd]===e&&!i[Uo])return;let n;if(r==="message")n=function(s,o){let a=new qo("message",{data:o?s:s.toString()});a[vs]=this,ol(e,this,a)};else if(r==="close")n=function(s,o){let a=new di("close",{code:s,reason:o.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});a[vs]=this,ol(e,this,a)};else if(r==="error")n=function(s){let o=new ys("error",{error:s,message:s.message});o[vs]=this,ol(e,this,o)};else if(r==="open")n=function(){let s=new mn("open");s[vs]=this,ol(e,this,s)};else return;n[Uo]=!!t[Uo],n[qd]=e,t.once?this.once(r,n):this.on(r,n)},removeEventListener(r,e){for(let t of this.listeners(r))if(t[qd]===e&&!t[Uo]){this.removeListener(r,t);break}}};pb.exports={CloseEvent:di,ErrorEvent:ys,Event:mn,EventTarget:QL,MessageEvent:qo};function ol(r,e,t){typeof r=="object"&&r.handleEvent?r.handleEvent.call(r,t):r.call(e,t)}});var $d=A((WW,db)=>{"use strict";var{tokenChars:$o}=hs();function Hr(r,e,t){r[e]===void 0?r[e]=[t]:r[e].push(t)}function e2(r){let e=Object.create(null),t=Object.create(null),n=!1,i=!1,s=!1,o,a,c=-1,l=-1,u=-1,f=0;for(;f<r.length;f++)if(l=r.charCodeAt(f),o===void 0)if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(f!==0&&(l===32||l===9))u===-1&&c!==-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f);let g=r.slice(c,u);l===44?(Hr(e,g,t),t=Object.create(null)):o=g,c=u=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);else if(a===void 0)if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(l===32||l===9)u===-1&&c!==-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f),Hr(t,r.slice(c,u),!0),l===44&&(Hr(e,o,t),t=Object.create(null),o=void 0),c=u=-1}else if(l===61&&c!==-1&&u===-1)a=r.slice(c,f),c=u=-1;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(i){if($o[l]!==1)throw new SyntaxError(`Unexpected character at index ${f}`);c===-1?c=f:n||(n=!0),i=!1}else if(s)if($o[l]===1)c===-1&&(c=f);else if(l===34&&c!==-1)s=!1,u=f;else if(l===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(l===34&&r.charCodeAt(f-1)===61)s=!0;else if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(c!==-1&&(l===32||l===9))u===-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f);let g=r.slice(c,u);n&&(g=g.replace(/\\/g,""),n=!1),Hr(t,a,g),l===44&&(Hr(e,o,t),t=Object.create(null),o=void 0),a=void 0,c=u=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);if(c===-1||s||l===32||l===9)throw new SyntaxError("Unexpected end of input");u===-1&&(u=f);let d=r.slice(c,u);return o===void 0?Hr(e,d,t):(a===void 0?Hr(t,d,!0):n?Hr(t,a,d.replace(/\\/g,"")):Hr(t,a,d),Hr(e,o,t)),e}function t2(r){return Object.keys(r).map(e=>{let t=r[e];return Array.isArray(t)||(t=[t]),t.map(n=>[e].concat(Object.keys(n).map(i=>{let s=n[i];return Array.isArray(s)||(s=[s]),s.map(o=>o===!0?i:`${i}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}db.exports={format:t2,parse:e2}});var ul=A((VW,Tb)=>{"use strict";var r2=require("events"),n2=require("https"),i2=require("http"),gb=require("net"),s2=require("tls"),{randomBytes:o2,createHash:a2}=require("crypto"),{Duplex:GW,Readable:zW}=require("stream"),{URL:Hd}=require("url"),Wn=Fo(),c2=Bd(),l2=Ud(),{isBlob:u2}=hs(),{BINARY_TYPES:hb,EMPTY_BUFFER:al,GUID:p2,kForOnEventAttribute:Wd,kListener:f2,kStatusCode:d2,kWebSocket:xt,NOOP:vb}=dn(),{EventTarget:{addEventListener:h2,removeEventListener:m2}}=fb(),{format:g2,parse:v2}=$d(),{toBuffer:y2}=Bo(),x2=30*1e3,yb=Symbol("kAborted"),Gd=[8,13],gn=["CONNECTING","OPEN","CLOSING","CLOSED"],_2=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,Ee=class r extends r2{constructor(e,t,n){super(),this._binaryType=hb[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=al,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=r.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,t===void 0?t=[]:Array.isArray(t)||(typeof t=="object"&&t!==null?(n=t,t=[]):t=[t]),xb(this,e,t,n)):(this._autoPong=n.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(e){hb.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,t,n){let i=new c2({allowSynchronousEvents:n.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation}),s=new l2(e,this._extensions,n.generateMask);this._receiver=i,this._sender=s,this._socket=e,i[xt]=this,s[xt]=this,e[xt]=this,i.on("conclude",S2),i.on("drain",E2),i.on("error",T2),i.on("message",C2),i.on("ping",k2),i.on("pong",A2),s.onerror=R2,e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",wb),e.on("data",ll),e.on("end",Sb),e.on("error",Eb),this._readyState=r.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=r.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Wn.extensionName]&&this._extensions[Wn.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=r.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==r.CLOSED){if(this.readyState===r.CONNECTING){Qt(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===r.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=r.CLOSING,this._sender.close(e,t,!this._isServer,n=>{n||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),bb(this)}}pause(){this.readyState===r.CONNECTING||this.readyState===r.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(n=e,e=t=void 0):typeof t=="function"&&(n=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}t===void 0&&(t=!this._isServer),this._sender.ping(e||al,t,n)}pong(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(n=e,e=t=void 0):typeof t=="function"&&(n=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}t===void 0&&(t=!this._isServer),this._sender.pong(e||al,t,n)}resume(){this.readyState===r.CONNECTING||this.readyState===r.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"&&(n=t,t={}),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}let i={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[Wn.extensionName]||(i.compress=!1),this._sender.send(e||al,i,n)}terminate(){if(this.readyState!==r.CLOSED){if(this.readyState===r.CONNECTING){Qt(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=r.CLOSING,this._socket.destroy())}}};Object.defineProperty(Ee,"CONNECTING",{enumerable:!0,value:gn.indexOf("CONNECTING")});Object.defineProperty(Ee.prototype,"CONNECTING",{enumerable:!0,value:gn.indexOf("CONNECTING")});Object.defineProperty(Ee,"OPEN",{enumerable:!0,value:gn.indexOf("OPEN")});Object.defineProperty(Ee.prototype,"OPEN",{enumerable:!0,value:gn.indexOf("OPEN")});Object.defineProperty(Ee,"CLOSING",{enumerable:!0,value:gn.indexOf("CLOSING")});Object.defineProperty(Ee.prototype,"CLOSING",{enumerable:!0,value:gn.indexOf("CLOSING")});Object.defineProperty(Ee,"CLOSED",{enumerable:!0,value:gn.indexOf("CLOSED")});Object.defineProperty(Ee.prototype,"CLOSED",{enumerable:!0,value:gn.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(r=>{Object.defineProperty(Ee.prototype,r,{enumerable:!0})});["open","error","close","message"].forEach(r=>{Object.defineProperty(Ee.prototype,`on${r}`,{enumerable:!0,get(){for(let e of this.listeners(r))if(e[Wd])return e[f2];return null},set(e){for(let t of this.listeners(r))if(t[Wd]){this.removeListener(r,t);break}typeof e=="function"&&this.addEventListener(r,e,{[Wd]:!0})}})});Ee.prototype.addEventListener=h2;Ee.prototype.removeEventListener=m2;Tb.exports=Ee;function xb(r,e,t,n){let i={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:Gd[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...n,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(r._autoPong=i.autoPong,!Gd.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${Gd.join(", ")})`);let s;if(e instanceof Hd)s=e;else try{s=new Hd(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}s.protocol==="http:"?s.protocol="ws:":s.protocol==="https:"&&(s.protocol="wss:"),r._url=s.href;let o=s.protocol==="wss:",a=s.protocol==="ws+unix:",c;if(s.protocol!=="ws:"&&!o&&!a?c=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:a&&!s.pathname?c="The URL's pathname is empty":s.hash&&(c="The URL contains a fragment identifier"),c){let b=new SyntaxError(c);if(r._redirects===0)throw b;cl(r,b);return}let l=o?443:80,u=o2(16).toString("base64"),f=o?n2.request:i2.request,d=new Set,g;if(i.createConnection=i.createConnection||(o?w2:b2),i.defaultPort=i.defaultPort||l,i.port=s.port||l,i.host=s.hostname.startsWith("[")?s.hostname.slice(1,-1):s.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":u,Connection:"Upgrade",Upgrade:"websocket"},i.path=s.pathname+s.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(g=new Wn(i.perMessageDeflate!==!0?i.perMessageDeflate:{},!1,i.maxPayload),i.headers["Sec-WebSocket-Extensions"]=g2({[Wn.extensionName]:g.offer()})),t.length){for(let b of t){if(typeof b!="string"||!_2.test(b)||d.has(b))throw new SyntaxError("An invalid or duplicated subprotocol was specified");d.add(b)}i.headers["Sec-WebSocket-Protocol"]=t.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(s.username||s.password)&&(i.auth=`${s.username}:${s.password}`),a){let b=i.path.split(":");i.socketPath=b[0],i.path=b[1]}let y;if(i.followRedirects){if(r._redirects===0){r._originalIpc=a,r._originalSecure=o,r._originalHostOrSocketPath=a?i.socketPath:s.host;let b=n&&n.headers;if(n={...n,headers:{}},b)for(let[C,R]of Object.entries(b))n.headers[C.toLowerCase()]=R}else if(r.listenerCount("redirect")===0){let b=a?r._originalIpc?i.socketPath===r._originalHostOrSocketPath:!1:r._originalIpc?!1:s.host===r._originalHostOrSocketPath;(!b||r._originalSecure&&!o)&&(delete i.headers.authorization,delete i.headers.cookie,b||delete i.headers.host,i.auth=void 0)}i.auth&&!n.headers.authorization&&(n.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),y=r._req=f(i),r._redirects&&r.emit("redirect",r.url,y)}else y=r._req=f(i);i.timeout&&y.on("timeout",()=>{Qt(r,y,"Opening handshake has timed out")}),y.on("error",b=>{y===null||y[yb]||(y=r._req=null,cl(r,b))}),y.on("response",b=>{let C=b.headers.location,R=b.statusCode;if(C&&i.followRedirects&&R>=300&&R<400){if(++r._redirects>i.maxRedirects){Qt(r,y,"Maximum redirects exceeded");return}y.abort();let O;try{O=new Hd(C,e)}catch{let B=new SyntaxError(`Invalid URL: ${C}`);cl(r,B);return}xb(r,O,t,n)}else r.emit("unexpected-response",y,b)||Qt(r,y,`Unexpected server response: ${b.statusCode}`)}),y.on("upgrade",(b,C,R)=>{if(r.emit("upgrade",b),r.readyState!==Ee.CONNECTING)return;y=r._req=null;let O=b.headers.upgrade;if(O===void 0||O.toLowerCase()!=="websocket"){Qt(r,C,"Invalid Upgrade header");return}let P=a2("sha1").update(u+p2).digest("base64");if(b.headers["sec-websocket-accept"]!==P){Qt(r,C,"Invalid Sec-WebSocket-Accept header");return}let B=b.headers["sec-websocket-protocol"],G;if(B!==void 0?d.size?d.has(B)||(G="Server sent an invalid subprotocol"):G="Server sent a subprotocol but none was requested":d.size&&(G="Server sent no subprotocol"),G){Qt(r,C,G);return}B&&(r._protocol=B);let F=b.headers["sec-websocket-extensions"];if(F!==void 0){if(!g){Qt(r,C,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let V;try{V=v2(F)}catch{Qt(r,C,"Invalid Sec-WebSocket-Extensions header");return}let D=Object.keys(V);if(D.length!==1||D[0]!==Wn.extensionName){Qt(r,C,"Server indicated an extension that was not requested");return}try{g.accept(V[Wn.extensionName])}catch{Qt(r,C,"Invalid Sec-WebSocket-Extensions header");return}r._extensions[Wn.extensionName]=g}r.setSocket(C,R,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(y,r):y.end()}function cl(r,e){r._readyState=Ee.CLOSING,r._errorEmitted=!0,r.emit("error",e),r.emitClose()}function b2(r){return r.path=r.socketPath,gb.connect(r)}function w2(r){return r.path=void 0,!r.servername&&r.servername!==""&&(r.servername=gb.isIP(r.host)?"":r.host),s2.connect(r)}function Qt(r,e,t){r._readyState=Ee.CLOSING;let n=new Error(t);Error.captureStackTrace(n,Qt),e.setHeader?(e[yb]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(cl,r,n)):(e.destroy(n),e.once("error",r.emit.bind(r,"error")),e.once("close",r.emitClose.bind(r)))}function zd(r,e,t){if(e){let n=u2(e)?e.size:y2(e).length;r._socket?r._sender._bufferedBytes+=n:r._bufferedAmount+=n}if(t){let n=new Error(`WebSocket is not open: readyState ${r.readyState} (${gn[r.readyState]})`);process.nextTick(t,n)}}function S2(r,e){let t=this[xt];t._closeFrameReceived=!0,t._closeMessage=e,t._closeCode=r,t._socket[xt]!==void 0&&(t._socket.removeListener("data",ll),process.nextTick(_b,t._socket),r===1005?t.close():t.close(r,e))}function E2(){let r=this[xt];r.isPaused||r._socket.resume()}function T2(r){let e=this[xt];e._socket[xt]!==void 0&&(e._socket.removeListener("data",ll),process.nextTick(_b,e._socket),e.close(r[d2])),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",r))}function mb(){this[xt].emitClose()}function C2(r,e){this[xt].emit("message",r,e)}function k2(r){let e=this[xt];e._autoPong&&e.pong(r,!this._isServer,vb),e.emit("ping",r)}function A2(r){this[xt].emit("pong",r)}function _b(r){r.resume()}function R2(r){let e=this[xt];e.readyState!==Ee.CLOSED&&(e.readyState===Ee.OPEN&&(e._readyState=Ee.CLOSING,bb(e)),this._socket.end(),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",r)))}function bb(r){r._closeTimer=setTimeout(r._socket.destroy.bind(r._socket),x2)}function wb(){let r=this[xt];this.removeListener("close",wb),this.removeListener("data",ll),this.removeListener("end",Sb),r._readyState=Ee.CLOSING;let e;!this._readableState.endEmitted&&!r._closeFrameReceived&&!r._receiver._writableState.errorEmitted&&(e=r._socket.read())!==null&&r._receiver.write(e),r._receiver.end(),this[xt]=void 0,clearTimeout(r._closeTimer),r._receiver._writableState.finished||r._receiver._writableState.errorEmitted?r.emitClose():(r._receiver.on("error",mb),r._receiver.on("finish",mb))}function ll(r){this[xt]._receiver.write(r)||this.pause()}function Sb(){let r=this[xt];r._readyState=Ee.CLOSING,r._receiver.end(),this.end()}function Eb(){let r=this[xt];this.removeListener("error",Eb),this.on("error",vb),r&&(r._readyState=Ee.CLOSING,this.destroy())}});var Rb=A((YW,Ab)=>{"use strict";var KW=ul(),{Duplex:O2}=require("stream");function Cb(r){r.emit("close")}function M2(){!this.destroyed&&this._writableState.finished&&this.destroy()}function kb(r){this.removeListener("error",kb),this.destroy(),this.listenerCount("error")===0&&this.emit("error",r)}function P2(r,e){let t=!0,n=new O2({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return r.on("message",function(s,o){let a=!o&&n._readableState.objectMode?s.toString():s;n.push(a)||r.pause()}),r.once("error",function(s){n.destroyed||(t=!1,n.destroy(s))}),r.once("close",function(){n.destroyed||n.push(null)}),n._destroy=function(i,s){if(r.readyState===r.CLOSED){s(i),process.nextTick(Cb,n);return}let o=!1;r.once("error",function(c){o=!0,s(c)}),r.once("close",function(){o||s(i),process.nextTick(Cb,n)}),t&&r.terminate()},n._final=function(i){if(r.readyState===r.CONNECTING){r.once("open",function(){n._final(i)});return}r._socket!==null&&(r._socket._writableState.finished?(i(),n._readableState.endEmitted&&n.destroy()):(r._socket.once("finish",function(){i()}),r.close()))},n._read=function(){r.isPaused&&r.resume()},n._write=function(i,s,o){if(r.readyState===r.CONNECTING){r.once("open",function(){n._write(i,s,o)});return}r.send(i,o)},n.on("end",M2),n.on("error",kb),n}Ab.exports=P2});var Mb=A((XW,Ob)=>{"use strict";var{tokenChars:I2}=hs();function N2(r){let e=new Set,t=-1,n=-1,i=0;for(i;i<r.length;i++){let o=r.charCodeAt(i);if(n===-1&&I2[o]===1)t===-1&&(t=i);else if(i!==0&&(o===32||o===9))n===-1&&t!==-1&&(n=i);else if(o===44){if(t===-1)throw new SyntaxError(`Unexpected character at index ${i}`);n===-1&&(n=i);let a=r.slice(t,n);if(e.has(a))throw new SyntaxError(`The "${a}" subprotocol is duplicated`);e.add(a),t=n=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(t===-1||n!==-1)throw new SyntaxError("Unexpected end of input");let s=r.slice(t,i);if(e.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);return e.add(s),e}Ob.exports={parse:N2}});var jb=A((ZW,Bb)=>{"use strict";var D2=require("events"),pl=require("http"),{Duplex:JW}=require("stream"),{createHash:L2}=require("crypto"),Pb=$d(),hi=Fo(),B2=Mb(),j2=ul(),{GUID:F2,kWebSocket:U2}=dn(),q2=/^[+/0-9A-Za-z]{22}==$/,Ib=0,Nb=1,Lb=2,Vd=class extends D2{constructor(e,t){if(super(),e={allowSynchronousEvents:!0,autoPong:!0,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:j2,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=pl.createServer((n,i)=>{let s=pl.STATUS_CODES[426];i.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),i.end(s)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){let n=this.emit.bind(this,"connection");this._removeListeners=$2(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,s,o)=>{this.handleUpgrade(i,s,o,n)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=Ib}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===Lb){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(Ho,this);return}if(e&&this.once("close",e),this._state!==Nb)if(this._state=Nb,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(Ho,this):process.nextTick(Ho,this);else{let t=this._server;this._removeListeners(),this._removeListeners=this._server=null,t.close(()=>{Ho(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((t!==-1?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,n,i){t.on("error",Db);let s=e.headers["sec-websocket-key"],o=e.headers.upgrade,a=+e.headers["sec-websocket-version"];if(e.method!=="GET"){mi(this,e,t,405,"Invalid HTTP method");return}if(o===void 0||o.toLowerCase()!=="websocket"){mi(this,e,t,400,"Invalid Upgrade header");return}if(s===void 0||!q2.test(s)){mi(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");return}if(a!==13&&a!==8){mi(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(e)){Wo(t,400);return}let c=e.headers["sec-websocket-protocol"],l=new Set;if(c!==void 0)try{l=B2.parse(c)}catch{mi(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let u=e.headers["sec-websocket-extensions"],f={};if(this.options.perMessageDeflate&&u!==void 0){let d=new hi(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let g=Pb.parse(u);g[hi.extensionName]&&(d.accept(g[hi.extensionName]),f[hi.extensionName]=d)}catch{mi(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let d={origin:e.headers[`${a===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(d,(g,y,b,C)=>{if(!g)return Wo(t,y||401,b,C);this.completeUpgrade(f,s,l,e,t,n,i)});return}if(!this.options.verifyClient(d))return Wo(t,401)}this.completeUpgrade(f,s,l,e,t,n,i)}completeUpgrade(e,t,n,i,s,o,a){if(!s.readable||!s.writable)return s.destroy();if(s[U2])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>Ib)return Wo(s,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${L2("sha1").update(t+F2).digest("base64")}`],u=new this.options.WebSocket(null,void 0,this.options);if(n.size){let f=this.options.handleProtocols?this.options.handleProtocols(n,i):n.values().next().value;f&&(l.push(`Sec-WebSocket-Protocol: ${f}`),u._protocol=f)}if(e[hi.extensionName]){let f=e[hi.extensionName].params,d=Pb.format({[hi.extensionName]:[f]});l.push(`Sec-WebSocket-Extensions: ${d}`),u._extensions=e}this.emit("headers",l,i),s.write(l.concat(`\r
|
|
23
|
+
`+n)}r.destroy()}var No=[0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];function ID(r){if(r+="",r.length<1)return!1;if(!No[r.charCodeAt(0)])return te('invalid header, index 0, char "%s"',r.charCodeAt(0)),!0;if(r.length<2)return!1;if(!No[r.charCodeAt(1)])return te('invalid header, index 1, char "%s"',r.charCodeAt(1)),!0;if(r.length<3)return!1;if(!No[r.charCodeAt(2)])return te('invalid header, index 2, char "%s"',r.charCodeAt(2)),!0;if(r.length<4)return!1;if(!No[r.charCodeAt(3)])return te('invalid header, index 3, char "%s"',r.charCodeAt(3)),!0;for(let e=4;e<r.length;++e)if(!No[r.charCodeAt(e)])return te('invalid header, index "%i", char "%s"',e,r.charCodeAt(e)),!0;return!1}});var a_=A(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});Fc.Polling=void 0;var ND=ii(),o_=require("zlib"),DD=oc(),LD=Oe(),ur=(0,LD.default)("engine:polling"),BD={gzip:o_.createGzip,deflate:o_.createDeflate},od=class extends ND.Transport{constructor(e){super(e),this.closeTimeout=30*1e3}get name(){return"polling"}onRequest(e){let t=e.res;e.res=null,e.getMethod()==="get"?this.onPollRequest(e,t):e.getMethod()==="post"?this.onDataRequest(e,t):(t.writeStatus("500 Internal Server Error"),t.end())}onPollRequest(e,t){if(this.req){ur("request overlap"),this.onError("overlap from client"),t.writeStatus("500 Internal Server Error"),t.end();return}ur("setting request"),this.req=e,this.res=t;let n=()=>{this.writable=!1,this.onError("poll connection closed prematurely")},i=()=>{this.req=this.res=null};e.cleanup=i,t.onAborted(n),this.writable=!0,this.emit("ready"),this.writable&&this.shouldClose&&(ur("triggering empty send to append close packet"),this.send([{type:"noop"}]))}onDataRequest(e,t){if(this.dataReq){this.onError("data request overlap from client"),t.writeStatus("500 Internal Server Error"),t.end();return}let n=Number(e.headers["content-length"]);if(!n){this.onError("content-length header required"),t.writeStatus("411 Length Required").end();return}if(n>this.maxHttpBufferSize){this.onError("payload too large"),t.writeStatus("413 Payload Too Large").end();return}if(e.headers["content-type"]==="application/octet-stream"&&this.protocol===4)return this.onError("invalid content");this.dataReq=e,this.dataRes=t;let s,o=0,a={"Content-Type":"text/html"};this.headers(e,a);for(let l in a)t.writeHeader(l,String(a[l]));let c=l=>{this.onData(l.toString()),this.onDataRequestCleanup(),t.cork(()=>{t.end("ok")})};t.onAborted(()=>{this.onDataRequestCleanup(),this.onError("data request connection closed prematurely")}),t.onData((l,u)=>{let f=o+l.byteLength;if(f>n){this.onError("content-length mismatch"),t.close();return}if(!s){if(u){c(Buffer.from(l));return}s=Buffer.allocUnsafe(n)}if(Buffer.from(l).copy(s,o),u){if(f!=n){this.onError("content-length mismatch"),t.writeStatus("400 Content-Length Mismatch").end(),this.onDataRequestCleanup();return}c(s);return}o=f})}onDataRequestCleanup(){this.dataReq=this.dataRes=null}onData(e){ur('received "%s"',e);let t=n=>{if(n.type==="close")return ur("got xhr close packet"),this.onClose(),!1;this.onPacket(n)};this.protocol===3?this.parser.decodePayload(e,t):this.parser.decodePayload(e).forEach(t)}onClose(){this.writable&&this.send([{type:"noop"}]),super.onClose()}send(e){this.writable=!1,this.shouldClose&&(ur("appending close packet to payload"),e.push({type:"close"}),this.shouldClose(),this.shouldClose=null);let t=n=>{let i=e.some(s=>s.options&&s.options.compress);this.write(n,{compress:i})};this.protocol===3?this.parser.encodePayload(e,this.supportsBinary,t):this.parser.encodePayload(e,t)}write(e,t){ur('writing "%s"',e),this.doWrite(e,t,()=>{this.req.cleanup(),this.emit("drain")})}doWrite(e,t,n){let i=typeof e=="string",o={"Content-Type":i?"text/plain; charset=UTF-8":"application/octet-stream"},a=u=>{this.headers(this.req,o),this.res.cork(()=>{Object.keys(o).forEach(f=>{this.res.writeHeader(f,String(o[f]))}),this.res.end(u)}),n()};if(!this.httpCompression||!t.compress){a(e);return}if((i?Buffer.byteLength(e):e.length)<this.httpCompression.threshold){a(e);return}let l=DD(this.req).encodings(["gzip","deflate"]);if(!l){a(e);return}this.compress(e,l,(u,f)=>{if(u){this.res.writeStatus("500 Internal Server Error"),this.res.end(),n(u);return}o["Content-Encoding"]=l,a(f)})}compress(e,t,n){ur("compressing");let i=[],s=0;BD[t](this.httpCompression).on("error",n).on("data",function(o){i.push(o),s+=o.length}).on("end",function(){n(null,Buffer.concat(i,s))}).end(e)}doClose(e){ur("closing");let t,n=()=>{clearTimeout(t),e(),this.onClose()};this.writable?(ur("transport writable - closing right away"),this.send([{type:"close"}]),n()):this.discarded?(ur("transport discarded - closing right away"),n()):(ur("transport not writable - buffering orderly close"),this.shouldClose=n,t=setTimeout(n,this.closeTimeout))}headers(e,t){t=t||{};let n=e.headers["user-agent"];return n&&(~n.indexOf(";MSIE")||~n.indexOf("Trident/"))&&(t["X-XSS-Protection"]="0"),t["cache-control"]="no-store",this.emit("headers",t,e),t}};Fc.Polling=od});var l_=A(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.WebSocket=void 0;var jD=ii(),FD=Oe(),c_=(0,FD.default)("engine:ws"),ad=class extends jD.Transport{constructor(e){super(e),this.writable=!1,this.perMessageDeflate=null}get name(){return"websocket"}get handlesUpgrades(){return!0}send(e){this.writable=!1;for(let t=0;t<e.length;t++){let n=e[t],i=t+1===e.length,s=o=>{let a=typeof o!="string",c=this.perMessageDeflate&&Buffer.byteLength(o)>this.perMessageDeflate.threshold;c_('writing "%s"',o),this.socket.send(o,a,c),i&&(this.emit("drain"),this.writable=!0,this.emit("ready"))};n.options&&typeof n.options.wsPreEncoded=="string"?s(n.options.wsPreEncoded):this.parser.encodePacket(n,this.supportsBinary,s)}}doClose(e){c_("closing"),e&&e(),this.socket.end()}};Uc.WebSocket=ad});var u_=A(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var UD=a_(),qD=l_();cd.default={polling:UD.Polling,websocket:qD.WebSocket}});var p_=A(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.uServer=void 0;var $D=Oe(),ui=sd(),HD=u_(),qn=(0,$D.default)("engine:uws"),ld=class extends ui.BaseServer{init(){}cleanup(){}prepare(e,t){e.method=e.getMethod().toUpperCase(),e.url=e.getUrl();let n=new URLSearchParams(e.getQuery());e._query=Object.fromEntries(n.entries()),e.headers={},e.forEach((i,s)=>{e.headers[i]=s}),e.connection={remoteAddress:Buffer.from(t.getRemoteAddressAsText()).toString()},t.onAborted(()=>{qn("response has been aborted")})}createTransport(e,t){return new HD.default[e](t)}attach(e,t={}){let n=this._computePath(t);e.any(n,this.handleRequest.bind(this)).ws(n,{compression:t.compression,idleTimeout:t.idleTimeout,maxBackpressure:t.maxBackpressure,maxPayloadLength:this.opts.maxHttpBufferSize,upgrade:this.handleUpgrade.bind(this),open:i=>{let s=i.getUserData().transport;s.socket=i,s.writable=!0,s.emit("ready")},message:(i,s,o)=>{i.getUserData().transport.onData(o?s:Buffer.from(s).toString())},close:(i,s,o)=>{i.getUserData().transport.onClose(s,o)}})}_applyMiddlewares(e,t,n){if(this.middlewares.length===0)return n();e.res=new ud(t),super._applyMiddlewares(e,e.res,i=>{e.res.writeHead(),n(i)})}handleRequest(e,t){qn('handling "%s" http request "%s"',t.getMethod(),t.getUrl()),this.prepare(t,e),t.res=e;let n=(i,s)=>{if(i!==void 0){this.emit("connection_error",{req:t,code:i,message:ui.Server.errorMessages[i],context:s}),this.abortRequest(t.res,i,s);return}if(t._query.sid)qn("setting new request for existing client"),this.clients[t._query.sid].transport.onRequest(t);else{let o=(a,c)=>this.abortRequest(e,a,c);this.handshake(t._query.transport,t,o)}};this._applyMiddlewares(t,e,i=>{i?n(ui.Server.errors.BAD_REQUEST,{name:"MIDDLEWARE_FAILURE"}):this.verify(t,!1,n)})}handleUpgrade(e,t,n){qn("on upgrade"),this.prepare(t,e),t.res=e;let i=async(s,o)=>{if(s!==void 0){this.emit("connection_error",{req:t,code:s,message:ui.Server.errorMessages[s],context:o}),this.abortRequest(e,s,o);return}let a=t._query.sid,c;if(a){let f=this.clients[a];if(f){if(f.upgrading)return qn("transport has already been trying to upgrade"),e.close();if(f.upgraded)return qn("transport had already been upgraded"),e.close();qn("upgrading existing transport"),c=this.createTransport(t._query.transport,t),f._maybeUpgrade(c)}else return qn("upgrade attempt for closed client"),e.close()}else if(c=await this.handshake(t._query.transport,t,(f,d)=>this.abortRequest(e,f,d)),!c)return;let l={};!a&&this.emit("initial_headers",l,t),this.emit("headers",l,t),t.res.writeStatus("101 Switching Protocols"),Object.keys(l).forEach(f=>{t.res.writeHeader(f,l[f])}),e.upgrade({transport:c},t.getHeader("sec-websocket-key"),t.getHeader("sec-websocket-protocol"),t.getHeader("sec-websocket-extensions"),n)};this._applyMiddlewares(t,e,s=>{s?i(ui.Server.errors.BAD_REQUEST,{name:"MIDDLEWARE_FAILURE"}):this.verify(t,!0,i)})}abortRequest(e,t,n){let i=t===ui.Server.errors.FORBIDDEN?"403 Forbidden":"400 Bad Request",s=n&&n.message?n.message:ui.Server.errorMessages[t];e.writeStatus(i),e.writeHeader("Content-Type","application/json"),e.end(JSON.stringify({code:t,message:s}))}};qc.uServer=ld;var ud=class{constructor(e){this.res=e,this.statusWritten=!1,this.headers=[],this.isAborted=!1}set statusCode(e){e&&this.writeStatus(e===200?"200 OK":"204 No Content")}writeHead(e){this.statusCode=e}setHeader(e,t){Array.isArray(t)?t.forEach(n=>{this.writeHeader(e,n)}):this.writeHeader(e,t)}removeHeader(){}getHeader(){}writeStatus(e){if(!this.isAborted)return this.res.writeStatus(e),this.statusWritten=!0,this.writeBufferedHeaders(),this}writeHeader(e,t){this.isAborted||e!=="Content-Length"&&(this.statusWritten?this.res.writeHeader(e,t):this.headers.push([e,t]))}writeBufferedHeaders(){this.headers.forEach(([e,t])=>{this.res.writeHeader(e,t)})}end(e){this.isAborted||this.res.cork(()=>{this.statusWritten||this.writeBufferedHeaders(),this.res.end(e)})}onData(e){this.isAborted||this.res.onData(e)}onAborted(e){this.isAborted||this.res.onAborted(()=>{this.isAborted=!0,e()})}cork(e){this.isAborted||this.res.cork(e)}}});var m_=A(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.protocol=yt.Transport=yt.Socket=yt.uServer=yt.parser=yt.transports=yt.Server=void 0;yt.listen=YD;yt.attach=h_;var WD=require("http"),f_=sd();Object.defineProperty(yt,"Server",{enumerable:!0,get:function(){return f_.Server}});var GD=xf();yt.transports=GD.default;var d_=To();yt.parser=d_;var zD=p_();Object.defineProperty(yt,"uServer",{enumerable:!0,get:function(){return zD.uServer}});var VD=bf();Object.defineProperty(yt,"Socket",{enumerable:!0,get:function(){return VD.Socket}});var KD=ii();Object.defineProperty(yt,"Transport",{enumerable:!0,get:function(){return KD.Transport}});yt.protocol=d_.protocol;function YD(r,e,t){typeof e=="function"&&(t=e,e={});let n=(0,WD.createServer)(function(s,o){o.writeHead(501),o.end("Not Implemented")}),i=h_(n,e);return i.httpServer=n,n.listen(r,t),i}function h_(r,e){let t=new f_.Server(e);return t.attach(r,e),t}});var v_=A(g_=>{g_.Emitter=Mt;function Mt(r){if(r)return XD(r)}function XD(r){for(var e in Mt.prototype)r[e]=Mt.prototype[e];return r}Mt.prototype.on=Mt.prototype.addEventListener=function(r,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+r]=this._callbacks["$"+r]||[]).push(e),this};Mt.prototype.once=function(r,e){function t(){this.off(r,t),e.apply(this,arguments)}return t.fn=e,this.on(r,t),this};Mt.prototype.off=Mt.prototype.removeListener=Mt.prototype.removeAllListeners=Mt.prototype.removeEventListener=function(r,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+r];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+r],this;for(var n,i=0;i<t.length;i++)if(n=t[i],n===e||n.fn===e){t.splice(i,1);break}return t.length===0&&delete this._callbacks["$"+r],this};Mt.prototype.emit=function(r){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+r],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(t){t=t.slice(0);for(var n=0,i=t.length;n<i;++n)t[n].apply(this,e)}return this};Mt.prototype.emitReserved=Mt.prototype.emit;Mt.prototype.listeners=function(r){return this._callbacks=this._callbacks||{},this._callbacks["$"+r]||[]};Mt.prototype.hasListeners=function(r){return!!this.listeners(r).length}});var pd=A(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.isBinary=x_;Hc.hasBinary=$c;var JD=typeof ArrayBuffer=="function",ZD=r=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(r):r.buffer instanceof ArrayBuffer,y_=Object.prototype.toString,QD=typeof Blob=="function"||typeof Blob<"u"&&y_.call(Blob)==="[object BlobConstructor]",eL=typeof File=="function"||typeof File<"u"&&y_.call(File)==="[object FileConstructor]";function x_(r){return JD&&(r instanceof ArrayBuffer||ZD(r))||QD&&r instanceof Blob||eL&&r instanceof File}function $c(r,e){if(!r||typeof r!="object")return!1;if(Array.isArray(r)){for(let t=0,n=r.length;t<n;t++)if($c(r[t]))return!0;return!1}if(x_(r))return!0;if(r.toJSON&&typeof r.toJSON=="function"&&arguments.length===1)return $c(r.toJSON(),!0);for(let t in r)if(Object.prototype.hasOwnProperty.call(r,t)&&$c(r[t]))return!0;return!1}});var __=A(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.deconstructPacket=rL;Wc.reconstructPacket=nL;var tL=pd();function rL(r){let e=[],t=r.data,n=r;return n.data=fd(t,e),n.attachments=e.length,{packet:n,buffers:e}}function fd(r,e){if(!r)return r;if((0,tL.isBinary)(r)){let t={_placeholder:!0,num:e.length};return e.push(r),t}else if(Array.isArray(r)){let t=new Array(r.length);for(let n=0;n<r.length;n++)t[n]=fd(r[n],e);return t}else if(typeof r=="object"&&!(r instanceof Date)){let t={};for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=fd(r[n],e));return t}return r}function nL(r,e){return r.data=dd(r.data,e),delete r.attachments,r}function dd(r,e){if(!r)return r;if(r&&r._placeholder===!0){if(typeof r.num=="number"&&r.num>=0&&r.num<e.length)return e[r.num];throw new Error("illegal attachments")}else if(Array.isArray(r))for(let t=0;t<r.length;t++)r[t]=dd(r[t],e);else if(typeof r=="object")for(let t in r)Object.prototype.hasOwnProperty.call(r,t)&&(r[t]=dd(r[t],e));return r}});var Do=A(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.Decoder=Ar.Encoder=Ar.PacketType=Ar.protocol=void 0;Ar.isPacketValid=lL;var iL=v_(),b_=__(),w_=pd(),sL=Oe(),hd=(0,sL.default)("socket.io-parser"),S_=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];Ar.protocol=5;var de;(function(r){r[r.CONNECT=0]="CONNECT",r[r.DISCONNECT=1]="DISCONNECT",r[r.EVENT=2]="EVENT",r[r.ACK=3]="ACK",r[r.CONNECT_ERROR=4]="CONNECT_ERROR",r[r.BINARY_EVENT=5]="BINARY_EVENT",r[r.BINARY_ACK=6]="BINARY_ACK"})(de||(Ar.PacketType=de={}));var md=class{constructor(e){this.replacer=e}encode(e){return hd("encoding packet %j",e),(e.type===de.EVENT||e.type===de.ACK)&&(0,w_.hasBinary)(e)?this.encodeAsBinary({type:e.type===de.EVENT?de.BINARY_EVENT:de.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===de.BINARY_EVENT||e.type===de.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),hd("encoded %j as %s",e,t),t}encodeAsBinary(e){let t=(0,b_.deconstructPacket)(e),n=this.encodeAsString(t.packet),i=t.buffers;return i.unshift(n),i}};Ar.Encoder=md;var gd=class r extends iL.Emitter{constructor(e){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},typeof e=="function"?{reviver:e}:e)}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);let n=t.type===de.BINARY_EVENT;n||t.type===de.BINARY_ACK?(t.type=n?de.EVENT:de.ACK,this.reconstructor=new vd(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if((0,w_.isBinary)(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0,n={type:Number(e.charAt(0))};if(de[n.type]===void 0)throw new Error("unknown packet type "+n.type);if(n.type===de.BINARY_EVENT||n.type===de.BINARY_ACK){let s=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);let o=e.substring(s,t);if(o!=Number(o)||e.charAt(t)!=="-")throw new Error("Illegal attachments");let a=Number(o);if(!E_(a)||a<0)throw new Error("Illegal attachments");if(a>this.opts.maxAttachments)throw new Error("too many attachments");n.attachments=a}if(e.charAt(t+1)==="/"){let s=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););n.nsp=e.substring(s,t)}else n.nsp="/";let i=e.charAt(t+1);if(i!==""&&Number(i)==i){let s=t+1;for(;++t;){let o=e.charAt(t);if(o==null||Number(o)!=o){--t;break}if(t===e.length)break}n.id=Number(e.substring(s,t+1))}if(e.charAt(++t)){let s=this.tryParse(e.substr(t));if(r.isPayloadValid(n.type,s))n.data=s;else throw new Error("invalid payload")}return hd("decoded %s as %j",e,n),n}tryParse(e){try{return JSON.parse(e,this.opts.reviver)}catch{return!1}}static isPayloadValid(e,t){switch(e){case de.CONNECT:return Gc(t);case de.DISCONNECT:return t===void 0;case de.CONNECT_ERROR:return typeof t=="string"||Gc(t);case de.EVENT:case de.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&S_.indexOf(t[0])===-1);case de.ACK:case de.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}};Ar.Decoder=gd;var vd=class{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){let t=(0,b_.reconstructPacket)(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}};function oL(r){return typeof r=="string"}var E_=Number.isInteger||function(r){return typeof r=="number"&&isFinite(r)&&Math.floor(r)===r};function aL(r){return r===void 0||E_(r)}function Gc(r){return Object.prototype.toString.call(r)==="[object Object]"}function cL(r,e){switch(r){case de.CONNECT:return e===void 0||Gc(e);case de.DISCONNECT:return e===void 0;case de.EVENT:return Array.isArray(e)&&(typeof e[0]=="number"||typeof e[0]=="string"&&S_.indexOf(e[0])===-1);case de.ACK:return Array.isArray(e);case de.CONNECT_ERROR:return typeof e=="string"||Gc(e);default:return!1}}function lL(r){return oL(r.nsp)&&aL(r.id)&&cL(r.type,r.data)}});var T_=A(cs=>{"use strict";var uL=cs&&cs.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(cs,"__esModule",{value:!0});cs.Client=void 0;var zc=Do(),pL=uL(Oe()),Rr=(0,pL.default)("socket.io:client"),yd=class{constructor(e,t){this.sockets=new Map,this.nsps=new Map,this.server=e,this.conn=t,this.encoder=e.encoder,this.decoder=new e._parser.Decoder,this.id=t.id,this.setup()}get request(){return this.conn.request}setup(){this.onclose=this.onclose.bind(this),this.ondata=this.ondata.bind(this),this.onerror=this.onerror.bind(this),this.ondecoded=this.ondecoded.bind(this),this.decoder.on("decoded",this.ondecoded),this.conn.on("data",this.ondata),this.conn.on("error",this.onerror),this.conn.on("close",this.onclose),this.connectTimeout=setTimeout(()=>{this.nsps.size===0?(Rr("no namespace joined yet, close the client"),this.close()):Rr("the client has already joined a namespace, nothing to do")},this.server._connectTimeout)}connect(e,t={}){if(this.server._nsps.has(e))return Rr("connecting to namespace %s",e),this.doConnect(e,t);this.server._checkNamespace(e,t,n=>{n?this.doConnect(e,t):(Rr("creation of namespace %s was denied",e),this._packet({type:zc.PacketType.CONNECT_ERROR,nsp:e,data:{message:"Invalid namespace"}}))})}doConnect(e,t){let n=this.server.of(e);n._add(this,t,i=>{this.sockets.set(i.id,i),this.nsps.set(n.name,i),this.connectTimeout&&(clearTimeout(this.connectTimeout),this.connectTimeout=void 0)})}_disconnect(){for(let e of this.sockets.values())e.disconnect();this.sockets.clear(),this.close()}_remove(e){if(this.sockets.has(e.id)){let t=this.sockets.get(e.id).nsp.name;this.sockets.delete(e.id),this.nsps.delete(t)}else Rr("ignoring remove for %s",e.id)}close(){this.conn.readyState==="open"&&(Rr("forcing transport close"),this.conn.close(),this.onclose("forced server close"))}_packet(e,t={}){if(this.conn.readyState!=="open"){Rr("ignoring packet write %j",e);return}let n=t.preEncoded?e:this.encoder.encode(e);this.writeToEngine(n,t)}writeToEngine(e,t){if(t.volatile&&!this.conn.transport.writable){Rr("volatile packet is discarded since the transport is not currently writable");return}let n=Array.isArray(e)?e:[e];for(let i of n)this.conn.write(i,t)}ondata(e){try{this.decoder.add(e)}catch(t){Rr("invalid packet format"),this.onerror(t)}}ondecoded(e){let{namespace:t,authPayload:n}=this._parseNamespace(e),i=this.nsps.get(t);!i&&e.type===zc.PacketType.CONNECT?this.connect(t,n):i&&e.type!==zc.PacketType.CONNECT&&e.type!==zc.PacketType.CONNECT_ERROR?process.nextTick(function(){i._onpacket(e)}):(Rr("invalid state (packet type: %s)",e.type),this.close())}_parseNamespace(e){if(this.conn.protocol!==3)return{namespace:e.nsp,authPayload:e.data};let t=new URL(e.nsp,"https://socket.io");return{namespace:t.pathname,authPayload:Object.fromEntries(t.searchParams.entries())}}onerror(e){for(let t of this.sockets.values())t._onerror(e);this.conn.close()}onclose(e,t){Rr("client close with reason %s",e),this.destroy();for(let n of this.sockets.values())n._onclose(e,t);this.sockets.clear(),this.decoder.destroy()}destroy(){this.conn.removeListener("data",this.ondata),this.conn.removeListener("error",this.onerror),this.conn.removeListener("close",this.onclose),this.decoder.removeListener("decoded",this.ondecoded),this.connectTimeout&&(clearTimeout(this.connectTimeout),this.connectTimeout=void 0)}};cs.Client=yd});var Kc=A(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.StrictEventEmitter=void 0;var fL=require("events"),xd=class extends fL.EventEmitter{on(e,t){return super.on(e,t)}once(e,t){return super.once(e,t)}emit(e,...t){return super.emit(e,...t)}emitReserved(e,...t){return super.emit(e,...t)}emitUntyped(e,...t){return super.emit(e,...t)}listeners(e){return super.listeners(e)}};Vc.StrictEventEmitter=xd});var _d=A(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.RESERVED_EVENTS=void 0;Yc.RESERVED_EVENTS=new Set(["connect","connect_error","disconnect","disconnecting","newListener","removeListener"])});var bd=A(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.RemoteSocket=ls.BroadcastOperator=void 0;var dL=_d(),hL=Do(),Xc=class r{constructor(e,t=new Set,n=new Set,i={}){this.adapter=e,this.rooms=t,this.exceptRooms=n,this.flags=i}to(e){let t=new Set(this.rooms);return Array.isArray(e)?e.forEach(n=>t.add(n)):t.add(e),new r(this.adapter,t,this.exceptRooms,this.flags)}in(e){return this.to(e)}except(e){let t=new Set(this.exceptRooms);return Array.isArray(e)?e.forEach(n=>t.add(n)):t.add(e),new r(this.adapter,this.rooms,t,this.flags)}compress(e){let t=Object.assign({},this.flags,{compress:e});return new r(this.adapter,this.rooms,this.exceptRooms,t)}get volatile(){let e=Object.assign({},this.flags,{volatile:!0});return new r(this.adapter,this.rooms,this.exceptRooms,e)}get local(){let e=Object.assign({},this.flags,{local:!0});return new r(this.adapter,this.rooms,this.exceptRooms,e)}timeout(e){let t=Object.assign({},this.flags,{timeout:e});return new r(this.adapter,this.rooms,this.exceptRooms,t)}emit(e,...t){if(dL.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);let n=[e,...t],i={type:hL.PacketType.EVENT,data:n};if(!(typeof n[n.length-1]=="function"))return this.adapter.broadcast(i,{rooms:this.rooms,except:this.exceptRooms,flags:this.flags}),!0;let o=n.pop(),a=!1,c=[],l=setTimeout(()=>{a=!0,o.apply(this,[new Error("operation has timed out"),this.flags.expectSingleResponse?null:c])},this.flags.timeout),u=-1,f=0,d=0,g=()=>{!a&&u===f&&c.length===d&&(clearTimeout(l),o.apply(this,[null,this.flags.expectSingleResponse?c[0]:c]))};return this.adapter.broadcastWithAck(i,{rooms:this.rooms,except:this.exceptRooms,flags:this.flags},y=>{d+=y,f++,g()},y=>{c.push(y),g()}),this.adapter.serverCount().then(y=>{u=y,g()}),!0}emitWithAck(e,...t){return new Promise((n,i)=>{t.push((s,o)=>s?(s.responses=o,i(s)):n(o)),this.emit(e,...t)})}allSockets(){if(!this.adapter)throw new Error("No adapter for this namespace, are you trying to get the list of clients of a dynamic namespace?");return this.adapter.sockets(this.rooms)}fetchSockets(){return this.adapter.fetchSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags}).then(e=>e.map(t=>t.server?t:new Jc(this.adapter,t)))}socketsJoin(e){this.adapter.addSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},Array.isArray(e)?e:[e])}socketsLeave(e){this.adapter.delSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},Array.isArray(e)?e:[e])}disconnectSockets(e=!1){this.adapter.disconnectSockets({rooms:this.rooms,except:this.exceptRooms,flags:this.flags},e)}};ls.BroadcastOperator=Xc;var Jc=class{constructor(e,t){this.id=t.id,this.handshake=t.handshake,this.rooms=new Set(t.rooms),this.data=t.data,this.operator=new Xc(e,new Set([this.id]),new Set,{expectSingleResponse:!0})}timeout(e){return this.operator.timeout(e)}emit(e,...t){return this.operator.emit(e,...t)}join(e){return this.operator.socketsJoin(e)}leave(e){return this.operator.socketsLeave(e)}disconnect(e=!1){return this.operator.disconnectSockets(e),this}};ls.RemoteSocket=Jc});var Sd=A(us=>{"use strict";var A_=us&&us.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(us,"__esModule",{value:!0});us.Socket=void 0;var pr=Do(),mL=A_(Oe()),gL=Kc(),C_=A_(Zp()),vL=bd(),yL=_d(),Et=(0,mL.default)("socket.io:socket"),xL=new Set(["transport error","transport close","forced close","ping timeout","server shutting down","forced server close"]);function k_(){}var wd=class extends gL.StrictEventEmitter{constructor(e,t,n,i){super(),this.nsp=e,this.client=t,this.recovered=!1,this.data={},this.connected=!1,this.acks=new Map,this.fns=[],this.flags={},this.server=e.server,this.adapter=e.adapter,i?(this.id=i.sid,this.pid=i.pid,i.rooms.forEach(s=>this.join(s)),this.data=i.data,i.missedPackets.forEach(s=>{this.packet({type:pr.PacketType.EVENT,data:s})}),this.recovered=!0):(t.conn.protocol===3?this.id=e.name!=="/"?e.name+"#"+t.id:t.id:this.id=C_.default.generateId(),this.server._opts.connectionStateRecovery&&(this.pid=C_.default.generateId())),this.handshake=this.buildHandshake(n),this.on("error",k_)}buildHandshake(e){var t,n,i,s;return{headers:((t=this.request)===null||t===void 0?void 0:t.headers)||{},time:new Date+"",address:this.conn.remoteAddress,xdomain:!!(!((n=this.request)===null||n===void 0)&&n.headers.origin),secure:!this.request||!!this.request.connection.encrypted,issued:+new Date,url:(i=this.request)===null||i===void 0?void 0:i.url,query:((s=this.request)===null||s===void 0?void 0:s._query)||{},auth:e}}emit(e,...t){if(yL.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);let n=[e,...t],i={type:pr.PacketType.EVENT,data:n};if(typeof n[n.length-1]=="function"){let o=this.nsp._ids++;Et("emitting packet with ack id %d",o),this.registerAckCallback(o,n.pop()),i.id=o}let s=Object.assign({},this.flags);return this.flags={},this.nsp.server.opts.connectionStateRecovery?this.adapter.broadcast(i,{rooms:new Set([this.id]),except:new Set,flags:s}):(this.notifyOutgoingListeners(i),this.packet(i,s)),!0}emitWithAck(e,...t){let n=this.flags.timeout!==void 0;return new Promise((i,s)=>{t.push((o,a)=>n?o?s(o):i(a):i(o)),this.emit(e,...t)})}registerAckCallback(e,t){let n=this.flags.timeout;if(n===void 0){this.acks.set(e,t);return}let i=setTimeout(()=>{Et("event with ack id %d has timed out after %d ms",e,n),this.acks.delete(e),t.call(this,new Error("operation has timed out"))},n);this.acks.set(e,(...s)=>{clearTimeout(i),t.apply(this,[null,...s])})}to(e){return this.newBroadcastOperator().to(e)}in(e){return this.newBroadcastOperator().in(e)}except(e){return this.newBroadcastOperator().except(e)}send(...e){return this.emit("message",...e),this}write(...e){return this.emit("message",...e),this}packet(e,t={}){e.nsp=this.nsp.name,t.compress=t.compress!==!1,this.client._packet(e,t)}join(e){return Et("join room %s",e),this.adapter.addAll(this.id,new Set(Array.isArray(e)?e:[e]))}leave(e){return Et("leave room %s",e),this.adapter.del(this.id,e)}leaveAll(){this.adapter.delAll(this.id)}_onconnect(){Et("socket connected - writing packet"),this.connected=!0,this.join(this.id),this.conn.protocol===3?this.packet({type:pr.PacketType.CONNECT}):this.packet({type:pr.PacketType.CONNECT,data:{sid:this.id,pid:this.pid}})}_onpacket(e){switch(Et("got packet %j",e),e.type){case pr.PacketType.EVENT:this.onevent(e);break;case pr.PacketType.BINARY_EVENT:this.onevent(e);break;case pr.PacketType.ACK:this.onack(e);break;case pr.PacketType.BINARY_ACK:this.onack(e);break;case pr.PacketType.DISCONNECT:this.ondisconnect();break}}onevent(e){let t=e.data||[];if(Et("emitting event %j",t),e.id!=null&&(Et("attaching ack callback to event"),t.push(this.ack(e.id))),this._anyListeners&&this._anyListeners.length){let n=this._anyListeners.slice();for(let i of n)i.apply(this,t)}this.dispatch(t)}ack(e){let t=this,n=!1;return function(){if(n)return;let i=Array.prototype.slice.call(arguments);Et("sending ack %j",i),t.packet({id:e,type:pr.PacketType.ACK,data:i}),n=!0}}onack(e){let t=this.acks.get(e.id);typeof t=="function"?(Et("calling ack %s with %j",e.id,e.data),t.apply(this,e.data),this.acks.delete(e.id)):Et("bad ack %s",e.id)}ondisconnect(){Et("got disconnect packet"),this._onclose("client namespace disconnect")}_onerror(e){this.emitReserved("error",e)}_onclose(e,t){if(!this.connected)return this;Et("closing socket - reason %s",e),this.emitReserved("disconnecting",e,t),this.server._opts.connectionStateRecovery&&xL.has(e)&&(Et("connection state recovery is enabled for sid %s",this.id),this.adapter.persistSession({sid:this.id,pid:this.pid,rooms:[...this.rooms],data:this.data})),this._cleanup(),this.client._remove(this),this.connected=!1,this.emitReserved("disconnect",e,t)}_cleanup(){this.leaveAll(),this.nsp._remove(this),this.join=k_}_error(e){this.packet({type:pr.PacketType.CONNECT_ERROR,data:e})}disconnect(e=!1){return this.connected?(e?this.client._disconnect():(this.packet({type:pr.PacketType.DISCONNECT}),this._onclose("server namespace disconnect")),this):this}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}get broadcast(){return this.newBroadcastOperator()}get local(){return this.newBroadcastOperator().local}timeout(e){return this.flags.timeout=e,this}dispatch(e){Et("dispatching an event %j",e),this.run(e,t=>{process.nextTick(()=>{if(t)return this._onerror(t);this.connected?super.emitUntyped.apply(this,e):Et("ignore packet received after disconnection")})})}use(e){return this.fns.push(e),this}run(e,t){if(!this.fns.length)return t();let n=this.fns.slice(0);function i(s){n[s](e,o=>{if(o)return t(o);if(!n[s+1])return t();i(s+1)})}i(0)}get disconnected(){return!this.connected}get request(){return this.client.request}get conn(){return this.client.conn}get rooms(){return this.adapter.socketRooms(this.id)||new Set}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){let t=this._anyListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){let t=this._anyOutgoingListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let t=this._anyOutgoingListeners.slice();for(let n of t)n.apply(this,e.data)}}newBroadcastOperator(){let e=Object.assign({},this.flags);return this.flags={},new vL.BroadcastOperator(this.adapter,new Set,new Set([this.id]),e)}};us.Socket=wd});var Td=A(fn=>{"use strict";var _L=fn&&fn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fn,"__esModule",{value:!0});fn.Namespace=fn.RESERVED_EVENTS=void 0;var R_=Sd(),bL=Kc(),wL=_L(Oe()),Zt=bd(),ps=(0,wL.default)("socket.io:namespace");fn.RESERVED_EVENTS=new Set(["connect","connection","new_namespace"]);var Ed=class extends bL.StrictEventEmitter{constructor(e,t){super(),this.sockets=new Map,this._preConnectSockets=new Map,this._fns=[],this._ids=0,this.server=e,this.name=t,this._initAdapter()}_initAdapter(){this.adapter=new(this.server.adapter())(this),Promise.resolve(this.adapter.init()).catch(e=>{ps("error while initializing adapter: %s",e)})}use(e){return this._fns.push(e),this}run(e,t){if(!this._fns.length)return t();let n=this._fns.slice(0);function i(s){n[s](e,o=>{if(o)return t(o);if(!n[s+1])return t();i(s+1)})}i(0)}to(e){return new Zt.BroadcastOperator(this.adapter).to(e)}in(e){return new Zt.BroadcastOperator(this.adapter).in(e)}except(e){return new Zt.BroadcastOperator(this.adapter).except(e)}async _add(e,t,n){var i;ps("adding socket to nsp %s",this.name);let s=await this._createSocket(e,t);if(this._preConnectSockets.set(s.id,s),!((i=this.server.opts.connectionStateRecovery)===null||i===void 0)&&i.skipMiddlewares&&s.recovered&&e.conn.readyState==="open")return this._doConnect(s,n);this.run(s,o=>{process.nextTick(()=>{if(e.conn.readyState!=="open"){ps("next called after client was closed - ignoring socket"),s._cleanup();return}if(o)return ps("middleware error, sending CONNECT_ERROR packet to the client"),s._cleanup(),e.conn.protocol===3?s._error(o.data||o.message):s._error({message:o.message,data:o.data});this._doConnect(s,n)})})}async _createSocket(e,t){let n=t.pid,i=t.offset;if(this.server.opts.connectionStateRecovery&&typeof n=="string"&&typeof i=="string"){let s;try{s=await this.adapter.restoreSession(n,i)}catch(o){ps("error while restoring session: %s",o)}if(s)return ps("connection state recovered for sid %s",s.sid),new R_.Socket(this,e,t,s)}return new R_.Socket(this,e,t)}_doConnect(e,t){this._preConnectSockets.delete(e.id),this.sockets.set(e.id,e),e._onconnect(),t&&t(e),this.emitReserved("connect",e),this.emitReserved("connection",e)}_remove(e){this.sockets.delete(e.id)||this._preConnectSockets.delete(e.id)}emit(e,...t){return new Zt.BroadcastOperator(this.adapter).emit(e,...t)}send(...e){return this.emit("message",...e),this}write(...e){return this.emit("message",...e),this}serverSideEmit(e,...t){if(fn.RESERVED_EVENTS.has(e))throw new Error(`"${String(e)}" is a reserved event name`);return t.unshift(e),this.adapter.serverSideEmit(t),!0}serverSideEmitWithAck(e,...t){return new Promise((n,i)=>{t.push((s,o)=>s?(s.responses=o,i(s)):n(o)),this.serverSideEmit(e,...t)})}_onServerSideEmit(e){super.emitUntyped.apply(this,e)}allSockets(){return new Zt.BroadcastOperator(this.adapter).allSockets()}compress(e){return new Zt.BroadcastOperator(this.adapter).compress(e)}get volatile(){return new Zt.BroadcastOperator(this.adapter).volatile}get local(){return new Zt.BroadcastOperator(this.adapter).local}timeout(e){return new Zt.BroadcastOperator(this.adapter).timeout(e)}fetchSockets(){return new Zt.BroadcastOperator(this.adapter).fetchSockets()}socketsJoin(e){return new Zt.BroadcastOperator(this.adapter).socketsJoin(e)}socketsLeave(e){return new Zt.BroadcastOperator(this.adapter).socketsLeave(e)}disconnectSockets(e=!1){return new Zt.BroadcastOperator(this.adapter).disconnectSockets(e)}};fn.Namespace=Ed});var N_=A(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});Lo.encode=Cd;Lo.decode=SL;Lo.yeast=EL;var P_="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Zc=64,I_={},O_=0,$n=0,M_;function Cd(r){let e="";do e=P_[r%Zc]+e,r=Math.floor(r/Zc);while(r>0);return e}function SL(r){let e=0;for($n=0;$n<r.length;$n++)e=e*Zc+I_[r.charAt($n)];return e}function EL(){let r=Cd(+new Date);return r!==M_?(O_=0,M_=r):r+"."+Cd(O_++)}for(;$n<Zc;$n++)I_[P_[$n]]=$n});var dn=A((DW,B_)=>{"use strict";var D_=["nodebuffer","arraybuffer","fragments"],L_=typeof Blob<"u";L_&&D_.push("blob");B_.exports={BINARY_TYPES:D_,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:L_,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Bo=A((LW,Qc)=>{"use strict";var{EMPTY_BUFFER:TL}=dn(),kd=Buffer[Symbol.species];function CL(r,e){if(r.length===0)return TL;if(r.length===1)return r[0];let t=Buffer.allocUnsafe(e),n=0;for(let i=0;i<r.length;i++){let s=r[i];t.set(s,n),n+=s.length}return n<e?new kd(t.buffer,t.byteOffset,n):t}function j_(r,e,t,n,i){for(let s=0;s<i;s++)t[n+s]=r[s]^e[s&3]}function F_(r,e){for(let t=0;t<r.length;t++)r[t]^=e[t&3]}function kL(r){return r.length===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.length)}function Ad(r){if(Ad.readOnly=!0,Buffer.isBuffer(r))return r;let e;return r instanceof ArrayBuffer?e=new kd(r):ArrayBuffer.isView(r)?e=new kd(r.buffer,r.byteOffset,r.byteLength):(e=Buffer.from(r),Ad.readOnly=!1),e}Qc.exports={concat:CL,mask:j_,toArrayBuffer:kL,toBuffer:Ad,unmask:F_};if(!process.env.WS_NO_BUFFER_UTIL)try{let r=Pf();Qc.exports.mask=function(e,t,n,i,s){s<48?j_(e,t,n,i,s):r.mask(e,t,n,i,s)},Qc.exports.unmask=function(e,t){e.length<32?F_(e,t):r.unmask(e,t)}}catch{}});var $_=A((BW,q_)=>{"use strict";var U_=Symbol("kDone"),Rd=Symbol("kRun"),Od=class{constructor(e){this[U_]=()=>{this.pending--,this[Rd]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[Rd]()}[Rd](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[U_])}}};q_.exports=Od});var Fo=A((jW,z_)=>{"use strict";var jo=require("zlib"),H_=Bo(),AL=$_(),{kStatusCode:W_}=dn(),RL=Buffer[Symbol.species],OL=Buffer.from([0,0,255,255]),tl=Symbol("permessage-deflate"),hn=Symbol("total-length"),fs=Symbol("callback"),Hn=Symbol("buffers"),ds=Symbol("error"),el,Md=class{constructor(e,t,n){if(this._maxPayload=n|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!el){let i=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;el=new AL(i)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[fs];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,n=e.find(i=>!(t.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(t.serverMaxWindowBits===!1||typeof t.serverMaxWindowBits=="number"&&t.serverMaxWindowBits>i.server_max_window_bits)||typeof t.clientMaxWindowBits=="number"&&!i.client_max_window_bits));if(!n)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(n.server_no_context_takeover=!0),t.clientNoContextTakeover&&(n.client_no_context_takeover=!0),typeof t.serverMaxWindowBits=="number"&&(n.server_max_window_bits=t.serverMaxWindowBits),typeof t.clientMaxWindowBits=="number"?n.client_max_window_bits=t.clientMaxWindowBits:(n.client_max_window_bits===!0||t.clientMaxWindowBits===!1)&&delete n.client_max_window_bits,n}acceptAsClient(e){let t=e[0];if(this._options.clientNoContextTakeover===!1&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!t.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(t.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return t}normalizeParams(e){return e.forEach(t=>{Object.keys(t).forEach(n=>{let i=t[n];if(i.length>1)throw new Error(`Parameter "${n}" must have only a single value`);if(i=i[0],n==="client_max_window_bits"){if(i!==!0){let s=+i;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${n}": ${i}`);i=s}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${n}": ${i}`)}else if(n==="server_max_window_bits"){let s=+i;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${n}": ${i}`);i=s}else if(n==="client_no_context_takeover"||n==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${n}": ${i}`)}else throw new Error(`Unknown parameter "${n}"`);t[n]=i})}),e}decompress(e,t,n){el.add(i=>{this._decompress(e,t,(s,o)=>{i(),n(s,o)})})}compress(e,t,n){el.add(i=>{this._compress(e,t,(s,o)=>{i(),n(s,o)})})}_decompress(e,t,n){let i=this._isServer?"client":"server";if(!this._inflate){let s=`${i}_max_window_bits`,o=typeof this.params[s]!="number"?jo.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=jo.createInflateRaw({...this._options.zlibInflateOptions,windowBits:o}),this._inflate[tl]=this,this._inflate[hn]=0,this._inflate[Hn]=[],this._inflate.on("error",PL),this._inflate.on("data",G_)}this._inflate[fs]=n,this._inflate.write(e),t&&this._inflate.write(OL),this._inflate.flush(()=>{let s=this._inflate[ds];if(s){this._inflate.close(),this._inflate=null,n(s);return}let o=H_.concat(this._inflate[Hn],this._inflate[hn]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[hn]=0,this._inflate[Hn]=[],t&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),n(null,o)})}_compress(e,t,n){let i=this._isServer?"server":"client";if(!this._deflate){let s=`${i}_max_window_bits`,o=typeof this.params[s]!="number"?jo.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=jo.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:o}),this._deflate[hn]=0,this._deflate[Hn]=[],this._deflate.on("data",ML)}this._deflate[fs]=n,this._deflate.write(e),this._deflate.flush(jo.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=H_.concat(this._deflate[Hn],this._deflate[hn]);t&&(s=new RL(s.buffer,s.byteOffset,s.length-4)),this._deflate[fs]=null,this._deflate[hn]=0,this._deflate[Hn]=[],t&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),n(null,s)})}};z_.exports=Md;function ML(r){this[Hn].push(r),this[hn]+=r.length}function G_(r){if(this[hn]+=r.length,this[tl]._maxPayload<1||this[hn]<=this[tl]._maxPayload){this[Hn].push(r);return}this[ds]=new RangeError("Max payload size exceeded"),this[ds].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[ds][W_]=1009,this.removeListener("data",G_),this.reset()}function PL(r){if(this[tl]._inflate=null,this[ds]){this[fs](this[ds]);return}r[W_]=1007,this[fs](r)}});var hs=A((FW,rl)=>{"use strict";var{isUtf8:V_}=require("buffer"),{hasBlob:IL}=dn(),NL=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function DL(r){return r>=1e3&&r<=1014&&r!==1004&&r!==1005&&r!==1006||r>=3e3&&r<=4999}function Pd(r){let e=r.length,t=0;for(;t<e;)if((r[t]&128)===0)t++;else if((r[t]&224)===192){if(t+1===e||(r[t+1]&192)!==128||(r[t]&254)===192)return!1;t+=2}else if((r[t]&240)===224){if(t+2>=e||(r[t+1]&192)!==128||(r[t+2]&192)!==128||r[t]===224&&(r[t+1]&224)===128||r[t]===237&&(r[t+1]&224)===160)return!1;t+=3}else if((r[t]&248)===240){if(t+3>=e||(r[t+1]&192)!==128||(r[t+2]&192)!==128||(r[t+3]&192)!==128||r[t]===240&&(r[t+1]&240)===128||r[t]===244&&r[t+1]>143||r[t]>244)return!1;t+=4}else return!1;return!0}function LL(r){return IL&&typeof r=="object"&&typeof r.arrayBuffer=="function"&&typeof r.type=="string"&&typeof r.stream=="function"&&(r[Symbol.toStringTag]==="Blob"||r[Symbol.toStringTag]==="File")}rl.exports={isBlob:LL,isValidStatusCode:DL,isValidUTF8:Pd,tokenChars:NL};if(V_)rl.exports.isValidUTF8=function(r){return r.length<24?Pd(r):V_(r)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let r=Ff();rl.exports.isValidUTF8=function(e){return e.length<32?Pd(e):r(e)}}catch{}});var Bd=A((UW,eb)=>{"use strict";var{Writable:BL}=require("stream"),K_=Fo(),{BINARY_TYPES:jL,EMPTY_BUFFER:Y_,kStatusCode:FL,kWebSocket:UL}=dn(),{concat:Id,toArrayBuffer:qL,unmask:$L}=Bo(),{isValidStatusCode:HL,isValidUTF8:X_}=hs(),nl=Buffer[Symbol.species],fr=0,J_=1,Z_=2,Q_=3,Nd=4,Dd=5,il=6,Ld=class extends BL{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||jL[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[UL]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=fr}_write(e,t,n){if(this._opcode===8&&this._state==fr)return n();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(n)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let n=this._buffers[0];return this._buffers[0]=new nl(n.buffer,n.byteOffset+e,n.length-e),new nl(n.buffer,n.byteOffset,e)}let t=Buffer.allocUnsafe(e);do{let n=this._buffers[0],i=t.length-e;e>=n.length?t.set(this._buffers.shift(),i):(t.set(new Uint8Array(n.buffer,n.byteOffset,e),i),this._buffers[0]=new nl(n.buffer,n.byteOffset+e,n.length-e)),e-=n.length}while(e>0);return t}startLoop(e){this._loop=!0;do switch(this._state){case fr:this.getInfo(e);break;case J_:this.getPayloadLength16(e);break;case Z_:this.getPayloadLength64(e);break;case Q_:this.getMask();break;case Nd:this.getData(e);break;case Dd:case il:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<2){this._loop=!1;return}let t=this.consume(2);if((t[0]&48)!==0){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(i);return}let n=(t[0]&64)===64;if(n&&!this._extensions[K_.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._fin=(t[0]&128)===128,this._opcode=t[0]&15,this._payloadLength=t[1]&127,this._opcode===0){if(n){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._compressed=n}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");e(i);return}if(n){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");e(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(t[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");e(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");e(i);return}this._payloadLength===126?this._state=J_:this._payloadLength===127?this._state=Z_:this.haveLength(e)}getPayloadLength16(e){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){if(this._bufferedBytes<8){this._loop=!1;return}let t=this.consume(8),n=t.readUInt32BE(0);if(n>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");e(i);return}this._payloadLength=n*Math.pow(2,32)+t.readUInt32BE(4),this.haveLength(e)}haveLength(e){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let t=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");e(t);return}this._masked?this._state=Q_:this._state=Nd}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Nd}getData(e){let t=Y_;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&$L(t,this._mask)}if(this._opcode>7){this.controlMessage(t,e);return}if(this._compressed){this._state=Dd,this.decompress(t,e);return}t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage(e)}decompress(e,t){this._extensions[K_.extensionName].decompress(e,this._fin,(i,s)=>{if(i)return t(i);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let o=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(o);return}this._fragments.push(s)}this.dataMessage(t),this._state===fr&&this.startLoop(t)})}dataMessage(e){if(!this._fin){this._state=fr;return}let t=this._messageLength,n=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=Id(n,t):this._binaryType==="arraybuffer"?i=qL(Id(n,t)):this._binaryType==="blob"?i=new Blob(n):i=n,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=fr):(this._state=il,setImmediate(()=>{this.emit("message",i,!0),this._state=fr,this.startLoop(e)}))}else{let i=Id(n,t);if(!this._skipUTF8Validation&&!X_(i)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");e(s);return}this._state===Dd||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=fr):(this._state=il,setImmediate(()=>{this.emit("message",i,!1),this._state=fr,this.startLoop(e)}))}}controlMessage(e,t){if(this._opcode===8){if(e.length===0)this._loop=!1,this.emit("conclude",1005,Y_),this.end();else{let n=e.readUInt16BE(0);if(!HL(n)){let s=this.createError(RangeError,`invalid status code ${n}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");t(s);return}let i=new nl(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!X_(i)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(s);return}this._loop=!1,this.emit("conclude",n,i),this.end()}this._state=fr;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",e),this._state=fr):(this._state=il,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=fr,this.startLoop(t)}))}createError(e,t,n,i,s){this._loop=!1,this._errored=!0;let o=new e(n?`Invalid WebSocket frame: ${t}`:t);return Error.captureStackTrace(o,this.createError),o.code=s,o[FL]=i,o}};eb.exports=Ld});var Ud=A(($W,nb)=>{"use strict";var{Duplex:qW}=require("stream"),{randomFillSync:WL}=require("crypto"),tb=Fo(),{EMPTY_BUFFER:GL,kWebSocket:zL,NOOP:VL}=dn(),{isBlob:ms,isValidStatusCode:KL}=hs(),{mask:rb,toBuffer:pi}=Bo(),dr=Symbol("kByteLength"),YL=Buffer.alloc(4),sl=8*1024,fi,gs=sl,Or=0,XL=1,JL=2,jd=class r{constructor(e,t,n){this._extensions=t||{},n&&(this._generateMask=n,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=Or,this.onerror=VL,this[zL]=void 0}static frame(e,t){let n,i=!1,s=2,o=!1;t.mask&&(n=t.maskBuffer||YL,t.generateMask?t.generateMask(n):(gs===sl&&(fi===void 0&&(fi=Buffer.alloc(sl)),WL(fi,0,sl),gs=0),n[0]=fi[gs++],n[1]=fi[gs++],n[2]=fi[gs++],n[3]=fi[gs++]),o=(n[0]|n[1]|n[2]|n[3])===0,s=6);let a;typeof e=="string"?(!t.mask||o)&&t[dr]!==void 0?a=t[dr]:(e=Buffer.from(e),a=e.length):(a=e.length,i=t.mask&&t.readOnly&&!o);let c=a;a>=65536?(s+=8,c=127):a>125&&(s+=2,c=126);let l=Buffer.allocUnsafe(i?a+s:s);return l[0]=t.fin?t.opcode|128:t.opcode,t.rsv1&&(l[0]|=64),l[1]=c,c===126?l.writeUInt16BE(a,2):c===127&&(l[2]=l[3]=0,l.writeUIntBE(a,4,6)),t.mask?(l[1]|=128,l[s-4]=n[0],l[s-3]=n[1],l[s-2]=n[2],l[s-1]=n[3],o?[l,e]:i?(rb(e,n,l,s,a),[l]):(rb(e,n,e,0,a),[l,e])):[l,e]}close(e,t,n,i){let s;if(e===void 0)s=GL;else{if(typeof e!="number"||!KL(e))throw new TypeError("First argument must be a valid error code number");if(t===void 0||!t.length)s=Buffer.allocUnsafe(2),s.writeUInt16BE(e,0);else{let a=Buffer.byteLength(t);if(a>123)throw new RangeError("The message must not be greater than 123 bytes");s=Buffer.allocUnsafe(2+a),s.writeUInt16BE(e,0),typeof t=="string"?s.write(t,2):s.set(t,2)}}let o={[dr]:s.length,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==Or?this.enqueue([this.dispatch,s,!1,o,i]):this.sendFrame(r.frame(s,o),i)}ping(e,t,n){let i,s;if(typeof e=="string"?(i=Buffer.byteLength(e),s=!1):ms(e)?(i=e.size,s=!1):(e=pi(e),i=e.length,s=pi.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[dr]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:s,rsv1:!1};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,!1,o,n]):this.getBlobData(e,!1,o,n):this._state!==Or?this.enqueue([this.dispatch,e,!1,o,n]):this.sendFrame(r.frame(e,o),n)}pong(e,t,n){let i,s;if(typeof e=="string"?(i=Buffer.byteLength(e),s=!1):ms(e)?(i=e.size,s=!1):(e=pi(e),i=e.length,s=pi.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[dr]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:s,rsv1:!1};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,!1,o,n]):this.getBlobData(e,!1,o,n):this._state!==Or?this.enqueue([this.dispatch,e,!1,o,n]):this.sendFrame(r.frame(e,o),n)}send(e,t,n){let i=this._extensions[tb.extensionName],s=t.binary?2:1,o=t.compress,a,c;typeof e=="string"?(a=Buffer.byteLength(e),c=!1):ms(e)?(a=e.size,c=!1):(e=pi(e),a=e.length,c=pi.readOnly),this._firstFragment?(this._firstFragment=!1,o&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(o=a>=i._threshold),this._compress=o):(o=!1,s=0),t.fin&&(this._firstFragment=!0);let l={[dr]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:c,rsv1:o};ms(e)?this._state!==Or?this.enqueue([this.getBlobData,e,this._compress,l,n]):this.getBlobData(e,this._compress,l,n):this._state!==Or?this.enqueue([this.dispatch,e,this._compress,l,n]):this.dispatch(e,this._compress,l,n)}getBlobData(e,t,n,i){this._bufferedBytes+=n[dr],this._state=JL,e.arrayBuffer().then(s=>{if(this._socket.destroyed){let a=new Error("The socket was closed while the blob was being read");process.nextTick(Fd,this,a,i);return}this._bufferedBytes-=n[dr];let o=pi(s);t?this.dispatch(o,t,n,i):(this._state=Or,this.sendFrame(r.frame(o,n),i),this.dequeue())}).catch(s=>{process.nextTick(ZL,this,s,i)})}dispatch(e,t,n,i){if(!t){this.sendFrame(r.frame(e,n),i);return}let s=this._extensions[tb.extensionName];this._bufferedBytes+=n[dr],this._state=XL,s.compress(e,n.fin,(o,a)=>{if(this._socket.destroyed){let c=new Error("The socket was closed while data was being compressed");Fd(this,c,i);return}this._bufferedBytes-=n[dr],this._state=Or,n.readOnly=!1,this.sendFrame(r.frame(a,n),i),this.dequeue()})}dequeue(){for(;this._state===Or&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][dr],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][dr],this._queue.push(e)}sendFrame(e,t){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}};nb.exports=jd;function Fd(r,e,t){typeof t=="function"&&t(e);for(let n=0;n<r._queue.length;n++){let i=r._queue[n],s=i[i.length-1];typeof s=="function"&&s(e)}}function ZL(r,e,t){Fd(r,e,t),r.onerror(e)}});var fb=A((HW,pb)=>{"use strict";var{kForOnEventAttribute:Uo,kListener:qd}=dn(),ib=Symbol("kCode"),sb=Symbol("kData"),ob=Symbol("kError"),ab=Symbol("kMessage"),cb=Symbol("kReason"),vs=Symbol("kTarget"),lb=Symbol("kType"),ub=Symbol("kWasClean"),mn=class{constructor(e){this[vs]=null,this[lb]=e}get target(){return this[vs]}get type(){return this[lb]}};Object.defineProperty(mn.prototype,"target",{enumerable:!0});Object.defineProperty(mn.prototype,"type",{enumerable:!0});var di=class extends mn{constructor(e,t={}){super(e),this[ib]=t.code===void 0?0:t.code,this[cb]=t.reason===void 0?"":t.reason,this[ub]=t.wasClean===void 0?!1:t.wasClean}get code(){return this[ib]}get reason(){return this[cb]}get wasClean(){return this[ub]}};Object.defineProperty(di.prototype,"code",{enumerable:!0});Object.defineProperty(di.prototype,"reason",{enumerable:!0});Object.defineProperty(di.prototype,"wasClean",{enumerable:!0});var ys=class extends mn{constructor(e,t={}){super(e),this[ob]=t.error===void 0?null:t.error,this[ab]=t.message===void 0?"":t.message}get error(){return this[ob]}get message(){return this[ab]}};Object.defineProperty(ys.prototype,"error",{enumerable:!0});Object.defineProperty(ys.prototype,"message",{enumerable:!0});var qo=class extends mn{constructor(e,t={}){super(e),this[sb]=t.data===void 0?null:t.data}get data(){return this[sb]}};Object.defineProperty(qo.prototype,"data",{enumerable:!0});var QL={addEventListener(r,e,t={}){for(let i of this.listeners(r))if(!t[Uo]&&i[qd]===e&&!i[Uo])return;let n;if(r==="message")n=function(s,o){let a=new qo("message",{data:o?s:s.toString()});a[vs]=this,ol(e,this,a)};else if(r==="close")n=function(s,o){let a=new di("close",{code:s,reason:o.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});a[vs]=this,ol(e,this,a)};else if(r==="error")n=function(s){let o=new ys("error",{error:s,message:s.message});o[vs]=this,ol(e,this,o)};else if(r==="open")n=function(){let s=new mn("open");s[vs]=this,ol(e,this,s)};else return;n[Uo]=!!t[Uo],n[qd]=e,t.once?this.once(r,n):this.on(r,n)},removeEventListener(r,e){for(let t of this.listeners(r))if(t[qd]===e&&!t[Uo]){this.removeListener(r,t);break}}};pb.exports={CloseEvent:di,ErrorEvent:ys,Event:mn,EventTarget:QL,MessageEvent:qo};function ol(r,e,t){typeof r=="object"&&r.handleEvent?r.handleEvent.call(r,t):r.call(e,t)}});var $d=A((WW,db)=>{"use strict";var{tokenChars:$o}=hs();function Hr(r,e,t){r[e]===void 0?r[e]=[t]:r[e].push(t)}function e2(r){let e=Object.create(null),t=Object.create(null),n=!1,i=!1,s=!1,o,a,c=-1,l=-1,u=-1,f=0;for(;f<r.length;f++)if(l=r.charCodeAt(f),o===void 0)if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(f!==0&&(l===32||l===9))u===-1&&c!==-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f);let g=r.slice(c,u);l===44?(Hr(e,g,t),t=Object.create(null)):o=g,c=u=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);else if(a===void 0)if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(l===32||l===9)u===-1&&c!==-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f),Hr(t,r.slice(c,u),!0),l===44&&(Hr(e,o,t),t=Object.create(null),o=void 0),c=u=-1}else if(l===61&&c!==-1&&u===-1)a=r.slice(c,f),c=u=-1;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(i){if($o[l]!==1)throw new SyntaxError(`Unexpected character at index ${f}`);c===-1?c=f:n||(n=!0),i=!1}else if(s)if($o[l]===1)c===-1&&(c=f);else if(l===34&&c!==-1)s=!1,u=f;else if(l===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(l===34&&r.charCodeAt(f-1)===61)s=!0;else if(u===-1&&$o[l]===1)c===-1&&(c=f);else if(c!==-1&&(l===32||l===9))u===-1&&(u=f);else if(l===59||l===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${f}`);u===-1&&(u=f);let g=r.slice(c,u);n&&(g=g.replace(/\\/g,""),n=!1),Hr(t,a,g),l===44&&(Hr(e,o,t),t=Object.create(null),o=void 0),a=void 0,c=u=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);if(c===-1||s||l===32||l===9)throw new SyntaxError("Unexpected end of input");u===-1&&(u=f);let d=r.slice(c,u);return o===void 0?Hr(e,d,t):(a===void 0?Hr(t,d,!0):n?Hr(t,a,d.replace(/\\/g,"")):Hr(t,a,d),Hr(e,o,t)),e}function t2(r){return Object.keys(r).map(e=>{let t=r[e];return Array.isArray(t)||(t=[t]),t.map(n=>[e].concat(Object.keys(n).map(i=>{let s=n[i];return Array.isArray(s)||(s=[s]),s.map(o=>o===!0?i:`${i}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}db.exports={format:t2,parse:e2}});var ul=A((VW,Tb)=>{"use strict";var r2=require("events"),n2=require("https"),i2=require("http"),gb=require("net"),s2=require("tls"),{randomBytes:o2,createHash:a2}=require("crypto"),{Duplex:GW,Readable:zW}=require("stream"),{URL:Hd}=require("url"),Wn=Fo(),c2=Bd(),l2=Ud(),{isBlob:u2}=hs(),{BINARY_TYPES:hb,EMPTY_BUFFER:al,GUID:p2,kForOnEventAttribute:Wd,kListener:f2,kStatusCode:d2,kWebSocket:xt,NOOP:vb}=dn(),{EventTarget:{addEventListener:h2,removeEventListener:m2}}=fb(),{format:g2,parse:v2}=$d(),{toBuffer:y2}=Bo(),x2=30*1e3,yb=Symbol("kAborted"),Gd=[8,13],gn=["CONNECTING","OPEN","CLOSING","CLOSED"],_2=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,Ee=class r extends r2{constructor(e,t,n){super(),this._binaryType=hb[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=al,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=r.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,t===void 0?t=[]:Array.isArray(t)||(typeof t=="object"&&t!==null?(n=t,t=[]):t=[t]),xb(this,e,t,n)):(this._autoPong=n.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(e){hb.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,t,n){let i=new c2({allowSynchronousEvents:n.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation}),s=new l2(e,this._extensions,n.generateMask);this._receiver=i,this._sender=s,this._socket=e,i[xt]=this,s[xt]=this,e[xt]=this,i.on("conclude",S2),i.on("drain",E2),i.on("error",T2),i.on("message",C2),i.on("ping",k2),i.on("pong",A2),s.onerror=R2,e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",wb),e.on("data",ll),e.on("end",Sb),e.on("error",Eb),this._readyState=r.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=r.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Wn.extensionName]&&this._extensions[Wn.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=r.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==r.CLOSED){if(this.readyState===r.CONNECTING){Qt(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===r.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=r.CLOSING,this._sender.close(e,t,!this._isServer,n=>{n||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),bb(this)}}pause(){this.readyState===r.CONNECTING||this.readyState===r.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(n=e,e=t=void 0):typeof t=="function"&&(n=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}t===void 0&&(t=!this._isServer),this._sender.ping(e||al,t,n)}pong(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(n=e,e=t=void 0):typeof t=="function"&&(n=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}t===void 0&&(t=!this._isServer),this._sender.pong(e||al,t,n)}resume(){this.readyState===r.CONNECTING||this.readyState===r.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,n){if(this.readyState===r.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"&&(n=t,t={}),typeof e=="number"&&(e=e.toString()),this.readyState!==r.OPEN){zd(this,e,n);return}let i={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[Wn.extensionName]||(i.compress=!1),this._sender.send(e||al,i,n)}terminate(){if(this.readyState!==r.CLOSED){if(this.readyState===r.CONNECTING){Qt(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=r.CLOSING,this._socket.destroy())}}};Object.defineProperty(Ee,"CONNECTING",{enumerable:!0,value:gn.indexOf("CONNECTING")});Object.defineProperty(Ee.prototype,"CONNECTING",{enumerable:!0,value:gn.indexOf("CONNECTING")});Object.defineProperty(Ee,"OPEN",{enumerable:!0,value:gn.indexOf("OPEN")});Object.defineProperty(Ee.prototype,"OPEN",{enumerable:!0,value:gn.indexOf("OPEN")});Object.defineProperty(Ee,"CLOSING",{enumerable:!0,value:gn.indexOf("CLOSING")});Object.defineProperty(Ee.prototype,"CLOSING",{enumerable:!0,value:gn.indexOf("CLOSING")});Object.defineProperty(Ee,"CLOSED",{enumerable:!0,value:gn.indexOf("CLOSED")});Object.defineProperty(Ee.prototype,"CLOSED",{enumerable:!0,value:gn.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(r=>{Object.defineProperty(Ee.prototype,r,{enumerable:!0})});["open","error","close","message"].forEach(r=>{Object.defineProperty(Ee.prototype,`on${r}`,{enumerable:!0,get(){for(let e of this.listeners(r))if(e[Wd])return e[f2];return null},set(e){for(let t of this.listeners(r))if(t[Wd]){this.removeListener(r,t);break}typeof e=="function"&&this.addEventListener(r,e,{[Wd]:!0})}})});Ee.prototype.addEventListener=h2;Ee.prototype.removeEventListener=m2;Tb.exports=Ee;function xb(r,e,t,n){let i={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:Gd[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...n,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(r._autoPong=i.autoPong,!Gd.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${Gd.join(", ")})`);let s;if(e instanceof Hd)s=e;else try{s=new Hd(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}s.protocol==="http:"?s.protocol="ws:":s.protocol==="https:"&&(s.protocol="wss:"),r._url=s.href;let o=s.protocol==="wss:",a=s.protocol==="ws+unix:",c;if(s.protocol!=="ws:"&&!o&&!a?c=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:a&&!s.pathname?c="The URL's pathname is empty":s.hash&&(c="The URL contains a fragment identifier"),c){let b=new SyntaxError(c);if(r._redirects===0)throw b;cl(r,b);return}let l=o?443:80,u=o2(16).toString("base64"),f=o?n2.request:i2.request,d=new Set,g;if(i.createConnection=i.createConnection||(o?w2:b2),i.defaultPort=i.defaultPort||l,i.port=s.port||l,i.host=s.hostname.startsWith("[")?s.hostname.slice(1,-1):s.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":u,Connection:"Upgrade",Upgrade:"websocket"},i.path=s.pathname+s.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(g=new Wn(i.perMessageDeflate!==!0?i.perMessageDeflate:{},!1,i.maxPayload),i.headers["Sec-WebSocket-Extensions"]=g2({[Wn.extensionName]:g.offer()})),t.length){for(let b of t){if(typeof b!="string"||!_2.test(b)||d.has(b))throw new SyntaxError("An invalid or duplicated subprotocol was specified");d.add(b)}i.headers["Sec-WebSocket-Protocol"]=t.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(s.username||s.password)&&(i.auth=`${s.username}:${s.password}`),a){let b=i.path.split(":");i.socketPath=b[0],i.path=b[1]}let y;if(i.followRedirects){if(r._redirects===0){r._originalIpc=a,r._originalSecure=o,r._originalHostOrSocketPath=a?i.socketPath:s.host;let b=n&&n.headers;if(n={...n,headers:{}},b)for(let[C,R]of Object.entries(b))n.headers[C.toLowerCase()]=R}else if(r.listenerCount("redirect")===0){let b=a?r._originalIpc?i.socketPath===r._originalHostOrSocketPath:!1:r._originalIpc?!1:s.host===r._originalHostOrSocketPath;(!b||r._originalSecure&&!o)&&(delete i.headers.authorization,delete i.headers.cookie,b||delete i.headers.host,i.auth=void 0)}i.auth&&!n.headers.authorization&&(n.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),y=r._req=f(i),r._redirects&&r.emit("redirect",r.url,y)}else y=r._req=f(i);i.timeout&&y.on("timeout",()=>{Qt(r,y,"Opening handshake has timed out")}),y.on("error",b=>{y===null||y[yb]||(y=r._req=null,cl(r,b))}),y.on("response",b=>{let C=b.headers.location,R=b.statusCode;if(C&&i.followRedirects&&R>=300&&R<400){if(++r._redirects>i.maxRedirects){Qt(r,y,"Maximum redirects exceeded");return}y.abort();let O;try{O=new Hd(C,e)}catch{let B=new SyntaxError(`Invalid URL: ${C}`);cl(r,B);return}xb(r,O,t,n)}else r.emit("unexpected-response",y,b)||Qt(r,y,`Unexpected server response: ${b.statusCode}`)}),y.on("upgrade",(b,C,R)=>{if(r.emit("upgrade",b),r.readyState!==Ee.CONNECTING)return;y=r._req=null;let O=b.headers.upgrade;if(O===void 0||O.toLowerCase()!=="websocket"){Qt(r,C,"Invalid Upgrade header");return}let P=a2("sha1").update(u+p2).digest("base64");if(b.headers["sec-websocket-accept"]!==P){Qt(r,C,"Invalid Sec-WebSocket-Accept header");return}let B=b.headers["sec-websocket-protocol"],G;if(B!==void 0?d.size?d.has(B)||(G="Server sent an invalid subprotocol"):G="Server sent a subprotocol but none was requested":d.size&&(G="Server sent no subprotocol"),G){Qt(r,C,G);return}B&&(r._protocol=B);let F=b.headers["sec-websocket-extensions"];if(F!==void 0){if(!g){Qt(r,C,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let V;try{V=v2(F)}catch{Qt(r,C,"Invalid Sec-WebSocket-Extensions header");return}let D=Object.keys(V);if(D.length!==1||D[0]!==Wn.extensionName){Qt(r,C,"Server indicated an extension that was not requested");return}try{g.accept(V[Wn.extensionName])}catch{Qt(r,C,"Invalid Sec-WebSocket-Extensions header");return}r._extensions[Wn.extensionName]=g}r.setSocket(C,R,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(y,r):y.end()}function cl(r,e){r._readyState=Ee.CLOSING,r._errorEmitted=!0,r.emit("error",e),r.emitClose()}function b2(r){return r.path=r.socketPath,gb.connect(r)}function w2(r){return r.path=void 0,!r.servername&&r.servername!==""&&(r.servername=gb.isIP(r.host)?"":r.host),s2.connect(r)}function Qt(r,e,t){r._readyState=Ee.CLOSING;let n=new Error(t);Error.captureStackTrace(n,Qt),e.setHeader?(e[yb]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(cl,r,n)):(e.destroy(n),e.once("error",r.emit.bind(r,"error")),e.once("close",r.emitClose.bind(r)))}function zd(r,e,t){if(e){let n=u2(e)?e.size:y2(e).length;r._socket?r._sender._bufferedBytes+=n:r._bufferedAmount+=n}if(t){let n=new Error(`WebSocket is not open: readyState ${r.readyState} (${gn[r.readyState]})`);process.nextTick(t,n)}}function S2(r,e){let t=this[xt];t._closeFrameReceived=!0,t._closeMessage=e,t._closeCode=r,t._socket[xt]!==void 0&&(t._socket.removeListener("data",ll),process.nextTick(_b,t._socket),r===1005?t.close():t.close(r,e))}function E2(){let r=this[xt];r.isPaused||r._socket.resume()}function T2(r){let e=this[xt];e._socket[xt]!==void 0&&(e._socket.removeListener("data",ll),process.nextTick(_b,e._socket),e.close(r[d2])),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",r))}function mb(){this[xt].emitClose()}function C2(r,e){this[xt].emit("message",r,e)}function k2(r){let e=this[xt];e._autoPong&&e.pong(r,!this._isServer,vb),e.emit("ping",r)}function A2(r){this[xt].emit("pong",r)}function _b(r){r.resume()}function R2(r){let e=this[xt];e.readyState!==Ee.CLOSED&&(e.readyState===Ee.OPEN&&(e._readyState=Ee.CLOSING,bb(e)),this._socket.end(),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",r)))}function bb(r){r._closeTimer=setTimeout(r._socket.destroy.bind(r._socket),x2)}function wb(){let r=this[xt];this.removeListener("close",wb),this.removeListener("data",ll),this.removeListener("end",Sb),r._readyState=Ee.CLOSING;let e;!this._readableState.endEmitted&&!r._closeFrameReceived&&!r._receiver._writableState.errorEmitted&&(e=r._socket.read())!==null&&r._receiver.write(e),r._receiver.end(),this[xt]=void 0,clearTimeout(r._closeTimer),r._receiver._writableState.finished||r._receiver._writableState.errorEmitted?r.emitClose():(r._receiver.on("error",mb),r._receiver.on("finish",mb))}function ll(r){this[xt]._receiver.write(r)||this.pause()}function Sb(){let r=this[xt];r._readyState=Ee.CLOSING,r._receiver.end(),this.end()}function Eb(){let r=this[xt];this.removeListener("error",Eb),this.on("error",vb),r&&(r._readyState=Ee.CLOSING,this.destroy())}});var Rb=A((YW,Ab)=>{"use strict";var KW=ul(),{Duplex:O2}=require("stream");function Cb(r){r.emit("close")}function M2(){!this.destroyed&&this._writableState.finished&&this.destroy()}function kb(r){this.removeListener("error",kb),this.destroy(),this.listenerCount("error")===0&&this.emit("error",r)}function P2(r,e){let t=!0,n=new O2({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return r.on("message",function(s,o){let a=!o&&n._readableState.objectMode?s.toString():s;n.push(a)||r.pause()}),r.once("error",function(s){n.destroyed||(t=!1,n.destroy(s))}),r.once("close",function(){n.destroyed||n.push(null)}),n._destroy=function(i,s){if(r.readyState===r.CLOSED){s(i),process.nextTick(Cb,n);return}let o=!1;r.once("error",function(c){o=!0,s(c)}),r.once("close",function(){o||s(i),process.nextTick(Cb,n)}),t&&r.terminate()},n._final=function(i){if(r.readyState===r.CONNECTING){r.once("open",function(){n._final(i)});return}r._socket!==null&&(r._socket._writableState.finished?(i(),n._readableState.endEmitted&&n.destroy()):(r._socket.once("finish",function(){i()}),r.close()))},n._read=function(){r.isPaused&&r.resume()},n._write=function(i,s,o){if(r.readyState===r.CONNECTING){r.once("open",function(){n._write(i,s,o)});return}r.send(i,o)},n.on("end",M2),n.on("error",kb),n}Ab.exports=P2});var Mb=A((XW,Ob)=>{"use strict";var{tokenChars:I2}=hs();function N2(r){let e=new Set,t=-1,n=-1,i=0;for(i;i<r.length;i++){let o=r.charCodeAt(i);if(n===-1&&I2[o]===1)t===-1&&(t=i);else if(i!==0&&(o===32||o===9))n===-1&&t!==-1&&(n=i);else if(o===44){if(t===-1)throw new SyntaxError(`Unexpected character at index ${i}`);n===-1&&(n=i);let a=r.slice(t,n);if(e.has(a))throw new SyntaxError(`The "${a}" subprotocol is duplicated`);e.add(a),t=n=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(t===-1||n!==-1)throw new SyntaxError("Unexpected end of input");let s=r.slice(t,i);if(e.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);return e.add(s),e}Ob.exports={parse:N2}});var jb=A((ZW,Bb)=>{"use strict";var D2=require("events"),pl=require("http"),{Duplex:JW}=require("stream"),{createHash:L2}=require("crypto"),Pb=$d(),hi=Fo(),B2=Mb(),j2=ul(),{GUID:F2,kWebSocket:U2}=dn(),q2=/^[+/0-9A-Za-z]{22}==$/,Ib=0,Nb=1,Lb=2,Vd=class extends D2{constructor(e,t){if(super(),e={allowSynchronousEvents:!0,autoPong:!0,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:j2,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=pl.createServer((n,i)=>{let s=pl.STATUS_CODES[426];i.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),i.end(s)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){let n=this.emit.bind(this,"connection");this._removeListeners=$2(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,s,o)=>{this.handleUpgrade(i,s,o,n)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=Ib}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===Lb){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(Ho,this);return}if(e&&this.once("close",e),this._state!==Nb)if(this._state=Nb,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(Ho,this):process.nextTick(Ho,this);else{let t=this._server;this._removeListeners(),this._removeListeners=this._server=null,t.close(()=>{Ho(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((t!==-1?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,n,i){t.on("error",Db);let s=e.headers["sec-websocket-key"],o=e.headers.upgrade,a=+e.headers["sec-websocket-version"];if(e.method!=="GET"){mi(this,e,t,405,"Invalid HTTP method");return}if(o===void 0||o.toLowerCase()!=="websocket"){mi(this,e,t,400,"Invalid Upgrade header");return}if(s===void 0||!q2.test(s)){mi(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");return}if(a!==13&&a!==8){mi(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(e)){Wo(t,400);return}let c=e.headers["sec-websocket-protocol"],l=new Set;if(c!==void 0)try{l=B2.parse(c)}catch{mi(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let u=e.headers["sec-websocket-extensions"],f={};if(this.options.perMessageDeflate&&u!==void 0){let d=new hi(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let g=Pb.parse(u);g[hi.extensionName]&&(d.accept(g[hi.extensionName]),f[hi.extensionName]=d)}catch{mi(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let d={origin:e.headers[`${a===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(d,(g,y,b,C)=>{if(!g)return Wo(t,y||401,b,C);this.completeUpgrade(f,s,l,e,t,n,i)});return}if(!this.options.verifyClient(d))return Wo(t,401)}this.completeUpgrade(f,s,l,e,t,n,i)}completeUpgrade(e,t,n,i,s,o,a){if(!s.readable||!s.writable)return s.destroy();if(s[U2])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>Ib)return Wo(s,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${L2("sha1").update(t+F2).digest("base64")}`],u=new this.options.WebSocket(null,void 0,this.options);if(n.size){let f=this.options.handleProtocols?this.options.handleProtocols(n,i):n.values().next().value;f&&(l.push(`Sec-WebSocket-Protocol: ${f}`),u._protocol=f)}if(e[hi.extensionName]){let f=e[hi.extensionName].params,d=Pb.format({[hi.extensionName]:[f]});l.push(`Sec-WebSocket-Extensions: ${d}`),u._extensions=e}this.emit("headers",l,i),s.write(l.concat(`\r
|
|
24
24
|
`).join(`\r
|
|
25
25
|
`)),s.removeListener("error",Db),u.setSocket(s,o,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(u),u.on("close",()=>{this.clients.delete(u),this._shouldEmitClose&&!this.clients.size&&process.nextTick(Ho,this)})),a(u,i)}};Bb.exports=Vd;function $2(r,e){for(let t of Object.keys(e))r.on(t,e[t]);return function(){for(let n of Object.keys(e))r.removeListener(n,e[n])}}function Ho(r){r._state=Lb,r.emit("close")}function Db(){this.destroy()}function Wo(r,e,t,n){t=t||pl.STATUS_CODES[e],n={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(t),...n},r.once("finish",r.destroy),r.end(`HTTP/1.1 ${e} ${pl.STATUS_CODES[e]}\r
|
|
26
26
|
`+Object.keys(n).map(i=>`${i}: ${n[i]}`).join(`\r
|
|
27
27
|
`)+`\r
|
|
28
28
|
\r
|
|
29
|
-
`+t)}function mi(r,e,t,n,i,s){if(r.listenerCount("wsClientError")){let o=new Error(i);Error.captureStackTrace(o,mi),r.emit("wsClientError",o,t,e)}else Wo(t,n,i,s)}});var Ub=A((QW,Fb)=>{"use strict";var vn=ul();vn.createWebSocketStream=Rb();vn.Server=jb();vn.Receiver=Bd();vn.Sender=Ud();vn.WebSocket=vn;vn.WebSocketServer=vn.Server;Fb.exports=vn});var Xd=A(xs=>{"use strict";var Kd;Object.defineProperty(xs,"__esModule",{value:!0});xs.SessionAwareAdapter=xs.Adapter=void 0;var H2=require("events"),W2=N_(),fl=Ub(),G2=typeof((Kd=fl?.Sender)===null||Kd===void 0?void 0:Kd.frame)=="function",dl=class extends H2.EventEmitter{constructor(e){super(),this.nsp=e,this.rooms=new Map,this.sids=new Map,this.encoder=e.server.encoder}init(){}close(){}serverCount(){return Promise.resolve(1)}addAll(e,t){this.sids.has(e)||this.sids.set(e,new Set);for(let n of t)this.sids.get(e).add(n),this.rooms.has(n)||(this.rooms.set(n,new Set),this.emit("create-room",n)),this.rooms.get(n).has(e)||(this.rooms.get(n).add(e),this.emit("join-room",n,e))}del(e,t){this.sids.has(e)&&this.sids.get(e).delete(t),this._del(t,e)}_del(e,t){let n=this.rooms.get(e);n!=null&&(n.delete(t)&&this.emit("leave-room",e,t),n.size===0&&this.rooms.delete(e)&&this.emit("delete-room",e))}delAll(e){if(this.sids.has(e)){for(let t of this.sids.get(e))this._del(t,e);this.sids.delete(e)}}broadcast(e,t){let n=t.flags||{},i={preEncoded:!0,volatile:n.volatile,compress:n.compress};e.nsp=this.nsp.name;let s=this._encode(e,i);this.apply(t,o=>{typeof o.notifyOutgoingListeners=="function"&&o.notifyOutgoingListeners(e),o.client.writeToEngine(s,i)})}broadcastWithAck(e,t,n,i){let s=t.flags||{},o={preEncoded:!0,volatile:s.volatile,compress:s.compress};e.nsp=this.nsp.name,e.id=this.nsp._ids++;let a=this._encode(e,o),c=0;this.apply(t,l=>{c++,l.acks.set(e.id,i),typeof l.notifyOutgoingListeners=="function"&&l.notifyOutgoingListeners(e),l.client.writeToEngine(a,o)}),n(c)}_encode(e,t){let n=this.encoder.encode(e);if(G2&&n.length===1&&typeof n[0]=="string"){let i=Buffer.from("4"+n[0]);t.wsPreEncodedFrame=fl.Sender.frame(i,{readOnly:!1,mask:!1,rsv1:!1,opcode:1,fin:!0})}return n}sockets(e){let t=new Set;return this.apply({rooms:e},n=>{t.add(n.id)}),Promise.resolve(t)}socketRooms(e){return this.sids.get(e)}fetchSockets(e){let t=[];return this.apply(e,n=>{t.push(n)}),Promise.resolve(t)}addSockets(e,t){this.apply(e,n=>{n.join(t)})}delSockets(e,t){this.apply(e,n=>{t.forEach(i=>n.leave(i))})}disconnectSockets(e,t){this.apply(e,n=>{n.disconnect(t)})}apply(e,t){let n=e.rooms,i=this.computeExceptSids(e.except);if(n.size){let s=new Set;for(let o of n)if(this.rooms.has(o))for(let a of this.rooms.get(o)){if(s.has(a)||i.has(a))continue;let c=this.nsp.sockets.get(a);c&&(t(c),s.add(a))}}else for(let[s]of this.sids){if(i.has(s))continue;let o=this.nsp.sockets.get(s);o&&t(o)}}computeExceptSids(e){let t=new Set;if(e&&e.size>0)for(let n of e)this.rooms.has(n)&&this.rooms.get(n).forEach(i=>t.add(i));return t}serverSideEmit(e){console.warn("this adapter does not support the serverSideEmit() functionality")}persistSession(e){}restoreSession(e,t){return null}};xs.Adapter=dl;var Yd=class extends dl{constructor(e){super(e),this.nsp=e,this.sessions=new Map,this.packets=[],this.maxDisconnectionDuration=e.server.opts.connectionStateRecovery.maxDisconnectionDuration,setInterval(()=>{let n=Date.now()-this.maxDisconnectionDuration;this.sessions.forEach((i,s)=>{i.disconnectedAt<n&&this.sessions.delete(s)});for(let i=this.packets.length-1;i>=0;i--)if(this.packets[i].emittedAt<n){this.packets.splice(0,i+1);break}},60*1e3).unref()}persistSession(e){e.disconnectedAt=Date.now(),this.sessions.set(e.pid,e)}restoreSession(e,t){let n=this.sessions.get(e);if(!n)return null;if(n.disconnectedAt+this.maxDisconnectionDuration<Date.now())return this.sessions.delete(e),null;let s=this.packets.findIndex(a=>a.id===t);if(s===-1)return null;let o=[];for(let a=s+1;a<this.packets.length;a++){let c=this.packets[a];z2(n.rooms,c.opts)&&o.push(c.data)}return Promise.resolve(Object.assign(Object.assign({},n),{missedPackets:o}))}broadcast(e,t){var n;let i=e.type===2,s=e.id===void 0,o=((n=t.flags)===null||n===void 0?void 0:n.volatile)===void 0;if(i&&s&&o){let a=(0,W2.yeast)();e.data.push(a),this.packets.push({id:a,opts:t,data:e.data,emittedAt:Date.now()})}super.broadcast(e,t)}};xs.SessionAwareAdapter=Yd;function z2(r,e){let t=e.rooms.size===0||r.some(i=>e.rooms.has(i)),n=r.every(i=>!e.except.has(i));return t&&n}});var qb=A(Wr=>{"use strict";var V2=Wr&&Wr.__rest||function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};Object.defineProperty(Wr,"__esModule",{value:!0});Wr.ClusterAdapterWithHeartbeat=Wr.ClusterAdapter=Wr.MessageType=void 0;var K2=Xd(),Y2=Oe(),X2=require("crypto"),Te=(0,Y2.debug)("socket.io-adapter"),J2="emitter",hl=5e3;function bs(){return(0,X2.randomBytes)(8).toString("hex")}var ee;(function(r){r[r.INITIAL_HEARTBEAT=1]="INITIAL_HEARTBEAT",r[r.HEARTBEAT=2]="HEARTBEAT",r[r.BROADCAST=3]="BROADCAST",r[r.SOCKETS_JOIN=4]="SOCKETS_JOIN",r[r.SOCKETS_LEAVE=5]="SOCKETS_LEAVE",r[r.DISCONNECT_SOCKETS=6]="DISCONNECT_SOCKETS",r[r.FETCH_SOCKETS=7]="FETCH_SOCKETS",r[r.FETCH_SOCKETS_RESPONSE=8]="FETCH_SOCKETS_RESPONSE",r[r.SERVER_SIDE_EMIT=9]="SERVER_SIDE_EMIT",r[r.SERVER_SIDE_EMIT_RESPONSE=10]="SERVER_SIDE_EMIT_RESPONSE",r[r.BROADCAST_CLIENT_COUNT=11]="BROADCAST_CLIENT_COUNT",r[r.BROADCAST_ACK=12]="BROADCAST_ACK",r[r.ADAPTER_CLOSE=13]="ADAPTER_CLOSE"})(ee||(Wr.MessageType=ee={}));function gi(r){return{rooms:[...r.rooms],except:[...r.except],flags:r.flags}}function _s(r){return{rooms:new Set(r.rooms),except:new Set(r.except),flags:r.flags}}var ml=class extends K2.Adapter{constructor(e){super(e),this.requests=new Map,this.ackRequests=new Map,this.uid=bs()}onMessage(e,t){if(e.uid===this.uid)return Te("[%s] ignore message from self",this.uid);if(e.nsp!==this.nsp.name)return Te("[%s] ignore message from another namespace (%s)",this.uid,e.nsp);switch(Te("[%s] new event of type %d from %s",this.uid,e.type,e.uid),e.type){case ee.BROADCAST:{if(e.data.requestId!==void 0)super.broadcastWithAck(e.data.packet,_s(e.data.opts),i=>{Te("[%s] waiting for %d client acknowledgements",this.uid,i),this.publishResponse(e.uid,{type:ee.BROADCAST_CLIENT_COUNT,data:{requestId:e.data.requestId,clientCount:i}})},i=>{Te("[%s] received acknowledgement with value %j",this.uid,i),this.publishResponse(e.uid,{type:ee.BROADCAST_ACK,data:{requestId:e.data.requestId,packet:i}})});else{let i=e.data.packet,s=_s(e.data.opts);this.addOffsetIfNecessary(i,s,t),super.broadcast(i,s)}break}case ee.SOCKETS_JOIN:super.addSockets(_s(e.data.opts),e.data.rooms);break;case ee.SOCKETS_LEAVE:super.delSockets(_s(e.data.opts),e.data.rooms);break;case ee.DISCONNECT_SOCKETS:super.disconnectSockets(_s(e.data.opts),e.data.close);break;case ee.FETCH_SOCKETS:{Te("[%s] calling fetchSockets with opts %j",this.uid,e.data.opts),super.fetchSockets(_s(e.data.opts)).then(n=>{this.publishResponse(e.uid,{type:ee.FETCH_SOCKETS_RESPONSE,data:{requestId:e.data.requestId,sockets:n.map(i=>{let s=i.handshake,{sessionStore:o}=s,a=V2(s,["sessionStore"]);return{id:i.id,handshake:a,rooms:[...i.rooms],data:i.data}})}})});break}case ee.SERVER_SIDE_EMIT:{let n=e.data.packet;if(!(e.data.requestId!==void 0)){this.nsp._onServerSideEmit(n);return}let s=!1,o=a=>{s||(s=!0,Te("[%s] calling acknowledgement with %j",this.uid,a),this.publishResponse(e.uid,{type:ee.SERVER_SIDE_EMIT_RESPONSE,data:{requestId:e.data.requestId,packet:a}}))};this.nsp._onServerSideEmit([...n,o]);break}case ee.BROADCAST_CLIENT_COUNT:case ee.BROADCAST_ACK:case ee.FETCH_SOCKETS_RESPONSE:case ee.SERVER_SIDE_EMIT_RESPONSE:this.onResponse(e);break;default:Te("[%s] unknown message type: %s",this.uid,e.type)}}onResponse(e){var t,n;let i=e.data.requestId;switch(Te("[%s] received response %s to request %s",this.uid,e.type,i),e.type){case ee.BROADCAST_CLIENT_COUNT:{(t=this.ackRequests.get(i))===null||t===void 0||t.clientCountCallback(e.data.clientCount);break}case ee.BROADCAST_ACK:{(n=this.ackRequests.get(i))===null||n===void 0||n.ack(e.data.packet);break}case ee.FETCH_SOCKETS_RESPONSE:{let s=this.requests.get(i);if(!s)return;s.current++,e.data.sockets.forEach(o=>s.responses.push(o)),s.current===s.expected&&(clearTimeout(s.timeout),s.resolve(s.responses),this.requests.delete(i));break}case ee.SERVER_SIDE_EMIT_RESPONSE:{let s=this.requests.get(i);if(!s)return;s.current++,s.responses.push(e.data.packet),s.current===s.expected&&(clearTimeout(s.timeout),s.resolve(null,s.responses),this.requests.delete(i));break}default:Te("[%s] unknown response type: %s",this.uid,e.type)}}async broadcast(e,t){var n;if(!((n=t.flags)===null||n===void 0?void 0:n.local))try{let s=await this.publishAndReturnOffset({type:ee.BROADCAST,data:{packet:e,opts:gi(t)}});this.addOffsetIfNecessary(e,t,s)}catch(s){return Te("[%s] error while broadcasting message: %s",this.uid,s.message)}super.broadcast(e,t)}addOffsetIfNecessary(e,t,n){var i;if(!this.nsp.server.opts.connectionStateRecovery)return;let s=e.type===2,o=e.id===void 0,a=((i=t.flags)===null||i===void 0?void 0:i.volatile)===void 0;s&&o&&a&&e.data.push(n)}broadcastWithAck(e,t,n,i){var s;if(!((s=t?.flags)===null||s===void 0?void 0:s.local)){let a=bs();this.ackRequests.set(a,{clientCountCallback:n,ack:i}),this.publish({type:ee.BROADCAST,data:{packet:e,requestId:a,opts:gi(t)}}),setTimeout(()=>{this.ackRequests.delete(a)},t.flags.timeout)}super.broadcastWithAck(e,t,n,i)}async addSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.SOCKETS_JOIN,data:{opts:gi(e),rooms:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.addSockets(e,t)}async delSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.SOCKETS_LEAVE,data:{opts:gi(e),rooms:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.delSockets(e,t)}async disconnectSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.DISCONNECT_SOCKETS,data:{opts:gi(e),close:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.disconnectSockets(e,t)}async fetchSockets(e){var t;let[n,i]=await Promise.all([super.fetchSockets(e),this.serverCount()]),s=i-1;if(!((t=e.flags)===null||t===void 0)&&t.local||s<=0)return n;let o=bs();return new Promise((a,c)=>{let l=setTimeout(()=>{let f=this.requests.get(o);f&&(c(new Error(`timeout reached: only ${f.current} responses received out of ${f.expected}`)),this.requests.delete(o))},e.flags.timeout||hl),u={type:ee.FETCH_SOCKETS,resolve:a,timeout:l,current:0,expected:s,responses:n};this.requests.set(o,u),this.publish({type:ee.FETCH_SOCKETS,data:{opts:gi(e),requestId:o}})})}async serverSideEmit(e){if(!(typeof e[e.length-1]=="function"))return this.publish({type:ee.SERVER_SIDE_EMIT,data:{packet:e}});let n=e.pop(),i=await this.serverCount()-1;if(Te('[%s] waiting for %d responses to "serverSideEmit" request',this.uid,i),i<=0)return n(null,[]);let s=bs(),o=setTimeout(()=>{let c=this.requests.get(s);c&&(n(new Error(`timeout reached: only ${c.current} responses received out of ${c.expected}`),c.responses),this.requests.delete(s))},hl),a={type:ee.SERVER_SIDE_EMIT,resolve:n,timeout:o,current:0,expected:i,responses:[]};this.requests.set(s,a),this.publish({type:ee.SERVER_SIDE_EMIT,data:{requestId:s,packet:e}})}publish(e){Te("[%s] sending message %s",this.uid,e.type),this.publishAndReturnOffset(e).catch(t=>{Te("[%s] error while publishing message: %s",this.uid,t)})}publishAndReturnOffset(e){return e.uid=this.uid,e.nsp=this.nsp.name,this.doPublish(e)}publishResponse(e,t){t.uid=this.uid,t.nsp=this.nsp.name,Te("[%s] sending response %s to %s",this.uid,t.type,e),this.doPublishResponse(e,t).catch(n=>{Te("[%s] error while publishing response: %s",this.uid,n)})}};Wr.ClusterAdapter=ml;var Jd=class extends ml{constructor(e,t){super(e),this.nodesMap=new Map,this.customRequests=new Map,this._opts=Object.assign({heartbeatInterval:5e3,heartbeatTimeout:1e4},t),this.cleanupTimer=setInterval(()=>{let n=Date.now();this.nodesMap.forEach((i,s)=>{n-i>this._opts.heartbeatTimeout&&(Te("[%s] node %s seems down",this.uid,s),this.removeNode(s))})},1e3)}init(){this.publish({type:ee.INITIAL_HEARTBEAT})}scheduleHeartbeat(){this.heartbeatTimer?this.heartbeatTimer.refresh():this.heartbeatTimer=setTimeout(()=>{this.publish({type:ee.HEARTBEAT})},this._opts.heartbeatInterval)}close(){this.publish({type:ee.ADAPTER_CLOSE}),clearTimeout(this.heartbeatTimer),this.cleanupTimer&&clearInterval(this.cleanupTimer)}onMessage(e,t){if(e.uid===this.uid)return Te("[%s] ignore message from self",this.uid);switch(e.uid&&e.uid!==J2&&this.nodesMap.set(e.uid,Date.now()),e.type){case ee.INITIAL_HEARTBEAT:this.publish({type:ee.HEARTBEAT});break;case ee.HEARTBEAT:break;case ee.ADAPTER_CLOSE:this.removeNode(e.uid);break;default:super.onMessage(e,t)}}serverCount(){return Promise.resolve(1+this.nodesMap.size)}publish(e){return this.scheduleHeartbeat(),super.publish(e)}async serverSideEmit(e){if(!(typeof e[e.length-1]=="function"))return this.publish({type:ee.SERVER_SIDE_EMIT,data:{packet:e}});let n=e.pop(),i=this.nodesMap.size;if(Te('[%s] waiting for %d responses to "serverSideEmit" request',this.uid,i),i<=0)return n(null,[]);let s=bs(),o=setTimeout(()=>{let c=this.customRequests.get(s);c&&(n(new Error(`timeout reached: missing ${c.missingUids.size} responses`),c.responses),this.customRequests.delete(s))},hl),a={type:ee.SERVER_SIDE_EMIT,resolve:n,timeout:o,missingUids:new Set([...this.nodesMap.keys()]),responses:[]};this.customRequests.set(s,a),this.publish({type:ee.SERVER_SIDE_EMIT,data:{requestId:s,packet:e}})}async fetchSockets(e){var t;let[n,i]=await Promise.all([super.fetchSockets({rooms:e.rooms,except:e.except,flags:{local:!0}}),this.serverCount()]),s=i-1;if(!((t=e.flags)===null||t===void 0)&&t.local||s<=0)return n;let o=bs();return new Promise((a,c)=>{let l=setTimeout(()=>{let f=this.customRequests.get(o);f&&(c(new Error(`timeout reached: missing ${f.missingUids.size} responses`)),this.customRequests.delete(o))},e.flags.timeout||hl),u={type:ee.FETCH_SOCKETS,resolve:a,timeout:l,missingUids:new Set([...this.nodesMap.keys()]),responses:n};this.customRequests.set(o,u),this.publish({type:ee.FETCH_SOCKETS,data:{opts:gi(e),requestId:o}})})}onResponse(e){let t=e.data.requestId;switch(Te("[%s] received response %s to request %s",this.uid,e.type,t),e.type){case ee.FETCH_SOCKETS_RESPONSE:{let n=this.customRequests.get(t);if(!n)return;e.data.sockets.forEach(i=>n.responses.push(i)),n.missingUids.delete(e.uid),n.missingUids.size===0&&(clearTimeout(n.timeout),n.resolve(n.responses),this.customRequests.delete(t));break}case ee.SERVER_SIDE_EMIT_RESPONSE:{let n=this.customRequests.get(t);if(!n)return;n.responses.push(e.data.packet),n.missingUids.delete(e.uid),n.missingUids.size===0&&(clearTimeout(n.timeout),n.resolve(null,n.responses),this.customRequests.delete(t));break}default:super.onResponse(e)}}removeNode(e){this.customRequests.forEach((t,n)=>{t.missingUids.delete(e),t.missingUids.size===0&&(clearTimeout(t.timeout),t.type===ee.FETCH_SOCKETS?t.resolve(t.responses):t.type===ee.SERVER_SIDE_EMIT&&t.resolve(null,t.responses),this.customRequests.delete(n))}),this.nodesMap.delete(e)}};Wr.ClusterAdapterWithHeartbeat=Jd});var gl=A(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.MessageType=hr.ClusterAdapterWithHeartbeat=hr.ClusterAdapter=hr.SessionAwareAdapter=hr.Adapter=void 0;var $b=Xd();Object.defineProperty(hr,"Adapter",{enumerable:!0,get:function(){return $b.Adapter}});Object.defineProperty(hr,"SessionAwareAdapter",{enumerable:!0,get:function(){return $b.SessionAwareAdapter}});var Zd=qb();Object.defineProperty(hr,"ClusterAdapter",{enumerable:!0,get:function(){return Zd.ClusterAdapter}});Object.defineProperty(hr,"ClusterAdapterWithHeartbeat",{enumerable:!0,get:function(){return Zd.ClusterAdapterWithHeartbeat}});Object.defineProperty(hr,"MessageType",{enumerable:!0,get:function(){return Zd.MessageType}})});var Gb=A(ws=>{"use strict";var Z2=ws&&ws.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ws,"__esModule",{value:!0});ws.ParentNamespace=void 0;var Hb=Td(),Q2=gl(),eB=Z2(Oe()),Wb=(0,eB.default)("socket.io:parent-namespace"),vl=class r extends Hb.Namespace{constructor(e){super(e,"/_"+r.count++),this.children=new Set}_initAdapter(){this.adapter=new Qd(this)}emit(e,...t){return this.children.forEach(n=>{n.emit(e,...t)}),!0}createChild(e){Wb("creating child namespace %s",e);let t=new Hb.Namespace(this.server,e);if(this._fns.forEach(n=>t.use(n)),this.listeners("connect").forEach(n=>t.on("connect",n)),this.listeners("connection").forEach(n=>t.on("connection",n)),this.children.add(t),this.server._opts.cleanupEmptyChildNamespaces){let n=t._remove;t._remove=i=>{n.call(t,i),t.sockets.size===0&&(Wb("closing child namespace %s",e),t.adapter.close(),this.server._nsps.delete(t.name),this.children.delete(t))}}return this.server._nsps.set(e,t),this.server.sockets.emitReserved("new_namespace",t),t}fetchSockets(){throw new Error("fetchSockets() is not supported on parent namespaces")}};ws.ParentNamespace=vl;vl.count=0;var Qd=class extends Q2.Adapter{broadcast(e,t){this.nsp.children.forEach(n=>{n.adapter.broadcast(e,t)})}}});var Jb=A(yi=>{"use strict";var tB=yi&&yi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yi,"__esModule",{value:!0});yi.patchAdapter=nB;yi.restoreAdapter=iB;yi.serveFile=oB;var vi=gl(),zb=require("fs"),rB=tB(Oe()),yl=(0,rB.default)("socket.io:adapter-uws"),eh="",{addAll:Kb,del:Yb,broadcast:Xb}=vi.Adapter.prototype;function nB(r){vi.Adapter.prototype.addAll=function(e,t){let n=!this.sids.has(e);Kb.call(this,e,t);let i=this.nsp.sockets.get(e)||this.nsp._preConnectSockets.get(e);if(i){if(i.conn.transport.name==="websocket"){Vb(this.nsp.name,i,n,t);return}n&&i.conn.on("upgrade",()=>{let s=this.sids.get(e);s&&Vb(this.nsp.name,i,n,s)})}},vi.Adapter.prototype.del=function(e,t){Yb.call(this,e,t);let n=this.nsp.sockets.get(e)||this.nsp._preConnectSockets.get(e);if(n&&n.conn.transport.name==="websocket"){let i=n.conn.id,s=n.conn.transport.socket,o=`${this.nsp.name}${eh}${t}`;yl("unsubscribe connection %s from topic %s",i,o),s.unsubscribe(o)}},vi.Adapter.prototype.broadcast=function(e,t){if(!(t.rooms.size<=1&&t.except.size===0)){Xb.call(this,e,t);return}let i=t.flags||{},s={preEncoded:!0,volatile:i.volatile,compress:i.compress};e.nsp=this.nsp.name;let o=this.encoder.encode(e),a=t.rooms.size===0?this.nsp.name:`${this.nsp.name}${eh}${t.rooms.keys().next().value}`;yl("fast publish to %s",a),o.forEach(c=>{let l=typeof c!="string";r.publish(a,l?c:"4"+c,l)}),this.apply(t,c=>{c.conn.transport.name!=="websocket"&&c.client.writeToEngine(o,s)})}}function Vb(r,e,t,n){let i=e.conn.id,s=e.conn.transport.socket;t&&(yl("subscribe connection %s to topic %s",i,r),s.subscribe(r)),n.forEach(o=>{let a=`${r}${eh}${o}`;yl("subscribe connection %s to topic %s",i,a),s.subscribe(a)})}function iB(){vi.Adapter.prototype.addAll=Kb,vi.Adapter.prototype.del=Yb,vi.Adapter.prototype.broadcast=Xb}var sB=r=>{let{buffer:e,byteOffset:t,byteLength:n}=r;return e.slice(t,t+n)};function oB(r,e){let{size:t}=(0,zb.statSync)(e),n=(0,zb.createReadStream)(e),i=()=>!n.destroyed&&n.destroy(),s=a=>{throw i(),a},o=a=>{let c=sB(a);r.cork(()=>{let l=r.getWriteOffset(),[u,f]=r.tryEnd(c,t);!f&&!u&&(n.pause(),r.onWritable(d=>{let[g,y]=r.tryEnd(c.slice(d-l),t);return!y&&g&&n.resume(),g}))})};r.onAborted(i),n.on("data",o).on("error",s).on("end",i)}});var Zb=A((s8,aB)=>{aB.exports={name:"socket.io",version:"4.8.3",description:"node.js realtime framework server",keywords:["realtime","framework","websocket","tcp","events","socket","io"],files:["dist/","client-dist/","wrapper.mjs","!**/*.tsbuildinfo"],directories:{doc:"docs/",example:"example/",lib:"lib/",test:"test/"},type:"commonjs",main:"./dist/index.js",exports:{".":{types:"./dist/index.d.ts",import:"./wrapper.mjs",require:"./dist/index.js"},"./package.json":"./package.json"},types:"./dist/index.d.ts",license:"MIT",homepage:"https://github.com/socketio/socket.io/tree/main/packages/socket.io#readme",repository:{type:"git",url:"git+https://github.com/socketio/socket.io.git"},bugs:{url:"https://github.com/socketio/socket.io/issues"},scripts:{compile:"rimraf ./dist && tsc",test:"npm run format:check && npm run compile && npm run test:types && npm run test:unit","test:types":"tsd","test:unit":"nyc mocha --import=tsx --reporter spec --slow 200 --bail --timeout 10000 test/index.ts","format:check":'prettier --check "lib/**/*.ts" "test/**/*.ts"',"format:fix":'prettier --write "lib/**/*.ts" "test/**/*.ts"',prepack:"npm run compile"},dependencies:{accepts:"~1.3.4",base64id:"~2.0.0",cors:"~2.8.5",debug:"~4.4.1","engine.io":"~6.6.0","socket.io-adapter":"~2.5.2","socket.io-parser":"~4.2.4"},contributors:[{name:"Guillermo Rauch",email:"rauchg@gmail.com"},{name:"Arnout Kazemier",email:"info@3rd-eden.com"},{name:"Vladimir Dronnikov",email:"dronnikov@gmail.com"},{name:"Einar Otto Stangvik",email:"einaros@gmail.com"}],engines:{node:">=10.2.0"},tsd:{directory:"test"}}});var ow=A((Tt,Go)=>{"use strict";var cB=Tt&&Tt.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),lB=Tt&&Tt.__setModuleDefault||(Object.create?(function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}):function(r,e){r.default=e}),uB=Tt&&Tt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&cB(e,r,t);return lB(e,r),e},nh=Tt&&Tt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Tt,"__esModule",{value:!0});Tt.Namespace=Tt.Socket=Tt.Server=void 0;var pB=nh(require("http")),fB=require("fs"),th=require("zlib"),dB=oc(),xl=require("stream"),Qb=require("path"),ew=m_(),hB=T_(),tw=require("events"),ih=Td();Object.defineProperty(Tt,"Namespace",{enumerable:!0,get:function(){return ih.Namespace}});var mB=Gb(),rw=gl(),gB=uB(Do()),vB=nh(Oe()),sw=Sd();Object.defineProperty(Tt,"Socket",{enumerable:!0,get:function(){return sw.Socket}});var yB=Kc(),rh=Jb(),xB=nh(nd()),Pt=(0,vB.default)("socket.io:server"),nw=Zb().version,iw=/\.map/,Ss=class r extends yB.StrictEventEmitter{constructor(e,t={}){super(),this._nsps=new Map,this.parentNsps=new Map,this.parentNamespacesFromRegExp=new Map,typeof e=="object"&&e instanceof Object&&!e.listen&&(t=e,e=void 0),this.path(t.path||"/socket.io"),this.connectTimeout(t.connectTimeout||45e3),this.serveClient(t.serveClient!==!1),this._parser=t.parser||gB,this.encoder=new this._parser.Encoder,this.opts=t,t.connectionStateRecovery?(t.connectionStateRecovery=Object.assign({maxDisconnectionDuration:120*1e3,skipMiddlewares:!0},t.connectionStateRecovery),this.adapter(t.adapter||rw.SessionAwareAdapter)):this.adapter(t.adapter||rw.Adapter),t.cleanupEmptyChildNamespaces=!!t.cleanupEmptyChildNamespaces,this.sockets=this.of("/"),(e||typeof e=="number")&&this.attach(e),this.opts.cors&&(this._corsMiddleware=(0,xB.default)(this.opts.cors))}get _opts(){return this.opts}serveClient(e){return arguments.length?(this._serveClient=e,this):this._serveClient}_checkNamespace(e,t,n){if(this.parentNsps.size===0)return n(!1);let i=this.parentNsps.keys(),s=()=>{let o=i.next();if(o.done)return n(!1);o.value(e,t,(a,c)=>{if(a||!c)return s();if(this._nsps.has(e))return Pt("dynamic namespace %s already exists",e),n(this._nsps.get(e));let l=this.parentNsps.get(o.value).createChild(e);Pt("dynamic namespace %s was created",e),n(l)})};s()}path(e){if(!arguments.length)return this._path;this._path=e.replace(/\/$/,"");let t=this._path.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&");return this.clientPathRegex=new RegExp("^"+t+"/socket\\.io(\\.msgpack|\\.esm)?(\\.min)?\\.js(\\.map)?(?:\\?|$)"),this}connectTimeout(e){return e===void 0?this._connectTimeout:(this._connectTimeout=e,this)}adapter(e){if(!arguments.length)return this._adapter;this._adapter=e;for(let t of this._nsps.values())t._initAdapter();return this}listen(e,t={}){return this.attach(e,t)}attach(e,t={}){if(typeof e=="function"){let n="You are trying to attach socket.io to an express request handler function. Please pass a http.Server instance.";throw new Error(n)}if(Number(e)==e&&(e=Number(e)),typeof e=="number"){Pt("creating http server and binding to %d",e);let n=e;e=pB.default.createServer((i,s)=>{s.writeHead(404),s.end()}),e.listen(n)}return Object.assign(t,this.opts),t.path=t.path||this._path,this.initEngine(e,t),this}attachApp(e,t={}){Object.assign(t,this.opts),t.path=t.path||this._path,Pt("creating uWebSockets.js-based engine with opts %j",t);let n=new ew.uServer(t);n.attach(e,t),this.bind(n),this._serveClient&&e.get(`${this._path}/*`,(i,s)=>{if(!this.clientPathRegex.test(s.getUrl())){s.setYield(!0);return}let o=s.getUrl().replace(this._path,"").replace(/\?.*$/,"").replace(/^\//,""),a=iw.test(o),c=a?"map":"source",l='"'+nw+'"',u="W/"+l,f=s.getHeader("if-none-match");if(f&&(l===f||u===f)){Pt("serve client %s 304",c),i.writeStatus("304 Not Modified"),i.end();return}Pt("serve client %s",c),i.writeHeader("cache-control","public, max-age=0"),i.writeHeader("content-type","application/"+(a?"json":"javascript")+"; charset=utf-8"),i.writeHeader("etag",l);let d=Qb.join(__dirname,"../client-dist/",o);(0,rh.serveFile)(i,d)}),(0,rh.patchAdapter)(e)}initEngine(e,t){Pt("creating engine.io instance with opts %j",t),this.eio=(0,ew.attach)(e,t),this._serveClient&&this.attachServe(e),this.httpServer=e,this.bind(this.eio)}attachServe(e){Pt("attaching client serving req handler");let t=e.listeners("request").slice(0);e.removeAllListeners("request"),e.on("request",(n,i)=>{if(this.clientPathRegex.test(n.url))this._corsMiddleware?this._corsMiddleware(n,i,()=>{this.serve(n,i)}):this.serve(n,i);else for(let s=0;s<t.length;s++)t[s].call(e,n,i)})}serve(e,t){let n=e.url.replace(this._path,"").replace(/\?.*$/,""),i=iw.test(n),s=i?"map":"source",o='"'+nw+'"',a="W/"+o,c=e.headers["if-none-match"];if(c&&(o===c||a===c)){Pt("serve client %s 304",s),t.writeHead(304),t.end();return}Pt("serve client %s",s),t.setHeader("Cache-Control","public, max-age=0"),t.setHeader("Content-Type","application/"+(i?"json":"javascript")+"; charset=utf-8"),t.setHeader("ETag",o),r.sendFile(n,e,t)}static sendFile(e,t,n){let i=(0,fB.createReadStream)(Qb.join(__dirname,"../client-dist/",e)),s=dB(t).encodings(["br","gzip","deflate"]),o=a=>{a&&n.end()};switch(s){case"br":n.writeHead(200,{"content-encoding":"br"}),(0,xl.pipeline)(i,(0,th.createBrotliCompress)(),n,o);break;case"gzip":n.writeHead(200,{"content-encoding":"gzip"}),(0,xl.pipeline)(i,(0,th.createGzip)(),n,o);break;case"deflate":n.writeHead(200,{"content-encoding":"deflate"}),(0,xl.pipeline)(i,(0,th.createDeflate)(),n,o);break;default:n.writeHead(200),(0,xl.pipeline)(i,n,o)}}bind(e){return this.engine=e,this.engine.on("connection",this.onconnection.bind(this)),this}onconnection(e){Pt("incoming connection with id %s",e.id);let t=new hB.Client(this,e);return e.protocol===3&&t.connect("/"),this}of(e,t){if(typeof e=="function"||e instanceof RegExp){let i=new mB.ParentNamespace(this);return Pt("initializing parent namespace %s",i.name),typeof e=="function"?this.parentNsps.set(e,i):(this.parentNsps.set((s,o,a)=>a(null,e.test(s)),i),this.parentNamespacesFromRegExp.set(e,i)),t&&i.on("connect",t),i}String(e)[0]!=="/"&&(e="/"+e);let n=this._nsps.get(e);if(!n){for(let[i,s]of this.parentNamespacesFromRegExp)if(i.test(e))return Pt("attaching namespace %s to parent namespace %s",e,i),s.createChild(e);Pt("initializing namespace %s",e),n=new ih.Namespace(this,e),this._nsps.set(e,n),e!=="/"&&this.sockets.emitReserved("new_namespace",n)}return t&&n.on("connect",t),n}async close(e){if(await Promise.allSettled([...this._nsps.values()].map(async t=>{t.sockets.forEach(n=>{n._onclose("server shutting down")}),await t.adapter.close()})),this.engine.close(),(0,rh.restoreAdapter)(),this.httpServer)return new Promise(t=>{this.httpServer.close(n=>{e&&e(n),n&&Pt("server was not running"),t()})});e&&e()}use(e){return this.sockets.use(e),this}to(e){return this.sockets.to(e)}in(e){return this.sockets.in(e)}except(e){return this.sockets.except(e)}send(...e){return this.sockets.emit("message",...e),this}write(...e){return this.sockets.emit("message",...e),this}serverSideEmit(e,...t){return this.sockets.serverSideEmit(e,...t)}serverSideEmitWithAck(e,...t){return this.sockets.serverSideEmitWithAck(e,...t)}allSockets(){return this.sockets.allSockets()}compress(e){return this.sockets.compress(e)}get volatile(){return this.sockets.volatile}get local(){return this.sockets.local}timeout(e){return this.sockets.timeout(e)}fetchSockets(){return this.sockets.fetchSockets()}socketsJoin(e){return this.sockets.socketsJoin(e)}socketsLeave(e){return this.sockets.socketsLeave(e)}disconnectSockets(e=!1){return this.sockets.disconnectSockets(e)}};Tt.Server=Ss;var _B=Object.keys(tw.EventEmitter.prototype).filter(function(r){return typeof tw.EventEmitter.prototype[r]=="function"});_B.forEach(function(r){Ss.prototype[r]=function(){return this.sockets[r].apply(this.sockets,arguments)}});Go.exports=(r,e)=>new Ss(r,e);Go.exports.Server=Ss;Go.exports.Namespace=ih.Namespace;Go.exports.Socket=sw.Socket});function sh(){return zo=(0,lw.randomBytes)(32).toString("hex"),zo}function uw(){return zo||sh(),zo}function pw(r){return!!r&&typeof r=="string"&&r===zo}var lw,zo,_l=ke(()=>{lw=require("crypto"),zo=null});var _w,Sl,H,dt=ke(()=>{_w={darwin:{capture:"nodeScreenshots",encoder:"sharp",tileSize:128,inputFormat:"rgba"},win32:{capture:"nodeScreenshots",encoder:"sharp",tileSize:256,inputFormat:"rgba"},linux:{capture:"nodeScreenshots",encoder:"sharp",tileSize:256,inputFormat:"rgba"}},Sl=_w[process.platform]||_w.linux,H={pipeline:{captureLib:Sl.capture,encoder:Sl.encoder,inputFormat:Sl.inputFormat,tileSize:Sl.tileSize,tileFormat:"webp",webpEffort:0,jpegQuality:50,tileConcurrency:6,outputScale:1,scaleMode:"smooth",minOutputScale:.25,maxOutputScale:1,qualityFloor:85,tierHysteresis:.05,adaptiveTiers:[{minEffective:1,outputScale:1,jpegQuality:85},{minEffective:.7,outputScale:.95,jpegQuality:85},{minEffective:.4,outputScale:.8,jpegQuality:85},{minEffective:0,outputScale:.65,jpegQuality:85}],checksumSampling:{rowStep:3,colStep:8}},webrtc:{enableWebRTC:!0,enableTurn:!1,turnApiUrl:"https://9remote.cc/api/webrtc/turn-credentials",turnRefreshInterval:1380*60*1e3,dcMaxMessageSize:65536,dcBufferThreshold:262144,iceDisconnectGraceMs:6e3,dcChunkSize:8,dcMaxTilesPerFrame:32,dcReliable:!0,dcOrdered:!1,answerTimeout:1e4,maxControlBuffer:500,ackWindow:2,ackPollMs:20,ackTimeoutMs:1500},robotSettings:{mouseDelay:2,keyboardDelay:2},throttling:{mouseThrottle:8,keyThrottle:25,typeTextThrottle:100,maxTextLength:1e3},resourceManagement:{inactiveTimeout:120*1e3,memoryCheckInterval:6e4,memoryWarningThreshold:1e3,maxTimersPerClient:100,maxChunkTimersPerClient:50,disconnectGraceMs:3e4},streaming:{activeInterval:60,idleInterval:400,idleThreshold:3,actionCaptureDelay:50,chunkSize:32,chunkDelay:5},focus:{paddingTiles:4},clipboard:{enabled:!0,pollInterval:1e3,maxTextLength:2e4},displayWake:{enabled:!0,throttleMs:3e4,macDurationSec:5},sleepInhibit:{defaultMode:"never",presets:{"30m":1800*1e3,"1h":3600*1e3,"2h":7200*1e3,"4h":14400*1e3,"24h":1440*60*1e3,never:null}},desktopSwitch:{darwin:{prev:{keyCode:123,mods:"control down"},next:{keyCode:124,mods:"control down"},new:{type:"missionControl"}},win32:{prev:["left",["control","command"]],next:["right",["control","command"]],new:["d",["control","command"]]},linux:{prev:null,next:null,new:null}},logging:{lifecycle:!1,errors:!0,dpiDetection:!1,focus:!1,focusEveryFrames:60,metrics:!1,metricsEveryFrames:30,webrtc:!1}}});var Vo,Ko,ye,ph=ke(()=>{dt();ri();Vo=()=>H.logging,Ko=Fr("remote"),ye={lifecycle:r=>{Vo().lifecycle&&Ko.info(r)},focus:r=>{Vo().focus&&Ko.info(r)},dpi:r=>{Vo().dpiDetection&&Ko.info(r)},error:(r,e)=>{Vo().errors&&Ko.error(`${r} ${e?.message||e||""}`)},warn:r=>{Vo().errors&&Ko.warn(r)}}});function Xo(){for(let r of[ie.ROOT,ie.STATE])Gr.default.existsSync(r)||Gr.default.mkdirSync(r,{recursive:!0})}function hh(){try{return Xo(),Gr.default.existsSync(dh)?JSON.parse(Gr.default.readFileSync(dh,"utf8"))||{}:{}}catch{return{}}}function Cw(r){try{Xo();let e={...hh(),...r};return Gr.default.writeFileSync(dh,JSON.stringify(e,null,2),{mode:384}),e}catch(e){return console.error("Error saving settings:",e),null}}function kw(){try{return Xo(),Gr.default.existsSync(fh)?JSON.parse(Gr.default.readFileSync(fh,"utf8")):{machineId:null,key:null,name:"Default",createdAt:null}}catch{return{machineId:null,key:null,name:"Default",createdAt:null}}}function yn(r){try{Xo(),Gr.default.writeFileSync(IB,JSON.stringify({cmd:r,ts:Date.now()}))}catch{}}function Aw(r,e,t="Default"){try{Xo();let n={machineId:r,key:e,name:t,createdAt:new Date().toISOString()};return Gr.default.writeFileSync(fh,JSON.stringify(n,null,2),{mode:384}),n}catch(n){return console.error("Error saving key:",n),null}}var Gr,Yo,I8,N8,fh,IB,dh,Ts=ke(()=>{Gr=W(require("fs"),1),Yo=W(require("path"),1);St();I8=ie.STATE,N8=Yo.default.join(ie.STATE,"state.json"),fh=Yo.default.join(ie.ROOT,"keys.json"),IB=Yo.default.join(ie.STATE,"cmd.json"),dh=Yo.default.join(ie.STATE,"settings.json")});function Rw(){return new Promise(r=>{if(process.platform!=="darwin"){r({screenRecording:!0,accessibility:!0});return}let e=!1,t=!1,n=0,i=()=>{++n===2&&r({screenRecording:e,accessibility:t})};(0,Jo.execFile)("osascript",["-e",'use framework "ApplicationServices"',"-e",`set checkOptions to current application's NSDictionary's dictionaryWithObject:(false) forKey:("AXTrustedCheckOptionPrompt" as string)`,"-e","return current application's AXIsProcessTrustedWithOptions(checkOptions) as boolean"],{timeout:3e3},(s,o)=>{t=!s&&o.trim()==="true",i()}),(0,Jo.exec)(`osascript -e 'use framework "CoreGraphics"' -e "return (current application's CGPreflightScreenCaptureAccess()) as boolean"`,{timeout:3e3},(s,o)=>{e=!s&&o.trim()==="true",i()})})}function Ow(r){let e=NB[r];e&&process.platform==="darwin"&&(0,Jo.exec)(`open "${e}"`,()=>{})}var Jo,NB,Mw=ke(()=>{Jo=require("child_process"),NB={screenRecording:"x-apple.systempreferences:com.apple.preference.security?Privacy_ScreenCapture",accessibility:"x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility"}});function DB(){return!process.env.DISPLAY&&!process.env.WAYLAND_DISPLAY}function ea(){for(let r=Pw,e=null;r!==e;e=r,r=Mr.default.dirname(r)){let t=Mr.default.join(r,"package.json");if((0,de.existsSync)(t)){try{let n=JSON.parse((0,de.readFileSync)(t,"utf8"));if(n.name!==Wi)continue;let i=typeof n.bin=="string"?n.bin:n.bin?.[Wi];if(i){let s=Mr.default.resolve(r,i);if((0,de.existsSync)(s))return s}}catch{}break}}return process.argv[1]||Mr.default.resolve(Pw,"..","index.js")}function As(){return process.execPath}function Dw(){let r=Mr.default.dirname(As()),e=["/usr/local/bin","/usr/bin","/bin","/usr/sbin","/sbin","/opt/homebrew/bin"];return e.includes(r)||e.unshift(r),e.join(":")}function mh(r){return String(r).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function LB(r,e){let t=[r,e,...Al].map(n=>` <string>${mh(n)}</string>`).join(`
|
|
29
|
+
`+t)}function mi(r,e,t,n,i,s){if(r.listenerCount("wsClientError")){let o=new Error(i);Error.captureStackTrace(o,mi),r.emit("wsClientError",o,t,e)}else Wo(t,n,i,s)}});var Ub=A((QW,Fb)=>{"use strict";var vn=ul();vn.createWebSocketStream=Rb();vn.Server=jb();vn.Receiver=Bd();vn.Sender=Ud();vn.WebSocket=vn;vn.WebSocketServer=vn.Server;Fb.exports=vn});var Xd=A(xs=>{"use strict";var Kd;Object.defineProperty(xs,"__esModule",{value:!0});xs.SessionAwareAdapter=xs.Adapter=void 0;var H2=require("events"),W2=N_(),fl=Ub(),G2=typeof((Kd=fl?.Sender)===null||Kd===void 0?void 0:Kd.frame)=="function",dl=class extends H2.EventEmitter{constructor(e){super(),this.nsp=e,this.rooms=new Map,this.sids=new Map,this.encoder=e.server.encoder}init(){}close(){}serverCount(){return Promise.resolve(1)}addAll(e,t){this.sids.has(e)||this.sids.set(e,new Set);for(let n of t)this.sids.get(e).add(n),this.rooms.has(n)||(this.rooms.set(n,new Set),this.emit("create-room",n)),this.rooms.get(n).has(e)||(this.rooms.get(n).add(e),this.emit("join-room",n,e))}del(e,t){this.sids.has(e)&&this.sids.get(e).delete(t),this._del(t,e)}_del(e,t){let n=this.rooms.get(e);n!=null&&(n.delete(t)&&this.emit("leave-room",e,t),n.size===0&&this.rooms.delete(e)&&this.emit("delete-room",e))}delAll(e){if(this.sids.has(e)){for(let t of this.sids.get(e))this._del(t,e);this.sids.delete(e)}}broadcast(e,t){let n=t.flags||{},i={preEncoded:!0,volatile:n.volatile,compress:n.compress};e.nsp=this.nsp.name;let s=this._encode(e,i);this.apply(t,o=>{typeof o.notifyOutgoingListeners=="function"&&o.notifyOutgoingListeners(e),o.client.writeToEngine(s,i)})}broadcastWithAck(e,t,n,i){let s=t.flags||{},o={preEncoded:!0,volatile:s.volatile,compress:s.compress};e.nsp=this.nsp.name,e.id=this.nsp._ids++;let a=this._encode(e,o),c=0;this.apply(t,l=>{c++,l.acks.set(e.id,i),typeof l.notifyOutgoingListeners=="function"&&l.notifyOutgoingListeners(e),l.client.writeToEngine(a,o)}),n(c)}_encode(e,t){let n=this.encoder.encode(e);if(G2&&n.length===1&&typeof n[0]=="string"){let i=Buffer.from("4"+n[0]);t.wsPreEncodedFrame=fl.Sender.frame(i,{readOnly:!1,mask:!1,rsv1:!1,opcode:1,fin:!0})}return n}sockets(e){let t=new Set;return this.apply({rooms:e},n=>{t.add(n.id)}),Promise.resolve(t)}socketRooms(e){return this.sids.get(e)}fetchSockets(e){let t=[];return this.apply(e,n=>{t.push(n)}),Promise.resolve(t)}addSockets(e,t){this.apply(e,n=>{n.join(t)})}delSockets(e,t){this.apply(e,n=>{t.forEach(i=>n.leave(i))})}disconnectSockets(e,t){this.apply(e,n=>{n.disconnect(t)})}apply(e,t){let n=e.rooms,i=this.computeExceptSids(e.except);if(n.size){let s=new Set;for(let o of n)if(this.rooms.has(o))for(let a of this.rooms.get(o)){if(s.has(a)||i.has(a))continue;let c=this.nsp.sockets.get(a);c&&(t(c),s.add(a))}}else for(let[s]of this.sids){if(i.has(s))continue;let o=this.nsp.sockets.get(s);o&&t(o)}}computeExceptSids(e){let t=new Set;if(e&&e.size>0)for(let n of e)this.rooms.has(n)&&this.rooms.get(n).forEach(i=>t.add(i));return t}serverSideEmit(e){console.warn("this adapter does not support the serverSideEmit() functionality")}persistSession(e){}restoreSession(e,t){return null}};xs.Adapter=dl;var Yd=class extends dl{constructor(e){super(e),this.nsp=e,this.sessions=new Map,this.packets=[],this.maxDisconnectionDuration=e.server.opts.connectionStateRecovery.maxDisconnectionDuration,setInterval(()=>{let n=Date.now()-this.maxDisconnectionDuration;this.sessions.forEach((i,s)=>{i.disconnectedAt<n&&this.sessions.delete(s)});for(let i=this.packets.length-1;i>=0;i--)if(this.packets[i].emittedAt<n){this.packets.splice(0,i+1);break}},60*1e3).unref()}persistSession(e){e.disconnectedAt=Date.now(),this.sessions.set(e.pid,e)}restoreSession(e,t){let n=this.sessions.get(e);if(!n)return null;if(n.disconnectedAt+this.maxDisconnectionDuration<Date.now())return this.sessions.delete(e),null;let s=this.packets.findIndex(a=>a.id===t);if(s===-1)return null;let o=[];for(let a=s+1;a<this.packets.length;a++){let c=this.packets[a];z2(n.rooms,c.opts)&&o.push(c.data)}return Promise.resolve(Object.assign(Object.assign({},n),{missedPackets:o}))}broadcast(e,t){var n;let i=e.type===2,s=e.id===void 0,o=((n=t.flags)===null||n===void 0?void 0:n.volatile)===void 0;if(i&&s&&o){let a=(0,W2.yeast)();e.data.push(a),this.packets.push({id:a,opts:t,data:e.data,emittedAt:Date.now()})}super.broadcast(e,t)}};xs.SessionAwareAdapter=Yd;function z2(r,e){let t=e.rooms.size===0||r.some(i=>e.rooms.has(i)),n=r.every(i=>!e.except.has(i));return t&&n}});var qb=A(Wr=>{"use strict";var V2=Wr&&Wr.__rest||function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};Object.defineProperty(Wr,"__esModule",{value:!0});Wr.ClusterAdapterWithHeartbeat=Wr.ClusterAdapter=Wr.MessageType=void 0;var K2=Xd(),Y2=Oe(),X2=require("crypto"),Te=(0,Y2.debug)("socket.io-adapter"),J2="emitter",hl=5e3;function bs(){return(0,X2.randomBytes)(8).toString("hex")}var ee;(function(r){r[r.INITIAL_HEARTBEAT=1]="INITIAL_HEARTBEAT",r[r.HEARTBEAT=2]="HEARTBEAT",r[r.BROADCAST=3]="BROADCAST",r[r.SOCKETS_JOIN=4]="SOCKETS_JOIN",r[r.SOCKETS_LEAVE=5]="SOCKETS_LEAVE",r[r.DISCONNECT_SOCKETS=6]="DISCONNECT_SOCKETS",r[r.FETCH_SOCKETS=7]="FETCH_SOCKETS",r[r.FETCH_SOCKETS_RESPONSE=8]="FETCH_SOCKETS_RESPONSE",r[r.SERVER_SIDE_EMIT=9]="SERVER_SIDE_EMIT",r[r.SERVER_SIDE_EMIT_RESPONSE=10]="SERVER_SIDE_EMIT_RESPONSE",r[r.BROADCAST_CLIENT_COUNT=11]="BROADCAST_CLIENT_COUNT",r[r.BROADCAST_ACK=12]="BROADCAST_ACK",r[r.ADAPTER_CLOSE=13]="ADAPTER_CLOSE"})(ee||(Wr.MessageType=ee={}));function gi(r){return{rooms:[...r.rooms],except:[...r.except],flags:r.flags}}function _s(r){return{rooms:new Set(r.rooms),except:new Set(r.except),flags:r.flags}}var ml=class extends K2.Adapter{constructor(e){super(e),this.requests=new Map,this.ackRequests=new Map,this.uid=bs()}onMessage(e,t){if(e.uid===this.uid)return Te("[%s] ignore message from self",this.uid);if(e.nsp!==this.nsp.name)return Te("[%s] ignore message from another namespace (%s)",this.uid,e.nsp);switch(Te("[%s] new event of type %d from %s",this.uid,e.type,e.uid),e.type){case ee.BROADCAST:{if(e.data.requestId!==void 0)super.broadcastWithAck(e.data.packet,_s(e.data.opts),i=>{Te("[%s] waiting for %d client acknowledgements",this.uid,i),this.publishResponse(e.uid,{type:ee.BROADCAST_CLIENT_COUNT,data:{requestId:e.data.requestId,clientCount:i}})},i=>{Te("[%s] received acknowledgement with value %j",this.uid,i),this.publishResponse(e.uid,{type:ee.BROADCAST_ACK,data:{requestId:e.data.requestId,packet:i}})});else{let i=e.data.packet,s=_s(e.data.opts);this.addOffsetIfNecessary(i,s,t),super.broadcast(i,s)}break}case ee.SOCKETS_JOIN:super.addSockets(_s(e.data.opts),e.data.rooms);break;case ee.SOCKETS_LEAVE:super.delSockets(_s(e.data.opts),e.data.rooms);break;case ee.DISCONNECT_SOCKETS:super.disconnectSockets(_s(e.data.opts),e.data.close);break;case ee.FETCH_SOCKETS:{Te("[%s] calling fetchSockets with opts %j",this.uid,e.data.opts),super.fetchSockets(_s(e.data.opts)).then(n=>{this.publishResponse(e.uid,{type:ee.FETCH_SOCKETS_RESPONSE,data:{requestId:e.data.requestId,sockets:n.map(i=>{let s=i.handshake,{sessionStore:o}=s,a=V2(s,["sessionStore"]);return{id:i.id,handshake:a,rooms:[...i.rooms],data:i.data}})}})});break}case ee.SERVER_SIDE_EMIT:{let n=e.data.packet;if(!(e.data.requestId!==void 0)){this.nsp._onServerSideEmit(n);return}let s=!1,o=a=>{s||(s=!0,Te("[%s] calling acknowledgement with %j",this.uid,a),this.publishResponse(e.uid,{type:ee.SERVER_SIDE_EMIT_RESPONSE,data:{requestId:e.data.requestId,packet:a}}))};this.nsp._onServerSideEmit([...n,o]);break}case ee.BROADCAST_CLIENT_COUNT:case ee.BROADCAST_ACK:case ee.FETCH_SOCKETS_RESPONSE:case ee.SERVER_SIDE_EMIT_RESPONSE:this.onResponse(e);break;default:Te("[%s] unknown message type: %s",this.uid,e.type)}}onResponse(e){var t,n;let i=e.data.requestId;switch(Te("[%s] received response %s to request %s",this.uid,e.type,i),e.type){case ee.BROADCAST_CLIENT_COUNT:{(t=this.ackRequests.get(i))===null||t===void 0||t.clientCountCallback(e.data.clientCount);break}case ee.BROADCAST_ACK:{(n=this.ackRequests.get(i))===null||n===void 0||n.ack(e.data.packet);break}case ee.FETCH_SOCKETS_RESPONSE:{let s=this.requests.get(i);if(!s)return;s.current++,e.data.sockets.forEach(o=>s.responses.push(o)),s.current===s.expected&&(clearTimeout(s.timeout),s.resolve(s.responses),this.requests.delete(i));break}case ee.SERVER_SIDE_EMIT_RESPONSE:{let s=this.requests.get(i);if(!s)return;s.current++,s.responses.push(e.data.packet),s.current===s.expected&&(clearTimeout(s.timeout),s.resolve(null,s.responses),this.requests.delete(i));break}default:Te("[%s] unknown response type: %s",this.uid,e.type)}}async broadcast(e,t){var n;if(!((n=t.flags)===null||n===void 0?void 0:n.local))try{let s=await this.publishAndReturnOffset({type:ee.BROADCAST,data:{packet:e,opts:gi(t)}});this.addOffsetIfNecessary(e,t,s)}catch(s){return Te("[%s] error while broadcasting message: %s",this.uid,s.message)}super.broadcast(e,t)}addOffsetIfNecessary(e,t,n){var i;if(!this.nsp.server.opts.connectionStateRecovery)return;let s=e.type===2,o=e.id===void 0,a=((i=t.flags)===null||i===void 0?void 0:i.volatile)===void 0;s&&o&&a&&e.data.push(n)}broadcastWithAck(e,t,n,i){var s;if(!((s=t?.flags)===null||s===void 0?void 0:s.local)){let a=bs();this.ackRequests.set(a,{clientCountCallback:n,ack:i}),this.publish({type:ee.BROADCAST,data:{packet:e,requestId:a,opts:gi(t)}}),setTimeout(()=>{this.ackRequests.delete(a)},t.flags.timeout)}super.broadcastWithAck(e,t,n,i)}async addSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.SOCKETS_JOIN,data:{opts:gi(e),rooms:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.addSockets(e,t)}async delSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.SOCKETS_LEAVE,data:{opts:gi(e),rooms:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.delSockets(e,t)}async disconnectSockets(e,t){var n;if(!((n=e.flags)===null||n===void 0?void 0:n.local))try{await this.publishAndReturnOffset({type:ee.DISCONNECT_SOCKETS,data:{opts:gi(e),close:t}})}catch(s){Te("[%s] error while publishing message: %s",this.uid,s.message)}super.disconnectSockets(e,t)}async fetchSockets(e){var t;let[n,i]=await Promise.all([super.fetchSockets(e),this.serverCount()]),s=i-1;if(!((t=e.flags)===null||t===void 0)&&t.local||s<=0)return n;let o=bs();return new Promise((a,c)=>{let l=setTimeout(()=>{let f=this.requests.get(o);f&&(c(new Error(`timeout reached: only ${f.current} responses received out of ${f.expected}`)),this.requests.delete(o))},e.flags.timeout||hl),u={type:ee.FETCH_SOCKETS,resolve:a,timeout:l,current:0,expected:s,responses:n};this.requests.set(o,u),this.publish({type:ee.FETCH_SOCKETS,data:{opts:gi(e),requestId:o}})})}async serverSideEmit(e){if(!(typeof e[e.length-1]=="function"))return this.publish({type:ee.SERVER_SIDE_EMIT,data:{packet:e}});let n=e.pop(),i=await this.serverCount()-1;if(Te('[%s] waiting for %d responses to "serverSideEmit" request',this.uid,i),i<=0)return n(null,[]);let s=bs(),o=setTimeout(()=>{let c=this.requests.get(s);c&&(n(new Error(`timeout reached: only ${c.current} responses received out of ${c.expected}`),c.responses),this.requests.delete(s))},hl),a={type:ee.SERVER_SIDE_EMIT,resolve:n,timeout:o,current:0,expected:i,responses:[]};this.requests.set(s,a),this.publish({type:ee.SERVER_SIDE_EMIT,data:{requestId:s,packet:e}})}publish(e){Te("[%s] sending message %s",this.uid,e.type),this.publishAndReturnOffset(e).catch(t=>{Te("[%s] error while publishing message: %s",this.uid,t)})}publishAndReturnOffset(e){return e.uid=this.uid,e.nsp=this.nsp.name,this.doPublish(e)}publishResponse(e,t){t.uid=this.uid,t.nsp=this.nsp.name,Te("[%s] sending response %s to %s",this.uid,t.type,e),this.doPublishResponse(e,t).catch(n=>{Te("[%s] error while publishing response: %s",this.uid,n)})}};Wr.ClusterAdapter=ml;var Jd=class extends ml{constructor(e,t){super(e),this.nodesMap=new Map,this.customRequests=new Map,this._opts=Object.assign({heartbeatInterval:5e3,heartbeatTimeout:1e4},t),this.cleanupTimer=setInterval(()=>{let n=Date.now();this.nodesMap.forEach((i,s)=>{n-i>this._opts.heartbeatTimeout&&(Te("[%s] node %s seems down",this.uid,s),this.removeNode(s))})},1e3)}init(){this.publish({type:ee.INITIAL_HEARTBEAT})}scheduleHeartbeat(){this.heartbeatTimer?this.heartbeatTimer.refresh():this.heartbeatTimer=setTimeout(()=>{this.publish({type:ee.HEARTBEAT})},this._opts.heartbeatInterval)}close(){this.publish({type:ee.ADAPTER_CLOSE}),clearTimeout(this.heartbeatTimer),this.cleanupTimer&&clearInterval(this.cleanupTimer)}onMessage(e,t){if(e.uid===this.uid)return Te("[%s] ignore message from self",this.uid);switch(e.uid&&e.uid!==J2&&this.nodesMap.set(e.uid,Date.now()),e.type){case ee.INITIAL_HEARTBEAT:this.publish({type:ee.HEARTBEAT});break;case ee.HEARTBEAT:break;case ee.ADAPTER_CLOSE:this.removeNode(e.uid);break;default:super.onMessage(e,t)}}serverCount(){return Promise.resolve(1+this.nodesMap.size)}publish(e){return this.scheduleHeartbeat(),super.publish(e)}async serverSideEmit(e){if(!(typeof e[e.length-1]=="function"))return this.publish({type:ee.SERVER_SIDE_EMIT,data:{packet:e}});let n=e.pop(),i=this.nodesMap.size;if(Te('[%s] waiting for %d responses to "serverSideEmit" request',this.uid,i),i<=0)return n(null,[]);let s=bs(),o=setTimeout(()=>{let c=this.customRequests.get(s);c&&(n(new Error(`timeout reached: missing ${c.missingUids.size} responses`),c.responses),this.customRequests.delete(s))},hl),a={type:ee.SERVER_SIDE_EMIT,resolve:n,timeout:o,missingUids:new Set([...this.nodesMap.keys()]),responses:[]};this.customRequests.set(s,a),this.publish({type:ee.SERVER_SIDE_EMIT,data:{requestId:s,packet:e}})}async fetchSockets(e){var t;let[n,i]=await Promise.all([super.fetchSockets({rooms:e.rooms,except:e.except,flags:{local:!0}}),this.serverCount()]),s=i-1;if(!((t=e.flags)===null||t===void 0)&&t.local||s<=0)return n;let o=bs();return new Promise((a,c)=>{let l=setTimeout(()=>{let f=this.customRequests.get(o);f&&(c(new Error(`timeout reached: missing ${f.missingUids.size} responses`)),this.customRequests.delete(o))},e.flags.timeout||hl),u={type:ee.FETCH_SOCKETS,resolve:a,timeout:l,missingUids:new Set([...this.nodesMap.keys()]),responses:n};this.customRequests.set(o,u),this.publish({type:ee.FETCH_SOCKETS,data:{opts:gi(e),requestId:o}})})}onResponse(e){let t=e.data.requestId;switch(Te("[%s] received response %s to request %s",this.uid,e.type,t),e.type){case ee.FETCH_SOCKETS_RESPONSE:{let n=this.customRequests.get(t);if(!n)return;e.data.sockets.forEach(i=>n.responses.push(i)),n.missingUids.delete(e.uid),n.missingUids.size===0&&(clearTimeout(n.timeout),n.resolve(n.responses),this.customRequests.delete(t));break}case ee.SERVER_SIDE_EMIT_RESPONSE:{let n=this.customRequests.get(t);if(!n)return;n.responses.push(e.data.packet),n.missingUids.delete(e.uid),n.missingUids.size===0&&(clearTimeout(n.timeout),n.resolve(null,n.responses),this.customRequests.delete(t));break}default:super.onResponse(e)}}removeNode(e){this.customRequests.forEach((t,n)=>{t.missingUids.delete(e),t.missingUids.size===0&&(clearTimeout(t.timeout),t.type===ee.FETCH_SOCKETS?t.resolve(t.responses):t.type===ee.SERVER_SIDE_EMIT&&t.resolve(null,t.responses),this.customRequests.delete(n))}),this.nodesMap.delete(e)}};Wr.ClusterAdapterWithHeartbeat=Jd});var gl=A(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.MessageType=hr.ClusterAdapterWithHeartbeat=hr.ClusterAdapter=hr.SessionAwareAdapter=hr.Adapter=void 0;var $b=Xd();Object.defineProperty(hr,"Adapter",{enumerable:!0,get:function(){return $b.Adapter}});Object.defineProperty(hr,"SessionAwareAdapter",{enumerable:!0,get:function(){return $b.SessionAwareAdapter}});var Zd=qb();Object.defineProperty(hr,"ClusterAdapter",{enumerable:!0,get:function(){return Zd.ClusterAdapter}});Object.defineProperty(hr,"ClusterAdapterWithHeartbeat",{enumerable:!0,get:function(){return Zd.ClusterAdapterWithHeartbeat}});Object.defineProperty(hr,"MessageType",{enumerable:!0,get:function(){return Zd.MessageType}})});var Gb=A(ws=>{"use strict";var Z2=ws&&ws.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ws,"__esModule",{value:!0});ws.ParentNamespace=void 0;var Hb=Td(),Q2=gl(),eB=Z2(Oe()),Wb=(0,eB.default)("socket.io:parent-namespace"),vl=class r extends Hb.Namespace{constructor(e){super(e,"/_"+r.count++),this.children=new Set}_initAdapter(){this.adapter=new Qd(this)}emit(e,...t){return this.children.forEach(n=>{n.emit(e,...t)}),!0}createChild(e){Wb("creating child namespace %s",e);let t=new Hb.Namespace(this.server,e);if(this._fns.forEach(n=>t.use(n)),this.listeners("connect").forEach(n=>t.on("connect",n)),this.listeners("connection").forEach(n=>t.on("connection",n)),this.children.add(t),this.server._opts.cleanupEmptyChildNamespaces){let n=t._remove;t._remove=i=>{n.call(t,i),t.sockets.size===0&&(Wb("closing child namespace %s",e),t.adapter.close(),this.server._nsps.delete(t.name),this.children.delete(t))}}return this.server._nsps.set(e,t),this.server.sockets.emitReserved("new_namespace",t),t}fetchSockets(){throw new Error("fetchSockets() is not supported on parent namespaces")}};ws.ParentNamespace=vl;vl.count=0;var Qd=class extends Q2.Adapter{broadcast(e,t){this.nsp.children.forEach(n=>{n.adapter.broadcast(e,t)})}}});var Jb=A(yi=>{"use strict";var tB=yi&&yi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yi,"__esModule",{value:!0});yi.patchAdapter=nB;yi.restoreAdapter=iB;yi.serveFile=oB;var vi=gl(),zb=require("fs"),rB=tB(Oe()),yl=(0,rB.default)("socket.io:adapter-uws"),eh="",{addAll:Kb,del:Yb,broadcast:Xb}=vi.Adapter.prototype;function nB(r){vi.Adapter.prototype.addAll=function(e,t){let n=!this.sids.has(e);Kb.call(this,e,t);let i=this.nsp.sockets.get(e)||this.nsp._preConnectSockets.get(e);if(i){if(i.conn.transport.name==="websocket"){Vb(this.nsp.name,i,n,t);return}n&&i.conn.on("upgrade",()=>{let s=this.sids.get(e);s&&Vb(this.nsp.name,i,n,s)})}},vi.Adapter.prototype.del=function(e,t){Yb.call(this,e,t);let n=this.nsp.sockets.get(e)||this.nsp._preConnectSockets.get(e);if(n&&n.conn.transport.name==="websocket"){let i=n.conn.id,s=n.conn.transport.socket,o=`${this.nsp.name}${eh}${t}`;yl("unsubscribe connection %s from topic %s",i,o),s.unsubscribe(o)}},vi.Adapter.prototype.broadcast=function(e,t){if(!(t.rooms.size<=1&&t.except.size===0)){Xb.call(this,e,t);return}let i=t.flags||{},s={preEncoded:!0,volatile:i.volatile,compress:i.compress};e.nsp=this.nsp.name;let o=this.encoder.encode(e),a=t.rooms.size===0?this.nsp.name:`${this.nsp.name}${eh}${t.rooms.keys().next().value}`;yl("fast publish to %s",a),o.forEach(c=>{let l=typeof c!="string";r.publish(a,l?c:"4"+c,l)}),this.apply(t,c=>{c.conn.transport.name!=="websocket"&&c.client.writeToEngine(o,s)})}}function Vb(r,e,t,n){let i=e.conn.id,s=e.conn.transport.socket;t&&(yl("subscribe connection %s to topic %s",i,r),s.subscribe(r)),n.forEach(o=>{let a=`${r}${eh}${o}`;yl("subscribe connection %s to topic %s",i,a),s.subscribe(a)})}function iB(){vi.Adapter.prototype.addAll=Kb,vi.Adapter.prototype.del=Yb,vi.Adapter.prototype.broadcast=Xb}var sB=r=>{let{buffer:e,byteOffset:t,byteLength:n}=r;return e.slice(t,t+n)};function oB(r,e){let{size:t}=(0,zb.statSync)(e),n=(0,zb.createReadStream)(e),i=()=>!n.destroyed&&n.destroy(),s=a=>{throw i(),a},o=a=>{let c=sB(a);r.cork(()=>{let l=r.getWriteOffset(),[u,f]=r.tryEnd(c,t);!f&&!u&&(n.pause(),r.onWritable(d=>{let[g,y]=r.tryEnd(c.slice(d-l),t);return!y&&g&&n.resume(),g}))})};r.onAborted(i),n.on("data",o).on("error",s).on("end",i)}});var Zb=A((s8,aB)=>{aB.exports={name:"socket.io",version:"4.8.3",description:"node.js realtime framework server",keywords:["realtime","framework","websocket","tcp","events","socket","io"],files:["dist/","client-dist/","wrapper.mjs","!**/*.tsbuildinfo"],directories:{doc:"docs/",example:"example/",lib:"lib/",test:"test/"},type:"commonjs",main:"./dist/index.js",exports:{".":{types:"./dist/index.d.ts",import:"./wrapper.mjs",require:"./dist/index.js"},"./package.json":"./package.json"},types:"./dist/index.d.ts",license:"MIT",homepage:"https://github.com/socketio/socket.io/tree/main/packages/socket.io#readme",repository:{type:"git",url:"git+https://github.com/socketio/socket.io.git"},bugs:{url:"https://github.com/socketio/socket.io/issues"},scripts:{compile:"rimraf ./dist && tsc",test:"npm run format:check && npm run compile && npm run test:types && npm run test:unit","test:types":"tsd","test:unit":"nyc mocha --import=tsx --reporter spec --slow 200 --bail --timeout 10000 test/index.ts","format:check":'prettier --check "lib/**/*.ts" "test/**/*.ts"',"format:fix":'prettier --write "lib/**/*.ts" "test/**/*.ts"',prepack:"npm run compile"},dependencies:{accepts:"~1.3.4",base64id:"~2.0.0",cors:"~2.8.5",debug:"~4.4.1","engine.io":"~6.6.0","socket.io-adapter":"~2.5.2","socket.io-parser":"~4.2.4"},contributors:[{name:"Guillermo Rauch",email:"rauchg@gmail.com"},{name:"Arnout Kazemier",email:"info@3rd-eden.com"},{name:"Vladimir Dronnikov",email:"dronnikov@gmail.com"},{name:"Einar Otto Stangvik",email:"einaros@gmail.com"}],engines:{node:">=10.2.0"},tsd:{directory:"test"}}});var ow=A((Tt,Go)=>{"use strict";var cB=Tt&&Tt.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),lB=Tt&&Tt.__setModuleDefault||(Object.create?(function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}):function(r,e){r.default=e}),uB=Tt&&Tt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&cB(e,r,t);return lB(e,r),e},nh=Tt&&Tt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Tt,"__esModule",{value:!0});Tt.Namespace=Tt.Socket=Tt.Server=void 0;var pB=nh(require("http")),fB=require("fs"),th=require("zlib"),dB=oc(),xl=require("stream"),Qb=require("path"),ew=m_(),hB=T_(),tw=require("events"),ih=Td();Object.defineProperty(Tt,"Namespace",{enumerable:!0,get:function(){return ih.Namespace}});var mB=Gb(),rw=gl(),gB=uB(Do()),vB=nh(Oe()),sw=Sd();Object.defineProperty(Tt,"Socket",{enumerable:!0,get:function(){return sw.Socket}});var yB=Kc(),rh=Jb(),xB=nh(nd()),Pt=(0,vB.default)("socket.io:server"),nw=Zb().version,iw=/\.map/,Ss=class r extends yB.StrictEventEmitter{constructor(e,t={}){super(),this._nsps=new Map,this.parentNsps=new Map,this.parentNamespacesFromRegExp=new Map,typeof e=="object"&&e instanceof Object&&!e.listen&&(t=e,e=void 0),this.path(t.path||"/socket.io"),this.connectTimeout(t.connectTimeout||45e3),this.serveClient(t.serveClient!==!1),this._parser=t.parser||gB,this.encoder=new this._parser.Encoder,this.opts=t,t.connectionStateRecovery?(t.connectionStateRecovery=Object.assign({maxDisconnectionDuration:120*1e3,skipMiddlewares:!0},t.connectionStateRecovery),this.adapter(t.adapter||rw.SessionAwareAdapter)):this.adapter(t.adapter||rw.Adapter),t.cleanupEmptyChildNamespaces=!!t.cleanupEmptyChildNamespaces,this.sockets=this.of("/"),(e||typeof e=="number")&&this.attach(e),this.opts.cors&&(this._corsMiddleware=(0,xB.default)(this.opts.cors))}get _opts(){return this.opts}serveClient(e){return arguments.length?(this._serveClient=e,this):this._serveClient}_checkNamespace(e,t,n){if(this.parentNsps.size===0)return n(!1);let i=this.parentNsps.keys(),s=()=>{let o=i.next();if(o.done)return n(!1);o.value(e,t,(a,c)=>{if(a||!c)return s();if(this._nsps.has(e))return Pt("dynamic namespace %s already exists",e),n(this._nsps.get(e));let l=this.parentNsps.get(o.value).createChild(e);Pt("dynamic namespace %s was created",e),n(l)})};s()}path(e){if(!arguments.length)return this._path;this._path=e.replace(/\/$/,"");let t=this._path.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&");return this.clientPathRegex=new RegExp("^"+t+"/socket\\.io(\\.msgpack|\\.esm)?(\\.min)?\\.js(\\.map)?(?:\\?|$)"),this}connectTimeout(e){return e===void 0?this._connectTimeout:(this._connectTimeout=e,this)}adapter(e){if(!arguments.length)return this._adapter;this._adapter=e;for(let t of this._nsps.values())t._initAdapter();return this}listen(e,t={}){return this.attach(e,t)}attach(e,t={}){if(typeof e=="function"){let n="You are trying to attach socket.io to an express request handler function. Please pass a http.Server instance.";throw new Error(n)}if(Number(e)==e&&(e=Number(e)),typeof e=="number"){Pt("creating http server and binding to %d",e);let n=e;e=pB.default.createServer((i,s)=>{s.writeHead(404),s.end()}),e.listen(n)}return Object.assign(t,this.opts),t.path=t.path||this._path,this.initEngine(e,t),this}attachApp(e,t={}){Object.assign(t,this.opts),t.path=t.path||this._path,Pt("creating uWebSockets.js-based engine with opts %j",t);let n=new ew.uServer(t);n.attach(e,t),this.bind(n),this._serveClient&&e.get(`${this._path}/*`,(i,s)=>{if(!this.clientPathRegex.test(s.getUrl())){s.setYield(!0);return}let o=s.getUrl().replace(this._path,"").replace(/\?.*$/,"").replace(/^\//,""),a=iw.test(o),c=a?"map":"source",l='"'+nw+'"',u="W/"+l,f=s.getHeader("if-none-match");if(f&&(l===f||u===f)){Pt("serve client %s 304",c),i.writeStatus("304 Not Modified"),i.end();return}Pt("serve client %s",c),i.writeHeader("cache-control","public, max-age=0"),i.writeHeader("content-type","application/"+(a?"json":"javascript")+"; charset=utf-8"),i.writeHeader("etag",l);let d=Qb.join(__dirname,"../client-dist/",o);(0,rh.serveFile)(i,d)}),(0,rh.patchAdapter)(e)}initEngine(e,t){Pt("creating engine.io instance with opts %j",t),this.eio=(0,ew.attach)(e,t),this._serveClient&&this.attachServe(e),this.httpServer=e,this.bind(this.eio)}attachServe(e){Pt("attaching client serving req handler");let t=e.listeners("request").slice(0);e.removeAllListeners("request"),e.on("request",(n,i)=>{if(this.clientPathRegex.test(n.url))this._corsMiddleware?this._corsMiddleware(n,i,()=>{this.serve(n,i)}):this.serve(n,i);else for(let s=0;s<t.length;s++)t[s].call(e,n,i)})}serve(e,t){let n=e.url.replace(this._path,"").replace(/\?.*$/,""),i=iw.test(n),s=i?"map":"source",o='"'+nw+'"',a="W/"+o,c=e.headers["if-none-match"];if(c&&(o===c||a===c)){Pt("serve client %s 304",s),t.writeHead(304),t.end();return}Pt("serve client %s",s),t.setHeader("Cache-Control","public, max-age=0"),t.setHeader("Content-Type","application/"+(i?"json":"javascript")+"; charset=utf-8"),t.setHeader("ETag",o),r.sendFile(n,e,t)}static sendFile(e,t,n){let i=(0,fB.createReadStream)(Qb.join(__dirname,"../client-dist/",e)),s=dB(t).encodings(["br","gzip","deflate"]),o=a=>{a&&n.end()};switch(s){case"br":n.writeHead(200,{"content-encoding":"br"}),(0,xl.pipeline)(i,(0,th.createBrotliCompress)(),n,o);break;case"gzip":n.writeHead(200,{"content-encoding":"gzip"}),(0,xl.pipeline)(i,(0,th.createGzip)(),n,o);break;case"deflate":n.writeHead(200,{"content-encoding":"deflate"}),(0,xl.pipeline)(i,(0,th.createDeflate)(),n,o);break;default:n.writeHead(200),(0,xl.pipeline)(i,n,o)}}bind(e){return this.engine=e,this.engine.on("connection",this.onconnection.bind(this)),this}onconnection(e){Pt("incoming connection with id %s",e.id);let t=new hB.Client(this,e);return e.protocol===3&&t.connect("/"),this}of(e,t){if(typeof e=="function"||e instanceof RegExp){let i=new mB.ParentNamespace(this);return Pt("initializing parent namespace %s",i.name),typeof e=="function"?this.parentNsps.set(e,i):(this.parentNsps.set((s,o,a)=>a(null,e.test(s)),i),this.parentNamespacesFromRegExp.set(e,i)),t&&i.on("connect",t),i}String(e)[0]!=="/"&&(e="/"+e);let n=this._nsps.get(e);if(!n){for(let[i,s]of this.parentNamespacesFromRegExp)if(i.test(e))return Pt("attaching namespace %s to parent namespace %s",e,i),s.createChild(e);Pt("initializing namespace %s",e),n=new ih.Namespace(this,e),this._nsps.set(e,n),e!=="/"&&this.sockets.emitReserved("new_namespace",n)}return t&&n.on("connect",t),n}async close(e){if(await Promise.allSettled([...this._nsps.values()].map(async t=>{t.sockets.forEach(n=>{n._onclose("server shutting down")}),await t.adapter.close()})),this.engine.close(),(0,rh.restoreAdapter)(),this.httpServer)return new Promise(t=>{this.httpServer.close(n=>{e&&e(n),n&&Pt("server was not running"),t()})});e&&e()}use(e){return this.sockets.use(e),this}to(e){return this.sockets.to(e)}in(e){return this.sockets.in(e)}except(e){return this.sockets.except(e)}send(...e){return this.sockets.emit("message",...e),this}write(...e){return this.sockets.emit("message",...e),this}serverSideEmit(e,...t){return this.sockets.serverSideEmit(e,...t)}serverSideEmitWithAck(e,...t){return this.sockets.serverSideEmitWithAck(e,...t)}allSockets(){return this.sockets.allSockets()}compress(e){return this.sockets.compress(e)}get volatile(){return this.sockets.volatile}get local(){return this.sockets.local}timeout(e){return this.sockets.timeout(e)}fetchSockets(){return this.sockets.fetchSockets()}socketsJoin(e){return this.sockets.socketsJoin(e)}socketsLeave(e){return this.sockets.socketsLeave(e)}disconnectSockets(e=!1){return this.sockets.disconnectSockets(e)}};Tt.Server=Ss;var _B=Object.keys(tw.EventEmitter.prototype).filter(function(r){return typeof tw.EventEmitter.prototype[r]=="function"});_B.forEach(function(r){Ss.prototype[r]=function(){return this.sockets[r].apply(this.sockets,arguments)}});Go.exports=(r,e)=>new Ss(r,e);Go.exports.Server=Ss;Go.exports.Namespace=ih.Namespace;Go.exports.Socket=sw.Socket});function sh(){return zo=(0,lw.randomBytes)(32).toString("hex"),zo}function uw(){return zo||sh(),zo}function pw(r){return!!r&&typeof r=="string"&&r===zo}var lw,zo,_l=ke(()=>{lw=require("crypto"),zo=null});var _w,Sl,H,dt=ke(()=>{_w={darwin:{capture:"nodeScreenshots",encoder:"sharp",tileSize:128,inputFormat:"rgba"},win32:{capture:"nodeScreenshots",encoder:"sharp",tileSize:256,inputFormat:"rgba"},linux:{capture:"nodeScreenshots",encoder:"sharp",tileSize:256,inputFormat:"rgba"}},Sl=_w[process.platform]||_w.linux,H={pipeline:{captureLib:Sl.capture,encoder:Sl.encoder,inputFormat:Sl.inputFormat,tileSize:Sl.tileSize,tileFormat:"webp",webpEffort:0,jpegQuality:50,tileConcurrency:6,outputScale:1,scaleMode:"smooth",minOutputScale:.25,maxOutputScale:1,qualityFloor:85,tierHysteresis:.05,adaptiveTiers:[{minEffective:1,outputScale:1,jpegQuality:85},{minEffective:.7,outputScale:.95,jpegQuality:85},{minEffective:.4,outputScale:.8,jpegQuality:85},{minEffective:0,outputScale:.65,jpegQuality:85}],checksumSampling:{rowStep:3,colStep:8}},webrtc:{enableWebRTC:!0,enableTurn:!1,turnApiUrl:"https://9remote.cc/api/webrtc/turn-credentials",turnRefreshInterval:1380*60*1e3,dcMaxMessageSize:65536,dcBufferThreshold:262144,iceDisconnectGraceMs:6e3,dcChunkSize:8,dcMaxTilesPerFrame:32,dcReliable:!0,dcOrdered:!1,answerTimeout:1e4,maxControlBuffer:500,ackWindow:2,ackPollMs:20,ackTimeoutMs:1500},robotSettings:{mouseDelay:2,keyboardDelay:2},throttling:{mouseThrottle:8,keyThrottle:25,typeTextThrottle:100,maxTextLength:1e3},resourceManagement:{inactiveTimeout:120*1e3,memoryCheckInterval:6e4,memoryWarningThreshold:1e3,maxTimersPerClient:100,maxChunkTimersPerClient:50,disconnectGraceMs:3e4},streaming:{activeInterval:60,idleInterval:400,idleThreshold:3,actionCaptureDelay:50,chunkSize:32,chunkDelay:5},focus:{paddingTiles:4},clipboard:{enabled:!0,pollInterval:1e3,maxTextLength:2e4},displayWake:{enabled:!0,throttleMs:3e4,macDurationSec:5},sleepInhibit:{defaultMode:"never",presets:{"30m":1800*1e3,"1h":3600*1e3,"2h":7200*1e3,"4h":14400*1e3,"24h":1440*60*1e3,never:null}},desktopSwitch:{darwin:{prev:{keyCode:123,mods:"control down"},next:{keyCode:124,mods:"control down"},new:{type:"missionControl"}},win32:{prev:["left",["control","command"]],next:["right",["control","command"]],new:["d",["control","command"]]},linux:{prev:null,next:null,new:null}},logging:{lifecycle:!1,errors:!0,dpiDetection:!1,focus:!1,focusEveryFrames:60,metrics:!1,metricsEveryFrames:30,webrtc:!1}}});var Vo,Ko,ye,ph=ke(()=>{dt();ri();Vo=()=>H.logging,Ko=Fr("remote"),ye={lifecycle:r=>{Vo().lifecycle&&Ko.info(r)},focus:r=>{Vo().focus&&Ko.info(r)},dpi:r=>{Vo().dpiDetection&&Ko.info(r)},error:(r,e)=>{Vo().errors&&Ko.error(`${r} ${e?.message||e||""}`)},warn:r=>{Vo().errors&&Ko.warn(r)}}});function Xo(){for(let r of[ie.ROOT,ie.STATE])Gr.default.existsSync(r)||Gr.default.mkdirSync(r,{recursive:!0})}function hh(){try{return Xo(),Gr.default.existsSync(dh)?JSON.parse(Gr.default.readFileSync(dh,"utf8"))||{}:{}}catch{return{}}}function Cw(r){try{Xo();let e={...hh(),...r};return Gr.default.writeFileSync(dh,JSON.stringify(e,null,2),{mode:384}),e}catch(e){return console.error("Error saving settings:",e),null}}function kw(){try{return Xo(),Gr.default.existsSync(fh)?JSON.parse(Gr.default.readFileSync(fh,"utf8")):{machineId:null,key:null,name:"Default",createdAt:null}}catch{return{machineId:null,key:null,name:"Default",createdAt:null}}}function yn(r){try{Xo(),Gr.default.writeFileSync(IB,JSON.stringify({cmd:r,ts:Date.now()}))}catch{}}function Aw(r,e,t="Default"){try{Xo();let n={machineId:r,key:e,name:t,createdAt:new Date().toISOString()};return Gr.default.writeFileSync(fh,JSON.stringify(n,null,2),{mode:384}),n}catch(n){return console.error("Error saving key:",n),null}}var Gr,Yo,I8,N8,fh,IB,dh,Ts=ke(()=>{Gr=W(require("fs"),1),Yo=W(require("path"),1);St();I8=ie.STATE,N8=Yo.default.join(ie.STATE,"state.json"),fh=Yo.default.join(ie.ROOT,"keys.json"),IB=Yo.default.join(ie.STATE,"cmd.json"),dh=Yo.default.join(ie.STATE,"settings.json")});function Rw(){return new Promise(r=>{if(process.platform!=="darwin"){r({screenRecording:!0,accessibility:!0});return}let e=!1,t=!1,n=0,i=()=>{++n===2&&r({screenRecording:e,accessibility:t})};(0,Jo.execFile)("osascript",["-e",'use framework "ApplicationServices"',"-e",`set checkOptions to current application's NSDictionary's dictionaryWithObject:(false) forKey:("AXTrustedCheckOptionPrompt" as string)`,"-e","return current application's AXIsProcessTrustedWithOptions(checkOptions) as boolean"],{timeout:3e3},(s,o)=>{t=!s&&o.trim()==="true",i()}),(0,Jo.exec)(`osascript -e 'use framework "CoreGraphics"' -e "return (current application's CGPreflightScreenCaptureAccess()) as boolean"`,{timeout:3e3},(s,o)=>{e=!s&&o.trim()==="true",i()})})}function Ow(r){let e=NB[r];e&&process.platform==="darwin"&&(0,Jo.exec)(`open "${e}"`,()=>{})}var Jo,NB,Mw=ke(()=>{Jo=require("child_process"),NB={screenRecording:"x-apple.systempreferences:com.apple.preference.security?Privacy_ScreenCapture",accessibility:"x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility"}});function DB(){return!process.env.DISPLAY&&!process.env.WAYLAND_DISPLAY}function ea(){for(let r=Pw,e=null;r!==e;e=r,r=Mr.default.dirname(r)){let t=Mr.default.join(r,"package.json");if((0,he.existsSync)(t)){try{let n=JSON.parse((0,he.readFileSync)(t,"utf8"));if(n.name!==Wi)continue;let i=typeof n.bin=="string"?n.bin:n.bin?.[Wi];if(i){let s=Mr.default.resolve(r,i);if((0,he.existsSync)(s))return s}}catch{}break}}return process.argv[1]||Mr.default.resolve(Pw,"..","index.js")}function As(){return process.execPath}function Dw(){let r=Mr.default.dirname(As()),e=["/usr/local/bin","/usr/bin","/bin","/usr/sbin","/sbin","/opt/homebrew/bin"];return e.includes(r)||e.unshift(r),e.join(":")}function mh(r){return String(r).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function LB(r,e){let t=[r,e,...Al].map(n=>` <string>${mh(n)}</string>`).join(`
|
|
30
30
|
`);return`<?xml version="1.0" encoding="UTF-8"?>
|
|
31
31
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
32
32
|
<plist version="1.0">
|
|
@@ -54,9 +54,9 @@ ${t}
|
|
|
54
54
|
<string>${Tl}</string>
|
|
55
55
|
</dict>
|
|
56
56
|
</plist>
|
|
57
|
-
`}function BB(){return(0,
|
|
57
|
+
`}function BB(){return(0,he.mkdirSync)(Mr.default.dirname(lt.darwin),{recursive:!0}),(0,he.writeFileSync)(lt.darwin,LB(As(),ea())),!0}function jB(){if((0,he.existsSync)(lt.darwin))try{(0,he.unlinkSync)(lt.darwin)}catch{}return!0}function FB(){return(0,he.existsSync)(lt.darwin)}function UB(){let r=Al.join(" ");return`Set WshShell = CreateObject("WScript.Shell")
|
|
58
58
|
WshShell.Run """${As()}"" ""${ea()}"" ${r}", 0, False
|
|
59
|
-
`}function Lw(){try{(0,Qo.execFileSync)("reg",["DELETE","HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run","/V",kl,"/F"],{windowsHide:!0,stdio:"ignore"})}catch{}}function qB(){let r=Mr.default.dirname(lt.win);return(0,
|
|
59
|
+
`}function Lw(){try{(0,Qo.execFileSync)("reg",["DELETE","HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run","/V",kl,"/F"],{windowsHide:!0,stdio:"ignore"})}catch{}}function qB(){let r=Mr.default.dirname(lt.win);return(0,he.existsSync)(r)?(Lw(),(0,he.writeFileSync)(lt.win,UB()),!0):!1}function $B(){if(Lw(),(0,he.existsSync)(lt.win))try{(0,he.unlinkSync)(lt.win)}catch{}return!0}function HB(){return(0,he.existsSync)(lt.win)}function WB(){let r=`${As()} ${ea()} ${Al.join(" ")}`;return`[Desktop Entry]
|
|
60
60
|
Type=Application
|
|
61
61
|
Name=${kl}
|
|
62
62
|
Exec=${r}
|
|
@@ -80,10 +80,10 @@ StandardError=append:${Tl}
|
|
|
80
80
|
|
|
81
81
|
[Install]
|
|
82
82
|
WantedBy=default.target
|
|
83
|
-
`}function Cl(r){try{return(0,Qo.execFileSync)("systemctl",["--user",...r],{stdio:"ignore"}),!0}catch{return!1}}function zB(){return DB()?((0,
|
|
83
|
+
`}function Cl(r){try{return(0,Qo.execFileSync)("systemctl",["--user",...r],{stdio:"ignore"}),!0}catch{return!1}}function zB(){return DB()?((0,he.mkdirSync)(Mr.default.dirname(lt.linuxSystemd),{recursive:!0}),(0,he.writeFileSync)(lt.linuxSystemd,GB()),Cl(["daemon-reload"]),Cl(["enable",`${ks}.service`]),!0):((0,he.mkdirSync)(Mr.default.dirname(lt.linux),{recursive:!0}),(0,he.writeFileSync)(lt.linux,WB()),!0)}function VB(){if((0,he.existsSync)(lt.linuxSystemd)){Cl(["disable",`${ks}.service`]);try{(0,he.unlinkSync)(lt.linuxSystemd)}catch{}Cl(["daemon-reload"])}if((0,he.existsSync)(lt.linux))try{(0,he.unlinkSync)(lt.linux)}catch{}return!0}function KB(){return(0,he.existsSync)(lt.linux)||(0,he.existsSync)(lt.linuxSystemd)}async function gh(){try{if(process.platform==="darwin")return FB();if(process.platform==="win32")return await HB();if(process.platform==="linux")return KB()}catch{}return!1}async function Bw(r){try{if(process.platform==="darwin")return r?BB():jB();if(process.platform==="win32")return r?await qB():await $B();if(process.platform==="linux")return r?zB():VB()}catch{}return!1}var Qo,he,Cs,Iw,Mr,Nw,Tl,ks,kl,Al,Zo,Pw,lt,vh=ke(()=>{Qo=require("child_process"),he=require("fs"),Cs=require("path"),Iw=W(require("os"),1),Mr=W(require("path"),1),Nw=require("url");St();Tl=(0,Cs.join)(ie.LOGS,"autostart.log"),ks="cc.9remote.agent",kl="9Remote",Al=["--tray","--skip-update","--start"],Zo=Iw.default.homedir(),Pw=Mr.default.dirname((0,Nw.fileURLToPath)(__importMetaUrl)),lt={darwin:(0,Cs.join)(Zo,"Library","LaunchAgents",`${ks}.plist`),linux:(0,Cs.join)(Zo,".config","autostart",`${ks}.desktop`),linuxSystemd:(0,Cs.join)(Zo,".config","systemd","user",`${ks}.service`),win:(0,Cs.join)(process.env.APPDATA||"","Microsoft","Windows","Start Menu","Programs","Startup",`${kl}.vbs`)}});function YB(){ta.default.existsSync(ie.CONFIG)||ta.default.mkdirSync(ie.CONFIG,{recursive:!0})}function ra(){try{return JSON.parse(ta.default.readFileSync(Fw,"utf8"))||{}}catch{return{}}}function Rl(r){try{YB();let e={...ra(),...r};return ta.default.writeFileSync(Fw,JSON.stringify(e,null,2)),e}catch{return null}}var ta,jw,Fw,yh=ke(()=>{ta=W(require("fs"),1),jw=W(require("path"),1);St();Fw=jw.default.join(ie.CONFIG,"settings.json")});var Pl={};rn(Pl,{getMode:()=>Sh,isActive:()=>wh,onConnectionChange:()=>rj,setMode:()=>sa,start:()=>tj,stop:()=>bh});function JB(){Uw||(Uw=!0,process.on("exit",()=>{if(Ht){try{Ht.kill()}catch{}Ht=null}}))}function ZB(){if(!qw&&(qw=!0,process.platform==="darwin"))try{let r=(0,ia.execSync)("pgrep -f 'caffeinate -imsd'",{encoding:"utf8"}).trim();for(let e of r.split(`
|
|
84
84
|
`).filter(Boolean))if((0,ia.execSync)(`ps -o ppid= -p ${e}`,{encoding:"utf8"}).trim()==="1")try{process.kill(Number(e))}catch{}}catch{}}function Ol(){if(Ht)return;let r=XB[process.platform];if(r)try{Ht=(0,ia.spawn)(r.cmd,r.args,{stdio:"ignore",windowsHide:!0}),Ht.on("error",e=>{Ml.warn(`inhibitor error: ${e.message}`),Ht=null}),Ht.on("exit",()=>{Ht=null}),JB(),Ml.info(`\u{1F4A4} Sleep inhibitor started (${r.cmd})`)}catch(e){Ml.warn(`Failed to start sleep inhibitor: ${e.message}`),Ht=null}}function $w(){if(Ht){try{Ht.kill()}catch{}Ht=null,Ml.info("\u{1F4A4} Sleep inhibitor stopped")}}function Hw(){na&&(clearTimeout(na),na=null)}function QB(r){return(H.sleepInhibit?.presets||{})[r]??null}function ej(r){let e=H.sleepInhibit?.presets||{};return Object.prototype.hasOwnProperty.call(e,r)}function _h(){if(ZB(),Hw(),Rs==="never"){Ol();return}let r=QB(Rs);if(r==null){Ol();return}if(xh>0){Ol();return}Ol(),na=setTimeout(()=>{na=null,xh===0&&$w()},r)}function tj(){_h()}function bh(){Hw(),$w()}function wh(){return Ht!==null}function Sh(){return Rs}function sa(r){return ej(r)&&(Rs=r,_h()),Rs}function rj(r){xh=r,_h()}var ia,Ml,XB,Ht,Rs,na,xh,Uw,qw,Il=ke(()=>{ia=require("child_process");dt();ri();Ml=Fr("sleep"),XB={darwin:{cmd:"caffeinate",args:["-imsd","-w",String(process.pid)]},linux:{cmd:"systemd-inhibit",args:["--what=idle:sleep:handle-lid-switch","--who=9remote","--why=remote-active","sleep","infinity"]},win32:{cmd:"powershell.exe",args:["-NonInteractive","-NoProfile","-WindowStyle","Hidden","-Command",`Add-Type -Name K -Namespace W -MemberDefinition '[System.Runtime.InteropServices.DllImport("kernel32")]public static extern uint SetThreadExecutionState(uint e);'; [void][W.K]::SetThreadExecutionState(0x80000041); while($true){Start-Sleep 3600}`]}},Ht=null,Rs=H.sleepInhibit?.defaultMode||"never",na=null,xh=0,Uw=!1;qw=!1});function nj(){(0,zn.mkdirSync)(ie.STATE,{recursive:!0})}function Gw(){try{if((0,zn.existsSync)(Eh)){let r=JSON.parse((0,zn.readFileSync)(Eh,"utf8"));r.step===ti.READY&&r.permanentKey&&(xn={...xn,...r})}}catch{}}function ij(){try{nj(),(0,zn.writeFileSync)(Eh,JSON.stringify(xn),{mode:384})}catch{}}function zw(){Wt=!!ra().desktopEnabled}function Th(){Rl({desktopEnabled:Wt})}function Ct(r,e){let t=`data: ${JSON.stringify({type:r,...e})}
|
|
85
85
|
|
|
86
|
-
`;for(let n of Nl)try{n.write(t)}catch{Nl.delete(n)}}function _e(r){Ct("log",{message:`[${new Date().toLocaleTimeString()}] ${r}`})}function Vw(){return xn}function _n(r){xn={...xn,...r},Ct("state",xn),ij()}function Kw(){_n({oneTimeKey:"",oneTimeKeyExpiresAt:null,qrUrl:""})}function Yw(){return Dl}function Xw(r){Dl=r||null}function Jw(r){Ch=!!r}function Os(){return!!Ch&&!!Wt&&!!Pr.screenRecording&&!!Pr.accessibility}function Zw(r){kh=r}async function Ll(){let r=await Rw(),e=Pr,t=Os();Pr=r,Wt&&(!r.screenRecording||!r.accessibility)&&(Wt=!1,Th());let n=e.screenRecording&&e.accessibility,i=r.screenRecording&&r.accessibility;return!Wt&&!n&&i&&(Wt=!0,Th()),(e.screenRecording!==r.screenRecording||e.accessibility!==r.accessibility)&&Ct("permissions",{...Pr,desktopEnabled:Wt}),Os()!==t&&kh?.(),r}function Qw(r,e){let t=r.headers.origin;if(t&&!tc.includes(t))return
|
|
86
|
+
`;for(let n of Nl)try{n.write(t)}catch{Nl.delete(n)}}function _e(r){Ct("log",{message:`[${new Date().toLocaleTimeString()}] ${r}`})}function Vw(){return xn}function _n(r){xn={...xn,...r},Ct("state",xn),ij()}function Kw(){_n({oneTimeKey:"",oneTimeKeyExpiresAt:null,qrUrl:""})}function Yw(){return Dl}function Xw(r){Dl=r||null}function Jw(r){Ch=!!r}function Os(){return!!Ch&&!!Wt&&!!Pr.screenRecording&&!!Pr.accessibility}function Zw(r){kh=r}async function Ll(){let r=await Rw(),e=Pr,t=Os();Pr=r,Wt&&(!r.screenRecording||!r.accessibility)&&(Wt=!1,Th());let n=e.screenRecording&&e.accessibility,i=r.screenRecording&&r.accessibility;return!Wt&&!n&&i&&(Wt=!0,Th()),(e.screenRecording!==r.screenRecording||e.accessibility!==r.accessibility)&&Ct("permissions",{...Pr,desktopEnabled:Wt}),Os()!==t&&kh?.(),r}function Qw(r,e){let t=r.headers.origin;if(t&&!tc.includes(t))return ue(e,403,"Forbidden origin");Z(e,{localToken:uw()})}function eS(r,e,t=null,n="ws"){xi.set(r,{socketId:r,ip:e,deviceId:t,type:n,connectedAt:Date.now()}),Ct("connections",{connections:[...xi.values()]}),rS()}function tS(r){xi.delete(r),Ct("connections",{connections:[...xi.values()]}),rS()}async function rS(){try{(await Promise.resolve().then(()=>(Il(),Pl))).onConnectionChange(xi.size)}catch{}}function nS(r,e){e.setHeader("Content-Type","text/event-stream"),e.setHeader("Cache-Control","no-cache"),e.setHeader("Connection","keep-alive"),e.writeHead(200),e.write(`data: ${JSON.stringify({type:"state",...xn})}
|
|
87
87
|
|
|
88
88
|
`),e.write(`data: ${JSON.stringify({type:"connections",connections:[...xi.values()]})}
|
|
89
89
|
|
|
@@ -102,7 +102,7 @@ WantedBy=default.target
|
|
|
102
102
|
`;if(n.username||n.password){let d=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;s["Proxy-Authorization"]=`Basic ${Buffer.from(d).toString("base64")}`}s.Host=`${o}:${t.port}`,s["Proxy-Connection"]||(s["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let d of Object.keys(s))a+=`${d}: ${s[d]}\r
|
|
103
103
|
`;let c=(0,F3.parseProxyResponse)(i);i.write(`${a}\r
|
|
104
104
|
`);let{connect:l,buffered:u}=await c;if(e.emit("proxyConnect",l),this.emit("proxyConnect",l,e),l.statusCode===200)return e.once("socket",U3),t.secureEndpoint?(va("Upgrading socket connection to TLS"),HT.connect({...GT(WT(t),"host","path","port"),socket:i})):i;i.destroy();let f=new Tu.Socket({writable:!1});return f.readable=!0,e.once("socket",d=>{va("Replaying proxy buffer for failed request"),(0,D3.default)(d.listenerCount("data")>0),d.push(u),d.push(null)}),f}};Cu.protocols=["http","https"];br.HttpsProxyAgent=Cu;function U3(r){r.resume()}function GT(r,...e){let t={},n;for(n in r)e.includes(n)||(t[n]=r[n]);return t}});var QT=A((Nz,ZT)=>{"use strict";var XT=require("url"),JT=require("https"),q3=qm(),ku=Bm(),$3=Um(),nr=_u(),H3=Dm(),YT=2419200,Hm="",Wm;function ya(){}ya.prototype.setGCMAPIKey=function(r){if(r===null){Hm=null;return}if(typeof r>"u"||typeof r!="string"||r.length===0)throw new Error("The GCM API Key should be a non-empty string or null.");Hm=r};ya.prototype.setVapidDetails=function(r,e,t){if(arguments.length===1&&arguments[0]===null){Wm=null;return}ku.validateSubject(r),ku.validatePublicKey(e),ku.validatePrivateKey(t),Wm={subject:r,publicKey:e,privateKey:t}};ya.prototype.generateRequestDetails=function(r,e,t){if(!r||!r.endpoint)throw new Error("You must pass in a subscription with at least an endpoint.");if(typeof r.endpoint!="string"||r.endpoint.length===0)throw new Error("The subscription endpoint must be a string with a valid URL.");if(e&&(typeof r!="object"||!r.keys||!r.keys.p256dh||!r.keys.auth))throw new Error("To send a message with a payload, the subscription must have 'auth' and 'p256dh' keys.");let n=Hm,i=Wm,s=YT,o={},a=nr.supportedContentEncodings.AES_128_GCM,c=nr.supportedUrgency.NORMAL,l,u,f,d;if(t){let R=["headers","gcmAPIKey","vapidDetails","TTL","contentEncoding","urgency","topic","proxy","agent","timeout"],O=Object.keys(t);for(let P=0;P<O.length;P+=1){let B=O[P];if(!R.includes(B))throw new Error("'"+B+"' is an invalid option. The valid options are ['"+R.join("', '")+"'].")}if(t.headers){o=t.headers;let P=Object.keys(o).filter(function(B){return typeof t[B]<"u"});if(P.length>0)throw new Error("Duplicated headers defined ["+P.join(",")+"]. Please either define the header in thetop level options OR in the 'headers' key.")}if(t.gcmAPIKey&&(n=t.gcmAPIKey),t.vapidDetails!==void 0&&(i=t.vapidDetails),t.TTL!==void 0&&(s=Number(t.TTL),s<0))throw new Error("TTL should be a number and should be at least 0");if(t.contentEncoding)if(t.contentEncoding===nr.supportedContentEncodings.AES_128_GCM||t.contentEncoding===nr.supportedContentEncodings.AES_GCM)a=t.contentEncoding;else throw new Error("Unsupported content encoding specified.");if(t.urgency)if(t.urgency===nr.supportedUrgency.VERY_LOW||t.urgency===nr.supportedUrgency.LOW||t.urgency===nr.supportedUrgency.NORMAL||t.urgency===nr.supportedUrgency.HIGH)c=t.urgency;else throw new Error("Unsupported urgency specified.");if(t.topic){if(!H3.validate(t.topic))throw new Error("Unsupported characters set use the URL or filename-safe Base64 characters set");if(t.topic.length>32)throw new Error("use maximum of 32 characters from the URL or filename-safe Base64 characters set");l=t.topic}t.proxy&&(typeof t.proxy=="string"||typeof t.proxy.host=="string"?u=t.proxy:console.warn("Attempt to use proxy option, but invalid type it should be a string or proxy options object.")),t.agent&&(t.agent instanceof JT.Agent?(u&&console.warn("Agent option will be ignored because proxy option is defined."),f=t.agent):console.warn("Wrong type for the agent option, it should be an instance of https.Agent.")),typeof t.timeout=="number"&&(d=t.timeout)}typeof s>"u"&&(s=YT);let g={method:"POST",headers:{TTL:s}};Object.keys(o).forEach(function(R){g.headers[R]=o[R]});let y=null;if(e){let R=$3.encrypt(r.keys.p256dh,r.keys.auth,e,a);g.headers["Content-Length"]=R.cipherText.length,g.headers["Content-Type"]="application/octet-stream",a===nr.supportedContentEncodings.AES_128_GCM?g.headers["Content-Encoding"]=nr.supportedContentEncodings.AES_128_GCM:a===nr.supportedContentEncodings.AES_GCM&&(g.headers["Content-Encoding"]=nr.supportedContentEncodings.AES_GCM,g.headers.Encryption="salt="+R.salt,g.headers["Crypto-Key"]="dh="+R.localPublicKey.toString("base64url")),y=R.cipherText}else g.headers["Content-Length"]=0;let b=r.endpoint.startsWith("https://android.googleapis.com/gcm/send"),C=r.endpoint.startsWith("https://fcm.googleapis.com/fcm/send");if(b)n?g.headers.Authorization="key="+n:console.warn("Attempt to send push notification to GCM endpoint, but no GCM key is defined. Please use setGCMApiKey() or add 'gcmAPIKey' as an option.");else if(i){let R=XT.parse(r.endpoint),O=R.protocol+"//"+R.host,P=ku.getVapidHeaders(O,i.subject,i.publicKey,i.privateKey,a);g.headers.Authorization=P.Authorization,a===nr.supportedContentEncodings.AES_GCM&&(g.headers["Crypto-Key"]?g.headers["Crypto-Key"]+=";"+P["Crypto-Key"]:g.headers["Crypto-Key"]=P["Crypto-Key"])}else C&&n&&(g.headers.Authorization="key="+n);return g.headers.Urgency=c,l&&(g.headers.Topic=l),g.body=y,g.endpoint=r.endpoint,u&&(g.proxy=u),f&&(g.agent=f),d&&(g.timeout=d),g};ya.prototype.sendNotification=function(r,e,t){let n;try{n=this.generateRequestDetails(r,e,t)}catch(i){return Promise.reject(i)}return new Promise(function(i,s){let o={},a=XT.parse(n.endpoint);if(o.hostname=a.hostname,o.port=a.port,o.path=a.path,o.headers=n.headers,o.method=n.method,n.timeout&&(o.timeout=n.timeout),n.agent&&(o.agent=n.agent),n.proxy){let{HttpsProxyAgent:l}=KT();o.agent=new l(n.proxy)}let c=JT.request(o,function(l){let u="";l.on("data",function(f){u+=f}),l.on("end",function(){l.statusCode<200||l.statusCode>299?s(new q3("Received unexpected response code",l.statusCode,l.headers,u,n.endpoint)):i({statusCode:l.statusCode,body:u,headers:l.headers})})});n.timeout&&c.on("timeout",function(){c.destroy(new Error("Socket timeout"))}),c.on("error",function(l){s(l)}),n.body&&c.write(n.body),c.end()})};ZT.exports=ya});var rC=A((Dz,tC)=>{"use strict";var eC=Bm(),W3=Um(),G3=QT(),z3=qm(),V3=_u(),xa=new G3;tC.exports={WebPushError:z3,supportedContentEncodings:V3.supportedContentEncodings,encrypt:W3.encrypt,getVapidHeaders:eC.getVapidHeaders,generateVAPIDKeys:eC.generateVAPIDKeys,setGCMAPIKey:xa.setGCMAPIKey,setVapidDetails:xa.setVapidDetails,generateRequestDetails:xa.generateRequestDetails,sendNotification:xa.sendNotification.bind(xa)}});var Ea=A((yV,$C)=>{"use strict";var TU=require("path"),en="\\\\/",jC=`[^${en}]`,CU=0,An="\\.",kU="\\+",AU="\\?",Nu="\\/",RU="(?=.)",FC="[^/]",Xm=`(?:${Nu}|$)`,UC=`(?:^|${Nu})`,Jm=`${An}{1,2}${Xm}`,OU=`(?!${An})`,MU=`(?!${UC}${Jm})`,PU=`(?!${An}{0,1}${Xm})`,IU=`(?!${Jm})`,NU=`[^.${Nu}]`,DU=`${FC}*?`,qC={DOT_LITERAL:An,PLUS_LITERAL:kU,QMARK_LITERAL:AU,SLASH_LITERAL:Nu,ONE_CHAR:RU,QMARK:FC,END_ANCHOR:Xm,DOTS_SLASH:Jm,NO_DOT:OU,NO_DOTS:MU,NO_DOT_SLASH:PU,NO_DOTS_SLASH:IU,QMARK_NO_DOT:NU,STAR:DU,START_ANCHOR:UC},LU={...qC,SLASH_LITERAL:`[${en}]`,QMARK:jC,STAR:`${jC}*?`,DOTS_SLASH:`${An}{1,2}(?:[${en}]|$)`,NO_DOT:`(?!${An})`,NO_DOTS:`(?!(?:^|[${en}])${An}{1,2}(?:[${en}]|$))`,NO_DOT_SLASH:`(?!${An}{0,1}(?:[${en}]|$))`,NO_DOTS_SLASH:`(?!${An}{1,2}(?:[${en}]|$))`,QMARK_NO_DOT:`[^.${en}]`,START_ANCHOR:`(?:^|[${en}])`,END_ANCHOR:`(?:[${en}]|$)`},BU={__proto__:null,alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};$C.exports={DEFAULT_MAX_EXTGLOB_RECURSION:CU,MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:BU,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:TU.sep,extglobChars(r){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${r.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(r){return r===!0?LU:qC}}});var Du=A(zt=>{"use strict";var jU=require("path"),FU=process.platform==="win32",{REGEX_BACKSLASH:UU,REGEX_REMOVE_BACKSLASH:qU,REGEX_SPECIAL_CHARS:$U,REGEX_SPECIAL_CHARS_GLOBAL:HU}=Ea();zt.isObject=r=>r!==null&&typeof r=="object"&&!Array.isArray(r);zt.hasRegexChars=r=>$U.test(r);zt.isRegexChar=r=>r.length===1&&zt.hasRegexChars(r);zt.escapeRegex=r=>r.replace(HU,"\\$1");zt.toPosixSlashes=r=>r.replace(UU,"/");zt.removeBackslashes=r=>r.replace(qU,e=>e==="\\"?"":e);zt.supportsLookbehinds=()=>{let r=process.version.slice(1).split(".").map(Number);return r.length===3&&r[0]>=9||r[0]===8&&r[1]>=10};zt.isWindows=r=>r&&typeof r.windows=="boolean"?r.windows:FU===!0||jU.sep==="\\";zt.escapeLast=(r,e,t)=>{let n=r.lastIndexOf(e,t);return n===-1?r:r[n-1]==="\\"?zt.escapeLast(r,e,n-1):`${r.slice(0,n)}\\${r.slice(n)}`};zt.removePrefix=(r,e={})=>{let t=r;return t.startsWith("./")&&(t=t.slice(2),e.prefix="./"),t};zt.wrapOutput=(r,e={},t={})=>{let n=t.contains?"":"^",i=t.contains?"":"$",s=`${n}(?:${r})${i}`;return e.negated===!0&&(s=`(?:^(?!${s}).*$)`),s}});var XC=A((_V,YC)=>{"use strict";var HC=Du(),{CHAR_ASTERISK:Zm,CHAR_AT:WU,CHAR_BACKWARD_SLASH:Ta,CHAR_COMMA:GU,CHAR_DOT:Qm,CHAR_EXCLAMATION_MARK:eg,CHAR_FORWARD_SLASH:KC,CHAR_LEFT_CURLY_BRACE:tg,CHAR_LEFT_PARENTHESES:rg,CHAR_LEFT_SQUARE_BRACKET:zU,CHAR_PLUS:VU,CHAR_QUESTION_MARK:WC,CHAR_RIGHT_CURLY_BRACE:KU,CHAR_RIGHT_PARENTHESES:GC,CHAR_RIGHT_SQUARE_BRACKET:YU}=Ea(),zC=r=>r===KC||r===Ta,VC=r=>{r.isPrefix!==!0&&(r.depth=r.isGlobstar?1/0:1)},XU=(r,e)=>{let t=e||{},n=r.length-1,i=t.parts===!0||t.scanToEnd===!0,s=[],o=[],a=[],c=r,l=-1,u=0,f=0,d=!1,g=!1,y=!1,b=!1,C=!1,R=!1,O=!1,P=!1,B=!1,G=!1,F=0,V,D,$={value:"",depth:0,isGlob:!1},T=()=>l>=n,p=()=>c.charCodeAt(l+1),m=()=>(V=D,c.charCodeAt(++l));for(;l<n;){D=m();let k;if(D===Ta){O=$.backslashes=!0,D=m(),D===tg&&(R=!0);continue}if(R===!0||D===tg){for(F++;T()!==!0&&(D=m());){if(D===Ta){O=$.backslashes=!0,m();continue}if(D===tg){F++;continue}if(R!==!0&&D===Qm&&(D=m())===Qm){if(d=$.isBrace=!0,y=$.isGlob=!0,G=!0,i===!0)continue;break}if(R!==!0&&D===GU){if(d=$.isBrace=!0,y=$.isGlob=!0,G=!0,i===!0)continue;break}if(D===KU&&(F--,F===0)){R=!1,d=$.isBrace=!0,G=!0;break}}if(i===!0)continue;break}if(D===KC){if(s.push(l),o.push($),$={value:"",depth:0,isGlob:!1},G===!0)continue;if(V===Qm&&l===u+1){u+=2;continue}f=l+1;continue}if(t.noext!==!0&&(D===VU||D===WU||D===Zm||D===WC||D===eg)===!0&&p()===rg){if(y=$.isGlob=!0,b=$.isExtglob=!0,G=!0,D===eg&&l===u&&(B=!0),i===!0){for(;T()!==!0&&(D=m());){if(D===Ta){O=$.backslashes=!0,D=m();continue}if(D===GC){y=$.isGlob=!0,G=!0;break}}continue}break}if(D===Zm){if(V===Zm&&(C=$.isGlobstar=!0),y=$.isGlob=!0,G=!0,i===!0)continue;break}if(D===WC){if(y=$.isGlob=!0,G=!0,i===!0)continue;break}if(D===zU){for(;T()!==!0&&(k=m());){if(k===Ta){O=$.backslashes=!0,m();continue}if(k===YU){g=$.isBracket=!0,y=$.isGlob=!0,G=!0;break}}if(i===!0)continue;break}if(t.nonegate!==!0&&D===eg&&l===u){P=$.negated=!0,u++;continue}if(t.noparen!==!0&&D===rg){if(y=$.isGlob=!0,i===!0){for(;T()!==!0&&(D=m());){if(D===rg){O=$.backslashes=!0,D=m();continue}if(D===GC){G=!0;break}}continue}break}if(y===!0){if(G=!0,i===!0)continue;break}}t.noext===!0&&(b=!1,y=!1);let x=c,S="",v="";u>0&&(S=c.slice(0,u),c=c.slice(u),f-=u),x&&y===!0&&f>0?(x=c.slice(0,f),v=c.slice(f)):y===!0?(x="",v=c):x=c,x&&x!==""&&x!=="/"&&x!==c&&zC(x.charCodeAt(x.length-1))&&(x=x.slice(0,-1)),t.unescape===!0&&(v&&(v=HC.removeBackslashes(v)),x&&O===!0&&(x=HC.removeBackslashes(x)));let _={prefix:S,input:r,start:u,base:x,glob:v,isBrace:d,isBracket:g,isGlob:y,isExtglob:b,isGlobstar:C,negated:P,negatedExtglob:B};if(t.tokens===!0&&(_.maxDepth=0,zC(D)||o.push($),_.tokens=o),t.parts===!0||t.tokens===!0){let k;for(let w=0;w<s.length;w++){let h=k?k+1:u,E=s[w],q=r.slice(h,E);t.tokens&&(w===0&&u!==0?(o[w].isPrefix=!0,o[w].value=S):o[w].value=q,VC(o[w]),_.maxDepth+=o[w].depth),(w!==0||q!=="")&&a.push(q),k=E}if(k&&k+1<r.length){let w=r.slice(k+1);a.push(w),t.tokens&&(o[o.length-1].value=w,VC(o[o.length-1]),_.maxDepth+=o[o.length-1].depth)}_.slashes=s,_.parts=a}return _};YC.exports=XU});var tk=A((bV,ek)=>{"use strict";var Ca=Ea(),At=Du(),{MAX_LENGTH:Lu,POSIX_REGEX_SOURCE:JU,REGEX_NON_SPECIAL_CHARS:ZU,REGEX_SPECIAL_CHARS_BACKREF:QU,REPLACEMENTS:JC}=Ca,eq=(r,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...r,e);r.sort();let t=`[${r.join("-")}]`;try{new RegExp(t)}catch{return r.map(i=>At.escapeRegex(i)).join("..")}return t},to=(r,e)=>`Missing ${r}: "${e}" - use "\\\\${e}" to match literal characters`,ZC=r=>{let e=[],t=0,n=0,i=0,s="",o=!1;for(let a of r){if(o===!0){s+=a,o=!1;continue}if(a==="\\"){s+=a,o=!0;continue}if(a==='"'){i=i===1?0:1,s+=a;continue}if(i===0){if(a==="[")t++;else if(a==="]"&&t>0)t--;else if(t===0){if(a==="(")n++;else if(a===")"&&n>0)n--;else if(a==="|"&&n===0){e.push(s),s="";continue}}}s+=a}return e.push(s),e},tq=r=>{let e=!1;for(let t of r){if(e===!0){e=!1;continue}if(t==="\\"){e=!0;continue}if(/[?*+@!()[\]{}]/.test(t))return!1}return!0},QC=r=>{let e=r.trim(),t=!0;for(;t===!0;)t=!1,/^@\([^\\()[\]{}|]+\)$/.test(e)&&(e=e.slice(2,-1),t=!0);if(tq(e))return e.replace(/\\(.)/g,"$1")},rq=r=>{let e=r.map(QC).filter(Boolean);for(let t=0;t<e.length;t++)for(let n=t+1;n<e.length;n++){let i=e[t],s=e[n],o=i[0];if(!(!o||i!==o.repeat(i.length)||s!==o.repeat(s.length))&&(i===s||i.startsWith(s)||s.startsWith(i)))return!0}return!1},ng=(r,e=!0)=>{if(r[0]!=="+"&&r[0]!=="*"||r[1]!=="(")return;let t=0,n=0,i=0,s=!1;for(let o=1;o<r.length;o++){let a=r[o];if(s===!0){s=!1;continue}if(a==="\\"){s=!0;continue}if(a==='"'){i=i===1?0:1;continue}if(i!==1){if(a==="["){t++;continue}if(a==="]"&&t>0){t--;continue}if(!(t>0)){if(a==="("){n++;continue}if(a===")"&&(n--,n===0))return e===!0&&o!==r.length-1?void 0:{type:r[0],body:r.slice(2,o),end:o}}}}},nq=r=>{let e=0,t=[];for(;e<r.length;){let i=ng(r.slice(e),!1);if(!i||i.type!=="*")return;let s=ZC(i.body).map(a=>a.trim());if(s.length!==1)return;let o=QC(s[0]);if(!o||o.length!==1)return;t.push(o),e+=i.end+1}return t.length<1?void 0:`${t.length===1?At.escapeRegex(t[0]):`[${t.map(i=>At.escapeRegex(i)).join("")}]`}*`},iq=r=>{let e=0,t=r.trim(),n=ng(t);for(;n;)e++,t=n.body.trim(),n=ng(t);return e},sq=(r,e)=>{if(e.maxExtglobRecursion===!1)return{risky:!1};let t=typeof e.maxExtglobRecursion=="number"?e.maxExtglobRecursion:Ca.DEFAULT_MAX_EXTGLOB_RECURSION,n=ZC(r).map(i=>i.trim());if(n.length>1&&(n.some(i=>i==="")||n.some(i=>/^[*?]+$/.test(i))||rq(n)))return{risky:!0};for(let i of n){let s=nq(i);if(s)return{risky:!0,safeOutput:s};if(iq(i)>t)return{risky:!0}}return{risky:!1}},ig=(r,e)=>{if(typeof r!="string")throw new TypeError("Expected a string");r=JC[r]||r;let t={...e},n=typeof t.maxLength=="number"?Math.min(Lu,t.maxLength):Lu,i=r.length;if(i>n)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${n}`);let s={type:"bos",value:"",output:t.prepend||""},o=[s],a=t.capture?"":"?:",c=At.isWindows(e),l=Ca.globChars(c),u=Ca.extglobChars(l),{DOT_LITERAL:f,PLUS_LITERAL:d,SLASH_LITERAL:g,ONE_CHAR:y,DOTS_SLASH:b,NO_DOT:C,NO_DOT_SLASH:R,NO_DOTS_SLASH:O,QMARK:P,QMARK_NO_DOT:B,STAR:G,START_ANCHOR:F}=l,V=N=>`(${a}(?:(?!${F}${N.dot?b:f}).)*?)`,D=t.dot?"":C,$=t.dot?P:B,T=t.bash===!0?V(t):G;t.capture&&(T=`(${T})`),typeof t.noext=="boolean"&&(t.noextglob=t.noext);let p={input:r,index:-1,start:0,dot:t.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:o};r=At.removePrefix(r,p),i=r.length;let m=[],x=[],S=[],v=s,_,k=()=>p.index===i-1,w=p.peek=(N=1)=>r[p.index+N],h=p.advance=()=>r[++p.index]||"",E=()=>r.slice(p.index+1),q=(N="",ne=0)=>{p.consumed+=N,p.index+=ne},M=N=>{p.output+=N.output!=null?N.output:N.value,q(N.value)},I=()=>{let N=1;for(;w()==="!"&&(w(2)!=="("||w(3)==="?");)h(),p.start++,N++;return N%2===0?!1:(p.negated=!0,p.start++,!0)},j=N=>{p[N]++,S.push(N)},K=N=>{p[N]--,S.pop()},U=N=>{if(v.type==="globstar"){let ne=p.braces>0&&(N.type==="comma"||N.type==="brace"),L=N.extglob===!0||m.length&&(N.type==="pipe"||N.type==="paren");N.type!=="slash"&&N.type!=="paren"&&!ne&&!L&&(p.output=p.output.slice(0,-v.output.length),v.type="star",v.value="*",v.output=T,p.output+=v.output)}if(m.length&&N.type!=="paren"&&(m[m.length-1].inner+=N.value),(N.value||N.output)&&M(N),v&&v.type==="text"&&N.type==="text"){v.value+=N.value,v.output=(v.output||"")+N.value;return}N.prev=v,o.push(N),v=N},Re=(N,ne)=>{let L={...u[ne],conditions:1,inner:""};L.prev=v,L.parens=p.parens,L.output=p.output,L.startIndex=p.index,L.tokensIndex=o.length;let z=(t.capture?"(":"")+L.open;j("parens"),U({type:N,value:ne,output:p.output?"":y}),U({type:"paren",extglob:!0,value:h(),output:z}),m.push(L)},se=N=>{let ne=r.slice(N.startIndex,p.index+1),L=r.slice(N.startIndex+2,p.index),z=sq(L,t);if((N.type==="plus"||N.type==="star")&&z.risky){let J=z.safeOutput?(N.output?"":y)+(t.capture?`(${z.safeOutput})`:z.safeOutput):void 0,Ot=o[N.tokensIndex];Ot.type="text",Ot.value=ne,Ot.output=J||At.escapeRegex(ne);for(let ae=N.tokensIndex+1;ae<o.length;ae++)o[ae].value="",o[ae].output="",delete o[ae].suffix;p.output=N.output+Ot.output,p.backtrack=!0,U({type:"paren",extglob:!0,value:_,output:""}),K("parens");return}let oe=N.close+(t.capture?")":""),Q;if(N.type==="negate"){let J=T;if(N.inner&&N.inner.length>1&&N.inner.includes("/")&&(J=V(t)),(J!==T||k()||/^\)+$/.test(E()))&&(oe=N.close=`)$))${J}`),N.inner.includes("*")&&(Q=E())&&/^\.[^\\/.]+$/.test(Q)){let Ot=ig(Q,{...e,fastpaths:!1}).output;oe=N.close=`)${Ot})${J})`}N.prev.type==="bos"&&(p.negatedExtglob=!0)}U({type:"paren",extglob:!0,value:_,output:oe}),K("parens")};if(t.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(r)){let N=!1,ne=r.replace(QU,(L,z,oe,Q,J,Ot)=>Q==="\\"?(N=!0,L):Q==="?"?z?z+Q+(J?P.repeat(J.length):""):Ot===0?$+(J?P.repeat(J.length):""):P.repeat(oe.length):Q==="."?f.repeat(oe.length):Q==="*"?z?z+Q+(J?T:""):T:z?L:`\\${L}`);return N===!0&&(t.unescape===!0?ne=ne.replace(/\\/g,""):ne=ne.replace(/\\+/g,L=>L.length%2===0?"\\\\":L?"\\":"")),ne===r&&t.contains===!0?(p.output=r,p):(p.output=At.wrapOutput(ne,p,e),p)}for(;!k();){if(_=h(),_==="\0")continue;if(_==="\\"){let L=w();if(L==="/"&&t.bash!==!0||L==="."||L===";")continue;if(!L){_+="\\",U({type:"text",value:_});continue}let z=/^\\+/.exec(E()),oe=0;if(z&&z[0].length>2&&(oe=z[0].length,p.index+=oe,oe%2!==0&&(_+="\\")),t.unescape===!0?_=h():_+=h(),p.brackets===0){U({type:"text",value:_});continue}}if(p.brackets>0&&(_!=="]"||v.value==="["||v.value==="[^")){if(t.posix!==!1&&_===":"){let L=v.value.slice(1);if(L.includes("[")&&(v.posix=!0,L.includes(":"))){let z=v.value.lastIndexOf("["),oe=v.value.slice(0,z),Q=v.value.slice(z+2),J=JU[Q];if(J){v.value=oe+J,p.backtrack=!0,h(),!s.output&&o.indexOf(v)===1&&(s.output=y);continue}}}(_==="["&&w()!==":"||_==="-"&&w()==="]")&&(_=`\\${_}`),_==="]"&&(v.value==="["||v.value==="[^")&&(_=`\\${_}`),t.posix===!0&&_==="!"&&v.value==="["&&(_="^"),v.value+=_,M({value:_});continue}if(p.quotes===1&&_!=='"'){_=At.escapeRegex(_),v.value+=_,M({value:_});continue}if(_==='"'){p.quotes=p.quotes===1?0:1,t.keepQuotes===!0&&U({type:"text",value:_});continue}if(_==="("){j("parens"),U({type:"paren",value:_});continue}if(_===")"){if(p.parens===0&&t.strictBrackets===!0)throw new SyntaxError(to("opening","("));let L=m[m.length-1];if(L&&p.parens===L.parens+1){se(m.pop());continue}U({type:"paren",value:_,output:p.parens?")":"\\)"}),K("parens");continue}if(_==="["){if(t.nobracket===!0||!E().includes("]")){if(t.nobracket!==!0&&t.strictBrackets===!0)throw new SyntaxError(to("closing","]"));_=`\\${_}`}else j("brackets");U({type:"bracket",value:_});continue}if(_==="]"){if(t.nobracket===!0||v&&v.type==="bracket"&&v.value.length===1){U({type:"text",value:_,output:`\\${_}`});continue}if(p.brackets===0){if(t.strictBrackets===!0)throw new SyntaxError(to("opening","["));U({type:"text",value:_,output:`\\${_}`});continue}K("brackets");let L=v.value.slice(1);if(v.posix!==!0&&L[0]==="^"&&!L.includes("/")&&(_=`/${_}`),v.value+=_,M({value:_}),t.literalBrackets===!1||At.hasRegexChars(L))continue;let z=At.escapeRegex(v.value);if(p.output=p.output.slice(0,-v.value.length),t.literalBrackets===!0){p.output+=z,v.value=z;continue}v.value=`(${a}${z}|${v.value})`,p.output+=v.value;continue}if(_==="{"&&t.nobrace!==!0){j("braces");let L={type:"brace",value:_,output:"(",outputIndex:p.output.length,tokensIndex:p.tokens.length};x.push(L),U(L);continue}if(_==="}"){let L=x[x.length-1];if(t.nobrace===!0||!L){U({type:"text",value:_,output:_});continue}let z=")";if(L.dots===!0){let oe=o.slice(),Q=[];for(let J=oe.length-1;J>=0&&(o.pop(),oe[J].type!=="brace");J--)oe[J].type!=="dots"&&Q.unshift(oe[J].value);z=eq(Q,t),p.backtrack=!0}if(L.comma!==!0&&L.dots!==!0){let oe=p.output.slice(0,L.outputIndex),Q=p.tokens.slice(L.tokensIndex);L.value=L.output="\\{",_=z="\\}",p.output=oe;for(let J of Q)p.output+=J.output||J.value}U({type:"brace",value:_,output:z}),K("braces"),x.pop();continue}if(_==="|"){m.length>0&&m[m.length-1].conditions++,U({type:"text",value:_});continue}if(_===","){let L=_,z=x[x.length-1];z&&S[S.length-1]==="braces"&&(z.comma=!0,L="|"),U({type:"comma",value:_,output:L});continue}if(_==="/"){if(v.type==="dot"&&p.index===p.start+1){p.start=p.index+1,p.consumed="",p.output="",o.pop(),v=s;continue}U({type:"slash",value:_,output:g});continue}if(_==="."){if(p.braces>0&&v.type==="dot"){v.value==="."&&(v.output=f);let L=x[x.length-1];v.type="dots",v.output+=_,v.value+=_,L.dots=!0;continue}if(p.braces+p.parens===0&&v.type!=="bos"&&v.type!=="slash"){U({type:"text",value:_,output:f});continue}U({type:"dot",value:_,output:f});continue}if(_==="?"){if(!(v&&v.value==="(")&&t.noextglob!==!0&&w()==="("&&w(2)!=="?"){Re("qmark",_);continue}if(v&&v.type==="paren"){let z=w(),oe=_;if(z==="<"&&!At.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(v.value==="("&&!/[!=<:]/.test(z)||z==="<"&&!/<([!=]|\w+>)/.test(E()))&&(oe=`\\${_}`),U({type:"text",value:_,output:oe});continue}if(t.dot!==!0&&(v.type==="slash"||v.type==="bos")){U({type:"qmark",value:_,output:B});continue}U({type:"qmark",value:_,output:P});continue}if(_==="!"){if(t.noextglob!==!0&&w()==="("&&(w(2)!=="?"||!/[!=<:]/.test(w(3)))){Re("negate",_);continue}if(t.nonegate!==!0&&p.index===0){I();continue}}if(_==="+"){if(t.noextglob!==!0&&w()==="("&&w(2)!=="?"){Re("plus",_);continue}if(v&&v.value==="("||t.regex===!1){U({type:"plus",value:_,output:d});continue}if(v&&(v.type==="bracket"||v.type==="paren"||v.type==="brace")||p.parens>0){U({type:"plus",value:_});continue}U({type:"plus",value:d});continue}if(_==="@"){if(t.noextglob!==!0&&w()==="("&&w(2)!=="?"){U({type:"at",extglob:!0,value:_,output:""});continue}U({type:"text",value:_});continue}if(_!=="*"){(_==="$"||_==="^")&&(_=`\\${_}`);let L=ZU.exec(E());L&&(_+=L[0],p.index+=L[0].length),U({type:"text",value:_});continue}if(v&&(v.type==="globstar"||v.star===!0)){v.type="star",v.star=!0,v.value+=_,v.output=T,p.backtrack=!0,p.globstar=!0,q(_);continue}let N=E();if(t.noextglob!==!0&&/^\([^?]/.test(N)){Re("star",_);continue}if(v.type==="star"){if(t.noglobstar===!0){q(_);continue}let L=v.prev,z=L.prev,oe=L.type==="slash"||L.type==="bos",Q=z&&(z.type==="star"||z.type==="globstar");if(t.bash===!0&&(!oe||N[0]&&N[0]!=="/")){U({type:"star",value:_,output:""});continue}let J=p.braces>0&&(L.type==="comma"||L.type==="brace"),Ot=m.length&&(L.type==="pipe"||L.type==="paren");if(!oe&&L.type!=="paren"&&!J&&!Ot){U({type:"star",value:_,output:""});continue}for(;N.slice(0,3)==="/**";){let ae=r[p.index+4];if(ae&&ae!=="/")break;N=N.slice(3),q("/**",3)}if(L.type==="bos"&&k()){v.type="globstar",v.value+=_,v.output=V(t),p.output=v.output,p.globstar=!0,q(_);continue}if(L.type==="slash"&&L.prev.type!=="bos"&&!Q&&k()){p.output=p.output.slice(0,-(L.output+v.output).length),L.output=`(?:${L.output}`,v.type="globstar",v.output=V(t)+(t.strictSlashes?")":"|$)"),v.value+=_,p.globstar=!0,p.output+=L.output+v.output,q(_);continue}if(L.type==="slash"&&L.prev.type!=="bos"&&N[0]==="/"){let ae=N[1]!==void 0?"|$":"";p.output=p.output.slice(0,-(L.output+v.output).length),L.output=`(?:${L.output}`,v.type="globstar",v.output=`${V(t)}${g}|${g}${ae})`,v.value+=_,p.output+=L.output+v.output,p.globstar=!0,q(_+h()),U({type:"slash",value:"/",output:""});continue}if(L.type==="bos"&&N[0]==="/"){v.type="globstar",v.value+=_,v.output=`(?:^|${g}|${V(t)}${g})`,p.output=v.output,p.globstar=!0,q(_+h()),U({type:"slash",value:"/",output:""});continue}p.output=p.output.slice(0,-v.output.length),v.type="globstar",v.output=V(t),v.value+=_,p.output+=v.output,p.globstar=!0,q(_);continue}let ne={type:"star",value:_,output:T};if(t.bash===!0){ne.output=".*?",(v.type==="bos"||v.type==="slash")&&(ne.output=D+ne.output),U(ne);continue}if(v&&(v.type==="bracket"||v.type==="paren")&&t.regex===!0){ne.output=_,U(ne);continue}(p.index===p.start||v.type==="slash"||v.type==="dot")&&(v.type==="dot"?(p.output+=R,v.output+=R):t.dot===!0?(p.output+=O,v.output+=O):(p.output+=D,v.output+=D),w()!=="*"&&(p.output+=y,v.output+=y)),U(ne)}for(;p.brackets>0;){if(t.strictBrackets===!0)throw new SyntaxError(to("closing","]"));p.output=At.escapeLast(p.output,"["),K("brackets")}for(;p.parens>0;){if(t.strictBrackets===!0)throw new SyntaxError(to("closing",")"));p.output=At.escapeLast(p.output,"("),K("parens")}for(;p.braces>0;){if(t.strictBrackets===!0)throw new SyntaxError(to("closing","}"));p.output=At.escapeLast(p.output,"{"),K("braces")}if(t.strictSlashes!==!0&&(v.type==="star"||v.type==="bracket")&&U({type:"maybe_slash",value:"",output:`${g}?`}),p.backtrack===!0){p.output="";for(let N of p.tokens)p.output+=N.output!=null?N.output:N.value,N.suffix&&(p.output+=N.suffix)}return p};ig.fastpaths=(r,e)=>{let t={...e},n=typeof t.maxLength=="number"?Math.min(Lu,t.maxLength):Lu,i=r.length;if(i>n)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${n}`);r=JC[r]||r;let s=At.isWindows(e),{DOT_LITERAL:o,SLASH_LITERAL:a,ONE_CHAR:c,DOTS_SLASH:l,NO_DOT:u,NO_DOTS:f,NO_DOTS_SLASH:d,STAR:g,START_ANCHOR:y}=Ca.globChars(s),b=t.dot?f:u,C=t.dot?d:u,R=t.capture?"":"?:",O={negated:!1,prefix:""},P=t.bash===!0?".*?":g;t.capture&&(P=`(${P})`);let B=D=>D.noglobstar===!0?P:`(${R}(?:(?!${y}${D.dot?l:o}).)*?)`,G=D=>{switch(D){case"*":return`${b}${c}${P}`;case".*":return`${o}${c}${P}`;case"*.*":return`${b}${P}${o}${c}${P}`;case"*/*":return`${b}${P}${a}${c}${C}${P}`;case"**":return b+B(t);case"**/*":return`(?:${b}${B(t)}${a})?${C}${c}${P}`;case"**/*.*":return`(?:${b}${B(t)}${a})?${C}${P}${o}${c}${P}`;case"**/.*":return`(?:${b}${B(t)}${a})?${o}${c}${P}`;default:{let $=/^(.*?)\.(\w+)$/.exec(D);if(!$)return;let T=G($[1]);return T?T+o+$[2]:void 0}}},F=At.removePrefix(r,O),V=G(F);return V&&t.strictSlashes!==!0&&(V+=`${a}?`),V};ek.exports=ig});var nk=A((wV,rk)=>{"use strict";var oq=require("path"),aq=XC(),sg=tk(),og=Du(),cq=Ea(),lq=r=>r&&typeof r=="object"&&!Array.isArray(r),Pe=(r,e,t=!1)=>{if(Array.isArray(r)){let u=r.map(d=>Pe(d,e,t));return d=>{for(let g of u){let y=g(d);if(y)return y}return!1}}let n=lq(r)&&r.tokens&&r.input;if(r===""||typeof r!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let i=e||{},s=og.isWindows(e),o=n?Pe.compileRe(r,e):Pe.makeRe(r,e,!1,!0),a=o.state;delete o.state;let c=()=>!1;if(i.ignore){let u={...e,ignore:null,onMatch:null,onResult:null};c=Pe(i.ignore,u,t)}let l=(u,f=!1)=>{let{isMatch:d,match:g,output:y}=Pe.test(u,o,e,{glob:r,posix:s}),b={glob:r,state:a,regex:o,posix:s,input:u,output:y,match:g,isMatch:d};return typeof i.onResult=="function"&&i.onResult(b),d===!1?(b.isMatch=!1,f?b:!1):c(u)?(typeof i.onIgnore=="function"&&i.onIgnore(b),b.isMatch=!1,f?b:!1):(typeof i.onMatch=="function"&&i.onMatch(b),f?b:!0)};return t&&(l.state=a),l};Pe.test=(r,e,t,{glob:n,posix:i}={})=>{if(typeof r!="string")throw new TypeError("Expected input to be a string");if(r==="")return{isMatch:!1,output:""};let s=t||{},o=s.format||(i?og.toPosixSlashes:null),a=r===n,c=a&&o?o(r):r;return a===!1&&(c=o?o(r):r,a=c===n),(a===!1||s.capture===!0)&&(s.matchBase===!0||s.basename===!0?a=Pe.matchBase(r,e,t,i):a=e.exec(c)),{isMatch:!!a,match:a,output:c}};Pe.matchBase=(r,e,t,n=og.isWindows(t))=>(e instanceof RegExp?e:Pe.makeRe(e,t)).test(oq.basename(r));Pe.isMatch=(r,e,t)=>Pe(e,t)(r);Pe.parse=(r,e)=>Array.isArray(r)?r.map(t=>Pe.parse(t,e)):sg(r,{...e,fastpaths:!1});Pe.scan=(r,e)=>aq(r,e);Pe.compileRe=(r,e,t=!1,n=!1)=>{if(t===!0)return r.output;let i=e||{},s=i.contains?"":"^",o=i.contains?"":"$",a=`${s}(?:${r.output})${o}`;r&&r.negated===!0&&(a=`^(?!${a}).*$`);let c=Pe.toRegex(a,e);return n===!0&&(c.state=r),c};Pe.makeRe=(r,e={},t=!1,n=!1)=>{if(!r||typeof r!="string")throw new TypeError("Expected a non-empty string");let i={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(r[0]==="."||r[0]==="*")&&(i.output=sg.fastpaths(r,e)),i.output||(i=sg(r,e)),Pe.compileRe(i,e,t,n)};Pe.toRegex=(r,e)=>{try{let t=e||{};return new RegExp(r,t.flags||(t.nocase?"i":""))}catch(t){if(e&&e.debug===!0)throw t;return/$^/}};Pe.constants=cq;rk.exports=Pe});var ag=A((SV,ik)=>{"use strict";ik.exports=nk()});var fk=A((EV,pk)=>{"use strict";var Aa=require("fs"),{Readable:uq}=require("stream"),ka=require("path"),{promisify:Uu}=require("util"),cg=ag(),pq=Uu(Aa.readdir),fq=Uu(Aa.stat),sk=Uu(Aa.lstat),dq=Uu(Aa.realpath),hq="!",lk="READDIRP_RECURSIVE_ERROR",mq=new Set(["ENOENT","EPERM","EACCES","ELOOP",lk]),lg="files",uk="directories",ju="files_directories",Bu="all",ok=[lg,uk,ju,Bu],gq=r=>mq.has(r.code),[ak,vq]=process.versions.node.split(".").slice(0,2).map(r=>Number.parseInt(r,10)),yq=process.platform==="win32"&&(ak>10||ak===10&&vq>=5),ck=r=>{if(r!==void 0){if(typeof r=="function")return r;if(typeof r=="string"){let e=cg(r.trim());return t=>e(t.basename)}if(Array.isArray(r)){let e=[],t=[];for(let n of r){let i=n.trim();i.charAt(0)===hq?t.push(cg(i.slice(1))):e.push(cg(i))}return t.length>0?e.length>0?n=>e.some(i=>i(n.basename))&&!t.some(i=>i(n.basename)):n=>!t.some(i=>i(n.basename)):n=>e.some(i=>i(n.basename))}}},Fu=class r extends uq{static get defaultOptions(){return{root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:lg,lstat:!1,depth:2147483648,alwaysStat:!1}}constructor(e={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:e.highWaterMark||4096});let t={...r.defaultOptions,...e},{root:n,type:i}=t;this._fileFilter=ck(t.fileFilter),this._directoryFilter=ck(t.directoryFilter);let s=t.lstat?sk:fq;yq?this._stat=o=>s(o,{bigint:!0}):this._stat=s,this._maxDepth=t.depth,this._wantsDir=[uk,ju,Bu].includes(i),this._wantsFile=[lg,ju,Bu].includes(i),this._wantsEverything=i===Bu,this._root=ka.resolve(n),this._isDirent="Dirent"in Aa&&!t.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(e){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&e>0;){let{path:t,depth:n,files:i=[]}=this.parent||{};if(i.length>0){let s=i.splice(0,e).map(o=>this._formatEntry(o,t));for(let o of await Promise.all(s)){if(this.destroyed)return;let a=await this._getEntryType(o);a==="directory"&&this._directoryFilter(o)?(n<=this._maxDepth&&this.parents.push(this._exploreDir(o.fullPath,n+1)),this._wantsDir&&(this.push(o),e--)):(a==="file"||this._includeAsFile(o))&&this._fileFilter(o)&&this._wantsFile&&(this.push(o),e--)}}else{let s=this.parents.pop();if(!s){this.push(null);break}if(this.parent=await s,this.destroyed)return}}}catch(t){this.destroy(t)}finally{this.reading=!1}}}async _exploreDir(e,t){let n;try{n=await pq(e,this._rdOptions)}catch(i){this._onError(i)}return{files:n,depth:t,path:e}}async _formatEntry(e,t){let n;try{let i=this._isDirent?e.name:e,s=ka.resolve(ka.join(t,i));n={path:ka.relative(this._root,s),fullPath:s,basename:i},n[this._statsProp]=this._isDirent?e:await this._stat(s)}catch(i){this._onError(i)}return n}_onError(e){gq(e)&&!this.destroyed?this.emit("warn",e):this.destroy(e)}async _getEntryType(e){let t=e&&e[this._statsProp];if(t){if(t.isFile())return"file";if(t.isDirectory())return"directory";if(t&&t.isSymbolicLink()){let n=e.fullPath;try{let i=await dq(n),s=await sk(i);if(s.isFile())return"file";if(s.isDirectory()){let o=i.length;if(n.startsWith(i)&&n.substr(o,1)===ka.sep){let a=new Error(`Circular symlink detected: "${n}" points to "${i}"`);return a.code=lk,this._onError(a)}return"directory"}}catch(i){this._onError(i)}}}}_includeAsFile(e){let t=e&&e[this._statsProp];return t&&this._wantsEverything&&!t.isDirectory()}},ro=(r,e={})=>{let t=e.entryType||e.type;if(t==="both"&&(t=ju),t&&(e.type=t),r){if(typeof r!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(t&&!ok.includes(t))throw new Error(`readdirp: Invalid type passed. Use one of ${ok.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return e.root=r,new Fu(e)},xq=(r,e={})=>new Promise((t,n)=>{let i=[];ro(r,e).on("data",s=>i.push(s)).on("end",()=>t(i)).on("error",s=>n(s))});ro.promise=xq;ro.ReaddirpStream=Fu;ro.default=ro;pk.exports=ro});var ug=A((TV,dk)=>{dk.exports=function(r,e){if(typeof r!="string")throw new TypeError("expected path to be a string");if(r==="\\"||r==="/")return"/";var t=r.length;if(t<=1)return r;var n="";if(t>4&&r[3]==="\\"){var i=r[2];(i==="?"||i===".")&&r.slice(0,2)==="\\\\"&&(r=r.slice(2),n="//")}var s=r.split(/[/\\]+/);return e!==!1&&s[s.length-1]===""&&s.pop(),n+s.join("/")}});var xk=A((vk,yk)=>{"use strict";Object.defineProperty(vk,"__esModule",{value:!0});var gk=ag(),_q=ug(),hk="!",bq={returnIndex:!1},wq=r=>Array.isArray(r)?r:[r],Sq=(r,e)=>{if(typeof r=="function")return r;if(typeof r=="string"){let t=gk(r,e);return n=>r===n||t(n)}return r instanceof RegExp?t=>r.test(t):t=>!1},mk=(r,e,t,n)=>{let i=Array.isArray(t),s=i?t[0]:t;if(!i&&typeof s!="string")throw new TypeError("anymatch: second argument must be a string: got "+Object.prototype.toString.call(s));let o=_q(s,!1);for(let c=0;c<e.length;c++){let l=e[c];if(l(o))return n?-1:!1}let a=i&&[o].concat(t.slice(1));for(let c=0;c<r.length;c++){let l=r[c];if(i?l(...a):l(o))return n?c:!0}return n?-1:!1},pg=(r,e,t=bq)=>{if(r==null)throw new TypeError("anymatch: specify first argument");let n=typeof t=="boolean"?{returnIndex:t}:t,i=n.returnIndex||!1,s=wq(r),o=s.filter(c=>typeof c=="string"&&c.charAt(0)===hk).map(c=>c.slice(1)).map(c=>gk(c,n)),a=s.filter(c=>typeof c!="string"||typeof c=="string"&&c.charAt(0)!==hk).map(c=>Sq(c,n));return e==null?(c,l=!1)=>mk(a,o,c,typeof l=="boolean"?l:!1):mk(a,o,e,i)};pg.default=pg;yk.exports=pg});var bk=A((CV,_k)=>{_k.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var t;t=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(t[2])return!0;e=e.slice(t.index+t[0].length)}return!1}});var fg=A((kV,Sk)=>{var Eq=bk(),wk={"{":"}","(":")","[":"]"},Tq=function(r){if(r[0]==="!")return!0;for(var e=0,t=-2,n=-2,i=-2,s=-2,o=-2;e<r.length;){if(r[e]==="*"||r[e+1]==="?"&&/[\].+)]/.test(r[e])||n!==-1&&r[e]==="["&&r[e+1]!=="]"&&(n<e&&(n=r.indexOf("]",e)),n>e&&(o===-1||o>n||(o=r.indexOf("\\",e),o===-1||o>n)))||i!==-1&&r[e]==="{"&&r[e+1]!=="}"&&(i=r.indexOf("}",e),i>e&&(o=r.indexOf("\\",e),o===-1||o>i))||s!==-1&&r[e]==="("&&r[e+1]==="?"&&/[:!=]/.test(r[e+2])&&r[e+3]!==")"&&(s=r.indexOf(")",e),s>e&&(o=r.indexOf("\\",e),o===-1||o>s))||t!==-1&&r[e]==="("&&r[e+1]!=="|"&&(t<e&&(t=r.indexOf("|",e)),t!==-1&&r[t+1]!==")"&&(s=r.indexOf(")",t),s>t&&(o=r.indexOf("\\",t),o===-1||o>s))))return!0;if(r[e]==="\\"){var a=r[e+1];e+=2;var c=wk[a];if(c){var l=r.indexOf(c,e);l!==-1&&(e=l+1)}if(r[e]==="!")return!0}else e++}return!1},Cq=function(r){if(r[0]==="!")return!0;for(var e=0;e<r.length;){if(/[*?{}()[\]]/.test(r[e]))return!0;if(r[e]==="\\"){var t=r[e+1];e+=2;var n=wk[t];if(n){var i=r.indexOf(n,e);i!==-1&&(e=i+1)}if(r[e]==="!")return!0}else e++}return!1};Sk.exports=function(e,t){if(typeof e!="string"||e==="")return!1;if(Eq(e))return!0;var n=Tq;return t&&t.strict===!1&&(n=Cq),n(e)}});var Tk=A((AV,Ek)=>{"use strict";var kq=fg(),Aq=require("path").posix.dirname,Rq=require("os").platform()==="win32",dg="/",Oq=/\\/g,Mq=/[\{\[].*[\}\]]$/,Pq=/(^|[^\\])([\{\[]|\([^\)]+$)/,Iq=/\\([\!\*\?\|\[\]\(\)\{\}])/g;Ek.exports=function(e,t){var n=Object.assign({flipBackslashes:!0},t);n.flipBackslashes&&Rq&&e.indexOf(dg)<0&&(e=e.replace(Oq,dg)),Mq.test(e)&&(e+=dg),e+="a";do e=Aq(e);while(kq(e)||Pq.test(e));return e.replace(Iq,"$1")}});var qu=A(Sr=>{"use strict";Sr.isInteger=r=>typeof r=="number"?Number.isInteger(r):typeof r=="string"&&r.trim()!==""?Number.isInteger(Number(r)):!1;Sr.find=(r,e)=>r.nodes.find(t=>t.type===e);Sr.exceedsLimit=(r,e,t=1,n)=>n===!1||!Sr.isInteger(r)||!Sr.isInteger(e)?!1:(Number(e)-Number(r))/Number(t)>=n;Sr.escapeNode=(r,e=0,t)=>{let n=r.nodes[e];n&&(t&&n.type===t||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};Sr.encloseBrace=r=>r.type!=="brace"?!1:r.commas>>0+r.ranges>>0===0?(r.invalid=!0,!0):!1;Sr.isInvalidBrace=r=>r.type!=="brace"?!1:r.invalid===!0||r.dollar?!0:r.commas>>0+r.ranges>>0===0||r.open!==!0||r.close!==!0?(r.invalid=!0,!0):!1;Sr.isOpenOrClose=r=>r.type==="open"||r.type==="close"?!0:r.open===!0||r.close===!0;Sr.reduce=r=>r.reduce((e,t)=>(t.type==="text"&&e.push(t.value),t.type==="range"&&(t.type="text"),e),[]);Sr.flatten=(...r)=>{let e=[],t=n=>{for(let i=0;i<n.length;i++){let s=n[i];if(Array.isArray(s)){t(s);continue}s!==void 0&&e.push(s)}return e};return t(r),e}});var $u=A((OV,kk)=>{"use strict";var Ck=qu();kk.exports=(r,e={})=>{let t=(n,i={})=>{let s=e.escapeInvalid&&Ck.isInvalidBrace(i),o=n.invalid===!0&&e.escapeInvalid===!0,a="";if(n.value)return(s||o)&&Ck.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let c of n.nodes)a+=t(c);return a};return t(r)}});var Rk=A((MV,Ak)=>{"use strict";Ak.exports=function(r){return typeof r=="number"?r-r===0:typeof r=="string"&&r.trim()!==""?Number.isFinite?Number.isFinite(+r):isFinite(+r):!1}});var jk=A((PV,Bk)=>{"use strict";var Ok=Rk(),Oi=(r,e,t)=>{if(Ok(r)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||r===e)return String(r);if(Ok(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...t};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let i=String(n.relaxZeros),s=String(n.shorthand),o=String(n.capture),a=String(n.wrap),c=r+":"+e+"="+i+s+o+a;if(Oi.cache.hasOwnProperty(c))return Oi.cache[c].result;let l=Math.min(r,e),u=Math.max(r,e);if(Math.abs(l-u)===1){let b=r+"|"+e;return n.capture?`(${b})`:n.wrap===!1?b:`(?:${b})`}let f=Lk(r)||Lk(e),d={min:r,max:e,a:l,b:u},g=[],y=[];if(f&&(d.isPadded=f,d.maxLen=String(d.max).length),l<0){let b=u<0?Math.abs(u):1;y=Mk(b,Math.abs(l),d,n),l=d.a=0}return u>=0&&(g=Mk(l,u,d,n)),d.negatives=y,d.positives=g,d.result=Nq(y,g,n),n.capture===!0?d.result=`(${d.result})`:n.wrap!==!1&&g.length+y.length>1&&(d.result=`(?:${d.result})`),Oi.cache[c]=d,d.result};function Nq(r,e,t){let n=hg(r,e,"-",!1,t)||[],i=hg(e,r,"",!1,t)||[],s=hg(r,e,"-?",!0,t)||[];return n.concat(s).concat(i).join("|")}function Dq(r,e){let t=1,n=1,i=Ik(r,t),s=new Set([e]);for(;r<=i&&i<=e;)s.add(i),t+=1,i=Ik(r,t);for(i=Nk(e+1,n)-1;r<i&&i<=e;)s.add(i),n+=1,i=Nk(e+1,n)-1;return s=[...s],s.sort(jq),s}function Lq(r,e,t){if(r===e)return{pattern:r,count:[],digits:0};let n=Bq(r,e),i=n.length,s="",o=0;for(let a=0;a<i;a++){let[c,l]=n[a];c===l?s+=c:c!=="0"||l!=="9"?s+=Fq(c,l,t):o++}return o&&(s+=t.shorthand===!0?"\\d":"[0-9]"),{pattern:s,count:[o],digits:i}}function Mk(r,e,t,n){let i=Dq(r,e),s=[],o=r,a;for(let c=0;c<i.length;c++){let l=i[c],u=Lq(String(o),String(l),n),f="";if(!t.isPadded&&a&&a.pattern===u.pattern){a.count.length>1&&a.count.pop(),a.count.push(u.count[0]),a.string=a.pattern+Dk(a.count),o=l+1;continue}t.isPadded&&(f=Uq(l,t,n)),u.string=f+u.pattern+Dk(u.count),s.push(u),o=l+1,a=u}return s}function hg(r,e,t,n,i){let s=[];for(let o of r){let{string:a}=o;!n&&!Pk(e,"string",a)&&s.push(t+a),n&&Pk(e,"string",a)&&s.push(t+a)}return s}function Bq(r,e){let t=[];for(let n=0;n<r.length;n++)t.push([r[n],e[n]]);return t}function jq(r,e){return r>e?1:e>r?-1:0}function Pk(r,e,t){return r.some(n=>n[e]===t)}function Ik(r,e){return Number(String(r).slice(0,-e)+"9".repeat(e))}function Nk(r,e){return r-r%Math.pow(10,e)}function Dk(r){let[e=0,t=""]=r;return t||e>1?`{${e+(t?","+t:"")}}`:""}function Fq(r,e,t){return`[${r}${e-r===1?"":"-"}${e}]`}function Lk(r){return/^-?(0+)\d/.test(r)}function Uq(r,e,t){if(!e.isPadded)return r;let n=Math.abs(e.maxLen-String(r).length),i=t.relaxZeros!==!1;switch(n){case 0:return"";case 1:return i?"0?":"0";case 2:return i?"0{0,2}":"00";default:return i?`0{0,${n}}`:`0{${n}}`}}Oi.cache={};Oi.clearCache=()=>Oi.cache={};Bk.exports=Oi});var vg=A((IV,Gk)=>{"use strict";var qq=require("util"),Uk=jk(),Fk=r=>r!==null&&typeof r=="object"&&!Array.isArray(r),$q=r=>e=>r===!0?Number(e):String(e),mg=r=>typeof r=="number"||typeof r=="string"&&r!=="",Ra=r=>Number.isInteger(+r),gg=r=>{let e=`${r}`,t=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++t]==="0";);return t>0},Hq=(r,e,t)=>typeof r=="string"||typeof e=="string"?!0:t.stringify===!0,Wq=(r,e,t)=>{if(e>0){let n=r[0]==="-"?"-":"";n&&(r=r.slice(1)),r=n+r.padStart(n?e-1:e,"0")}return t===!1?String(r):r},Wu=(r,e)=>{let t=r[0]==="-"?"-":"";for(t&&(r=r.slice(1),e--);r.length<e;)r="0"+r;return t?"-"+r:r},Gq=(r,e,t)=>{r.negatives.sort((a,c)=>a<c?-1:a>c?1:0),r.positives.sort((a,c)=>a<c?-1:a>c?1:0);let n=e.capture?"":"?:",i="",s="",o;return r.positives.length&&(i=r.positives.map(a=>Wu(String(a),t)).join("|")),r.negatives.length&&(s=`-(${n}${r.negatives.map(a=>Wu(String(a),t)).join("|")})`),i&&s?o=`${i}|${s}`:o=i||s,e.wrap?`(${n}${o})`:o},qk=(r,e,t,n)=>{if(t)return Uk(r,e,{wrap:!1,...n});let i=String.fromCharCode(r);if(r===e)return i;let s=String.fromCharCode(e);return`[${i}-${s}]`},$k=(r,e,t)=>{if(Array.isArray(r)){let n=t.wrap===!0,i=t.capture?"":"?:";return n?`(${i}${r.join("|")})`:r.join("|")}return Uk(r,e,t)},Hk=(...r)=>new RangeError("Invalid range arguments: "+qq.inspect(...r)),Wk=(r,e,t)=>{if(t.strictRanges===!0)throw Hk([r,e]);return[]},zq=(r,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${r}" to be a number`);return[]},Vq=(r,e,t=1,n={})=>{let i=Number(r),s=Number(e);if(!Number.isInteger(i)||!Number.isInteger(s)){if(n.strictRanges===!0)throw Hk([r,e]);return[]}i===0&&(i=0),s===0&&(s=0);let o=i>s,a=String(r),c=String(e),l=String(t);t=Math.max(Math.abs(t),1);let u=gg(a)||gg(c)||gg(l),f=u?Math.max(a.length,c.length,l.length):0,d=u===!1&&Hq(r,e,n)===!1,g=n.transform||$q(d);if(n.toRegex&&t===1)return qk(Wu(r,f),Wu(e,f),!0,n);let y={negatives:[],positives:[]},b=O=>y[O<0?"negatives":"positives"].push(Math.abs(O)),C=[],R=0;for(;o?i>=s:i<=s;)n.toRegex===!0&&t>1?b(i):C.push(Wq(g(i,R),f,d)),i=o?i-t:i+t,R++;return n.toRegex===!0?t>1?Gq(y,n,f):$k(C,null,{wrap:!1,...n}):C},Kq=(r,e,t=1,n={})=>{if(!Ra(r)&&r.length>1||!Ra(e)&&e.length>1)return Wk(r,e,n);let i=n.transform||(d=>String.fromCharCode(d)),s=`${r}`.charCodeAt(0),o=`${e}`.charCodeAt(0),a=s>o,c=Math.min(s,o),l=Math.max(s,o);if(n.toRegex&&t===1)return qk(c,l,!1,n);let u=[],f=0;for(;a?s>=o:s<=o;)u.push(i(s,f)),s=a?s-t:s+t,f++;return n.toRegex===!0?$k(u,null,{wrap:!1,options:n}):u},Hu=(r,e,t,n={})=>{if(e==null&&mg(r))return[r];if(!mg(r)||!mg(e))return Wk(r,e,n);if(typeof t=="function")return Hu(r,e,1,{transform:t});if(Fk(t))return Hu(r,e,0,t);let i={...n};return i.capture===!0&&(i.wrap=!0),t=t||i.step||1,Ra(t)?Ra(r)&&Ra(e)?Vq(r,e,t,i):Kq(r,e,Math.max(Math.abs(t),1),i):t!=null&&!Fk(t)?zq(t,i):Hu(r,e,1,t)};Gk.exports=Hu});var Kk=A((NV,Vk)=>{"use strict";var Yq=vg(),zk=qu(),Xq=(r,e={})=>{let t=(n,i={})=>{let s=zk.isInvalidBrace(i),o=n.invalid===!0&&e.escapeInvalid===!0,a=s===!0||o===!0,c=e.escapeInvalid===!0?"\\":"",l="";if(n.isOpen===!0)return c+n.value;if(n.isClose===!0)return console.log("node.isClose",c,n.value),c+n.value;if(n.type==="open")return a?c+n.value:"(";if(n.type==="close")return a?c+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":a?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let u=zk.reduce(n.nodes),f=Yq(...u,{...e,wrap:!1,toRegex:!0,strictZeros:!0});if(f.length!==0)return u.length>1&&f.length>1?`(${f})`:f}if(n.nodes)for(let u of n.nodes)l+=t(u,n);return l};return t(r)};Vk.exports=Xq});var Jk=A((DV,Xk)=>{"use strict";var Jq=vg(),Yk=$u(),no=qu(),Mi=(r="",e="",t=!1)=>{let n=[];if(r=[].concat(r),e=[].concat(e),!e.length)return r;if(!r.length)return t?no.flatten(e).map(i=>`{${i}}`):e;for(let i of r)if(Array.isArray(i))for(let s of i)n.push(Mi(s,e,t));else for(let s of e)t===!0&&typeof s=="string"&&(s=`{${s}}`),n.push(Array.isArray(s)?Mi(i,s,t):i+s);return no.flatten(n)},Zq=(r,e={})=>{let t=e.rangeLimit===void 0?1e3:e.rangeLimit,n=(i,s={})=>{i.queue=[];let o=s,a=s.queue;for(;o.type!=="brace"&&o.type!=="root"&&o.parent;)o=o.parent,a=o.queue;if(i.invalid||i.dollar){a.push(Mi(a.pop(),Yk(i,e)));return}if(i.type==="brace"&&i.invalid!==!0&&i.nodes.length===2){a.push(Mi(a.pop(),["{}"]));return}if(i.nodes&&i.ranges>0){let f=no.reduce(i.nodes);if(no.exceedsLimit(...f,e.step,t))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let d=Jq(...f,e);d.length===0&&(d=Yk(i,e)),a.push(Mi(a.pop(),d)),i.nodes=[];return}let c=no.encloseBrace(i),l=i.queue,u=i;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,l=u.queue;for(let f=0;f<i.nodes.length;f++){let d=i.nodes[f];if(d.type==="comma"&&i.type==="brace"){f===1&&l.push(""),l.push("");continue}if(d.type==="close"){a.push(Mi(a.pop(),l,c));continue}if(d.value&&d.type!=="open"){l.push(Mi(l.pop(),d.value));continue}d.nodes&&n(d,i)}return l};return no.flatten(n(r))};Xk.exports=Zq});var Qk=A((LV,Zk)=>{"use strict";Zk.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
|
|
105
|
-
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var iA=A((BV,nA)=>{"use strict";var Qq=$u(),{MAX_LENGTH:eA,CHAR_BACKSLASH:yg,CHAR_BACKTICK:e$,CHAR_COMMA:t$,CHAR_DOT:r$,CHAR_LEFT_PARENTHESES:n$,CHAR_RIGHT_PARENTHESES:i$,CHAR_LEFT_CURLY_BRACE:s$,CHAR_RIGHT_CURLY_BRACE:o$,CHAR_LEFT_SQUARE_BRACKET:tA,CHAR_RIGHT_SQUARE_BRACKET:rA,CHAR_DOUBLE_QUOTE:a$,CHAR_SINGLE_QUOTE:c$,CHAR_NO_BREAK_SPACE:l$,CHAR_ZERO_WIDTH_NOBREAK_SPACE:u$}=Qk(),p$=(r,e={})=>{if(typeof r!="string")throw new TypeError("Expected a string");let t=e||{},n=typeof t.maxLength=="number"?Math.min(eA,t.maxLength):eA;if(r.length>n)throw new SyntaxError(`Input length (${r.length}), exceeds max characters (${n})`);let i={type:"root",input:r,nodes:[]},s=[i],o=i,a=i,c=0,l=r.length,u=0,f=0,d,g=()=>r[u++],y=b=>{if(b.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&b.type==="text"){a.value+=b.value;return}return o.nodes.push(b),b.parent=o,b.prev=a,a=b,b};for(y({type:"bos"});u<l;)if(o=s[s.length-1],d=g(),!(d===u$||d===l$)){if(d===yg){y({type:"text",value:(e.keepEscaping?d:"")+g()});continue}if(d===rA){y({type:"text",value:"\\"+d});continue}if(d===tA){c++;let b;for(;u<l&&(b=g());){if(d+=b,b===tA){c++;continue}if(b===yg){d+=g();continue}if(b===rA&&(c--,c===0))break}y({type:"text",value:d});continue}if(d===n$){o=y({type:"paren",nodes:[]}),s.push(o),y({type:"text",value:d});continue}if(d===i$){if(o.type!=="paren"){y({type:"text",value:d});continue}o=s.pop(),y({type:"text",value:d}),o=s[s.length-1];continue}if(d===a$||d===c$||d===e$){let b=d,C;for(e.keepQuotes!==!0&&(d="");u<l&&(C=g());){if(C===yg){d+=C+g();continue}if(C===b){e.keepQuotes===!0&&(d+=C);break}d+=C}y({type:"text",value:d});continue}if(d===s$){f++;let C={type:"brace",open:!0,close:!1,dollar:a.value&&a.value.slice(-1)==="$"||o.dollar===!0,depth:f,commas:0,ranges:0,nodes:[]};o=y(C),s.push(o),y({type:"open",value:d});continue}if(d===o$){if(o.type!=="brace"){y({type:"text",value:d});continue}let b="close";o=s.pop(),o.close=!0,y({type:b,value:d}),f--,o=s[s.length-1];continue}if(d===t$&&f>0){if(o.ranges>0){o.ranges=0;let b=o.nodes.shift();o.nodes=[b,{type:"text",value:Qq(o)}]}y({type:"comma",value:d}),o.commas++;continue}if(d===r$&&f>0&&o.commas===0){let b=o.nodes;if(f===0||b.length===0){y({type:"text",value:d});continue}if(a.type==="dot"){if(o.range=[],a.value+=d,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){b.pop();let C=b[b.length-1];C.value+=a.value+d,a=C,o.ranges--;continue}y({type:"dot",value:d});continue}y({type:"text",value:d})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(R=>{R.nodes||(R.type==="open"&&(R.isOpen=!0),R.type==="close"&&(R.isClose=!0),R.nodes||(R.type="text"),R.invalid=!0)});let b=s[s.length-1],C=b.nodes.indexOf(o);b.nodes.splice(C,1,...o.nodes)}while(s.length>0);return y({type:"eos"}),i};nA.exports=p$});var aA=A((jV,oA)=>{"use strict";var sA=$u(),f$=Kk(),d$=Jk(),h$=iA(),ir=(r,e={})=>{let t=[];if(Array.isArray(r))for(let n of r){let i=ir.create(n,e);Array.isArray(i)?t.push(...i):t.push(i)}else t=[].concat(ir.create(r,e));return e&&e.expand===!0&&e.nodupes===!0&&(t=[...new Set(t)]),t};ir.parse=(r,e={})=>h$(r,e);ir.stringify=(r,e={})=>sA(typeof r=="string"?ir.parse(r,e):r,e);ir.compile=(r,e={})=>(typeof r=="string"&&(r=ir.parse(r,e)),f$(r,e));ir.expand=(r,e={})=>{typeof r=="string"&&(r=ir.parse(r,e));let t=d$(r,e);return e.noempty===!0&&(t=t.filter(Boolean)),e.nodupes===!0&&(t=[...new Set(t)]),t};ir.create=(r,e={})=>r===""||r.length<3?[r]:e.expand!==!0?ir.compile(r,e):ir.expand(r,e);oA.exports=ir});var cA=A((FV,m$)=>{m$.exports=["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]});var uA=A((UV,lA)=>{lA.exports=cA()});var fA=A((qV,pA)=>{"use strict";var g$=require("path"),v$=uA(),y$=new Set(v$);pA.exports=r=>y$.has(g$.extname(r).slice(1).toLowerCase())});var Gu=A(Y=>{"use strict";var{sep:x$}=require("path"),{platform:xg}=process,_$=require("os");Y.EV_ALL="all";Y.EV_READY="ready";Y.EV_ADD="add";Y.EV_CHANGE="change";Y.EV_ADD_DIR="addDir";Y.EV_UNLINK="unlink";Y.EV_UNLINK_DIR="unlinkDir";Y.EV_RAW="raw";Y.EV_ERROR="error";Y.STR_DATA="data";Y.STR_END="end";Y.STR_CLOSE="close";Y.FSEVENT_CREATED="created";Y.FSEVENT_MODIFIED="modified";Y.FSEVENT_DELETED="deleted";Y.FSEVENT_MOVED="moved";Y.FSEVENT_CLONED="cloned";Y.FSEVENT_UNKNOWN="unknown";Y.FSEVENT_FLAG_MUST_SCAN_SUBDIRS=1;Y.FSEVENT_TYPE_FILE="file";Y.FSEVENT_TYPE_DIRECTORY="directory";Y.FSEVENT_TYPE_SYMLINK="symlink";Y.KEY_LISTENERS="listeners";Y.KEY_ERR="errHandlers";Y.KEY_RAW="rawEmitters";Y.HANDLER_KEYS=[Y.KEY_LISTENERS,Y.KEY_ERR,Y.KEY_RAW];Y.DOT_SLASH=`.${x$}`;Y.BACK_SLASH_RE=/\\/g;Y.DOUBLE_SLASH_RE=/\/\//;Y.SLASH_OR_BACK_SLASH_RE=/[/\\]/;Y.DOT_RE=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/;Y.REPLACER_RE=/^\.[/\\]/;Y.SLASH="/";Y.SLASH_SLASH="//";Y.BRACE_START="{";Y.BANG="!";Y.ONE_DOT=".";Y.TWO_DOTS="..";Y.STAR="*";Y.GLOBSTAR="**";Y.ROOT_GLOBSTAR="/**/*";Y.SLASH_GLOBSTAR="/**";Y.DIR_SUFFIX="Dir";Y.ANYMATCH_OPTS={dot:!0};Y.STRING_TYPE="string";Y.FUNCTION_TYPE="function";Y.EMPTY_STR="";Y.EMPTY_FN=()=>{};Y.IDENTITY_FN=r=>r;Y.isWindows=xg==="win32";Y.isMacos=xg==="darwin";Y.isLinux=xg==="linux";Y.isIBMi=_$.type()==="OS400"});var yA=A((HV,vA)=>{"use strict";var Rn=require("fs"),_t=require("path"),{promisify:Ia}=require("util"),b$=fA(),{isWindows:w$,isLinux:S$,EMPTY_FN:E$,EMPTY_STR:T$,KEY_LISTENERS:io,KEY_ERR:_g,KEY_RAW:Oa,HANDLER_KEYS:C$,EV_CHANGE:Vu,EV_ADD:zu,EV_ADD_DIR:k$,EV_ERROR:hA,STR_DATA:A$,STR_END:R$,BRACE_START:O$,STAR:M$}=Gu(),P$="watch",I$=Ia(Rn.open),mA=Ia(Rn.stat),N$=Ia(Rn.lstat),D$=Ia(Rn.close),bg=Ia(Rn.realpath),L$={lstat:N$,stat:mA},Sg=(r,e)=>{r instanceof Set?r.forEach(e):e(r)},Ma=(r,e,t)=>{let n=r[e];n instanceof Set||(r[e]=n=new Set([n])),n.add(t)},B$=r=>e=>{let t=r[e];t instanceof Set?t.clear():delete r[e]},Pa=(r,e,t)=>{let n=r[e];n instanceof Set?n.delete(t):n===t&&delete r[e]},gA=r=>r instanceof Set?r.size===0:!r,Ku=new Map;function dA(r,e,t,n,i){let s=(o,a)=>{t(r),i(o,a,{watchedPath:r}),a&&r!==a&&Yu(_t.resolve(r,a),io,_t.join(r,a))};try{return Rn.watch(r,e,s)}catch(o){n(o)}}var Yu=(r,e,t,n,i)=>{let s=Ku.get(r);s&&Sg(s[e],o=>{o(t,n,i)})},j$=(r,e,t,n)=>{let{listener:i,errHandler:s,rawEmitter:o}=n,a=Ku.get(e),c;if(!t.persistent)return c=dA(r,t,i,s,o),c.close.bind(c);if(a)Ma(a,io,i),Ma(a,_g,s),Ma(a,Oa,o);else{if(c=dA(r,t,Yu.bind(null,e,io),s,Yu.bind(null,e,Oa)),!c)return;c.on(hA,async l=>{let u=Yu.bind(null,e,_g);if(a.watcherUnusable=!0,w$&&l.code==="EPERM")try{let f=await I$(r,"r");await D$(f),u(l)}catch{}else u(l)}),a={listeners:i,errHandlers:s,rawEmitters:o,watcher:c},Ku.set(e,a)}return()=>{Pa(a,io,i),Pa(a,_g,s),Pa(a,Oa,o),gA(a.listeners)&&(a.watcher.close(),Ku.delete(e),C$.forEach(B$(a)),a.watcher=void 0,Object.freeze(a))}},wg=new Map,F$=(r,e,t,n)=>{let{listener:i,rawEmitter:s}=n,o=wg.get(e),a=new Set,c=new Set,l=o&&o.options;return l&&(l.persistent<t.persistent||l.interval>t.interval)&&(a=o.listeners,c=o.rawEmitters,Rn.unwatchFile(e),o=void 0),o?(Ma(o,io,i),Ma(o,Oa,s)):(o={listeners:i,rawEmitters:s,options:t,watcher:Rn.watchFile(e,t,(u,f)=>{Sg(o.rawEmitters,g=>{g(Vu,e,{curr:u,prev:f})});let d=u.mtimeMs;(u.size!==f.size||d>f.mtimeMs||d===0)&&Sg(o.listeners,g=>g(r,u))})},wg.set(e,o)),()=>{Pa(o,io,i),Pa(o,Oa,s),gA(o.listeners)&&(wg.delete(e),Rn.unwatchFile(e),o.options=o.watcher=void 0,Object.freeze(o))}},Eg=class{constructor(e){this.fsw=e,this._boundHandleError=t=>e._handleError(t)}_watchWithNodeFs(e,t){let n=this.fsw.options,i=_t.dirname(e),s=_t.basename(e);this.fsw._getWatchedDir(i).add(s);let a=_t.resolve(e),c={persistent:n.persistent};t||(t=E$);let l;return n.usePolling?(c.interval=n.enableBinaryInterval&&b$(s)?n.binaryInterval:n.interval,l=F$(e,a,c,{listener:t,rawEmitter:this.fsw._emitRaw})):l=j$(e,a,c,{listener:t,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw}),l}_handleFile(e,t,n){if(this.fsw.closed)return;let i=_t.dirname(e),s=_t.basename(e),o=this.fsw._getWatchedDir(i),a=t;if(o.has(s))return;let c=async(u,f)=>{if(this.fsw._throttle(P$,e,5)){if(!f||f.mtimeMs===0)try{let d=await mA(e);if(this.fsw.closed)return;let g=d.atimeMs,y=d.mtimeMs;(!g||g<=y||y!==a.mtimeMs)&&this.fsw._emit(Vu,e,d),S$&&a.ino!==d.ino?(this.fsw._closeFile(u),a=d,this.fsw._addPathCloser(u,this._watchWithNodeFs(e,c))):a=d}catch{this.fsw._remove(i,s)}else if(o.has(s)){let d=f.atimeMs,g=f.mtimeMs;(!d||d<=g||g!==a.mtimeMs)&&this.fsw._emit(Vu,e,f),a=f}}},l=this._watchWithNodeFs(e,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(e)){if(!this.fsw._throttle(zu,e,0))return;this.fsw._emit(zu,e,t)}return l}async _handleSymlink(e,t,n,i){if(this.fsw.closed)return;let s=e.fullPath,o=this.fsw._getWatchedDir(t);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await bg(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(o.has(i)?this.fsw._symlinkPaths.get(s)!==a&&(this.fsw._symlinkPaths.set(s,a),this.fsw._emit(Vu,n,e.stats)):(o.add(i),this.fsw._symlinkPaths.set(s,a),this.fsw._emit(zu,n,e.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(s))return!0;this.fsw._symlinkPaths.set(s,!0)}_handleRead(e,t,n,i,s,o,a){if(e=_t.join(e,T$),!n.hasGlob&&(a=this.fsw._throttle("readdir",e,1e3),!a))return;let c=this.fsw._getWatchedDir(n.path),l=new Set,u=this.fsw._readdirp(e,{fileFilter:f=>n.filterPath(f),directoryFilter:f=>n.filterDir(f),depth:0}).on(A$,async f=>{if(this.fsw.closed){u=void 0;return}let d=f.path,g=_t.join(e,d);if(l.add(d),!(f.stats.isSymbolicLink()&&await this._handleSymlink(f,e,g,d))){if(this.fsw.closed){u=void 0;return}(d===i||!i&&!c.has(d))&&(this.fsw._incrReadyCount(),g=_t.join(s,_t.relative(s,g)),this._addToNodeFs(g,t,n,o+1))}}).on(hA,this._boundHandleError);return new Promise(f=>u.once(R$,()=>{if(this.fsw.closed){u=void 0;return}let d=a?a.clear():!1;f(),c.getChildren().filter(g=>g!==e&&!l.has(g)&&(!n.hasGlob||n.filterPath({fullPath:_t.resolve(e,g)}))).forEach(g=>{this.fsw._remove(e,g)}),u=void 0,d&&this._handleRead(e,!1,n,i,s,o,a)}))}async _handleDir(e,t,n,i,s,o,a){let c=this.fsw._getWatchedDir(_t.dirname(e)),l=c.has(_t.basename(e));!(n&&this.fsw.options.ignoreInitial)&&!s&&!l&&(!o.hasGlob||o.globFilter(e))&&this.fsw._emit(k$,e,t),c.add(_t.basename(e)),this.fsw._getWatchedDir(e);let u,f,d=this.fsw.options.depth;if((d==null||i<=d)&&!this.fsw._symlinkPaths.has(a)){if(!s&&(await this._handleRead(e,n,o,s,e,i,u),this.fsw.closed))return;f=this._watchWithNodeFs(e,(g,y)=>{y&&y.mtimeMs===0||this._handleRead(g,!1,o,s,e,i,u)})}return f}async _addToNodeFs(e,t,n,i,s){let o=this.fsw._emitReady;if(this.fsw._isIgnored(e)||this.fsw.closed)return o(),!1;let a=this.fsw._getWatchHelpers(e,i);!a.hasGlob&&n&&(a.hasGlob=n.hasGlob,a.globFilter=n.globFilter,a.filterPath=c=>n.filterPath(c),a.filterDir=c=>n.filterDir(c));try{let c=await L$[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return o(),!1;let l=this.fsw.options.followSymlinks&&!e.includes(M$)&&!e.includes(O$),u;if(c.isDirectory()){let f=_t.resolve(e),d=l?await bg(e):e;if(this.fsw.closed||(u=await this._handleDir(a.watchPath,c,t,i,s,a,d),this.fsw.closed))return;f!==d&&d!==void 0&&this.fsw._symlinkPaths.set(f,d)}else if(c.isSymbolicLink()){let f=l?await bg(e):e;if(this.fsw.closed)return;let d=_t.dirname(a.watchPath);if(this.fsw._getWatchedDir(d).add(a.watchPath),this.fsw._emit(zu,a.watchPath,c),u=await this._handleDir(d,c,t,i,e,a,f),this.fsw.closed)return;f!==void 0&&this.fsw._symlinkPaths.set(_t.resolve(e),f)}else u=this._handleFile(a.watchPath,c,t);return o(),this.fsw._addPathCloser(e,u),!1}catch(c){if(this.fsw._handleError(c))return o(),e}}};vA.exports=Eg});var TA=A((WV,Pg)=>{"use strict";var Og=require("fs"),bt=require("path"),{promisify:Mg}=require("util"),so;try{so=require("fsevents")}catch(r){process.env.CHOKIDAR_PRINT_FSEVENTS_REQUIRE_ERROR&&console.error(r)}if(so){let r=process.version.match(/v(\d+)\.(\d+)/);if(r&&r[1]&&r[2]){let e=Number.parseInt(r[1],10),t=Number.parseInt(r[2],10);e===8&&t<16&&(so=void 0)}}var{EV_ADD:Tg,EV_CHANGE:U$,EV_ADD_DIR:xA,EV_UNLINK:Xu,EV_ERROR:q$,STR_DATA:$$,STR_END:H$,FSEVENT_CREATED:W$,FSEVENT_MODIFIED:G$,FSEVENT_DELETED:z$,FSEVENT_MOVED:V$,FSEVENT_UNKNOWN:K$,FSEVENT_FLAG_MUST_SCAN_SUBDIRS:Y$,FSEVENT_TYPE_FILE:X$,FSEVENT_TYPE_DIRECTORY:Na,FSEVENT_TYPE_SYMLINK:EA,ROOT_GLOBSTAR:_A,DIR_SUFFIX:J$,DOT_SLASH:bA,FUNCTION_TYPE:Cg,EMPTY_FN:Z$,IDENTITY_FN:Q$}=Gu(),eH=r=>isNaN(r)?{}:{depth:r},Ag=Mg(Og.stat),tH=Mg(Og.lstat),wA=Mg(Og.realpath),rH={stat:Ag,lstat:tH},Pi=new Map,nH=10,iH=new Set([69888,70400,71424,72704,73472,131328,131840,262912]),sH=(r,e)=>({stop:so.watch(r,e)});function oH(r,e,t,n){let i=bt.extname(e)?bt.dirname(e):e,s=bt.dirname(i),o=Pi.get(i);aH(s)&&(i=s);let a=bt.resolve(r),c=a!==e,l=(f,d,g)=>{c&&(f=f.replace(e,a)),(f===a||!f.indexOf(a+bt.sep))&&t(f,d,g)},u=!1;for(let f of Pi.keys())if(e.indexOf(bt.resolve(f)+bt.sep)===0){i=f,o=Pi.get(i),u=!0;break}return o||u?o.listeners.add(l):(o={listeners:new Set([l]),rawEmitter:n,watcher:sH(i,(f,d)=>{if(!o.listeners.size||d&Y$)return;let g=so.getInfo(f,d);o.listeners.forEach(y=>{y(f,d,g)}),o.rawEmitter(g.event,f,g)})},Pi.set(i,o)),()=>{let f=o.listeners;if(f.delete(l),!f.size&&(Pi.delete(i),o.watcher))return o.watcher.stop().then(()=>{o.rawEmitter=o.watcher=void 0,Object.freeze(o)})}}var aH=r=>{let e=0;for(let t of Pi.keys())if(t.indexOf(r)===0&&(e++,e>=nH))return!0;return!1},cH=()=>so&&Pi.size<128,kg=(r,e)=>{let t=0;for(;!r.indexOf(e)&&(r=bt.dirname(r))!==e;)t++;return t},SA=(r,e)=>r.type===Na&&e.isDirectory()||r.type===EA&&e.isSymbolicLink()||r.type===X$&&e.isFile(),Rg=class{constructor(e){this.fsw=e}checkIgnored(e,t){let n=this.fsw._ignoredPaths;if(this.fsw._isIgnored(e,t))return n.add(e),t&&t.isDirectory()&&n.add(e+_A),!0;n.delete(e),n.delete(e+_A)}addOrChange(e,t,n,i,s,o,a,c){let l=s.has(o)?U$:Tg;this.handleEvent(l,e,t,n,i,s,o,a,c)}async checkExists(e,t,n,i,s,o,a,c){try{let l=await Ag(e);if(this.fsw.closed)return;SA(a,l)?this.addOrChange(e,t,n,i,s,o,a,c):this.handleEvent(Xu,e,t,n,i,s,o,a,c)}catch(l){l.code==="EACCES"?this.addOrChange(e,t,n,i,s,o,a,c):this.handleEvent(Xu,e,t,n,i,s,o,a,c)}}handleEvent(e,t,n,i,s,o,a,c,l){if(!(this.fsw.closed||this.checkIgnored(t)))if(e===Xu){let u=c.type===Na;(u||o.has(a))&&this.fsw._remove(s,a,u)}else{if(e===Tg){if(c.type===Na&&this.fsw._getWatchedDir(t),c.type===EA&&l.followSymlinks){let f=l.depth===void 0?void 0:kg(n,i)+1;return this._addToFsEvents(t,!1,!0,f)}this.fsw._getWatchedDir(s).add(a)}let u=c.type===Na?e+J$:e;this.fsw._emit(u,t),u===xA&&this._addToFsEvents(t,!1,!0)}}_watchWithFsEvents(e,t,n,i){if(this.fsw.closed||this.fsw._isIgnored(e))return;let s=this.fsw.options,a=oH(e,t,async(c,l,u)=>{if(this.fsw.closed||s.depth!==void 0&&kg(c,t)>s.depth)return;let f=n(bt.join(e,bt.relative(e,c)));if(i&&!i(f))return;let d=bt.dirname(f),g=bt.basename(f),y=this.fsw._getWatchedDir(u.type===Na?f:d);if(iH.has(l)||u.event===K$)if(typeof s.ignored===Cg){let b;try{b=await Ag(f)}catch{}if(this.fsw.closed||this.checkIgnored(f,b))return;SA(u,b)?this.addOrChange(f,c,t,d,y,g,u,s):this.handleEvent(Xu,f,c,t,d,y,g,u,s)}else this.checkExists(f,c,t,d,y,g,u,s);else switch(u.event){case W$:case G$:return this.addOrChange(f,c,t,d,y,g,u,s);case z$:case V$:return this.checkExists(f,c,t,d,y,g,u,s)}},this.fsw._emitRaw);return this.fsw._emitReady(),a}async _handleFsEventsSymlink(e,t,n,i){if(!(this.fsw.closed||this.fsw._symlinkPaths.has(t))){this.fsw._symlinkPaths.set(t,!0),this.fsw._incrReadyCount();try{let s=await wA(e);if(this.fsw.closed)return;if(this.fsw._isIgnored(s))return this.fsw._emitReady();this.fsw._incrReadyCount(),this._addToFsEvents(s||e,o=>{let a=e;return s&&s!==bA?a=o.replace(s,e):o!==bA&&(a=bt.join(e,o)),n(a)},!1,i)}catch(s){if(this.fsw._handleError(s))return this.fsw._emitReady()}}}emitAdd(e,t,n,i,s){let o=n(e),a=t.isDirectory(),c=this.fsw._getWatchedDir(bt.dirname(o)),l=bt.basename(o);a&&this.fsw._getWatchedDir(o),!c.has(l)&&(c.add(l),(!i.ignoreInitial||s===!0)&&this.fsw._emit(a?xA:Tg,o,t))}initWatch(e,t,n,i){if(this.fsw.closed)return;let s=this._watchWithFsEvents(n.watchPath,bt.resolve(e||n.watchPath),i,n.globFilter);this.fsw._addPathCloser(t,s)}async _addToFsEvents(e,t,n,i){if(this.fsw.closed)return;let s=this.fsw.options,o=typeof t===Cg?t:Q$,a=this.fsw._getWatchHelpers(e);try{let c=await rH[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))throw null;if(c.isDirectory()){if(a.globFilter||this.emitAdd(o(e),c,o,s,n),i&&i>s.depth)return;this.fsw._readdirp(a.watchPath,{fileFilter:l=>a.filterPath(l),directoryFilter:l=>a.filterDir(l),...eH(s.depth-(i||0))}).on($$,l=>{if(this.fsw.closed||l.stats.isDirectory()&&!a.filterPath(l))return;let u=bt.join(a.watchPath,l.path),{fullPath:f}=l;if(a.followSymlinks&&l.stats.isSymbolicLink()){let d=s.depth===void 0?void 0:kg(u,bt.resolve(a.watchPath))+1;this._handleFsEventsSymlink(u,f,o,d)}else this.emitAdd(u,l.stats,o,s,n)}).on(q$,Z$).on(H$,()=>{this.fsw._emitReady()})}else this.emitAdd(a.watchPath,c,o,s,n),this.fsw._emitReady()}catch(c){(!c||this.fsw._handleError(c))&&(this.fsw._emitReady(),this.fsw._emitReady())}if(s.persistent&&n!==!0)if(typeof t===Cg)this.initWatch(void 0,e,a,o);else{let c;try{c=await wA(a.watchPath)}catch{}this.initWatch(c,e,a,o)}}};Pg.exports=Rg;Pg.exports.canUse=cH});var LA=A(Vg=>{"use strict";var{EventEmitter:lH}=require("events"),Gg=require("fs"),ue=require("path"),{promisify:PA}=require("util"),uH=fk(),jg=xk().default,pH=Tk(),Ig=fg(),fH=aA(),dH=ug(),hH=yA(),CA=TA(),{EV_ALL:Ng,EV_READY:mH,EV_ADD:Ju,EV_CHANGE:Da,EV_UNLINK:kA,EV_ADD_DIR:gH,EV_UNLINK_DIR:vH,EV_RAW:yH,EV_ERROR:Dg,STR_CLOSE:xH,STR_END:_H,BACK_SLASH_RE:bH,DOUBLE_SLASH_RE:AA,SLASH_OR_BACK_SLASH_RE:wH,DOT_RE:SH,REPLACER_RE:EH,SLASH:Lg,SLASH_SLASH:TH,BRACE_START:CH,BANG:Fg,ONE_DOT:IA,TWO_DOTS:kH,GLOBSTAR:AH,SLASH_GLOBSTAR:Bg,ANYMATCH_OPTS:Ug,STRING_TYPE:zg,FUNCTION_TYPE:RH,EMPTY_STR:qg,EMPTY_FN:OH,isWindows:MH,isMacos:PH,isIBMi:IH}=Gu(),NH=PA(Gg.stat),DH=PA(Gg.readdir),$g=(r=[])=>Array.isArray(r)?r:[r],NA=(r,e=[])=>(r.forEach(t=>{Array.isArray(t)?NA(t,e):e.push(t)}),e),RA=r=>{let e=NA($g(r));if(!e.every(t=>typeof t===zg))throw new TypeError(`Non-string provided as watch path: ${e}`);return e.map(DA)},OA=r=>{let e=r.replace(bH,Lg),t=!1;for(e.startsWith(TH)&&(t=!0);e.match(AA);)e=e.replace(AA,Lg);return t&&(e=Lg+e),e},DA=r=>OA(ue.normalize(OA(r))),MA=(r=qg)=>e=>typeof e!==zg?e:DA(ue.isAbsolute(e)?e:ue.join(r,e)),LH=(r,e)=>ue.isAbsolute(r)?r:r.startsWith(Fg)?Fg+ue.join(e,r.slice(1)):ue.join(e,r),Lr=(r,e)=>r[e]===void 0,Hg=class{constructor(e,t){this.path=e,this._removeWatcher=t,this.items=new Set}add(e){let{items:t}=this;t&&e!==IA&&e!==kH&&t.add(e)}async remove(e){let{items:t}=this;if(!t||(t.delete(e),t.size>0))return;let n=this.path;try{await DH(n)}catch{this._removeWatcher&&this._removeWatcher(ue.dirname(n),ue.basename(n))}}has(e){let{items:t}=this;if(t)return t.has(e)}getChildren(){let{items:e}=this;if(e)return[...e.values()]}dispose(){this.items.clear(),delete this.path,delete this._removeWatcher,delete this.items,Object.freeze(this)}},BH="stat",jH="lstat",Wg=class{constructor(e,t,n,i){this.fsw=i,this.path=e=e.replace(EH,qg),this.watchPath=t,this.fullWatchPath=ue.resolve(t),this.hasGlob=t!==e,e===qg&&(this.hasGlob=!1),this.globSymlink=this.hasGlob&&n?void 0:!1,this.globFilter=this.hasGlob?jg(e,void 0,Ug):!1,this.dirParts=this.getDirParts(e),this.dirParts.forEach(s=>{s.length>1&&s.pop()}),this.followSymlinks=n,this.statMethod=n?BH:jH}checkGlobSymlink(e){return this.globSymlink===void 0&&(this.globSymlink=e.fullParentDir===this.fullWatchPath?!1:{realPath:e.fullParentDir,linkPath:this.fullWatchPath}),this.globSymlink?e.fullPath.replace(this.globSymlink.realPath,this.globSymlink.linkPath):e.fullPath}entryPath(e){return ue.join(this.watchPath,ue.relative(this.watchPath,this.checkGlobSymlink(e)))}filterPath(e){let{stats:t}=e;if(t&&t.isSymbolicLink())return this.filterDir(e);let n=this.entryPath(e);return(this.hasGlob&&typeof this.globFilter===RH?this.globFilter(n):!0)&&this.fsw._isntIgnored(n,t)&&this.fsw._hasReadPermissions(t)}getDirParts(e){if(!this.hasGlob)return[];let t=[];return(e.includes(CH)?fH.expand(e):[e]).forEach(i=>{t.push(ue.relative(this.watchPath,i).split(wH))}),t}filterDir(e){if(this.hasGlob){let t=this.getDirParts(this.checkGlobSymlink(e)),n=!1;this.unmatchedGlob=!this.dirParts.some(i=>i.every((s,o)=>(s===AH&&(n=!0),n||!t[0][o]||jg(s,t[0][o],Ug))))}return!this.unmatchedGlob&&this.fsw._isntIgnored(this.entryPath(e),e.stats)}},Zu=class extends lH{constructor(e){super();let t={};e&&Object.assign(t,e),this._watched=new Map,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._symlinkPaths=new Map,this._streams=new Set,this.closed=!1,Lr(t,"persistent")&&(t.persistent=!0),Lr(t,"ignoreInitial")&&(t.ignoreInitial=!1),Lr(t,"ignorePermissionErrors")&&(t.ignorePermissionErrors=!1),Lr(t,"interval")&&(t.interval=100),Lr(t,"binaryInterval")&&(t.binaryInterval=300),Lr(t,"disableGlobbing")&&(t.disableGlobbing=!1),t.enableBinaryInterval=t.binaryInterval!==t.interval,Lr(t,"useFsEvents")&&(t.useFsEvents=!t.usePolling),CA.canUse()||(t.useFsEvents=!1),Lr(t,"usePolling")&&!t.useFsEvents&&(t.usePolling=PH),IH&&(t.usePolling=!0);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?t.usePolling=!1:c==="true"||c==="1"?t.usePolling=!0:t.usePolling=!!c}let s=process.env.CHOKIDAR_INTERVAL;s&&(t.interval=Number.parseInt(s,10)),Lr(t,"atomic")&&(t.atomic=!t.usePolling&&!t.useFsEvents),t.atomic&&(this._pendingUnlinks=new Map),Lr(t,"followSymlinks")&&(t.followSymlinks=!0),Lr(t,"awaitWriteFinish")&&(t.awaitWriteFinish=!1),t.awaitWriteFinish===!0&&(t.awaitWriteFinish={});let o=t.awaitWriteFinish;o&&(o.stabilityThreshold||(o.stabilityThreshold=2e3),o.pollInterval||(o.pollInterval=100),this._pendingWrites=new Map),t.ignored&&(t.ignored=$g(t.ignored));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=OH,this._readyEmitted=!0,process.nextTick(()=>this.emit(mH)))},this._emitRaw=(...c)=>this.emit(yH,...c),this._readyEmitted=!1,this.options=t,t.useFsEvents?this._fsEventsHandler=new CA(this):this._nodeFsHandler=new hH(this),Object.freeze(t)}add(e,t,n){let{cwd:i,disableGlobbing:s}=this.options;this.closed=!1;let o=RA(e);return i&&(o=o.map(a=>{let c=LH(a,i);return s||!Ig(a)?c:dH(c)})),o=o.filter(a=>a.startsWith(Fg)?(this._ignoredPaths.add(a.slice(1)),!1):(this._ignoredPaths.delete(a),this._ignoredPaths.delete(a+Bg),this._userIgnored=void 0,!0)),this.options.useFsEvents&&this._fsEventsHandler?(this._readyCount||(this._readyCount=o.length),this.options.persistent&&(this._readyCount+=o.length),o.forEach(a=>this._fsEventsHandler._addToFsEvents(a))):(this._readyCount||(this._readyCount=0),this._readyCount+=o.length,Promise.all(o.map(async a=>{let c=await this._nodeFsHandler._addToNodeFs(a,!n,0,0,t);return c&&this._emitReady(),c})).then(a=>{this.closed||a.filter(c=>c).forEach(c=>{this.add(ue.dirname(c),ue.basename(t||c))})})),this}unwatch(e){if(this.closed)return this;let t=RA(e),{cwd:n}=this.options;return t.forEach(i=>{!ue.isAbsolute(i)&&!this._closers.has(i)&&(n&&(i=ue.join(n,i)),i=ue.resolve(i)),this._closePath(i),this._ignoredPaths.add(i),this._watched.has(i)&&this._ignoredPaths.add(i+Bg),this._userIgnored=void 0}),this}close(){if(this.closed)return this._closePromise;this.closed=!0,this.removeAllListeners();let e=[];return this._closers.forEach(t=>t.forEach(n=>{let i=n();i instanceof Promise&&e.push(i)})),this._streams.forEach(t=>t.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(t=>t.dispose()),["closers","watched","streams","symlinkPaths","throttled"].forEach(t=>{this[`_${t}`].clear()}),this._closePromise=e.length?Promise.all(e).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let e={};return this._watched.forEach((t,n)=>{let i=this.options.cwd?ue.relative(this.options.cwd,n):n;e[i||IA]=t.getChildren().sort()}),e}emitWithAll(e,t){this.emit(...t),e!==Dg&&this.emit(Ng,...t)}async _emit(e,t,n,i,s){if(this.closed)return;let o=this.options;MH&&(t=ue.normalize(t)),o.cwd&&(t=ue.relative(o.cwd,t));let a=[e,t];s!==void 0?a.push(n,i,s):i!==void 0?a.push(n,i):n!==void 0&&a.push(n);let c=o.awaitWriteFinish,l;if(c&&(l=this._pendingWrites.get(t)))return l.lastChange=new Date,this;if(o.atomic){if(e===kA)return this._pendingUnlinks.set(t,a),setTimeout(()=>{this._pendingUnlinks.forEach((u,f)=>{this.emit(...u),this.emit(Ng,...u),this._pendingUnlinks.delete(f)})},typeof o.atomic=="number"?o.atomic:100),this;e===Ju&&this._pendingUnlinks.has(t)&&(e=a[0]=Da,this._pendingUnlinks.delete(t))}if(c&&(e===Ju||e===Da)&&this._readyEmitted){let u=(f,d)=>{f?(e=a[0]=Dg,a[1]=f,this.emitWithAll(e,a)):d&&(a.length>2?a[2]=d:a.push(d),this.emitWithAll(e,a))};return this._awaitWriteFinish(t,c.stabilityThreshold,e,u),this}if(e===Da&&!this._throttle(Da,t,50))return this;if(o.alwaysStat&&n===void 0&&(e===Ju||e===gH||e===Da)){let u=o.cwd?ue.join(o.cwd,t):t,f;try{f=await NH(u)}catch{}if(!f||this.closed)return;a.push(f)}return this.emitWithAll(e,a),this}_handleError(e){let t=e&&e.code;return e&&t!=="ENOENT"&&t!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||t!=="EPERM"&&t!=="EACCES")&&this.emit(Dg,e),e||this.closed}_throttle(e,t,n){this._throttled.has(e)||this._throttled.set(e,new Map);let i=this._throttled.get(e),s=i.get(t);if(s)return s.count++,!1;let o,a=()=>{let l=i.get(t),u=l?l.count:0;return i.delete(t),clearTimeout(o),l&&clearTimeout(l.timeoutObject),u};o=setTimeout(a,n);let c={timeoutObject:o,clear:a,count:0};return i.set(t,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(e,t,n,i){let s,o=e;this.options.cwd&&!ue.isAbsolute(e)&&(o=ue.join(this.options.cwd,e));let a=new Date,c=l=>{Gg.stat(o,(u,f)=>{if(u||!this._pendingWrites.has(e)){u&&u.code!=="ENOENT"&&i(u);return}let d=Number(new Date);l&&f.size!==l.size&&(this._pendingWrites.get(e).lastChange=d);let g=this._pendingWrites.get(e);d-g.lastChange>=t?(this._pendingWrites.delete(e),i(void 0,f)):s=setTimeout(c,this.options.awaitWriteFinish.pollInterval,f)})};this._pendingWrites.has(e)||(this._pendingWrites.set(e,{lastChange:a,cancelWait:()=>(this._pendingWrites.delete(e),clearTimeout(s),n)}),s=setTimeout(c,this.options.awaitWriteFinish.pollInterval))}_getGlobIgnored(){return[...this._ignoredPaths.values()]}_isIgnored(e,t){if(this.options.atomic&&SH.test(e))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=this.options.ignored,s=i&&i.map(MA(n)),o=$g(s).filter(c=>typeof c===zg&&!Ig(c)).map(c=>c+Bg),a=this._getGlobIgnored().map(MA(n)).concat(s,o);this._userIgnored=jg(a,void 0,Ug)}return this._userIgnored([e,t])}_isntIgnored(e,t){return!this._isIgnored(e,t)}_getWatchHelpers(e,t){let n=t||this.options.disableGlobbing||!Ig(e)?e:pH(e),i=this.options.followSymlinks;return new Wg(e,n,i,this)}_getWatchedDir(e){this._boundRemove||(this._boundRemove=this._remove.bind(this));let t=ue.resolve(e);return this._watched.has(t)||this._watched.set(t,new Hg(t,this._boundRemove)),this._watched.get(t)}_hasReadPermissions(e){if(this.options.ignorePermissionErrors)return!0;let n=(e&&Number.parseInt(e.mode,10))&511;return!!(4&Number.parseInt(n.toString(8)[0],10))}_remove(e,t,n){let i=ue.join(e,t),s=ue.resolve(i);if(n=n??(this._watched.has(i)||this._watched.has(s)),!this._throttle("remove",i,100))return;!n&&!this.options.useFsEvents&&this._watched.size===1&&this.add(e,t,!0),this._getWatchedDir(i).getChildren().forEach(d=>this._remove(i,d));let c=this._getWatchedDir(e),l=c.has(t);c.remove(t),this._symlinkPaths.has(s)&&this._symlinkPaths.delete(s);let u=i;if(this.options.cwd&&(u=ue.relative(this.options.cwd,i)),this.options.awaitWriteFinish&&this._pendingWrites.has(u)&&this._pendingWrites.get(u).cancelWait()===Ju)return;this._watched.delete(i),this._watched.delete(s);let f=n?vH:kA;l&&!this._isIgnored(i)&&this._emit(f,i),this.options.useFsEvents||this._closePath(i)}_closePath(e){this._closeFile(e);let t=ue.dirname(e);this._getWatchedDir(t).remove(ue.basename(e))}_closeFile(e){let t=this._closers.get(e);t&&(t.forEach(n=>n()),this._closers.delete(e))}_addPathCloser(e,t){if(!t)return;let n=this._closers.get(e);n||(n=[],this._closers.set(e,n)),n.push(t)}_readdirp(e,t){if(this.closed)return;let n={type:Ng,alwaysStat:!0,lstat:!0,...t},i=uH(e,n);return this._streams.add(i),i.once(xH,()=>{i=void 0}),i.once(_H,()=>{i&&(this._streams.delete(i),i=void 0)}),i}};Vg.FSWatcher=Zu;var FH=(r,e)=>{let t=new Zu(e);return t.add(r),t};Vg.watch=FH});var CR=A((S5,ev)=>{"use strict";var ZH=Object.prototype.hasOwnProperty,Bt="~";function Fa(){}Object.create&&(Fa.prototype=Object.create(null),new Fa().__proto__||(Bt=!1));function QH(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function TR(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var s=new QH(t,n||r,i),o=Bt?Bt+e:e;return r._events[o]?r._events[o].fn?r._events[o]=[r._events[o],s]:r._events[o].push(s):(r._events[o]=s,r._eventsCount++),r}function cp(r,e){--r._eventsCount===0?r._events=new Fa:delete r._events[e]}function Rt(){this._events=new Fa,this._eventsCount=0}Rt.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)ZH.call(t,n)&&e.push(Bt?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Rt.prototype.listeners=function(e){var t=Bt?Bt+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,s=n.length,o=new Array(s);i<s;i++)o[i]=n[i].fn;return o};Rt.prototype.listenerCount=function(e){var t=Bt?Bt+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Rt.prototype.emit=function(e,t,n,i,s,o){var a=Bt?Bt+e:e;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,u,f;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,s),!0;case 6:return c.fn.call(c.context,t,n,i,s,o),!0}for(f=1,u=new Array(l-1);f<l;f++)u[f-1]=arguments[f];c.fn.apply(c.context,u)}else{var d=c.length,g;for(f=0;f<d;f++)switch(c[f].once&&this.removeListener(e,c[f].fn,void 0,!0),l){case 1:c[f].fn.call(c[f].context);break;case 2:c[f].fn.call(c[f].context,t);break;case 3:c[f].fn.call(c[f].context,t,n);break;case 4:c[f].fn.call(c[f].context,t,n,i);break;default:if(!u)for(g=1,u=new Array(l-1);g<l;g++)u[g-1]=arguments[g];c[f].fn.apply(c[f].context,u)}}return!0};Rt.prototype.on=function(e,t,n){return TR(this,e,t,n,!1)};Rt.prototype.once=function(e,t,n){return TR(this,e,t,n,!0)};Rt.prototype.removeListener=function(e,t,n,i){var s=Bt?Bt+e:e;if(!this._events[s])return this;if(!t)return cp(this,s),this;var o=this._events[s];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&cp(this,s);else{for(var a=0,c=[],l=o.length;a<l;a++)(o[a].fn!==t||i&&!o[a].once||n&&o[a].context!==n)&&c.push(o[a]);c.length?this._events[s]=c.length===1?c[0]:c:cp(this,s)}return this};Rt.prototype.removeAllListeners=function(e){var t;return e?(t=Bt?Bt+e:e,this._events[t]&&cp(this,t)):(this._events=new Fa,this._eventsCount=0),this};Rt.prototype.off=Rt.prototype.removeListener;Rt.prototype.addListener=Rt.prototype.on;Rt.prefixed=Bt;Rt.EventEmitter=Rt;typeof ev<"u"&&(ev.exports=Rt)});var AR=A((E5,kR)=>{"use strict";kR.exports=function(e,t){if(t=t.split(":")[0],e=+e,!e)return!1;switch(t){case"http":case"ws":return e!==80;case"https":case"wss":return e!==443;case"ftp":return e!==21;case"gopher":return e!==70;case"file":return!1}return e!==0}});var lp=A(OR=>{var Pn=OR,e4=require("url"),RR=require("util")._extend,t4=AR(),r4=/(^|,)\s*upgrade\s*($|,)/i,tv=/^https|wss/;Pn.isSSL=tv;Pn.setupOutgoing=function(r,e,t,n){r.port=e[n||"target"].port||(tv.test(e[n||"target"].protocol)?443:80),["host","hostname","socketPath","pfx","key","passphrase","cert","ca","ciphers","secureProtocol"].forEach(function(a){r[a]=e[n||"target"][a]}),r.method=e.method||t.method,r.headers=RR({},t.headers),e.headers&&RR(r.headers,e.headers),e.auth&&(r.auth=e.auth),e.ca&&(r.ca=e.ca),tv.test(e[n||"target"].protocol)&&(r.rejectUnauthorized=typeof e.secure>"u"?!0:e.secure),r.agent=e.agent||!1,r.localAddress=e.localAddress,r.agent||(r.headers=r.headers||{},(typeof r.headers.connection!="string"||!r4.test(r.headers.connection))&&(r.headers.connection="close"));var i=e[n||"target"],s=i&&e.prependPath!==!1&&i.path||"",o=e.toProxy?t.url:e4.parse(t.url).path||"";return o=e.ignorePath?"":o,r.path=Pn.urlJoin(s,o),e.changeOrigin&&(r.headers.host=t4(r.port,e[n||"target"].protocol)&&!n4(r.host)?r.host+":"+r.port:r.host),r};Pn.setupSocket=function(r){return r.setTimeout(0),r.setNoDelay(!0),r.setKeepAlive(!0,0),r};Pn.getPort=function(r){var e=r.headers.host?r.headers.host.match(/:(\d+)/):"";return e?e[1]:Pn.hasEncryptedConnection(r)?"443":"80"};Pn.hasEncryptedConnection=function(r){return!!(r.connection.encrypted||r.connection.pair)};Pn.urlJoin=function(){var r=Array.prototype.slice.call(arguments),e=r.length-1,t=r[e],n=t.split("?"),i;return r[e]=n.shift(),i=[r.filter(Boolean).join("/").replace(/\/+/g,"/").replace("http:/","http://").replace("https:/","https://")],i.push.apply(i,n),i.join("?")};Pn.rewriteCookieProperty=function r(e,t,n){return Array.isArray(e)?e.map(function(i){return r(i,t,n)}):e.replace(new RegExp("(;\\s*"+n+"=)([^;]+)","i"),function(i,s,o){var a;if(o in t)a=t[o];else if("*"in t)a=t["*"];else return i;return a?s+a:""})};function n4(r){return!!~r.indexOf(":")}});var NR=A((C5,IR)=>{var MR=require("url"),PR=lp(),i4=/^201|30(1|2|7|8)$/;IR.exports={removeChunked:function(e,t,n){e.httpVersion==="1.0"&&delete n.headers["transfer-encoding"]},setConnection:function(e,t,n){e.httpVersion==="1.0"?n.headers.connection=e.headers.connection||"close":e.httpVersion!=="2.0"&&!n.headers.connection&&(n.headers.connection=e.headers.connection||"keep-alive")},setRedirectHostRewrite:function(e,t,n,i){if((i.hostRewrite||i.autoRewrite||i.protocolRewrite)&&n.headers.location&&i4.test(n.statusCode)){var s=MR.parse(i.target),o=MR.parse(n.headers.location);if(s.host!=o.host)return;i.hostRewrite?o.host=i.hostRewrite:i.autoRewrite&&(o.host=e.headers.host),i.protocolRewrite&&(o.protocol=i.protocolRewrite),n.headers.location=o.format()}},writeHeaders:function(e,t,n,i){var s=i.cookieDomainRewrite,o=i.cookiePathRewrite,a=i.preserveHeaderKeyCase,c,l=function(d,g){g!=null&&(s&&d.toLowerCase()==="set-cookie"&&(g=PR.rewriteCookieProperty(g,s,"domain")),o&&d.toLowerCase()==="set-cookie"&&(g=PR.rewriteCookieProperty(g,o,"path")),t.setHeader(String(d).trim(),g))};if(typeof s=="string"&&(s={"*":s}),typeof o=="string"&&(o={"*":o}),a&&n.rawHeaders!=null){c={};for(var u=0;u<n.rawHeaders.length;u+=2){var f=n.rawHeaders[u];c[f.toLowerCase()]=f}}Object.keys(n.headers).forEach(function(d){var g=n.headers[d];a&&c&&(d=c[d]||d),l(d,g)})},writeStatusCode:function(e,t,n){n.statusMessage?(t.statusCode=n.statusCode,t.statusMessage=n.statusMessage):t.statusCode=n.statusCode}}});var LR=A((k5,DR)=>{var Ua;DR.exports=function(){if(!Ua){try{Ua=Oe()("follow-redirects")}catch{}typeof Ua!="function"&&(Ua=function(){})}Ua.apply(null,arguments)}});var qR=A((A5,dv)=>{var $a=require("url"),qa=$a.URL,s4=require("http"),o4=require("https"),ov=require("stream").Writable,av=require("assert"),BR=LR();(function(){var e=typeof process<"u",t=typeof window<"u"&&typeof document<"u",n=Bi(Error.captureStackTrace);!e&&(t||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var cv=!1;try{av(new qa(""))}catch(r){cv=r.code==="ERR_INVALID_URL"}var a4=["Authorization","Proxy-Authorization","Cookie"],c4=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],lv=["abort","aborted","connect","error","socket","timeout"],uv=Object.create(null);lv.forEach(function(r){uv[r]=function(e,t,n){this._redirectable.emit(r,e,t,n)}});var nv=Ha("ERR_INVALID_URL","Invalid URL",TypeError),iv=Ha("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),l4=Ha("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",iv),u4=Ha("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),p4=Ha("ERR_STREAM_WRITE_AFTER_END","write after end"),f4=ov.prototype.destroy||FR;function Kt(r,e){ov.call(this),this._sanitizeOptions(r),this._options=r,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var t=this;this._onNativeResponse=function(n){try{t._processResponse(n)}catch(i){t.emit("error",i instanceof iv?i:new iv({cause:i}))}},this._headerFilter=new RegExp("^(?:"+a4.concat(r.sensitiveHeaders).map(y4).join("|")+")$","i"),this._performRequest()}Kt.prototype=Object.create(ov.prototype);Kt.prototype.abort=function(){fv(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Kt.prototype.destroy=function(r){return fv(this._currentRequest,r),f4.call(this,r),this};Kt.prototype.write=function(r,e,t){if(this._ending)throw new p4;if(!Li(r)&&!g4(r))throw new TypeError("data should be a string, Buffer or Uint8Array");if(Bi(e)&&(t=e,e=null),r.length===0){t&&t();return}this._requestBodyLength+r.length<=this._options.maxBodyLength?(this._requestBodyLength+=r.length,this._requestBodyBuffers.push({data:r,encoding:e}),this._currentRequest.write(r,e,t)):(this.emit("error",new u4),this.abort())};Kt.prototype.end=function(r,e,t){if(Bi(r)?(t=r,r=e=null):Bi(e)&&(t=e,e=null),!r)this._ended=this._ending=!0,this._currentRequest.end(null,null,t);else{var n=this,i=this._currentRequest;this.write(r,e,function(){n._ended=!0,i.end(null,null,t)}),this._ending=!0}};Kt.prototype.setHeader=function(r,e){this._options.headers[r]=e,this._currentRequest.setHeader(r,e)};Kt.prototype.removeHeader=function(r){delete this._options.headers[r],this._currentRequest.removeHeader(r)};Kt.prototype.setTimeout=function(r,e){var t=this;function n(o){o.setTimeout(r),o.removeListener("timeout",o.destroy),o.addListener("timeout",o.destroy)}function i(o){t._timeout&&clearTimeout(t._timeout),t._timeout=setTimeout(function(){t.emit("timeout"),s()},r),n(o)}function s(){t._timeout&&(clearTimeout(t._timeout),t._timeout=null),t.removeListener("abort",s),t.removeListener("error",s),t.removeListener("response",s),t.removeListener("close",s),e&&t.removeListener("timeout",e),t.socket||t._currentRequest.removeListener("socket",i)}return e&&this.on("timeout",e),this.socket?i(this.socket):this._currentRequest.once("socket",i),this.on("socket",n),this.on("abort",s),this.on("error",s),this.on("response",s),this.on("close",s),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(r){Kt.prototype[r]=function(e,t){return this._currentRequest[r](e,t)}});["aborted","connection","socket"].forEach(function(r){Object.defineProperty(Kt.prototype,r,{get:function(){return this._currentRequest[r]}})});Kt.prototype._sanitizeOptions=function(r){if(r.headers||(r.headers={}),m4(r.sensitiveHeaders)||(r.sensitiveHeaders=[]),r.host&&(r.hostname||(r.hostname=r.host),delete r.host),!r.pathname&&r.path){var e=r.path.indexOf("?");e<0?r.pathname=r.path:(r.pathname=r.path.substring(0,e),r.search=r.path.substring(e))}};Kt.prototype._performRequest=function(){var r=this._options.protocol,e=this._options.nativeProtocols[r];if(!e)throw new TypeError("Unsupported protocol "+r);if(this._options.agents){var t=r.slice(0,-1);this._options.agent=this._options.agents[t]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var i of lv)n.on(i,uv[i]);if(this._currentUrl=/^\//.test(this._options.path)?$a.format(this._options):this._options.path,this._isRedirect){var s=0,o=this,a=this._requestBodyBuffers;(function c(l){if(n===o._currentRequest)if(l)o.emit("error",l);else if(s<a.length){var u=a[s++];n.finished||n.write(u.data,u.encoding,c)}else o._ended&&n.end()})()}};Kt.prototype._processResponse=function(r){var e=r.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:r.headers,statusCode:e});var t=r.headers.location;if(!t||this._options.followRedirects===!1||e<300||e>=400){r.responseUrl=this._currentUrl,r.redirects=this._redirects,this.emit("response",r),this._requestBodyBuffers=[];return}if(fv(this._currentRequest),r.destroy(),++this._redirectCount>this._options.maxRedirects)throw new l4;var n,i=this._options.beforeRedirect;i&&(n=Object.assign({Host:r.req.getHeader("host")},this._options.headers));var s=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],rv(/^content-/i,this._options.headers));var o=rv(/^host$/i,this._options.headers),a=pv(this._currentUrl),c=o||a.host,l=/^\w+:/.test(t)?this._currentUrl:$a.format(Object.assign(a,{host:c})),u=d4(t,l);if(BR("redirecting to",u.href),this._isRedirect=!0,sv(u,this._options),(u.protocol!==a.protocol&&u.protocol!=="https:"||u.host!==c&&!h4(u.host,c))&&rv(this._headerFilter,this._options.headers),Bi(i)){var f={headers:r.headers,statusCode:e},d={url:l,method:s,headers:n};i(this._options,f,d),this._sanitizeOptions(this._options)}this._performRequest()};function jR(r){var e={maxRedirects:21,maxBodyLength:10485760},t={};return Object.keys(r).forEach(function(n){var i=n+":",s=t[i]=r[n],o=e[n]=Object.create(s);function a(l,u,f){return v4(l)?l=sv(l):Li(l)?l=sv(pv(l)):(f=u,u=UR(l),l={protocol:i}),Bi(u)&&(f=u,u=null),u=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},l,u),u.nativeProtocols=t,!Li(u.host)&&!Li(u.hostname)&&(u.hostname="::1"),av.equal(u.protocol,i,"protocol mismatch"),BR("options",u),new Kt(u,f)}function c(l,u,f){var d=o.request(l,u,f);return d.end(),d}Object.defineProperties(o,{request:{value:a,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function FR(){}function pv(r){var e;if(cv)e=new qa(r);else if(e=UR($a.parse(r)),!Li(e.protocol))throw new nv({input:r});return e}function d4(r,e){return cv?new qa(r,e):pv($a.resolve(e,r))}function UR(r){if(/^\[/.test(r.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(r.hostname))throw new nv({input:r.href||r});if(/^\[/.test(r.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(r.host))throw new nv({input:r.href||r});return r}function sv(r,e){var t=e||{};for(var n of c4)t[n]=r[n];return t.hostname.startsWith("[")&&(t.hostname=t.hostname.slice(1,-1)),t.port!==""&&(t.port=Number(t.port)),t.path=t.search?t.pathname+t.search:t.pathname,t}function rv(r,e){var t;for(var n in e)r.test(n)&&(t=e[n],delete e[n]);return t===null||typeof t>"u"?void 0:String(t).trim()}function Ha(r,e,t){function n(i){Bi(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,i||{}),this.code=r,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(t||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+r+"]",enumerable:!1}}),n}function fv(r,e){for(var t of lv)r.removeListener(t,uv[t]);r.on("error",FR),r.destroy(e)}function h4(r,e){av(Li(r)&&Li(e));var t=r.length-e.length-1;return t>0&&r[t]==="."&&r.endsWith(e)}function m4(r){return r instanceof Array}function Li(r){return typeof r=="string"||r instanceof String}function Bi(r){return typeof r=="function"}function g4(r){return typeof r=="object"&&"length"in r}function v4(r){return qa&&r instanceof qa}function y4(r){return r.replace(/[\]\\/()*+?.$]/g,"\\$&")}dv.exports=jR({http:s4,https:o4});dv.exports.wrap=jR});var HR=A((R5,$R)=>{var x4=require("http"),_4=require("https"),Wa=NR(),up=lp(),b4=qR();Wa=Object.keys(Wa).map(function(r){return Wa[r]});var w4={http:x4,https:_4};$R.exports={deleteLength:function(e,t,n){(e.method==="DELETE"||e.method==="OPTIONS")&&!e.headers["content-length"]&&(e.headers["content-length"]="0",delete e.headers["transfer-encoding"])},timeout:function(e,t,n){n.timeout&&e.socket.setTimeout(n.timeout)},XHeaders:function(e,t,n){if(n.xfwd){var i=e.isSpdy||up.hasEncryptedConnection(e),s={for:e.connection.remoteAddress||e.socket.remoteAddress,port:up.getPort(e),proto:i?"https":"http"};["for","port","proto"].forEach(function(o){e.headers["x-forwarded-"+o]=(e.headers["x-forwarded-"+o]||"")+(e.headers["x-forwarded-"+o]?",":"")+s[o]}),e.headers["x-forwarded-host"]=e.headers["x-forwarded-host"]||e.headers.host||""}},stream:function(e,t,n,i,s,o){s.emit("start",e,t,n.target||n.forward);var a=n.followRedirects?b4:w4,c=a.http,l=a.https;if(n.forward){var u=(n.forward.protocol==="https:"?l:c).request(up.setupOutgoing(n.ssl||{},n,e,"forward")),f=y(u,n.forward);if(e.on("error",f),u.on("error",f),(n.buffer||e).pipe(u),!n.target)return t.end()}var d=(n.target.protocol==="https:"?l:c).request(up.setupOutgoing(n.ssl||{},n,e));d.on("socket",function(b){s&&!d.getHeader("expect")&&s.emit("proxyReq",d,e,t,n)}),n.proxyTimeout&&d.setTimeout(n.proxyTimeout,function(){d.abort()}),e.on("aborted",function(){d.abort()});var g=y(d,n.target);e.on("error",g),d.on("error",g);function y(b,C){return function(O){if(e.socket.destroyed&&O.code==="ECONNRESET")return s.emit("econnreset",O,e,t,C),b.abort();o?o(O,e,t,C):s.emit("error",O,e,t,C)}}(n.buffer||e).pipe(d),d.on("response",function(b){if(s&&s.emit("proxyRes",b,e,t),!t.headersSent&&!n.selfHandleResponse)for(var C=0;C<Wa.length&&!Wa[C](e,t,b,n);C++);t.finished?s&&s.emit("end",e,t,b):(b.on("end",function(){s&&s.emit("end",e,t,b)}),n.selfHandleResponse||b.pipe(t))})}}});var GR=A((O5,WR)=>{var S4=require("http"),E4=require("https"),ho=lp();WR.exports={checkMethodAndHeader:function(e,t){if(e.method!=="GET"||!e.headers.upgrade||e.headers.upgrade.toLowerCase()!=="websocket")return t.destroy(),!0},XHeaders:function(e,t,n){if(n.xfwd){var i={for:e.connection.remoteAddress||e.socket.remoteAddress,port:ho.getPort(e),proto:ho.hasEncryptedConnection(e)?"wss":"ws"};["for","port","proto"].forEach(function(s){e.headers["x-forwarded-"+s]=(e.headers["x-forwarded-"+s]||"")+(e.headers["x-forwarded-"+s]?",":"")+i[s]})}},stream:function(e,t,n,i,s,o){var a=function(u,f){return Object.keys(f).reduce(function(d,g){var y=f[g];if(!Array.isArray(y))return d.push(g+": "+y),d;for(var b=0;b<y.length;b++)d.push(g+": "+y[b]);return d},[u]).join(`\r
|
|
105
|
+
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var iA=A((BV,nA)=>{"use strict";var Qq=$u(),{MAX_LENGTH:eA,CHAR_BACKSLASH:yg,CHAR_BACKTICK:e$,CHAR_COMMA:t$,CHAR_DOT:r$,CHAR_LEFT_PARENTHESES:n$,CHAR_RIGHT_PARENTHESES:i$,CHAR_LEFT_CURLY_BRACE:s$,CHAR_RIGHT_CURLY_BRACE:o$,CHAR_LEFT_SQUARE_BRACKET:tA,CHAR_RIGHT_SQUARE_BRACKET:rA,CHAR_DOUBLE_QUOTE:a$,CHAR_SINGLE_QUOTE:c$,CHAR_NO_BREAK_SPACE:l$,CHAR_ZERO_WIDTH_NOBREAK_SPACE:u$}=Qk(),p$=(r,e={})=>{if(typeof r!="string")throw new TypeError("Expected a string");let t=e||{},n=typeof t.maxLength=="number"?Math.min(eA,t.maxLength):eA;if(r.length>n)throw new SyntaxError(`Input length (${r.length}), exceeds max characters (${n})`);let i={type:"root",input:r,nodes:[]},s=[i],o=i,a=i,c=0,l=r.length,u=0,f=0,d,g=()=>r[u++],y=b=>{if(b.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&b.type==="text"){a.value+=b.value;return}return o.nodes.push(b),b.parent=o,b.prev=a,a=b,b};for(y({type:"bos"});u<l;)if(o=s[s.length-1],d=g(),!(d===u$||d===l$)){if(d===yg){y({type:"text",value:(e.keepEscaping?d:"")+g()});continue}if(d===rA){y({type:"text",value:"\\"+d});continue}if(d===tA){c++;let b;for(;u<l&&(b=g());){if(d+=b,b===tA){c++;continue}if(b===yg){d+=g();continue}if(b===rA&&(c--,c===0))break}y({type:"text",value:d});continue}if(d===n$){o=y({type:"paren",nodes:[]}),s.push(o),y({type:"text",value:d});continue}if(d===i$){if(o.type!=="paren"){y({type:"text",value:d});continue}o=s.pop(),y({type:"text",value:d}),o=s[s.length-1];continue}if(d===a$||d===c$||d===e$){let b=d,C;for(e.keepQuotes!==!0&&(d="");u<l&&(C=g());){if(C===yg){d+=C+g();continue}if(C===b){e.keepQuotes===!0&&(d+=C);break}d+=C}y({type:"text",value:d});continue}if(d===s$){f++;let C={type:"brace",open:!0,close:!1,dollar:a.value&&a.value.slice(-1)==="$"||o.dollar===!0,depth:f,commas:0,ranges:0,nodes:[]};o=y(C),s.push(o),y({type:"open",value:d});continue}if(d===o$){if(o.type!=="brace"){y({type:"text",value:d});continue}let b="close";o=s.pop(),o.close=!0,y({type:b,value:d}),f--,o=s[s.length-1];continue}if(d===t$&&f>0){if(o.ranges>0){o.ranges=0;let b=o.nodes.shift();o.nodes=[b,{type:"text",value:Qq(o)}]}y({type:"comma",value:d}),o.commas++;continue}if(d===r$&&f>0&&o.commas===0){let b=o.nodes;if(f===0||b.length===0){y({type:"text",value:d});continue}if(a.type==="dot"){if(o.range=[],a.value+=d,a.type="range",o.nodes.length!==3&&o.nodes.length!==5){o.invalid=!0,o.ranges=0,a.type="text";continue}o.ranges++,o.args=[];continue}if(a.type==="range"){b.pop();let C=b[b.length-1];C.value+=a.value+d,a=C,o.ranges--;continue}y({type:"dot",value:d});continue}y({type:"text",value:d})}do if(o=s.pop(),o.type!=="root"){o.nodes.forEach(R=>{R.nodes||(R.type==="open"&&(R.isOpen=!0),R.type==="close"&&(R.isClose=!0),R.nodes||(R.type="text"),R.invalid=!0)});let b=s[s.length-1],C=b.nodes.indexOf(o);b.nodes.splice(C,1,...o.nodes)}while(s.length>0);return y({type:"eos"}),i};nA.exports=p$});var aA=A((jV,oA)=>{"use strict";var sA=$u(),f$=Kk(),d$=Jk(),h$=iA(),ir=(r,e={})=>{let t=[];if(Array.isArray(r))for(let n of r){let i=ir.create(n,e);Array.isArray(i)?t.push(...i):t.push(i)}else t=[].concat(ir.create(r,e));return e&&e.expand===!0&&e.nodupes===!0&&(t=[...new Set(t)]),t};ir.parse=(r,e={})=>h$(r,e);ir.stringify=(r,e={})=>sA(typeof r=="string"?ir.parse(r,e):r,e);ir.compile=(r,e={})=>(typeof r=="string"&&(r=ir.parse(r,e)),f$(r,e));ir.expand=(r,e={})=>{typeof r=="string"&&(r=ir.parse(r,e));let t=d$(r,e);return e.noempty===!0&&(t=t.filter(Boolean)),e.nodupes===!0&&(t=[...new Set(t)]),t};ir.create=(r,e={})=>r===""||r.length<3?[r]:e.expand!==!0?ir.compile(r,e):ir.expand(r,e);oA.exports=ir});var cA=A((FV,m$)=>{m$.exports=["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]});var uA=A((UV,lA)=>{lA.exports=cA()});var fA=A((qV,pA)=>{"use strict";var g$=require("path"),v$=uA(),y$=new Set(v$);pA.exports=r=>y$.has(g$.extname(r).slice(1).toLowerCase())});var Gu=A(Y=>{"use strict";var{sep:x$}=require("path"),{platform:xg}=process,_$=require("os");Y.EV_ALL="all";Y.EV_READY="ready";Y.EV_ADD="add";Y.EV_CHANGE="change";Y.EV_ADD_DIR="addDir";Y.EV_UNLINK="unlink";Y.EV_UNLINK_DIR="unlinkDir";Y.EV_RAW="raw";Y.EV_ERROR="error";Y.STR_DATA="data";Y.STR_END="end";Y.STR_CLOSE="close";Y.FSEVENT_CREATED="created";Y.FSEVENT_MODIFIED="modified";Y.FSEVENT_DELETED="deleted";Y.FSEVENT_MOVED="moved";Y.FSEVENT_CLONED="cloned";Y.FSEVENT_UNKNOWN="unknown";Y.FSEVENT_FLAG_MUST_SCAN_SUBDIRS=1;Y.FSEVENT_TYPE_FILE="file";Y.FSEVENT_TYPE_DIRECTORY="directory";Y.FSEVENT_TYPE_SYMLINK="symlink";Y.KEY_LISTENERS="listeners";Y.KEY_ERR="errHandlers";Y.KEY_RAW="rawEmitters";Y.HANDLER_KEYS=[Y.KEY_LISTENERS,Y.KEY_ERR,Y.KEY_RAW];Y.DOT_SLASH=`.${x$}`;Y.BACK_SLASH_RE=/\\/g;Y.DOUBLE_SLASH_RE=/\/\//;Y.SLASH_OR_BACK_SLASH_RE=/[/\\]/;Y.DOT_RE=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/;Y.REPLACER_RE=/^\.[/\\]/;Y.SLASH="/";Y.SLASH_SLASH="//";Y.BRACE_START="{";Y.BANG="!";Y.ONE_DOT=".";Y.TWO_DOTS="..";Y.STAR="*";Y.GLOBSTAR="**";Y.ROOT_GLOBSTAR="/**/*";Y.SLASH_GLOBSTAR="/**";Y.DIR_SUFFIX="Dir";Y.ANYMATCH_OPTS={dot:!0};Y.STRING_TYPE="string";Y.FUNCTION_TYPE="function";Y.EMPTY_STR="";Y.EMPTY_FN=()=>{};Y.IDENTITY_FN=r=>r;Y.isWindows=xg==="win32";Y.isMacos=xg==="darwin";Y.isLinux=xg==="linux";Y.isIBMi=_$.type()==="OS400"});var yA=A((HV,vA)=>{"use strict";var Rn=require("fs"),_t=require("path"),{promisify:Ia}=require("util"),b$=fA(),{isWindows:w$,isLinux:S$,EMPTY_FN:E$,EMPTY_STR:T$,KEY_LISTENERS:io,KEY_ERR:_g,KEY_RAW:Oa,HANDLER_KEYS:C$,EV_CHANGE:Vu,EV_ADD:zu,EV_ADD_DIR:k$,EV_ERROR:hA,STR_DATA:A$,STR_END:R$,BRACE_START:O$,STAR:M$}=Gu(),P$="watch",I$=Ia(Rn.open),mA=Ia(Rn.stat),N$=Ia(Rn.lstat),D$=Ia(Rn.close),bg=Ia(Rn.realpath),L$={lstat:N$,stat:mA},Sg=(r,e)=>{r instanceof Set?r.forEach(e):e(r)},Ma=(r,e,t)=>{let n=r[e];n instanceof Set||(r[e]=n=new Set([n])),n.add(t)},B$=r=>e=>{let t=r[e];t instanceof Set?t.clear():delete r[e]},Pa=(r,e,t)=>{let n=r[e];n instanceof Set?n.delete(t):n===t&&delete r[e]},gA=r=>r instanceof Set?r.size===0:!r,Ku=new Map;function dA(r,e,t,n,i){let s=(o,a)=>{t(r),i(o,a,{watchedPath:r}),a&&r!==a&&Yu(_t.resolve(r,a),io,_t.join(r,a))};try{return Rn.watch(r,e,s)}catch(o){n(o)}}var Yu=(r,e,t,n,i)=>{let s=Ku.get(r);s&&Sg(s[e],o=>{o(t,n,i)})},j$=(r,e,t,n)=>{let{listener:i,errHandler:s,rawEmitter:o}=n,a=Ku.get(e),c;if(!t.persistent)return c=dA(r,t,i,s,o),c.close.bind(c);if(a)Ma(a,io,i),Ma(a,_g,s),Ma(a,Oa,o);else{if(c=dA(r,t,Yu.bind(null,e,io),s,Yu.bind(null,e,Oa)),!c)return;c.on(hA,async l=>{let u=Yu.bind(null,e,_g);if(a.watcherUnusable=!0,w$&&l.code==="EPERM")try{let f=await I$(r,"r");await D$(f),u(l)}catch{}else u(l)}),a={listeners:i,errHandlers:s,rawEmitters:o,watcher:c},Ku.set(e,a)}return()=>{Pa(a,io,i),Pa(a,_g,s),Pa(a,Oa,o),gA(a.listeners)&&(a.watcher.close(),Ku.delete(e),C$.forEach(B$(a)),a.watcher=void 0,Object.freeze(a))}},wg=new Map,F$=(r,e,t,n)=>{let{listener:i,rawEmitter:s}=n,o=wg.get(e),a=new Set,c=new Set,l=o&&o.options;return l&&(l.persistent<t.persistent||l.interval>t.interval)&&(a=o.listeners,c=o.rawEmitters,Rn.unwatchFile(e),o=void 0),o?(Ma(o,io,i),Ma(o,Oa,s)):(o={listeners:i,rawEmitters:s,options:t,watcher:Rn.watchFile(e,t,(u,f)=>{Sg(o.rawEmitters,g=>{g(Vu,e,{curr:u,prev:f})});let d=u.mtimeMs;(u.size!==f.size||d>f.mtimeMs||d===0)&&Sg(o.listeners,g=>g(r,u))})},wg.set(e,o)),()=>{Pa(o,io,i),Pa(o,Oa,s),gA(o.listeners)&&(wg.delete(e),Rn.unwatchFile(e),o.options=o.watcher=void 0,Object.freeze(o))}},Eg=class{constructor(e){this.fsw=e,this._boundHandleError=t=>e._handleError(t)}_watchWithNodeFs(e,t){let n=this.fsw.options,i=_t.dirname(e),s=_t.basename(e);this.fsw._getWatchedDir(i).add(s);let a=_t.resolve(e),c={persistent:n.persistent};t||(t=E$);let l;return n.usePolling?(c.interval=n.enableBinaryInterval&&b$(s)?n.binaryInterval:n.interval,l=F$(e,a,c,{listener:t,rawEmitter:this.fsw._emitRaw})):l=j$(e,a,c,{listener:t,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw}),l}_handleFile(e,t,n){if(this.fsw.closed)return;let i=_t.dirname(e),s=_t.basename(e),o=this.fsw._getWatchedDir(i),a=t;if(o.has(s))return;let c=async(u,f)=>{if(this.fsw._throttle(P$,e,5)){if(!f||f.mtimeMs===0)try{let d=await mA(e);if(this.fsw.closed)return;let g=d.atimeMs,y=d.mtimeMs;(!g||g<=y||y!==a.mtimeMs)&&this.fsw._emit(Vu,e,d),S$&&a.ino!==d.ino?(this.fsw._closeFile(u),a=d,this.fsw._addPathCloser(u,this._watchWithNodeFs(e,c))):a=d}catch{this.fsw._remove(i,s)}else if(o.has(s)){let d=f.atimeMs,g=f.mtimeMs;(!d||d<=g||g!==a.mtimeMs)&&this.fsw._emit(Vu,e,f),a=f}}},l=this._watchWithNodeFs(e,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(e)){if(!this.fsw._throttle(zu,e,0))return;this.fsw._emit(zu,e,t)}return l}async _handleSymlink(e,t,n,i){if(this.fsw.closed)return;let s=e.fullPath,o=this.fsw._getWatchedDir(t);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await bg(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(o.has(i)?this.fsw._symlinkPaths.get(s)!==a&&(this.fsw._symlinkPaths.set(s,a),this.fsw._emit(Vu,n,e.stats)):(o.add(i),this.fsw._symlinkPaths.set(s,a),this.fsw._emit(zu,n,e.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(s))return!0;this.fsw._symlinkPaths.set(s,!0)}_handleRead(e,t,n,i,s,o,a){if(e=_t.join(e,T$),!n.hasGlob&&(a=this.fsw._throttle("readdir",e,1e3),!a))return;let c=this.fsw._getWatchedDir(n.path),l=new Set,u=this.fsw._readdirp(e,{fileFilter:f=>n.filterPath(f),directoryFilter:f=>n.filterDir(f),depth:0}).on(A$,async f=>{if(this.fsw.closed){u=void 0;return}let d=f.path,g=_t.join(e,d);if(l.add(d),!(f.stats.isSymbolicLink()&&await this._handleSymlink(f,e,g,d))){if(this.fsw.closed){u=void 0;return}(d===i||!i&&!c.has(d))&&(this.fsw._incrReadyCount(),g=_t.join(s,_t.relative(s,g)),this._addToNodeFs(g,t,n,o+1))}}).on(hA,this._boundHandleError);return new Promise(f=>u.once(R$,()=>{if(this.fsw.closed){u=void 0;return}let d=a?a.clear():!1;f(),c.getChildren().filter(g=>g!==e&&!l.has(g)&&(!n.hasGlob||n.filterPath({fullPath:_t.resolve(e,g)}))).forEach(g=>{this.fsw._remove(e,g)}),u=void 0,d&&this._handleRead(e,!1,n,i,s,o,a)}))}async _handleDir(e,t,n,i,s,o,a){let c=this.fsw._getWatchedDir(_t.dirname(e)),l=c.has(_t.basename(e));!(n&&this.fsw.options.ignoreInitial)&&!s&&!l&&(!o.hasGlob||o.globFilter(e))&&this.fsw._emit(k$,e,t),c.add(_t.basename(e)),this.fsw._getWatchedDir(e);let u,f,d=this.fsw.options.depth;if((d==null||i<=d)&&!this.fsw._symlinkPaths.has(a)){if(!s&&(await this._handleRead(e,n,o,s,e,i,u),this.fsw.closed))return;f=this._watchWithNodeFs(e,(g,y)=>{y&&y.mtimeMs===0||this._handleRead(g,!1,o,s,e,i,u)})}return f}async _addToNodeFs(e,t,n,i,s){let o=this.fsw._emitReady;if(this.fsw._isIgnored(e)||this.fsw.closed)return o(),!1;let a=this.fsw._getWatchHelpers(e,i);!a.hasGlob&&n&&(a.hasGlob=n.hasGlob,a.globFilter=n.globFilter,a.filterPath=c=>n.filterPath(c),a.filterDir=c=>n.filterDir(c));try{let c=await L$[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return o(),!1;let l=this.fsw.options.followSymlinks&&!e.includes(M$)&&!e.includes(O$),u;if(c.isDirectory()){let f=_t.resolve(e),d=l?await bg(e):e;if(this.fsw.closed||(u=await this._handleDir(a.watchPath,c,t,i,s,a,d),this.fsw.closed))return;f!==d&&d!==void 0&&this.fsw._symlinkPaths.set(f,d)}else if(c.isSymbolicLink()){let f=l?await bg(e):e;if(this.fsw.closed)return;let d=_t.dirname(a.watchPath);if(this.fsw._getWatchedDir(d).add(a.watchPath),this.fsw._emit(zu,a.watchPath,c),u=await this._handleDir(d,c,t,i,e,a,f),this.fsw.closed)return;f!==void 0&&this.fsw._symlinkPaths.set(_t.resolve(e),f)}else u=this._handleFile(a.watchPath,c,t);return o(),this.fsw._addPathCloser(e,u),!1}catch(c){if(this.fsw._handleError(c))return o(),e}}};vA.exports=Eg});var TA=A((WV,Pg)=>{"use strict";var Og=require("fs"),bt=require("path"),{promisify:Mg}=require("util"),so;try{so=require("fsevents")}catch(r){process.env.CHOKIDAR_PRINT_FSEVENTS_REQUIRE_ERROR&&console.error(r)}if(so){let r=process.version.match(/v(\d+)\.(\d+)/);if(r&&r[1]&&r[2]){let e=Number.parseInt(r[1],10),t=Number.parseInt(r[2],10);e===8&&t<16&&(so=void 0)}}var{EV_ADD:Tg,EV_CHANGE:U$,EV_ADD_DIR:xA,EV_UNLINK:Xu,EV_ERROR:q$,STR_DATA:$$,STR_END:H$,FSEVENT_CREATED:W$,FSEVENT_MODIFIED:G$,FSEVENT_DELETED:z$,FSEVENT_MOVED:V$,FSEVENT_UNKNOWN:K$,FSEVENT_FLAG_MUST_SCAN_SUBDIRS:Y$,FSEVENT_TYPE_FILE:X$,FSEVENT_TYPE_DIRECTORY:Na,FSEVENT_TYPE_SYMLINK:EA,ROOT_GLOBSTAR:_A,DIR_SUFFIX:J$,DOT_SLASH:bA,FUNCTION_TYPE:Cg,EMPTY_FN:Z$,IDENTITY_FN:Q$}=Gu(),eH=r=>isNaN(r)?{}:{depth:r},Ag=Mg(Og.stat),tH=Mg(Og.lstat),wA=Mg(Og.realpath),rH={stat:Ag,lstat:tH},Pi=new Map,nH=10,iH=new Set([69888,70400,71424,72704,73472,131328,131840,262912]),sH=(r,e)=>({stop:so.watch(r,e)});function oH(r,e,t,n){let i=bt.extname(e)?bt.dirname(e):e,s=bt.dirname(i),o=Pi.get(i);aH(s)&&(i=s);let a=bt.resolve(r),c=a!==e,l=(f,d,g)=>{c&&(f=f.replace(e,a)),(f===a||!f.indexOf(a+bt.sep))&&t(f,d,g)},u=!1;for(let f of Pi.keys())if(e.indexOf(bt.resolve(f)+bt.sep)===0){i=f,o=Pi.get(i),u=!0;break}return o||u?o.listeners.add(l):(o={listeners:new Set([l]),rawEmitter:n,watcher:sH(i,(f,d)=>{if(!o.listeners.size||d&Y$)return;let g=so.getInfo(f,d);o.listeners.forEach(y=>{y(f,d,g)}),o.rawEmitter(g.event,f,g)})},Pi.set(i,o)),()=>{let f=o.listeners;if(f.delete(l),!f.size&&(Pi.delete(i),o.watcher))return o.watcher.stop().then(()=>{o.rawEmitter=o.watcher=void 0,Object.freeze(o)})}}var aH=r=>{let e=0;for(let t of Pi.keys())if(t.indexOf(r)===0&&(e++,e>=nH))return!0;return!1},cH=()=>so&&Pi.size<128,kg=(r,e)=>{let t=0;for(;!r.indexOf(e)&&(r=bt.dirname(r))!==e;)t++;return t},SA=(r,e)=>r.type===Na&&e.isDirectory()||r.type===EA&&e.isSymbolicLink()||r.type===X$&&e.isFile(),Rg=class{constructor(e){this.fsw=e}checkIgnored(e,t){let n=this.fsw._ignoredPaths;if(this.fsw._isIgnored(e,t))return n.add(e),t&&t.isDirectory()&&n.add(e+_A),!0;n.delete(e),n.delete(e+_A)}addOrChange(e,t,n,i,s,o,a,c){let l=s.has(o)?U$:Tg;this.handleEvent(l,e,t,n,i,s,o,a,c)}async checkExists(e,t,n,i,s,o,a,c){try{let l=await Ag(e);if(this.fsw.closed)return;SA(a,l)?this.addOrChange(e,t,n,i,s,o,a,c):this.handleEvent(Xu,e,t,n,i,s,o,a,c)}catch(l){l.code==="EACCES"?this.addOrChange(e,t,n,i,s,o,a,c):this.handleEvent(Xu,e,t,n,i,s,o,a,c)}}handleEvent(e,t,n,i,s,o,a,c,l){if(!(this.fsw.closed||this.checkIgnored(t)))if(e===Xu){let u=c.type===Na;(u||o.has(a))&&this.fsw._remove(s,a,u)}else{if(e===Tg){if(c.type===Na&&this.fsw._getWatchedDir(t),c.type===EA&&l.followSymlinks){let f=l.depth===void 0?void 0:kg(n,i)+1;return this._addToFsEvents(t,!1,!0,f)}this.fsw._getWatchedDir(s).add(a)}let u=c.type===Na?e+J$:e;this.fsw._emit(u,t),u===xA&&this._addToFsEvents(t,!1,!0)}}_watchWithFsEvents(e,t,n,i){if(this.fsw.closed||this.fsw._isIgnored(e))return;let s=this.fsw.options,a=oH(e,t,async(c,l,u)=>{if(this.fsw.closed||s.depth!==void 0&&kg(c,t)>s.depth)return;let f=n(bt.join(e,bt.relative(e,c)));if(i&&!i(f))return;let d=bt.dirname(f),g=bt.basename(f),y=this.fsw._getWatchedDir(u.type===Na?f:d);if(iH.has(l)||u.event===K$)if(typeof s.ignored===Cg){let b;try{b=await Ag(f)}catch{}if(this.fsw.closed||this.checkIgnored(f,b))return;SA(u,b)?this.addOrChange(f,c,t,d,y,g,u,s):this.handleEvent(Xu,f,c,t,d,y,g,u,s)}else this.checkExists(f,c,t,d,y,g,u,s);else switch(u.event){case W$:case G$:return this.addOrChange(f,c,t,d,y,g,u,s);case z$:case V$:return this.checkExists(f,c,t,d,y,g,u,s)}},this.fsw._emitRaw);return this.fsw._emitReady(),a}async _handleFsEventsSymlink(e,t,n,i){if(!(this.fsw.closed||this.fsw._symlinkPaths.has(t))){this.fsw._symlinkPaths.set(t,!0),this.fsw._incrReadyCount();try{let s=await wA(e);if(this.fsw.closed)return;if(this.fsw._isIgnored(s))return this.fsw._emitReady();this.fsw._incrReadyCount(),this._addToFsEvents(s||e,o=>{let a=e;return s&&s!==bA?a=o.replace(s,e):o!==bA&&(a=bt.join(e,o)),n(a)},!1,i)}catch(s){if(this.fsw._handleError(s))return this.fsw._emitReady()}}}emitAdd(e,t,n,i,s){let o=n(e),a=t.isDirectory(),c=this.fsw._getWatchedDir(bt.dirname(o)),l=bt.basename(o);a&&this.fsw._getWatchedDir(o),!c.has(l)&&(c.add(l),(!i.ignoreInitial||s===!0)&&this.fsw._emit(a?xA:Tg,o,t))}initWatch(e,t,n,i){if(this.fsw.closed)return;let s=this._watchWithFsEvents(n.watchPath,bt.resolve(e||n.watchPath),i,n.globFilter);this.fsw._addPathCloser(t,s)}async _addToFsEvents(e,t,n,i){if(this.fsw.closed)return;let s=this.fsw.options,o=typeof t===Cg?t:Q$,a=this.fsw._getWatchHelpers(e);try{let c=await rH[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))throw null;if(c.isDirectory()){if(a.globFilter||this.emitAdd(o(e),c,o,s,n),i&&i>s.depth)return;this.fsw._readdirp(a.watchPath,{fileFilter:l=>a.filterPath(l),directoryFilter:l=>a.filterDir(l),...eH(s.depth-(i||0))}).on($$,l=>{if(this.fsw.closed||l.stats.isDirectory()&&!a.filterPath(l))return;let u=bt.join(a.watchPath,l.path),{fullPath:f}=l;if(a.followSymlinks&&l.stats.isSymbolicLink()){let d=s.depth===void 0?void 0:kg(u,bt.resolve(a.watchPath))+1;this._handleFsEventsSymlink(u,f,o,d)}else this.emitAdd(u,l.stats,o,s,n)}).on(q$,Z$).on(H$,()=>{this.fsw._emitReady()})}else this.emitAdd(a.watchPath,c,o,s,n),this.fsw._emitReady()}catch(c){(!c||this.fsw._handleError(c))&&(this.fsw._emitReady(),this.fsw._emitReady())}if(s.persistent&&n!==!0)if(typeof t===Cg)this.initWatch(void 0,e,a,o);else{let c;try{c=await wA(a.watchPath)}catch{}this.initWatch(c,e,a,o)}}};Pg.exports=Rg;Pg.exports.canUse=cH});var LA=A(Vg=>{"use strict";var{EventEmitter:lH}=require("events"),Gg=require("fs"),pe=require("path"),{promisify:PA}=require("util"),uH=fk(),jg=xk().default,pH=Tk(),Ig=fg(),fH=aA(),dH=ug(),hH=yA(),CA=TA(),{EV_ALL:Ng,EV_READY:mH,EV_ADD:Ju,EV_CHANGE:Da,EV_UNLINK:kA,EV_ADD_DIR:gH,EV_UNLINK_DIR:vH,EV_RAW:yH,EV_ERROR:Dg,STR_CLOSE:xH,STR_END:_H,BACK_SLASH_RE:bH,DOUBLE_SLASH_RE:AA,SLASH_OR_BACK_SLASH_RE:wH,DOT_RE:SH,REPLACER_RE:EH,SLASH:Lg,SLASH_SLASH:TH,BRACE_START:CH,BANG:Fg,ONE_DOT:IA,TWO_DOTS:kH,GLOBSTAR:AH,SLASH_GLOBSTAR:Bg,ANYMATCH_OPTS:Ug,STRING_TYPE:zg,FUNCTION_TYPE:RH,EMPTY_STR:qg,EMPTY_FN:OH,isWindows:MH,isMacos:PH,isIBMi:IH}=Gu(),NH=PA(Gg.stat),DH=PA(Gg.readdir),$g=(r=[])=>Array.isArray(r)?r:[r],NA=(r,e=[])=>(r.forEach(t=>{Array.isArray(t)?NA(t,e):e.push(t)}),e),RA=r=>{let e=NA($g(r));if(!e.every(t=>typeof t===zg))throw new TypeError(`Non-string provided as watch path: ${e}`);return e.map(DA)},OA=r=>{let e=r.replace(bH,Lg),t=!1;for(e.startsWith(TH)&&(t=!0);e.match(AA);)e=e.replace(AA,Lg);return t&&(e=Lg+e),e},DA=r=>OA(pe.normalize(OA(r))),MA=(r=qg)=>e=>typeof e!==zg?e:DA(pe.isAbsolute(e)?e:pe.join(r,e)),LH=(r,e)=>pe.isAbsolute(r)?r:r.startsWith(Fg)?Fg+pe.join(e,r.slice(1)):pe.join(e,r),Lr=(r,e)=>r[e]===void 0,Hg=class{constructor(e,t){this.path=e,this._removeWatcher=t,this.items=new Set}add(e){let{items:t}=this;t&&e!==IA&&e!==kH&&t.add(e)}async remove(e){let{items:t}=this;if(!t||(t.delete(e),t.size>0))return;let n=this.path;try{await DH(n)}catch{this._removeWatcher&&this._removeWatcher(pe.dirname(n),pe.basename(n))}}has(e){let{items:t}=this;if(t)return t.has(e)}getChildren(){let{items:e}=this;if(e)return[...e.values()]}dispose(){this.items.clear(),delete this.path,delete this._removeWatcher,delete this.items,Object.freeze(this)}},BH="stat",jH="lstat",Wg=class{constructor(e,t,n,i){this.fsw=i,this.path=e=e.replace(EH,qg),this.watchPath=t,this.fullWatchPath=pe.resolve(t),this.hasGlob=t!==e,e===qg&&(this.hasGlob=!1),this.globSymlink=this.hasGlob&&n?void 0:!1,this.globFilter=this.hasGlob?jg(e,void 0,Ug):!1,this.dirParts=this.getDirParts(e),this.dirParts.forEach(s=>{s.length>1&&s.pop()}),this.followSymlinks=n,this.statMethod=n?BH:jH}checkGlobSymlink(e){return this.globSymlink===void 0&&(this.globSymlink=e.fullParentDir===this.fullWatchPath?!1:{realPath:e.fullParentDir,linkPath:this.fullWatchPath}),this.globSymlink?e.fullPath.replace(this.globSymlink.realPath,this.globSymlink.linkPath):e.fullPath}entryPath(e){return pe.join(this.watchPath,pe.relative(this.watchPath,this.checkGlobSymlink(e)))}filterPath(e){let{stats:t}=e;if(t&&t.isSymbolicLink())return this.filterDir(e);let n=this.entryPath(e);return(this.hasGlob&&typeof this.globFilter===RH?this.globFilter(n):!0)&&this.fsw._isntIgnored(n,t)&&this.fsw._hasReadPermissions(t)}getDirParts(e){if(!this.hasGlob)return[];let t=[];return(e.includes(CH)?fH.expand(e):[e]).forEach(i=>{t.push(pe.relative(this.watchPath,i).split(wH))}),t}filterDir(e){if(this.hasGlob){let t=this.getDirParts(this.checkGlobSymlink(e)),n=!1;this.unmatchedGlob=!this.dirParts.some(i=>i.every((s,o)=>(s===AH&&(n=!0),n||!t[0][o]||jg(s,t[0][o],Ug))))}return!this.unmatchedGlob&&this.fsw._isntIgnored(this.entryPath(e),e.stats)}},Zu=class extends lH{constructor(e){super();let t={};e&&Object.assign(t,e),this._watched=new Map,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._symlinkPaths=new Map,this._streams=new Set,this.closed=!1,Lr(t,"persistent")&&(t.persistent=!0),Lr(t,"ignoreInitial")&&(t.ignoreInitial=!1),Lr(t,"ignorePermissionErrors")&&(t.ignorePermissionErrors=!1),Lr(t,"interval")&&(t.interval=100),Lr(t,"binaryInterval")&&(t.binaryInterval=300),Lr(t,"disableGlobbing")&&(t.disableGlobbing=!1),t.enableBinaryInterval=t.binaryInterval!==t.interval,Lr(t,"useFsEvents")&&(t.useFsEvents=!t.usePolling),CA.canUse()||(t.useFsEvents=!1),Lr(t,"usePolling")&&!t.useFsEvents&&(t.usePolling=PH),IH&&(t.usePolling=!0);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?t.usePolling=!1:c==="true"||c==="1"?t.usePolling=!0:t.usePolling=!!c}let s=process.env.CHOKIDAR_INTERVAL;s&&(t.interval=Number.parseInt(s,10)),Lr(t,"atomic")&&(t.atomic=!t.usePolling&&!t.useFsEvents),t.atomic&&(this._pendingUnlinks=new Map),Lr(t,"followSymlinks")&&(t.followSymlinks=!0),Lr(t,"awaitWriteFinish")&&(t.awaitWriteFinish=!1),t.awaitWriteFinish===!0&&(t.awaitWriteFinish={});let o=t.awaitWriteFinish;o&&(o.stabilityThreshold||(o.stabilityThreshold=2e3),o.pollInterval||(o.pollInterval=100),this._pendingWrites=new Map),t.ignored&&(t.ignored=$g(t.ignored));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=OH,this._readyEmitted=!0,process.nextTick(()=>this.emit(mH)))},this._emitRaw=(...c)=>this.emit(yH,...c),this._readyEmitted=!1,this.options=t,t.useFsEvents?this._fsEventsHandler=new CA(this):this._nodeFsHandler=new hH(this),Object.freeze(t)}add(e,t,n){let{cwd:i,disableGlobbing:s}=this.options;this.closed=!1;let o=RA(e);return i&&(o=o.map(a=>{let c=LH(a,i);return s||!Ig(a)?c:dH(c)})),o=o.filter(a=>a.startsWith(Fg)?(this._ignoredPaths.add(a.slice(1)),!1):(this._ignoredPaths.delete(a),this._ignoredPaths.delete(a+Bg),this._userIgnored=void 0,!0)),this.options.useFsEvents&&this._fsEventsHandler?(this._readyCount||(this._readyCount=o.length),this.options.persistent&&(this._readyCount+=o.length),o.forEach(a=>this._fsEventsHandler._addToFsEvents(a))):(this._readyCount||(this._readyCount=0),this._readyCount+=o.length,Promise.all(o.map(async a=>{let c=await this._nodeFsHandler._addToNodeFs(a,!n,0,0,t);return c&&this._emitReady(),c})).then(a=>{this.closed||a.filter(c=>c).forEach(c=>{this.add(pe.dirname(c),pe.basename(t||c))})})),this}unwatch(e){if(this.closed)return this;let t=RA(e),{cwd:n}=this.options;return t.forEach(i=>{!pe.isAbsolute(i)&&!this._closers.has(i)&&(n&&(i=pe.join(n,i)),i=pe.resolve(i)),this._closePath(i),this._ignoredPaths.add(i),this._watched.has(i)&&this._ignoredPaths.add(i+Bg),this._userIgnored=void 0}),this}close(){if(this.closed)return this._closePromise;this.closed=!0,this.removeAllListeners();let e=[];return this._closers.forEach(t=>t.forEach(n=>{let i=n();i instanceof Promise&&e.push(i)})),this._streams.forEach(t=>t.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(t=>t.dispose()),["closers","watched","streams","symlinkPaths","throttled"].forEach(t=>{this[`_${t}`].clear()}),this._closePromise=e.length?Promise.all(e).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let e={};return this._watched.forEach((t,n)=>{let i=this.options.cwd?pe.relative(this.options.cwd,n):n;e[i||IA]=t.getChildren().sort()}),e}emitWithAll(e,t){this.emit(...t),e!==Dg&&this.emit(Ng,...t)}async _emit(e,t,n,i,s){if(this.closed)return;let o=this.options;MH&&(t=pe.normalize(t)),o.cwd&&(t=pe.relative(o.cwd,t));let a=[e,t];s!==void 0?a.push(n,i,s):i!==void 0?a.push(n,i):n!==void 0&&a.push(n);let c=o.awaitWriteFinish,l;if(c&&(l=this._pendingWrites.get(t)))return l.lastChange=new Date,this;if(o.atomic){if(e===kA)return this._pendingUnlinks.set(t,a),setTimeout(()=>{this._pendingUnlinks.forEach((u,f)=>{this.emit(...u),this.emit(Ng,...u),this._pendingUnlinks.delete(f)})},typeof o.atomic=="number"?o.atomic:100),this;e===Ju&&this._pendingUnlinks.has(t)&&(e=a[0]=Da,this._pendingUnlinks.delete(t))}if(c&&(e===Ju||e===Da)&&this._readyEmitted){let u=(f,d)=>{f?(e=a[0]=Dg,a[1]=f,this.emitWithAll(e,a)):d&&(a.length>2?a[2]=d:a.push(d),this.emitWithAll(e,a))};return this._awaitWriteFinish(t,c.stabilityThreshold,e,u),this}if(e===Da&&!this._throttle(Da,t,50))return this;if(o.alwaysStat&&n===void 0&&(e===Ju||e===gH||e===Da)){let u=o.cwd?pe.join(o.cwd,t):t,f;try{f=await NH(u)}catch{}if(!f||this.closed)return;a.push(f)}return this.emitWithAll(e,a),this}_handleError(e){let t=e&&e.code;return e&&t!=="ENOENT"&&t!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||t!=="EPERM"&&t!=="EACCES")&&this.emit(Dg,e),e||this.closed}_throttle(e,t,n){this._throttled.has(e)||this._throttled.set(e,new Map);let i=this._throttled.get(e),s=i.get(t);if(s)return s.count++,!1;let o,a=()=>{let l=i.get(t),u=l?l.count:0;return i.delete(t),clearTimeout(o),l&&clearTimeout(l.timeoutObject),u};o=setTimeout(a,n);let c={timeoutObject:o,clear:a,count:0};return i.set(t,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(e,t,n,i){let s,o=e;this.options.cwd&&!pe.isAbsolute(e)&&(o=pe.join(this.options.cwd,e));let a=new Date,c=l=>{Gg.stat(o,(u,f)=>{if(u||!this._pendingWrites.has(e)){u&&u.code!=="ENOENT"&&i(u);return}let d=Number(new Date);l&&f.size!==l.size&&(this._pendingWrites.get(e).lastChange=d);let g=this._pendingWrites.get(e);d-g.lastChange>=t?(this._pendingWrites.delete(e),i(void 0,f)):s=setTimeout(c,this.options.awaitWriteFinish.pollInterval,f)})};this._pendingWrites.has(e)||(this._pendingWrites.set(e,{lastChange:a,cancelWait:()=>(this._pendingWrites.delete(e),clearTimeout(s),n)}),s=setTimeout(c,this.options.awaitWriteFinish.pollInterval))}_getGlobIgnored(){return[...this._ignoredPaths.values()]}_isIgnored(e,t){if(this.options.atomic&&SH.test(e))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=this.options.ignored,s=i&&i.map(MA(n)),o=$g(s).filter(c=>typeof c===zg&&!Ig(c)).map(c=>c+Bg),a=this._getGlobIgnored().map(MA(n)).concat(s,o);this._userIgnored=jg(a,void 0,Ug)}return this._userIgnored([e,t])}_isntIgnored(e,t){return!this._isIgnored(e,t)}_getWatchHelpers(e,t){let n=t||this.options.disableGlobbing||!Ig(e)?e:pH(e),i=this.options.followSymlinks;return new Wg(e,n,i,this)}_getWatchedDir(e){this._boundRemove||(this._boundRemove=this._remove.bind(this));let t=pe.resolve(e);return this._watched.has(t)||this._watched.set(t,new Hg(t,this._boundRemove)),this._watched.get(t)}_hasReadPermissions(e){if(this.options.ignorePermissionErrors)return!0;let n=(e&&Number.parseInt(e.mode,10))&511;return!!(4&Number.parseInt(n.toString(8)[0],10))}_remove(e,t,n){let i=pe.join(e,t),s=pe.resolve(i);if(n=n??(this._watched.has(i)||this._watched.has(s)),!this._throttle("remove",i,100))return;!n&&!this.options.useFsEvents&&this._watched.size===1&&this.add(e,t,!0),this._getWatchedDir(i).getChildren().forEach(d=>this._remove(i,d));let c=this._getWatchedDir(e),l=c.has(t);c.remove(t),this._symlinkPaths.has(s)&&this._symlinkPaths.delete(s);let u=i;if(this.options.cwd&&(u=pe.relative(this.options.cwd,i)),this.options.awaitWriteFinish&&this._pendingWrites.has(u)&&this._pendingWrites.get(u).cancelWait()===Ju)return;this._watched.delete(i),this._watched.delete(s);let f=n?vH:kA;l&&!this._isIgnored(i)&&this._emit(f,i),this.options.useFsEvents||this._closePath(i)}_closePath(e){this._closeFile(e);let t=pe.dirname(e);this._getWatchedDir(t).remove(pe.basename(e))}_closeFile(e){let t=this._closers.get(e);t&&(t.forEach(n=>n()),this._closers.delete(e))}_addPathCloser(e,t){if(!t)return;let n=this._closers.get(e);n||(n=[],this._closers.set(e,n)),n.push(t)}_readdirp(e,t){if(this.closed)return;let n={type:Ng,alwaysStat:!0,lstat:!0,...t},i=uH(e,n);return this._streams.add(i),i.once(xH,()=>{i=void 0}),i.once(_H,()=>{i&&(this._streams.delete(i),i=void 0)}),i}};Vg.FSWatcher=Zu;var FH=(r,e)=>{let t=new Zu(e);return t.add(r),t};Vg.watch=FH});var CR=A((S5,ev)=>{"use strict";var ZH=Object.prototype.hasOwnProperty,Bt="~";function Fa(){}Object.create&&(Fa.prototype=Object.create(null),new Fa().__proto__||(Bt=!1));function QH(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function TR(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var s=new QH(t,n||r,i),o=Bt?Bt+e:e;return r._events[o]?r._events[o].fn?r._events[o]=[r._events[o],s]:r._events[o].push(s):(r._events[o]=s,r._eventsCount++),r}function cp(r,e){--r._eventsCount===0?r._events=new Fa:delete r._events[e]}function Rt(){this._events=new Fa,this._eventsCount=0}Rt.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)ZH.call(t,n)&&e.push(Bt?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Rt.prototype.listeners=function(e){var t=Bt?Bt+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,s=n.length,o=new Array(s);i<s;i++)o[i]=n[i].fn;return o};Rt.prototype.listenerCount=function(e){var t=Bt?Bt+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Rt.prototype.emit=function(e,t,n,i,s,o){var a=Bt?Bt+e:e;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,u,f;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,s),!0;case 6:return c.fn.call(c.context,t,n,i,s,o),!0}for(f=1,u=new Array(l-1);f<l;f++)u[f-1]=arguments[f];c.fn.apply(c.context,u)}else{var d=c.length,g;for(f=0;f<d;f++)switch(c[f].once&&this.removeListener(e,c[f].fn,void 0,!0),l){case 1:c[f].fn.call(c[f].context);break;case 2:c[f].fn.call(c[f].context,t);break;case 3:c[f].fn.call(c[f].context,t,n);break;case 4:c[f].fn.call(c[f].context,t,n,i);break;default:if(!u)for(g=1,u=new Array(l-1);g<l;g++)u[g-1]=arguments[g];c[f].fn.apply(c[f].context,u)}}return!0};Rt.prototype.on=function(e,t,n){return TR(this,e,t,n,!1)};Rt.prototype.once=function(e,t,n){return TR(this,e,t,n,!0)};Rt.prototype.removeListener=function(e,t,n,i){var s=Bt?Bt+e:e;if(!this._events[s])return this;if(!t)return cp(this,s),this;var o=this._events[s];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&cp(this,s);else{for(var a=0,c=[],l=o.length;a<l;a++)(o[a].fn!==t||i&&!o[a].once||n&&o[a].context!==n)&&c.push(o[a]);c.length?this._events[s]=c.length===1?c[0]:c:cp(this,s)}return this};Rt.prototype.removeAllListeners=function(e){var t;return e?(t=Bt?Bt+e:e,this._events[t]&&cp(this,t)):(this._events=new Fa,this._eventsCount=0),this};Rt.prototype.off=Rt.prototype.removeListener;Rt.prototype.addListener=Rt.prototype.on;Rt.prefixed=Bt;Rt.EventEmitter=Rt;typeof ev<"u"&&(ev.exports=Rt)});var AR=A((E5,kR)=>{"use strict";kR.exports=function(e,t){if(t=t.split(":")[0],e=+e,!e)return!1;switch(t){case"http":case"ws":return e!==80;case"https":case"wss":return e!==443;case"ftp":return e!==21;case"gopher":return e!==70;case"file":return!1}return e!==0}});var lp=A(OR=>{var Pn=OR,e4=require("url"),RR=require("util")._extend,t4=AR(),r4=/(^|,)\s*upgrade\s*($|,)/i,tv=/^https|wss/;Pn.isSSL=tv;Pn.setupOutgoing=function(r,e,t,n){r.port=e[n||"target"].port||(tv.test(e[n||"target"].protocol)?443:80),["host","hostname","socketPath","pfx","key","passphrase","cert","ca","ciphers","secureProtocol"].forEach(function(a){r[a]=e[n||"target"][a]}),r.method=e.method||t.method,r.headers=RR({},t.headers),e.headers&&RR(r.headers,e.headers),e.auth&&(r.auth=e.auth),e.ca&&(r.ca=e.ca),tv.test(e[n||"target"].protocol)&&(r.rejectUnauthorized=typeof e.secure>"u"?!0:e.secure),r.agent=e.agent||!1,r.localAddress=e.localAddress,r.agent||(r.headers=r.headers||{},(typeof r.headers.connection!="string"||!r4.test(r.headers.connection))&&(r.headers.connection="close"));var i=e[n||"target"],s=i&&e.prependPath!==!1&&i.path||"",o=e.toProxy?t.url:e4.parse(t.url).path||"";return o=e.ignorePath?"":o,r.path=Pn.urlJoin(s,o),e.changeOrigin&&(r.headers.host=t4(r.port,e[n||"target"].protocol)&&!n4(r.host)?r.host+":"+r.port:r.host),r};Pn.setupSocket=function(r){return r.setTimeout(0),r.setNoDelay(!0),r.setKeepAlive(!0,0),r};Pn.getPort=function(r){var e=r.headers.host?r.headers.host.match(/:(\d+)/):"";return e?e[1]:Pn.hasEncryptedConnection(r)?"443":"80"};Pn.hasEncryptedConnection=function(r){return!!(r.connection.encrypted||r.connection.pair)};Pn.urlJoin=function(){var r=Array.prototype.slice.call(arguments),e=r.length-1,t=r[e],n=t.split("?"),i;return r[e]=n.shift(),i=[r.filter(Boolean).join("/").replace(/\/+/g,"/").replace("http:/","http://").replace("https:/","https://")],i.push.apply(i,n),i.join("?")};Pn.rewriteCookieProperty=function r(e,t,n){return Array.isArray(e)?e.map(function(i){return r(i,t,n)}):e.replace(new RegExp("(;\\s*"+n+"=)([^;]+)","i"),function(i,s,o){var a;if(o in t)a=t[o];else if("*"in t)a=t["*"];else return i;return a?s+a:""})};function n4(r){return!!~r.indexOf(":")}});var NR=A((C5,IR)=>{var MR=require("url"),PR=lp(),i4=/^201|30(1|2|7|8)$/;IR.exports={removeChunked:function(e,t,n){e.httpVersion==="1.0"&&delete n.headers["transfer-encoding"]},setConnection:function(e,t,n){e.httpVersion==="1.0"?n.headers.connection=e.headers.connection||"close":e.httpVersion!=="2.0"&&!n.headers.connection&&(n.headers.connection=e.headers.connection||"keep-alive")},setRedirectHostRewrite:function(e,t,n,i){if((i.hostRewrite||i.autoRewrite||i.protocolRewrite)&&n.headers.location&&i4.test(n.statusCode)){var s=MR.parse(i.target),o=MR.parse(n.headers.location);if(s.host!=o.host)return;i.hostRewrite?o.host=i.hostRewrite:i.autoRewrite&&(o.host=e.headers.host),i.protocolRewrite&&(o.protocol=i.protocolRewrite),n.headers.location=o.format()}},writeHeaders:function(e,t,n,i){var s=i.cookieDomainRewrite,o=i.cookiePathRewrite,a=i.preserveHeaderKeyCase,c,l=function(d,g){g!=null&&(s&&d.toLowerCase()==="set-cookie"&&(g=PR.rewriteCookieProperty(g,s,"domain")),o&&d.toLowerCase()==="set-cookie"&&(g=PR.rewriteCookieProperty(g,o,"path")),t.setHeader(String(d).trim(),g))};if(typeof s=="string"&&(s={"*":s}),typeof o=="string"&&(o={"*":o}),a&&n.rawHeaders!=null){c={};for(var u=0;u<n.rawHeaders.length;u+=2){var f=n.rawHeaders[u];c[f.toLowerCase()]=f}}Object.keys(n.headers).forEach(function(d){var g=n.headers[d];a&&c&&(d=c[d]||d),l(d,g)})},writeStatusCode:function(e,t,n){n.statusMessage?(t.statusCode=n.statusCode,t.statusMessage=n.statusMessage):t.statusCode=n.statusCode}}});var LR=A((k5,DR)=>{var Ua;DR.exports=function(){if(!Ua){try{Ua=Oe()("follow-redirects")}catch{}typeof Ua!="function"&&(Ua=function(){})}Ua.apply(null,arguments)}});var qR=A((A5,dv)=>{var $a=require("url"),qa=$a.URL,s4=require("http"),o4=require("https"),ov=require("stream").Writable,av=require("assert"),BR=LR();(function(){var e=typeof process<"u",t=typeof window<"u"&&typeof document<"u",n=Bi(Error.captureStackTrace);!e&&(t||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var cv=!1;try{av(new qa(""))}catch(r){cv=r.code==="ERR_INVALID_URL"}var a4=["Authorization","Proxy-Authorization","Cookie"],c4=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],lv=["abort","aborted","connect","error","socket","timeout"],uv=Object.create(null);lv.forEach(function(r){uv[r]=function(e,t,n){this._redirectable.emit(r,e,t,n)}});var nv=Ha("ERR_INVALID_URL","Invalid URL",TypeError),iv=Ha("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),l4=Ha("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",iv),u4=Ha("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),p4=Ha("ERR_STREAM_WRITE_AFTER_END","write after end"),f4=ov.prototype.destroy||FR;function Kt(r,e){ov.call(this),this._sanitizeOptions(r),this._options=r,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var t=this;this._onNativeResponse=function(n){try{t._processResponse(n)}catch(i){t.emit("error",i instanceof iv?i:new iv({cause:i}))}},this._headerFilter=new RegExp("^(?:"+a4.concat(r.sensitiveHeaders).map(y4).join("|")+")$","i"),this._performRequest()}Kt.prototype=Object.create(ov.prototype);Kt.prototype.abort=function(){fv(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Kt.prototype.destroy=function(r){return fv(this._currentRequest,r),f4.call(this,r),this};Kt.prototype.write=function(r,e,t){if(this._ending)throw new p4;if(!Li(r)&&!g4(r))throw new TypeError("data should be a string, Buffer or Uint8Array");if(Bi(e)&&(t=e,e=null),r.length===0){t&&t();return}this._requestBodyLength+r.length<=this._options.maxBodyLength?(this._requestBodyLength+=r.length,this._requestBodyBuffers.push({data:r,encoding:e}),this._currentRequest.write(r,e,t)):(this.emit("error",new u4),this.abort())};Kt.prototype.end=function(r,e,t){if(Bi(r)?(t=r,r=e=null):Bi(e)&&(t=e,e=null),!r)this._ended=this._ending=!0,this._currentRequest.end(null,null,t);else{var n=this,i=this._currentRequest;this.write(r,e,function(){n._ended=!0,i.end(null,null,t)}),this._ending=!0}};Kt.prototype.setHeader=function(r,e){this._options.headers[r]=e,this._currentRequest.setHeader(r,e)};Kt.prototype.removeHeader=function(r){delete this._options.headers[r],this._currentRequest.removeHeader(r)};Kt.prototype.setTimeout=function(r,e){var t=this;function n(o){o.setTimeout(r),o.removeListener("timeout",o.destroy),o.addListener("timeout",o.destroy)}function i(o){t._timeout&&clearTimeout(t._timeout),t._timeout=setTimeout(function(){t.emit("timeout"),s()},r),n(o)}function s(){t._timeout&&(clearTimeout(t._timeout),t._timeout=null),t.removeListener("abort",s),t.removeListener("error",s),t.removeListener("response",s),t.removeListener("close",s),e&&t.removeListener("timeout",e),t.socket||t._currentRequest.removeListener("socket",i)}return e&&this.on("timeout",e),this.socket?i(this.socket):this._currentRequest.once("socket",i),this.on("socket",n),this.on("abort",s),this.on("error",s),this.on("response",s),this.on("close",s),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(r){Kt.prototype[r]=function(e,t){return this._currentRequest[r](e,t)}});["aborted","connection","socket"].forEach(function(r){Object.defineProperty(Kt.prototype,r,{get:function(){return this._currentRequest[r]}})});Kt.prototype._sanitizeOptions=function(r){if(r.headers||(r.headers={}),m4(r.sensitiveHeaders)||(r.sensitiveHeaders=[]),r.host&&(r.hostname||(r.hostname=r.host),delete r.host),!r.pathname&&r.path){var e=r.path.indexOf("?");e<0?r.pathname=r.path:(r.pathname=r.path.substring(0,e),r.search=r.path.substring(e))}};Kt.prototype._performRequest=function(){var r=this._options.protocol,e=this._options.nativeProtocols[r];if(!e)throw new TypeError("Unsupported protocol "+r);if(this._options.agents){var t=r.slice(0,-1);this._options.agent=this._options.agents[t]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var i of lv)n.on(i,uv[i]);if(this._currentUrl=/^\//.test(this._options.path)?$a.format(this._options):this._options.path,this._isRedirect){var s=0,o=this,a=this._requestBodyBuffers;(function c(l){if(n===o._currentRequest)if(l)o.emit("error",l);else if(s<a.length){var u=a[s++];n.finished||n.write(u.data,u.encoding,c)}else o._ended&&n.end()})()}};Kt.prototype._processResponse=function(r){var e=r.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:r.headers,statusCode:e});var t=r.headers.location;if(!t||this._options.followRedirects===!1||e<300||e>=400){r.responseUrl=this._currentUrl,r.redirects=this._redirects,this.emit("response",r),this._requestBodyBuffers=[];return}if(fv(this._currentRequest),r.destroy(),++this._redirectCount>this._options.maxRedirects)throw new l4;var n,i=this._options.beforeRedirect;i&&(n=Object.assign({Host:r.req.getHeader("host")},this._options.headers));var s=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],rv(/^content-/i,this._options.headers));var o=rv(/^host$/i,this._options.headers),a=pv(this._currentUrl),c=o||a.host,l=/^\w+:/.test(t)?this._currentUrl:$a.format(Object.assign(a,{host:c})),u=d4(t,l);if(BR("redirecting to",u.href),this._isRedirect=!0,sv(u,this._options),(u.protocol!==a.protocol&&u.protocol!=="https:"||u.host!==c&&!h4(u.host,c))&&rv(this._headerFilter,this._options.headers),Bi(i)){var f={headers:r.headers,statusCode:e},d={url:l,method:s,headers:n};i(this._options,f,d),this._sanitizeOptions(this._options)}this._performRequest()};function jR(r){var e={maxRedirects:21,maxBodyLength:10485760},t={};return Object.keys(r).forEach(function(n){var i=n+":",s=t[i]=r[n],o=e[n]=Object.create(s);function a(l,u,f){return v4(l)?l=sv(l):Li(l)?l=sv(pv(l)):(f=u,u=UR(l),l={protocol:i}),Bi(u)&&(f=u,u=null),u=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},l,u),u.nativeProtocols=t,!Li(u.host)&&!Li(u.hostname)&&(u.hostname="::1"),av.equal(u.protocol,i,"protocol mismatch"),BR("options",u),new Kt(u,f)}function c(l,u,f){var d=o.request(l,u,f);return d.end(),d}Object.defineProperties(o,{request:{value:a,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function FR(){}function pv(r){var e;if(cv)e=new qa(r);else if(e=UR($a.parse(r)),!Li(e.protocol))throw new nv({input:r});return e}function d4(r,e){return cv?new qa(r,e):pv($a.resolve(e,r))}function UR(r){if(/^\[/.test(r.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(r.hostname))throw new nv({input:r.href||r});if(/^\[/.test(r.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(r.host))throw new nv({input:r.href||r});return r}function sv(r,e){var t=e||{};for(var n of c4)t[n]=r[n];return t.hostname.startsWith("[")&&(t.hostname=t.hostname.slice(1,-1)),t.port!==""&&(t.port=Number(t.port)),t.path=t.search?t.pathname+t.search:t.pathname,t}function rv(r,e){var t;for(var n in e)r.test(n)&&(t=e[n],delete e[n]);return t===null||typeof t>"u"?void 0:String(t).trim()}function Ha(r,e,t){function n(i){Bi(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,i||{}),this.code=r,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(t||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+r+"]",enumerable:!1}}),n}function fv(r,e){for(var t of lv)r.removeListener(t,uv[t]);r.on("error",FR),r.destroy(e)}function h4(r,e){av(Li(r)&&Li(e));var t=r.length-e.length-1;return t>0&&r[t]==="."&&r.endsWith(e)}function m4(r){return r instanceof Array}function Li(r){return typeof r=="string"||r instanceof String}function Bi(r){return typeof r=="function"}function g4(r){return typeof r=="object"&&"length"in r}function v4(r){return qa&&r instanceof qa}function y4(r){return r.replace(/[\]\\/()*+?.$]/g,"\\$&")}dv.exports=jR({http:s4,https:o4});dv.exports.wrap=jR});var HR=A((R5,$R)=>{var x4=require("http"),_4=require("https"),Wa=NR(),up=lp(),b4=qR();Wa=Object.keys(Wa).map(function(r){return Wa[r]});var w4={http:x4,https:_4};$R.exports={deleteLength:function(e,t,n){(e.method==="DELETE"||e.method==="OPTIONS")&&!e.headers["content-length"]&&(e.headers["content-length"]="0",delete e.headers["transfer-encoding"])},timeout:function(e,t,n){n.timeout&&e.socket.setTimeout(n.timeout)},XHeaders:function(e,t,n){if(n.xfwd){var i=e.isSpdy||up.hasEncryptedConnection(e),s={for:e.connection.remoteAddress||e.socket.remoteAddress,port:up.getPort(e),proto:i?"https":"http"};["for","port","proto"].forEach(function(o){e.headers["x-forwarded-"+o]=(e.headers["x-forwarded-"+o]||"")+(e.headers["x-forwarded-"+o]?",":"")+s[o]}),e.headers["x-forwarded-host"]=e.headers["x-forwarded-host"]||e.headers.host||""}},stream:function(e,t,n,i,s,o){s.emit("start",e,t,n.target||n.forward);var a=n.followRedirects?b4:w4,c=a.http,l=a.https;if(n.forward){var u=(n.forward.protocol==="https:"?l:c).request(up.setupOutgoing(n.ssl||{},n,e,"forward")),f=y(u,n.forward);if(e.on("error",f),u.on("error",f),(n.buffer||e).pipe(u),!n.target)return t.end()}var d=(n.target.protocol==="https:"?l:c).request(up.setupOutgoing(n.ssl||{},n,e));d.on("socket",function(b){s&&!d.getHeader("expect")&&s.emit("proxyReq",d,e,t,n)}),n.proxyTimeout&&d.setTimeout(n.proxyTimeout,function(){d.abort()}),e.on("aborted",function(){d.abort()});var g=y(d,n.target);e.on("error",g),d.on("error",g);function y(b,C){return function(O){if(e.socket.destroyed&&O.code==="ECONNRESET")return s.emit("econnreset",O,e,t,C),b.abort();o?o(O,e,t,C):s.emit("error",O,e,t,C)}}(n.buffer||e).pipe(d),d.on("response",function(b){if(s&&s.emit("proxyRes",b,e,t),!t.headersSent&&!n.selfHandleResponse)for(var C=0;C<Wa.length&&!Wa[C](e,t,b,n);C++);t.finished?s&&s.emit("end",e,t,b):(b.on("end",function(){s&&s.emit("end",e,t,b)}),n.selfHandleResponse||b.pipe(t))})}}});var GR=A((O5,WR)=>{var S4=require("http"),E4=require("https"),ho=lp();WR.exports={checkMethodAndHeader:function(e,t){if(e.method!=="GET"||!e.headers.upgrade||e.headers.upgrade.toLowerCase()!=="websocket")return t.destroy(),!0},XHeaders:function(e,t,n){if(n.xfwd){var i={for:e.connection.remoteAddress||e.socket.remoteAddress,port:ho.getPort(e),proto:ho.hasEncryptedConnection(e)?"wss":"ws"};["for","port","proto"].forEach(function(s){e.headers["x-forwarded-"+s]=(e.headers["x-forwarded-"+s]||"")+(e.headers["x-forwarded-"+s]?",":"")+i[s]})}},stream:function(e,t,n,i,s,o){var a=function(u,f){return Object.keys(f).reduce(function(d,g){var y=f[g];if(!Array.isArray(y))return d.push(g+": "+y),d;for(var b=0;b<y.length;b++)d.push(g+": "+y[b]);return d},[u]).join(`\r
|
|
106
106
|
`)+`\r
|
|
107
107
|
\r
|
|
108
108
|
`};ho.setupSocket(t),i&&i.length&&t.unshift(i);var c=(ho.isSSL.test(n.target.protocol)?E4:S4).request(ho.setupOutgoing(n.ssl||{},n,e));return s&&s.emit("proxyReqWs",c,e,t,n,i),c.on("error",l),c.on("response",function(u){u.upgrade||(t.write(a("HTTP/"+u.httpVersion+" "+u.statusCode+" "+u.statusMessage,u.headers)),u.pipe(t))}),c.on("upgrade",function(u,f,d){f.on("error",l),f.on("end",function(){s.emit("close",u,f,d)}),t.on("error",function(){f.end()}),ho.setupSocket(f),d&&d.length&&f.unshift(d),t.write(a("HTTP/1.1 101 Switching Protocols",u.headers)),f.pipe(t).pipe(f),s.emit("open",f),s.emit("proxySocket",f)}),c.end();function l(u){o?o(u,e,t):s.emit("error",u,e,t),t.end()}}}});var ZR=A((M5,JR)=>{var YR=JR.exports,zR=require("util")._extend,T4=require("url").parse,XR=CR(),C4=require("http"),k4=require("https"),VR=HR(),KR=GR();YR.Server=ji;function hv(r){return function(e){return function(t,n){var i=r==="ws"?this.wsPasses:this.webPasses,s=[].slice.call(arguments),o=s.length-1,a,c;typeof s[o]=="function"&&(c=s[o],o--);var l=e;if(!(s[o]instanceof Buffer)&&s[o]!==n&&(l=zR({},e),zR(l,s[o]),o--),s[o]instanceof Buffer&&(a=s[o]),["target","forward"].forEach(function(f){typeof l[f]=="string"&&(l[f]=T4(l[f]))}),!l.target&&!l.forward)return this.emit("error",new Error("Must provide a proper URL as target"));for(var u=0;u<i.length&&!i[u](t,n,l,a,this,c);u++);}}}YR.createRightProxy=hv;function ji(r){XR.call(this),r=r||{},r.prependPath=r.prependPath!==!1,this.web=this.proxyRequest=hv("web")(r),this.ws=this.proxyWebsocketRequest=hv("ws")(r),this.options=r,this.webPasses=Object.keys(VR).map(function(e){return VR[e]}),this.wsPasses=Object.keys(KR).map(function(e){return KR[e]}),this.on("error",this.onError,this)}require("util").inherits(ji,XR);ji.prototype.onError=function(r){if(this.listeners("error").length===1)throw r};ji.prototype.listen=function(r,e){var t=this,n=function(i,s){t.web(i,s)};return this._server=this.options.ssl?k4.createServer(this.options.ssl,n):C4.createServer(n),this.options.ws&&this._server.on("upgrade",function(i,s,o){t.ws(i,s,o)}),this._server.listen(r,e),this};ji.prototype.close=function(r){var e=this;this._server&&this._server.close(t);function t(){e._server=null,r&&r.apply(null,arguments)}};ji.prototype.before=function(r,e,t){if(r!=="ws"&&r!=="web")throw new Error("type must be `web` or `ws`");var n=r==="ws"?this.wsPasses:this.webPasses,i=!1;if(n.forEach(function(s,o){s.name===e&&(i=o)}),i===!1)throw new Error("No such pass");n.splice(i,0,t)};ji.prototype.after=function(r,e,t){if(r!=="ws"&&r!=="web")throw new Error("type must be `web` or `ws`");var n=r==="ws"?this.wsPasses:this.webPasses,i=!1;if(n.forEach(function(s,o){s.name===e&&(i=o)}),i===!1)throw new Error("No such pass");n.splice(i++,0,t)}});var eO=A((P5,QR)=>{var Ga=ZR().Server;function mv(r){return new Ga(r)}Ga.createProxyServer=mv;Ga.createServer=mv;Ga.createProxy=mv;QR.exports=Ga});var rO=A((I5,tO)=>{tO.exports=eO()});var TO=A((Va,vv)=>{(function(r,e){typeof Va=="object"&&typeof vv=="object"?vv.exports=e(require("child_process"),require("crypto")):typeof define=="function"&&define.amd?define(["child_process","crypto"],e):typeof Va=="object"?Va["electron-machine-id"]=e(require("child_process"),require("crypto")):r["electron-machine-id"]=e(r.child_process,r.crypto)})(Va,function(r,e){return(function(t){function n(s){if(i[s])return i[s].exports;var o=i[s]={exports:{},id:s,loaded:!1};return t[s].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var i={};return n.m=t,n.c=i,n.p="",n(0)})([function(t,n,i){t.exports=i(34)},function(t,n,i){var s=i(29)("wks"),o=i(33),a=i(2).Symbol,c=typeof a=="function",l=t.exports=function(u){return s[u]||(s[u]=c&&a[u]||(c?a:o)("Symbol."+u))};l.store=s},function(t,n){var i=t.exports=typeof window<"u"&&window.Math==Math?window:typeof self<"u"&&self.Math==Math?self:Function("return this")();typeof __g=="number"&&(__g=i)},function(t,n,i){var s=i(9);t.exports=function(o){if(!s(o))throw TypeError(o+" is not an object!");return o}},function(t,n,i){t.exports=!i(24)(function(){return Object.defineProperty({},"a",{get:function(){return 7}}).a!=7})},function(t,n,i){var s=i(12),o=i(17);t.exports=i(4)?function(a,c,l){return s.f(a,c,o(1,l))}:function(a,c,l){return a[c]=l,a}},function(t,n){var i=t.exports={version:"2.4.0"};typeof __e=="number"&&(__e=i)},function(t,n,i){var s=i(14);t.exports=function(o,a,c){if(s(o),a===void 0)return o;switch(c){case 1:return function(l){return o.call(a,l)};case 2:return function(l,u){return o.call(a,l,u)};case 3:return function(l,u,f){return o.call(a,l,u,f)}}return function(){return o.apply(a,arguments)}}},function(t,n){var i={}.hasOwnProperty;t.exports=function(s,o){return i.call(s,o)}},function(t,n){t.exports=function(i){return typeof i=="object"?i!==null:typeof i=="function"}},function(t,n){t.exports={}},function(t,n){var i={}.toString;t.exports=function(s){return i.call(s).slice(8,-1)}},function(t,n,i){var s=i(3),o=i(26),a=i(32),c=Object.defineProperty;n.f=i(4)?Object.defineProperty:function(l,u,f){if(s(l),u=a(u,!0),s(f),o)try{return c(l,u,f)}catch{}if("get"in f||"set"in f)throw TypeError("Accessors not supported!");return"value"in f&&(l[u]=f.value),l}},function(t,n,i){var s=i(42),o=i(15);t.exports=function(a){return s(o(a))}},function(t,n){t.exports=function(i){if(typeof i!="function")throw TypeError(i+" is not a function!");return i}},function(t,n){t.exports=function(i){if(i==null)throw TypeError("Can't call method on "+i);return i}},function(t,n,i){var s=i(9),o=i(2).document,a=s(o)&&s(o.createElement);t.exports=function(c){return a?o.createElement(c):{}}},function(t,n){t.exports=function(i,s){return{enumerable:!(1&i),configurable:!(2&i),writable:!(4&i),value:s}}},function(t,n,i){var s=i(12).f,o=i(8),a=i(1)("toStringTag");t.exports=function(c,l,u){c&&!o(c=u?c:c.prototype,a)&&s(c,a,{configurable:!0,value:l})}},function(t,n,i){var s=i(29)("keys"),o=i(33);t.exports=function(a){return s[a]||(s[a]=o(a))}},function(t,n){var i=Math.ceil,s=Math.floor;t.exports=function(o){return isNaN(o=+o)?0:(o>0?s:i)(o)}},function(t,n,i){var s=i(11),o=i(1)("toStringTag"),a=s((function(){return arguments})())=="Arguments",c=function(l,u){try{return l[u]}catch{}};t.exports=function(l){var u,f,d;return l===void 0?"Undefined":l===null?"Null":typeof(f=c(u=Object(l),o))=="string"?f:a?s(u):(d=s(u))=="Object"&&typeof u.callee=="function"?"Arguments":d}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,i){var s=i(2),o=i(6),a=i(7),c=i(5),l="prototype",u=function(f,d,g){var y,b,C,R=f&u.F,O=f&u.G,P=f&u.S,B=f&u.P,G=f&u.B,F=f&u.W,V=O?o:o[d]||(o[d]={}),D=V[l],$=O?s:P?s[d]:(s[d]||{})[l];O&&(g=d);for(y in g)b=!R&&$&&$[y]!==void 0,b&&y in V||(C=b?$[y]:g[y],V[y]=O&&typeof $[y]!="function"?g[y]:G&&b?a(C,s):F&&$[y]==C?(function(T){var p=function(m,x,S){if(this instanceof T){switch(arguments.length){case 0:return new T;case 1:return new T(m);case 2:return new T(m,x)}return new T(m,x,S)}return T.apply(this,arguments)};return p[l]=T[l],p})(C):B&&typeof C=="function"?a(Function.call,C):C,B&&((V.virtual||(V.virtual={}))[y]=C,f&u.R&&D&&!D[y]&&c(D,y,C)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,n){t.exports=function(i){try{return!!i()}catch{return!0}}},function(t,n,i){t.exports=i(2).document&&document.documentElement},function(t,n,i){t.exports=!i(4)&&!i(24)(function(){return Object.defineProperty(i(16)("div"),"a",{get:function(){return 7}}).a!=7})},function(t,n,i){"use strict";var s=i(28),o=i(23),a=i(57),c=i(5),l=i(8),u=i(10),f=i(45),d=i(18),g=i(52),y=i(1)("iterator"),b=!([].keys&&"next"in[].keys()),C="@@iterator",R="keys",O="values",P=function(){return this};t.exports=function(B,G,F,V,D,$,T){f(F,G,V);var p,m,x,S=function(I){if(!b&&I in w)return w[I];switch(I){case R:return function(){return new F(this,I)};case O:return function(){return new F(this,I)}}return function(){return new F(this,I)}},v=G+" Iterator",_=D==O,k=!1,w=B.prototype,h=w[y]||w[C]||D&&w[D],E=h||S(D),q=D?_?S("entries"):E:void 0,M=G=="Array"&&w.entries||h;if(M&&(x=g(M.call(new B)),x!==Object.prototype&&(d(x,v,!0),s||l(x,y)||c(x,y,P))),_&&h&&h.name!==O&&(k=!0,E=function(){return h.call(this)}),s&&!T||!b&&!k&&w[y]||c(w,y,E),u[G]=E,u[v]=P,D)if(p={values:_?E:S(O),keys:$?E:S(R),entries:q},T)for(m in p)m in w||a(w,m,p[m]);else o(o.P+o.F*(b||k),G,p);return p}},function(t,n){t.exports=!0},function(t,n,i){var s=i(2),o="__core-js_shared__",a=s[o]||(s[o]={});t.exports=function(c){return a[c]||(a[c]={})}},function(t,n,i){var s,o,a,c=i(7),l=i(41),u=i(25),f=i(16),d=i(2),g=d.process,y=d.setImmediate,b=d.clearImmediate,C=d.MessageChannel,R=0,O={},P="onreadystatechange",B=function(){var F=+this;if(O.hasOwnProperty(F)){var V=O[F];delete O[F],V()}},G=function(F){B.call(F.data)};y&&b||(y=function(F){for(var V=[],D=1;arguments.length>D;)V.push(arguments[D++]);return O[++R]=function(){l(typeof F=="function"?F:Function(F),V)},s(R),R},b=function(F){delete O[F]},i(11)(g)=="process"?s=function(F){g.nextTick(c(B,F,1))}:C?(o=new C,a=o.port2,o.port1.onmessage=G,s=c(a.postMessage,a,1)):d.addEventListener&&typeof postMessage=="function"&&!d.importScripts?(s=function(F){d.postMessage(F+"","*")},d.addEventListener("message",G,!1)):s=P in f("script")?function(F){u.appendChild(f("script"))[P]=function(){u.removeChild(this),B.call(F)}}:function(F){setTimeout(c(B,F,1),0)}),t.exports={set:y,clear:b}},function(t,n,i){var s=i(20),o=Math.min;t.exports=function(a){return a>0?o(s(a),9007199254740991):0}},function(t,n,i){var s=i(9);t.exports=function(o,a){if(!s(o))return o;var c,l;if(a&&typeof(c=o.toString)=="function"&&!s(l=c.call(o))||typeof(c=o.valueOf)=="function"&&!s(l=c.call(o))||!a&&typeof(c=o.toString)=="function"&&!s(l=c.call(o)))return l;throw TypeError("Can't convert object to primitive value")}},function(t,n){var i=0,s=Math.random();t.exports=function(o){return"Symbol(".concat(o===void 0?"":o,")_",(++i+s).toString(36))}},function(t,n,i){"use strict";function s(P){return P&&P.__esModule?P:{default:P}}function o(){return process.platform!=="win32"?"":process.arch==="ia32"&&process.env.hasOwnProperty("PROCESSOR_ARCHITEW6432")?"mixed":"native"}function a(P){return(0,y.createHash)("sha256").update(P).digest("hex")}function c(P){switch(C){case"darwin":return P.split("IOPlatformUUID")[1].split(`
|
|
@@ -110,10 +110,10 @@ WantedBy=default.target
|
|
|
110
110
|
`:`
|
|
111
111
|
`)+t,i=n+1,n=r.indexOf(`
|
|
112
112
|
`,i)}while(n!==-1);return s+=r.slice(i),s}var{stdout:Wv,stderr:Gv}=qv,Dp=Symbol("GENERATOR"),qi=Symbol("STYLER"),go=Symbol("IS_EMPTY"),zv=["ansi","ansi","ansi256","ansi16m"],$i=Object.create(null),_M=(r,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let t=Wv?Wv.level:0;r.level=e.level===void 0?t:e.level};var bM=r=>{let e=(...t)=>t.join(" ");return _M(e,r),Object.setPrototypeOf(e,vo.prototype),e};function vo(r){return bM(r)}Object.setPrototypeOf(vo.prototype,Function.prototype);for(let[r,e]of Object.entries(Tr))$i[r]={get(){let t=Za(this,Bp(e.open,e.close,this[qi]),this[go]);return Object.defineProperty(this,r,{value:t}),t}};$i.visible={get(){let r=Za(this,this[qi],!0);return Object.defineProperty(this,"visible",{value:r}),r}};var Lp=(r,e,t,...n)=>r==="rgb"?e==="ansi16m"?Tr[t].ansi16m(...n):e==="ansi256"?Tr[t].ansi256(Tr.rgbToAnsi256(...n)):Tr[t].ansi(Tr.rgbToAnsi(...n)):r==="hex"?Lp("rgb",e,t,...Tr.hexToRgb(...n)):Tr[t][r](...n),wM=["rgb","hex","ansi256"];for(let r of wM){$i[r]={get(){let{level:t}=this;return function(...n){let i=Bp(Lp(r,zv[t],"color",...n),Tr.color.close,this[qi]);return Za(this,i,this[go])}}};let e="bg"+r[0].toUpperCase()+r.slice(1);$i[e]={get(){let{level:t}=this;return function(...n){let i=Bp(Lp(r,zv[t],"bgColor",...n),Tr.bgColor.close,this[qi]);return Za(this,i,this[go])}}}}var SM=Object.defineProperties(()=>{},{...$i,level:{enumerable:!0,get(){return this[Dp].level},set(r){this[Dp].level=r}}}),Bp=(r,e,t)=>{let n,i;return t===void 0?(n=r,i=e):(n=t.openAll+r,i=e+t.closeAll),{open:r,close:e,openAll:n,closeAll:i,parent:t}},Za=(r,e,t)=>{let n=(...i)=>EM(n,i.length===1?""+i[0]:i.join(" "));return Object.setPrototypeOf(n,SM),n[Dp]=r,n[qi]=e,n[go]=t,n},EM=(r,e)=>{if(r.level<=0||!e)return r[go]?"":e;let t=r[qi];if(t===void 0)return e;let{openAll:n,closeAll:i}=t;if(e.includes("\x1B"))for(;t!==void 0;)e=$v(e,t.close,t.open),t=t.parent;let s=e.indexOf(`
|
|
113
|
-
`);return s!==-1&&(e=Hv(e,i,n,s)),n+e+i};Object.defineProperties(vo.prototype,$i);var TM=vo(),p6=vo({level:Gv?Gv.level:0});var yo=TM;Ft();St();ri();var aw=W(ow(),1),{Server:cw,Namespace:o8,Socket:a8}=aw.default;var vR=require("fs"),yR=require("path");St();_l();var Ae={control:"control",binary:"binary"},fw=65536,ct={idle:"idle",connecting:"connecting",open:"open",degraded:"degraded",closed:"closed"},dw={clientApp:{enabled:["ws","rtc"],channels:{control:{strategy:"priority",prefer:"rtc"},binary:{strategy:"priority",prefer:"rtc"}}},remoteDesktop:{enabled:["ws","rtc"],channels:{control:{strategy:"priority",prefer:"rtc"},binary:{strategy:"priority",prefer:"rtc"}}}};var Es=class{static id="base";static capabilities={control:!1,binary:!1,signaling:"none"};static priority={control:0,binary:0};constructor(){this._listeners=new Map,this._state=ct.idle}get state(){return this._state}get ready(){return this._state===ct.open}supports(e){return!!this.constructor.capabilities[e]}on(e,t){this._listeners.has(e)||this._listeners.set(e,new Set),this._listeners.get(e).add(t)}off(e,t){this._listeners.get(e)?.delete(t)}_emit(e,...t){let n=this._listeners.get(e);if(n)for(let i of n)i(...t)}_setState(e){this._state!==e&&(this._state=e,this._emit("stateChange",e))}connect(e){throw new Error("Not implemented: connect")}disconnect(){throw new Error("Not implemented: disconnect")}send(e,t){throw new Error("Not implemented: send")}};var bl=class extends Es{static id="ws";static capabilities={control:!0,binary:!0,signaling:"ws"};static priority={control:100,binary:10};constructor(){super(),this._socket=null}get socket(){return this._socket}connect(e){this._socket=e.socket,this._setState(e.socket.connected?ct.open:ct.connecting),e.socket.on("connect",()=>this._setState(ct.open)),e.socket.on("disconnect",()=>this._setState(ct.closed)),e.socket.onAny?.((t,n)=>this._emit("message",{event:t,data:n,source:"ws"}))}disconnect(){this._socket=null,this._setState(ct.closed)}send(e,t){if(!this._socket?.connected)return!1;let n=this._socket._rawEmit||this._socket.emit.bind(this._socket);if(e===Ae.control){let{event:i,args:s=[]}=t;return n(i,...s),!0}if(e===Ae.binary){let i=this._socket.conn?.transport;return i&&i.writable===!1?!1:(n("tiles-bin-v2",t),!0)}return!1}};var mw=require("child_process"),gw=require("module"),wl=W(require("path"),1),oh=W(require("os"),1),ah=(0,gw.createRequire)(__importMetaUrl),bB=300*1e3,hw=new Map;function vw(r){try{return ah(r)}catch(e){if(e.code!=="MODULE_NOT_FOUND"&&!wB(e))throw e;let t=hw.get(r);if(t!=null&&Date.now()-t<bB)throw e;return hw.set(r,Date.now()),EB(r),ah(r)}}function wB(r){return/\.node'|Cannot find module.*\.node|MODULE_NOT_FOUND/i.test(r.message||"")}function SB(r){let e=ah.resolve(`${r}/package.json`);return wl.default.dirname(e)}function EB(r){let e=SB(r),t=wl.default.dirname(e),n=oh.default.platform()==="win32"?"prebuild-install.cmd":"prebuild-install",i=wl.default.join(t,".bin",n);try{let s=(0,mw.spawnSync)(i,["-r","napi"],{cwd:e,stdio:"ignore",shell:oh.default.platform()==="win32",timeout:12e4});console.warn(`[nativeSelfHeal] ${r} heal attempted (status=${s.status})`)}catch(s){console.warn(`[nativeSelfHeal] ${r} heal failed:`,s.message)}}function TB(r,e){return e&&typeof e=="object"&&e.type==="Buffer"&&Array.isArray(e.data)?{__b:Buffer.from(e.data).toString("base64")}:e}function CB(r,e){return e&&typeof e=="object"&&typeof e.__b=="string"?Buffer.from(e.__b,"base64"):e}function yw(r){return JSON.stringify(r,TB)}function xw(r){return JSON.parse(typeof r=="string"?r:Buffer.from(r).toString("utf8"),CB)}dt();var ww=W(require("node:dns/promises"),1),kB=3e4,AB=/\s([0-9a-f-]{8,}\.local)\s/i,bw=new Map;async function RB(r){let e=bw.get(r);if(e&&Date.now()-e.ts<kB)return e.ip;try{let{address:t}=await ww.default.lookup(r);return bw.set(r,{ip:t,ts:Date.now()}),t}catch{return null}}async function Sw(r){let e=r.match(AB);if(!e)return r;let t=await RB(e[1]);return t?r.replace(e[1],t):null}ri();var Gn=Fr("webrtc"),ch=null;function OB(){return ch||(ch=vw("node-datachannel")),ch}var MB=[{hostname:"stun.l.google.com",port:19302,type:"Stun"},{hostname:"stun1.l.google.com",port:19302,type:"Stun"},{hostname:"stun2.l.google.com",port:19302,type:"Stun"},{hostname:"stun3.l.google.com",port:19302,type:"Stun"},{hostname:"stun4.l.google.com",port:19302,type:"Stun"},{hostname:"global.stun.twilio.com",port:3478,type:"Stun"},{hostname:"stun.cloudflare.com",port:3478,type:"Stun"}],lh="";async function PB(r,e){try{let t=await fetch(r,{headers:{"X-API-Key":e}});if(!t.ok)throw new Error(`HTTP ${t.status}`);let{iceServers:n}=await t.json();lh="";let i=[];for(let s of n)for(let o of s.urls)if(o.startsWith("stun:")){let a=o.replace("stun:","").split(":")[0],c=parseInt(o.split(":")[2]||"3478");i.push({hostname:a,port:c,type:"Stun"})}else if(o.startsWith("turn:")||o.startsWith("turns:")){let a=o.startsWith("turns:"),l=o.replace(/^turns?:/,"").split("?")[0],u=l.split(":")[0],f=parseInt(l.split(":")[1]||(a?"5349":"3478")),d=o.includes("transport=tcp")?"Tcp":"Udp";i.push({hostname:u,port:f,type:a?"Tls":"Turn",relayType:d,username:s.username,password:s.credential})}return i}catch(t){return lh!==t.message&&(lh=t.message,console.warn(`[WebRtcProtocol] TURN fetch failed (${t.message}) \u2014 using STUN-only fallback. Will retry on next connection.`)),null}}var El=class extends Es{static id="rtc";static capabilities={control:!0,binary:!0,signaling:"external"};static priority={control:50,binary:100};constructor(){super(),this._pc=null,this._dcControl=null,this._dcBinary=null,this._iceServers=MB,this._refreshTimer=null,this._remoteSet=!1,this._pendingCandidates=[],this._signaling=null,this._iceGraceTimer=null,this._answerTimer=null}async connect(e){this._ctx=e,this._setState(ct.connecting);let t=e.profile?.rtc||{};t.enableTurn&&e.auth?.apiKey&&t.turnApiUrl&&await this._refreshTurn(t),this._signaling=e.signaling,this._signaling?.on?.(n=>this._handleSignal(n,t))}disconnect(){clearTimeout(this._refreshTimer),this._signaling?.off?.(),this._signaling=null,this._cleanupPeer(),this._setState(ct.closed)}send(e,t){if(e===Ae.control){if(!this._dcControl)return!1;try{return this._dcControl.sendMessage(yw({event:t.event,args:t.args||[],ackId:t.ackId||null})),!0}catch{return!1}}if(e===Ae.binary){if(!this._dcBinary)return!1;try{let n=Array.isArray(t)?t[0]:t;return this._dcBinary.bufferedAmount()>H.webrtc.dcBufferThreshold?!1:this._dcBinary.sendMessageBinary(n)}catch(n){return Gn.error(`send binary failed: ${n.message}`),!1}}return!1}_handleSignal(e,t){if(e.type==="offer")this._processOffer(e.sdp,t);else if(e.type==="ice"){if(!this._remoteSet||!this._pc){this._pendingCandidates.push({candidate:e.candidate,mid:e.mid||"0"});return}this._addRemoteCandidate(e.candidate,e.mid||"0")}else e.type==="error"&&Gn.warn(`remote signaling error: ${e.message||"unknown"}`)}async _addRemoteCandidate(e,t){try{let n=await Sw(e);if(!n||!this._pc)return;this._pc.addRemoteCandidate(n,t)}catch(n){Gn.error(`addRemoteCandidate: ${n.message}`)}}_createPeer(e){this._pc&&Gn.warn(`peer recreate while live (state=${this._state}) \u2014 reconnect race`);try{this._pc?.close()}catch{}this._pc=null,this._dcControl=null,this._dcBinary=null,this._remoteSet=!1,this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null);let t=this._ctx?.auth?.socketId||"anon",{PeerConnection:n}=OB(),i=new n(`peer-${t}`,{iceServers:this._iceServers});this._pcState="new",i.onStateChange(s=>{if(this._pcState=s,s==="failed"||s==="closed")this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._setState(ct.closed);else if(s==="disconnected"){if(this._iceGraceTimer)return;this._iceGraceTimer=setTimeout(()=>{this._iceGraceTimer=null,this._pcState!=="connected"&&this._setState(ct.closed)},H.webrtc.iceDisconnectGraceMs)}else s==="connected"&&this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null)}),i.onDataChannel(s=>{let o=s.getLabel?.()||"",a=()=>{o==="control"?this._dcControl=s:o==="binary"&&(this._dcBinary=s),this._dcControl&&this._dcBinary&&this._setState(ct.open)};s.onOpen(a),s.onClosed(()=>{o==="control"&&(this._dcControl=null),o==="binary"&&(this._dcBinary=null),!this._dcControl&&!this._dcBinary&&this._setState(ct.closed)}),s.onError(c=>Gn.error(`DC[${o}] error: ${c?.message||c}`)),s.onMessage(c=>{if(o!=="control")return;let l;try{l=xw(c)}catch(u){Gn.error(`control parse: ${u.message}`);return}try{this._emit("message",{event:l.event,data:l,source:"rtc"})}catch(u){Gn.error(`handler error event=${l.event}: ${u.message}`)}})}),this._pc=i}_processOffer(e,t){this._createPeer(t);let n=!1,i=()=>{this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null)};return new Promise((s,o)=>{this._pc.onLocalDescription((c,l)=>{l!=="answer"||n||(n=!0,i(),this._signaling?.send?.({type:"answer",sdp:c}),s())}),this._pc.onLocalCandidate((c,l)=>{c&&this._signaling?.send?.({type:"ice",candidate:c,mid:l})});try{this._pc.setRemoteDescription(e,"offer"),this._remoteSet=!0;for(let{candidate:c,mid:l}of this._pendingCandidates)this._addRemoteCandidate(c,l);this._pendingCandidates=[],this._pc.setLocalDescription()}catch(c){n||(n=!0,i()),this._signaling?.send?.({type:"error",message:c.message}),o(c);return}let a=t?.answerTimeout||1e4;this._answerTimer=setTimeout(()=>{n||(n=!0,this._answerTimer=null,Gn.warn(`Answer timeout (no local description within ${a}ms)`),o(new Error("Answer timeout")))},a)})}_cleanupPeer(){this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null);try{this._pc?.close()}catch{}this._pc=null,this._dcControl=null,this._dcBinary=null}async _refreshTurn(e){let t=await PB(e.turnApiUrl,this._ctx.auth.apiKey);t?.length&&(this._iceServers=t,H.logging?.webrtc&&console.log(`[WebRtcProtocol] TURN credentials loaded (${t.length} servers)`)),clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(()=>this._refreshTurn(e),e.turnRefreshInterval)}};var Ew=new Map;function uh(r){if(!r?.id)throw new Error("Adapter missing static id");Ew.set(r.id,r)}function Tw(r){return Ew.get(r)}Rh();uh(bl);uh(El);var Bl=class{constructor(e,t){let n=t.enableWebRTC?"remoteDesktop":"clientApp",i={...dw[n]};t.enableWebRTC||(i.enabled=["ws"]),i.rtc={enableTurn:!!(t.apiKey&&t.turnApiUrl),turnApiUrl:t.turnApiUrl||null,turnRefreshInterval:t.turnRefreshInterval,dcMaxMessageSize:t.dcMaxMessageSize,answerTimeout:t.answerTimeout},this._profile=i,this._auth={apiKey:t.apiKey||null,socketId:e.id},this._socket=e,this._wsChunkSize=t.wsChunkSize,this._dcChunkSize=t.dcChunkSize,this._dcMaxTilesPerFrame=t.dcMaxTilesPerFrame,this._maxControlBuffer=t.maxControlBuffer,this._adapters=new Map,this._listeners=new Map,this._buffer=[],this._rtcSignalingHandler=null,this._sigListeners=null,this._wsPendingSince=new Map,this._rtcPendingSince=new Map}get type(){return this._pickAdapter(Ae.binary)?.constructor.id==="rtc"?"dc":"ws"}async init(){for(let e of this._profile.enabled){let t=Tw(e);if(!t)continue;let n;try{n=new t,n.on("stateChange",i=>this._onAdapterStateChange(e,i)),n.on("message",({event:i,data:s,source:o})=>this._dispatch(i,s,o)),await n.connect(this._buildCtx(e))}catch(i){if(e==="rtc"){console.warn(`[ProtocolManager] WebRTC unavailable \u2014 remote desktop over WS only. (${i.message})`);continue}throw i}this._adapters.set(e,n)}}setupSignaling(e){this._installSignalingListeners()}emit(e,...t){this._sendControl(e,t)}sendTiles(e,t){let{tiles:n,timestamp:i}=e;if(!n?.length)return[];let s=this._pickAdapter(Ae.binary),o=i??Date.now();return s?.constructor.id==="rtc"&&t?this._emitTilesRtc(s,n,o,t):this._emitTilesChunked(n,o)}close(){for(let e of this._adapters.values())try{e.disconnect()}catch{}this._adapters.clear(),this._buffer=[]}attachAsBus(e){if(e._rawEmit)return;let t=e.emit.bind(e);e._rawEmit=t;let n=new Set(["error","disconnect","disconnecting","connect","newListener","removeListener"]);e.emit=(i,...s)=>n.has(i)?t(i,...s):(this._sendControl(i,s),!0)}_emitTilesChunked(e,t){let n=this._adapters.get("ws");if(!n?.ready)return[];let i=this._wsChunkSize,s=this._wsPendingSince,o=t??Date.now(),a=[...e].sort((l,u)=>{let f=s.get(l.tileIndex)??1/0,d=s.get(u.tileIndex)??1/0;return f!==d?f-d:l.tileIndex-u.tileIndex}),c=[];for(let l=0;l<a.length;l+=i){let u=a.slice(l,l+i);if(n.send(Ae.binary,Ms(u,t))===!1){for(let f=l;f<a.length;f++){let d=a[f].tileIndex;s.has(d)||s.set(d,o)}break}for(let f of u)s.delete(f.tileIndex);c.push(...u)}return c}_emitTilesRtc(e,t,n,i){let s=this._profile.rtc?.dcMaxMessageSize??65536,o=t.length,a=this._rtcPendingSince,c=n??Date.now(),l=[...t].sort((y,b)=>{let C=a.get(y.tileIndex)??1/0,R=a.get(b.tileIndex)??1/0;return C!==R?C-R:y.tileIndex-b.tileIndex}),u=y=>l.slice(0,y),f=Math.min(this._dcChunkSize,o);for(;f>1&&i(u(f),n).length>s;)f=Math.floor(f/2);let d=this._adapters.get("ws"),g=[];for(let y=0;y<o;y+=f){let b=l.slice(y,y+f),C=i(b,n);if(C.length>s){b.length===1&&d?.ready&&d.send(Ae.binary,C)!==!1&&(a.delete(b[0].tileIndex),g.push(...b));continue}if(e.send(Ae.binary,C)===!1){let R=l.slice(y);if(d?.ready){let O=this._emitTilesChunked(R,n);for(let P of O)a.delete(P.tileIndex);g.push(...O)}else for(let O=y;O<o;O++)a.has(l[O].tileIndex)||a.set(l[O].tileIndex,c);return g}for(let R of b)a.delete(R.tileIndex);g.push(...b)}return g}_buildCtx(e){let t={auth:this._auth,profile:this._profile};return e==="ws"&&(t.socket=this._socket),e==="rtc"&&(t.signaling={send:n=>this._sendSignaling(n),on:n=>{this._rtcSignalingHandler=n,this._installSignalingListeners()},off:()=>{this._rtcSignalingHandler=null,this._removeSignalingListeners()}}),t}_onAdapterStateChange(e,t){t===ct.open&&this._flushBuffer()}_pickAdapter(e){let t=this._profile.channels[e];if(!t)return null;let n=[...this._adapters.values()].filter(i=>i.supports(e)&&i.ready);if(t.prefer){let i=n.find(s=>s.constructor.id===t.prefer);if(i)return i}return n.sort((i,s)=>(s.constructor.priority[e]??0)-(i.constructor.priority[e]??0)),n[0]||null}hasReadyAdapter(){return!!(this._pickAdapter(Ae.control)||this._pickAdapter(Ae.binary))}_sendControl(e,t,n){let i=this._pickAdapter(Ae.control);if(!i){this._buffer.push({event:e,args:t,ackId:n}),this._buffer.length>this._maxControlBuffer&&this._buffer.shift();return}if(i.constructor.id==="rtc"&&oj(t)>fw){let s=this._adapters.get("ws");s?.ready&&(i=s)}if(i.constructor.id==="rtc"){if(i.send(Ae.control,{event:e,args:t,ackId:n}))return;let o=this._adapters.get("ws");if(o?.ready&&o.send(Ae.control,{event:e,args:t}))return}else if(i.send(Ae.control,{event:e,args:t}))return;this._buffer.push({event:e,args:t,ackId:n}),this._buffer.length>this._maxControlBuffer&&this._buffer.shift()}_flushBuffer(){if(!(!this._buffer.length||!this._pickAdapter(Ae.control)))for(;this._buffer.length;){let{event:t,args:n,ackId:i}=this._buffer.shift();this._sendControl(t,n,i)}}_dispatch(e,t,n){if(n==="rtc"){let s=Array.isArray(t?.args)?[...t.args]:[],o=t?.ackId;o&&s.push((...l)=>this._sendAck(o,l));let a=this._listeners.get(e);if(a)for(let l of a)l(...s);let c=this._socket.listeners?.(e)||[];for(let l of c)l(...s);return}let i=this._listeners.get(e);if(i)for(let s of i)s(t)}_sendAck(e,t){let n=this._adapters.get("rtc");if(n?.ready&&n.send(Ae.control,{event:"__ack",args:t,ackId:e}))return;let i=this._adapters.get("ws");i?.ready&&i.send(Ae.control,{event:"__ack",args:t,ackId:e})}_sendSignaling(e){let t=this._adapters.get("ws");if(t?.ready){t.send(Ae.control,{event:this._sigEvent(e.type),args:[this._sigData(e)]});return}console.warn("[ProtocolManager] signaling unavailable (ws down)")}_sigEvent(e){return e==="offer"?"webrtc:offer":e==="answer"?"webrtc:answer":e==="ice"?"webrtc:ice-candidate":"webrtc:error"}_sigData(e){return e.type==="offer"||e.type==="answer"?{sdp:e.sdp}:e.type==="ice"?{candidate:e.candidate,mid:e.mid}:e}_installSignalingListeners(){if(!this._rtcSignalingHandler||this._sigListeners)return;let e=({sdp:n})=>this._rtcSignalingHandler?.({type:"offer",sdp:n}),t=({candidate:n,mid:i})=>this._rtcSignalingHandler?.({type:"ice",candidate:n,mid:i});this._sigListeners={onOffer:e,onIce:t},this._socket.on("webrtc:offer",e),this._socket.on("webrtc:ice-candidate",t)}_removeSignalingListeners(){this._sigListeners&&(this._socket.off("webrtc:offer",this._sigListeners.onOffer),this._socket.off("webrtc:ice-candidate",this._sigListeners.onIce),this._sigListeners=null)}};function oj(r){let e=0;for(let t of r)t==null?e+=4:typeof t=="string"?e+=t.length:e+=JSON.stringify(t).length;return e}_i();dt();var AC=require("path"),RC=require("url");var ql=W(require("net"),1),ce=W(require("fs"),1),he=W(require("path"),1),ES=W(require("os"),1),TS=require("child_process"),CS=require("url");var Ph=W(require("fs"),1),oa="44",Mh={win32:[{id:"cmd",label:"Command Prompt",path:"cmd.exe",args:[]},{id:"powershell",label:"PowerShell",path:"powershell.exe",args:["-NoLogo"]},{id:"pwsh",label:"PowerShell Core",path:"pwsh.exe",args:["-NoLogo"]}],unix:[{id:"bash",label:"Bash",path:"/bin/bash",args:["-l"]},{id:"zsh",label:"Zsh",path:"/bin/zsh",args:["-l"]},{id:"sh",label:"Sh",path:"/bin/sh",args:["-l"]}]};function _S(){if(process.platform!=="win32")return[];let r=process.env.SystemRoot||"C:\\Windows";return Mh.win32.filter(e=>{try{return Ph.default.existsSync(e.path)||Ph.default.existsSync(`${r}\\System32\\${e.path}`)}catch{return!0}})}function bS(r){if(process.platform==="win32"){let n=r?Mh.win32.find(s=>s.id===r):null;if(n)return n;let i=process.env.COMSPEC;return i?{id:"cmd",label:"Command Prompt",path:i,args:[]}:Mh.win32[0]}let e=process.env.SHELL||"/bin/bash",t=e.split("/").pop();return{id:t,label:t,path:e,args:["-l"]}}var Nh=he.default.dirname((0,CS.fileURLToPath)(__importMetaUrl)),wn=he.default.join(ES.default.homedir(),".9remote"),aa=process.platform==="win32"?"\\\\.\\pipe\\9remote-pty":he.default.join(wn,"pty-daemon.sock"),wS=he.default.join(Nh,"ptyDaemon.js"),SS=he.default.join(Nh,"ptyDaemon.cjs"),jl=he.default.join(wn,"daemon");function kS(r,e){if(ce.default.existsSync(r)){ce.default.mkdirSync(e,{recursive:!0});for(let t of ce.default.readdirSync(r,{withFileTypes:!0})){let n=he.default.join(r,t.name),i=he.default.join(e,t.name);t.isDirectory()?kS(n,i):t.isFile()&&ce.default.copyFileSync(n,i)}}}function aj(r,e){let t=r;for(let n=0;n<6;n++){let i=he.default.join(t,"node_modules",e);if(ce.default.existsSync(i))return i;let s=he.default.dirname(t);if(s===t)break;t=s}return null}var cj=r=>aj(r,"node-pty");function lj(r){try{if(!ce.default.existsSync(jl))return;let e=he.default.join(wn,"pids","ptyDaemon.pid"),t=!1;try{let n=parseInt(ce.default.readFileSync(e,"utf8").trim(),10);if(Number.isFinite(n)&&n>0)try{process.kill(n,0),t=!0}catch{}}catch{}if(t)return;for(let n of ce.default.readdirSync(jl))if(n!==`v${r}`)try{ce.default.rmSync(he.default.join(jl,n),{recursive:!0,force:!0})}catch{}}catch{}}function uj(r){lj(oa);let e=he.default.join(jl,`v${oa}`),t=r.endsWith(".js"),n=t?he.default.join(e,"features","terminal"):e,i=he.default.join(n,he.default.basename(r)),s=he.default.join(n,"node_modules","node-pty");if(ce.default.existsSync(i)&&ce.default.existsSync(s))return{script:i,cwd:n};try{if(ce.default.mkdirSync(n,{recursive:!0}),ce.default.copyFileSync(r,i),t){let a=he.default.dirname(r);ce.default.copyFileSync(he.default.join(a,"constants.js"),he.default.join(n,"constants.js"));let c=he.default.join(e,"lib");ce.default.mkdirSync(c,{recursive:!0}),ce.default.copyFileSync(he.default.resolve(a,"..","..","lib","constants.js"),he.default.join(c,"constants.js"))}let o=cj(he.default.dirname(r));return o?(kS(o,s),{script:i,cwd:n}):null}catch{return null}}var zr=null,Is=!1,Vn=!1,Ih="",pj=0,Ns=new Map,Fl=new Map;function fj(){return++pj}function la(r,e){Fl.has(r)||Fl.set(r,[]),Fl.get(r).push(e)}function ca(r,e){let t=Fl.get(r);if(t)for(let n of t)try{n(e)}catch(i){console.error(`[DaemonClient] Error in ${r} handler:`,i)}}function Dh(r){if(!zr||!Is)return!1;try{return zr.write(JSON.stringify(r)+`
|
|
114
|
-
`),!0}catch(e){return console.error("[DaemonClient] Send error:",e),!1}}function Ds(r,e=5e3){return new Promise((t,n)=>{let i=fj();r.requestId=i;let s=setTimeout(()=>{Ns.delete(i),n(new Error("Request timeout"))},e);Ns.set(i,{resolve:t,reject:n,timer:s}),Dh(r)||(clearTimeout(s),Ns.delete(i),n(new Error("Not connected to daemon")))})}function dj(r){let{type:e,requestId:t,...n}=r;if(t&&Ns.has(t)){let{resolve:i,timer:s}=Ns.get(t);clearTimeout(s),Ns.delete(t),i({type:e,...n});return}switch(e){case"output":ca("output",{sessionId:n.sessionId,enc:n.enc,replay:n.replay===!0,data:n.enc==="b64"?n.data:Buffer.from(n.data,"base64")});break;case"sessionClosed":ca("sessionClosed",n.sessionId);break;case"cwdChange":ca("cwdChange",{sessionId:n.sessionId,cwd:n.cwd});break;case"pong":break;default:console.log("[DaemonClient] Unknown message:",e)}}function Ul(){return new Promise(r=>{let e=ql.default.connect(aa),t=setTimeout(()=>{e.destroy(),r(!1)},1e3);e.on("connect",()=>{clearTimeout(t),e.destroy(),r(!0)}),e.on("error",()=>{if(clearTimeout(t),process.platform!=="win32"&&ce.default.existsSync(aa))try{ce.default.unlinkSync(aa)}catch{}r(!1)})})}function hj(){ce.default.existsSync(wn)||ce.default.mkdirSync(wn,{recursive:!0});let r=ce.default.existsSync(wS)?wS:ce.default.existsSync(SS)?SS:null;if(!r)return console.error("[DaemonClient] \u274C Daemon script not found"),null;let e=uj(r);return e||{script:r,cwd:Nh}}async function mj(){if(!ce.default.existsSync(wn))try{ce.default.mkdirSync(wn,{recursive:!0})}catch(a){return console.error("[DaemonClient] Failed to create socket directory:",a.message),!1}let r=hj();if(!r)return!1;let{script:e,cwd:t}=r,n=
|
|
113
|
+
`);return s!==-1&&(e=Hv(e,i,n,s)),n+e+i};Object.defineProperties(vo.prototype,$i);var TM=vo(),p6=vo({level:Gv?Gv.level:0});var yo=TM;Ft();St();ri();var aw=W(ow(),1),{Server:cw,Namespace:o8,Socket:a8}=aw.default;var vR=require("fs"),yR=require("path");St();_l();var Ae={control:"control",binary:"binary"},fw=65536,ct={idle:"idle",connecting:"connecting",open:"open",degraded:"degraded",closed:"closed"},dw={clientApp:{enabled:["ws","rtc"],channels:{control:{strategy:"priority",prefer:"rtc"},binary:{strategy:"priority",prefer:"rtc"}}},remoteDesktop:{enabled:["ws","rtc"],channels:{control:{strategy:"priority",prefer:"rtc"},binary:{strategy:"priority",prefer:"rtc"}}}};var Es=class{static id="base";static capabilities={control:!1,binary:!1,signaling:"none"};static priority={control:0,binary:0};constructor(){this._listeners=new Map,this._state=ct.idle}get state(){return this._state}get ready(){return this._state===ct.open}supports(e){return!!this.constructor.capabilities[e]}on(e,t){this._listeners.has(e)||this._listeners.set(e,new Set),this._listeners.get(e).add(t)}off(e,t){this._listeners.get(e)?.delete(t)}_emit(e,...t){let n=this._listeners.get(e);if(n)for(let i of n)i(...t)}_setState(e){this._state!==e&&(this._state=e,this._emit("stateChange",e))}connect(e){throw new Error("Not implemented: connect")}disconnect(){throw new Error("Not implemented: disconnect")}send(e,t){throw new Error("Not implemented: send")}};var bl=class extends Es{static id="ws";static capabilities={control:!0,binary:!0,signaling:"ws"};static priority={control:100,binary:10};constructor(){super(),this._socket=null}get socket(){return this._socket}connect(e){this._socket=e.socket,this._setState(e.socket.connected?ct.open:ct.connecting),e.socket.on("connect",()=>this._setState(ct.open)),e.socket.on("disconnect",()=>this._setState(ct.closed)),e.socket.onAny?.((t,n)=>this._emit("message",{event:t,data:n,source:"ws"}))}disconnect(){this._socket=null,this._setState(ct.closed)}send(e,t){if(!this._socket?.connected)return!1;let n=this._socket._rawEmit||this._socket.emit.bind(this._socket);if(e===Ae.control){let{event:i,args:s=[]}=t;return n(i,...s),!0}if(e===Ae.binary){let i=this._socket.conn?.transport;return i&&i.writable===!1?!1:(n("tiles-bin-v2",t),!0)}return!1}};var mw=require("child_process"),gw=require("module"),wl=W(require("path"),1),oh=W(require("os"),1),ah=(0,gw.createRequire)(__importMetaUrl),bB=300*1e3,hw=new Map;function vw(r){try{return ah(r)}catch(e){if(e.code!=="MODULE_NOT_FOUND"&&!wB(e))throw e;let t=hw.get(r);if(t!=null&&Date.now()-t<bB)throw e;return hw.set(r,Date.now()),EB(r),ah(r)}}function wB(r){return/\.node'|Cannot find module.*\.node|MODULE_NOT_FOUND/i.test(r.message||"")}function SB(r){let e=ah.resolve(`${r}/package.json`);return wl.default.dirname(e)}function EB(r){let e=SB(r),t=wl.default.dirname(e),n=oh.default.platform()==="win32"?"prebuild-install.cmd":"prebuild-install",i=wl.default.join(t,".bin",n);try{let s=(0,mw.spawnSync)(i,["-r","napi"],{cwd:e,stdio:"ignore",shell:oh.default.platform()==="win32",timeout:12e4});console.warn(`[nativeSelfHeal] ${r} heal attempted (status=${s.status})`)}catch(s){console.warn(`[nativeSelfHeal] ${r} heal failed:`,s.message)}}function TB(r,e){return e&&typeof e=="object"&&e.type==="Buffer"&&Array.isArray(e.data)?{__b:Buffer.from(e.data).toString("base64")}:e}function CB(r,e){return e&&typeof e=="object"&&typeof e.__b=="string"?Buffer.from(e.__b,"base64"):e}function yw(r){return JSON.stringify(r,TB)}function xw(r){return JSON.parse(typeof r=="string"?r:Buffer.from(r).toString("utf8"),CB)}dt();var ww=W(require("node:dns/promises"),1),kB=3e4,AB=/\s([0-9a-f-]{8,}\.local)\s/i,bw=new Map;async function RB(r){let e=bw.get(r);if(e&&Date.now()-e.ts<kB)return e.ip;try{let{address:t}=await ww.default.lookup(r);return bw.set(r,{ip:t,ts:Date.now()}),t}catch{return null}}async function Sw(r){let e=r.match(AB);if(!e)return r;let t=await RB(e[1]);return t?r.replace(e[1],t):null}ri();var Gn=Fr("webrtc"),ch=null;function OB(){return ch||(ch=vw("node-datachannel")),ch}var MB=[{hostname:"stun.l.google.com",port:19302,type:"Stun"},{hostname:"stun1.l.google.com",port:19302,type:"Stun"},{hostname:"stun2.l.google.com",port:19302,type:"Stun"},{hostname:"stun3.l.google.com",port:19302,type:"Stun"},{hostname:"stun4.l.google.com",port:19302,type:"Stun"},{hostname:"global.stun.twilio.com",port:3478,type:"Stun"},{hostname:"stun.cloudflare.com",port:3478,type:"Stun"}],lh="";async function PB(r,e){try{let t=await fetch(r,{headers:{"X-API-Key":e}});if(!t.ok)throw new Error(`HTTP ${t.status}`);let{iceServers:n}=await t.json();lh="";let i=[];for(let s of n)for(let o of s.urls)if(o.startsWith("stun:")){let a=o.replace("stun:","").split(":")[0],c=parseInt(o.split(":")[2]||"3478");i.push({hostname:a,port:c,type:"Stun"})}else if(o.startsWith("turn:")||o.startsWith("turns:")){let a=o.startsWith("turns:"),l=o.replace(/^turns?:/,"").split("?")[0],u=l.split(":")[0],f=parseInt(l.split(":")[1]||(a?"5349":"3478")),d=o.includes("transport=tcp")?"Tcp":"Udp";i.push({hostname:u,port:f,type:a?"Tls":"Turn",relayType:d,username:s.username,password:s.credential})}return i}catch(t){return lh!==t.message&&(lh=t.message,console.warn(`[WebRtcProtocol] TURN fetch failed (${t.message}) \u2014 using STUN-only fallback. Will retry on next connection.`)),null}}var El=class extends Es{static id="rtc";static capabilities={control:!0,binary:!0,signaling:"external"};static priority={control:50,binary:100};constructor(){super(),this._pc=null,this._dcControl=null,this._dcBinary=null,this._iceServers=MB,this._refreshTimer=null,this._remoteSet=!1,this._pendingCandidates=[],this._signaling=null,this._iceGraceTimer=null,this._answerTimer=null}async connect(e){this._ctx=e,this._setState(ct.connecting);let t=e.profile?.rtc||{};t.enableTurn&&e.auth?.apiKey&&t.turnApiUrl&&await this._refreshTurn(t),this._signaling=e.signaling,this._signaling?.on?.(n=>this._handleSignal(n,t))}disconnect(){clearTimeout(this._refreshTimer),this._signaling?.off?.(),this._signaling=null,this._cleanupPeer(),this._setState(ct.closed)}send(e,t){if(e===Ae.control){if(!this._dcControl)return!1;try{return this._dcControl.sendMessage(yw({event:t.event,args:t.args||[],ackId:t.ackId||null})),!0}catch{return!1}}if(e===Ae.binary){if(!this._dcBinary)return!1;try{let n=Array.isArray(t)?t[0]:t;return this._dcBinary.bufferedAmount()>H.webrtc.dcBufferThreshold?!1:this._dcBinary.sendMessageBinary(n)}catch(n){return Gn.error(`send binary failed: ${n.message}`),!1}}return!1}_handleSignal(e,t){if(e.type==="offer")this._processOffer(e.sdp,t);else if(e.type==="ice"){if(!this._remoteSet||!this._pc){this._pendingCandidates.push({candidate:e.candidate,mid:e.mid||"0"});return}this._addRemoteCandidate(e.candidate,e.mid||"0")}else e.type==="error"&&Gn.warn(`remote signaling error: ${e.message||"unknown"}`)}async _addRemoteCandidate(e,t){try{let n=await Sw(e);if(!n||!this._pc)return;this._pc.addRemoteCandidate(n,t)}catch(n){Gn.error(`addRemoteCandidate: ${n.message}`)}}_createPeer(e){this._pc&&Gn.warn(`peer recreate while live (state=${this._state}) \u2014 reconnect race`);try{this._pc?.close()}catch{}this._pc=null,this._dcControl=null,this._dcBinary=null,this._remoteSet=!1,this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null);let t=this._ctx?.auth?.socketId||"anon",{PeerConnection:n}=OB(),i=new n(`peer-${t}`,{iceServers:this._iceServers});this._pcState="new",i.onStateChange(s=>{if(this._pcState=s,s==="failed"||s==="closed")this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._setState(ct.closed);else if(s==="disconnected"){if(this._iceGraceTimer)return;this._iceGraceTimer=setTimeout(()=>{this._iceGraceTimer=null,this._pcState!=="connected"&&this._setState(ct.closed)},H.webrtc.iceDisconnectGraceMs)}else s==="connected"&&this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null)}),i.onDataChannel(s=>{let o=s.getLabel?.()||"",a=()=>{o==="control"?this._dcControl=s:o==="binary"&&(this._dcBinary=s),this._dcControl&&this._dcBinary&&this._setState(ct.open)};s.onOpen(a),s.onClosed(()=>{o==="control"&&(this._dcControl=null),o==="binary"&&(this._dcBinary=null),!this._dcControl&&!this._dcBinary&&this._setState(ct.closed)}),s.onError(c=>Gn.error(`DC[${o}] error: ${c?.message||c}`)),s.onMessage(c=>{if(o!=="control")return;let l;try{l=xw(c)}catch(u){Gn.error(`control parse: ${u.message}`);return}try{this._emit("message",{event:l.event,data:l,source:"rtc"})}catch(u){Gn.error(`handler error event=${l.event}: ${u.message}`)}})}),this._pc=i}_processOffer(e,t){this._createPeer(t);let n=!1,i=()=>{this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null)};return new Promise((s,o)=>{this._pc.onLocalDescription((c,l)=>{l!=="answer"||n||(n=!0,i(),this._signaling?.send?.({type:"answer",sdp:c}),s())}),this._pc.onLocalCandidate((c,l)=>{c&&this._signaling?.send?.({type:"ice",candidate:c,mid:l})});try{this._pc.setRemoteDescription(e,"offer"),this._remoteSet=!0;for(let{candidate:c,mid:l}of this._pendingCandidates)this._addRemoteCandidate(c,l);this._pendingCandidates=[],this._pc.setLocalDescription()}catch(c){n||(n=!0,i()),this._signaling?.send?.({type:"error",message:c.message}),o(c);return}let a=t?.answerTimeout||1e4;this._answerTimer=setTimeout(()=>{n||(n=!0,this._answerTimer=null,Gn.warn(`Answer timeout (no local description within ${a}ms)`),o(new Error("Answer timeout")))},a)})}_cleanupPeer(){this._iceGraceTimer&&(clearTimeout(this._iceGraceTimer),this._iceGraceTimer=null),this._answerTimer&&(clearTimeout(this._answerTimer),this._answerTimer=null);try{this._pc?.close()}catch{}this._pc=null,this._dcControl=null,this._dcBinary=null}async _refreshTurn(e){let t=await PB(e.turnApiUrl,this._ctx.auth.apiKey);t?.length&&(this._iceServers=t,H.logging?.webrtc&&console.log(`[WebRtcProtocol] TURN credentials loaded (${t.length} servers)`)),clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(()=>this._refreshTurn(e),e.turnRefreshInterval)}};var Ew=new Map;function uh(r){if(!r?.id)throw new Error("Adapter missing static id");Ew.set(r.id,r)}function Tw(r){return Ew.get(r)}Rh();uh(bl);uh(El);var Bl=class{constructor(e,t){let n=t.enableWebRTC?"remoteDesktop":"clientApp",i={...dw[n]};t.enableWebRTC||(i.enabled=["ws"]),i.rtc={enableTurn:!!(t.apiKey&&t.turnApiUrl),turnApiUrl:t.turnApiUrl||null,turnRefreshInterval:t.turnRefreshInterval,dcMaxMessageSize:t.dcMaxMessageSize,answerTimeout:t.answerTimeout},this._profile=i,this._auth={apiKey:t.apiKey||null,socketId:e.id},this._socket=e,this._wsChunkSize=t.wsChunkSize,this._dcChunkSize=t.dcChunkSize,this._dcMaxTilesPerFrame=t.dcMaxTilesPerFrame,this._maxControlBuffer=t.maxControlBuffer,this._adapters=new Map,this._listeners=new Map,this._buffer=[],this._rtcSignalingHandler=null,this._sigListeners=null,this._wsPendingSince=new Map,this._rtcPendingSince=new Map}get type(){return this._pickAdapter(Ae.binary)?.constructor.id==="rtc"?"dc":"ws"}async init(){for(let e of this._profile.enabled){let t=Tw(e);if(!t)continue;let n;try{n=new t,n.on("stateChange",i=>this._onAdapterStateChange(e,i)),n.on("message",({event:i,data:s,source:o})=>this._dispatch(i,s,o)),await n.connect(this._buildCtx(e))}catch(i){if(e==="rtc"){console.warn(`[ProtocolManager] WebRTC unavailable \u2014 remote desktop over WS only. (${i.message})`);continue}throw i}this._adapters.set(e,n)}}setupSignaling(e){this._installSignalingListeners()}emit(e,...t){this._sendControl(e,t)}sendTiles(e,t){let{tiles:n,timestamp:i}=e;if(!n?.length)return[];let s=this._pickAdapter(Ae.binary),o=i??Date.now();return s?.constructor.id==="rtc"&&t?this._emitTilesRtc(s,n,o,t):this._emitTilesChunked(n,o)}close(){for(let e of this._adapters.values())try{e.disconnect()}catch{}this._adapters.clear(),this._buffer=[]}attachAsBus(e){if(e._rawEmit)return;let t=e.emit.bind(e);e._rawEmit=t;let n=new Set(["error","disconnect","disconnecting","connect","newListener","removeListener"]);e.emit=(i,...s)=>n.has(i)?t(i,...s):(this._sendControl(i,s),!0)}_emitTilesChunked(e,t){let n=this._adapters.get("ws");if(!n?.ready)return[];let i=this._wsChunkSize,s=this._wsPendingSince,o=t??Date.now(),a=[...e].sort((l,u)=>{let f=s.get(l.tileIndex)??1/0,d=s.get(u.tileIndex)??1/0;return f!==d?f-d:l.tileIndex-u.tileIndex}),c=[];for(let l=0;l<a.length;l+=i){let u=a.slice(l,l+i);if(n.send(Ae.binary,Ms(u,t))===!1){for(let f=l;f<a.length;f++){let d=a[f].tileIndex;s.has(d)||s.set(d,o)}break}for(let f of u)s.delete(f.tileIndex);c.push(...u)}return c}_emitTilesRtc(e,t,n,i){let s=this._profile.rtc?.dcMaxMessageSize??65536,o=t.length,a=this._rtcPendingSince,c=n??Date.now(),l=[...t].sort((y,b)=>{let C=a.get(y.tileIndex)??1/0,R=a.get(b.tileIndex)??1/0;return C!==R?C-R:y.tileIndex-b.tileIndex}),u=y=>l.slice(0,y),f=Math.min(this._dcChunkSize,o);for(;f>1&&i(u(f),n).length>s;)f=Math.floor(f/2);let d=this._adapters.get("ws"),g=[];for(let y=0;y<o;y+=f){let b=l.slice(y,y+f),C=i(b,n);if(C.length>s){b.length===1&&d?.ready&&d.send(Ae.binary,C)!==!1&&(a.delete(b[0].tileIndex),g.push(...b));continue}if(e.send(Ae.binary,C)===!1){let R=l.slice(y);if(d?.ready){let O=this._emitTilesChunked(R,n);for(let P of O)a.delete(P.tileIndex);g.push(...O)}else for(let O=y;O<o;O++)a.has(l[O].tileIndex)||a.set(l[O].tileIndex,c);return g}for(let R of b)a.delete(R.tileIndex);g.push(...b)}return g}_buildCtx(e){let t={auth:this._auth,profile:this._profile};return e==="ws"&&(t.socket=this._socket),e==="rtc"&&(t.signaling={send:n=>this._sendSignaling(n),on:n=>{this._rtcSignalingHandler=n,this._installSignalingListeners()},off:()=>{this._rtcSignalingHandler=null,this._removeSignalingListeners()}}),t}_onAdapterStateChange(e,t){t===ct.open&&this._flushBuffer()}_pickAdapter(e){let t=this._profile.channels[e];if(!t)return null;let n=[...this._adapters.values()].filter(i=>i.supports(e)&&i.ready);if(t.prefer){let i=n.find(s=>s.constructor.id===t.prefer);if(i)return i}return n.sort((i,s)=>(s.constructor.priority[e]??0)-(i.constructor.priority[e]??0)),n[0]||null}hasReadyAdapter(){return!!(this._pickAdapter(Ae.control)||this._pickAdapter(Ae.binary))}_sendControl(e,t,n){let i=this._pickAdapter(Ae.control);if(!i){this._buffer.push({event:e,args:t,ackId:n}),this._buffer.length>this._maxControlBuffer&&this._buffer.shift();return}if(i.constructor.id==="rtc"&&oj(t)>fw){let s=this._adapters.get("ws");s?.ready&&(i=s)}if(i.constructor.id==="rtc"){if(i.send(Ae.control,{event:e,args:t,ackId:n}))return;let o=this._adapters.get("ws");if(o?.ready&&o.send(Ae.control,{event:e,args:t}))return}else if(i.send(Ae.control,{event:e,args:t}))return;this._buffer.push({event:e,args:t,ackId:n}),this._buffer.length>this._maxControlBuffer&&this._buffer.shift()}_flushBuffer(){if(!(!this._buffer.length||!this._pickAdapter(Ae.control)))for(;this._buffer.length;){let{event:t,args:n,ackId:i}=this._buffer.shift();this._sendControl(t,n,i)}}_dispatch(e,t,n){if(n==="rtc"){let s=Array.isArray(t?.args)?[...t.args]:[],o=t?.ackId;o&&s.push((...l)=>this._sendAck(o,l));let a=this._listeners.get(e);if(a)for(let l of a)l(...s);let c=this._socket.listeners?.(e)||[];for(let l of c)l(...s);return}let i=this._listeners.get(e);if(i)for(let s of i)s(t)}_sendAck(e,t){let n=this._adapters.get("rtc");if(n?.ready&&n.send(Ae.control,{event:"__ack",args:t,ackId:e}))return;let i=this._adapters.get("ws");i?.ready&&i.send(Ae.control,{event:"__ack",args:t,ackId:e})}_sendSignaling(e){let t=this._adapters.get("ws");if(t?.ready){t.send(Ae.control,{event:this._sigEvent(e.type),args:[this._sigData(e)]});return}console.warn("[ProtocolManager] signaling unavailable (ws down)")}_sigEvent(e){return e==="offer"?"webrtc:offer":e==="answer"?"webrtc:answer":e==="ice"?"webrtc:ice-candidate":"webrtc:error"}_sigData(e){return e.type==="offer"||e.type==="answer"?{sdp:e.sdp}:e.type==="ice"?{candidate:e.candidate,mid:e.mid}:e}_installSignalingListeners(){if(!this._rtcSignalingHandler||this._sigListeners)return;let e=({sdp:n})=>this._rtcSignalingHandler?.({type:"offer",sdp:n}),t=({candidate:n,mid:i})=>this._rtcSignalingHandler?.({type:"ice",candidate:n,mid:i});this._sigListeners={onOffer:e,onIce:t},this._socket.on("webrtc:offer",e),this._socket.on("webrtc:ice-candidate",t)}_removeSignalingListeners(){this._sigListeners&&(this._socket.off("webrtc:offer",this._sigListeners.onOffer),this._socket.off("webrtc:ice-candidate",this._sigListeners.onIce),this._sigListeners=null)}};function oj(r){let e=0;for(let t of r)t==null?e+=4:typeof t=="string"?e+=t.length:e+=JSON.stringify(t).length;return e}_i();dt();var AC=require("path"),RC=require("url");var ql=W(require("net"),1),ce=W(require("fs"),1),le=W(require("path"),1),ES=W(require("os"),1),TS=require("child_process"),CS=require("url");var Ph=W(require("fs"),1),oa="44",Mh={win32:[{id:"cmd",label:"Command Prompt",path:"cmd.exe",args:[]},{id:"powershell",label:"PowerShell",path:"powershell.exe",args:["-NoLogo"]},{id:"pwsh",label:"PowerShell Core",path:"pwsh.exe",args:["-NoLogo"]}],unix:[{id:"bash",label:"Bash",path:"/bin/bash",args:["-l"]},{id:"zsh",label:"Zsh",path:"/bin/zsh",args:["-l"]},{id:"sh",label:"Sh",path:"/bin/sh",args:["-l"]}]};function _S(){if(process.platform!=="win32")return[];let r=process.env.SystemRoot||"C:\\Windows";return Mh.win32.filter(e=>{try{return Ph.default.existsSync(e.path)||Ph.default.existsSync(`${r}\\System32\\${e.path}`)}catch{return!0}})}function bS(r){if(process.platform==="win32"){let n=r?Mh.win32.find(s=>s.id===r):null;if(n)return n;let i=process.env.COMSPEC;return i?{id:"cmd",label:"Command Prompt",path:i,args:[]}:Mh.win32[0]}let e=process.env.SHELL||"/bin/bash",t=e.split("/").pop();return{id:t,label:t,path:e,args:["-l"]}}var Nh=le.default.dirname((0,CS.fileURLToPath)(__importMetaUrl)),wn=le.default.join(ES.default.homedir(),".9remote"),aa=process.platform==="win32"?"\\\\.\\pipe\\9remote-pty":le.default.join(wn,"pty-daemon.sock"),wS=le.default.join(Nh,"ptyDaemon.js"),SS=le.default.join(Nh,"ptyDaemon.cjs"),jl=le.default.join(wn,"daemon");function kS(r,e){if(ce.default.existsSync(r)){ce.default.mkdirSync(e,{recursive:!0});for(let t of ce.default.readdirSync(r,{withFileTypes:!0})){let n=le.default.join(r,t.name),i=le.default.join(e,t.name);t.isDirectory()?kS(n,i):t.isFile()&&ce.default.copyFileSync(n,i)}}}function aj(r,e){let t=r;for(let n=0;n<6;n++){let i=le.default.join(t,"node_modules",e);if(ce.default.existsSync(i))return i;let s=le.default.dirname(t);if(s===t)break;t=s}return null}var cj=r=>aj(r,"node-pty");function lj(r){try{if(!ce.default.existsSync(jl))return;let e=le.default.join(wn,"pids","ptyDaemon.pid"),t=!1;try{let n=parseInt(ce.default.readFileSync(e,"utf8").trim(),10);if(Number.isFinite(n)&&n>0)try{process.kill(n,0),t=!0}catch{}}catch{}if(t)return;for(let n of ce.default.readdirSync(jl))if(n!==`v${r}`)try{ce.default.rmSync(le.default.join(jl,n),{recursive:!0,force:!0})}catch{}}catch{}}function uj(r){lj(oa);let e=le.default.join(jl,`v${oa}`),t=r.endsWith(".js"),n=t?le.default.join(e,"features","terminal"):e,i=le.default.join(n,le.default.basename(r)),s=le.default.join(n,"node_modules","node-pty");if(ce.default.existsSync(i)&&ce.default.existsSync(s))return{script:i,cwd:n};try{if(ce.default.mkdirSync(n,{recursive:!0}),ce.default.copyFileSync(r,i),t){let a=le.default.dirname(r);ce.default.copyFileSync(le.default.join(a,"constants.js"),le.default.join(n,"constants.js")),ce.default.copyFileSync(le.default.join(a,"bufferSlice.js"),le.default.join(n,"bufferSlice.js"));let c=le.default.join(e,"lib");ce.default.mkdirSync(c,{recursive:!0}),ce.default.copyFileSync(le.default.resolve(a,"..","..","lib","constants.js"),le.default.join(c,"constants.js"))}let o=cj(le.default.dirname(r));return o?(kS(o,s),{script:i,cwd:n}):null}catch{return null}}var zr=null,Is=!1,Vn=!1,Ih="",pj=0,Ns=new Map,Fl=new Map;function fj(){return++pj}function la(r,e){Fl.has(r)||Fl.set(r,[]),Fl.get(r).push(e)}function ca(r,e){let t=Fl.get(r);if(t)for(let n of t)try{n(e)}catch(i){console.error(`[DaemonClient] Error in ${r} handler:`,i)}}function Dh(r){if(!zr||!Is)return!1;try{return zr.write(JSON.stringify(r)+`
|
|
114
|
+
`),!0}catch(e){return console.error("[DaemonClient] Send error:",e),!1}}function Ds(r,e=5e3){return new Promise((t,n)=>{let i=fj();r.requestId=i;let s=setTimeout(()=>{Ns.delete(i),n(new Error("Request timeout"))},e);Ns.set(i,{resolve:t,reject:n,timer:s}),Dh(r)||(clearTimeout(s),Ns.delete(i),n(new Error("Not connected to daemon")))})}function dj(r){let{type:e,requestId:t,...n}=r;if(t&&Ns.has(t)){let{resolve:i,timer:s}=Ns.get(t);clearTimeout(s),Ns.delete(t),i({type:e,...n});return}switch(e){case"output":ca("output",{sessionId:n.sessionId,enc:n.enc,replay:n.replay===!0,data:n.enc==="b64"?n.data:Buffer.from(n.data,"base64")});break;case"sessionClosed":ca("sessionClosed",n.sessionId);break;case"cwdChange":ca("cwdChange",{sessionId:n.sessionId,cwd:n.cwd});break;case"pong":break;default:console.log("[DaemonClient] Unknown message:",e)}}function Ul(){return new Promise(r=>{let e=ql.default.connect(aa),t=setTimeout(()=>{e.destroy(),r(!1)},1e3);e.on("connect",()=>{clearTimeout(t),e.destroy(),r(!0)}),e.on("error",()=>{if(clearTimeout(t),process.platform!=="win32"&&ce.default.existsSync(aa))try{ce.default.unlinkSync(aa)}catch{}r(!1)})})}function hj(){ce.default.existsSync(wn)||ce.default.mkdirSync(wn,{recursive:!0});let r=ce.default.existsSync(wS)?wS:ce.default.existsSync(SS)?SS:null;if(!r)return console.error("[DaemonClient] \u274C Daemon script not found"),null;let e=uj(r);return e||{script:r,cwd:Nh}}async function mj(){if(!ce.default.existsSync(wn))try{ce.default.mkdirSync(wn,{recursive:!0})}catch(a){return console.error("[DaemonClient] Failed to create socket directory:",a.message),!1}let r=hj();if(!r)return!1;let{script:e,cwd:t}=r,n=le.default.join(wn,"logs");try{ce.default.mkdirSync(n,{recursive:!0})}catch{}let i=le.default.join(n,"daemon.log"),s;try{s=ce.default.openSync(i,"w")}catch(a){console.error("[DaemonClient] Failed to open log file:",a.message),s="ignore"}if((0,TS.spawn)("node",[e],{detached:!0,stdio:["ignore",s,s],cwd:t}).unref(),typeof s=="number")try{ce.default.closeSync(s)}catch{}for(let a=0;a<20;a++)if(await new Promise(c=>setTimeout(c,100)),await Ul())return!0;console.error("[DaemonClient] \u274C Failed to start daemon");try{let a=ce.default.readFileSync(i,"utf8");a.trim()&&(console.error("[DaemonClient] Daemon log:"),console.error(a))}catch{}return!1}function gj(){return new Promise(r=>{let e=ql.default.connect(aa),t="",n=s=>{try{e.destroy()}catch{}r(s)},i=setTimeout(()=>n(null),2e3);e.on("connect",()=>e.write(JSON.stringify({type:"ping",requestId:-1})+`
|
|
115
115
|
`)),e.on("data",s=>{t+=s.toString();let o=t.indexOf(`
|
|
116
|
-
`);if(o!==-1){clearTimeout(i);try{let a=JSON.parse(t.slice(0,o));n(a.version||"unknown")}catch{n(null)}}}),e.on("error",()=>{clearTimeout(i),n(null)})})}async function vj(){try{let r=
|
|
116
|
+
`);if(o!==-1){clearTimeout(i);try{let a=JSON.parse(t.slice(0,o));n(a.version||"unknown")}catch{n(null)}}}),e.on("error",()=>{clearTimeout(i),n(null)})})}async function vj(){try{let r=le.default.join(wn,"pids","ptyDaemon.pid"),e=parseInt(ce.default.readFileSync(r,"utf8").trim(),10);Number.isFinite(e)&&e>0&&process.kill(e,"SIGTERM")}catch{}for(let r=0;r<20;r++){if(!await Ul())return;await new Promise(e=>setTimeout(e,100))}}async function AS(){if(!(Is||Vn)){Vn=!0;try{if(await Ul()){let r=await gj();r!==oa&&(console.log(`[DaemonClient] Daemon v${r} != v${oa}, restarting`),await vj())}return!await Ul()&&!await mj()?(console.error("[DaemonClient] \u274C Failed to start daemon"),Vn=!1,!1):new Promise(r=>{let e=setTimeout(()=>{console.error("[DaemonClient] \u274C Connection timeout after 5s"),zr&&zr.destroy(),Vn=!1,r(!1)},5e3);zr=ql.default.connect(aa),zr.on("connect",()=>{clearTimeout(e),Is=!0,Vn=!1,ca("connected"),r(!0)}),zr.on("data",t=>{Ih+=t.toString();let n=Ih.split(`
|
|
117
117
|
`);Ih=n.pop()||"";for(let i of n)if(i.trim())try{dj(JSON.parse(i))}catch{console.error("[DaemonClient] Invalid message:",i)}}),zr.on("close",()=>{Is=!1,zr=null,ca("disconnected"),setTimeout(()=>{!Is&&!Vn&&AS()},2e3)}),zr.on("error",t=>{clearTimeout(e),console.error("[DaemonClient] \u274C Connection error:",t.message),console.error("[DaemonClient] Error code:",t.code),Vn=!1,r(!1)})})}catch(r){return console.error("[DaemonClient] \u274C Connect error:",r),Vn=!1,!1}}}async function RS(){return AS()}function It(){return Is}async function $l(){return(await Ds({type:"listSessions"})).sessions||[]}async function Hl(r,e=80,t=24,n=null,i=`session-${Date.now()}`,s=null){return await Ds({type:"createSession",sessionId:i,name:r,cols:e,rows:t,shellId:n,cwd:s})}async function OS(r){try{return(await Ds({type:"getCwd",sessionId:r})).cwd||null}catch{return null}}async function Lh(r){return await Ds({type:"joinSession",sessionId:r})}async function MS(r,e){return await Ds({type:"requestHistory",sessionId:r,have:e})}function Wl(r,e){return Dh({type:"input",sessionId:r,data:e})}function PS(r,e,t){return Dh({type:"resize",sessionId:r,cols:e,rows:t})}async function bi(r){return await Ds({type:"deleteSession",sessionId:r})}var cE=W(require("crypto"),1);_i();ri();var NS=require("child_process");dt();var yj={darwin:()=>({cmd:"caffeinate",args:["-u","-t",String(H.displayWake.macDurationSec)]}),linux:()=>({cmd:"xset",args:["dpms","force","on"]}),win32:()=>({cmd:"powershell.exe",args:["-NonInteractive","-NoProfile","-WindowStyle","Hidden","-Command",`Add-Type -Name K -Namespace W -MemberDefinition '[System.Runtime.InteropServices.DllImport("kernel32")]public static extern uint SetThreadExecutionState(uint e);'; [void][W.K]::SetThreadExecutionState(0x80000003)`]})},IS=0;function DS(){let r=H.displayWake;if(!r?.enabled)return;let e=Date.now();if(e-IS<r.throttleMs)return;IS=e;let t=yj[process.platform];if(t)try{let{cmd:n,args:i}=t(),s=(0,NS.spawn)(n,i,{detached:!0,stdio:"ignore",windowsHide:!0});s.on("error",()=>{}),s.unref()}catch{}}dt();var LS=require("child_process");function xj(){switch(process.platform){case"darwin":return{file:"pbpaste",args:[]};case"win32":return{file:"powershell",args:["-NoProfile","-Command","Get-Clipboard -Raw"]};case"linux":return null;default:return null}}var Ls;function _j(){return Ls!==void 0||(process.env.WAYLAND_DISPLAY?Ls={file:"wl-paste",args:["--no-newline"]}:process.env.DISPLAY?Ls={file:"xclip",args:["-selection","clipboard","-o"]}:Ls=null),Ls}var bj=[{file:"xsel",args:["--clipboard","--output"]}];function BS(r){return new Promise(e=>{let t=xj();process.platform==="linux"&&(t=_j());let n=(i,s=[])=>{if(!i){e(null);return}(0,LS.execFile)(i.file,i.args,{timeout:1500,maxBuffer:1024*1024,windowsHide:!0},(o,a)=>{if(o){if(o.code==="ENOENT"&&s.length>0){let[l,...u]=s;n(l,u);return}e(null);return}let c=a.endsWith(`\r
|
|
118
118
|
`)?a.slice(0,-2):a.endsWith(`
|
|
119
119
|
`)?a.slice(0,-1):a;c.length>r&&(c=c.slice(0,r)),c=c.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g,""),e(c.length>0?c:null)})};n(t,process.platform==="linux"&&process.env.DISPLAY?bj:[])})}var zh=Fr("remote"),Sn=null;function kj(){return process.env.CODESPACES==="true"||process.env.GITPOD_WORKSPACE_ID||process.platform==="linux"&&!process.env.DISPLAY}async function lE(){if(Sn!==null)return Sn;if(kj())return Sn=!1,zh.info("\u2705 Remote desktop not available (headless environment)"),Sn;try{let r=await import("@hurdlegroup/robotjs");(r.default||r).getScreenSize(),Sn=!0}catch{Sn=!1,zh.info("\u2705 Remote desktop not available (no display or robotjs not installed)")}return Sn}function Xl(){return Sn===!0}function uE(){return Vr}var Si=null,Vh=null,Kh=null,pE=null,fE=null,dE=null,hE=null,Vr=null,iE=null,sE=null,oE=null,aE=null;async function Aj(){if(Si&&Vh&&Kh)return!0;try{let r=await import("@hurdlegroup/robotjs");Si=r.default||r;let{TileManager:e}=await Promise.resolve().then(()=>(KS(),VS)),{ResourceManager:t}=await Promise.resolve().then(()=>(XS(),YS)),{ScreenUpdateHelper:n}=await Promise.resolve().then(()=>(ZS(),JS)),{MouseHandler:i}=await Promise.resolve().then(()=>(eE(),QS)),{KeyboardHandler:s}=await Promise.resolve().then(()=>(nE(),rE)),{ScreenHandler:o}=await Promise.resolve().then(()=>(Rh(),yS));return Vh=e,Kh=t,pE=n,fE=i,dE=s,hE=o,Si.setMouseDelay(2),Si.setKeyboardDelay(2),!0}catch(r){return console.error("\u274C Failed to load remote modules:",r.message),!1}}async function mE(r,e){if(!Sn){r.emit("remote:unavailable");return}if(!await Aj()){r.emit("remote:unavailable");return}Vr||(Vr=new Kh,iE=new pE(Vr),sE=new fE(Si,Vr),oE=new dE(Si,Vr),aE=new hE(Vr,iE),Vr.startResourceMonitoring());let n=r.data.protocol;if(!n){r.emit("remote:unavailable");return}let i=r.handshake.auth?.apiKey,s=new Vh(Si);Vr.addClient(r.id,{tileManager:s,protocol:n,screenInterval:null,authenticated:!0,apiKey:i}),r.data.remoteAttached=!0;let o=d=>(...g)=>(DS(),d(...g));sE.setupMouseHandlers(r,o),oE.setupKeyboardHandlers(r,o),aE.setupScreenHandlers(r,o,n),r.on("disconnect",()=>{let d=n._adapters?.get("rtc"),g=!1,y=null,b=null,C=()=>{g||(g=!0,y&&(clearTimeout(y),y=null),d&&b&&d.off("stateChange",b),f&&(clearInterval(f),f=null),Vr.removeClient(r.id),n.close(),Ps(n))};if(!d?.ready)return C();b=R=>{R===ct.closed&&C()},d.on("stateChange",b),y=setTimeout(C,H.resourceManagement.disconnectGraceMs)}),r.emit("remote:ready");let a=-1,c="",l=!1,u=async()=>{try{let d=await BS(H.clipboard.maxTextLength),g=d==null?0:d.length,y=d==null?"":cE.default.createHash("md5").update(d).digest("hex");if(g===a&&y===c)return;if(a=g,c=y,!l){l=!0;return}d!=null&&n.emit("clipboard-update",{text:d,hash:y})}catch(d){zh.error(`clipboard poll: ${d.message}`)}},f=null;H.clipboard.enabled&&(u(),f=setInterval(u,H.clipboard.pollInterval))}bn();var Kn=W(require("fs"),1),Yh=W(require("path"),1),Jl=0,ua=null,Rj=6e4,Oj={name:"9Remote",postCreateCommand:"npm install -g 9remote@latest",postAttachCommand:"9remote start",forwardPorts:[2208],portsAttributes:{2208:{label:"9Remote Server",onAutoForward:"notify"}}};function Kr(){return process.env.CODESPACES==="true"}function gE(){return Kr()?{isCodespaces:!0,codespaceName:process.env.CODESPACE_NAME||"unknown",workspacePath:process.env.CODESPACE_VSCODE_FOLDER||process.cwd()}:null}function vE(){Jl++,Kr()&&Jl===1&&Mj()}function yE(){Jl--,Kr()&&Jl===0&&Pj()}function Mj(){ua||(ua=setInterval(()=>{process.memoryUsage()},Rj))}function Pj(){ua&&(console.log("\u23F8\uFE0F Stopping Codespaces heartbeat"),clearInterval(ua),ua=null)}function xE(r){return Yh.default.join(r,".devcontainer","devcontainer.json")}function _E(r){try{let e=xE(r);if(!Kn.default.existsSync(e))return{enabled:!1,exists:!1};let t=JSON.parse(Kn.default.readFileSync(e,"utf8"));return{enabled:t.postAttachCommand==="9remote start"||t.postAttachCommand==="9remote",exists:!0}}catch{return{enabled:!1,exists:!1,error:"Failed to read config"}}}function bE(r,e){try{let t=Yh.default.join(r,".devcontainer"),n=xE(r);Kn.default.existsSync(t)||Kn.default.mkdirSync(t,{recursive:!0});let i={...Oj};if(Kn.default.existsSync(n))try{i={...JSON.parse(Kn.default.readFileSync(n,"utf8"))}}catch{}return e?(i.postAttachCommand="9remote start",i.postCreateCommand||(i.postCreateCommand="npm install -g 9remote@latest")):delete i.postAttachCommand,Kn.default.writeFileSync(n,JSON.stringify(i,null,2)),{success:!0,enabled:e}}catch(t){return{success:!1,error:t.message}}}var Zl=W(require("os"),1),me=W(require("fs"),1),Yr=W(require("path"),1);St();var Fs=ie.BUFFERS,Ql=Yr.default.join(ie.STATE,"sessions.json"),eu=Yr.default.join(ie.STATE,"terminalGroups.json"),Xh=Yr.default.join(ie.STATE,"notes"),pa="/tmp/9remote-uploads";me.default.existsSync(pa)||me.default.mkdirSync(pa,{recursive:!0});function Jh(){return process.platform==="win32"?process.env.COMSPEC||"powershell.exe":process.env.SHELL||"/bin/zsh"}function tu(r){return r?"/workspaces":Zl.default.homedir()}function Zh(){let r=Zl.default.homedir(),e=Zl.default.userInfo().username,t=Jh(),n={...process.env};if(delete n.PORT,Object.assign(n,{HOME:r,USER:e,LOGNAME:e,SHELL:t,TERM:"xterm-256color",COLORTERM:"truecolor",LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",PWD:r,OLDPWD:r,TMPDIR:n.TMPDIR||(process.platform==="win32"?n.TEMP||n.TMP:"/tmp"),__CF_USER_TEXT_ENCODING:n.__CF_USER_TEXT_ENCODING,XPC_FLAGS:n.XPC_FLAGS,XPC_SERVICE_NAME:n.XPC_SERVICE_NAME,SSH_AUTH_SOCK:n.SSH_AUTH_SOCK,TERM_PROGRAM:"9Remote",TERM_PROGRAM_VERSION:"1.0.0",ITERM_SESSION_ID:`9remote-${Date.now()}`,SHLVL:"1"}),t.includes("bash")){let i=n.PROMPT_COMMAND||"";n.PROMPT_COMMAND=`printf "\\e]7;file://%s\\a" "\${HOSTNAME}\${PWD}"${i?`; ${i}`:""}`}return n}function wE(){me.default.existsSync(Fs)||me.default.mkdirSync(Fs,{recursive:!0})}function Qh(r,e,t){if(t==="buffer"){wE();try{me.default.writeFileSync(Yr.default.join(Fs,`${r}.buf`),e.join(""),"utf8")}catch(n){console.log(`\u26A0\uFE0F Failed to save buffer for ${r}:`,n.message)}}}function SE(r,e){if(e!=="buffer")return null;let t=Yr.default.join(Fs,`${r}.buf`);try{if(me.default.existsSync(t))return me.default.readFileSync(t,"utf8")}catch(n){console.log(`\u26A0\uFE0F Failed to load buffer for ${r}:`,n.message)}return null}function ru(r){let e=Yr.default.join(Fs,`${r}.buf`);try{me.default.existsSync(e)&&me.default.unlinkSync(e)}catch{}}function EE(){wE();try{return me.default.readdirSync(Fs).filter(r=>r.endsWith(".buf")).map(r=>r.replace(".buf",""))}catch{return[]}}function em(){try{if(me.default.existsSync(Ql))return JSON.parse(me.default.readFileSync(Ql,"utf8"))}catch(r){console.log("\u26A0\uFE0F Failed to load session metadata:",r.message)}return{}}function Ij(r){return{name:r.name,createdAt:r.createdAt,shellId:r.shellId,cwd:r.cwd,cols:r.lastCols??r.cols??null,rows:r.lastRows??r.rows??null}}function er(r){try{let e={};for(let[n,i]of r)e[n]=Ij(i);let t=Yr.default.dirname(Ql);me.default.existsSync(t)||me.default.mkdirSync(t,{recursive:!0}),me.default.writeFileSync(Ql,JSON.stringify(e,null,2),"utf8")}catch(e){console.log("\u26A0\uFE0F Failed to save session metadata:",e.message)}}function TE(){try{if(me.default.existsSync(eu)){let r=JSON.parse(me.default.readFileSync(eu,"utf8"));return{groups:r.groups||[],sessionGroups:r.sessionGroups||{},sessionOrder:r.sessionOrder||[]}}}catch(r){console.log("\u26A0\uFE0F Failed to load groups:",r.message)}return{groups:[],sessionGroups:{},sessionOrder:[]}}function CE(r,e,t=[]){try{let n=Yr.default.dirname(eu);me.default.existsSync(n)||me.default.mkdirSync(n,{recursive:!0});let i={groups:Array.from(r.values()),sessionGroups:e,sessionOrder:t};me.default.writeFileSync(eu,JSON.stringify(i,null,2),"utf8")}catch(n){console.log("\u26A0\uFE0F Failed to save groups:",n.message)}}var Nj=64*1024;function tm(r){return Yr.default.join(Xh,`${r}.json`)}function kE(r){if(!r)return"";try{let e=tm(r);if(!me.default.existsSync(e))return"";let t=JSON.parse(me.default.readFileSync(e,"utf8"));return typeof t.text=="string"?t.text:""}catch(e){return console.log("\u26A0\uFE0F Failed to load note:",e.message),""}}function AE(r,e){if(!r)return!1;try{let t=typeof e=="string"?e:"";return Buffer.byteLength(t,"utf8")>Nj?!1:(me.default.existsSync(Xh)||me.default.mkdirSync(Xh,{recursive:!0}),me.default.writeFileSync(tm(r),JSON.stringify({text:t}),"utf8"),!0)}catch(t){return console.log("\u26A0\uFE0F Failed to save note:",t.message),!1}}function rm(r){if(r)try{let e=tm(r);me.default.existsSync(e)&&me.default.unlinkSync(e)}catch(e){console.log("\u26A0\uFE0F Failed to delete note:",e.message)}}var nm=W(require("node-pty"),1);_i();var PE=W(require("fs"),1);var RE=2*1024*1024,Dj=256*1024,En="daemon",Lj=80,Bj=24,jj=10,Fj=2;function OE(r){let e=r?.lastCols,t=r?.lastRows;return Number.isInteger(e)&&Number.isInteger(t)&&e>=jj&&t>=Fj?{cols:e,rows:t}:{cols:Lj,rows:Bj}}function IE(r,e){if(!r?.length||e<=0)return"";let t=e,n=[];for(let s=r.length-1;s>=0&&t>0;s--){let o=r[s];o.length<=t?(n.push(o),t-=o.length):(n.push(o.slice(o.length-t)),t=0)}n.reverse();let i=n.join("");if(i.length>1&&i.charCodeAt(0)!==27){let s=Math.min(i.length,512);for(let o=1;o<s;o++)if(i.charCodeAt(o)===27){i=i.slice(o);break}}return i}function ME(r,e,t,n,i){let s=null;r.onData(o=>{t.buffer.push(o),t.buffer.reduce((c,l)=>c+l.length,0)>RE&&(t.buffer=[IE(t.buffer,RE)]),ut(n,"output",{sessionId:e,data:Buffer.from(o,"utf-8")}),En==="buffer"&&(s&&clearTimeout(s),s=setTimeout(()=>Qh(e,t.buffer,En),2e3))}),r.onExit(({exitCode:o})=>{console.log(`PTY exited: sessionId=${e}, code=${o}`),En==="buffer"&&t.buffer.length>0&&Qh(e,t.buffer,En),i.delete(e),ru(e),ut(n,"sessionClosed",e)})}function NE(r,e,t,n,i,s=[]){let o=()=>CE(n,i,s);r.on("getSessions",async a=>{let c=[],l=En==="daemon"&&It();for(let[f,d]of t){let g=d.cwd;if(l&&d.daemon){let y=await OS(f);y&&(g=y,d.cwd!==y&&(d.cwd=y))}c.push({id:f,name:d.name,createdAt:d.createdAt,restored:d.restored||!1,shellId:d.shellId,shellLabel:d.shellLabel,groupId:i[f]||null,cwd:g})}let u=new Map(s.map((f,d)=>[f,d]));c.sort((f,d)=>(u.has(f.id)?u.get(f.id):1/0)-(u.has(d.id)?u.get(d.id):1/0)),a(c)}),r.on("getShells",a=>{a({platform:process.platform,shells:_S()})}),r.on("getGroups",a=>{a(Array.from(n.values()))}),r.on("createGroup",({name:a},c)=>{let l=`group-${Date.now()}`,u={id:l,name:a||"Group",createdAt:Date.now()};n.set(l,u),o(),ut(e,"groupsChanged"),c({success:!0,group:u})}),r.on("renameGroup",({groupId:a,name:c},l)=>{let u=n.get(a);if(!u)return l({success:!1,error:"Group not found"});u.name=c,o(),ut(e,"groupsChanged"),l({success:!0})}),r.on("deleteGroup",async({groupId:a},c)=>{if(!n.delete(a))return c({success:!1,error:"Group not found"});let l=Object.keys(i).filter(u=>i[u]===a);for(let u of l){let f=t.get(u);if(f){if(f.daemon&&It())try{await bi(u)}catch{}else f.pty&&(f.pty.kill(),ru(u));t.delete(u),ut(e,"sessionClosed",u)}delete i[u]}o(),ut(e,"groupsChanged"),c({success:!0})}),r.on("moveSession",({sessionId:a,groupId:c},l)=>{c&&n.has(c)?i[a]=c:delete i[a],o(),ut(e,"groupsChanged"),l({success:!0})}),r.on("reorderSession",({orderedIds:a},c)=>{if(!Array.isArray(a))return c?.({success:!1,error:"orderedIds required"});let l=new Set(a),u=s.filter(d=>!l.has(d)),f=[...t.keys()].filter(d=>!l.has(d)&&!u.includes(d));s.length=0,s.push(...u,...f,...a),o(),ut(e,"groupsChanged"),c?.({success:!0})}),r.on("createSession",async({name:a,shellId:c,groupId:l,cwd:u},f)=>{let d=`session-${Date.now()}`,g=bS(c),y=Zh();y.NINE_REMOTE_SESSION_ID=d;let b=u&&PE.default.existsSync(u)?u:tu(Kr());try{let C=a||`Term ${t.size+1}`;if(En==="daemon"&&It()){let P=await Hl(C,80,24,c,d,b);P.success?(t.set(P.sessionId,{daemon:!0,name:C,createdAt:Date.now(),cwd:P.cwd,shellId:P.shellId,shellLabel:P.shellLabel}),l&&n.has(l)&&(i[P.sessionId]=l,o()),er(t),f({success:!0,sessionId:P.sessionId,shellLabel:P.shellLabel})):f({success:!1,error:P.error});return}let R=nm.default.spawn(g.path,g.args,{name:"xterm-256color",cols:80,rows:24,cwd:b,env:y,useConpty:!1}),O={pty:R,name:C,createdAt:Date.now(),buffer:[],cwd:b,shellId:g.id,shellLabel:g.label};ME(R,d,O,e,t),t.set(d,O),l&&n.has(l)&&(i[d]=l,o()),f({success:!0,sessionId:d,shellLabel:g.label})}catch(C){console.error("Failed to create session:",C),f({success:!1,error:C.message})}}),r.on("joinSession",async(a,c)=>{let l=typeof a=="string"?a:a?.sessionId,u=typeof a=="object"?a?.cols:void 0,f=typeof a=="object"?a?.rows:void 0,d=t.get(l);if(!d&&En==="daemon"&&It()){let g=`Term ${t.size+1}`,y=tu(Kr()),{cols:b,rows:C}=OE({lastCols:u,lastRows:f}),R=await Hl(g,b,C,void 0,l,y);if(!R.success)return c({success:!1,error:R.error});d={daemon:!0,name:g,createdAt:Date.now(),cwd:R.cwd,shellId:R.shellId,shellLabel:R.shellLabel,lastCols:b,lastRows:C},t.set(l,d),er(t);let O=await Lh(l);return c({success:O.success,name:d.name,cwd:O.cwd||d.cwd,recreated:!0,error:O.error})}if(!d)return c({success:!1,error:"Session not found"});if(d.daemon&&It()){try{if(d.needsRespawn){let{cols:y,rows:b}=OE({lastCols:u??d.lastCols,lastRows:f??d.lastRows}),C=await Hl(d.name,y,b,d.shellId,l,d.cwd);if(!C.success)return c({success:!1,error:C.error});delete d.needsRespawn,d.cwd=C.cwd,d.shellLabel=C.shellLabel,d.lastCols=y,d.lastRows=b,er(t)}let g=await Lh(l);g.cwd&&g.cwd!==d.cwd&&(d.cwd=g.cwd,er(t)),c({success:g.success,name:d.name,cwd:g.cwd||d.cwd,total:g.total||0,replaySize:g.replaySize||0,error:g.error})}catch(g){c({success:!1,error:g.message})}return}if(d.needsRestore&&En==="buffer")try{let g=Jh(),y=process.platform==="win32"?[]:["-l"],b=tu(Kr()),C=nm.default.spawn(g,y,{name:"xterm-256color",cols:80,rows:24,cwd:b,env:Zh(),useConpty:!1});d.pty=C,d.needsRestore=!1,d.cwd=b;let R=SE(l,En);R&&(d.buffer=[R]),ME(C,l,d,e,t),console.log(`\u2705 Restored PTY session: ${l}`)}catch(g){return console.error("Failed to restore session:",g),c({success:!1,error:"Failed to restore session"})}d.buffer?.length>0&&r.emit("output",{sessionId:l,data:Buffer.from(IE(d.buffer,Dj),"utf-8")}),c({success:!0,name:d.name,cwd:d.cwd})}),r.on("requestHistory",async({sessionId:a,have:c}={},l)=>{let u=t.get(a);if(!u)return l?.({success:!1,error:"Session not found"});if(!u.daemon||!It())return l?.({success:!1,error:"History unavailable"});try{let f=await MS(a,c||0);if(!f.success)return l?.({success:!1,error:f.error});f.prefix&&r.emit("output",{sessionId:a,enc:"b64",isHistoryPrefix:!0,data:f.prefix}),l?.({success:!0,prefixLen:f.prefixLen||0,total:f.total||0,remaining:f.remaining||0})}catch(f){l?.({success:!1,error:f.message})}}),r.on("deleteSession",async(a,c)=>{let l=t.get(a);if(!l)return c({success:!1,error:"Session not found"});if(l.daemon&&It()){try{await bi(a),t.delete(a),i[a]&&(delete i[a],o()),rm(a),er(t),c({success:!0})}catch(u){c({success:!1,error:u.message})}return}l.pty&&l.pty.kill(),t.delete(a),i[a]&&(delete i[a],o()),ru(a),rm(a),ut(e,"sessionClosed",a),er(t),c({success:!0})}),r.on("renameSession",async({sessionId:a,name:c},l)=>{let u=t.get(a);if(!u)return l({success:!1,error:"Session not found"});u.name=c,ut(e,"session-renamed",{sessionId:a,name:c}),er(t),l({success:!0})}),r.on("getNote",({sessionId:a}={},c)=>{typeof c=="function"&&c({success:!0,text:kE(a)})}),r.on("saveNote",({sessionId:a,text:c}={},l)=>{if(typeof l!="function")return;let u=AE(a,c);l({success:u})})}var sm=require("child_process");function Tn(r,e,t){return new Promise((n,i)=>{let s=(0,sm.spawn)(r,e,{stdio:["pipe","ignore","pipe"]}),o="";s.stderr&&s.stderr.on("data",a=>{o+=a.toString()}),s.on("error",i),s.on("close",a=>a===0?n():i(new Error(o.trim()||`${r} exited ${a}`))),t!=null&&s.stdin.write(t),s.stdin.end()})}function im(r,e){return new Promise((t,n)=>{let i=(0,sm.spawn)(r,e,{stdio:["ignore","pipe","pipe"]}),s="",o="";i.stdout&&i.stdout.on("data",a=>{s+=a.toString()}),i.stderr&&i.stderr.on("data",a=>{o+=a.toString()}),i.on("error",n),i.on("close",a=>a===0?t(s):n(new Error(o.trim()||`${r} exited ${a}`)))})}var Uj=r=>typeof r=="string"&&r.startsWith("image/"),qj={darwin:{image:r=>Tn("osascript",["-e",`set the clipboard to (read (POSIX file ${JSON.stringify(r)}) as \xABclass PNGf\xBB)`]),file:r=>Tn("osascript",["-e",`set the clipboard to POSIX file ${JSON.stringify(r)}`])},linux:{image:r=>Tn("xclip",["-selection","clipboard","-t","image/png","-i",r]),file:r=>Tn("xclip",["-selection","clipboard","-t","text/uri-list","-i"],`file://${r}
|
|
@@ -173,7 +173,7 @@ export default function (${e}) {
|
|
|
173
173
|
${e}.on(${JSON.stringify(t)}, async () => post("working"));
|
|
174
174
|
${e}.on(${JSON.stringify(n)}, async () => post("done"));
|
|
175
175
|
}
|
|
176
|
-
`}var mU="# 9remote hooks begin",gU="# 9remote hooks end",vU=" # 9remote hooks begin",yU=" # 9remote hooks end",xU={claude:Ri("claude",{UserPromptSubmit:"working",PostToolUse:"working",Stop:"done",Notification:"blocked"},r=>r,{matchers:{Notification:"permission_prompt"},extra:EC}),codex:fU,gemini:Ri("gemini",{BeforeAgent:"working",PreToolUse:"working",PostToolUse:"working",AfterAgent:"done",Notification:"blocked"},r=>r),opencode:hU,grok:Ri("grok",{UserPromptSubmit:"working",PreToolUse:"working",PostToolUse:"working",Stop:"done",Notification:"blocked"},SC),cursor:cU("cursor",{stop:"done",beforeShellExecution:"blocked",beforeToolCall:"working"},{extra:r=>{r.version=r.version||1}}),antigravity:lU("antigravity","9remote",{UserPromptSubmit:"working",PreToolUse:"working",Stop:"done",Notification:"blocked"}),kiro:uU("kiro",{UserPromptSubmit:"working",PostToolUse:"working",preToolUse:"blocked",stop:"done"}),copilot:Ri("copilot",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),codebuddy:Ri("codebuddy",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),factory:Ri("factory",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),qoder:Ri("qoder",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),rovodev:mC("rovodev",{begin:vU,end:yU,items:[{event:"on_complete",type:"done"},{event:"on_error",type:"done"},{event:"on_tool_permission",type:"blocked"},{event:"on_message",type:"working"},{event:"on_tool_start",type:"working"}]}),hermes:(()=>{let r=mC("hermes",{begin:mU,end:gU,items:[{event:"pre_llm_call",type:"working"},{event:"pre_tool_call",type:"working"},{event:"post_tool_call",type:"working"},{event:"pre_approval_request",type:"blocked"},{event:"post_llm_call",type:"done"}]}),e=()=>ft.default.join(ft.default.dirname(Ce.hermes()),"shell-hooks-allowlist.json");return{enable:()=>{let t=r.enable(Ce.hermes()),n=Lt(e()),i=(n.approvals||[]).filter(s=>!(typeof s.command=="string"&&s.command.includes("&tool=hermes")));return n.approvals=[...i,...[{event:"pre_llm_call",type:"working"},{event:"pre_tool_call",type:"working"},{event:"post_tool_call",type:"working"},{event:"pre_approval_request",type:"blocked"},{event:"post_llm_call",type:"done"}].map(({event:s,type:o})=>({event:s,command:Qs(o,"hermes"),approved_at:"2020-01-01T00:00:00Z"}))],wr(e(),n),t},disable:()=>{let t=r.disable(Ce.hermes()),n=e();if(X.default.existsSync(n)){let i=Lt(n);i.approvals=(i.approvals||[]).filter(s=>!(typeof s.command=="string"&&s.command.includes("&tool=hermes"))),i.approvals.length?wr(n,i):X.default.unlinkSync(n)}return t},isEnabled:()=>r.isEnabled(Ce.hermes())}})(),amp:{enable(){let r=Ce.amp(),e=ft.default.dirname(r);return X.default.existsSync(e)||X.default.mkdirSync(e,{recursive:!0}),X.default.writeFileSync(r,_C("amp","amp","agent.start","agent.end"),"utf8"),{success:!0}},disable(){return X.default.existsSync(Ce.amp())&&X.default.unlinkSync(Ce.amp()),{success:!0}},isEnabled(){return X.default.existsSync(Ce.amp())}},pi:{enable(){let r=Ce.pi(),e=ft.default.dirname(r);return X.default.existsSync(e)||X.default.mkdirSync(e,{recursive:!0}),X.default.writeFileSync(r,_C("pi","pi","agent_start","agent_end"),"utf8"),{success:!0}},disable(){return X.default.existsSync(Ce.pi())&&X.default.unlinkSync(Ce.pi()),{success:!0}},isEnabled(){return X.default.existsSync(Ce.pi())}}},_U=ey;function bU(r){let e=xU[r];if(!e)return{success:!1,error:"Unknown tool"};try{return r==="codex"||r==="opencode"||r==="amp"||r==="pi"?e.enable():e.enable(Ce[r]())}catch(t){return{success:!1,error:t.message}}}function wU(r){let e=(process.env.PATH||"").split(ft.default.delimiter).filter(Boolean),t=process.platform==="win32"?(process.env.PATHEXT||".EXE;.CMD;.BAT").split(";"):[""];return e.some(n=>t.some(i=>{try{return X.default.existsSync(ft.default.join(n,r+i))}catch{return!1}}))}function SU(r){let e=nU[r];if(e&&wU(e))return!0;let t=iU[r]?.();return t?(Array.isArray(t)?t:[t]).some(n=>X.default.existsSync(n)):!1}function TC(){let r={};for(let e of _U)if(SU(e))try{r[e]=bU(e).success}catch{r[e]=!1}return r}function CC(){let r=Ce.claude(),e=Lt(r);if(!e.hooks?.Stop&&!e.hooks?.Notification)return;let t=e.env||{};Object.keys(bo).some(i=>t[i]!==bo[i])&&(EC(e),wr(r,e))}_i();var mV=(0,AC.dirname)((0,RC.fileURLToPath)(__importMetaUrl)),gV=yo.rgb(230,138,110),Ym="daemon",EU="2.1.20",Qr=new Map,OC=new Map,MC={},PC=[];async function kC(){let r=await $l(),e=new Map(r.map(n=>[n.id,n])),t=em();for(let n of r)if(!t[n.id])try{await bi(n.id)}catch{}Qr.clear();for(let[n,i]of Object.entries(t)){let s=e.get(n);Qr.set(n,{daemon:!0,name:i.name,createdAt:i.createdAt,shellId:i.shellId,cwd:s?.cwd||i.cwd,lastCols:i.cols??null,lastRows:i.rows??null,needsRespawn:!s})}er(Qr)}async function IC(){let r=TE();for(let n of r.groups)OC.set(n.id,n);Object.assign(MC,r.sessionGroups),PC.push(...r.sessionOrder);try{CC()}catch{}try{TC()}catch{}if(Ym==="daemon")if(!await RS())console.error("\u274C Failed to connect to PTY daemon, falling back to buffer mode");else{await kC(),la("connected",()=>{kC().catch(()=>{})});return}console.log("\u{1F4E6} Buffer persistence mode - scrollback enabled");let e=EE(),t=em();for(let n of e){let i=t[n]||{};Qr.set(n,{pty:null,name:i.name||`Terminal ${Qr.size+1}`,createdAt:i.createdAt||Date.now(),buffer:[],needsRestore:!0}),console.log(`\u{1F504} Found saved session: ${n}`)}e.length>0&&console.log(`\u2705 Found ${e.length} saved session(s)`)}function eo(r,e){Ym==="daemon"&&(la("output",({sessionId:i,enc:s,data:o,replay:a})=>{a!==!0&&fC(i),ut(r,"output",{sessionId:i,enc:s,data:o,replay:a===!0})}),dC(i=>ut(r,"statusState",wa())),la("cwdChange",({sessionId:i,cwd:s})=>{let o=Qr.get(i);o&&s&&o.cwd!==s&&(o.cwd=s,er(Qr)),ut(r,"cwdChange",{sessionId:i,cwd:s})}),la("sessionClosed",i=>{Qr.delete(i),Vm(i),ut(r,"sessionClosed",i),ut(r,"notificationCleared",i)}));let t=()=>({version:EU,remoteAvailable:Os(),daemonMode:Ym==="daemon"&&It(),platform:process.platform,updateAvailable:Yw(),canSelfUpdate:!0,caps:{joinSessionSize:!0},...gE()}),n=()=>{let i=t();for(let s of r.sockets.sockets.values())s.data?.approved&&s.emit("serverInfo",i)};Zw(n),eo._buildServerInfo=t,eo._emitServerInfo=n}function NC(){eo._emitServerInfo?.()}var DC=null;function LC(r){DC=r}async function BC(r,e,t){vE(),DC?.(),r.emit("serverInfo",eo._buildServerInfo?.()),NE(r,e,Qr,OC,MC,PC),FE(r,Qr),hC(r,e),Xl()&&await mE(r,t).catch(n=>{console.error("\u274C Failed to setup remote handlers:",n.message)}),r.on("disconnect",()=>{oC(r.id),yE()})}var re=W(require("fs"),1),Er=W(require("path"),1),tn=W(require("os"),1),ao=require("child_process"),GA=W(LA(),1),tp=W(require("sharp"),1);var Kg=["node_modules",".git","dist","build",".next","coverage","__pycache__",".cache",".vscode",".idea",".turbo",".vercel",".output","out",".nuxt",".svelte-kit","target","vendor",".gradle",".pytest_cache",".mypy_cache",".tox",".venv","venv","env",".DS_Store",".parcel-cache",".rollup.cache"],Qu=[".zip",".tar",".gz",".tgz",".rar",".7z",".bz2",".xz",".exe",".dll",".so",".dylib",".app",".bin",".woff",".woff2",".ttf",".eot",".otf",".sqlite",".db",".mdb",".class",".jar",".war",".pyc",".o",".obj"];var BA=[".ssh",".aws",".gnupg",".kube",".docker",".cargo",".npmrc",".netrc",".pypirc",".config/gh",".config/gcloud"],jA=["/etc/shadow","/etc/sudoers","/etc/ssh","/root","/private/etc/sudoers"];var ep=W(require("fs"),1),Jn=W(require("path"),1),FA=W(require("os"),1);var UA=FA.default.homedir();function UH(r){if(!r)return null;let e=r.startsWith("~")?r.replace(/^~/,UA):r,t=Jn.default.resolve(e);try{return ep.default.realpathSync(t)}catch{let n=t,i=[];for(;!ep.default.existsSync(n);){i.unshift(Jn.default.basename(n));let s=Jn.default.dirname(n);if(s===n)return t;n=s}try{return Jn.default.join(ep.default.realpathSync(n),...i)}catch{return t}}}function wt(r){let e=UH(r);if(!e)return!1;for(let t of jA)if(e===t||e.startsWith(t+Jn.default.sep))return!0;for(let t of BA){let n=Jn.default.join(UA,t);if(e===n||e.startsWith(n+Jn.default.sep))return!0}return!1}var GH={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",ico:"image/x-icon",bmp:"image/bmp",avif:"image/avif",apng:"image/apng",tif:"image/tiff",tiff:"image/tiff",mp4:"video/mp4",m4v:"video/mp4",webm:"video/webm",ogv:"video/ogg",mov:"video/quicktime",mkv:"video/x-matroska",avi:"video/x-msvideo","3gp":"video/3gpp",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",flac:"audio/flac",m4a:"audio/mp4",aac:"audio/aac",opus:"audio/opus",pdf:"application/pdf"};function rp(r){return Kg.includes(r)}function co(r){return Qu.includes(Er.default.extname(r).toLowerCase())}function zH(r,e){return r.isDirectory()?"folder":co(e)?"binary":"file"}function Zn(r){return r<1024?`${r}B`:r<1024*1024?`${(r/1024).toFixed(1)}KB`:`${(r/(1024*1024)).toFixed(1)}MB`}async function HA(r){let e=await(0,tp.default)(r).metadata(),t=e.width||0,n=e.height||0,i=[80,60,40],s=[1600,1200,800],o=r,a=t,c=n;for(let l of s)for(let u of i){o=await(0,tp.default)(r).resize({width:l,height:l,fit:"inside",withoutEnlargement:!0}).jpeg({quality:u,mozjpeg:!0}).toBuffer();let f=await(0,tp.default)(o).metadata();if(a=f.width||l,c=f.height||l,o.length<=3145728)return{buffer:o,width:a,height:c,originalWidth:t,originalHeight:n}}return{buffer:o,width:a,height:c,originalWidth:t,originalHeight:n}}function zA(r,e,t,n=50){if(!(t.length>=n))try{for(let i of re.default.readdirSync(r)){if(t.length>=n)return;if(i.startsWith(".")||rp(i))continue;let s=Er.default.join(r,i);try{let o=re.default.statSync(s);o.isDirectory()?zA(s,e,t,n):i.toLowerCase().includes(e.toLowerCase())&&t.push({name:i,path:s,type:co(i)?"binary":"file",size:o.size,sizeFormatted:Zn(o.size)})}catch{}}}catch{}}function WA(r){if(!r)return null;let e=r.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,"::ANY::").replace(/\*/g,"[^/]*").replace(/::ANY::/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`)}function VA(r,e,t,n,i,s){if(s.length>=200)return;let o;try{o=re.default.readdirSync(r,{withFileTypes:!0})}catch{return}for(let a of o){if(s.length>=200)return;if(rp(a.name))continue;let c=Er.default.join(r,a.name),l=Er.default.relative(e,c);if(a.isDirectory()){VA(c,e,t,n,i,s);continue}if(a.isFile()&&!co(a.name)&&!wt(c)&&!(i&&i.test(l))&&!(n&&!n.test(l)))try{if(re.default.statSync(c).size>1048576)continue;let d=re.default.readFileSync(c,"utf-8").split(`
|
|
176
|
+
`}var mU="# 9remote hooks begin",gU="# 9remote hooks end",vU=" # 9remote hooks begin",yU=" # 9remote hooks end",xU={claude:Ri("claude",{UserPromptSubmit:"working",PostToolUse:"working",Stop:"done",Notification:"blocked"},r=>r,{matchers:{Notification:"permission_prompt"},extra:EC}),codex:fU,gemini:Ri("gemini",{BeforeAgent:"working",PreToolUse:"working",PostToolUse:"working",AfterAgent:"done",Notification:"blocked"},r=>r),opencode:hU,grok:Ri("grok",{UserPromptSubmit:"working",PreToolUse:"working",PostToolUse:"working",Stop:"done",Notification:"blocked"},SC),cursor:cU("cursor",{stop:"done",beforeShellExecution:"blocked",beforeToolCall:"working"},{extra:r=>{r.version=r.version||1}}),antigravity:lU("antigravity","9remote",{UserPromptSubmit:"working",PreToolUse:"working",Stop:"done",Notification:"blocked"}),kiro:uU("kiro",{UserPromptSubmit:"working",PostToolUse:"working",preToolUse:"blocked",stop:"done"}),copilot:Ri("copilot",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),codebuddy:Ri("codebuddy",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),factory:Ri("factory",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),qoder:Ri("qoder",{UserPromptSubmit:"working",PostToolUse:"working",PreToolUse:"blocked",Stop:"done"},r=>r),rovodev:mC("rovodev",{begin:vU,end:yU,items:[{event:"on_complete",type:"done"},{event:"on_error",type:"done"},{event:"on_tool_permission",type:"blocked"},{event:"on_message",type:"working"},{event:"on_tool_start",type:"working"}]}),hermes:(()=>{let r=mC("hermes",{begin:mU,end:gU,items:[{event:"pre_llm_call",type:"working"},{event:"pre_tool_call",type:"working"},{event:"post_tool_call",type:"working"},{event:"pre_approval_request",type:"blocked"},{event:"post_llm_call",type:"done"}]}),e=()=>ft.default.join(ft.default.dirname(Ce.hermes()),"shell-hooks-allowlist.json");return{enable:()=>{let t=r.enable(Ce.hermes()),n=Lt(e()),i=(n.approvals||[]).filter(s=>!(typeof s.command=="string"&&s.command.includes("&tool=hermes")));return n.approvals=[...i,...[{event:"pre_llm_call",type:"working"},{event:"pre_tool_call",type:"working"},{event:"post_tool_call",type:"working"},{event:"pre_approval_request",type:"blocked"},{event:"post_llm_call",type:"done"}].map(({event:s,type:o})=>({event:s,command:Qs(o,"hermes"),approved_at:"2020-01-01T00:00:00Z"}))],wr(e(),n),t},disable:()=>{let t=r.disable(Ce.hermes()),n=e();if(X.default.existsSync(n)){let i=Lt(n);i.approvals=(i.approvals||[]).filter(s=>!(typeof s.command=="string"&&s.command.includes("&tool=hermes"))),i.approvals.length?wr(n,i):X.default.unlinkSync(n)}return t},isEnabled:()=>r.isEnabled(Ce.hermes())}})(),amp:{enable(){let r=Ce.amp(),e=ft.default.dirname(r);return X.default.existsSync(e)||X.default.mkdirSync(e,{recursive:!0}),X.default.writeFileSync(r,_C("amp","amp","agent.start","agent.end"),"utf8"),{success:!0}},disable(){return X.default.existsSync(Ce.amp())&&X.default.unlinkSync(Ce.amp()),{success:!0}},isEnabled(){return X.default.existsSync(Ce.amp())}},pi:{enable(){let r=Ce.pi(),e=ft.default.dirname(r);return X.default.existsSync(e)||X.default.mkdirSync(e,{recursive:!0}),X.default.writeFileSync(r,_C("pi","pi","agent_start","agent_end"),"utf8"),{success:!0}},disable(){return X.default.existsSync(Ce.pi())&&X.default.unlinkSync(Ce.pi()),{success:!0}},isEnabled(){return X.default.existsSync(Ce.pi())}}},_U=ey;function bU(r){let e=xU[r];if(!e)return{success:!1,error:"Unknown tool"};try{return r==="codex"||r==="opencode"||r==="amp"||r==="pi"?e.enable():e.enable(Ce[r]())}catch(t){return{success:!1,error:t.message}}}function wU(r){let e=(process.env.PATH||"").split(ft.default.delimiter).filter(Boolean),t=process.platform==="win32"?(process.env.PATHEXT||".EXE;.CMD;.BAT").split(";"):[""];return e.some(n=>t.some(i=>{try{return X.default.existsSync(ft.default.join(n,r+i))}catch{return!1}}))}function SU(r){let e=nU[r];if(e&&wU(e))return!0;let t=iU[r]?.();return t?(Array.isArray(t)?t:[t]).some(n=>X.default.existsSync(n)):!1}function TC(){let r={};for(let e of _U)if(SU(e))try{r[e]=bU(e).success}catch{r[e]=!1}return r}function CC(){let r=Ce.claude(),e=Lt(r);if(!e.hooks?.Stop&&!e.hooks?.Notification)return;let t=e.env||{};Object.keys(bo).some(i=>t[i]!==bo[i])&&(EC(e),wr(r,e))}_i();var mV=(0,AC.dirname)((0,RC.fileURLToPath)(__importMetaUrl)),gV=yo.rgb(230,138,110),Ym="daemon",EU="2.1.21",Qr=new Map,OC=new Map,MC={},PC=[];async function kC(){let r=await $l(),e=new Map(r.map(n=>[n.id,n])),t=em();for(let n of r)if(!t[n.id])try{await bi(n.id)}catch{}Qr.clear();for(let[n,i]of Object.entries(t)){let s=e.get(n);Qr.set(n,{daemon:!0,name:i.name,createdAt:i.createdAt,shellId:i.shellId,cwd:s?.cwd||i.cwd,lastCols:i.cols??null,lastRows:i.rows??null,needsRespawn:!s})}er(Qr)}async function IC(){let r=TE();for(let n of r.groups)OC.set(n.id,n);Object.assign(MC,r.sessionGroups),PC.push(...r.sessionOrder);try{CC()}catch{}try{TC()}catch{}if(Ym==="daemon")if(!await RS())console.error("\u274C Failed to connect to PTY daemon, falling back to buffer mode");else{await kC(),la("connected",()=>{kC().catch(()=>{})});return}console.log("\u{1F4E6} Buffer persistence mode - scrollback enabled");let e=EE(),t=em();for(let n of e){let i=t[n]||{};Qr.set(n,{pty:null,name:i.name||`Terminal ${Qr.size+1}`,createdAt:i.createdAt||Date.now(),buffer:[],needsRestore:!0}),console.log(`\u{1F504} Found saved session: ${n}`)}e.length>0&&console.log(`\u2705 Found ${e.length} saved session(s)`)}function eo(r,e){Ym==="daemon"&&(la("output",({sessionId:i,enc:s,data:o,replay:a})=>{a!==!0&&fC(i),ut(r,"output",{sessionId:i,enc:s,data:o,replay:a===!0})}),dC(i=>ut(r,"statusState",wa())),la("cwdChange",({sessionId:i,cwd:s})=>{let o=Qr.get(i);o&&s&&o.cwd!==s&&(o.cwd=s,er(Qr)),ut(r,"cwdChange",{sessionId:i,cwd:s})}),la("sessionClosed",i=>{Qr.delete(i),Vm(i),ut(r,"sessionClosed",i),ut(r,"notificationCleared",i)}));let t=()=>({version:EU,remoteAvailable:Os(),daemonMode:Ym==="daemon"&&It(),platform:process.platform,updateAvailable:Yw(),canSelfUpdate:!0,caps:{joinSessionSize:!0},...gE()}),n=()=>{let i=t();for(let s of r.sockets.sockets.values())s.data?.approved&&s.emit("serverInfo",i)};Zw(n),eo._buildServerInfo=t,eo._emitServerInfo=n}function NC(){eo._emitServerInfo?.()}var DC=null;function LC(r){DC=r}async function BC(r,e,t){vE(),DC?.(),r.emit("serverInfo",eo._buildServerInfo?.()),NE(r,e,Qr,OC,MC,PC),FE(r,Qr),hC(r,e),Xl()&&await mE(r,t).catch(n=>{console.error("\u274C Failed to setup remote handlers:",n.message)}),r.on("disconnect",()=>{oC(r.id),yE()})}var re=W(require("fs"),1),Er=W(require("path"),1),tn=W(require("os"),1),ao=require("child_process"),GA=W(LA(),1),tp=W(require("sharp"),1);var Kg=["node_modules",".git","dist","build",".next","coverage","__pycache__",".cache",".vscode",".idea",".turbo",".vercel",".output","out",".nuxt",".svelte-kit","target","vendor",".gradle",".pytest_cache",".mypy_cache",".tox",".venv","venv","env",".DS_Store",".parcel-cache",".rollup.cache"],Qu=[".zip",".tar",".gz",".tgz",".rar",".7z",".bz2",".xz",".exe",".dll",".so",".dylib",".app",".bin",".woff",".woff2",".ttf",".eot",".otf",".sqlite",".db",".mdb",".class",".jar",".war",".pyc",".o",".obj"];var BA=[".ssh",".aws",".gnupg",".kube",".docker",".cargo",".npmrc",".netrc",".pypirc",".config/gh",".config/gcloud"],jA=["/etc/shadow","/etc/sudoers","/etc/ssh","/root","/private/etc/sudoers"];var ep=W(require("fs"),1),Jn=W(require("path"),1),FA=W(require("os"),1);var UA=FA.default.homedir();function UH(r){if(!r)return null;let e=r.startsWith("~")?r.replace(/^~/,UA):r,t=Jn.default.resolve(e);try{return ep.default.realpathSync(t)}catch{let n=t,i=[];for(;!ep.default.existsSync(n);){i.unshift(Jn.default.basename(n));let s=Jn.default.dirname(n);if(s===n)return t;n=s}try{return Jn.default.join(ep.default.realpathSync(n),...i)}catch{return t}}}function wt(r){let e=UH(r);if(!e)return!1;for(let t of jA)if(e===t||e.startsWith(t+Jn.default.sep))return!0;for(let t of BA){let n=Jn.default.join(UA,t);if(e===n||e.startsWith(n+Jn.default.sep))return!0}return!1}var GH={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",ico:"image/x-icon",bmp:"image/bmp",avif:"image/avif",apng:"image/apng",tif:"image/tiff",tiff:"image/tiff",mp4:"video/mp4",m4v:"video/mp4",webm:"video/webm",ogv:"video/ogg",mov:"video/quicktime",mkv:"video/x-matroska",avi:"video/x-msvideo","3gp":"video/3gpp",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",flac:"audio/flac",m4a:"audio/mp4",aac:"audio/aac",opus:"audio/opus",pdf:"application/pdf"};function rp(r){return Kg.includes(r)}function co(r){return Qu.includes(Er.default.extname(r).toLowerCase())}function zH(r,e){return r.isDirectory()?"folder":co(e)?"binary":"file"}function Zn(r){return r<1024?`${r}B`:r<1024*1024?`${(r/1024).toFixed(1)}KB`:`${(r/(1024*1024)).toFixed(1)}MB`}async function HA(r){let e=await(0,tp.default)(r).metadata(),t=e.width||0,n=e.height||0,i=[80,60,40],s=[1600,1200,800],o=r,a=t,c=n;for(let l of s)for(let u of i){o=await(0,tp.default)(r).resize({width:l,height:l,fit:"inside",withoutEnlargement:!0}).jpeg({quality:u,mozjpeg:!0}).toBuffer();let f=await(0,tp.default)(o).metadata();if(a=f.width||l,c=f.height||l,o.length<=3145728)return{buffer:o,width:a,height:c,originalWidth:t,originalHeight:n}}return{buffer:o,width:a,height:c,originalWidth:t,originalHeight:n}}function zA(r,e,t,n=50){if(!(t.length>=n))try{for(let i of re.default.readdirSync(r)){if(t.length>=n)return;if(i.startsWith(".")||rp(i))continue;let s=Er.default.join(r,i);try{let o=re.default.statSync(s);o.isDirectory()?zA(s,e,t,n):i.toLowerCase().includes(e.toLowerCase())&&t.push({name:i,path:s,type:co(i)?"binary":"file",size:o.size,sizeFormatted:Zn(o.size)})}catch{}}}catch{}}function WA(r){if(!r)return null;let e=r.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*/g,"::ANY::").replace(/\*/g,"[^/]*").replace(/::ANY::/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`)}function VA(r,e,t,n,i,s){if(s.length>=200)return;let o;try{o=re.default.readdirSync(r,{withFileTypes:!0})}catch{return}for(let a of o){if(s.length>=200)return;if(rp(a.name))continue;let c=Er.default.join(r,a.name),l=Er.default.relative(e,c);if(a.isDirectory()){VA(c,e,t,n,i,s);continue}if(a.isFile()&&!co(a.name)&&!wt(c)&&!(i&&i.test(l))&&!(n&&!n.test(l)))try{if(re.default.statSync(c).size>1048576)continue;let d=re.default.readFileSync(c,"utf-8").split(`
|
|
177
177
|
`),g=[];for(let y=0;y<d.length&&g.length<10;y++){let b=d[y],C=t(b);for(let R of C){if(g.length>=10)break;g.push({line:y+1,column:R.column+1,lineText:b,matchLength:R.length})}}g.length&&s.push({path:c,matches:g})}catch{}}}function KA(r,e,t){let n;try{n=re.default.readdirSync(r,{withFileTypes:!0})}catch{return[]}let i=[];for(let s of n){if(!t&&s.name.startsWith(".")&&s.name!==".env"&&s.name!==".env.example"||rp(s.name))continue;let o=Er.default.join(r,s.name);if(s.isDirectory()){let a={name:s.name,path:o,type:"folder"};e>0&&(a.children=KA(o,e-1,t)),i.push(a)}else s.isFile()&&i.push({name:s.name,path:o,type:co(s.name)?"binary":"file"})}return i.sort((s,o)=>s.type==="folder"&&o.type!=="folder"?-1:s.type!=="folder"&&o.type==="folder"?1:s.name.localeCompare(o.name)),i}function VH(){if(process.platform!=="win32")return[];try{return(0,ao.execSync)("wmic logicaldisk get name",{encoding:"utf-8",stdio:["pipe","pipe","pipe"],windowsHide:!0}).split(/\r?\n/).map(e=>e.trim()).filter(e=>/^[A-Z]:$/.test(e)).map(e=>({letter:e[0],path:e+"\\"}))}catch{return"CDEFGHIJ".split("").map(r=>`${r}:\\`).filter(r=>re.default.existsSync(r)).map(r=>({letter:r[0],path:r}))}}function YA(r){r.on("getSystemInfo",t=>{let n=process.platform;t({success:!0,platform:n,isWindows:n==="win32",drives:n==="win32"?VH():[],homedir:tn.default.homedir()})}),r.on("getFiles",({dirPath:t,showHidden:n},i)=>{try{let s=t||tn.default.homedir(),o=s.startsWith("~")?s.replace("~",tn.default.homedir()):s;if(wt(o))return i({success:!1,error:"Access denied"});if(!re.default.existsSync(o))return i({success:!1,error:"Directory not found"});let a=[];for(let c of re.default.readdirSync(o))if(!(!n&&c.startsWith(".")&&c!==".env"&&c!==".env.example")&&!rp(c))try{let l=Er.default.join(o,c),u=re.default.statSync(l);a.push({name:c,path:l,type:zH(u,c),size:u.isFile()?u.size:null,sizeFormatted:u.isFile()?Zn(u.size):null,modified:u.mtime.getTime()})}catch{}a.sort((c,l)=>c.type==="folder"&&l.type!=="folder"?-1:c.type!=="folder"&&l.type==="folder"?1:c.name.localeCompare(l.name)),i({success:!0,files:a,currentPath:o,parentPath:Er.default.dirname(o)})}catch(s){i({success:!1,error:s.message})}}),r.on("searchFiles",({workspace:t,query:n},i)=>{try{if(!n||n.length<2)return i({success:!0,files:[]});let s=(t||tn.default.homedir()).replace(/^~/,tn.default.homedir());if(!re.default.existsSync(s))return i({success:!1,error:"Workspace not found"});let o=[];zA(s,n,o,50),o.sort((a,c)=>{let l=a.name.toLowerCase()===n.toLowerCase(),u=c.name.toLowerCase()===n.toLowerCase();return l&&!u?-1:!l&&u?1:a.path.length-c.path.length}),i({success:!0,files:o})}catch(s){i({success:!1,error:s.message})}}),r.on("readFile",({filePath:t},n)=>{try{if(wt(t))return n({success:!1,error:"Access denied"});if(!re.default.existsSync(t))return n({success:!1,error:"File not found"});let i=re.default.statSync(t);if(i.size>1048576)return n({success:!1,error:`File too large (${Zn(i.size)}). Max ${Zn(1048576)}`});if(co(t))return n({success:!1,error:"Cannot open binary file"});n({success:!0,content:re.default.readFileSync(t,"utf-8")})}catch(i){n({success:!1,error:i.message})}}),r.on("readMedia",async({filePath:t},n)=>{try{if(wt(t))return n({success:!1,error:"Access denied"});if(!re.default.existsSync(t))return n({success:!1,error:"File not found"});let i=re.default.statSync(t),s=Er.default.extname(t).toLowerCase().slice(1),o=GH[s]||"application/octet-stream",a=o.startsWith("image/"),c=a?20971520:5242880;if(i.size>c)return n({success:!1,error:`File too large (${Zn(i.size)}). Max ${Zn(c)}`});let l=re.default.readFileSync(t);if(a){let u=await HA(l),f=`data:image/jpeg;base64,${u.buffer.toString("base64")}`;n({success:!0,dataUrl:f,size:i.size,mime:o,originalSize:i.size,originalWidth:u.originalWidth,originalHeight:u.originalHeight,width:u.width,height:u.height,scaled:u.buffer.length<i.size})}else{let u=`data:${o};base64,${l.toString("base64")}`;n({success:!0,dataUrl:u,size:i.size,mime:o})}}catch(i){n({success:!1,error:i.message})}}),r.on("readImage",async({filePath:t},n)=>{try{if(wt(t))return n({success:!1,error:"Access denied"});if(!re.default.existsSync(t))return n({success:!1,error:"File not found"});let i=re.default.statSync(t);if(i.size>20971520)return n({success:!1,error:`Image too large (${Zn(i.size)}). Max ${Zn(20971520)}`});let s=re.default.readFileSync(t),o=await HA(s),a=`data:image/jpeg;base64,${o.buffer.toString("base64")}`;n({success:!0,dataUrl:a,size:i.size,mime:"image/jpeg",originalSize:i.size,originalWidth:o.originalWidth,originalHeight:o.originalHeight,width:o.width,height:o.height,scaled:o.buffer.length<i.size})}catch(i){n({success:!1,error:i.message})}}),r.on("writeFile",({filePath:t,content:n},i)=>{try{if(wt(t))return i({success:!1,error:"Access denied"});re.default.writeFileSync(t,n,"utf-8"),i({success:!0})}catch(s){i({success:!1,error:s.message})}}),r.on("createItem",({itemPath:t,type:n},i)=>{try{if(wt(t))return i({success:!1,error:"Access denied"});if(re.default.existsSync(t))return i({success:!1,error:"Item already exists"});n==="folder"?re.default.mkdirSync(t,{recursive:!0}):re.default.writeFileSync(t,"","utf-8"),i({success:!0})}catch(s){i({success:!1,error:s.message})}}),r.on("deleteItem",({itemPath:t},n)=>{try{if(wt(t))return n({success:!1,error:"Access denied"});if(!re.default.existsSync(t))return n({success:!1,error:"Item not found"});re.default.statSync(t).isDirectory()?re.default.rmSync(t,{recursive:!0}):re.default.unlinkSync(t),n({success:!0})}catch(i){n({success:!1,error:i.message})}}),r.on("renameItem",({oldPath:t,newPath:n},i)=>{try{if(wt(t)||wt(n))return i({success:!1,error:"Access denied"});if(!re.default.existsSync(t))return i({success:!1,error:"Item not found"});if(re.default.existsSync(n))return i({success:!1,error:"Target already exists"});re.default.renameSync(t,n),i({success:!0})}catch(s){i({success:!1,error:s.message})}}),r.on("searchInFiles",({workspace:t,query:n,caseSensitive:i,regex:s,includeGlob:o,excludeGlob:a},c)=>{try{if(!n)return c({success:!0,results:[]});let l=(t||tn.default.homedir()).replace(/^~/,tn.default.homedir());if(!re.default.existsSync(l))return c({success:!1,error:"Workspace not found"});let u;if(s){let y;try{y=new RegExp(n,i?"g":"gi")}catch(b){return c({success:!1,error:`Invalid regex: ${b.message}`})}u=b=>{let C=[],R;for(y.lastIndex=0;(R=y.exec(b))!==null;)C.push({column:R.index,length:R[0].length}),R.index===y.lastIndex&&y.lastIndex++;return C}}else{let y=i?n:n.toLowerCase();u=b=>{let C=i?b:b.toLowerCase(),R=[],O=0;for(;(O=C.indexOf(y,O))!==-1;)R.push({column:O,length:y.length}),O+=y.length||1;return R}}let f=WA(o),d=WA(a),g=[];VA(l,l,u,f,d,g),c({success:!0,results:g})}catch(l){c({success:!1,error:l.message})}}),r.on("replaceInFiles",({workspace:t,query:n,replacement:i,caseSensitive:s,regex:o,files:a},c)=>{try{if(!n||!Array.isArray(a)||!a.length)return c({success:!0,replacedCount:0,fileCount:0});let l;if(o){let d;try{d=new RegExp(n,s?"g":"gi")}catch(g){return c({success:!1,error:`Invalid regex: ${g.message}`})}l=g=>{let y=0;return{next:g.replace(d,C=>(y++,i)),count:y}}}else l=d=>{let g=0,y=s?"g":"gi",b=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),C=new RegExp(b,y);return{next:d.replace(C,()=>(g++,i)),count:g}};let u=0,f=0;for(let d of a)try{if(!re.default.existsSync(d)||co(d)||wt(d))continue;let g=re.default.statSync(d);if(!g.isFile()||g.size>1048576)continue;let y=re.default.readFileSync(d,"utf-8"),{next:b,count:C}=l(y);C>0&&(re.default.writeFileSync(d,b,"utf-8"),u+=C,f++)}catch{}c({success:!0,replacedCount:u,fileCount:f})}catch(l){c({success:!1,error:l.message})}});let e=new Map;r.on("watchDir",({dirPath:t},n)=>{try{if(!t||!re.default.existsSync(t))return n({success:!1,error:"Directory not found"});let i=e.get(t);if(i)return i.count++,n({success:!0});let s=GA.default.watch(t,{depth:0,ignoreInitial:!0,persistent:!0,ignored:a=>Kg.includes(Er.default.basename(a))}),o=a=>c=>r.emit("fileChange",{type:a,path:c});s.on("add",o("add")).on("change",o("change")).on("unlink",o("unlink")).on("addDir",o("addDir")).on("unlinkDir",o("unlinkDir")),e.set(t,{w:s,count:1}),n({success:!0})}catch(i){n({success:!1,error:i.message})}}),r.on("unwatchDir",({dirPath:t},n)=>{try{let i=e.get(t);i&&--i.count<=0&&(i.w.close(),e.delete(t)),n({success:!0})}catch(i){n({success:!1,error:i.message})}}),r.once("disconnect",()=>{for(let{w:t}of e.values())try{t.close()}catch{}e.clear()}),r.on("revealInOS",({filePath:t},n)=>{try{if(!t)return n({success:!1,error:"No path"});let i=process.platform,s,o;i==="darwin"?(s="open",o=["-R",t]):i==="win32"?(s="explorer",o=[`/select,${t}`]):(s="xdg-open",o=[Er.default.dirname(t)]);let a=(0,ao.spawn)(s,o,{detached:!0,stdio:"ignore",windowsHide:!0});a.on("error",c=>n({success:!1,error:c.message})),a.unref(),n({success:!0})}catch(i){n({success:!1,error:i.message})}}),r.on("openInTerminal",({dirPath:t},n)=>{try{if(!t||!re.default.existsSync(t))return n({success:!1,error:"Directory not found"});let i=process.platform,s,o,a={detached:!0,stdio:"ignore",windowsHide:!0};i==="darwin"?(s="open",o=["-a","Terminal",t]):i==="win32"?(s="cmd",o=["/C","start",'"9Remote"',"cmd","/K"],a.shell=!1,a.cwd=t):(s="gnome-terminal",o=["--working-directory",t]);let c=(0,ao.spawn)(s,o,a);c.on("error",()=>{if(i==="linux"){let l=(0,ao.spawn)("xterm",["-e","bash"],{...a,cwd:t});l.on("error",u=>n({success:!1,error:u.message})),l.unref()}else n({success:!1,error:"Failed to open terminal"})}),c.unref(),n({success:!0})}catch(i){n({success:!1,error:i.message})}}),r.on("getFileTree",({dirPath:t,depth:n,showHidden:i},s)=>{try{let o=(t||tn.default.homedir()).replace(/^~/,tn.default.homedir());if(!re.default.existsSync(o))return s({success:!1,error:"Directory not found"});let c=KA(o,typeof n=="number"?n:3,!!i);s({success:!0,tree:{name:Er.default.basename(o)||o,path:o,type:"folder",children:c}})}catch(o){s({success:!1,error:o.message})}})}var Vt=W(require("fs"),1),Ii=W(require("path"),1),Ni=require("child_process");var YH=5e3,Xg=new Map;function On(r,e){return new Promise(t=>{let n=(0,Ni.spawn)("git",r,{cwd:e,windowsHide:!0}),i="",s="";n.stdout.on("data",o=>{i+=o.toString()}),n.stderr.on("data",o=>{s+=o.toString()}),n.on("error",o=>t({code:-1,stdout:i,stderr:o.message})),n.on("close",o=>t({code:o,stdout:i,stderr:s}))})}function lo(r,e){try{return(0,Ni.spawnSync)("git",r,{cwd:e,encoding:"utf-8",windowsHide:!0}).stdout??""}catch{return""}}function XA(r){return Qu.includes(Ii.default.extname(r).toLowerCase())}function JA(r){r.on("gitStatus",({repoPath:e},t)=>{try{let n=(0,Ni.execSync)("git status --porcelain --no-renames",{cwd:e,encoding:"utf-8",stdio:["pipe","pipe","pipe"],windowsHide:!0}),i={};try{(0,Ni.execSync)("git diff HEAD --numstat --no-renames",{cwd:e,encoding:"utf-8",stdio:["pipe","pipe","pipe"],windowsHide:!0}).trim().split(`
|
|
178
178
|
`).filter(Boolean).forEach(a=>{let c=a.split(" ");c.length>=3&&(i[c[2]]={added:c[0]==="-"?0:parseInt(c[0],10)||0,deleted:c[1]==="-"?0:parseInt(c[1],10)||0})})}catch{}let s=[];for(let o of n.trim().split(`
|
|
179
179
|
`).filter(Boolean)){let a=o.match(/^([MADRCU?! ]{1,2})\s+(.+)$/);if(!a)continue;let c=a[1],l=a[2].replace(/\r+$/,"").trim();if(l.startsWith('"')&&l.endsWith('"')&&(l=l.slice(1,-1)),!l)continue;let u;c.includes("?")?u="?":c.includes("A")?u="A":c.includes("D")?u="D":c.includes("M")?u="M":c.includes("R")?u="R":u=c.trim()[0]||"?";let f=i[l]||{added:0,deleted:0};if(u==="?")try{let d=Ii.default.join(e,l);if(Vt.default.existsSync(d)&&!XA(l)&&!wt(d)){let g=Vt.default.readFileSync(d,"utf-8");f.added=g.split(`
|
|
@@ -304,8 +304,8 @@ self.addEventListener('fetch', (event) => {
|
|
|
304
304
|
</body>
|
|
305
305
|
</html>
|
|
306
306
|
`);return}e._proxyTargetPort=n,e.url=i+(s||""),r.web(e,t,{target:`http://localhost:${n}`,changeOrigin:!0},o=>{t.writeHead(502),t.end(`Bad Gateway: ${o.message}`)})}var pO=W(require("http"),1),fO=W(require("https"),1),dO=require("child_process"),hO=require("util"),I4=(0,hO.promisify)(dO.exec);async function N4(){let r=process.platform,e=new Set([80,443]);try{let t;if(r==="win32")t="netstat -ano | findstr LISTENING";else{let s="/dev/null";t=`lsof -iTCP -sTCP:LISTEN -P -n 2>${s} || netstat -tlnp 2>${s}`}let{stdout:n}=await I4(t),i=n.split(`
|
|
307
|
-
`);for(let s of i){let o=s.match(/[:\*\]](\d{2,5})(?:\s|$)/g);if(o)for(let a of o){let c=parseInt(a.replace(/[:\*\]\s]/g,""),10);c>0&&c<=65535&&(c===80||c===443||c>=1024)&&e.add(c)}}return Array.from(e)}catch(t){return console.error("Failed to get listening ports:",t.message),[80,443,3e3,3001,4200,5e3,5173,8e3,8080,9e3]}}function D4(r,e=2e3){return new Promise(t=>{let n=pO.default.request({host:"localhost",port:r,method:"GET",path:"/",timeout:e},i=>{i.on("data",()=>{}),i.on("end",()=>{}),t({active:!0,protocol:"http",status:i.statusCode})});n.on("error",i=>{t({active:!1,error:i.message})}),n.on("timeout",()=>{n.destroy(),t({active:!1,error:"timeout"})}),n.end()})}function L4(r,e=2e3){return new Promise(t=>{let n=fO.default.request({host:"localhost",port:r,method:"GET",path:"/",timeout:e,rejectUnauthorized:!1},i=>{i.on("data",()=>{}),i.on("end",()=>{}),t({active:!0,protocol:"https",status:i.statusCode})});n.on("error",i=>{t({active:!1,error:i.message})}),n.on("timeout",()=>{n.destroy(),t({active:!1,error:"timeout"})}),n.end()})}async function B4(r){let[e,t]=await Promise.all([D4(r),L4(r)]);return t.active?{port:r,...t}:e.active?{port:r,...e}:{port:r,active:!1}}async function mO(){let r=await N4();return(await Promise.all(r.map(t=>B4(t)))).filter(t=>t.active).map(t=>({port:t.port,protocol:t.protocol,url:`${t.protocol}://localhost:${t.port}`,name:`localhost:${t.port}`,status:t.status})).sort((t,n)=>t.port-n.port)}var gO=W(require("crypto"),1),j4=process.env.API_KEY_SECRET||"9remote-api-key-secret";function F4(){let r="abcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<4;t++)e+=r.charAt(Math.floor(Math.random()*r.length));return e}function vO(r,e){return gO.default.createHmac("sha256",j4).update(r+e).digest("hex").slice(0,6)}function yO(r){let e=r.slice(0,8),t=F4(),n=vO(e,t);return{key:`sk-${e}-${t}-${n}`,keyId:t}}function U4(r){if(!r||!r.startsWith("sk-"))return null;let e=r.split("-");if(e.length===4){let[,t,n,i]=e,s=vO(t,n);return i!==s?null:{machineId:t,keyId:n}}return null}function fp(r){return U4(r)!==null}async function xO(r,e){let t=r.headers.authorization;if(!t||!t.startsWith("Bearer ")){e.setHeader("Content-Type","application/json"),e.writeHead(401),e.end(JSON.stringify({error:"Unauthorized: Missing API key"}));return}let n=t.slice(7);if(!fp(n)){e.setHeader("Content-Type","application/json"),e.writeHead(401),e.end(JSON.stringify({error:"Unauthorized: Invalid API key"}));return}let i=await mO();e.setHeader("Content-Type","application/json"),e.writeHead(200),e.end(JSON.stringify(i))}_l();var wO=require("url");var dp=W(require("path"),1),SO=W(require("os"),1);St();var _O=W(require("path"),1),bO=W(require("os"),1);var V5=_O.default.join(bO.default.homedir(),".9remote","pids");vh();var za={checkIntervalMs:36e5,connectCheckDebounceMs:9e5,maxRetry:3,retryDelayMs:3e3,verifyTimeoutMs:15e3,lockTtlMs:3e5,lockFile:"update.lock"};var X5={orange:yo.rgb(230,138,110),orangeDim:yo.rgb(200,120,95)};var iK=dp.default.dirname((0,wO.fileURLToPath)(__importMetaUrl));var sK=dp.default.join(SO.default.homedir(),".9remote","cloudflared.pid");function EO(r,e){let t=r.split(".").map(Number),n=e.split(".").map(Number);for(let i=0;i<3;i++){if(n[i]>t[i])return!0;if(n[i]<t[i])return!1}return!1}var oK=dp.default.join(ie.STATE,za.lockFile);bn();Ft();St();Ts();var CO=W(TO(),1),yv=W(require("crypto"),1),{machineIdSync:q4}=CO.default;async function kO(r=null){let e=r||process.env.MACHINE_ID_SALT||"9remote-salt";try{let t=q4();return yv.default.createHash("sha256").update(t+e).digest("hex").substring(0,16)}catch(t){return console.error("Error getting machine ID:",t),yv.default.randomUUID().replace(/-/g,"").substring(0,16)}}bn();async function AO(r,e){let t=Vw(),n=t.workerUrl||"https://9remote.cc";if(!t.permanentKey){le(e,400,"No permanent key set");return}try{let s=await(await wo(`${n}/api/temp-key/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:t.permanentKey,expiryMinutes:30})})).json(),o=`${n}/login?k=${s.tempKey}`;_n({oneTimeKey:s.tempKey,oneTimeKeyExpiresAt:s.expiresAt,qrUrl:o}),Z(e,{oneTimeKey:s.tempKey,expiresAt:s.expiresAt,qrUrl:o})}catch(i){le(e,500,i.message)}}async function RO(r,e){try{let t=await kO(),{key:n}=yO(t),i=kw();Aw(t,n,i?.name||"Default"),_n({permanentKey:n}),Z(e,{ok:!0,permanentKey:n})}catch(t){le(e,500,t.message)}}Ft();async function OO(r,e){let t=await jt(r,e);if(!t)return;let n=xR(t.socketId);Z(e,{ok:n})}async function MO(r,e){let t=await jt(r,e);if(!t)return;let n=bR(t.socketId);Z(e,{ok:n})}function PO(r,e){Z(e,{pending:uR()})}function IO(r,e){Z(e,{devices:aR()})}function NO(r,e){Z(e,{rejected:hR()})}async function DO(r,e){let t=await jt(r,e);if(!t)return;let n=_R(t.deviceId);Z(e,{ok:n})}async function LO(r,e){let t=await jt(r,e);t&&(ap(t.deviceId),fo(t.deviceId),Z(e))}async function BO(r,e){let t=await jt(r,e);t&&(ap(t.deviceId),sR(t.deviceId),Z(e))}async function jO(r,e){let t=await jt(r,e);if(!t)return;let n=ap(t.deviceId);Z(e,{disconnected:n})}function FO(r,e){Z(e,{enabled:op()})}async function UO(r,e){let t=await jt(r,e);if(!t)return;let n=oR(t.deviceId,t.label);Z(e,{ok:n})}async function qO(r,e){let t=await jt(r,e);if(!t)return;let n=gR(!!t.enabled);Z(e,{enabled:n})}Ft();_i();var $O={},$4=1e4;function HO(r,e){if(e)return{type:e.type||"stop",sessionId:e.sessionId||"",tool:e.tool||"claude"};let t=JSON.parse(r||"{}");return{type:t.type||"stop",sessionId:t.sessionId||"",tool:t.tool||"claude"}}async function WO(r,e){let t="";await new Promise(n=>{r.on("data",i=>t+=i),r.on("end",n)});try{zO(HO(t,null)),Z(e,{success:!0})}catch{le(e,400,"Invalid JSON")}}function GO(r,e,{query:t}){zO(HO(null,t)),Z(e,{success:!0})}function zO({type:r,sessionId:e,tool:t}){let n=Date.now(),i=ja();if(!i||!e)return;let s={type:r,sessionId:e,tool:t,timestamp:n},a=Mu({type:r,sessionId:e,tool:t})?.state||pt.IDLE;if(ut(i,"statusChange",{sessionId:e,state:a,tool:t,since:n}),Gm(e,s),ut(i,"chatNotification",s),a!==pt.DONE&&a!==pt.BLOCKED)return;let c=`${e}:${a}`;n-($O[c]||0)<$4||($O[c]=n,cC({...s,state:a}))}Ft();Il();Ts();dt();bn();function VO(){return{mode:Sh(),active:wh(),presets:Object.keys(H.sleepInhibit?.presets||{})}}function KO(r,e){Z(e,VO())}async function YO(r,e){let t=await jt(r,e);if(!t)return;let n=sa(t.mode);Cw({sleepInhibitMode:n});let i=VO();Ct("sleepInhibit",i),Z(e,i)}Ft();async function XO(r,e){try{let t=await $l();Z(e,{sessions:t})}catch(t){le(e,500,t.message)}}async function JO(r,e){let t=await jt(r,e);if(t){if(!t.sessionId)return le(e,400,"sessionId required");try{await bi(t.sessionId),Z(e)}catch(n){le(e,500,n.message)}}}var In=W(require("os"),1);dt();Ft();function H4(){let r=uE();if(!r?.activeClients)return{total:0,streaming:0};let e=0;for(let t of r.activeClients.values())t.isStreaming&&e++;return{total:r.activeClients.size,streaming:e}}function W4(){let r=process.memoryUsage(),e=In.default.cpus();return{agent:{pid:process.pid,version:"2.1.20",nodeVersion:process.version,platform:`${process.platform}/${process.arch}`,uptimeSec:Math.round(process.uptime()),memory:{heapUsedMB:Math.round(r.heapUsed/1048576*10)/10,heapTotalMB:Math.round(r.heapTotal/1048576*10)/10,rssMB:Math.round(r.rss/1048576*10)/10,externalMB:Math.round(r.external/1048576*10)/10}},os:{hostname:In.default.hostname(),platform:In.default.platform(),arch:In.default.arch(),uptimeSec:Math.round(In.default.uptime()),loadAvg:In.default.loadavg(),cpuModel:e?.[0]?.model||"unknown",cpuCount:e.length,totalMemMB:Math.round(In.default.totalmem()/1048576),freeMemMB:Math.round(In.default.freemem()/1048576)},remote:{available:Xl(),...H4(),memoryWarningThresholdMB:H.resourceManagement.memoryWarningThreshold},timestamp:Date.now()}}function ZO(r,e){try{Z(e,W4())}catch(t){le(e,500,"stats error",t.message)}}Il();Ts();dt();iy();var Qn=Fr("server"),ei=(0,rM.fileURLToPath)(new URL(".",__importMetaUrl)),nM=process.env.NODE_ENV==="development",G4=5173,xv=(0,Ui.existsSync)((0,sr.join)(ei,"ui","dist"))?(0,sr.join)(ei,"ui","dist"):(0,sr.join)(ei,"ui"),z4={".html":"text/html",".js":"application/javascript",".css":"text/css",".svg":"image/svg+xml",".png":"image/png",".ico":"image/x-icon",".woff2":"font/woff2",".woff":"font/woff"};function V4(r,e,t){let n=(0,hp.request)({hostname:"localhost",port:G4,path:r.url,method:r.method,headers:r.headers},i=>{e.writeHead(i.statusCode,i.headers),i.pipe(e)});n.on("error",()=>t?t():void(e.writeHead(502),e.end("Vite dev server not ready"))),r.pipe(n)}function QO(r,e){if(!(0,Ui.existsSync)(e))return!1;let t=z4[(0,sr.extname)(e)]||"application/octet-stream";return r.setHeader("Content-Type",t),r.writeHead(200),r.end((0,Ui.readFileSync)(e)),!0}async function _v(r){try{let e=await wo(Up);if(!e.ok)return;let{version:t}=await e.json();t&&EO(r,t)&&(Xw({version:t}),Ct("updateAvailable",{version:t}),NC())}catch{}}var eM=0;function K4(r){let e=Date.now();e-eM<za.connectCheckDebounceMs||(eM=e,_v(r))}function Y4(r,e){if(process.env.CODESPACES!=="true"){le(e,400,"Not running on Codespaces");return}let t=process.env.CODESPACE_NAME;if(!t){le(e,400,"Codespace name not found");return}let n=ja();n&&n.emit("codespace:stopping"),Z(e,{success:!0,message:"Stopping codespace..."}),setTimeout(()=>(0,Fi.execFile)("gh",["codespace","stop","-c",t],{windowsHide:!0}),500)}var iM;async function tM(r,e,{pathname:t}){let n=r.headers.authorization;if(!n||!n.startsWith("Bearer ")||!fp(n.slice(7))){le(e,401,"Unauthorized");return}let{parseJsonBody:i}=await Promise.resolve().then(()=>(Ft(),Hi)),s=await i(r,e);if(s){if(!s.port){le(e,400,"Port required");return}t.endsWith("start")?aO(s.port):cO(s.port),Z(e,{success:!0})}}function X4(r,e,{pathname:t,search:n}){let i=t.match(/^\/proxy\/(\d+)(\/.*)?$/);i?uO(iM,r,e,i[1],i[2]||"/",n):le(e,404,"Not found")}var J4=[{path:"/api/health",method:"GET",public:!0,handler:(r,e)=>Z(e,{status:"ok",timestamp:Date.now()})},{path:"/api/version",method:"GET",public:!0,handler:(r,e)=>{Z(e,{version:"2.1.20"})}},{path:"/api/notify",method:"POST",public:!0,handler:WO},{path:"/api/notify",method:"GET",public:!0,handler:GO},{path:"/proxy/*",method:"*",public:!0,handler:X4},{path:"/api/ui/events",method:"GET",handler:nS},{path:"/api/local-token",method:"GET",handler:Qw},{path:"/api/ui/state",method:"GET",handler:iS},{path:"/api/ui/state",method:"POST",handler:sS},{path:"/api/ui/stop",method:"POST",handler:oS},{path:"/api/ui/start",method:"POST",handler:aS},{path:"/api/ui/stop-tunnel",method:"POST",handler:cS},{path:"/api/ui/shutdown",method:"POST",handler:lS},{path:"/api/update",method:"POST",handler:uS},{path:"/api/system/stats",method:"GET",handler:ZO},{path:"/api/key/one-time",method:"POST",handler:AO},{path:"/api/key/regenerate",method:"POST",handler:RO},{path:"/api/device/approve",method:"POST",handler:OO},{path:"/api/device/reject",method:"POST",handler:MO},{path:"/api/device/pending",method:"GET",handler:PO},{path:"/api/device/approved",method:"GET",handler:IO},{path:"/api/device/rejected",method:"GET",handler:NO},{path:"/api/device/approve-rejected",method:"POST",handler:DO},{path:"/api/device/clear-rejected",method:"POST",handler:LO},{path:"/api/device/remove",method:"POST",handler:BO},{path:"/api/device/label",method:"POST",handler:UO},{path:"/api/device/disconnect",method:"POST",handler:jO},{path:"/api/device/auto-approve",method:"GET",handler:FO},{path:"/api/device/auto-approve",method:"POST",handler:qO},{path:"/api/connections",method:"GET",handler:pS},{path:"/api/logs",method:"GET",handler:fS},{path:"/api/permissions",method:"GET",handler:hS},{path:"/api/permissions/request",method:"POST",handler:vS},{path:"/api/desktop/toggle",method:"POST",handler:dS},{path:"/api/autostart",method:"GET",handler:mS},{path:"/api/autostart",method:"POST",handler:gS},{path:"/api/sleep-inhibit",method:"GET",handler:KO},{path:"/api/sleep-inhibit",method:"POST",handler:YO},{path:"/api/sessions",method:"GET",handler:XO},{path:"/api/sessions/delete",method:"POST",handler:JO},{path:"/api/local-sites",method:"*",public:!0,handler:xO},{path:"/api/codespace/stop",method:"POST",handler:Y4},{path:"/api/proxy/start",method:"POST",public:!0,handler:tM},{path:"/api/proxy/end",method:"POST",public:!0,handler:tM}];var Z4=parseInt(process.env.PORT||"2208",10),Ka=null;function Q4(r){if(process.platform!=="win32")try{let e=(0,Fi.execSync)(`pgrep -f "vite --config ${r}"`,{encoding:"utf8"}).trim();for(let t of e.split(`
|
|
308
|
-
`).filter(Boolean))if((0,Fi.execSync)(`ps -o ppid= -p ${t}`,{encoding:"utf8"}).trim()==="1")try{process.kill(Number(t))}catch{}}catch{}}function e6(){if(!nM)return;let r=(0,sr.join)(ei,"vite.config.js");if(!(0,Ui.existsSync)(r))return;Q4(r);let e=(0,Ui.existsSync)((0,sr.join)(ei,"node_modules",".bin","vite"))?(0,sr.join)(ei,"node_modules",".bin","vite"):(0,sr.join)(ei,"..","node_modules",".bin","vite");Ka=(0,Fi.spawn)("node",[e,"--config",r],{cwd:ei,stdio:"ignore",detached:!1}),Ka.on("error",()=>{}),Ka.unref()}async function sM(){let r=hh(),e=r.sleepInhibitMode;e||(r.sleepInhibit===!1?e="never":e=H.sleepInhibit?.defaultMode||"never"),sa(e),await IC(),iM=lO(),e6();let n=jp(J4,{fallback:(a,c,{pathname:l})=>{if(l.startsWith("/api/")||l.startsWith("/socket.io")){
|
|
307
|
+
`);for(let s of i){let o=s.match(/[:\*\]](\d{2,5})(?:\s|$)/g);if(o)for(let a of o){let c=parseInt(a.replace(/[:\*\]\s]/g,""),10);c>0&&c<=65535&&(c===80||c===443||c>=1024)&&e.add(c)}}return Array.from(e)}catch(t){return console.error("Failed to get listening ports:",t.message),[80,443,3e3,3001,4200,5e3,5173,8e3,8080,9e3]}}function D4(r,e=2e3){return new Promise(t=>{let n=pO.default.request({host:"localhost",port:r,method:"GET",path:"/",timeout:e},i=>{i.on("data",()=>{}),i.on("end",()=>{}),t({active:!0,protocol:"http",status:i.statusCode})});n.on("error",i=>{t({active:!1,error:i.message})}),n.on("timeout",()=>{n.destroy(),t({active:!1,error:"timeout"})}),n.end()})}function L4(r,e=2e3){return new Promise(t=>{let n=fO.default.request({host:"localhost",port:r,method:"GET",path:"/",timeout:e,rejectUnauthorized:!1},i=>{i.on("data",()=>{}),i.on("end",()=>{}),t({active:!0,protocol:"https",status:i.statusCode})});n.on("error",i=>{t({active:!1,error:i.message})}),n.on("timeout",()=>{n.destroy(),t({active:!1,error:"timeout"})}),n.end()})}async function B4(r){let[e,t]=await Promise.all([D4(r),L4(r)]);return t.active?{port:r,...t}:e.active?{port:r,...e}:{port:r,active:!1}}async function mO(){let r=await N4();return(await Promise.all(r.map(t=>B4(t)))).filter(t=>t.active).map(t=>({port:t.port,protocol:t.protocol,url:`${t.protocol}://localhost:${t.port}`,name:`localhost:${t.port}`,status:t.status})).sort((t,n)=>t.port-n.port)}var gO=W(require("crypto"),1),j4=process.env.API_KEY_SECRET||"9remote-api-key-secret";function F4(){let r="abcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<4;t++)e+=r.charAt(Math.floor(Math.random()*r.length));return e}function vO(r,e){return gO.default.createHmac("sha256",j4).update(r+e).digest("hex").slice(0,6)}function yO(r){let e=r.slice(0,8),t=F4(),n=vO(e,t);return{key:`sk-${e}-${t}-${n}`,keyId:t}}function U4(r){if(!r||!r.startsWith("sk-"))return null;let e=r.split("-");if(e.length===4){let[,t,n,i]=e,s=vO(t,n);return i!==s?null:{machineId:t,keyId:n}}return null}function fp(r){return U4(r)!==null}async function xO(r,e){let t=r.headers.authorization;if(!t||!t.startsWith("Bearer ")){e.setHeader("Content-Type","application/json"),e.writeHead(401),e.end(JSON.stringify({error:"Unauthorized: Missing API key"}));return}let n=t.slice(7);if(!fp(n)){e.setHeader("Content-Type","application/json"),e.writeHead(401),e.end(JSON.stringify({error:"Unauthorized: Invalid API key"}));return}let i=await mO();e.setHeader("Content-Type","application/json"),e.writeHead(200),e.end(JSON.stringify(i))}_l();var wO=require("url");var dp=W(require("path"),1),SO=W(require("os"),1);St();var _O=W(require("path"),1),bO=W(require("os"),1);var V5=_O.default.join(bO.default.homedir(),".9remote","pids");vh();var za={checkIntervalMs:36e5,connectCheckDebounceMs:9e5,maxRetry:3,retryDelayMs:3e3,verifyTimeoutMs:15e3,lockTtlMs:3e5,lockFile:"update.lock"};var X5={orange:yo.rgb(230,138,110),orangeDim:yo.rgb(200,120,95)};var iK=dp.default.dirname((0,wO.fileURLToPath)(__importMetaUrl));var sK=dp.default.join(SO.default.homedir(),".9remote","cloudflared.pid");function EO(r,e){let t=r.split(".").map(Number),n=e.split(".").map(Number);for(let i=0;i<3;i++){if(n[i]>t[i])return!0;if(n[i]<t[i])return!1}return!1}var oK=dp.default.join(ie.STATE,za.lockFile);bn();Ft();St();Ts();var CO=W(TO(),1),yv=W(require("crypto"),1),{machineIdSync:q4}=CO.default;async function kO(r=null){let e=r||process.env.MACHINE_ID_SALT||"9remote-salt";try{let t=q4();return yv.default.createHash("sha256").update(t+e).digest("hex").substring(0,16)}catch(t){return console.error("Error getting machine ID:",t),yv.default.randomUUID().replace(/-/g,"").substring(0,16)}}bn();async function AO(r,e){let t=Vw(),n=t.workerUrl||"https://9remote.cc";if(!t.permanentKey){ue(e,400,"No permanent key set");return}try{let s=await(await wo(`${n}/api/temp-key/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:t.permanentKey,expiryMinutes:30})})).json(),o=`${n}/login?k=${s.tempKey}`;_n({oneTimeKey:s.tempKey,oneTimeKeyExpiresAt:s.expiresAt,qrUrl:o}),Z(e,{oneTimeKey:s.tempKey,expiresAt:s.expiresAt,qrUrl:o})}catch(i){ue(e,500,i.message)}}async function RO(r,e){try{let t=await kO(),{key:n}=yO(t),i=kw();Aw(t,n,i?.name||"Default"),_n({permanentKey:n}),Z(e,{ok:!0,permanentKey:n})}catch(t){ue(e,500,t.message)}}Ft();async function OO(r,e){let t=await jt(r,e);if(!t)return;let n=xR(t.socketId);Z(e,{ok:n})}async function MO(r,e){let t=await jt(r,e);if(!t)return;let n=bR(t.socketId);Z(e,{ok:n})}function PO(r,e){Z(e,{pending:uR()})}function IO(r,e){Z(e,{devices:aR()})}function NO(r,e){Z(e,{rejected:hR()})}async function DO(r,e){let t=await jt(r,e);if(!t)return;let n=_R(t.deviceId);Z(e,{ok:n})}async function LO(r,e){let t=await jt(r,e);t&&(ap(t.deviceId),fo(t.deviceId),Z(e))}async function BO(r,e){let t=await jt(r,e);t&&(ap(t.deviceId),sR(t.deviceId),Z(e))}async function jO(r,e){let t=await jt(r,e);if(!t)return;let n=ap(t.deviceId);Z(e,{disconnected:n})}function FO(r,e){Z(e,{enabled:op()})}async function UO(r,e){let t=await jt(r,e);if(!t)return;let n=oR(t.deviceId,t.label);Z(e,{ok:n})}async function qO(r,e){let t=await jt(r,e);if(!t)return;let n=gR(!!t.enabled);Z(e,{enabled:n})}Ft();_i();var $O={},$4=1e4;function HO(r,e){if(e)return{type:e.type||"stop",sessionId:e.sessionId||"",tool:e.tool||"claude"};let t=JSON.parse(r||"{}");return{type:t.type||"stop",sessionId:t.sessionId||"",tool:t.tool||"claude"}}async function WO(r,e){let t="";await new Promise(n=>{r.on("data",i=>t+=i),r.on("end",n)});try{zO(HO(t,null)),Z(e,{success:!0})}catch{ue(e,400,"Invalid JSON")}}function GO(r,e,{query:t}){zO(HO(null,t)),Z(e,{success:!0})}function zO({type:r,sessionId:e,tool:t}){let n=Date.now(),i=ja();if(!i||!e)return;let s={type:r,sessionId:e,tool:t,timestamp:n},a=Mu({type:r,sessionId:e,tool:t})?.state||pt.IDLE;if(ut(i,"statusChange",{sessionId:e,state:a,tool:t,since:n}),Gm(e,s),ut(i,"chatNotification",s),a!==pt.DONE&&a!==pt.BLOCKED)return;let c=`${e}:${a}`;n-($O[c]||0)<$4||($O[c]=n,cC({...s,state:a}))}Ft();Il();Ts();dt();bn();function VO(){return{mode:Sh(),active:wh(),presets:Object.keys(H.sleepInhibit?.presets||{})}}function KO(r,e){Z(e,VO())}async function YO(r,e){let t=await jt(r,e);if(!t)return;let n=sa(t.mode);Cw({sleepInhibitMode:n});let i=VO();Ct("sleepInhibit",i),Z(e,i)}Ft();async function XO(r,e){try{let t=await $l();Z(e,{sessions:t})}catch(t){ue(e,500,t.message)}}async function JO(r,e){let t=await jt(r,e);if(t){if(!t.sessionId)return ue(e,400,"sessionId required");try{await bi(t.sessionId),Z(e)}catch(n){ue(e,500,n.message)}}}var In=W(require("os"),1);dt();Ft();function H4(){let r=uE();if(!r?.activeClients)return{total:0,streaming:0};let e=0;for(let t of r.activeClients.values())t.isStreaming&&e++;return{total:r.activeClients.size,streaming:e}}function W4(){let r=process.memoryUsage(),e=In.default.cpus();return{agent:{pid:process.pid,version:"2.1.21",nodeVersion:process.version,platform:`${process.platform}/${process.arch}`,uptimeSec:Math.round(process.uptime()),memory:{heapUsedMB:Math.round(r.heapUsed/1048576*10)/10,heapTotalMB:Math.round(r.heapTotal/1048576*10)/10,rssMB:Math.round(r.rss/1048576*10)/10,externalMB:Math.round(r.external/1048576*10)/10}},os:{hostname:In.default.hostname(),platform:In.default.platform(),arch:In.default.arch(),uptimeSec:Math.round(In.default.uptime()),loadAvg:In.default.loadavg(),cpuModel:e?.[0]?.model||"unknown",cpuCount:e.length,totalMemMB:Math.round(In.default.totalmem()/1048576),freeMemMB:Math.round(In.default.freemem()/1048576)},remote:{available:Xl(),...H4(),memoryWarningThresholdMB:H.resourceManagement.memoryWarningThreshold},timestamp:Date.now()}}function ZO(r,e){try{Z(e,W4())}catch(t){ue(e,500,"stats error",t.message)}}Il();Ts();dt();iy();var Qn=Fr("server"),ei=(0,rM.fileURLToPath)(new URL(".",__importMetaUrl)),nM=process.env.NODE_ENV==="development",G4=5173,xv=(0,Ui.existsSync)((0,sr.join)(ei,"ui","dist"))?(0,sr.join)(ei,"ui","dist"):(0,sr.join)(ei,"ui"),z4={".html":"text/html",".js":"application/javascript",".css":"text/css",".svg":"image/svg+xml",".png":"image/png",".ico":"image/x-icon",".woff2":"font/woff2",".woff":"font/woff"};function V4(r,e,t){let n=(0,hp.request)({hostname:"localhost",port:G4,path:r.url,method:r.method,headers:r.headers},i=>{e.writeHead(i.statusCode,i.headers),i.pipe(e)});n.on("error",()=>t?t():void(e.writeHead(502),e.end("Vite dev server not ready"))),r.pipe(n)}function QO(r,e){if(!(0,Ui.existsSync)(e))return!1;let t=z4[(0,sr.extname)(e)]||"application/octet-stream";return r.setHeader("Content-Type",t),r.writeHead(200),r.end((0,Ui.readFileSync)(e)),!0}async function _v(r){try{let e=await wo(Up);if(!e.ok)return;let{version:t}=await e.json();t&&EO(r,t)&&(Xw({version:t}),Ct("updateAvailable",{version:t}),NC())}catch{}}var eM=0;function K4(r){let e=Date.now();e-eM<za.connectCheckDebounceMs||(eM=e,_v(r))}function Y4(r,e){if(process.env.CODESPACES!=="true"){ue(e,400,"Not running on Codespaces");return}let t=process.env.CODESPACE_NAME;if(!t){ue(e,400,"Codespace name not found");return}let n=ja();n&&n.emit("codespace:stopping"),Z(e,{success:!0,message:"Stopping codespace..."}),setTimeout(()=>(0,Fi.execFile)("gh",["codespace","stop","-c",t],{windowsHide:!0}),500)}var iM;async function tM(r,e,{pathname:t}){let n=r.headers.authorization;if(!n||!n.startsWith("Bearer ")||!fp(n.slice(7))){ue(e,401,"Unauthorized");return}let{parseJsonBody:i}=await Promise.resolve().then(()=>(Ft(),Hi)),s=await i(r,e);if(s){if(!s.port){ue(e,400,"Port required");return}t.endsWith("start")?aO(s.port):cO(s.port),Z(e,{success:!0})}}function X4(r,e,{pathname:t,search:n}){let i=t.match(/^\/proxy\/(\d+)(\/.*)?$/);i?uO(iM,r,e,i[1],i[2]||"/",n):ue(e,404,"Not found")}var J4=[{path:"/api/health",method:"GET",public:!0,handler:(r,e)=>Z(e,{status:"ok",timestamp:Date.now()})},{path:"/api/version",method:"GET",public:!0,handler:(r,e)=>{Z(e,{version:"2.1.21"})}},{path:"/api/notify",method:"POST",public:!0,handler:WO},{path:"/api/notify",method:"GET",public:!0,handler:GO},{path:"/proxy/*",method:"*",public:!0,handler:X4},{path:"/api/ui/events",method:"GET",handler:nS},{path:"/api/local-token",method:"GET",handler:Qw},{path:"/api/ui/state",method:"GET",handler:iS},{path:"/api/ui/state",method:"POST",handler:sS},{path:"/api/ui/stop",method:"POST",handler:oS},{path:"/api/ui/start",method:"POST",handler:aS},{path:"/api/ui/stop-tunnel",method:"POST",handler:cS},{path:"/api/ui/shutdown",method:"POST",handler:lS},{path:"/api/update",method:"POST",handler:uS},{path:"/api/system/stats",method:"GET",handler:ZO},{path:"/api/key/one-time",method:"POST",handler:AO},{path:"/api/key/regenerate",method:"POST",handler:RO},{path:"/api/device/approve",method:"POST",handler:OO},{path:"/api/device/reject",method:"POST",handler:MO},{path:"/api/device/pending",method:"GET",handler:PO},{path:"/api/device/approved",method:"GET",handler:IO},{path:"/api/device/rejected",method:"GET",handler:NO},{path:"/api/device/approve-rejected",method:"POST",handler:DO},{path:"/api/device/clear-rejected",method:"POST",handler:LO},{path:"/api/device/remove",method:"POST",handler:BO},{path:"/api/device/label",method:"POST",handler:UO},{path:"/api/device/disconnect",method:"POST",handler:jO},{path:"/api/device/auto-approve",method:"GET",handler:FO},{path:"/api/device/auto-approve",method:"POST",handler:qO},{path:"/api/connections",method:"GET",handler:pS},{path:"/api/logs",method:"GET",handler:fS},{path:"/api/permissions",method:"GET",handler:hS},{path:"/api/permissions/request",method:"POST",handler:vS},{path:"/api/desktop/toggle",method:"POST",handler:dS},{path:"/api/autostart",method:"GET",handler:mS},{path:"/api/autostart",method:"POST",handler:gS},{path:"/api/sleep-inhibit",method:"GET",handler:KO},{path:"/api/sleep-inhibit",method:"POST",handler:YO},{path:"/api/sessions",method:"GET",handler:XO},{path:"/api/sessions/delete",method:"POST",handler:JO},{path:"/api/local-sites",method:"*",public:!0,handler:xO},{path:"/api/codespace/stop",method:"POST",handler:Y4},{path:"/api/proxy/start",method:"POST",public:!0,handler:tM},{path:"/api/proxy/end",method:"POST",public:!0,handler:tM}];var Z4=parseInt(process.env.PORT||"2208",10),Ka=null;function Q4(r){if(process.platform!=="win32")try{let e=(0,Fi.execSync)(`pgrep -f "vite --config ${r}"`,{encoding:"utf8"}).trim();for(let t of e.split(`
|
|
308
|
+
`).filter(Boolean))if((0,Fi.execSync)(`ps -o ppid= -p ${t}`,{encoding:"utf8"}).trim()==="1")try{process.kill(Number(t))}catch{}}catch{}}function e6(){if(!nM)return;let r=(0,sr.join)(ei,"vite.config.js");if(!(0,Ui.existsSync)(r))return;Q4(r);let e=(0,Ui.existsSync)((0,sr.join)(ei,"node_modules",".bin","vite"))?(0,sr.join)(ei,"node_modules",".bin","vite"):(0,sr.join)(ei,"..","node_modules",".bin","vite");Ka=(0,Fi.spawn)("node",[e,"--config",r],{cwd:ei,stdio:"ignore",detached:!1}),Ka.on("error",()=>{}),Ka.unref()}async function sM(){let r=hh(),e=r.sleepInhibitMode;e||(r.sleepInhibit===!1?e="never":e=H.sleepInhibit?.defaultMode||"never"),sa(e),await IC(),iM=lO(),e6();let n=jp(J4,{fallback:(a,c,{pathname:l})=>{if(l.startsWith("/api/")||l.startsWith("/socket.io")){ue(c,404,"Not found");return}let u=!!a.headers["cf-connecting-ip"],f=a.socket.remoteAddress==="127.0.0.1"||a.socket.remoteAddress==="::1";if(u||!f){ue(c,403,"Forbidden");return}let d=()=>{let g=l==="/"||l===""?(0,sr.join)(xv,"index.html"):(0,sr.join)(xv,l);QO(c,g)||QO(c,(0,sr.join)(xv,"index.html"))};if(nM){V4(a,c,d);return}d()}}),i=(0,hp.createServer)(async(a,c)=>{SR(c),!ER(a,c)&&await n(a,c)});sh(),Gw(),zw(),Ll(),process.platform==="darwin"&&setInterval(Ll,Jv),await wR(i),i.listen(Z4,a=>{if(a)throw a;let c="2.1.21";_v(c),setInterval(()=>_v(c),za.checkIntervalMs),LC(()=>K4(c))});let s=!1,o=async a=>{if(s)return;s=!0,bh(),Qn.info(`\u{1F6D1} Received ${a}, shutting down gracefully...`);let c=setTimeout(()=>{Qn.error("\u26A0\uFE0F Forced exit"),process.exit(1)},5e3);try{if(i.close(()=>Qn.info("\u2713 HTTP server closed")),Ka)try{Ka.kill()}catch{}let l=ja();l&&(l.emit("server:shutdown"),l.close(()=>Qn.info("\u2713 Socket.IO closed"))),await new Promise(u=>setTimeout(u,500)),clearTimeout(c),Qn.info("\u2705 Server stopped cleanly"),process.exit(0)}catch(l){Qn.error(`\u274C Error during shutdown: ${l?.message||l}`),clearTimeout(c),process.exit(1)}};return process.on("SIGINT",()=>o("SIGINT")),process.on("SIGTERM",()=>o("SIGTERM")),process.platform==="win32"&&process.on("SIGBREAK",()=>o("SIGBREAK")),process.on("uncaughtException",a=>{Qn.error(`\u26A0\uFE0F uncaughtException: ${a?.stack||a}`)}),process.on("unhandledRejection",a=>{Qn.error(`\u26A0\uFE0F unhandledRejection: ${a?.stack||a}`)}),i}sM();0&&(module.exports={startServer});
|
|
309
309
|
/*! Bundled license information:
|
|
310
310
|
|
|
311
311
|
negotiator/index.js:
|