diff --git a/img/nextcloudHub-preload.webp b/img/nextcloudHub-preload.webp index 548e67879..66ac53cdd 100644 Binary files a/img/nextcloudHub-preload.webp and b/img/nextcloudHub-preload.webp differ diff --git a/img/nextcloudHub.mp4 b/img/nextcloudHub.mp4 index a58ce26ad..b0de10036 100644 Binary files a/img/nextcloudHub.mp4 and b/img/nextcloudHub.mp4 differ diff --git a/img/nextcloudHub.webm b/img/nextcloudHub.webm index aefa3d59e..276977ef0 100644 Binary files a/img/nextcloudHub.webm and b/img/nextcloudHub.webm differ diff --git a/img/nextcloudHub.webp b/img/nextcloudHub.webp index 6edca868b..a2e4cbc5b 100644 Binary files a/img/nextcloudHub.webp and b/img/nextcloudHub.webp differ diff --git a/js/firstrunwizard-about.mjs b/js/firstrunwizard-about.mjs index e9cbee694..9d2af2b1d 100644 --- a/js/firstrunwizard-about.mjs +++ b/js/firstrunwizard-about.mjs @@ -1,3 +1,3 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('firstrunwizard', '', 'js/main-CBBO6vSg.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/index-BmyLCbU6.chunk.mjs')])))=>i.map(i=>d[i]); -import{_ as i}from"./modulepreload-polyfill-CBWYtosv.chunk.mjs";import{s as u}from"./index-BmyLCbU6.chunk.mjs";document.addEventListener("DOMContentLoaded",function(){const e=()=>document.querySelector("#firstrunwizard_about"),t=()=>{e().addEventListener("click",async function(o){o.stopPropagation(),o.preventDefault();const{open:n}=await i(async()=>{const{open:a}=await import("./main-CBBO6vSg.chunk.mjs");return{open:a}},__vite__mapDeps([0,1,2]),import.meta.url),r=document.querySelector('[aria-controls="header-menu-user-menu"]');n(r??void 0),window.OC.hideMenus(()=>!1)})};e()?t():u("core:user-menu:mounted",t)}); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('firstrunwizard', '', 'js/main-B_iVdpQp.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/index-BmyLCbU6.chunk.mjs')])))=>i.map(i=>d[i]); +import{_ as i}from"./modulepreload-polyfill-CBWYtosv.chunk.mjs";import{s as u}from"./index-BmyLCbU6.chunk.mjs";document.addEventListener("DOMContentLoaded",function(){const e=()=>document.querySelector("#firstrunwizard_about"),t=()=>{e().addEventListener("click",async function(o){o.stopPropagation(),o.preventDefault();const{open:n}=await i(async()=>{const{open:a}=await import("./main-B_iVdpQp.chunk.mjs");return{open:a}},__vite__mapDeps([0,1,2]),import.meta.url),r=document.querySelector('[aria-controls="header-menu-user-menu"]');n(r??void 0),window.OC.hideMenus(()=>!1)})};e()?t():u("core:user-menu:mounted",t)}); //# sourceMappingURL=firstrunwizard-about.mjs.map diff --git a/js/firstrunwizard-activate.mjs b/js/firstrunwizard-activate.mjs index de23c7af3..07073bf60 100644 --- a/js/firstrunwizard-activate.mjs +++ b/js/firstrunwizard-activate.mjs @@ -1,3 +1,3 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('firstrunwizard', '', 'js/main-CBBO6vSg.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/index-BmyLCbU6.chunk.mjs')])))=>i.map(i=>d[i]); -import{_ as t}from"./modulepreload-polyfill-CBWYtosv.chunk.mjs";document.addEventListener("DOMContentLoaded",async function(){(await t(()=>import("./main-CBBO6vSg.chunk.mjs"),__vite__mapDeps([0,1,2]),import.meta.url)).open()}); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('firstrunwizard', '', 'js/main-B_iVdpQp.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs'),window.OC.filePath('firstrunwizard', '', 'js/index-BmyLCbU6.chunk.mjs')])))=>i.map(i=>d[i]); +import{_ as t}from"./modulepreload-polyfill-CBWYtosv.chunk.mjs";document.addEventListener("DOMContentLoaded",async function(){(await t(()=>import("./main-B_iVdpQp.chunk.mjs"),__vite__mapDeps([0,1,2]),import.meta.url)).open()}); //# sourceMappingURL=firstrunwizard-activate.mjs.map diff --git a/js/main-CBBO6vSg.chunk.mjs b/js/main-B_iVdpQp.chunk.mjs similarity index 91% rename from js/main-CBBO6vSg.chunk.mjs rename to js/main-B_iVdpQp.chunk.mjs index 2ca457abb..3e727b768 100644 --- a/js/main-CBBO6vSg.chunk.mjs +++ b/js/main-B_iVdpQp.chunk.mjs @@ -1,15 +1,15 @@ -import{R as xt,S as Wn,T as Jn,U as Gn,d as ce,V as Oe,k as S,A as Kn,W as Xn,o as I,c as ne,b as J,u as _,e as ut,f as ue,n as T,j as X,N as Ve,w as $,g as j,X as Yn,E as we,h as ve,M as Ae,K as ae,q as _e,Y as pn,y as Qn,Z as Zn,$ as er,a0 as Vt,a1 as tr,a2 as nr,a3 as gn,F as It,p as Lt,a4 as rr,a5 as or,I as Wt,i as yn,l as ct,a6 as mn,a7 as ir,a8 as sr,a9 as ar,aa as lr,ab as ur,ac as cr,ad as fr,Q as dr}from"./NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs";import{p as Jt}from"./index-BmyLCbU6.chunk.mjs";var wn={},ot={};ot.byteLength=gr,ot.toByteArray=mr,ot.fromByteArray=vr;for(var pe=[],te=[],hr=typeof Uint8Array<"u"?Uint8Array:Array,Et="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Pe=0,pr=Et.length;Pe0)throw new Error("Invalid string. Length must be a multiple of 4");var o=t.indexOf("=");o===-1&&(o=n);var s=o===n?0:4-o%4;return[o,s]}function gr(t){var n=bn(t),o=n[0],s=n[1];return(o+s)*3/4-s}function yr(t,n,o){return(n+o)*3/4-o}function mr(t){var n,o=bn(t),s=o[0],l=o[1],a=new hr(yr(t,s,l)),u=0,d=l>0?s-4:s,g;for(g=0;g>16&255,a[u++]=n>>8&255,a[u++]=n&255;return l===2&&(n=te[t.charCodeAt(g)]<<2|te[t.charCodeAt(g+1)]>>4,a[u++]=n&255),l===1&&(n=te[t.charCodeAt(g)]<<10|te[t.charCodeAt(g+1)]<<4|te[t.charCodeAt(g+2)]>>2,a[u++]=n>>8&255,a[u++]=n&255),a}function wr(t){return pe[t>>18&63]+pe[t>>12&63]+pe[t>>6&63]+pe[t&63]}function br(t,n,o){for(var s,l=[],a=n;ad?d:u+a));return s===1?(n=t[o-1],l.push(pe[n>>2]+pe[n<<4&63]+"==")):s===2&&(n=(t[o-2]<<8)+t[o-1],l.push(pe[n>>10]+pe[n>>4&63]+pe[n<<2&63]+"=")),l.join("")}var Bt={};Bt.read=function(t,n,o,s,l){var a,u,d=l*8-s-1,g=(1<>1,c=-7,v=o?l-1:0,C=o?-1:1,R=t[n+v];for(v+=C,a=R&(1<<-c)-1,R>>=-c,c+=d;c>0;a=a*256+t[n+v],v+=C,c-=8);for(u=a&(1<<-c)-1,a>>=-c,c+=s;c>0;u=u*256+t[n+v],v+=C,c-=8);if(a===0)a=1-y;else{if(a===g)return u?NaN:(R?-1:1)*(1/0);u=u+Math.pow(2,s),a=a-y}return(R?-1:1)*u*Math.pow(2,a-s)},Bt.write=function(t,n,o,s,l,a){var u,d,g,y=a*8-l-1,c=(1<>1,C=l===23?Math.pow(2,-24)-Math.pow(2,-77):0,R=s?0:a-1,A=s?1:-1,w=n<0||n===0&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(d=isNaN(n)?1:0,u=c):(u=Math.floor(Math.log(n)/Math.LN2),n*(g=Math.pow(2,-u))<1&&(u--,g*=2),u+v>=1?n+=C/g:n+=C*Math.pow(2,1-v),n*g>=2&&(u++,g/=2),u+v>=c?(d=0,u=c):u+v>=1?(d=(n*g-1)*Math.pow(2,l),u=u+v):(d=n*Math.pow(2,v-1)*Math.pow(2,l),u=0));l>=8;t[o+R]=d&255,R+=A,d/=256,l-=8);for(u=u<0;t[o+R]=u&255,R+=A,u/=256,y-=8);t[o+R-A]|=w*128};(function(t){const n=ot,o=Bt,s=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=wt,t.INSPECT_MAX_BYTES=50;const l=2147483647;t.kMaxLength=l;const{Uint8Array:a,ArrayBuffer:u,SharedArrayBuffer:d}=globalThis;c.TYPED_ARRAY_SUPPORT=g(),!c.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function g(){try{const e=new a(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,a.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch{return!1}}Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}});function y(e){if(e>l)throw new RangeError('The value "'+e+'" is invalid for option "size"');const r=new a(e);return Object.setPrototypeOf(r,c.prototype),r}function c(e,r,i){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return A(e)}return v(e,r,i)}c.poolSize=8192;function v(e,r,i){if(typeof e=="string")return w(e,r);if(u.isView(e))return O(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(he(e,u)||e&&he(e.buffer,u)||typeof d<"u"&&(he(e,d)||e&&he(e.buffer,d)))return x(e,r,i);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const f=e.valueOf&&e.valueOf();if(f!=null&&f!==e)return c.from(f,r,i);const h=k(e);if(h)return h;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return c.from(e[Symbol.toPrimitive]("string"),r,i);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}c.from=function(e,r,i){return v(e,r,i)},Object.setPrototypeOf(c.prototype,a.prototype),Object.setPrototypeOf(c,a);function C(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function R(e,r,i){return C(e),e<=0?y(e):r!==void 0?typeof i=="string"?y(e).fill(r,i):y(e).fill(r):y(e)}c.alloc=function(e,r,i){return R(e,r,i)};function A(e){return C(e),y(e<0?0:D(e)|0)}c.allocUnsafe=function(e){return A(e)},c.allocUnsafeSlow=function(e){return A(e)};function w(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!c.isEncoding(r))throw new TypeError("Unknown encoding: "+r);const i=ze(e,r)|0;let f=y(i);const h=f.write(e,r);return h!==i&&(f=f.slice(0,h)),f}function B(e){const r=e.length<0?0:D(e.length)|0,i=y(r);for(let f=0;f=l)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l.toString(16)+" bytes");return e|0}function wt(e){return+e!=e&&(e=0),c.alloc(+e)}c.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==c.prototype},c.compare=function(e,r){if(he(e,a)&&(e=c.from(e,e.offset,e.byteLength)),he(r,a)&&(r=c.from(r,r.offset,r.byteLength)),!c.isBuffer(e)||!c.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===r)return 0;let i=e.length,f=r.length;for(let h=0,m=Math.min(i,f);hf.length?(c.isBuffer(m)||(m=c.from(m)),m.copy(f,h)):a.prototype.set.call(f,m,h);else if(c.isBuffer(m))m.copy(f,h);else throw new TypeError('"list" argument must be an Array of Buffers');h+=m.length}return f};function ze(e,r){if(c.isBuffer(e))return e.length;if(u.isView(e)||he(e,u))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const i=e.length,f=arguments.length>2&&arguments[2]===!0;if(!f&&i===0)return 0;let h=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":return vt(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return i*2;case"hex":return i>>>1;case"base64":return Ht(e).length;default:if(h)return f?-1:vt(e).length;r=(""+r).toLowerCase(),h=!0}}c.byteLength=ze;function bt(e,r,i){let f=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((i===void 0||i>this.length)&&(i=this.length),i<=0)||(i>>>=0,r>>>=0,i<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return et(this,r,i);case"utf8":case"utf-8":return Ze(this,r,i);case"ascii":return K(this,r,i);case"latin1":case"binary":return ye(this,r,i);case"base64":return Ee(this,r,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return H(this,r,i);default:if(f)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),f=!0}}c.prototype._isBuffer=!0;function re(e,r,i){const f=e[r];e[r]=e[i],e[i]=f}c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(e+=" ... "),""},s&&(c.prototype[s]=c.prototype.inspect),c.prototype.compare=function(e,r,i,f,h){if(he(e,a)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(r===void 0&&(r=0),i===void 0&&(i=e?e.length:0),f===void 0&&(f=0),h===void 0&&(h=this.length),r<0||i>e.length||f<0||h>this.length)throw new RangeError("out of range index");if(f>=h&&r>=i)return 0;if(f>=h)return-1;if(r>=i)return 1;if(r>>>=0,i>>>=0,f>>>=0,h>>>=0,this===e)return 0;let m=h-f,b=i-r;const F=Math.min(m,b),V=this.slice(f,h),z=e.slice(r,i);for(let P=0;P2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),i=+i,_t(i)&&(i=h?0:e.length-1),i<0&&(i=e.length+i),i>=e.length){if(h)return-1;i=e.length-1}else if(i<0)if(h)i=0;else return-1;if(typeof r=="string"&&(r=c.from(r,f)),c.isBuffer(r))return r.length===0?-1:oe(e,r,i,f,h);if(typeof r=="number")return r=r&255,typeof a.prototype.indexOf=="function"?h?a.prototype.indexOf.call(e,r,i):a.prototype.lastIndexOf.call(e,r,i):oe(e,[r],i,f,h);throw new TypeError("val must be string, number or Buffer")}function oe(e,r,i,f,h){let m=1,b=e.length,F=r.length;if(f!==void 0&&(f=String(f).toLowerCase(),f==="ucs2"||f==="ucs-2"||f==="utf16le"||f==="utf-16le")){if(e.length<2||r.length<2)return-1;m=2,b/=2,F/=2,i/=2}function V(P,q){return m===1?P[q]:P.readUInt16BE(q*m)}let z;if(h){let P=-1;for(z=i;zb&&(i=b-F),z=i;z>=0;z--){let P=!0;for(let q=0;qh&&(f=h)):f=h;const m=r.length;f>m/2&&(f=m/2);let b;for(b=0;b>>0,isFinite(i)?(i=i>>>0,f===void 0&&(f="utf8")):(f=i,i=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const h=this.length-r;if((i===void 0||i>h)&&(i=h),e.length>0&&(i<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");f||(f="utf8");let m=!1;for(;;)switch(f){case"hex":return ge(this,e,r,i);case"utf8":case"utf-8":return Te(this,e,r,i);case"ascii":case"latin1":case"binary":return Qe(this,e,r,i);case"base64":return Q(this,e,r,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Me(this,e,r,i);default:if(m)throw new TypeError("Unknown encoding: "+f);f=(""+f).toLowerCase(),m=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Ee(e,r,i){return r===0&&i===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(r,i))}function Ze(e,r,i){i=Math.min(e.length,i);const f=[];let h=r;for(;h239?4:m>223?3:m>191?2:1;if(h+F<=i){let V,z,P,q;switch(F){case 1:m<128&&(b=m);break;case 2:V=e[h+1],(V&192)===128&&(q=(m&31)<<6|V&63,q>127&&(b=q));break;case 3:V=e[h+1],z=e[h+2],(V&192)===128&&(z&192)===128&&(q=(m&15)<<12|(V&63)<<6|z&63,q>2047&&(q<55296||q>57343)&&(b=q));break;case 4:V=e[h+1],z=e[h+2],P=e[h+3],(V&192)===128&&(z&192)===128&&(P&192)===128&&(q=(m&15)<<18|(V&63)<<12|(z&63)<<6|P&63,q>65535&&q<1114112&&(b=q))}}b===null?(b=65533,F=1):b>65535&&(b-=65536,f.push(b>>>10&1023|55296),b=56320|b&1023),f.push(b),h+=F}return de(f)}const $e=4096;function de(e){const r=e.length;if(r<=$e)return String.fromCharCode.apply(String,e);let i="",f=0;for(;ff)&&(i=f);let h="";for(let m=r;mi&&(e=i),r<0?(r+=i,r<0&&(r=0)):r>i&&(r=i),ri)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(e,r,i){e=e>>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e],h=1,m=0;for(;++m>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e+--r],h=1;for(;r>0&&(h*=256);)f+=this[e+--r]*h;return f},c.prototype.readUint8=c.prototype.readUInt8=function(e,r){return e=e>>>0,r||U(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||U(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||U(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||U(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=be(function(e){e=e>>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=r+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,h=this[++e]+this[++e]*2**8+this[++e]*2**16+i*2**24;return BigInt(f)+(BigInt(h)<>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=r*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],h=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+i;return(BigInt(f)<>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e],h=1,m=0;for(;++m=h&&(f-=Math.pow(2,8*r)),f},c.prototype.readIntBE=function(e,r,i){e=e>>>0,r=r>>>0,i||U(e,r,this.length);let f=r,h=1,m=this[e+--f];for(;f>0&&(h*=256);)m+=this[e+--f]*h;return h*=128,m>=h&&(m-=Math.pow(2,8*r)),m},c.prototype.readInt8=function(e,r){return e=e>>>0,r||U(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},c.prototype.readInt16LE=function(e,r){e=e>>>0,r||U(e,2,this.length);const i=this[e]|this[e+1]<<8;return i&32768?i|4294901760:i},c.prototype.readInt16BE=function(e,r){e=e>>>0,r||U(e,2,this.length);const i=this[e+1]|this[e]<<8;return i&32768?i|4294901760:i},c.prototype.readInt32LE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=be(function(e){e=e>>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(i<<24);return(BigInt(f)<>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=(r<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(f)<>>0,r||U(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,r){return e=e>>>0,r||U(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||U(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||U(e,8,this.length),o.read(this,e,!1,52,8)};function L(e,r,i,f,h,m){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>h||re.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,r,i,f){if(e=+e,r=r>>>0,i=i>>>0,!f){const b=Math.pow(2,8*i)-1;L(this,e,r,i,b,0)}let h=1,m=0;for(this[r]=e&255;++m>>0,i=i>>>0,!f){const b=Math.pow(2,8*i)-1;L(this,e,r,i,b,0)}let h=i-1,m=1;for(this[r+h]=e&255;--h>=0&&(m*=256);)this[r+h]=e/m&255;return r+i},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,1,255,0),this[r]=e&255,r+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function ke(e,r,i,f,h){qt(r,f,h,e,i,7);let m=Number(r&BigInt(4294967295));e[i++]=m,m=m>>8,e[i++]=m,m=m>>8,e[i++]=m,m=m>>8,e[i++]=m;let b=Number(r>>BigInt(32)&BigInt(4294967295));return e[i++]=b,b=b>>8,e[i++]=b,b=b>>8,e[i++]=b,b=b>>8,e[i++]=b,i}function Z(e,r,i,f,h){qt(r,f,h,e,i,7);let m=Number(r&BigInt(4294967295));e[i+7]=m,m=m>>8,e[i+6]=m,m=m>>8,e[i+5]=m,m=m>>8,e[i+4]=m;let b=Number(r>>BigInt(32)&BigInt(4294967295));return e[i+3]=b,b=b>>8,e[i+2]=b,b=b>>8,e[i+1]=b,b=b>>8,e[i]=b,i+8}c.prototype.writeBigUInt64LE=be(function(e,r=0){return ke(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeBigUInt64BE=be(function(e,r=0){return Z(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeIntLE=function(e,r,i,f){if(e=+e,r=r>>>0,!f){const F=Math.pow(2,8*i-1);L(this,e,r,i,F-1,-F)}let h=0,m=1,b=0;for(this[r]=e&255;++h>0)-b&255;return r+i},c.prototype.writeIntBE=function(e,r,i,f){if(e=+e,r=r>>>0,!f){const F=Math.pow(2,8*i-1);L(this,e,r,i,F-1,-F)}let h=i-1,m=1,b=0;for(this[r+h]=e&255;--h>=0&&(m*=256);)e<0&&b===0&&this[r+h+1]!==0&&(b=1),this[r+h]=(e/m>>0)-b&255;return r+i},c.prototype.writeInt8=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1},c.prototype.writeInt16LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeInt16BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeInt32LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4},c.prototype.writeInt32BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4},c.prototype.writeBigInt64LE=be(function(e,r=0){return ke(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),c.prototype.writeBigInt64BE=be(function(e,r=0){return Z(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function N(e,r,i,f,h,m){if(i+f>e.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function me(e,r,i,f,h){return r=+r,i=i>>>0,h||N(e,r,i,4),o.write(e,r,i,f,23,4),i+4}c.prototype.writeFloatLE=function(e,r,i){return me(this,e,r,!0,i)},c.prototype.writeFloatBE=function(e,r,i){return me(this,e,r,!1,i)};function Re(e,r,i,f,h){return r=+r,i=i>>>0,h||N(e,r,i,8),o.write(e,r,i,f,52,8),i+8}c.prototype.writeDoubleLE=function(e,r,i){return Re(this,e,r,!0,i)},c.prototype.writeDoubleBE=function(e,r,i){return Re(this,e,r,!1,i)},c.prototype.copy=function(e,r,i,f){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(i||(i=0),!f&&f!==0&&(f=this.length),r>=e.length&&(r=e.length),r||(r=0),f>0&&f=this.length)throw new RangeError("Index out of range");if(f<0)throw new RangeError("sourceEnd out of bounds");f>this.length&&(f=this.length),e.length-r>>0,i=i===void 0?this.length:i>>>0,e||(e=0);let h;if(typeof e=="number")for(h=r;h2**32?h=tt(String(i)):typeof i=="bigint"&&(h=String(i),(i>BigInt(2)**BigInt(32)||i<-(BigInt(2)**BigInt(32)))&&(h=tt(h)),h+="n"),f+=` It must be ${r}. Received ${h}`,f},RangeError);function tt(e){let r="",i=e.length;const f=e[0]==="-"?1:0;for(;i>=f+4;i-=3)r=`_${e.slice(i-3,i)}${r}`;return`${e.slice(0,i)}${r}`}function Ce(e,r,i){Ue(r,"offset"),(e[r]===void 0||e[r+i]===void 0)&&qe(r,e.length-(i+1))}function qt(e,r,i,f,h,m){if(e>i||e= 0${b} and < 2${b} ** ${(m+1)*8}${b}`:F=`>= -(2${b} ** ${(m+1)*8-1}${b}) and < 2 ** ${(m+1)*8-1}${b}`,new ie.ERR_OUT_OF_RANGE("value",F,e)}Ce(f,h,m)}function Ue(e,r){if(typeof e!="number")throw new ie.ERR_INVALID_ARG_TYPE(r,"number",e)}function qe(e,r,i){throw Math.floor(e)!==e?(Ue(e,i),new ie.ERR_OUT_OF_RANGE("offset","an integer",e)):r<0?new ie.ERR_BUFFER_OUT_OF_BOUNDS:new ie.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${r}`,e)}const Dn=/[^+/0-9A-Za-z-_]/g;function Mn(e){if(e=e.split("=")[0],e=e.trim().replace(Dn,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function vt(e,r){r=r||1/0;let i;const f=e.length;let h=null;const m=[];for(let b=0;b55295&&i<57344){if(!h){if(i>56319){(r-=3)>-1&&m.push(239,191,189);continue}else if(b+1===f){(r-=3)>-1&&m.push(239,191,189);continue}h=i;continue}if(i<56320){(r-=3)>-1&&m.push(239,191,189),h=i;continue}i=(h-55296<<10|i-56320)+65536}else h&&(r-=3)>-1&&m.push(239,191,189);if(h=null,i<128){if((r-=1)<0)break;m.push(i)}else if(i<2048){if((r-=2)<0)break;m.push(i>>6|192,i&63|128)}else if(i<65536){if((r-=3)<0)break;m.push(i>>12|224,i>>6&63|128,i&63|128)}else if(i<1114112){if((r-=4)<0)break;m.push(i>>18|240,i>>12&63|128,i>>6&63|128,i&63|128)}else throw new Error("Invalid code point")}return m}function $n(e){const r=[];for(let i=0;i>8,h=i%256,m.push(h),m.push(f);return m}function Ht(e){return n.toByteArray(Mn(e))}function nt(e,r,i,f){let h;for(h=0;h=r.length||h>=e.length);++h)r[h+i]=e[h];return h}function he(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function _t(e){return e!==e}const Hn=(function(){const e="0123456789abcdef",r=new Array(256);for(let i=0;i<16;++i){const f=i*16;for(let h=0;h<16;++h)r[f+h]=e[i]+e[h]}return r})();function be(e){return typeof BigInt>"u"?Vn:e}function Vn(){throw new Error("BigInt not supported")}})(wn);const it=wn.Buffer;function vn(t,n){return function(){return t.apply(n,arguments)}}const{toString:_r}=Object.prototype,{getPrototypeOf:ht}=Object,{iterator:pt,toStringTag:_n}=Symbol,gt=(t=>n=>{const o=_r.call(n);return t[o]||(t[o]=o.slice(8,-1).toLowerCase())})(Object.create(null)),fe=t=>(t=t.toLowerCase(),n=>gt(n)===t),yt=t=>n=>typeof n===t,{isArray:je}=Array,Fe=yt("undefined");function We(t){return t!==null&&!Fe(t)&&t.constructor!==null&&!Fe(t.constructor)&&Y(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const En=fe("ArrayBuffer");function Er(t){let n;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?n=ArrayBuffer.isView(t):n=t&&t.buffer&&En(t.buffer),n}const Rr=yt("string"),Y=yt("function"),Rn=yt("number"),Je=t=>t!==null&&typeof t=="object",Cr=t=>t===!0||t===!1,st=t=>{if(gt(t)!=="object")return!1;const n=ht(t);return(n===null||n===Object.prototype||Object.getPrototypeOf(n)===null)&&!(_n in t)&&!(pt in t)},Or=t=>{if(!Je(t)||We(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},Sr=fe("Date"),Ar=fe("File"),xr=t=>!!(t&&typeof t.uri<"u"),Br=t=>t&&typeof t.getParts<"u",Tr=fe("Blob"),kr=fe("FileList"),Nr=t=>Je(t)&&Y(t.pipe);function Ur(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof xt<"u"?xt:{}}const Gt=Ur(),Kt=typeof Gt.FormData<"u"?Gt.FormData:void 0,Pr=t=>{if(!t)return!1;if(Kt&&t instanceof Kt)return!0;const n=ht(t);if(!n||n===Object.prototype||!Y(t.append))return!1;const o=gt(t);return o==="formdata"||o==="object"&&Y(t.toString)&&t.toString()==="[object FormData]"},Ir=fe("URLSearchParams"),[Lr,Fr,jr,zr]=["ReadableStream","Request","Response","Headers"].map(fe),Dr=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ge(t,n,{allOwnKeys:o=!1}={}){if(t===null||typeof t>"u")return;let s,l;if(typeof t!="object"&&(t=[t]),je(t))for(s=0,l=t.length;s0;)if(l=o[s],n===l.toLowerCase())return l;return null}const Se=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:xt,On=t=>!Fe(t)&&t!==Se;function Tt(...t){const{caseless:n,skipUndefined:o}=On(this)&&this||{},s={},l=(a,u)=>{if(u==="__proto__"||u==="constructor"||u==="prototype")return;const d=n&&Cn(s,u)||u,g=kt(s,d)?s[d]:void 0;st(g)&&st(a)?s[d]=Tt(g,a):st(a)?s[d]=Tt({},a):je(a)?s[d]=a.slice():(!o||!Fe(a))&&(s[d]=a)};for(let a=0,u=t.length;a(Ge(n,(l,a)=>{o&&Y(l)?Object.defineProperty(t,a,{__proto__:null,value:vn(l,o),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,a,{__proto__:null,value:l,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:s}),t),$r=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),qr=(t,n,o,s)=>{t.prototype=Object.create(n.prototype,s),Object.defineProperty(t.prototype,"constructor",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{__proto__:null,value:n.prototype}),o&&Object.assign(t.prototype,o)},Hr=(t,n,o,s)=>{let l,a,u;const d={};if(n=n||{},t==null)return n;do{for(l=Object.getOwnPropertyNames(t),a=l.length;a-- >0;)u=l[a],(!s||s(u,t,n))&&!d[u]&&(n[u]=t[u],d[u]=!0);t=o!==!1&&ht(t)}while(t&&(!o||o(t,n))&&t!==Object.prototype);return n},Vr=(t,n,o)=>{t=String(t),(o===void 0||o>t.length)&&(o=t.length),o-=n.length;const s=t.indexOf(n,o);return s!==-1&&s===o},Wr=t=>{if(!t)return null;if(je(t))return t;let n=t.length;if(!Rn(n))return null;const o=new Array(n);for(;n-- >0;)o[n]=t[n];return o},Jr=(t=>n=>t&&n instanceof t)(typeof Uint8Array<"u"&&ht(Uint8Array)),Gr=(t,n)=>{const o=(t&&t[pt]).call(t);let s;for(;(s=o.next())&&!s.done;){const l=s.value;n.call(t,l[0],l[1])}},Kr=(t,n)=>{let o;const s=[];for(;(o=t.exec(n))!==null;)s.push(o);return s},Xr=fe("HTMLFormElement"),Yr=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,s){return o.toUpperCase()+s}),kt=(({hasOwnProperty:t})=>(n,o)=>t.call(n,o))(Object.prototype),Qr=fe("RegExp"),Sn=(t,n)=>{const o=Object.getOwnPropertyDescriptors(t),s={};Ge(o,(l,a)=>{let u;(u=n(l,a,t))!==!1&&(s[a]=u||l)}),Object.defineProperties(t,s)},Zr=t=>{Sn(t,(n,o)=>{if(Y(t)&&["arguments","caller","callee"].includes(o))return!1;const s=t[o];if(Y(s)){if(n.enumerable=!1,"writable"in n){n.writable=!1;return}n.set||(n.set=()=>{throw Error("Can not rewrite read-only method '"+o+"'")})}})},eo=(t,n)=>{const o={},s=l=>{l.forEach(a=>{o[a]=!0})};return je(t)?s(t):s(String(t).split(n)),o},to=()=>{},no=(t,n)=>t!=null&&Number.isFinite(t=+t)?t:n;function ro(t){return!!(t&&Y(t.append)&&t[_n]==="FormData"&&t[pt])}const oo=t=>{const n=new Array(10),o=(s,l)=>{if(Je(s)){if(n.indexOf(s)>=0)return;if(We(s))return s;if(!("toJSON"in s)){n[l]=s;const a=je(s)?[]:{};return Ge(s,(u,d)=>{const g=o(u,l+1);!Fe(g)&&(a[d]=g)}),n[l]=void 0,a}}return s};return o(t,0)},io=fe("AsyncFunction"),so=t=>t&&(Je(t)||Y(t))&&Y(t.then)&&Y(t.catch),An=((t,n)=>t?setImmediate:n?((o,s)=>(Se.addEventListener("message",({source:l,data:a})=>{l===Se&&a===o&&s.length&&s.shift()()},!1),l=>{s.push(l),Se.postMessage(o,"*")}))(`axios@${Math.random()}`,[]):o=>setTimeout(o))(typeof setImmediate=="function",Y(Se.postMessage)),ao=typeof queueMicrotask<"u"?queueMicrotask.bind(Se):typeof Jt<"u"&&Jt.nextTick||An,lo=t=>t!=null&&Y(t[pt]),p={isArray:je,isArrayBuffer:En,isBuffer:We,isFormData:Pr,isArrayBufferView:Er,isString:Rr,isNumber:Rn,isBoolean:Cr,isObject:Je,isPlainObject:st,isEmptyObject:Or,isReadableStream:Lr,isRequest:Fr,isResponse:jr,isHeaders:zr,isUndefined:Fe,isDate:Sr,isFile:Ar,isReactNativeBlob:xr,isReactNative:Br,isBlob:Tr,isRegExp:Qr,isFunction:Y,isStream:Nr,isURLSearchParams:Ir,isTypedArray:Jr,isFileList:kr,forEach:Ge,merge:Tt,extend:Mr,trim:Dr,stripBOM:$r,inherits:qr,toFlatObject:Hr,kindOf:gt,kindOfTest:fe,endsWith:Vr,toArray:Wr,forEachEntry:Gr,matchAll:Kr,isHTMLForm:Xr,hasOwnProperty:kt,hasOwnProp:kt,reduceDescriptors:Sn,freezeMethods:Zr,toObjectSet:eo,toCamelCase:Yr,noop:to,toFiniteNumber:no,findKey:Cn,global:Se,isContextDefined:On,isSpecCompliantForm:ro,toJSONObject:oo,isAsyncFn:io,isThenable:so,setImmediate:An,asap:ao,isIterable:lo},uo=p.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),co=t=>{const n={};let o,s,l;return t&&t.split(` +import{R as xt,S as Wn,T as Jn,U as Gn,d as ce,V as Oe,k as S,A as Kn,W as Xn,o as I,c as ne,b as J,u as _,e as ut,f as ue,n as T,j as X,N as Ve,w as $,g as j,X as Yn,E as we,h as ve,M as Be,K as ae,q as _e,Y as pn,y as Qn,Z as Zn,$ as er,a0 as Vt,a1 as tr,a2 as nr,a3 as gn,F as It,p as Lt,a4 as rr,a5 as or,I as Wt,i as yn,l as ct,a6 as mn,a7 as ir,a8 as sr,a9 as ar,aa as lr,ab as ur,ac as cr,ad as fr,Q as dr}from"./NcModal-DyOZxq9E-DnYoiYlM.chunk.mjs";import{p as Jt}from"./index-BmyLCbU6.chunk.mjs";var wn={},ot={};ot.byteLength=gr,ot.toByteArray=mr,ot.fromByteArray=vr;for(var pe=[],te=[],hr=typeof Uint8Array<"u"?Uint8Array:Array,Et="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Pe=0,pr=Et.length;Pe0)throw new Error("Invalid string. Length must be a multiple of 4");var o=t.indexOf("=");o===-1&&(o=n);var s=o===n?0:4-o%4;return[o,s]}function gr(t){var n=bn(t),o=n[0],s=n[1];return(o+s)*3/4-s}function yr(t,n,o){return(n+o)*3/4-o}function mr(t){var n,o=bn(t),s=o[0],l=o[1],a=new hr(yr(t,s,l)),u=0,d=l>0?s-4:s,g;for(g=0;g>16&255,a[u++]=n>>8&255,a[u++]=n&255;return l===2&&(n=te[t.charCodeAt(g)]<<2|te[t.charCodeAt(g+1)]>>4,a[u++]=n&255),l===1&&(n=te[t.charCodeAt(g)]<<10|te[t.charCodeAt(g+1)]<<4|te[t.charCodeAt(g+2)]>>2,a[u++]=n>>8&255,a[u++]=n&255),a}function wr(t){return pe[t>>18&63]+pe[t>>12&63]+pe[t>>6&63]+pe[t&63]}function br(t,n,o){for(var s,l=[],a=n;ad?d:u+a));return s===1?(n=t[o-1],l.push(pe[n>>2]+pe[n<<4&63]+"==")):s===2&&(n=(t[o-2]<<8)+t[o-1],l.push(pe[n>>10]+pe[n>>4&63]+pe[n<<2&63]+"=")),l.join("")}var At={};At.read=function(t,n,o,s,l){var a,u,d=l*8-s-1,g=(1<>1,c=-7,v=o?l-1:0,C=o?-1:1,R=t[n+v];for(v+=C,a=R&(1<<-c)-1,R>>=-c,c+=d;c>0;a=a*256+t[n+v],v+=C,c-=8);for(u=a&(1<<-c)-1,a>>=-c,c+=s;c>0;u=u*256+t[n+v],v+=C,c-=8);if(a===0)a=1-y;else{if(a===g)return u?NaN:(R?-1:1)*(1/0);u=u+Math.pow(2,s),a=a-y}return(R?-1:1)*u*Math.pow(2,a-s)},At.write=function(t,n,o,s,l,a){var u,d,g,y=a*8-l-1,c=(1<>1,C=l===23?Math.pow(2,-24)-Math.pow(2,-77):0,R=s?0:a-1,B=s?1:-1,w=n<0||n===0&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(d=isNaN(n)?1:0,u=c):(u=Math.floor(Math.log(n)/Math.LN2),n*(g=Math.pow(2,-u))<1&&(u--,g*=2),u+v>=1?n+=C/g:n+=C*Math.pow(2,1-v),n*g>=2&&(u++,g/=2),u+v>=c?(d=0,u=c):u+v>=1?(d=(n*g-1)*Math.pow(2,l),u=u+v):(d=n*Math.pow(2,v-1)*Math.pow(2,l),u=0));l>=8;t[o+R]=d&255,R+=B,d/=256,l-=8);for(u=u<0;t[o+R]=u&255,R+=B,u/=256,y-=8);t[o+R-B]|=w*128};(function(t){const n=ot,o=At,s=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=wt,t.INSPECT_MAX_BYTES=50;const l=2147483647;t.kMaxLength=l;const{Uint8Array:a,ArrayBuffer:u,SharedArrayBuffer:d}=globalThis;c.TYPED_ARRAY_SUPPORT=g(),!c.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function g(){try{const e=new a(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,a.prototype),Object.setPrototypeOf(e,r),e.foo()===42}catch{return!1}}Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}});function y(e){if(e>l)throw new RangeError('The value "'+e+'" is invalid for option "size"');const r=new a(e);return Object.setPrototypeOf(r,c.prototype),r}function c(e,r,i){if(typeof e=="number"){if(typeof r=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return B(e)}return v(e,r,i)}c.poolSize=8192;function v(e,r,i){if(typeof e=="string")return w(e,r);if(u.isView(e))return O(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(he(e,u)||e&&he(e.buffer,u)||typeof d<"u"&&(he(e,d)||e&&he(e.buffer,d)))return x(e,r,i);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const f=e.valueOf&&e.valueOf();if(f!=null&&f!==e)return c.from(f,r,i);const h=k(e);if(h)return h;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return c.from(e[Symbol.toPrimitive]("string"),r,i);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}c.from=function(e,r,i){return v(e,r,i)},Object.setPrototypeOf(c.prototype,a.prototype),Object.setPrototypeOf(c,a);function C(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function R(e,r,i){return C(e),e<=0?y(e):r!==void 0?typeof i=="string"?y(e).fill(r,i):y(e).fill(r):y(e)}c.alloc=function(e,r,i){return R(e,r,i)};function B(e){return C(e),y(e<0?0:D(e)|0)}c.allocUnsafe=function(e){return B(e)},c.allocUnsafeSlow=function(e){return B(e)};function w(e,r){if((typeof r!="string"||r==="")&&(r="utf8"),!c.isEncoding(r))throw new TypeError("Unknown encoding: "+r);const i=ze(e,r)|0;let f=y(i);const h=f.write(e,r);return h!==i&&(f=f.slice(0,h)),f}function A(e){const r=e.length<0?0:D(e.length)|0,i=y(r);for(let f=0;f=l)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l.toString(16)+" bytes");return e|0}function wt(e){return+e!=e&&(e=0),c.alloc(+e)}c.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==c.prototype},c.compare=function(e,r){if(he(e,a)&&(e=c.from(e,e.offset,e.byteLength)),he(r,a)&&(r=c.from(r,r.offset,r.byteLength)),!c.isBuffer(e)||!c.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===r)return 0;let i=e.length,f=r.length;for(let h=0,m=Math.min(i,f);hf.length?(c.isBuffer(m)||(m=c.from(m)),m.copy(f,h)):a.prototype.set.call(f,m,h);else if(c.isBuffer(m))m.copy(f,h);else throw new TypeError('"list" argument must be an Array of Buffers');h+=m.length}return f};function ze(e,r){if(c.isBuffer(e))return e.length;if(u.isView(e)||he(e,u))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const i=e.length,f=arguments.length>2&&arguments[2]===!0;if(!f&&i===0)return 0;let h=!1;for(;;)switch(r){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":return vt(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return i*2;case"hex":return i>>>1;case"base64":return Ht(e).length;default:if(h)return f?-1:vt(e).length;r=(""+r).toLowerCase(),h=!0}}c.byteLength=ze;function bt(e,r,i){let f=!1;if((r===void 0||r<0)&&(r=0),r>this.length||((i===void 0||i>this.length)&&(i=this.length),i<=0)||(i>>>=0,r>>>=0,i<=r))return"";for(e||(e="utf8");;)switch(e){case"hex":return et(this,r,i);case"utf8":case"utf-8":return Ze(this,r,i);case"ascii":return K(this,r,i);case"latin1":case"binary":return ye(this,r,i);case"base64":return Ee(this,r,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return H(this,r,i);default:if(f)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),f=!0}}c.prototype._isBuffer=!0;function re(e,r,i){const f=e[r];e[r]=e[i],e[i]=f}c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(e+=" ... "),""},s&&(c.prototype[s]=c.prototype.inspect),c.prototype.compare=function(e,r,i,f,h){if(he(e,a)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(r===void 0&&(r=0),i===void 0&&(i=e?e.length:0),f===void 0&&(f=0),h===void 0&&(h=this.length),r<0||i>e.length||f<0||h>this.length)throw new RangeError("out of range index");if(f>=h&&r>=i)return 0;if(f>=h)return-1;if(r>=i)return 1;if(r>>>=0,i>>>=0,f>>>=0,h>>>=0,this===e)return 0;let m=h-f,b=i-r;const F=Math.min(m,b),V=this.slice(f,h),z=e.slice(r,i);for(let P=0;P2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),i=+i,_t(i)&&(i=h?0:e.length-1),i<0&&(i=e.length+i),i>=e.length){if(h)return-1;i=e.length-1}else if(i<0)if(h)i=0;else return-1;if(typeof r=="string"&&(r=c.from(r,f)),c.isBuffer(r))return r.length===0?-1:oe(e,r,i,f,h);if(typeof r=="number")return r=r&255,typeof a.prototype.indexOf=="function"?h?a.prototype.indexOf.call(e,r,i):a.prototype.lastIndexOf.call(e,r,i):oe(e,[r],i,f,h);throw new TypeError("val must be string, number or Buffer")}function oe(e,r,i,f,h){let m=1,b=e.length,F=r.length;if(f!==void 0&&(f=String(f).toLowerCase(),f==="ucs2"||f==="ucs-2"||f==="utf16le"||f==="utf-16le")){if(e.length<2||r.length<2)return-1;m=2,b/=2,F/=2,i/=2}function V(P,q){return m===1?P[q]:P.readUInt16BE(q*m)}let z;if(h){let P=-1;for(z=i;zb&&(i=b-F),z=i;z>=0;z--){let P=!0;for(let q=0;qh&&(f=h)):f=h;const m=r.length;f>m/2&&(f=m/2);let b;for(b=0;b>>0,isFinite(i)?(i=i>>>0,f===void 0&&(f="utf8")):(f=i,i=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const h=this.length-r;if((i===void 0||i>h)&&(i=h),e.length>0&&(i<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");f||(f="utf8");let m=!1;for(;;)switch(f){case"hex":return ge(this,e,r,i);case"utf8":case"utf-8":return Te(this,e,r,i);case"ascii":case"latin1":case"binary":return Qe(this,e,r,i);case"base64":return Q(this,e,r,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Me(this,e,r,i);default:if(m)throw new TypeError("Unknown encoding: "+f);f=(""+f).toLowerCase(),m=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Ee(e,r,i){return r===0&&i===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(r,i))}function Ze(e,r,i){i=Math.min(e.length,i);const f=[];let h=r;for(;h239?4:m>223?3:m>191?2:1;if(h+F<=i){let V,z,P,q;switch(F){case 1:m<128&&(b=m);break;case 2:V=e[h+1],(V&192)===128&&(q=(m&31)<<6|V&63,q>127&&(b=q));break;case 3:V=e[h+1],z=e[h+2],(V&192)===128&&(z&192)===128&&(q=(m&15)<<12|(V&63)<<6|z&63,q>2047&&(q<55296||q>57343)&&(b=q));break;case 4:V=e[h+1],z=e[h+2],P=e[h+3],(V&192)===128&&(z&192)===128&&(P&192)===128&&(q=(m&15)<<18|(V&63)<<12|(z&63)<<6|P&63,q>65535&&q<1114112&&(b=q))}}b===null?(b=65533,F=1):b>65535&&(b-=65536,f.push(b>>>10&1023|55296),b=56320|b&1023),f.push(b),h+=F}return de(f)}const $e=4096;function de(e){const r=e.length;if(r<=$e)return String.fromCharCode.apply(String,e);let i="",f=0;for(;ff)&&(i=f);let h="";for(let m=r;mi&&(e=i),r<0?(r+=i,r<0&&(r=0)):r>i&&(r=i),ri)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(e,r,i){e=e>>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e],h=1,m=0;for(;++m>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e+--r],h=1;for(;r>0&&(h*=256);)f+=this[e+--r]*h;return f},c.prototype.readUint8=c.prototype.readUInt8=function(e,r){return e=e>>>0,r||U(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||U(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||U(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||U(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=be(function(e){e=e>>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=r+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,h=this[++e]+this[++e]*2**8+this[++e]*2**16+i*2**24;return BigInt(f)+(BigInt(h)<>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=r*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],h=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+i;return(BigInt(f)<>>0,r=r>>>0,i||U(e,r,this.length);let f=this[e],h=1,m=0;for(;++m=h&&(f-=Math.pow(2,8*r)),f},c.prototype.readIntBE=function(e,r,i){e=e>>>0,r=r>>>0,i||U(e,r,this.length);let f=r,h=1,m=this[e+--f];for(;f>0&&(h*=256);)m+=this[e+--f]*h;return h*=128,m>=h&&(m-=Math.pow(2,8*r)),m},c.prototype.readInt8=function(e,r){return e=e>>>0,r||U(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},c.prototype.readInt16LE=function(e,r){e=e>>>0,r||U(e,2,this.length);const i=this[e]|this[e+1]<<8;return i&32768?i|4294901760:i},c.prototype.readInt16BE=function(e,r){e=e>>>0,r||U(e,2,this.length);const i=this[e+1]|this[e]<<8;return i&32768?i|4294901760:i},c.prototype.readInt32LE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,r){return e=e>>>0,r||U(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=be(function(e){e=e>>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(i<<24);return(BigInt(f)<>>0,Ue(e,"offset");const r=this[e],i=this[e+7];(r===void 0||i===void 0)&&qe(e,this.length-8);const f=(r<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(f)<>>0,r||U(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,r){return e=e>>>0,r||U(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||U(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||U(e,8,this.length),o.read(this,e,!1,52,8)};function L(e,r,i,f,h,m){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>h||re.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,r,i,f){if(e=+e,r=r>>>0,i=i>>>0,!f){const b=Math.pow(2,8*i)-1;L(this,e,r,i,b,0)}let h=1,m=0;for(this[r]=e&255;++m>>0,i=i>>>0,!f){const b=Math.pow(2,8*i)-1;L(this,e,r,i,b,0)}let h=i-1,m=1;for(this[r+h]=e&255;--h>=0&&(m*=256);)this[r+h]=e/m&255;return r+i},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,1,255,0),this[r]=e&255,r+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function ke(e,r,i,f,h){qt(r,f,h,e,i,7);let m=Number(r&BigInt(4294967295));e[i++]=m,m=m>>8,e[i++]=m,m=m>>8,e[i++]=m,m=m>>8,e[i++]=m;let b=Number(r>>BigInt(32)&BigInt(4294967295));return e[i++]=b,b=b>>8,e[i++]=b,b=b>>8,e[i++]=b,b=b>>8,e[i++]=b,i}function Z(e,r,i,f,h){qt(r,f,h,e,i,7);let m=Number(r&BigInt(4294967295));e[i+7]=m,m=m>>8,e[i+6]=m,m=m>>8,e[i+5]=m,m=m>>8,e[i+4]=m;let b=Number(r>>BigInt(32)&BigInt(4294967295));return e[i+3]=b,b=b>>8,e[i+2]=b,b=b>>8,e[i+1]=b,b=b>>8,e[i]=b,i+8}c.prototype.writeBigUInt64LE=be(function(e,r=0){return ke(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeBigUInt64BE=be(function(e,r=0){return Z(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeIntLE=function(e,r,i,f){if(e=+e,r=r>>>0,!f){const F=Math.pow(2,8*i-1);L(this,e,r,i,F-1,-F)}let h=0,m=1,b=0;for(this[r]=e&255;++h>0)-b&255;return r+i},c.prototype.writeIntBE=function(e,r,i,f){if(e=+e,r=r>>>0,!f){const F=Math.pow(2,8*i-1);L(this,e,r,i,F-1,-F)}let h=i-1,m=1,b=0;for(this[r+h]=e&255;--h>=0&&(m*=256);)e<0&&b===0&&this[r+h+1]!==0&&(b=1),this[r+h]=(e/m>>0)-b&255;return r+i},c.prototype.writeInt8=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1},c.prototype.writeInt16LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeInt16BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeInt32LE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4},c.prototype.writeInt32BE=function(e,r,i){return e=+e,r=r>>>0,i||L(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4},c.prototype.writeBigInt64LE=be(function(e,r=0){return ke(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),c.prototype.writeBigInt64BE=be(function(e,r=0){return Z(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function N(e,r,i,f,h,m){if(i+f>e.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function me(e,r,i,f,h){return r=+r,i=i>>>0,h||N(e,r,i,4),o.write(e,r,i,f,23,4),i+4}c.prototype.writeFloatLE=function(e,r,i){return me(this,e,r,!0,i)},c.prototype.writeFloatBE=function(e,r,i){return me(this,e,r,!1,i)};function Re(e,r,i,f,h){return r=+r,i=i>>>0,h||N(e,r,i,8),o.write(e,r,i,f,52,8),i+8}c.prototype.writeDoubleLE=function(e,r,i){return Re(this,e,r,!0,i)},c.prototype.writeDoubleBE=function(e,r,i){return Re(this,e,r,!1,i)},c.prototype.copy=function(e,r,i,f){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(i||(i=0),!f&&f!==0&&(f=this.length),r>=e.length&&(r=e.length),r||(r=0),f>0&&f=this.length)throw new RangeError("Index out of range");if(f<0)throw new RangeError("sourceEnd out of bounds");f>this.length&&(f=this.length),e.length-r>>0,i=i===void 0?this.length:i>>>0,e||(e=0);let h;if(typeof e=="number")for(h=r;h2**32?h=tt(String(i)):typeof i=="bigint"&&(h=String(i),(i>BigInt(2)**BigInt(32)||i<-(BigInt(2)**BigInt(32)))&&(h=tt(h)),h+="n"),f+=` It must be ${r}. Received ${h}`,f},RangeError);function tt(e){let r="",i=e.length;const f=e[0]==="-"?1:0;for(;i>=f+4;i-=3)r=`_${e.slice(i-3,i)}${r}`;return`${e.slice(0,i)}${r}`}function Ce(e,r,i){Ue(r,"offset"),(e[r]===void 0||e[r+i]===void 0)&&qe(r,e.length-(i+1))}function qt(e,r,i,f,h,m){if(e>i||e= 0${b} and < 2${b} ** ${(m+1)*8}${b}`:F=`>= -(2${b} ** ${(m+1)*8-1}${b}) and < 2 ** ${(m+1)*8-1}${b}`,new ie.ERR_OUT_OF_RANGE("value",F,e)}Ce(f,h,m)}function Ue(e,r){if(typeof e!="number")throw new ie.ERR_INVALID_ARG_TYPE(r,"number",e)}function qe(e,r,i){throw Math.floor(e)!==e?(Ue(e,i),new ie.ERR_OUT_OF_RANGE("offset","an integer",e)):r<0?new ie.ERR_BUFFER_OUT_OF_BOUNDS:new ie.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${r}`,e)}const Dn=/[^+/0-9A-Za-z-_]/g;function Mn(e){if(e=e.split("=")[0],e=e.trim().replace(Dn,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function vt(e,r){r=r||1/0;let i;const f=e.length;let h=null;const m=[];for(let b=0;b55295&&i<57344){if(!h){if(i>56319){(r-=3)>-1&&m.push(239,191,189);continue}else if(b+1===f){(r-=3)>-1&&m.push(239,191,189);continue}h=i;continue}if(i<56320){(r-=3)>-1&&m.push(239,191,189),h=i;continue}i=(h-55296<<10|i-56320)+65536}else h&&(r-=3)>-1&&m.push(239,191,189);if(h=null,i<128){if((r-=1)<0)break;m.push(i)}else if(i<2048){if((r-=2)<0)break;m.push(i>>6|192,i&63|128)}else if(i<65536){if((r-=3)<0)break;m.push(i>>12|224,i>>6&63|128,i&63|128)}else if(i<1114112){if((r-=4)<0)break;m.push(i>>18|240,i>>12&63|128,i>>6&63|128,i&63|128)}else throw new Error("Invalid code point")}return m}function $n(e){const r=[];for(let i=0;i>8,h=i%256,m.push(h),m.push(f);return m}function Ht(e){return n.toByteArray(Mn(e))}function nt(e,r,i,f){let h;for(h=0;h=r.length||h>=e.length);++h)r[h+i]=e[h];return h}function he(e,r){return e instanceof r||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===r.name}function _t(e){return e!==e}const Hn=(function(){const e="0123456789abcdef",r=new Array(256);for(let i=0;i<16;++i){const f=i*16;for(let h=0;h<16;++h)r[f+h]=e[i]+e[h]}return r})();function be(e){return typeof BigInt>"u"?Vn:e}function Vn(){throw new Error("BigInt not supported")}})(wn);const it=wn.Buffer;function vn(t,n){return function(){return t.apply(n,arguments)}}const{toString:_r}=Object.prototype,{getPrototypeOf:ht}=Object,{iterator:pt,toStringTag:_n}=Symbol,gt=(t=>n=>{const o=_r.call(n);return t[o]||(t[o]=o.slice(8,-1).toLowerCase())})(Object.create(null)),fe=t=>(t=t.toLowerCase(),n=>gt(n)===t),yt=t=>n=>typeof n===t,{isArray:je}=Array,Fe=yt("undefined");function We(t){return t!==null&&!Fe(t)&&t.constructor!==null&&!Fe(t.constructor)&&Y(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const En=fe("ArrayBuffer");function Er(t){let n;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?n=ArrayBuffer.isView(t):n=t&&t.buffer&&En(t.buffer),n}const Rr=yt("string"),Y=yt("function"),Rn=yt("number"),Je=t=>t!==null&&typeof t=="object",Cr=t=>t===!0||t===!1,st=t=>{if(gt(t)!=="object")return!1;const n=ht(t);return(n===null||n===Object.prototype||Object.getPrototypeOf(n)===null)&&!(_n in t)&&!(pt in t)},Or=t=>{if(!Je(t)||We(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},Sr=fe("Date"),Br=fe("File"),xr=t=>!!(t&&typeof t.uri<"u"),Ar=t=>t&&typeof t.getParts<"u",Tr=fe("Blob"),kr=fe("FileList"),Nr=t=>Je(t)&&Y(t.pipe);function Ur(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof xt<"u"?xt:{}}const Gt=Ur(),Kt=typeof Gt.FormData<"u"?Gt.FormData:void 0,Pr=t=>{if(!t)return!1;if(Kt&&t instanceof Kt)return!0;const n=ht(t);if(!n||n===Object.prototype||!Y(t.append))return!1;const o=gt(t);return o==="formdata"||o==="object"&&Y(t.toString)&&t.toString()==="[object FormData]"},Ir=fe("URLSearchParams"),[Lr,Fr,jr,zr]=["ReadableStream","Request","Response","Headers"].map(fe),Dr=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ge(t,n,{allOwnKeys:o=!1}={}){if(t===null||typeof t>"u")return;let s,l;if(typeof t!="object"&&(t=[t]),je(t))for(s=0,l=t.length;s0;)if(l=o[s],n===l.toLowerCase())return l;return null}const Se=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:xt,On=t=>!Fe(t)&&t!==Se;function Tt(...t){const{caseless:n,skipUndefined:o}=On(this)&&this||{},s={},l=(a,u)=>{if(u==="__proto__"||u==="constructor"||u==="prototype")return;const d=n&&Cn(s,u)||u,g=kt(s,d)?s[d]:void 0;st(g)&&st(a)?s[d]=Tt(g,a):st(a)?s[d]=Tt({},a):je(a)?s[d]=a.slice():(!o||!Fe(a))&&(s[d]=a)};for(let a=0,u=t.length;a(Ge(n,(l,a)=>{o&&Y(l)?Object.defineProperty(t,a,{__proto__:null,value:vn(l,o),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,a,{__proto__:null,value:l,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:s}),t),$r=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),qr=(t,n,o,s)=>{t.prototype=Object.create(n.prototype,s),Object.defineProperty(t.prototype,"constructor",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{__proto__:null,value:n.prototype}),o&&Object.assign(t.prototype,o)},Hr=(t,n,o,s)=>{let l,a,u;const d={};if(n=n||{},t==null)return n;do{for(l=Object.getOwnPropertyNames(t),a=l.length;a-- >0;)u=l[a],(!s||s(u,t,n))&&!d[u]&&(n[u]=t[u],d[u]=!0);t=o!==!1&&ht(t)}while(t&&(!o||o(t,n))&&t!==Object.prototype);return n},Vr=(t,n,o)=>{t=String(t),(o===void 0||o>t.length)&&(o=t.length),o-=n.length;const s=t.indexOf(n,o);return s!==-1&&s===o},Wr=t=>{if(!t)return null;if(je(t))return t;let n=t.length;if(!Rn(n))return null;const o=new Array(n);for(;n-- >0;)o[n]=t[n];return o},Jr=(t=>n=>t&&n instanceof t)(typeof Uint8Array<"u"&&ht(Uint8Array)),Gr=(t,n)=>{const o=(t&&t[pt]).call(t);let s;for(;(s=o.next())&&!s.done;){const l=s.value;n.call(t,l[0],l[1])}},Kr=(t,n)=>{let o;const s=[];for(;(o=t.exec(n))!==null;)s.push(o);return s},Xr=fe("HTMLFormElement"),Yr=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,s){return o.toUpperCase()+s}),kt=(({hasOwnProperty:t})=>(n,o)=>t.call(n,o))(Object.prototype),Qr=fe("RegExp"),Sn=(t,n)=>{const o=Object.getOwnPropertyDescriptors(t),s={};Ge(o,(l,a)=>{let u;(u=n(l,a,t))!==!1&&(s[a]=u||l)}),Object.defineProperties(t,s)},Zr=t=>{Sn(t,(n,o)=>{if(Y(t)&&["arguments","caller","callee"].includes(o))return!1;const s=t[o];if(Y(s)){if(n.enumerable=!1,"writable"in n){n.writable=!1;return}n.set||(n.set=()=>{throw Error("Can not rewrite read-only method '"+o+"'")})}})},eo=(t,n)=>{const o={},s=l=>{l.forEach(a=>{o[a]=!0})};return je(t)?s(t):s(String(t).split(n)),o},to=()=>{},no=(t,n)=>t!=null&&Number.isFinite(t=+t)?t:n;function ro(t){return!!(t&&Y(t.append)&&t[_n]==="FormData"&&t[pt])}const oo=t=>{const n=new Array(10),o=(s,l)=>{if(Je(s)){if(n.indexOf(s)>=0)return;if(We(s))return s;if(!("toJSON"in s)){n[l]=s;const a=je(s)?[]:{};return Ge(s,(u,d)=>{const g=o(u,l+1);!Fe(g)&&(a[d]=g)}),n[l]=void 0,a}}return s};return o(t,0)},io=fe("AsyncFunction"),so=t=>t&&(Je(t)||Y(t))&&Y(t.then)&&Y(t.catch),Bn=((t,n)=>t?setImmediate:n?((o,s)=>(Se.addEventListener("message",({source:l,data:a})=>{l===Se&&a===o&&s.length&&s.shift()()},!1),l=>{s.push(l),Se.postMessage(o,"*")}))(`axios@${Math.random()}`,[]):o=>setTimeout(o))(typeof setImmediate=="function",Y(Se.postMessage)),ao=typeof queueMicrotask<"u"?queueMicrotask.bind(Se):typeof Jt<"u"&&Jt.nextTick||Bn,lo=t=>t!=null&&Y(t[pt]),p={isArray:je,isArrayBuffer:En,isBuffer:We,isFormData:Pr,isArrayBufferView:Er,isString:Rr,isNumber:Rn,isBoolean:Cr,isObject:Je,isPlainObject:st,isEmptyObject:Or,isReadableStream:Lr,isRequest:Fr,isResponse:jr,isHeaders:zr,isUndefined:Fe,isDate:Sr,isFile:Br,isReactNativeBlob:xr,isReactNative:Ar,isBlob:Tr,isRegExp:Qr,isFunction:Y,isStream:Nr,isURLSearchParams:Ir,isTypedArray:Jr,isFileList:kr,forEach:Ge,merge:Tt,extend:Mr,trim:Dr,stripBOM:$r,inherits:qr,toFlatObject:Hr,kindOf:gt,kindOfTest:fe,endsWith:Vr,toArray:Wr,forEachEntry:Gr,matchAll:Kr,isHTMLForm:Xr,hasOwnProperty:kt,hasOwnProp:kt,reduceDescriptors:Sn,freezeMethods:Zr,toObjectSet:eo,toCamelCase:Yr,noop:to,toFiniteNumber:no,findKey:Cn,global:Se,isContextDefined:On,isSpecCompliantForm:ro,toJSONObject:oo,isAsyncFn:io,isThenable:so,setImmediate:Bn,asap:ao,isIterable:lo},uo=p.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),co=t=>{const n={};let o,s,l;return t&&t.split(` `).forEach(function(a){l=a.indexOf(":"),o=a.substring(0,l).trim().toLowerCase(),s=a.substring(l+1).trim(),!(!o||n[o]&&uo[o])&&(o==="set-cookie"?n[o]?n[o].push(s):n[o]=[s]:n[o]=n[o]?n[o]+", "+s:s)}),n},Xt=Symbol("internals"),fo=/[^\x09\x20-\x7E\x80-\xFF]/g;function ho(t){let n=0,o=t.length;for(;nn;){const s=t.charCodeAt(o-1);if(s!==9&&s!==32)break;o-=1}return n===0&&o===t.length?t:t.slice(n,o)}function He(t){return t&&String(t).trim().toLowerCase()}function po(t){return ho(t.replace(fo,""))}function at(t){return t===!1||t==null?t:p.isArray(t)?t.map(at):po(String(t))}function go(t){const n=Object.create(null),o=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=o.exec(t);)n[s[1]]=s[2];return n}const yo=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Rt(t,n,o,s,l){if(p.isFunction(s))return s.call(this,n,o);if(l&&(n=o),!!p.isString(n)){if(p.isString(s))return n.indexOf(s)!==-1;if(p.isRegExp(s))return s.test(n)}}function mo(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(n,o,s)=>o.toUpperCase()+s)}function wo(t,n){const o=p.toCamelCase(" "+n);["get","set","has"].forEach(s=>{Object.defineProperty(t,s+o,{__proto__:null,value:function(l,a,u){return this[s].call(this,n,l,a,u)},configurable:!0})})}let G=class{constructor(t){t&&this.set(t)}set(t,n,o){const s=this;function l(u,d,g){const y=He(d);if(!y)throw new Error("header name must be a non-empty string");const c=p.findKey(s,y);(!c||s[c]===void 0||g===!0||g===void 0&&s[c]!==!1)&&(s[c||d]=at(u))}const a=(u,d)=>p.forEach(u,(g,y)=>l(g,y,d));if(p.isPlainObject(t)||t instanceof this.constructor)a(t,n);else if(p.isString(t)&&(t=t.trim())&&!yo(t))a(co(t),n);else if(p.isObject(t)&&p.isIterable(t)){let u={},d,g;for(const y of t){if(!p.isArray(y))throw TypeError("Object iterator must return a key-value pair");u[g=y[0]]=(d=u[g])?p.isArray(d)?[...d,y[1]]:[d,y[1]]:y[1]}a(u,n)}else t!=null&&l(n,t,o);return this}get(t,n){if(t=He(t),t){const o=p.findKey(this,t);if(o){const s=this[o];if(!n)return s;if(n===!0)return go(s);if(p.isFunction(n))return n.call(this,s,o);if(p.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=He(t),t){const o=p.findKey(this,t);return!!(o&&this[o]!==void 0&&(!n||Rt(this,this[o],o,n)))}return!1}delete(t,n){const o=this;let s=!1;function l(a){if(a=He(a),a){const u=p.findKey(o,a);u&&(!n||Rt(o,o[u],u,n))&&(delete o[u],s=!0)}}return p.isArray(t)?t.forEach(l):l(t),s}clear(t){const n=Object.keys(this);let o=n.length,s=!1;for(;o--;){const l=n[o];(!t||Rt(this,this[l],l,t,!0))&&(delete this[l],s=!0)}return s}normalize(t){const n=this,o={};return p.forEach(this,(s,l)=>{const a=p.findKey(o,l);if(a){n[a]=at(s),delete n[l];return}const u=t?mo(l):String(l).trim();u!==l&&delete n[l],n[u]=at(s),o[u]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return p.forEach(this,(o,s)=>{o!=null&&o!==!1&&(n[s]=t&&p.isArray(o)?o.join(", "):o)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(s=>o.set(s)),o}static accessor(t){const n=(this[Xt]=this[Xt]={accessors:{}}).accessors,o=this.prototype;function s(l){const a=He(l);n[a]||(wo(o,l),n[a]=!0)}return p.isArray(t)?t.forEach(s):s(t),this}};G.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),p.reduceDescriptors(G.prototype,({value:t},n)=>{let o=n[0].toUpperCase()+n.slice(1);return{get:()=>t,set(s){this[o]=s}}}),p.freezeMethods(G);const bo="[REDACTED ****]";function vo(t){if(p.hasOwnProp(t,"toJSON"))return!0;let n=Object.getPrototypeOf(t);for(;n&&n!==Object.prototype;){if(p.hasOwnProp(n,"toJSON"))return!0;n=Object.getPrototypeOf(n)}return!1}function _o(t,n){const o=new Set(n.map(a=>String(a).toLowerCase())),s=[],l=a=>{if(a===null||typeof a!="object"||p.isBuffer(a))return a;if(s.indexOf(a)!==-1)return;a instanceof G&&(a=a.toJSON()),s.push(a);let u;if(p.isArray(a))u=[],a.forEach((d,g)=>{const y=l(d);p.isUndefined(y)||(u[g]=y)});else{if(!p.isPlainObject(a)&&vo(a))return s.pop(),a;u=Object.create(null);for(const[d,g]of Object.entries(a)){const y=o.has(d.toLowerCase())?bo:l(g);p.isUndefined(y)||(u[d]=y)}}return s.pop(),u};return l(t)}let E=class xn extends Error{static from(n,o,s,l,a,u){const d=new xn(n.message,o||n.code,s,l,a);return d.cause=n,d.name=n.name,n.status!=null&&d.status==null&&(d.status=n.status),u&&Object.assign(d,u),d}constructor(n,o,s,l,a){super(n),Object.defineProperty(this,"message",{__proto__:null,value:n,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,o&&(this.code=o),s&&(this.config=s),l&&(this.request=l),a&&(this.response=a,this.status=a.status)}toJSON(){const n=this.config,o=n&&p.hasOwnProp(n,"redact")?n.redact:void 0,s=p.isArray(o)&&o.length>0?_o(n,o):p.toJSONObject(n);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:s,code:this.code,status:this.status}}};E.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",E.ERR_BAD_OPTION="ERR_BAD_OPTION",E.ECONNABORTED="ECONNABORTED",E.ETIMEDOUT="ETIMEDOUT",E.ECONNREFUSED="ECONNREFUSED",E.ERR_NETWORK="ERR_NETWORK",E.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",E.ERR_DEPRECATED="ERR_DEPRECATED",E.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",E.ERR_BAD_REQUEST="ERR_BAD_REQUEST",E.ERR_CANCELED="ERR_CANCELED",E.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",E.ERR_INVALID_URL="ERR_INVALID_URL",E.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Eo=null;function Nt(t){return p.isPlainObject(t)||p.isArray(t)}function Bn(t){return p.endsWith(t,"[]")?t.slice(0,-2):t}function Ct(t,n,o){return t?t.concat(n).map(function(s,l){return s=Bn(s),!o&&l?"["+s+"]":s}).join(o?".":""):n}function Ro(t){return p.isArray(t)&&!t.some(Nt)}const Co=p.toFlatObject(p,{},null,function(t){return/^is[A-Z]/.test(t)});function mt(t,n,o){if(!p.isObject(t))throw new TypeError("target must be an object");n=n||new FormData,o=p.toFlatObject(o,{metaTokens:!0,dots:!1,indexes:!1},!1,function(w,B){return!p.isUndefined(B[w])});const s=o.metaTokens,l=o.visitor||v,a=o.dots,u=o.indexes,d=o.Blob||typeof Blob<"u"&&Blob,g=o.maxDepth===void 0?100:o.maxDepth,y=d&&p.isSpecCompliantForm(n);if(!p.isFunction(l))throw new TypeError("visitor must be a function");function c(w){if(w===null)return"";if(p.isDate(w))return w.toISOString();if(p.isBoolean(w))return w.toString();if(!y&&p.isBlob(w))throw new E("Blob is not supported. Use a Buffer instead.");return p.isArrayBuffer(w)||p.isTypedArray(w)?y&&typeof Blob=="function"?new Blob([w]):it.from(w):w}function v(w,B,O){let x=w;if(p.isReactNative(n)&&p.isReactNativeBlob(w))return n.append(Ct(O,B,a),c(w)),!1;if(w&&!O&&typeof w=="object"){if(p.endsWith(B,"{}"))B=s?B:B.slice(0,-2),w=JSON.stringify(w);else if(p.isArray(w)&&Ro(w)||(p.isFileList(w)||p.endsWith(B,"[]"))&&(x=p.toArray(w)))return B=Bn(B),x.forEach(function(k,D){!(p.isUndefined(k)||k===null)&&n.append(u===!0?Ct([B],D,a):u===null?B:B+"[]",c(k))}),!1}return Nt(w)?!0:(n.append(Ct(O,B,a),c(w)),!1)}const C=[],R=Object.assign(Co,{defaultVisitor:v,convertValue:c,isVisitable:Nt});function A(w,B,O=0){if(!p.isUndefined(w)){if(O>g)throw new E("Object is too deeply nested ("+O+" levels). Max depth: "+g,E.ERR_FORM_DATA_DEPTH_EXCEEDED);if(C.indexOf(w)!==-1)throw Error("Circular reference detected in "+B.join("."));C.push(w),p.forEach(w,function(x,k){(!(p.isUndefined(x)||x===null)&&l.call(n,x,p.isString(k)?k.trim():k,B,R))===!0&&A(x,B?B.concat(k):[k],O+1)}),C.pop()}}if(!p.isObject(t))throw new TypeError("data must be an object");return A(t),n}function Yt(t){const n={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(t).replace(/[!'()~]|%20/g,function(o){return n[o]})}function Ft(t,n){this._pairs=[],t&&mt(t,this,n)}const Qt=Ft.prototype;Qt.append=function(t,n){this._pairs.push([t,n])},Qt.toString=function(t){const n=t?function(o){return t.call(this,o,Yt)}:Yt;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function Oo(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Tn(t,n,o){if(!n)return t;const s=o&&o.encode||Oo,l=p.isFunction(o)?{serialize:o}:o,a=l&&l.serialize;let u;if(a?u=a(n,l):u=p.isURLSearchParams(n)?n.toString():new Ft(n,l).toString(s),u){const d=t.indexOf("#");d!==-1&&(t=t.slice(0,d)),t+=(t.indexOf("?")===-1?"?":"&")+u}return t}class Zt{constructor(){this.handlers=[]}use(n,o,s){return this.handlers.push({fulfilled:n,rejected:o,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(n){this.handlers[n]&&(this.handlers[n]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(n){p.forEach(this.handlers,function(o){o!==null&&n(o)})}}const jt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},So=typeof URLSearchParams<"u"?URLSearchParams:Ft,Ao=typeof FormData<"u"?FormData:null,xo=typeof Blob<"u"?Blob:null,Bo={isBrowser:!0,classes:{URLSearchParams:So,FormData:Ao,Blob:xo},protocols:["http","https","file","blob","url","data"]},zt=typeof window<"u"&&typeof document<"u",Ut=typeof navigator=="object"&&navigator||void 0,To=zt&&(!Ut||["ReactNative","NativeScript","NS"].indexOf(Ut.product)<0),ko=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",No=zt&&window.location.href||"http://localhost",Uo=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:zt,hasStandardBrowserEnv:To,hasStandardBrowserWebWorkerEnv:ko,navigator:Ut,origin:No},Symbol.toStringTag,{value:"Module"})),W={...Uo,...Bo};function Po(t,n){return mt(t,new W.classes.URLSearchParams,{visitor:function(o,s,l,a){return W.isNode&&p.isBuffer(o)?(this.append(s,o.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...n})}function Io(t){return p.matchAll(/\w+|\[(\w*)]/g,t).map(n=>n[0]==="[]"?"":n[1]||n[0])}function Lo(t){const n={},o=Object.keys(t);let s;const l=o.length;let a;for(s=0;s=o.length;return u=!u&&p.isArray(l)?l.length:u,g?(p.hasOwnProp(l,u)?l[u]=p.isArray(l[u])?l[u].concat(s):[l[u],s]:l[u]=s,!d):((!l[u]||!p.isObject(l[u]))&&(l[u]=[]),n(o,s,l[u],a)&&p.isArray(l[u])&&(l[u]=Lo(l[u])),!d)}if(p.isFormData(t)&&p.isFunction(t.entries)){const o={};return p.forEachEntry(t,(s,l)=>{n(Io(s),l,o,0)}),o}return null}const Ie=(t,n)=>t!=null&&p.hasOwnProp(t,n)?t[n]:void 0;function Fo(t,n,o){if(p.isString(t))try{return(n||JSON.parse)(t),p.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(o||JSON.stringify)(t)}const Ke={transitional:jt,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",s=o.indexOf("application/json")>-1,l=p.isObject(t);if(l&&p.isHTMLForm(t)&&(t=new FormData(t)),p.isFormData(t))return s?JSON.stringify(kn(t)):t;if(p.isArrayBuffer(t)||p.isBuffer(t)||p.isStream(t)||p.isFile(t)||p.isBlob(t)||p.isReadableStream(t))return t;if(p.isArrayBufferView(t))return t.buffer;if(p.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(l){const u=Ie(this,"formSerializer");if(o.indexOf("application/x-www-form-urlencoded")>-1)return Po(t,u).toString();if((a=p.isFileList(t))||o.indexOf("multipart/form-data")>-1){const d=Ie(this,"env"),g=d&&d.FormData;return mt(a?{"files[]":t}:t,g&&new g,u)}}return l||s?(n.setContentType("application/json",!1),Fo(t)):t}],transformResponse:[function(t){const n=Ie(this,"transitional")||Ke.transitional,o=n&&n.forcedJSONParsing,s=Ie(this,"responseType"),l=s==="json";if(p.isResponse(t)||p.isReadableStream(t))return t;if(t&&p.isString(t)&&(o&&!s||l)){const a=!(n&&n.silentJSONParsing)&&l;try{return JSON.parse(t,Ie(this,"parseReviver"))}catch(u){if(a)throw u.name==="SyntaxError"?E.from(u,E.ERR_BAD_RESPONSE,this,null,Ie(this,"response")):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:W.classes.FormData,Blob:W.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};p.forEach(["delete","get","head","post","put","patch","query"],t=>{Ke.headers[t]={}});function Ot(t,n){const o=this||Ke,s=n||o,l=G.from(s.headers);let a=s.data;return p.forEach(t,function(u){a=u.call(o,a,l.normalize(),n?n.status:void 0)}),l.normalize(),a}function Nn(t){return!!(t&&t.__CANCEL__)}let Xe=class extends E{constructor(t,n,o){super(t??"canceled",E.ERR_CANCELED,n,o),this.name="CanceledError",this.__CANCEL__=!0}};function Un(t,n,o){const s=o.config.validateStatus;!o.status||!s||s(o.status)?t(o):n(new E("Request failed with status code "+o.status,o.status>=400&&o.status<500?E.ERR_BAD_REQUEST:E.ERR_BAD_RESPONSE,o.config,o.request,o))}function jo(t){const n=/^([-+\w]{1,25}):(?:\/\/)?/.exec(t);return n&&n[1]||""}function zo(t,n){t=t||10;const o=new Array(t),s=new Array(t);let l=0,a=0,u;return n=n!==void 0?n:1e3,function(d){const g=Date.now(),y=s[a];u||(u=g),o[l]=d,s[l]=g;let c=a,v=0;for(;c!==l;)v+=o[c++],c=c%t;if(l=(l+1)%t,l===a&&(a=(a+1)%t),g-u{o=g,l=null,a&&(clearTimeout(a),a=null),t(...d)};return[(...d)=>{const g=Date.now(),y=g-o;y>=s?u(d,g):(l=d,a||(a=setTimeout(()=>{a=null,u(l)},s-y)))},()=>l&&u(l)]}const ft=(t,n,o=3)=>{let s=0;const l=zo(50,250);return Do(a=>{const u=a.loaded,d=a.lengthComputable?a.total:void 0,g=d!=null?Math.min(u,d):u,y=Math.max(0,g-s),c=l(y);s=Math.max(s,g);const v={loaded:g,total:d,progress:d?g/d:void 0,bytes:y,rate:c||void 0,estimated:c&&d?(d-g)/c:void 0,event:a,lengthComputable:d!=null,[n?"download":"upload"]:!0};t(v)},o)},en=(t,n)=>{const o=t!=null;return[s=>n[0]({lengthComputable:o,total:t,loaded:s}),n[1]]},tn=t=>(...n)=>p.asap(()=>t(...n)),Mo=W.hasStandardBrowserEnv?((t,n)=>o=>(o=new URL(o,W.origin),t.protocol===o.protocol&&t.host===o.host&&(n||t.port===o.port)))(new URL(W.origin),W.navigator&&/(msie|trident)/i.test(W.navigator.userAgent)):()=>!0,$o=W.hasStandardBrowserEnv?{write(t,n,o,s,l,a,u){if(typeof document>"u")return;const d=[`${t}=${encodeURIComponent(n)}`];p.isNumber(o)&&d.push(`expires=${new Date(o).toUTCString()}`),p.isString(s)&&d.push(`path=${s}`),p.isString(l)&&d.push(`domain=${l}`),a===!0&&d.push("secure"),p.isString(u)&&d.push(`SameSite=${u}`),document.cookie=d.join("; ")},read(t){if(typeof document>"u")return null;const n=document.cookie.split(";");for(let o=0;ot instanceof G?{...t}:t;function Be(t,n){n=n||{};const o=Object.create(null);Object.defineProperty(o,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function s(y,c,v,C){return p.isPlainObject(y)&&p.isPlainObject(c)?p.merge.call({caseless:C},y,c):p.isPlainObject(c)?p.merge({},c):p.isArray(c)?c.slice():c}function l(y,c,v,C){if(p.isUndefined(c)){if(!p.isUndefined(y))return s(void 0,y,v,C)}else return s(y,c,v,C)}function a(y,c){if(!p.isUndefined(c))return s(void 0,c)}function u(y,c){if(p.isUndefined(c)){if(!p.isUndefined(y))return s(void 0,y)}else return s(void 0,c)}function d(y,c,v){if(p.hasOwnProp(n,v))return s(y,c);if(p.hasOwnProp(t,v))return s(void 0,y)}const g={url:a,method:a,data:a,baseURL:u,transformRequest:u,transformResponse:u,paramsSerializer:u,timeout:u,timeoutMessage:u,withCredentials:u,withXSRFToken:u,adapter:u,responseType:u,xsrfCookieName:u,xsrfHeaderName:u,onUploadProgress:u,onDownloadProgress:u,decompress:u,maxContentLength:u,maxBodyLength:u,beforeRedirect:u,transport:u,httpAgent:u,httpsAgent:u,cancelToken:u,socketPath:u,allowedSocketPaths:u,responseEncoding:u,validateStatus:d,headers:(y,c,v)=>l(nn(y),nn(c),v,!0)};return p.forEach(Object.keys({...t,...n}),function(y){if(y==="__proto__"||y==="constructor"||y==="prototype")return;const c=p.hasOwnProp(g,y)?g[y]:l,v=p.hasOwnProp(t,y)?t[y]:void 0,C=p.hasOwnProp(n,y)?n[y]:void 0,R=c(v,C,y);p.isUndefined(R)&&c!==d||(o[y]=R)}),o}const Vo=["content-type","content-length"];function Wo(t,n,o){if(o!=="content-only"){t.set(n);return}Object.entries(n).forEach(([s,l])=>{Vo.includes(s.toLowerCase())&&t.set(s,l)})}const Jo=t=>encodeURIComponent(t).replace(/%([0-9A-F]{2})/gi,(n,o)=>String.fromCharCode(parseInt(o,16))),In=t=>{const n=Be({},t),o=C=>p.hasOwnProp(n,C)?n[C]:void 0,s=o("data");let l=o("withXSRFToken");const a=o("xsrfHeaderName"),u=o("xsrfCookieName");let d=o("headers");const g=o("auth"),y=o("baseURL"),c=o("allowAbsoluteUrls"),v=o("url");if(n.headers=d=G.from(d),n.url=Tn(Pn(y,v,c),t.params,t.paramsSerializer),g&&d.set("Authorization","Basic "+btoa((g.username||"")+":"+(g.password?Jo(g.password):""))),p.isFormData(s)&&(W.hasStandardBrowserEnv||W.hasStandardBrowserWebWorkerEnv?d.setContentType(void 0):p.isFunction(s.getHeaders)&&Wo(d,s.getHeaders(),o("formDataHeaderPolicy"))),W.hasStandardBrowserEnv&&(p.isFunction(l)&&(l=l(n)),l===!0||l==null&&Mo(n.url))){const C=a&&u&&$o.read(u);C&&d.set(a,C)}return n},Go=typeof XMLHttpRequest<"u",Ko=Go&&function(t){return new Promise(function(n,o){const s=In(t);let l=s.data;const a=G.from(s.headers).normalize();let{responseType:u,onUploadProgress:d,onDownloadProgress:g}=s,y,c,v,C,R;function A(){C&&C(),R&&R(),s.cancelToken&&s.cancelToken.unsubscribe(y),s.signal&&s.signal.removeEventListener("abort",y)}let w=new XMLHttpRequest;w.open(s.method.toUpperCase(),s.url,!0),w.timeout=s.timeout;function B(){if(!w)return;const x=G.from("getAllResponseHeaders"in w&&w.getAllResponseHeaders()),k={data:!u||u==="text"||u==="json"?w.responseText:w.response,status:w.status,statusText:w.statusText,headers:x,config:t,request:w};Un(function(D){n(D),A()},function(D){o(D),A()},k),w=null}"onloadend"in w?w.onloadend=B:w.onreadystatechange=function(){!w||w.readyState!==4||w.status===0&&!(w.responseURL&&w.responseURL.startsWith("file:"))||setTimeout(B)},w.onabort=function(){w&&(o(new E("Request aborted",E.ECONNABORTED,t,w)),A(),w=null)},w.onerror=function(x){const k=x&&x.message?x.message:"Network Error",D=new E(k,E.ERR_NETWORK,t,w);D.event=x||null,o(D),A(),w=null},w.ontimeout=function(){let x=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||jt;s.timeoutErrorMessage&&(x=s.timeoutErrorMessage),o(new E(x,k.clarifyTimeoutError?E.ETIMEDOUT:E.ECONNABORTED,t,w)),A(),w=null},l===void 0&&a.setContentType(null),"setRequestHeader"in w&&p.forEach(a.toJSON(),function(x,k){w.setRequestHeader(k,x)}),p.isUndefined(s.withCredentials)||(w.withCredentials=!!s.withCredentials),u&&u!=="json"&&(w.responseType=s.responseType),g&&([v,R]=ft(g,!0),w.addEventListener("progress",v)),d&&w.upload&&([c,C]=ft(d),w.upload.addEventListener("progress",c),w.upload.addEventListener("loadend",C)),(s.cancelToken||s.signal)&&(y=x=>{w&&(o(!x||x.type?new Xe(null,t,w):x),w.abort(),A(),w=null)},s.cancelToken&&s.cancelToken.subscribe(y),s.signal&&(s.signal.aborted?y():s.signal.addEventListener("abort",y)));const O=jo(s.url);if(O&&!W.protocols.includes(O)){o(new E("Unsupported protocol "+O+":",E.ERR_BAD_REQUEST,t));return}w.send(l||null)})},Xo=(t,n)=>{const{length:o}=t=t?t.filter(Boolean):[];if(n||o){let s=new AbortController,l;const a=function(y){if(!l){l=!0,d();const c=y instanceof Error?y:this.reason;s.abort(c instanceof E?c:new Xe(c instanceof Error?c.message:c))}};let u=n&&setTimeout(()=>{u=null,a(new E(`timeout of ${n}ms exceeded`,E.ETIMEDOUT))},n);const d=()=>{t&&(u&&clearTimeout(u),u=null,t.forEach(y=>{y.unsubscribe?y.unsubscribe(a):y.removeEventListener("abort",a)}),t=null)};t.forEach(y=>y.addEventListener("abort",a));const{signal:g}=s;return g.unsubscribe=()=>p.asap(d),g}},Yo=function*(t,n){let o=t.byteLength;if(o{const l=Qo(t,n);let a=0,u,d=g=>{u||(u=!0,s&&s(g))};return new ReadableStream({async pull(g){try{const{done:y,value:c}=await l.next();if(y){d(),g.close();return}let v=c.byteLength;if(o){let C=a+=v;o(C)}g.enqueue(new Uint8Array(c))}catch(y){throw d(y),y}},cancel(g){return d(g),l.return()}},{highWaterMark:2})};function ei(t){if(!t||typeof t!="string"||!t.startsWith("data:"))return 0;const n=t.indexOf(",");if(n<0)return 0;const o=t.slice(5,n),s=t.slice(n+1);if(/;base64/i.test(o)){let a=s.length;const u=s.length;for(let v=0;v=48&&C<=57||C>=65&&C<=70||C>=97&&C<=102)&&(R>=48&&R<=57||R>=65&&R<=70||R>=97&&R<=102)&&(a-=2,v+=2)}let d=0,g=u-1;const y=v=>v>=2&&s.charCodeAt(v-2)===37&&s.charCodeAt(v-1)===51&&(s.charCodeAt(v)===68||s.charCodeAt(v)===100);g>=0&&(s.charCodeAt(g)===61?(d++,g--):y(g)&&(d++,g-=3)),d===1&&g>=0&&(s.charCodeAt(g)===61||y(g))&&d++;const c=Math.floor(a/4)*3-(d||0);return c>0?c:0}if(typeof it<"u"&&typeof it.byteLength=="function")return it.byteLength(s,"utf8");let l=0;for(let a=0,u=s.length;a=55296&&d<=56319&&a+1=56320&&g<=57343?(l+=4,a++):l+=3}else l+=3}return l}const Dt="1.16.0",on=64*1024,{isFunction:rt}=p,sn=(t,...n)=>{try{return!!t(...n)}catch{return!1}},ti=t=>{const n=p.global??globalThis,{ReadableStream:o,TextEncoder:s}=n;t=p.merge.call({skipUndefined:!0},{Request:n.Request,Response:n.Response},t);const{fetch:l,Request:a,Response:u}=t,d=l?rt(l):typeof fetch=="function",g=rt(a),y=rt(u);if(!d)return!1;const c=d&&rt(o),v=d&&(typeof s=="function"?(O=>x=>O.encode(x))(new s):async O=>new Uint8Array(await new a(O).arrayBuffer())),C=g&&c&&sn(()=>{let O=!1;const x=new a(W.origin,{body:new o,method:"POST",get duplex(){return O=!0,"half"}}),k=x.headers.has("Content-Type");return x.body!=null&&x.body.cancel(),O&&!k}),R=y&&c&&sn(()=>p.isReadableStream(new u("").body)),A={stream:R&&(O=>O.body)};d&&["text","arrayBuffer","blob","formData","stream"].forEach(O=>{!A[O]&&(A[O]=(x,k)=>{let D=x&&x[O];if(D)return D.call(x);throw new E(`Response type '${O}' is not supported`,E.ERR_NOT_SUPPORT,k)})});const w=async O=>{if(O==null)return 0;if(p.isBlob(O))return O.size;if(p.isSpecCompliantForm(O))return(await new a(W.origin,{method:"POST",body:O}).arrayBuffer()).byteLength;if(p.isArrayBufferView(O)||p.isArrayBuffer(O))return O.byteLength;if(p.isURLSearchParams(O)&&(O=O+""),p.isString(O))return(await v(O)).byteLength},B=async(O,x)=>p.toFiniteNumber(O.getContentLength())??w(x);return async O=>{let{url:x,method:k,data:D,signal:wt,cancelToken:ze,timeout:bt,onDownloadProgress:re,onUploadProgress:De,responseType:oe,headers:ge,withCredentials:Te="same-origin",fetchOptions:Qe,maxContentLength:Q,maxBodyLength:Me}=In(O);const Ee=p.isNumber(Q)&&Q>-1,Ze=p.isNumber(Me)&&Me>-1;let $e=l||fetch;oe=oe?(oe+"").toLowerCase():"text";let de=Xo([wt,ze&&ze.toAbortSignal()],bt),K=null;const ye=de&&de.unsubscribe&&(()=>{de.unsubscribe()});let et;try{if(Ee&&typeof x=="string"&&x.startsWith("data:")&&ei(x)>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K);if(Ze&&k!=="get"&&k!=="head"){const N=await B(ge,D);if(typeof N=="number"&&isFinite(N)&&N>Me)throw new E("Request body larger than maxBodyLength limit",E.ERR_BAD_REQUEST,O,K)}if(De&&C&&k!=="get"&&k!=="head"&&(et=await B(ge,D))!==0){let N=new a(x,{method:"POST",body:D,duplex:"half"}),me;if(p.isFormData(D)&&(me=N.headers.get("content-type"))&&ge.setContentType(me),N.body){const[Re,ie]=en(et,ft(tn(De)));D=rn(N.body,on,Re,ie)}}p.isString(Te)||(Te=Te?"include":"omit");const H=g&&"credentials"in a.prototype;if(p.isFormData(D)){const N=ge.getContentType();N&&/^multipart\/form-data/i.test(N)&&!/boundary=/i.test(N)&&ge.delete("content-type")}ge.set("User-Agent","axios/"+Dt,!1);const U={...Qe,signal:de,method:k.toUpperCase(),headers:ge.normalize().toJSON(),body:D,duplex:"half",credentials:H?Te:void 0};K=g&&new a(x,U);let L=await(g?$e(K,Qe):$e(x,U));if(Ee){const N=p.toFiniteNumber(L.headers.get("content-length"));if(N!=null&&N>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K)}const ke=R&&(oe==="stream"||oe==="response");if(R&&L.body&&(re||Ee||ke&&ye)){const N={};["status","statusText","headers"].forEach(Ce=>{N[Ce]=L[Ce]});const me=p.toFiniteNumber(L.headers.get("content-length")),[Re,ie]=re&&en(me,ft(tn(re),!0))||[];let Ne=0;const tt=Ce=>{if(Ee&&(Ne=Ce,Ne>Q))throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K);Re&&Re(Ce)};L=new u(rn(L.body,on,tt,()=>{ie&&ie(),ye&&ye()}),N)}oe=oe||"text";let Z=await A[p.findKey(A,oe)||"text"](L,O);if(Ee&&!R&&!ke){let N;if(Z!=null&&(typeof Z.byteLength=="number"?N=Z.byteLength:typeof Z.size=="number"?N=Z.size:typeof Z=="string"&&(N=typeof s=="function"?new s().encode(Z).byteLength:Z.length)),typeof N=="number"&&N>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K)}return!ke&&ye&&ye(),await new Promise((N,me)=>{Un(N,me,{data:Z,headers:G.from(L.headers),status:L.status,statusText:L.statusText,config:O,request:K})})}catch(H){if(ye&&ye(),de&&de.aborted&&de.reason instanceof E){const U=de.reason;throw U.config=O,K&&(U.request=K),H!==U&&(U.cause=H),U}throw H&&H.name==="TypeError"&&/Load failed|fetch/i.test(H.message)?Object.assign(new E("Network Error",E.ERR_NETWORK,O,K,H&&H.response),{cause:H.cause||H}):E.from(H,H&&H.code,O,K,H&&H.response)}}},ni=new Map,Ln=t=>{let n=t&&t.env||{};const{fetch:o,Request:s,Response:l}=n,a=[s,l,o];let u=a.length,d=u,g,y,c=ni;for(;d--;)g=a[d],y=c.get(g),y===void 0&&c.set(g,y=d?new Map:ti(n)),c=y;return y};Ln();const Mt={http:Eo,xhr:Ko,fetch:{get:Ln}};p.forEach(Mt,(t,n)=>{if(t){try{Object.defineProperty(t,"name",{__proto__:null,value:n})}catch{}Object.defineProperty(t,"adapterName",{__proto__:null,value:n})}});const an=t=>`- ${t}`,ri=t=>p.isFunction(t)||t===null||t===!1;function oi(t,n){t=p.isArray(t)?t:[t];const{length:o}=t;let s,l;const a={};for(let u=0;u`adapter ${g} `+(y===!1?"is not supported by the environment":"is not available in the build"));let d=o?u.length>1?`since : +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(s=>o.set(s)),o}static accessor(t){const n=(this[Xt]=this[Xt]={accessors:{}}).accessors,o=this.prototype;function s(l){const a=He(l);n[a]||(wo(o,l),n[a]=!0)}return p.isArray(t)?t.forEach(s):s(t),this}};G.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),p.reduceDescriptors(G.prototype,({value:t},n)=>{let o=n[0].toUpperCase()+n.slice(1);return{get:()=>t,set(s){this[o]=s}}}),p.freezeMethods(G);const bo="[REDACTED ****]";function vo(t){if(p.hasOwnProp(t,"toJSON"))return!0;let n=Object.getPrototypeOf(t);for(;n&&n!==Object.prototype;){if(p.hasOwnProp(n,"toJSON"))return!0;n=Object.getPrototypeOf(n)}return!1}function _o(t,n){const o=new Set(n.map(a=>String(a).toLowerCase())),s=[],l=a=>{if(a===null||typeof a!="object"||p.isBuffer(a))return a;if(s.indexOf(a)!==-1)return;a instanceof G&&(a=a.toJSON()),s.push(a);let u;if(p.isArray(a))u=[],a.forEach((d,g)=>{const y=l(d);p.isUndefined(y)||(u[g]=y)});else{if(!p.isPlainObject(a)&&vo(a))return s.pop(),a;u=Object.create(null);for(const[d,g]of Object.entries(a)){const y=o.has(d.toLowerCase())?bo:l(g);p.isUndefined(y)||(u[d]=y)}}return s.pop(),u};return l(t)}let E=class xn extends Error{static from(n,o,s,l,a,u){const d=new xn(n.message,o||n.code,s,l,a);return d.cause=n,d.name=n.name,n.status!=null&&d.status==null&&(d.status=n.status),u&&Object.assign(d,u),d}constructor(n,o,s,l,a){super(n),Object.defineProperty(this,"message",{__proto__:null,value:n,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,o&&(this.code=o),s&&(this.config=s),l&&(this.request=l),a&&(this.response=a,this.status=a.status)}toJSON(){const n=this.config,o=n&&p.hasOwnProp(n,"redact")?n.redact:void 0,s=p.isArray(o)&&o.length>0?_o(n,o):p.toJSONObject(n);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:s,code:this.code,status:this.status}}};E.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",E.ERR_BAD_OPTION="ERR_BAD_OPTION",E.ECONNABORTED="ECONNABORTED",E.ETIMEDOUT="ETIMEDOUT",E.ECONNREFUSED="ECONNREFUSED",E.ERR_NETWORK="ERR_NETWORK",E.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",E.ERR_DEPRECATED="ERR_DEPRECATED",E.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",E.ERR_BAD_REQUEST="ERR_BAD_REQUEST",E.ERR_CANCELED="ERR_CANCELED",E.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",E.ERR_INVALID_URL="ERR_INVALID_URL",E.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Eo=null;function Nt(t){return p.isPlainObject(t)||p.isArray(t)}function An(t){return p.endsWith(t,"[]")?t.slice(0,-2):t}function Ct(t,n,o){return t?t.concat(n).map(function(s,l){return s=An(s),!o&&l?"["+s+"]":s}).join(o?".":""):n}function Ro(t){return p.isArray(t)&&!t.some(Nt)}const Co=p.toFlatObject(p,{},null,function(t){return/^is[A-Z]/.test(t)});function mt(t,n,o){if(!p.isObject(t))throw new TypeError("target must be an object");n=n||new FormData,o=p.toFlatObject(o,{metaTokens:!0,dots:!1,indexes:!1},!1,function(w,A){return!p.isUndefined(A[w])});const s=o.metaTokens,l=o.visitor||v,a=o.dots,u=o.indexes,d=o.Blob||typeof Blob<"u"&&Blob,g=o.maxDepth===void 0?100:o.maxDepth,y=d&&p.isSpecCompliantForm(n);if(!p.isFunction(l))throw new TypeError("visitor must be a function");function c(w){if(w===null)return"";if(p.isDate(w))return w.toISOString();if(p.isBoolean(w))return w.toString();if(!y&&p.isBlob(w))throw new E("Blob is not supported. Use a Buffer instead.");return p.isArrayBuffer(w)||p.isTypedArray(w)?y&&typeof Blob=="function"?new Blob([w]):it.from(w):w}function v(w,A,O){let x=w;if(p.isReactNative(n)&&p.isReactNativeBlob(w))return n.append(Ct(O,A,a),c(w)),!1;if(w&&!O&&typeof w=="object"){if(p.endsWith(A,"{}"))A=s?A:A.slice(0,-2),w=JSON.stringify(w);else if(p.isArray(w)&&Ro(w)||(p.isFileList(w)||p.endsWith(A,"[]"))&&(x=p.toArray(w)))return A=An(A),x.forEach(function(k,D){!(p.isUndefined(k)||k===null)&&n.append(u===!0?Ct([A],D,a):u===null?A:A+"[]",c(k))}),!1}return Nt(w)?!0:(n.append(Ct(O,A,a),c(w)),!1)}const C=[],R=Object.assign(Co,{defaultVisitor:v,convertValue:c,isVisitable:Nt});function B(w,A,O=0){if(!p.isUndefined(w)){if(O>g)throw new E("Object is too deeply nested ("+O+" levels). Max depth: "+g,E.ERR_FORM_DATA_DEPTH_EXCEEDED);if(C.indexOf(w)!==-1)throw Error("Circular reference detected in "+A.join("."));C.push(w),p.forEach(w,function(x,k){(!(p.isUndefined(x)||x===null)&&l.call(n,x,p.isString(k)?k.trim():k,A,R))===!0&&B(x,A?A.concat(k):[k],O+1)}),C.pop()}}if(!p.isObject(t))throw new TypeError("data must be an object");return B(t),n}function Yt(t){const n={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(t).replace(/[!'()~]|%20/g,function(o){return n[o]})}function Ft(t,n){this._pairs=[],t&&mt(t,this,n)}const Qt=Ft.prototype;Qt.append=function(t,n){this._pairs.push([t,n])},Qt.toString=function(t){const n=t?function(o){return t.call(this,o,Yt)}:Yt;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function Oo(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Tn(t,n,o){if(!n)return t;const s=o&&o.encode||Oo,l=p.isFunction(o)?{serialize:o}:o,a=l&&l.serialize;let u;if(a?u=a(n,l):u=p.isURLSearchParams(n)?n.toString():new Ft(n,l).toString(s),u){const d=t.indexOf("#");d!==-1&&(t=t.slice(0,d)),t+=(t.indexOf("?")===-1?"?":"&")+u}return t}class Zt{constructor(){this.handlers=[]}use(n,o,s){return this.handlers.push({fulfilled:n,rejected:o,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(n){this.handlers[n]&&(this.handlers[n]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(n){p.forEach(this.handlers,function(o){o!==null&&n(o)})}}const jt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},So=typeof URLSearchParams<"u"?URLSearchParams:Ft,Bo=typeof FormData<"u"?FormData:null,xo=typeof Blob<"u"?Blob:null,Ao={isBrowser:!0,classes:{URLSearchParams:So,FormData:Bo,Blob:xo},protocols:["http","https","file","blob","url","data"]},zt=typeof window<"u"&&typeof document<"u",Ut=typeof navigator=="object"&&navigator||void 0,To=zt&&(!Ut||["ReactNative","NativeScript","NS"].indexOf(Ut.product)<0),ko=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",No=zt&&window.location.href||"http://localhost",Uo=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:zt,hasStandardBrowserEnv:To,hasStandardBrowserWebWorkerEnv:ko,navigator:Ut,origin:No},Symbol.toStringTag,{value:"Module"})),W={...Uo,...Ao};function Po(t,n){return mt(t,new W.classes.URLSearchParams,{visitor:function(o,s,l,a){return W.isNode&&p.isBuffer(o)?(this.append(s,o.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)},...n})}function Io(t){return p.matchAll(/\w+|\[(\w*)]/g,t).map(n=>n[0]==="[]"?"":n[1]||n[0])}function Lo(t){const n={},o=Object.keys(t);let s;const l=o.length;let a;for(s=0;s=o.length;return u=!u&&p.isArray(l)?l.length:u,g?(p.hasOwnProp(l,u)?l[u]=p.isArray(l[u])?l[u].concat(s):[l[u],s]:l[u]=s,!d):((!l[u]||!p.isObject(l[u]))&&(l[u]=[]),n(o,s,l[u],a)&&p.isArray(l[u])&&(l[u]=Lo(l[u])),!d)}if(p.isFormData(t)&&p.isFunction(t.entries)){const o={};return p.forEachEntry(t,(s,l)=>{n(Io(s),l,o,0)}),o}return null}const Ie=(t,n)=>t!=null&&p.hasOwnProp(t,n)?t[n]:void 0;function Fo(t,n,o){if(p.isString(t))try{return(n||JSON.parse)(t),p.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(o||JSON.stringify)(t)}const Ke={transitional:jt,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",s=o.indexOf("application/json")>-1,l=p.isObject(t);if(l&&p.isHTMLForm(t)&&(t=new FormData(t)),p.isFormData(t))return s?JSON.stringify(kn(t)):t;if(p.isArrayBuffer(t)||p.isBuffer(t)||p.isStream(t)||p.isFile(t)||p.isBlob(t)||p.isReadableStream(t))return t;if(p.isArrayBufferView(t))return t.buffer;if(p.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(l){const u=Ie(this,"formSerializer");if(o.indexOf("application/x-www-form-urlencoded")>-1)return Po(t,u).toString();if((a=p.isFileList(t))||o.indexOf("multipart/form-data")>-1){const d=Ie(this,"env"),g=d&&d.FormData;return mt(a?{"files[]":t}:t,g&&new g,u)}}return l||s?(n.setContentType("application/json",!1),Fo(t)):t}],transformResponse:[function(t){const n=Ie(this,"transitional")||Ke.transitional,o=n&&n.forcedJSONParsing,s=Ie(this,"responseType"),l=s==="json";if(p.isResponse(t)||p.isReadableStream(t))return t;if(t&&p.isString(t)&&(o&&!s||l)){const a=!(n&&n.silentJSONParsing)&&l;try{return JSON.parse(t,Ie(this,"parseReviver"))}catch(u){if(a)throw u.name==="SyntaxError"?E.from(u,E.ERR_BAD_RESPONSE,this,null,Ie(this,"response")):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:W.classes.FormData,Blob:W.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};p.forEach(["delete","get","head","post","put","patch","query"],t=>{Ke.headers[t]={}});function Ot(t,n){const o=this||Ke,s=n||o,l=G.from(s.headers);let a=s.data;return p.forEach(t,function(u){a=u.call(o,a,l.normalize(),n?n.status:void 0)}),l.normalize(),a}function Nn(t){return!!(t&&t.__CANCEL__)}let Xe=class extends E{constructor(t,n,o){super(t??"canceled",E.ERR_CANCELED,n,o),this.name="CanceledError",this.__CANCEL__=!0}};function Un(t,n,o){const s=o.config.validateStatus;!o.status||!s||s(o.status)?t(o):n(new E("Request failed with status code "+o.status,o.status>=400&&o.status<500?E.ERR_BAD_REQUEST:E.ERR_BAD_RESPONSE,o.config,o.request,o))}function jo(t){const n=/^([-+\w]{1,25}):(?:\/\/)?/.exec(t);return n&&n[1]||""}function zo(t,n){t=t||10;const o=new Array(t),s=new Array(t);let l=0,a=0,u;return n=n!==void 0?n:1e3,function(d){const g=Date.now(),y=s[a];u||(u=g),o[l]=d,s[l]=g;let c=a,v=0;for(;c!==l;)v+=o[c++],c=c%t;if(l=(l+1)%t,l===a&&(a=(a+1)%t),g-u{o=g,l=null,a&&(clearTimeout(a),a=null),t(...d)};return[(...d)=>{const g=Date.now(),y=g-o;y>=s?u(d,g):(l=d,a||(a=setTimeout(()=>{a=null,u(l)},s-y)))},()=>l&&u(l)]}const ft=(t,n,o=3)=>{let s=0;const l=zo(50,250);return Do(a=>{const u=a.loaded,d=a.lengthComputable?a.total:void 0,g=d!=null?Math.min(u,d):u,y=Math.max(0,g-s),c=l(y);s=Math.max(s,g);const v={loaded:g,total:d,progress:d?g/d:void 0,bytes:y,rate:c||void 0,estimated:c&&d?(d-g)/c:void 0,event:a,lengthComputable:d!=null,[n?"download":"upload"]:!0};t(v)},o)},en=(t,n)=>{const o=t!=null;return[s=>n[0]({lengthComputable:o,total:t,loaded:s}),n[1]]},tn=t=>(...n)=>p.asap(()=>t(...n)),Mo=W.hasStandardBrowserEnv?((t,n)=>o=>(o=new URL(o,W.origin),t.protocol===o.protocol&&t.host===o.host&&(n||t.port===o.port)))(new URL(W.origin),W.navigator&&/(msie|trident)/i.test(W.navigator.userAgent)):()=>!0,$o=W.hasStandardBrowserEnv?{write(t,n,o,s,l,a,u){if(typeof document>"u")return;const d=[`${t}=${encodeURIComponent(n)}`];p.isNumber(o)&&d.push(`expires=${new Date(o).toUTCString()}`),p.isString(s)&&d.push(`path=${s}`),p.isString(l)&&d.push(`domain=${l}`),a===!0&&d.push("secure"),p.isString(u)&&d.push(`SameSite=${u}`),document.cookie=d.join("; ")},read(t){if(typeof document>"u")return null;const n=document.cookie.split(";");for(let o=0;ot instanceof G?{...t}:t;function Ae(t,n){n=n||{};const o=Object.create(null);Object.defineProperty(o,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function s(y,c,v,C){return p.isPlainObject(y)&&p.isPlainObject(c)?p.merge.call({caseless:C},y,c):p.isPlainObject(c)?p.merge({},c):p.isArray(c)?c.slice():c}function l(y,c,v,C){if(p.isUndefined(c)){if(!p.isUndefined(y))return s(void 0,y,v,C)}else return s(y,c,v,C)}function a(y,c){if(!p.isUndefined(c))return s(void 0,c)}function u(y,c){if(p.isUndefined(c)){if(!p.isUndefined(y))return s(void 0,y)}else return s(void 0,c)}function d(y,c,v){if(p.hasOwnProp(n,v))return s(y,c);if(p.hasOwnProp(t,v))return s(void 0,y)}const g={url:a,method:a,data:a,baseURL:u,transformRequest:u,transformResponse:u,paramsSerializer:u,timeout:u,timeoutMessage:u,withCredentials:u,withXSRFToken:u,adapter:u,responseType:u,xsrfCookieName:u,xsrfHeaderName:u,onUploadProgress:u,onDownloadProgress:u,decompress:u,maxContentLength:u,maxBodyLength:u,beforeRedirect:u,transport:u,httpAgent:u,httpsAgent:u,cancelToken:u,socketPath:u,allowedSocketPaths:u,responseEncoding:u,validateStatus:d,headers:(y,c,v)=>l(nn(y),nn(c),v,!0)};return p.forEach(Object.keys({...t,...n}),function(y){if(y==="__proto__"||y==="constructor"||y==="prototype")return;const c=p.hasOwnProp(g,y)?g[y]:l,v=p.hasOwnProp(t,y)?t[y]:void 0,C=p.hasOwnProp(n,y)?n[y]:void 0,R=c(v,C,y);p.isUndefined(R)&&c!==d||(o[y]=R)}),o}const Vo=["content-type","content-length"];function Wo(t,n,o){if(o!=="content-only"){t.set(n);return}Object.entries(n).forEach(([s,l])=>{Vo.includes(s.toLowerCase())&&t.set(s,l)})}const Jo=t=>encodeURIComponent(t).replace(/%([0-9A-F]{2})/gi,(n,o)=>String.fromCharCode(parseInt(o,16))),In=t=>{const n=Ae({},t),o=C=>p.hasOwnProp(n,C)?n[C]:void 0,s=o("data");let l=o("withXSRFToken");const a=o("xsrfHeaderName"),u=o("xsrfCookieName");let d=o("headers");const g=o("auth"),y=o("baseURL"),c=o("allowAbsoluteUrls"),v=o("url");if(n.headers=d=G.from(d),n.url=Tn(Pn(y,v,c),t.params,t.paramsSerializer),g&&d.set("Authorization","Basic "+btoa((g.username||"")+":"+(g.password?Jo(g.password):""))),p.isFormData(s)&&(W.hasStandardBrowserEnv||W.hasStandardBrowserWebWorkerEnv?d.setContentType(void 0):p.isFunction(s.getHeaders)&&Wo(d,s.getHeaders(),o("formDataHeaderPolicy"))),W.hasStandardBrowserEnv&&(p.isFunction(l)&&(l=l(n)),l===!0||l==null&&Mo(n.url))){const C=a&&u&&$o.read(u);C&&d.set(a,C)}return n},Go=typeof XMLHttpRequest<"u",Ko=Go&&function(t){return new Promise(function(n,o){const s=In(t);let l=s.data;const a=G.from(s.headers).normalize();let{responseType:u,onUploadProgress:d,onDownloadProgress:g}=s,y,c,v,C,R;function B(){C&&C(),R&&R(),s.cancelToken&&s.cancelToken.unsubscribe(y),s.signal&&s.signal.removeEventListener("abort",y)}let w=new XMLHttpRequest;w.open(s.method.toUpperCase(),s.url,!0),w.timeout=s.timeout;function A(){if(!w)return;const x=G.from("getAllResponseHeaders"in w&&w.getAllResponseHeaders()),k={data:!u||u==="text"||u==="json"?w.responseText:w.response,status:w.status,statusText:w.statusText,headers:x,config:t,request:w};Un(function(D){n(D),B()},function(D){o(D),B()},k),w=null}"onloadend"in w?w.onloadend=A:w.onreadystatechange=function(){!w||w.readyState!==4||w.status===0&&!(w.responseURL&&w.responseURL.startsWith("file:"))||setTimeout(A)},w.onabort=function(){w&&(o(new E("Request aborted",E.ECONNABORTED,t,w)),B(),w=null)},w.onerror=function(x){const k=x&&x.message?x.message:"Network Error",D=new E(k,E.ERR_NETWORK,t,w);D.event=x||null,o(D),B(),w=null},w.ontimeout=function(){let x=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||jt;s.timeoutErrorMessage&&(x=s.timeoutErrorMessage),o(new E(x,k.clarifyTimeoutError?E.ETIMEDOUT:E.ECONNABORTED,t,w)),B(),w=null},l===void 0&&a.setContentType(null),"setRequestHeader"in w&&p.forEach(a.toJSON(),function(x,k){w.setRequestHeader(k,x)}),p.isUndefined(s.withCredentials)||(w.withCredentials=!!s.withCredentials),u&&u!=="json"&&(w.responseType=s.responseType),g&&([v,R]=ft(g,!0),w.addEventListener("progress",v)),d&&w.upload&&([c,C]=ft(d),w.upload.addEventListener("progress",c),w.upload.addEventListener("loadend",C)),(s.cancelToken||s.signal)&&(y=x=>{w&&(o(!x||x.type?new Xe(null,t,w):x),w.abort(),B(),w=null)},s.cancelToken&&s.cancelToken.subscribe(y),s.signal&&(s.signal.aborted?y():s.signal.addEventListener("abort",y)));const O=jo(s.url);if(O&&!W.protocols.includes(O)){o(new E("Unsupported protocol "+O+":",E.ERR_BAD_REQUEST,t));return}w.send(l||null)})},Xo=(t,n)=>{const{length:o}=t=t?t.filter(Boolean):[];if(n||o){let s=new AbortController,l;const a=function(y){if(!l){l=!0,d();const c=y instanceof Error?y:this.reason;s.abort(c instanceof E?c:new Xe(c instanceof Error?c.message:c))}};let u=n&&setTimeout(()=>{u=null,a(new E(`timeout of ${n}ms exceeded`,E.ETIMEDOUT))},n);const d=()=>{t&&(u&&clearTimeout(u),u=null,t.forEach(y=>{y.unsubscribe?y.unsubscribe(a):y.removeEventListener("abort",a)}),t=null)};t.forEach(y=>y.addEventListener("abort",a));const{signal:g}=s;return g.unsubscribe=()=>p.asap(d),g}},Yo=function*(t,n){let o=t.byteLength;if(o{const l=Qo(t,n);let a=0,u,d=g=>{u||(u=!0,s&&s(g))};return new ReadableStream({async pull(g){try{const{done:y,value:c}=await l.next();if(y){d(),g.close();return}let v=c.byteLength;if(o){let C=a+=v;o(C)}g.enqueue(new Uint8Array(c))}catch(y){throw d(y),y}},cancel(g){return d(g),l.return()}},{highWaterMark:2})};function ei(t){if(!t||typeof t!="string"||!t.startsWith("data:"))return 0;const n=t.indexOf(",");if(n<0)return 0;const o=t.slice(5,n),s=t.slice(n+1);if(/;base64/i.test(o)){let a=s.length;const u=s.length;for(let v=0;v=48&&C<=57||C>=65&&C<=70||C>=97&&C<=102)&&(R>=48&&R<=57||R>=65&&R<=70||R>=97&&R<=102)&&(a-=2,v+=2)}let d=0,g=u-1;const y=v=>v>=2&&s.charCodeAt(v-2)===37&&s.charCodeAt(v-1)===51&&(s.charCodeAt(v)===68||s.charCodeAt(v)===100);g>=0&&(s.charCodeAt(g)===61?(d++,g--):y(g)&&(d++,g-=3)),d===1&&g>=0&&(s.charCodeAt(g)===61||y(g))&&d++;const c=Math.floor(a/4)*3-(d||0);return c>0?c:0}if(typeof it<"u"&&typeof it.byteLength=="function")return it.byteLength(s,"utf8");let l=0;for(let a=0,u=s.length;a=55296&&d<=56319&&a+1=56320&&g<=57343?(l+=4,a++):l+=3}else l+=3}return l}const Dt="1.16.0",on=64*1024,{isFunction:rt}=p,sn=(t,...n)=>{try{return!!t(...n)}catch{return!1}},ti=t=>{const n=p.global??globalThis,{ReadableStream:o,TextEncoder:s}=n;t=p.merge.call({skipUndefined:!0},{Request:n.Request,Response:n.Response},t);const{fetch:l,Request:a,Response:u}=t,d=l?rt(l):typeof fetch=="function",g=rt(a),y=rt(u);if(!d)return!1;const c=d&&rt(o),v=d&&(typeof s=="function"?(O=>x=>O.encode(x))(new s):async O=>new Uint8Array(await new a(O).arrayBuffer())),C=g&&c&&sn(()=>{let O=!1;const x=new a(W.origin,{body:new o,method:"POST",get duplex(){return O=!0,"half"}}),k=x.headers.has("Content-Type");return x.body!=null&&x.body.cancel(),O&&!k}),R=y&&c&&sn(()=>p.isReadableStream(new u("").body)),B={stream:R&&(O=>O.body)};d&&["text","arrayBuffer","blob","formData","stream"].forEach(O=>{!B[O]&&(B[O]=(x,k)=>{let D=x&&x[O];if(D)return D.call(x);throw new E(`Response type '${O}' is not supported`,E.ERR_NOT_SUPPORT,k)})});const w=async O=>{if(O==null)return 0;if(p.isBlob(O))return O.size;if(p.isSpecCompliantForm(O))return(await new a(W.origin,{method:"POST",body:O}).arrayBuffer()).byteLength;if(p.isArrayBufferView(O)||p.isArrayBuffer(O))return O.byteLength;if(p.isURLSearchParams(O)&&(O=O+""),p.isString(O))return(await v(O)).byteLength},A=async(O,x)=>p.toFiniteNumber(O.getContentLength())??w(x);return async O=>{let{url:x,method:k,data:D,signal:wt,cancelToken:ze,timeout:bt,onDownloadProgress:re,onUploadProgress:De,responseType:oe,headers:ge,withCredentials:Te="same-origin",fetchOptions:Qe,maxContentLength:Q,maxBodyLength:Me}=In(O);const Ee=p.isNumber(Q)&&Q>-1,Ze=p.isNumber(Me)&&Me>-1;let $e=l||fetch;oe=oe?(oe+"").toLowerCase():"text";let de=Xo([wt,ze&&ze.toAbortSignal()],bt),K=null;const ye=de&&de.unsubscribe&&(()=>{de.unsubscribe()});let et;try{if(Ee&&typeof x=="string"&&x.startsWith("data:")&&ei(x)>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K);if(Ze&&k!=="get"&&k!=="head"){const N=await A(ge,D);if(typeof N=="number"&&isFinite(N)&&N>Me)throw new E("Request body larger than maxBodyLength limit",E.ERR_BAD_REQUEST,O,K)}if(De&&C&&k!=="get"&&k!=="head"&&(et=await A(ge,D))!==0){let N=new a(x,{method:"POST",body:D,duplex:"half"}),me;if(p.isFormData(D)&&(me=N.headers.get("content-type"))&&ge.setContentType(me),N.body){const[Re,ie]=en(et,ft(tn(De)));D=rn(N.body,on,Re,ie)}}p.isString(Te)||(Te=Te?"include":"omit");const H=g&&"credentials"in a.prototype;if(p.isFormData(D)){const N=ge.getContentType();N&&/^multipart\/form-data/i.test(N)&&!/boundary=/i.test(N)&&ge.delete("content-type")}ge.set("User-Agent","axios/"+Dt,!1);const U={...Qe,signal:de,method:k.toUpperCase(),headers:ge.normalize().toJSON(),body:D,duplex:"half",credentials:H?Te:void 0};K=g&&new a(x,U);let L=await(g?$e(K,Qe):$e(x,U));if(Ee){const N=p.toFiniteNumber(L.headers.get("content-length"));if(N!=null&&N>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K)}const ke=R&&(oe==="stream"||oe==="response");if(R&&L.body&&(re||Ee||ke&&ye)){const N={};["status","statusText","headers"].forEach(Ce=>{N[Ce]=L[Ce]});const me=p.toFiniteNumber(L.headers.get("content-length")),[Re,ie]=re&&en(me,ft(tn(re),!0))||[];let Ne=0;const tt=Ce=>{if(Ee&&(Ne=Ce,Ne>Q))throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K);Re&&Re(Ce)};L=new u(rn(L.body,on,tt,()=>{ie&&ie(),ye&&ye()}),N)}oe=oe||"text";let Z=await B[p.findKey(B,oe)||"text"](L,O);if(Ee&&!R&&!ke){let N;if(Z!=null&&(typeof Z.byteLength=="number"?N=Z.byteLength:typeof Z.size=="number"?N=Z.size:typeof Z=="string"&&(N=typeof s=="function"?new s().encode(Z).byteLength:Z.length)),typeof N=="number"&&N>Q)throw new E("maxContentLength size of "+Q+" exceeded",E.ERR_BAD_RESPONSE,O,K)}return!ke&&ye&&ye(),await new Promise((N,me)=>{Un(N,me,{data:Z,headers:G.from(L.headers),status:L.status,statusText:L.statusText,config:O,request:K})})}catch(H){if(ye&&ye(),de&&de.aborted&&de.reason instanceof E){const U=de.reason;throw U.config=O,K&&(U.request=K),H!==U&&(U.cause=H),U}throw H&&H.name==="TypeError"&&/Load failed|fetch/i.test(H.message)?Object.assign(new E("Network Error",E.ERR_NETWORK,O,K,H&&H.response),{cause:H.cause||H}):E.from(H,H&&H.code,O,K,H&&H.response)}}},ni=new Map,Ln=t=>{let n=t&&t.env||{};const{fetch:o,Request:s,Response:l}=n,a=[s,l,o];let u=a.length,d=u,g,y,c=ni;for(;d--;)g=a[d],y=c.get(g),y===void 0&&c.set(g,y=d?new Map:ti(n)),c=y;return y};Ln();const Mt={http:Eo,xhr:Ko,fetch:{get:Ln}};p.forEach(Mt,(t,n)=>{if(t){try{Object.defineProperty(t,"name",{__proto__:null,value:n})}catch{}Object.defineProperty(t,"adapterName",{__proto__:null,value:n})}});const an=t=>`- ${t}`,ri=t=>p.isFunction(t)||t===null||t===!1;function oi(t,n){t=p.isArray(t)?t:[t];const{length:o}=t;let s,l;const a={};for(let u=0;u`adapter ${g} `+(y===!1?"is not supported by the environment":"is not available in the build"));let d=o?u.length>1?`since : `+u.map(an).join(` `):" "+an(u[0]):"as no adapter specified";throw new E("There is no suitable adapter to dispatch the request "+d,"ERR_NOT_SUPPORT")}return l}const Fn={getAdapter:oi,adapters:Mt};function St(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Xe(null,t)}function ln(t){return St(t),t.headers=G.from(t.headers),t.data=Ot.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Fn.getAdapter(t.adapter||Ke.adapter,t)(t).then(function(n){St(t),t.response=n;try{n.data=Ot.call(t,t.transformResponse,n)}finally{delete t.response}return n.headers=G.from(n.headers),n},function(n){if(!Nn(n)&&(St(t),n&&n.response)){t.response=n.response;try{n.response.data=Ot.call(t,t.transformResponse,n.response)}finally{delete t.response}n.response.headers=G.from(n.response.headers)}return Promise.reject(n)})}const dt={};["object","boolean","number","function","string","symbol"].forEach((t,n)=>{dt[t]=function(o){return typeof o===t||"a"+(n<1?"n ":" ")+t}});const un={};dt.transitional=function(t,n,o){function s(l,a){return"[Axios v"+Dt+"] Transitional option '"+l+"'"+a+(o?". "+o:"")}return(l,a,u)=>{if(t===!1)throw new E(s(a," has been removed"+(n?" in "+n:"")),E.ERR_DEPRECATED);return n&&!un[a]&&(un[a]=!0,console.warn(s(a," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(l,a,u):!0}},dt.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function ii(t,n,o){if(typeof t!="object")throw new E("options must be an object",E.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let l=s.length;for(;l-- >0;){const a=s[l],u=Object.prototype.hasOwnProperty.call(n,a)?n[a]:void 0;if(u){const d=t[a],g=d===void 0||u(d,a,t);if(g!==!0)throw new E("option "+a+" must be "+g,E.ERR_BAD_OPTION_VALUE);continue}if(o!==!0)throw new E("Unknown option "+a,E.ERR_BAD_OPTION)}}const lt={assertOptions:ii,validators:dt},ee=lt.validators;let xe=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Zt,response:new Zt}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const l=(()=>{if(!s.stack)return"";const a=s.stack.indexOf(` `);return a===-1?"":s.stack.slice(a+1)})();try{if(!o.stack)o.stack=l;else if(l){const a=l.indexOf(` `),u=a===-1?-1:l.indexOf(` `,a+1),d=u===-1?"":l.slice(u+1);String(o.stack).endsWith(d)||(o.stack+=` -`+l)}}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Be(this.defaults,n);const{transitional:o,paramsSerializer:s,headers:l}=n;o!==void 0&<.assertOptions(o,{silentJSONParsing:ee.transitional(ee.boolean),forcedJSONParsing:ee.transitional(ee.boolean),clarifyTimeoutError:ee.transitional(ee.boolean),legacyInterceptorReqResOrdering:ee.transitional(ee.boolean)},!1),s!=null&&(p.isFunction(s)?n.paramsSerializer={serialize:s}:lt.assertOptions(s,{encode:ee.function,serialize:ee.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),lt.assertOptions(n,{baseUrl:ee.spelling("baseURL"),withXsrfToken:ee.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=l&&p.merge(l.common,l[n.method]);l&&p.forEach(["delete","get","head","post","put","patch","query","common"],R=>{delete l[R]}),n.headers=G.concat(a,l);const u=[];let d=!0;this.interceptors.request.forEach(function(R){if(typeof R.runWhen=="function"&&R.runWhen(n)===!1)return;d=d&&R.synchronous;const A=n.transitional||jt;A&&A.legacyInterceptorReqResOrdering?u.unshift(R.fulfilled,R.rejected):u.push(R.fulfilled,R.rejected)});const g=[];this.interceptors.response.forEach(function(R){g.push(R.fulfilled,R.rejected)});let y,c=0,v;if(!d){const R=[ln.bind(this),void 0];for(R.unshift(...u),R.push(...g),v=R.length,y=Promise.resolve(n);c{if(!s._listeners)return;let a=s._listeners.length;for(;a-- >0;)s._listeners[a](l);s._listeners=null}),this.promise.then=l=>{let a;const u=new Promise(d=>{s.subscribe(d),a=d}).then(l);return u.cancel=function(){s.unsubscribe(a)},u},n(function(l,a,u){s.reason||(s.reason=new Xe(l,a,u),o(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(n){if(this.reason){n(this.reason);return}this._listeners?this._listeners.push(n):this._listeners=[n]}unsubscribe(n){if(!this._listeners)return;const o=this._listeners.indexOf(n);o!==-1&&this._listeners.splice(o,1)}toAbortSignal(){const n=new AbortController,o=s=>{n.abort(s)};return this.subscribe(o),n.signal.unsubscribe=()=>this.unsubscribe(o),n.signal}static source(){let n;return{token:new jn(function(o){n=o}),cancel:n}}};function ai(t){return function(n){return t.apply(null,n)}}function li(t){return p.isObject(t)&&t.isAxiosError===!0}const Pt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Pt).forEach(([t,n])=>{Pt[n]=t});function zn(t){const n=new xe(t),o=vn(xe.prototype.request,n);return p.extend(o,xe.prototype,n,{allOwnKeys:!0}),p.extend(o,n,null,{allOwnKeys:!0}),o.create=function(s){return zn(Be(t,s))},o}const M=zn(Ke);M.Axios=xe,M.CanceledError=Xe,M.CancelToken=si,M.isCancel=Nn,M.VERSION=Dt,M.toFormData=mt,M.AxiosError=E,M.Cancel=M.CanceledError,M.all=function(t){return Promise.all(t)},M.spread=ai,M.isAxiosError=li,M.mergeConfig=Be,M.AxiosHeaders=G,M.formToJSON=t=>kn(p.isHTMLForm(t)?new FormData(t):t),M.getAdapter=Fn.getAdapter,M.HttpStatusCode=Pt,M.default=M;const{Axios:Us,AxiosError:Ps,CanceledError:Is,isCancel:Ls,CancelToken:Fs,VERSION:js,all:zs,Cancel:Ds,isAxiosError:$t,spread:Ms,toFormData:$s,AxiosHeaders:qs,HttpStatusCode:Hs,formToJSON:Vs,getAdapter:Ws,mergeConfig:Js,create:Gs}=M;function ui(){const t=M.create({headers:{requesttoken:Wn()??"","X-Requested-With":"XMLHttpRequest"}});return Jn(n=>{t.defaults.headers.requesttoken=n}),Object.assign(t,{CancelToken:M.CancelToken,isCancel:M.isCancel})}const cn="_nextcloudCsrfTokenReloaded";function ci(t){return async n=>{if(!$t(n))throw n;const{config:o,response:s,request:l}=n,a=l?.responseURL;if(o&&!(cn in o)&&s?.status===412&&s?.data?.message==="CSRF check failed"){console.warn(`Request to ${a} failed because of a CSRF mismatch. Fetching a new token.`);const u=await Gn();return t.defaults.headers.requesttoken=u,t({...o,[cn]:!0,headers:{...o.headers,requesttoken:u}})}throw n}}const fn="_nextcloudMaintenanceModeRetryDelay";function fi(t){return async n=>{if(!$t(n))throw n;const{config:o,response:s,request:l}=n,a=l?.responseURL,u=s?.status,d=s?.headers;let g=o?.[fn]??1;if(u===503&&d?.["x-nextcloud-maintenance-mode"]==="1"&&o?.retryIfMaintenanceMode){if(g*=2,g>32)throw console.error("Retry delay exceeded one minute, giving up.",{responseURL:a}),n;return console.warn(`Request to ${a} failed because of maintenance mode. Retrying in ${g}s`),await new Promise(y=>{setTimeout(y,g*1e3)}),t({...o,[fn]:g})}throw n}}async function di(t){if($t(t)){const{config:n,response:o,request:s}=t,l=s?.responseURL;o?.status===401&&o?.data?.message==="Current user is not logged in"&&n?.reloadExpiredSession&&globalThis.location?.reload&&(console.error(`Request to ${l} failed because the user session expired. Reloading the page …`),globalThis.OC?.reload?globalThis.OC.reload():globalThis.location.reload())}throw t}const Le=ui();Le.interceptors.response.use(t=>t,ci(Le)),Le.interceptors.response.use(t=>t,fi(Le)),Le.interceptors.response.use(t=>t,di);const hi=["poster"],pi=["src"],gi=["src"],yi=ce({__name:"IntroAnimation",emits:["next"],setup(t,{emit:n}){const o=n,s=Oe("firstrunwizard","nextcloudHub.mp4"),l=Oe("firstrunwizard","nextcloudHub.webm"),a=Oe("firstrunwizard","nextcloudHub-preload.webp"),u=Oe("firstrunwizard","nextcloudHub.webp"),d=S("firstrunwizard","Welcome to {cloudName}!",{cloudName:window.OC.theme.name}),g=Kn("video"),y=Ae(!1),c=Ae(!1),v=Ae(!1),C=ae(()=>y.value||c.value?u:a);Xn(()=>{y.value="getAutoplayPolicy"in navigator&&navigator.getAutoplayPolicy(g.value)==="disallowed",window.setTimeout(()=>{window.setTimeout(()=>{v.value=!0},1200),(!c.value||y.value)&&window.setTimeout(R,1200),c.value||(c.value=!0)},800)});function R(){o("next")}return(A,w)=>(I(),ne("div",{class:T(A.$style.introAnimation)},[J("video",{ref:"video",class:T(A.$style.introAnimation__video),playsinline:"",autoplay:"",muted:"",poster:C.value,onEnded:R,onPlay:w[0]||(w[0]=B=>c.value=!0)},[J("source",{src:_(l),type:"video/webm"},null,8,pi),J("source",{src:_(s),type:"video/mp4"},null,8,gi),ut(" "+ue(_(d)),1)],42,hi),v.value?(I(),X(_(Ve),{key:0,class:T(A.$style.introAnimation__skipButton),alignment:"end-reverse",variant:"primary",onClick:R},{icon:$(()=>[j(_(we),{directional:"",path:_(Yn)},null,8,["path"])]),default:$(()=>[ut(" "+ue(_(S)("firstrunwizard","Skip")),1)]),_:1},8,["class"])):ve("",!0)],2))}}),mi="_introAnimation_zkowx_2",wi="_introAnimation__video_zkowx_6",bi="_introAnimation__skipButton_zkowx_13",vi={introAnimation:mi,introAnimation__video:wi,introAnimation__skipButton:bi},_i={$style:vi},Ei=_e(yi,[["__cssModules",_i]]),Ri=ce({__name:"SlideShow",props:Wt({pages:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:Wt(["close"],["update:modelValue"]),setup(t,{emit:n}){pn(A=>({a475b540:y}));const o=Qn(t,"modelValue"),s=t,l=n,a=Ae(!1),u=ae(()=>s.pages[o.value]),d=ae(()=>o.value===0),g=ae(()=>o.value===s.pages.length-1),y=`url('${Oe("firstrunwizard","nextcloudLogo.svg")}')`,c=Zn("transitions"),v=ae(()=>{const A=a.value?"right":"left";return{active:c["slide-active"],enter:c[`slide-${A}-enter`],leave:c[`slide-${A}-leave-to`]}}),C=ae(()=>{const A=a.value?"down":"up";return{active:c["slide-active"],enter:c[`slide-${A}-enter`],leave:c[`slide-${A}-leave-to`]}});er(()=>o.value,(A,w)=>{AB.id===A);o.value=w}return(A,w)=>(I(),ne("div",{class:T(A.$style.wrapper)},[j(Vt,{enterClass:C.value.enter,enterActiveClass:C.value.active,leaveActiveClass:C.value.active,leaveToClass:C.value.leave},{default:$(()=>[d.value?(I(),ne("div",{key:0,class:T(A.$style.background_circle)},null,2)):ve("",!0)]),_:1},8,["enterClass","enterActiveClass","leaveActiveClass","leaveToClass"]),J("div",{class:T(A.$style.background_bar)},null,2),d.value?ve("",!0):(I(),X(_(Ve),{key:0,"aria-label":_(S)("firstrunwizard","Go to previous page"),class:T(A.$style.button_back),variant:"tertiary-no-background",onClick:w[0]||(w[0]=B=>o.value-=1)},{icon:$(()=>[j(_(we),{path:_(tr)},null,8,["path"])]),_:1},8,["aria-label","class"])),j(_(Ve),{"aria-label":_(S)("firstrunwizard","Close"),class:T(A.$style.button_close),variant:d.value?"tertiary-on-primary":"tertiary-no-background",onClick:w[1]||(w[1]=B=>A.$emit("close"))},{icon:$(()=>[j(_(we),{path:_(nr)},null,8,["path"])]),_:1},8,["aria-label","class","variant"]),d.value?(I(),ne("div",{key:1,class:T(A.$style.logo)},null,2)):ve("",!0),j(Vt,{mode:"out-in",enterClass:v.value.enter,enterActiveClass:v.value.active,leaveActiveClass:v.value.active,leaveToClass:v.value.leave},{default:$(()=>[(I(),X(gn(u.value.component),{scrollerClasses:d.value?A.$style.first_page_scroller:""},null,8,["scrollerClasses"]))]),_:1},8,["enterClass","enterActiveClass","leaveActiveClass","leaveToClass"]),J("div",{class:T(A.$style.button_wrapper)},[(I(!0),ne(It,null,Lt(u.value.buttons,(B,O)=>(I(),X(_(Ve),{key:B.to,alignment:"center-reverse",variant:O===u.value.buttons.length-1?"primary":"secondary",wide:O===u.value.buttons.length-1,onClick:x=>R(B.to)},rr({default:$(()=>[ut(" "+ue(B.label),1)]),_:2},[g.value?void 0:{name:"icon",fn:$(()=>[j(_(we),{path:_(or)},null,8,["path"])]),key:"0"}]),1032,["variant","wide","onClick"]))),128))],2)],2))}}),Ci="_wrapper_i3lgq_1",Oi="_background_circle_i3lgq_12",Si="_background_bar_i3lgq_22",Ai="_button_back_i3lgq_31",xi="_button_close_i3lgq_37",Bi="_button_wrapper_i3lgq_43",Ti="_logo_i3lgq_56",ki="_first_page_scroller_i3lgq_69",Ni={wrapper:Ci,background_circle:Oi,background_bar:Si,button_back:Ai,button_close:xi,button_wrapper:Bi,logo:Ti,first_page_scroller:ki},Ui={"slide-active":"_slide-active_8t7o1_5","slide-left-enter":"_slide-left-enter_8t7o1_9","slide-left-leave-to":"_slide-left-leave-to_8t7o1_14","slide-right-enter":"_slide-right-enter_8t7o1_19","slide-right-leave-to":"_slide-right-leave-to_8t7o1_24","slide-up-enter":"_slide-up-enter_8t7o1_29","slide-up-leave-to":"_slide-up-leave-to_8t7o1_33","slide-down-enter":"_slide-down-enter_8t7o1_37","slide-down-leave-to":"_slide-down-leave-to_8t7o1_41"},Pi={$style:Ni,transitions:Ui},Ii=_e(Ri,[["__cssModules",Pi]]),Li=["textContent"],Fi=ce({__name:"InfoCard",props:{title:{},subtitle:{},href:{}},setup(t){const n=t,o=ae(()=>!!n.href);return(s,l)=>(I(),X(gn(o.value?"a":"div"),{href:t.href||void 0,class:T([s.$style.card,{[s.$style.link]:o.value}]),target:o.value?"_blank":void 0,rel:o.value?"noreferrer":void 0},{default:$(()=>[J("div",{class:T(s.$style.icon)},[yn(s.$slots,"default")],2),J("div",{class:T(s.$style.text)},[J("h3",{class:T(s.$style.heading)},ue(t.title),3),t.subtitle!==void 0?(I(),ne("p",{key:0,textContent:ue(t.subtitle)},null,8,Li)):ve("",!0)],2)]),_:3},8,["href","class","target","rel"]))}}),ji="_card_14cr6_1",zi="_icon_14cr6_9",Di="_heading_14cr6_18",Mi="_link_14cr6_24",$i="_text_14cr6_34",qi={card:ji,icon:zi,heading:Di,link:Mi,text:$i},Hi={$style:qi},le=_e(Fi,[["__cssModules",Hi]]),Vi=ce({__name:"WizardPage",props:{title:{},subtitle:{},scrollerClasses:{}},setup(t){return(n,o)=>(I(),ne("div",{class:T(n.$style.wrapper)},[J("div",{class:T([n.$style.scroller,t.scrollerClasses])},[J("h2",{class:T(n.$style.heading)},ue(t.title),3),t.subtitle?(I(),ne("p",{key:0,class:T(n.$style.subtitle)},ue(t.subtitle),3)):ve("",!0),J("div",{class:T(n.$style.content)},[yn(n.$slots,"default")],2)],2)],2))}}),Wi="_wrapper_1b76s_2",Ji="_scroller_1b76s_9",Gi="_heading_1b76s_14",Ki="_subtitle_1b76s_20",Xi="_content_1b76s_26",Yi={wrapper:Wi,scroller:Ji,heading:Gi,subtitle:Ki,content:Xi},Qi={$style:Yi},Ye=_e(Vi,[["__cssModules",Qi]]),Zi=ce({__name:"AboutNextcloud",setup(t){return(n,o)=>(I(),X(Ye,{title:_(S)("firstrunwizard","More about Nextcloud")},{default:$(()=>[j(le,{href:"https://apps.nextcloud.com/",title:_(S)("firstrunwizard","Explore more apps β†—"),subtitle:_(S)("firstrunwizard","Extend the functionality of Nextcloud with hundreds of community-developed apps.")},null,8,["title","subtitle"]),j(le,{href:"https://nextcloud.com/contribute/",title:_(S)("firstrunwizard","Get involved! β†—"),subtitle:_(S)("firstrunwizard","Be a part of the community that helps build, design, translate and promote Nextcloud!")},null,8,["title","subtitle"]),j(le,{href:"https://docs.nextcloud.com/",title:_(S)("firstrunwizard","Need help? β†—"),subtitle:_(S)("firstrunwizard","Find out more about your Nextcloud setup with the admin, user or developer documentation.")},null,8,["title","subtitle"]),j(le,{href:"https://nextcloud.com/enterprise/",title:_(S)("firstrunwizard","For large organisations β†—"),subtitle:_(S)("firstrunwizard","Get Nextcloud Enterprise for mission critical environments where advanced security and compliance are important.")},null,8,["title","subtitle"])]),_:1},8,["title"]))}}),es=["aria-label","href"],ts=ce({__name:"AppStoreBadge",props:{type:{}},setup(t){pn(g=>({v6ca826ea:a.value}));const n=t,o=ct("firstrunwizard","android"),s=ct("firstrunwizard","ios"),l=ae(()=>{if(n.type==="ios")return Oe("firstrunwizard","iosBadge.png");if(n.type==="android")return Oe("firstrunwizard","androidBadge.png")}),a=ae(()=>`url('${l.value}')`),u=ae(()=>{if(n.type==="ios")return s;if(n.type==="android")return o}),d=ae(()=>{if(n.type==="ios")return S("firstrunwizard","Download on Apple app store");if(n.type==="android")return S("firstrunwizard","Download on Google play store")});return(g,y)=>(I(),ne("a",{class:T(g.$style.badge),"aria-label":d.value,target:"_blank",rel:"noreferrer",href:u.value},null,10,es))}}),ns="_badge_1lvp9_1",rs={badge:ns},os={$style:rs},dn=_e(ts,[["__cssModules",os]]),is=ce({__name:"DeviceIntegration",setup(t){const n=ct("firstrunwizard","desktop"),o=mn("settings/user/sync-clients");return(s,l)=>(I(),X(Ye,{title:_(S)("firstrunwizard","Seamless integration with your devices."),subtitle:_(S)("firstrunwizard","Sync your files across your devices with the desktop and mobile apps, and connect your calendar and contacts.")},{default:$(()=>[j(dn,{type:"android"}),j(dn,{type:"ios"}),j(le,{href:_(n),title:_(S)("firstrunwizard","Desktop app β†—"),subtitle:_(S)("firstrunwizard","Download For Windows, Mac OS and Linux.")},null,8,["href","title","subtitle"]),j(le,{href:_(o),title:_(S)("firstrunwizard","Calendar and contacts β†—"),subtitle:_(S)("firstrunwizard","Connect your calendar and contacts with your devices.")},null,8,["href","title","subtitle"])]),_:1},8,["title","subtitle"]))}}),ss=ce({__name:"KeyNotes",props:{scrollerClasses:{}},setup(t){const n=S("firstrunwizard","This Nextcloud is on version {version}",{version:window.OC.config.versionstring});return(o,s)=>(I(),X(Ye,{scrollerClasses:t.scrollerClasses,title:_(S)("firstrunwizard","A collaboration platform that puts you in control")},{default:$(()=>[j(le,{title:_(S)("firstrunwizard","Privacy"),subtitle:_(S)("firstrunwizard","Host your data and files where you decide.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(ir)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Productivity"),subtitle:_(S)("firstrunwizard","Collaborate and communicate across any platform.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(sr)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Interoperability"),subtitle:_(S)("firstrunwizard","Import and export anything you want with open standards.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(ar)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Community"),subtitle:_(S)("firstrunwizard","Enjoy constant improvements from a thriving open-source community.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(lr)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),J("p",{class:T(o.$style.version)},ue(_(n)),3)]),_:1},8,["scrollerClasses","title"]))}}),as="_icon_rdl0k_2",ls="_version_rdl0k_6",us={icon:as,version:ls},cs={$style:us},fs=_e(ss,[["__cssModules",cs]]),ds=` +`+l)}}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Ae(this.defaults,n);const{transitional:o,paramsSerializer:s,headers:l}=n;o!==void 0&<.assertOptions(o,{silentJSONParsing:ee.transitional(ee.boolean),forcedJSONParsing:ee.transitional(ee.boolean),clarifyTimeoutError:ee.transitional(ee.boolean),legacyInterceptorReqResOrdering:ee.transitional(ee.boolean)},!1),s!=null&&(p.isFunction(s)?n.paramsSerializer={serialize:s}:lt.assertOptions(s,{encode:ee.function,serialize:ee.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),lt.assertOptions(n,{baseUrl:ee.spelling("baseURL"),withXsrfToken:ee.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=l&&p.merge(l.common,l[n.method]);l&&p.forEach(["delete","get","head","post","put","patch","query","common"],R=>{delete l[R]}),n.headers=G.concat(a,l);const u=[];let d=!0;this.interceptors.request.forEach(function(R){if(typeof R.runWhen=="function"&&R.runWhen(n)===!1)return;d=d&&R.synchronous;const B=n.transitional||jt;B&&B.legacyInterceptorReqResOrdering?u.unshift(R.fulfilled,R.rejected):u.push(R.fulfilled,R.rejected)});const g=[];this.interceptors.response.forEach(function(R){g.push(R.fulfilled,R.rejected)});let y,c=0,v;if(!d){const R=[ln.bind(this),void 0];for(R.unshift(...u),R.push(...g),v=R.length,y=Promise.resolve(n);c{if(!s._listeners)return;let a=s._listeners.length;for(;a-- >0;)s._listeners[a](l);s._listeners=null}),this.promise.then=l=>{let a;const u=new Promise(d=>{s.subscribe(d),a=d}).then(l);return u.cancel=function(){s.unsubscribe(a)},u},n(function(l,a,u){s.reason||(s.reason=new Xe(l,a,u),o(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(n){if(this.reason){n(this.reason);return}this._listeners?this._listeners.push(n):this._listeners=[n]}unsubscribe(n){if(!this._listeners)return;const o=this._listeners.indexOf(n);o!==-1&&this._listeners.splice(o,1)}toAbortSignal(){const n=new AbortController,o=s=>{n.abort(s)};return this.subscribe(o),n.signal.unsubscribe=()=>this.unsubscribe(o),n.signal}static source(){let n;return{token:new jn(function(o){n=o}),cancel:n}}};function ai(t){return function(n){return t.apply(null,n)}}function li(t){return p.isObject(t)&&t.isAxiosError===!0}const Pt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Pt).forEach(([t,n])=>{Pt[n]=t});function zn(t){const n=new xe(t),o=vn(xe.prototype.request,n);return p.extend(o,xe.prototype,n,{allOwnKeys:!0}),p.extend(o,n,null,{allOwnKeys:!0}),o.create=function(s){return zn(Ae(t,s))},o}const M=zn(Ke);M.Axios=xe,M.CanceledError=Xe,M.CancelToken=si,M.isCancel=Nn,M.VERSION=Dt,M.toFormData=mt,M.AxiosError=E,M.Cancel=M.CanceledError,M.all=function(t){return Promise.all(t)},M.spread=ai,M.isAxiosError=li,M.mergeConfig=Ae,M.AxiosHeaders=G,M.formToJSON=t=>kn(p.isHTMLForm(t)?new FormData(t):t),M.getAdapter=Fn.getAdapter,M.HttpStatusCode=Pt,M.default=M;const{Axios:Us,AxiosError:Ps,CanceledError:Is,isCancel:Ls,CancelToken:Fs,VERSION:js,all:zs,Cancel:Ds,isAxiosError:$t,spread:Ms,toFormData:$s,AxiosHeaders:qs,HttpStatusCode:Hs,formToJSON:Vs,getAdapter:Ws,mergeConfig:Js,create:Gs}=M;function ui(){const t=M.create({headers:{requesttoken:Wn()??"","X-Requested-With":"XMLHttpRequest"}});return Jn(n=>{t.defaults.headers.requesttoken=n}),Object.assign(t,{CancelToken:M.CancelToken,isCancel:M.isCancel})}const cn="_nextcloudCsrfTokenReloaded";function ci(t){return async n=>{if(!$t(n))throw n;const{config:o,response:s,request:l}=n,a=l?.responseURL;if(o&&!(cn in o)&&s?.status===412&&s?.data?.message==="CSRF check failed"){console.warn(`Request to ${a} failed because of a CSRF mismatch. Fetching a new token.`);const u=await Gn();return t.defaults.headers.requesttoken=u,t({...o,[cn]:!0,headers:{...o.headers,requesttoken:u}})}throw n}}const fn="_nextcloudMaintenanceModeRetryDelay";function fi(t){return async n=>{if(!$t(n))throw n;const{config:o,response:s,request:l}=n,a=l?.responseURL,u=s?.status,d=s?.headers;let g=o?.[fn]??1;if(u===503&&d?.["x-nextcloud-maintenance-mode"]==="1"&&o?.retryIfMaintenanceMode){if(g*=2,g>32)throw console.error("Retry delay exceeded one minute, giving up.",{responseURL:a}),n;return console.warn(`Request to ${a} failed because of maintenance mode. Retrying in ${g}s`),await new Promise(y=>{setTimeout(y,g*1e3)}),t({...o,[fn]:g})}throw n}}async function di(t){if($t(t)){const{config:n,response:o,request:s}=t,l=s?.responseURL;o?.status===401&&o?.data?.message==="Current user is not logged in"&&n?.reloadExpiredSession&&globalThis.location?.reload&&(console.error(`Request to ${l} failed because the user session expired. Reloading the page …`),globalThis.OC?.reload?globalThis.OC.reload():globalThis.location.reload())}throw t}const Le=ui();Le.interceptors.response.use(t=>t,ci(Le)),Le.interceptors.response.use(t=>t,fi(Le)),Le.interceptors.response.use(t=>t,di);const hi=["poster"],pi=["src"],gi=["src"],yi=ce({__name:"IntroAnimation",emits:["next"],setup(t,{emit:n}){const o=n,s=Oe("firstrunwizard","nextcloudHub.mp4"),l=Oe("firstrunwizard","nextcloudHub.webm"),a=Oe("firstrunwizard","nextcloudHub-preload.webp"),u=Oe("firstrunwizard","nextcloudHub.webp"),d=S("firstrunwizard","Welcome to {cloudName}!",{cloudName:window.OC.theme.name}),g=Kn("video"),y=Be(!1),c=Be(!1),v=Be(!1),C=ae(()=>y.value||c.value?u:a);Xn(()=>{y.value="getAutoplayPolicy"in navigator&&navigator.getAutoplayPolicy(g.value)==="disallowed",window.setTimeout(()=>{window.setTimeout(()=>{v.value=!0},1200),(!c.value||y.value)&&window.setTimeout(R,1200),c.value||(c.value=!0)},800)});function R(){o("next")}return(B,w)=>(I(),ne("div",{class:T(B.$style.introAnimation)},[J("video",{ref:"video",class:T(B.$style.introAnimation__video),playsinline:"",autoplay:"",muted:"",poster:C.value,onEnded:R,onPlay:w[0]||(w[0]=A=>c.value=!0)},[J("source",{src:_(l),type:"video/webm"},null,8,pi),J("source",{src:_(s),type:"video/mp4"},null,8,gi),ut(" "+ue(_(d)),1)],42,hi),v.value?(I(),X(_(Ve),{key:0,class:T(B.$style.introAnimation__skipButton),alignment:"end-reverse",variant:"primary",onClick:R},{icon:$(()=>[j(_(we),{directional:"",path:_(Yn)},null,8,["path"])]),default:$(()=>[ut(" "+ue(_(S)("firstrunwizard","Skip")),1)]),_:1},8,["class"])):ve("",!0)],2))}}),mi="_introAnimation_zkowx_2",wi="_introAnimation__video_zkowx_6",bi="_introAnimation__skipButton_zkowx_13",vi={introAnimation:mi,introAnimation__video:wi,introAnimation__skipButton:bi},_i={$style:vi},Ei=_e(yi,[["__cssModules",_i]]),Ri=ce({__name:"SlideShow",props:Wt({pages:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:Wt(["close"],["update:modelValue"]),setup(t,{emit:n}){pn(B=>({a475b540:y}));const o=Qn(t,"modelValue"),s=t,l=n,a=Be(!1),u=ae(()=>s.pages[o.value]),d=ae(()=>o.value===0),g=ae(()=>o.value===s.pages.length-1),y=`url('${Oe("firstrunwizard","nextcloudLogo.svg")}')`,c=Zn("transitions"),v=ae(()=>{const B=a.value?"right":"left";return{active:c["slide-active"],enter:c[`slide-${B}-enter`],leave:c[`slide-${B}-leave-to`]}}),C=ae(()=>{const B=a.value?"down":"up";return{active:c["slide-active"],enter:c[`slide-${B}-enter`],leave:c[`slide-${B}-leave-to`]}});er(()=>o.value,(B,w)=>{BA.id===B);o.value=w}return(B,w)=>(I(),ne("div",{class:T(B.$style.wrapper)},[j(Vt,{enterClass:C.value.enter,enterActiveClass:C.value.active,leaveActiveClass:C.value.active,leaveToClass:C.value.leave},{default:$(()=>[d.value?(I(),ne("div",{key:0,class:T(B.$style.background_circle)},null,2)):ve("",!0)]),_:1},8,["enterClass","enterActiveClass","leaveActiveClass","leaveToClass"]),J("div",{class:T(B.$style.background_bar)},null,2),d.value?ve("",!0):(I(),X(_(Ve),{key:0,"aria-label":_(S)("firstrunwizard","Go to previous page"),class:T(B.$style.button_back),variant:"tertiary-no-background",onClick:w[0]||(w[0]=A=>o.value-=1)},{icon:$(()=>[j(_(we),{path:_(tr)},null,8,["path"])]),_:1},8,["aria-label","class"])),j(_(Ve),{"aria-label":_(S)("firstrunwizard","Close"),class:T(B.$style.button_close),variant:d.value?"tertiary-on-primary":"tertiary-no-background",onClick:w[1]||(w[1]=A=>B.$emit("close"))},{icon:$(()=>[j(_(we),{path:_(nr)},null,8,["path"])]),_:1},8,["aria-label","class","variant"]),d.value?(I(),ne("div",{key:1,class:T(B.$style.logo)},null,2)):ve("",!0),j(Vt,{mode:"out-in",enterClass:v.value.enter,enterActiveClass:v.value.active,leaveActiveClass:v.value.active,leaveToClass:v.value.leave},{default:$(()=>[(I(),X(gn(u.value.component),{scrollerClasses:d.value?B.$style.first_page_scroller:""},null,8,["scrollerClasses"]))]),_:1},8,["enterClass","enterActiveClass","leaveActiveClass","leaveToClass"]),J("div",{class:T(B.$style.button_wrapper)},[(I(!0),ne(It,null,Lt(u.value.buttons,(A,O)=>(I(),X(_(Ve),{key:A.to,alignment:"center-reverse",variant:O===u.value.buttons.length-1?"primary":"secondary",wide:O===u.value.buttons.length-1,onClick:x=>R(A.to)},rr({default:$(()=>[ut(" "+ue(A.label),1)]),_:2},[g.value?void 0:{name:"icon",fn:$(()=>[j(_(we),{path:_(or)},null,8,["path"])]),key:"0"}]),1032,["variant","wide","onClick"]))),128))],2)],2))}}),Ci="_wrapper_i3lgq_1",Oi="_background_circle_i3lgq_12",Si="_background_bar_i3lgq_22",Bi="_button_back_i3lgq_31",xi="_button_close_i3lgq_37",Ai="_button_wrapper_i3lgq_43",Ti="_logo_i3lgq_56",ki="_first_page_scroller_i3lgq_69",Ni={wrapper:Ci,background_circle:Oi,background_bar:Si,button_back:Bi,button_close:xi,button_wrapper:Ai,logo:Ti,first_page_scroller:ki},Ui={"slide-active":"_slide-active_8t7o1_5","slide-left-enter":"_slide-left-enter_8t7o1_9","slide-left-leave-to":"_slide-left-leave-to_8t7o1_14","slide-right-enter":"_slide-right-enter_8t7o1_19","slide-right-leave-to":"_slide-right-leave-to_8t7o1_24","slide-up-enter":"_slide-up-enter_8t7o1_29","slide-up-leave-to":"_slide-up-leave-to_8t7o1_33","slide-down-enter":"_slide-down-enter_8t7o1_37","slide-down-leave-to":"_slide-down-leave-to_8t7o1_41"},Pi={$style:Ni,transitions:Ui},Ii=_e(Ri,[["__cssModules",Pi]]),Li=["textContent"],Fi=ce({__name:"InfoCard",props:{title:{},subtitle:{},href:{}},setup(t){const n=t,o=ae(()=>!!n.href);return(s,l)=>(I(),X(gn(o.value?"a":"div"),{href:t.href||void 0,class:T([s.$style.card,{[s.$style.link]:o.value}]),target:o.value?"_blank":void 0,rel:o.value?"noreferrer":void 0},{default:$(()=>[J("div",{class:T(s.$style.icon)},[yn(s.$slots,"default")],2),J("div",{class:T(s.$style.text)},[J("h3",{class:T(s.$style.heading)},ue(t.title),3),t.subtitle!==void 0?(I(),ne("p",{key:0,textContent:ue(t.subtitle)},null,8,Li)):ve("",!0)],2)]),_:3},8,["href","class","target","rel"]))}}),ji="_card_14cr6_1",zi="_icon_14cr6_9",Di="_heading_14cr6_18",Mi="_link_14cr6_24",$i="_text_14cr6_34",qi={card:ji,icon:zi,heading:Di,link:Mi,text:$i},Hi={$style:qi},le=_e(Fi,[["__cssModules",Hi]]),Vi=ce({__name:"WizardPage",props:{title:{},subtitle:{},scrollerClasses:{}},setup(t){return(n,o)=>(I(),ne("div",{class:T(n.$style.wrapper)},[J("div",{class:T([n.$style.scroller,t.scrollerClasses])},[J("h2",{class:T(n.$style.heading)},ue(t.title),3),t.subtitle?(I(),ne("p",{key:0,class:T(n.$style.subtitle)},ue(t.subtitle),3)):ve("",!0),J("div",{class:T(n.$style.content)},[yn(n.$slots,"default")],2)],2)],2))}}),Wi="_wrapper_1b76s_2",Ji="_scroller_1b76s_9",Gi="_heading_1b76s_14",Ki="_subtitle_1b76s_20",Xi="_content_1b76s_26",Yi={wrapper:Wi,scroller:Ji,heading:Gi,subtitle:Ki,content:Xi},Qi={$style:Yi},Ye=_e(Vi,[["__cssModules",Qi]]),Zi=ce({__name:"AboutNextcloud",setup(t){return(n,o)=>(I(),X(Ye,{title:_(S)("firstrunwizard","More about Nextcloud")},{default:$(()=>[j(le,{href:"https://apps.nextcloud.com/",title:_(S)("firstrunwizard","Explore more apps β†—"),subtitle:_(S)("firstrunwizard","Extend the functionality of Nextcloud with hundreds of community-developed apps.")},null,8,["title","subtitle"]),j(le,{href:"https://nextcloud.com/contribute/",title:_(S)("firstrunwizard","Get involved! β†—"),subtitle:_(S)("firstrunwizard","Be a part of the community that helps build, design, translate and promote Nextcloud!")},null,8,["title","subtitle"]),j(le,{href:"https://docs.nextcloud.com/",title:_(S)("firstrunwizard","Need help? β†—"),subtitle:_(S)("firstrunwizard","Find out more about your Nextcloud setup with the admin, user or developer documentation.")},null,8,["title","subtitle"]),j(le,{href:"https://nextcloud.com/enterprise/",title:_(S)("firstrunwizard","For large organisations β†—"),subtitle:_(S)("firstrunwizard","Get Nextcloud Enterprise for mission critical environments where advanced security and compliance are important.")},null,8,["title","subtitle"])]),_:1},8,["title"]))}}),es=["aria-label","href"],ts=ce({__name:"AppStoreBadge",props:{type:{}},setup(t){pn(g=>({v6ca826ea:a.value}));const n=t,o=ct("firstrunwizard","android"),s=ct("firstrunwizard","ios"),l=ae(()=>{if(n.type==="ios")return Oe("firstrunwizard","iosBadge.png");if(n.type==="android")return Oe("firstrunwizard","androidBadge.png")}),a=ae(()=>`url('${l.value}')`),u=ae(()=>{if(n.type==="ios")return s;if(n.type==="android")return o}),d=ae(()=>{if(n.type==="ios")return S("firstrunwizard","Download on Apple app store");if(n.type==="android")return S("firstrunwizard","Download on Google play store")});return(g,y)=>(I(),ne("a",{class:T(g.$style.badge),"aria-label":d.value,target:"_blank",rel:"noreferrer",href:u.value},null,10,es))}}),ns="_badge_1lvp9_1",rs={badge:ns},os={$style:rs},dn=_e(ts,[["__cssModules",os]]),is=ce({__name:"DeviceIntegration",setup(t){const n=ct("firstrunwizard","desktop"),o=mn("settings/user/sync-clients");return(s,l)=>(I(),X(Ye,{title:_(S)("firstrunwizard","Seamless integration with your devices."),subtitle:_(S)("firstrunwizard","Sync your files across your devices with the desktop and mobile apps, and connect your calendar and contacts.")},{default:$(()=>[j(dn,{type:"android"}),j(dn,{type:"ios"}),j(le,{href:_(n),title:_(S)("firstrunwizard","Desktop app β†—"),subtitle:_(S)("firstrunwizard","Download For Windows, Mac OS and Linux.")},null,8,["href","title","subtitle"]),j(le,{href:_(o),title:_(S)("firstrunwizard","Calendar and contacts β†—"),subtitle:_(S)("firstrunwizard","Connect your calendar and contacts with your devices.")},null,8,["href","title","subtitle"])]),_:1},8,["title","subtitle"]))}}),ss=ce({__name:"KeyNotes",props:{scrollerClasses:{}},setup(t){const n=S("firstrunwizard","This Nextcloud is on version {version}",{version:window.OC.config.versionstring});return(o,s)=>(I(),X(Ye,{scrollerClasses:t.scrollerClasses,title:_(S)("firstrunwizard","A collaboration platform that puts you in control")},{default:$(()=>[j(le,{title:_(S)("firstrunwizard","Privacy"),subtitle:_(S)("firstrunwizard","Host your data and files where you decide.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(ir)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Productivity"),subtitle:_(S)("firstrunwizard","Collaborate and communicate across any platform.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(sr)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Interoperability"),subtitle:_(S)("firstrunwizard","Import and export anything you want with open standards.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(ar)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),j(le,{title:_(S)("firstrunwizard","Community"),subtitle:_(S)("firstrunwizard","Enjoy constant improvements from a thriving open-source community.")},{default:$(()=>[j(_(we),{class:T(o.$style.icon),inline:"",path:_(lr)},null,8,["class","path"])]),_:1},8,["title","subtitle"]),J("p",{class:T(o.$style.version)},ue(_(n)),3)]),_:1},8,["scrollerClasses","title"]))}}),as="_icon_rdl0k_2",ls="_version_rdl0k_6",us={icon:as,version:ls},cs={$style:us},fs=_e(ss,[["__cssModules",cs]]),ds=` `,hs='',ps='',gs=` -`,se={version:"26 Winter",link:"https://nextcloud.com/blog/nextcloud-hub26-winter/",releaseNotes:["🌐 "+S("firstrunwizard","Growing sovereignty: new federation features, improved data export and import"),"πŸ’¬Β "+S("firstrunwizard","Nextcloud Talk: live translations, pinned messages, scheduling"),"πŸ”ŽΒ "+S("firstrunwizard","Office document comparison"),"πŸ§‘β€πŸŽ¨Β "+S("firstrunwizard","Whiteboard: comments, reactions, timers"),"✨ "+S("firstrunwizard","Nextcloud Assistant performance upgrade and AI labeling"),"πŸ”Β "+S("firstrunwizard","Powerful E2EE in the web interface"),"πŸ’ͺΒ "+S("firstrunwizard","Speed-up with ADA engine"),S("firstrunwizard","… and many more improvements in all apps!"),S("firstrunwizard","Experience the brand new Nextcloud Hub!")],videoAltText:S("firstrunwizard","Get to know the new features of Hub {version}",{version:"26 Winter"}),shareSubject:S("firstrunwizard","Time to own your collaboration: Meet Nextcloud Hub 26 Winter! πŸš€")},ys=ce({__name:"SharePage",setup(t){const n=encodeURIComponent(encodeURI(se.link)),o=encodeURIComponent(se.shareSubject??S("firstrunwizard","Nextcloud Hub {version} release",{version:se.version})),s=encodeURIComponent(S("firstrunwizard","Read more about it on the Nextcloud Hub {version} blog",{version:se.version})+` -`+se.link),l=[{id:"bluesky",name:"Bluesky",link:`https://bsky.app/intent/compose?text=${n}`,icon:ds},{id:"facebook",name:"Facebook",link:`https://www.facebook.com/sharer/sharer.php?u=${n}`,icon:hs},{id:"linkedin",name:"LinkedIn",link:`https://www.linkedin.com/sharing/share-offsite/?url=${n}`,icon:ps},{id:"mastodon",name:"Mastodon",link:`https://mastodon.social/share?text=${n}`,icon:gs},{id:"email",name:"EMail",link:`mailto:?subject=${o}&body=${s}`,icon:ur}];return(a,u)=>(I(),X(Ye,{title:_(S)("firstrunwizard","Find out more on the blog")},{default:$(()=>[j(_(Ve),{href:_(se).link,target:"_blank"},{default:$(()=>[ut(ue(_(S)("firstrunwizard","Read the Nextcloud Hub {version} blog",{version:_(se).version}))+" β†— ",1)]),_:1},8,["href"]),J("section",{class:T(a.$style.share_section)},[J("h3",{class:T(a.$style.heading)},ue(_(S)("firstrunwizard","Share your opinion about Nextcloud Hub {version}",{version:_(se).version})),3),J("div",{class:T(a.$style.share_wrapper)},[(I(),ne(It,null,Lt(l,d=>j(le,{key:d.id,class:T(a.$style.card),href:d.link,title:d.id==="email"?_(S)("firstrunwizard","Share via email"):_(S)("firstrunwizard","Share on {socialMedia}",{socialMedia:d.name})},{default:$(()=>[d.icon?(I(),X(_(we),{key:0,svg:d.id!=="email"?d.icon:void 0,path:d.id==="email"?d.icon:void 0},null,8,["svg","path"])):ve("",!0)]),_:2},1032,["class","href","title"])),64))],2)],2)]),_:1},8,["title"]))}}),ms="_share_section_1krl5_2",ws="_share_wrapper_1krl5_6",bs="_card_1krl5_15",vs="_heading_1krl5_23",_s={share_section:ms,share_wrapper:ws,card:bs,heading:vs},Es={$style:_s},Rs=_e(ys,[["__cssModules",Es]]),Cs=ce({__name:"WhatsNew",setup(t){return(n,o)=>(I(),X(Ye,{title:_(S)("firstrunwizard","New in Nextcloud Hub {version}",{version:_(se).version})+" πŸš€"},{default:$(()=>[J("ul",{class:T(n.$style.list)},[(I(!0),ne(It,null,Lt(_(se).releaseNotes,(s,l)=>(I(),ne("li",{key:l,class:T(n.$style.entry)},ue(s),3))),128))],2)]),_:1},8,["title"]))}}),Os="_list_lk7o9_2",Ss="_entry_lk7o9_6",As={list:Os,entry:Ss},xs={$style:As},Bs=_e(Cs,[["__cssModules",xs]]),hn=[{id:"key-aspects",component:fs,buttons:[{to:"whats-new",label:S("firstrunwizard","What's new?")},{to:"devices",label:S("firstrunwizard","Nextcloud on all your devices")}]},{id:"devices",component:is,buttons:[{to:"about",label:S("firstrunwizard","More about Nextcloud")}]},{id:"about",component:Zi,buttons:[{to:"whats-new",label:S("firstrunwizard","Nextcloud Hub {version}",{version:se.version})}]},{id:"whats-new",component:Bs,buttons:[{to:"share",label:S("firstrunwizard","Share on social media")}]},{id:"share",component:Rs,buttons:[{to:"close",label:S("firstrunwizard","Get started!")}]}],Ts=ce({__name:"App",setup(t,{expose:n}){n({open:g,close:y});const o=fr(),s=ct("firstrunwizard","changelogOnly",!1),l=Math.max(hn.findIndex(c=>c.id==="whats-new"),0),a=Ae(!1),u=Ae(-1),d=Ae();function g(c){d.value=c,u.value=-1,a.value=!0}function y(){u.value=-1,a.value=!1,Le.delete(mn("/apps/firstrunwizard/wizard"))}return(c,v)=>a.value?(I(),X(_(cr),{key:0,id:"firstrunwizard",class:"first-run-wizard",size:"normal",noClose:"",dark:!_(o),setReturnFocus:d.value,onClose:y,onNext:v[2]||(v[2]=C=>u.value+=1),onPrevious:v[3]||(v[3]=C=>u.value-=1)},{default:$(()=>[u.value===-1?(I(),X(Ei,{key:0,onNext:v[0]||(v[0]=C=>u.value=_(s)?_(l):0)})):(I(),X(Ii,{key:1,modelValue:u.value,"onUpdate:modelValue":v[1]||(v[1]=C=>u.value=C),pages:_(hn),onClose:y},null,8,["modelValue","pages"]))]),_:1},8,["dark","setReturnFocus"])):ve("",!0)}});let At;function Ks(t){if(At===void 0){const n=document.createElement("div");n.id="firstrunwizard",document.querySelector("body").appendChild(n),At=dr(Ts).mount(n)}At.open(t)}export{Ks as open}; -//# sourceMappingURL=main-CBBO6vSg.chunk.mjs.map +`,se={version:"26 Spring",link:"https://nextcloud.com/blog/nextcloud-hub26-spring/",releaseNotes:["πŸ’«"+S("firstrunwizard","Refined design, optimized performance"),"πŸ’ͺ"+S("firstrunwizard","Empowering developers with an open platform"),"✏️"+S("firstrunwizard","Your choice: Nextcloud Office powered by Collabora or Euro-Office"),"πŸ’Œ"+S("firstrunwizard","Delegate calendars, meetings and mail boxes for better collaboration"),"πŸ“ˆ"+S("firstrunwizard","Gantt charts, dependencies & more in Nextcloud Deck"),"🧠"+S("firstrunwizard","More agency: let the Assistant work for you across files, emails, forms, and more"),"🧩"+S("firstrunwizard","Pexip, Matrix, and more updates in integrations"),S("firstrunwizard","… and many more improvements in all apps!"),S("firstrunwizard","Experience the brand new Nextcloud Hub!")],videoAltText:S("firstrunwizard","Get to know the new features of Hub {version}",{version:"26 Spring"}),shareSubject:S("firstrunwizard","Time to own your collaboration: Meet Nextcloud Hub 26 Spring! πŸš€")},ys=ce({__name:"SharePage",setup(t){const n=encodeURIComponent(encodeURI(se.link)),o=encodeURIComponent(se.shareSubject??S("firstrunwizard","Nextcloud Hub {version} release",{version:se.version})),s=encodeURIComponent(S("firstrunwizard","Read more about it on the Nextcloud Hub {version} blog",{version:se.version})+` +`+se.link),l=[{id:"bluesky",name:"Bluesky",link:`https://bsky.app/intent/compose?text=${n}`,icon:ds},{id:"facebook",name:"Facebook",link:`https://www.facebook.com/sharer/sharer.php?u=${n}`,icon:hs},{id:"linkedin",name:"LinkedIn",link:`https://www.linkedin.com/sharing/share-offsite/?url=${n}`,icon:ps},{id:"mastodon",name:"Mastodon",link:`https://mastodon.social/share?text=${n}`,icon:gs},{id:"email",name:"EMail",link:`mailto:?subject=${o}&body=${s}`,icon:ur}];return(a,u)=>(I(),X(Ye,{title:_(S)("firstrunwizard","Find out more on the blog")},{default:$(()=>[j(_(Ve),{href:_(se).link,target:"_blank"},{default:$(()=>[ut(ue(_(S)("firstrunwizard","Read the Nextcloud Hub {version} blog",{version:_(se).version}))+" β†— ",1)]),_:1},8,["href"]),J("section",{class:T(a.$style.share_section)},[J("h3",{class:T(a.$style.heading)},ue(_(S)("firstrunwizard","Share your opinion about Nextcloud Hub {version}",{version:_(se).version})),3),J("div",{class:T(a.$style.share_wrapper)},[(I(),ne(It,null,Lt(l,d=>j(le,{key:d.id,class:T(a.$style.card),href:d.link,title:d.id==="email"?_(S)("firstrunwizard","Share via email"):_(S)("firstrunwizard","Share on {socialMedia}",{socialMedia:d.name})},{default:$(()=>[d.icon?(I(),X(_(we),{key:0,svg:d.id!=="email"?d.icon:void 0,path:d.id==="email"?d.icon:void 0},null,8,["svg","path"])):ve("",!0)]),_:2},1032,["class","href","title"])),64))],2)],2)]),_:1},8,["title"]))}}),ms="_share_section_1krl5_2",ws="_share_wrapper_1krl5_6",bs="_card_1krl5_15",vs="_heading_1krl5_23",_s={share_section:ms,share_wrapper:ws,card:bs,heading:vs},Es={$style:_s},Rs=_e(ys,[["__cssModules",Es]]),Cs=ce({__name:"WhatsNew",setup(t){return(n,o)=>(I(),X(Ye,{title:_(S)("firstrunwizard","New in Nextcloud Hub {version}",{version:_(se).version})+" πŸš€"},{default:$(()=>[J("ul",{class:T(n.$style.list)},[(I(!0),ne(It,null,Lt(_(se).releaseNotes,(s,l)=>(I(),ne("li",{key:l,class:T(n.$style.entry)},ue(s),3))),128))],2)]),_:1},8,["title"]))}}),Os="_list_lk7o9_2",Ss="_entry_lk7o9_6",Bs={list:Os,entry:Ss},xs={$style:Bs},As=_e(Cs,[["__cssModules",xs]]),hn=[{id:"key-aspects",component:fs,buttons:[{to:"whats-new",label:S("firstrunwizard","What's new?")},{to:"devices",label:S("firstrunwizard","Nextcloud on all your devices")}]},{id:"devices",component:is,buttons:[{to:"about",label:S("firstrunwizard","More about Nextcloud")}]},{id:"about",component:Zi,buttons:[{to:"whats-new",label:S("firstrunwizard","Nextcloud Hub {version}",{version:se.version})}]},{id:"whats-new",component:As,buttons:[{to:"share",label:S("firstrunwizard","Share on social media")}]},{id:"share",component:Rs,buttons:[{to:"close",label:S("firstrunwizard","Get started!")}]}],Ts=ce({__name:"App",setup(t,{expose:n}){n({open:g,close:y});const o=fr(),s=ct("firstrunwizard","changelogOnly",!1),l=Math.max(hn.findIndex(c=>c.id==="whats-new"),0),a=Be(!1),u=Be(-1),d=Be();function g(c){d.value=c,u.value=-1,a.value=!0}function y(){u.value=-1,a.value=!1,Le.delete(mn("/apps/firstrunwizard/wizard"))}return(c,v)=>a.value?(I(),X(_(cr),{key:0,id:"firstrunwizard",class:"first-run-wizard",size:"normal",noClose:"",dark:!_(o),setReturnFocus:d.value,onClose:y,onNext:v[2]||(v[2]=C=>u.value+=1),onPrevious:v[3]||(v[3]=C=>u.value-=1)},{default:$(()=>[u.value===-1?(I(),X(Ei,{key:0,onNext:v[0]||(v[0]=C=>u.value=_(s)?_(l):0)})):(I(),X(Ii,{key:1,modelValue:u.value,"onUpdate:modelValue":v[1]||(v[1]=C=>u.value=C),pages:_(hn),onClose:y},null,8,["modelValue","pages"]))]),_:1},8,["dark","setReturnFocus"])):ve("",!0)}});let Bt;function Ks(t){if(Bt===void 0){const n=document.createElement("div");n.id="firstrunwizard",document.querySelector("body").appendChild(n),Bt=dr(Ts).mount(n)}Bt.open(t)}export{Ks as open}; +//# sourceMappingURL=main-B_iVdpQp.chunk.mjs.map diff --git a/js/main-CBBO6vSg.chunk.mjs.license b/js/main-B_iVdpQp.chunk.mjs.license similarity index 100% rename from js/main-CBBO6vSg.chunk.mjs.license rename to js/main-B_iVdpQp.chunk.mjs.license diff --git a/js/main-CBBO6vSg.chunk.mjs.map b/js/main-B_iVdpQp.chunk.mjs.map similarity index 65% rename from js/main-CBBO6vSg.chunk.mjs.map rename to js/main-B_iVdpQp.chunk.mjs.map index b5bbcf5fe..2cc972a3d 100644 --- a/js/main-CBBO6vSg.chunk.mjs.map +++ b/js/main-B_iVdpQp.chunk.mjs.map @@ -1 +1 @@ -{"version":3,"file":"main-CBBO6vSg.chunk.mjs","sources":["../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/helpers/throttle.js","../node_modules/axios/lib/helpers/progressEventReducer.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/helpers/resolveConfig.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/helpers/composeSignals.js","../node_modules/axios/lib/helpers/trackStream.js","../node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/adapters/fetch.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/index.js","../node_modules/@nextcloud/axios/dist/client.js","../node_modules/@nextcloud/axios/dist/interceptors/csrf-token.js","../node_modules/@nextcloud/axios/dist/interceptors/maintenance-mode.js","../node_modules/@nextcloud/axios/dist/interceptors/not-logged-in.js","../node_modules/@nextcloud/axios/dist/index.js","../src/components/pages/IntroAnimation.vue","../src/components/SlideShow.vue","../src/components/InfoCard.vue","../src/components/WizardPage.vue","../src/components/pages/AboutNextcloud.vue","../src/components/AppStoreBadge.vue","../src/components/pages/DeviceIntegration.vue","../src/components/pages/KeyNotes.vue","../img/bluesky.svg?raw","../img/facebook.svg?raw","../img/linkedin.svg?raw","../img/mastodon.svg?raw","../src/hub-release.ts","../src/components/pages/SharePage.vue","../src/components/pages/WhatsNew.vue","../src/pages.ts","../src/views/App.vue","../src/main.ts"],"sourcesContent":["var buffer = {};\n\nvar base64Js = {};\n\nbase64Js.byteLength = byteLength;\nbase64Js.toByteArray = toByteArray;\nbase64Js.fromByteArray = fromByteArray;\n\nvar lookup = [];\nvar revLookup = [];\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array;\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i];\n revLookup[code.charCodeAt(i)] = i;\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62;\nrevLookup['_'.charCodeAt(0)] = 63;\n\nfunction getLens (b64) {\n var len = b64.length;\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=');\n if (validLen === -1) validLen = len;\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4);\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp;\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n\n var curByte = 0;\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen;\n\n var i;\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)];\n arr[curByte++] = (tmp >> 16) & 0xFF;\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4);\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2);\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp;\n var output = [];\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF);\n output.push(tripletToBase64(tmp));\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp;\n var len = uint8.length;\n var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes\n var parts = [];\n var maxChunkLength = 16383; // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)));\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1];\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n );\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n );\n }\n\n return parts.join('')\n}\n\nvar ieee754 = {};\n\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\n\nieee754.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = -7;\n var i = isLE ? (nBytes - 1) : 0;\n var d = isLE ? -1 : 1;\n var s = buffer[offset + i];\n\n i += d;\n\n e = s & ((1 << (-nBits)) - 1);\n s >>= (-nBits);\n nBits += eLen;\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1);\n e >>= (-nBits);\n nBits += mLen;\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen);\n e = e - eBias;\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n};\n\nieee754.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0);\n var i = isLE ? 0 : (nBytes - 1);\n var d = isLE ? 1 : -1;\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\n\n value = Math.abs(value);\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0;\n e = eMax;\n } else {\n e = Math.floor(Math.log(value) / Math.LN2);\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * Math.pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n e = 0;\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m;\n eLen += mLen;\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128;\n};\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n(function (exports) {\n\n\tconst base64 = base64Js;\n\tconst ieee754$1 = ieee754;\n\tconst customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n\t ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tconst K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\tconst { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t const arr = new GlobalUint8Array(1);\n\t const proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, GlobalUint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t const buf = new GlobalUint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (GlobalArrayBuffer.isView(value)) {\n\t return fromArrayView(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, GlobalArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof GlobalSharedArrayBuffer !== 'undefined' &&\n\t (isInstance(value, GlobalSharedArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalSharedArrayBuffer)))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t const valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t const b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, GlobalUint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, GlobalUint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpreted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t const length = byteLength(string, encoding) | 0;\n\t let buf = createBuffer(length);\n\n\t const actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t const length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t const buf = createBuffer(length);\n\t for (let i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayView (arrayView) {\n\t if (isInstance(arrayView, GlobalUint8Array)) {\n\t const copy = new GlobalUint8Array(arrayView);\n\t return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n\t }\n\t return fromArrayLike(arrayView)\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t let buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new GlobalUint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new GlobalUint8Array(array, byteOffset);\n\t } else {\n\t buf = new GlobalUint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t const len = checked(obj.length) | 0;\n\t const buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, GlobalUint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, GlobalUint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t let x = a.length;\n\t let y = b.length;\n\n\t for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t let i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t const buffer = Buffer.allocUnsafe(length);\n\t let pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t let buf = list[i];\n\t if (isInstance(buf, GlobalUint8Array)) {\n\t if (pos + buf.length > buffer.length) {\n\t if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf);\n\t buf.copy(buffer, pos);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t buffer,\n\t buf,\n\t pos\n\t );\n\t }\n\t } else if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t } else {\n\t buf.copy(buffer, pos);\n\t }\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t const len = string.length;\n\t const mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t let loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t const i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t const len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (let i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t const len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (let i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t const len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (let i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t const length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t let str = '';\n\t const max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return ''\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, GlobalUint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t let x = thisEnd - thisStart;\n\t let y = end - start;\n\t const len = Math.min(x, y);\n\n\t const thisCopy = this.slice(thisStart, thisEnd);\n\t const targetCopy = target.slice(start, end);\n\n\t for (let i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof GlobalUint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return GlobalUint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return GlobalUint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t let indexSize = 1;\n\t let arrLength = arr.length;\n\t let valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t let i;\n\t if (dir) {\n\t let foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t let found = true;\n\t for (let j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t const remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t const strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t const parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t const remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t const res = [];\n\n\t let i = start;\n\t while (i < end) {\n\t const firstByte = buf[i];\n\t let codePoint = null;\n\t let bytesPerSequence = (firstByte > 0xEF)\n\t ? 4\n\t : (firstByte > 0xDF)\n\t ? 3\n\t : (firstByte > 0xBF)\n\t ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t let secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tconst MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t const len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t let res = '';\n\t let i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t const len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t let out = '';\n\t for (let i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t const bytes = buf.slice(start, end);\n\t let res = '';\n\t // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n\t for (let i = 0; i < bytes.length - 1; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t const len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t const newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUintLE =\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUintBE =\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t let val = this[offset + --byteLength];\n\t let mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUint8 =\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUint16LE =\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUint16BE =\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUint32LE =\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUint32BE =\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const lo = first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24;\n\n\t const hi = this[++offset] +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t last * 2 ** 24;\n\n\t return BigInt(lo) + (BigInt(hi) << BigInt(32))\n\t});\n\n\tBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const hi = first * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t const lo = this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last;\n\n\t return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n\t});\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let i = byteLength;\n\t let mul = 1;\n\t let val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = this[offset + 4] +\n\t this[offset + 5] * 2 ** 8 +\n\t this[offset + 6] * 2 ** 16 +\n\t (last << 24); // Overflow\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24)\n\t});\n\n\tBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = (first << 24) + // Overflow\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last)\n\t});\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUintLE =\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let mul = 1;\n\t let i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUintBE =\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUint8 =\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUint16LE =\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint16BE =\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint32LE =\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUint32BE =\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t return offset\n\t}\n\n\tfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset + 7] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 6] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 5] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 4] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset + 3] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 2] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 1] = hi;\n\t hi = hi >> 8;\n\t buf[offset] = hi;\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = 0;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t const len = end - start;\n\n\t if (this === target && typeof GlobalUint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t const code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t let i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t const bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t const len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// CUSTOM ERRORS\n\t// =============\n\n\t// Simplified versions from Node, changed for Buffer-only usage\n\tconst errors = {};\n\tfunction E (sym, getMessage, Base) {\n\t errors[sym] = class NodeError extends Base {\n\t constructor () {\n\t super();\n\n\t Object.defineProperty(this, 'message', {\n\t value: getMessage.apply(this, arguments),\n\t writable: true,\n\t configurable: true\n\t });\n\n\t // Add the error code to the name to include it in the stack trace.\n\t this.name = `${this.name} [${sym}]`;\n\t // Access the stack to generate the error message including the error code\n\t // from the name.\n\t this.stack; // eslint-disable-line no-unused-expressions\n\t // Reset the name to the actual name.\n\t delete this.name;\n\t }\n\n\t get code () {\n\t return sym\n\t }\n\n\t set code (value) {\n\t Object.defineProperty(this, 'code', {\n\t configurable: true,\n\t enumerable: true,\n\t value,\n\t writable: true\n\t });\n\t }\n\n\t toString () {\n\t return `${this.name} [${sym}]: ${this.message}`\n\t }\n\t };\n\t}\n\n\tE('ERR_BUFFER_OUT_OF_BOUNDS',\n\t function (name) {\n\t if (name) {\n\t return `${name} is outside of buffer bounds`\n\t }\n\n\t return 'Attempt to access memory outside buffer bounds'\n\t }, RangeError);\n\tE('ERR_INVALID_ARG_TYPE',\n\t function (name, actual) {\n\t return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n\t }, TypeError);\n\tE('ERR_OUT_OF_RANGE',\n\t function (str, range, input) {\n\t let msg = `The value of \"${str}\" is out of range.`;\n\t let received = input;\n\t if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n\t received = addNumericalSeparator(String(input));\n\t } else if (typeof input === 'bigint') {\n\t received = String(input);\n\t if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n\t received = addNumericalSeparator(received);\n\t }\n\t received += 'n';\n\t }\n\t msg += ` It must be ${range}. Received ${received}`;\n\t return msg\n\t }, RangeError);\n\n\tfunction addNumericalSeparator (val) {\n\t let res = '';\n\t let i = val.length;\n\t const start = val[0] === '-' ? 1 : 0;\n\t for (; i >= start + 4; i -= 3) {\n\t res = `_${val.slice(i - 3, i)}${res}`;\n\t }\n\t return `${val.slice(0, i)}${res}`\n\t}\n\n\t// CHECK FUNCTIONS\n\t// ===============\n\n\tfunction checkBounds (buf, offset, byteLength) {\n\t validateNumber(offset, 'offset');\n\t if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n\t boundsError(offset, buf.length - (byteLength + 1));\n\t }\n\t}\n\n\tfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n\t if (value > max || value < min) {\n\t const n = typeof min === 'bigint' ? 'n' : '';\n\t let range;\n\t if (byteLength > 3) {\n\t if (min === 0 || min === BigInt(0)) {\n\t range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`;\n\t } else {\n\t range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n\t `${(byteLength + 1) * 8 - 1}${n}`;\n\t }\n\t } else {\n\t range = `>= ${min}${n} and <= ${max}${n}`;\n\t }\n\t throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n\t }\n\t checkBounds(buf, offset, byteLength);\n\t}\n\n\tfunction validateNumber (value, name) {\n\t if (typeof value !== 'number') {\n\t throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n\t }\n\t}\n\n\tfunction boundsError (value, length, type) {\n\t if (Math.floor(value) !== value) {\n\t validateNumber(value, type);\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n\t }\n\n\t if (length < 0) {\n\t throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n\t }\n\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n\t `>= ${type ? 1 : 0} and <= ${length}`,\n\t value)\n\t}\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t let codePoint;\n\t const length = string.length;\n\t let leadSurrogate = null;\n\t const bytes = [];\n\n\t for (let i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t let c, hi, lo;\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tconst hexSliceLookupTable = (function () {\n\t const alphabet = '0123456789abcdef';\n\t const table = new Array(256);\n\t for (let i = 0; i < 16; ++i) {\n\t const i16 = i * 16;\n\t for (let j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t// Return not function with Error if BigInt not supported\n\tfunction defineBigIntMethod (fn) {\n\t return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n\t}\n\n\tfunction BufferBigIntNotDefined () {\n\t throw new Error('BigInt not supported')\n\t} \n} (buffer));\n\nconst Buffer = buffer.Buffer;\n\nconst Blob = buffer.Blob;\nconst BlobOptions = buffer.BlobOptions;\nconst Buffer$1 = buffer.Buffer;\nconst File = buffer.File;\nconst FileOptions = buffer.FileOptions;\nconst INSPECT_MAX_BYTES = buffer.INSPECT_MAX_BYTES;\nconst SlowBuffer = buffer.SlowBuffer;\nconst TranscodeEncoding = buffer.TranscodeEncoding;\nconst atob = buffer.atob;\nconst btoa = buffer.btoa;\nconst constants = buffer.constants;\nconst isAscii = buffer.isAscii;\nconst isUtf8 = buffer.isUtf8;\nconst kMaxLength = buffer.kMaxLength;\nconst kStringMaxLength = buffer.kStringMaxLength;\nconst resolveObjectURL = buffer.resolveObjectURL;\nconst transcode = buffer.transcode;\nexport { Blob, BlobOptions, Buffer$1 as Buffer, File, FileOptions, INSPECT_MAX_BYTES, SlowBuffer, TranscodeEncoding, atob, btoa, constants, Buffer as default, isAscii, isUtf8, kMaxLength, kStringMaxLength, resolveObjectURL, transcode };\n//# sourceMappingURL=index.js.map\n","'use strict';\n\n/**\n * Create a bound version of a function with a specified `this` context\n *\n * @param {Function} fn - The function to bind\n * @param {*} thisArg - The value to be passed as the `this` parameter\n * @returns {Function} A new function that will call the original function with the specified `this` context\n */\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst { toString } = Object.prototype;\nconst { getPrototypeOf } = Object;\nconst { iterator, toStringTag } = Symbol;\n\nconst kindOf = ((cache) => (thing) => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type;\n};\n\nconst typeOfTest = (type) => (thing) => typeof thing === type;\n\n/**\n * Determine if a value is a non-null object\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst { isArray } = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return (\n val !== null &&\n !isUndefined(val) &&\n val.constructor !== null &&\n !isUndefined(val.constructor) &&\n isFunction(val.constructor.isBuffer) &&\n val.constructor.isBuffer(val)\n );\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && isArrayBuffer(val.buffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = (thing) => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (\n (prototype === null ||\n prototype === Object.prototype ||\n Object.getPrototypeOf(prototype) === null) &&\n !(toStringTag in val) &&\n !(iterator in val)\n );\n};\n\n/**\n * Determine if a value is an empty object (safely handles Buffers)\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an empty object, otherwise false\n */\nconst isEmptyObject = (val) => {\n // Early return for non-objects or Buffers to prevent RangeError\n if (!isObject(val) || isBuffer(val)) {\n return false;\n }\n\n try {\n return Object.keys(val).length === 0 && Object.getPrototypeOf(val) === Object.prototype;\n } catch (e) {\n // Fallback for any other objects that might cause RangeError with Object.keys()\n return false;\n }\n};\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a React Native Blob\n * React Native \"blob\": an object with a `uri` attribute. Optionally, it can\n * also have a `name` and `type` attribute to specify filename and content type\n *\n * @see https://github.com/facebook/react-native/blob/26684cf3adf4094eb6c405d345a75bf8c7c0bf88/Libraries/Network/FormData.js#L68-L71\n *\n * @param {*} value The value to test\n *\n * @returns {boolean} True if value is a React Native Blob, otherwise false\n */\nconst isReactNativeBlob = (value) => {\n return !!(value && typeof value.uri !== 'undefined');\n};\n\n/**\n * Determine if environment is React Native\n * ReactNative `FormData` has a non-standard `getParts()` method\n *\n * @param {*} formData The formData to test\n *\n * @returns {boolean} True if environment is React Native, otherwise false\n */\nconst isReactNative = (formData) => formData && typeof formData.getParts !== 'undefined';\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a FileList, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction getGlobal() {\n if (typeof globalThis !== 'undefined') return globalThis;\n if (typeof self !== 'undefined') return self;\n if (typeof window !== 'undefined') return window;\n if (typeof global !== 'undefined') return global;\n return {};\n}\n\nconst G = getGlobal();\nconst FormDataCtor = typeof G.FormData !== 'undefined' ? G.FormData : undefined;\n\nconst isFormData = (thing) => {\n if (!thing) return false;\n if (FormDataCtor && thing instanceof FormDataCtor) return true;\n // Reject plain objects inheriting directly from Object.prototype so prototype-pollution gadgets can't spoof FormData.\n const proto = getPrototypeOf(thing);\n if (!proto || proto === Object.prototype) return false;\n if (!isFunction(thing.append)) return false;\n const kind = kindOf(thing);\n return (\n kind === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n );\n};\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = [\n 'ReadableStream',\n 'Request',\n 'Response',\n 'Headers',\n].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => {\n return str.trim ? str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n};\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Object} [options]\n * @param {Boolean} [options.allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, { allOwnKeys = false } = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Buffer check\n if (isBuffer(obj)) {\n return;\n }\n\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\n/**\n * Finds a key in an object, case-insensitive, returning the actual key name.\n * Returns null if the object is a Buffer or if no match is found.\n *\n * @param {Object} obj - The object to search.\n * @param {string} key - The key to find (case-insensitive).\n * @returns {?string} The actual key name if found, otherwise null.\n */\nfunction findKey(obj, key) {\n if (isBuffer(obj)) {\n return null;\n }\n\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== 'undefined') return globalThis;\n return typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : global;\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * const result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(...objs) {\n const { caseless, skipUndefined } = (isContextDefined(this) && this) || {};\n const result = {};\n const assignValue = (val, key) => {\n // Skip dangerous property names to prevent prototype pollution\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return;\n }\n\n const targetKey = (caseless && findKey(result, key)) || key;\n // Read via own-prop only β€” a bare `result[targetKey]` walks the prototype\n // chain, so a polluted Object.prototype value could surface here and get\n // copied into the merged result.\n const existing = hasOwnProperty(result, targetKey) ? result[targetKey] : undefined;\n if (isPlainObject(existing) && isPlainObject(val)) {\n result[targetKey] = merge(existing, val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else if (!skipUndefined || !isUndefined(val)) {\n result[targetKey] = val;\n }\n };\n\n for (let i = 0, l = objs.length; i < l; i++) {\n objs[i] && forEach(objs[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Object} [options]\n * @param {Boolean} [options.allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, { allOwnKeys } = {}) => {\n forEach(\n b,\n (val, key) => {\n if (thisArg && isFunction(val)) {\n Object.defineProperty(a, key, {\n // Null-proto descriptor so a polluted Object.prototype.get cannot\n // hijack defineProperty's accessor-vs-data resolution.\n __proto__: null,\n value: bind(val, thisArg),\n writable: true,\n enumerable: true,\n configurable: true,\n });\n } else {\n Object.defineProperty(a, key, {\n __proto__: null,\n value: val,\n writable: true,\n enumerable: true,\n configurable: true,\n });\n }\n },\n { allOwnKeys }\n );\n return a;\n};\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xfeff) {\n content = content.slice(1);\n }\n return content;\n};\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n Object.defineProperty(constructor.prototype, 'constructor', {\n __proto__: null,\n value: constructor,\n writable: true,\n enumerable: false,\n configurable: true,\n });\n Object.defineProperty(constructor, 'super', {\n __proto__: null,\n value: superConstructor.prototype,\n });\n props && Object.assign(constructor.prototype, props);\n};\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n};\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n};\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n};\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = ((TypedArray) => {\n // eslint-disable-next-line func-names\n return (thing) => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[iterator];\n\n const _iterator = generator.call(obj);\n\n let result;\n\n while ((result = _iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n};\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n};\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = (str) => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g, function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n });\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (\n ({ hasOwnProperty }) =>\n (obj, prop) =>\n hasOwnProperty.call(obj, prop)\n)(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n};\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].includes(name)) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error(\"Can not rewrite read-only method '\" + name + \"'\");\n };\n }\n });\n};\n\n/**\n * Converts an array or a delimited string into an object set with values as keys and true as values.\n * Useful for fast membership checks.\n *\n * @param {Array|string} arrayOrString - The array or string to convert.\n * @param {string} delimiter - The delimiter to use if input is a string.\n * @returns {Object} An object with keys from the array or string, values set to true.\n */\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach((value) => {\n obj[value] = true;\n });\n };\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n};\n\nconst noop = () => {};\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite((value = +value)) ? value : defaultValue;\n};\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(\n thing &&\n isFunction(thing.append) &&\n thing[toStringTag] === 'FormData' &&\n thing[iterator]\n );\n}\n\n/**\n * Recursively converts an object to a JSON-compatible object, handling circular references and Buffers.\n *\n * @param {Object} obj - The object to convert.\n * @returns {Object} The JSON-compatible object.\n */\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n //Buffer check\n if (isBuffer(source)) {\n return source;\n }\n\n if (!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n };\n\n return visit(obj, 0);\n};\n\n/**\n * Determines if a value is an async function.\n *\n * @param {*} thing - The value to test.\n * @returns {boolean} True if value is an async function, otherwise false.\n */\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\n/**\n * Determines if a value is thenable (has then and catch methods).\n *\n * @param {*} thing - The value to test.\n * @returns {boolean} True if value is thenable, otherwise false.\n */\nconst isThenable = (thing) =>\n thing &&\n (isObject(thing) || isFunction(thing)) &&\n isFunction(thing.then) &&\n isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\n/**\n * Provides a cross-platform setImmediate implementation.\n * Uses native setImmediate if available, otherwise falls back to postMessage or setTimeout.\n *\n * @param {boolean} setImmediateSupported - Whether setImmediate is supported.\n * @param {boolean} postMessageSupported - Whether postMessage is supported.\n * @returns {Function} A function to schedule a callback asynchronously.\n */\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported\n ? ((token, callbacks) => {\n _global.addEventListener(\n 'message',\n ({ source, data }) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n },\n false\n );\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, '*');\n };\n })(`axios@${Math.random()}`, [])\n : (cb) => setTimeout(cb);\n})(typeof setImmediate === 'function', isFunction(_global.postMessage));\n\n/**\n * Schedules a microtask or asynchronous callback as soon as possible.\n * Uses queueMicrotask if available, otherwise falls back to process.nextTick or _setImmediate.\n *\n * @type {Function}\n */\nconst asap =\n typeof queueMicrotask !== 'undefined'\n ? queueMicrotask.bind(_global)\n : (typeof process !== 'undefined' && process.nextTick) || _setImmediate;\n\n// *********************\n\nconst isIterable = (thing) => thing != null && isFunction(thing[iterator]);\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isEmptyObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isReactNativeBlob,\n isReactNative,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap,\n isIterable,\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age',\n 'authorization',\n 'content-length',\n 'content-type',\n 'etag',\n 'expires',\n 'from',\n 'host',\n 'if-modified-since',\n 'if-unmodified-since',\n 'last-modified',\n 'location',\n 'max-forwards',\n 'proxy-authorization',\n 'referer',\n 'retry-after',\n 'user-agent',\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default (rawHeaders) => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders &&\n rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nconst INVALID_HEADER_VALUE_CHARS_RE = /[^\\x09\\x20-\\x7E\\x80-\\xFF]/g;\n\nfunction trimSPorHTAB(str) {\n let start = 0;\n let end = str.length;\n\n while (start < end) {\n const code = str.charCodeAt(start);\n\n if (code !== 0x09 && code !== 0x20) {\n break;\n }\n\n start += 1;\n }\n\n while (end > start) {\n const code = str.charCodeAt(end - 1);\n\n if (code !== 0x09 && code !== 0x20) {\n break;\n }\n\n end -= 1;\n }\n\n return start === 0 && end === str.length ? str : str.slice(start, end);\n}\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction sanitizeHeaderValue(str) {\n return trimSPorHTAB(str.replace(INVALID_HEADER_VALUE_CHARS_RE, ''));\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : sanitizeHeaderValue(String(value));\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header\n .trim()\n .toLowerCase()\n .replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach((methodName) => {\n Object.defineProperty(obj, methodName + accessorName, {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: function (arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true,\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if (\n !key ||\n self[key] === undefined ||\n _rewrite === true ||\n (_rewrite === undefined && self[key] !== false)\n ) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite);\n } else if (utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isObject(header) && utils.isIterable(header)) {\n let obj = {},\n dest,\n key;\n for (const entry of header) {\n if (!utils.isArray(entry)) {\n throw TypeError('Object iterator must return a key-value pair');\n }\n\n obj[(key = entry[0])] = (dest = obj[key])\n ? utils.isArray(dest)\n ? [...dest, entry[1]]\n : [dest, entry[1]]\n : entry[1];\n }\n\n setHeaders(obj, valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(\n key &&\n this[key] !== undefined &&\n (!matcher || matchHeaderValue(this, this[key], key, matcher))\n );\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null &&\n value !== false &&\n (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON())\n .map(([header, value]) => header + ': ' + value)\n .join('\\n');\n }\n\n getSetCookie() {\n return this.get('set-cookie') || [];\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals =\n (this[$internals] =\n this[$internals] =\n {\n accessors: {},\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor([\n 'Content-Type',\n 'Content-Length',\n 'Accept',\n 'Accept-Encoding',\n 'User-Agent',\n 'Authorization',\n]);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n },\n };\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst REDACTED = '[REDACTED ****]';\n\nfunction hasOwnOrPrototypeToJSON(source) {\n if (utils.hasOwnProp(source, 'toJSON')) {\n return true;\n }\n\n let prototype = Object.getPrototypeOf(source);\n\n while (prototype && prototype !== Object.prototype) {\n if (utils.hasOwnProp(prototype, 'toJSON')) {\n return true;\n }\n\n prototype = Object.getPrototypeOf(prototype);\n }\n\n return false;\n}\n\n// Build a plain-object snapshot of `config` and replace the value of any key\n// (case-insensitive) listed in `redactKeys` with REDACTED. Walks through arrays\n// and AxiosHeaders, and short-circuits on circular references.\nfunction redactConfig(config, redactKeys) {\n const lowerKeys = new Set(redactKeys.map((k) => String(k).toLowerCase()));\n const seen = [];\n\n const visit = (source) => {\n if (source === null || typeof source !== 'object') return source;\n if (utils.isBuffer(source)) return source;\n if (seen.indexOf(source) !== -1) return undefined;\n\n if (source instanceof AxiosHeaders) {\n source = source.toJSON();\n }\n\n seen.push(source);\n\n let result;\n if (utils.isArray(source)) {\n result = [];\n source.forEach((v, i) => {\n const reducedValue = visit(v);\n if (!utils.isUndefined(reducedValue)) {\n result[i] = reducedValue;\n }\n });\n } else {\n if (!utils.isPlainObject(source) && hasOwnOrPrototypeToJSON(source)) {\n seen.pop();\n return source;\n }\n\n result = Object.create(null);\n for (const [key, value] of Object.entries(source)) {\n const reducedValue = lowerKeys.has(key.toLowerCase()) ? REDACTED : visit(value);\n if (!utils.isUndefined(reducedValue)) {\n result[key] = reducedValue;\n }\n }\n }\n\n seen.pop();\n return result;\n };\n\n return visit(config);\n}\n\nclass AxiosError extends Error {\n static from(error, code, config, request, response, customProps) {\n const axiosError = new AxiosError(error.message, code || error.code, config, request, response);\n axiosError.cause = error;\n axiosError.name = error.name;\n\n // Preserve status from the original error if not already set from response\n if (error.status != null && axiosError.status == null) {\n axiosError.status = error.status;\n }\n\n customProps && Object.assign(axiosError, customProps);\n return axiosError;\n }\n\n /**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\n constructor(message, code, config, request, response) {\n super(message);\n\n // Make message enumerable to maintain backward compatibility\n // The native Error constructor sets message as non-enumerable,\n // but axios < v1.13.3 had it as enumerable\n Object.defineProperty(this, 'message', {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: message,\n enumerable: true,\n writable: true,\n configurable: true,\n });\n\n this.name = 'AxiosError';\n this.isAxiosError = true;\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status;\n }\n }\n\n toJSON() {\n // Opt-in redaction: when the request config carries a `redact` array, the\n // value of any matching key (case-insensitive, at any depth) is replaced\n // with REDACTED in the serialized snapshot. Undefined or empty leaves the\n // existing serialization behavior unchanged.\n const config = this.config;\n const redactKeys = config && utils.hasOwnProp(config, 'redact') ? config.redact : undefined;\n const serializedConfig =\n utils.isArray(redactKeys) && redactKeys.length > 0\n ? redactConfig(config, redactKeys)\n : utils.toJSONObject(config);\n\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: serializedConfig,\n code: this.code,\n status: this.status,\n };\n }\n}\n\n// This can be changed to static properties as soon as the parser options in .eslint.cjs are updated.\nAxiosError.ERR_BAD_OPTION_VALUE = 'ERR_BAD_OPTION_VALUE';\nAxiosError.ERR_BAD_OPTION = 'ERR_BAD_OPTION';\nAxiosError.ECONNABORTED = 'ECONNABORTED';\nAxiosError.ETIMEDOUT = 'ETIMEDOUT';\nAxiosError.ECONNREFUSED = 'ECONNREFUSED';\nAxiosError.ERR_NETWORK = 'ERR_NETWORK';\nAxiosError.ERR_FR_TOO_MANY_REDIRECTS = 'ERR_FR_TOO_MANY_REDIRECTS';\nAxiosError.ERR_DEPRECATED = 'ERR_DEPRECATED';\nAxiosError.ERR_BAD_RESPONSE = 'ERR_BAD_RESPONSE';\nAxiosError.ERR_BAD_REQUEST = 'ERR_BAD_REQUEST';\nAxiosError.ERR_CANCELED = 'ERR_CANCELED';\nAxiosError.ERR_NOT_SUPPORT = 'ERR_NOT_SUPPORT';\nAxiosError.ERR_INVALID_URL = 'ERR_INVALID_URL';\nAxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = 'ERR_FORM_DATA_DEPTH_EXCEEDED';\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path\n .concat(key)\n .map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n })\n .join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(\n options,\n {\n metaTokens: true,\n dots: false,\n indexes: false,\n },\n false,\n function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n }\n );\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || (typeof Blob !== 'undefined' && Blob);\n const maxDepth = options.maxDepth === undefined ? 100 : options.maxDepth;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isBoolean(value)) {\n return value.toString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (utils.isReactNative(formData) && utils.isReactNativeBlob(value)) {\n formData.append(renderKey(path, key, dots), convertValue(value));\n return false;\n }\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value)))\n ) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) &&\n formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true\n ? renderKey([key], index, dots)\n : indexes === null\n ? key\n : key + '[]',\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable,\n });\n\n function build(value, path, depth = 0) {\n if (utils.isUndefined(value)) return;\n\n if (depth > maxDepth) {\n throw new AxiosError(\n 'Object is too deeply nested (' + depth + ' levels). Max depth: ' + maxDepth,\n AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED\n );\n }\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result =\n !(utils.isUndefined(el) || el === null) &&\n visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key], depth + 1);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder\n ? function (value) {\n return encoder.call(this, value, encode);\n }\n : encode;\n\n return this._pairs\n .map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '')\n .join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces URL-encoded forms of `:`, `$`, `,`, and spaces with\n * their plain counterparts (`:`, `$`, `,`, `+`).\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nexport function encode(val) {\n return encodeURIComponent(val)\n .replace(/%3A/gi, ':')\n .replace(/%24/g, '$')\n .replace(/%2C/gi, ',')\n .replace(/%20/g, '+');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n if (!params) {\n return url;\n }\n\n const _encode = (options && options.encode) || encode;\n\n const _options = utils.isFunction(options)\n ? {\n serialize: options,\n }\n : options;\n\n const serializeFn = _options && _options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, _options);\n } else {\n serializedParams = utils.isURLSearchParams(params)\n ? params.toString()\n : new AxiosURLSearchParams(params, _options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf('#');\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n * @param {Object} options The options for the interceptor, synchronous and runWhen\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null,\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {void}\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false,\n legacyInterceptorReqResOrdering: true,\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict';\n\nexport default typeof Blob !== 'undefined' ? Blob : null;\n","import URLSearchParams from './classes/URLSearchParams.js';\nimport FormData from './classes/FormData.js';\nimport Blob from './classes/Blob.js';\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob,\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data'],\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = (typeof navigator === 'object' && navigator) || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv =\n hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = (hasBrowserEnv && window.location.href) || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin,\n};\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform,\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), {\n visitor: function (value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n },\n ...options,\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map((match) => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = utils.isArray(target[name])\n ? target[name].concat(value)\n : [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst own = (obj, key) => (obj != null && utils.hasOwnProp(obj, key) ? obj[key] : undefined);\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [\n function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n const formSerializer = own(this, 'formSerializer');\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, formSerializer).toString();\n }\n\n if (\n (isFileList = utils.isFileList(data)) ||\n contentType.indexOf('multipart/form-data') > -1\n ) {\n const env = own(this, 'env');\n const _FormData = env && env.FormData;\n\n return toFormData(\n isFileList ? { 'files[]': data } : data,\n _FormData && new _FormData(),\n formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n },\n ],\n\n transformResponse: [\n function transformResponse(data) {\n const transitional = own(this, 'transitional') || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const responseType = own(this, 'responseType');\n const JSONRequested = responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (\n data &&\n utils.isString(data) &&\n ((forcedJSONParsing && !responseType) || JSONRequested)\n ) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data, own(this, 'parseReviver'));\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, own(this, 'response'));\n }\n throw e;\n }\n }\n }\n\n return data;\n },\n ],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob,\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n Accept: 'application/json, text/plain, */*',\n 'Content-Type': undefined,\n },\n },\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'query'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\n\nclass CanceledError extends AxiosError {\n /**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\n constructor(message, config, request) {\n super(message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n this.__CANCEL__ = true;\n }\n}\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n response.status >= 400 && response.status < 500 ? AxiosError.ERR_BAD_REQUEST : AxiosError.ERR_BAD_RESPONSE,\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25}):(?:\\/\\/)?/.exec(url);\n return (match && match[1]) || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round((bytesCount * 1000) / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn(...args);\n };\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if (passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs);\n }, threshold - passed);\n }\n }\n };\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from './speedometer.js';\nimport throttle from './throttle.js';\nimport utils from '../utils.js';\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle((e) => {\n const rawLoaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const loaded = total != null ? Math.min(rawLoaded, total) : rawLoaded;\n const progressBytes = Math.max(0, loaded - bytesNotified);\n const rate = _speedometer(progressBytes);\n\n bytesNotified = Math.max(bytesNotified, loaded);\n\n const data = {\n loaded,\n total,\n progress: total ? loaded / total : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true,\n };\n\n listener(data);\n }, freq);\n};\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [\n (loaded) =>\n throttled[0]({\n lengthComputable,\n total,\n loaded,\n }),\n throttled[1],\n ];\n};\n\nexport const asyncDecorator =\n (fn) =>\n (...args) =>\n utils.asap(() => fn(...args));\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv\n ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n })(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n )\n : () => true;\n","import utils from '../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv\n ? // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure, sameSite) {\n if (typeof document === 'undefined') return;\n\n const cookie = [`${name}=${encodeURIComponent(value)}`];\n\n if (utils.isNumber(expires)) {\n cookie.push(`expires=${new Date(expires).toUTCString()}`);\n }\n if (utils.isString(path)) {\n cookie.push(`path=${path}`);\n }\n if (utils.isString(domain)) {\n cookie.push(`domain=${domain}`);\n }\n if (secure === true) {\n cookie.push('secure');\n }\n if (utils.isString(sameSite)) {\n cookie.push(`SameSite=${sameSite}`);\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n if (typeof document === 'undefined') return null;\n // Match name=value by splitting on the semicolon separator instead of building a\n // RegExp from `name` β€” interpolating an unescaped string into a RegExp would let\n // metacharacters (e.g. `.+?` in an attacker-influenced cookie name) cause ReDoS or\n // match the wrong cookie. Browsers may serialize cookie pairs as either \";\" or\n // \"; \", so ignore optional whitespace before each cookie name.\n const cookies = document.cookie.split(';');\n for (let i = 0; i < cookies.length; i++) {\n const cookie = cookies[i].replace(/^\\s+/, '');\n const eq = cookie.indexOf('=');\n if (eq !== -1 && cookie.slice(0, eq) === name) {\n return decodeURIComponent(cookie.slice(eq + 1));\n }\n }\n return null;\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000, '/');\n },\n }\n : // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {},\n };\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n if (typeof url !== 'string') {\n return false;\n }\n\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {\n let isRelativeUrl = !isAbsoluteURL(requestedURL);\n if (baseURL && (isRelativeUrl || allowAbsoluteUrls === false)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst headersToObject = (thing) => (thing instanceof AxiosHeaders ? { ...thing } : thing);\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n\n // Use a null-prototype object so that downstream reads such as `config.auth`\n // or `config.baseURL` cannot inherit polluted values from Object.prototype.\n // `hasOwnProperty` is restored as a non-enumerable own slot to preserve\n // ergonomics for user code that relies on it.\n const config = Object.create(null);\n Object.defineProperty(config, 'hasOwnProperty', {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: Object.prototype.hasOwnProperty,\n enumerable: false,\n writable: true,\n configurable: true,\n });\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({ caseless }, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(a, b, prop, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (utils.hasOwnProp(config2, prop)) {\n return getMergedValue(a, b);\n } else if (utils.hasOwnProp(config1, prop)) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n allowedSocketPaths: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b, prop) =>\n mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true),\n };\n\n utils.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) {\n if (prop === '__proto__' || prop === 'constructor' || prop === 'prototype') return;\n const merge = utils.hasOwnProp(mergeMap, prop) ? mergeMap[prop] : mergeDeepProperties;\n const a = utils.hasOwnProp(config1, prop) ? config1[prop] : undefined;\n const b = utils.hasOwnProp(config2, prop) ? config2[prop] : undefined;\n const configValue = merge(a, b, prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from '../platform/index.js';\nimport utils from '../utils.js';\nimport isURLSameOrigin from './isURLSameOrigin.js';\nimport cookies from './cookies.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport mergeConfig from '../core/mergeConfig.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport buildURL from './buildURL.js';\n\nconst FORM_DATA_CONTENT_HEADERS = ['content-type', 'content-length'];\n\nfunction setFormDataHeaders(headers, formHeaders, policy) {\n if (policy !== 'content-only') {\n headers.set(formHeaders);\n return;\n }\n\n Object.entries(formHeaders).forEach(([key, val]) => {\n if (FORM_DATA_CONTENT_HEADERS.includes(key.toLowerCase())) {\n headers.set(key, val);\n }\n });\n}\n\n/**\n * Encode a UTF-8 string to a Latin-1 byte string for use with btoa().\n * This is a modern replacement for the deprecated unescape(encodeURIComponent(str)) pattern.\n *\n * @param {string} str The string to encode\n *\n * @returns {string} UTF-8 bytes as a Latin-1 string\n */\nconst encodeUTF8 = (str) =>\n encodeURIComponent(str).replace(/%([0-9A-F]{2})/gi, (_, hex) =>\n String.fromCharCode(parseInt(hex, 16))\n );\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n // Read only own properties to prevent prototype pollution gadgets\n // (e.g. Object.prototype.baseURL = 'https://evil.com').\n const own = (key) => (utils.hasOwnProp(newConfig, key) ? newConfig[key] : undefined);\n\n const data = own('data');\n let withXSRFToken = own('withXSRFToken');\n const xsrfHeaderName = own('xsrfHeaderName');\n const xsrfCookieName = own('xsrfCookieName');\n let headers = own('headers');\n const auth = own('auth');\n const baseURL = own('baseURL');\n const allowAbsoluteUrls = own('allowAbsoluteUrls');\n const url = own('url');\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(\n buildFullPath(baseURL, url, allowAbsoluteUrls),\n config.params,\n config.paramsSerializer\n );\n\n // HTTP basic authentication\n if (auth) {\n headers.set(\n 'Authorization',\n 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? encodeUTF8(auth.password) : ''))\n );\n }\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // browser handles it\n } else if (utils.isFunction(data.getHeaders)) {\n // Node.js FormData (like form-data package)\n setFormDataHeaders(headers, data.getHeaders(), own('formDataHeaderPolicy'));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n if (utils.isFunction(withXSRFToken)) {\n withXSRFToken = withXSRFToken(newConfig);\n }\n\n // Strict boolean check β€” prevents proto-pollution gadgets (e.g. Object.prototype.withXSRFToken = 1)\n // and misconfigurations (e.g. \"false\") from short-circuiting the same-origin check and leaking\n // the XSRF token cross-origin.\n const shouldSendXSRF =\n withXSRFToken === true || (withXSRFToken == null && isURLSameOrigin(newConfig.url));\n\n if (shouldSendXSRF) {\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n};\n","import utils from '../utils.js';\nimport settle from '../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport { progressEventReducer } from '../helpers/progressEventReducer.js';\nimport resolveConfig from '../helpers/resolveConfig.js';\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported &&\n function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let { responseType, onUploadProgress, onDownloadProgress } = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData =\n !responseType || responseType === 'text' || responseType === 'json'\n ? request.responseText\n : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request,\n };\n\n settle(\n function _resolve(value) {\n resolve(value);\n done();\n },\n function _reject(err) {\n reject(err);\n done();\n },\n response\n );\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (\n request.status === 0 &&\n !(request.responseURL && request.responseURL.startsWith('file:'))\n ) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n done();\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError(event) {\n // Browsers deliver a ProgressEvent in XHR onerror\n // (message may be empty; when present, surface it)\n // See https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/error_event\n const msg = event && event.message ? event.message : 'Network Error';\n const err = new AxiosError(msg, AxiosError.ERR_NETWORK, config, request);\n // attach the underlying event for consumers who want details\n err.event = event || null;\n reject(err);\n done();\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout\n ? 'timeout of ' + _config.timeout + 'ms exceeded'\n : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(\n new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request\n )\n );\n done();\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true);\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress);\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = (cancel) => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n done();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted\n ? onCanceled()\n : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && !platform.protocols.includes(protocol)) {\n reject(\n new AxiosError(\n 'Unsupported protocol ' + protocol + ':',\n AxiosError.ERR_BAD_REQUEST,\n config\n )\n );\n return;\n }\n\n // Send the request\n request.send(requestData || null);\n });\n };\n","import CanceledError from '../cancel/CanceledError.js';\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const { length } = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(\n err instanceof AxiosError\n ? err\n : new CanceledError(err instanceof Error ? err.message : err)\n );\n }\n };\n\n let timer =\n timeout &&\n setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout of ${timeout}ms exceeded`, AxiosError.ETIMEDOUT));\n }, timeout);\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach((signal) => {\n signal.unsubscribe\n ? signal.unsubscribe(onabort)\n : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n };\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const { signal } = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n};\n\nexport default composeSignals;\n","export const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n};\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n};\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n};\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n };\n\n return new ReadableStream(\n {\n async pull(controller) {\n try {\n const { done, value } = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = (bytes += len);\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n },\n },\n {\n highWaterMark: 2,\n }\n );\n};\n","/**\n * Estimate decoded byte length of a data:// URL *without* allocating large buffers.\n * - For base64: compute exact decoded size using length and padding;\n * handle %XX at the character-count level (no string allocation).\n * - For non-base64: use UTF-8 byteLength of the encoded body as a safe upper bound.\n *\n * @param {string} url\n * @returns {number}\n */\nexport default function estimateDataURLDecodedBytes(url) {\n if (!url || typeof url !== 'string') return 0;\n if (!url.startsWith('data:')) return 0;\n\n const comma = url.indexOf(',');\n if (comma < 0) return 0;\n\n const meta = url.slice(5, comma);\n const body = url.slice(comma + 1);\n const isBase64 = /;base64/i.test(meta);\n\n if (isBase64) {\n let effectiveLen = body.length;\n const len = body.length; // cache length\n\n for (let i = 0; i < len; i++) {\n if (body.charCodeAt(i) === 37 /* '%' */ && i + 2 < len) {\n const a = body.charCodeAt(i + 1);\n const b = body.charCodeAt(i + 2);\n const isHex =\n ((a >= 48 && a <= 57) || (a >= 65 && a <= 70) || (a >= 97 && a <= 102)) &&\n ((b >= 48 && b <= 57) || (b >= 65 && b <= 70) || (b >= 97 && b <= 102));\n\n if (isHex) {\n effectiveLen -= 2;\n i += 2;\n }\n }\n }\n\n let pad = 0;\n let idx = len - 1;\n\n const tailIsPct3D = (j) =>\n j >= 2 &&\n body.charCodeAt(j - 2) === 37 && // '%'\n body.charCodeAt(j - 1) === 51 && // '3'\n (body.charCodeAt(j) === 68 || body.charCodeAt(j) === 100); // 'D' or 'd'\n\n if (idx >= 0) {\n if (body.charCodeAt(idx) === 61 /* '=' */) {\n pad++;\n idx--;\n } else if (tailIsPct3D(idx)) {\n pad++;\n idx -= 3;\n }\n }\n\n if (pad === 1 && idx >= 0) {\n if (body.charCodeAt(idx) === 61 /* '=' */) {\n pad++;\n } else if (tailIsPct3D(idx)) {\n pad++;\n }\n }\n\n const groups = Math.floor(effectiveLen / 4);\n const bytes = groups * 3 - (pad || 0);\n return bytes > 0 ? bytes : 0;\n }\n\n if (typeof Buffer !== 'undefined' && typeof Buffer.byteLength === 'function') {\n return Buffer.byteLength(body, 'utf8');\n }\n\n // Compute UTF-8 byte length directly from UTF-16 code units without allocating\n // a byte buffer (TextEncoder.encode would defeat the DoS guard on large bodies).\n // Using body.length here would undercount non-ASCII (e.g. '€' is 1 code unit\n // but 3 UTF-8 bytes).\n let bytes = 0;\n for (let i = 0, len = body.length; i < len; i++) {\n const c = body.charCodeAt(i);\n if (c < 0x80) {\n bytes += 1;\n } else if (c < 0x800) {\n bytes += 2;\n } else if (c >= 0xd800 && c <= 0xdbff && i + 1 < len) {\n const next = body.charCodeAt(i + 1);\n if (next >= 0xdc00 && next <= 0xdfff) {\n bytes += 4;\n i++;\n } else {\n bytes += 3;\n }\n } else {\n bytes += 3;\n }\n }\n return bytes;\n}\n","export const VERSION = \"1.16.0\";","import platform from '../platform/index.js';\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport composeSignals from '../helpers/composeSignals.js';\nimport { trackStream } from '../helpers/trackStream.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {\n progressEventReducer,\n progressEventDecorator,\n asyncDecorator,\n} from '../helpers/progressEventReducer.js';\nimport resolveConfig from '../helpers/resolveConfig.js';\nimport settle from '../core/settle.js';\nimport estimateDataURLDecodedBytes from '../helpers/estimateDataURLDecodedBytes.js';\nimport { VERSION } from '../env/data.js';\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst { isFunction } = utils;\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false;\n }\n};\n\nconst factory = (env) => {\n const globalObject = utils.global ?? globalThis;\n const { ReadableStream, TextEncoder } = globalObject;\n\n env = utils.merge.call(\n {\n skipUndefined: true,\n },\n {\n Request: globalObject.Request,\n Response: globalObject.Response,\n },\n env\n );\n\n const { fetch: envFetch, Request, Response } = env;\n const isFetchSupported = envFetch ? isFunction(envFetch) : typeof fetch === 'function';\n const isRequestSupported = isFunction(Request);\n const isResponseSupported = isFunction(Response);\n\n if (!isFetchSupported) {\n return false;\n }\n\n const isReadableStreamSupported = isFetchSupported && isFunction(ReadableStream);\n\n const encodeText =\n isFetchSupported &&\n (typeof TextEncoder === 'function'\n ? (\n (encoder) => (str) =>\n encoder.encode(str)\n )(new TextEncoder())\n : async (str) => new Uint8Array(await new Request(str).arrayBuffer()));\n\n const supportsRequestStream =\n isRequestSupported &&\n isReadableStreamSupported &&\n test(() => {\n let duplexAccessed = false;\n\n const request = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n });\n\n const hasContentType = request.headers.has('Content-Type');\n\n if (request.body != null) {\n request.body.cancel();\n }\n\n return duplexAccessed && !hasContentType;\n });\n\n const supportsResponseStream =\n isResponseSupported &&\n isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n const resolvers = {\n stream: supportsResponseStream && ((res) => res.body),\n };\n\n isFetchSupported &&\n (() => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach((type) => {\n !resolvers[type] &&\n (resolvers[type] = (res, config) => {\n let method = res && res[type];\n\n if (method) {\n return method.call(res);\n }\n\n throw new AxiosError(\n `Response type '${type}' is not supported`,\n AxiosError.ERR_NOT_SUPPORT,\n config\n );\n });\n });\n })();\n\n const getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if (utils.isBlob(body)) {\n return body.size;\n }\n\n if (utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if (utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if (utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if (utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n };\n\n const resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n };\n\n return async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions,\n maxContentLength,\n maxBodyLength,\n } = resolveConfig(config);\n\n const hasMaxContentLength = utils.isNumber(maxContentLength) && maxContentLength > -1;\n const hasMaxBodyLength = utils.isNumber(maxBodyLength) && maxBodyLength > -1;\n\n let _fetch = envFetch || fetch;\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals(\n [signal, cancelToken && cancelToken.toAbortSignal()],\n timeout\n );\n\n let request = null;\n\n const unsubscribe =\n composedSignal &&\n composedSignal.unsubscribe &&\n (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n // Enforce maxContentLength for data: URLs up-front so we never materialize\n // an oversized payload. The HTTP adapter applies the same check (see http.js\n // \"if (protocol === 'data:')\" branch).\n if (hasMaxContentLength && typeof url === 'string' && url.startsWith('data:')) {\n const estimated = estimateDataURLDecodedBytes(url);\n if (estimated > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n // Enforce maxBodyLength against the outbound request body before dispatch.\n // Mirrors http.js behavior (ERR_BAD_REQUEST / 'Request body larger than\n // maxBodyLength limit'). Skip when the body length cannot be determined\n // (e.g. a live ReadableStream supplied by the caller).\n if (hasMaxBodyLength && method !== 'get' && method !== 'head') {\n const outboundLength = await resolveBodyLength(headers, data);\n if (\n typeof outboundLength === 'number' &&\n isFinite(outboundLength) &&\n outboundLength > maxBodyLength\n ) {\n throw new AxiosError(\n 'Request body larger than maxBodyLength limit',\n AxiosError.ERR_BAD_REQUEST,\n config,\n request\n );\n }\n }\n\n if (\n onUploadProgress &&\n supportsRequestStream &&\n method !== 'get' &&\n method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: 'half',\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader);\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = isRequestSupported && 'credentials' in Request.prototype;\n\n // If data is FormData and Content-Type is multipart/form-data without boundary,\n // delete it so fetch can set it correctly with the boundary\n if (utils.isFormData(data)) {\n const contentType = headers.getContentType();\n if (\n contentType &&\n /^multipart\\/form-data/i.test(contentType) &&\n !/boundary=/i.test(contentType)\n ) {\n headers.delete('content-type');\n }\n }\n\n // Set User-Agent header if not already set (fetch defaults to 'node' in Node.js)\n headers.set('User-Agent', 'axios/' + VERSION, false);\n\n const resolvedOptions = {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: 'half',\n credentials: isCredentialsSupported ? withCredentials : undefined,\n };\n\n request = isRequestSupported && new Request(url, resolvedOptions);\n\n let response = await (isRequestSupported\n ? _fetch(request, fetchOptions)\n : _fetch(url, resolvedOptions));\n\n // Cheap pre-check: if the server honestly declares a content-length that\n // already exceeds the cap, reject before we start streaming.\n if (hasMaxContentLength) {\n const declaredLength = utils.toFiniteNumber(response.headers.get('content-length'));\n if (declaredLength != null && declaredLength > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n const isStreamResponse =\n supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (\n supportsResponseStream &&\n response.body &&\n (onDownloadProgress || hasMaxContentLength || (isStreamResponse && unsubscribe))\n ) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach((prop) => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] =\n (onDownloadProgress &&\n progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n )) ||\n [];\n\n let bytesRead = 0;\n const onChunkProgress = (loadedBytes) => {\n if (hasMaxContentLength) {\n bytesRead = loadedBytes;\n if (bytesRead > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n onProgress && onProgress(loadedBytes);\n };\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onChunkProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](\n response,\n config\n );\n\n // Fallback enforcement for environments without ReadableStream support\n // (legacy runtimes). Detect materialized size from typed output; skip\n // streams/Response passthrough since the user will read those themselves.\n if (hasMaxContentLength && !supportsResponseStream && !isStreamResponse) {\n let materializedSize;\n if (responseData != null) {\n if (typeof responseData.byteLength === 'number') {\n materializedSize = responseData.byteLength;\n } else if (typeof responseData.size === 'number') {\n materializedSize = responseData.size;\n } else if (typeof responseData === 'string') {\n materializedSize =\n typeof TextEncoder === 'function'\n ? new TextEncoder().encode(responseData).byteLength\n : responseData.length;\n }\n }\n if (typeof materializedSize === 'number' && materializedSize > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request,\n });\n });\n } catch (err) {\n unsubscribe && unsubscribe();\n\n // Safari can surface fetch aborts as a DOMException-like object whose\n // branded getters throw. Prefer our composed signal reason before reading\n // the caught error, preserving timeout vs cancellation semantics.\n if (composedSignal && composedSignal.aborted && composedSignal.reason instanceof AxiosError) {\n const canceledError = composedSignal.reason;\n canceledError.config = config;\n request && (canceledError.request = request);\n err !== canceledError && (canceledError.cause = err);\n throw canceledError;\n }\n\n if (err && err.name === 'TypeError' && /Load failed|fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError(\n 'Network Error',\n AxiosError.ERR_NETWORK,\n config,\n request,\n err && err.response\n ),\n {\n cause: err.cause || err,\n }\n );\n }\n\n throw AxiosError.from(err, err && err.code, config, request, err && err.response);\n }\n };\n};\n\nconst seedCache = new Map();\n\nexport const getFetch = (config) => {\n let env = (config && config.env) || {};\n const { fetch, Request, Response } = env;\n const seeds = [Request, Response, fetch];\n\n let len = seeds.length,\n i = len,\n seed,\n target,\n map = seedCache;\n\n while (i--) {\n seed = seeds[i];\n target = map.get(seed);\n\n target === undefined && map.set(seed, (target = i ? new Map() : factory(env)));\n\n map = target;\n }\n\n return target;\n};\n\nconst adapter = getFetch();\n\nexport default adapter;\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport * as fetchAdapter from './fetch.js';\nimport AxiosError from '../core/AxiosError.js';\n\n/**\n * Known adapters mapping.\n * Provides environment-specific adapters for Axios:\n * - `http` for Node.js\n * - `xhr` for browsers\n * - `fetch` for fetch API-based requests\n *\n * @type {Object}\n */\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: {\n get: fetchAdapter.getFetch,\n },\n};\n\n// Assign adapter names for easier debugging and identification\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n // Null-proto descriptors so a polluted Object.prototype.get cannot turn\n // these data descriptors into accessor descriptors on the way in.\n Object.defineProperty(fn, 'name', { __proto__: null, value });\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', { __proto__: null, value });\n }\n});\n\n/**\n * Render a rejection reason string for unknown or unsupported adapters\n *\n * @param {string} reason\n * @returns {string}\n */\nconst renderReason = (reason) => `- ${reason}`;\n\n/**\n * Check if the adapter is resolved (function, null, or false)\n *\n * @param {Function|null|false} adapter\n * @returns {boolean}\n */\nconst isResolvedHandle = (adapter) =>\n utils.isFunction(adapter) || adapter === null || adapter === false;\n\n/**\n * Get the first suitable adapter from the provided list.\n * Tries each adapter in order until a supported one is found.\n * Throws an AxiosError if no adapter is suitable.\n *\n * @param {Array|string|Function} adapters - Adapter(s) by name or function.\n * @param {Object} config - Axios request configuration\n * @throws {AxiosError} If no suitable adapter is available\n * @returns {Function} The resolved adapter function\n */\nfunction getAdapter(adapters, config) {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const { length } = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter && (utils.isFunction(adapter) || (adapter = adapter.get(config)))) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n const reasons = Object.entries(rejectedReasons).map(\n ([id, state]) =>\n `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length\n ? reasons.length > 1\n ? 'since :\\n' + reasons.map(renderReason).join('\\n')\n : ' ' + renderReason(reasons[0])\n : 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n}\n\n/**\n * Exports Axios adapters and utility to resolve an adapter\n */\nexport default {\n /**\n * Resolve an adapter from a list of adapter names or functions.\n * @type {Function}\n */\n getAdapter,\n\n /**\n * Exposes all known adapters\n * @type {Object}\n */\n adapters: knownAdapters,\n};\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from '../adapters/adapters.js';\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(config, config.transformRequest);\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter, config);\n\n return adapter(config).then(\n function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Expose the current response on config so that transformResponse can\n // attach it to any AxiosError it throws (e.g. on JSON parse failure).\n // We clean it up afterwards to avoid polluting the config object.\n config.response = response;\n try {\n response.data = transformData.call(config, config.transformResponse, response);\n } finally {\n delete config.response;\n }\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n },\n function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n config.response = reason.response;\n try {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n } finally {\n delete config.response;\n }\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n }\n );\n}\n","'use strict';\n\nimport { VERSION } from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return (\n '[Axios v' +\n VERSION +\n \"] Transitional option '\" +\n opt +\n \"'\" +\n desc +\n (message ? '. ' + message : '')\n );\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n // Use hasOwnProperty so a polluted Object.prototype. cannot supply\n // a non-function validator and cause a TypeError.\n const validator = Object.prototype.hasOwnProperty.call(schema, opt) ? schema[opt] : undefined;\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError(\n 'option ' + opt + ' must be ' + result,\n AxiosError.ERR_BAD_OPTION_VALUE\n );\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators,\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nimport transitionalDefaults from '../defaults/transitional.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig || {};\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager(),\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = (() => {\n if (!dummy.stack) {\n return '';\n }\n\n const firstNewlineIndex = dummy.stack.indexOf('\\n');\n\n return firstNewlineIndex === -1 ? '' : dummy.stack.slice(firstNewlineIndex + 1);\n })();\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack) {\n const firstNewlineIndex = stack.indexOf('\\n');\n const secondNewlineIndex =\n firstNewlineIndex === -1 ? -1 : stack.indexOf('\\n', firstNewlineIndex + 1);\n const stackWithoutTwoTopLines =\n secondNewlineIndex === -1 ? '' : stack.slice(secondNewlineIndex + 1);\n\n if (!String(err.stack).endsWith(stackWithoutTwoTopLines)) {\n err.stack += '\\n' + stack;\n }\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const { transitional, paramsSerializer, headers } = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(\n transitional,\n {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean),\n legacyInterceptorReqResOrdering: validators.transitional(validators.boolean),\n },\n false\n );\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer,\n };\n } else {\n validator.assertOptions(\n paramsSerializer,\n {\n encode: validators.function,\n serialize: validators.function,\n },\n true\n );\n }\n }\n\n // Set config.allowAbsoluteUrls\n if (config.allowAbsoluteUrls !== undefined) {\n // do nothing\n } else if (this.defaults.allowAbsoluteUrls !== undefined) {\n config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;\n } else {\n config.allowAbsoluteUrls = true;\n }\n\n validator.assertOptions(\n config,\n {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken'),\n },\n true\n );\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(headers.common, headers[config.method]);\n\n headers &&\n utils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'query', 'common'], (method) => {\n delete headers[method];\n });\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n const transitional = config.transitional || transitionalDefaults;\n const legacyInterceptorReqResOrdering =\n transitional && transitional.legacyInterceptorReqResOrdering;\n\n if (legacyInterceptorReqResOrdering) {\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n } else {\n requestInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n }\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift(...requestInterceptorChain);\n chain.push(...responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function (url, config) {\n return this.request(\n mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data,\n })\n );\n };\n});\n\nutils.forEach(['post', 'put', 'patch', 'query'], function forEachMethodWithData(method) {\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(\n mergeConfig(config || {}, {\n method,\n headers: isForm\n ? {\n 'Content-Type': 'multipart/form-data',\n }\n : {},\n url,\n data,\n })\n );\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n // QUERY is a safe/idempotent read method; multipart form bodies don't fit\n // its semantics, so no queryForm shorthand is generated.\n if (method !== 'query') {\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n }\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then((cancel) => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = (onfulfilled) => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise((resolve) => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel,\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * const args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && payload.isAxiosError === true;\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n WebServerIsDown: 521,\n ConnectionTimedOut: 522,\n OriginIsUnreachable: 523,\n TimeoutOccurred: 524,\n SslHandshakeFailed: 525,\n InvalidSslCertificate: 526,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport { VERSION } from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from './core/AxiosHeaders.js';\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, { allOwnKeys: true });\n\n // Copy context to instance\n utils.extend(instance, context, null, { allOwnKeys: true });\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = (thing) => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios;\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig,\n create,\n} = axios;\n\nexport {\n axios as default,\n create,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig,\n};\n","/*!\n * SPDX-License-Identifier: GPL-3.0-or-later\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n */\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport Axios from 'axios';\n/**\n * Get an Axios instance with default Nextcloud headers and CSRF token handling.\n */\nexport function getCancelableClient() {\n const client = Axios.create({\n headers: {\n requesttoken: getRequestToken() ?? '',\n 'X-Requested-With': 'XMLHttpRequest',\n },\n });\n onRequestTokenUpdate((token) => {\n client.defaults.headers.requesttoken = token;\n });\n return Object.assign(client, {\n CancelToken: Axios.CancelToken,\n isCancel: Axios.isCancel,\n });\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { fetchRequestToken } from '@nextcloud/auth';\nimport { isAxiosError } from 'axios';\nconst RETRY_KEY = '_nextcloudCsrfTokenReloaded';\n/**\n * Handle CSRF token errors in Axios requests.\n *\n * @param axios - The axios instance the interceptor is attached to\n */\nexport function onCsrfTokenError(axios) {\n return async (error) => {\n if (!isAxiosError(error)) {\n throw error;\n }\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n if (config\n && !(RETRY_KEY in config)\n && response?.status === 412\n && response?.data?.message === 'CSRF check failed') {\n console.warn(`Request to ${responseURL} failed because of a CSRF mismatch. Fetching a new token.`);\n const token = await fetchRequestToken();\n axios.defaults.headers.requesttoken = token;\n return axios({\n ...config,\n [RETRY_KEY]: true,\n headers: {\n ...config.headers,\n requesttoken: token,\n },\n });\n }\n throw error;\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { isAxiosError } from 'axios';\nconst RETRY_DELAY_KEY = '_nextcloudMaintenanceModeRetryDelay';\n/**\n * Handles Nextcloud maintenance mode errors in Axios requests.\n *\n * @param axios - The current Axios instance\n */\nexport function onMaintenanceModeError(axios) {\n return async (error) => {\n if (!isAxiosError(error)) {\n throw error;\n }\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n const status = response?.status;\n const headers = response?.headers;\n let retryDelay = config?.[RETRY_DELAY_KEY] ?? 1;\n /**\n * Retry requests if they failed due to maintenance mode\n *\n * The delay is exponential. It starts at 2s and then doubles\n * until a final retry after 32s. This results in roughly 1m of\n * retries until we give up and throw the axios error towards\n * the caller.\n */\n if (status === 503\n && headers?.['x-nextcloud-maintenance-mode'] === '1'\n && config?.retryIfMaintenanceMode) {\n retryDelay *= 2;\n if (retryDelay > 32) {\n console.error('Retry delay exceeded one minute, giving up.', { responseURL });\n throw error;\n }\n console.warn(`Request to ${responseURL} failed because of maintenance mode. Retrying in ${retryDelay}s`);\n await new Promise((resolve) => {\n setTimeout(resolve, retryDelay * 1000);\n });\n return axios({\n ...config,\n [RETRY_DELAY_KEY]: retryDelay,\n });\n }\n throw error;\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { isAxiosError } from 'axios';\n/**\n * Axios response interceptor onError callback.\n * This interceptor checks if the response failed because of a expired user session\n * and if enabled it will cause a redirect to the login.\n *\n * @param error - The response error\n */\nexport async function onNotLoggedInError(error) {\n if (isAxiosError(error)) {\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n const status = response?.status;\n if (status === 401\n && response?.data?.message === 'Current user is not logged in'\n && config?.reloadExpiredSession\n && globalThis.location?.reload) {\n console.error(`Request to ${responseURL} failed because the user session expired. Reloading the page …`);\n if (globalThis.OC?.reload) {\n globalThis.OC.reload();\n }\n else {\n globalThis.location.reload();\n }\n }\n }\n throw error;\n}\n","/**\n * SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { getCancelableClient } from \"./client.js\";\nimport { onCsrfTokenError } from \"./interceptors/csrf-token.js\";\nimport { onMaintenanceModeError } from \"./interceptors/maintenance-mode.js\";\nimport { onNotLoggedInError } from \"./interceptors/not-logged-in.js\";\nconst cancelableClient = getCancelableClient();\ncancelableClient.interceptors.response.use((r) => r, onCsrfTokenError(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onMaintenanceModeError(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onNotLoggedInError);\nexport { isAxiosError, isCancel } from 'axios';\nexport default cancelableClient;\n","\n\n\n\n
\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t{{ videoFallbackText }}\n\t\t\n\t\t\n\t\t\t\n\t\t\t{{ t('firstrunwizard', 'Skip') }}\n\t\t\n\t
\n\n\n\n","\n\n\n\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n\n","\n\n\n\n\n","\n\n\n\n\n\n\n","\n\n\n\n\n","\n\n\n\n\n\n\n","export default \"\\n\\n\"","export default \"\"","export default \"\"","export default \"\\n\"","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { t } from '@nextcloud/l10n'\n\n/* How to do a new release?\n * 1. Update the `version` to the current HUB release\n * 2. Update the `link` for further information\n * 3. Add release notes, each entry is a new point.\n * 4. Update the alt text for the animation if needed.\n */\nexport default {\n\t/** The HUB release version */\n\tversion: '26 Winter',\n\n\t/** Link to further information (e.g. blog post) */\n\tlink: 'https://nextcloud.com/blog/nextcloud-hub26-winter/',\n\n\t/** Release notes in list format */\n\treleaseNotes: [\n\t\t'🌐 ' + t('firstrunwizard', 'Growing sovereignty: new federation features, improved data export and import'),\n\t\t'πŸ’¬Β ' + t('firstrunwizard', 'Nextcloud Talk: live translations, pinned messages, scheduling'),\n\t\t'πŸ”ŽΒ ' + t('firstrunwizard', 'Office document comparison'),\n\t\t'πŸ§‘β€πŸŽ¨Β ' + t('firstrunwizard', 'Whiteboard: comments, reactions, timers'),\n\t\t'✨ ' + t('firstrunwizard', 'Nextcloud Assistant performance upgrade and AI labeling'),\n\t\t'πŸ”Β ' + t('firstrunwizard', 'Powerful E2EE in the web interface'),\n\t\t'πŸ’ͺΒ ' + t('firstrunwizard', 'Speed-up with ADA engine'),\n\t\tt('firstrunwizard', '… and many more improvements in all apps!'),\n\t\tt('firstrunwizard', 'Experience the brand new Nextcloud Hub!'),\n\t],\n\n\t/** Alternative text for the release animation */\n\tvideoAltText: t('firstrunwizard', 'Get to know the new features of Hub {version}', { version: '26 Winter' }),\n\n\t/** Subject that is used when sharing the post */\n\tshareSubject: t('firstrunwizard', 'Time to own your collaboration: Meet Nextcloud Hub 26 Winter! πŸš€'),\n}\n","\n\n\n\n\n\n\n","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { Component } from 'vue'\n\nimport { translate as t } from '@nextcloud/l10n'\nimport AboutNextcloudPage from './components/pages/AboutNextcloud.vue'\nimport DeviceIntegrationPage from './components/pages/DeviceIntegration.vue'\nimport KeyNotesPage from './components/pages/KeyNotes.vue'\nimport SharePage from './components/pages/SharePage.vue'\nimport WhatsNewPage from './components/pages/WhatsNew.vue'\nimport HubRelease from './hub-release.ts'\n\ninterface IPageButton {\n\tto: string\n\tlabel: string\n}\n\nexport interface IPage {\n\tid: string\n\tcomponent: Component\n\tbuttons: IPageButton[]\n}\n\nexport default [\n\t{\n\t\tid: 'key-aspects',\n\t\tcomponent: KeyNotesPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'whats-new',\n\t\t\t\tlabel: t('firstrunwizard', 'What\\'s new?'),\n\t\t\t},\n\t\t\t{\n\t\t\t\tto: 'devices',\n\t\t\t\tlabel: t('firstrunwizard', 'Nextcloud on all your devices'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'devices',\n\t\tcomponent: DeviceIntegrationPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'about',\n\t\t\t\tlabel: t('firstrunwizard', 'More about Nextcloud'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'about',\n\t\tcomponent: AboutNextcloudPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'whats-new',\n\t\t\t\tlabel: t('firstrunwizard', 'Nextcloud Hub {version}', { version: HubRelease.version }),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'whats-new',\n\t\tcomponent: WhatsNewPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'share',\n\t\t\t\tlabel: t('firstrunwizard', 'Share on social media'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'share',\n\t\tcomponent: SharePage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'close',\n\t\t\t\tlabel: t('firstrunwizard', 'Get started!'),\n\t\t\t},\n\t\t],\n\t},\n\n] as IPage[]\n","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { createApp } from 'vue'\nimport FirstRunWizard from './views/App.vue'\n\nlet vm: InstanceType\n/**\n * Open the wizard and mount if needed.\n *\n * @param focusReturn - Where to return focus after the wizard is closed\n */\nexport function open(focusReturn?: HTMLElement | SVGElement | string) {\n\tif (vm === undefined) {\n\t\tconst el = document.createElement('div')\n\t\tel.id = 'firstrunwizard'\n\t\tdocument.querySelector('body')!.appendChild(el)\n\t\tvm = createApp(FirstRunWizard)\n\t\t\t.mount(el) as InstanceType\n\t}\n\tvm.open(focusReturn)\n}\n"],"names":["buffer","base64Js","byteLength","toByteArray","fromByteArray","lookup","revLookup","Arr","code","i","len","getLens","b64","validLen","placeHoldersLen","lens","_byteLength","tmp","arr","curByte","tripletToBase64","num","encodeChunk","uint8","start","end","output","extraBytes","parts","maxChunkLength","len2","ieee754","offset","isLE","mLen","nBytes","e","m","eLen","eMax","eBias","nBits","d","s","value","c","rt","exports","base64","ieee754$1","customInspectSymbol","Buffer","SlowBuffer","K_MAX_LENGTH","GlobalUint8Array","GlobalArrayBuffer","GlobalSharedArrayBuffer","typedArraySupport","proto","createBuffer","length","buf","arg","encodingOrOffset","allocUnsafe","from","fromString","fromArrayView","isInstance","fromArrayBuffer","valueOf","b","fromObject","assertSize","size","alloc","fill","encoding","checked","string","actual","fromArrayLike","array","arrayView","copy","byteOffset","obj","numberIsNaN","a","x","y","list","pos","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","n","str","max","target","thisStart","thisEnd","thisCopy","targetCopy","bidirectionalIndexOf","val","dir","arrayIndexOf","indexSize","arrLength","valLength","read","foundIndex","found","j","hexWrite","remaining","strLen","parsed","utf8Write","blitBuffer","asciiWrite","asciiToBytes","base64Write","ucs2Write","utf16leToBytes","res","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","decodeCodePointsArray","MAX_ARGUMENTS_LENGTH","codePoints","ret","out","hexSliceLookupTable","bytes","newBuf","checkOffset","ext","noAssert","mul","defineBigIntMethod","validateNumber","first","last","boundsError","lo","hi","checkInt","min","maxBytes","wrtBigUInt64LE","checkIntBI","wrtBigUInt64BE","limit","sub","checkIEEE754","writeFloat","littleEndian","writeDouble","targetStart","errors","E","sym","getMessage","Base","name","range","input","msg","received","addNumericalSeparator","checkBounds","type","INVALID_BASE64_RE","base64clean","units","leadSurrogate","byteArray","src","dst","alphabet","table","i16","fn","BufferBigIntNotDefined","bind","thisArg","toString","getPrototypeOf","iterator","toStringTag","kindOf","cache","thing","kindOfTest","typeOfTest","isArray","isUndefined","isBuffer","isFunction","isArrayBuffer","isArrayBufferView","result","isString","isNumber","isObject","isBoolean","isPlainObject","prototype","isEmptyObject","isDate","isFile","isReactNativeBlob","isReactNative","formData","isBlob","isFileList","isStream","getGlobal","global","G","FormDataCtor","isFormData","kind","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","trim","forEach","allOwnKeys","l","keys","key","findKey","_key","_global","isContextDefined","context","merge","objs","caseless","skipUndefined","assignValue","targetKey","existing","hasOwnProperty","extend","stripBOM","content","inherits","constructor","superConstructor","props","descriptors","toFlatObject","sourceObj","destObj","filter","propFilter","prop","merged","endsWith","searchString","position","lastIndex","toArray","isTypedArray","TypedArray","forEachEntry","_iterator","pair","matchAll","regExp","matches","isHTMLForm","toCamelCase","p1","p2","isRegExp","reduceDescriptors","reducer","reducedDescriptors","descriptor","freezeMethods","toObjectSet","arrayOrString","delimiter","define","noop","toFiniteNumber","defaultValue","isSpecCompliantForm","toJSONObject","stack","visit","source","reducedValue","isAsyncFn","isThenable","_setImmediate","setImmediateSupported","postMessageSupported","token","callbacks","data","cb","asap","process","isIterable","utils$1","ignoreDuplicateOf","utils","parseHeaders","rawHeaders","line","$internals","INVALID_HEADER_VALUE_CHARS_RE","trimSPorHTAB","normalizeHeader","header","sanitizeHeaderValue","normalizeValue","parseTokens","tokens","tokensRE","match","isValidHeaderName","matchHeaderValue","isHeaderNameFilter","formatHeader","w","char","buildAccessors","accessorName","methodName","arg1","arg2","arg3","AxiosHeaders$1","headers","valueOrRewrite","rewrite","self","setHeader","_value","_header","_rewrite","lHeader","setHeaders","dest","entry","parser","matcher","deleted","deleteHeader","format","normalized","targets","asStrings","computed","accessors","defineAccessor","AxiosHeaders","mapped","headerValue","REDACTED","hasOwnOrPrototypeToJSON","redactConfig","config","redactKeys","lowerKeys","k","seen","v","AxiosError","error","request","response","customProps","axiosError","message","serializedConfig","httpAdapter","isVisitable","removeBrackets","renderKey","path","dots","isFlatArray","predicates","toFormData","options","option","metaTokens","visitor","defaultVisitor","indexes","_Blob","maxDepth","useBlob","convertValue","el","index","exposedHelpers","build","depth","encode","charMap","AxiosURLSearchParams","params","encoder","_encode","buildURL","url","_options","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","id","h","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","URLSearchParams","FormData","Blob","hasBrowserEnv","_navigator","hasStandardBrowserEnv","hasStandardBrowserWebWorkerEnv","origin","platform","toURLEncodedForm","helpers","parsePropPath","arrayToObject","formDataToJSON","buildPath","isNumericKey","isLast","own","stringifySafely","rawValue","defaults","contentType","hasJSONContentType","isObjectPayload","formSerializer","env","_FormData","transitional","forcedJSONParsing","responseType","JSONRequested","strictJSONParsing","status","method","transformData","fns","isCancel","settle","resolve","reject","validateStatus","parseProtocol","speedometer","samplesCount","timestamps","head","tail","firstSampleTS","chunkLength","now","startedAt","bytesCount","passed","throttle","freq","timestamp","threshold","lastArgs","timer","invoke","args","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","rawLoaded","total","loaded","progressBytes","rate","progressEventDecorator","throttled","lengthComputable","asyncDecorator","isURLSameOrigin","isMSIE","cookies","expires","domain","secure","sameSite","cookie","eq","isAbsoluteURL","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","allowAbsoluteUrls","isRelativeUrl","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","FORM_DATA_CONTENT_HEADERS","setFormDataHeaders","formHeaders","policy","encodeUTF8","_","hex","resolveConfig","newConfig","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","isXHRAdapterSupported","xhrAdapter","_config","requestData","requestHeaders","onUploadProgress","onDownloadProgress","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","done","onloadend","responseHeaders","err","event","timeoutErrorMessage","cancel","CanceledError","protocol","composeSignals","signals","timeout","controller","aborted","onabort","reason","unsubscribe","signal","streamChunk","chunk","chunkSize","readBytes","iterable","readStream","stream","reader","trackStream","onProgress","onFinish","_onFinish","loadedBytes","estimateDataURLDecodedBytes","comma","meta","body","effectiveLen","pad","idx","tailIsPct3D","next","VERSION","DEFAULT_CHUNK_SIZE","test","factory","globalObject","ReadableStream","TextEncoder","envFetch","Request","Response","isFetchSupported","isRequestSupported","isResponseSupported","isReadableStreamSupported","encodeText","supportsRequestStream","duplexAccessed","hasContentType","supportsResponseStream","resolvers","getBodyLength","resolveBodyLength","cancelToken","withCredentials","fetchOptions","maxContentLength","maxBodyLength","hasMaxContentLength","hasMaxBodyLength","_fetch","composedSignal","requestContentLength","outboundLength","_request","contentTypeHeader","flush","isCredentialsSupported","resolvedOptions","declaredLength","isStreamResponse","responseContentLength","bytesRead","onChunkProgress","responseData","materializedSize","canceledError","seedCache","getFetch","fetch","seeds","seed","map","knownAdapters","fetchAdapter.getFetch","renderReason","isResolvedHandle","adapter","getAdapter","adapters","nameOrAdapter","rejectedReasons","reasons","state","throwIfCancellationRequested","dispatchRequest","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","correctSpelling","assertOptions","schema","allowUnknown","Axios$1","instanceConfig","configOrUrl","dummy","firstNewlineIndex","secondNewlineIndex","stackWithoutTwoTopLines","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","promise","chain","onFulfilled","onRejected","fullPath","Axios","generateHTTPMethod","isForm","CancelToken$1","CancelToken","executor","resolvePromise","onfulfilled","_resolve","abort","spread","callback","isAxiosError","payload","HttpStatusCode","createInstance","defaultConfig","instance","axios","promises","all","Cancel","formToJSON","create","getCancelableClient","client","getRequestToken","onRequestTokenUpdate","RETRY_KEY","onCsrfTokenError","responseURL","fetchRequestToken","RETRY_DELAY_KEY","onMaintenanceModeError","retryDelay","onNotLoggedInError","cancelableClient","r","emit","__emit","videoMp4","imagePath","videoWebm","videoFallbackImagePre","videoFallbackImage","videoFallbackText","t","videoElement","useTemplateRef","autoPlayDisabled","ref","videoStarted","canSkip","videoPoster","onMounted","handleEnded","_createElementBlock","_normalizeClass","$style","_createElementVNode","_unref","_createTextVNode","_createBlock","NcButton","_createVNode","NcIconSvgWrapper","mdiChevronRight","currentIndex","_useModel","__props","reverseTransition","currentPage","isFirstPage","isLastPage","cssLogoUrl","transitions","useCssModule","transitionClasses","direction","waveTransitionClasses","watch","newPage","oldPage","goToPage","pageId","page","_Transition","mdiArrowLeft","$emit","mdiClose","_resolveDynamicComponent","_openBlock","_Fragment","button","$event","_toDisplayString","mdiArrowRight","isLink","_renderSlot","_ctx","WizardPage","InfoCard","android","loadState","ios","badgeImagePath","cssBackgroundImage","href","ariaLabel","desktop","syncClientsUrl","generateUrl","AppStoreBadge","versionNumber","mdiLock","mdiBriefcaseCheck","mdiSwapHorizontal","mdiAccountGroup","blueskySvg","facebookSvg","linkedInSvg","mastodonSvg","HubRelease","encodedLink","mailSubject","mailBody","shareLinks","mdiEmail","_renderList","pages","KeyNotesPage","DeviceIntegrationPage","AboutNextcloudPage","WhatsNewPage","SharePage","__expose","open","close","isMobile","useIsSmallMobile","showChangelogOnly","changelogPage","showModal","setReturnFocus","focusReturn","NcModal","IntroAnimation","_cache","SlideShow","vm","createApp","FirstRunWizard"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56]} \ No newline at end of file +{"version":3,"file":"main-B_iVdpQp.chunk.mjs","sources":["../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/helpers/throttle.js","../node_modules/axios/lib/helpers/progressEventReducer.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/helpers/resolveConfig.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/helpers/composeSignals.js","../node_modules/axios/lib/helpers/trackStream.js","../node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/adapters/fetch.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/index.js","../node_modules/@nextcloud/axios/dist/client.js","../node_modules/@nextcloud/axios/dist/interceptors/csrf-token.js","../node_modules/@nextcloud/axios/dist/interceptors/maintenance-mode.js","../node_modules/@nextcloud/axios/dist/interceptors/not-logged-in.js","../node_modules/@nextcloud/axios/dist/index.js","../src/components/pages/IntroAnimation.vue","../src/components/SlideShow.vue","../src/components/InfoCard.vue","../src/components/WizardPage.vue","../src/components/pages/AboutNextcloud.vue","../src/components/AppStoreBadge.vue","../src/components/pages/DeviceIntegration.vue","../src/components/pages/KeyNotes.vue","../img/bluesky.svg?raw","../img/facebook.svg?raw","../img/linkedin.svg?raw","../img/mastodon.svg?raw","../src/hub-release.ts","../src/components/pages/SharePage.vue","../src/components/pages/WhatsNew.vue","../src/pages.ts","../src/views/App.vue","../src/main.ts"],"sourcesContent":["var buffer = {};\n\nvar base64Js = {};\n\nbase64Js.byteLength = byteLength;\nbase64Js.toByteArray = toByteArray;\nbase64Js.fromByteArray = fromByteArray;\n\nvar lookup = [];\nvar revLookup = [];\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array;\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i];\n revLookup[code.charCodeAt(i)] = i;\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62;\nrevLookup['_'.charCodeAt(0)] = 63;\n\nfunction getLens (b64) {\n var len = b64.length;\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=');\n if (validLen === -1) validLen = len;\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4);\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp;\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n\n var curByte = 0;\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen;\n\n var i;\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)];\n arr[curByte++] = (tmp >> 16) & 0xFF;\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4);\n arr[curByte++] = tmp & 0xFF;\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2);\n arr[curByte++] = (tmp >> 8) & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp;\n var output = [];\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF);\n output.push(tripletToBase64(tmp));\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp;\n var len = uint8.length;\n var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes\n var parts = [];\n var maxChunkLength = 16383; // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)));\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1];\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n );\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n );\n }\n\n return parts.join('')\n}\n\nvar ieee754 = {};\n\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\n\nieee754.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = -7;\n var i = isLE ? (nBytes - 1) : 0;\n var d = isLE ? -1 : 1;\n var s = buffer[offset + i];\n\n i += d;\n\n e = s & ((1 << (-nBits)) - 1);\n s >>= (-nBits);\n nBits += eLen;\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1);\n e >>= (-nBits);\n nBits += mLen;\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen);\n e = e - eBias;\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n};\n\nieee754.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c;\n var eLen = (nBytes * 8) - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0);\n var i = isLE ? 0 : (nBytes - 1);\n var d = isLE ? 1 : -1;\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\n\n value = Math.abs(value);\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0;\n e = eMax;\n } else {\n e = Math.floor(Math.log(value) / Math.LN2);\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * Math.pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n e = 0;\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m;\n eLen += mLen;\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128;\n};\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n(function (exports) {\n\n\tconst base64 = base64Js;\n\tconst ieee754$1 = ieee754;\n\tconst customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n\t ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tconst K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\tconst { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t const arr = new GlobalUint8Array(1);\n\t const proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, GlobalUint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t const buf = new GlobalUint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (GlobalArrayBuffer.isView(value)) {\n\t return fromArrayView(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, GlobalArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof GlobalSharedArrayBuffer !== 'undefined' &&\n\t (isInstance(value, GlobalSharedArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalSharedArrayBuffer)))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t const valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t const b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, GlobalUint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, GlobalUint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpreted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t const length = byteLength(string, encoding) | 0;\n\t let buf = createBuffer(length);\n\n\t const actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t const length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t const buf = createBuffer(length);\n\t for (let i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayView (arrayView) {\n\t if (isInstance(arrayView, GlobalUint8Array)) {\n\t const copy = new GlobalUint8Array(arrayView);\n\t return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n\t }\n\t return fromArrayLike(arrayView)\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t let buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new GlobalUint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new GlobalUint8Array(array, byteOffset);\n\t } else {\n\t buf = new GlobalUint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t const len = checked(obj.length) | 0;\n\t const buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, GlobalUint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, GlobalUint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t let x = a.length;\n\t let y = b.length;\n\n\t for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t let i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t const buffer = Buffer.allocUnsafe(length);\n\t let pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t let buf = list[i];\n\t if (isInstance(buf, GlobalUint8Array)) {\n\t if (pos + buf.length > buffer.length) {\n\t if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf);\n\t buf.copy(buffer, pos);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t buffer,\n\t buf,\n\t pos\n\t );\n\t }\n\t } else if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t } else {\n\t buf.copy(buffer, pos);\n\t }\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t const len = string.length;\n\t const mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t let loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t const i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t const len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (let i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t const len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (let i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t const len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (let i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t const length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t let str = '';\n\t const max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return ''\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, GlobalUint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t let x = thisEnd - thisStart;\n\t let y = end - start;\n\t const len = Math.min(x, y);\n\n\t const thisCopy = this.slice(thisStart, thisEnd);\n\t const targetCopy = target.slice(start, end);\n\n\t for (let i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof GlobalUint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return GlobalUint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return GlobalUint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t let indexSize = 1;\n\t let arrLength = arr.length;\n\t let valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t let i;\n\t if (dir) {\n\t let foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t let found = true;\n\t for (let j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t const remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t const strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t const parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t const remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t const res = [];\n\n\t let i = start;\n\t while (i < end) {\n\t const firstByte = buf[i];\n\t let codePoint = null;\n\t let bytesPerSequence = (firstByte > 0xEF)\n\t ? 4\n\t : (firstByte > 0xDF)\n\t ? 3\n\t : (firstByte > 0xBF)\n\t ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t let secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tconst MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t const len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t let res = '';\n\t let i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t const len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t let out = '';\n\t for (let i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t const bytes = buf.slice(start, end);\n\t let res = '';\n\t // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n\t for (let i = 0; i < bytes.length - 1; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t const len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t const newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUintLE =\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUintBE =\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t let val = this[offset + --byteLength];\n\t let mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUint8 =\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUint16LE =\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUint16BE =\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUint32LE =\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUint32BE =\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const lo = first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24;\n\n\t const hi = this[++offset] +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t last * 2 ** 24;\n\n\t return BigInt(lo) + (BigInt(hi) << BigInt(32))\n\t});\n\n\tBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const hi = first * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t const lo = this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last;\n\n\t return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n\t});\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let i = byteLength;\n\t let mul = 1;\n\t let val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = this[offset + 4] +\n\t this[offset + 5] * 2 ** 8 +\n\t this[offset + 6] * 2 ** 16 +\n\t (last << 24); // Overflow\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24)\n\t});\n\n\tBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = (first << 24) + // Overflow\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last)\n\t});\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUintLE =\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let mul = 1;\n\t let i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUintBE =\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUint8 =\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUint16LE =\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint16BE =\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint32LE =\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUint32BE =\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t return offset\n\t}\n\n\tfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset + 7] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 6] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 5] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 4] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset + 3] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 2] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 1] = hi;\n\t hi = hi >> 8;\n\t buf[offset] = hi;\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = 0;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t const len = end - start;\n\n\t if (this === target && typeof GlobalUint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t const code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t let i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t const bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t const len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// CUSTOM ERRORS\n\t// =============\n\n\t// Simplified versions from Node, changed for Buffer-only usage\n\tconst errors = {};\n\tfunction E (sym, getMessage, Base) {\n\t errors[sym] = class NodeError extends Base {\n\t constructor () {\n\t super();\n\n\t Object.defineProperty(this, 'message', {\n\t value: getMessage.apply(this, arguments),\n\t writable: true,\n\t configurable: true\n\t });\n\n\t // Add the error code to the name to include it in the stack trace.\n\t this.name = `${this.name} [${sym}]`;\n\t // Access the stack to generate the error message including the error code\n\t // from the name.\n\t this.stack; // eslint-disable-line no-unused-expressions\n\t // Reset the name to the actual name.\n\t delete this.name;\n\t }\n\n\t get code () {\n\t return sym\n\t }\n\n\t set code (value) {\n\t Object.defineProperty(this, 'code', {\n\t configurable: true,\n\t enumerable: true,\n\t value,\n\t writable: true\n\t });\n\t }\n\n\t toString () {\n\t return `${this.name} [${sym}]: ${this.message}`\n\t }\n\t };\n\t}\n\n\tE('ERR_BUFFER_OUT_OF_BOUNDS',\n\t function (name) {\n\t if (name) {\n\t return `${name} is outside of buffer bounds`\n\t }\n\n\t return 'Attempt to access memory outside buffer bounds'\n\t }, RangeError);\n\tE('ERR_INVALID_ARG_TYPE',\n\t function (name, actual) {\n\t return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n\t }, TypeError);\n\tE('ERR_OUT_OF_RANGE',\n\t function (str, range, input) {\n\t let msg = `The value of \"${str}\" is out of range.`;\n\t let received = input;\n\t if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n\t received = addNumericalSeparator(String(input));\n\t } else if (typeof input === 'bigint') {\n\t received = String(input);\n\t if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n\t received = addNumericalSeparator(received);\n\t }\n\t received += 'n';\n\t }\n\t msg += ` It must be ${range}. Received ${received}`;\n\t return msg\n\t }, RangeError);\n\n\tfunction addNumericalSeparator (val) {\n\t let res = '';\n\t let i = val.length;\n\t const start = val[0] === '-' ? 1 : 0;\n\t for (; i >= start + 4; i -= 3) {\n\t res = `_${val.slice(i - 3, i)}${res}`;\n\t }\n\t return `${val.slice(0, i)}${res}`\n\t}\n\n\t// CHECK FUNCTIONS\n\t// ===============\n\n\tfunction checkBounds (buf, offset, byteLength) {\n\t validateNumber(offset, 'offset');\n\t if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n\t boundsError(offset, buf.length - (byteLength + 1));\n\t }\n\t}\n\n\tfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n\t if (value > max || value < min) {\n\t const n = typeof min === 'bigint' ? 'n' : '';\n\t let range;\n\t if (byteLength > 3) {\n\t if (min === 0 || min === BigInt(0)) {\n\t range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`;\n\t } else {\n\t range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n\t `${(byteLength + 1) * 8 - 1}${n}`;\n\t }\n\t } else {\n\t range = `>= ${min}${n} and <= ${max}${n}`;\n\t }\n\t throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n\t }\n\t checkBounds(buf, offset, byteLength);\n\t}\n\n\tfunction validateNumber (value, name) {\n\t if (typeof value !== 'number') {\n\t throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n\t }\n\t}\n\n\tfunction boundsError (value, length, type) {\n\t if (Math.floor(value) !== value) {\n\t validateNumber(value, type);\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n\t }\n\n\t if (length < 0) {\n\t throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n\t }\n\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n\t `>= ${type ? 1 : 0} and <= ${length}`,\n\t value)\n\t}\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t let codePoint;\n\t const length = string.length;\n\t let leadSurrogate = null;\n\t const bytes = [];\n\n\t for (let i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t let c, hi, lo;\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tconst hexSliceLookupTable = (function () {\n\t const alphabet = '0123456789abcdef';\n\t const table = new Array(256);\n\t for (let i = 0; i < 16; ++i) {\n\t const i16 = i * 16;\n\t for (let j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t// Return not function with Error if BigInt not supported\n\tfunction defineBigIntMethod (fn) {\n\t return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n\t}\n\n\tfunction BufferBigIntNotDefined () {\n\t throw new Error('BigInt not supported')\n\t} \n} (buffer));\n\nconst Buffer = buffer.Buffer;\n\nconst Blob = buffer.Blob;\nconst BlobOptions = buffer.BlobOptions;\nconst Buffer$1 = buffer.Buffer;\nconst File = buffer.File;\nconst FileOptions = buffer.FileOptions;\nconst INSPECT_MAX_BYTES = buffer.INSPECT_MAX_BYTES;\nconst SlowBuffer = buffer.SlowBuffer;\nconst TranscodeEncoding = buffer.TranscodeEncoding;\nconst atob = buffer.atob;\nconst btoa = buffer.btoa;\nconst constants = buffer.constants;\nconst isAscii = buffer.isAscii;\nconst isUtf8 = buffer.isUtf8;\nconst kMaxLength = buffer.kMaxLength;\nconst kStringMaxLength = buffer.kStringMaxLength;\nconst resolveObjectURL = buffer.resolveObjectURL;\nconst transcode = buffer.transcode;\nexport { Blob, BlobOptions, Buffer$1 as Buffer, File, FileOptions, INSPECT_MAX_BYTES, SlowBuffer, TranscodeEncoding, atob, btoa, constants, Buffer as default, isAscii, isUtf8, kMaxLength, kStringMaxLength, resolveObjectURL, transcode };\n//# sourceMappingURL=index.js.map\n","'use strict';\n\n/**\n * Create a bound version of a function with a specified `this` context\n *\n * @param {Function} fn - The function to bind\n * @param {*} thisArg - The value to be passed as the `this` parameter\n * @returns {Function} A new function that will call the original function with the specified `this` context\n */\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst { toString } = Object.prototype;\nconst { getPrototypeOf } = Object;\nconst { iterator, toStringTag } = Symbol;\n\nconst kindOf = ((cache) => (thing) => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type;\n};\n\nconst typeOfTest = (type) => (thing) => typeof thing === type;\n\n/**\n * Determine if a value is a non-null object\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst { isArray } = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return (\n val !== null &&\n !isUndefined(val) &&\n val.constructor !== null &&\n !isUndefined(val.constructor) &&\n isFunction(val.constructor.isBuffer) &&\n val.constructor.isBuffer(val)\n );\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && isArrayBuffer(val.buffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = (thing) => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (\n (prototype === null ||\n prototype === Object.prototype ||\n Object.getPrototypeOf(prototype) === null) &&\n !(toStringTag in val) &&\n !(iterator in val)\n );\n};\n\n/**\n * Determine if a value is an empty object (safely handles Buffers)\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an empty object, otherwise false\n */\nconst isEmptyObject = (val) => {\n // Early return for non-objects or Buffers to prevent RangeError\n if (!isObject(val) || isBuffer(val)) {\n return false;\n }\n\n try {\n return Object.keys(val).length === 0 && Object.getPrototypeOf(val) === Object.prototype;\n } catch (e) {\n // Fallback for any other objects that might cause RangeError with Object.keys()\n return false;\n }\n};\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a React Native Blob\n * React Native \"blob\": an object with a `uri` attribute. Optionally, it can\n * also have a `name` and `type` attribute to specify filename and content type\n *\n * @see https://github.com/facebook/react-native/blob/26684cf3adf4094eb6c405d345a75bf8c7c0bf88/Libraries/Network/FormData.js#L68-L71\n *\n * @param {*} value The value to test\n *\n * @returns {boolean} True if value is a React Native Blob, otherwise false\n */\nconst isReactNativeBlob = (value) => {\n return !!(value && typeof value.uri !== 'undefined');\n};\n\n/**\n * Determine if environment is React Native\n * ReactNative `FormData` has a non-standard `getParts()` method\n *\n * @param {*} formData The formData to test\n *\n * @returns {boolean} True if environment is React Native, otherwise false\n */\nconst isReactNative = (formData) => formData && typeof formData.getParts !== 'undefined';\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a FileList, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction getGlobal() {\n if (typeof globalThis !== 'undefined') return globalThis;\n if (typeof self !== 'undefined') return self;\n if (typeof window !== 'undefined') return window;\n if (typeof global !== 'undefined') return global;\n return {};\n}\n\nconst G = getGlobal();\nconst FormDataCtor = typeof G.FormData !== 'undefined' ? G.FormData : undefined;\n\nconst isFormData = (thing) => {\n if (!thing) return false;\n if (FormDataCtor && thing instanceof FormDataCtor) return true;\n // Reject plain objects inheriting directly from Object.prototype so prototype-pollution gadgets can't spoof FormData.\n const proto = getPrototypeOf(thing);\n if (!proto || proto === Object.prototype) return false;\n if (!isFunction(thing.append)) return false;\n const kind = kindOf(thing);\n return (\n kind === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n );\n};\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = [\n 'ReadableStream',\n 'Request',\n 'Response',\n 'Headers',\n].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => {\n return str.trim ? str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n};\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Object} [options]\n * @param {Boolean} [options.allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, { allOwnKeys = false } = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Buffer check\n if (isBuffer(obj)) {\n return;\n }\n\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\n/**\n * Finds a key in an object, case-insensitive, returning the actual key name.\n * Returns null if the object is a Buffer or if no match is found.\n *\n * @param {Object} obj - The object to search.\n * @param {string} key - The key to find (case-insensitive).\n * @returns {?string} The actual key name if found, otherwise null.\n */\nfunction findKey(obj, key) {\n if (isBuffer(obj)) {\n return null;\n }\n\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== 'undefined') return globalThis;\n return typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : global;\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * const result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(...objs) {\n const { caseless, skipUndefined } = (isContextDefined(this) && this) || {};\n const result = {};\n const assignValue = (val, key) => {\n // Skip dangerous property names to prevent prototype pollution\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return;\n }\n\n const targetKey = (caseless && findKey(result, key)) || key;\n // Read via own-prop only β€” a bare `result[targetKey]` walks the prototype\n // chain, so a polluted Object.prototype value could surface here and get\n // copied into the merged result.\n const existing = hasOwnProperty(result, targetKey) ? result[targetKey] : undefined;\n if (isPlainObject(existing) && isPlainObject(val)) {\n result[targetKey] = merge(existing, val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else if (!skipUndefined || !isUndefined(val)) {\n result[targetKey] = val;\n }\n };\n\n for (let i = 0, l = objs.length; i < l; i++) {\n objs[i] && forEach(objs[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Object} [options]\n * @param {Boolean} [options.allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, { allOwnKeys } = {}) => {\n forEach(\n b,\n (val, key) => {\n if (thisArg && isFunction(val)) {\n Object.defineProperty(a, key, {\n // Null-proto descriptor so a polluted Object.prototype.get cannot\n // hijack defineProperty's accessor-vs-data resolution.\n __proto__: null,\n value: bind(val, thisArg),\n writable: true,\n enumerable: true,\n configurable: true,\n });\n } else {\n Object.defineProperty(a, key, {\n __proto__: null,\n value: val,\n writable: true,\n enumerable: true,\n configurable: true,\n });\n }\n },\n { allOwnKeys }\n );\n return a;\n};\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xfeff) {\n content = content.slice(1);\n }\n return content;\n};\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n Object.defineProperty(constructor.prototype, 'constructor', {\n __proto__: null,\n value: constructor,\n writable: true,\n enumerable: false,\n configurable: true,\n });\n Object.defineProperty(constructor, 'super', {\n __proto__: null,\n value: superConstructor.prototype,\n });\n props && Object.assign(constructor.prototype, props);\n};\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n};\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n};\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n};\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = ((TypedArray) => {\n // eslint-disable-next-line func-names\n return (thing) => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[iterator];\n\n const _iterator = generator.call(obj);\n\n let result;\n\n while ((result = _iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n};\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n};\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = (str) => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g, function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n });\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (\n ({ hasOwnProperty }) =>\n (obj, prop) =>\n hasOwnProperty.call(obj, prop)\n)(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n};\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].includes(name)) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error(\"Can not rewrite read-only method '\" + name + \"'\");\n };\n }\n });\n};\n\n/**\n * Converts an array or a delimited string into an object set with values as keys and true as values.\n * Useful for fast membership checks.\n *\n * @param {Array|string} arrayOrString - The array or string to convert.\n * @param {string} delimiter - The delimiter to use if input is a string.\n * @returns {Object} An object with keys from the array or string, values set to true.\n */\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach((value) => {\n obj[value] = true;\n });\n };\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n};\n\nconst noop = () => {};\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite((value = +value)) ? value : defaultValue;\n};\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(\n thing &&\n isFunction(thing.append) &&\n thing[toStringTag] === 'FormData' &&\n thing[iterator]\n );\n}\n\n/**\n * Recursively converts an object to a JSON-compatible object, handling circular references and Buffers.\n *\n * @param {Object} obj - The object to convert.\n * @returns {Object} The JSON-compatible object.\n */\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n //Buffer check\n if (isBuffer(source)) {\n return source;\n }\n\n if (!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n };\n\n return visit(obj, 0);\n};\n\n/**\n * Determines if a value is an async function.\n *\n * @param {*} thing - The value to test.\n * @returns {boolean} True if value is an async function, otherwise false.\n */\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\n/**\n * Determines if a value is thenable (has then and catch methods).\n *\n * @param {*} thing - The value to test.\n * @returns {boolean} True if value is thenable, otherwise false.\n */\nconst isThenable = (thing) =>\n thing &&\n (isObject(thing) || isFunction(thing)) &&\n isFunction(thing.then) &&\n isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\n/**\n * Provides a cross-platform setImmediate implementation.\n * Uses native setImmediate if available, otherwise falls back to postMessage or setTimeout.\n *\n * @param {boolean} setImmediateSupported - Whether setImmediate is supported.\n * @param {boolean} postMessageSupported - Whether postMessage is supported.\n * @returns {Function} A function to schedule a callback asynchronously.\n */\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported\n ? ((token, callbacks) => {\n _global.addEventListener(\n 'message',\n ({ source, data }) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n },\n false\n );\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, '*');\n };\n })(`axios@${Math.random()}`, [])\n : (cb) => setTimeout(cb);\n})(typeof setImmediate === 'function', isFunction(_global.postMessage));\n\n/**\n * Schedules a microtask or asynchronous callback as soon as possible.\n * Uses queueMicrotask if available, otherwise falls back to process.nextTick or _setImmediate.\n *\n * @type {Function}\n */\nconst asap =\n typeof queueMicrotask !== 'undefined'\n ? queueMicrotask.bind(_global)\n : (typeof process !== 'undefined' && process.nextTick) || _setImmediate;\n\n// *********************\n\nconst isIterable = (thing) => thing != null && isFunction(thing[iterator]);\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isEmptyObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isReactNativeBlob,\n isReactNative,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap,\n isIterable,\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age',\n 'authorization',\n 'content-length',\n 'content-type',\n 'etag',\n 'expires',\n 'from',\n 'host',\n 'if-modified-since',\n 'if-unmodified-since',\n 'last-modified',\n 'location',\n 'max-forwards',\n 'proxy-authorization',\n 'referer',\n 'retry-after',\n 'user-agent',\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default (rawHeaders) => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders &&\n rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nconst INVALID_HEADER_VALUE_CHARS_RE = /[^\\x09\\x20-\\x7E\\x80-\\xFF]/g;\n\nfunction trimSPorHTAB(str) {\n let start = 0;\n let end = str.length;\n\n while (start < end) {\n const code = str.charCodeAt(start);\n\n if (code !== 0x09 && code !== 0x20) {\n break;\n }\n\n start += 1;\n }\n\n while (end > start) {\n const code = str.charCodeAt(end - 1);\n\n if (code !== 0x09 && code !== 0x20) {\n break;\n }\n\n end -= 1;\n }\n\n return start === 0 && end === str.length ? str : str.slice(start, end);\n}\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction sanitizeHeaderValue(str) {\n return trimSPorHTAB(str.replace(INVALID_HEADER_VALUE_CHARS_RE, ''));\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : sanitizeHeaderValue(String(value));\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header\n .trim()\n .toLowerCase()\n .replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach((methodName) => {\n Object.defineProperty(obj, methodName + accessorName, {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: function (arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true,\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if (\n !key ||\n self[key] === undefined ||\n _rewrite === true ||\n (_rewrite === undefined && self[key] !== false)\n ) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite);\n } else if (utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isObject(header) && utils.isIterable(header)) {\n let obj = {},\n dest,\n key;\n for (const entry of header) {\n if (!utils.isArray(entry)) {\n throw TypeError('Object iterator must return a key-value pair');\n }\n\n obj[(key = entry[0])] = (dest = obj[key])\n ? utils.isArray(dest)\n ? [...dest, entry[1]]\n : [dest, entry[1]]\n : entry[1];\n }\n\n setHeaders(obj, valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(\n key &&\n this[key] !== undefined &&\n (!matcher || matchHeaderValue(this, this[key], key, matcher))\n );\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null &&\n value !== false &&\n (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON())\n .map(([header, value]) => header + ': ' + value)\n .join('\\n');\n }\n\n getSetCookie() {\n return this.get('set-cookie') || [];\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals =\n (this[$internals] =\n this[$internals] =\n {\n accessors: {},\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor([\n 'Content-Type',\n 'Content-Length',\n 'Accept',\n 'Accept-Encoding',\n 'User-Agent',\n 'Authorization',\n]);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n },\n };\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst REDACTED = '[REDACTED ****]';\n\nfunction hasOwnOrPrototypeToJSON(source) {\n if (utils.hasOwnProp(source, 'toJSON')) {\n return true;\n }\n\n let prototype = Object.getPrototypeOf(source);\n\n while (prototype && prototype !== Object.prototype) {\n if (utils.hasOwnProp(prototype, 'toJSON')) {\n return true;\n }\n\n prototype = Object.getPrototypeOf(prototype);\n }\n\n return false;\n}\n\n// Build a plain-object snapshot of `config` and replace the value of any key\n// (case-insensitive) listed in `redactKeys` with REDACTED. Walks through arrays\n// and AxiosHeaders, and short-circuits on circular references.\nfunction redactConfig(config, redactKeys) {\n const lowerKeys = new Set(redactKeys.map((k) => String(k).toLowerCase()));\n const seen = [];\n\n const visit = (source) => {\n if (source === null || typeof source !== 'object') return source;\n if (utils.isBuffer(source)) return source;\n if (seen.indexOf(source) !== -1) return undefined;\n\n if (source instanceof AxiosHeaders) {\n source = source.toJSON();\n }\n\n seen.push(source);\n\n let result;\n if (utils.isArray(source)) {\n result = [];\n source.forEach((v, i) => {\n const reducedValue = visit(v);\n if (!utils.isUndefined(reducedValue)) {\n result[i] = reducedValue;\n }\n });\n } else {\n if (!utils.isPlainObject(source) && hasOwnOrPrototypeToJSON(source)) {\n seen.pop();\n return source;\n }\n\n result = Object.create(null);\n for (const [key, value] of Object.entries(source)) {\n const reducedValue = lowerKeys.has(key.toLowerCase()) ? REDACTED : visit(value);\n if (!utils.isUndefined(reducedValue)) {\n result[key] = reducedValue;\n }\n }\n }\n\n seen.pop();\n return result;\n };\n\n return visit(config);\n}\n\nclass AxiosError extends Error {\n static from(error, code, config, request, response, customProps) {\n const axiosError = new AxiosError(error.message, code || error.code, config, request, response);\n axiosError.cause = error;\n axiosError.name = error.name;\n\n // Preserve status from the original error if not already set from response\n if (error.status != null && axiosError.status == null) {\n axiosError.status = error.status;\n }\n\n customProps && Object.assign(axiosError, customProps);\n return axiosError;\n }\n\n /**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\n constructor(message, code, config, request, response) {\n super(message);\n\n // Make message enumerable to maintain backward compatibility\n // The native Error constructor sets message as non-enumerable,\n // but axios < v1.13.3 had it as enumerable\n Object.defineProperty(this, 'message', {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: message,\n enumerable: true,\n writable: true,\n configurable: true,\n });\n\n this.name = 'AxiosError';\n this.isAxiosError = true;\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status;\n }\n }\n\n toJSON() {\n // Opt-in redaction: when the request config carries a `redact` array, the\n // value of any matching key (case-insensitive, at any depth) is replaced\n // with REDACTED in the serialized snapshot. Undefined or empty leaves the\n // existing serialization behavior unchanged.\n const config = this.config;\n const redactKeys = config && utils.hasOwnProp(config, 'redact') ? config.redact : undefined;\n const serializedConfig =\n utils.isArray(redactKeys) && redactKeys.length > 0\n ? redactConfig(config, redactKeys)\n : utils.toJSONObject(config);\n\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: serializedConfig,\n code: this.code,\n status: this.status,\n };\n }\n}\n\n// This can be changed to static properties as soon as the parser options in .eslint.cjs are updated.\nAxiosError.ERR_BAD_OPTION_VALUE = 'ERR_BAD_OPTION_VALUE';\nAxiosError.ERR_BAD_OPTION = 'ERR_BAD_OPTION';\nAxiosError.ECONNABORTED = 'ECONNABORTED';\nAxiosError.ETIMEDOUT = 'ETIMEDOUT';\nAxiosError.ECONNREFUSED = 'ECONNREFUSED';\nAxiosError.ERR_NETWORK = 'ERR_NETWORK';\nAxiosError.ERR_FR_TOO_MANY_REDIRECTS = 'ERR_FR_TOO_MANY_REDIRECTS';\nAxiosError.ERR_DEPRECATED = 'ERR_DEPRECATED';\nAxiosError.ERR_BAD_RESPONSE = 'ERR_BAD_RESPONSE';\nAxiosError.ERR_BAD_REQUEST = 'ERR_BAD_REQUEST';\nAxiosError.ERR_CANCELED = 'ERR_CANCELED';\nAxiosError.ERR_NOT_SUPPORT = 'ERR_NOT_SUPPORT';\nAxiosError.ERR_INVALID_URL = 'ERR_INVALID_URL';\nAxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = 'ERR_FORM_DATA_DEPTH_EXCEEDED';\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path\n .concat(key)\n .map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n })\n .join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(\n options,\n {\n metaTokens: true,\n dots: false,\n indexes: false,\n },\n false,\n function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n }\n );\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || (typeof Blob !== 'undefined' && Blob);\n const maxDepth = options.maxDepth === undefined ? 100 : options.maxDepth;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isBoolean(value)) {\n return value.toString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (utils.isReactNative(formData) && utils.isReactNativeBlob(value)) {\n formData.append(renderKey(path, key, dots), convertValue(value));\n return false;\n }\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value)))\n ) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) &&\n formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true\n ? renderKey([key], index, dots)\n : indexes === null\n ? key\n : key + '[]',\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable,\n });\n\n function build(value, path, depth = 0) {\n if (utils.isUndefined(value)) return;\n\n if (depth > maxDepth) {\n throw new AxiosError(\n 'Object is too deeply nested (' + depth + ' levels). Max depth: ' + maxDepth,\n AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED\n );\n }\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result =\n !(utils.isUndefined(el) || el === null) &&\n visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key], depth + 1);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder\n ? function (value) {\n return encoder.call(this, value, encode);\n }\n : encode;\n\n return this._pairs\n .map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '')\n .join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces URL-encoded forms of `:`, `$`, `,`, and spaces with\n * their plain counterparts (`:`, `$`, `,`, `+`).\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nexport function encode(val) {\n return encodeURIComponent(val)\n .replace(/%3A/gi, ':')\n .replace(/%24/g, '$')\n .replace(/%2C/gi, ',')\n .replace(/%20/g, '+');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n if (!params) {\n return url;\n }\n\n const _encode = (options && options.encode) || encode;\n\n const _options = utils.isFunction(options)\n ? {\n serialize: options,\n }\n : options;\n\n const serializeFn = _options && _options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, _options);\n } else {\n serializedParams = utils.isURLSearchParams(params)\n ? params.toString()\n : new AxiosURLSearchParams(params, _options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf('#');\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n * @param {Object} options The options for the interceptor, synchronous and runWhen\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null,\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {void}\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false,\n legacyInterceptorReqResOrdering: true,\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict';\n\nexport default typeof Blob !== 'undefined' ? Blob : null;\n","import URLSearchParams from './classes/URLSearchParams.js';\nimport FormData from './classes/FormData.js';\nimport Blob from './classes/Blob.js';\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob,\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data'],\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = (typeof navigator === 'object' && navigator) || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv =\n hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = (hasBrowserEnv && window.location.href) || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin,\n};\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform,\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), {\n visitor: function (value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n },\n ...options,\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map((match) => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = utils.isArray(target[name])\n ? target[name].concat(value)\n : [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst own = (obj, key) => (obj != null && utils.hasOwnProp(obj, key) ? obj[key] : undefined);\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [\n function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n const formSerializer = own(this, 'formSerializer');\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, formSerializer).toString();\n }\n\n if (\n (isFileList = utils.isFileList(data)) ||\n contentType.indexOf('multipart/form-data') > -1\n ) {\n const env = own(this, 'env');\n const _FormData = env && env.FormData;\n\n return toFormData(\n isFileList ? { 'files[]': data } : data,\n _FormData && new _FormData(),\n formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n },\n ],\n\n transformResponse: [\n function transformResponse(data) {\n const transitional = own(this, 'transitional') || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const responseType = own(this, 'responseType');\n const JSONRequested = responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (\n data &&\n utils.isString(data) &&\n ((forcedJSONParsing && !responseType) || JSONRequested)\n ) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data, own(this, 'parseReviver'));\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, own(this, 'response'));\n }\n throw e;\n }\n }\n }\n\n return data;\n },\n ],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob,\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n Accept: 'application/json, text/plain, */*',\n 'Content-Type': undefined,\n },\n },\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'query'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\n\nclass CanceledError extends AxiosError {\n /**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\n constructor(message, config, request) {\n super(message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n this.__CANCEL__ = true;\n }\n}\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n response.status >= 400 && response.status < 500 ? AxiosError.ERR_BAD_REQUEST : AxiosError.ERR_BAD_RESPONSE,\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25}):(?:\\/\\/)?/.exec(url);\n return (match && match[1]) || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round((bytesCount * 1000) / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn(...args);\n };\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if (passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs);\n }, threshold - passed);\n }\n }\n };\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from './speedometer.js';\nimport throttle from './throttle.js';\nimport utils from '../utils.js';\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle((e) => {\n const rawLoaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const loaded = total != null ? Math.min(rawLoaded, total) : rawLoaded;\n const progressBytes = Math.max(0, loaded - bytesNotified);\n const rate = _speedometer(progressBytes);\n\n bytesNotified = Math.max(bytesNotified, loaded);\n\n const data = {\n loaded,\n total,\n progress: total ? loaded / total : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true,\n };\n\n listener(data);\n }, freq);\n};\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [\n (loaded) =>\n throttled[0]({\n lengthComputable,\n total,\n loaded,\n }),\n throttled[1],\n ];\n};\n\nexport const asyncDecorator =\n (fn) =>\n (...args) =>\n utils.asap(() => fn(...args));\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv\n ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n })(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n )\n : () => true;\n","import utils from '../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv\n ? // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure, sameSite) {\n if (typeof document === 'undefined') return;\n\n const cookie = [`${name}=${encodeURIComponent(value)}`];\n\n if (utils.isNumber(expires)) {\n cookie.push(`expires=${new Date(expires).toUTCString()}`);\n }\n if (utils.isString(path)) {\n cookie.push(`path=${path}`);\n }\n if (utils.isString(domain)) {\n cookie.push(`domain=${domain}`);\n }\n if (secure === true) {\n cookie.push('secure');\n }\n if (utils.isString(sameSite)) {\n cookie.push(`SameSite=${sameSite}`);\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n if (typeof document === 'undefined') return null;\n // Match name=value by splitting on the semicolon separator instead of building a\n // RegExp from `name` β€” interpolating an unescaped string into a RegExp would let\n // metacharacters (e.g. `.+?` in an attacker-influenced cookie name) cause ReDoS or\n // match the wrong cookie. Browsers may serialize cookie pairs as either \";\" or\n // \"; \", so ignore optional whitespace before each cookie name.\n const cookies = document.cookie.split(';');\n for (let i = 0; i < cookies.length; i++) {\n const cookie = cookies[i].replace(/^\\s+/, '');\n const eq = cookie.indexOf('=');\n if (eq !== -1 && cookie.slice(0, eq) === name) {\n return decodeURIComponent(cookie.slice(eq + 1));\n }\n }\n return null;\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000, '/');\n },\n }\n : // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {},\n };\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n if (typeof url !== 'string') {\n return false;\n }\n\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {\n let isRelativeUrl = !isAbsoluteURL(requestedURL);\n if (baseURL && (isRelativeUrl || allowAbsoluteUrls === false)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst headersToObject = (thing) => (thing instanceof AxiosHeaders ? { ...thing } : thing);\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n\n // Use a null-prototype object so that downstream reads such as `config.auth`\n // or `config.baseURL` cannot inherit polluted values from Object.prototype.\n // `hasOwnProperty` is restored as a non-enumerable own slot to preserve\n // ergonomics for user code that relies on it.\n const config = Object.create(null);\n Object.defineProperty(config, 'hasOwnProperty', {\n // Null-proto descriptor so a polluted Object.prototype.get cannot turn\n // this data descriptor into an accessor descriptor on the way in.\n __proto__: null,\n value: Object.prototype.hasOwnProperty,\n enumerable: false,\n writable: true,\n configurable: true,\n });\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({ caseless }, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(a, b, prop, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (utils.hasOwnProp(config2, prop)) {\n return getMergedValue(a, b);\n } else if (utils.hasOwnProp(config1, prop)) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n allowedSocketPaths: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b, prop) =>\n mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true),\n };\n\n utils.forEach(Object.keys({ ...config1, ...config2 }), function computeConfigValue(prop) {\n if (prop === '__proto__' || prop === 'constructor' || prop === 'prototype') return;\n const merge = utils.hasOwnProp(mergeMap, prop) ? mergeMap[prop] : mergeDeepProperties;\n const a = utils.hasOwnProp(config1, prop) ? config1[prop] : undefined;\n const b = utils.hasOwnProp(config2, prop) ? config2[prop] : undefined;\n const configValue = merge(a, b, prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from '../platform/index.js';\nimport utils from '../utils.js';\nimport isURLSameOrigin from './isURLSameOrigin.js';\nimport cookies from './cookies.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport mergeConfig from '../core/mergeConfig.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport buildURL from './buildURL.js';\n\nconst FORM_DATA_CONTENT_HEADERS = ['content-type', 'content-length'];\n\nfunction setFormDataHeaders(headers, formHeaders, policy) {\n if (policy !== 'content-only') {\n headers.set(formHeaders);\n return;\n }\n\n Object.entries(formHeaders).forEach(([key, val]) => {\n if (FORM_DATA_CONTENT_HEADERS.includes(key.toLowerCase())) {\n headers.set(key, val);\n }\n });\n}\n\n/**\n * Encode a UTF-8 string to a Latin-1 byte string for use with btoa().\n * This is a modern replacement for the deprecated unescape(encodeURIComponent(str)) pattern.\n *\n * @param {string} str The string to encode\n *\n * @returns {string} UTF-8 bytes as a Latin-1 string\n */\nconst encodeUTF8 = (str) =>\n encodeURIComponent(str).replace(/%([0-9A-F]{2})/gi, (_, hex) =>\n String.fromCharCode(parseInt(hex, 16))\n );\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n // Read only own properties to prevent prototype pollution gadgets\n // (e.g. Object.prototype.baseURL = 'https://evil.com').\n const own = (key) => (utils.hasOwnProp(newConfig, key) ? newConfig[key] : undefined);\n\n const data = own('data');\n let withXSRFToken = own('withXSRFToken');\n const xsrfHeaderName = own('xsrfHeaderName');\n const xsrfCookieName = own('xsrfCookieName');\n let headers = own('headers');\n const auth = own('auth');\n const baseURL = own('baseURL');\n const allowAbsoluteUrls = own('allowAbsoluteUrls');\n const url = own('url');\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(\n buildFullPath(baseURL, url, allowAbsoluteUrls),\n config.params,\n config.paramsSerializer\n );\n\n // HTTP basic authentication\n if (auth) {\n headers.set(\n 'Authorization',\n 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? encodeUTF8(auth.password) : ''))\n );\n }\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // browser handles it\n } else if (utils.isFunction(data.getHeaders)) {\n // Node.js FormData (like form-data package)\n setFormDataHeaders(headers, data.getHeaders(), own('formDataHeaderPolicy'));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n if (utils.isFunction(withXSRFToken)) {\n withXSRFToken = withXSRFToken(newConfig);\n }\n\n // Strict boolean check β€” prevents proto-pollution gadgets (e.g. Object.prototype.withXSRFToken = 1)\n // and misconfigurations (e.g. \"false\") from short-circuiting the same-origin check and leaking\n // the XSRF token cross-origin.\n const shouldSendXSRF =\n withXSRFToken === true || (withXSRFToken == null && isURLSameOrigin(newConfig.url));\n\n if (shouldSendXSRF) {\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n};\n","import utils from '../utils.js';\nimport settle from '../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport { progressEventReducer } from '../helpers/progressEventReducer.js';\nimport resolveConfig from '../helpers/resolveConfig.js';\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported &&\n function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let { responseType, onUploadProgress, onDownloadProgress } = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData =\n !responseType || responseType === 'text' || responseType === 'json'\n ? request.responseText\n : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request,\n };\n\n settle(\n function _resolve(value) {\n resolve(value);\n done();\n },\n function _reject(err) {\n reject(err);\n done();\n },\n response\n );\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (\n request.status === 0 &&\n !(request.responseURL && request.responseURL.startsWith('file:'))\n ) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n done();\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError(event) {\n // Browsers deliver a ProgressEvent in XHR onerror\n // (message may be empty; when present, surface it)\n // See https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/error_event\n const msg = event && event.message ? event.message : 'Network Error';\n const err = new AxiosError(msg, AxiosError.ERR_NETWORK, config, request);\n // attach the underlying event for consumers who want details\n err.event = event || null;\n reject(err);\n done();\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout\n ? 'timeout of ' + _config.timeout + 'ms exceeded'\n : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(\n new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request\n )\n );\n done();\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true);\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress);\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = (cancel) => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n done();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted\n ? onCanceled()\n : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && !platform.protocols.includes(protocol)) {\n reject(\n new AxiosError(\n 'Unsupported protocol ' + protocol + ':',\n AxiosError.ERR_BAD_REQUEST,\n config\n )\n );\n return;\n }\n\n // Send the request\n request.send(requestData || null);\n });\n };\n","import CanceledError from '../cancel/CanceledError.js';\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const { length } = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(\n err instanceof AxiosError\n ? err\n : new CanceledError(err instanceof Error ? err.message : err)\n );\n }\n };\n\n let timer =\n timeout &&\n setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout of ${timeout}ms exceeded`, AxiosError.ETIMEDOUT));\n }, timeout);\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach((signal) => {\n signal.unsubscribe\n ? signal.unsubscribe(onabort)\n : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n };\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const { signal } = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n};\n\nexport default composeSignals;\n","export const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n};\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n};\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n};\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n };\n\n return new ReadableStream(\n {\n async pull(controller) {\n try {\n const { done, value } = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = (bytes += len);\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n },\n },\n {\n highWaterMark: 2,\n }\n );\n};\n","/**\n * Estimate decoded byte length of a data:// URL *without* allocating large buffers.\n * - For base64: compute exact decoded size using length and padding;\n * handle %XX at the character-count level (no string allocation).\n * - For non-base64: use UTF-8 byteLength of the encoded body as a safe upper bound.\n *\n * @param {string} url\n * @returns {number}\n */\nexport default function estimateDataURLDecodedBytes(url) {\n if (!url || typeof url !== 'string') return 0;\n if (!url.startsWith('data:')) return 0;\n\n const comma = url.indexOf(',');\n if (comma < 0) return 0;\n\n const meta = url.slice(5, comma);\n const body = url.slice(comma + 1);\n const isBase64 = /;base64/i.test(meta);\n\n if (isBase64) {\n let effectiveLen = body.length;\n const len = body.length; // cache length\n\n for (let i = 0; i < len; i++) {\n if (body.charCodeAt(i) === 37 /* '%' */ && i + 2 < len) {\n const a = body.charCodeAt(i + 1);\n const b = body.charCodeAt(i + 2);\n const isHex =\n ((a >= 48 && a <= 57) || (a >= 65 && a <= 70) || (a >= 97 && a <= 102)) &&\n ((b >= 48 && b <= 57) || (b >= 65 && b <= 70) || (b >= 97 && b <= 102));\n\n if (isHex) {\n effectiveLen -= 2;\n i += 2;\n }\n }\n }\n\n let pad = 0;\n let idx = len - 1;\n\n const tailIsPct3D = (j) =>\n j >= 2 &&\n body.charCodeAt(j - 2) === 37 && // '%'\n body.charCodeAt(j - 1) === 51 && // '3'\n (body.charCodeAt(j) === 68 || body.charCodeAt(j) === 100); // 'D' or 'd'\n\n if (idx >= 0) {\n if (body.charCodeAt(idx) === 61 /* '=' */) {\n pad++;\n idx--;\n } else if (tailIsPct3D(idx)) {\n pad++;\n idx -= 3;\n }\n }\n\n if (pad === 1 && idx >= 0) {\n if (body.charCodeAt(idx) === 61 /* '=' */) {\n pad++;\n } else if (tailIsPct3D(idx)) {\n pad++;\n }\n }\n\n const groups = Math.floor(effectiveLen / 4);\n const bytes = groups * 3 - (pad || 0);\n return bytes > 0 ? bytes : 0;\n }\n\n if (typeof Buffer !== 'undefined' && typeof Buffer.byteLength === 'function') {\n return Buffer.byteLength(body, 'utf8');\n }\n\n // Compute UTF-8 byte length directly from UTF-16 code units without allocating\n // a byte buffer (TextEncoder.encode would defeat the DoS guard on large bodies).\n // Using body.length here would undercount non-ASCII (e.g. '€' is 1 code unit\n // but 3 UTF-8 bytes).\n let bytes = 0;\n for (let i = 0, len = body.length; i < len; i++) {\n const c = body.charCodeAt(i);\n if (c < 0x80) {\n bytes += 1;\n } else if (c < 0x800) {\n bytes += 2;\n } else if (c >= 0xd800 && c <= 0xdbff && i + 1 < len) {\n const next = body.charCodeAt(i + 1);\n if (next >= 0xdc00 && next <= 0xdfff) {\n bytes += 4;\n i++;\n } else {\n bytes += 3;\n }\n } else {\n bytes += 3;\n }\n }\n return bytes;\n}\n","export const VERSION = \"1.16.0\";","import platform from '../platform/index.js';\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport composeSignals from '../helpers/composeSignals.js';\nimport { trackStream } from '../helpers/trackStream.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {\n progressEventReducer,\n progressEventDecorator,\n asyncDecorator,\n} from '../helpers/progressEventReducer.js';\nimport resolveConfig from '../helpers/resolveConfig.js';\nimport settle from '../core/settle.js';\nimport estimateDataURLDecodedBytes from '../helpers/estimateDataURLDecodedBytes.js';\nimport { VERSION } from '../env/data.js';\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst { isFunction } = utils;\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false;\n }\n};\n\nconst factory = (env) => {\n const globalObject = utils.global ?? globalThis;\n const { ReadableStream, TextEncoder } = globalObject;\n\n env = utils.merge.call(\n {\n skipUndefined: true,\n },\n {\n Request: globalObject.Request,\n Response: globalObject.Response,\n },\n env\n );\n\n const { fetch: envFetch, Request, Response } = env;\n const isFetchSupported = envFetch ? isFunction(envFetch) : typeof fetch === 'function';\n const isRequestSupported = isFunction(Request);\n const isResponseSupported = isFunction(Response);\n\n if (!isFetchSupported) {\n return false;\n }\n\n const isReadableStreamSupported = isFetchSupported && isFunction(ReadableStream);\n\n const encodeText =\n isFetchSupported &&\n (typeof TextEncoder === 'function'\n ? (\n (encoder) => (str) =>\n encoder.encode(str)\n )(new TextEncoder())\n : async (str) => new Uint8Array(await new Request(str).arrayBuffer()));\n\n const supportsRequestStream =\n isRequestSupported &&\n isReadableStreamSupported &&\n test(() => {\n let duplexAccessed = false;\n\n const request = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n });\n\n const hasContentType = request.headers.has('Content-Type');\n\n if (request.body != null) {\n request.body.cancel();\n }\n\n return duplexAccessed && !hasContentType;\n });\n\n const supportsResponseStream =\n isResponseSupported &&\n isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n const resolvers = {\n stream: supportsResponseStream && ((res) => res.body),\n };\n\n isFetchSupported &&\n (() => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach((type) => {\n !resolvers[type] &&\n (resolvers[type] = (res, config) => {\n let method = res && res[type];\n\n if (method) {\n return method.call(res);\n }\n\n throw new AxiosError(\n `Response type '${type}' is not supported`,\n AxiosError.ERR_NOT_SUPPORT,\n config\n );\n });\n });\n })();\n\n const getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if (utils.isBlob(body)) {\n return body.size;\n }\n\n if (utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if (utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if (utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if (utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n };\n\n const resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n };\n\n return async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions,\n maxContentLength,\n maxBodyLength,\n } = resolveConfig(config);\n\n const hasMaxContentLength = utils.isNumber(maxContentLength) && maxContentLength > -1;\n const hasMaxBodyLength = utils.isNumber(maxBodyLength) && maxBodyLength > -1;\n\n let _fetch = envFetch || fetch;\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals(\n [signal, cancelToken && cancelToken.toAbortSignal()],\n timeout\n );\n\n let request = null;\n\n const unsubscribe =\n composedSignal &&\n composedSignal.unsubscribe &&\n (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n // Enforce maxContentLength for data: URLs up-front so we never materialize\n // an oversized payload. The HTTP adapter applies the same check (see http.js\n // \"if (protocol === 'data:')\" branch).\n if (hasMaxContentLength && typeof url === 'string' && url.startsWith('data:')) {\n const estimated = estimateDataURLDecodedBytes(url);\n if (estimated > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n // Enforce maxBodyLength against the outbound request body before dispatch.\n // Mirrors http.js behavior (ERR_BAD_REQUEST / 'Request body larger than\n // maxBodyLength limit'). Skip when the body length cannot be determined\n // (e.g. a live ReadableStream supplied by the caller).\n if (hasMaxBodyLength && method !== 'get' && method !== 'head') {\n const outboundLength = await resolveBodyLength(headers, data);\n if (\n typeof outboundLength === 'number' &&\n isFinite(outboundLength) &&\n outboundLength > maxBodyLength\n ) {\n throw new AxiosError(\n 'Request body larger than maxBodyLength limit',\n AxiosError.ERR_BAD_REQUEST,\n config,\n request\n );\n }\n }\n\n if (\n onUploadProgress &&\n supportsRequestStream &&\n method !== 'get' &&\n method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: 'half',\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader);\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = isRequestSupported && 'credentials' in Request.prototype;\n\n // If data is FormData and Content-Type is multipart/form-data without boundary,\n // delete it so fetch can set it correctly with the boundary\n if (utils.isFormData(data)) {\n const contentType = headers.getContentType();\n if (\n contentType &&\n /^multipart\\/form-data/i.test(contentType) &&\n !/boundary=/i.test(contentType)\n ) {\n headers.delete('content-type');\n }\n }\n\n // Set User-Agent header if not already set (fetch defaults to 'node' in Node.js)\n headers.set('User-Agent', 'axios/' + VERSION, false);\n\n const resolvedOptions = {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: 'half',\n credentials: isCredentialsSupported ? withCredentials : undefined,\n };\n\n request = isRequestSupported && new Request(url, resolvedOptions);\n\n let response = await (isRequestSupported\n ? _fetch(request, fetchOptions)\n : _fetch(url, resolvedOptions));\n\n // Cheap pre-check: if the server honestly declares a content-length that\n // already exceeds the cap, reject before we start streaming.\n if (hasMaxContentLength) {\n const declaredLength = utils.toFiniteNumber(response.headers.get('content-length'));\n if (declaredLength != null && declaredLength > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n const isStreamResponse =\n supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (\n supportsResponseStream &&\n response.body &&\n (onDownloadProgress || hasMaxContentLength || (isStreamResponse && unsubscribe))\n ) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach((prop) => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] =\n (onDownloadProgress &&\n progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n )) ||\n [];\n\n let bytesRead = 0;\n const onChunkProgress = (loadedBytes) => {\n if (hasMaxContentLength) {\n bytesRead = loadedBytes;\n if (bytesRead > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n onProgress && onProgress(loadedBytes);\n };\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onChunkProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](\n response,\n config\n );\n\n // Fallback enforcement for environments without ReadableStream support\n // (legacy runtimes). Detect materialized size from typed output; skip\n // streams/Response passthrough since the user will read those themselves.\n if (hasMaxContentLength && !supportsResponseStream && !isStreamResponse) {\n let materializedSize;\n if (responseData != null) {\n if (typeof responseData.byteLength === 'number') {\n materializedSize = responseData.byteLength;\n } else if (typeof responseData.size === 'number') {\n materializedSize = responseData.size;\n } else if (typeof responseData === 'string') {\n materializedSize =\n typeof TextEncoder === 'function'\n ? new TextEncoder().encode(responseData).byteLength\n : responseData.length;\n }\n }\n if (typeof materializedSize === 'number' && materializedSize > maxContentLength) {\n throw new AxiosError(\n 'maxContentLength size of ' + maxContentLength + ' exceeded',\n AxiosError.ERR_BAD_RESPONSE,\n config,\n request\n );\n }\n }\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request,\n });\n });\n } catch (err) {\n unsubscribe && unsubscribe();\n\n // Safari can surface fetch aborts as a DOMException-like object whose\n // branded getters throw. Prefer our composed signal reason before reading\n // the caught error, preserving timeout vs cancellation semantics.\n if (composedSignal && composedSignal.aborted && composedSignal.reason instanceof AxiosError) {\n const canceledError = composedSignal.reason;\n canceledError.config = config;\n request && (canceledError.request = request);\n err !== canceledError && (canceledError.cause = err);\n throw canceledError;\n }\n\n if (err && err.name === 'TypeError' && /Load failed|fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError(\n 'Network Error',\n AxiosError.ERR_NETWORK,\n config,\n request,\n err && err.response\n ),\n {\n cause: err.cause || err,\n }\n );\n }\n\n throw AxiosError.from(err, err && err.code, config, request, err && err.response);\n }\n };\n};\n\nconst seedCache = new Map();\n\nexport const getFetch = (config) => {\n let env = (config && config.env) || {};\n const { fetch, Request, Response } = env;\n const seeds = [Request, Response, fetch];\n\n let len = seeds.length,\n i = len,\n seed,\n target,\n map = seedCache;\n\n while (i--) {\n seed = seeds[i];\n target = map.get(seed);\n\n target === undefined && map.set(seed, (target = i ? new Map() : factory(env)));\n\n map = target;\n }\n\n return target;\n};\n\nconst adapter = getFetch();\n\nexport default adapter;\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport * as fetchAdapter from './fetch.js';\nimport AxiosError from '../core/AxiosError.js';\n\n/**\n * Known adapters mapping.\n * Provides environment-specific adapters for Axios:\n * - `http` for Node.js\n * - `xhr` for browsers\n * - `fetch` for fetch API-based requests\n *\n * @type {Object}\n */\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: {\n get: fetchAdapter.getFetch,\n },\n};\n\n// Assign adapter names for easier debugging and identification\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n // Null-proto descriptors so a polluted Object.prototype.get cannot turn\n // these data descriptors into accessor descriptors on the way in.\n Object.defineProperty(fn, 'name', { __proto__: null, value });\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', { __proto__: null, value });\n }\n});\n\n/**\n * Render a rejection reason string for unknown or unsupported adapters\n *\n * @param {string} reason\n * @returns {string}\n */\nconst renderReason = (reason) => `- ${reason}`;\n\n/**\n * Check if the adapter is resolved (function, null, or false)\n *\n * @param {Function|null|false} adapter\n * @returns {boolean}\n */\nconst isResolvedHandle = (adapter) =>\n utils.isFunction(adapter) || adapter === null || adapter === false;\n\n/**\n * Get the first suitable adapter from the provided list.\n * Tries each adapter in order until a supported one is found.\n * Throws an AxiosError if no adapter is suitable.\n *\n * @param {Array|string|Function} adapters - Adapter(s) by name or function.\n * @param {Object} config - Axios request configuration\n * @throws {AxiosError} If no suitable adapter is available\n * @returns {Function} The resolved adapter function\n */\nfunction getAdapter(adapters, config) {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const { length } = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter && (utils.isFunction(adapter) || (adapter = adapter.get(config)))) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n const reasons = Object.entries(rejectedReasons).map(\n ([id, state]) =>\n `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length\n ? reasons.length > 1\n ? 'since :\\n' + reasons.map(renderReason).join('\\n')\n : ' ' + renderReason(reasons[0])\n : 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n}\n\n/**\n * Exports Axios adapters and utility to resolve an adapter\n */\nexport default {\n /**\n * Resolve an adapter from a list of adapter names or functions.\n * @type {Function}\n */\n getAdapter,\n\n /**\n * Exposes all known adapters\n * @type {Object}\n */\n adapters: knownAdapters,\n};\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from '../adapters/adapters.js';\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(config, config.transformRequest);\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter, config);\n\n return adapter(config).then(\n function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Expose the current response on config so that transformResponse can\n // attach it to any AxiosError it throws (e.g. on JSON parse failure).\n // We clean it up afterwards to avoid polluting the config object.\n config.response = response;\n try {\n response.data = transformData.call(config, config.transformResponse, response);\n } finally {\n delete config.response;\n }\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n },\n function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n config.response = reason.response;\n try {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n } finally {\n delete config.response;\n }\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n }\n );\n}\n","'use strict';\n\nimport { VERSION } from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return (\n '[Axios v' +\n VERSION +\n \"] Transitional option '\" +\n opt +\n \"'\" +\n desc +\n (message ? '. ' + message : '')\n );\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n // Use hasOwnProperty so a polluted Object.prototype. cannot supply\n // a non-function validator and cause a TypeError.\n const validator = Object.prototype.hasOwnProperty.call(schema, opt) ? schema[opt] : undefined;\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError(\n 'option ' + opt + ' must be ' + result,\n AxiosError.ERR_BAD_OPTION_VALUE\n );\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators,\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nimport transitionalDefaults from '../defaults/transitional.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig || {};\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager(),\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = (() => {\n if (!dummy.stack) {\n return '';\n }\n\n const firstNewlineIndex = dummy.stack.indexOf('\\n');\n\n return firstNewlineIndex === -1 ? '' : dummy.stack.slice(firstNewlineIndex + 1);\n })();\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack) {\n const firstNewlineIndex = stack.indexOf('\\n');\n const secondNewlineIndex =\n firstNewlineIndex === -1 ? -1 : stack.indexOf('\\n', firstNewlineIndex + 1);\n const stackWithoutTwoTopLines =\n secondNewlineIndex === -1 ? '' : stack.slice(secondNewlineIndex + 1);\n\n if (!String(err.stack).endsWith(stackWithoutTwoTopLines)) {\n err.stack += '\\n' + stack;\n }\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const { transitional, paramsSerializer, headers } = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(\n transitional,\n {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean),\n legacyInterceptorReqResOrdering: validators.transitional(validators.boolean),\n },\n false\n );\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer,\n };\n } else {\n validator.assertOptions(\n paramsSerializer,\n {\n encode: validators.function,\n serialize: validators.function,\n },\n true\n );\n }\n }\n\n // Set config.allowAbsoluteUrls\n if (config.allowAbsoluteUrls !== undefined) {\n // do nothing\n } else if (this.defaults.allowAbsoluteUrls !== undefined) {\n config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;\n } else {\n config.allowAbsoluteUrls = true;\n }\n\n validator.assertOptions(\n config,\n {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken'),\n },\n true\n );\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(headers.common, headers[config.method]);\n\n headers &&\n utils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'query', 'common'], (method) => {\n delete headers[method];\n });\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n const transitional = config.transitional || transitionalDefaults;\n const legacyInterceptorReqResOrdering =\n transitional && transitional.legacyInterceptorReqResOrdering;\n\n if (legacyInterceptorReqResOrdering) {\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n } else {\n requestInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n }\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift(...requestInterceptorChain);\n chain.push(...responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function (url, config) {\n return this.request(\n mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data,\n })\n );\n };\n});\n\nutils.forEach(['post', 'put', 'patch', 'query'], function forEachMethodWithData(method) {\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(\n mergeConfig(config || {}, {\n method,\n headers: isForm\n ? {\n 'Content-Type': 'multipart/form-data',\n }\n : {},\n url,\n data,\n })\n );\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n // QUERY is a safe/idempotent read method; multipart form bodies don't fit\n // its semantics, so no queryForm shorthand is generated.\n if (method !== 'query') {\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n }\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then((cancel) => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = (onfulfilled) => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise((resolve) => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel,\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * const args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && payload.isAxiosError === true;\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n WebServerIsDown: 521,\n ConnectionTimedOut: 522,\n OriginIsUnreachable: 523,\n TimeoutOccurred: 524,\n SslHandshakeFailed: 525,\n InvalidSslCertificate: 526,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport { VERSION } from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from './core/AxiosHeaders.js';\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, { allOwnKeys: true });\n\n // Copy context to instance\n utils.extend(instance, context, null, { allOwnKeys: true });\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = (thing) => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios;\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig,\n create,\n} = axios;\n\nexport {\n axios as default,\n create,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig,\n};\n","/*!\n * SPDX-License-Identifier: GPL-3.0-or-later\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n */\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport Axios from 'axios';\n/**\n * Get an Axios instance with default Nextcloud headers and CSRF token handling.\n */\nexport function getCancelableClient() {\n const client = Axios.create({\n headers: {\n requesttoken: getRequestToken() ?? '',\n 'X-Requested-With': 'XMLHttpRequest',\n },\n });\n onRequestTokenUpdate((token) => {\n client.defaults.headers.requesttoken = token;\n });\n return Object.assign(client, {\n CancelToken: Axios.CancelToken,\n isCancel: Axios.isCancel,\n });\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { fetchRequestToken } from '@nextcloud/auth';\nimport { isAxiosError } from 'axios';\nconst RETRY_KEY = '_nextcloudCsrfTokenReloaded';\n/**\n * Handle CSRF token errors in Axios requests.\n *\n * @param axios - The axios instance the interceptor is attached to\n */\nexport function onCsrfTokenError(axios) {\n return async (error) => {\n if (!isAxiosError(error)) {\n throw error;\n }\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n if (config\n && !(RETRY_KEY in config)\n && response?.status === 412\n && response?.data?.message === 'CSRF check failed') {\n console.warn(`Request to ${responseURL} failed because of a CSRF mismatch. Fetching a new token.`);\n const token = await fetchRequestToken();\n axios.defaults.headers.requesttoken = token;\n return axios({\n ...config,\n [RETRY_KEY]: true,\n headers: {\n ...config.headers,\n requesttoken: token,\n },\n });\n }\n throw error;\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { isAxiosError } from 'axios';\nconst RETRY_DELAY_KEY = '_nextcloudMaintenanceModeRetryDelay';\n/**\n * Handles Nextcloud maintenance mode errors in Axios requests.\n *\n * @param axios - The current Axios instance\n */\nexport function onMaintenanceModeError(axios) {\n return async (error) => {\n if (!isAxiosError(error)) {\n throw error;\n }\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n const status = response?.status;\n const headers = response?.headers;\n let retryDelay = config?.[RETRY_DELAY_KEY] ?? 1;\n /**\n * Retry requests if they failed due to maintenance mode\n *\n * The delay is exponential. It starts at 2s and then doubles\n * until a final retry after 32s. This results in roughly 1m of\n * retries until we give up and throw the axios error towards\n * the caller.\n */\n if (status === 503\n && headers?.['x-nextcloud-maintenance-mode'] === '1'\n && config?.retryIfMaintenanceMode) {\n retryDelay *= 2;\n if (retryDelay > 32) {\n console.error('Retry delay exceeded one minute, giving up.', { responseURL });\n throw error;\n }\n console.warn(`Request to ${responseURL} failed because of maintenance mode. Retrying in ${retryDelay}s`);\n await new Promise((resolve) => {\n setTimeout(resolve, retryDelay * 1000);\n });\n return axios({\n ...config,\n [RETRY_DELAY_KEY]: retryDelay,\n });\n }\n throw error;\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { isAxiosError } from 'axios';\n/**\n * Axios response interceptor onError callback.\n * This interceptor checks if the response failed because of a expired user session\n * and if enabled it will cause a redirect to the login.\n *\n * @param error - The response error\n */\nexport async function onNotLoggedInError(error) {\n if (isAxiosError(error)) {\n const { config, response, request } = error;\n const responseURL = request?.responseURL;\n const status = response?.status;\n if (status === 401\n && response?.data?.message === 'Current user is not logged in'\n && config?.reloadExpiredSession\n && globalThis.location?.reload) {\n console.error(`Request to ${responseURL} failed because the user session expired. Reloading the page …`);\n if (globalThis.OC?.reload) {\n globalThis.OC.reload();\n }\n else {\n globalThis.location.reload();\n }\n }\n }\n throw error;\n}\n","/**\n * SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport { getCancelableClient } from \"./client.js\";\nimport { onCsrfTokenError } from \"./interceptors/csrf-token.js\";\nimport { onMaintenanceModeError } from \"./interceptors/maintenance-mode.js\";\nimport { onNotLoggedInError } from \"./interceptors/not-logged-in.js\";\nconst cancelableClient = getCancelableClient();\ncancelableClient.interceptors.response.use((r) => r, onCsrfTokenError(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onMaintenanceModeError(cancelableClient));\ncancelableClient.interceptors.response.use((r) => r, onNotLoggedInError);\nexport { isAxiosError, isCancel } from 'axios';\nexport default cancelableClient;\n","\n\n\n\n\n\n\n","\n\n\n\n\n\n\n\n\n","\n\n\n\n\n\n","\n\n\n\n\n\n\n","\n\n\n\n\n","\n\n\n\n\n\n\n","\n\n\n\n\n","\n\n\n\n\n\n\n","export default \"\\n\\n\"","export default \"\"","export default \"\"","export default \"\\n\"","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { t } from '@nextcloud/l10n'\n\n/* How to do a new release?\n * 1. Update the `version` to the current HUB release\n * 2. Update the `link` for further information\n * 3. Add release notes, each entry is a new point.\n * 4. Update the alt text for the animation if needed.\n */\nexport default {\n\t/** The HUB release version */\n\tversion: '26 Spring',\n\n\t/** Link to further information (e.g. blog post) */\n\tlink: 'https://nextcloud.com/blog/nextcloud-hub26-spring/',\n\n\t/** Release notes in list format */\n\treleaseNotes: [\n\t\t'πŸ’«' + t('firstrunwizard', 'Refined design, optimized performance'),\n\t\t'πŸ’ͺ' + t('firstrunwizard', 'Empowering developers with an open platform'),\n\t\t'✏️' + t('firstrunwizard', 'Your choice: Nextcloud Office powered by Collabora or Euro-Office'),\n\t\t'πŸ’Œ' + t('firstrunwizard', 'Delegate calendars, meetings and mail boxes for better collaboration'),\n\t\t'πŸ“ˆ' + t('firstrunwizard', 'Gantt charts, dependencies & more in Nextcloud Deck'),\n\t\t'🧠' + t('firstrunwizard', 'More agency: let the Assistant work for you across files, emails, forms, and more'),\n\t\t'🧩' + t('firstrunwizard', 'Pexip, Matrix, and more updates in integrations'),\n\t\tt('firstrunwizard', '… and many more improvements in all apps!'),\n\t\tt('firstrunwizard', 'Experience the brand new Nextcloud Hub!'),\n\t],\n\n\t/** Alternative text for the release animation */\n\tvideoAltText: t('firstrunwizard', 'Get to know the new features of Hub {version}', { version: '26 Spring' }),\n\n\t/** Subject that is used when sharing the post */\n\tshareSubject: t('firstrunwizard', 'Time to own your collaboration: Meet Nextcloud Hub 26 Spring! πŸš€'),\n}\n","\n\n\n\n\n\n\n","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { Component } from 'vue'\n\nimport { translate as t } from '@nextcloud/l10n'\nimport AboutNextcloudPage from './components/pages/AboutNextcloud.vue'\nimport DeviceIntegrationPage from './components/pages/DeviceIntegration.vue'\nimport KeyNotesPage from './components/pages/KeyNotes.vue'\nimport SharePage from './components/pages/SharePage.vue'\nimport WhatsNewPage from './components/pages/WhatsNew.vue'\nimport HubRelease from './hub-release.ts'\n\ninterface IPageButton {\n\tto: string\n\tlabel: string\n}\n\nexport interface IPage {\n\tid: string\n\tcomponent: Component\n\tbuttons: IPageButton[]\n}\n\nexport default [\n\t{\n\t\tid: 'key-aspects',\n\t\tcomponent: KeyNotesPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'whats-new',\n\t\t\t\tlabel: t('firstrunwizard', 'What\\'s new?'),\n\t\t\t},\n\t\t\t{\n\t\t\t\tto: 'devices',\n\t\t\t\tlabel: t('firstrunwizard', 'Nextcloud on all your devices'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'devices',\n\t\tcomponent: DeviceIntegrationPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'about',\n\t\t\t\tlabel: t('firstrunwizard', 'More about Nextcloud'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'about',\n\t\tcomponent: AboutNextcloudPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'whats-new',\n\t\t\t\tlabel: t('firstrunwizard', 'Nextcloud Hub {version}', { version: HubRelease.version }),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'whats-new',\n\t\tcomponent: WhatsNewPage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'share',\n\t\t\t\tlabel: t('firstrunwizard', 'Share on social media'),\n\t\t\t},\n\t\t],\n\t},\n\n\t{\n\t\tid: 'share',\n\t\tcomponent: SharePage,\n\t\tbuttons: [\n\t\t\t{\n\t\t\t\tto: 'close',\n\t\t\t\tlabel: t('firstrunwizard', 'Get started!'),\n\t\t\t},\n\t\t],\n\t},\n\n] as IPage[]\n","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { createApp } from 'vue'\nimport FirstRunWizard from './views/App.vue'\n\nlet vm: InstanceType\n/**\n * Open the wizard and mount if needed.\n *\n * @param focusReturn - Where to return focus after the wizard is closed\n */\nexport function open(focusReturn?: HTMLElement | SVGElement | string) {\n\tif (vm === undefined) {\n\t\tconst el = document.createElement('div')\n\t\tel.id = 'firstrunwizard'\n\t\tdocument.querySelector('body')!.appendChild(el)\n\t\tvm = createApp(FirstRunWizard)\n\t\t\t.mount(el) as InstanceType\n\t}\n\tvm.open(focusReturn)\n}\n"],"names":["buffer","base64Js","byteLength","toByteArray","fromByteArray","lookup","revLookup","Arr","code","i","len","getLens","b64","validLen","placeHoldersLen","lens","_byteLength","tmp","arr","curByte","tripletToBase64","num","encodeChunk","uint8","start","end","output","extraBytes","parts","maxChunkLength","len2","ieee754","offset","isLE","mLen","nBytes","e","m","eLen","eMax","eBias","nBits","d","s","value","c","rt","exports","base64","ieee754$1","customInspectSymbol","Buffer","SlowBuffer","K_MAX_LENGTH","GlobalUint8Array","GlobalArrayBuffer","GlobalSharedArrayBuffer","typedArraySupport","proto","createBuffer","length","buf","arg","encodingOrOffset","allocUnsafe","from","fromString","fromArrayView","isInstance","fromArrayBuffer","valueOf","b","fromObject","assertSize","size","alloc","fill","encoding","checked","string","actual","fromArrayLike","array","arrayView","copy","byteOffset","obj","numberIsNaN","a","x","y","list","pos","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","n","str","max","target","thisStart","thisEnd","thisCopy","targetCopy","bidirectionalIndexOf","val","dir","arrayIndexOf","indexSize","arrLength","valLength","read","foundIndex","found","j","hexWrite","remaining","strLen","parsed","utf8Write","blitBuffer","asciiWrite","asciiToBytes","base64Write","ucs2Write","utf16leToBytes","res","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","decodeCodePointsArray","MAX_ARGUMENTS_LENGTH","codePoints","ret","out","hexSliceLookupTable","bytes","newBuf","checkOffset","ext","noAssert","mul","defineBigIntMethod","validateNumber","first","last","boundsError","lo","hi","checkInt","min","maxBytes","wrtBigUInt64LE","checkIntBI","wrtBigUInt64BE","limit","sub","checkIEEE754","writeFloat","littleEndian","writeDouble","targetStart","errors","E","sym","getMessage","Base","name","range","input","msg","received","addNumericalSeparator","checkBounds","type","INVALID_BASE64_RE","base64clean","units","leadSurrogate","byteArray","src","dst","alphabet","table","i16","fn","BufferBigIntNotDefined","bind","thisArg","toString","getPrototypeOf","iterator","toStringTag","kindOf","cache","thing","kindOfTest","typeOfTest","isArray","isUndefined","isBuffer","isFunction","isArrayBuffer","isArrayBufferView","result","isString","isNumber","isObject","isBoolean","isPlainObject","prototype","isEmptyObject","isDate","isFile","isReactNativeBlob","isReactNative","formData","isBlob","isFileList","isStream","getGlobal","global","G","FormDataCtor","isFormData","kind","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","trim","forEach","allOwnKeys","l","keys","key","findKey","_key","_global","isContextDefined","context","merge","objs","caseless","skipUndefined","assignValue","targetKey","existing","hasOwnProperty","extend","stripBOM","content","inherits","constructor","superConstructor","props","descriptors","toFlatObject","sourceObj","destObj","filter","propFilter","prop","merged","endsWith","searchString","position","lastIndex","toArray","isTypedArray","TypedArray","forEachEntry","_iterator","pair","matchAll","regExp","matches","isHTMLForm","toCamelCase","p1","p2","isRegExp","reduceDescriptors","reducer","reducedDescriptors","descriptor","freezeMethods","toObjectSet","arrayOrString","delimiter","define","noop","toFiniteNumber","defaultValue","isSpecCompliantForm","toJSONObject","stack","visit","source","reducedValue","isAsyncFn","isThenable","_setImmediate","setImmediateSupported","postMessageSupported","token","callbacks","data","cb","asap","process","isIterable","utils$1","ignoreDuplicateOf","utils","parseHeaders","rawHeaders","line","$internals","INVALID_HEADER_VALUE_CHARS_RE","trimSPorHTAB","normalizeHeader","header","sanitizeHeaderValue","normalizeValue","parseTokens","tokens","tokensRE","match","isValidHeaderName","matchHeaderValue","isHeaderNameFilter","formatHeader","w","char","buildAccessors","accessorName","methodName","arg1","arg2","arg3","AxiosHeaders$1","headers","valueOrRewrite","rewrite","self","setHeader","_value","_header","_rewrite","lHeader","setHeaders","dest","entry","parser","matcher","deleted","deleteHeader","format","normalized","targets","asStrings","computed","accessors","defineAccessor","AxiosHeaders","mapped","headerValue","REDACTED","hasOwnOrPrototypeToJSON","redactConfig","config","redactKeys","lowerKeys","k","seen","v","AxiosError","error","request","response","customProps","axiosError","message","serializedConfig","httpAdapter","isVisitable","removeBrackets","renderKey","path","dots","isFlatArray","predicates","toFormData","options","option","metaTokens","visitor","defaultVisitor","indexes","_Blob","maxDepth","useBlob","convertValue","el","index","exposedHelpers","build","depth","encode","charMap","AxiosURLSearchParams","params","encoder","_encode","buildURL","url","_options","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","id","h","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","URLSearchParams","FormData","Blob","hasBrowserEnv","_navigator","hasStandardBrowserEnv","hasStandardBrowserWebWorkerEnv","origin","platform","toURLEncodedForm","helpers","parsePropPath","arrayToObject","formDataToJSON","buildPath","isNumericKey","isLast","own","stringifySafely","rawValue","defaults","contentType","hasJSONContentType","isObjectPayload","formSerializer","env","_FormData","transitional","forcedJSONParsing","responseType","JSONRequested","strictJSONParsing","status","method","transformData","fns","isCancel","settle","resolve","reject","validateStatus","parseProtocol","speedometer","samplesCount","timestamps","head","tail","firstSampleTS","chunkLength","now","startedAt","bytesCount","passed","throttle","freq","timestamp","threshold","lastArgs","timer","invoke","args","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","rawLoaded","total","loaded","progressBytes","rate","progressEventDecorator","throttled","lengthComputable","asyncDecorator","isURLSameOrigin","isMSIE","cookies","expires","domain","secure","sameSite","cookie","eq","isAbsoluteURL","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","allowAbsoluteUrls","isRelativeUrl","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","FORM_DATA_CONTENT_HEADERS","setFormDataHeaders","formHeaders","policy","encodeUTF8","_","hex","resolveConfig","newConfig","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","isXHRAdapterSupported","xhrAdapter","_config","requestData","requestHeaders","onUploadProgress","onDownloadProgress","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","done","onloadend","responseHeaders","err","event","timeoutErrorMessage","cancel","CanceledError","protocol","composeSignals","signals","timeout","controller","aborted","onabort","reason","unsubscribe","signal","streamChunk","chunk","chunkSize","readBytes","iterable","readStream","stream","reader","trackStream","onProgress","onFinish","_onFinish","loadedBytes","estimateDataURLDecodedBytes","comma","meta","body","effectiveLen","pad","idx","tailIsPct3D","next","VERSION","DEFAULT_CHUNK_SIZE","test","factory","globalObject","ReadableStream","TextEncoder","envFetch","Request","Response","isFetchSupported","isRequestSupported","isResponseSupported","isReadableStreamSupported","encodeText","supportsRequestStream","duplexAccessed","hasContentType","supportsResponseStream","resolvers","getBodyLength","resolveBodyLength","cancelToken","withCredentials","fetchOptions","maxContentLength","maxBodyLength","hasMaxContentLength","hasMaxBodyLength","_fetch","composedSignal","requestContentLength","outboundLength","_request","contentTypeHeader","flush","isCredentialsSupported","resolvedOptions","declaredLength","isStreamResponse","responseContentLength","bytesRead","onChunkProgress","responseData","materializedSize","canceledError","seedCache","getFetch","fetch","seeds","seed","map","knownAdapters","fetchAdapter.getFetch","renderReason","isResolvedHandle","adapter","getAdapter","adapters","nameOrAdapter","rejectedReasons","reasons","state","throwIfCancellationRequested","dispatchRequest","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","correctSpelling","assertOptions","schema","allowUnknown","Axios$1","instanceConfig","configOrUrl","dummy","firstNewlineIndex","secondNewlineIndex","stackWithoutTwoTopLines","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","promise","chain","onFulfilled","onRejected","fullPath","Axios","generateHTTPMethod","isForm","CancelToken$1","CancelToken","executor","resolvePromise","onfulfilled","_resolve","abort","spread","callback","isAxiosError","payload","HttpStatusCode","createInstance","defaultConfig","instance","axios","promises","all","Cancel","formToJSON","create","getCancelableClient","client","getRequestToken","onRequestTokenUpdate","RETRY_KEY","onCsrfTokenError","responseURL","fetchRequestToken","RETRY_DELAY_KEY","onMaintenanceModeError","retryDelay","onNotLoggedInError","cancelableClient","r","emit","__emit","videoMp4","imagePath","videoWebm","videoFallbackImagePre","videoFallbackImage","videoFallbackText","t","videoElement","useTemplateRef","autoPlayDisabled","ref","videoStarted","canSkip","videoPoster","onMounted","handleEnded","_createElementBlock","_normalizeClass","$style","_createElementVNode","_unref","_createTextVNode","_createBlock","NcButton","_createVNode","NcIconSvgWrapper","mdiChevronRight","currentIndex","_useModel","__props","reverseTransition","currentPage","isFirstPage","isLastPage","cssLogoUrl","transitions","useCssModule","transitionClasses","direction","waveTransitionClasses","watch","newPage","oldPage","goToPage","pageId","page","_Transition","mdiArrowLeft","$emit","mdiClose","_resolveDynamicComponent","_openBlock","_Fragment","button","$event","_toDisplayString","mdiArrowRight","isLink","_renderSlot","_ctx","WizardPage","InfoCard","android","loadState","ios","badgeImagePath","cssBackgroundImage","href","ariaLabel","desktop","syncClientsUrl","generateUrl","AppStoreBadge","versionNumber","mdiLock","mdiBriefcaseCheck","mdiSwapHorizontal","mdiAccountGroup","blueskySvg","facebookSvg","linkedInSvg","mastodonSvg","HubRelease","encodedLink","mailSubject","mailBody","shareLinks","mdiEmail","_renderList","pages","KeyNotesPage","DeviceIntegrationPage","AboutNextcloudPage","WhatsNewPage","SharePage","__expose","open","close","isMobile","useIsSmallMobile","showChangelogOnly","changelogPage","showModal","setReturnFocus","focusReturn","NcModal","IntroAnimation","_cache","SlideShow","vm","createApp","FirstRunWizard"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56]} \ No newline at end of file diff --git a/js/main-CBBO6vSg.chunk.mjs.map.license b/js/main-B_iVdpQp.chunk.mjs.map.license similarity index 100% rename from js/main-CBBO6vSg.chunk.mjs.map.license rename to js/main-B_iVdpQp.chunk.mjs.map.license diff --git a/lib/Constants.php b/lib/Constants.php index 80b6a6179..913bf627c 100644 --- a/lib/Constants.php +++ b/lib/Constants.php @@ -12,5 +12,5 @@ final class Constants { * Version for which the latest changelog entries are available * This is used to decide if we show the wizard for users on an update */ - public const CHANGELOG_VERSION = '33.0.0'; + public const CHANGELOG_VERSION = '34.0.0'; } diff --git a/src/hub-release.ts b/src/hub-release.ts index d93e45d71..f73e08171 100644 --- a/src/hub-release.ts +++ b/src/hub-release.ts @@ -13,27 +13,27 @@ import { t } from '@nextcloud/l10n' */ export default { /** The HUB release version */ - version: '26 Winter', + version: '26 Spring', /** Link to further information (e.g. blog post) */ - link: 'https://nextcloud.com/blog/nextcloud-hub26-winter/', + link: 'https://nextcloud.com/blog/nextcloud-hub26-spring/', /** Release notes in list format */ releaseNotes: [ - '🌐 ' + t('firstrunwizard', 'Growing sovereignty: new federation features, improved data export and import'), - 'πŸ’¬Β ' + t('firstrunwizard', 'Nextcloud Talk: live translations, pinned messages, scheduling'), - 'πŸ”ŽΒ ' + t('firstrunwizard', 'Office document comparison'), - 'πŸ§‘β€πŸŽ¨Β ' + t('firstrunwizard', 'Whiteboard: comments, reactions, timers'), - '✨ ' + t('firstrunwizard', 'Nextcloud Assistant performance upgrade and AI labeling'), - 'πŸ”Β ' + t('firstrunwizard', 'Powerful E2EE in the web interface'), - 'πŸ’ͺΒ ' + t('firstrunwizard', 'Speed-up with ADA engine'), + 'πŸ’«' + t('firstrunwizard', 'Refined design, optimized performance'), + 'πŸ’ͺ' + t('firstrunwizard', 'Empowering developers with an open platform'), + '✏️' + t('firstrunwizard', 'Your choice: Nextcloud Office powered by Collabora or Euro-Office'), + 'πŸ’Œ' + t('firstrunwizard', 'Delegate calendars, meetings and mail boxes for better collaboration'), + 'πŸ“ˆ' + t('firstrunwizard', 'Gantt charts, dependencies & more in Nextcloud Deck'), + '🧠' + t('firstrunwizard', 'More agency: let the Assistant work for you across files, emails, forms, and more'), + '🧩' + t('firstrunwizard', 'Pexip, Matrix, and more updates in integrations'), t('firstrunwizard', '… and many more improvements in all apps!'), t('firstrunwizard', 'Experience the brand new Nextcloud Hub!'), ], /** Alternative text for the release animation */ - videoAltText: t('firstrunwizard', 'Get to know the new features of Hub {version}', { version: '26 Winter' }), + videoAltText: t('firstrunwizard', 'Get to know the new features of Hub {version}', { version: '26 Spring' }), /** Subject that is used when sharing the post */ - shareSubject: t('firstrunwizard', 'Time to own your collaboration: Meet Nextcloud Hub 26 Winter! πŸš€'), + shareSubject: t('firstrunwizard', 'Time to own your collaboration: Meet Nextcloud Hub 26 Spring! πŸš€'), }