UNPKG

hytopia

Version:

The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.

8 lines 5.25 MB
// @bun var EX1=Object.create;var{getPrototypeOf:IX1,defineProperty:FM,getOwnPropertyNames:vX1}=Object;var SX1=Object.prototype.hasOwnProperty;var t=(Z,J,X)=>{X=Z!=null?EX1(IX1(Z)):{};let Y=J||!Z||!Z.__esModule?FM(X,"default",{value:Z,enumerable:!0}):X;for(let $ of vX1(Z))if(!SX1.call(Y,$))FM(Y,$,{get:()=>Z[$],enumerable:!0});return Y};var w=(Z,J)=>()=>(J||Z((J={exports:{}}).exports,J),J.exports);var p4=(Z,J)=>{for(var X in J)FM(Z,X,{get:J[X],enumerable:!0,configurable:!0,set:(Y)=>J[X]=()=>Y})};var u=import.meta.require;var jf=w((L96,UM)=>{var _X1=Object.prototype.hasOwnProperty,y6="~";function J3(){}if(Object.create){if(J3.prototype=Object.create(null),!new J3().__proto__)y6=!1}function AX1(Z,J,X){this.fn=Z,this.context=J,this.once=X||!1}function Of(Z,J,X,Y,$){if(typeof X!=="function")throw new TypeError("The listener must be a function");var Q=new AX1(X,Y||Z,$),W=y6?y6+J:J;if(!Z._events[W])Z._events[W]=Q,Z._eventsCount++;else if(!Z._events[W].fn)Z._events[W].push(Q);else Z._events[W]=[Z._events[W],Q];return Z}function Mq(Z,J){if(--Z._eventsCount===0)Z._events=new J3;else delete Z._events[J]}function N6(){this._events=new J3,this._eventsCount=0}N6.prototype.eventNames=function Z(){var J=[],X,Y;if(this._eventsCount===0)return J;for(Y in X=this._events)if(_X1.call(X,Y))J.push(y6?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return J.concat(Object.getOwnPropertySymbols(X));return J};N6.prototype.listeners=function Z(J){var X=y6?y6+J:J,Y=this._events[X];if(!Y)return[];if(Y.fn)return[Y.fn];for(var $=0,Q=Y.length,W=new Array(Q);$<Q;$++)W[$]=Y[$].fn;return W};N6.prototype.listenerCount=function Z(J){var X=y6?y6+J:J,Y=this._events[X];if(!Y)return 0;if(Y.fn)return 1;return Y.length};N6.prototype.emit=function Z(J,X,Y,$,Q,W){var K=y6?y6+J:J;if(!this._events[K])return!1;var G=this._events[K],z=arguments.length,H,V;if(G.fn){if(G.once)this.removeListener(J,G.fn,void 0,!0);switch(z){case 1:return G.fn.call(G.context),!0;case 2:return G.fn.call(G.context,X),!0;case 3:return G.fn.call(G.context,X,Y),!0;case 4:return G.fn.call(G.context,X,Y,$),!0;case 5:return G.fn.call(G.context,X,Y,$,Q),!0;case 6:return G.fn.call(G.context,X,Y,$,Q,W),!0}for(V=1,H=new Array(z-1);V<z;V++)H[V-1]=arguments[V];G.fn.apply(G.context,H)}else{var q=G.length,F;for(V=0;V<q;V++){if(G[V].once)this.removeListener(J,G[V].fn,void 0,!0);switch(z){case 1:G[V].fn.call(G[V].context);break;case 2:G[V].fn.call(G[V].context,X);break;case 3:G[V].fn.call(G[V].context,X,Y);break;case 4:G[V].fn.call(G[V].context,X,Y,$);break;default:if(!H)for(F=1,H=new Array(z-1);F<z;F++)H[F-1]=arguments[F];G[V].fn.apply(G[V].context,H)}}}return!0};N6.prototype.on=function Z(J,X,Y){return Of(this,J,X,Y,!1)};N6.prototype.once=function Z(J,X,Y){return Of(this,J,X,Y,!0)};N6.prototype.removeListener=function Z(J,X,Y,$){var Q=y6?y6+J:J;if(!this._events[Q])return this;if(!X)return Mq(this,Q),this;var W=this._events[Q];if(W.fn){if(W.fn===X&&(!$||W.once)&&(!Y||W.context===Y))Mq(this,Q)}else{for(var K=0,G=[],z=W.length;K<z;K++)if(W[K].fn!==X||$&&!W[K].once||Y&&W[K].context!==Y)G.push(W[K]);if(G.length)this._events[Q]=G.length===1?G[0]:G;else Mq(this,Q)}return this};N6.prototype.removeAllListeners=function Z(J){var X;if(J){if(X=y6?y6+J:J,this._events[X])Mq(this,X)}else this._events=new J3,this._eventsCount=0;return this};N6.prototype.off=N6.prototype.removeListener;N6.prototype.addListener=N6.prototype.on;N6.prefixed=y6;N6.EventEmitter=N6;if(typeof UM!=="undefined")UM.exports=N6});var ub=w((B76,mb)=>{mb.exports=gb;gb.sync=mY1;var bb=u("fs");function gY1(Z,J){var X=J.pathExt!==void 0?J.pathExt:process.env.PATHEXT;if(!X)return!0;if(X=X.split(";"),X.indexOf("")!==-1)return!0;for(var Y=0;Y<X.length;Y++){var $=X[Y].toLowerCase();if($&&Z.substr(-$.length).toLowerCase()===$)return!0}return!1}function yb(Z,J,X){if(!Z.isSymbolicLink()&&!Z.isFile())return!1;return gY1(J,X)}function gb(Z,J,X){bb.stat(Z,function(Y,$){X(Y,Y?!1:yb($,Z,J))})}function mY1(Z,J){return yb(bb.statSync(Z),Z,J)}});var ib=w((w76,pb)=>{pb.exports=cb;cb.sync=uY1;var db=u("fs");function cb(Z,J,X){db.stat(Z,function(Y,$){X(Y,Y?!1:lb($,J))})}function uY1(Z,J){return lb(db.statSync(Z),J)}function lb(Z,J){return Z.isFile()&&dY1(Z,J)}function dY1(Z,J){var{mode:X,uid:Y,gid:$}=Z,Q=J.uid!==void 0?J.uid:process.getuid&&process.getuid(),W=J.gid!==void 0?J.gid:process.getgid&&process.getgid(),K=parseInt("100",8),G=parseInt("010",8),z=parseInt("001",8),H=K|G,V=X&z||X&G&&$===W||X&K&&Y===Q||X&H&&Q===0;return V}});var ab=w((j76,nb)=>{var O76=u("fs"),LF;if(process.platform==="win32"||global.TESTING_WINDOWS)LF=ub();else LF=ib();nb.exports=_R;_R.sync=cY1;function _R(Z,J,X){if(typeof J==="function")X=J,J={};if(!X){if(typeof Promise!=="function")throw new TypeError("callback not provided");return new Promise(function(Y,$){_R(Z,J||{},function(Q,W){if(Q)$(Q);else Y(W)})})}LF(Z,J||{},function(Y,$){if(Y){if(Y.code==="EACCES"||J&&J.ignoreErrors)Y=null,$=!1}X(Y,$)})}function cY1(Z,J){try{return LF.sync(Z,J||{})}catch(X){if(J&&J.ignoreErrors||X.code==="EACCES")return!1;else throw X}}});var Jy=w((M76,Zy)=>{var GQ=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",sb=u("path"),lY1=GQ?";":":",ob=ab(),rb=(Z)=>Object.assign(new Error(`not found: ${Z}`),{code:"ENOENT"}),tb=(Z,J)=>{let X=J.colon||lY1,Y=Z.match(/\//)||GQ&&Z.match(/\\/)?[""]:[...GQ?[process.cwd()]:[],...(J.path||process.env.PATH||"").split(X)],$=GQ?J.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",Q=GQ?$.split(X):[""];if(GQ){if(Z.indexOf(".")!==-1&&Q[0]!=="")Q.unshift("")}return{pathEnv:Y,pathExt:Q,pathExtExe:$}},eb=(Z,J,X)=>{if(typeof J==="function")X=J,J={};if(!J)J={};let{pathEnv:Y,pathExt:$,pathExtExe:Q}=tb(Z,J),W=[],K=(z)=>new Promise((H,V)=>{if(z===Y.length)return J.all&&W.length?H(W):V(rb(Z));let q=Y[z],F=/^".*"$/.test(q)?q.slice(1,-1):q,U=sb.join(F,Z),B=!F&&/^\.[\\\/]/.test(Z)?Z.slice(0,2)+U:U;H(G(B,z,0))}),G=(z,H,V)=>new Promise((q,F)=>{if(V===$.length)return q(K(H+1));let U=$[V];ob(z+U,{pathExt:Q},(B,L)=>{if(!B&&L)if(J.all)W.push(z+U);else return q(z+U);return q(G(z,H,V+1))})});return X?K(0).then((z)=>X(null,z),X):K(0)},pY1=(Z,J)=>{J=J||{};let{pathEnv:X,pathExt:Y,pathExtExe:$}=tb(Z,J),Q=[];for(let W=0;W<X.length;W++){let K=X[W],G=/^".*"$/.test(K)?K.slice(1,-1):K,z=sb.join(G,Z),H=!G&&/^\.[\\\/]/.test(Z)?Z.slice(0,2)+z:z;for(let V=0;V<Y.length;V++){let q=H+Y[V];try{if(ob.sync(q,{pathExt:$}))if(J.all)Q.push(q);else return q}catch(F){}}}if(J.all&&Q.length)return Q;if(J.nothrow)return null;throw rb(Z)};Zy.exports=eb;eb.sync=pY1});var Yy=w((R76,AR)=>{var Xy=(Z={})=>{let J=Z.env||process.env;if((Z.platform||process.platform)!=="win32")return"PATH";return Object.keys(J).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};AR.exports=Xy;AR.exports.default=Xy});var Ky=w((N76,Wy)=>{var $y=u("path"),iY1=Jy(),nY1=Yy();function Qy(Z,J){let X=Z.options.env||process.env,Y=process.cwd(),$=Z.options.cwd!=null,Q=$&&process.chdir!==void 0&&!process.chdir.disabled;if(Q)try{process.chdir(Z.options.cwd)}catch(K){}let W;try{W=iY1.sync(Z.command,{path:X[nY1({env:X})],pathExt:J?$y.delimiter:void 0})}catch(K){}finally{if(Q)process.chdir(Y)}if(W)W=$y.resolve($?Z.options.cwd:"",W);return W}function aY1(Z){return Qy(Z)||Qy(Z,!0)}Wy.exports=aY1});var Gy=w((rY1,hR)=>{var xR=/([()\][%!^"`<>&|;, *?])/g;function sY1(Z){return Z=Z.replace(xR,"^$1"),Z}function oY1(Z,J){if(Z=`${Z}`,Z=Z.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),Z=Z.replace(/(?=(\\+?)?)\1$/,"$1$1"),Z=`"${Z}"`,Z=Z.replace(xR,"^$1"),J)Z=Z.replace(xR,"^$1");return Z}rY1.command=sY1;rY1.argument=oY1});var Hy=w((D76,zy)=>{zy.exports=/^#!(.*)/});var qy=w((P76,Vy)=>{var Z$1=Hy();Vy.exports=(Z="")=>{let J=Z.match(Z$1);if(!J)return null;let[X,Y]=J[0].replace(/#! ?/,"").split(" "),$=X.split("/").pop();if($==="env")return Y;return Y?`${$} ${Y}`:$}});var Uy=w((C76,Fy)=>{var fR=u("fs"),J$1=qy();function X$1(Z){let X=Buffer.alloc(150),Y;try{Y=fR.openSync(Z,"r"),fR.readSync(Y,X,0,150,0),fR.closeSync(Y)}catch($){}return J$1(X.toString())}Fy.exports=X$1});var Oy=w((T76,wy)=>{var Y$1=u("path"),Ly=Ky(),By=Gy(),$$1=Uy(),Q$1=process.platform==="win32",W$1=/\.(?:com|exe)$/i,K$1=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function G$1(Z){Z.file=Ly(Z);let J=Z.file&&$$1(Z.file);if(J)return Z.args.unshift(Z.file),Z.command=J,Ly(Z);return Z.file}function z$1(Z){if(!Q$1)return Z;let J=G$1(Z),X=!W$1.test(J);if(Z.options.forceShell||X){let Y=K$1.test(J);Z.command=Y$1.normalize(Z.command),Z.command=By.command(Z.command),Z.args=Z.args.map((Q)=>By.argument(Q,Y));let $=[Z.command].concat(Z.args).join(" ");Z.args=["/d","/s","/c",`"${$}"`],Z.command=process.env.comspec||"cmd.exe",Z.options.windowsVerbatimArguments=!0}return Z}function H$1(Z,J,X){if(J&&!Array.isArray(J))X=J,J=null;J=J?J.slice(0):[],X=Object.assign({},X);let Y={command:Z,args:J,options:X,file:void 0,original:{command:Z,args:J}};return X.shell?Y:z$1(Y)}wy.exports=H$1});var Ry=w((k76,My)=>{var bR=process.platform==="win32";function yR(Z,J){return Object.assign(new Error(`${J} ${Z.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${J} ${Z.command}`,path:Z.command,spawnargs:Z.args})}function V$1(Z,J){if(!bR)return;let X=Z.emit;Z.emit=function(Y,$){if(Y==="exit"){let Q=jy($,J);if(Q)return X.call(Z,"error",Q)}return X.apply(Z,arguments)}}function jy(Z,J){if(bR&&Z===1&&!J.file)return yR(J.original,"spawn");return null}function q$1(Z,J){if(bR&&Z===1&&!J.file)return yR(J.original,"spawnSync");return null}My.exports={hookChildProcess:V$1,verifyENOENT:jy,verifyENOENTSync:q$1,notFoundError:yR}});var Py=w((E76,zQ)=>{var Ny=u("child_process"),gR=Oy(),mR=Ry();function Dy(Z,J,X){let Y=gR(Z,J,X),$=Ny.spawn(Y.command,Y.args,Y.options);return mR.hookChildProcess($,Y),$}function F$1(Z,J,X){let Y=gR(Z,J,X),$=Ny.spawnSync(Y.command,Y.args,Y.options);return $.error=$.error||mR.verifyENOENTSync($.status,Y),$}zQ.exports=Dy;zQ.exports.spawn=Dy;zQ.exports.sync=F$1;zQ.exports._parse=gR;zQ.exports._enoent=mR});var oN=w((A36,Nd)=>{Nd.exports=Md;function Md(Z,J,X){if(Z instanceof RegExp)Z=jd(Z,X);if(J instanceof RegExp)J=jd(J,X);var Y=Rd(Z,J,X);return Y&&{start:Y[0],end:Y[1],pre:X.slice(0,Y[0]),body:X.slice(Y[0]+Z.length,Y[1]),post:X.slice(Y[1]+J.length)}}function jd(Z,J){var X=J.match(Z);return X?X[0]:null}Md.range=Rd;function Rd(Z,J,X){var Y,$,Q,W,K,G=X.indexOf(Z),z=X.indexOf(J,G+1),H=G;if(G>=0&&z>0){if(Z===J)return[G,z];Y=[],Q=X.length;while(H>=0&&!K){if(H==G)Y.push(H),G=X.indexOf(Z,H+1);else if(Y.length==1)K=[Y.pop(),z];else{if($=Y.pop(),$<Q)Q=$,W=z;z=X.indexOf(J,H+1)}H=G<z&&G>=0?G:z}if(Y.length)K=[Q,W]}return K}});var vd=w((x36,Id)=>{var Dd=oN();Id.exports=Bz1;var Pd="\x00SLASH"+Math.random()+"\x00",Cd="\x00OPEN"+Math.random()+"\x00",tN="\x00CLOSE"+Math.random()+"\x00",Td="\x00COMMA"+Math.random()+"\x00",kd="\x00PERIOD"+Math.random()+"\x00";function rN(Z){return parseInt(Z,10)==Z?parseInt(Z,10):Z.charCodeAt(0)}function Uz1(Z){return Z.split("\\\\").join(Pd).split("\\{").join(Cd).split("\\}").join(tN).split("\\,").join(Td).split("\\.").join(kd)}function Lz1(Z){return Z.split(Pd).join("\\").split(Cd).join("{").split(tN).join("}").split(Td).join(",").split(kd).join(".")}function Ed(Z){if(!Z)return[""];var J=[],X=Dd("{","}",Z);if(!X)return Z.split(",");var{pre:Y,body:$,post:Q}=X,W=Y.split(",");W[W.length-1]+="{"+$+"}";var K=Ed(Q);if(Q.length)W[W.length-1]+=K.shift(),W.push.apply(W,K);return J.push.apply(J,W),J}function Bz1(Z){if(!Z)return[];if(Z.substr(0,2)==="{}")Z="\\{\\}"+Z.substr(2);return f3(Uz1(Z),!0).map(Lz1)}function wz1(Z){return"{"+Z+"}"}function Oz1(Z){return/^-?0\d/.test(Z)}function jz1(Z,J){return Z<=J}function Mz1(Z,J){return Z>=J}function f3(Z,J){var X=[],Y=Dd("{","}",Z);if(!Y)return[Z];var $=Y.pre,Q=Y.post.length?f3(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var W=0;W<Q.length;W++){var K=$+"{"+Y.body+"}"+Q[W];X.push(K)}else{var G=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(Y.body),z=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(Y.body),H=G||z,V=Y.body.indexOf(",")>=0;if(!H&&!V){if(Y.post.match(/,.*\}/))return Z=Y.pre+"{"+Y.body+tN+Y.post,f3(Z);return[Z]}var q;if(H)q=Y.body.split(/\.\./);else if(q=Ed(Y.body),q.length===1){if(q=f3(q[0],!1).map(wz1),q.length===1)return Q.map(function(x){return Y.pre+q[0]+x})}var F;if(H){var U=rN(q[0]),B=rN(q[1]),L=Math.max(q[0].length,q[1].length),O=q.length==3?Math.abs(rN(q[2])):1,N=jz1,M=B<U;if(M)O*=-1,N=Mz1;var j=q.some(Oz1);F=[];for(var P=U;N(P,B);P+=O){var D;if(z){if(D=String.fromCharCode(P),D==="\\")D=""}else if(D=String(P),j){var C=L-D.length;if(C>0){var k=new Array(C+1).join("0");if(P<0)D="-"+k+D.slice(1);else D=k+D}}F.push(D)}}else{F=[];for(var T=0;T<q.length;T++)F.push.apply(F,f3(q[T],!1))}for(var T=0;T<F.length;T++)for(var W=0;W<Q.length;W++){var K=$+F[T]+Q[W];if(!J||H||K)X.push(K)}}return X}});var bc=w((mG6,fc)=>{function BV1(Z){var J=new Array(Z);for(var X=0;X<Z;++X)J[X]=X;return J}fc.exports=BV1});var mc=w((uG6,gc)=>{/*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh <https://feross.org> * @license MIT */gc.exports=function(Z){return Z!=null&&(yc(Z)||wV1(Z)||!!Z._isBuffer)};function yc(Z){return!!Z.constructor&&typeof Z.constructor.isBuffer==="function"&&Z.constructor.isBuffer(Z)}function wV1(Z){return typeof Z.readFloatLE==="function"&&typeof Z.slice==="function"&&yc(Z.slice(0,0))}});var ID=w((dG6,uc)=>{var OV1=bc(),jV1=mc(),MV1=typeof Float64Array!=="undefined";function RV1(Z,J){return Z[0]-J[0]}function NV1(){var Z=this.stride,J=new Array(Z.length),X;for(X=0;X<J.length;++X)J[X]=[Math.abs(Z[X]),X];J.sort(RV1);var Y=new Array(J.length);for(X=0;X<Y.length;++X)Y[X]=J[X][1];return Y}function DV1(Z,J){var X=["View",J,"d",Z].join("");if(J<0)X="View_Nil"+Z;var Y=Z==="generic";if(J===-1){var $="function "+X+"(a){this.data=a;};var proto="+X+".prototype;proto.dtype='"+Z+"';proto.index=function(){return -1};proto.size=0;proto.dimension=-1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function(){return new "+X+"(this.data);};proto.get=proto.set=function(){};proto.pick=function(){return null};return function construct_"+X+"(a){return new "+X+"(a);}",B=new Function($);return B()}else if(J===0){var $="function "+X+"(a,d) {this.data = a;this.offset = d};var proto="+X+".prototype;proto.dtype='"+Z+"';proto.index=function(){return this.offset};proto.dimension=0;proto.size=1;proto.shape=proto.stride=proto.order=[];proto.lo=proto.hi=proto.transpose=proto.step=function "+X+"_copy() {return new "+X+"(this.data,this.offset)};proto.pick=function "+X+"_pick(){return TrivialArray(this.data);};proto.valueOf=proto.get=function "+X+"_get(){return "+(Y?"this.data.get(this.offset)":"this.data[this.offset]")+"};proto.set=function "+X+"_set(v){return "+(Y?"this.data.set(this.offset,v)":"this.data[this.offset]=v")+"};return function construct_"+X+"(a,b,c,d){return new "+X+"(a,d)}",B=new Function("TrivialArray",$);return B(cU[Z][0])}var $=["'use strict'"],Q=OV1(J),W=Q.map(function(L){return"i"+L}),K="this.offset+"+Q.map(function(L){return"this.stride["+L+"]*i"+L}).join("+"),G=Q.map(function(L){return"b"+L}).join(","),z=Q.map(function(L){return"c"+L}).join(",");if($.push("function "+X+"(a,"+G+","+z+",d){this.data=a","this.shape=["+G+"]","this.stride=["+z+"]","this.offset=d|0}","var proto="+X+".prototype","proto.dtype='"+Z+"'","proto.dimension="+J),$.push("Object.defineProperty(proto,'size',{get:function "+X+"_size(){return "+Q.map(function(L){return"this.shape["+L+"]"}).join("*"),"}})"),J===1)$.push("proto.order=[0]");else if($.push("Object.defineProperty(proto,'order',{get:"),J<4){if($.push("function "+X+"_order(){"),J===2)$.push("return (Math.abs(this.stride[0])>Math.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(J===3)$.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else $.push("ORDER})");if($.push("proto.set=function "+X+"_set("+W.join(",")+",v){"),Y)$.push("return this.data.set("+K+",v)}");else $.push("return this.data["+K+"]=v}");if($.push("proto.get=function "+X+"_get("+W.join(",")+"){"),Y)$.push("return this.data.get("+K+")}");else $.push("return this.data["+K+"]}");$.push("proto.index=function "+X+"_index(",W.join(),"){return "+K+"}"),$.push("proto.hi=function "+X+"_hi("+W.join(",")+"){return new "+X+"(this.data,"+Q.map(function(L){return["(typeof i",L,"!=='number'||i",L,"<0)?this.shape[",L,"]:i",L,"|0"].join("")}).join(",")+","+Q.map(function(L){return"this.stride["+L+"]"}).join(",")+",this.offset)}");var H=Q.map(function(L){return"a"+L+"=this.shape["+L+"]"}),V=Q.map(function(L){return"c"+L+"=this.stride["+L+"]"});$.push("proto.lo=function "+X+"_lo("+W.join(",")+"){var b=this.offset,d=0,"+H.join(",")+","+V.join(","));for(var q=0;q<J;++q)$.push("if(typeof i"+q+"==='number'&&i"+q+">=0){d=i"+q+"|0;b+=c"+q+"*d;a"+q+"-=d}");$.push("return new "+X+"(this.data,"+Q.map(function(L){return"a"+L}).join(",")+","+Q.map(function(L){return"c"+L}).join(",")+",b)}"),$.push("proto.step=function "+X+"_step("+W.join(",")+"){var "+Q.map(function(L){return"a"+L+"=this.shape["+L+"]"}).join(",")+","+Q.map(function(L){return"b"+L+"=this.stride["+L+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var q=0;q<J;++q)$.push("if(typeof i"+q+"==='number'){d=i"+q+"|0;if(d<0){c+=b"+q+"*(a"+q+"-1);a"+q+"=ceil(-a"+q+"/d)}else{a"+q+"=ceil(a"+q+"/d)}b"+q+"*=d}");$.push("return new "+X+"(this.data,"+Q.map(function(L){return"a"+L}).join(",")+","+Q.map(function(L){return"b"+L}).join(",")+",c)}");var F=new Array(J),U=new Array(J);for(var q=0;q<J;++q)F[q]="a[i"+q+"]",U[q]="b[i"+q+"]";$.push("proto.transpose=function "+X+"_transpose("+W+"){"+W.map(function(L,O){return L+"=("+L+"===undefined?"+O+":"+L+"|0)"}).join(";"),"var a=this.shape,b=this.stride;return new "+X+"(this.data,"+F.join(",")+","+U.join(",")+",this.offset)}"),$.push("proto.pick=function "+X+"_pick("+W+"){var a=[],b=[],c=this.offset");for(var q=0;q<J;++q)$.push("if(typeof i"+q+"==='number'&&i"+q+">=0){c=(c+this.stride["+q+"]*i"+q+")|0}else{a.push(this.shape["+q+"]);b.push(this.stride["+q+"])}");$.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),$.push("return function construct_"+X+"(data,shape,stride,offset){return new "+X+"(data,"+Q.map(function(L){return"shape["+L+"]"}).join(",")+","+Q.map(function(L){return"stride["+L+"]"}).join(",")+",offset)}");var B=new Function("CTOR_LIST","ORDER",$.join(` `));return B(cU[Z],NV1)}function PV1(Z){if(jV1(Z))return"buffer";if(MV1)switch(Object.prototype.toString.call(Z)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(Z))return"array";return"generic"}var cU={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function CV1(Z,J,X,Y){if(Z===void 0){var z=cU.array[0];return z([])}else if(typeof Z==="number")Z=[Z];if(J===void 0)J=[Z.length];var $=J.length;if(X===void 0){X=new Array($);for(var Q=$-1,W=1;Q>=0;--Q)X[Q]=W,W*=J[Q]}if(Y===void 0){Y=0;for(var Q=0;Q<$;++Q)if(X[Q]<0)Y-=(J[Q]-1)*X[Q]}var K=PV1(Z),G=cU[K];while(G.length<=$+1)G.push(DV1(K,G.length-1));var z=G[$+1];return z(Z,J,X,Y)}uc.exports=CV1});var X7=w((cG6,cc)=>{var dc=function(Z){return typeof Z!=="undefined"&&Z!==null},TV1=function(Z){return typeof Z==="object"},kV1=function(Z){return Object.prototype.toString.call(Z)==="[object Object]"},EV1=function(Z){return typeof Z==="function"},IV1=function(Z){return typeof Z==="boolean"},vV1=function(Z){return Z instanceof Buffer},SV1=function(Z){if(dc(Z))switch(Z.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},_V1=function(Z){return Z instanceof ArrayBuffer},AV1=function(Z){return typeof Z==="string"&&Z.length>0},xV1=function(Z){return typeof Z==="number"&&!Number.isNaN(Z)},hV1=function(Z){return Number.isInteger(Z)},fV1=function(Z,J,X){return Z>=J&&Z<=X},bV1=function(Z,J){return J.includes(Z)},yV1=function(Z,J,X){return new Error(`Expected ${J} for ${Z} but received ${X} of type ${typeof X}`)},gV1=function(Z,J){return J.message=Z.message,J};cc.exports={defined:dc,object:TV1,plainObject:kV1,fn:EV1,bool:IV1,buffer:vV1,typedArray:SV1,arrayBuffer:_V1,string:AV1,number:xV1,integer:hV1,inRange:fV1,inArray:bV1,invalidParameterError:yV1,nativeError:gV1}});var ic=w((lG6,pc)=>{var lc=()=>process.platform==="linux",lU=null,mV1=()=>{if(!lU)if(lc()&&process.report){let Z=process.report.excludeNetwork;process.report.excludeNetwork=!0,lU=process.report.getReport(),process.report.excludeNetwork=Z}else lU={};return lU};pc.exports={isLinux:lc,getReport:mV1}});var sc=w((pG6,ac)=>{var nc=u("fs"),uV1=(Z)=>nc.readFileSync(Z,"utf-8"),dV1=(Z)=>new Promise((J,X)=>{nc.readFile(Z,"utf-8",(Y,$)=>{if(Y)X(Y);else J($)})});ac.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:uV1,readFile:dV1}});var iU=w((iG6,Vl)=>{var rc=u("child_process"),{isLinux:_Q,getReport:tc}=ic(),{LDD_PATH:pU,readFile:ec,readFileSync:Zl}=sc(),Y7,$7,qJ="",Jl=()=>{if(!qJ)return new Promise((Z)=>{rc.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(J,X)=>{qJ=J?" ":X,Z(qJ)})});return qJ},Xl=()=>{if(!qJ)try{qJ=rc.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(Z){qJ=" "}return qJ},FJ="glibc",Yl=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,SQ="musl",cV1=(Z)=>Z.includes("libc.musl-")||Z.includes("ld-musl-"),$l=()=>{let Z=tc();if(Z.header&&Z.header.glibcVersionRuntime)return FJ;if(Array.isArray(Z.sharedObjects)){if(Z.sharedObjects.some(cV1))return SQ}return null},Ql=(Z)=>{let[J,X]=Z.split(/[\r\n]+/);if(J&&J.includes(FJ))return FJ;if(X&&X.includes(SQ))return SQ;return null},Wl=(Z)=>{if(Z.includes("musl"))return SQ;if(Z.includes("GNU C Library"))return FJ;return null},lV1=async()=>{if(Y7!==void 0)return Y7;Y7=null;try{let Z=await ec(pU);Y7=Wl(Z)}catch(Z){}return Y7},pV1=()=>{if(Y7!==void 0)return Y7;Y7=null;try{let Z=Zl(pU);Y7=Wl(Z)}catch(Z){}return Y7},Kl=async()=>{let Z=null;if(_Q()){if(Z=await lV1(),!Z)Z=$l();if(!Z){let J=await Jl();Z=Ql(J)}}return Z},Gl=()=>{let Z=null;if(_Q()){if(Z=pV1(),!Z)Z=$l();if(!Z){let J=Xl();Z=Ql(J)}}return Z},iV1=async()=>_Q()&&await Kl()!==FJ,nV1=()=>_Q()&&Gl()!==FJ,aV1=async()=>{if($7!==void 0)return $7;$7=null;try{let J=(await ec(pU)).match(Yl);if(J)$7=J[1]}catch(Z){}return $7},sV1=()=>{if($7!==void 0)return $7;$7=null;try{let J=Zl(pU).match(Yl);if(J)$7=J[1]}catch(Z){}return $7},zl=()=>{let Z=tc();if(Z.header&&Z.header.glibcVersionRuntime)return Z.header.glibcVersionRuntime;return null},oc=(Z)=>Z.trim().split(/\s+/)[1],Hl=(Z)=>{let[J,X,Y]=Z.split(/[\r\n]+/);if(J&&J.includes(FJ))return oc(J);if(X&&Y&&X.includes(SQ))return oc(Y);return null},oV1=async()=>{let Z=null;if(_Q()){if(Z=await aV1(),!Z)Z=zl();if(!Z){let J=await Jl();Z=Hl(J)}}return Z},rV1=()=>{let Z=null;if(_Q()){if(Z=sV1(),!Z)Z=zl();if(!Z){let J=Xl();Z=Hl(J)}}return Z};Vl.exports={GLIBC:FJ,MUSL:SQ,family:Kl,familySync:Gl,isNonGlibcLinux:iV1,isNonGlibcLinuxSync:nV1,version:oV1,versionSync:rV1}});var YG=w((nG6,ql)=>{var tV1=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...Z)=>console.error("SEMVER",...Z):()=>{};ql.exports=tV1});var nU=w((aG6,Fl)=>{var eV1=Number.MAX_SAFE_INTEGER||9007199254740991,Zq1=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Fl.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:eV1,RELEASE_TYPES:Zq1,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var $G=w((Q7,Ul)=>{var{MAX_SAFE_COMPONENT_LENGTH:vD,MAX_SAFE_BUILD_LENGTH:Jq1,MAX_LENGTH:Xq1}=nU(),Yq1=YG();Q7=Ul.exports={};var $q1=Q7.re=[],Qq1=Q7.safeRe=[],W0=Q7.src=[],Wq1=Q7.safeSrc=[],K0=Q7.t={},Kq1=0,SD="[a-zA-Z0-9-]",Gq1=[["\\s",1],["\\d",Xq1],[SD,Jq1]],zq1=(Z)=>{for(let[J,X]of Gq1)Z=Z.split(`${J}*`).join(`${J}{0,${X}}`).split(`${J}+`).join(`${J}{1,${X}}`);return Z},b0=(Z,J,X)=>{let Y=zq1(J),$=Kq1++;Yq1(Z,$,J),K0[Z]=$,W0[$]=J,Wq1[$]=Y,$q1[$]=new RegExp(J,X?"g":void 0),Qq1[$]=new RegExp(Y,X?"g":void 0)};b0("NUMERICIDENTIFIER","0|[1-9]\\d*");b0("NUMERICIDENTIFIERLOOSE","\\d+");b0("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${SD}*`);b0("MAINVERSION",`(${W0[K0.NUMERICIDENTIFIER]})\\.(${W0[K0.NUMERICIDENTIFIER]})\\.(${W0[K0.NUMERICIDENTIFIER]})`);b0("MAINVERSIONLOOSE",`(${W0[K0.NUMERICIDENTIFIERLOOSE]})\\.(${W0[K0.NUMERICIDENTIFIERLOOSE]})\\.(${W0[K0.NUMERICIDENTIFIERLOOSE]})`);b0("PRERELEASEIDENTIFIER",`(?:${W0[K0.NUMERICIDENTIFIER]}|${W0[K0.NONNUMERICIDENTIFIER]})`);b0("PRERELEASEIDENTIFIERLOOSE",`(?:${W0[K0.NUMERICIDENTIFIERLOOSE]}|${W0[K0.NONNUMERICIDENTIFIER]})`);b0("PRERELEASE",`(?:-(${W0[K0.PRERELEASEIDENTIFIER]}(?:\\.${W0[K0.PRERELEASEIDENTIFIER]})*))`);b0("PRERELEASELOOSE",`(?:-?(${W0[K0.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${W0[K0.PRERELEASEIDENTIFIERLOOSE]})*))`);b0("BUILDIDENTIFIER",`${SD}+`);b0("BUILD",`(?:\\+(${W0[K0.BUILDIDENTIFIER]}(?:\\.${W0[K0.BUILDIDENTIFIER]})*))`);b0("FULLPLAIN",`v?${W0[K0.MAINVERSION]}${W0[K0.PRERELEASE]}?${W0[K0.BUILD]}?`);b0("FULL",`^${W0[K0.FULLPLAIN]}$`);b0("LOOSEPLAIN",`[v=\\s]*${W0[K0.MAINVERSIONLOOSE]}${W0[K0.PRERELEASELOOSE]}?${W0[K0.BUILD]}?`);b0("LOOSE",`^${W0[K0.LOOSEPLAIN]}$`);b0("GTLT","((?:<|>)?=?)");b0("XRANGEIDENTIFIERLOOSE",`${W0[K0.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);b0("XRANGEIDENTIFIER",`${W0[K0.NUMERICIDENTIFIER]}|x|X|\\*`);b0("XRANGEPLAIN",`[v=\\s]*(${W0[K0.XRANGEIDENTIFIER]})(?:\\.(${W0[K0.XRANGEIDENTIFIER]})(?:\\.(${W0[K0.XRANGEIDENTIFIER]})(?:${W0[K0.PRERELEASE]})?${W0[K0.BUILD]}?)?)?`);b0("XRANGEPLAINLOOSE",`[v=\\s]*(${W0[K0.XRANGEIDENTIFIERLOOSE]})(?:\\.(${W0[K0.XRANGEIDENTIFIERLOOSE]})(?:\\.(${W0[K0.XRANGEIDENTIFIERLOOSE]})(?:${W0[K0.PRERELEASELOOSE]})?${W0[K0.BUILD]}?)?)?`);b0("XRANGE",`^${W0[K0.GTLT]}\\s*${W0[K0.XRANGEPLAIN]}$`);b0("XRANGELOOSE",`^${W0[K0.GTLT]}\\s*${W0[K0.XRANGEPLAINLOOSE]}$`);b0("COERCEPLAIN",`(^|[^\\d])(\\d{1,${vD}})(?:\\.(\\d{1,${vD}}))?(?:\\.(\\d{1,${vD}}))?`);b0("COERCE",`${W0[K0.COERCEPLAIN]}(?:$|[^\\d])`);b0("COERCEFULL",W0[K0.COERCEPLAIN]+`(?:${W0[K0.PRERELEASE]})?(?:${W0[K0.BUILD]})?(?:$|[^\\d])`);b0("COERCERTL",W0[K0.COERCE],!0);b0("COERCERTLFULL",W0[K0.COERCEFULL],!0);b0("LONETILDE","(?:~>?)");b0("TILDETRIM",`(\\s*)${W0[K0.LONETILDE]}\\s+`,!0);Q7.tildeTrimReplace="$1~";b0("TILDE",`^${W0[K0.LONETILDE]}${W0[K0.XRANGEPLAIN]}$`);b0("TILDELOOSE",`^${W0[K0.LONETILDE]}${W0[K0.XRANGEPLAINLOOSE]}$`);b0("LONECARET","(?:\\^)");b0("CARETTRIM",`(\\s*)${W0[K0.LONECARET]}\\s+`,!0);Q7.caretTrimReplace="$1^";b0("CARET",`^${W0[K0.LONECARET]}${W0[K0.XRANGEPLAIN]}$`);b0("CARETLOOSE",`^${W0[K0.LONECARET]}${W0[K0.XRANGEPLAINLOOSE]}$`);b0("COMPARATORLOOSE",`^${W0[K0.GTLT]}\\s*(${W0[K0.LOOSEPLAIN]})$|^$`);b0("COMPARATOR",`^${W0[K0.GTLT]}\\s*(${W0[K0.FULLPLAIN]})$|^$`);b0("COMPARATORTRIM",`(\\s*)${W0[K0.GTLT]}\\s*(${W0[K0.LOOSEPLAIN]}|${W0[K0.XRANGEPLAIN]})`,!0);Q7.comparatorTrimReplace="$1$2$3";b0("HYPHENRANGE",`^\\s*(${W0[K0.XRANGEPLAIN]})\\s+-\\s+(${W0[K0.XRANGEPLAIN]})\\s*$`);b0("HYPHENRANGELOOSE",`^\\s*(${W0[K0.XRANGEPLAINLOOSE]})\\s+-\\s+(${W0[K0.XRANGEPLAINLOOSE]})\\s*$`);b0("STAR","(<|>)?=?\\s*\\*");b0("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");b0("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var aU=w((sG6,Ll)=>{var Hq1=Object.freeze({loose:!0}),Vq1=Object.freeze({}),qq1=(Z)=>{if(!Z)return Vq1;if(typeof Z!=="object")return Hq1;return Z};Ll.exports=qq1});var jl=w((oG6,Ol)=>{var Bl=/^[0-9]+$/,wl=(Z,J)=>{let X=Bl.test(Z),Y=Bl.test(J);if(X&&Y)Z=+Z,J=+J;return Z===J?0:X&&!Y?-1:Y&&!X?1:Z<J?-1:1},Fq1=(Z,J)=>wl(J,Z);Ol.exports={compareIdentifiers:wl,rcompareIdentifiers:Fq1}});var xQ=w((rG6,Dl)=>{var sU=YG(),{MAX_LENGTH:Ml,MAX_SAFE_INTEGER:oU}=nU(),{safeRe:Rl,safeSrc:Nl,t:rU}=$G(),Uq1=aU(),{compareIdentifiers:AQ}=jl();class V4{constructor(Z,J){if(J=Uq1(J),Z instanceof V4)if(Z.loose===!!J.loose&&Z.includePrerelease===!!J.includePrerelease)return Z;else Z=Z.version;else if(typeof Z!=="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof Z}".`);if(Z.length>Ml)throw new TypeError(`version is longer than ${Ml} characters`);sU("SemVer",Z,J),this.options=J,this.loose=!!J.loose,this.includePrerelease=!!J.includePrerelease;let X=Z.trim().match(J.loose?Rl[rU.LOOSE]:Rl[rU.FULL]);if(!X)throw new TypeError(`Invalid Version: ${Z}`);if(this.raw=Z,this.major=+X[1],this.minor=+X[2],this.patch=+X[3],this.major>oU||this.major<0)throw new TypeError("Invalid major version");if(this.minor>oU||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>oU||this.patch<0)throw new TypeError("Invalid patch version");if(!X[4])this.prerelease=[];else this.prerelease=X[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let $=+Y;if($>=0&&$<oU)return $}return Y});this.build=X[5]?X[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(Z){if(sU("SemVer.compare",this.version,this.options,Z),!(Z instanceof V4)){if(typeof Z==="string"&&Z===this.version)return 0;Z=new V4(Z,this.options)}if(Z.version===this.version)return 0;return this.compareMain(Z)||this.comparePre(Z)}compareMain(Z){if(!(Z instanceof V4))Z=new V4(Z,this.options);return AQ(this.major,Z.major)||AQ(this.minor,Z.minor)||AQ(this.patch,Z.patch)}comparePre(Z){if(!(Z instanceof V4))Z=new V4(Z,this.options);if(this.prerelease.length&&!Z.prerelease.length)return-1;else if(!this.prerelease.length&&Z.prerelease.length)return 1;else if(!this.prerelease.length&&!Z.prerelease.length)return 0;let J=0;do{let X=this.prerelease[J],Y=Z.prerelease[J];if(sU("prerelease compare",J,X,Y),X===void 0&&Y===void 0)return 0;else if(Y===void 0)return 1;else if(X===void 0)return-1;else if(X===Y)continue;else return AQ(X,Y)}while(++J)}compareBuild(Z){if(!(Z instanceof V4))Z=new V4(Z,this.options);let J=0;do{let X=this.build[J],Y=Z.build[J];if(sU("build compare",J,X,Y),X===void 0&&Y===void 0)return 0;else if(Y===void 0)return 1;else if(X===void 0)return-1;else if(X===Y)continue;else return AQ(X,Y)}while(++J)}inc(Z,J,X){if(Z.startsWith("pre")){if(!J&&X===!1)throw new Error("invalid increment argument: identifier is empty");if(J){let Y=new RegExp(`^${this.options.loose?Nl[rU.PRERELEASELOOSE]:Nl[rU.PRERELEASE]}$`),$=`-${J}`.match(Y);if(!$||$[1]!==J)throw new Error(`invalid identifier: ${J}`)}}switch(Z){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",J,X);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",J,X);break;case"prepatch":this.prerelease.length=0,this.inc("patch",J,X),this.inc("pre",J,X);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",J,X);this.inc("pre",J,X);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let Y=Number(X)?1:0;if(this.prerelease.length===0)this.prerelease=[Y];else{let $=this.prerelease.length;while(--$>=0)if(typeof this.prerelease[$]==="number")this.prerelease[$]++,$=-2;if($===-1){if(J===this.prerelease.join(".")&&X===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(J){let $=[J,Y];if(X===!1)$=[J];if(AQ(this.prerelease[0],J)===0){if(isNaN(this.prerelease[1]))this.prerelease=$}else this.prerelease=$}break}default:throw new Error(`invalid increment argument: ${Z}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}Dl.exports=V4});var Tl=w((tG6,Cl)=>{var Pl=xQ(),Lq1=(Z,J,X=!1)=>{if(Z instanceof Pl)return Z;try{return new Pl(Z,J)}catch(Y){if(!X)return null;throw Y}};Cl.exports=Lq1});var El=w((eG6,kl)=>{var Bq1=xQ(),wq1=Tl(),{safeRe:tU,t:eU}=$G(),Oq1=(Z,J)=>{if(Z instanceof Bq1)return Z;if(typeof Z==="number")Z=String(Z);if(typeof Z!=="string")return null;J=J||{};let X=null;if(!J.rtl)X=Z.match(J.includePrerelease?tU[eU.COERCEFULL]:tU[eU.COERCE]);else{let G=J.includePrerelease?tU[eU.COERCERTLFULL]:tU[eU.COERCERTL],z;while((z=G.exec(Z))&&(!X||X.index+X[0].length!==Z.length)){if(!X||z.index+z[0].length!==X.index+X[0].length)X=z;G.lastIndex=z.index+z[1].length+z[2].length}G.lastIndex=-1}if(X===null)return null;let Y=X[2],$=X[3]||"0",Q=X[4]||"0",W=J.includePrerelease&&X[5]?`-${X[5]}`:"",K=J.includePrerelease&&X[6]?`+${X[6]}`:"";return wq1(`${Y}.${$}.${Q}${W}${K}`,J)};kl.exports=Oq1});var XY=w((Zz6,vl)=>{var Il=xQ(),jq1=(Z,J,X)=>new Il(Z,X).compare(new Il(J,X));vl.exports=jq1});var _D=w((Jz6,Sl)=>{var Mq1=XY(),Rq1=(Z,J,X)=>Mq1(Z,J,X)>=0;Sl.exports=Rq1});var xl=w((Xz6,Al)=>{class _l{constructor(){this.max=1000,this.map=new Map}get(Z){let J=this.map.get(Z);if(J===void 0)return;else return this.map.delete(Z),this.map.set(Z,J),J}delete(Z){return this.map.delete(Z)}set(Z,J){if(!this.delete(Z)&&J!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(Z,J)}return this}}Al.exports=_l});var fl=w((Yz6,hl)=>{var Nq1=XY(),Dq1=(Z,J,X)=>Nq1(Z,J,X)===0;hl.exports=Dq1});var yl=w(($z6,bl)=>{var Pq1=XY(),Cq1=(Z,J,X)=>Pq1(Z,J,X)!==0;bl.exports=Cq1});var ml=w((Qz6,gl)=>{var Tq1=XY(),kq1=(Z,J,X)=>Tq1(Z,J,X)>0;gl.exports=kq1});var dl=w((Wz6,ul)=>{var Eq1=XY(),Iq1=(Z,J,X)=>Eq1(Z,J,X)<0;ul.exports=Iq1});var ll=w((Kz6,cl)=>{var vq1=XY(),Sq1=(Z,J,X)=>vq1(Z,J,X)<=0;cl.exports=Sq1});var il=w((Gz6,pl)=>{var _q1=fl(),Aq1=yl(),xq1=ml(),hq1=_D(),fq1=dl(),bq1=ll(),yq1=(Z,J,X,Y)=>{switch(J){case"===":if(typeof Z==="object")Z=Z.version;if(typeof X==="object")X=X.version;return Z===X;case"!==":if(typeof Z==="object")Z=Z.version;if(typeof X==="object")X=X.version;return Z!==X;case"":case"=":case"==":return _q1(Z,X,Y);case"!=":return Aq1(Z,X,Y);case">":return xq1(Z,X,Y);case">=":return hq1(Z,X,Y);case"<":return fq1(Z,X,Y);case"<=":return bq1(Z,X,Y);default:throw new TypeError(`Invalid operator: ${J}`)}};pl.exports=yq1});var el=w((zz6,tl)=>{var QG=Symbol("SemVer ANY");class Z2{static get ANY(){return QG}constructor(Z,J){if(J=nl(J),Z instanceof Z2)if(Z.loose===!!J.loose)return Z;else Z=Z.value;if(Z=Z.trim().split(/\s+/).join(" "),xD("comparator",Z,J),this.options=J,this.loose=!!J.loose,this.parse(Z),this.semver===QG)this.value="";else this.value=this.operator+this.semver.version;xD("comp",this)}parse(Z){let J=this.options.loose?al[sl.COMPARATORLOOSE]:al[sl.COMPARATOR],X=Z.match(J);if(!X)throw new TypeError(`Invalid comparator: ${Z}`);if(this.operator=X[1]!==void 0?X[1]:"",this.operator==="=")this.operator="";if(!X[2])this.semver=QG;else this.semver=new ol(X[2],this.options.loose)}toString(){return this.value}test(Z){if(xD("Comparator.test",Z,this.options.loose),this.semver===QG||Z===QG)return!0;if(typeof Z==="string")try{Z=new ol(Z,this.options)}catch(J){return!1}return AD(Z,this.operator,this.semver,this.options)}intersects(Z,J){if(!(Z instanceof Z2))throw new TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new rl(Z.value,J).test(this.value)}else if(Z.operator===""){if(Z.value==="")return!0;return new rl(this.value,J).test(Z.semver)}if(J=nl(J),J.includePrerelease&&(this.value==="<0.0.0-0"||Z.value==="<0.0.0-0"))return!1;if(!J.includePrerelease&&(this.value.startsWith("<0.0.0")||Z.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&Z.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&Z.operator.startsWith("<"))return!0;if(this.semver.version===Z.semver.version&&this.operator.includes("=")&&Z.operator.includes("="))return!0;if(AD(this.semver,"<",Z.semver,J)&&this.operator.startsWith(">")&&Z.operator.startsWith("<"))return!0;if(AD(this.semver,">",Z.semver,J)&&this.operator.startsWith("<")&&Z.operator.startsWith(">"))return!0;return!1}}tl.exports=Z2;var nl=aU(),{safeRe:al,t:sl}=$G(),AD=il(),xD=YG(),ol=xQ(),rl=hD()});var hD=w((Hz6,Yp)=>{var gq1=/\s+/g;class WG{constructor(Z,J){if(J=uq1(J),Z instanceof WG)if(Z.loose===!!J.loose&&Z.includePrerelease===!!J.includePrerelease)return Z;else return new WG(Z.raw,J);if(Z instanceof fD)return this.raw=Z.value,this.set=[[Z]],this.formatted=void 0,this;if(this.options=J,this.loose=!!J.loose,this.includePrerelease=!!J.includePrerelease,this.raw=Z.trim().replace(gq1," "),this.set=this.raw.split("||").map((X)=>this.parseRange(X.trim())).filter((X)=>X.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let X=this.set[0];if(this.set=this.set.filter((Y)=>!Jp(Y[0])),this.set.length===0)this.set=[X];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&aq1(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let Z=0;Z<this.set.length;Z++){if(Z>0)this.formatted+="||";let J=this.set[Z];for(let X=0;X<J.length;X++){if(X>0)this.formatted+=" ";this.formatted+=J[X].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(Z){let X=((this.options.includePrerelease&&iq1)|(this.options.loose&&nq1))+":"+Z,Y=Zp.get(X);if(Y)return Y;let $=this.options.loose,Q=$?j5[l6.HYPHENRANGELOOSE]:j5[l6.HYPHENRANGE];Z=Z.replace(Q,$F1(this.options.includePrerelease)),m1("hyphen replace",Z),Z=Z.replace(j5[l6.COMPARATORTRIM],cq1),m1("comparator trim",Z),Z=Z.replace(j5[l6.TILDETRIM],lq1),m1("tilde trim",Z),Z=Z.replace(j5[l6.CARETTRIM],pq1),m1("caret trim",Z);let W=Z.split(" ").map((H)=>sq1(H,this.options)).join(" ").split(/\s+/).map((H)=>YF1(H,this.options));if($)W=W.filter((H)=>{return m1("loose invalid filter",H,this.options),!!H.match(j5[l6.COMPARATORLOOSE])});m1("range list",W);let K=new Map,G=W.map((H)=>new fD(H,this.options));for(let H of G){if(Jp(H))return[H];K.set(H.value,H)}if(K.size>1&&K.has(""))K.delete("");let z=[...K.values()];return Zp.set(X,z),z}intersects(Z,J){if(!(Z instanceof WG))throw new TypeError("a Range is required");return this.set.some((X)=>{return Xp(X,J)&&Z.set.some((Y)=>{return Xp(Y,J)&&X.every(($)=>{return Y.every((Q)=>{return $.intersects(Q,J)})})})})}test(Z){if(!Z)return!1;if(typeof Z==="string")try{Z=new dq1(Z,this.options)}catch(J){return!1}for(let J=0;J<this.set.length;J++)if(QF1(this.set[J],Z,this.options))return!0;return!1}}Yp.exports=WG;var mq1=xl(),Zp=new mq1,uq1=aU(),fD=el(),m1=YG(),dq1=xQ(),{safeRe:j5,t:l6,comparatorTrimReplace:cq1,tildeTrimReplace:lq1,caretTrimReplace:pq1}=$G(),{FLAG_INCLUDE_PRERELEASE:iq1,FLAG_LOOSE:nq1}=nU(),Jp=(Z)=>Z.value==="<0.0.0-0",aq1=(Z)=>Z.value==="",Xp=(Z,J)=>{let X=!0,Y=Z.slice(),$=Y.pop();while(X&&Y.length)X=Y.every((Q)=>{return $.intersects(Q,J)}),$=Y.pop();return X},sq1=(Z,J)=>{return m1("comp",Z,J),Z=tq1(Z,J),m1("caret",Z),Z=oq1(Z,J),m1("tildes",Z),Z=ZF1(Z,J),m1("xrange",Z),Z=XF1(Z,J),m1("stars",Z),Z},p6=(Z)=>!Z||Z.toLowerCase()==="x"||Z==="*",oq1=(Z,J)=>{return Z.trim().split(/\s+/).map((X)=>rq1(X,J)).join(" ")},rq1=(Z,J)=>{let X=J.loose?j5[l6.TILDELOOSE]:j5[l6.TILDE];return Z.replace(X,(Y,$,Q,W,K)=>{m1("tilde",Z,Y,$,Q,W,K);let G;if(p6($))G="";else if(p6(Q))G=`>=${$}.0.0 <${+$+1}.0.0-0`;else if(p6(W))G=`>=${$}.${Q}.0 <${$}.${+Q+1}.0-0`;else if(K)m1("replaceTilde pr",K),G=`>=${$}.${Q}.${W}-${K} <${$}.${+Q+1}.0-0`;else G=`>=${$}.${Q}.${W} <${$}.${+Q+1}.0-0`;return m1("tilde return",G),G})},tq1=(Z,J)=>{return Z.trim().split(/\s+/).map((X)=>eq1(X,J)).join(" ")},eq1=(Z,J)=>{m1("caret",Z,J);let X=J.loose?j5[l6.CARETLOOSE]:j5[l6.CARET],Y=J.includePrerelease?"-0":"";return Z.replace(X,($,Q,W,K,G)=>{m1("caret",Z,$,Q,W,K,G);let z;if(p6(Q))z="";else if(p6(W))z=`>=${Q}.0.0${Y} <${+Q+1}.0.0-0`;else if(p6(K))if(Q==="0")z=`>=${Q}.${W}.0${Y} <${Q}.${+W+1}.0-0`;else z=`>=${Q}.${W}.0${Y} <${+Q+1}.0.0-0`;else if(G)if(m1("replaceCaret pr",G),Q==="0")if(W==="0")z=`>=${Q}.${W}.${K}-${G} <${Q}.${W}.${+K+1}-0`;else z=`>=${Q}.${W}.${K}-${G} <${Q}.${+W+1}.0-0`;else z=`>=${Q}.${W}.${K}-${G} <${+Q+1}.0.0-0`;else if(m1("no pr"),Q==="0")if(W==="0")z=`>=${Q}.${W}.${K}${Y} <${Q}.${W}.${+K+1}-0`;else z=`>=${Q}.${W}.${K}${Y} <${Q}.${+W+1}.0-0`;else z=`>=${Q}.${W}.${K} <${+Q+1}.0.0-0`;return m1("caret return",z),z})},ZF1=(Z,J)=>{return m1("replaceXRanges",Z,J),Z.split(/\s+/).map((X)=>JF1(X,J)).join(" ")},JF1=(Z,J)=>{Z=Z.trim();let X=J.loose?j5[l6.XRANGELOOSE]:j5[l6.XRANGE];return Z.replace(X,(Y,$,Q,W,K,G)=>{m1("xRange",Z,Y,$,Q,W,K,G);let z=p6(Q),H=z||p6(W),V=H||p6(K),q=V;if($==="="&&q)$="";if(G=J.includePrerelease?"-0":"",z)if($===">"||$==="<")Y="<0.0.0-0";else Y="*";else if($&&q){if(H)W=0;if(K=0,$===">")if($=">=",H)Q=+Q+1,W=0,K=0;else W=+W+1,K=0;else if($==="<=")if($="<",H)Q=+Q+1;else W=+W+1;if($==="<")G="-0";Y=`${$+Q}.${W}.${K}${G}`}else if(H)Y=`>=${Q}.0.0${G} <${+Q+1}.0.0-0`;else if(V)Y=`>=${Q}.${W}.0${G} <${Q}.${+W+1}.0-0`;return m1("xRange return",Y),Y})},XF1=(Z,J)=>{return m1("replaceStars",Z,J),Z.trim().replace(j5[l6.STAR],"")},YF1=(Z,J)=>{return m1("replaceGTE0",Z,J),Z.trim().replace(j5[J.includePrerelease?l6.GTE0PRE:l6.GTE0],"")},$F1=(Z)=>(J,X,Y,$,Q,W,K,G,z,H,V,q)=>{if(p6(Y))X="";else if(p6($))X=`>=${Y}.0.0${Z?"-0":""}`;else if(p6(Q))X=`>=${Y}.${$}.0${Z?"-0":""}`;else if(W)X=`>=${X}`;else X=`>=${X}${Z?"-0":""}`;if(p6(z))G="";else if(p6(H))G=`<${+z+1}.0.0-0`;else if(p6(V))G=`<${z}.${+H+1}.0-0`;else if(q)G=`<=${z}.${H}.${V}-${q}`;else if(Z)G=`<${z}.${H}.${+V+1}-0`;else G=`<=${G}`;return`${X} ${G}`.trim()},QF1=(Z,J,X)=>{for(let Y=0;Y<Z.length;Y++)if(!Z[Y].test(J))return!1;if(J.prerelease.length&&!X.includePrerelease){for(let Y=0;Y<Z.length;Y++){if(m1(Z[Y].semver),Z[Y].semver===fD.ANY)continue;if(Z[Y].semver.prerelease.length>0){let $=Z[Y].semver;if($.major===J.major&&$.minor===J.minor&&$.patch===J.patch)return!0}}return!1}return!0}});var Qp=w((Vz6,$p)=>{var WF1=hD(),KF1=(Z,J,X)=>{try{J=new WF1(J,X)}catch(Y){return!1}return J.test(Z)};$p.exports=KF1});var bD=w((qz6,GF1)=>{GF1.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.33.5",author:"Lovell Fuller <npm@lovell.info>",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert <pierre.inglebert@gmail.com>","Jonathan Ong <jonathanrichardong@gmail.com>","Chanon Sajjamanochai <chanon.s@gmail.com>","Juliano Julio <julianojulio@gmail.com>","Daniel Gasienica <daniel@gasienica.ch>","Julian Walker <julian@fiftythree.com>","Amit Pitaru <pitaru.amit@gmail.com>","Brandon Aaron <hello.brandon@aaron.sh>","Andreas Lind <andreas@one.com>","Maurus Cuelenaere <mcuelenaere@gmail.com>","Linus Unneb\xE4ck <linus@folkdatorn.se>","Victor Mateevitsi <mvictoras@gmail.com>","Alaric Holloway <alaric.holloway@gmail.com>","Bernhard K. Weisshuhn <bkw@codingforce.com>","Chris Riley <criley@primedia.com>","David Carley <dacarley@gmail.com>","John Tobin <john@limelightmobileinc.com>","Kenton Gray <kentongray@gmail.com>","Felix B\xFCnemann <Felix.Buenemann@gmail.com>","Samy Al Zahrani <samyalzahrany@gmail.com>","Chintan Thakkar <lemnisk8@gmail.com>","F. Orlando Galashan <frulo@gmx.de>","Kleis Auke Wolthuizen <info@kleisauke.nl>","Matt Hirsch <mhirsch@media.mit.edu>","Matthias Thoemmes <thoemmes@gmail.com>","Patrick Paskaris <patrick@paskaris.gr>","J\xE9r\xE9my Lal <kapouer@melix.org>","Rahul Nanwani <r.nanwani@gmail.com>","Alice Monday <alice0meta@gmail.com>","Kristo Jorgenson <kristo.jorgenson@gmail.com>","YvesBos <yves_bos@outlook.com>","Guy Maliar <guy@tailorbrands.com>","Nicolas Coden <nicolas@ncoden.fr>","Matt Parrish <matt.r.parrish@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Matthew McEachen <matthew+github@mceachen.org>","Jarda Kot\u011B\u0161ovec <jarda.kotesovec@gmail.com>","Kenric D'Souza <kenric.dsouza@gmail.com>","Oleh Aleinyk <oleg.aleynik@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Andrea Bianco <andrea.bianco@unibas.ch>","Rik Heywood <rik@rik.org>","Thomas Parisot <hi@oncletom.io>","Nathan Graves <nathanrgraves+github@gmail.com>","Tom Lokhorst <tom@lokhorst.eu>","Espen Hovlandsdal <espen@hovlandsdal.com>","Sylvain Dumont <sylvain.dumont35@gmail.com>","Alun Davies <alun.owain.davies@googlemail.com>","Aidan Hoolachan <ajhoolachan21@gmail.com>","Axel Eirola <axel.eirola@iki.fi>","Freezy <freezy@xbmc.org>","Daiz <taneli.vatanen@gmail.com>","Julian Aubourg <j@ubourg.net>","Keith Belovay <keith@picthrive.com>","Michael B. Klein <mbklein@gmail.com>","Jordan Prudhomme <jordan@raboland.fr>","Ilya Ovdin <iovdin@gmail.com>","Andargor <andargor@yahoo.com>","Paul Neave <paul.neave@gmail.com>","Brendan Kennedy <brenwken@gmail.com>","Brychan Bennett-Odlum <git@brychan.io>","Edward Silverton <e.silverton@gmail.com>","Roman Malieiev <aromaleev@gmail.com>","Tomas Szabo <tomas.szabo@deftomat.com>","Robert O'Rourke <robert@o-rourke.org>","Guillermo Alfonso Varela Chouci\xF1o <guillevch@gmail.com>","Christian Flintrup <chr@gigahost.dk>","Manan Jadhav <manan@motionden.com>","Leon Radley <leon@radley.se>","alza54 <alza54@thiocod.in>","Jacob Smith <jacob@frende.me>","Michael Nutt <michael@nutt.im>","Brad Parham <baparham@gmail.com>","Taneli Vatanen <taneli.vatanen@gmail.com>","Joris Dugu\xE9 <zaruike10@gmail.com>","Chris Banks <christopher.bradley.banks@gmail.com>","Ompal Singh <ompal.hitm09@gmail.com>","Brodan <christopher.hranj@gmail.com>","Ankur Parihar <ankur.github@gmail.com>","Brahim Ait elhaj <brahima@gmail.com>","Mart Jansink <m.jansink@gmail.com>","Lachlan Newman <lachnewman007@gmail.com>","Dennis Beatty <dennis@dcbeatty.com>","Ingvar Stepanyan <me@rreverser.com>","Don Denton <don@happycollision.com>"],scripts:{install:"node install/check",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build","package-from-github-release":"node npm/from-github-release","docs-build":"node docs/build && node docs/search-index/build","docs-serve":"cd docs && npx serve","docs-publish":"cd docs && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.3",semver:"^7.6.3"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.33.5","@img/sharp-darwin-x64":"0.33.5","@img/sharp-libvips-darwin-arm64":"1.0.4","@img/sharp-libvips-darwin-x64":"1.0.4","@img/sharp-libvips-linux-arm":"1.0.5","@img/sharp-libvips-linux-arm64":"1.0.4","@img/sharp-libvips-linux-s390x":"1.0.4","@img/sharp-libvips-linux-x64":"1.0.4","@img/sharp-libvips-linuxmusl-arm64":"1.0.4","@img/sharp-libvips-linuxmusl-x64":"1.0.4","@img/sharp-linux-arm":"0.33.5","@img/sharp-linux-arm64":"0.33.5","@img/sharp-linux-s390x":"0.33.5","@img/sharp-linux-x64":"0.33.5","@img/sharp-linuxmusl-arm64":"0.33.5","@img/sharp-linuxmusl-x64":"0.33.5","@img/sharp-wasm32":"0.33.5","@img/sharp-win32-ia32":"0.33.5","@img/sharp-win32-x64":"0.33.5"},devDependencies:{"@emnapi/runtime":"^1.2.0","@img/sharp-libvips-dev":"1.0.4","@img/sharp-libvips-dev-wasm32":"1.0.5","@img/sharp-libvips-win32-ia32":"1.0.4","@img/sharp-libvips-win32-x64":"1.0.4","@types/node":"*",async:"^3.2.5",cc:"^3.0.1",emnapi:"^1.2.0","exif-reader":"^2.0.1","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^8.0.3","license-checker":"^25.0.1",mocha:"^10.7.3","node-addon-api":"^8.1.0",nyc:"^17.0.0",prebuild:"^13.0.1",semistandard:"^17.0.0","tar-fs":"^3.0.6",tsd:"^0.31.1"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.15.3"},funding:{url:"https://opencollective.com/libvips"},binary:{napi_versions:[9]},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var gD=w((Fz6,Lp)=>{var{spawnSync:J2}=u("child_process"),{createHash:zF1}=u("crypto"),zp=El(),HF1=_D(),VF1=Qp(),Wp=iU(),{config:qF1,engines:Kp,optionalDependencies:FF1}=bD(),UF1=process.env.npm_package_config_libvips||qF1.libvips,Hp=zp(UF1).version,LF1=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-ia32","win32-x64"],X2={encoding:"utf8",shell:!0},BF1=(Z)=>{if(Z instanceof Error)console.error(`sharp: Installation error: ${Z.message}`);else console.log(`sharp: ${Z}`)},Vp=()=>Wp.isNonGlibcLinuxSync()?Wp.familySync():"",wF1=()=>`${process.platform}${Vp()}-${process.arch}`,hQ=()=>{if(qp())return"wasm32";let{npm_config_arch:Z,npm_config_platform:J,npm_config_libc:X}=process.env,Y=typeof X==="string"?X:Vp();return`${J||process.platform}${Y}-${Z||process.arch}`},OF1=()=>{try{return u(`@img/sharp-libvips-dev-${hQ()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},jF1=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catc