@orderly.network/core 1.5.2 → 1.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var En=Object.create;var xe=Object.defineProperty;var Cn=Object.getOwnPropertyDescriptor;var In=Object.getOwnPropertyNames;var _n=Object.getPrototypeOf,Sn=Object.prototype.hasOwnProperty;var Mn=(n,e)=>()=>(n&&(e=n(n=0)),e);var ie=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),wt=(n,e)=>{for(var t in e)xe(n,t,{get:e[t],enumerable:!0})},At=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of In(e))!Sn.call(n,a)&&a!==t&&xe(n,a,{get:()=>e[a],enumerable:!(r=Cn(e,a))||r.enumerable});return n};var se=(n,e,t)=>(t=n!=null?En(_n(n)):{},At(e||!n||!n.__esModule?xe(t,"default",{value:n,enumerable:!0}):t,n)),kn=n=>At(xe({},"__esModule",{value:!0}),n);var Et=ie(Ee=>{"use strict";m();Ee.byteLength=Bn;Ee.toByteArray=Nn;Ee.fromByteArray=Dn;var K=[],O=[],Rn=typeof Uint8Array<"u"?Uint8Array:Array,ze="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Q=0,vt=ze.length;Q<vt;++Q)K[Q]=ze[Q],O[ze.charCodeAt(Q)]=Q;var Q,vt;O["-".charCodeAt(0)]=62;O["_".charCodeAt(0)]=63;function xt(n){var e=n.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=n.indexOf("=");t===-1&&(t=e);var r=t===e?0:4-t%4;return[t,r]}function Bn(n){var e=xt(n),t=e[0],r=e[1];return(t+r)*3/4-r}function Fn(n,e,t){return(e+t)*3/4-t}function Nn(n){var e,t=xt(n),r=t[0],a=t[1],i=new Rn(Fn(n,r,a)),s=0,u=a>0?r-4:r,p;for(p=0;p<u;p+=4)e=O[n.charCodeAt(p)]<<18|O[n.charCodeAt(p+1)]<<12|O[n.charCodeAt(p+2)]<<6|O[n.charCodeAt(p+3)],i[s++]=e>>16&255,i[s++]=e>>8&255,i[s++]=e&255;return a===2&&(e=O[n.charCodeAt(p)]<<2|O[n.charCodeAt(p+1)]>>4,i[s++]=e&255),a===1&&(e=O[n.charCodeAt(p)]<<10|O[n.charCodeAt(p+1)]<<4|O[n.charCodeAt(p+2)]>>2,i[s++]=e>>8&255,i[s++]=e&255),i}function Un(n){return K[n>>18&63]+K[n>>12&63]+K[n>>6&63]+K[n&63]}function On(n,e,t){for(var r,a=[],i=e;i<t;i+=3)r=(n[i]<<16&16711680)+(n[i+1]<<8&65280)+(n[i+2]&255),a.push(Un(r));return a.join("")}function Dn(n){for(var e,t=n.length,r=t%3,a=[],i=16383,s=0,u=t-r;s<u;s+=i)a.push(On(n,s,s+i>u?u:s+i));return r===1?(e=n[t-1],a.push(K[e>>2]+K[e<<4&63]+"==")):r===2&&(e=(n[t-2]<<8)+n[t-1],a.push(K[e>>10]+K[e>>4&63]+K[e<<2&63]+"=")),a.join("")}});var Ct=ie(Xe=>{"use strict";m();Xe.read=function(n,e,t,r,a){var i,s,u=a*8-r-1,p=(1<<u)-1,c=p>>1,y=-7,l=t?a-1:0,h=t?-1:1,f=n[e+l];for(l+=h,i=f&(1<<-y)-1,f>>=-y,y+=u;y>0;i=i*256+n[e+l],l+=h,y-=8);for(s=i&(1<<-y)-1,i>>=-y,y+=r;y>0;s=s*256+n[e+l],l+=h,y-=8);if(i===0)i=1-c;else{if(i===p)return s?NaN:(f?-1:1)*(1/0);s=s+Math.pow(2,r),i=i-c}return(f?-1:1)*s*Math.pow(2,i-r)};Xe.write=function(n,e,t,r,a,i){var s,u,p,c=i*8-a-1,y=(1<<c)-1,l=y>>1,h=a===23?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:i-1,g=r?1:-1,A=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(u=isNaN(e)?1:0,s=y):(s=Math.floor(Math.log(e)/Math.LN2),e*(p=Math.pow(2,-s))<1&&(s--,p*=2),s+l>=1?e+=h/p:e+=h*Math.pow(2,1-l),e*p>=2&&(s++,p/=2),s+l>=y?(u=0,s=y):s+l>=1?(u=(e*p-1)*Math.pow(2,a),s=s+l):(u=e*Math.pow(2,l-1)*Math.pow(2,a),s=0));a>=8;n[t+f]=u&255,f+=g,u/=256,a-=8);for(s=s<<a|u,c+=a;c>0;n[t+f]=s&255,f+=g,s/=256,c-=8);n[t+f-g]|=A*128}});var et=ie(ue=>{"use strict";m();var je=Et(),oe=Ct(),It=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ue.Buffer=o;ue.SlowBuffer=Wn;ue.INSPECT_MAX_BYTES=50;var Ce=2147483647;ue.kMaxLength=Ce;o.TYPED_ARRAY_SUPPORT=Pn();!o.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 Pn(){try{var n=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(n,e),n.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}});Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function z(n){if(n>Ce)throw new RangeError('The value "'+n+'" is invalid for option "size"');var e=new Uint8Array(n);return Object.setPrototypeOf(e,o.prototype),e}function o(n,e,t){if(typeof n=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return Ze(n)}return Mt(n,e,t)}o.poolSize=8192;function Mt(n,e,t){if(typeof n=="string")return Hn(n,e);if(ArrayBuffer.isView(n))return Vn(n);if(n==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof n);if(H(n,ArrayBuffer)||n&&H(n.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(H(n,SharedArrayBuffer)||n&&H(n.buffer,SharedArrayBuffer)))return qe(n,e,t);if(typeof n=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var r=n.valueOf&&n.valueOf();if(r!=null&&r!==n)return o.from(r,e,t);var a=Ln(n);if(a)return a;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof n[Symbol.toPrimitive]=="function")return o.from(n[Symbol.toPrimitive]("string"),e,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof n)}o.from=function(n,e,t){return Mt(n,e,t)};Object.setPrototypeOf(o.prototype,Uint8Array.prototype);Object.setPrototypeOf(o,Uint8Array);function kt(n){if(typeof n!="number")throw new TypeError('"size" argument must be of type number');if(n<0)throw new RangeError('The value "'+n+'" is invalid for option "size"')}function Kn(n,e,t){return kt(n),n<=0?z(n):e!==void 0?typeof t=="string"?z(n).fill(e,t):z(n).fill(e):z(n)}o.alloc=function(n,e,t){return Kn(n,e,t)};function Ze(n){return kt(n),z(n<0?0:$e(n)|0)}o.allocUnsafe=function(n){return Ze(n)};o.allocUnsafeSlow=function(n){return Ze(n)};function Hn(n,e){if((typeof e!="string"||e==="")&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var t=Rt(n,e)|0,r=z(t),a=r.write(n,e);return a!==t&&(r=r.slice(0,a)),r}function Ye(n){for(var e=n.length<0?0:$e(n.length)|0,t=z(e),r=0;r<e;r+=1)t[r]=n[r]&255;return t}function Vn(n){if(H(n,Uint8Array)){var e=new Uint8Array(n);return qe(e.buffer,e.byteOffset,e.byteLength)}return Ye(n)}function qe(n,e,t){if(e<0||n.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(n.byteLength<e+(t||0))throw new RangeError('"length" is outside of buffer bounds');var r;return e===void 0&&t===void 0?r=new Uint8Array(n):t===void 0?r=new Uint8Array(n,e):r=new Uint8Array(n,e,t),Object.setPrototypeOf(r,o.prototype),r}function Ln(n){if(o.isBuffer(n)){var e=$e(n.length)|0,t=z(e);return t.length===0||n.copy(t,0,0,e),t}if(n.length!==void 0)return typeof n.length!="number"||Qe(n.length)?z(0):Ye(n);if(n.type==="Buffer"&&Array.isArray(n.data))return Ye(n.data)}function $e(n){if(n>=Ce)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Ce.toString(16)+" bytes");return n|0}function Wn(n){return+n!=n&&(n=0),o.alloc(+n)}o.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==o.prototype};o.compare=function(e,t){if(H(e,Uint8Array)&&(e=o.from(e,e.offset,e.byteLength)),H(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(e)||!o.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var r=e.length,a=t.length,i=0,s=Math.min(r,a);i<s;++i)if(e[i]!==t[i]){r=e[i],a=t[i];break}return r<a?-1:a<r?1:0};o.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};o.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return o.alloc(0);var r;if(t===void 0)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var a=o.allocUnsafe(t),i=0;for(r=0;r<e.length;++r){var s=e[r];if(H(s,Uint8Array))i+s.length>a.length?o.from(s).copy(a,i):Uint8Array.prototype.set.call(a,s,i);else if(o.isBuffer(s))s.copy(a,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=s.length}return a};function Rt(n,e){if(o.isBuffer(n))return n.length;if(ArrayBuffer.isView(n)||H(n,ArrayBuffer))return n.byteLength;if(typeof n!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof n);var t=n.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&t===0)return 0;for(var a=!1;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return Je(n).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return Dt(n).length;default:if(a)return r?-1:Je(n).length;e=(""+e).toLowerCase(),a=!0}}o.byteLength=Rt;function Gn(n,e,t){var r=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,e>>>=0,t<=e))return"";for(n||(n="utf8");;)switch(n){case"hex":return er(this,e,t);case"utf8":case"utf-8":return Ft(this,e,t);case"ascii":return $n(this,e,t);case"latin1":case"binary":return Qn(this,e,t);case"base64":return Jn(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return tr(this,e,t);default:if(r)throw new TypeError("Unknown encoding: "+n);n=(n+"").toLowerCase(),r=!0}}o.prototype._isBuffer=!0;function ee(n,e,t){var r=n[e];n[e]=n[t],n[t]=r}o.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)ee(this,t,t+1);return this};o.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)ee(this,t,t+3),ee(this,t+1,t+2);return this};o.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)ee(this,t,t+7),ee(this,t+1,t+6),ee(this,t+2,t+5),ee(this,t+3,t+4);return this};o.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?Ft(this,0,e):Gn.apply(this,arguments)};o.prototype.toLocaleString=o.prototype.toString;o.prototype.equals=function(e){if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:o.compare(this,e)===0};o.prototype.inspect=function(){var e="",t=ue.INSPECT_MAX_BYTES;return e=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(e+=" ... "),"<Buffer "+e+">"};It&&(o.prototype[It]=o.prototype.inspect);o.prototype.compare=function(e,t,r,a,i){if(H(e,Uint8Array)&&(e=o.from(e,e.offset,e.byteLength)),!o.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),a===void 0&&(a=0),i===void 0&&(i=this.length),t<0||r>e.length||a<0||i>this.length)throw new RangeError("out of range index");if(a>=i&&t>=r)return 0;if(a>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,a>>>=0,i>>>=0,this===e)return 0;for(var s=i-a,u=r-t,p=Math.min(s,u),c=this.slice(a,i),y=e.slice(t,r),l=0;l<p;++l)if(c[l]!==y[l]){s=c[l],u=y[l];break}return s<u?-1:u<s?1:0};function Bt(n,e,t,r,a){if(n.length===0)return-1;if(typeof t=="string"?(r=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,Qe(t)&&(t=a?0:n.length-1),t<0&&(t=n.length+t),t>=n.length){if(a)return-1;t=n.length-1}else if(t<0)if(a)t=0;else return-1;if(typeof e=="string"&&(e=o.from(e,r)),o.isBuffer(e))return e.length===0?-1:_t(n,e,t,r,a);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?a?Uint8Array.prototype.indexOf.call(n,e,t):Uint8Array.prototype.lastIndexOf.call(n,e,t):_t(n,[e],t,r,a);throw new TypeError("val must be string, number or Buffer")}function _t(n,e,t,r,a){var i=1,s=n.length,u=e.length;if(r!==void 0&&(r=String(r).toLowerCase(),r==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(n.length<2||e.length<2)return-1;i=2,s/=2,u/=2,t/=2}function p(f,g){return i===1?f[g]:f.readUInt16BE(g*i)}var c;if(a){var y=-1;for(c=t;c<s;c++)if(p(n,c)===p(e,y===-1?0:c-y)){if(y===-1&&(y=c),c-y+1===u)return y*i}else y!==-1&&(c-=c-y),y=-1}else for(t+u>s&&(t=s-u),c=t;c>=0;c--){for(var l=!0,h=0;h<u;h++)if(p(n,c+h)!==p(e,h)){l=!1;break}if(l)return c}return-1}o.prototype.includes=function(e,t,r){return this.indexOf(e,t,r)!==-1};o.prototype.indexOf=function(e,t,r){return Bt(this,e,t,r,!0)};o.prototype.lastIndexOf=function(e,t,r){return Bt(this,e,t,r,!1)};function zn(n,e,t,r){t=Number(t)||0;var a=n.length-t;r?(r=Number(r),r>a&&(r=a)):r=a;var i=e.length;r>i/2&&(r=i/2);for(var s=0;s<r;++s){var u=parseInt(e.substr(s*2,2),16);if(Qe(u))return s;n[t+s]=u}return s}function Xn(n,e,t,r){return Ie(Je(e,n.length-t),n,t,r)}function jn(n,e,t,r){return Ie(ar(e),n,t,r)}function Yn(n,e,t,r){return Ie(Dt(e),n,t,r)}function qn(n,e,t,r){return Ie(ir(e,n.length-t),n,t,r)}o.prototype.write=function(e,t,r,a){if(t===void 0)a="utf8",r=this.length,t=0;else if(r===void 0&&typeof t=="string")a=t,r=this.length,t=0;else if(isFinite(t))t=t>>>0,isFinite(r)?(r=r>>>0,a===void 0&&(a="utf8")):(a=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");a||(a="utf8");for(var s=!1;;)switch(a){case"hex":return zn(this,e,t,r);case"utf8":case"utf-8":return Xn(this,e,t,r);case"ascii":case"latin1":case"binary":return jn(this,e,t,r);case"base64":return Yn(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return qn(this,e,t,r);default:if(s)throw new TypeError("Unknown encoding: "+a);a=(""+a).toLowerCase(),s=!0}};o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Jn(n,e,t){return e===0&&t===n.length?je.fromByteArray(n):je.fromByteArray(n.slice(e,t))}function Ft(n,e,t){t=Math.min(n.length,t);for(var r=[],a=e;a<t;){var i=n[a],s=null,u=i>239?4:i>223?3:i>191?2:1;if(a+u<=t){var p,c,y,l;switch(u){case 1:i<128&&(s=i);break;case 2:p=n[a+1],(p&192)===128&&(l=(i&31)<<6|p&63,l>127&&(s=l));break;case 3:p=n[a+1],c=n[a+2],(p&192)===128&&(c&192)===128&&(l=(i&15)<<12|(p&63)<<6|c&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:p=n[a+1],c=n[a+2],y=n[a+3],(p&192)===128&&(c&192)===128&&(y&192)===128&&(l=(i&15)<<18|(p&63)<<12|(c&63)<<6|y&63,l>65535&&l<1114112&&(s=l))}}s===null?(s=65533,u=1):s>65535&&(s-=65536,r.push(s>>>10&1023|55296),s=56320|s&1023),r.push(s),a+=u}return Zn(r)}var St=4096;function Zn(n){var e=n.length;if(e<=St)return String.fromCharCode.apply(String,n);for(var t="",r=0;r<e;)t+=String.fromCharCode.apply(String,n.slice(r,r+=St));return t}function $n(n,e,t){var r="";t=Math.min(n.length,t);for(var a=e;a<t;++a)r+=String.fromCharCode(n[a]&127);return r}function Qn(n,e,t){var r="";t=Math.min(n.length,t);for(var a=e;a<t;++a)r+=String.fromCharCode(n[a]);return r}function er(n,e,t){var r=n.length;(!e||e<0)&&(e=0),(!t||t<0||t>r)&&(t=r);for(var a="",i=e;i<t;++i)a+=sr[n[i]];return a}function tr(n,e,t){for(var r=n.slice(e,t),a="",i=0;i<r.length-1;i+=2)a+=String.fromCharCode(r[i]+r[i+1]*256);return a}o.prototype.slice=function(e,t){var r=this.length;e=~~e,t=t===void 0?r:~~t,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),t<e&&(t=e);var a=this.subarray(e,t);return Object.setPrototypeOf(a,o.prototype),a};function E(n,e,t){if(n%1!==0||n<0)throw new RangeError("offset is not uint");if(n+e>t)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e],i=1,s=0;++s<t&&(i*=256);)a+=this[e+s]*i;return a};o.prototype.readUintBE=o.prototype.readUIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e+--t],i=1;t>0&&(i*=256);)a+=this[e+--t]*i;return a};o.prototype.readUint8=o.prototype.readUInt8=function(e,t){return e=e>>>0,t||E(e,1,this.length),this[e]};o.prototype.readUint16LE=o.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||E(e,2,this.length),this[e]|this[e+1]<<8};o.prototype.readUint16BE=o.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||E(e,2,this.length),this[e]<<8|this[e+1]};o.prototype.readUint32LE=o.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||E(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};o.prototype.readUint32BE=o.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};o.prototype.readIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e],i=1,s=0;++s<t&&(i*=256);)a+=this[e+s]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a};o.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=t,i=1,s=this[e+--a];a>0&&(i*=256);)s+=this[e+--a]*i;return i*=128,s>=i&&(s-=Math.pow(2,8*t)),s};o.prototype.readInt8=function(e,t){return e=e>>>0,t||E(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};o.prototype.readInt16LE=function(e,t){e=e>>>0,t||E(e,2,this.length);var r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};o.prototype.readInt16BE=function(e,t){e=e>>>0,t||E(e,2,this.length);var r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};o.prototype.readInt32LE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};o.prototype.readInt32BE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};o.prototype.readFloatLE=function(e,t){return e=e>>>0,t||E(e,4,this.length),oe.read(this,e,!0,23,4)};o.prototype.readFloatBE=function(e,t){return e=e>>>0,t||E(e,4,this.length),oe.read(this,e,!1,23,4)};o.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||E(e,8,this.length),oe.read(this,e,!0,52,8)};o.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||E(e,8,this.length),oe.read(this,e,!1,52,8)};function k(n,e,t,r,a,i){if(!o.isBuffer(n))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>a||e<i)throw new RangeError('"value" argument is out of bounds');if(t+r>n.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(e,t,r,a){if(e=+e,t=t>>>0,r=r>>>0,!a){var i=Math.pow(2,8*r)-1;k(this,e,t,r,i,0)}var s=1,u=0;for(this[t]=e&255;++u<r&&(s*=256);)this[t+u]=e/s&255;return t+r};o.prototype.writeUintBE=o.prototype.writeUIntBE=function(e,t,r,a){if(e=+e,t=t>>>0,r=r>>>0,!a){var i=Math.pow(2,8*r)-1;k(this,e,t,r,i,0)}var s=r-1,u=1;for(this[t+s]=e&255;--s>=0&&(u*=256);)this[t+s]=e/u&255;return t+r};o.prototype.writeUint8=o.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,1,255,0),this[t]=e&255,t+1};o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};o.prototype.writeIntLE=function(e,t,r,a){if(e=+e,t=t>>>0,!a){var i=Math.pow(2,8*r-1);k(this,e,t,r,i-1,-i)}var s=0,u=1,p=0;for(this[t]=e&255;++s<r&&(u*=256);)e<0&&p===0&&this[t+s-1]!==0&&(p=1),this[t+s]=(e/u>>0)-p&255;return t+r};o.prototype.writeIntBE=function(e,t,r,a){if(e=+e,t=t>>>0,!a){var i=Math.pow(2,8*r-1);k(this,e,t,r,i-1,-i)}var s=r-1,u=1,p=0;for(this[t+s]=e&255;--s>=0&&(u*=256);)e<0&&p===0&&this[t+s+1]!==0&&(p=1),this[t+s]=(e/u>>0)-p&255;return t+r};o.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};o.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};o.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};o.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};o.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function Nt(n,e,t,r,a,i){if(t+r>n.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Ut(n,e,t,r,a){return e=+e,t=t>>>0,a||Nt(n,e,t,4,34028234663852886e22,-34028234663852886e22),oe.write(n,e,t,r,23,4),t+4}o.prototype.writeFloatLE=function(e,t,r){return Ut(this,e,t,!0,r)};o.prototype.writeFloatBE=function(e,t,r){return Ut(this,e,t,!1,r)};function Ot(n,e,t,r,a){return e=+e,t=t>>>0,a||Nt(n,e,t,8,17976931348623157e292,-17976931348623157e292),oe.write(n,e,t,r,52,8),t+8}o.prototype.writeDoubleLE=function(e,t,r){return Ot(this,e,t,!0,r)};o.prototype.writeDoubleBE=function(e,t,r){return Ot(this,e,t,!1,r)};o.prototype.copy=function(e,t,r,a){if(!o.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!a&&a!==0&&(a=this.length),t>=e.length&&(t=e.length),t||(t=0),a>0&&a<r&&(a=r),a===r||e.length===0||this.length===0)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("Index out of range");if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),e.length-t<a-r&&(a=e.length-t+r);var i=a-r;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(t,r,a):Uint8Array.prototype.set.call(e,this.subarray(r,a),t),i};o.prototype.fill=function(e,t,r,a){if(typeof e=="string"){if(typeof t=="string"?(a=t,t=0,r=this.length):typeof r=="string"&&(a=r,r=this.length),a!==void 0&&typeof a!="string")throw new TypeError("encoding must be a string");if(typeof a=="string"&&!o.isEncoding(a))throw new TypeError("Unknown encoding: "+a);if(e.length===1){var i=e.charCodeAt(0);(a==="utf8"&&i<128||a==="latin1")&&(e=i)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;t=t>>>0,r=r===void 0?this.length:r>>>0,e||(e=0);var s;if(typeof e=="number")for(s=t;s<r;++s)this[s]=e;else{var u=o.isBuffer(e)?e:o.from(e,a),p=u.length;if(p===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<r-t;++s)this[s+t]=u[s%p]}return this};var nr=/[^+/0-9A-Za-z-_]/g;function rr(n){if(n=n.split("=")[0],n=n.trim().replace(nr,""),n.length<2)return"";for(;n.length%4!==0;)n=n+"=";return n}function Je(n,e){e=e||1/0;for(var t,r=n.length,a=null,i=[],s=0;s<r;++s){if(t=n.charCodeAt(s),t>55295&&t<57344){if(!a){if(t>56319){(e-=3)>-1&&i.push(239,191,189);continue}else if(s+1===r){(e-=3)>-1&&i.push(239,191,189);continue}a=t;continue}if(t<56320){(e-=3)>-1&&i.push(239,191,189),a=t;continue}t=(a-55296<<10|t-56320)+65536}else a&&(e-=3)>-1&&i.push(239,191,189);if(a=null,t<128){if((e-=1)<0)break;i.push(t)}else if(t<2048){if((e-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((e-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((e-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function ar(n){for(var e=[],t=0;t<n.length;++t)e.push(n.charCodeAt(t)&255);return e}function ir(n,e){for(var t,r,a,i=[],s=0;s<n.length&&!((e-=2)<0);++s)t=n.charCodeAt(s),r=t>>8,a=t%256,i.push(a),i.push(r);return i}function Dt(n){return je.toByteArray(rr(n))}function Ie(n,e,t,r){for(var a=0;a<r&&!(a+t>=e.length||a>=n.length);++a)e[a+t]=n[a];return a}function H(n,e){return n instanceof e||n!=null&&n.constructor!=null&&n.constructor.name!=null&&n.constructor.name===e.name}function Qe(n){return n!==n}var sr=function(){for(var n="0123456789abcdef",e=new Array(256),t=0;t<16;++t)for(var r=t*16,a=0;a<16;++a)e[r+a]=n[t]+n[a];return e}()});var Lt=ie((Hr,Vt)=>{"use strict";m();var v=Vt.exports={},V,L;function tt(){throw new Error("setTimeout has not been defined")}function nt(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?V=setTimeout:V=tt}catch{V=tt}try{typeof clearTimeout=="function"?L=clearTimeout:L=nt}catch{L=nt}})();function Pt(n){if(V===setTimeout)return setTimeout(n,0);if((V===tt||!V)&&setTimeout)return V=setTimeout,setTimeout(n,0);try{return V(n,0)}catch{try{return V.call(null,n,0)}catch{return V.call(this,n,0)}}}function or(n){if(L===clearTimeout)return clearTimeout(n);if((L===nt||!L)&&clearTimeout)return L=clearTimeout,clearTimeout(n);try{return L(n)}catch{try{return L.call(null,n)}catch{return L.call(this,n)}}}var X=[],pe=!1,te,_e=-1;function ur(){!pe||!te||(pe=!1,te.length?X=te.concat(X):_e=-1,X.length&&Kt())}function Kt(){if(!pe){var n=Pt(ur);pe=!0;for(var e=X.length;e;){for(te=X,X=[];++_e<e;)te&&te[_e].run();_e=-1,e=X.length}te=null,pe=!1,or(n)}}v.nextTick=function(n){var e=new Array(arguments.length-1);if(arguments.length>1)for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];X.push(new Ht(n,e)),X.length===1&&!pe&&Pt(Kt)};function Ht(n,e){this.fun=n,this.array=e}Ht.prototype.run=function(){this.fun.apply(null,this.array)};v.title="browser";v.browser=!0;v.env={};v.argv=[];v.version="";v.versions={};function j(){}v.on=j;v.addListener=j;v.once=j;v.off=j;v.removeListener=j;v.removeAllListeners=j;v.emit=j;v.prependListener=j;v.prependOnceListener=j;v.listeners=function(n){return[]};v.binding=function(n){throw new Error("process.binding is not supported")};v.cwd=function(){return"/"};v.chdir=function(n){throw new Error("process.chdir is not supported")};v.umask=function(){return 0}});var T,w,pr,b,m=Mn(()=>{"use strict";T=se(et()),w=se(Lt()),pr=function(n){function e(){var r=this||self;return delete n.prototype.__magic__,r}if(typeof globalThis=="object")return globalThis;if(this)return e();n.defineProperty(n.prototype,"__magic__",{configurable:!0,get:e});var t=__magic__;return t}(Object),b=pr});var Gt=ie((Wr,Wt)=>{"use strict";m();function yr(n){if(n.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),t=0;t<e.length;t++)e[t]=255;for(var r=0;r<n.length;r++){var a=n.charAt(r),i=a.charCodeAt(0);if(e[i]!==255)throw new TypeError(a+" is ambiguous");e[i]=r}var s=n.length,u=n.charAt(0),p=Math.log(s)/Math.log(256),c=Math.log(256)/Math.log(s);function y(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var g=0,A=0,x=0,_=f.length;x!==_&&f[x]===0;)x++,g++;for(var B=(_-x)*c+1>>>0,S=new Uint8Array(B);x!==_;){for(var U=f[x],P=0,F=B-1;(U!==0||P<A)&&F!==-1;F--,P++)U+=256*S[F]>>>0,S[F]=U%s>>>0,U=U/s>>>0;if(U!==0)throw new Error("Non-zero carry");A=P,x++}for(var D=B-A;D!==B&&S[D]===0;)D++;for(var ve=u.repeat(g);D<B;++D)ve+=n.charAt(S[D]);return ve}function l(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;for(var g=0,A=0,x=0;f[g]===u;)A++,g++;for(var _=(f.length-g)*p+1>>>0,B=new Uint8Array(_);f[g];){var S=e[f.charCodeAt(g)];if(S===255)return;for(var U=0,P=_-1;(S!==0||U<x)&&P!==-1;P--,U++)S+=s*B[P]>>>0,B[P]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");x=U,g++}for(var F=_-x;F!==_&&B[F]===0;)F++;for(var D=new Uint8Array(A+(_-F)),ve=A;F!==_;)D[ve++]=B[F++];return D}function h(f){var g=l(f);if(g)return g;throw new Error("Non-base"+s+" character")}return{encode:y,decodeUnsafe:l,decode:h}}Wt.exports=yr});var Xt=ie((zr,zt)=>{"use strict";m();var lr=Gt(),cr="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";zt.exports=lr(cr)});var Br={};wt(Br,{Account:()=>Ae,BaseContractManager:()=>me,BaseKeyStore:()=>be,BaseOrderlyKeyPair:()=>Y,BaseSigner:()=>q,DefaultConfigStore:()=>Ve,EtherAdapter:()=>Ge,EventEmitter:()=>xn.default,LocalStorageStore:()=>ce,MockKeyStore:()=>de,SimpleDI:()=>An,generateAddOrderlyKeyMessage:()=>De,generateRegisterAccountMessage:()=>Oe,generateSettleMessage:()=>Pe,getDefaultSigner:()=>yn,getMockSigner:()=>pn,utils:()=>mt});module.exports=kn(Br);m();m();m();var ge=se(Xt());m();var C=2n**255n-19n,ye=2n**252n+27742317777372353535851937790883648493n,rt=0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51an,at=0x6666666666666666666666666666666666666666666666666666666666666658n,Se={a:-1n,d:37095705934669439343138083508754565189542113879843219016388785533085940283555n,p:C,n:ye,h:8,Gx:rt,Gy:at},M=(n="")=>{throw new Error(n)},Zt=n=>typeof n=="string",Re=(n,e)=>!(n instanceof Uint8Array)||typeof e=="number"&&e>0&&n.length!==e?M("Uint8Array expected"):n,le=n=>new Uint8Array(n),Be=(n,e)=>Re(Zt(n)?ot(n):le(n),e),d=(n,e=C)=>{let t=n%e;return t>=0n?t:e+t},jt=n=>n instanceof J?n:M("Point expected"),Yt,J=class n{constructor(e,t,r,a){this.ex=e,this.ey=t,this.ez=r,this.et=a}static fromAffine(e){return new n(e.x,e.y,1n,d(e.x*e.y))}static fromHex(e,t=!0){let{d:r}=Se;e=Be(e,32);let a=e.slice();a[31]=e[31]&-129;let i=en(a);i===0n||(t&&!(0n<i&&i<C)&&M("bad y coord 1"),!t&&!(0n<i&&i<2n**256n)&&M("bad y coord 2"));let s=d(i*i),u=d(s-1n),p=d(r*s+1n),{isValid:c,value:y}=mr(u,p);c||M("bad y coordinate 3");let l=(y&1n)===1n;return(e[31]&128)!==0!==l&&(y=d(-y)),new n(y,i,1n,d(y*i))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}equals(e){let{ex:t,ey:r,ez:a}=this,{ex:i,ey:s,ez:u}=jt(e),p=d(t*u),c=d(i*a),y=d(r*u),l=d(s*a);return p===c&&y===l}is0(){return this.equals(Me)}negate(){return new n(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){let{ex:e,ey:t,ez:r}=this,{a}=Se,i=d(e*e),s=d(t*t),u=d(2n*d(r*r)),p=d(a*i),c=e+t,y=d(d(c*c)-i-s),l=p+s,h=l-u,f=p-s,g=d(y*h),A=d(l*f),x=d(y*f),_=d(h*l);return new n(g,A,_,x)}add(e){let{ex:t,ey:r,ez:a,et:i}=this,{ex:s,ey:u,ez:p,et:c}=jt(e),{a:y,d:l}=Se,h=d(t*s),f=d(r*u),g=d(i*l*c),A=d(a*p),x=d((t+r)*(s+u)-h-f),_=d(A-g),B=d(A+g),S=d(f-y*h),U=d(x*_),P=d(B*S),F=d(x*S),D=d(_*B);return new n(U,P,D,F)}mul(e,t=!0){if(e===0n)return t===!0?M("cannot multiply by 0"):Me;if(typeof e=="bigint"&&0n<e&&e<ye||M("invalid scalar, must be < L"),!t&&this.is0()||e===1n)return this;if(this.equals(re))return Tr(e).p;let r=Me,a=re;for(let i=this;e>0n;i=i.double(),e>>=1n)e&1n?r=r.add(i):t&&(a=a.add(i));return r}multiply(e){return this.mul(e)}clearCofactor(){return this.mul(BigInt(Se.h),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let e=this.mul(ye/2n,!1).double();return ye%2n&&(e=e.add(this)),e.is0()}toAffine(){let{ex:e,ey:t,ez:r}=this;if(this.is0())return{x:0n,y:0n};let a=tn(r);return d(r*a)!==1n&&M("invalid inverse"),{x:d(e*a),y:d(t*a)}}toRawBytes(){let{x:e,y:t}=this.toAffine(),r=Qt(t);return r[31]|=e&1n?128:0,r}toHex(){return st(this.toRawBytes())}};J.BASE=new J(rt,at,1n,d(rt*at));J.ZERO=new J(0n,1n,1n,0n);var{BASE:re,ZERO:Me}=J,$t=(n,e)=>n.toString(16).padStart(e,"0"),st=n=>Array.from(n).map(e=>$t(e,2)).join(""),ot=n=>{let e=n.length;(!Zt(n)||e%2)&&M("hex invalid 1");let t=le(e/2);for(let r=0;r<t.length;r++){let a=r*2,i=n.slice(a,a+2),s=Number.parseInt(i,16);(Number.isNaN(s)||s<0)&&M("hex invalid 2"),t[r]=s}return t},Qt=n=>ot($t(n,32*2)).reverse(),en=n=>BigInt("0x"+st(le(Re(n)).reverse())),ke=(...n)=>{let e=le(n.reduce((r,a)=>r+Re(a).length,0)),t=0;return n.forEach(r=>{e.set(r,t),t+=r.length}),e},tn=(n,e=C)=>{(n===0n||e<=0n)&&M("no inverse n="+n+" mod="+e);let t=d(n,e),r=e,a=0n,i=1n,s=1n,u=0n;for(;t!==0n;){let p=r/t,c=r%t,y=a-s*p,l=i-u*p;r=t,t=c,a=s,i=u,s=y,u=l}return r===1n?d(a,e):M("no inverse")},W=(n,e)=>{let t=n;for(;e-- >0n;)t*=t,t%=C;return t},dr=n=>{let t=n*n%C*n%C,r=W(t,2n)*t%C,a=W(r,1n)*n%C,i=W(a,5n)*a%C,s=W(i,10n)*i%C,u=W(s,20n)*s%C,p=W(u,40n)*u%C,c=W(p,80n)*p%C,y=W(c,80n)*p%C,l=W(y,10n)*i%C;return{pow_p_5_8:W(l,2n)*n%C,b2:t}},qt=19681161376707505956807079304988542015446066515923890162744021073123829784752n,mr=(n,e)=>{let t=d(e*e*e),r=d(t*t*e),a=dr(n*r).pow_p_5_8,i=d(n*t*a),s=d(e*i*i),u=i,p=d(i*qt),c=s===n,y=s===d(-n),l=s===d(-n*qt);return c&&(i=u),(y||l)&&(i=p),(d(i)&1n)===1n&&(i=d(-i)),{isValid:c||y,value:i}},it=n=>d(en(n),ye),he,ut=(...n)=>yt.sha512Async(...n),nn=(...n)=>typeof he=="function"?he(...n):M("etc.sha512Sync not set"),rn=n=>{let e=n.slice(0,32);e[0]&=248,e[31]&=127,e[31]|=64;let t=n.slice(32,64),r=it(e),a=re.mul(r),i=a.toRawBytes();return{head:e,prefix:t,scalar:r,point:a,pointBytes:i}},pt=n=>ut(Be(n,32)).then(rn),fr=n=>rn(nn(Be(n,32))),an=n=>pt(n).then(e=>e.pointBytes);function hr(n,e){return n?ut(e.hashable).then(e.finish):e.finish(nn(e.hashable))}var gr=(n,e,t)=>{let{pointBytes:r,scalar:a}=n,i=it(e),s=re.mul(i).toRawBytes();return{hashable:ke(s,r,t),finish:c=>{let y=d(i+it(c)*a,ye);return Re(ke(s,Qt(y)),64)}}},sn=async(n,e)=>{let t=Be(n),r=await pt(e),a=await ut(r.prefix,t);return hr(!0,gr(r,a,t))};var Jt=()=>typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0,yt={bytesToHex:st,hexToBytes:ot,concatBytes:ke,mod:d,invert:tn,randomBytes:n=>{let e=Jt();return e||M("crypto.getRandomValues must be defined"),e.getRandomValues(le(n))},sha512Async:async(...n)=>{let e=Jt();e||M("crypto.subtle or etc.sha512Async must be defined");let t=ke(...n);return le(await e.subtle.digest("SHA-512",t.buffer))},sha512Sync:void 0};Object.defineProperties(yt,{sha512Sync:{configurable:!1,get(){return he},set(n){he||(he=n)}}});var on={getExtendedPublicKeyAsync:pt,getExtendedPublicKey:fr,randomPrivateKey:()=>yt.randomBytes(32),precompute(n=8,e=re){return e.multiply(3n),e}},ne=8,br=()=>{let n=[],e=256/ne+1,t=re,r=t;for(let a=0;a<e;a++){r=t,n.push(r);for(let i=1;i<2**(ne-1);i++)r=r.add(t),n.push(r);t=r.double()}return n},Tr=n=>{let e=Yt||(Yt=br()),t=(y,l)=>{let h=l.negate();return y?h:l},r=Me,a=re,i=1+256/ne,s=2**(ne-1),u=BigInt(2**ne-1),p=2**ne,c=BigInt(ne);for(let y=0;y<i;y++){let l=y*s,h=Number(n&u);n>>=c,h>s&&(h-=p,n+=1n);let f=l,g=l+Math.abs(h)-1,A=y%2!==0,x=h<0;h===0?a=a.add(t(A,e[f])):r=r.add(t(x,e[g]))}return{p:r,f:a}};var Y=class n{static generateKey(){let e,t;do e=on.randomPrivateKey(),t=(0,ge.encode)(e);while(t.length!==44);return new n(t)}constructor(e){this.secretKey=e;let t=(0,ge.decode)(e);this.privateKey=T.Buffer.from(t).toString("hex")}async sign(e){return await sn(e,this.privateKey)}async getPublicKey(){let e=await an(this.privateKey);return`ed25519:${(0,ge.encode)(e)}`}toString(){return this.privateKey}};var be=class{constructor(e="testnet"){this.networkId=e}get keyPrefix(){return`orderly_${this.networkId}_`}},ce=class extends be{getOrderlyKey(e){let t;if(e)t=this.getItem(e,"orderlyKey");else{let r=this.getAddress();if(!r)return null;t=this.getItem(r,"orderlyKey")}return t?new Y(t):null}getAccountId(e){return this.getItem(e,"accountId")}setAccountId(e,t){this.setItem(e,{accountId:t})}getAddress(){return localStorage.getItem(`${this.keyPrefix}address`)}setAddress(e){localStorage.setItem(`${this.keyPrefix}address`,e)}generateKey(){return Y.generateKey()}setKey(e,t){this.setItem(e,{orderlyKey:t.secretKey})}cleanAllKey(e){localStorage.removeItem(`${this.keyPrefix}${e}`),localStorage.removeItem(`${this.keyPrefix}address`)}cleanKey(e,t){let r=this.getItem(e);delete r[t],localStorage.setItem(`${this.keyPrefix}${e}`,JSON.stringify(r))}setItem(e,t){let r=`${this.keyPrefix}${e}`,a=localStorage.getItem(r);a?a=JSON.parse(a):a={},localStorage.setItem(r,JSON.stringify({...a,...t}))}getItem(e,t){let r=`${this.keyPrefix}${e}`,a=localStorage.getItem(r);return a?a=JSON.parse(a):a={},typeof t>"u"?a:a[t]}},de=class{constructor(e){this.secretKey=e}generateKey(){return new Y(this.secretKey)}getOrderlyKey(){return new Y(this.secretKey)}getAccountId(){return""}setAccountId(e){}getAddress(){return""}setAddress(e){}setKey(e,t){}cleanAllKey(){}cleanKey(e){}};m();var mt={};wt(mt,{base64url:()=>lt,calculateStringHash:()=>dt,formatByUnits:()=>Ne,getGlobalObject:()=>Ue,isHex:()=>we,isHexString:()=>Ar,parseAccountId:()=>ct,parseBrokerHash:()=>Te,parseTokenHash:()=>Fe,parseUnits:()=>un.parseUnits});m();var Z=require("ethers"),un=require("ethers"),lt=function(n){return n.replace(/\+/g,"-").replace(/\//g,"_")};function Te(n){return dt(n)}function ct(n,e){let t=Z.AbiCoder.defaultAbiCoder();return(0,Z.keccak256)(t.encode(["address","bytes32"],[n,Te(e)]))}function Fe(n){return dt(n)}function dt(n){return(0,Z.solidityPackedKeccak256)(["string"],[n])}function Ne(n,e="ether"){return(0,Z.formatUnits)(n,e)}function we(n){return/^[a-f0-9]+$/iu.test(n)}function Ar(n){return typeof n=="string"&&n.startsWith("0x")&&we(n)}var Ue=()=>{if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof b<"u")return b;throw new Error("cannot find the global object")};var ft=se(et()),q=class{constructor(e){this.keyStore=e}async sign(e){let t=Date.now().toString(),r=[t,e.method.toUpperCase(),e.url].join("");e.data&&Object.keys(e.data).length&&(r+=JSON.stringify(e.data));let{signature:a,publicKey:i}=await this.signText(r);return{"orderly-key":i,"orderly-timestamp":t,"orderly-signature":a}}async signText(e){let t=this.keyStore.getOrderlyKey();if(!t)throw new Error("orderlyKeyPair is not defined");let r=ft.Buffer.from(e),a=await t.sign(r),i=ft.Buffer.from(a).toString("base64");return{signature:lt(i),publicKey:await t.getPublicKey()}}};var xn=se(require("eventemitter3"));m();var ae=require("@orderly.network/types");var pn=n=>{let e=new de(n||"AFmQSju4FhDwG93cMdKogcnKx7SWmViDtDv5PVzfvRDF");return new q(e)},yn=()=>{if(typeof window>"u")throw new Error("the default signer only supports browsers.");let n=new ce("");return new q(n)};function vr(){return"0x8794E7260517B1766fc7b55cAfcd56e6bf08600e"}function ln(n,e){return{name:"Orderly",version:"1",chainId:n,verifyingContract:e?vr():"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"}}function Oe(n){let{chainId:e,registrationNonce:t,brokerId:r,timestamp:a=Date.now()}=n,i="Registration",s={brokerId:r,chainId:e,timestamp:a,registrationNonce:t},u={EIP712Domain:ae.definedTypes.EIP712Domain,[i]:ae.definedTypes[i]},p={domain:ln(e),message:s,primaryType:i,types:u};return[s,p]}function De(n){let{publicKey:e,chainId:t,primaryType:r,brokerId:a,expiration:i=365,timestamp:s=Date.now()}=n,u={brokerId:a,orderlyKey:e,scope:"read,trading",chainId:t,timestamp:s,expiration:s+1e3*60*60*24*i},p={EIP712Domain:ae.definedTypes.EIP712Domain,[r]:ae.definedTypes[r]},c={domain:ln(t),message:u,primaryType:r,types:p};return[u,c]}function Pe(n){let{chainId:e,settlePnlNonce:t,domain:r,brokerId:a}=n,i="SettlePnl",s=new Date().getTime(),u={EIP712Domain:ae.definedTypes.EIP712Domain,[i]:ae.definedTypes[i]},p={brokerId:a,chainId:e,timestamp:s,settleNonce:t};return[p,{domain:r,message:p,primaryType:i,types:u}]}m();m();var cn="0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63";var dn="0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f",mn="0x1826B75e2ef249173FC735149AE4B8e9ea10abff",fn="0xaf88d065e77c8cC2239327C5EDb3A432268e5831",hn="0x816f722424B49Cf1275cc86DA9840Fbd5a6167e9",gn="0x6F7a338F2aA472838dEFD3283eB360d4Dff5D203";var ht=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"authorizer",type:"address"},{indexed:!0,internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"AuthorizationCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"authorizer",type:"address"},{indexed:!0,internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"AuthorizationUsed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"_account",type:"address"}],name:"Blacklisted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newBlacklister",type:"address"}],name:"BlacklisterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"burner",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newMasterMinter",type:"address"}],name:"MasterMinterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"uint256",name:"minterAllowedAmount",type:"uint256"}],name:"MinterConfigured",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldMinter",type:"address"}],name:"MinterRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"previousOwner",type:"address"},{indexed:!1,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[],name:"Pause",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAddress",type:"address"}],name:"PauserChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newRescuer",type:"address"}],name:"RescuerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"_account",type:"address"}],name:"UnBlacklisted",type:"event"},{anonymous:!1,inputs:[],name:"Unpause",type:"event"},{inputs:[],name:"CANCEL_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"RECEIVE_WITH_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"TRANSFER_WITH_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"authorizer",type:"address"},{internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"authorizationState",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"blacklist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"blacklister",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"authorizer",type:"address"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"cancelAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"},{internalType:"uint256",name:"minterAllowedAmount",type:"uint256"}],name:"configureMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"currency",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"decrement",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"increment",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"tokenName",type:"string"},{internalType:"string",name:"tokenSymbol",type:"string"},{internalType:"string",name:"tokenCurrency",type:"string"},{internalType:"uint8",name:"tokenDecimals",type:"uint8"},{internalType:"address",name:"newMasterMinter",type:"address"},{internalType:"address",name:"newPauser",type:"address"},{internalType:"address",name:"newBlacklister",type:"address"},{internalType:"address",name:"newOwner",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"newName",type:"string"}],name:"initializeV2",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"lostAndFound",type:"address"}],name:"initializeV2_1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"isBlacklisted",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"masterMinter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_to",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"minterAllowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"validAfter",type:"uint256"},{internalType:"uint256",name:"validBefore",type:"uint256"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"receiveWithAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"removeMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenContract",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"rescueERC20",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rescuer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"validAfter",type:"uint256"},{internalType:"uint256",name:"validBefore",type:"uint256"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"transferWithAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"unBlacklist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newBlacklister",type:"address"}],name:"updateBlacklister",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newMasterMinter",type:"address"}],name:"updateMasterMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newPauser",type:"address"}],name:"updatePauser",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newRescuer",type:"address"}],name:"updateRescuer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"version",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}];var bn=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccountIdInvalid",type:"error"},{inputs:[],name:"AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"BalanceNotEnough",type:"error"},{inputs:[],name:"BrokerNotAllowed",type:"error"},{inputs:[],name:"EnumerableSetError",type:"error"},{inputs:[],name:"OnlyCrossChainManagerCanCall",type:"error"},{inputs:[],name:"TokenNotAllowed",type:"error"},{inputs:[],name:"ZeroDepositFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDeposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDepositTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"uint64",name:"withdrawNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"address",name:"receiver",type:"address"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"},{indexed:!1,internalType:"uint128",name:"fee",type:"uint128"}],name:"AccountWithdraw",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldAddress",type:"address"},{indexed:!1,internalType:"address",name:"newAddress",type:"address"}],name:"ChangeCrossChainManager",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"_tokenAddress",type:"address"}],name:"ChangeTokenAddressAndAllow",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedBroker",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedToken",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"allowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"address",name:"_tokenAddress",type:"address"}],name:"changeTokenAddressAndAllow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"crossChainManagerAddress",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"depositFeeEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"depositId",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"emergencyPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"emergencyUnpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_enabled",type:"bool"}],name:"enableDepositFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllAllowedBroker",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllAllowedToken",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"}],name:"getAllowedBroker",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"}],name:"getAllowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"getDepositFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"messageTransmitterContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint32",name:"dstDomain",type:"uint32"},{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"address",name:"dstVaultAddress",type:"address"}],internalType:"struct RebalanceTypes.RebalanceBurnCCData",name:"data",type:"tuple"}],name:"rebalanceBurn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"bytes",name:"messageBytes",type:"bytes"},{internalType:"bytes",name:"messageSignature",type:"bytes"}],internalType:"struct RebalanceTypes.RebalanceMintCCData",name:"data",type:"tuple"}],name:"rebalanceMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedBroker",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_crossChainManagerAddress",type:"address"}],name:"setCrossChainManager",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_rebalanceMessengerContract",type:"address"}],name:"setRebalanceMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_tokenMessengerContract",type:"address"}],name:"setTokenMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"tokenMessengerContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"},{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"receiver",type:"address"},{internalType:"uint64",name:"withdrawNonce",type:"uint64"}],internalType:"struct VaultTypes.VaultWithdraw",name:"data",type:"tuple"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}];var gt=[{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint8",name:"decimals_",type:"uint8"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"issue",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_to",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"_paused",type:"bool"}],name:"pauseTransfers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"}];var Tn=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccountIdInvalid",type:"error"},{inputs:[],name:"AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"BalanceNotEnough",type:"error"},{inputs:[],name:"BrokerNotAllowed",type:"error"},{inputs:[],name:"EnumerableSetError",type:"error"},{inputs:[],name:"OnlyCrossChainManagerCanCall",type:"error"},{inputs:[],name:"TokenNotAllowed",type:"error"},{inputs:[],name:"ZeroDepositFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDeposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDepositTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"uint64",name:"withdrawNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"address",name:"receiver",type:"address"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"},{indexed:!1,internalType:"uint128",name:"fee",type:"uint128"}],name:"AccountWithdraw",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldAddress",type:"address"},{indexed:!1,internalType:"address",name:"newAddress",type:"address"}],name:"ChangeCrossChainManager",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"_tokenAddress",type:"address"}],name:"ChangeTokenAddressAndAllow",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedBroker",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedToken",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"allowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"address",name:"_tokenAddress",type:"address"}],name:"changeTokenAddressAndAllow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"crossChainManagerAddress",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"depositFeeEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"depositId",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"emergencyPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"emergencyUnpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_enabled",type:"bool"}],name:"enableDepositFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllAllowedBroker",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllAllowedToken",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"}],name:"getAllowedBroker",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"}],name:"getAllowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"getDepositFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"messageTransmitterContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint32",name:"dstDomain",type:"uint32"},{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"address",name:"dstVaultAddress",type:"address"}],internalType:"struct RebalanceTypes.RebalanceBurnCCData",name:"data",type:"tuple"}],name:"rebalanceBurn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"bytes",name:"messageBytes",type:"bytes"},{internalType:"bytes",name:"messageSignature",type:"bytes"}],internalType:"struct RebalanceTypes.RebalanceMintCCData",name:"data",type:"tuple"}],name:"rebalanceMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedBroker",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_crossChainManagerAddress",type:"address"}],name:"setCrossChainManager",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_rebalanceMessengerContract",type:"address"}],name:"setRebalanceMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_tokenMessengerContract",type:"address"}],name:"setTokenMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"tokenMessengerContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"},{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"receiver",type:"address"},{internalType:"uint64",name:"withdrawNonce",type:"uint64"}],internalType:"struct VaultTypes.VaultWithdraw",name:"data",type:"tuple"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}];var me=class{constructor(e){this.configStore=e}getContractInfoByEnv(){return this.configStore.get("networkId")==="mainnet"?{usdcAddress:fn,usdcAbi:ht,vaultAddress:hn,vaultAbi:bn,verifyContractAddress:gn,erc20Abi:ht}:{usdcAddress:cn,usdcAbi:gt,vaultAddress:dn,vaultAbi:Tn,verifyContractAddress:mn,erc20Abi:gt}}};m();m();var bt=class{constructor(e=[],t={}){this.providers=e;this.services=t;this.injectProperties={}}register(...e){this.providers.push(...e),e.forEach(t=>{let r=t;r instanceof Function&&(r=new t),this.add(r)})}registerByName(e,t){let r=t;r instanceof Function&&(r=new t),this.addByName(e,r)}get(e){return this.services[e]}getAll(){return Object.assign({},this.services)}add(e){return this.addByName(e.constructor.name,e)}addByName(e,t){return this.services[e]=t,this.services[e.toLowerCase()]=t,this.injectIntoProperties(t,e),this.get(e)}inject(e,t,r){e&&r&&(e[t]=r)}injectIntoProperties(e,t=e.constructor.name){this.getInjectProperty(t.toLowerCase()).forEach(r=>{this.inject(r.target,r.propertyKey,e)})}getInjectProperty(e){return this.injectProperties[e]||(this.injectProperties[e]=[]),this.injectProperties[e]}},wn=bt;var G=class G{static getContainer(){return G.container||(Ue()[G.KEY]=G.container=new wn),G.container}static register(...e){this.getContainer().register(...e)}static registerByName(e,t){this.getContainer().registerByName(e,t)}static get(e){return this.getContainer().get(e)}static getOr(e,t){return this.getContainer().get(e)||G.registerByName(e,t),t}static getAll(){return this.getContainer().getAll()}constructor(){}};G.KEY="__ORDERLY_CONTAINER__",G.container=Ue()[G.KEY]||null;var Tt=G,An=Tt;m();var I=require("@orderly.network/types");var vn=se(require("eventemitter3"));m();var $=require("@orderly.network/types"),Ke=class{constructor(e,t,r){this.configStore=e;this.contractManger=t;this.account=r}async withdraw(e){if(!this.account.walletClient)throw new Error("walletClient is undefined");if(!this.account.stateValue.address)throw new Error("account address is rqeuired");let{chainId:t,token:r,allowCrossChainWithdraw:a}=e,{amount:i}=e;typeof i=="number"&&(i=i.toString());let s="/v1/withdraw_request",u=await this.getWithdrawalNonce(),p=this.account.getDomain(!0),[c,y]=this._generateWithdrawMessage({chainId:t,receiver:this.account.stateValue.address,token:r,amount:this.account.walletClient.parseUnits(i),nonce:u,domain:p}),h={signature:await this.account.signTypedData(y),message:c,userAddress:this.account.stateValue.address,verifyingContract:p.verifyingContract},f={method:"POST",url:s,data:h};a&&(h.message={...h.message,allowCrossChainWithdraw:a});let g=await this.account.signer.sign(f),A=await this._simpleFetch(s,{method:"POST",body:JSON.stringify(h),headers:{"Content-Type":"application/json","orderly-account-id":this.account.stateValue.accountId,...g}});if(!A.success)throw new $.ApiError(A.message,A.code);return A}_generateWithdrawMessage(e){let{chainId:t,receiver:r,token:a,amount:i,domain:s,nonce:u}=e,p="Withdraw",c=Date.now(),y={EIP712Domain:$.definedTypes.EIP712Domain,[p]:$.definedTypes[p]},l={brokerId:this.configStore.get("brokerId"),chainId:t,receiver:r,token:a,amount:i,timestamp:c,withdrawNonce:u};return[l,{domain:s,message:l,primaryType:p,types:y}]}async getWithdrawalNonce(){let e=Date.now().toString(),t="/v1/withdraw_nonce",r=[e,"GET",t].join(""),a=this.account.signer,{publicKey:i,signature:s}=await a.signText(r),u=await this._simpleFetch(t,{headers:{"orderly-account-id":this.account.stateValue.accountId,"orderly-key":i,"orderly-timestamp":e,"orderly-signature":s}});if(u.success)return u.data?.withdraw_nonce;throw new Error(u.message)}async getNativeBalance(e){let t=await this.account.walletClient?.getBalance(this.account.stateValue.address);return Ne(t,e?.decimals)}async getBalance(e,t){if(!this.account.walletClient)return"0";let r=this.contractManger.getContractInfoByEnv(),a=await this.account.walletClient?.call(e??r.usdcAddress,"balanceOf",[this.account.stateValue.address],{abi:r.usdcAbi});return Ne(a,t?.decimals)}async getBalanceByAddress(e){if(!this.account.walletClient)return"0";let t=this.contractManger.getContractInfoByEnv(),r=await this.account.walletClient?.call(e,"balanceOf",[this.account.stateValue.address],{abi:t.erc20Abi});return this.account.walletClient?.formatUnits(r)}async getAllowance(e,t){if(!this.account.walletClient)return"0";let r=this.contractManger.getContractInfoByEnv(),a=await this.account.walletClient?.call(e??r.usdcAddress,"allowance",[this.account.stateValue.address,t||r.vaultAddress],{abi:r.usdcAbi});return this.account.walletClient?.formatUnits(a)}async approve(e,t,r){if(!e)throw new Error("address is required");if(!this.account.walletClient)throw new Error("walletClient is undefined");let a=this.contractManger.getContractInfoByEnv(),i=typeof t<"u"&&t!==""?this.account.walletClient.parseUnits(t):$.MaxUint256.toString();return await this.account.walletClient?.call(e,"approve",[r||a.vaultAddress,i],{abi:a.usdcAbi})}async approveByAddress(e){let{amount:t,address:r}=e;return this._approve(r,t)}async _approve(e,t){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=typeof t<"u"&&t!==""?this.account.walletClient.parseUnits(t):$.MaxUint256.toString(),a=this.contractManger.getContractInfoByEnv();return await this.account.walletClient?.call(e,"approve",[a.vaultAddress,r],{abi:a.erc20Abi})}getDepositData(e){if(!this.account.walletClient)throw new Error("walletClient is undefined");let t=this.configStore.get("brokerId");if(!t)throw new Error("[Assets]:brokerId is required");return{accountId:this.account.accountIdHashStr,brokerHash:Te(t),tokenHash:Fe("USDC"),tokenAmount:this.account.walletClient?.parseUnits(e)}}async getDepositFee(e,t){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=this.getDepositData(e),a=this.contractManger.getContractInfoByEnv();return await this.account.walletClient.callOnChain(t,a.vaultAddress,"getDepositFee",[this.account.stateValue.address,r],{abi:a.vaultAbi})}async deposit(e,t=0n){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=this.configStore.get("brokerId");if(!r)throw new Error("[Assets]:brokerId is required");let a=this.contractManger.getContractInfoByEnv(),i={accountId:this.account.accountIdHashStr,brokerHash:Te(r),tokenHash:Fe("USDC"),tokenAmount:this.account.walletClient?.parseUnits(e)};return await this.account.walletClient?.sendTransaction(a.vaultAddress,"deposit",{from:this.account.stateValue.address,to:a.vaultAddress,data:[i],value:t},{abi:a.vaultAbi})}async _simpleFetch(e,t={}){let r=`${this.configStore.get("apiBaseUrl")}${e}`;return fetch(r,t).then(a=>a.json())}get usdcAddress(){return this.contractManger.getContractInfoByEnv().usdcAddress}};var He=require("@orderly.network/types"),Ae=class{constructor(e,t,r,a){this.configStore=e;this.keyStore=t;this.getWalletAdapter=r;this._ee=new vn.default;this._state={status:I.AccountStatusEnum.NotConnected,validating:!1,isNew:!1};a?.contracts?this.contractManger=a.contracts:this.contractManger=new me(e),this.assetsManager=new Ke(e,this.contractManger,this),this._bindEvents()}logout(){}async setAddress(e,t){if(!e)throw new He.SDKError("Address is required");if(!t?.chain?.id)throw new He.SDKError("Chain id is required");if(this.stateValue.address===e)return console.warn("address parameter is the same as the current address, if you want to change chain, please use `switchChain` method."),this.stateValue.status;t.chain.id=this.parseChainId(t?.chain?.id),this.keyStore.setAddress(e);let r={...this.stateValue,status:I.AccountStatusEnum.Connected,address:e,accountId:void 0,connectWallet:t?.wallet,validating:!0};return this._ee.emit("change:status",r),t&&(this.walletClient=this.getWalletAdapter({...t,address:e})),await this._checkAccount(e)}get stateValue(){return this._state}get accountId(){return this.stateValue.accountId}get accountIdHashStr(){if(!this.address)throw new Error("address is error");let e=this.configStore.get("brokerId");return ct(this.address,e)}get address(){return this.stateValue.address}get chainId(){return this.walletClient?.chainId}_bindEvents(){this._ee.addListener("change:status",e=>{this._state=e})}async _checkAccount(e){let t;try{let r=await this._checkAccountExist(e);if(r&&r.account_id)this.keyStore.setAccountId(e,r.account_id),t={...this.stateValue,status:I.AccountStatusEnum.SignedIn,accountId:r.account_id,userId:r.user_id},this._ee.emit("change:status",t);else return t={...this.stateValue,validating:!1,status:I.AccountStatusEnum.NotSignedIn},this._ee.emit("change:status",t),I.AccountStatusEnum.NotSignedIn;let a=this.keyStore.getOrderlyKey();if(!a)return this._ee.emit("change:status",{...this.stateValue,isNew:!1,validating:!1,status:I.AccountStatusEnum.DisabledTrading}),I.AccountStatusEnum.DisabledTrading;let i=await a.getPublicKey(),s=await this._checkOrderlyKeyState(r.account_id,i);if(s&&s.orderly_key&&s.key_status==="ACTIVE"){let u=Date.now(),p=s.expiration;return u>p?(this.keyStore.cleanKey(e,"orderlyKey"),I.AccountStatusEnum.DisabledTrading):(this._ee.emit("change:status",{...this.stateValue,validating:!1,status:I.AccountStatusEnum.EnableTrading}),I.AccountStatusEnum.EnableTrading)}return this.keyStore.cleanKey(e,"orderlyKey"),I.AccountStatusEnum.NotConnected}catch{}return I.AccountStatusEnum.NotSignedIn}async _checkAccountExist(e){let t=await this._getAccountInfo();return t.success?t.data:null}async createAccount(){if(!this.walletClient)return Promise.reject("walletClient is undefined");let e=await this._getRegisterationNonce(),t=this.stateValue.address;if(!t)throw new Error("address is undefined");let[r,a]=Oe({registrationNonce:e,chainId:this.walletClient.chainId,brokerId:this.configStore.get("brokerId")}),i=await this.signTypedData(a),s=await this._simpleFetch("/v1/register_account",{method:"POST",body:JSON.stringify({signature:i,message:r,userAddress:t}),headers:{"Content-Type":"application/json"}});if(s.success){this.keyStore.setAccountId(t,s.data.account_id);let u={...this.stateValue,status:I.AccountStatusEnum.DisabledTrading,accountId:s.data.account_id,userId:s.data.user_id,isNew:!0};return this._ee.emit("change:status",u),s}}async signTypedData(e){return this.walletClient?await this.walletClient.signTypedData(this.stateValue.address,JSON.stringify(e)):Promise.reject("walletClient is undefined")}async createOrderlyKey(e){if(this.stateValue.accountId===void 0)throw new Error("account id is undefined");if(!this.walletClient)throw new Error("walletClient is undefined");let t="AddOrderlyKey",r=this.keyStore.generateKey(),a=await r.getPublicKey(),i=await this._getTimestampFromServer(),[s,u]=De({publicKey:a,chainId:this.walletClient.chainId,primaryType:t,expiration:e,brokerId:this.configStore.get("brokerId"),timestamp:i}),p=this.stateValue.address;if(!p)throw new Error("address is undefined");let c=await this.signTypedData(u),y=await this._simpleFetch("/v1/orderly_key",{method:"POST",body:JSON.stringify({signature:c,message:s,userAddress:p}),headers:{"X-Account-Id":this.stateValue.accountId,"Content-Type":"application/json"}});if(y.success){this.keyStore.setKey(p,r);let l={...this.stateValue,status:I.AccountStatusEnum.EnableTrading};return this._ee.emit("change:status",l),y}else throw new Error(y.message)}async settle(){if(!this.walletClient)return Promise.reject("walletClient is undefined");let e=await this._getSettleNonce(),t=this.stateValue.address,r=this.getDomain(!0),a="/v1/settle_pnl",[i,s]=Pe({settlePnlNonce:e,chainId:this.walletClient.chainId,brokerId:this.configStore.get("brokerId"),domain:r}),p={signature:await this.signTypedData(s),message:i,userAddress:t,verifyingContract:r.verifyingContract},c={method:"POST",url:a,data:p},y=await this.signer.sign(c),l=await this._simpleFetch(a,{method:"POST",body:JSON.stringify(p),headers:{"Content-Type":"application/json","orderly-account-id":this.stateValue.accountId,...y}});return l.success?Promise.resolve(l):Promise.reject(l)}async disconnect(){let e={...this.stateValue,status:I.AccountStatusEnum.NotConnected,accountId:void 0,userId:void 0,address:void 0};this._ee.emit("change:status",e)}switchChainId(e){e=this.parseChainId(e),this.walletClient&&(this.walletClient.chainId=e)}parseChainId(e){return typeof e=="string"&&(we(e)||e.startsWith("0x")&&we(e.slice(2)))&&(e=parseInt(e,16)),e}async _checkOrderlyKeyState(e,t){let r=await this._simpleFetch(`/v1/get_orderly_key?account_id=${e}&orderly_key=${t}`);if(r.success)return r.data;throw new Error(r.message)}get signer(){return this._singer||(this._singer=new q(this.keyStore)),this._singer}get wallet(){return this.walletClient}async _getRegisterationNonce(){let e=await this._simpleFetch("/v1/registration_nonce",{headers:{"orderly-account-id":this.stateValue.accountId}});if(e.success)return e.data?.registration_nonce;throw new Error(e.message)}async _getTimestampFromServer(){let e=await this._getAccountInfo();if(e.success)return e.timestamp;throw new He.SDKError("get timestamp error")}async _getAccountInfo(){let e=this.configStore.get("brokerId");return await this._simpleFetch(`/v1/get_account?address=${this.address}&broker_id=${e}`)}async _getSettleNonce(){let e=Date.now().toString(),r=[e,"GET","/v1/settle_nonce"].join(""),a=this.signer,{publicKey:i,signature:s}=await a.signText(r),u=await this._simpleFetch("/v1/settle_nonce",{headers:{"orderly-account-id":this.stateValue.accountId,"orderly-key":i,"orderly-timestamp":e,"orderly-signature":s}});if(u.success)return u.data?.settle_nonce;throw new Error(u.message)}async _simpleFetch(e,t={}){let r=`${this.configStore.get("apiBaseUrl")}${e}`;return fetch(r,t).then(a=>a.json())}getDomain(e){if(!this.walletClient)throw new Error("walletClient is undefined");return{name:"Orderly",version:"1",chainId:this.walletClient.chainId,verifyingContract:e?this.contractManger.getContractInfoByEnv().verifyContractAddress:"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"}}get on(){return this._ee.on.bind(this._ee)}get once(){return this._ee.once.bind(this._ee)}get off(){return this._ee.off.bind(this._ee)}};Ae.instanceName="account";m();m();var _r={mainnet:{apiBaseUrl:"https://api-evm.orderly.org",publicWsUrl:"wss://ws-evm.orderly.org",privateWsUrl:"wss://ws-private-evm.orderly.org",operatorUrl:"https://operator-evm.orderly.org"},testnet:{apiBaseUrl:"https://testnet-api-evm.orderly.org",publicWsUrl:"wss://testnet-ws-evm.orderly.org",privateWsUrl:"wss://testnet-ws-private-evm.orderly.org",operatorUrl:"https://testnet-operator-evm.orderly.org"}},Ve=class{constructor(e){let t=e.env||"prod",r=e.networkId||"mainnet",a=_r[r];this.map=new Map([["brokerId",e.brokerId],["env",t],["apiBaseUrl",a.apiBaseUrl],["publicWsUrl",a.publicWsUrl],["privateWsUrl",a.privateWsUrl],["operatorUrl",a.operatorUrl],["networkId",r]])}get(e){return this.map.get(e)}getOr(e,t){return this.map.get(e)??t}set(e,t){this.map.set(e,t)}clear(){throw new Error("Method not implemented.")}};m();m();var N=require("ethers");m();var R={TRANSACTION_RAN_OUT_OF_GAS:"TRANSACTION_RAN_OUT_OF_GAS",TRANSACTION_UNDERPRICED:"TRANSACTION_UNDERPRICED",REJECTED_TRANSACTION:"REJECTED_TRANSACTION",CALL_REVERTED:"CALL_REVERTED",EXECUTION_REVERTED:"EXECUTION_REVERTED",NONCE_TOO_LOW:"NONCE_TOO_LOW",INSUFFICIENT_FUNDS_FOR_GAS:"INSUFFICIENT_FUNDS_FOR_GAS",MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS:"MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS",MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE:"MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE",UNKNOWN_ERROR:"UNKNOWN_ERROR"},Le={NONCE_EXPIRED:"NONCE_EXPIRED",UNPREDICTABLE_GAS_LIMIT:"UNPREDICTABLE_GAS_LIMIT",ACTION_REJECTED:"ACTION_REJECTED",CALL_EXCEPTION:"CALL_EXCEPTION"},fe={REJECTED_TRANSACTION:4001,REQUIRE_TRANSACTION:-32603,ERROR_WHILE_FORMATTING_OUTPUT_FROM_RPC:-32603,TRANSACTION_UNDERPRICED:-32e3};function Sr(n,e){var t;if(n!==fe.ERROR_WHILE_FORMATTING_OUTPUT_FROM_RPC)return;let r=(t=e.split("RPC '")[1])==null?void 0:t.slice(0,-1);if(r!==void 0)try{let a=JSON.parse(r);if(a.value===void 0||a.value.data===void 0)return;if(a.value.data.code===fe.TRANSACTION_UNDERPRICED)return{errorCode:R.TRANSACTION_UNDERPRICED,context:void 0}}catch{return}}function Mr(n){let e=n.code,t=n.message;if(e!==void 0){if(t!==void 0){let r=Sr(e,t);if(r!==void 0)return r}if(e===fe.REJECTED_TRANSACTION)return{errorCode:R.REJECTED_TRANSACTION,context:t};if(e===fe.REQUIRE_TRANSACTION&&t!==void 0&&t.includes("execution reverted: "))return{errorCode:R.EXECUTION_REVERTED,context:t.slice(20)}}}function kr(n){if(n.code===Le.UNPREDICTABLE_GAS_LIMIT){if(n.error!==void 0&&n.error.code===fe.REQUIRE_TRANSACTION&&n.error.data!==void 0&&n.error.data.message!==void 0){let e=n.error.data.message;if(e.includes("execution reverted: "))return{errorCode:R.EXECUTION_REVERTED,context:e.slice(20)}}if(n.error!==void 0&&n.error.error!==void 0&&n.error.error.error!==void 0&&n.error.error.error.code===fe.TRANSACTION_UNDERPRICED&&n.error.error.body!==void 0)try{let e=JSON.parse(n.error.error.body);if(e.error!==void 0&&e.error.message!==void 0){if(e.error.message.includes("gas required exceeds allowance (0)"))return{errorCode:R.INSUFFICIENT_FUNDS_FOR_GAS,context:void 0};if(e.error.message.includes("max priority fee per gas higher than max fee per gas"))return{errorCode:R.MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS,context:void 0};if(e.error.message.includes("max fee per gas less than block base fee"))return{errorCode:R.MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE,context:void 0}}}catch{return}}}function Rr(n){if(n.code===Le.NONCE_EXPIRED&&n.transaction!==void 0)return{errorCode:R.NONCE_TOO_LOW,context:n.transaction.nonce.toString()};if(n.code===Le.ACTION_REJECTED&&n.action==="sendTransaction")return{errorCode:R.REJECTED_TRANSACTION,context:n.message};if(n.code===Le.CALL_EXCEPTION&&n.reason!==void 0)return{errorCode:R.CALL_REVERTED,context:n.reason};let e=kr(n);if(e!==void 0)return e}function We(n){let e=n,t=n.error,r=Rr(e);if(r!==void 0)return r;if(t!==void 0){let a=Mr(t);if(a!==void 0)return a}if(e.transaction!==void 0&&e.receipt!==void 0){let a=e.transaction.gasLimit;if(e.receipt.gasUsed.gte(a))return{errorCode:R.TRANSACTION_RAN_OUT_OF_GAS,context:e.transaction.gasLimit.toString()}}return n.error!==void 0&&n.error.message!==void 0?{errorCode:R.UNKNOWN_ERROR,context:n.error.message}:e.code!==void 0?{errorCode:R.UNKNOWN_ERROR,context:e.code.toString()}:{errorCode:R.UNKNOWN_ERROR,context:void 0}}var Ge=class{constructor(e){this._chainId=e.chain.id,this.provider=new N.BrowserProvider(e.provider,"any"),this._address=e.address}parseUnits(e){return N.ethers.parseUnits(e,6).toString()}formatUnits(e){return N.ethers.formatUnits(e,6)}getBalance(e){return this.provider.getBalance(e).then(t=>t,t=>{})}deposit(e,t,r){throw new Error("Method not implemented.")}async call(e,t,r,a){let i=await this.provider?.getSigner();return new N.ethers.Contract(e,a.abi,i)[t].apply(null,r).catch(u=>{throw We(u)})}async callOnChain(e,t,r,a,i){let s=new N.ethers.JsonRpcProvider(e.public_rpc_url);return new N.ethers.Contract(t,i.abi,s)[r].apply(null,a).catch(p=>{throw We(p)})}get chainId(){return this._chainId}set chainId(e){this._chainId=e}get addresses(){return this._address}async send(e,t){return await this.provider?.send(e,t)}async sendTransaction(e,t,r,a){let i=await this.provider?.getSigner();if(!i)throw new Error("singer is not exist");let u=new N.ethers.Contract(e,a.abi,this.provider).interface.encodeFunctionData(t,r.data),p={from:r.from,to:r.to,data:u,value:r.value};try{return await i.sendTransaction(p)}catch(c){throw We(c)}}async getTransactionRecipect(e){await this.provider.getTransactionReceipt(e)}async pollTransactionReceiptWithBackoff(e,t=1e3,r=6e3,a=30){let i=t,s=0;for(;s<a;){try{let u=await this.provider.getTransactionReceipt(e);if(u)return u}catch{}await new Promise(u=>setTimeout(u,i)),i=Math.min(i*2,r),s++}throw new Error("Transaction did not complete after maximum retries.")}async estimateGas(e){let t=await this.provider.estimateGas(e);return(0,N.toNumber)(t)}async signTypedData(e,t){return await this.provider?.send("eth_signTypedData_v4",[e,t])}async verify(e,t){let{domain:r,types:a,message:i}=e,s=N.ethers.verifyTypedData(r,a,i,t)}on(e,t){this.provider?.on(e,t)}off(e,t){this.provider?.off(e,t)}getContract(e,t){return new N.ethers.Contract(e,t,this.provider)}};0&&(module.exports={Account,BaseContractManager,BaseKeyStore,BaseOrderlyKeyPair,BaseSigner,DefaultConfigStore,EtherAdapter,EventEmitter,LocalStorageStore,MockKeyStore,SimpleDI,generateAddOrderlyKeyMessage,generateRegisterAccountMessage,generateSettleMessage,getDefaultSigner,getMockSigner,utils});
1
+ "use strict";var Cn=Object.create;var Ce=Object.defineProperty;var In=Object.getOwnPropertyDescriptor;var _n=Object.getOwnPropertyNames;var Sn=Object.getPrototypeOf,Mn=Object.prototype.hasOwnProperty;var kn=(n,e)=>()=>(n&&(e=n(n=0)),e);var ie=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),At=(n,e)=>{for(var t in e)Ce(n,t,{get:e[t],enumerable:!0})},vt=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of _n(e))!Mn.call(n,a)&&a!==t&&Ce(n,a,{get:()=>e[a],enumerable:!(r=In(e,a))||r.enumerable});return n};var se=(n,e,t)=>(t=n!=null?Cn(Sn(n)):{},vt(e||!n||!n.__esModule?Ce(t,"default",{value:n,enumerable:!0}):t,n)),Rn=n=>vt(Ce({},"__esModule",{value:!0}),n);var Ct=ie(Ie=>{"use strict";m();Ie.byteLength=Fn;Ie.toByteArray=Un;Ie.fromByteArray=Pn;var K=[],O=[],Bn=typeof Uint8Array<"u"?Uint8Array:Array,Xe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Q=0,xt=Xe.length;Q<xt;++Q)K[Q]=Xe[Q],O[Xe.charCodeAt(Q)]=Q;var Q,xt;O["-".charCodeAt(0)]=62;O["_".charCodeAt(0)]=63;function Et(n){var e=n.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=n.indexOf("=");t===-1&&(t=e);var r=t===e?0:4-t%4;return[t,r]}function Fn(n){var e=Et(n),t=e[0],r=e[1];return(t+r)*3/4-r}function Nn(n,e,t){return(e+t)*3/4-t}function Un(n){var e,t=Et(n),r=t[0],a=t[1],i=new Bn(Nn(n,r,a)),s=0,u=a>0?r-4:r,p;for(p=0;p<u;p+=4)e=O[n.charCodeAt(p)]<<18|O[n.charCodeAt(p+1)]<<12|O[n.charCodeAt(p+2)]<<6|O[n.charCodeAt(p+3)],i[s++]=e>>16&255,i[s++]=e>>8&255,i[s++]=e&255;return a===2&&(e=O[n.charCodeAt(p)]<<2|O[n.charCodeAt(p+1)]>>4,i[s++]=e&255),a===1&&(e=O[n.charCodeAt(p)]<<10|O[n.charCodeAt(p+1)]<<4|O[n.charCodeAt(p+2)]>>2,i[s++]=e>>8&255,i[s++]=e&255),i}function On(n){return K[n>>18&63]+K[n>>12&63]+K[n>>6&63]+K[n&63]}function Dn(n,e,t){for(var r,a=[],i=e;i<t;i+=3)r=(n[i]<<16&16711680)+(n[i+1]<<8&65280)+(n[i+2]&255),a.push(On(r));return a.join("")}function Pn(n){for(var e,t=n.length,r=t%3,a=[],i=16383,s=0,u=t-r;s<u;s+=i)a.push(Dn(n,s,s+i>u?u:s+i));return r===1?(e=n[t-1],a.push(K[e>>2]+K[e<<4&63]+"==")):r===2&&(e=(n[t-2]<<8)+n[t-1],a.push(K[e>>10]+K[e>>4&63]+K[e<<2&63]+"=")),a.join("")}});var It=ie(je=>{"use strict";m();je.read=function(n,e,t,r,a){var i,s,u=a*8-r-1,p=(1<<u)-1,c=p>>1,y=-7,l=t?a-1:0,h=t?-1:1,f=n[e+l];for(l+=h,i=f&(1<<-y)-1,f>>=-y,y+=u;y>0;i=i*256+n[e+l],l+=h,y-=8);for(s=i&(1<<-y)-1,i>>=-y,y+=r;y>0;s=s*256+n[e+l],l+=h,y-=8);if(i===0)i=1-c;else{if(i===p)return s?NaN:(f?-1:1)*(1/0);s=s+Math.pow(2,r),i=i-c}return(f?-1:1)*s*Math.pow(2,i-r)};je.write=function(n,e,t,r,a,i){var s,u,p,c=i*8-a-1,y=(1<<c)-1,l=y>>1,h=a===23?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:i-1,g=r?1:-1,A=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(u=isNaN(e)?1:0,s=y):(s=Math.floor(Math.log(e)/Math.LN2),e*(p=Math.pow(2,-s))<1&&(s--,p*=2),s+l>=1?e+=h/p:e+=h*Math.pow(2,1-l),e*p>=2&&(s++,p/=2),s+l>=y?(u=0,s=y):s+l>=1?(u=(e*p-1)*Math.pow(2,a),s=s+l):(u=e*Math.pow(2,l-1)*Math.pow(2,a),s=0));a>=8;n[t+f]=u&255,f+=g,u/=256,a-=8);for(s=s<<a|u,c+=a;c>0;n[t+f]=s&255,f+=g,s/=256,c-=8);n[t+f-g]|=A*128}});var tt=ie(ue=>{"use strict";m();var Ye=Ct(),oe=It(),_t=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ue.Buffer=o;ue.SlowBuffer=Gn;ue.INSPECT_MAX_BYTES=50;var _e=2147483647;ue.kMaxLength=_e;o.TYPED_ARRAY_SUPPORT=Kn();!o.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 Kn(){try{var n=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(n,e),n.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}});Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function z(n){if(n>_e)throw new RangeError('The value "'+n+'" is invalid for option "size"');var e=new Uint8Array(n);return Object.setPrototypeOf(e,o.prototype),e}function o(n,e,t){if(typeof n=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return $e(n)}return kt(n,e,t)}o.poolSize=8192;function kt(n,e,t){if(typeof n=="string")return Vn(n,e);if(ArrayBuffer.isView(n))return Ln(n);if(n==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof n);if(H(n,ArrayBuffer)||n&&H(n.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(H(n,SharedArrayBuffer)||n&&H(n.buffer,SharedArrayBuffer)))return Je(n,e,t);if(typeof n=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var r=n.valueOf&&n.valueOf();if(r!=null&&r!==n)return o.from(r,e,t);var a=Wn(n);if(a)return a;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof n[Symbol.toPrimitive]=="function")return o.from(n[Symbol.toPrimitive]("string"),e,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof n)}o.from=function(n,e,t){return kt(n,e,t)};Object.setPrototypeOf(o.prototype,Uint8Array.prototype);Object.setPrototypeOf(o,Uint8Array);function Rt(n){if(typeof n!="number")throw new TypeError('"size" argument must be of type number');if(n<0)throw new RangeError('The value "'+n+'" is invalid for option "size"')}function Hn(n,e,t){return Rt(n),n<=0?z(n):e!==void 0?typeof t=="string"?z(n).fill(e,t):z(n).fill(e):z(n)}o.alloc=function(n,e,t){return Hn(n,e,t)};function $e(n){return Rt(n),z(n<0?0:Qe(n)|0)}o.allocUnsafe=function(n){return $e(n)};o.allocUnsafeSlow=function(n){return $e(n)};function Vn(n,e){if((typeof e!="string"||e==="")&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var t=Bt(n,e)|0,r=z(t),a=r.write(n,e);return a!==t&&(r=r.slice(0,a)),r}function qe(n){for(var e=n.length<0?0:Qe(n.length)|0,t=z(e),r=0;r<e;r+=1)t[r]=n[r]&255;return t}function Ln(n){if(H(n,Uint8Array)){var e=new Uint8Array(n);return Je(e.buffer,e.byteOffset,e.byteLength)}return qe(n)}function Je(n,e,t){if(e<0||n.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(n.byteLength<e+(t||0))throw new RangeError('"length" is outside of buffer bounds');var r;return e===void 0&&t===void 0?r=new Uint8Array(n):t===void 0?r=new Uint8Array(n,e):r=new Uint8Array(n,e,t),Object.setPrototypeOf(r,o.prototype),r}function Wn(n){if(o.isBuffer(n)){var e=Qe(n.length)|0,t=z(e);return t.length===0||n.copy(t,0,0,e),t}if(n.length!==void 0)return typeof n.length!="number"||et(n.length)?z(0):qe(n);if(n.type==="Buffer"&&Array.isArray(n.data))return qe(n.data)}function Qe(n){if(n>=_e)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+_e.toString(16)+" bytes");return n|0}function Gn(n){return+n!=n&&(n=0),o.alloc(+n)}o.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==o.prototype};o.compare=function(e,t){if(H(e,Uint8Array)&&(e=o.from(e,e.offset,e.byteLength)),H(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(e)||!o.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var r=e.length,a=t.length,i=0,s=Math.min(r,a);i<s;++i)if(e[i]!==t[i]){r=e[i],a=t[i];break}return r<a?-1:a<r?1:0};o.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};o.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return o.alloc(0);var r;if(t===void 0)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var a=o.allocUnsafe(t),i=0;for(r=0;r<e.length;++r){var s=e[r];if(H(s,Uint8Array))i+s.length>a.length?o.from(s).copy(a,i):Uint8Array.prototype.set.call(a,s,i);else if(o.isBuffer(s))s.copy(a,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=s.length}return a};function Bt(n,e){if(o.isBuffer(n))return n.length;if(ArrayBuffer.isView(n)||H(n,ArrayBuffer))return n.byteLength;if(typeof n!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof n);var t=n.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&t===0)return 0;for(var a=!1;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return Ze(n).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return Pt(n).length;default:if(a)return r?-1:Ze(n).length;e=(""+e).toLowerCase(),a=!0}}o.byteLength=Bt;function zn(n,e,t){var r=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,e>>>=0,t<=e))return"";for(n||(n="utf8");;)switch(n){case"hex":return tr(this,e,t);case"utf8":case"utf-8":return Nt(this,e,t);case"ascii":return Qn(this,e,t);case"latin1":case"binary":return er(this,e,t);case"base64":return Zn(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return nr(this,e,t);default:if(r)throw new TypeError("Unknown encoding: "+n);n=(n+"").toLowerCase(),r=!0}}o.prototype._isBuffer=!0;function ee(n,e,t){var r=n[e];n[e]=n[t],n[t]=r}o.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)ee(this,t,t+1);return this};o.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)ee(this,t,t+3),ee(this,t+1,t+2);return this};o.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)ee(this,t,t+7),ee(this,t+1,t+6),ee(this,t+2,t+5),ee(this,t+3,t+4);return this};o.prototype.toString=function(){var e=this.length;return e===0?"":arguments.length===0?Nt(this,0,e):zn.apply(this,arguments)};o.prototype.toLocaleString=o.prototype.toString;o.prototype.equals=function(e){if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:o.compare(this,e)===0};o.prototype.inspect=function(){var e="",t=ue.INSPECT_MAX_BYTES;return e=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(e+=" ... "),"<Buffer "+e+">"};_t&&(o.prototype[_t]=o.prototype.inspect);o.prototype.compare=function(e,t,r,a,i){if(H(e,Uint8Array)&&(e=o.from(e,e.offset,e.byteLength)),!o.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),a===void 0&&(a=0),i===void 0&&(i=this.length),t<0||r>e.length||a<0||i>this.length)throw new RangeError("out of range index");if(a>=i&&t>=r)return 0;if(a>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,a>>>=0,i>>>=0,this===e)return 0;for(var s=i-a,u=r-t,p=Math.min(s,u),c=this.slice(a,i),y=e.slice(t,r),l=0;l<p;++l)if(c[l]!==y[l]){s=c[l],u=y[l];break}return s<u?-1:u<s?1:0};function Ft(n,e,t,r,a){if(n.length===0)return-1;if(typeof t=="string"?(r=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,et(t)&&(t=a?0:n.length-1),t<0&&(t=n.length+t),t>=n.length){if(a)return-1;t=n.length-1}else if(t<0)if(a)t=0;else return-1;if(typeof e=="string"&&(e=o.from(e,r)),o.isBuffer(e))return e.length===0?-1:St(n,e,t,r,a);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?a?Uint8Array.prototype.indexOf.call(n,e,t):Uint8Array.prototype.lastIndexOf.call(n,e,t):St(n,[e],t,r,a);throw new TypeError("val must be string, number or Buffer")}function St(n,e,t,r,a){var i=1,s=n.length,u=e.length;if(r!==void 0&&(r=String(r).toLowerCase(),r==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(n.length<2||e.length<2)return-1;i=2,s/=2,u/=2,t/=2}function p(f,g){return i===1?f[g]:f.readUInt16BE(g*i)}var c;if(a){var y=-1;for(c=t;c<s;c++)if(p(n,c)===p(e,y===-1?0:c-y)){if(y===-1&&(y=c),c-y+1===u)return y*i}else y!==-1&&(c-=c-y),y=-1}else for(t+u>s&&(t=s-u),c=t;c>=0;c--){for(var l=!0,h=0;h<u;h++)if(p(n,c+h)!==p(e,h)){l=!1;break}if(l)return c}return-1}o.prototype.includes=function(e,t,r){return this.indexOf(e,t,r)!==-1};o.prototype.indexOf=function(e,t,r){return Ft(this,e,t,r,!0)};o.prototype.lastIndexOf=function(e,t,r){return Ft(this,e,t,r,!1)};function Xn(n,e,t,r){t=Number(t)||0;var a=n.length-t;r?(r=Number(r),r>a&&(r=a)):r=a;var i=e.length;r>i/2&&(r=i/2);for(var s=0;s<r;++s){var u=parseInt(e.substr(s*2,2),16);if(et(u))return s;n[t+s]=u}return s}function jn(n,e,t,r){return Se(Ze(e,n.length-t),n,t,r)}function Yn(n,e,t,r){return Se(ir(e),n,t,r)}function qn(n,e,t,r){return Se(Pt(e),n,t,r)}function Jn(n,e,t,r){return Se(sr(e,n.length-t),n,t,r)}o.prototype.write=function(e,t,r,a){if(t===void 0)a="utf8",r=this.length,t=0;else if(r===void 0&&typeof t=="string")a=t,r=this.length,t=0;else if(isFinite(t))t=t>>>0,isFinite(r)?(r=r>>>0,a===void 0&&(a="utf8")):(a=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");a||(a="utf8");for(var s=!1;;)switch(a){case"hex":return Xn(this,e,t,r);case"utf8":case"utf-8":return jn(this,e,t,r);case"ascii":case"latin1":case"binary":return Yn(this,e,t,r);case"base64":return qn(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Jn(this,e,t,r);default:if(s)throw new TypeError("Unknown encoding: "+a);a=(""+a).toLowerCase(),s=!0}};o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Zn(n,e,t){return e===0&&t===n.length?Ye.fromByteArray(n):Ye.fromByteArray(n.slice(e,t))}function Nt(n,e,t){t=Math.min(n.length,t);for(var r=[],a=e;a<t;){var i=n[a],s=null,u=i>239?4:i>223?3:i>191?2:1;if(a+u<=t){var p,c,y,l;switch(u){case 1:i<128&&(s=i);break;case 2:p=n[a+1],(p&192)===128&&(l=(i&31)<<6|p&63,l>127&&(s=l));break;case 3:p=n[a+1],c=n[a+2],(p&192)===128&&(c&192)===128&&(l=(i&15)<<12|(p&63)<<6|c&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:p=n[a+1],c=n[a+2],y=n[a+3],(p&192)===128&&(c&192)===128&&(y&192)===128&&(l=(i&15)<<18|(p&63)<<12|(c&63)<<6|y&63,l>65535&&l<1114112&&(s=l))}}s===null?(s=65533,u=1):s>65535&&(s-=65536,r.push(s>>>10&1023|55296),s=56320|s&1023),r.push(s),a+=u}return $n(r)}var Mt=4096;function $n(n){var e=n.length;if(e<=Mt)return String.fromCharCode.apply(String,n);for(var t="",r=0;r<e;)t+=String.fromCharCode.apply(String,n.slice(r,r+=Mt));return t}function Qn(n,e,t){var r="";t=Math.min(n.length,t);for(var a=e;a<t;++a)r+=String.fromCharCode(n[a]&127);return r}function er(n,e,t){var r="";t=Math.min(n.length,t);for(var a=e;a<t;++a)r+=String.fromCharCode(n[a]);return r}function tr(n,e,t){var r=n.length;(!e||e<0)&&(e=0),(!t||t<0||t>r)&&(t=r);for(var a="",i=e;i<t;++i)a+=or[n[i]];return a}function nr(n,e,t){for(var r=n.slice(e,t),a="",i=0;i<r.length-1;i+=2)a+=String.fromCharCode(r[i]+r[i+1]*256);return a}o.prototype.slice=function(e,t){var r=this.length;e=~~e,t=t===void 0?r:~~t,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),t<e&&(t=e);var a=this.subarray(e,t);return Object.setPrototypeOf(a,o.prototype),a};function E(n,e,t){if(n%1!==0||n<0)throw new RangeError("offset is not uint");if(n+e>t)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e],i=1,s=0;++s<t&&(i*=256);)a+=this[e+s]*i;return a};o.prototype.readUintBE=o.prototype.readUIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e+--t],i=1;t>0&&(i*=256);)a+=this[e+--t]*i;return a};o.prototype.readUint8=o.prototype.readUInt8=function(e,t){return e=e>>>0,t||E(e,1,this.length),this[e]};o.prototype.readUint16LE=o.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||E(e,2,this.length),this[e]|this[e+1]<<8};o.prototype.readUint16BE=o.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||E(e,2,this.length),this[e]<<8|this[e+1]};o.prototype.readUint32LE=o.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||E(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};o.prototype.readUint32BE=o.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};o.prototype.readIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=this[e],i=1,s=0;++s<t&&(i*=256);)a+=this[e+s]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a};o.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||E(e,t,this.length);for(var a=t,i=1,s=this[e+--a];a>0&&(i*=256);)s+=this[e+--a]*i;return i*=128,s>=i&&(s-=Math.pow(2,8*t)),s};o.prototype.readInt8=function(e,t){return e=e>>>0,t||E(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};o.prototype.readInt16LE=function(e,t){e=e>>>0,t||E(e,2,this.length);var r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};o.prototype.readInt16BE=function(e,t){e=e>>>0,t||E(e,2,this.length);var r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};o.prototype.readInt32LE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};o.prototype.readInt32BE=function(e,t){return e=e>>>0,t||E(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};o.prototype.readFloatLE=function(e,t){return e=e>>>0,t||E(e,4,this.length),oe.read(this,e,!0,23,4)};o.prototype.readFloatBE=function(e,t){return e=e>>>0,t||E(e,4,this.length),oe.read(this,e,!1,23,4)};o.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||E(e,8,this.length),oe.read(this,e,!0,52,8)};o.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||E(e,8,this.length),oe.read(this,e,!1,52,8)};function k(n,e,t,r,a,i){if(!o.isBuffer(n))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>a||e<i)throw new RangeError('"value" argument is out of bounds');if(t+r>n.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(e,t,r,a){if(e=+e,t=t>>>0,r=r>>>0,!a){var i=Math.pow(2,8*r)-1;k(this,e,t,r,i,0)}var s=1,u=0;for(this[t]=e&255;++u<r&&(s*=256);)this[t+u]=e/s&255;return t+r};o.prototype.writeUintBE=o.prototype.writeUIntBE=function(e,t,r,a){if(e=+e,t=t>>>0,r=r>>>0,!a){var i=Math.pow(2,8*r)-1;k(this,e,t,r,i,0)}var s=r-1,u=1;for(this[t+s]=e&255;--s>=0&&(u*=256);)this[t+s]=e/u&255;return t+r};o.prototype.writeUint8=o.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,1,255,0),this[t]=e&255,t+1};o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};o.prototype.writeIntLE=function(e,t,r,a){if(e=+e,t=t>>>0,!a){var i=Math.pow(2,8*r-1);k(this,e,t,r,i-1,-i)}var s=0,u=1,p=0;for(this[t]=e&255;++s<r&&(u*=256);)e<0&&p===0&&this[t+s-1]!==0&&(p=1),this[t+s]=(e/u>>0)-p&255;return t+r};o.prototype.writeIntBE=function(e,t,r,a){if(e=+e,t=t>>>0,!a){var i=Math.pow(2,8*r-1);k(this,e,t,r,i-1,-i)}var s=r-1,u=1,p=0;for(this[t+s]=e&255;--s>=0&&(u*=256);)e<0&&p===0&&this[t+s+1]!==0&&(p=1),this[t+s]=(e/u>>0)-p&255;return t+r};o.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};o.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};o.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};o.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};o.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||k(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function Ut(n,e,t,r,a,i){if(t+r>n.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Ot(n,e,t,r,a){return e=+e,t=t>>>0,a||Ut(n,e,t,4,34028234663852886e22,-34028234663852886e22),oe.write(n,e,t,r,23,4),t+4}o.prototype.writeFloatLE=function(e,t,r){return Ot(this,e,t,!0,r)};o.prototype.writeFloatBE=function(e,t,r){return Ot(this,e,t,!1,r)};function Dt(n,e,t,r,a){return e=+e,t=t>>>0,a||Ut(n,e,t,8,17976931348623157e292,-17976931348623157e292),oe.write(n,e,t,r,52,8),t+8}o.prototype.writeDoubleLE=function(e,t,r){return Dt(this,e,t,!0,r)};o.prototype.writeDoubleBE=function(e,t,r){return Dt(this,e,t,!1,r)};o.prototype.copy=function(e,t,r,a){if(!o.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!a&&a!==0&&(a=this.length),t>=e.length&&(t=e.length),t||(t=0),a>0&&a<r&&(a=r),a===r||e.length===0||this.length===0)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("Index out of range");if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),e.length-t<a-r&&(a=e.length-t+r);var i=a-r;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(t,r,a):Uint8Array.prototype.set.call(e,this.subarray(r,a),t),i};o.prototype.fill=function(e,t,r,a){if(typeof e=="string"){if(typeof t=="string"?(a=t,t=0,r=this.length):typeof r=="string"&&(a=r,r=this.length),a!==void 0&&typeof a!="string")throw new TypeError("encoding must be a string");if(typeof a=="string"&&!o.isEncoding(a))throw new TypeError("Unknown encoding: "+a);if(e.length===1){var i=e.charCodeAt(0);(a==="utf8"&&i<128||a==="latin1")&&(e=i)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;t=t>>>0,r=r===void 0?this.length:r>>>0,e||(e=0);var s;if(typeof e=="number")for(s=t;s<r;++s)this[s]=e;else{var u=o.isBuffer(e)?e:o.from(e,a),p=u.length;if(p===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<r-t;++s)this[s+t]=u[s%p]}return this};var rr=/[^+/0-9A-Za-z-_]/g;function ar(n){if(n=n.split("=")[0],n=n.trim().replace(rr,""),n.length<2)return"";for(;n.length%4!==0;)n=n+"=";return n}function Ze(n,e){e=e||1/0;for(var t,r=n.length,a=null,i=[],s=0;s<r;++s){if(t=n.charCodeAt(s),t>55295&&t<57344){if(!a){if(t>56319){(e-=3)>-1&&i.push(239,191,189);continue}else if(s+1===r){(e-=3)>-1&&i.push(239,191,189);continue}a=t;continue}if(t<56320){(e-=3)>-1&&i.push(239,191,189),a=t;continue}t=(a-55296<<10|t-56320)+65536}else a&&(e-=3)>-1&&i.push(239,191,189);if(a=null,t<128){if((e-=1)<0)break;i.push(t)}else if(t<2048){if((e-=2)<0)break;i.push(t>>6|192,t&63|128)}else if(t<65536){if((e-=3)<0)break;i.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((e-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return i}function ir(n){for(var e=[],t=0;t<n.length;++t)e.push(n.charCodeAt(t)&255);return e}function sr(n,e){for(var t,r,a,i=[],s=0;s<n.length&&!((e-=2)<0);++s)t=n.charCodeAt(s),r=t>>8,a=t%256,i.push(a),i.push(r);return i}function Pt(n){return Ye.toByteArray(ar(n))}function Se(n,e,t,r){for(var a=0;a<r&&!(a+t>=e.length||a>=n.length);++a)e[a+t]=n[a];return a}function H(n,e){return n instanceof e||n!=null&&n.constructor!=null&&n.constructor.name!=null&&n.constructor.name===e.name}function et(n){return n!==n}var or=function(){for(var n="0123456789abcdef",e=new Array(256),t=0;t<16;++t)for(var r=t*16,a=0;a<16;++a)e[r+a]=n[t]+n[a];return e}()});var Wt=ie((Vr,Lt)=>{"use strict";m();var v=Lt.exports={},V,L;function nt(){throw new Error("setTimeout has not been defined")}function rt(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?V=setTimeout:V=nt}catch{V=nt}try{typeof clearTimeout=="function"?L=clearTimeout:L=rt}catch{L=rt}})();function Kt(n){if(V===setTimeout)return setTimeout(n,0);if((V===nt||!V)&&setTimeout)return V=setTimeout,setTimeout(n,0);try{return V(n,0)}catch{try{return V.call(null,n,0)}catch{return V.call(this,n,0)}}}function ur(n){if(L===clearTimeout)return clearTimeout(n);if((L===rt||!L)&&clearTimeout)return L=clearTimeout,clearTimeout(n);try{return L(n)}catch{try{return L.call(null,n)}catch{return L.call(this,n)}}}var X=[],pe=!1,te,Me=-1;function pr(){!pe||!te||(pe=!1,te.length?X=te.concat(X):Me=-1,X.length&&Ht())}function Ht(){if(!pe){var n=Kt(pr);pe=!0;for(var e=X.length;e;){for(te=X,X=[];++Me<e;)te&&te[Me].run();Me=-1,e=X.length}te=null,pe=!1,ur(n)}}v.nextTick=function(n){var e=new Array(arguments.length-1);if(arguments.length>1)for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];X.push(new Vt(n,e)),X.length===1&&!pe&&Kt(Ht)};function Vt(n,e){this.fun=n,this.array=e}Vt.prototype.run=function(){this.fun.apply(null,this.array)};v.title="browser";v.browser=!0;v.env={};v.argv=[];v.version="";v.versions={};function j(){}v.on=j;v.addListener=j;v.once=j;v.off=j;v.removeListener=j;v.removeAllListeners=j;v.emit=j;v.prependListener=j;v.prependOnceListener=j;v.listeners=function(n){return[]};v.binding=function(n){throw new Error("process.binding is not supported")};v.cwd=function(){return"/"};v.chdir=function(n){throw new Error("process.chdir is not supported")};v.umask=function(){return 0}});var T,w,yr,b,m=kn(()=>{"use strict";T=se(tt()),w=se(Wt()),yr=function(n){function e(){var r=this||self;return delete n.prototype.__magic__,r}if(typeof globalThis=="object")return globalThis;if(this)return e();n.defineProperty(n.prototype,"__magic__",{configurable:!0,get:e});var t=__magic__;return t}(Object),b=yr});var zt=ie((Gr,Gt)=>{"use strict";m();function lr(n){if(n.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),t=0;t<e.length;t++)e[t]=255;for(var r=0;r<n.length;r++){var a=n.charAt(r),i=a.charCodeAt(0);if(e[i]!==255)throw new TypeError(a+" is ambiguous");e[i]=r}var s=n.length,u=n.charAt(0),p=Math.log(s)/Math.log(256),c=Math.log(256)/Math.log(s);function y(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var g=0,A=0,x=0,_=f.length;x!==_&&f[x]===0;)x++,g++;for(var B=(_-x)*c+1>>>0,S=new Uint8Array(B);x!==_;){for(var U=f[x],P=0,F=B-1;(U!==0||P<A)&&F!==-1;F--,P++)U+=256*S[F]>>>0,S[F]=U%s>>>0,U=U/s>>>0;if(U!==0)throw new Error("Non-zero carry");A=P,x++}for(var D=B-A;D!==B&&S[D]===0;)D++;for(var Ee=u.repeat(g);D<B;++D)Ee+=n.charAt(S[D]);return Ee}function l(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;for(var g=0,A=0,x=0;f[g]===u;)A++,g++;for(var _=(f.length-g)*p+1>>>0,B=new Uint8Array(_);f[g];){var S=e[f.charCodeAt(g)];if(S===255)return;for(var U=0,P=_-1;(S!==0||U<x)&&P!==-1;P--,U++)S+=s*B[P]>>>0,B[P]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");x=U,g++}for(var F=_-x;F!==_&&B[F]===0;)F++;for(var D=new Uint8Array(A+(_-F)),Ee=A;F!==_;)D[Ee++]=B[F++];return D}function h(f){var g=l(f);if(g)return g;throw new Error("Non-base"+s+" character")}return{encode:y,decodeUnsafe:l,decode:h}}Gt.exports=lr});var jt=ie((Xr,Xt)=>{"use strict";m();var cr=zt(),dr="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";Xt.exports=cr(dr)});var Fr={};At(Fr,{Account:()=>xe,BaseContractManager:()=>me,BaseKeyStore:()=>be,BaseOrderlyKeyPair:()=>Y,BaseSigner:()=>q,DefaultConfigStore:()=>Le,EtherAdapter:()=>ze,EventEmitter:()=>En.default,LocalStorageStore:()=>ce,MockKeyStore:()=>de,SimpleDI:()=>vn,generateAddOrderlyKeyMessage:()=>Pe,generateRegisterAccountMessage:()=>De,generateSettleMessage:()=>Ke,getDefaultSigner:()=>ln,getMockSigner:()=>yn,utils:()=>ft});module.exports=Rn(Fr);m();m();m();var ge=se(jt());m();var C=2n**255n-19n,ye=2n**252n+27742317777372353535851937790883648493n,at=0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51an,it=0x6666666666666666666666666666666666666666666666666666666666666658n,ke={a:-1n,d:37095705934669439343138083508754565189542113879843219016388785533085940283555n,p:C,n:ye,h:8,Gx:at,Gy:it},M=(n="")=>{throw new Error(n)},$t=n=>typeof n=="string",Fe=(n,e)=>!(n instanceof Uint8Array)||typeof e=="number"&&e>0&&n.length!==e?M("Uint8Array expected"):n,le=n=>new Uint8Array(n),Ne=(n,e)=>Fe($t(n)?ut(n):le(n),e),d=(n,e=C)=>{let t=n%e;return t>=0n?t:e+t},Yt=n=>n instanceof J?n:M("Point expected"),qt,J=class n{constructor(e,t,r,a){this.ex=e,this.ey=t,this.ez=r,this.et=a}static fromAffine(e){return new n(e.x,e.y,1n,d(e.x*e.y))}static fromHex(e,t=!0){let{d:r}=ke;e=Ne(e,32);let a=e.slice();a[31]=e[31]&-129;let i=tn(a);i===0n||(t&&!(0n<i&&i<C)&&M("bad y coord 1"),!t&&!(0n<i&&i<2n**256n)&&M("bad y coord 2"));let s=d(i*i),u=d(s-1n),p=d(r*s+1n),{isValid:c,value:y}=fr(u,p);c||M("bad y coordinate 3");let l=(y&1n)===1n;return(e[31]&128)!==0!==l&&(y=d(-y)),new n(y,i,1n,d(y*i))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}equals(e){let{ex:t,ey:r,ez:a}=this,{ex:i,ey:s,ez:u}=Yt(e),p=d(t*u),c=d(i*a),y=d(r*u),l=d(s*a);return p===c&&y===l}is0(){return this.equals(Re)}negate(){return new n(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){let{ex:e,ey:t,ez:r}=this,{a}=ke,i=d(e*e),s=d(t*t),u=d(2n*d(r*r)),p=d(a*i),c=e+t,y=d(d(c*c)-i-s),l=p+s,h=l-u,f=p-s,g=d(y*h),A=d(l*f),x=d(y*f),_=d(h*l);return new n(g,A,_,x)}add(e){let{ex:t,ey:r,ez:a,et:i}=this,{ex:s,ey:u,ez:p,et:c}=Yt(e),{a:y,d:l}=ke,h=d(t*s),f=d(r*u),g=d(i*l*c),A=d(a*p),x=d((t+r)*(s+u)-h-f),_=d(A-g),B=d(A+g),S=d(f-y*h),U=d(x*_),P=d(B*S),F=d(x*S),D=d(_*B);return new n(U,P,D,F)}mul(e,t=!0){if(e===0n)return t===!0?M("cannot multiply by 0"):Re;if(typeof e=="bigint"&&0n<e&&e<ye||M("invalid scalar, must be < L"),!t&&this.is0()||e===1n)return this;if(this.equals(re))return wr(e).p;let r=Re,a=re;for(let i=this;e>0n;i=i.double(),e>>=1n)e&1n?r=r.add(i):t&&(a=a.add(i));return r}multiply(e){return this.mul(e)}clearCofactor(){return this.mul(BigInt(ke.h),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let e=this.mul(ye/2n,!1).double();return ye%2n&&(e=e.add(this)),e.is0()}toAffine(){let{ex:e,ey:t,ez:r}=this;if(this.is0())return{x:0n,y:0n};let a=nn(r);return d(r*a)!==1n&&M("invalid inverse"),{x:d(e*a),y:d(t*a)}}toRawBytes(){let{x:e,y:t}=this.toAffine(),r=en(t);return r[31]|=e&1n?128:0,r}toHex(){return ot(this.toRawBytes())}};J.BASE=new J(at,it,1n,d(at*it));J.ZERO=new J(0n,1n,1n,0n);var{BASE:re,ZERO:Re}=J,Qt=(n,e)=>n.toString(16).padStart(e,"0"),ot=n=>Array.from(n).map(e=>Qt(e,2)).join(""),ut=n=>{let e=n.length;(!$t(n)||e%2)&&M("hex invalid 1");let t=le(e/2);for(let r=0;r<t.length;r++){let a=r*2,i=n.slice(a,a+2),s=Number.parseInt(i,16);(Number.isNaN(s)||s<0)&&M("hex invalid 2"),t[r]=s}return t},en=n=>ut(Qt(n,32*2)).reverse(),tn=n=>BigInt("0x"+ot(le(Fe(n)).reverse())),Be=(...n)=>{let e=le(n.reduce((r,a)=>r+Fe(a).length,0)),t=0;return n.forEach(r=>{e.set(r,t),t+=r.length}),e},nn=(n,e=C)=>{(n===0n||e<=0n)&&M("no inverse n="+n+" mod="+e);let t=d(n,e),r=e,a=0n,i=1n,s=1n,u=0n;for(;t!==0n;){let p=r/t,c=r%t,y=a-s*p,l=i-u*p;r=t,t=c,a=s,i=u,s=y,u=l}return r===1n?d(a,e):M("no inverse")},W=(n,e)=>{let t=n;for(;e-- >0n;)t*=t,t%=C;return t},mr=n=>{let t=n*n%C*n%C,r=W(t,2n)*t%C,a=W(r,1n)*n%C,i=W(a,5n)*a%C,s=W(i,10n)*i%C,u=W(s,20n)*s%C,p=W(u,40n)*u%C,c=W(p,80n)*p%C,y=W(c,80n)*p%C,l=W(y,10n)*i%C;return{pow_p_5_8:W(l,2n)*n%C,b2:t}},Jt=19681161376707505956807079304988542015446066515923890162744021073123829784752n,fr=(n,e)=>{let t=d(e*e*e),r=d(t*t*e),a=mr(n*r).pow_p_5_8,i=d(n*t*a),s=d(e*i*i),u=i,p=d(i*Jt),c=s===n,y=s===d(-n),l=s===d(-n*Jt);return c&&(i=u),(y||l)&&(i=p),(d(i)&1n)===1n&&(i=d(-i)),{isValid:c||y,value:i}},st=n=>d(tn(n),ye),he,pt=(...n)=>lt.sha512Async(...n),rn=(...n)=>typeof he=="function"?he(...n):M("etc.sha512Sync not set"),an=n=>{let e=n.slice(0,32);e[0]&=248,e[31]&=127,e[31]|=64;let t=n.slice(32,64),r=st(e),a=re.mul(r),i=a.toRawBytes();return{head:e,prefix:t,scalar:r,point:a,pointBytes:i}},yt=n=>pt(Ne(n,32)).then(an),hr=n=>an(rn(Ne(n,32))),sn=n=>yt(n).then(e=>e.pointBytes);function gr(n,e){return n?pt(e.hashable).then(e.finish):e.finish(rn(e.hashable))}var br=(n,e,t)=>{let{pointBytes:r,scalar:a}=n,i=st(e),s=re.mul(i).toRawBytes();return{hashable:Be(s,r,t),finish:c=>{let y=d(i+st(c)*a,ye);return Fe(Be(s,en(y)),64)}}},on=async(n,e)=>{let t=Ne(n),r=await yt(e),a=await pt(r.prefix,t);return gr(!0,br(r,a,t))};var Zt=()=>typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0,lt={bytesToHex:ot,hexToBytes:ut,concatBytes:Be,mod:d,invert:nn,randomBytes:n=>{let e=Zt();return e||M("crypto.getRandomValues must be defined"),e.getRandomValues(le(n))},sha512Async:async(...n)=>{let e=Zt();e||M("crypto.subtle or etc.sha512Async must be defined");let t=Be(...n);return le(await e.subtle.digest("SHA-512",t.buffer))},sha512Sync:void 0};Object.defineProperties(lt,{sha512Sync:{configurable:!1,get(){return he},set(n){he||(he=n)}}});var un={getExtendedPublicKeyAsync:yt,getExtendedPublicKey:hr,randomPrivateKey:()=>lt.randomBytes(32),precompute(n=8,e=re){return e.multiply(3n),e}},ne=8,Tr=()=>{let n=[],e=256/ne+1,t=re,r=t;for(let a=0;a<e;a++){r=t,n.push(r);for(let i=1;i<2**(ne-1);i++)r=r.add(t),n.push(r);t=r.double()}return n},wr=n=>{let e=qt||(qt=Tr()),t=(y,l)=>{let h=l.negate();return y?h:l},r=Re,a=re,i=1+256/ne,s=2**(ne-1),u=BigInt(2**ne-1),p=2**ne,c=BigInt(ne);for(let y=0;y<i;y++){let l=y*s,h=Number(n&u);n>>=c,h>s&&(h-=p,n+=1n);let f=l,g=l+Math.abs(h)-1,A=y%2!==0,x=h<0;h===0?a=a.add(t(A,e[f])):r=r.add(t(x,e[g]))}return{p:r,f:a}};var Y=class n{static generateKey(){let e,t;do e=un.randomPrivateKey(),t=(0,ge.encode)(e);while(t.length!==44);return new n(t)}constructor(e){this.secretKey=e;let t=(0,ge.decode)(e);this.privateKey=T.Buffer.from(t).toString("hex")}async sign(e){return await on(e,this.privateKey)}async getPublicKey(){let e=await sn(this.privateKey);return`ed25519:${(0,ge.encode)(e)}`}toString(){return this.privateKey}};var be=class{constructor(e="testnet"){this.networkId=e}get keyPrefix(){return`orderly_${this.networkId}_`}},ce=class extends be{getOrderlyKey(e){let t;if(e)t=this.getItem(e,"orderlyKey");else{let r=this.getAddress();if(!r)return null;t=this.getItem(r,"orderlyKey")}return t?new Y(t):null}getAccountId(e){return this.getItem(e,"accountId")}setAccountId(e,t){this.setItem(e,{accountId:t})}getAddress(){return localStorage.getItem(`${this.keyPrefix}address`)}setAddress(e){localStorage.setItem(`${this.keyPrefix}address`,e)}generateKey(){return Y.generateKey()}setKey(e,t){this.setItem(e,{orderlyKey:t.secretKey})}cleanAllKey(e){localStorage.removeItem(`${this.keyPrefix}${e}`),localStorage.removeItem(`${this.keyPrefix}address`)}cleanKey(e,t){let r=this.getItem(e);delete r[t],localStorage.setItem(`${this.keyPrefix}${e}`,JSON.stringify(r))}setItem(e,t){let r=`${this.keyPrefix}${e}`,a=localStorage.getItem(r);a?a=JSON.parse(a):a={},localStorage.setItem(r,JSON.stringify({...a,...t}))}getItem(e,t){let r=`${this.keyPrefix}${e}`,a=localStorage.getItem(r);return a?a=JSON.parse(a):a={},typeof t>"u"?a:a[t]}},de=class{constructor(e){this.secretKey=e}generateKey(){return new Y(this.secretKey)}getOrderlyKey(){return new Y(this.secretKey)}getAccountId(){return""}setAccountId(e){}getAddress(){return""}setAddress(e){}setKey(e,t){}cleanAllKey(){}cleanKey(e){}};m();var ft={};At(ft,{base64url:()=>ct,calculateStringHash:()=>mt,formatByUnits:()=>Oe,getGlobalObject:()=>Ae,getTimestamp:()=>ve,isHex:()=>we,isHexString:()=>vr,parseAccountId:()=>dt,parseBrokerHash:()=>Te,parseTokenHash:()=>Ue,parseUnits:()=>pn.parseUnits});m();var Z=require("ethers"),pn=require("ethers"),ct=function(n){return n.replace(/\+/g,"-").replace(/\//g,"_")};function Te(n){return mt(n)}function dt(n,e){let t=Z.AbiCoder.defaultAbiCoder();return(0,Z.keccak256)(t.encode(["address","bytes32"],[n,Te(e)]))}function Ue(n){return mt(n)}function mt(n){return(0,Z.solidityPackedKeccak256)(["string"],[n])}function Oe(n,e="ether"){return(0,Z.formatUnits)(n,e)}function we(n){return/^[a-f0-9]+$/iu.test(n)}function vr(n){return typeof n=="string"&&n.startsWith("0x")&&we(n)}var Ae=()=>{if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof b<"u")return b;throw new Error("cannot find the global object")},ve=()=>{if(typeof window<"u"){let n=Ae()?.__ORDERLY_timestamp_offset;if(typeof n=="number")return Date.now()+(n||0)}return Date.now()};var ht=se(tt()),q=class{constructor(e){this.keyStore=e}async sign(e,t=Date.now()){let r=(t||Date.now()).toString(),a=[r,e.method.toUpperCase(),e.url].join("");e.data&&Object.keys(e.data).length&&(a+=JSON.stringify(e.data));let{signature:i,publicKey:s}=await this.signText(a);return{"orderly-key":s,"orderly-timestamp":r,"orderly-signature":i}}async signText(e){let t=this.keyStore.getOrderlyKey();if(!t)throw new Error("orderlyKeyPair is not defined");let r=ht.Buffer.from(e),a=await t.sign(r),i=ht.Buffer.from(a).toString("base64");return{signature:ct(i),publicKey:await t.getPublicKey()}}};var En=se(require("eventemitter3"));m();var ae=require("@orderly.network/types");var yn=n=>{let e=new de(n||"AFmQSju4FhDwG93cMdKogcnKx7SWmViDtDv5PVzfvRDF");return new q(e)},ln=()=>{if(typeof window>"u")throw new Error("the default signer only supports browsers.");let n=new ce("");return new q(n)};function xr(){return"0x8794E7260517B1766fc7b55cAfcd56e6bf08600e"}function cn(n,e){return{name:"Orderly",version:"1",chainId:n,verifyingContract:e?xr():"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"}}function De(n){let{chainId:e,registrationNonce:t,brokerId:r,timestamp:a=Date.now()}=n,i="Registration",s={brokerId:r,chainId:e,timestamp:a,registrationNonce:t},u={EIP712Domain:ae.definedTypes.EIP712Domain,[i]:ae.definedTypes[i]},p={domain:cn(e),message:s,primaryType:i,types:u};return[s,p]}function Pe(n){let{publicKey:e,chainId:t,primaryType:r,brokerId:a,expiration:i=365,timestamp:s=Date.now()}=n,u={brokerId:a,orderlyKey:e,scope:"read,trading",chainId:t,timestamp:s,expiration:s+1e3*60*60*24*i},p={EIP712Domain:ae.definedTypes.EIP712Domain,[r]:ae.definedTypes[r]},c={domain:cn(t),message:u,primaryType:r,types:p};return[u,c]}function Ke(n){let{chainId:e,settlePnlNonce:t,domain:r,brokerId:a}=n,i="SettlePnl",s=new Date().getTime(),u={EIP712Domain:ae.definedTypes.EIP712Domain,[i]:ae.definedTypes[i]},p={brokerId:a,chainId:e,timestamp:s,settleNonce:t};return[p,{domain:r,message:p,primaryType:i,types:u}]}m();m();var dn="0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63";var mn="0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f",fn="0x1826B75e2ef249173FC735149AE4B8e9ea10abff",hn="0xaf88d065e77c8cC2239327C5EDb3A432268e5831",gn="0x816f722424B49Cf1275cc86DA9840Fbd5a6167e9",bn="0x6F7a338F2aA472838dEFD3283eB360d4Dff5D203";var gt=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"authorizer",type:"address"},{indexed:!0,internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"AuthorizationCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"authorizer",type:"address"},{indexed:!0,internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"AuthorizationUsed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"_account",type:"address"}],name:"Blacklisted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newBlacklister",type:"address"}],name:"BlacklisterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"burner",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newMasterMinter",type:"address"}],name:"MasterMinterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"uint256",name:"minterAllowedAmount",type:"uint256"}],name:"MinterConfigured",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldMinter",type:"address"}],name:"MinterRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"previousOwner",type:"address"},{indexed:!1,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[],name:"Pause",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAddress",type:"address"}],name:"PauserChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newRescuer",type:"address"}],name:"RescuerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"_account",type:"address"}],name:"UnBlacklisted",type:"event"},{anonymous:!1,inputs:[],name:"Unpause",type:"event"},{inputs:[],name:"CANCEL_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"RECEIVE_WITH_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"TRANSFER_WITH_AUTHORIZATION_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"authorizer",type:"address"},{internalType:"bytes32",name:"nonce",type:"bytes32"}],name:"authorizationState",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"blacklist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"blacklister",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"authorizer",type:"address"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"cancelAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"},{internalType:"uint256",name:"minterAllowedAmount",type:"uint256"}],name:"configureMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"currency",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"decrement",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"increment",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"tokenName",type:"string"},{internalType:"string",name:"tokenSymbol",type:"string"},{internalType:"string",name:"tokenCurrency",type:"string"},{internalType:"uint8",name:"tokenDecimals",type:"uint8"},{internalType:"address",name:"newMasterMinter",type:"address"},{internalType:"address",name:"newPauser",type:"address"},{internalType:"address",name:"newBlacklister",type:"address"},{internalType:"address",name:"newOwner",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"newName",type:"string"}],name:"initializeV2",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"lostAndFound",type:"address"}],name:"initializeV2_1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"isBlacklisted",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"masterMinter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_to",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"mint",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"minterAllowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"validAfter",type:"uint256"},{internalType:"uint256",name:"validBefore",type:"uint256"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"receiveWithAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"removeMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenContract",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"rescueERC20",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rescuer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"validAfter",type:"uint256"},{internalType:"uint256",name:"validBefore",type:"uint256"},{internalType:"bytes32",name:"nonce",type:"bytes32"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"transferWithAuthorization",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_account",type:"address"}],name:"unBlacklist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newBlacklister",type:"address"}],name:"updateBlacklister",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newMasterMinter",type:"address"}],name:"updateMasterMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_newPauser",type:"address"}],name:"updatePauser",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newRescuer",type:"address"}],name:"updateRescuer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"version",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}];var Tn=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccountIdInvalid",type:"error"},{inputs:[],name:"AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"BalanceNotEnough",type:"error"},{inputs:[],name:"BrokerNotAllowed",type:"error"},{inputs:[],name:"EnumerableSetError",type:"error"},{inputs:[],name:"OnlyCrossChainManagerCanCall",type:"error"},{inputs:[],name:"TokenNotAllowed",type:"error"},{inputs:[],name:"ZeroDepositFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDeposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDepositTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"uint64",name:"withdrawNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"address",name:"receiver",type:"address"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"},{indexed:!1,internalType:"uint128",name:"fee",type:"uint128"}],name:"AccountWithdraw",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldAddress",type:"address"},{indexed:!1,internalType:"address",name:"newAddress",type:"address"}],name:"ChangeCrossChainManager",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"_tokenAddress",type:"address"}],name:"ChangeTokenAddressAndAllow",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedBroker",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedToken",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"allowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"address",name:"_tokenAddress",type:"address"}],name:"changeTokenAddressAndAllow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"crossChainManagerAddress",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"depositFeeEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"depositId",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"emergencyPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"emergencyUnpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_enabled",type:"bool"}],name:"enableDepositFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllAllowedBroker",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllAllowedToken",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"}],name:"getAllowedBroker",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"}],name:"getAllowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"getDepositFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"messageTransmitterContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint32",name:"dstDomain",type:"uint32"},{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"address",name:"dstVaultAddress",type:"address"}],internalType:"struct RebalanceTypes.RebalanceBurnCCData",name:"data",type:"tuple"}],name:"rebalanceBurn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"bytes",name:"messageBytes",type:"bytes"},{internalType:"bytes",name:"messageSignature",type:"bytes"}],internalType:"struct RebalanceTypes.RebalanceMintCCData",name:"data",type:"tuple"}],name:"rebalanceMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedBroker",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_crossChainManagerAddress",type:"address"}],name:"setCrossChainManager",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_rebalanceMessengerContract",type:"address"}],name:"setRebalanceMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_tokenMessengerContract",type:"address"}],name:"setTokenMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"tokenMessengerContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"},{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"receiver",type:"address"},{internalType:"uint64",name:"withdrawNonce",type:"uint64"}],internalType:"struct VaultTypes.VaultWithdraw",name:"data",type:"tuple"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}];var bt=[{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint8",name:"decimals_",type:"uint8"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"issue",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_to",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"_paused",type:"bool"}],name:"pauseTransfers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"}];var wn=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccountIdInvalid",type:"error"},{inputs:[],name:"AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"BalanceNotEnough",type:"error"},{inputs:[],name:"BrokerNotAllowed",type:"error"},{inputs:[],name:"EnumerableSetError",type:"error"},{inputs:[],name:"OnlyCrossChainManagerCanCall",type:"error"},{inputs:[],name:"TokenNotAllowed",type:"error"},{inputs:[],name:"ZeroDepositFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDeposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"address",name:"userAddress",type:"address"},{indexed:!0,internalType:"uint64",name:"depositNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"AccountDepositTo",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:!0,internalType:"uint64",name:"withdrawNonce",type:"uint64"},{indexed:!1,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"address",name:"receiver",type:"address"},{indexed:!1,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:!1,internalType:"uint128",name:"tokenAmount",type:"uint128"},{indexed:!1,internalType:"uint128",name:"fee",type:"uint128"}],name:"AccountWithdraw",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldAddress",type:"address"},{indexed:!1,internalType:"address",name:"newAddress",type:"address"}],name:"ChangeCrossChainManager",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"address",name:"_tokenAddress",type:"address"}],name:"ChangeTokenAddressAndAllow",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedBroker",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{indexed:!1,internalType:"bool",name:"_allowed",type:"bool"}],name:"SetAllowedToken",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"allowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"address",name:"_tokenAddress",type:"address"}],name:"changeTokenAddressAndAllow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"crossChainManagerAddress",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"depositFeeEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"depositId",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"emergencyPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"emergencyUnpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_enabled",type:"bool"}],name:"enableDepositFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllAllowedBroker",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllAllowedToken",outputs:[{internalType:"bytes32[]",name:"",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"}],name:"getAllowedBroker",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"}],name:"getAllowedToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"receiver",type:"address"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"}],internalType:"struct VaultTypes.VaultDepositFE",name:"data",type:"tuple"}],name:"getDepositFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"messageTransmitterContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint32",name:"dstDomain",type:"uint32"},{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"address",name:"dstVaultAddress",type:"address"}],internalType:"struct RebalanceTypes.RebalanceBurnCCData",name:"data",type:"tuple"}],name:"rebalanceBurn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint64",name:"rebalanceId",type:"uint64"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint256",name:"burnChainId",type:"uint256"},{internalType:"uint256",name:"mintChainId",type:"uint256"},{internalType:"bytes",name:"messageBytes",type:"bytes"},{internalType:"bytes",name:"messageSignature",type:"bytes"}],internalType:"struct RebalanceTypes.RebalanceMintCCData",name:"data",type:"tuple"}],name:"rebalanceMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_brokerHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedBroker",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_tokenHash",type:"bytes32"},{internalType:"bool",name:"_allowed",type:"bool"}],name:"setAllowedToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_crossChainManagerAddress",type:"address"}],name:"setCrossChainManager",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_rebalanceMessengerContract",type:"address"}],name:"setRebalanceMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_tokenMessengerContract",type:"address"}],name:"setTokenMessengerContract",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"tokenMessengerContract",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"},{internalType:"uint128",name:"tokenAmount",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"},{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"receiver",type:"address"},{internalType:"uint64",name:"withdrawNonce",type:"uint64"}],internalType:"struct VaultTypes.VaultWithdraw",name:"data",type:"tuple"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}];var me=class{constructor(e){this.configStore=e}getContractInfoByEnv(){return this.configStore.get("networkId")==="mainnet"?{usdcAddress:hn,usdcAbi:gt,vaultAddress:gn,vaultAbi:Tn,verifyContractAddress:bn,erc20Abi:gt}:{usdcAddress:dn,usdcAbi:bt,vaultAddress:mn,vaultAbi:wn,verifyContractAddress:fn,erc20Abi:bt}}};m();m();var Tt=class{constructor(e=[],t={}){this.providers=e;this.services=t;this.injectProperties={}}register(...e){this.providers.push(...e),e.forEach(t=>{let r=t;r instanceof Function&&(r=new t),this.add(r)})}registerByName(e,t){let r=t;r instanceof Function&&(r=new t),this.addByName(e,r)}get(e){return this.services[e]}getAll(){return Object.assign({},this.services)}add(e){return this.addByName(e.constructor.name,e)}addByName(e,t){return this.services[e]=t,this.services[e.toLowerCase()]=t,this.injectIntoProperties(t,e),this.get(e)}inject(e,t,r){e&&r&&(e[t]=r)}injectIntoProperties(e,t=e.constructor.name){this.getInjectProperty(t.toLowerCase()).forEach(r=>{this.inject(r.target,r.propertyKey,e)})}getInjectProperty(e){return this.injectProperties[e]||(this.injectProperties[e]=[]),this.injectProperties[e]}},An=Tt;var G=class G{static getContainer(){return G.container||(Ae()[G.KEY]=G.container=new An),G.container}static register(...e){this.getContainer().register(...e)}static registerByName(e,t){this.getContainer().registerByName(e,t)}static get(e){return this.getContainer().get(e)}static getOr(e,t){return this.getContainer().get(e)||G.registerByName(e,t),t}static getAll(){return this.getContainer().getAll()}constructor(){}};G.KEY="__ORDERLY_CONTAINER__",G.container=Ae()[G.KEY]||null;var wt=G,vn=wt;m();var I=require("@orderly.network/types");var xn=se(require("eventemitter3"));m();var $=require("@orderly.network/types"),He=class{constructor(e,t,r){this.configStore=e;this.contractManger=t;this.account=r}async withdraw(e){if(!this.account.walletClient)throw new Error("walletClient is undefined");if(!this.account.stateValue.address)throw new Error("account address is rqeuired");let{chainId:t,token:r,allowCrossChainWithdraw:a}=e,{amount:i}=e;typeof i=="number"&&(i=i.toString());let s="/v1/withdraw_request",u=await this.getWithdrawalNonce(),p=this.account.getDomain(!0),[c,y]=this._generateWithdrawMessage({chainId:t,receiver:this.account.stateValue.address,token:r,amount:this.account.walletClient.parseUnits(i),nonce:u,domain:p}),h={signature:await this.account.signTypedData(y),message:c,userAddress:this.account.stateValue.address,verifyingContract:p.verifyingContract},f={method:"POST",url:s,data:h};a&&(h.message={...h.message,allowCrossChainWithdraw:a});let g=await this.account.signer.sign(f,ve()),A=await this._simpleFetch(s,{method:"POST",body:JSON.stringify(h),headers:{"Content-Type":"application/json","orderly-account-id":this.account.stateValue.accountId,...g}});if(!A.success)throw new $.ApiError(A.message,A.code);return A}_generateWithdrawMessage(e){let{chainId:t,receiver:r,token:a,amount:i,domain:s,nonce:u}=e,p="Withdraw",c=Date.now(),y={EIP712Domain:$.definedTypes.EIP712Domain,[p]:$.definedTypes[p]},l={brokerId:this.configStore.get("brokerId"),chainId:t,receiver:r,token:a,amount:i,timestamp:c,withdrawNonce:u};return[l,{domain:s,message:l,primaryType:p,types:y}]}async getWithdrawalNonce(){let e=Date.now().toString(),t="/v1/withdraw_nonce",r=[e,"GET",t].join(""),a=this.account.signer,{publicKey:i,signature:s}=await a.signText(r),u=await this._simpleFetch(t,{headers:{"orderly-account-id":this.account.stateValue.accountId,"orderly-key":i,"orderly-timestamp":e,"orderly-signature":s}});if(u.success)return u.data?.withdraw_nonce;throw new Error(u.message)}async getNativeBalance(e){let t=await this.account.walletClient?.getBalance(this.account.stateValue.address);return Oe(t,e?.decimals)}async getBalance(e,t){if(!this.account.walletClient)return"0";let r=this.contractManger.getContractInfoByEnv(),a=await this.account.walletClient?.call(e??r.usdcAddress,"balanceOf",[this.account.stateValue.address],{abi:r.usdcAbi});return Oe(a,t?.decimals)}async getBalanceByAddress(e){if(!this.account.walletClient)return"0";let t=this.contractManger.getContractInfoByEnv(),r=await this.account.walletClient?.call(e,"balanceOf",[this.account.stateValue.address],{abi:t.erc20Abi});return this.account.walletClient?.formatUnits(r)}async getAllowance(e,t){if(!this.account.walletClient)return"0";let r=this.contractManger.getContractInfoByEnv(),a=await this.account.walletClient?.call(e??r.usdcAddress,"allowance",[this.account.stateValue.address,t||r.vaultAddress],{abi:r.usdcAbi});return this.account.walletClient?.formatUnits(a)}async approve(e,t,r){if(!e)throw new Error("address is required");if(!this.account.walletClient)throw new Error("walletClient is undefined");let a=this.contractManger.getContractInfoByEnv(),i=typeof t<"u"&&t!==""?this.account.walletClient.parseUnits(t):$.MaxUint256.toString();return await this.account.walletClient?.call(e,"approve",[r||a.vaultAddress,i],{abi:a.usdcAbi})}async approveByAddress(e){let{amount:t,address:r}=e;return this._approve(r,t)}async _approve(e,t){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=typeof t<"u"&&t!==""?this.account.walletClient.parseUnits(t):$.MaxUint256.toString(),a=this.contractManger.getContractInfoByEnv();return await this.account.walletClient?.call(e,"approve",[a.vaultAddress,r],{abi:a.erc20Abi})}getDepositData(e){if(!this.account.walletClient)throw new Error("walletClient is undefined");let t=this.configStore.get("brokerId");if(!t)throw new Error("[Assets]:brokerId is required");return{accountId:this.account.accountIdHashStr,brokerHash:Te(t),tokenHash:Ue("USDC"),tokenAmount:this.account.walletClient?.parseUnits(e)}}async getDepositFee(e,t){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=this.getDepositData(e),a=this.contractManger.getContractInfoByEnv();return await this.account.walletClient.callOnChain(t,a.vaultAddress,"getDepositFee",[this.account.stateValue.address,r],{abi:a.vaultAbi})}async deposit(e,t=0n){if(!this.account.walletClient)throw new Error("walletClient is undefined");let r=this.configStore.get("brokerId");if(!r)throw new Error("[Assets]:brokerId is required");let a=this.contractManger.getContractInfoByEnv(),i={accountId:this.account.accountIdHashStr,brokerHash:Te(r),tokenHash:Ue("USDC"),tokenAmount:this.account.walletClient?.parseUnits(e)};return await this.account.walletClient?.sendTransaction(a.vaultAddress,"deposit",{from:this.account.stateValue.address,to:a.vaultAddress,data:[i],value:t},{abi:a.vaultAbi})}async _simpleFetch(e,t={}){let r=`${this.configStore.get("apiBaseUrl")}${e}`;return fetch(r,t).then(a=>a.json())}get usdcAddress(){return this.contractManger.getContractInfoByEnv().usdcAddress}};var Ve=require("@orderly.network/types"),xe=class{constructor(e,t,r,a){this.configStore=e;this.keyStore=t;this.getWalletAdapter=r;this._ee=new xn.default;this._state={status:I.AccountStatusEnum.NotConnected,validating:!1,isNew:!1};a?.contracts?this.contractManger=a.contracts:this.contractManger=new me(e),this.assetsManager=new He(e,this.contractManger,this),this._bindEvents()}logout(){}async setAddress(e,t){if(!e)throw new Ve.SDKError("Address is required");if(!t?.chain?.id)throw new Ve.SDKError("Chain id is required");if(this.stateValue.address===e)return console.warn("address parameter is the same as the current address, if you want to change chain, please use `switchChain` method."),this.stateValue.status;t.chain.id=this.parseChainId(t?.chain?.id),this.keyStore.setAddress(e);let r={...this.stateValue,status:I.AccountStatusEnum.Connected,address:e,accountId:void 0,connectWallet:t?.wallet,validating:!0};return this._ee.emit("change:status",r),t&&(this.walletClient=this.getWalletAdapter({...t,address:e})),await this._checkAccount(e)}get stateValue(){return this._state}get accountId(){return this.stateValue.accountId}get accountIdHashStr(){if(!this.address)throw new Error("address is error");let e=this.configStore.get("brokerId");return dt(this.address,e)}get address(){return this.stateValue.address}get chainId(){return this.walletClient?.chainId}_bindEvents(){this._ee.addListener("change:status",e=>{this._state=e})}async _checkAccount(e){let t;try{let r=await this._checkAccountExist(e);if(r&&r.account_id)this.keyStore.setAccountId(e,r.account_id),t={...this.stateValue,status:I.AccountStatusEnum.SignedIn,accountId:r.account_id,userId:r.user_id},this._ee.emit("change:status",t);else return t={...this.stateValue,validating:!1,status:I.AccountStatusEnum.NotSignedIn},this._ee.emit("change:status",t),I.AccountStatusEnum.NotSignedIn;let a=this.keyStore.getOrderlyKey();if(!a)return this._ee.emit("change:status",{...this.stateValue,isNew:!1,validating:!1,status:I.AccountStatusEnum.DisabledTrading}),I.AccountStatusEnum.DisabledTrading;let i=await a.getPublicKey(),s=await this._checkOrderlyKeyState(r.account_id,i);if(s&&s.orderly_key&&s.key_status==="ACTIVE"){let u=Date.now(),p=s.expiration;return u>p?(this.keyStore.cleanKey(e,"orderlyKey"),I.AccountStatusEnum.DisabledTrading):(this._ee.emit("change:status",{...this.stateValue,validating:!1,status:I.AccountStatusEnum.EnableTrading}),I.AccountStatusEnum.EnableTrading)}return this.keyStore.cleanKey(e,"orderlyKey"),I.AccountStatusEnum.NotConnected}catch{}return I.AccountStatusEnum.NotSignedIn}async _checkAccountExist(e){let t=await this._getAccountInfo();return t.success?t.data:null}async createAccount(){if(!this.walletClient)return Promise.reject("walletClient is undefined");let{nonce:e,timestamp:t}=await this._getRegisterationNonce(),r=this.stateValue.address;if(!r)throw new Error("address is undefined");let[a,i]=De({registrationNonce:e,chainId:this.walletClient.chainId,brokerId:this.configStore.get("brokerId"),timestamp:t}),s=await this.signTypedData(i),u=await this._simpleFetch("/v1/register_account",{method:"POST",body:JSON.stringify({signature:s,message:a,userAddress:r}),headers:{"Content-Type":"application/json"}});if(u.success){this.keyStore.setAccountId(r,u.data.account_id);let p={...this.stateValue,status:I.AccountStatusEnum.DisabledTrading,accountId:u.data.account_id,userId:u.data.user_id,isNew:!0};return this._ee.emit("change:status",p),u}}async signTypedData(e){return this.walletClient?await this.walletClient.signTypedData(this.stateValue.address,JSON.stringify(e)):Promise.reject("walletClient is undefined")}async createOrderlyKey(e){if(this.stateValue.accountId===void 0)throw new Error("account id is undefined");if(!this.walletClient)throw new Error("walletClient is undefined");let t="AddOrderlyKey",r=this.keyStore.generateKey(),a=await r.getPublicKey(),i=await this._getTimestampFromServer(),[s,u]=Pe({publicKey:a,chainId:this.walletClient.chainId,primaryType:t,expiration:e,brokerId:this.configStore.get("brokerId"),timestamp:i}),p=this.stateValue.address;if(!p)throw new Error("address is undefined");let c=await this.signTypedData(u),y=await this._simpleFetch("/v1/orderly_key",{method:"POST",body:JSON.stringify({signature:c,message:s,userAddress:p}),headers:{"X-Account-Id":this.stateValue.accountId,"Content-Type":"application/json"}});if(y.success){this.keyStore.setKey(p,r);let l={...this.stateValue,status:I.AccountStatusEnum.EnableTrading};return this._ee.emit("change:status",l),y}else throw new Error(y.message)}async settle(){if(!this.walletClient)return Promise.reject("walletClient is undefined");let e=await this._getSettleNonce(),t=this.stateValue.address,r=this.getDomain(!0),a="/v1/settle_pnl",[i,s]=Ke({settlePnlNonce:e,chainId:this.walletClient.chainId,brokerId:this.configStore.get("brokerId"),domain:r}),p={signature:await this.signTypedData(s),message:i,userAddress:t,verifyingContract:r.verifyingContract},c={method:"POST",url:a,data:p},y=await this.signer.sign(c,ve()),l=await this._simpleFetch(a,{method:"POST",body:JSON.stringify(p),headers:{"Content-Type":"application/json","orderly-account-id":this.stateValue.accountId,...y}});return l.success?Promise.resolve(l):Promise.reject(l)}async disconnect(){let e={...this.stateValue,status:I.AccountStatusEnum.NotConnected,accountId:void 0,userId:void 0,address:void 0};this._ee.emit("change:status",e)}switchChainId(e){e=this.parseChainId(e),this.walletClient&&(this.walletClient.chainId=e)}parseChainId(e){return typeof e=="string"&&(we(e)||e.startsWith("0x")&&we(e.slice(2)))&&(e=parseInt(e,16)),e}async _checkOrderlyKeyState(e,t){let r=await this._simpleFetch(`/v1/get_orderly_key?account_id=${e}&orderly_key=${t}`);if(r.success)return r.data;throw new Error(r.message)}get signer(){return this._singer||(this._singer=new q(this.keyStore)),this._singer}get wallet(){return this.walletClient}async _getRegisterationNonce(){let e=await this._simpleFetch("/v1/registration_nonce",{headers:{"orderly-account-id":this.stateValue.accountId}});if(e.success)return{nonce:e.data?.registration_nonce,timestamp:e.timestamp};throw new Error(e.message)}async _getTimestampFromServer(){let e=await this._getAccountInfo();if(e.success)return e.timestamp;throw new Ve.SDKError("get timestamp error")}async _getAccountInfo(){let e=this.configStore.get("brokerId");return await this._simpleFetch(`/v1/get_account?address=${this.address}&broker_id=${e}`)}async _getSettleNonce(){let e=Date.now().toString(),r=[e,"GET","/v1/settle_nonce"].join(""),a=this.signer,{publicKey:i,signature:s}=await a.signText(r),u=await this._simpleFetch("/v1/settle_nonce",{headers:{"orderly-account-id":this.stateValue.accountId,"orderly-key":i,"orderly-timestamp":e,"orderly-signature":s}});if(u.success)return u.data?.settle_nonce;throw new Error(u.message)}async _simpleFetch(e,t={}){let r=`${this.configStore.get("apiBaseUrl")}${e}`;return fetch(r,t).then(a=>a.json())}getDomain(e){if(!this.walletClient)throw new Error("walletClient is undefined");return{name:"Orderly",version:"1",chainId:this.walletClient.chainId,verifyingContract:e?this.contractManger.getContractInfoByEnv().verifyContractAddress:"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"}}get on(){return this._ee.on.bind(this._ee)}get once(){return this._ee.once.bind(this._ee)}get off(){return this._ee.off.bind(this._ee)}};xe.instanceName="account";m();m();var Sr={mainnet:{apiBaseUrl:"https://api-evm.orderly.org",publicWsUrl:"wss://ws-evm.orderly.org",privateWsUrl:"wss://ws-private-evm.orderly.org",operatorUrl:"https://operator-evm.orderly.org"},testnet:{apiBaseUrl:"https://testnet-api-evm.orderly.org",publicWsUrl:"wss://testnet-ws-evm.orderly.org",privateWsUrl:"wss://testnet-ws-private-evm.orderly.org",operatorUrl:"https://testnet-operator-evm.orderly.org"}},Le=class{constructor(e){let t=e.env||"prod",r=e.networkId||"mainnet",a=Sr[r];this.map=new Map([["brokerId",e.brokerId],["env",t],["apiBaseUrl",a.apiBaseUrl],["publicWsUrl",a.publicWsUrl],["privateWsUrl",a.privateWsUrl],["operatorUrl",a.operatorUrl],["networkId",r]])}get(e){return this.map.get(e)}getOr(e,t){return this.map.get(e)??t}set(e,t){this.map.set(e,t)}clear(){throw new Error("Method not implemented.")}};m();m();var N=require("ethers");m();var R={TRANSACTION_RAN_OUT_OF_GAS:"TRANSACTION_RAN_OUT_OF_GAS",TRANSACTION_UNDERPRICED:"TRANSACTION_UNDERPRICED",REJECTED_TRANSACTION:"REJECTED_TRANSACTION",CALL_REVERTED:"CALL_REVERTED",EXECUTION_REVERTED:"EXECUTION_REVERTED",NONCE_TOO_LOW:"NONCE_TOO_LOW",INSUFFICIENT_FUNDS_FOR_GAS:"INSUFFICIENT_FUNDS_FOR_GAS",MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS:"MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS",MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE:"MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE",UNKNOWN_ERROR:"UNKNOWN_ERROR"},We={NONCE_EXPIRED:"NONCE_EXPIRED",UNPREDICTABLE_GAS_LIMIT:"UNPREDICTABLE_GAS_LIMIT",ACTION_REJECTED:"ACTION_REJECTED",CALL_EXCEPTION:"CALL_EXCEPTION"},fe={REJECTED_TRANSACTION:4001,REQUIRE_TRANSACTION:-32603,ERROR_WHILE_FORMATTING_OUTPUT_FROM_RPC:-32603,TRANSACTION_UNDERPRICED:-32e3};function Mr(n,e){var t;if(n!==fe.ERROR_WHILE_FORMATTING_OUTPUT_FROM_RPC)return;let r=(t=e.split("RPC '")[1])==null?void 0:t.slice(0,-1);if(r!==void 0)try{let a=JSON.parse(r);if(a.value===void 0||a.value.data===void 0)return;if(a.value.data.code===fe.TRANSACTION_UNDERPRICED)return{errorCode:R.TRANSACTION_UNDERPRICED,context:void 0}}catch{return}}function kr(n){let e=n.code,t=n.message;if(e!==void 0){if(t!==void 0){let r=Mr(e,t);if(r!==void 0)return r}if(e===fe.REJECTED_TRANSACTION)return{errorCode:R.REJECTED_TRANSACTION,context:t};if(e===fe.REQUIRE_TRANSACTION&&t!==void 0&&t.includes("execution reverted: "))return{errorCode:R.EXECUTION_REVERTED,context:t.slice(20)}}}function Rr(n){if(n.code===We.UNPREDICTABLE_GAS_LIMIT){if(n.error!==void 0&&n.error.code===fe.REQUIRE_TRANSACTION&&n.error.data!==void 0&&n.error.data.message!==void 0){let e=n.error.data.message;if(e.includes("execution reverted: "))return{errorCode:R.EXECUTION_REVERTED,context:e.slice(20)}}if(n.error!==void 0&&n.error.error!==void 0&&n.error.error.error!==void 0&&n.error.error.error.code===fe.TRANSACTION_UNDERPRICED&&n.error.error.body!==void 0)try{let e=JSON.parse(n.error.error.body);if(e.error!==void 0&&e.error.message!==void 0){if(e.error.message.includes("gas required exceeds allowance (0)"))return{errorCode:R.INSUFFICIENT_FUNDS_FOR_GAS,context:void 0};if(e.error.message.includes("max priority fee per gas higher than max fee per gas"))return{errorCode:R.MAX_PRIORITY_FEE_PER_GAS_HIGHER_THAN_MAX_FEE_PER_GAS,context:void 0};if(e.error.message.includes("max fee per gas less than block base fee"))return{errorCode:R.MAX_FEE_PER_GAS_LESS_THAN_BLOCK_BASE_FEE,context:void 0}}}catch{return}}}function Br(n){if(n.code===We.NONCE_EXPIRED&&n.transaction!==void 0)return{errorCode:R.NONCE_TOO_LOW,context:n.transaction.nonce.toString()};if(n.code===We.ACTION_REJECTED&&n.action==="sendTransaction")return{errorCode:R.REJECTED_TRANSACTION,context:n.message};if(n.code===We.CALL_EXCEPTION&&n.reason!==void 0)return{errorCode:R.CALL_REVERTED,context:n.reason};let e=Rr(n);if(e!==void 0)return e}function Ge(n){let e=n,t=n.error,r=Br(e);if(r!==void 0)return r;if(t!==void 0){let a=kr(t);if(a!==void 0)return a}if(e.transaction!==void 0&&e.receipt!==void 0){let a=e.transaction.gasLimit;if(e.receipt.gasUsed.gte(a))return{errorCode:R.TRANSACTION_RAN_OUT_OF_GAS,context:e.transaction.gasLimit.toString()}}return n.error!==void 0&&n.error.message!==void 0?{errorCode:R.UNKNOWN_ERROR,context:n.error.message}:e.code!==void 0?{errorCode:R.UNKNOWN_ERROR,context:e.code.toString()}:{errorCode:R.UNKNOWN_ERROR,context:void 0}}var ze=class{constructor(e){this._chainId=e.chain.id,this.provider=new N.BrowserProvider(e.provider,"any"),this._address=e.address}parseUnits(e){return N.ethers.parseUnits(e,6).toString()}formatUnits(e){return N.ethers.formatUnits(e,6)}getBalance(e){return this.provider.getBalance(e).then(t=>t,t=>{})}deposit(e,t,r){throw new Error("Method not implemented.")}async call(e,t,r,a){let i=await this.provider?.getSigner();return new N.ethers.Contract(e,a.abi,i)[t].apply(null,r).catch(u=>{throw Ge(u)})}async callOnChain(e,t,r,a,i){let s=new N.ethers.JsonRpcProvider(e.public_rpc_url);return new N.ethers.Contract(t,i.abi,s)[r].apply(null,a).catch(p=>{throw Ge(p)})}get chainId(){return this._chainId}set chainId(e){this._chainId=e}get addresses(){return this._address}async send(e,t){return await this.provider?.send(e,t)}async sendTransaction(e,t,r,a){let i=await this.provider?.getSigner();if(!i)throw new Error("singer is not exist");let u=new N.ethers.Contract(e,a.abi,this.provider).interface.encodeFunctionData(t,r.data),p={from:r.from,to:r.to,data:u,value:r.value};try{return await i.sendTransaction(p)}catch(c){throw Ge(c)}}async getTransactionRecipect(e){await this.provider.getTransactionReceipt(e)}async pollTransactionReceiptWithBackoff(e,t=1e3,r=6e3,a=30){let i=t,s=0;for(;s<a;){try{let u=await this.provider.getTransactionReceipt(e);if(u)return u}catch{}await new Promise(u=>setTimeout(u,i)),i=Math.min(i*2,r),s++}throw new Error("Transaction did not complete after maximum retries.")}async estimateGas(e){let t=await this.provider.estimateGas(e);return(0,N.toNumber)(t)}async signTypedData(e,t){return await this.provider?.send("eth_signTypedData_v4",[e,t])}async verify(e,t){let{domain:r,types:a,message:i}=e,s=N.ethers.verifyTypedData(r,a,i,t)}on(e,t){this.provider?.on(e,t)}off(e,t){this.provider?.off(e,t)}getContract(e,t){return new N.ethers.Contract(e,t,this.provider)}};0&&(module.exports={Account,BaseContractManager,BaseKeyStore,BaseOrderlyKeyPair,BaseSigner,DefaultConfigStore,EtherAdapter,EventEmitter,LocalStorageStore,MockKeyStore,SimpleDI,generateAddOrderlyKeyMessage,generateRegisterAccountMessage,generateSettleMessage,getDefaultSigner,getMockSigner,utils});
2
2
  /*! Bundled license information:
3
3
 
4
4
  ieee754/index.js: