zetalink
Version:
ZetaLink enables users to bridge and cross-chain transfer native Bitcoin to select ZRC20 tokens across ZetaChain, Ethereum, Binance Smart Chain & Polygon, offering seamless cross-chain functionality and enhanced interoperability
1 lines • 326 kB
JavaScript
(()=>{var e,t,r={46:e=>{"use strict";var t,r="object"==typeof Reflect?Reflect:null,n=r&&"function"==typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}y(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"==typeof e.on&&y(e,"error",t,r)}(e,i,{once:!0})}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var s=10;function a(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function f(e,t,r,n){var i,o,s,f;if(a(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),s=o[t]),void 0===s)s=o[t]=r,++e._eventsCount;else if("function"==typeof s?s=o[t]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),(i=u(e))>0&&s.length>i&&!s.warned){s.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=s.length,f=c,console&&console.warn&&console.warn(f)}return e}function c(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=c.bind(n);return i.listener=r,n.wrapFn=i,i}function l(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}(i):d(i,i.length)}function p(e){var t=this._events;if(void 0!==t){var r=t[e];if("function"==typeof r)return 1;if(void 0!==r)return r.length}return 0}function d(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function y(e,t,r,n){if("function"==typeof e.on)n.once?e.once(t,r):e.on(t,r);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function i(o){n.once&&e.removeEventListener(t,i),r(o)}))}}Object.defineProperty(o,"defaultMaxListeners",{enumerable:!0,get:function(){return s},set:function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");s=e}}),o.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},o.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||i(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},o.prototype.getMaxListeners=function(){return u(this)},o.prototype.emit=function(e){for(var t=[],r=1;r<arguments.length;r++)t.push(arguments[r]);var i="error"===e,o=this._events;if(void 0!==o)i=i&&void 0===o.error;else if(!i)return!1;if(i){var s;if(t.length>0&&(s=t[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=o[e];if(void 0===u)return!1;if("function"==typeof u)n(u,this,t);else{var f=u.length,c=d(u,f);for(r=0;r<f;++r)n(c[r],this,t)}return!0},o.prototype.addListener=function(e,t){return f(this,e,t,!1)},o.prototype.on=o.prototype.addListener,o.prototype.prependListener=function(e,t){return f(this,e,t,!0)},o.prototype.once=function(e,t){return a(t),this.on(e,h(this,e,t)),this},o.prototype.prependOnceListener=function(e,t){return a(t),this.prependListener(e,h(this,e,t)),this},o.prototype.removeListener=function(e,t){var r,n,i,o,s;if(a(t),void 0===(n=this._events))return this;if(void 0===(r=n[e]))return this;if(r===t||r.listener===t)0===--this._eventsCount?this._events=Object.create(null):(delete n[e],n.removeListener&&this.emit("removeListener",e,r.listener||t));else if("function"!=typeof r){for(i=-1,o=r.length-1;o>=0;o--)if(r[o]===t||r[o].listener===t){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(r,i),1===r.length&&(n[e]=r[0]),void 0!==n.removeListener&&this.emit("removeListener",e,s||t)}return this},o.prototype.off=o.prototype.removeListener,o.prototype.removeAllListeners=function(e){var t,r,n;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete r[e]),this;if(0===arguments.length){var i,o=Object.keys(r);for(n=0;n<o.length;++n)"removeListener"!==(i=o[n])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=r[e]))this.removeListener(e,t);else if(void 0!==t)for(n=t.length-1;n>=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return l(this,e,!0)},o.prototype.rawListeners=function(e){return l(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},o.prototype.listenerCount=p,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},71:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ripemd160=t.RIPEMD160=void 0;const n=r(7712);t.RIPEMD160=n.RIPEMD160,t.ripemd160=n.ripemd160},82:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t,r){return(t=a(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,a(n.key),n)}}function a(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}var u=r(1048).Buffer,f=r(3011).inspect,c=f&&f.custom||"inspect";e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}var t,r,n;return t=e,(r=[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return u.alloc(0);for(var t,r,n,i=u.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=i,n=s,u.prototype.copy.call(t,r,n),s+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var r;return e<this.head.data.length?(r=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):r=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),r}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(e){var t=this.head,r=1,n=t.data;for(e-=n.length;t=t.next;){var i=t.data,o=e>i.length?i.length:e;if(o===i.length?n+=i:n+=i.slice(0,e),0===(e-=o)){o===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=u.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0===(e-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,t}},{key:c,value:function(e,t){return f(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&s(t.prototype,r),n&&s(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},146:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.maybe=t.Boolean=t.Array=t.Buffer256bit=t.Network=t.typeforce=void 0,t.typeforce=r(973),t.Network=t.typeforce.compile({messagePrefix:t.typeforce.oneOf(t.typeforce.Buffer,t.typeforce.String),bip32:{public:t.typeforce.UInt32,private:t.typeforce.UInt32},pubKeyHash:t.typeforce.UInt8,scriptHash:t.typeforce.UInt8,wif:t.typeforce.UInt8}),t.Buffer256bit=t.typeforce.BufferN(32),t.Array=t.typeforce.Array,t.Boolean=t.typeforce.Boolean,t.maybe=t.typeforce.maybe},195:(e,t,r)=>{"use strict";var n=r(1048).Buffer;Object.defineProperty(t,"__esModule",{value:!0}),t.encode=t.decode=t.check=void 0,t.check=function(e){if(e.length<8)return!1;if(e.length>72)return!1;if(48!==e[0])return!1;if(e[1]!==e.length-2)return!1;if(2!==e[2])return!1;const t=e[3];if(0===t)return!1;if(5+t>=e.length)return!1;if(2!==e[4+t])return!1;const r=e[5+t];return 0!==r&&(6+t+r===e.length&&(!(128&e[4])&&(!(t>1&&0===e[4]&&!(128&e[5]))&&(!(128&e[t+6])&&!(r>1&&0===e[t+6]&&!(128&e[t+7]))))))},t.decode=function(e){if(e.length<8)throw new Error("DER sequence length is too short");if(e.length>72)throw new Error("DER sequence length is too long");if(48!==e[0])throw new Error("Expected DER sequence");if(e[1]!==e.length-2)throw new Error("DER sequence length is invalid");if(2!==e[2])throw new Error("Expected DER integer");const t=e[3];if(0===t)throw new Error("R length is zero");if(5+t>=e.length)throw new Error("R length is too long");if(2!==e[4+t])throw new Error("Expected DER integer (2)");const r=e[5+t];if(0===r)throw new Error("S length is zero");if(6+t+r!==e.length)throw new Error("S length is invalid");if(128&e[4])throw new Error("R value is negative");if(t>1&&0===e[4]&&!(128&e[5]))throw new Error("R value excessively padded");if(128&e[t+6])throw new Error("S value is negative");if(r>1&&0===e[t+6]&&!(128&e[t+7]))throw new Error("S value excessively padded");return{r:e.slice(4,4+t),s:e.slice(6+t)}},t.encode=function(e,t){const r=e.length,i=t.length;if(0===r)throw new Error("R length is zero");if(0===i)throw new Error("S length is zero");if(r>33)throw new Error("R length is too long");if(i>33)throw new Error("S length is too long");if(128&e[0])throw new Error("R value is negative");if(128&t[0])throw new Error("S value is negative");if(r>1&&0===e[0]&&!(128&e[1]))throw new Error("R value excessively padded");if(i>1&&0===t[0]&&!(128&t[1]))throw new Error("S value excessively padded");const o=n.allocUnsafe(6+r+i);return o[0]=48,o[1]=o.length-2,o[2]=2,o[3]=e.length,e.copy(o,4),o[4+r]=2,o[5+r]=t.length,t.copy(o,6+r),o}},241:(e,t,r)=>{"use strict";var n=r(1048).Buffer;Object.defineProperty(t,"__esModule",{value:!0});const i=r(9889);function o(e){return n.isBuffer(e)&&32===e.length}t.decode=function(e){if(e.key[0]!==i.InputTypes.TAP_MERKLE_ROOT||1!==e.key.length)throw new Error("Decode Error: could not decode tapMerkleRoot with key 0x"+e.key.toString("hex"));if(!o(e.value))throw new Error("Decode Error: tapMerkleRoot not a 32-byte hash");return e.value},t.encode=function(e){return{key:n.from([i.InputTypes.TAP_MERKLE_ROOT]),value:e}},t.expected="Buffer",t.check=o,t.canAdd=function(e,t){return!!e&&!!t&&void 0===e.tapMerkleRoot}},242:(e,t,r)=>{"use strict";var n=r(8019),i=r(4212),o=r(8463);function s(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var a=s(i),u=s(o);const f=n.secp256k1.ProjectivePoint,c="Expected Private",h="Expected Point",l="Expected Tweak",p="Expected Signature",d="Expected Extra Data (32 bytes)",y="Expected Scalar",w=new Uint8Array([255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,186,174,220,230,175,72,160,59,191,210,94,140,208,54,65,65]),b=new Uint8Array(32),g=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,69,81,35,25,80,183,95,196,64,45,161,114,47,201,186,238]),m=BigInt(1);function _(e,t){for(let r=0;r<32;++r)if(e[r]!==t[r])return e[r]<t[r]?-1:1;return 0}function E(e){return 0===_(e,b)}function v(e){return e instanceof Uint8Array&&32===e.length&&!(_(e,w)>=0)}function S(e){return e instanceof Uint8Array&&64===e.length&&_(e.subarray(0,32),w)<0&&_(e.subarray(32,64),w)<0}function T(e){return e instanceof Uint8Array&&64===e.length&&_(e.subarray(0,32),g)<0}function I(e){return e instanceof Uint8Array&&32===e.length}function k(e){return void 0===e||e instanceof Uint8Array&&32===e.length}function A(e){let t;if("bigint"==typeof e)t=e;else if("number"==typeof e&&Number.isSafeInteger(e)&&e>=0)t=BigInt(e);else if("string"==typeof e){if(64!==e.length)throw new Error("Expected 32 bytes of private scalar");t=u.hexToNumber(e)}else{if(!(e instanceof Uint8Array))throw new TypeError("Expected valid private scalar");if(32!==e.length)throw new Error("Expected 32 bytes of private scalar");t=u.bytesToNumberBE(e)}if(t<0)throw new Error("Expected private scalar >= 0");return t}function O(e){return n.secp256k1.utils.normPrivateKeyToScalar(e)}function B(e,t,r){const n=U(e),i=A(t),o=f.BASE.multiplyAndAddUnsafe(n,i,m);if(!o)throw new Error("Tweaked point at infinity");return o.toRawBytes(r)}function P(e,t){return void 0===e?void 0===t||L(t):!!e}function x(e){try{return e()}catch(e){return null}}function R(e){return n.schnorr.utils.lift_x(u.bytesToNumberBE(e))}function U(e){return 32===e.length?R(e):f.fromHex(e)}function N(e,t){if(32===e.length!==t)return!1;try{return t?!!R(e):!!f.fromHex(e)}catch(e){return!1}}function H(e){return N(e,!1)}function L(e){return N(e,!1)&&33===e.length}function C(e){return n.secp256k1.utils.isValidPrivateKey(e)}function M(e){return N(e,!0)}function D(e){if(!H(e))throw new Error(h);return e.slice(1,33)}function F(e,t){if(!C(e))throw new Error(c);return x((()=>n.secp256k1.getPublicKey(e,P(t))))}t.isPoint=H,t.isPointCompressed=L,t.isPrivate=C,t.isXOnlyPoint=M,t.pointAdd=function(e,t,r){if(!H(e)||!H(t))throw new Error(h);return x((()=>{const n=U(e),i=U(t);return n.equals(i.negate())?null:n.add(i).toRawBytes(P(r,e))}))},t.pointAddScalar=function(e,t,r){if(!H(e))throw new Error(h);if(!v(t))throw new Error(l);return x((()=>B(e,t,P(r,e))))},t.pointCompress=function(e,t){if(!H(e))throw new Error(h);return U(e).toRawBytes(P(t,e))},t.pointFromScalar=F,t.pointMultiply=function(e,t,r){if(!H(e))throw new Error(h);if(!v(t))throw new Error(l);return x((()=>function(e,t,r){const n=U(e),i="string"==typeof t?t:u.bytesToHex(t),o=u.hexToNumber(i);return n.multiply(o).toRawBytes(r)}(e,t,P(r,e))))},t.privateAdd=function(e,t){if(!C(e))throw new Error(c);if(!v(t))throw new Error(l);return x((()=>function(e,t){const r=O(e),i=A(t),o=u.numberToBytesBE(a.mod(r+i,n.secp256k1.CURVE.n),32);return n.secp256k1.utils.isValidPrivateKey(o)?o:null}(e,t)))},t.privateNegate=function(e){if(!C(e))throw new Error(c);return function(e){const t=O(e),r=u.numberToBytesBE(n.secp256k1.CURVE.n-t,32);return n.secp256k1.utils.isValidPrivateKey(r)?r:null}(e)},t.privateSub=function(e,t){if(!C(e))throw new Error(c);if(!v(t))throw new Error(l);return x((()=>function(e,t){const r=O(e),i=A(t),o=u.numberToBytesBE(a.mod(r-i,n.secp256k1.CURVE.n),32);return n.secp256k1.utils.isValidPrivateKey(o)?o:null}(e,t)))},t.recover=function(e,t,r,i){if(!I(e))throw new Error("Expected Hash");if(!S(t)||!function(e){return!(E(e.subarray(0,32))||E(e.subarray(32,64)))}(t))throw new Error(p);if(2&r&&!T(t))throw new Error("Bad Recovery Id");if(!M(t.subarray(0,32)))throw new Error(p);const o=n.secp256k1.Signature.fromCompact(t).addRecoveryBit(r).recoverPublicKey(e);if(!o)throw new Error(p);return o.toRawBytes(P(i))},t.sign=function(e,t,r){if(!C(t))throw new Error(c);if(!I(e))throw new Error(y);if(!k(r))throw new Error(d);return n.secp256k1.sign(e,t,{extraEntropy:r}).toCompactRawBytes()},t.signRecoverable=function(e,t,r){if(!C(t))throw new Error(c);if(!I(e))throw new Error(y);if(!k(r))throw new Error(d);const i=n.secp256k1.sign(e,t,{extraEntropy:r});return{signature:i.toCompactRawBytes(),recoveryId:i.recovery}},t.signSchnorr=function(e,t,r){if(!C(t))throw new Error(c);if(!I(e))throw new Error(y);if(!k(r))throw new Error(d);return n.schnorr.sign(e,t,r)},t.verify=function(e,t,r,i){if(!H(t))throw new Error(h);if(!S(r))throw new Error(p);if(!I(e))throw new Error(y);return n.secp256k1.verify(r,e,t,{lowS:i})},t.verifySchnorr=function(e,t,r){if(!M(t))throw new Error(h);if(!S(r))throw new Error(p);if(!I(e))throw new Error(y);return n.schnorr.verify(r,e,t)},t.xOnlyPointAddTweak=function(e,t){if(!M(e))throw new Error(h);if(!v(t))throw new Error(l);return x((()=>{const r=B(e,t,!0);return{parity:r[0]%2==1?1:0,xOnlyPubkey:r.slice(1)}}))},t.xOnlyPointFromPoint=D,t.xOnlyPointFromScalar=function(e){if(!C(e))throw new Error(c);return D(F(e))}},271:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.p2data=void 0;const n=r(2529),i=r(4009),o=r(5593),s=r(9158),a=i.OPS;t.p2data=function(e,t){if(!e.data&&!e.output)throw new TypeError("Not enough data");t=Object.assign({validate:!0},t||{}),(0,o.typeforce)({network:o.typeforce.maybe(o.typeforce.Object),output:o.typeforce.maybe(o.typeforce.Buffer),data:o.typeforce.maybe(o.typeforce.arrayOf(o.typeforce.Buffer))},e);const r={name:"embed",network:e.network||n.bitcoin};if(s.prop(r,"output",(()=>{if(e.data)return i.compile([a.OP_RETURN].concat(e.data))})),s.prop(r,"data",(()=>{if(e.output)return i.decompile(e.output).slice(1)})),t.validate&&e.output){const t=i.decompile(e.output);if(t[0]!==a.OP_RETURN)throw new TypeError("Output is invalid");if(!t.slice(1).every(o.typeforce.Buffer))throw new TypeError("Output is invalid");if(e.data&&!(0,o.stacksEqual)(e.data,r.data))throw new TypeError("Data mismatch")}return Object.assign(r,e)}},315:(e,t,r)=>{var n=r(1048).Buffer,i=r(2890),o=r(4322);function s(e){return n.isBuffer(e)}function a(e){return"string"==typeof e&&/^([0-9a-f]{2})+$/i.test(e)}function u(e,t){var r=e.toJSON();function n(n){if(!e(n))return!1;if(n.length===t)return!0;throw o.tfCustomError(r+"(Length: "+t+")",r+"(Length: "+n.length+")")}return n.toJSON=function(){return r},n}var f=u.bind(null,i.Array),c=u.bind(null,s),h=u.bind(null,a),l=u.bind(null,i.String);var p=Math.pow(2,53)-1;var d={ArrayN:f,Buffer:s,BufferN:c,Finite:function(e){return"number"==typeof e&&isFinite(e)},Hex:a,HexN:h,Int8:function(e){return e<<24>>24===e},Int16:function(e){return e<<16>>16===e},Int32:function(e){return(0|e)===e},Int53:function(e){return"number"==typeof e&&e>=-p&&e<=p&&Math.floor(e)===e},Range:function(e,t,r){function n(n,i){return r(n,i)&&n>e&&n<t}return r=r||i.Number,n.toJSON=function(){return`${r.toJSON()} between [${e}, ${t}]`},n},StringN:l,UInt8:function(e){return(255&e)===e},UInt16:function(e){return(65535&e)===e},UInt32:function(e){return e>>>0===e},UInt53:function(e){return"number"==typeof e&&e>=0&&e<=p&&Math.floor(e)===e}};for(var y in d)d[y].toJSON=function(e){return e}.bind(null,y);e.exports=d},337:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wNAF=function(e,t){return{constTimeNegate:a,hasPrecomputes:e=>1!==y(e),unsafeLadder(t,r,n=e.ZERO){let i=t;for(;r>o;)r&s&&(n=n.add(i)),i=i.double(),r>>=s;return n},precomputeWindow(e,r){const{windows:n,windowSize:i}=f(r,t),o=[];let s=e,a=s;for(let e=0;e<n;e++){a=s,o.push(a);for(let e=1;e<i;e++)a=a.add(s),o.push(a);s=a.double()}return o},wNAF(r,n,i){let o=e.ZERO,s=e.BASE;const u=f(r,t);for(let e=0;e<u.windows;e++){const{nextN:t,offset:r,isZero:f,isNeg:h,isNegF:l,offsetF:p}=c(i,e,u);i=t,f?s=s.add(a(l,n[p])):o=o.add(a(h,n[r]))}return{p:o,f:s}},wNAFUnsafe(r,n,i,s=e.ZERO){const a=f(r,t);for(let e=0;e<a.windows&&i!==o;e++){const{nextN:t,offset:r,isZero:o,isNeg:u}=c(i,e,a);if(i=t,!o){const e=n[r];s=s.add(u?e.negate():e)}}return s},getPrecomputes(e,t,r){let n=p.get(t);return n||(n=this.precomputeWindow(t,e),1!==e&&p.set(t,r(n))),n},wNAFCached(e,t,r){const n=y(e);return this.wNAF(n,this.getPrecomputes(n,e,r),t)},wNAFCachedUnsafe(e,t,r,n){const i=y(e);return 1===i?this.unsafeLadder(e,t,n):this.wNAFUnsafe(i,this.getPrecomputes(i,e,r),t,n)},setWindowSize(e,r){u(r,t),d.set(e,r),p.delete(e)}}},t.pippenger=function(e,t,r,n){h(r,e),l(n,t);const o=r.length,s=n.length;if(o!==s)throw new Error("arrays of points and scalars must have equal length");const a=e.ZERO,u=(0,i.bitLen)(BigInt(o));let f=1;u>12?f=u-3:u>4?f=u-2:u>0&&(f=2);const c=(0,i.bitMask)(f),p=new Array(Number(c)+1).fill(a),d=Math.floor((t.BITS-1)/f)*f;let y=a;for(let e=d;e>=0;e-=f){p.fill(a);for(let t=0;t<s;t++){const i=n[t],o=Number(i>>BigInt(e)&c);p[o]=p[o].add(r[t])}let t=a;for(let e=p.length-1,r=a;e>0;e--)r=r.add(p[e]),t=t.add(r);if(y=y.add(t),0!==e)for(let e=0;e<f;e++)y=y.double()}return y},t.precomputeMSMUnsafe=function(e,t,r,n){u(n,t.BITS),h(r,e);const o=e.ZERO,s=2**n-1,a=Math.ceil(t.BITS/n),f=(0,i.bitMask)(n),c=r.map((e=>{const t=[];for(let r=0,n=e;r<s;r++)t.push(n),n=n.add(e);return t}));return e=>{if(l(e,t),e.length>r.length)throw new Error("array of scalars must be smaller than array of points");let i=o;for(let t=0;t<a;t++){if(i!==o)for(let e=0;e<n;e++)i=i.double();const r=BigInt(a*n-(t+1)*n);for(let t=0;t<e.length;t++){const n=e[t],o=Number(n>>r&f);o&&(i=i.add(c[t][o-1]))}}return i}},t.validateBasic=function(e){return(0,n.validateField)(e.Fp),(0,i.validateObject)(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...(0,n.nLength)(e.n,e.nBitLength),...e,p:e.Fp.ORDER})};const n=r(4212),i=r(8463),o=BigInt(0),s=BigInt(1);function a(e,t){const r=t.negate();return e?r:t}function u(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function f(e,t){u(e,t);const r=2**e;return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1),mask:(0,i.bitMask)(e),maxNumber:r,shiftBy:BigInt(e)}}function c(e,t,r){const{windowSize:n,mask:i,maxNumber:o,shiftBy:a}=r;let u=Number(e&i),f=e>>a;u>n&&(u-=o,f+=s);const c=t*n;return{nextN:f,offset:c+Math.abs(u)-1,isZero:0===u,isNeg:u<0,isNegF:t%2!=0,offsetF:c}}function h(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach(((e,r)=>{if(!(e instanceof t))throw new Error("invalid point at index "+r)}))}function l(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach(((e,r)=>{if(!t.isValid(e))throw new Error("invalid scalar at index "+r)}))}const p=new WeakMap,d=new WeakMap;function y(e){return d.get(e)||1}},378:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DER=t.DERErr=void 0,t.weierstrassPoints=d,t.weierstrass=function(e){const r=function(e){const t=(0,n.validateBasic)(e);return(0,o.validateObject)(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}(e),{Fp:a,n:h,nByteLength:l,nBitLength:p}=r,y=a.BYTES+1,w=2*a.BYTES+1;function b(e){return(0,i.mod)(e,h)}function g(e){return(0,i.invert)(e,h)}const{ProjectivePoint:m,normPrivateKeyToScalar:_,weierstrassEquation:E,isWithinCurveOrder:v}=d({...r,toBytes(e,t,r){const n=t.toAffine(),i=a.toBytes(n.x),s=o.concatBytes;return(0,o.abool)("isCompressed",r),r?s(Uint8Array.from([t.hasEvenY()?2:3]),i):s(Uint8Array.from([4]),i,a.toBytes(n.y))},fromBytes(e){const t=e.length,r=e[0],n=e.subarray(1);if(t!==y||2!==r&&3!==r){if(t===w&&4===r){return{x:a.fromBytes(n.subarray(0,a.BYTES)),y:a.fromBytes(n.subarray(a.BYTES,2*a.BYTES))}}throw new Error("invalid Point, expected length of "+y+", or uncompressed "+w+", got "+t)}{const e=(0,o.bytesToNumberBE)(n);if(!(0,o.inRange)(e,c,a.ORDER))throw new Error("Point is not on curve");const t=E(e);let i;try{i=a.sqrt(t)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("Point is not on curve"+t)}return!(1&~r)!==((i&c)===c)&&(i=a.neg(i)),{x:e,y:i}}}});function S(e){return e>h>>c}const T=(e,t,r)=>(0,o.bytesToNumberBE)(e.slice(t,r));class I{constructor(e,t,r){(0,o.aInRange)("r",e,c,h),(0,o.aInRange)("s",t,c,h),this.r=e,this.s=t,null!=r&&(this.recovery=r),Object.freeze(this)}static fromCompact(e){const t=l;return e=(0,o.ensureBytes)("compactSignature",e,2*t),new I(T(e,0,t),T(e,t,2*t))}static fromDER(e){const{r,s:n}=t.DER.toSig((0,o.ensureBytes)("DER",e));return new I(r,n)}assertValidity(){}addRecoveryBit(e){return new I(this.r,this.s,e)}recoverPublicKey(e){const{r:t,s:n,recovery:i}=this,s=B((0,o.ensureBytes)("msgHash",e));if(null==i||![0,1,2,3].includes(i))throw new Error("recovery id invalid");const f=2===i||3===i?t+r.n:t;if(f>=a.ORDER)throw new Error("recovery id 2 or 3 invalid");const c=1&i?"03":"02",h=m.fromHex(c+u(f,a.BYTES)),l=g(f),p=b(-s*l),d=b(n*l),y=m.BASE.multiplyAndAddUnsafe(h,p,d);if(!y)throw new Error("point at infinify");return y.assertValidity(),y}hasHighS(){return S(this.s)}normalizeS(){return this.hasHighS()?new I(this.r,b(-this.s),this.recovery):this}toDERRawBytes(){return(0,o.hexToBytes)(this.toDERHex())}toDERHex(){return t.DER.hexFromSig(this)}toCompactRawBytes(){return(0,o.hexToBytes)(this.toCompactHex())}toCompactHex(){const e=l;return u(this.r,e)+u(this.s,e)}}const k={isValidPrivateKey(e){try{return _(e),!0}catch(e){return!1}},normPrivateKeyToScalar:_,randomPrivateKey:()=>{const e=(0,i.getMinHashLength)(r.n);return(0,i.mapHashToField)(r.randomBytes(e),r.n)},precompute:(e=8,t=m.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function A(e){if("bigint"==typeof e)return!1;if(e instanceof m)return!0;const t=(0,o.ensureBytes)("key",e).length,n=a.BYTES,i=n+1,s=2*n+1;return r.allowedPrivateKeyLengths||l===i?void 0:t===i||t===s}const O=r.bits2int||function(e){if(e.length>8192)throw new Error("input is too large");const t=(0,o.bytesToNumberBE)(e),r=8*e.length-p;return r>0?t>>BigInt(r):t},B=r.bits2int_modN||function(e){return b(O(e))},P=(0,o.bitMask)(p);function x(e){return(0,o.aInRange)("num < 2^"+p,e,f,P),(0,o.numberToBytesBE)(e,l)}function R(e,t,n=U){if(["recovered","canonical"].some((e=>e in n)))throw new Error("sign() legacy options not supported");const{hash:i,randomBytes:u}=r;let{lowS:h,prehash:l,extraEntropy:p}=n;null==h&&(h=!0),e=(0,o.ensureBytes)("msgHash",e),s(n),l&&(e=(0,o.ensureBytes)("prehashed msgHash",i(e)));const d=B(e),y=_(t),w=[x(y),x(d)];if(null!=p&&!1!==p){const e=!0===p?u(a.BYTES):p;w.push((0,o.ensureBytes)("extraEntropy",e))}const E=(0,o.concatBytes)(...w),T=d;return{seed:E,k2sig:function(e){const t=O(e);if(!v(t))return;const r=g(t),n=m.BASE.multiply(t).toAffine(),i=b(n.x);if(i===f)return;const o=b(r*b(T+i*y));if(o===f)return;let s=(n.x===i?0:2)|Number(n.y&c),a=o;return h&&S(o)&&(a=function(e){return S(e)?b(-e):e}(o),s^=1),new I(i,a,s)}}}const U={lowS:r.lowS,prehash:!1},N={lowS:r.lowS,prehash:!1};return m.BASE._setWindowSize(8),{CURVE:r,getPublicKey:function(e,t=!0){return m.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,r=!0){if(!0===A(e))throw new Error("first arg must be private key");if(!1===A(t))throw new Error("second arg must be public key");return m.fromHex(t).multiply(_(e)).toRawBytes(r)},sign:function(e,t,n=U){const{seed:i,k2sig:s}=R(e,t,n),a=r;return(0,o.createHmacDrbg)(a.hash.outputLen,a.nByteLength,a.hmac)(i,s)},verify:function(e,n,i,a=N){const u=e;n=(0,o.ensureBytes)("msgHash",n),i=(0,o.ensureBytes)("publicKey",i);const{lowS:f,prehash:c,format:h}=a;if(s(a),"strict"in a)throw new Error("options.strict was renamed to lowS");if(void 0!==h&&"compact"!==h&&"der"!==h)throw new Error("format must be compact or der");const l="string"==typeof u||(0,o.isBytes)(u),p=!l&&!h&&"object"==typeof u&&null!==u&&"bigint"==typeof u.r&&"bigint"==typeof u.s;if(!l&&!p)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let d,y;try{if(p&&(d=new I(u.r,u.s)),l){try{"compact"!==h&&(d=I.fromDER(u))}catch(e){if(!(e instanceof t.DER.Err))throw e}d||"der"===h||(d=I.fromCompact(u))}y=m.fromHex(i)}catch(e){return!1}if(!d)return!1;if(f&&d.hasHighS())return!1;c&&(n=r.hash(n));const{r:w,s:_}=d,E=B(n),v=g(_),S=b(E*v),T=b(w*v),k=m.BASE.multiplyAndAddUnsafe(y,S,T)?.toAffine();if(!k)return!1;return b(k.x)===w},ProjectivePoint:m,Signature:I,utils:k}},t.SWUFpSqrtRatio=y,t.mapToCurveSimpleSWU=function(e,t){if((0,i.validateField)(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const r=y(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return n=>{let o,s,a,u,f,c,h,l;o=e.sqr(n),o=e.mul(o,t.Z),s=e.sqr(o),s=e.add(s,o),a=e.add(s,e.ONE),a=e.mul(a,t.B),u=e.cmov(t.Z,e.neg(s),!e.eql(s,e.ZERO)),u=e.mul(u,t.A),s=e.sqr(a),c=e.sqr(u),f=e.mul(c,t.A),s=e.add(s,f),s=e.mul(s,a),c=e.mul(c,u),f=e.mul(c,t.B),s=e.add(s,f),h=e.mul(o,a);const{isValid:p,value:d}=r(s,c);l=e.mul(o,n),l=e.mul(l,d),h=e.cmov(h,a,p),l=e.cmov(l,d,p);const y=e.isOdd(n)===e.isOdd(l);l=e.cmov(e.neg(l),l,y);const w=(0,i.FpInvertBatch)(e,[u],!0)[0];return h=e.mul(h,w),{x:h,y:l}}};const n=r(337),i=r(4212),o=r(8463);function s(e){void 0!==e.lowS&&(0,o.abool)("lowS",e.lowS),void 0!==e.prehash&&(0,o.abool)("prehash",e.prehash)}class a extends Error{constructor(e=""){super(e)}}function u(e,t){return(0,o.bytesToHex)((0,o.numberToBytesBE)(e,t))}t.DERErr=a,t.DER={Err:a,_tlv:{encode:(e,r)=>{const{Err:n}=t.DER;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(1&r.length)throw new n("tlv.encode: unpadded data");const i=r.length/2,s=(0,o.numberToHexUnpadded)(i);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const a=i>127?(0,o.numberToHexUnpadded)(s.length/2|128):"";return(0,o.numberToHexUnpadded)(e)+a+s+r},decode(e,r){const{Err:n}=t.DER;let i=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(r.length<2||r[i++]!==e)throw new n("tlv.decode: wrong tlv");const o=r[i++];let s=0;if(!!(128&o)){const e=127&o;if(!e)throw new n("tlv.decode(long): indefinite length not supported");if(e>4)throw new n("tlv.decode(long): byte length is too big");const t=r.subarray(i,i+e);if(t.length!==e)throw new n("tlv.decode: length bytes not complete");if(0===t[0])throw new n("tlv.decode(long): zero leftmost byte");for(const e of t)s=s<<8|e;if(i+=e,s<128)throw new n("tlv.decode(long): not minimal encoding")}else s=o;const a=r.subarray(i,i+s);if(a.length!==s)throw new n("tlv.decode: wrong value length");return{v:a,l:r.subarray(i+s)}}},_int:{encode(e){const{Err:r}=t.DER;if(e<f)throw new r("integer: negative integers are not allowed");let n=(0,o.numberToHexUnpadded)(e);if(8&Number.parseInt(n[0],16)&&(n="00"+n),1&n.length)throw new r("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:r}=t.DER;if(128&e[0])throw new r("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new r("invalid signature integer: unnecessary leading zero");return(0,o.bytesToNumberBE)(e)}},toSig(e){const{Err:r,_int:n,_tlv:i}=t.DER,s=(0,o.ensureBytes)("signature",e),{v:a,l:u}=i.decode(48,s);if(u.length)throw new r("invalid signature: left bytes after parsing");const{v:f,l:c}=i.decode(2,a),{v:h,l}=i.decode(2,c);if(l.length)throw new r("invalid signature: left bytes after parsing");return{r:n.decode(f),s:n.decode(h)}},hexFromSig(e){const{_tlv:r,_int:n}=t.DER,i=r.encode(2,n.encode(e.r))+r.encode(2,n.encode(e.s));return r.encode(48,i)}};const f=BigInt(0),c=BigInt(1),h=BigInt(2),l=BigInt(3),p=BigInt(4);function d(e){const t=function(e){const t=(0,n.validateBasic)(e);(0,o.validateObject)(t,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});const{endo:r,Fp:i,a:s}=t;if(r){if(!i.eql(s,i.ZERO))throw new Error("invalid endo: CURVE.a must be 0");if("object"!=typeof r||"bigint"!=typeof r.beta||"function"!=typeof r.splitScalar)throw new Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...t})}(e),{Fp:r}=t,s=(0,i.Field)(t.n,t.nBitLength),a=t.toBytes||((e,t,n)=>{const i=t.toAffine();return(0,o.concatBytes)(Uint8Array.from([4]),r.toBytes(i.x),r.toBytes(i.y))}),u=t.fromBytes||(e=>{const t=e.subarray(1);return{x:r.fromBytes(t.subarray(0,r.BYTES)),y:r.fromBytes(t.subarray(r.BYTES,2*r.BYTES))}});function h(e){const{a:n,b:i}=t,o=r.sqr(e),s=r.mul(o,e);return r.add(r.add(s,r.mul(e,n)),i)}function d(e,t){const n=r.sqr(t),i=h(e);return r.eql(n,i)}if(!d(t.Gx,t.Gy))throw new Error("bad curve params: generator point");const y=r.mul(r.pow(t.a,l),p),w=r.mul(r.sqr(t.b),BigInt(27));if(r.is0(r.add(y,w)))throw new Error("bad curve params: a or b");function b(e){const{allowedPrivateKeyLengths:r,nByteLength:n,wrapPrivateKey:s,n:a}=t;if(r&&"bigint"!=typeof e){if((0,o.isBytes)(e)&&(e=(0,o.bytesToHex)(e)),"string"!=typeof e||!r.includes(e.length))throw new Error("invalid private key");e=e.padStart(2*n,"0")}let u;try{u="bigint"==typeof e?e:(0,o.bytesToNumberBE)((0,o.ensureBytes)("private key",e,n))}catch(t){throw new Error("invalid private key, expected hex or "+n+" bytes, got "+typeof e)}return s&&(u=(0,i.mod)(u,a)),(0,o.aInRange)("private key",u,c,a),u}function g(e){if(!(e instanceof E))throw new Error("ProjectivePoint expected")}const m=(0,o.memoized)(((e,t)=>{const{px:n,py:i,pz:o}=e;if(r.eql(o,r.ONE))return{x:n,y:i};const s=e.is0();null==t&&(t=s?r.ONE:r.inv(o));const a=r.mul(n,t),u=r.mul(i,t),f=r.mul(o,t);if(s)return{x:r.ZERO,y:r.ZERO};if(!r.eql(f,r.ONE))throw new Error("invZ was invalid");return{x:a,y:u}})),_=(0,o.memoized)((e=>{if(e.is0()){if(t.allowInfinityPoint&&!r.is0(e.py))return;throw new Error("bad point: ZERO")}const{x:n,y:i}=e.toAffine();if(!r.isValid(n)||!r.isValid(i))throw new Error("bad point: x or y not FE");if(!d(n,i))throw new Error("bad point: equation left != right");if(!e.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0}));class E{constructor(e,t,n){if(null==e||!r.isValid(e))throw new Error("x required");if(null==t||!r.isValid(t)||r.is0(t))throw new Error("y required");if(null==n||!r.isValid(n))throw new Error("z required");this.px=e,this.py=t,this.pz=n,Object.freeze(this)}static fromAffine(e){const{x:t,y:n}=e||{};if(!e||!r.isValid(t)||!r.isValid(n))throw new Error("invalid affine point");if(e instanceof E)throw new Error("projective point not allowed");const i=e=>r.eql(e,r.ZERO);return i(t)&&i(n)?E.ZERO:new E(t,n,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=(0,i.FpInvertBatch)(r,e.map((e=>e.pz)));return e.map(((e,r)=>e.toAffine(t[r]))).map(E.fromAffine)}static fromHex(e){const t=E.fromAffine(u((0,o.ensureBytes)("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return E.BASE.multiply(b(e))}static msm(e,t){return(0,n.pippenger)(E,s,e,t)}_setWindowSize(e){T.setWindowSize(this,e)}assertValidity(){_(this)}hasEvenY(){const{y:e}=this.toAffine();if(r.isOdd)return!r.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){g(e);const{px:t,py:n,pz:i}=this,{px:o,py:s,pz:a}=e,u=r.eql(r.mul(t,a),r.mul(o,i)),f=r.eql(r.mul(n,a),r.mul(s,i));return u&&f}negate(){return new E(this.px,r.neg(this.py),this.pz)}double(){const{a:e,b:n}=t,i=r.mul(n,l),{px:o,py:s,pz:a}=this;let u=r.ZERO,f=r.ZERO,c=r.ZERO,h=r.mul(o,o),p=r.mul(s,s),d=r.mul(a,a),y=r.mul(o,s);return y=r.add(y,y),c=r.mul(o,a),c=r.add(c,c),u=r.mul(e,c),f=r.mul(i,d),f=r.add(u,f),u=r.sub(p,f),f=r.add(p,f),f=r.mul(u,f),u=r.mul(y,u),c=r.mul(i,c),d=r.mul(e,d),y=r.sub(h,d),y=r.mul(e,y),y=r.add(y,c),c=r.add(h,h),h=r.add(c,h),h=r.add(h,d),h=r.mul(h,y),f=r.add(f,h),d=r.mul(s,a),d=r.add(d,d),h=r.mul(d,y),u=r.sub(u,h),c=r.mul(d,p),c=r.add(c,c),c=r.add(c,c),new E(u,f,c)}add(e){g(e);const{px:n,py:i,pz:o}=this,{px:s,py:a,pz:u}=e;let f=r.ZERO,c=r.ZERO,h=r.ZERO;const p=t.a,d=r.mul(t.b,l);let y=r.mul(n,s),w=r.mul(i,a),b=r.mul(o,u),m=r.add(n,i),_=r.add(s,a);m=r.mul(m,_),_=r.add(y,w),m=r.sub(m,_),_=r.add(n,o);let v=r.add(s,u);return _=r.mul(_,v),v=r.add(y,b),_=r.sub(_,v),v=r.add(i,o),f=r.add(a,u),v=r.mul(v,f),f=r.add(w,b),v=r.sub(v,f),h=r.mul(p,_),f=r.mul(d,b),h=r.add(f,h),f=r.sub(w,h),h=r.add(w,h),c=r.mul(f,h),w=r.add(y,y),w=r.add(w,y),b=r.mul(p,b),_=r.mul(d,_),w=r.add(w,b),b=r.sub(y,b),b=r.mul(p,b),_=r.add(_,b),y=r.mul(w,_),c=r.add(c,y),y=r.mul(v,_),f=r.mul(m,f),f=r.sub(f,y),y=r.mul(m,w),h=r.mul(v,h),h=r.add(h,y),new E(f,c,h)}subtract(e){return this.add(e.negate())}is0(){return this.equals(E.ZERO)}wNAF(e){return T.wNAFCached(this,e,E.normalizeZ)}multiplyUnsafe(e){const{endo:n,n:i}=t;(0,o.aInRange)("scalar",e,f,i);const s=E.ZERO;if(e===f)return s;if(this.is0()||e===c)return this;if(!n||T.hasPrecomputes(this))return T.wNAFCachedUnsafe(this,e,E.normalizeZ);let{k1neg:a,k1:u,k2neg:h,k2:l}=n.splitScalar(e),p=s,d=s,y=this;for(;u>f||l>f;)u&c&&(p=p.add(y)),l&c&&(d=d.add(y)),y=y.double(),u>>=c,l>>=c;return a&&(p=p.negate()),h&&(d=d.negate()),d=new E(r.mul(d.px,n.beta),d.py,d.pz),p.add(d)}multiply(e){const{endo:n,n:i}=t;let s,a;if((0,o.aInRange)("scalar",e,c,i),n){const{k1neg:t,k1:i,k2neg:o,k2:u}=n.splitScalar(e);let{p:f,f:c}=this.wNAF(i),{p:h,f:l}=this.wNAF(u);f=T.constTimeNegate(t,f),h=T.constTimeNegate(o,h),h=new E(r.mul(h.px,n.beta),h.py,h.pz),s=f.add(h),a=c.add(l)}else{const{p:t,f:r}=this.wNAF(e);s=t,a=r}return E.normalizeZ([s,a])[0]}multiplyAndAddUnsafe(e,t,r){const n=E.BASE,i=(e,t)=>t!==f&&t!==c&&e.equals(n)?e.multiply(t):e.multiplyUnsafe(t),o=i(this,t).add(i(e,r));return o.is0()?void 0:o}toAffine(e){return m(this,e)}isTorsionFree(){const{h:e,isTorsionFree:r}=t;if(e===c)return!0;if(r)return r(E,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:r}=t;return e===c?this:r?r(E,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return(0,o.abool)("isCompressed",e),this.assertValidity(),a(E,this,e)}toHex(e=!0){return(0,o.abool)("isCompressed",e),(0,o.bytesToHex)(this.toRawBytes(e))}}E.BASE=new E(t.Gx,t.Gy,r.ONE),E.ZERO=new E(r.ZERO,r.ONE,r.ZERO);const{endo:v,nBitLength:S}=t,T=(0,n.wNAF)(E,v?Math.ceil(S/2):S);return{CURVE:t,ProjectivePoint:E,normPrivateKeyToScalar:b,weierstrassEquation:h,isWithinCurveOrder:function(e){return(0,o.inRange)(e,c,t.n)}}}function y(e,t){const r=e.ORDER;let n=f;for(let e=r-c;e%h===f;e/=h)n+=c;const i=n,o=h<<i-c-c,s=o*h,a=(r-c)/s,u=(a-c)/h,d=s-c,y=o,w=e.pow(t,a),b=e.pow(t,(a+c)/h);let g=(t,r)=>{let n=w,o=e.pow(r,d),s=e.sqr(o);s=e.mul(s,r);let a=e.mul(t,s);a=e.pow(a,u),a=e.mul(a,o),o=e.mul(a,r),s=e.mul(a,t);let f=e.mul(s,o);a=e.pow(f,y);let l=e.eql(a,e.ONE);o=e.mul(s,b),a=e.mul(f,n),s=e.cmov(o,s,l),f=e.cmov(a,f,l);for(let t=i;t>c;t--){let r=t-h;r=h<<r-c;let i=e.pow(f,r);const a=e.eql(i,e.ONE);o=e.mul(s,n),n=e.mul(n,n),i=e.mul(f,n),s=e.cmov(o,s,a),f=e.cmov(i,f,a)}return{isValid:l,value:s}};if(e.ORDER%p===l){const r=(e.ORDER-l)/p,n=e.sqrt(e.neg(t));g=(t,i)=>{let o=e.sqr(i);const s=e.mul(t,i);o=e.mul(o,s);let a=e.pow(o,r);a=e.mul(a,s);const u=e.mul(a,n),f=e.mul(e.sqr(a),i),c=e.eql(f,t);return{isValid:c,value:e.cmov(u,a,c)}}}return g}},437:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.makeChecker=function(e){return function(t){let r;if(e.includes(t.key[0])&&(r=t.key.slice(1),33!==r.length&&65!==r.length||![2,3,4].includes(r[0])))throw new Error("Format Error: invalid pubkey in key 0x"+t.key.toString("hex"));return r}}},534:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(4869),s=Symbol("lastResolve"),a=Symbol("lastReject"),u=Symbol("error"),f=Symbol("ended"),c=Symbol("lastPromise"),h=Symbol("handlePromise"),l=Symbol("stream");function p(e,t){return{value:e,done:t}}function d(e){var t=e[s];if(null!==t){var r=e[l].read();null!==r&&(e[c]=null,e[s]=null,e[a]=null,t(p(r,!1)))}}function y(e){process.nextTick(d,e)}var w=Object.getPrototypeOf((function(){})),b=Object.setPrototypeOf((i(n={get stream(){return this[l]},next:function(){var e=this,t=this[u];if(null!==t)return Promise.reject(t);if(this[f])return Promise.resolve(p(void 0,!0));if(this[l].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[u]?r(e[u]):t(p(void 0,!0))}))}));var r,n=this[c];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[f]?r(p(void 0,!0)):t[h](r,n)}),n)}}(n,this));else{var i=this[l].read();if(null!==i)return Promise.resolve(p(i,!1));r=new Promise(this[h])}return this[c]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[l].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),w);e.exports=function(e){var t,r=Object.create(b,(i(t={},l,{value:e,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,a,{value:null,writable:!0}),i(t,u,{value:null,writable:!0}),i(t,f,{value:e._readableState.endEmitted,writable:!0}),i(t,h,{value:function(e,t){var n=r[l].read();n?(r[c]=null,r[s]=null,r[a]=null,e(p(n,!1))):(r[s]=e,r[a]=t)},writable:!0}),t));return r[c]=null,o(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[a];return null!==t&&(r[c]=null,r[s]=null,r[a]=null,t(e)),void(r[u]=e)}var n=r[s];null!==n&&(r[c]=null,r[s]=null,r[a]=null,n(p(void 0,!0))),r[f]=!0})),e.on("readable",y.bind(null,r)),r}},778:(e,t,r)=>{const n=r(4789);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},874:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha1=t.SHA1=void 0;const n=r(7712);t.SHA1=n.SHA1,t.sha1=n.sha1},947:(e,t,r)=>{var n=r(5615),i=r(2826),o=r(1229),s=r(5636).Buffer,a=new Array(64);function u(){this.init(),this._w=a,o.call(this,64,56)}n(u,i),u.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},u.prototype._hash=function(){var e=s.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=u},973:(e,t,r)=>{var n=r(4322),i=r(2890),o=n.tfJSON,s=n.TfTypeError,a=n.TfPropertyTypeError,u=n.tfSubError,f=n.getValueTypeName,c={arrayOf:function(e,t){function r(r,n){return!!i.Array(r)&&(!i.Nil(r)&&(!(void 0!==t.minLength&&r.length<t.minLength)&&(!(void 0!==t.maxLength&&r.length>t.maxLength)&&((void 0===t.length||r.length===t.length)&&r.every((function(t,r){try{return l(e,t,n)}catch(e){throw u(e,r)}}))))))}return e=h(e),t=t||{},r.toJSON=function(){var r="["+o(e)+"]";return void 0!==t.length?r+="{"+t.length+"}":void 0===t.minLength&&void 0===t.maxLength||(r+="{"+(void 0===t.minLength?0:t.minLength)+","+(void 0===t.maxLength?1/0:t.maxLength)+"}"),r},r},maybe:function e(t){function r(r,n){return i.Nil(r)||t(r,n,e)}return t=h(t),r.toJSON=function(){return"?"+o(t)},r},map:function(e,t){function r(r,n){if(!i.Object(r))return!1;if(i.Nil(r))return!1;for(var o in r){try{t&&l(t,o,n)}catch(e){throw u(e,o,"key")}try{var s=r[o];l(e,s,n)}catch(e){throw u(e,o)}}return!0}return e=h(e),t&&(t=h(t)),r.toJSON=t?function(){return"{"+o(t)+": "+o(e)+"}"}:function(){return"{"+o(e)+"}"},r},object:function(e){var t={};for(var r in e)t[r]=h(e[r]);function n(e,r){if(!i.Object(e))return!1;if(i.Nil(e))return!1;var n;try{for(n in t){l(t[n],e[n],r)}}catch(e){throw u(e,n)}if(r)for(n in e)if(!t[n])throw new a(void 0,n);return!0}return n.toJSON=function(){return o(t)},n},anyOf:function(){var e=[].slice.call(arguments).map(h);function t(t,r){return e.some((function(e){try{return l(e,t,r)}catch(e){return!1}}))}return t.toJSON=function(){return e.map(o).join("|")},t},allOf:function(){var e=[].slice.call(arguments).map(h);function t(t,r){return e.every((function(e){try{return l(e,t,r)}catch(e){return!1}}))}return t.toJSON=function(){return e.map(o).join(" & ")},t},quacksLike:function(e){function t(t){return e===f(t)}return t.toJSON=function(){return e},t},tuple:function(){var e=[].slice.call(arguments).map(h);function t(t,r){return!i.Nil(t)&&(!i.Nil(t.length)&&((!r||t.length===e.length)&&e.every((function(e,n){try{return l(e,t[n],r)}catch(e){throw u(e,n)}}))))}return t.toJSON=function(){return"("+e.map(o).join(", ")+")"},t},value:function(e){function t(t){return t===e}return t.toJSON=function(){return e},t}};function h(e){if(i.String(e))return"?"===e[0]?c.maybe(e.slice(1)):i[e]||c.quacksLike(e);if(e&&i.Object(e)){if(i.Array(e)){if(1!==e.length)throw new TypeError("Expected compile() parameter of type Array of length 1");return c.arrayOf(e[0])}return c.object(e)}return i.Function(e)?e:c.value(e)}function l(e,t,r,n){if(i.Function(e)){if(e(t,r))return!0;throw new s(n||e,t)}return l(h(e),t,r)}for(var p in c.oneOf=c.anyOf,i)l[p]=i[p];for(p in c)l[p]=c[p];var d=r(315);for(p in d)l[p]=d[p];l.compile=h,l.TfTypeError=s,l.TfPropertyTypeError=a,e.exports=l},1048:(e,t,r)=>{"use strict";const n=r(7991),i=r(9318),o="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=u,t.SlowBuffer=function(e){+e!=e&&(e=0);return u.alloc(+e)},t.INSPECT_MAX_BYTES=50;const s=2147483647;function a(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,u.prototype),t}function u(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return h(e)}return f(e,t,r)}function f(e,t,r){if("string"==typeof e)return function(e,t){"string"==typeof t&&""!==t||(t="utf8");if(!u.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=a(r);const i=n.write(e,t);i!==r&&(n=n.slice(0,i));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if($(e,Uint8Array)){const t=new Uint8Array(e);return p(t.buffer,t.byteOffset,t.byteLength)}return l(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if($(e,ArrayBuffer)||e&&$(e.buffer,ArrayBuffer))return p(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&($(e,SharedArrayBuffer)||e&&$(e.buffer,SharedArrayBuffer)))return p(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return u.from(n,t,r);const i=function(e){if(u.isBuffer(e)){const t=0|d(e.length),r=a(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!=typeof e.length||Y(e.length)?a(0):l(e);if("Buffer"===e.type&&Array.isArray(e.data))return l(e.data)}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return u.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function c(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function h(e){return c(e),a(e<0?0:0|d(e))}function l(e){const t=e.length<0?0:0|d(e.length),r=a(t);for(let n=0;n<t;n+=1)r[n]=255&e[n];return r}function p(e,t,r){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(r||0))throw new RangeError('"length" is outside of buffer bounds');let n;return n=void 0===t&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,t):new Uint8Array(e,t,r),Object.setPrototypeOf(n,u.prototype),n}function d(e){if(e>=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(u.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||$(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return G(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return z(e).length;default:if(i)return n?-1:G(e).length;t=(""+t).