@vbyte/btc-dev 1.1.6 → 1.1.7
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/lib/tx/decode.js +2 -3
- package/dist/lib/tx/util.d.ts +2 -0
- package/dist/lib/tx/util.js +21 -3
- package/dist/main.cjs +5976 -5695
- package/dist/main.cjs.map +1 -1
- package/dist/module.mjs +5976 -5695
- package/dist/module.mjs.map +1 -1
- package/dist/package.json +10 -10
- package/dist/schema/base.d.ts +40 -0
- package/dist/schema/base.js +42 -0
- package/dist/schema/taproot.js +1 -1
- package/dist/schema/tx.js +1 -1
- package/dist/script.js +8 -9
- package/dist/script.js.map +1 -1
- package/package.json +10 -10
- package/src/lib/tx/decode.ts +3 -3
- package/src/lib/tx/util.ts +28 -4
- package/src/schema/base.ts +57 -0
- package/src/schema/taproot.ts +1 -1
- package/src/schema/tx.ts +1 -1
package/dist/script.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
var btc_dev=function(e){"use strict";var t,n;!function(e){function t(e){return null===e.match(/[^a-fA-F0-9]/)&&e.length%2==0}e.is_hex=t,e.is_bytes=function(e){return!("string"!=typeof e||!t(e))||(e instanceof Uint8Array||!(!Array.isArray(e)||!e.every(e=>"number"==typeof e)))}}(t||(t={})),function(e){e.within_size=function(e,t){if(e.length>t)throw new TypeError(`Data is larger than array size: ${e.length} > ${t}`)},e.is_hex=function(e){if(null!==e.match(/[^a-fA-f0-9]/))throw new TypeError("Invalid characters in hex string: "+e);if(e.length%2!=0)throw new Error(`Length of hex string is invalid: ${e.length}`)},e.is_bytes=function(e){if(!t.is_bytes(e))throw new Error("Bytes contains invalid elements: "+String(e))},e.is_json=function(e){try{JSON.parse(e)}catch{throw new TypeError("JSON string is invalid!")}},e.is_safe_int=function(e){if(e>Number.MAX_SAFE_INTEGER)throw new TypeError("Number exceeds safe bounds!")}}(n||(n={}));const r=BigInt(0),i=BigInt(255),o=BigInt(256);function s(e,t,n="be"){void 0===t&&(t=function(e){if(e<=0xffn)return 1;if(e<=0xffffn)return 2;if(e<=0xffffffffn)return 4;if(e<=0xffffffffffffffffn)return 8;if(e<=0xffffffffffffffffffffffffffffffffn)return 16;if(e<=0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffn)return 32;throw new TypeError("Must specify a fixed buffer size for bigints greater than 32 bytes.")}(e));const s="le"===n,u=new ArrayBuffer(t),c=new DataView(u);let a=s?0:t-1;for(;e>r;){const t=e&i,n=Number(t);s?c.setUint8(a++,n):c.setUint8(a--,n),e=(e-t)/o}return new Uint8Array(u)}function u(e,t){return"bigint"==typeof t?`${t}n`:t}function c(e,t){return"string"==typeof t&&/^[0-9]+n$/.test(t)?BigInt(t.slice(0,-1)):t}function a(e,t,n="be"){void 0===t&&(t=function(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=4294967295)return 4;throw new TypeError("Numbers larger than 4 bytes must specify a fixed size!")}(e));const r="le"===n,i=new ArrayBuffer(t),o=new DataView(i);let s=r?0:t-1;for(;e>0;){const t=255&e;r?o.setUint8(s++,e):o.setUint8(s--,e),e=(e-t)/256}return new Uint8Array(i)}function f(e,t,r="be"){t=function(e,t){n.is_hex(e);const r=e.length/2;void 0===t&&(t=r);if(r>t)throw new TypeError(`Hex string is larger than array size: ${r} > ${t}`);return t}(e,t);const i="be"===r,o=new ArrayBuffer(t),s=new DataView(o);let u=i?0:t-1;for(let t=0;t<e.length;t+=2){const n=e.substring(t,t+2),r=parseInt(n,16);i?s.setUint8(u++,r):s.setUint8(u--,r)}return new Uint8Array(o)}function d(e,t,r){if(e instanceof ArrayBuffer)return new Uint8Array(e);if(e instanceof Uint8Array)return function(e,t,r="le"){void 0===t&&(t=e.length);n.within_size(e,t);const i=new Uint8Array(t).fill(0),o="be"===r?0:t-e.length;return i.set(e,o),i}(e,t,r);if("string"==typeof e)return n.is_hex(e),f(e,t,r);if("bigint"==typeof e)return s(e,t,r);if("number"==typeof e)return a(e,t,r);throw new TypeError("Input type not supported:"+typeof e)}const l=new TextEncoder,h=new TextDecoder;function p(e){return l.encode(e)}function m(e){return h.decode(e)}class g extends Uint8Array{static{this.num=(e,t,n)=>new g(e,t,n)}static{this.big=(e,t,n)=>new g(e,t,n)}static{this.bin=(e,t,n)=>{const r=function(e){const t=e.split("").map(Number);if(t.length%8!=0)throw new Error(`Binary array is invalid length: ${e.length}`);const n=new Uint8Array(t.length/8);for(let e=0,r=0;e<t.length;e+=8,r++){let i=0;for(let n=0;n<8;n++)i|=t[e+n]<<7-n;n[r]=i}return n}(e);return new g(r,t,n)}}static{this.uint=(e,t,n)=>new g(e,t,n)}static{this.str=(e,t,n)=>{const r=p(e);return new g(r,t,n)}}static{this.hex=(e,t,r)=>(n.is_hex(e),new g(e,t,r))}static{this.bytes=(e,t,r)=>(n.is_bytes(e),new g(e,t,r))}static{this.json=(e,t)=>{t=t??u;const n=p(JSON.stringify(e,t));return new g(n)}}static{this.blob=(e,t,n)=>{const r=function(e,t,n){const r=e.length,i=n/t;if(n%t!==0)throw new TypeError(`Invalid parameters: ${n} % ${t} !== 0`);if(r!==n)throw new TypeError(`Invalid data stream: ${r} !== ${n}`);if(r%t!==0)throw new TypeError(`Invalid data stream: ${r} % ${t} !== 0`);const o=new Array(i);for(let n=0;n<i;n++){const r=n*t;o[n]=e.subarray(r,r+t)}return o}(d(e),t,n);return r.map(e=>new g(e))}}static{this.is_equal=(e,t)=>new g(e).hex===new g(t).hex}static{this.is_bytes=t.is_bytes}static{this.is_hex=t.is_hex}static random(e=32){const t=function(e=32){if(crypto&&"function"==typeof crypto.getRandomValues)return crypto.getRandomValues(new Uint8Array(e));const t=crypto;if(t&&void 0!==t.randomBytes&&"function"==typeof t.randomBytes)return t.randomBytes(e);throw new Error("getRandomValues from crypto library is undefined")}(e);return new g(t,e)}static now(){const e=Math.floor(Date.now()/1e3);return new g(e,4)}constructor(e,t,n){if(e instanceof g&&void 0===t)return e;super(d(e,t,n))}get arr(){return this.to_arr()}get big(){return this.to_big()}get bin(){return this.to_bin()}get hex(){return this.to_hex()}get num(){return this.to_num()}get str(){return this.to_str()}get uint(){return this.to_uint()}to_big(e="be"){return function(e){let t=BigInt(0);for(let n=e.length-1;n>=0;n--)t=t*o+BigInt(e[n]);return BigInt(t)}("be"===e?this.uint.reverse():this.uint)}to_hex(e="be"){return function(e){let t="";for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,"0");return t}("be"===e?this.uint:this.uint.reverse())}to_json(e){void 0===e&&(e=c);const t=m(this);return JSON.parse(t,e)}to_num(e="be"){return function(e){let t=0;for(let r=e.length-1;r>=0;r--)t=256*t+e[r],n.is_safe_int(t);return t}("be"===e?this.uint.reverse():this.uint)}to_arr(){return[...this]}to_bin(){return function(e){const t=new Array(8*e.length);let n=0;for(const r of e){if(r>255)throw new Error(`Invalid byte value: ${r}. Byte values must be between 0 and 255.`);for(let e=7;e>=0;e--,n++)t[n]=r>>e&1}return t.join("")}(this)}to_str(){return m(this)}to_uint(){return new Uint8Array(this)}append(e){return g.join([this,new g(e)])}equals(e){return new g(e).hex===this.hex}prepend(e){return g.join([new g(e),this])}prefix_varint(e){if(0===this.length)throw new Error("buffer is empty");const t=g.varint(this.length,e);return this.prepend(t)}reverse(){return super.reverse(),this}set(e,t){this.set(e,t)}slice(e,t){const n=new Uint8Array(this).slice(e,t);return new g(n)}subarray(e,t){const n=new Uint8Array(this).subarray(e,t);return new g(n)}toJSON(){return this.hex}toString(){return this.hex}static from(e){return new g(Uint8Array.from(e))}static of(...e){return new g(Uint8Array.of(...e))}static join(e){const t=function(e){let t,n=0;const r=e.reduce((e,t)=>e+t.length,0),i=new Uint8Array(r);for(t=0;t<e.length;t++){const r=e[t];i.set(r,n),n+=r.length}return i}(e.map(e=>new g(e)));return new g(t)}static sort(e,t){const n=e.map(e=>new g(e,t).hex);return n.sort(),n.map(e=>g.hex(e,t))}static varint(e,t){if(e<253)return g.num(e,1);if(e<65536)return g.of(253,...g.num(e,2,t));if(e<4294967296)return g.of(254,...g.num(e,4,t));if(BigInt(e)<0x10000000000000000n)return g.of(255,...g.num(e,8,t));throw new Error(`Value is too large: ${e}`)}}class _{constructor(e){this.data=new g(e),this.size=this.data.length}peek(e){if(e>this.size)throw new Error(`Size greater than stream: ${e} > ${this.size}`);return new g(this.data.slice(0,e))}read(e){const t=this.peek(e);return this.data=this.data.slice(e),this.size=this.data.length,t}varint(e){const t=this.read(1).num;switch(!0){case t>=0&&t<253:return t;case 253===t:return this.read(2).to_num(e);case 254===t:return this.read(4).to_num(e);case 255===t:return this.read(8).to_num(e);default:throw new Error(`Varint is out of range: ${t}`)}}}function w(e){return e instanceof Map||Array.isArray(e)||"object"!=typeof e?e:Object.keys(e).sort().filter(([e,t])=>void 0!==t).reduce((t,n)=>(t[n]=e[n],t),{})}function y(e){return e instanceof Error?e.message:"string"==typeof e?e:String(e)}var v,b;!function(e){function t(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function n(e){return"string"==typeof e}function r(e){return Number.isInteger(e)&&!Number.isNaN(e)}function i(e){return!!n(e)&&(null===e.match(/[^a-fA-F0-9]/)&&e.length%2==0)}e.exists=function(e){return null!=e},e.is_equal=function(e,t){return e===t},e.is_object=t,e.is_deep_equal=function(e,n){return t(e)&&(e=w(e)),t(n)&&(n=w(n)),String(e)===String(n)},e.has_items=function(e){return Array.isArray(e)&&e.length>0},e.is_string=n,e.is_number=r,e.is_bigint=function(e){return"bigint"==typeof e},e.is_uchar=function(e){return r(e)&&e>=0&&e<=255},e.is_ushort=function(e){return r(e)&&e>=0&&e<=65535},e.is_uint=function(e){return r(e)&&e>=0&&e<=4294967295},e.is_u8a=function(e){return e instanceof Uint8Array},e.is_bytes=function(e){return g.is_bytes(e)},e.is_base58=function(e){return"string"==typeof e&&/^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$/.test(e)},e.is_base64=function(e){return"string"==typeof e&&/^[a-zA-Z0-9+/]+={0,2}$/.test(e)},e.is_b64url=function(e){return"string"==typeof e&&/^[a-zA-Z0-9\-_]+={0,2}$/.test(e)},e.is_bech32=function(e){return"string"==typeof e&&/^[a-z]+1[023456789acdefghjklmnpqrstuvwxyz]+$/.test(e)},e.is_hex=i,e.is_hash=function(e){return n(e)&&i(e)&&64===e.length}}(v||(v={})),function(e){e.ok=function(e,t){if(!1===e)throw new Error(t??"Assertion failed!")},e.exists=function(e,t){if(!v.exists(e))throw new Error(t??"Value is null or undefined!")},e.is_empty=function(e,t){if(null!=e)throw new Error(t??"value is not null or undefined!")},e.is_instance=function(e,t,n){if(!(e instanceof t))throw new Error(n??`value is not an instance of ${t.name}`)},e.is_equal=function(e,t,n){if(!v.is_equal(e,t))throw new Error(n??`values are not equal: ${String(e)} !== ${String(t)}`)},e.is_object=function(e,t){if(!v.is_object(e))throw new Error(t??`value is not an object: ${String(e)}`)},e.is_deep_equal=function(e,t,n){if(!v.is_deep_equal(e,t))throw new Error(n??`values are not deep equal: ${String(e)} !== ${String(t)}`)},e.is_number=function(e){if(!v.is_number(e))throw new TypeError(`invalid number: ${String(e)}`)},e.is_bigint=function(e){if(!v.is_bigint(e))throw new TypeError(`invalid bigint: ${String(e)}`)},e.is_hex=function(e){if(!v.is_hex(e))throw new TypeError(`invalid hex: ${String(e)}`)},e.is_uchar=function(e){if(!v.is_uchar(e))throw new TypeError(`invalid unsignedchar: ${String(e)}`)},e.is_ushort=function(e){if(!v.is_ushort(e))throw new TypeError(`invalid unsigned short: ${String(e)}`)},e.is_uint=function(e){if(!v.is_uint(e))throw new TypeError(`invalid unsigned int: ${String(e)}`)},e.is_u8a=function(e){if(!v.is_u8a(e))throw new TypeError(`invalid Uint8Array: ${String(e)}`)},e.is_hash=function(e,t){if(!v.is_hash(e))throw new TypeError(t??`invalid hash: ${String(e)}`)},e.is_bytes=function(e,t){if(!v.is_bytes(e))throw new TypeError(t??`invalid bytes: ${String(e)}`)},e.size=function(e,t,n){const r=g.bytes(e);if(r.length!==t)throw new Error(n??`invalid input size: ${r.length} !== ${t}`)},e.has_items=function(e,t){if(!v.has_items(e))throw new Error(t??"array does not contain any items")},e.is_base58=function(e){if(!v.is_base58(e))throw new Error("invalid base58 string")},e.is_base64=function(e){if(!v.is_base64(e))throw new Error("invalid base64 string")},e.is_b64url=function(e){if(!v.is_b64url(e))throw new Error("invalid base64url string")},e.is_bech32=function(e){if(!v.is_bech32(e))throw new Error("invalid bech32 string")}}(b||(b={}));const E="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;
|
|
2
|
-
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function x(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function k(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function z(e,...t){if(!x(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function O(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.createHasher");k(e.outputLen),k(e.blockLen)}function P(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function S(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function A(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function I(e,t){return e<<32-t|e>>>t}function $(e,t){return e<<t|e>>>32-t>>>0}const T=(()=>"function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex)(),
|
|
1
|
+
var btc_dev=function(e){"use strict";var t,n;!function(e){function t(e){return null===e.match(/[^a-fA-F0-9]/)&&e.length%2==0}e.is_hex=t,e.is_bytes=function(e){return!("string"!=typeof e||!t(e))||(e instanceof Uint8Array||!(!Array.isArray(e)||!e.every(e=>"number"==typeof e)))}}(t||(t={})),function(e){e.within_size=function(e,t){if(e.length>t)throw new TypeError(`Data is larger than array size: ${e.length} > ${t}`)},e.is_hex=function(e){if(null!==e.match(/[^a-fA-f0-9]/))throw new TypeError("Invalid characters in hex string: "+e);if(e.length%2!=0)throw new Error(`Length of hex string is invalid: ${e.length}`)},e.is_bytes=function(e){if(!t.is_bytes(e))throw new Error("Bytes contains invalid elements: "+String(e))},e.is_json=function(e){try{JSON.parse(e)}catch{throw new TypeError("JSON string is invalid!")}},e.is_safe_int=function(e){if(e>Number.MAX_SAFE_INTEGER)throw new TypeError("Number exceeds safe bounds!")}}(n||(n={}));const r=BigInt(0),i=BigInt(255),o=BigInt(256);function s(e,t,n="be"){void 0===t&&(t=function(e){if(e<=0xffn)return 1;if(e<=0xffffn)return 2;if(e<=0xffffffffn)return 4;if(e<=0xffffffffffffffffn)return 8;if(e<=0xffffffffffffffffffffffffffffffffn)return 16;if(e<=0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffn)return 32;throw new TypeError("Must specify a fixed buffer size for bigints greater than 32 bytes.")}(e));const s="le"===n,u=new ArrayBuffer(t),c=new DataView(u);let a=s?0:t-1;for(;e>r;){const t=e&i,n=Number(t);s?c.setUint8(a++,n):c.setUint8(a--,n),e=(e-t)/o}return new Uint8Array(u)}function u(e,t){return"bigint"==typeof t?`${t}n`:t}function c(e,t){return"string"==typeof t&&/^[0-9]+n$/.test(t)?BigInt(t.slice(0,-1)):t}function a(e,t,n="be"){void 0===t&&(t=function(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=4294967295)return 4;throw new TypeError("Numbers larger than 4 bytes must specify a fixed size!")}(e));const r="le"===n,i=new ArrayBuffer(t),o=new DataView(i);let s=r?0:t-1;for(;e>0;){const t=255&e;r?o.setUint8(s++,e):o.setUint8(s--,e),e=(e-t)/256}return new Uint8Array(i)}function f(e,t,r="be"){t=function(e,t){n.is_hex(e);const r=e.length/2;void 0===t&&(t=r);if(r>t)throw new TypeError(`Hex string is larger than array size: ${r} > ${t}`);return t}(e,t);const i="be"===r,o=new ArrayBuffer(t),s=new DataView(o);let u=i?0:t-1;for(let t=0;t<e.length;t+=2){const n=e.substring(t,t+2),r=parseInt(n,16);i?s.setUint8(u++,r):s.setUint8(u--,r)}return new Uint8Array(o)}function d(e,t,r){if(e instanceof ArrayBuffer)return new Uint8Array(e);if(e instanceof Uint8Array)return function(e,t,r="le"){void 0===t&&(t=e.length);n.within_size(e,t);const i=new Uint8Array(t).fill(0),o="be"===r?0:t-e.length;return i.set(e,o),i}(e,t,r);if("string"==typeof e)return n.is_hex(e),f(e,t,r);if("bigint"==typeof e)return s(e,t,r);if("number"==typeof e)return a(e,t,r);throw new TypeError("Input type not supported:"+typeof e)}const l=new TextEncoder,h=new TextDecoder;function p(e){return l.encode(e)}function m(e){return h.decode(e)}class g extends Uint8Array{static{this.num=(e,t,n)=>new g(e,t,n)}static{this.big=(e,t,n)=>new g(e,t,n)}static{this.bin=(e,t,n)=>{const r=function(e){const t=e.split("").map(Number);if(t.length%8!=0)throw new Error(`Binary array is invalid length: ${e.length}`);const n=new Uint8Array(t.length/8);for(let e=0,r=0;e<t.length;e+=8,r++){let i=0;for(let n=0;n<8;n++)i|=t[e+n]<<7-n;n[r]=i}return n}(e);return new g(r,t,n)}}static{this.uint=(e,t,n)=>new g(e,t,n)}static{this.str=(e,t,n)=>{const r=p(e);return new g(r,t,n)}}static{this.hex=(e,t,r)=>(n.is_hex(e),new g(e,t,r))}static{this.bytes=(e,t,r)=>(n.is_bytes(e),new g(e,t,r))}static{this.json=(e,t)=>{t=t??u;const n=p(JSON.stringify(e,t));return new g(n)}}static{this.blob=(e,t,n)=>{const r=function(e,t,n){const r=e.length,i=n/t;if(n%t!==0)throw new TypeError(`Invalid parameters: ${n} % ${t} !== 0`);if(r!==n)throw new TypeError(`Invalid data stream: ${r} !== ${n}`);if(r%t!==0)throw new TypeError(`Invalid data stream: ${r} % ${t} !== 0`);const o=new Array(i);for(let n=0;n<i;n++){const r=n*t;o[n]=e.subarray(r,r+t)}return o}(d(e),t,n);return r.map(e=>new g(e))}}static{this.is_equal=(e,t)=>new g(e).hex===new g(t).hex}static{this.is_bytes=t.is_bytes}static{this.is_hex=t.is_hex}static random(e=32){const t=function(e=32){if(crypto&&"function"==typeof crypto.getRandomValues)return crypto.getRandomValues(new Uint8Array(e));const t=crypto;if(t&&void 0!==t.randomBytes&&"function"==typeof t.randomBytes)return t.randomBytes(e);throw new Error("getRandomValues from crypto library is undefined")}(e);return new g(t,e)}static now(){const e=Math.floor(Date.now()/1e3);return new g(e,4)}constructor(e,t,n){if(e instanceof g&&void 0===t)return e;super(d(e,t,n))}get arr(){return this.to_arr()}get big(){return this.to_big()}get bin(){return this.to_bin()}get hex(){return this.to_hex()}get num(){return this.to_num()}get str(){return this.to_str()}get uint(){return this.to_uint()}to_big(e="be"){return function(e){let t=BigInt(0);for(let n=e.length-1;n>=0;n--)t=t*o+BigInt(e[n]);return BigInt(t)}("be"===e?this.uint.reverse():this.uint)}to_hex(e="be"){return function(e){let t="";for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,"0");return t}("be"===e?this.uint:this.uint.reverse())}to_json(e){void 0===e&&(e=c);const t=m(this);return JSON.parse(t,e)}to_num(e="be"){return function(e){let t=0;for(let r=e.length-1;r>=0;r--)t=256*t+e[r],n.is_safe_int(t);return t}("be"===e?this.uint.reverse():this.uint)}to_arr(){return[...this]}to_bin(){return function(e){const t=new Array(8*e.length);let n=0;for(const r of e){if(r>255)throw new Error(`Invalid byte value: ${r}. Byte values must be between 0 and 255.`);for(let e=7;e>=0;e--,n++)t[n]=r>>e&1}return t.join("")}(this)}to_str(){return m(this)}to_uint(){return new Uint8Array(this)}append(e){return g.join([this,new g(e)])}equals(e){return new g(e).hex===this.hex}prepend(e){return g.join([new g(e),this])}prefix_varint(e){if(0===this.length)throw new Error("buffer is empty");const t=g.varint(this.length,e);return this.prepend(t)}reverse(){return super.reverse(),this}set(e,t){this.set(e,t)}slice(e,t){const n=new Uint8Array(this).slice(e,t);return new g(n)}subarray(e,t){const n=new Uint8Array(this).subarray(e,t);return new g(n)}toJSON(){return this.hex}toString(){return this.hex}static from(e){return new g(Uint8Array.from(e))}static of(...e){return new g(Uint8Array.of(...e))}static join(e){const t=function(e){let t,n=0;const r=e.reduce((e,t)=>e+t.length,0),i=new Uint8Array(r);for(t=0;t<e.length;t++){const r=e[t];i.set(r,n),n+=r.length}return i}(e.map(e=>new g(e)));return new g(t)}static sort(e,t){const n=e.map(e=>new g(e,t).hex);return n.sort(),n.map(e=>g.hex(e,t))}static varint(e,t){if(e<253)return g.num(e,1);if(e<65536)return g.of(253,...g.num(e,2,t));if(e<4294967296)return g.of(254,...g.num(e,4,t));if(BigInt(e)<0x10000000000000000n)return g.of(255,...g.num(e,8,t));throw new Error(`Value is too large: ${e}`)}}class _{constructor(e){this.data=new g(e),this.size=this.data.length}peek(e){if(e>this.size)throw new Error(`Size greater than stream: ${e} > ${this.size}`);return new g(this.data.slice(0,e))}read(e){const t=this.peek(e);return this.data=this.data.slice(e),this.size=this.data.length,t}varint(e){const t=this.read(1).num;switch(!0){case t>=0&&t<253:return t;case 253===t:return this.read(2).to_num(e);case 254===t:return this.read(4).to_num(e);case 255===t:return this.read(8).to_num(e);default:throw new Error(`Varint is out of range: ${t}`)}}}function y(e){return e instanceof Map||Array.isArray(e)||"object"!=typeof e?e:Object.keys(e).sort().filter(([e,t])=>void 0!==t).reduce((t,n)=>(t[n]=e[n],t),{})}function w(e){return e instanceof Error?e.message:"string"==typeof e?e:String(e)}var v,b;!function(e){function t(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function n(e){return"string"==typeof e}function r(e){return Number.isInteger(e)&&!Number.isNaN(e)}function i(e){return!!n(e)&&(null===e.match(/[^a-fA-F0-9]/)&&e.length%2==0)}e.exists=function(e){return null!=e},e.is_equal=function(e,t){return e===t},e.is_object=t,e.is_deep_equal=function(e,n){return t(e)&&(e=y(e)),t(n)&&(n=y(n)),String(e)===String(n)},e.has_items=function(e){return Array.isArray(e)&&e.length>0},e.is_string=n,e.is_number=r,e.is_bigint=function(e){return"bigint"==typeof e},e.is_uchar=function(e){return r(e)&&e>=0&&e<=255},e.is_ushort=function(e){return r(e)&&e>=0&&e<=65535},e.is_uint=function(e){return r(e)&&e>=0&&e<=4294967295},e.is_u8a=function(e){return e instanceof Uint8Array},e.is_bytes=function(e){return g.is_bytes(e)},e.is_base58=function(e){return"string"==typeof e&&/^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$/.test(e)},e.is_base64=function(e){return"string"==typeof e&&/^[a-zA-Z0-9+/]+={0,2}$/.test(e)},e.is_b64url=function(e){return"string"==typeof e&&/^[a-zA-Z0-9\-_]+={0,2}$/.test(e)},e.is_bech32=function(e){return"string"==typeof e&&/^[a-z]+1[023456789acdefghjklmnpqrstuvwxyz]+$/.test(e)},e.is_hex=i,e.is_hash=function(e){return n(e)&&i(e)&&64===e.length}}(v||(v={})),function(e){e.ok=function(e,t){if(!1===e)throw new Error(t??"Assertion failed!")},e.exists=function(e,t){if(!v.exists(e))throw new Error(t??"Value is null or undefined!")},e.is_empty=function(e,t){if(null!=e)throw new Error(t??"value is not null or undefined!")},e.is_instance=function(e,t,n){if(!(e instanceof t))throw new Error(n??`value is not an instance of ${t.name}`)},e.is_equal=function(e,t,n){if(!v.is_equal(e,t))throw new Error(n??`values are not equal: ${String(e)} !== ${String(t)}`)},e.is_object=function(e,t){if(!v.is_object(e))throw new Error(t??`value is not an object: ${String(e)}`)},e.is_deep_equal=function(e,t,n){if(!v.is_deep_equal(e,t))throw new Error(n??`values are not deep equal: ${String(e)} !== ${String(t)}`)},e.is_number=function(e){if(!v.is_number(e))throw new TypeError(`invalid number: ${String(e)}`)},e.is_bigint=function(e){if(!v.is_bigint(e))throw new TypeError(`invalid bigint: ${String(e)}`)},e.is_hex=function(e){if(!v.is_hex(e))throw new TypeError(`invalid hex: ${String(e)}`)},e.is_uchar=function(e){if(!v.is_uchar(e))throw new TypeError(`invalid unsignedchar: ${String(e)}`)},e.is_ushort=function(e){if(!v.is_ushort(e))throw new TypeError(`invalid unsigned short: ${String(e)}`)},e.is_uint=function(e){if(!v.is_uint(e))throw new TypeError(`invalid unsigned int: ${String(e)}`)},e.is_u8a=function(e){if(!v.is_u8a(e))throw new TypeError(`invalid Uint8Array: ${String(e)}`)},e.is_hash=function(e,t){if(!v.is_hash(e))throw new TypeError(t??`invalid hash: ${String(e)}`)},e.is_bytes=function(e,t){if(!v.is_bytes(e))throw new TypeError(t??`invalid bytes: ${String(e)}`)},e.size=function(e,t,n){const r=g.bytes(e);if(r.length!==t)throw new Error(n??`invalid input size: ${r.length} !== ${t}`)},e.has_items=function(e,t){if(!v.has_items(e))throw new Error(t??"array does not contain any items")},e.is_base58=function(e){if(!v.is_base58(e))throw new Error("invalid base58 string")},e.is_base64=function(e){if(!v.is_base64(e))throw new Error("invalid base64 string")},e.is_b64url=function(e){if(!v.is_b64url(e))throw new Error("invalid base64url string")},e.is_bech32=function(e){if(!v.is_bech32(e))throw new Error("invalid bech32 string")}}(b||(b={}));const E="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;
|
|
2
|
+
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function x(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function k(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function z(e,...t){if(!x(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function O(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.createHasher");k(e.outputLen),k(e.blockLen)}function P(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function S(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function A(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function I(e,t){return e<<32-t|e>>>t}function $(e,t){return e<<t|e>>>32-t>>>0}const T=(()=>"function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex)(),B=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function N(e){if(z(e),T)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=B[e[n]];return t}const U=48,Z=57,R=65,C=70,j=97,F=102;function D(e){return e>=U&&e<=Z?e-U:e>=R&&e<=C?e-(R-10):e>=j&&e<=F?e-(j-10):void 0}function H(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);if(T)return Uint8Array.fromHex(e);const t=e.length,n=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){const n=D(e.charCodeAt(i)),o=D(e.charCodeAt(i+1));if(void 0===n||void 0===o){const t=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+t+'" at index '+i)}r[t]=16*n+o}return r}function L(e){if("string"!=typeof e)throw new Error("string expected");return new Uint8Array((new TextEncoder).encode(e))}function V(e){return"string"==typeof e&&(e=L(e)),z(e),e}function q(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];z(r),t+=r.length}const n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){const i=e[t];n.set(i,r),r+=i.length}return n}class K{}function M(e){const t=t=>e().update(V(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function W(e=32){if(E&&"function"==typeof E.getRandomValues)return E.getRandomValues(new Uint8Array(e));if(E&&"function"==typeof E.randomBytes)return Uint8Array.from(E.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}function G(e,t,n){return e&t^~e&n}function Y(e,t,n){return e&t^e&n^t&n}class X extends K{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=A(this.buffer)}update(e){P(this),z(e=V(e));const{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let o=0;o<i;){const s=Math.min(r-this.pos,i-o);if(s===r){const t=A(e);for(;r<=i-o;o+=r)this.process(t,o);continue}n.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){P(this),function(e,t){z(e);const n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:r,isLE:i}=this;let{pos:o}=this;t[o++]=128,S(this.buffer.subarray(o)),this.padOffset>r-o&&(this.process(n,0),o=0);for(let e=o;e<r;e++)t[e]=0;!function(e,t,n,r){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,n,r);const i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),u=Number(n&o),c=r?4:0,a=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+a,u,r)}(n,r-8,BigInt(8*this.length),i),this.process(n,0);const s=A(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=u/4,a=this.get();if(c>a.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;e<c;e++)s.setUint32(4*e,a[e],i)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:n,length:r,finished:i,destroyed:o,pos:s}=this;return e.destroyed=o,e.finished=i,e.length=r,e.pos=s,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}}const J=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Q=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ee=new Uint32Array(64);class te extends X{constructor(e=32){super(64,e,8,!1),this.A=0|J[0],this.B=0|J[1],this.C=0|J[2],this.D=0|J[3],this.E=0|J[4],this.F=0|J[5],this.G=0|J[6],this.H=0|J[7]}get(){const{A:e,B:t,C:n,D:r,E:i,F:o,G:s,H:u}=this;return[e,t,n,r,i,o,s,u]}set(e,t,n,r,i,o,s,u){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|r,this.E=0|i,this.F=0|o,this.G=0|s,this.H=0|u}process(e,t){for(let n=0;n<16;n++,t+=4)ee[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=ee[e-15],n=ee[e-2],r=I(t,7)^I(t,18)^t>>>3,i=I(n,17)^I(n,19)^n>>>10;ee[e]=i+ee[e-7]+r+ee[e-16]|0}let{A:n,B:r,C:i,D:o,E:s,F:u,G:c,H:a}=this;for(let e=0;e<64;e++){const t=a+(I(s,6)^I(s,11)^I(s,25))+G(s,u,c)+Q[e]+ee[e]|0,f=(I(n,2)^I(n,13)^I(n,22))+Y(n,r,i)|0;a=c,c=u,u=s,s=o+t|0,o=i,i=r,r=n,n=t+f|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,o=o+this.D|0,s=s+this.E|0,u=u+this.F|0,c=c+this.G|0,a=a+this.H|0,this.set(n,r,i,o,s,u,c,a)}roundClean(){S(ee)}destroy(){this.set(0,0,0,0,0,0,0,0),S(this.buffer)}}const ne=M(()=>new te);class re extends K{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,O(e);const n=V(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),S(i)}update(e){return P(this),this.iHash.update(e),this}digestInto(e){P(this),z(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:o,outputLen:s}=this;return e.finished=r,e.destroyed=i,e.blockLen=o,e.outputLen=s,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const ie=(e,t,n)=>new re(e,t).update(n).digest();ie.create=(e,t)=>new re(e,t);
|
|
3
3
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
4
|
-
const
|
|
5
|
-
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const
|
|
6
|
-
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const
|
|
4
|
+
const oe=BigInt(0),se=BigInt(1);function ue(e,t=""){if("boolean"!=typeof e){throw new Error((t&&`"${t}"`)+"expected boolean, got type="+typeof e)}return e}function ce(e,t,n=""){const r=x(e),i=e?.length,o=void 0!==t;if(!r||o&&i!==t){throw new Error((n&&`"${n}" `)+"expected Uint8Array"+(o?` of length ${t}`:"")+", got "+(r?`length=${i}`:"type="+typeof e))}return e}function ae(e){const t=e.toString(16);return 1&t.length?"0"+t:t}function fe(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);return""===e?oe:BigInt("0x"+e)}function de(e){return fe(N(e))}function le(e){return z(e),fe(N(Uint8Array.from(e).reverse()))}function he(e,t){return H(e.toString(16).padStart(2*t,"0"))}function pe(e,t){return he(e,t).reverse()}function me(e,t,n){let r;if("string"==typeof t)try{r=H(t)}catch(t){throw new Error(e+" must be hex string or Uint8Array, cause: "+t)}else{if(!x(t))throw new Error(e+" must be hex string or Uint8Array");r=Uint8Array.from(t)}const i=r.length;if("number"==typeof n&&i!==n)throw new Error(e+" of length "+n+" expected, got "+i);return r}const ge=e=>"bigint"==typeof e&&oe<=e;function _e(e,t,n){return ge(e)&&ge(t)&&ge(n)&&t<=e&&e<n}function ye(e){let t;for(t=0;e>oe;e>>=se,t+=1);return t}const we=e=>(se<<BigInt(e))-se;function ve(e,t,n={}){if(!e||"object"!=typeof e)throw new Error("expected valid options object");function r(t,n,r){const i=e[t];if(r&&void 0===i)return;const o=typeof i;if(o!==n||null===i)throw new Error(`param "${t}" is invalid: expected ${n}, got ${o}`)}Object.entries(t).forEach(([e,t])=>r(e,t,!1)),Object.entries(n).forEach(([e,t])=>r(e,t,!0))}function be(e){const t=new WeakMap;return(n,...r)=>{const i=t.get(n);if(void 0!==i)return i;const o=e(n,...r);return t.set(n,o),o}}
|
|
5
|
+
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ee=BigInt(0),xe=BigInt(1),ke=BigInt(2),ze=BigInt(3),Oe=BigInt(4),Pe=BigInt(5),Se=BigInt(7),Ae=BigInt(8),Ie=BigInt(9),$e=BigInt(16);function Te(e,t){const n=e%t;return n>=Ee?n:t+n}function Be(e,t,n){let r=e;for(;t-- >Ee;)r*=r,r%=n;return r}function Ne(e,t){if(e===Ee)throw new Error("invert: expected non-zero number");if(t<=Ee)throw new Error("invert: expected positive modulus, got "+t);let n=Te(e,t),r=t,i=Ee,o=xe;for(;n!==Ee;){const e=r%n,t=i-o*(r/n);r=n,n=e,i=o,o=t}if(r!==xe)throw new Error("invert: does not exist");return Te(i,t)}function Ue(e,t,n){if(!e.eql(e.sqr(t),n))throw new Error("Cannot find square root")}function Ze(e,t){const n=(e.ORDER+xe)/Oe,r=e.pow(t,n);return Ue(e,r,t),r}function Re(e,t){const n=(e.ORDER-Pe)/Ae,r=e.mul(t,ke),i=e.pow(r,n),o=e.mul(t,i),s=e.mul(e.mul(o,ke),i),u=e.mul(o,e.sub(s,e.ONE));return Ue(e,u,t),u}function Ce(e){if(e<ze)throw new Error("sqrt is not defined for small field");let t=e-xe,n=0;for(;t%ke===Ee;)t/=ke,n++;let r=ke;const i=Ve(e);for(;1===He(i,r);)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(1===n)return Ze;let o=i.pow(r,t);const s=(t+xe)/ke;return function(e,r){if(e.is0(r))return r;if(1!==He(e,r))throw new Error("Cannot find square root");let i=n,u=e.mul(e.ONE,o),c=e.pow(r,t),a=e.pow(r,s);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw new Error("Cannot find square root");const r=xe<<BigInt(i-t-1),o=e.pow(u,r);i=t,u=e.sqr(o),c=e.mul(c,u),a=e.mul(a,o)}return a}}function je(e){return e%Oe===ze?Ze:e%Ae===Pe?Re:e%$e===Ie?function(e){const t=Ve(e),n=Ce(e),r=n(t,t.neg(t.ONE)),i=n(t,r),o=n(t,t.neg(r)),s=(e+Se)/$e;return(e,t)=>{let n=e.pow(t,s),u=e.mul(n,r);const c=e.mul(n,i),a=e.mul(n,o),f=e.eql(e.sqr(u),t),d=e.eql(e.sqr(c),t);n=e.cmov(n,u,f),u=e.cmov(a,c,d);const l=e.eql(e.sqr(u),t),h=e.cmov(n,u,l);return Ue(e,h,t),h}}(e):Ce(e)}const Fe=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function De(e,t,n=!1){const r=new Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),o=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),o),r}function He(e,t){const n=(e.ORDER-xe)/ke,r=e.pow(t,n),i=e.eql(r,e.ONE),o=e.eql(r,e.ZERO),s=e.eql(r,e.neg(e.ONE));if(!i&&!o&&!s)throw new Error("invalid Legendre symbol result");return i?1:o?0:-1}function Le(e,t){void 0!==t&&k(t);const n=void 0!==t?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Ve(e,t,n=!1,r={}){if(e<=Ee)throw new Error("invalid field: expected ORDER > 0, got "+e);let i,o,s,u=!1;if("object"==typeof t&&null!=t){if(r.sqrt||n)throw new Error("cannot specify opts in two arguments");const e=t;e.BITS&&(i=e.BITS),e.sqrt&&(o=e.sqrt),"boolean"==typeof e.isLE&&(n=e.isLE),"boolean"==typeof e.modFromBytes&&(u=e.modFromBytes),s=e.allowedLengths}else"number"==typeof t&&(i=t),r.sqrt&&(o=r.sqrt);const{nBitLength:c,nByteLength:a}=Le(e,i);if(a>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let f;const d=Object.freeze({ORDER:e,isLE:n,BITS:c,BYTES:a,MASK:we(c),ZERO:Ee,ONE:xe,allowedLengths:s,create:t=>Te(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("invalid field element: expected bigint, got "+typeof t);return Ee<=t&&t<e},is0:e=>e===Ee,isValidNot0:e=>!d.is0(e)&&d.isValid(e),isOdd:e=>(e&xe)===xe,neg:t=>Te(-t,e),eql:(e,t)=>e===t,sqr:t=>Te(t*t,e),add:(t,n)=>Te(t+n,e),sub:(t,n)=>Te(t-n,e),mul:(t,n)=>Te(t*n,e),pow:(e,t)=>function(e,t,n){if(n<Ee)throw new Error("invalid exponent, negatives unsupported");if(n===Ee)return e.ONE;if(n===xe)return t;let r=e.ONE,i=t;for(;n>Ee;)n&xe&&(r=e.mul(r,i)),i=e.sqr(i),n>>=xe;return r}(d,e,t),div:(t,n)=>Te(t*Ne(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>Ne(t,e),sqrt:o||(t=>(f||(f=je(e)),f(d,t))),toBytes:e=>n?pe(e,a):he(e,a),fromBytes:(t,r=!0)=>{if(s){if(!s.includes(t.length)||t.length>a)throw new Error("Field.fromBytes: expected "+s+" bytes, got "+t.length);const e=new Uint8Array(a);e.set(t,n?0:e.length-t.length),t=e}if(t.length!==a)throw new Error("Field.fromBytes: expected "+a+" bytes, got "+t.length);let i=n?le(t):de(t);if(u&&(i=Te(i,e)),!r&&!d.isValid(i))throw new Error("invalid field element: outside of range 0..ORDER");return i},invertBatch:e=>De(d,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(d)}function qe(e){if("bigint"!=typeof e)throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function Ke(e){const t=qe(e);return t+Math.ceil(t/2)}function Me(e,t,n=!1){const r=e.length,i=qe(t),o=Ke(t);if(r<16||r<o||r>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+r);const s=Te(n?le(e):de(e),t-xe)+xe;return n?pe(s,i):he(s,i)}
|
|
6
|
+
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const We=BigInt(0),Ge=BigInt(1);function Ye(e,t){const n=t.negate();return e?n:t}function Xe(e,t){const n=De(e.Fp,t.map(e=>e.Z));return t.map((t,r)=>e.fromAffine(t.toAffine(n[r])))}function Je(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Qe(e,t){Je(e,t);const n=2**e;return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1),mask:we(e),maxNumber:n,shiftBy:BigInt(e)}}function et(e,t,n){const{windowSize:r,mask:i,maxNumber:o,shiftBy:s}=n;let u=Number(e&i),c=e>>s;u>r&&(u-=o,c+=Ge);const a=t*r;return{nextN:c,offset:a+Math.abs(u)-1,isZero:0===u,isNeg:u<0,isNegF:t%2!=0,offsetF:a}}const tt=new WeakMap,nt=new WeakMap;function rt(e){return nt.get(e)||1}function it(e){if(e!==We)throw new Error("invalid wNAF")}class ot{constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,n=this.ZERO){let r=e;for(;t>We;)t&Ge&&(n=n.add(r)),r=r.double(),t>>=Ge;return n}precomputeWindow(e,t){const{windows:n,windowSize:r}=Qe(t,this.bits),i=[];let o=e,s=o;for(let e=0;e<n;e++){s=o,i.push(s);for(let e=1;e<r;e++)s=s.add(o),i.push(s);o=s.double()}return i}wNAF(e,t,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let r=this.ZERO,i=this.BASE;const o=Qe(e,this.bits);for(let e=0;e<o.windows;e++){const{nextN:s,offset:u,isZero:c,isNeg:a,isNegF:f,offsetF:d}=et(n,e,o);n=s,c?i=i.add(Ye(f,t[d])):r=r.add(Ye(a,t[u]))}return it(n),{p:r,f:i}}wNAFUnsafe(e,t,n,r=this.ZERO){const i=Qe(e,this.bits);for(let e=0;e<i.windows&&n!==We;e++){const{nextN:o,offset:s,isZero:u,isNeg:c}=et(n,e,i);if(n=o,!u){const e=t[s];r=r.add(c?e.negate():e)}}return it(n),r}getPrecomputes(e,t,n){let r=tt.get(t);return r||(r=this.precomputeWindow(t,e),1!==e&&("function"==typeof n&&(r=n(r)),tt.set(t,r))),r}cached(e,t,n){const r=rt(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)}unsafe(e,t,n,r){const i=rt(e);return 1===i?this._unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)}createCache(e,t){Je(t,this.bits),nt.set(e,t),tt.delete(e)}hasCache(e){return 1!==rt(e)}}function st(e,t,n,r){!function(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach((e,n)=>{if(!(e instanceof t))throw new Error("invalid point at index "+n)})}(n,e),function(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((e,n)=>{if(!t.isValid(e))throw new Error("invalid scalar at index "+n)})}(r,t);const i=n.length,o=r.length;if(i!==o)throw new Error("arrays of points and scalars must have equal length");const s=e.ZERO,u=ye(BigInt(i));let c=1;u>12?c=u-3:u>4?c=u-2:u>0&&(c=2);const a=we(c),f=new Array(Number(a)+1).fill(s);let d=s;for(let e=Math.floor((t.BITS-1)/c)*c;e>=0;e-=c){f.fill(s);for(let t=0;t<o;t++){const i=r[t],o=Number(i>>BigInt(e)&a);f[o]=f[o].add(n[t])}let t=s;for(let e=f.length-1,n=s;e>0;e--)n=n.add(f[e]),t=t.add(n);if(d=d.add(t),0!==e)for(let e=0;e<c;e++)d=d.double()}return d}function ut(e,t,n){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return function(e){ve(e,Fe.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"}))}(t),t}return Ve(e,{isLE:n})}
|
|
7
7
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
8
|
-
const st=(e,t)=>(e+(e>=0?t:-t)/lt)/t;function ut(e){void 0!==e.lowS&&se("lowS",e.lowS),void 0!==e.prehash&&se("prehash",e.prehash)}class ct extends Error{constructor(e=""){super(e)}}const at={Err:ct,_tlv:{encode:(e,t)=>{const{Err:n}=at;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(1&t.length)throw new n("tlv.encode: unpadded data");const r=t.length/2,i=ue(r);if(i.length/2&128)throw new n("tlv.encode: long form length too big");const o=r>127?ue(i.length/2|128):"";return ue(e)+o+i+t},decode(e,t){const{Err:n}=at;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const i=t[r++];let o=0;if(!!(128&i)){const e=127&i;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 s=t.subarray(r,r+e);if(s.length!==e)throw new n("tlv.decode: length bytes not complete");if(0===s[0])throw new n("tlv.decode(long): zero leftmost byte");for(const e of s)o=o<<8|e;if(r+=e,o<128)throw new n("tlv.decode(long): not minimal encoding")}else o=i;const s=t.subarray(r,r+o);if(s.length!==o)throw new n("tlv.decode: wrong value length");return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){const{Err:t}=at;if(e<ft)throw new t("integer: negative integers are not allowed");let n=ue(e);if(8&Number.parseInt(n[0],16)&&(n="00"+n),1&n.length)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=at;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return ae(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=at,i=he("signature",e),{v:o,l:s}=r.decode(48,i);if(s.length)throw new t("invalid signature: left bytes after parsing");const{v:u,l:c}=r.decode(2,o),{v:a,l:f}=r.decode(2,c);if(f.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(u),s:n.decode(a)}},hexFromSig(e){const{_tlv:t,_int:n}=at,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},ft=BigInt(0),dt=BigInt(1),lt=BigInt(2),ht=BigInt(3),pt=BigInt(4);function mt(e,t){const{BYTES:n}=e;let r;if("bigint"==typeof t)r=t;else{let i=he("private key",t);try{r=e.fromBytes(i)}catch(e){throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof t}`)}}if(!e.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function gt(e,t={}){const{Fp:n,Fn:r}=function(e,t,n={}){if(!t||"object"!=typeof t)throw new Error(`expected valid ${e} CURVE object`);for(const e of["p","n","h"]){const n=t[e];if(!("bigint"==typeof n&&n>Me))throw new Error(`CURVE.${e} must be positive bigint`)}const r=ot(t.p,n.Fp),i=ot(t.n,n.Fn),o=["Gx","Gy","a","b"];for(const e of o)if(!r.isValid(t[e]))throw new Error(`CURVE.${e} must be valid field element of CURVE.Fp`);return{Fp:r,Fn:i}}("weierstrass",e,t),{h:i,n:o}=e;ye(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:s}=t;if(s&&(!n.is0(e.a)||"bigint"!=typeof s.beta||!Array.isArray(s.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');function u(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}const c=t.toBytes||function(e,t,r){const{x:i,y:o}=t.toAffine(),s=n.toBytes(i);if(se("isCompressed",r),r){u();return V(_t(!n.isOdd(o)),s)}return V(Uint8Array.of(4),s,n.toBytes(o))},a=t.fromBytes||function(e){z(e);const t=n.BYTES,r=t+1,i=2*t+1,o=e.length,s=e[0],c=e.subarray(1);if(o!==r||2!==s&&3!==s){if(o===i&&4===s){const e=n.fromBytes(c.subarray(0*t,1*t)),r=n.fromBytes(c.subarray(1*t,2*t));if(!d(e,r))throw new Error("bad point: is not on curve");return{x:e,y:r}}throw new Error(`bad point: got length ${o}, expected compressed=${r} or uncompressed=${i}`)}{const e=n.fromBytes(c);if(!n.isValid(e))throw new Error("bad point: is not on curve, wrong x");const t=f(e);let r;try{r=n.sqrt(t)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("bad point: is not on curve, sqrt error"+t)}u();return!(1&~s)!==n.isOdd(r)&&(r=n.neg(r)),{x:e,y:r}}},f=function(e,t,n){return function(r){const i=e.sqr(r),o=e.mul(i,r);return e.add(e.add(o,e.mul(r,t)),n)}}(n,e.a,e.b);function d(e,t){const r=n.sqr(t),i=f(e);return n.eql(r,i)}if(!d(e.Gx,e.Gy))throw new Error("bad curve params: generator point");const l=n.mul(n.pow(e.a,ht),pt),h=n.mul(n.sqr(e.b),BigInt(27));if(n.is0(n.add(l,h)))throw new Error("bad curve params: a or b");function p(e,t,r=!1){if(!n.isValid(t)||r&&n.is0(t))throw new Error(`bad point coordinate ${e}`);return t}function m(e){if(!(e instanceof v))throw new Error("ProjectivePoint expected")}function g(e){if(!s||!s.basises)throw new Error("no endo");return function(e,t,n){const[[r,i],[o,s]]=t,u=st(s*e,n),c=st(-i*e,n);let a=e-u*r-c*o,f=-u*i-c*s;const d=a<ft,l=f<ft;d&&(a=-a),l&&(f=-f);const h=we(Math.ceil(_e(n)/2))+dt;if(a<ft||a>=h||f<ft||f>=h)throw new Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:d,k1:a,k2neg:l,k2:f}}(e,s.basises,r.ORDER)}const _=ve((e,t)=>{const{X:r,Y:i,Z:o}=e;if(n.eql(o,n.ONE))return{x:r,y:i};const s=e.is0();null==t&&(t=s?n.ONE:n.inv(o));const u=n.mul(r,t),c=n.mul(i,t),a=n.mul(o,t);if(s)return{x:n.ZERO,y:n.ZERO};if(!n.eql(a,n.ONE))throw new Error("invZ was invalid");return{x:u,y:c}}),w=ve(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.Y))return;throw new Error("bad point: ZERO")}const{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw new Error("bad point: x or y not field elements");if(!d(r,i))throw new Error("bad point: equation left != right");if(!e.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function y(e,t,r,i,o){return r=new v(n.mul(r.X,e),r.Y,r.Z),t=We(i,t),r=We(o,r),t.add(r)}class v{constructor(e,t,n){this.X=p("x",e),this.Y=p("y",t,!0),this.Z=p("z",n),Object.freeze(this)}static fromAffine(e){const{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw new Error("invalid affine point");if(e instanceof v)throw new Error("projective point not allowed");return n.is0(t)&&n.is0(r)?v.ZERO:new v(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}static normalizeZ(e){return Ge(v,e)}static fromBytes(e){return z(e),v.fromHex(e)}static fromHex(e){const t=v.fromAffine(a(he("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return v.BASE.multiply(mt(r,e))}static msm(e,t){return it(v,r,e,t)}_setWindowSize(e){this.precompute(e)}precompute(e=8,t=!0){return E.createCache(this,e),t||this.multiply(ht),this}assertValidity(){w(this)}hasEvenY(){const{y:e}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(e)}equals(e){m(e);const{X:t,Y:r,Z:i}=this,{X:o,Y:s,Z:u}=e,c=n.eql(n.mul(t,u),n.mul(o,i)),a=n.eql(n.mul(r,u),n.mul(s,i));return c&&a}negate(){return new v(this.X,n.neg(this.Y),this.Z)}double(){const{a:t,b:r}=e,i=n.mul(r,ht),{X:o,Y:s,Z:u}=this;let c=n.ZERO,a=n.ZERO,f=n.ZERO,d=n.mul(o,o),l=n.mul(s,s),h=n.mul(u,u),p=n.mul(o,s);return p=n.add(p,p),f=n.mul(o,u),f=n.add(f,f),c=n.mul(t,f),a=n.mul(i,h),a=n.add(c,a),c=n.sub(l,a),a=n.add(l,a),a=n.mul(c,a),c=n.mul(p,c),f=n.mul(i,f),h=n.mul(t,h),p=n.sub(d,h),p=n.mul(t,p),p=n.add(p,f),f=n.add(d,d),d=n.add(f,d),d=n.add(d,h),d=n.mul(d,p),a=n.add(a,d),h=n.mul(s,u),h=n.add(h,h),d=n.mul(h,p),c=n.sub(c,d),f=n.mul(h,l),f=n.add(f,f),f=n.add(f,f),new v(c,a,f)}add(t){m(t);const{X:r,Y:i,Z:o}=this,{X:s,Y:u,Z:c}=t;let a=n.ZERO,f=n.ZERO,d=n.ZERO;const l=e.a,h=n.mul(e.b,ht);let p=n.mul(r,s),g=n.mul(i,u),_=n.mul(o,c),w=n.add(r,i),y=n.add(s,u);w=n.mul(w,y),y=n.add(p,g),w=n.sub(w,y),y=n.add(r,o);let b=n.add(s,c);return y=n.mul(y,b),b=n.add(p,_),y=n.sub(y,b),b=n.add(i,o),a=n.add(u,c),b=n.mul(b,a),a=n.add(g,_),b=n.sub(b,a),d=n.mul(l,y),a=n.mul(h,_),d=n.add(a,d),a=n.sub(g,d),d=n.add(g,d),f=n.mul(a,d),g=n.add(p,p),g=n.add(g,p),_=n.mul(l,_),y=n.mul(h,y),g=n.add(g,_),_=n.sub(p,_),_=n.mul(l,_),y=n.add(y,_),p=n.mul(g,y),f=n.add(f,p),p=n.mul(b,y),a=n.mul(w,a),a=n.sub(a,p),p=n.mul(w,g),d=n.mul(b,d),d=n.add(d,p),new v(a,f,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(v.ZERO)}multiply(e){const{endo:n}=t;if(!r.isValidNot0(e))throw new Error("invalid scalar: out of range");let i,o;const s=e=>E.cached(this,e,e=>Ge(v,e));if(n){const{k1neg:t,k1:r,k2neg:u,k2:c}=g(e),{p:a,f:f}=s(r),{p:d,f:l}=s(c);o=f.add(l),i=y(n.beta,a,d,t,u)}else{const{p:t,f:n}=s(e);i=t,o=n}return Ge(v,[i,o])[0]}multiplyUnsafe(e){const{endo:n}=t,i=this;if(!r.isValid(e))throw new Error("invalid scalar: out of range");if(e===ft||i.is0())return v.ZERO;if(e===dt)return i;if(E.hasCache(this))return this.multiply(e);if(n){const{k1neg:t,k1:r,k2neg:o,k2:s}=g(e),{p1:u,p2:c}=function(e,t,n,r){let i=t,o=e.ZERO,s=e.ZERO;for(;n>Me||r>Me;)n&Ke&&(o=o.add(i)),r&Ke&&(s=s.add(i)),i=i.double(),n>>=Ke,r>>=Ke;return{p1:o,p2:s}}(v,i,r,s);return y(n.beta,u,c,t,o)}return E.unsafe(i,e)}multiplyAndAddUnsafe(e,t,n){const r=this.multiplyUnsafe(t).add(e.multiplyUnsafe(n));return r.is0()?void 0:r}toAffine(e){return _(this,e)}isTorsionFree(){const{isTorsionFree:e}=t;return i===dt||(e?e(v,this):E.unsafe(this,o).is0())}clearCofactor(){const{clearCofactor:e}=t;return i===dt?this:e?e(v,this):this.multiplyUnsafe(i)}isSmallOrder(){return this.multiplyUnsafe(i).is0()}toBytes(e=!0){return se("isCompressed",e),this.assertValidity(),c(v,this,e)}toRawBytes(e=!0){return this.toBytes(e)}toHex(e=!0){return B(this.toBytes(e))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}v.BASE=new v(e.Gx,e.Gy,n.ONE),v.ZERO=new v(n.ZERO,n.ONE,n.ZERO),v.Fp=n,v.Fn=r;const b=r.BITS,E=new rt(v,t.endo?Math.ceil(b/2):b);return v}function _t(e){return Uint8Array.of(e?2:3)}function wt(e,t,n={}){O(t),ye(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||K,i=n.hmac||((e,...n)=>re(t,e,V(...n))),{Fp:o,Fn:s}=e,{ORDER:u,BITS:c}=s,a=Ve(u),f={secret:s.BYTES,public:1+o.BYTES,publicUncompressed:1+2*o.BYTES,signature:2*s.BYTES,seed:a};function d(e){return e>u>>dt}function l(e,t){if(!s.isValidNot0(t))throw new Error(`invalid signature ${e}: out of range 1..CURVE.n`)}class h{constructor(e,t,n){l("r",e),l("s",t),this.r=e,this.s=t,null!=n&&(this.recovery=n),Object.freeze(this)}static fromBytes(e,t="compact"){if("compact"===t){const t=s.BYTES;z(e,2*t);const n=e.subarray(0,t),r=e.subarray(t,2*t);return new h(s.fromBytes(n),s.fromBytes(r))}if("der"===t){z(e);const{r:t,s:n}=at.toSig(e);return new h(t,n)}throw new Error("invalid format")}static fromHex(e,t){return this.fromBytes(D(e),t)}addRecoveryBit(e){return new h(this.r,this.s,e)}recoverPublicKey(t){const n=o.ORDER,{r:r,s:i,recovery:c}=this;if(null==c||![0,1,2,3].includes(c))throw new Error("recovery id invalid");if(u*lt<n&&c>1)throw new Error("recovery id is ambiguous for h>1 curve");const a=2===c||3===c?r+u:r;if(!o.isValid(a))throw new Error("recovery id 2 or 3 invalid");const f=o.toBytes(a),d=e.fromHex(V(_t(!(1&c)),f)),l=s.inv(a),h=v(he("msgHash",t)),p=s.create(-h*l),m=s.create(i*l),g=e.BASE.multiplyUnsafe(p).add(d.multiplyUnsafe(m));if(g.is0())throw new Error("point at infinify");return g.assertValidity(),g}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new h(this.r,s.neg(this.s),this.recovery):this}toBytes(e="compact"){if("compact"===e)return V(s.toBytes(this.r),s.toBytes(this.s));if("der"===e)return D(at.hexFromSig(this));throw new Error("invalid format")}toHex(e){return B(this.toBytes(e))}assertValidity(){}static fromCompact(e){return h.fromBytes(he("sig",e),"compact")}static fromDER(e){return h.fromBytes(he("sig",e),"der")}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return B(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return B(this.toBytes("compact"))}}function p(e){try{return!!mt(s,e)}catch(e){return!1}}function m(e=r(a)){return qe(e,u)}const g={isValidSecretKey:p,isValidPublicKey:function(t,n){try{const r=t.length;return(!0!==n||r===f.public)&&((!1!==n||r===f.publicUncompressed)&&!!e.fromBytes(t))}catch(e){return!1}},randomSecretKey:m,isValidPrivateKey:p,randomPrivateKey:m,normPrivateKeyToScalar:e=>mt(s,e),precompute:(t=8,n=e.BASE)=>n.precompute(t,!1)};function _(t,n=!0){return e.BASE.multiply(mt(s,t)).toBytes(n)}function w(t){if("bigint"==typeof t)return!1;if(t instanceof e)return!0;if(s.allowedLengths||f.secret===f.public)return;const n=he("key",t).length;return n===f.public||n===f.publicUncompressed}const y=n.bits2int||function(e){if(e.length>8192)throw new Error("input is too large");const t=ae(e),n=8*e.length-c;return n>0?t>>BigInt(n):t},v=n.bits2int_modN||function(e){return s.create(y(e))},b=we(c);function E(e){return ge("num < 2^"+c,e,ft,b),s.toBytes(e)}function k(n,i,o=P){if(["recovered","canonical"].some(e=>e in o))throw new Error("sign() legacy options not supported");let{lowS:u,prehash:c,extraEntropy:a}=o;null==u&&(u=!0),n=he("msgHash",n),ut(o),c&&(n=he("prehashed msgHash",t(n)));const l=v(n),p=mt(s,i),m=[E(p),E(l)];if(null!=a&&!1!==a){const e=!0===a?r(f.secret):a;m.push(he("extraEntropy",e))}const g=V(...m),_=l;return{seed:g,k2sig:function(t){const n=y(t);if(!s.isValidNot0(n))return;const r=s.inv(n),i=e.BASE.multiply(n).toAffine(),o=s.create(i.x);if(o===ft)return;const c=s.create(r*s.create(_+o*p));if(c===ft)return;let a=(i.x===o?0:2)|Number(i.y&dt),f=c;return u&&d(c)&&(f=function(e){return d(e)?s.neg(e):e}(c),a^=1),new h(o,f,a)}}}const P={lowS:n.lowS,prehash:!1},S={lowS:n.lowS,prehash:!1};return e.BASE.precompute(8),Object.freeze({keygen:function(e){const t=g.randomSecretKey(e);return{secretKey:t,publicKey:_(t)}},getPublicKey:_,sign:function(e,n,r=P){const{seed:o,k2sig:u}=k(e,n,r);return function(e,t,n){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof t||t<2)throw new Error("qByteLen must be a number");if("function"!=typeof n)throw new Error("hmacFn must be a function");const r=e=>new Uint8Array(e),i=e=>Uint8Array.of(e);let o=r(e),s=r(e),u=0;const c=()=>{o.fill(1),s.fill(0),u=0},a=(...e)=>n(s,o,...e),f=(e=r(0))=>{s=a(i(0),e),o=a(),0!==e.length&&(s=a(i(1),e),o=a())},d=()=>{if(u++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e<t;){o=a();const t=o.slice();n.push(t),e+=o.length}return V(...n)};return(e,t)=>{let n;for(c(),f(e);!(n=t(d()));)f();return c(),n}}(t.outputLen,s.BYTES,i)(o,u)},verify:function(n,r,i,o=S){const u=n;r=he("msgHash",r),i=he("publicKey",i),ut(o);const{lowS:c,prehash:a,format:f}=o;if("strict"in o)throw new Error("options.strict was renamed to lowS");let d,l;if(void 0===f){const e="string"==typeof u||x(u),t=!e&&null!==u&&"object"==typeof u&&"bigint"==typeof u.r&&"bigint"==typeof u.s;if(!e&&!t)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(t)d=new h(u.r,u.s);else if(e){try{d=h.fromDER(u)}catch(e){if(!(e instanceof at.Err))throw e}if(!d)try{d=h.fromCompact(u)}catch(e){return!1}}}else if("compact"===f||"der"===f){if("string"!=typeof u&&!x(u))throw new Error('"der" / "compact" format expects Uint8Array signature');d=h.fromBytes(he("sig",u),f)}else{if("js"!==f)throw new Error('format must be "compact", "der" or "js"');if(!(u instanceof h))throw new Error('"js" format expects Signature instance');d=u}if(!d)return!1;try{if(l=e.fromHex(i),c&&d.hasHighS())return!1;a&&(r=t(r));const{r:n,s:o}=d,u=v(r),f=s.inv(o),h=s.create(u*f),p=s.create(n*f),m=e.BASE.multiplyUnsafe(h).add(l.multiplyUnsafe(p));if(m.is0())return!1;return s.create(m.x)===n}catch(e){return!1}},getSharedSecret:function(t,n,r=!0){if(!0===w(t))throw new Error("first arg must be private key");if(!1===w(n))throw new Error("second arg must be public key");const i=mt(s,t);return e.fromHex(n).multiply(i).toBytes(r)},utils:g,Point:e,Signature:h,info:{type:"weierstrass",lengths:f,publicKeyHasPrefix:!0}})}function yt(e){const{CURVE:t,curveOpts:n}=function(e){const t={a:e.a,b:e.b,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},n=e.Fp;let r=e.allowedPrivateKeyLengths?Array.from(new Set(e.allowedPrivateKeyLengths.map(e=>Math.ceil(e/2)))):void 0;return{CURVE:t,curveOpts:{Fp:n,Fn:De(t.n,{BITS:e.nBitLength,allowedLengths:r,modOnDecode:e.wrapPrivateKey}),allowInfinityPoint:e.allowInfinityPoint,endo:e.endo,isTorsionFree:e.isTorsionFree,clearCofactor:e.clearCofactor,fromBytes:e.fromBytes,toBytes:e.toBytes}}}(e),r={hmac:e.hmac,randomBytes:e.randomBytes,lowS:e.lowS,bits2int:e.bits2int,bits2int_modN:e.bits2int_modN};return{CURVE:t,curveOpts:n,hash:e.hash,ecdsaOpts:r}}function vt(e){const{CURVE:t,curveOpts:n,hash:r,ecdsaOpts:i}=yt(e);return function(e,t){return Object.assign({},t,{ProjectivePoint:t.Point,CURVE:e})}(e,wt(gt(t,n),r,i))}
|
|
8
|
+
const ct=(e,t)=>(e+(e>=0?t:-t)/mt)/t;function at(e){if(!["compact","recovered","der"].includes(e))throw new Error('Signature format must be "compact", "recovered", or "der"');return e}function ft(e,t){const n={};for(let r of Object.keys(t))n[r]=void 0===e[r]?t[r]:e[r];return ue(n.lowS,"lowS"),ue(n.prehash,"prehash"),void 0!==n.format&&at(n.format),n}class dt extends Error{constructor(e=""){super(e)}}const lt={Err:dt,_tlv:{encode:(e,t)=>{const{Err:n}=lt;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(1&t.length)throw new n("tlv.encode: unpadded data");const r=t.length/2,i=ae(r);if(i.length/2&128)throw new n("tlv.encode: long form length too big");const o=r>127?ae(i.length/2|128):"";return ae(e)+o+i+t},decode(e,t){const{Err:n}=lt;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const i=t[r++];let o=0;if(!!(128&i)){const e=127&i;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 s=t.subarray(r,r+e);if(s.length!==e)throw new n("tlv.decode: length bytes not complete");if(0===s[0])throw new n("tlv.decode(long): zero leftmost byte");for(const e of s)o=o<<8|e;if(r+=e,o<128)throw new n("tlv.decode(long): not minimal encoding")}else o=i;const s=t.subarray(r,r+o);if(s.length!==o)throw new n("tlv.decode: wrong value length");return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){const{Err:t}=lt;if(e<ht)throw new t("integer: negative integers are not allowed");let n=ae(e);if(8&Number.parseInt(n[0],16)&&(n="00"+n),1&n.length)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=lt;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return de(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=lt,i=me("signature",e),{v:o,l:s}=r.decode(48,i);if(s.length)throw new t("invalid signature: left bytes after parsing");const{v:u,l:c}=r.decode(2,o),{v:a,l:f}=r.decode(2,c);if(f.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(u),s:n.decode(a)}},hexFromSig(e){const{_tlv:t,_int:n}=lt,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},ht=BigInt(0),pt=BigInt(1),mt=BigInt(2),gt=BigInt(3),_t=BigInt(4);function yt(e,t){const{BYTES:n}=e;let r;if("bigint"==typeof t)r=t;else{let i=me("private key",t);try{r=e.fromBytes(i)}catch(e){throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof t}`)}}if(!e.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function wt(e,t={}){const n=function(e,t,n={},r){if(void 0===r&&(r="edwards"===e),!t||"object"!=typeof t)throw new Error(`expected valid ${e} CURVE object`);for(const e of["p","n","h"]){const n=t[e];if(!("bigint"==typeof n&&n>We))throw new Error(`CURVE.${e} must be positive bigint`)}const i=ut(t.p,n.Fp,r),o=ut(t.n,n.Fn,r),s=["Gx","Gy","a","b"];for(const e of s)if(!i.isValid(t[e]))throw new Error(`CURVE.${e} must be valid field element of CURVE.Fp`);return{CURVE:t=Object.freeze(Object.assign({},t)),Fp:i,Fn:o}}("weierstrass",e,t),{Fp:r,Fn:i}=n;let o=n.CURVE;const{h:s,n:u}=o;ve(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:c}=t;if(c&&(!r.is0(o.a)||"bigint"!=typeof c.beta||!Array.isArray(c.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const a=bt(r,i);function f(){if(!r.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}const d=t.toBytes||function(e,t,n){const{x:i,y:o}=t.toAffine(),s=r.toBytes(i);if(ue(n,"isCompressed"),n){f();return q(vt(!r.isOdd(o)),s)}return q(Uint8Array.of(4),s,r.toBytes(o))},l=t.fromBytes||function(e){ce(e,void 0,"Point");const{publicKey:t,publicKeyUncompressed:n}=a,i=e.length,o=e[0],s=e.subarray(1);if(i!==t||2!==o&&3!==o){if(i===n&&4===o){const e=r.BYTES,t=r.fromBytes(s.subarray(0,e)),n=r.fromBytes(s.subarray(e,2*e));if(!p(t,n))throw new Error("bad point: is not on curve");return{x:t,y:n}}throw new Error(`bad point: got length ${i}, expected compressed=${t} or uncompressed=${n}`)}{const e=r.fromBytes(s);if(!r.isValid(e))throw new Error("bad point: is not on curve, wrong x");const t=h(e);let n;try{n=r.sqrt(t)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("bad point: is not on curve, sqrt error"+t)}f();return!(1&~o)!==r.isOdd(n)&&(n=r.neg(n)),{x:e,y:n}}};function h(e){const t=r.sqr(e),n=r.mul(t,e);return r.add(r.add(n,r.mul(e,o.a)),o.b)}function p(e,t){const n=r.sqr(t),i=h(e);return r.eql(n,i)}if(!p(o.Gx,o.Gy))throw new Error("bad curve params: generator point");const m=r.mul(r.pow(o.a,gt),_t),g=r.mul(r.sqr(o.b),BigInt(27));if(r.is0(r.add(m,g)))throw new Error("bad curve params: a or b");function _(e,t,n=!1){if(!r.isValid(t)||n&&r.is0(t))throw new Error(`bad point coordinate ${e}`);return t}function y(e){if(!(e instanceof x))throw new Error("ProjectivePoint expected")}function w(e){if(!c||!c.basises)throw new Error("no endo");return function(e,t,n){const[[r,i],[o,s]]=t,u=ct(s*e,n),c=ct(-i*e,n);let a=e-u*r-c*o,f=-u*i-c*s;const d=a<ht,l=f<ht;d&&(a=-a),l&&(f=-f);const h=we(Math.ceil(ye(n)/2))+pt;if(a<ht||a>=h||f<ht||f>=h)throw new Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:d,k1:a,k2neg:l,k2:f}}(e,c.basises,i.ORDER)}const v=be((e,t)=>{const{X:n,Y:i,Z: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 u=r.mul(n,t),c=r.mul(i,t),a=r.mul(o,t);if(s)return{x:r.ZERO,y:r.ZERO};if(!r.eql(a,r.ONE))throw new Error("invZ was invalid");return{x:u,y:c}}),b=be(e=>{if(e.is0()){if(t.allowInfinityPoint&&!r.is0(e.Y))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 field elements");if(!p(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});function E(e,t,n,i,o){return n=new x(r.mul(n.X,e),n.Y,n.Z),t=Ye(i,t),n=Ye(o,n),t.add(n)}class x{constructor(e,t,n){this.X=_("x",e),this.Y=_("y",t,!0),this.Z=_("z",n),Object.freeze(this)}static CURVE(){return o}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 x)throw new Error("projective point not allowed");return r.is0(t)&&r.is0(n)?x.ZERO:new x(t,n,r.ONE)}static fromBytes(e){const t=x.fromAffine(l(ce(e,void 0,"point")));return t.assertValidity(),t}static fromHex(e){return x.fromBytes(me("pointHex",e))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return z.createCache(this,e),t||this.multiply(gt),this}assertValidity(){b(this)}hasEvenY(){const{y:e}=this.toAffine();if(!r.isOdd)throw new Error("Field doesn't support isOdd");return!r.isOdd(e)}equals(e){y(e);const{X:t,Y:n,Z:i}=this,{X:o,Y:s,Z:u}=e,c=r.eql(r.mul(t,u),r.mul(o,i)),a=r.eql(r.mul(n,u),r.mul(s,i));return c&&a}negate(){return new x(this.X,r.neg(this.Y),this.Z)}double(){const{a:e,b:t}=o,n=r.mul(t,gt),{X:i,Y:s,Z:u}=this;let c=r.ZERO,a=r.ZERO,f=r.ZERO,d=r.mul(i,i),l=r.mul(s,s),h=r.mul(u,u),p=r.mul(i,s);return p=r.add(p,p),f=r.mul(i,u),f=r.add(f,f),c=r.mul(e,f),a=r.mul(n,h),a=r.add(c,a),c=r.sub(l,a),a=r.add(l,a),a=r.mul(c,a),c=r.mul(p,c),f=r.mul(n,f),h=r.mul(e,h),p=r.sub(d,h),p=r.mul(e,p),p=r.add(p,f),f=r.add(d,d),d=r.add(f,d),d=r.add(d,h),d=r.mul(d,p),a=r.add(a,d),h=r.mul(s,u),h=r.add(h,h),d=r.mul(h,p),c=r.sub(c,d),f=r.mul(h,l),f=r.add(f,f),f=r.add(f,f),new x(c,a,f)}add(e){y(e);const{X:t,Y:n,Z:i}=this,{X:s,Y:u,Z:c}=e;let a=r.ZERO,f=r.ZERO,d=r.ZERO;const l=o.a,h=r.mul(o.b,gt);let p=r.mul(t,s),m=r.mul(n,u),g=r.mul(i,c),_=r.add(t,n),w=r.add(s,u);_=r.mul(_,w),w=r.add(p,m),_=r.sub(_,w),w=r.add(t,i);let v=r.add(s,c);return w=r.mul(w,v),v=r.add(p,g),w=r.sub(w,v),v=r.add(n,i),a=r.add(u,c),v=r.mul(v,a),a=r.add(m,g),v=r.sub(v,a),d=r.mul(l,w),a=r.mul(h,g),d=r.add(a,d),a=r.sub(m,d),d=r.add(m,d),f=r.mul(a,d),m=r.add(p,p),m=r.add(m,p),g=r.mul(l,g),w=r.mul(h,w),m=r.add(m,g),g=r.sub(p,g),g=r.mul(l,g),w=r.add(w,g),p=r.mul(m,w),f=r.add(f,p),p=r.mul(v,w),a=r.mul(_,a),a=r.sub(a,p),p=r.mul(_,m),d=r.mul(v,d),d=r.add(d,p),new x(a,f,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(x.ZERO)}multiply(e){const{endo:n}=t;if(!i.isValidNot0(e))throw new Error("invalid scalar: out of range");let r,o;const s=e=>z.cached(this,e,e=>Xe(x,e));if(n){const{k1neg:t,k1:i,k2neg:u,k2:c}=w(e),{p:a,f:f}=s(i),{p:d,f:l}=s(c);o=f.add(l),r=E(n.beta,a,d,t,u)}else{const{p:t,f:n}=s(e);r=t,o=n}return Xe(x,[r,o])[0]}multiplyUnsafe(e){const{endo:n}=t,r=this;if(!i.isValid(e))throw new Error("invalid scalar: out of range");if(e===ht||r.is0())return x.ZERO;if(e===pt)return r;if(z.hasCache(this))return this.multiply(e);if(n){const{k1neg:t,k1:i,k2neg:o,k2:s}=w(e),{p1:u,p2:c}=function(e,t,n,r){let i=t,o=e.ZERO,s=e.ZERO;for(;n>We||r>We;)n&Ge&&(o=o.add(i)),r&Ge&&(s=s.add(i)),i=i.double(),n>>=Ge,r>>=Ge;return{p1:o,p2:s}}(x,r,i,s);return E(n.beta,u,c,t,o)}return z.unsafe(r,e)}multiplyAndAddUnsafe(e,t,n){const r=this.multiplyUnsafe(t).add(e.multiplyUnsafe(n));return r.is0()?void 0:r}toAffine(e){return v(this,e)}isTorsionFree(){const{isTorsionFree:e}=t;return s===pt||(e?e(x,this):z.unsafe(this,u).is0())}clearCofactor(){const{clearCofactor:e}=t;return s===pt?this:e?e(x,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(e=!0){return ue(e,"isCompressed"),this.assertValidity(),d(x,this,e)}toHex(e=!0){return N(this.toBytes(e))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(e=!0){return this.toBytes(e)}_setWindowSize(e){this.precompute(e)}static normalizeZ(e){return Xe(x,e)}static msm(e,t){return st(x,i,e,t)}static fromPrivateKey(e){return x.BASE.multiply(yt(i,e))}}x.BASE=new x(o.Gx,o.Gy,r.ONE),x.ZERO=new x(r.ZERO,r.ONE,r.ZERO),x.Fp=r,x.Fn=i;const k=i.BITS,z=new ot(x,t.endo?Math.ceil(k/2):k);return x.BASE.precompute(8),x}function vt(e){return Uint8Array.of(e?2:3)}function bt(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function Et(e,t,n={}){O(t),ve(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||W,i=n.hmac||((e,...n)=>ie(t,e,q(...n))),{Fp:o,Fn:s}=e,{ORDER:u,BITS:c}=s,{keygen:a,getPublicKey:f,getSharedSecret:d,utils:l,lengths:h}=function(e,t={}){const{Fn:n}=e,r=t.randomBytes||W,i=Object.assign(bt(e.Fp,n),{seed:Ke(n.ORDER)});function o(e){try{return!!yt(n,e)}catch(e){return!1}}function s(e=r(i.seed)){return Me(ce(e,i.seed,"seed"),n.ORDER)}function u(t,r=!0){return e.BASE.multiply(yt(n,t)).toBytes(r)}function c(t){if("bigint"==typeof t)return!1;if(t instanceof e)return!0;const{secretKey:r,publicKey:o,publicKeyUncompressed:s}=i;if(n.allowedLengths||r===o)return;const u=me("key",t).length;return u===o||u===s}const a={isValidSecretKey:o,isValidPublicKey:function(t,n){const{publicKey:r,publicKeyUncompressed:o}=i;try{const i=t.length;return!(!0===n&&i!==r||!1===n&&i!==o||!e.fromBytes(t))}catch(e){return!1}},randomSecretKey:s,isValidPrivateKey:o,randomPrivateKey:s,normPrivateKeyToScalar:e=>yt(n,e),precompute:(t=8,n=e.BASE)=>n.precompute(t,!1)};return Object.freeze({getPublicKey:u,getSharedSecret:function(t,r,i=!0){if(!0===c(t))throw new Error("first arg must be private key");if(!1===c(r))throw new Error("second arg must be public key");const o=yt(n,t);return e.fromHex(r).multiply(o).toBytes(i)},keygen:function(e){const t=s(e);return{secretKey:t,publicKey:u(t)}},Point:e,utils:a,lengths:i})}(e,n),p={prehash:!1,lowS:"boolean"==typeof n.lowS&&n.lowS,format:void 0,extraEntropy:!1},m="compact";function g(e){return e>u>>pt}function _(e,t){if(!s.isValidNot0(t))throw new Error(`invalid signature ${e}: out of range 1..Point.Fn.ORDER`);return t}class y{constructor(e,t,n){this.r=_("r",e),this.s=_("s",t),null!=n&&(this.recovery=n),Object.freeze(this)}static fromBytes(e,t=m){let n;if(function(e,t){at(t);const n=h.signature;ce(e,"compact"===t?n:"recovered"===t?n+1:void 0,`${t} signature`)}(e,t),"der"===t){const{r:t,s:n}=lt.toSig(ce(e));return new y(t,n)}"recovered"===t&&(n=e[0],t="compact",e=e.subarray(1));const r=s.BYTES,i=e.subarray(0,r),o=e.subarray(r,2*r);return new y(s.fromBytes(i),s.fromBytes(o),n)}static fromHex(e,t){return this.fromBytes(H(e),t)}addRecoveryBit(e){return new y(this.r,this.s,e)}recoverPublicKey(t){const n=o.ORDER,{r:r,s:i,recovery:c}=this;if(null==c||![0,1,2,3].includes(c))throw new Error("recovery id invalid");if(u*mt<n&&c>1)throw new Error("recovery id is ambiguous for h>1 curve");const a=2===c||3===c?r+u:r;if(!o.isValid(a))throw new Error("recovery id 2 or 3 invalid");const f=o.toBytes(a),d=e.fromBytes(q(vt(!(1&c)),f)),l=s.inv(a),h=v(me("msgHash",t)),p=s.create(-h*l),m=s.create(i*l),g=e.BASE.multiplyUnsafe(p).add(d.multiplyUnsafe(m));if(g.is0())throw new Error("point at infinify");return g.assertValidity(),g}hasHighS(){return g(this.s)}toBytes(e=m){if(at(e),"der"===e)return H(lt.hexFromSig(this));const t=s.toBytes(this.r),n=s.toBytes(this.s);if("recovered"===e){if(null==this.recovery)throw new Error("recovery bit must be present");return q(Uint8Array.of(this.recovery),t,n)}return q(t,n)}toHex(e){return N(this.toBytes(e))}assertValidity(){}static fromCompact(e){return y.fromBytes(me("sig",e),"compact")}static fromDER(e){return y.fromBytes(me("sig",e),"der")}normalizeS(){return this.hasHighS()?new y(this.r,s.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return N(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return N(this.toBytes("compact"))}}const w=n.bits2int||function(e){if(e.length>8192)throw new Error("input is too large");const t=de(e),n=8*e.length-c;return n>0?t>>BigInt(n):t},v=n.bits2int_modN||function(e){return s.create(w(e))},b=we(c);function E(e){return function(e,t,n,r){if(!_e(t,n,r))throw new Error("expected valid "+e+": "+n+" <= n < "+r+", got "+t)}("num < 2^"+c,e,ht,b),s.toBytes(e)}function k(e,n){return ce(e,void 0,"message"),n?ce(t(e),void 0,"prehashed message"):e}return Object.freeze({keygen:a,getPublicKey:f,getSharedSecret:d,utils:l,lengths:h,Point:e,sign:function(n,o,u={}){n=me("message",n);const{seed:c,k2sig:a}=function(t,n,i){if(["recovered","canonical"].some(e=>e in i))throw new Error("sign() legacy options not supported");const{lowS:o,prehash:u,extraEntropy:c}=ft(i,p);t=k(t,u);const a=v(t),f=yt(s,n),d=[E(f),E(a)];if(null!=c&&!1!==c){const e=!0===c?r(h.secretKey):c;d.push(me("extraEntropy",e))}const l=q(...d),m=a;return{seed:l,k2sig:function(t){const n=w(t);if(!s.isValidNot0(n))return;const r=s.inv(n),i=e.BASE.multiply(n).toAffine(),u=s.create(i.x);if(u===ht)return;const c=s.create(r*s.create(m+u*f));if(c===ht)return;let a=(i.x===u?0:2)|Number(i.y&pt),d=c;return o&&g(c)&&(d=s.neg(c),a^=1),new y(u,d,a)}}}(n,o,u);return function(e,t,n){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof t||t<2)throw new Error("qByteLen must be a number");if("function"!=typeof n)throw new Error("hmacFn must be a function");const r=e=>new Uint8Array(e),i=e=>Uint8Array.of(e);let o=r(e),s=r(e),u=0;const c=()=>{o.fill(1),s.fill(0),u=0},a=(...e)=>n(s,o,...e),f=(e=r(0))=>{s=a(i(0),e),o=a(),0!==e.length&&(s=a(i(1),e),o=a())},d=()=>{if(u++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e<t;){o=a();const t=o.slice();n.push(t),e+=o.length}return q(...n)};return(e,t)=>{let n;for(c(),f(e);!(n=t(d()));)f();return c(),n}}(t.outputLen,s.BYTES,i)(c,a)},verify:function(t,n,r,i={}){const{lowS:o,prehash:u,format:c}=ft(i,p);if(r=me("publicKey",r),n=k(me("message",n),u),"strict"in i)throw new Error("options.strict was renamed to lowS");const a=void 0===c?function(e){let t;const n="string"==typeof e||x(e),r=!n&&null!==e&&"object"==typeof e&&"bigint"==typeof e.r&&"bigint"==typeof e.s;if(!n&&!r)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(r)t=new y(e.r,e.s);else if(n){try{t=y.fromBytes(me("sig",e),"der")}catch(e){if(!(e instanceof lt.Err))throw e}if(!t)try{t=y.fromBytes(me("sig",e),"compact")}catch(e){return!1}}return t||!1}(t):y.fromBytes(me("sig",t),c);if(!1===a)return!1;try{const t=e.fromBytes(r);if(o&&a.hasHighS())return!1;const{r:i,s:u}=a,c=v(n),f=s.inv(u),d=s.create(c*f),l=s.create(i*f),h=e.BASE.multiplyUnsafe(d).add(t.multiplyUnsafe(l));if(h.is0())return!1;return s.create(h.x)===i}catch(e){return!1}},recoverPublicKey:function(e,t,n={}){const{prehash:r}=ft(n,p);return t=k(t,r),y.fromBytes(e,"recovered").recoverPublicKey(t).toBytes()},Signature:y,hash:t})}function xt(e){const{CURVE:t,curveOpts:n}=function(e){const t={a:e.a,b:e.b,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},n=e.Fp;let r=e.allowedPrivateKeyLengths?Array.from(new Set(e.allowedPrivateKeyLengths.map(e=>Math.ceil(e/2)))):void 0;return{CURVE:t,curveOpts:{Fp:n,Fn:Ve(t.n,{BITS:e.nBitLength,allowedLengths:r,modFromBytes:e.wrapPrivateKey}),allowInfinityPoint:e.allowInfinityPoint,endo:e.endo,isTorsionFree:e.isTorsionFree,clearCofactor:e.clearCofactor,fromBytes:e.fromBytes,toBytes:e.toBytes}}}(e),r={hmac:e.hmac,randomBytes:e.randomBytes,lowS:e.lowS,bits2int:e.bits2int,bits2int_modN:e.bits2int_modN};return{CURVE:t,curveOpts:n,hash:e.hash,ecdsaOpts:r}}function kt(e){const{CURVE:t,curveOpts:n,hash:r,ecdsaOpts:i}=xt(e);return function(e,t){const n=t.Point;return Object.assign({},t,{ProjectivePoint:n,CURVE:Object.assign({},e,Le(n.Fn.ORDER,n.Fn.BITS))})}(e,Et(wt(t,n),r,i))}
|
|
9
9
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
10
10
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
11
|
-
const bt={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Et={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},xt=BigInt(0),kt=BigInt(1),zt=BigInt(2);function Ot(e){const t=bt.p,n=BigInt(3),r=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),u=BigInt(44),c=BigInt(88),a=e*e*e%t,f=a*a*e%t,d=Te(f,n,t)*f%t,l=Te(d,n,t)*f%t,h=Te(l,zt,t)*a%t,p=Te(h,i,t)*h%t,m=Te(p,o,t)*p%t,g=Te(m,u,t)*m%t,_=Te(g,c,t)*g%t,w=Te(_,u,t)*m%t,y=Te(w,n,t)*f%t,v=Te(y,s,t)*p%t,b=Te(v,r,t)*a%t,E=Te(b,zt,t);if(!Pt.eql(Pt.sqr(E),e))throw new Error("Cannot find square root");return E}const Pt=De(bt.p,void 0,void 0,{sqrt:Ot}),St=function(e,t){const n=t=>vt({...e,hash:t});return{...n(t),create:n}}({...bt,Fp:Pt,lowS:!0,endo:Et},te),At={};function It(e,...t){let n=At[e];if(void 0===n){const t=te(Uint8Array.from(e,e=>e.charCodeAt(0)));n=V(t,t),At[e]=n}return te(V(n,...t))}const $t=e=>e.toBytes(!0).slice(1),Tt=e=>de(e,32),Nt=e=>$e(e,bt.p),Bt=e=>$e(e,bt.n),Ut=(()=>St.Point)(),Zt=e=>e%zt===xt;function Rt(e){let t=mt(Ut.Fn,e),n=Ut.BASE.multiply(t);return{scalar:Zt(n.y)?t:Bt(-t),bytes:$t(n)}}function Ct(e){ge("x",e,kt,bt.p);const t=Nt(e*e);let n=Ot(Nt(t*e+BigInt(7)));Zt(n)||(n=Nt(-n));const r=Ut.fromAffine({x:e,y:n});return r.assertValidity(),r}const jt=ae;function Ft(...e){return Bt(jt(It("BIP0340/challenge",...e)))}function Ht(e){return Rt(e).bytes}function Dt(e,t,n=K(32)){const r=he("message",e),{bytes:i,scalar:o}=Rt(t),s=he("auxRand",n,32),u=Tt(o^jt(It("BIP0340/aux",s))),c=It("BIP0340/nonce",u,i,r),a=Bt(jt(c));if(a===xt)throw new Error("sign failed: k is zero");const{bytes:f,scalar:d}=Rt(a),l=Ft(f,i,r),h=new Uint8Array(64);if(h.set(f,0),h.set(Tt(Bt(d+l*o)),32),!Lt(h,r,i))throw new Error("sign: Invalid signature produced");return h}function Lt(e,t,n){const r=he("signature",e,64),i=he("message",t),o=he("publicKey",n,32);try{const e=Ct(jt(o)),t=jt(r.subarray(0,32));if(!me(t,kt,bt.p))return!1;const n=jt(r.subarray(32,64));if(!me(n,kt,bt.n))return!1;const s=Ft(Tt(t),$t(e),i),u=Ut.BASE.multiplyUnsafe(n).add(e.multiplyUnsafe(Bt(-s))),{x:c,y:a}=u.toAffine();return!(u.is0()||!Zt(a)||c!==t)}catch(e){return!1}}const Vt=(()=>{const e=(e=K(48))=>qe(e,bt.n);return{keygen:function(t){const n=e(t);return{secretKey:n,publicKey:Ht(n)}},getPublicKey:Ht,sign:Dt,verify:Lt,Point:Ut,utils:{randomSecretKey:e,randomPrivateKey:e,taggedHash:It,lift_x:Ct,pointToBytes:$t,numberToBytesBE:de,bytesToNumberBE:ae,mod:$e},info:{type:"weierstrass",publicKeyHasPrefix:!1,lengths:{secret:32,public:32,signature:64,seed:48}}}})(),qt=BigInt(0),Mt=BigInt(2);De(St.CURVE.n,32,!0);const Kt=St.Point.BASE;function Wt(e,t,n,r=!1){const i=Yt(t).big,o=function(e){try{const t=Gt(e,"ecdsa");return St.Point.fromHex(t)}catch(t){throw new Error("invalid pubkey: "+e)}}(e),s=Kt.multiply(i);let u=o.add(s);r&&u.y%Mt!==qt&&(u=u.negate());return Gt(u.toHex(!0),n)}function Gt(e,t){try{const n=Yt(e);if(33===n.length&&"bip340"===t)return n.slice(1);if(32===n.length&&"ecdsa"===t){const e=g.num(2,1);return g.join([e,n])}return n}catch(t){throw new Error("invalid pubkey: "+String(e))}}function Yt(e){try{return g.bytes(e)}catch(t){throw new Error("invalid bytes: "+String(e))}}const Xt=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Jt=(()=>Uint8Array.from(new Array(16).fill(0).map((e,t)=>t)))(),Qt=(()=>Jt.map(e=>(9*e+5)%16))(),en=(()=>{const e=[[Jt],[Qt]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map(e=>Xt[e]));return e})(),tn=(()=>en[0])(),nn=(()=>en[1])(),rn=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>Uint8Array.from(e)),on=tn.map((e,t)=>e.map(e=>rn[t][e])),sn=nn.map((e,t)=>e.map(e=>rn[t][e])),un=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),cn=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function an(e,t,n,r){return 0===e?t^n^r:1===e?t&n|~t&r:2===e?(t|~n)^r:3===e?t&r|n&~r:t^(n|~r)}const fn=new Uint32Array(16);class dn extends Y{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:e,h1:t,h2:n,h3:r,h4:i}=this;return[e,t,n,r,i]}set(e,t,n,r,i){this.h0=0|e,this.h1=0|t,this.h2=0|n,this.h3=0|r,this.h4=0|i}process(e,t){for(let n=0;n<16;n++,t+=4)fn[n]=e.getUint32(t,!0);let n=0|this.h0,r=n,i=0|this.h1,o=i,s=0|this.h2,u=s,c=0|this.h3,a=c,f=0|this.h4,d=f;for(let e=0;e<5;e++){const t=4-e,l=un[e],h=cn[e],p=tn[e],m=nn[e],g=on[e],_=sn[e];for(let t=0;t<16;t++){const r=$(n+an(e,i,s,c)+fn[p[t]]+l,g[t])+f|0;n=f,f=c,c=0|$(s,10),s=i,i=r}for(let e=0;e<16;e++){const n=$(r+an(t,o,u,a)+fn[m[e]]+h,_[e])+d|0;r=d,d=a,a=0|$(u,10),u=o,o=n}}this.set(this.h1+s+a|0,this.h2+c+d|0,this.h3+f+r|0,this.h4+n+o|0,this.h0+i+u|0)}roundClean(){S(fn)}destroy(){this.destroyed=!0,S(this.buffer),this.set(0,0,0,0,0)}}const ln=M(()=>new dn);function hn(...e){const t=g.join(e),n=ln(te(t));return new g(n)}function pn(...e){const t=g.join(e),n=te(t);return new g(n)}function mn(...e){const t=g.join(e),n=te(te(t));return new g(n)}function gn(e,...t){const n=function(e){const t=pn(g.str(e));return g.join([t,t])}(e),r=t.map(e=>new g(e));return pn(g.join([n,...r]))}function _n(e,t,n){function r(n,r){var i;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(i=n._zod).traits??(i.traits=new Set),n._zod.traits.add(e),t(n,r);for(const e in s.prototype)e in n||Object.defineProperty(n,e,{value:s.prototype[e].bind(n)});n._zod.constr=s,n._zod.def=r}const i=n?.Parent??Object;class o extends i{}function s(e){var t;const i=n?.Parent?new o:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(const e of i._zod.deferred)e();return i}return Object.defineProperty(o,"name",{value:e}),Object.defineProperty(s,"init",{value:r}),Object.defineProperty(s,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}class wn extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}const yn={};function vn(e){return yn}function bn(e,t){return"bigint"==typeof t?t.toString():t}function En(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function xn(e){return null==e}function kn(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function zn(e,t,n){Object.defineProperty(e,t,{get(){{const r=n();return e[t]=r,r}},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function On(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Pn(e){return JSON.stringify(e)}const Sn=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{};function An(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const In=En(()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function $n(e){if(!1===An(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==An(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}const Tn=new Set(["string","number","symbol"]);function Nn(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Bn(e,t,n){const r=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(r._zod.parent=e),r}function Un(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}const Zn={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Rn(e,t=0){for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function Cn(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function jn(e){return"string"==typeof e?e:e?.message}function Fn(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const i=jn(e.inst?._zod.def?.error?.(e))??jn(t?.error?.(e))??jn(n.customError?.(e))??jn(n.localeError?.(e))??"Invalid input";r.message=i}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Hn(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function Dn(...e){const[t,n,r]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:r}:{...t}}const Ln=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),Object.defineProperty(e,"message",{get:()=>JSON.stringify(t,bn,2),enumerable:!0}),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Vn=_n("$ZodError",Ln),qn=_n("$ZodError",Ln,{Parent:Error});const Mn=e=>(t,n,r,i)=>{const o=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new wn;if(s.issues.length){const t=new(i?.Err??e)(s.issues.map(e=>Fn(e,o,vn())));throw Sn(t,i?.callee),t}return s.value},Kn=e=>async(t,n,r,i)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){const t=new(i?.Err??e)(s.issues.map(e=>Fn(e,o,vn())));throw Sn(t,i?.callee),t}return s.value},Wn=e=>(t,n,r)=>{const i=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new wn;return o.issues.length?{success:!1,error:new(e??Vn)(o.issues.map(e=>Fn(e,i,vn())))}:{success:!0,data:o.value}},Gn=Wn(qn),Yn=e=>async(t,n,r)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let o=t._zod.run({value:n,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(e=>Fn(e,i,vn())))}:{success:!0,data:o.value}},Xn=Yn(qn),Jn=/^[cC][^\s-]{8,}$/,Qn=/^[0-9a-z]+$/,er=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,tr=/^[0-9a-vA-V]{20}$/,nr=/^[A-Za-z0-9]{27}$/,rr=/^[a-zA-Z0-9_-]{21}$/,ir=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,or=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,sr=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,ur=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;const cr=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ar=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,fr=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,dr=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,lr=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,hr=/^[A-Za-z0-9_-]*$/,pr=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,mr=/^\+(?:[0-9]){6,14}[0-9]$/,gr="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",_r=new RegExp(`^${gr}$`);function wr(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const yr=/^\d+n?$/,vr=/^\d+$/,br=/^-?\d+(?:\.\d+)?/i,Er=/true|false/i,xr=/null/i,kr=/^[^A-Z]*$/,zr=/^[^a-z]*$/,Or=_n("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Pr={number:"number",bigint:"bigint",object:"date"},Sr=_n("$ZodCheckLessThan",(e,t)=>{Or.init(e,t);const n=Pr[typeof t.value];e._zod.onattach.push(e=>{const n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ar=_n("$ZodCheckGreaterThan",(e,t)=>{Or.init(e,t);const n=Pr[typeof t.value];e._zod.onattach.push(e=>{const n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ir=_n("$ZodCheckMultipleOf",(e,t)=>{Or.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,i=n>r?n:r;return Number.parseInt(e.toFixed(i).replace(".",""))%Number.parseInt(t.toFixed(i).replace(".",""))/10**i}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),$r=_n("$ZodCheckNumberFormat",(e,t)=>{Or.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[i,o]=Zn[t.format];e._zod.onattach.push(e=>{const r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=o,n&&(r.pattern=vr)}),e._zod.check=s=>{const u=s.value;if(n){if(!Number.isInteger(u))return void s.issues.push({expected:r,format:t.format,code:"invalid_type",input:u,inst:e});if(!Number.isSafeInteger(u))return void(u>0?s.issues.push({input:u,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}):s.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}))}u<i&&s.issues.push({origin:"number",input:u,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),u>o&&s.issues.push({origin:"number",input:u,code:"too_big",maximum:o,inst:e})}}),Tr=_n("$ZodCheckMaxLength",(e,t)=>{var n;Or.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!xn(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const r=n.value;if(r.length<=t.maximum)return;const i=Hn(r);n.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Nr=_n("$ZodCheckMinLength",(e,t)=>{var n;Or.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!xn(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const r=n.value;if(r.length>=t.minimum)return;const i=Hn(r);n.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Br=_n("$ZodCheckLengthEquals",(e,t)=>{var n;Or.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!xn(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{const r=n.value,i=r.length;if(i===t.length)return;const o=Hn(r),s=i>t.length;n.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Ur=_n("$ZodCheckStringFormat",(e,t)=>{var n,r;Or.init(e,t),e._zod.onattach.push(e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Zr=_n("$ZodCheckRegex",(e,t)=>{Ur.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Rr=_n("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=kr),Ur.init(e,t)}),Cr=_n("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=zr),Ur.init(e,t)}),jr=_n("$ZodCheckIncludes",(e,t)=>{Or.init(e,t);const n=Nn(t.includes),r=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Fr=_n("$ZodCheckStartsWith",(e,t)=>{Or.init(e,t);const n=new RegExp(`^${Nn(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Hr=_n("$ZodCheckEndsWith",(e,t)=>{Or.init(e,t);const n=new RegExp(`.*${Nn(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Dr=_n("$ZodCheckOverwrite",(e,t)=>{Or.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});class Lr{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>" ".repeat(2*this.indent)+e);for(const e of r)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map(e=>` ${e}`)].join("\n"))}}const Vr={major:4,minor:0,patch:5},qr=_n("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Vr;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const t of r)for(const n of t._zod.onattach)n(e);if(0===r.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const t=(e,t,n)=>{let r,i=Rn(e);for(const o of t){if(o._zod.def.when){if(!o._zod.def.when(e))continue}else if(i)continue;const t=e.issues.length,s=o._zod.check(e);if(s instanceof Promise&&!1===n?.async)throw new wn;if(r||s instanceof Promise)r=(r??Promise.resolve()).then(async()=>{await s;e.issues.length!==t&&(i||(i=Rn(e,t)))});else{if(e.issues.length===t)continue;i||(i=Rn(e,t))}}return r?r.then(()=>e):e};e._zod.run=(n,i)=>{const o=e._zod.parse(n,i);if(o instanceof Promise){if(!1===i.async)throw new wn;return o.then(e=>t(e,r,i))}return t(o,r,i)}}e["~standard"]={validate:t=>{try{const n=Gn(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return Xn(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:"zod",version:1}}),Mr=_n("$ZodString",(e,t)=>{var n;qr.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(r){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Kr=_n("$ZodStringFormat",(e,t)=>{Ur.init(e,t),Mr.init(e,t)}),Wr=_n("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=or),Kr.init(e,t)}),Gr=_n("$ZodUUID",(e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=sr(e))}else t.pattern??(t.pattern=sr());Kr.init(e,t)}),Yr=_n("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ur),Kr.init(e,t)}),Xr=_n("$ZodURL",(e,t)=>{Kr.init(e,t),e._zod.check=n=>{try{const r=n.value,i=new URL(r),o=i.href;return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:pr.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(!r.endsWith("/")&&o.endsWith("/")?n.value=o.slice(0,-1):n.value=o)}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Jr=_n("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Kr.init(e,t)}),Qr=_n("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=rr),Kr.init(e,t)}),ei=_n("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Jn),Kr.init(e,t)}),ti=_n("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Qn),Kr.init(e,t)}),ni=_n("$ZodULID",(e,t)=>{t.pattern??(t.pattern=er),Kr.init(e,t)}),ri=_n("$ZodXID",(e,t)=>{t.pattern??(t.pattern=tr),Kr.init(e,t)}),ii=_n("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=nr),Kr.init(e,t)}),oi=_n("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=function(e){const t=wr({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-]\\d{2}:\\d{2})");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${gr}T(?:${r})$`)}(t)),Kr.init(e,t)}),si=_n("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=_r),Kr.init(e,t)}),ui=_n("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=new RegExp(`^${wr(t)}$`)),Kr.init(e,t)}),ci=_n("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=ir),Kr.init(e,t)}),ai=_n("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=cr),Kr.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv4"})}),fi=_n("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=ar),Kr.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv6"}),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),di=_n("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=fr),Kr.init(e,t)}),li=_n("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=dr),Kr.init(e,t),e._zod.check=n=>{const[r,i]=n.value.split("/");try{if(!i)throw new Error;const e=Number(i);if(`${e}`!==i)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${r}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function hi(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const pi=_n("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=lr),Kr.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64"}),e._zod.check=n=>{hi(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});const mi=_n("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=hr),Kr.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64url"}),e._zod.check=n=>{(function(e){if(!hr.test(e))return!1;const t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return hi(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),gi=_n("$ZodE164",(e,t)=>{t.pattern??(t.pattern=mr),Kr.init(e,t)});const _i=_n("$ZodJWT",(e,t)=>{Kr.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[r]=n;if(!r)return!1;const i=JSON.parse(atob(r));return!("typ"in i&&"JWT"!==i?.typ||!i.alg||t&&(!("alg"in i)||i.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),wi=_n("$ZodNumber",(e,t)=>{qr.init(e,t),e._zod.pattern=e._zod.bag.pattern??br,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const i=n.value;if("number"==typeof i&&!Number.isNaN(i)&&Number.isFinite(i))return n;const o="number"==typeof i?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...o?{received:o}:{}}),n}}),yi=_n("$ZodNumber",(e,t)=>{$r.init(e,t),wi.init(e,t)}),vi=_n("$ZodBoolean",(e,t)=>{qr.init(e,t),e._zod.pattern=Er,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const i=n.value;return"boolean"==typeof i||n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),bi=_n("$ZodBigInt",(e,t)=>{qr.init(e,t),e._zod.pattern=yr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(e){}return"bigint"==typeof n.value||n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),Ei=_n("$ZodNull",(e,t)=>{qr.init(e,t),e._zod.pattern=xr,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{const r=t.value;return null===r||t.issues.push({expected:"null",code:"invalid_type",input:r,inst:e}),t}}),xi=_n("$ZodAny",(e,t)=>{qr.init(e,t),e._zod.parse=e=>e}),ki=_n("$ZodUnknown",(e,t)=>{qr.init(e,t),e._zod.parse=e=>e}),zi=_n("$ZodNever",(e,t)=>{qr.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)}),Oi=_n("$ZodDate",(e,t)=>{qr.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const i=n.value,o=i instanceof Date;return o&&!Number.isNaN(i.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:i,...o?{received:"Invalid Date"}:{},inst:e}),n}});function Pi(e,t,n){e.issues.length&&t.issues.push(...Cn(n,e.issues)),t.value[n]=e.value}const Si=_n("$ZodArray",(e,t)=>{qr.init(e,t),e._zod.parse=(n,r)=>{const i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);const o=[];for(let e=0;e<i.length;e++){const s=i[e],u=t.element._zod.run({value:s,issues:[]},r);u instanceof Promise?o.push(u.then(t=>Pi(t,n,e))):Pi(u,n,e)}return o.length?Promise.all(o).then(()=>n):n}});function Ai(e,t,n){e.issues.length&&t.issues.push(...Cn(n,e.issues)),t.value[n]=e.value}function Ii(e,t,n,r){e.issues.length?void 0===r[n]?t.value[n]=n in r?void 0:e.value:t.issues.push(...Cn(n,e.issues)):void 0===e.value?n in r&&(t.value[n]=void 0):t.value[n]=e.value}const $i=_n("$ZodObject",(e,t)=>{qr.init(e,t);const n=En(()=>{const e=Object.keys(t.shape);for(const n of e)if(!(t.shape[n]instanceof qr))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(r=t.shape,Object.keys(r).filter(e=>"optional"===r[e]._zod.optin&&"optional"===r[e]._zod.optout));var r;return{shape:t.shape,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(n)}});zn(e._zod,"propValues",()=>{const e=t.shape,n={};for(const t in e){const r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(const e of r.values)n[t].add(e)}}return n});let r;const i=An,o=!yn.jitless,s=o&&In.value,u=t.catchall;let c;e._zod.parse=(a,f)=>{c??(c=n.value);const d=a.value;if(!i(d))return a.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),a;const l=[];if(o&&s&&!1===f?.async&&!0!==f.jitless)r||(r=(e=>{const t=new Lr(["shape","payload","ctx"]),r=n.value,i=e=>{const t=Pn(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const o=Object.create(null);let s=0;for(const e of r.keys)o[e]="key_"+s++;t.write("const newResult = {}");for(const e of r.keys)if(r.optionalKeys.has(e)){const n=o[e];t.write(`const ${n} = ${i(e)};`);const r=Pn(e);t.write(`\n if (${n}.issues.length) {\n if (input[${r}] === undefined) {\n if (${r} in input) {\n newResult[${r}] = undefined;\n }\n } else {\n payload.issues = payload.issues.concat(\n ${n}.issues.map((iss) => ({\n ...iss,\n path: iss.path ? [${r}, ...iss.path] : [${r}],\n }))\n );\n }\n } else if (${n}.value === undefined) {\n if (${r} in input) newResult[${r}] = undefined;\n } else {\n newResult[${r}] = ${n}.value;\n }\n `)}else{const n=o[e];t.write(`const ${n} = ${i(e)};`),t.write(`\n if (${n}.issues.length) payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${Pn(e)}, ...iss.path] : [${Pn(e)}]\n })));`),t.write(`newResult[${Pn(e)}] = ${n}.value`)}t.write("payload.value = newResult;"),t.write("return payload;");const u=t.compile();return(t,n)=>u(e,t,n)})(t.shape)),a=r(a,f);else{a.value={};const e=c.shape;for(const t of c.keys){const n=e[t],r=n._zod.run({value:d[t],issues:[]},f),i="optional"===n._zod.optin&&"optional"===n._zod.optout;r instanceof Promise?l.push(r.then(e=>i?Ii(e,a,t,d):Ai(e,a,t))):i?Ii(r,a,t,d):Ai(r,a,t)}}if(!u)return l.length?Promise.all(l).then(()=>a):a;const h=[],p=c.keySet,m=u._zod,g=m.def.type;for(const e of Object.keys(d)){if(p.has(e))continue;if("never"===g){h.push(e);continue}const t=m.run({value:d[e],issues:[]},f);t instanceof Promise?l.push(t.then(t=>Ai(t,a,e))):Ai(t,a,e)}return h.length&&a.issues.push({code:"unrecognized_keys",keys:h,input:d,inst:e}),l.length?Promise.all(l).then(()=>a):a}});function Ti(e,t,n,r){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Fn(e,r,vn())))}),t}const Ni=_n("$ZodUnion",(e,t)=>{qr.init(e,t),zn(e._zod,"optin",()=>t.options.some(e=>"optional"===e._zod.optin)?"optional":void 0),zn(e._zod,"optout",()=>t.options.some(e=>"optional"===e._zod.optout)?"optional":void 0),zn(e._zod,"values",()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),zn(e._zod,"pattern",()=>{if(t.options.every(e=>e._zod.pattern)){const e=t.options.map(e=>e._zod.pattern);return new RegExp(`^(${e.map(e=>kn(e.source)).join("|")})$`)}}),e._zod.parse=(n,r)=>{let i=!1;const o=[];for(const e of t.options){const t=e._zod.run({value:n.value,issues:[]},r);if(t instanceof Promise)o.push(t),i=!0;else{if(0===t.issues.length)return t;o.push(t)}}return i?Promise.all(o).then(t=>Ti(t,n,e,r)):Ti(o,n,e,r)}}),Bi=_n("$ZodIntersection",(e,t)=>{qr.init(e,t),e._zod.parse=(e,n)=>{const r=e.value,i=t.left._zod.run({value:r,issues:[]},n),o=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||o instanceof Promise?Promise.all([i,o]).then(([t,n])=>Zi(e,t,n)):Zi(e,i,o)}});function Ui(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if($n(e)&&$n(t)){const n=Object.keys(t),r=Object.keys(e).filter(e=>-1!==n.indexOf(e)),i={...e,...t};for(const n of r){const r=Ui(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const i=Ui(e[r],t[r]);if(!i.valid)return{valid:!1,mergeErrorPath:[r,...i.mergeErrorPath]};n.push(i.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Zi(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Rn(e))return e;const r=Ui(t.value,n.value);if(!r.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const Ri=_n("$ZodRecord",(e,t)=>{qr.init(e,t),e._zod.parse=(n,r)=>{const i=n.value;if(!$n(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;const o=[];if(t.keyType._zod.values){const s=t.keyType._zod.values;n.value={};for(const e of s)if("string"==typeof e||"number"==typeof e||"symbol"==typeof e){const s=t.valueType._zod.run({value:i[e],issues:[]},r);s instanceof Promise?o.push(s.then(t=>{t.issues.length&&n.issues.push(...Cn(e,t.issues)),n.value[e]=t.value})):(s.issues.length&&n.issues.push(...Cn(e,s.issues)),n.value[e]=s.value)}let u;for(const e in i)s.has(e)||(u=u??[],u.push(e));u&&u.length>0&&n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:u})}else{n.value={};for(const s of Reflect.ownKeys(i)){if("__proto__"===s)continue;const u=t.keyType._zod.run({value:s,issues:[]},r);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(u.issues.length){n.issues.push({origin:"record",code:"invalid_key",issues:u.issues.map(e=>Fn(e,r,vn())),input:s,path:[s],inst:e}),n.value[u.value]=u.value;continue}const c=t.valueType._zod.run({value:i[s],issues:[]},r);c instanceof Promise?o.push(c.then(e=>{e.issues.length&&n.issues.push(...Cn(s,e.issues)),n.value[u.value]=e.value})):(c.issues.length&&n.issues.push(...Cn(s,c.issues)),n.value[u.value]=c.value)}}return o.length?Promise.all(o).then(()=>n):n}}),Ci=_n("$ZodEnum",(e,t)=>{qr.init(e,t);const n=function(e){const t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,n])=>-1===t.indexOf(+e)).map(([e,t])=>t)}(t.entries);e._zod.values=new Set(n),e._zod.pattern=new RegExp(`^(${n.filter(e=>Tn.has(typeof e)).map(e=>"string"==typeof e?Nn(e):e.toString()).join("|")})$`),e._zod.parse=(t,r)=>{const i=t.value;return e._zod.values.has(i)||t.issues.push({code:"invalid_value",values:n,input:i,inst:e}),t}}),ji=_n("$ZodTransform",(e,t)=>{qr.init(e,t),e._zod.parse=(e,n)=>{const r=t.transform(e.value,e);if(n.async){return(r instanceof Promise?r:Promise.resolve(r)).then(t=>(e.value=t,e))}if(r instanceof Promise)throw new wn;return e.value=r,e}}),Fi=_n("$ZodOptional",(e,t)=>{qr.init(e,t),e._zod.optin="optional",e._zod.optout="optional",zn(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),zn(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${kn(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>"optional"===t.innerType._zod.optin?t.innerType._zod.run(e,n):void 0===e.value?e:t.innerType._zod.run(e,n)}),Hi=_n("$ZodNullable",(e,t)=>{qr.init(e,t),zn(e._zod,"optin",()=>t.innerType._zod.optin),zn(e._zod,"optout",()=>t.innerType._zod.optout),zn(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${kn(e.source)}|null)$`):void 0}),zn(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)}),Di=_n("$ZodDefault",(e,t)=>{qr.init(e,t),e._zod.optin="optional",zn(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(void 0===e.value)return e.value=t.defaultValue,e;const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Li(e,t)):Li(r,t)}});function Li(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const Vi=_n("$ZodPrefault",(e,t)=>{qr.init(e,t),e._zod.optin="optional",zn(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),qi=_n("$ZodNonOptional",(e,t)=>{qr.init(e,t),zn(e._zod,"values",()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter(e=>void 0!==e)):void 0}),e._zod.parse=(n,r)=>{const i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Mi(t,e)):Mi(i,e)}});function Mi(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Ki=_n("$ZodCatch",(e,t)=>{qr.init(e,t),e._zod.optin="optional",zn(e._zod,"optout",()=>t.innerType._zod.optout),zn(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Fn(e,n,vn()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Fn(e,n,vn()))},input:e.value}),e.issues=[]),e)}}),Wi=_n("$ZodPipe",(e,t)=>{qr.init(e,t),zn(e._zod,"values",()=>t.in._zod.values),zn(e._zod,"optin",()=>t.in._zod.optin),zn(e._zod,"optout",()=>t.out._zod.optout),zn(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{const r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Gi(e,t,n)):Gi(r,t,n)}});function Gi(e,t,n){return Rn(e)?e:t.out._zod.run({value:e.value,issues:e.issues},n)}const Yi=_n("$ZodReadonly",(e,t)=>{qr.init(e,t),zn(e._zod,"propValues",()=>t.innerType._zod.propValues),zn(e._zod,"values",()=>t.innerType._zod.values),zn(e._zod,"optin",()=>t.innerType._zod.optin),zn(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(e,n)=>{const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Xi):Xi(r)}});function Xi(e){return e.value=Object.freeze(e.value),e}const Ji=_n("$ZodLazy",(e,t)=>{qr.init(e,t),zn(e._zod,"innerType",()=>t.getter()),zn(e._zod,"pattern",()=>e._zod.innerType._zod.pattern),zn(e._zod,"propValues",()=>e._zod.innerType._zod.propValues),zn(e._zod,"optin",()=>e._zod.innerType._zod.optin),zn(e._zod,"optout",()=>e._zod.innerType._zod.optout),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Qi=_n("$ZodCustom",(e,t)=>{Or.init(e,t),qr.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>eo(t,n,r,e));eo(i,n,r,e)}});function eo(e,t,n,r){if(!e){const e={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Dn(e))}}class to{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}}function no(){return new to}const ro=no();function io(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Un(t)})}function oo(e,t){return new Sr({check:"less_than",...Un(t),value:e,inclusive:!1})}function so(e,t){return new Sr({check:"less_than",...Un(t),value:e,inclusive:!0})}function uo(e,t){return new Ar({check:"greater_than",...Un(t),value:e,inclusive:!1})}function co(e,t){return new Ar({check:"greater_than",...Un(t),value:e,inclusive:!0})}function ao(e,t){return new Ir({check:"multiple_of",...Un(t),value:e})}function fo(e,t){return new Tr({check:"max_length",...Un(t),maximum:e})}function lo(e,t){return new Nr({check:"min_length",...Un(t),minimum:e})}function ho(e,t){return new Br({check:"length_equals",...Un(t),length:e})}function po(e){return new Dr({check:"overwrite",tx:e})}const mo=_n("ZodISODateTime",(e,t)=>{oi.init(e,t),To.init(e,t)});function go(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Un(t)})}(mo,e)}const _o=_n("ZodISODate",(e,t)=>{si.init(e,t),To.init(e,t)});function wo(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Un(t)})}(_o,e)}const yo=_n("ZodISOTime",(e,t)=>{ui.init(e,t),To.init(e,t)});function vo(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Un(t)})}(yo,e)}const bo=_n("ZodISODuration",(e,t)=>{ci.init(e,t),To.init(e,t)});function Eo(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Un(t)})}(bo,e)}const xo=_n("ZodError",(e,t)=>{Vn.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},r={_errors:[]},i=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map(e=>i({issues:e}));else if("invalid_key"===t.code)i({issues:t.issues});else if("invalid_element"===t.code)i({issues:t.issues});else if(0===t.path.length)r._errors.push(n(t));else{let e=r,i=0;for(;i<t.path.length;){const r=t.path[i];i===t.path.length-1?(e[r]=e[r]||{_errors:[]},e[r]._errors.push(n(t))):e[r]=e[r]||{_errors:[]},e=e[r],i++}}};return i(e),r}(e,t)},flatten:{value:t=>function(e,t=e=>e.message){const n={},r=[];for(const i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}(e,t)},addIssue:{value:t=>e.issues.push(t)},addIssues:{value:t=>e.issues.push(...t)},isEmpty:{get:()=>0===e.issues.length}})},{Parent:Error}),ko=Mn(xo),zo=Kn(xo),Oo=Wn(xo),Po=Yn(xo),So=_n("ZodType",(e,t)=>(qr.init(e,t),e.def=t,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e)]}),e.clone=(t,n)=>Bn(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>ko(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Oo(e,t,n),e.parseAsync=async(t,n)=>zo(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Po(e,t,n),e.spa=e.safeParseAsync,e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Un(n)})}(Zs,e,t)}(t,n)),e.superRefine=t=>e.check(function(e){const t=function(e){const t=new Or({check:"custom"});return t._zod.check=e,t}(n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push(Dn(e,n.value,t._zod.def));else{const r=e;r.fatal&&(r.continue=!1),r.code??(r.code="custom"),r.input??(r.input=n.value),r.inst??(r.inst=t),r.continue??(r.continue=!t._zod.def.abort),n.issues.push(Dn(r))}},e(n.value,n)));return t}(t)),e.overwrite=t=>e.check(po(t)),e.optional=()=>zs(e),e.nullable=()=>Ps(e),e.nullish=()=>zs(Ps(e)),e.nonoptional=t=>function(e,t){return new Is({type:"nonoptional",innerType:e,...Un(t)})}(e,t),e.array=()=>ps(e),e.or=t=>ws([e,t]),e.and=t=>new ys({type:"intersection",left:e,right:t}),e.transform=t=>Ns(e,new xs({type:"transform",transform:t})),e.default=t=>{return n=t,new Ss({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():n}});var n},e.prefault=t=>{return n=t,new As({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():n}});var n},e.catch=t=>{return new $s({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>Ns(e,t),e.readonly=()=>new Bs({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return ro.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>ro.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return ro.get(e);const n=e.clone();return ro.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Ao=_n("_ZodString",(e,t)=>{Mr.init(e,t),So.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new Zr({check:"string_format",format:"regex",...Un(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new jr({check:"string_format",format:"includes",...Un(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new Fr({check:"string_format",format:"starts_with",...Un(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new Hr({check:"string_format",format:"ends_with",...Un(t),suffix:e})}(...t)),e.min=(...t)=>e.check(lo(...t)),e.max=(...t)=>e.check(fo(...t)),e.length=(...t)=>e.check(ho(...t)),e.nonempty=(...t)=>e.check(lo(1,...t)),e.lowercase=t=>e.check(function(e){return new Rr({check:"string_format",format:"lowercase",...Un(e)})}(t)),e.uppercase=t=>e.check(function(e){return new Cr({check:"string_format",format:"uppercase",...Un(e)})}(t)),e.trim=()=>e.check(po(e=>e.trim())),e.normalize=(...t)=>e.check(function(e){return po(t=>t.normalize(e))}(...t)),e.toLowerCase=()=>e.check(po(e=>e.toLowerCase())),e.toUpperCase=()=>e.check(po(e=>e.toUpperCase()))}),Io=_n("ZodString",(e,t)=>{Mr.init(e,t),Ao.init(e,t),e.email=t=>e.check(function(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Un(t)})}(No,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Un(t)})}(Zo,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Un(t)})}(Xo,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Un(t)})}(Ro,t)),e.guid=t=>e.check(io(Bo,t)),e.uuid=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Un(t)})}(Uo,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Un(t)})}(Uo,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Un(t)})}(Uo,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Un(t)})}(Uo,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Un(t)})}(Co,t)),e.guid=t=>e.check(io(Bo,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Un(t)})}(jo,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Un(t)})}(Fo,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Un(t)})}(Ho,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Un(t)})}(Wo,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Un(t)})}(Go,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Un(t)})}(Do,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Un(t)})}(Lo,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Un(t)})}(Vo,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Un(t)})}(qo,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Un(t)})}(Mo,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Un(t)})}(Ko,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Un(t)})}(Yo,t)),e.datetime=t=>e.check(go(t)),e.date=t=>e.check(wo(t)),e.time=t=>e.check(vo(t)),e.duration=t=>e.check(Eo(t))});function $o(e){return function(e,t){return new e({type:"string",...Un(t)})}(Io,e)}const To=_n("ZodStringFormat",(e,t)=>{Kr.init(e,t),Ao.init(e,t)}),No=_n("ZodEmail",(e,t)=>{Yr.init(e,t),To.init(e,t)}),Bo=_n("ZodGUID",(e,t)=>{Wr.init(e,t),To.init(e,t)}),Uo=_n("ZodUUID",(e,t)=>{Gr.init(e,t),To.init(e,t)}),Zo=_n("ZodURL",(e,t)=>{Xr.init(e,t),To.init(e,t)}),Ro=_n("ZodEmoji",(e,t)=>{Jr.init(e,t),To.init(e,t)}),Co=_n("ZodNanoID",(e,t)=>{Qr.init(e,t),To.init(e,t)}),jo=_n("ZodCUID",(e,t)=>{ei.init(e,t),To.init(e,t)}),Fo=_n("ZodCUID2",(e,t)=>{ti.init(e,t),To.init(e,t)}),Ho=_n("ZodULID",(e,t)=>{ni.init(e,t),To.init(e,t)}),Do=_n("ZodXID",(e,t)=>{ri.init(e,t),To.init(e,t)}),Lo=_n("ZodKSUID",(e,t)=>{ii.init(e,t),To.init(e,t)}),Vo=_n("ZodIPv4",(e,t)=>{ai.init(e,t),To.init(e,t)}),qo=_n("ZodIPv6",(e,t)=>{fi.init(e,t),To.init(e,t)}),Mo=_n("ZodCIDRv4",(e,t)=>{di.init(e,t),To.init(e,t)}),Ko=_n("ZodCIDRv6",(e,t)=>{li.init(e,t),To.init(e,t)}),Wo=_n("ZodBase64",(e,t)=>{pi.init(e,t),To.init(e,t)}),Go=_n("ZodBase64URL",(e,t)=>{mi.init(e,t),To.init(e,t)}),Yo=_n("ZodE164",(e,t)=>{gi.init(e,t),To.init(e,t)}),Xo=_n("ZodJWT",(e,t)=>{_i.init(e,t),To.init(e,t)}),Jo=_n("ZodNumber",(e,t)=>{wi.init(e,t),So.init(e,t),e.gt=(t,n)=>e.check(uo(t,n)),e.gte=(t,n)=>e.check(co(t,n)),e.min=(t,n)=>e.check(co(t,n)),e.lt=(t,n)=>e.check(oo(t,n)),e.lte=(t,n)=>e.check(so(t,n)),e.max=(t,n)=>e.check(so(t,n)),e.int=t=>e.check(ts(t)),e.safe=t=>e.check(ts(t)),e.positive=t=>e.check(uo(0,t)),e.nonnegative=t=>e.check(co(0,t)),e.negative=t=>e.check(oo(0,t)),e.nonpositive=t=>e.check(so(0,t)),e.multipleOf=(t,n)=>e.check(ao(t,n)),e.step=(t,n)=>e.check(ao(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Qo(e){return function(e,t){return new e({type:"number",checks:[],...Un(t)})}(Jo,e)}const es=_n("ZodNumberFormat",(e,t)=>{yi.init(e,t),Jo.init(e,t)});function ts(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Un(t)})}(es,e)}const ns=_n("ZodBoolean",(e,t)=>{vi.init(e,t),So.init(e,t)});function rs(e){return function(e,t){return new e({type:"boolean",...Un(t)})}(ns,e)}const is=_n("ZodBigInt",(e,t)=>{bi.init(e,t),So.init(e,t),e.gte=(t,n)=>e.check(co(t,n)),e.min=(t,n)=>e.check(co(t,n)),e.gt=(t,n)=>e.check(uo(t,n)),e.gte=(t,n)=>e.check(co(t,n)),e.min=(t,n)=>e.check(co(t,n)),e.lt=(t,n)=>e.check(oo(t,n)),e.lte=(t,n)=>e.check(so(t,n)),e.max=(t,n)=>e.check(so(t,n)),e.positive=t=>e.check(uo(BigInt(0),t)),e.negative=t=>e.check(oo(BigInt(0),t)),e.nonpositive=t=>e.check(so(BigInt(0),t)),e.nonnegative=t=>e.check(co(BigInt(0),t)),e.multipleOf=(t,n)=>e.check(ao(t,n));const n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function os(e){return function(e,t){return new e({type:"bigint",...Un(t)})}(is,e)}const ss=_n("ZodNull",(e,t)=>{Ei.init(e,t),So.init(e,t)});const us=_n("ZodAny",(e,t)=>{xi.init(e,t),So.init(e,t)});const cs=_n("ZodUnknown",(e,t)=>{ki.init(e,t),So.init(e,t)});function as(){return new cs({type:"unknown"})}const fs=_n("ZodNever",(e,t)=>{zi.init(e,t),So.init(e,t)});function ds(e){return function(e,t){return new e({type:"never",...Un(t)})}(fs,e)}const ls=_n("ZodDate",(e,t)=>{Oi.init(e,t),So.init(e,t),e.min=(t,n)=>e.check(co(t,n)),e.max=(t,n)=>e.check(so(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});const hs=_n("ZodArray",(e,t)=>{Si.init(e,t),So.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(lo(t,n)),e.nonempty=t=>e.check(lo(1,t)),e.max=(t,n)=>e.check(fo(t,n)),e.length=(t,n)=>e.check(ho(t,n)),e.unwrap=()=>e.element});function ps(e,t){return function(e,t,n){return new e({type:"array",element:t,...Un(n)})}(hs,e,t)}const ms=_n("ZodObject",(e,t)=>{$i.init(e,t),So.init(e,t),zn(e,"shape",()=>t.shape),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new Es({type:"enum",entries:n,...Un(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:as()}),e.loose=()=>e.clone({...e._zod.def,catchall:as()}),e.strict=()=>e.clone({...e._zod.def,catchall:ds()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!$n(t))throw new Error("Invalid input to extend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return On(this,"shape",n),n},checks:[]};return Bn(e,n)}(e,t),e.merge=t=>{return r=t,Bn(n=e,{...n._zod.def,get shape(){const e={...n._zod.def.shape,...r._zod.def.shape};return On(this,"shape",e),e},catchall:r._zod.def.catchall,checks:[]});var n,r},e.pick=t=>function(e,t){const n={},r=e._zod.def;for(const e in t){if(!(e in r.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&(n[e]=r.shape[e])}return Bn(e,{...e._zod.def,shape:n,checks:[]})}(e,t),e.omit=t=>function(e,t){const n={...e._zod.def.shape},r=e._zod.def;for(const e in t){if(!(e in r.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete n[e]}return Bn(e,{...e._zod.def,shape:n,checks:[]})}(e,t),e.partial=(...t)=>function(e,t,n){const r=t._zod.def.shape,i={...r};if(n)for(const t in n){if(!(t in r))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:"optional",innerType:r[t]}):r[t])}else for(const t in r)i[t]=e?new e({type:"optional",innerType:r[t]}):r[t];return Bn(t,{...t._zod.def,shape:i,checks:[]})}(ks,e,t[0]),e.required=(...t)=>function(e,t,n){const r=t._zod.def.shape,i={...r};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:"nonoptional",innerType:r[t]}))}else for(const t in r)i[t]=new e({type:"nonoptional",innerType:r[t]});return Bn(t,{...t._zod.def,shape:i,checks:[]})}(Is,e,t[0])});function gs(e,t){const n={type:"object",get shape(){return On(this,"shape",{...e}),this.shape},...Un(t)};return new ms(n)}const _s=_n("ZodUnion",(e,t)=>{Ni.init(e,t),So.init(e,t),e.options=t.options});function ws(e,t){return new _s({type:"union",options:e,...Un(t)})}const ys=_n("ZodIntersection",(e,t)=>{Bi.init(e,t),So.init(e,t)});const vs=_n("ZodRecord",(e,t)=>{Ri.init(e,t),So.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function bs(e,t,n){return new vs({type:"record",keyType:e,valueType:t,...Un(n)})}const Es=_n("ZodEnum",(e,t)=>{Ci.init(e,t),So.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{const i={};for(const r of e){if(!n.has(r))throw new Error(`Key ${r} not found in enum`);i[r]=t.entries[r]}return new Es({...t,checks:[],...Un(r),entries:i})},e.exclude=(e,r)=>{const i={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete i[t]}return new Es({...t,checks:[],...Un(r),entries:i})}});const xs=_n("ZodTransform",(e,t)=>{ji.init(e,t),So.init(e,t),e._zod.parse=(n,r)=>{n.addIssue=r=>{if("string"==typeof r)n.issues.push(Dn(r,n.value,t));else{const t=r;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),t.continue??(t.continue=!0),n.issues.push(Dn(t))}};const i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});const ks=_n("ZodOptional",(e,t)=>{Fi.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType});function zs(e){return new ks({type:"optional",innerType:e})}const Os=_n("ZodNullable",(e,t)=>{Hi.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Ps(e){return new Os({type:"nullable",innerType:e})}const Ss=_n("ZodDefault",(e,t)=>{Di.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});const As=_n("ZodPrefault",(e,t)=>{Vi.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType});const Is=_n("ZodNonOptional",(e,t)=>{qi.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType});const $s=_n("ZodCatch",(e,t)=>{Ki.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});const Ts=_n("ZodPipe",(e,t)=>{Wi.init(e,t),So.init(e,t),e.in=t.in,e.out=t.out});function Ns(e,t){return new Ts({type:"pipe",in:e,out:t})}const Bs=_n("ZodReadonly",(e,t)=>{Yi.init(e,t),So.init(e,t)});const Us=_n("ZodLazy",(e,t)=>{Ji.init(e,t),So.init(e,t),e.unwrap=()=>e._zod.def.getter()});const Zs=_n("ZodCustom",(e,t)=>{Qi.init(e,t),So.init(e,t)});var Rs;os(),rs(),function(e,t){new e({type:"date",...Un(t)})}(ls,Rs);const Cs=Qo().min(Number.MIN_SAFE_INTEGER).max(Number.MAX_SAFE_INTEGER).int(),js=function(e,t={error:`Input not instance of ${e.name}`}){const n=new Zs({type:"custom",check:"custom",fn:t=>t instanceof e,abort:!0,...Un(t)});return n._zod.bag.Class=e,n}(Uint8Array),Fs=$o();Cs.min(5e8),new us({type:"any"}),Cs.min(0).max(255),Cs.min(0).max(65535);const Hs=Cs.min(0).max(4294967295);Qo().refine(e=>String(e).includes(".")).refine(e=>{const t=String(e).split(".").at(1);return void 0!==t&&t.length<=2});const Ds=$o().regex(/^[0-9a-fA-F]*$/).refine(e=>e.length%2==0),Ls=ws([$o(),Qo(),rs(),function(e){return function(e,t){return new e({type:"null",...Un(t)})}(ss,e)}()]),Vs=new Us({type:"lazy",getter:()=>ws([Ls,ps(Vs),bs(Fs,Vs)])});js.refine(e=>20===e.length);const qs=js.refine(e=>32===e.length),Ms=js.refine(e=>33===e.length),Ks=js.refine(e=>64===e.length);Ds.refine(e=>40===e.length);const Ws=Ds.refine(e=>64===e.length),Gs=Ds.refine(e=>66===e.length),Ys=Ds.refine(e=>128===e.length);ws([Ds,js]);const Xs=ws([Ws,qs]);
|
|
12
|
-
/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
13
|
-
function Js(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function Qs(e,t){return!!Array.isArray(t)&&(0===t.length||(e?t.every(e=>"string"==typeof e):t.every(e=>Number.isSafeInteger(e))))}function eu(e){if("function"!=typeof e)throw new Error("function expected");return!0}function tu(e,t){if("string"!=typeof t)throw new Error(`${e}: string expected`);return!0}function nu(e){if(!Number.isSafeInteger(e))throw new Error(`invalid integer: ${e}`)}function ru(e){if(!Array.isArray(e))throw new Error("array expected")}function iu(e,t){if(!Qs(!0,t))throw new Error(`${e}: array of strings expected`)}function ou(e,t){if(!Qs(!1,t))throw new Error(`${e}: array of numbers expected`)}function su(...e){const t=e=>e,n=(e,t)=>n=>e(t(n));return{encode:e.map(e=>e.encode).reduceRight(n,t),decode:e.map(e=>e.decode).reduce(n,t)}}function uu(e){const t="string"==typeof e?e.split(""):e,n=t.length;iu("alphabet",t);const r=new Map(t.map((e,t)=>[e,t]));return{encode:r=>(ru(r),r.map(r=>{if(!Number.isSafeInteger(r)||r<0||r>=n)throw new Error(`alphabet.encode: digit index outside alphabet "${r}". Allowed: ${e}`);return t[r]})),decode:t=>(ru(t),t.map(t=>{tu("alphabet.decode",t);const n=r.get(t);if(void 0===n)throw new Error(`Unknown letter: "${t}". Allowed: ${e}`);return n}))}}function cu(e=""){return tu("join",e),{encode:t=>(iu("join.decode",t),t.join(e)),decode:t=>(tu("join.decode",t),t.split(e))}}function au(e,t,n){if(t<2)throw new Error(`convertRadix: invalid from=${t}, base cannot be less than 2`);if(n<2)throw new Error(`convertRadix: invalid to=${n}, base cannot be less than 2`);if(ru(e),!e.length)return[];let r=0;const i=[],o=Array.from(e,e=>{if(nu(e),e<0||e>=t)throw new Error(`invalid integer: ${e}`);return e}),s=o.length;for(;;){let e=0,u=!0;for(let i=r;i<s;i++){const s=o[i],c=t*e,a=c+s;if(!Number.isSafeInteger(a)||c/t!==e||a-s!==c)throw new Error("convertRadix: carry overflow");const f=a/n;e=a%n;const d=Math.floor(f);if(o[i]=d,!Number.isSafeInteger(d)||d*n+e!==a)throw new Error("convertRadix: carry overflow");u&&(d?u=!1:r=i)}if(i.push(e),u)break}for(let t=0;t<e.length-1&&0===e[t];t++)i.push(0);return i.reverse()}ws([Gs,Ms]),ws([Ys,Ks]),$o().regex(/^[1-9A-HJ-NP-Za-km-z]+$/),$o().regex(/^[a-zA-Z0-9+/]+={0,2}$/),$o().regex(/^[a-zA-Z0-9\-_]+={0,2}$/),$o().regex(/^[a-z]+1[023456789acdefghjklmnpqrstuvwxyz]+$/);const fu=(e,t)=>0===t?e:fu(t,e%t),du=(e,t)=>e+(t-fu(e,t)),lu=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function hu(e,t,n,r){if(ru(e),t<=0||t>32)throw new Error(`convertRadix2: wrong from=${t}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(du(t,n)>32)throw new Error(`convertRadix2: carry overflow from=${t} to=${n} carryBits=${du(t,n)}`);let i=0,o=0;const s=lu[t],u=lu[n]-1,c=[];for(const r of e){if(nu(r),r>=s)throw new Error(`convertRadix2: invalid data word=${r} from=${t}`);if(i=i<<t|r,o+t>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${t}`);for(o+=t;o>=n;o-=n)c.push((i>>o-n&u)>>>0);const e=lu[o];if(void 0===e)throw new Error("invalid carry");i&=e-1}if(i=i<<n-o&u,!r&&o>=t)throw new Error("Excess padding");if(!r&&i>0)throw new Error(`Non-zero padding: ${i}`);return r&&o>0&&c.push(i>>>0),c}function pu(e,t=!1){if(nu(e),e<=0||e>32)throw new Error("radix2: bits should be in (0..32]");if(du(8,e)>32||du(e,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!Js(n))throw new Error("radix2.encode input should be Uint8Array");return hu(Array.from(n),8,e,!t)},decode:n=>(ou("radix2.decode",n),Uint8Array.from(hu(n,e,8,t)))}}function mu(e){return eu(e),function(...t){try{return e.apply(null,t)}catch(e){}}}const gu=(()=>"function"==typeof Uint8Array.from([]).toBase64&&"function"==typeof Uint8Array.fromBase64)()?{encode:e=>(function(e,...t){if(!Js(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}(e),e.toBase64()),decode:e=>(e=>{if(tu("base64",e),e.length>0&&!/^[A-Za-z0-9=+/]+$/.test(e))throw new Error("invalid base64");return Uint8Array.fromBase64(e,{alphabet:"base64",lastChunkHandling:"strict"})})(e)}:su(pu(6),uu("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),function(e,t="="){return nu(e),tu("padding",t),{encode(n){for(iu("padding.encode",n);n.length*e%8;)n.push(t);return n},decode(n){iu("padding.decode",n);let r=n.length;if(r*e%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;r>0&&n[r-1]===t;r--){if((r-1)*e%8==0)throw new Error("padding: invalid, string has too much padding")}return n.slice(0,r)}}}(6),cu("")),_u=su(pu(6),uu("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),cu("")),wu=(yu="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",su(function(e){return nu(e),{encode:t=>{if(!Js(t))throw new Error("radix.encode input should be Uint8Array");return au(Array.from(t),256,e)},decode:t=>(ou("radix.decode",t),Uint8Array.from(au(t,e,256)))}}(58),uu(yu),cu("")));var yu;const vu=e=>{return su((n=t=>e(e(t)),nu(t=4),eu(n),{encode(e){if(!Js(e))throw new Error("checksum.encode: input should be Uint8Array");const r=n(e).slice(0,t),i=new Uint8Array(e.length+t);return i.set(e),i.set(r,e.length),i},decode(e){if(!Js(e))throw new Error("checksum.decode: input should be Uint8Array");const r=e.slice(0,-t),i=e.slice(-t),o=n(r).slice(0,t);for(let e=0;e<t;e++)if(o[e]!==i[e])throw new Error("Invalid checksum");return r}}),wu);var t,n},bu=su(uu("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),cu("")),Eu=[996825010,642813549,513874426,1027748829,705979059];function xu(e){const t=e>>25;let n=(33554431&e)<<5;for(let e=0;e<Eu.length;e++)1==(t>>e&1)&&(n^=Eu[e]);return n}function ku(e,t,n=1){const r=e.length;let i=1;for(let t=0;t<r;t++){const n=e.charCodeAt(t);if(n<33||n>126)throw new Error(`Invalid prefix (${e})`);i=xu(i)^n>>5}i=xu(i);for(let t=0;t<r;t++)i=xu(i)^31&e.charCodeAt(t);for(let e of t)i=xu(i)^e;for(let e=0;e<6;e++)i=xu(i);return i^=n,bu.encode(hu([i%lu[30]],30,5,!1))}function zu(e){const t="bech32"===e?1:734539939,n=pu(5),r=n.decode,i=n.encode,o=mu(r);function s(e,n,r=90){tu("bech32.encode prefix",e),Js(n)&&(n=Array.from(n)),ou("bech32.encode",n);const i=e.length;if(0===i)throw new TypeError(`Invalid prefix length ${i}`);const o=i+7+n.length;if(!1!==r&&o>r)throw new TypeError(`Length ${o} exceeds limit ${r}`);const s=e.toLowerCase(),u=ku(s,n,t);return`${s}1${bu.encode(n)}${u}`}function u(e,n=90){tu("bech32.decode input",e);const r=e.length;if(r<8||!1!==n&&r>n)throw new TypeError(`invalid string length: ${r} (${e}). Expected (8..${n})`);const i=e.toLowerCase();if(e!==i&&e!==e.toUpperCase())throw new Error("String must be lowercase or uppercase");const o=i.lastIndexOf("1");if(0===o||-1===o)throw new Error('Letter "1" must be present between prefix and data only');const s=i.slice(0,o),u=i.slice(o+1);if(u.length<6)throw new Error("Data must be at least 6 characters long");const c=bu.decode(u).slice(0,-6),a=ku(s,c,t);if(!u.endsWith(a))throw new Error(`Invalid checksum in ${e}: expected "${a}"`);return{prefix:s,words:c}}return{encode:s,decode:u,encodeFromBytes:function(e,t){return s(e,i(t))},decodeToBytes:function(e){const{prefix:t,words:n}=u(e,!1);return{prefix:t,words:n,bytes:r(n)}},decodeUnsafe:mu(u),fromWords:r,fromWordsUnsafe:o,toWords:i}}const Ou=zu("bech32"),Pu=zu("bech32m");var Su,Au,Iu,$u,Tu;function Nu(e){if("string"!=typeof e||0===e.length)throw new Error(`invalid prefix: ${String(e)}`)}function Bu(e){if(!Array.isArray(e)||!e.every(e=>"number"==typeof e))throw new Error(`invalid words: ${String(e)}`)}!function(e){e.encode=e=>(b.is_u8a(e),vu(te).encode(e)),e.decode=e=>(b.is_base58(e),vu(te).decode(e))}(Su||(Su={})),function(e){e.encode=e=>(b.is_u8a(e),gu.encode(e)),e.decode=e=>(b.is_base64(e),gu.decode(e))}(Au||(Au={})),function(e){e.encode=e=>(b.is_u8a(e),_u.encode(e)),e.decode=e=>(b.is_b64url(e),_u.decode(e))}(Iu||(Iu={})),function(e){e.to_words=Ou.toWords,e.to_bytes=Ou.fromWords,e.encode=(e,t,n=!1)=>(Nu(e),Bu(t),Ou.encode(e,t,n)),e.decode=(e,t=!1)=>(b.is_bech32(e),Ou.decode(e,t))}($u||($u={})),function(e){e.to_words=Pu.toWords,e.to_bytes=Pu.fromWords,e.encode=(e,t,n=!1)=>(Nu(e),Bu(t),Pu.encode(e,t,n)),e.decode=(e,t=!1)=>(b.is_bech32(e),Pu.decode(e,t))}(Tu||(Tu={}));const Uu={base58:/^[13mn2][a-km-zA-HJ-NP-Z1-9]{25,34}$/,bech32:/^(bc|tb|bcrt)1q[ac-hj-np-z02-9]{6,87}$/,bech32m:/^(bc|tb|bcrt)1p[ac-hj-np-z02-9]{6,87}$/},Zu=0,Ru=1;function Cu(e){const t=function(e){for(const[t,n]of Object.entries(Uu))if(n.test(e))return t;return null}(e);if(null===t)throw new Error("unrecognized address format: "+t);if("base58"===t)return function(e){const t=Su.decode(e),n=t.slice(1),r=t[0];return{data:n,format:"base58",version:r}}(e);if("bech32"===t)return function(e){const{prefix:t,words:n}=$u.decode(e),[r,...i]=n;b.ok(r===Zu,"bech32 version mismatch");return{data:$u.to_bytes(i),format:"bech32",prefix:t,version:r}}(e);if("bech32m"===t)return function(e){const{prefix:t,words:n}=Tu.decode(e),[r,...i]=n;b.ok(r===Ru,"bech32m version mismatch");return{data:Tu.to_bytes(i),format:"bech32m",prefix:t,version:r}}(e);throw new Error("unable to find a matching address configuration")}function ju(e){if("base58"===e.format)return function(e){b.ok("base58"===e.format,"encoding mismatch"),b.exists(e.version,"must specify a version");const t=g.join([e.version,e.data]);return Su.encode(t)}(e);if("bech32"===e.format)return function(e){b.ok("bech32"===e.format,"encoding mismatch"),b.exists(e.prefix,"prefix is required");const t=g.bytes(e.data),n=$u.to_words(t);return $u.encode(e.prefix,[Zu,...n])}(e);if("bech32m"===e.format)return function(e){b.ok("bech32m"===e.format,"encoding mismatch"),b.exists(e.prefix,"prefix is required");const t=g.bytes(e.data),n=Tu.to_words(t);return Tu.encode(e.prefix,[Ru,...n])}(e);throw new Error("unrecognized encoding format: "+e.format)}const Fu={TXID:"00".repeat(32),VOUT:4294967295},Hu={LOCKTIME:0,SEQUENCE:4294967295,VERSION:2},Du=[192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,102,126,128,132,150,152,186,188,190],Lu={P2PKH:"p2pkh",P2SH:"p2sh",P2WPKH:"p2wpkh",P2WSH:"p2wsh",P2TR:"p2tr",OPRETURN:"opreturn"},Vu={[Lu.P2PKH]:/^76a914[0-9a-f]{40}88ac$/i,[Lu.P2SH]:/^a914[0-9a-f]{40}87$/i,[Lu.P2WPKH]:/^0014[0-9a-f]{40}$/i,[Lu.P2WSH]:/^0020[0-9a-f]{64}$/i,[Lu.P2TR]:/^5120[0-9a-f]{64}$/i,[Lu.OPRETURN]:/^6a[0-9a-f]{2,}$/i},qu=[1,2,3,129,130,131],Mu=[0,...qu];var Ku=Object.freeze({__proto__:null,COINBASE:Fu,DEFAULT:Hu,LOCK_SCRIPT_REGEX:Vu,LOCK_SCRIPT_TYPE:Lu,SCRIPT_INT_KEY:"",SIGHASH_DEFAULT:1,SIGHASH_SEGWIT:qu,SIGHASH_TAPROOT:Mu,SPEND_SCRIPT_TYPE:{P2PKH:"p2pkh",P2SH:"p2sh",P2WPKH:"p2wpkh",P2WSH:"p2wsh",P2TR:"p2tr",P2TS:"p2ts"},TAPLEAF_DEFAULT_VERSION:192,TAPLEAF_VERSIONS:Du,TX_SIZE:{GLOBAL_BASE:8,GLOBAL_WIT:10,TXIN_BASE:40,TXOUT_BASE:8}});function Wu(e){const t=g.bytes(e).hex;for(const[e,n]of Object.entries(Vu))if(n.test(t))return e;return null}function Gu(e){switch(g.bytes(e).at(0)){case 0:return 0;case 81:return 1;default:return null}}function Yu(e){const t=g.bytes(e).hex;return Vu.p2pkh.test(t)}function Xu(e){const t=g.bytes(e).hex;return Vu.p2sh.test(t)}function Ju(e){const t=g.bytes(e).hex;return Vu.p2wpkh.test(t)}function Qu(e){const t=g.bytes(e).hex;return Vu.p2wsh.test(t)}function ec(e){const t=g.bytes(e).hex;return Vu.p2tr.test(t)}function tc(e,t){switch(t){case"p2pkh":return function(e){return{hex:"76a914"+e+"88ac",asm:["OP_DUP","OP_HASH160",e,"OP_EQUALVERIFY","OP_CHECKSIG"]}}(e);case"p2sh":return function(e){return{hex:"a914"+e+"87",asm:["OP_HASH160",e,"OP_EQUAL"]}}(e);case"p2wpkh":return function(e){return{hex:"0014"+e,asm:["OP_0",e]}}(e);case"p2wsh":return function(e){return{hex:"0020"+e,asm:["OP_0",e]}}(e);case"p2tr":return function(e){return{hex:"5120"+e,asm:["OP_1",e]}}(e);default:throw new Error("unrecognized script type: "+t)}}const nc=[["1","p2pkh","main",20,"base58",0],["3","p2sh","main",20,"base58",5],["m","p2pkh","testnet",20,"base58",111],["n","p2pkh","testnet",20,"base58",111],["2","p2sh","testnet",20,"base58",196],["m","p2pkh","regtest",20,"base58",111],["n","p2pkh","regtest",20,"base58",111],["2","p2sh","regtest",20,"base58",196],["bc","p2wpkh","main",20,"bech32",0],["tb","p2wpkh","testnet",20,"bech32",0],["bcrt","p2wpkh","regtest",20,"bech32",0],["bc","p2wsh","main",32,"bech32",0],["tb","p2wsh","testnet",32,"bech32",0],["bcrt","p2wsh","regtest",32,"bech32",0],["bc","p2tr","main",32,"bech32m",1],["tb","p2tr","testnet",32,"bech32m",1],["bcrt","p2tr","regtest",32,"bech32m",1]];function rc(e,t){for(const[n,r,i,o,s,u]of nc)if(r===t&&i===e)return{type:r,prefix:n,network:i,size:o,format:s,version:u};return null}function ic(e){const t=Cu(e);for(const[n,r,i,o,s,u]of nc){if(s!==t.format)continue;if(o!==t.data.length)continue;if(u!==t.version)continue;if(t.prefix){if(n!==t.prefix)continue}else if(!e.startsWith(n))continue;const c=g.uint(t.data).hex;return{data:c,script:tc(c,r),type:r,prefix:n,network:i,size:o,format:s,version:u}}throw new Error("address configuration is invalid")}const oc=Lu.P2PKH;var sc;function uc(e,t="main"){return fc(cc(e),t)}function cc(e){const t=g.bytes(e);b.size(t,33,"invalid pubkey size");return ac(hn(t))}function ac(e){return g.join(["76a914",e,"88ac"])}function fc(e,t="main"){const n=lc(e),r=rc(t,oc);return b.exists(r,`unrecognized address config: ${oc} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ju({data:n,format:"base58",version:r.version})}function dc(e){const t=ic(e);return b.ok("p2pkh"===t.type,`address type mismatch: ${t.type} !== ${oc}`),t}function lc(e){const t=g.bytes(e);return b.ok(Yu(e),"invalid p2pkh script"),t.slice(3,23)}!function(e){e.create_address=uc,e.create_script=cc,e.encode_address=fc,e.encode_script=ac,e.decode_address=dc,e.decode_script=lc}(sc||(sc={}));const hc=Lu.P2SH;var pc;function mc(e,t="main"){return wc(_c(hn(g.bytes(e))),t)}function gc(e){return _c(hn(g.bytes(e)))}function _c(e){return g.join(["a914",e,"87"])}function wc(e,t="main"){const n=vc(e),r=rc(t,hc);return b.exists(r,`unrecognized address config: ${hc} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ju({data:n,format:"base58",version:r.version})}function yc(e){const t=ic(e);return b.ok("p2sh"===t.type,`address type mismatch: ${t.type} !== ${hc}`),t}function vc(e){b.ok(Xu(e),"invalid p2sh script");return g.bytes(e).slice(2,22)}!function(e){e.create_address=mc,e.create_script=gc,e.encode_address=wc,e.encode_script=_c,e.decode_address=yc,e.decode_script=vc}(pc||(pc={}));const bc=Lu.P2WPKH;var Ec;function xc(e,t="main"){return Oc(kc(e),t)}function kc(e){const t=g.bytes(e);b.size(t,33,"invalid pubkey size");return zc(hn(t))}function zc(e){return g.join(["0014",e])}function Oc(e,t="main"){const n=Sc(e),r=rc(t,bc);return b.exists(r,`unrecognized address config: ${bc} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ju({data:n,format:"bech32",prefix:r.prefix})}function Pc(e){const t=ic(e);return b.ok("p2wpkh"===t.type,`address type mismatch: ${t.type} !== ${bc}`),t}function Sc(e){b.ok(Ju(e),"invalid p2wpkh script");return g.bytes(e).slice(2,22)}!function(e){e.create_address=xc,e.create_script=kc,e.encode_address=Oc,e.encode_script=zc,e.decode_address=Pc,e.decode_script=Sc}(Ec||(Ec={}));const Ac=Lu.P2WSH;var Ic;function $c(e,t="main"){return Bc(Tc(e),t)}function Tc(e){return Nc(pn(g.bytes(e)))}function Nc(e){return g.join(["0020",e])}function Bc(e,t="main"){const n=Zc(e),r=rc(t,Ac);return b.exists(r,`unrecognized address config: ${Ac} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ju({data:n,format:"bech32",prefix:r.prefix})}function Uc(e){const t=ic(e);return b.ok("p2wsh"===t.type,`address type mismatch: ${t.type} !== ${Ac}`),t}function Zc(e){b.ok(Qu(e),"invalid p2wsh script");return g.bytes(e).slice(2,34)}!function(e){e.create_address=$c,e.create_script=Tc,e.encode_address=Bc,e.encode_script=Nc,e.decode_address=Uc,e.decode_script=Zc}(Ic||(Ic={}));const Rc=Lu.P2TR;var Cc;function jc(e,t="main"){return Dc(Fc(e),t)}function Fc(e){const t=g.bytes(e);return b.size(t,32,"invalid pubkey size"),Hc(t)}function Hc(e){return g.join(["5120",e])}function Dc(e,t="main"){const n=Vc(e),r=rc(t,Rc);return b.exists(r,`unrecognized address config: ${Rc} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ju({data:n,format:"bech32m",prefix:r.prefix})}function Lc(e){const t=ic(e);return b.ok("p2tr"===t.type,`address type mismatch: ${t.type} !== ${Rc}`),t}function Vc(e){b.ok(ec(e),"invalid p2tr script");return g.bytes(e).slice(2,34)}!function(e){e.create_address=jc,e.create_script=Fc,e.encode_address=Dc,e.encode_script=Hc,e.decode_address=Lc,e.decode_script=Vc}(Cc||(Cc={}));var qc=Object.freeze({__proto__:null,get P2PKH(){return sc},get P2SH(){return pc},get P2TR(){return Cc},get P2WPKH(){return Ec},get P2WSH(){return Ic},get_address:function(e,t="main"){const n=g.bytes(e),r=Wu(n);if(null===r)throw new Error("unknown locking script: "+n.hex);switch(r){case Lu.P2PKH:return sc.encode_address(e,t);case Lu.P2SH:return pc.encode_address(e,t);case Lu.P2WPKH:return Ec.encode_address(e,t);case Lu.P2WSH:return Ic.encode_address(e,t);case Lu.P2TR:return Cc.encode_address(e,t);default:throw new Error("unknown script type: "+r)}},parse_address:function(e){return ic(e)}});const Mc=5e8;var Kc,Wc;function Gc(e){switch(e.type){case"timelock":return b.ok(e.stamp>=Mc,"Invalid timestamp"),e.stamp;case"heightlock":return b.ok(e.height>0,"height must be greater than 0"),b.ok(e.height<Mc,"invalid block height"),e.height;default:throw new Error("Invalid locktime type")}}function Yc(e){return isNaN(e)||e<=0?null:e<Mc?{type:"heightlock",height:e}:{type:"timelock",stamp:e}}function Xc(e,t=0){return`${e}i${t}`}function Jc(e){ea(e);const[t,n]=e.split("i");return{txid:t,order:parseInt(n)}}function Qc(e){return null!==e.match(/^[a-f0-9]{64}i\d+$/)}function ea(e){if(!Qc(e))throw new Error(`invalid inscription id: ${e}`)}function ta(e,t){return`${e}:${t}`}function na(e){ia(e);const[t,n]=e.split(":");return{block_height:parseInt(t),block_index:parseInt(n)}}function ra(e){return null!==e.match(/^\d+:\d+$/)}function ia(e){if(!ra(e))throw new Error(`invalid rune id: ${e}`)}function oa(e,t){return`${e}:${t}`}function sa(e){ca(e);const[t,n]=e.split(":");return{txid:t,vout:parseInt(n)}}function ua(e){return null!==e.match(/^[a-f0-9]{64}:[0-9]+$/)}function ca(e){if(!ua(e))throw new Error(`invalid outpoint: ${e}`)}!function(e){e.encode=Gc,e.decode=Yc}(Kc||(Kc={})),function(e){e.outpoint={encode:oa,decode:sa,verify:ua,assert:ca},e.record_id={encode:Xc,decode:Jc,verify:Qc,assert:ea},e.rune_id={encode:ta,decode:na,verify:ra,assert:ia}}(Wc||(Wc={}));const aa={OP_0:0,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSHDATA4:78,OP_1NEGATE:79,OP_SUCCESS80:80,OP_1:81,OP_2:82,OP_3:83,OP_4:84,OP_5:85,OP_6:86,OP_7:87,OP_8:88,OP_9:89,OP_10:90,OP_11:91,OP_12:92,OP_13:93,OP_14:94,OP_15:95,OP_16:96,OP_NOP:97,OP_SUCCESS98:98,OP_IF:99,OP_NOTIF:100,OP_ELSE:103,OP_ENDIF:104,OP_VERIFY:105,OP_RETURN:106,OP_TOALTSTACK:107,OP_FROMALTSTACK:108,OP_2DROP:109,OP_2DUP:110,OP_3DUP:111,OP_2OVER:112,OP_2ROT:113,OP_2SWAP:114,OP_IFDUP:115,OP_DEPTH:116,OP_DROP:117,OP_DUP:118,OP_NIP:119,OP_OVER:120,OP_PICK:121,OP_ROLL:122,OP_ROT:123,OP_SWAP:124,OP_TUCK:125,OP_SUCCESS126:126,OP_SUCCESS127:127,OP_SUCCESS128:128,OP_SUCCESS129:129,OP_SIZE:130,OP_SUCCESS131:131,OP_SUCCESS132:132,OP_SUCCESS133:133,OP_SUCCESS134:134,OP_EQUAL:135,OP_EQUALVERIFY:136,OP_SUCCESS137:137,OP_SUCCESS138:138,OP_1ADD:139,OP_1SUB:140,OP_SUCCESS141:141,OP_SUCCESS142:142,OP_NEGATE:143,OP_ABS:144,OP_NOT:145,OP_0NOTEQUAL:146,OP_ADD:147,OP_SUB:148,OP_SUCCESS149:149,OP_SUCCESS150:150,OP_SUCCESS151:151,OP_SUCCESS152:152,OP_SUCCESS153:153,OP_BOOLAND:154,OP_BOOLOR:155,OP_NUMEQUAL:156,OP_NUMEQUALVERIFY:157,OP_NUMNOTEQUAL:158,OP_LESSTHAN:159,OP_GREATERTHAN:160,OP_LESSTHANOREQUAL:161,OP_GREATERTHANOREQUAL:162,OP_MIN:163,OP_MAX:164,OP_WITHIN:165,OP_RIPEMD160:166,OP_SHA1:167,OP_SHA256:168,OP_HASH160:169,OP_HASH256:170,OP_CODESEPARATOR:171,OP_CHECKSIG:172,OP_CHECKSIGVERIFY:173,OP_CHECKMULTISIG:174,OP_CHECKMULTISIGVERIFY:175,OP_NOP1:176,OP_CHECKLOCKTIMEVERIFY:177,OP_CHECKSEQUENCEVERIFY:178,OP_NOP4:179,OP_NOP5:180,OP_NOP6:181,OP_NOP7:182,OP_NOP8:183,OP_NOP9:184,OP_NOP10:185,OP_CHECKSIGADD:186};function fa(e){if(e>186&&e<255)return"OP_SUCCESS"+String(e);for(const[t,n]of Object.entries(aa))if(n===e)return t;throw new Error("OPCODE not found:"+String(e))}function da(e){for(const[t,n]of Object.entries(aa))if(t===e)return Number(n);throw new Error("OPCODE not found:"+e)}function la(e){switch(!0){case 0===e:return"opcode";case e>=1&&e<=75:return"varint";case 76===e:return"pushdata1";case 77===e:return"pushdata2";case 78===e:return"pushdata4";case e<=254:return"opcode";default:throw new Error(`Invalid word range: ${e}`)}}function ha(e){switch(!0){case"number"!=typeof e:return!1;case 0===e:return!0;case[].includes(e):return!1;case 75<e&&e<254:return!0;default:return!1}}const pa=520;function ma(e,t=!1){if(0===e.length)return g.num(0,1);const n=[];for(const t of e)n.push(ga(t));const r=g.join(n);return t?r.prepend(g.varint(r.length,"le")):r}function ga(e){let t;if("string"==typeof e){if(e.startsWith("OP_")){const t=da(e);return g.num(t,1)}t=g.is_hex(e)?g.hex(e):g.str(e)}else if("number"==typeof e)t=g.num(e);else{if(!(e instanceof Uint8Array))throw new Error("invalid word type:"+typeof e);t=new g(e)}if(1===t.length&&t[0]<=16)0!==t[0]&&(t[0]+=80);else if(t.length>pa){let e;e=_a(t),e=e.map(e=>wa(e)),t=g.join(e)}else t=wa(t);return t}function _a(e){const t=[],n=new _(e);for(;n.size>pa;)t.push(n.read(pa));return t.push(n.read(n.size)),t}function wa(e){const t=ya(e.length);return g.join([t,e])}function ya(e){const t=g.num(76,1),n=g.num(77,1);switch(!0){case e<=75:return g.num(e);case e>75&&e<256:return g.join([t,g.num(e,1,"le")]);case e>=256&&e<=pa:return g.join([n,g.num(e,2,"le")]);default:throw new Error("Invalid word size:"+e.toString())}}function va(e){const t=g.bytes(e);return{asm:ba(t),hex:t.hex}}function ba(e){const t=new _(e),n=[],r=t.size;let i,o,s,u=0;for(;u<r;)switch(i=t.read(1).num,o=la(i),u++,o){case"varint":n.push(t.read(i).hex),u+=i;break;case"pushdata1":s=t.read(1).reverse().num,n.push(t.read(s).hex),u+=s+1;break;case"pushdata2":s=t.read(2).reverse().num,n.push(t.read(s).hex),u+=s+2;break;case"pushdata4":s=t.read(4).reverse().num,n.push(t.read(s).hex),u+=s+4;break;case"opcode":if(!ha(i))throw new Error(`Invalid OPCODE: ${i}`);n.push(fa(i));break;default:throw new Error(`Word type undefined: ${i}`)}return n}function Ea(e){try{return ba(e).length>0}catch{return!1}}const xa=BigInt(0),ka=BigInt(1),za=BigInt(26);var Oa;function Pa(e){const t=function(e){const t=ba(e),n=t.findIndex(e=>"OP_0"===e);b.ok(-1!==n,"inscription envelope not found");const r=[];for(let e=n;e<t.length;e++){b.ok("OP_IF"===t[e+1],"OP_IF missing from envelope"),b.ok("6f7264"===t[e+2],"magic bytes missing from envelope");const n=t.findIndex(e=>"OP_ENDIF"===e);b.ok(-1!==n,"inscription envelope missing END_IF statement");const i=t.slice(e+3,n);r.push(i),e+=n}return r}(e);return t.map(Ia)}function Sa(e){return g.join(e.map(Aa))}function Aa(e){let t=["OP_0","OP_IF","6f7264"];if("string"==typeof e.delegate){const n=Ta(e.delegate);t.push("OP_11",n)}if("string"==typeof e.ref&&t.push("OP_WITHIN",e.ref),"string"==typeof e.parent){const n=Ta(e.parent);t.push("OP_3",n)}if("number"==typeof e.opcode){const n=Ba(e.opcode);t.push("OP_NOP",n)}if("number"==typeof e.pointer){const n=Ba(e.pointer);t.push("OP_2",n)}if("string"==typeof e.rune){const n=function(e){const t=e.toUpperCase();let n=xa;for(const e of t)e>="A"&&e<="Z"&&(n=n*za+BigInt(e.charCodeAt(0)-("A".charCodeAt(0)-1)));return n-=ka,g.big(n).reverse().hex}(e.rune);t.push("OP_13",n)}if("string"==typeof e.mimetype){const n=function(e){return g.str(e).hex}(e.mimetype);t.push("OP_1",n)}if("string"==typeof e.content){const n=function(e){const t=g.is_hex(e)?g.hex(e):g.str(e),n=new _(t),r=[];for(;n.size>0;)if(n.size>520){const e=n.read(520);r.push(e.hex)}else{const e=n.read(n.size);r.push(e.hex)}return r}(e.content);t.push("OP_0",...n)}return t.push("OP_ENDIF"),ma(t)}function Ia(e){const t={};for(let n=0;n<e.length;n++)switch(e[n]){case"OP_1":t.mimetype=Za(e[n+1]),n+=1;break;case"OP_2":t.pointer=Ua(e[n+1]),n+=1;break;case"OP_3":t.parent=Na(e[n+1]),n+=1;break;case"OP_11":t.delegate=Na(e[n+1]),n+=1;break;case"OP_13":t.rune=Ca(e[n+1]),n+=1;break;case"OP_WITHIN":t.ref=$a(e[n+1]),n+=1;break;case"OP_NOP":t.opcode=Ua(e[n+1]),n+=1;break;case"OP_0":return t.content=Ra(e.slice(n+1)),t}return t}function $a(e){return g.bytes(e).hex}function Ta(e){b.ok(e.includes("i"),"identifier must include an index");const t=e.split("i"),n=g.hex(t[0]),r=Number(t[1]),i=n.reverse().hex;return 0!==r?i+g.num(r).hex:i}function Na(e){const t=g.bytes(e),n=t.at(-1)??0;return t.slice(0,-1).reverse().hex+"i"+String(n)}function Ba(e){return g.num(e).reverse().hex}function Ua(e){return g.bytes(e).reverse().num}function Za(e){return g.bytes(e).str}function Ra(e,t="hex"){const n=g.join(e);return"hex"===t?n.hex:n.str}function Ca(e){let t=g.bytes(e).reverse().big;t+=ka;let n="";for(;t>xa;){const e=t%za;if(e===xa)n="Z"+n,t=t/za-ka;else{const r=Number(e)+"A".charCodeAt(0)-1;n=String.fromCharCode(r)+n,t/=za}}return n}!function(e){e.encode=Sa,e.decode=Pa}(Oa||(Oa={}));const ja=4194304,Fa=65535,Ha=65535;var Da;function La(e){if("height"===e.mode){return(function(e){if(void 0===e||!Number.isInteger(e)||e<0||e>Ha)throw new Error("Heightlock value must be an integer between 0 and 65535");return e}(e.height)&Fa)>>>0}if("stamp"===e.mode){const t=function(e){if(void 0===e||!Number.isInteger(e))throw new Error("timestamp must be a number");const t=Math.floor(e/512);if(!Number.isInteger(t)||t<0||t>Ha)throw new Error("timelock value must be an integer between 0 and 65535 (in 512-second increments)");return t}(e.stamp);return(ja|t&Fa)>>>0}throw new Error("invalid timelock mode: "+e.mode)}function Va(e){const t=function(e){const t="string"==typeof e?parseInt(e,16):e;if(!Number.isInteger(t)||t<0||t>4294967295)throw new Error(`invalid sequence value: ${t}`);return t}(e);if(2147483648&t)return null;const n=t&Fa;if(t&ja){const e=512*n;if(e>4294967295)throw new Error("Decoded timestamp exceeds 32-bit limit");return{mode:"stamp",stamp:e}}if(n>Ha)throw new Error("Decoded height exceeds maximum");return{mode:"height",height:n}}!function(e){e.encode=La,e.decode=Va}(Da||(Da={}));var qa,Ma=Object.freeze({__proto__:null,get InscriptionUtil(){return Oa},get LocktimeField(){return Kc},get RefPointer(){return Wc},get SequenceField(){return Da},decode_inscription:Pa,decode_locktime:Yc,decode_sequence:Va,encode_inscription:Sa,encode_locktime:Gc,encode_sequence:La});function Ka(e){return g.bytes(e).prefix_varint("le").hex}!function(e){e.parse=va,e.decode=ba,e.encode=ma,e.is_valid=Ea}(qa||(qa={}));var Wa=Object.freeze({__proto__:null,OPCODE_MAP:aa,get ScriptUtil(){return qa},decode_script:ba,encode_script:ma,encode_script_word:ga,get_asm_code:da,get_lock_script_info:function(e){return{type:Wu(e),version:Gu(e)}},get_lock_script_type:Wu,get_lock_script_version:Gu,get_op_code:fa,get_op_type:la,get_size_varint:ya,is_opreturn_script:function(e){const t=g.bytes(e).hex;return Vu.opreturn.test(t)},is_p2pkh_script:Yu,is_p2sh_script:Xu,is_p2tr_script:ec,is_p2wpkh_script:Ju,is_p2wsh_script:Qu,is_return_script:function(e){return 106===g.bytes(e).at(0)},is_valid_op:ha,is_valid_script:Ea,parse_script:va,parse_script_pubkeys:function(e){return[...("string"==typeof e?e:g.bytes(e).hex).matchAll(/20([0-9a-f]{64})(ac|ad|ba)/gi)].map(e=>e[1])},prefix_script_size:Ka,prefix_word_size:wa,split_script_word:_a});function Ga(e){return b.exists(e.prevout,"Prevout data missing for input: "+String(e.txid)),e.prevout}function Ya(e,t){let{txindex:n,txinput:r}=t??{};if(void 0!==n){if(n>=e.vin.length)throw new Error("Input index out of bounds: "+String(n));r=e.vin.at(n)}return b.ok(void 0!==r),r}function Xa(e){if(void 0===e)return;if(e.length<2)return;const t=e.at(-1);if("string"==typeof t&&t.startsWith("50")){return pn(g.hex(t).prefix_varint("be"))}}const Ja=ws([ps(Xs),Xs]),Qa=gs({pubkey:Xs,leaves:Ja.array().optional(),target:Xs.optional(),version:Hs.optional()});var ef=Object.freeze({__proto__:null,config:Qa,taptree:Ja});const tf=os().min(0n).max(2100000000000000n),nf=gs({value:tf,script_pk:Ds}),rf=gs({coinbase:Ds.nullable(),txid:Ws,vout:Hs,prevout:nf.nullable(),script_sig:Ds.nullable(),sequence:Hs,witness:ps(Ds)}),of=gs({version:Hs,vin:ps(rf),vout:ps(nf),locktime:Hs}),sf=nf.extend({value:ws([Hs,tf])}),uf=rf.extend({coinbase:Ds.nullable().optional(),prevout:sf.nullable().optional(),script_sig:Ds.nullable().optional(),sequence:ws([Ds,Hs]).optional(),witness:ps(Ds).optional()}),cf=gs({version:Hs.optional(),vin:ps(uf),vout:ps(sf),locktime:Hs.optional()});var af=Object.freeze({__proto__:null,tx_data:of,tx_input:rf,tx_output:nf,tx_template:cf,vin_template:uf,vout_template:sf}),ff=Object.freeze({__proto__:null,taproot:ef,tx:af});function df(e){cf.parse(e)}function lf(e){if(e.some(e=>null===e.prevout))throw new Error("transaction missing prevouts")}function hf(e){of.parse(e)}function pf(e){uf.parse(e)}function mf(e){sf.parse(e)}function gf(e,t=!0){hf(e);const{version:n,vin:r,vout:i,locktime:o}=e,s=[_f(n)];if(t&&s.push(g.hex("0001")),s.push(bf(r)),s.push(kf(i)),t)for(const e of r)s.push(Of(e.witness));return s.push(Pf(o)),g.join(s)}function _f(e){return g.num(e,4).reverse()}function wf(e){return g.hex(e,32).reverse()}function yf(e){return g.num(e,4).reverse()}function vf(e){return g.num(e,4).reverse()}function bf(e){const t=[g.varint(e.length,"le")];for(const n of e)t.push(Ef(n));return g.join(t)}function Ef(e){return null!==e.coinbase?g.join([wf(Fu.TXID),yf(Fu.VOUT),Sf(e.coinbase),vf(e.sequence)]):g.join([wf(e.txid),yf(e.vout),Sf(e.script_sig),vf(e.sequence)])}function xf(e){return g.big(e,8).reverse()}function kf(e){const t=[g.varint(e.length,"le")];for(const n of e)t.push(zf(n));return g.join(t)}function zf(e){const{value:t,script_pk:n}=e;return g.join([xf(t),Sf(n)])}function Of(e){const t=[g.varint(e.length)];for(const n of e)t.push(Sf(n));return g.join(t)}function Pf(e){return g.num(e,4).reverse()}function Sf(e){return null!==e?(b.is_hex(e),g.hex(e).prefix_varint("le")):g.hex("00")}function Af(e,t=!0){b.is_bytes(e,"txdata must be hex or bytes");const n=new _(e),r=function(e){return e.read(4).reverse().to_num()}(n),i=!!t&&function(e){const[t,n]=[...e.peek(2)];if(0===t){if(e.read(2),1===n)return!0;throw new Error(`Invalid witness flag: ${n}`)}return!1}(n),o=function(e){const t=[],n=e.varint();for(let r=0;r<n;r++){const n=If(e);t.push(n)}return t}(n),s=function(e){const t=[],n=e.varint();for(let r=0;r<n;r++)try{t.push($f(e))}catch(e){throw new Error(`failed to decode output: ${r}: ${y(e)}`)}return t}(n);if(i)for(const e of o)e.witness=Tf(n);const u=function(e){return e.read(4).reverse().to_num()}(n);return{version:r,vin:o,vout:s,locktime:u}}function If(e){const t=e.read(32).reverse().hex,n=e.read(4).reverse().num,r=Nf(e),i=e.read(4).reverse().num,o=[];return t===Fu.TXID&&n===Fu.VOUT?{coinbase:r,prevout:null,script_sig:null,sequence:i,txid:t,vout:n,witness:o}:{coinbase:null,prevout:null,script_sig:r,sequence:i,txid:t,vout:n,witness:o}}function $f(e){const t=e.read(8).reverse().big,n=Nf(e);return b.exists(n,"failed to decode script_pk"),{value:t,script_pk:n}}function Tf(e){const t=[],n=e.varint();for(let r=0;r<n;r++){const n=Nf(e);if(null===n)throw new Error("failed to decode witness element: "+r);t.push(n)}return t}function Nf(e){const t=e.varint("le");return t>0?e.read(t).hex:null}function Bf(e,t){let n;if("string"==typeof e||e instanceof Uint8Array?n=Af(e):(df(e),n=Lf(e)),t){b.has_items(t,"prevouts must be a non-empty array");for(const[e,r]of n.vin.entries()){const n=t.at(e);b.exists(n,"prevout not found for input index: "+e),r.prevout=Df(n)}}return n}function Uf(e){if(!v.exists(e))return Hu.SEQUENCE;if(v.is_hex(e))return g.hex(e,4).reverse().num;if(v.is_uint(e))return e;throw new Error("invalid sequence value: "+String(e))}function Zf(e){if(v.is_uint(e))return BigInt(e);if("bigint"==typeof e)return e;throw new TypeError("invalid output value: "+String(e))}function Rf(e){return{script_pk:e.script_pk,value:Zf(e.value)}}function Cf(e){pf(e),b.exists(e.coinbase,"coinbase is required");const t=Fu.TXID,n=Fu.VOUT,r=e.coinbase,i=e.witness??[];return{coinbase:r,prevout:null,script_sig:null,sequence:Uf(e.sequence),witness:i,txid:t,vout:n}}function jf(e){pf(e),b.is_empty(e.coinbase,"coinbase is not allowed"),b.is_empty(e.prevout,"prevout is not allowed");const{txid:t,vout:n,script_sig:r=null,witness:i=[]}=e;return{txid:t,vout:n,coinbase:null,prevout:null,script_sig:r,sequence:Uf(e.sequence),witness:i}}function Ff(e){pf(e),b.exists(e.prevout,"prevout is required");const{txid:t,vout:n,script_sig:r=null,witness:i=[]}=e;return{txid:t,vout:n,coinbase:null,prevout:Rf(e.prevout),script_sig:r,sequence:Uf(e.sequence),witness:i}}function Hf(e){return e.coinbase?Cf(e):e.prevout?Ff(e):jf(e)}function Df(e){mf(e);return{script_pk:e.script_pk,value:Zf(e.value)}}function Lf(e){df(e);const{vin:t=[],vout:n=[]}=e??{vin:[],vout:[]},r=e.locktime??Hu.LOCKTIME,i=e.version??Hu.VERSION;return{locktime:r,vin:t.map(e=>Hf(e)),vout:n.map(e=>Df(e)),version:i}}var Vf=Object.freeze({__proto__:null,assert_has_prevouts:lf,assert_tx_data:hf,assert_tx_input:function(e){rf.parse(e)},assert_tx_output:function(e){nf.parse(e)},assert_tx_spend_data:function(e){hf(e),lf(e.vin)},assert_tx_template:df,assert_vin_template:pf,assert_vout_template:mf,create_coinbase_input:Cf,create_spend_input:Ff,create_tx:Lf,create_tx_input:Hf,create_tx_output:Df,create_virtual_input:jf,decode_tx:Af,encode_script_data:Sf,encode_tx:gf,encode_tx_inputs:bf,encode_tx_locktime:Pf,encode_tx_outputs:kf,encode_tx_version:_f,encode_tx_vout:zf,encode_txin_sequence:vf,encode_txin_txid:wf,encode_txin_vout:yf,encode_vin:Ef,encode_vin_witness:Of,encode_vout_value:xf,get_prevouts:function(e){df(e);const t=e.vin.map(e=>e.prevout);return b.ok(t.every(e=>null!==e),"prevouts missing from tx"),t},get_segwit_size:function(e){return 2+e.filter(e=>e.witness.length>0).map(e=>e.witness).reduce((e,t)=>e+Of(t).length,0)},get_tx_value:function(e){const t=Bf(e);df(t);const n=t.vin.reduce((e,t)=>e+(t.prevout?.value??0n),0n),r=t.vout.reduce((e,t)=>e+t.value,0n);return{fees:n>r?n-r:0n,vin:n,vout:r}},get_txhash:function(e){return"object"==typeof e&&(df(e),e=gf(e,!0)),mn(e).reverse().hex},get_txid:function(e){return"object"==typeof e&&(df(e),e=gf(e,!1)),mn(e).reverse().hex},get_txin_size:function(e){return Ef(e).length},get_txout_size:function(e){return zf(e).length},get_txsize:function(e){const t=Bf(e),n=gf(t,!1).length,r=gf(t,!0).length,i=3*n+r,o=i%4>0?1:0;return{base:n,total:r,vsize:Math.ceil(i/4)+o,weight:i}},get_vin_size:function(e){return bf(e).length},get_vout_size:function(e){return kf(e).length},get_vsize:function(e){const t=g.bytes(e).length,n=t%4>0?1:0;return Math.ceil(t/4)+n},normalize_prevout:Rf,normalize_sequence:Uf,normalize_value:Zf,parse_tx:Bf,read_payload:Nf,serialize_tx:function(e){const t=Bf(e),n=t.version,r=t.locktime,i=[],o=[];for(const e of t.vin)null!==e.prevout&&i.push({script_pk:e.prevout.script_pk,value:Number(e.prevout.value)});for(const e of t.vout)o.push({script_pk:e.script_pk,value:Number(e.value)});return{version:n,locktime:r,vin:i,vout:o}}});function qf(e,t={}){const{sigflag:n=1,txindex:r}=t,i=Bf(e),o=!(128&~n),s=n%128;if(!qu.includes(s))throw new Error("Invalid hash type: "+String(n));const{version:u,vin:c,vout:a,locktime:f}=i,d=Ya(i,t),{txid:l,vout:h,prevout:p,sequence:m}=d,{value:_}=p??{};if(void 0===_)throw new Error("Prevout value is empty!");let{pubkey:w,script:y}=t;if(void 0===y&&void 0!==w){const e=hn(w).hex;y=`76a914${String(e)}88ac`}if(void 0===y)throw new Error("No pubkey / script has been set!");if(ba(y).includes("OP_CODESEPARATOR"))throw new Error("This library does not currently support the use of OP_CODESEPARATOR in segwit scripts.");const v=[_f(u),Mf(c,o),Kf(c,s,o),wf(l),yf(h),Ka(y),xf(_),vf(m),Wf(a,s,r),Pf(f),g.num(n,4).reverse()];return mn(g.join(v))}function Mf(e,t){if(!0===t)return g.num(0,32);const n=[];for(const{txid:t,vout:r}of e)n.push(wf(t)),n.push(yf(r));return mn(g.join(n))}function Kf(e,t,n){if(n||1!==t)return g.num(0,32);const r=[];for(const{sequence:t}of e)r.push(vf(t));return mn(g.join(r))}function Wf(e,t,n){const r=[];if(1===t){for(const{value:t,script_pk:n}of e)r.push(xf(t)),r.push(Ka(n));return mn(g.join(r))}if(3===t&&(b.ok(void 0!==n),n<e.length)){const{value:t,script_pk:i}=e[n];return r.push(xf(t)),r.push(Ka(i)),mn(g.join(r))}return g.num(0,32)}function Gf(e,t=192){return Yf(Ka(e),t)}function Yf(e,t=192){return gn("TapLeaf",Jf(t),e)}function Xf(e,t){return t<e&&([e,t]=[t,e]),gn("TapBranch",e,t)}function Jf(e=192){return 254&e}function Qf(e,t=new Uint8Array){return b.size(e,32),gn("TapTweak",e,t)}function ed(e,t={}){return gn("TapSighash",td(e,t))}function td(e,t={}){const{script:n,txindex:r,sigflag:i=0,extflag:o=0,key_version:s=0,separator_pos:u=4294967295}=t,c=Bf(e),{version:a,vin:f,vout:d,locktime:l}=c,h=Ya(c,t),{txid:p,vout:m,sequence:_,witness:w=[]}=h;if(!Mu.includes(i))throw new Error("Invalid hash type: "+String(i));if(o<0||o>127)throw new Error("Extention flag out of range: "+String(o));let{extension:y}=t;void 0!==n&&(y=Gf(n).hex);const v=!(128&~i),E=Xa(w),x=2*(o+(void 0!==y?1:0))+(void 0!==E?1:0),k=[g.num(0,1),g.num(i,1),_f(a),Pf(l)];if(!v){const e=f.map(e=>Ga(e));k.push(nd(f),id(e),od(e),rd(f))}if(((3&i)<2||(3&i)>3)&&k.push(sd(d)),k.push(g.num(x,1)),v){const{value:e,script_pk:t}=Ga(h);k.push(wf(p),yf(m),xf(e),Sf(t),vf(_))}else b.ok("number"==typeof r),k.push(g.num(r,4).reverse());return void 0!==E&&k.push(E),3&~i||(b.ok("number"==typeof r),k.push(ud(d[r]))),void 0!==y&&k.push(g.bytes(y),g.num(s),g.num(u,4,"le")),g.join(k)}function nd(e){const t=[];for(const{txid:n,vout:r}of e)t.push(wf(n)),t.push(yf(r));return pn(g.join(t))}function rd(e){return pn(...e.map(e=>vf(e.sequence)))}function id(e){return pn(...e.map(e=>xf(e.value)))}function od(e){return pn(...e.map(e=>Sf(e.script_pk)))}function sd(e){const t=[];for(const{value:n,script_pk:r}of e)t.push(xf(n)),t.push(Sf(r));return pn(...t)}function ud(e){return pn(xf(e.value),Sf(e.script_pk))}var cd=Object.freeze({__proto__:null,bip143_hash_outputs:Wf,bip143_hash_prevouts:Mf,bip143_hash_sequence:Kf,bip341_hash_amounts:id,bip341_hash_outpoints:nd,bip341_hash_output:ud,bip341_hash_outputs:sd,bip341_hash_scripts:od,bip341_hash_sequence:rd,get_annex_data:Xa,get_prevout:Ga,get_taproot_tx_preimage:td,hash_segwit_tx:qf,hash_taproot_tx:ed,parse_txinput:Ya});function ad(e){return 0!==e?g.num(e,1).hex:""}var fd=Object.freeze({__proto__:null,sign_segwit_tx:function(e,t,n){return function(e,t){const n=Yt(t),r=St.sign(n,e).toDERRawBytes();return g.bytes(r)}(e,qf(Bf(t),n)).hex+ad(n.sigflag??1)},sign_taproot_tx:function(e,t,n){return function(e,t){const n=Yt(t);return Yt(Vt.sign(n,e))}(e,ed(Bf(t),n)).hex+ad(n.sigflag??0)},verify_tx:function(e,t={}){return console.warn("verify_segwit_tx is not implemented"),!0}});function dd(e,t,n=[]){const r=[],i=[];if(e.length<1)throw new Error("Tree is empty!");for(let i=0;i<e.length;i++){const o=e[i];if(Array.isArray(o)){let[e,i,s]=dd(o,t);t=i,r.push(e);for(const e of s)n.push(e)}else{const e=g.bytes(o).hex;r.push(e)}}if(1===r.length)return[r[0],t,n];r.sort(),r.length%2!=0&&r.push(r[r.length-1]);for(let e=0;e<r.length-1;e+=2){const o=Xf(r[e],r[e+1]).hex;i.push(o),"string"==typeof t&&(t===r[e]?(n.push(r[e+1]),t=o):t===r[e+1]&&(n.push(r[e]),t=o))}return dd(i,t,n)}function ld(e){const t=e.map(e=>g.bytes(e)),n=e.map(e=>g.bytes(e).hex),r=function(e){let t=e.at(-1);return e.length>1&&t instanceof Uint8Array&&80===t[0]?new g(t).hex:null}(t);null!==r&&t.pop();const i=function(e){let t=e.at(-1);return e.length>1&&t instanceof Uint8Array&&t.length>32&&Du.includes(254&t[0])?new g(t).hex:null}(t);null!==i&&t.pop();const o=function(e,t){let n=e.at(0),r=e.at(1),i=e.at(-1);return null!==t&&void 0!==i?"p2ts":2===e.length&&void 0!==n&&void 0!==r&&n.length>=64&&33===r.length?"p2wpkh":1===e.length&&void 0!==n&&64===n.length?"p2tr":e.length>1&&void 0!==i&&Ea(i)?"p2wsh":null}(t,i),s=function(e){return null===e?null:e.startsWith("p2w")?0:e.startsWith("p2t")?1:null}(o),u=function(e,t){let n;switch(t){case"p2ts":n=e.at(-1);case"p2wsh":n=e.at(-1)}return void 0!==n?new g(n).hex:null}(t,o);null!==u&&t.pop();return{annex:r,cblock:i,params:t.map(e=>e.hex),script:u,stack:n,type:o,version:s}}function hd(e){const t=new _(e),n=t.read(1).num,r=t.read(32).hex,[i,o]=pd(n),s=[];for(;t.size>=32;)s.push(t.read(32).hex);if(0!==t.size)throw new Error("Non-empty buffer on control block: "+String(t));return{int_key:r,path:s,parity:o,version:i}}function pd(e){return e%2==0?[e-0,2]:[e-1,3]}function md(e){b.size(e,33,"invalid pubkey size");const[t]=g.bytes(e);if(2===t)return 0;if(3===t)return 1;throw new Error("Invalid parity bit: "+String(t))}const gd=192;var _d=Object.freeze({__proto__:null,create_taproot:function(e){Qa.parse(e);const{pubkey:t,version:n=gd}=e,r=e.leaves??[],i=void 0!==e.target?g.bytes(e.target).hex:void 0;let o,s=[];if(r.length>0){const[e,t,n]=dd(r,i);s=n,o=e}else o=i;const u=Qf(t,o),c=Wt(t,u,"ecdsa"),a=md(c),f=Gt(c,"bip340"),d=[g.num(n+a),g.bytes(t)];s.length>0&&s.forEach(e=>d.push(e));const l=g.join(d);return{int_key:g.bytes(t).hex,path:s,parity:a,taproot:o??null,cblock:l.hex,tapkey:f.hex,taptweak:u.hex}},encode_leaf_version:Jf,encode_tapbranch:Xf,encode_tapleaf:Yf,encode_tapscript:Gf,encode_taptweak:Qf,get_merkle_root:function(e){return dd(e)[0]},merkleize:dd,parse_cblock:hd,parse_cblock_parity:pd,parse_pubkey_parity:md,parse_taproot_witness:function(e){const{cblock:t,params:n,script:r}=ld(e);b.exists(t,"cblock is null"),b.exists(r,"script is null");const i=hd(t);let o=Gf(r,i.version).hex;for(const e of i.path)o=Xf(o,e).hex;const s=Qf(i.int_key,o),u=Wt(i.int_key,s,"bip340");return n.map(e=>g.bytes(e).hex),{cblock:i,params:n,script:r,tapkey:u.hex,tweak:s.hex}},verify_taproot:function(e,t,n){b.size(e,32);const{parity:r,path:i,int_key:o}=hd(n),s=g.join([r,e]);let u=g.bytes(t).hex;for(const e of i)u=Xf(u,e).hex;const c=Wt(o,Qf(o,u),"ecdsa");return s.hex===c.hex}});var wd=Object.freeze({__proto__:null,assert_witness:function(e){b.ok(Array.isArray(e),"witness must be an array"),b.ok(e.every(e=>g.is_bytes(e)),"witness must be an array of strings or bytes")},get_witness_size:function(e){const t=e.map(e=>g.bytes(e)).reduce((e,t)=>e+t.length,0);return{total:t,vsize:Math.ceil(1+t/4)}},parse_witness:ld});return e.ADDRESS=qc,e.CONST=Ku,e.META=Ma,e.SCHEMA=ff,e.SCRIPT=Wa,e.SIGHASH=cd,e.SIGNER=fd,e.TAPROOT=_d,e.TX=Vf,e.WITNESS=wd,e}({});
|
|
11
|
+
const zt={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Ot={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},Pt=BigInt(0),St=BigInt(1),At=BigInt(2);const It=Ve(zt.p,{sqrt:function(e){const t=zt.p,n=BigInt(3),r=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),u=BigInt(44),c=BigInt(88),a=e*e*e%t,f=a*a*e%t,d=Be(f,n,t)*f%t,l=Be(d,n,t)*f%t,h=Be(l,At,t)*a%t,p=Be(h,i,t)*h%t,m=Be(p,o,t)*p%t,g=Be(m,u,t)*m%t,_=Be(g,c,t)*g%t,y=Be(_,u,t)*m%t,w=Be(y,n,t)*f%t,v=Be(w,s,t)*p%t,b=Be(v,r,t)*a%t,E=Be(b,At,t);if(!It.eql(It.sqr(E),e))throw new Error("Cannot find square root");return E}}),$t=function(e,t){const n=t=>kt({...e,hash:t});return{...n(t),create:n}}({...zt,Fp:It,lowS:!0,endo:Ot},ne),Tt={};function Bt(e,...t){let n=Tt[e];if(void 0===n){const t=ne(L(e));n=q(t,t),Tt[e]=n}return ne(q(n,...t))}const Nt=e=>e.toBytes(!0).slice(1),Ut=(()=>$t.Point)(),Zt=e=>e%At===Pt;function Rt(e){const{Fn:t,BASE:n}=Ut,r=yt(t,e),i=n.multiply(r);return{scalar:Zt(i.y)?r:t.neg(r),bytes:Nt(i)}}function Ct(e){const t=It;if(!t.isValidNot0(e))throw new Error("invalid x: Fail if x ≥ p");const n=t.create(e*e),r=t.create(n*e+BigInt(7));let i=t.sqrt(r);Zt(i)||(i=t.neg(i));const o=Ut.fromAffine({x:e,y:i});return o.assertValidity(),o}const jt=de;function Ft(...e){return Ut.Fn.create(jt(Bt("BIP0340/challenge",...e)))}function Dt(e){return Rt(e).bytes}function Ht(e,t,n=W(32)){const{Fn:r}=Ut,i=me("message",e),{bytes:o,scalar:s}=Rt(t),u=me("auxRand",n,32),c=r.toBytes(s^jt(Bt("BIP0340/aux",u))),a=Bt("BIP0340/nonce",c,o,i),{bytes:f,scalar:d}=Rt(a),l=Ft(f,o,i),h=new Uint8Array(64);if(h.set(f,0),h.set(r.toBytes(r.create(d+l*s)),32),!Lt(h,i,o))throw new Error("sign: Invalid signature produced");return h}function Lt(e,t,n){const{Fn:r,BASE:i}=Ut,o=me("signature",e,64),s=me("message",t),u=me("publicKey",n,32);try{const e=Ct(jt(u)),t=jt(o.subarray(0,32));if(!_e(t,St,zt.p))return!1;const n=jt(o.subarray(32,64));if(!_e(n,St,zt.n))return!1;const c=Ft(r.toBytes(t),Nt(e),s),a=i.multiplyUnsafe(n).add(e.multiplyUnsafe(r.neg(c))),{x:f,y:d}=a.toAffine();return!(a.is0()||!Zt(d)||f!==t)}catch(e){return!1}}const Vt=(()=>{const e=(e=W(48))=>Me(e,zt.n);return{keygen:function(t){const n=e(t);return{secretKey:n,publicKey:Dt(n)}},getPublicKey:Dt,sign:Ht,verify:Lt,Point:Ut,utils:{randomSecretKey:e,randomPrivateKey:e,taggedHash:Bt,lift_x:Ct,pointToBytes:Nt,numberToBytesBE:he,bytesToNumberBE:de,mod:Te},lengths:{secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:64,seed:48}}})(),qt=BigInt(0),Kt=BigInt(2);Ve($t.CURVE.n,32,!0);const Mt=$t.Point.BASE;function Wt(e,t,n,r=!1){const i=Yt(t).big,o=function(e){try{const t=Gt(e,"ecdsa");return $t.Point.fromHex(t)}catch(t){throw new Error("invalid pubkey: "+e)}}(e),s=Mt.multiply(i);let u=o.add(s);r&&u.y%Kt!==qt&&(u=u.negate());return Gt(u.toHex(!0),n)}function Gt(e,t){try{const n=Yt(e);if(33===n.length&&"bip340"===t)return n.slice(1);if(32===n.length&&"ecdsa"===t){const e=g.num(2,1);return g.join([e,n])}return n}catch(t){throw new Error("invalid pubkey: "+String(e))}}function Yt(e){try{return g.bytes(e)}catch(t){throw new Error("invalid bytes: "+String(e))}}const Xt=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Jt=(()=>Uint8Array.from(new Array(16).fill(0).map((e,t)=>t)))(),Qt=(()=>Jt.map(e=>(9*e+5)%16))(),en=(()=>{const e=[[Jt],[Qt]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map(e=>Xt[e]));return e})(),tn=(()=>en[0])(),nn=(()=>en[1])(),rn=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>Uint8Array.from(e)),on=tn.map((e,t)=>e.map(e=>rn[t][e])),sn=nn.map((e,t)=>e.map(e=>rn[t][e])),un=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),cn=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function an(e,t,n,r){return 0===e?t^n^r:1===e?t&n|~t&r:2===e?(t|~n)^r:3===e?t&r|n&~r:t^(n|~r)}const fn=new Uint32Array(16);class dn extends X{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:e,h1:t,h2:n,h3:r,h4:i}=this;return[e,t,n,r,i]}set(e,t,n,r,i){this.h0=0|e,this.h1=0|t,this.h2=0|n,this.h3=0|r,this.h4=0|i}process(e,t){for(let n=0;n<16;n++,t+=4)fn[n]=e.getUint32(t,!0);let n=0|this.h0,r=n,i=0|this.h1,o=i,s=0|this.h2,u=s,c=0|this.h3,a=c,f=0|this.h4,d=f;for(let e=0;e<5;e++){const t=4-e,l=un[e],h=cn[e],p=tn[e],m=nn[e],g=on[e],_=sn[e];for(let t=0;t<16;t++){const r=$(n+an(e,i,s,c)+fn[p[t]]+l,g[t])+f|0;n=f,f=c,c=0|$(s,10),s=i,i=r}for(let e=0;e<16;e++){const n=$(r+an(t,o,u,a)+fn[m[e]]+h,_[e])+d|0;r=d,d=a,a=0|$(u,10),u=o,o=n}}this.set(this.h1+s+a|0,this.h2+c+d|0,this.h3+f+r|0,this.h4+n+o|0,this.h0+i+u|0)}roundClean(){S(fn)}destroy(){this.destroyed=!0,S(this.buffer),this.set(0,0,0,0,0)}}const ln=M(()=>new dn);function hn(...e){const t=g.join(e),n=ln(ne(t));return new g(n)}function pn(...e){const t=g.join(e),n=ne(t);return new g(n)}function mn(...e){const t=g.join(e),n=ne(ne(t));return new g(n)}function gn(e,...t){const n=function(e){const t=pn(g.str(e));return g.join([t,t])}(e),r=t.map(e=>new g(e));return pn(g.join([n,...r]))}
|
|
12
|
+
/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function _n(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function yn(e,t){return!!Array.isArray(t)&&(0===t.length||(e?t.every(e=>"string"==typeof e):t.every(e=>Number.isSafeInteger(e))))}function wn(e){if("function"!=typeof e)throw new Error("function expected");return!0}function vn(e,t){if("string"!=typeof t)throw new Error(`${e}: string expected`);return!0}function bn(e){if(!Number.isSafeInteger(e))throw new Error(`invalid integer: ${e}`)}function En(e){if(!Array.isArray(e))throw new Error("array expected")}function xn(e,t){if(!yn(!0,t))throw new Error(`${e}: array of strings expected`)}function kn(e,t){if(!yn(!1,t))throw new Error(`${e}: array of numbers expected`)}function zn(...e){const t=e=>e,n=(e,t)=>n=>e(t(n));return{encode:e.map(e=>e.encode).reduceRight(n,t),decode:e.map(e=>e.decode).reduce(n,t)}}function On(e){const t="string"==typeof e?e.split(""):e,n=t.length;xn("alphabet",t);const r=new Map(t.map((e,t)=>[e,t]));return{encode:r=>(En(r),r.map(r=>{if(!Number.isSafeInteger(r)||r<0||r>=n)throw new Error(`alphabet.encode: digit index outside alphabet "${r}". Allowed: ${e}`);return t[r]})),decode:t=>(En(t),t.map(t=>{vn("alphabet.decode",t);const n=r.get(t);if(void 0===n)throw new Error(`Unknown letter: "${t}". Allowed: ${e}`);return n}))}}function Pn(e=""){return vn("join",e),{encode:t=>(xn("join.decode",t),t.join(e)),decode:t=>(vn("join.decode",t),t.split(e))}}function Sn(e,t,n){if(t<2)throw new Error(`convertRadix: invalid from=${t}, base cannot be less than 2`);if(n<2)throw new Error(`convertRadix: invalid to=${n}, base cannot be less than 2`);if(En(e),!e.length)return[];let r=0;const i=[],o=Array.from(e,e=>{if(bn(e),e<0||e>=t)throw new Error(`invalid integer: ${e}`);return e}),s=o.length;for(;;){let e=0,u=!0;for(let i=r;i<s;i++){const s=o[i],c=t*e,a=c+s;if(!Number.isSafeInteger(a)||c/t!==e||a-s!==c)throw new Error("convertRadix: carry overflow");const f=a/n;e=a%n;const d=Math.floor(f);if(o[i]=d,!Number.isSafeInteger(d)||d*n+e!==a)throw new Error("convertRadix: carry overflow");u&&(d?u=!1:r=i)}if(i.push(e),u)break}for(let t=0;t<e.length-1&&0===e[t];t++)i.push(0);return i.reverse()}const An=(e,t)=>0===t?e:An(t,e%t),In=(e,t)=>e+(t-An(e,t)),$n=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function Tn(e,t,n,r){if(En(e),t<=0||t>32)throw new Error(`convertRadix2: wrong from=${t}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(In(t,n)>32)throw new Error(`convertRadix2: carry overflow from=${t} to=${n} carryBits=${In(t,n)}`);let i=0,o=0;const s=$n[t],u=$n[n]-1,c=[];for(const r of e){if(bn(r),r>=s)throw new Error(`convertRadix2: invalid data word=${r} from=${t}`);if(i=i<<t|r,o+t>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${t}`);for(o+=t;o>=n;o-=n)c.push((i>>o-n&u)>>>0);const e=$n[o];if(void 0===e)throw new Error("invalid carry");i&=e-1}if(i=i<<n-o&u,!r&&o>=t)throw new Error("Excess padding");if(!r&&i>0)throw new Error(`Non-zero padding: ${i}`);return r&&o>0&&c.push(i>>>0),c}function Bn(e,t=!1){if(bn(e),e<=0||e>32)throw new Error("radix2: bits should be in (0..32]");if(In(8,e)>32||In(e,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!_n(n))throw new Error("radix2.encode input should be Uint8Array");return Tn(Array.from(n),8,e,!t)},decode:n=>(kn("radix2.decode",n),Uint8Array.from(Tn(n,e,8,t)))}}function Nn(e){return wn(e),function(...t){try{return e.apply(null,t)}catch(e){}}}const Un=(()=>"function"==typeof Uint8Array.from([]).toBase64&&"function"==typeof Uint8Array.fromBase64)()?{encode:e=>(function(e,...t){if(!_n(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}(e),e.toBase64()),decode:e=>(e=>{if(vn("base64",e),e.length>0&&!/^[A-Za-z0-9=+/]+$/.test(e))throw new Error("invalid base64");return Uint8Array.fromBase64(e,{alphabet:"base64",lastChunkHandling:"strict"})})(e)}:zn(Bn(6),On("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),function(e,t="="){return bn(e),vn("padding",t),{encode(n){for(xn("padding.encode",n);n.length*e%8;)n.push(t);return n},decode(n){xn("padding.decode",n);let r=n.length;if(r*e%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;r>0&&n[r-1]===t;r--){if((r-1)*e%8==0)throw new Error("padding: invalid, string has too much padding")}return n.slice(0,r)}}}(6),Pn("")),Zn=zn(Bn(6),On("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),Pn("")),Rn=(Cn="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",zn(function(e){return bn(e),{encode:t=>{if(!_n(t))throw new Error("radix.encode input should be Uint8Array");return Sn(Array.from(t),256,e)},decode:t=>(kn("radix.decode",t),Uint8Array.from(Sn(t,e,256)))}}(58),On(Cn),Pn("")));var Cn;const jn=e=>{return zn((n=t=>e(e(t)),bn(t=4),wn(n),{encode(e){if(!_n(e))throw new Error("checksum.encode: input should be Uint8Array");const r=n(e).slice(0,t),i=new Uint8Array(e.length+t);return i.set(e),i.set(r,e.length),i},decode(e){if(!_n(e))throw new Error("checksum.decode: input should be Uint8Array");const r=e.slice(0,-t),i=e.slice(-t),o=n(r).slice(0,t);for(let e=0;e<t;e++)if(o[e]!==i[e])throw new Error("Invalid checksum");return r}}),Rn);var t,n},Fn=zn(On("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),Pn("")),Dn=[996825010,642813549,513874426,1027748829,705979059];function Hn(e){const t=e>>25;let n=(33554431&e)<<5;for(let e=0;e<Dn.length;e++)1==(t>>e&1)&&(n^=Dn[e]);return n}function Ln(e,t,n=1){const r=e.length;let i=1;for(let t=0;t<r;t++){const n=e.charCodeAt(t);if(n<33||n>126)throw new Error(`Invalid prefix (${e})`);i=Hn(i)^n>>5}i=Hn(i);for(let t=0;t<r;t++)i=Hn(i)^31&e.charCodeAt(t);for(let e of t)i=Hn(i)^e;for(let e=0;e<6;e++)i=Hn(i);return i^=n,Fn.encode(Tn([i%$n[30]],30,5,!1))}function Vn(e){const t="bech32"===e?1:734539939,n=Bn(5),r=n.decode,i=n.encode,o=Nn(r);function s(e,n,r=90){vn("bech32.encode prefix",e),_n(n)&&(n=Array.from(n)),kn("bech32.encode",n);const i=e.length;if(0===i)throw new TypeError(`Invalid prefix length ${i}`);const o=i+7+n.length;if(!1!==r&&o>r)throw new TypeError(`Length ${o} exceeds limit ${r}`);const s=e.toLowerCase(),u=Ln(s,n,t);return`${s}1${Fn.encode(n)}${u}`}function u(e,n=90){vn("bech32.decode input",e);const r=e.length;if(r<8||!1!==n&&r>n)throw new TypeError(`invalid string length: ${r} (${e}). Expected (8..${n})`);const i=e.toLowerCase();if(e!==i&&e!==e.toUpperCase())throw new Error("String must be lowercase or uppercase");const o=i.lastIndexOf("1");if(0===o||-1===o)throw new Error('Letter "1" must be present between prefix and data only');const s=i.slice(0,o),u=i.slice(o+1);if(u.length<6)throw new Error("Data must be at least 6 characters long");const c=Fn.decode(u).slice(0,-6),a=Ln(s,c,t);if(!u.endsWith(a))throw new Error(`Invalid checksum in ${e}: expected "${a}"`);return{prefix:s,words:c}}return{encode:s,decode:u,encodeFromBytes:function(e,t){return s(e,i(t))},decodeToBytes:function(e){const{prefix:t,words:n}=u(e,!1);return{prefix:t,words:n,bytes:r(n)}},decodeUnsafe:Nn(u),fromWords:r,fromWordsUnsafe:o,toWords:i}}const qn=Vn("bech32"),Kn=Vn("bech32m");var Mn,Wn,Gn,Yn,Xn;function Jn(e){if("string"!=typeof e||0===e.length)throw new Error(`invalid prefix: ${String(e)}`)}function Qn(e){if(!Array.isArray(e)||!e.every(e=>"number"==typeof e))throw new Error(`invalid words: ${String(e)}`)}!function(e){e.encode=e=>(b.is_u8a(e),jn(ne).encode(e)),e.decode=e=>(b.is_base58(e),jn(ne).decode(e))}(Mn||(Mn={})),function(e){e.encode=e=>(b.is_u8a(e),Un.encode(e)),e.decode=e=>(b.is_base64(e),Un.decode(e))}(Wn||(Wn={})),function(e){e.encode=e=>(b.is_u8a(e),Zn.encode(e)),e.decode=e=>(b.is_b64url(e),Zn.decode(e))}(Gn||(Gn={})),function(e){e.to_words=qn.toWords,e.to_bytes=qn.fromWords,e.encode=(e,t,n=!1)=>(Jn(e),Qn(t),qn.encode(e,t,n)),e.decode=(e,t=!1)=>(b.is_bech32(e),qn.decode(e,t))}(Yn||(Yn={})),function(e){e.to_words=Kn.toWords,e.to_bytes=Kn.fromWords,e.encode=(e,t,n=!1)=>(Jn(e),Qn(t),Kn.encode(e,t,n)),e.decode=(e,t=!1)=>(b.is_bech32(e),Kn.decode(e,t))}(Xn||(Xn={}));const er={base58:/^[13mn2][a-km-zA-HJ-NP-Z1-9]{25,34}$/,bech32:/^(bc|tb|bcrt)1q[ac-hj-np-z02-9]{6,87}$/,bech32m:/^(bc|tb|bcrt)1p[ac-hj-np-z02-9]{6,87}$/},tr=0,nr=1;function rr(e){const t=function(e){for(const[t,n]of Object.entries(er))if(n.test(e))return t;return null}(e);if(null===t)throw new Error("unrecognized address format: "+t);if("base58"===t)return function(e){const t=Mn.decode(e),n=t.slice(1),r=t[0];return{data:n,format:"base58",version:r}}(e);if("bech32"===t)return function(e){const{prefix:t,words:n}=Yn.decode(e),[r,...i]=n;b.ok(r===tr,"bech32 version mismatch");return{data:Yn.to_bytes(i),format:"bech32",prefix:t,version:r}}(e);if("bech32m"===t)return function(e){const{prefix:t,words:n}=Xn.decode(e),[r,...i]=n;b.ok(r===nr,"bech32m version mismatch");return{data:Xn.to_bytes(i),format:"bech32m",prefix:t,version:r}}(e);throw new Error("unable to find a matching address configuration")}function ir(e){if("base58"===e.format)return function(e){b.ok("base58"===e.format,"encoding mismatch"),b.exists(e.version,"must specify a version");const t=g.join([e.version,e.data]);return Mn.encode(t)}(e);if("bech32"===e.format)return function(e){b.ok("bech32"===e.format,"encoding mismatch"),b.exists(e.prefix,"prefix is required");const t=g.bytes(e.data),n=Yn.to_words(t);return Yn.encode(e.prefix,[tr,...n])}(e);if("bech32m"===e.format)return function(e){b.ok("bech32m"===e.format,"encoding mismatch"),b.exists(e.prefix,"prefix is required");const t=g.bytes(e.data),n=Xn.to_words(t);return Xn.encode(e.prefix,[nr,...n])}(e);throw new Error("unrecognized encoding format: "+e.format)}const or={TXID:"00".repeat(32),VOUT:4294967295},sr={LOCKTIME:0,SEQUENCE:4294967295,VERSION:2},ur=[192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,102,126,128,132,150,152,186,188,190],cr={P2PKH:"p2pkh",P2SH:"p2sh",P2WPKH:"p2wpkh",P2WSH:"p2wsh",P2TR:"p2tr",OPRETURN:"opreturn"},ar={[cr.P2PKH]:/^76a914[0-9a-f]{40}88ac$/i,[cr.P2SH]:/^a914[0-9a-f]{40}87$/i,[cr.P2WPKH]:/^0014[0-9a-f]{40}$/i,[cr.P2WSH]:/^0020[0-9a-f]{64}$/i,[cr.P2TR]:/^5120[0-9a-f]{64}$/i,[cr.OPRETURN]:/^6a[0-9a-f]{2,}$/i},fr=[1,2,3,129,130,131],dr=[0,...fr];var lr=Object.freeze({__proto__:null,COINBASE:or,DEFAULT:sr,LOCK_SCRIPT_REGEX:ar,LOCK_SCRIPT_TYPE:cr,SCRIPT_INT_KEY:"",SIGHASH_DEFAULT:1,SIGHASH_SEGWIT:fr,SIGHASH_TAPROOT:dr,SPEND_SCRIPT_TYPE:{P2PKH:"p2pkh",P2SH:"p2sh",P2WPKH:"p2wpkh",P2WSH:"p2wsh",P2TR:"p2tr",P2TS:"p2ts"},TAPLEAF_DEFAULT_VERSION:192,TAPLEAF_VERSIONS:ur,TX_SIZE:{GLOBAL_BASE:8,GLOBAL_WIT:10,TXIN_BASE:40,TXOUT_BASE:8}});function hr(e){const t=g.bytes(e).hex;for(const[e,n]of Object.entries(ar))if(n.test(t))return e;return null}function pr(e){switch(g.bytes(e).at(0)){case 0:return 0;case 81:return 1;default:return null}}function mr(e){const t=g.bytes(e).hex;return ar.p2pkh.test(t)}function gr(e){const t=g.bytes(e).hex;return ar.p2sh.test(t)}function _r(e){const t=g.bytes(e).hex;return ar.p2wpkh.test(t)}function yr(e){const t=g.bytes(e).hex;return ar.p2wsh.test(t)}function wr(e){const t=g.bytes(e).hex;return ar.p2tr.test(t)}function vr(e,t){switch(t){case"p2pkh":return function(e){return{hex:"76a914"+e+"88ac",asm:["OP_DUP","OP_HASH160",e,"OP_EQUALVERIFY","OP_CHECKSIG"]}}(e);case"p2sh":return function(e){return{hex:"a914"+e+"87",asm:["OP_HASH160",e,"OP_EQUAL"]}}(e);case"p2wpkh":return function(e){return{hex:"0014"+e,asm:["OP_0",e]}}(e);case"p2wsh":return function(e){return{hex:"0020"+e,asm:["OP_0",e]}}(e);case"p2tr":return function(e){return{hex:"5120"+e,asm:["OP_1",e]}}(e);default:throw new Error("unrecognized script type: "+t)}}const br=[["1","p2pkh","main",20,"base58",0],["3","p2sh","main",20,"base58",5],["m","p2pkh","testnet",20,"base58",111],["n","p2pkh","testnet",20,"base58",111],["2","p2sh","testnet",20,"base58",196],["m","p2pkh","regtest",20,"base58",111],["n","p2pkh","regtest",20,"base58",111],["2","p2sh","regtest",20,"base58",196],["bc","p2wpkh","main",20,"bech32",0],["tb","p2wpkh","testnet",20,"bech32",0],["bcrt","p2wpkh","regtest",20,"bech32",0],["bc","p2wsh","main",32,"bech32",0],["tb","p2wsh","testnet",32,"bech32",0],["bcrt","p2wsh","regtest",32,"bech32",0],["bc","p2tr","main",32,"bech32m",1],["tb","p2tr","testnet",32,"bech32m",1],["bcrt","p2tr","regtest",32,"bech32m",1]];function Er(e,t){for(const[n,r,i,o,s,u]of br)if(r===t&&i===e)return{type:r,prefix:n,network:i,size:o,format:s,version:u};return null}function xr(e){const t=rr(e);for(const[n,r,i,o,s,u]of br){if(s!==t.format)continue;if(o!==t.data.length)continue;if(u!==t.version)continue;if(t.prefix){if(n!==t.prefix)continue}else if(!e.startsWith(n))continue;const c=g.uint(t.data).hex;return{data:c,script:vr(c,r),type:r,prefix:n,network:i,size:o,format:s,version:u}}throw new Error("address configuration is invalid")}const kr=cr.P2PKH;var zr;function Or(e,t="main"){return Ar(Pr(e),t)}function Pr(e){const t=g.bytes(e);b.size(t,33,"invalid pubkey size");return Sr(hn(t))}function Sr(e){return g.join(["76a914",e,"88ac"])}function Ar(e,t="main"){const n=$r(e),r=Er(t,kr);return b.exists(r,`unrecognized address config: ${kr} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ir({data:n,format:"base58",version:r.version})}function Ir(e){const t=xr(e);return b.ok("p2pkh"===t.type,`address type mismatch: ${t.type} !== ${kr}`),t}function $r(e){const t=g.bytes(e);return b.ok(mr(e),"invalid p2pkh script"),t.slice(3,23)}!function(e){e.create_address=Or,e.create_script=Pr,e.encode_address=Ar,e.encode_script=Sr,e.decode_address=Ir,e.decode_script=$r}(zr||(zr={}));const Tr=cr.P2SH;var Br;function Nr(e,t="main"){return Rr(Zr(hn(g.bytes(e))),t)}function Ur(e){return Zr(hn(g.bytes(e)))}function Zr(e){return g.join(["a914",e,"87"])}function Rr(e,t="main"){const n=jr(e),r=Er(t,Tr);return b.exists(r,`unrecognized address config: ${Tr} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ir({data:n,format:"base58",version:r.version})}function Cr(e){const t=xr(e);return b.ok("p2sh"===t.type,`address type mismatch: ${t.type} !== ${Tr}`),t}function jr(e){b.ok(gr(e),"invalid p2sh script");return g.bytes(e).slice(2,22)}!function(e){e.create_address=Nr,e.create_script=Ur,e.encode_address=Rr,e.encode_script=Zr,e.decode_address=Cr,e.decode_script=jr}(Br||(Br={}));const Fr=cr.P2WPKH;var Dr;function Hr(e,t="main"){return qr(Lr(e),t)}function Lr(e){const t=g.bytes(e);b.size(t,33,"invalid pubkey size");return Vr(hn(t))}function Vr(e){return g.join(["0014",e])}function qr(e,t="main"){const n=Mr(e),r=Er(t,Fr);return b.exists(r,`unrecognized address config: ${Fr} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ir({data:n,format:"bech32",prefix:r.prefix})}function Kr(e){const t=xr(e);return b.ok("p2wpkh"===t.type,`address type mismatch: ${t.type} !== ${Fr}`),t}function Mr(e){b.ok(_r(e),"invalid p2wpkh script");return g.bytes(e).slice(2,22)}!function(e){e.create_address=Hr,e.create_script=Lr,e.encode_address=qr,e.encode_script=Vr,e.decode_address=Kr,e.decode_script=Mr}(Dr||(Dr={}));const Wr=cr.P2WSH;var Gr;function Yr(e,t="main"){return Qr(Xr(e),t)}function Xr(e){return Jr(pn(g.bytes(e)))}function Jr(e){return g.join(["0020",e])}function Qr(e,t="main"){const n=ti(e),r=Er(t,Wr);return b.exists(r,`unrecognized address config: ${Wr} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ir({data:n,format:"bech32",prefix:r.prefix})}function ei(e){const t=xr(e);return b.ok("p2wsh"===t.type,`address type mismatch: ${t.type} !== ${Wr}`),t}function ti(e){b.ok(yr(e),"invalid p2wsh script");return g.bytes(e).slice(2,34)}!function(e){e.create_address=Yr,e.create_script=Xr,e.encode_address=Qr,e.encode_script=Jr,e.decode_address=ei,e.decode_script=ti}(Gr||(Gr={}));const ni=cr.P2TR;var ri;function ii(e,t="main"){return ui(oi(e),t)}function oi(e){const t=g.bytes(e);return b.size(t,32,"invalid pubkey size"),si(t)}function si(e){return g.join(["5120",e])}function ui(e,t="main"){const n=ai(e),r=Er(t,ni);return b.exists(r,`unrecognized address config: ${ni} on ${t}`),b.size(n,r.size,`invalid payload size: ${n.length} !== ${r.size}`),ir({data:n,format:"bech32m",prefix:r.prefix})}function ci(e){const t=xr(e);return b.ok("p2tr"===t.type,`address type mismatch: ${t.type} !== ${ni}`),t}function ai(e){b.ok(wr(e),"invalid p2tr script");return g.bytes(e).slice(2,34)}!function(e){e.create_address=ii,e.create_script=oi,e.encode_address=ui,e.encode_script=si,e.decode_address=ci,e.decode_script=ai}(ri||(ri={}));var fi=Object.freeze({__proto__:null,get P2PKH(){return zr},get P2SH(){return Br},get P2TR(){return ri},get P2WPKH(){return Dr},get P2WSH(){return Gr},get_address:function(e,t="main"){const n=g.bytes(e),r=hr(n);if(null===r)throw new Error("unknown locking script: "+n.hex);switch(r){case cr.P2PKH:return zr.encode_address(e,t);case cr.P2SH:return Br.encode_address(e,t);case cr.P2WPKH:return Dr.encode_address(e,t);case cr.P2WSH:return Gr.encode_address(e,t);case cr.P2TR:return ri.encode_address(e,t);default:throw new Error("unknown script type: "+r)}},parse_address:function(e){return xr(e)}});const di=5e8;var li,hi;function pi(e){switch(e.type){case"timelock":return b.ok(e.stamp>=di,"Invalid timestamp"),e.stamp;case"heightlock":return b.ok(e.height>0,"height must be greater than 0"),b.ok(e.height<di,"invalid block height"),e.height;default:throw new Error("Invalid locktime type")}}function mi(e){return isNaN(e)||e<=0?null:e<di?{type:"heightlock",height:e}:{type:"timelock",stamp:e}}function gi(e,t=0){return`${e}i${t}`}function _i(e){wi(e);const[t,n]=e.split("i");return{txid:t,order:parseInt(n)}}function yi(e){return null!==e.match(/^[a-f0-9]{64}i\d+$/)}function wi(e){if(!yi(e))throw new Error(`invalid inscription id: ${e}`)}function vi(e,t){return`${e}:${t}`}function bi(e){xi(e);const[t,n]=e.split(":");return{block_height:parseInt(t),block_index:parseInt(n)}}function Ei(e){return null!==e.match(/^\d+:\d+$/)}function xi(e){if(!Ei(e))throw new Error(`invalid rune id: ${e}`)}function ki(e,t){return`${e}:${t}`}function zi(e){Pi(e);const[t,n]=e.split(":");return{txid:t,vout:parseInt(n)}}function Oi(e){return null!==e.match(/^[a-f0-9]{64}:[0-9]+$/)}function Pi(e){if(!Oi(e))throw new Error(`invalid outpoint: ${e}`)}!function(e){e.encode=pi,e.decode=mi}(li||(li={})),function(e){e.outpoint={encode:ki,decode:zi,verify:Oi,assert:Pi},e.record_id={encode:gi,decode:_i,verify:yi,assert:wi},e.rune_id={encode:vi,decode:bi,verify:Ei,assert:xi}}(hi||(hi={}));const Si={OP_0:0,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSHDATA4:78,OP_1NEGATE:79,OP_SUCCESS80:80,OP_1:81,OP_2:82,OP_3:83,OP_4:84,OP_5:85,OP_6:86,OP_7:87,OP_8:88,OP_9:89,OP_10:90,OP_11:91,OP_12:92,OP_13:93,OP_14:94,OP_15:95,OP_16:96,OP_NOP:97,OP_SUCCESS98:98,OP_IF:99,OP_NOTIF:100,OP_ELSE:103,OP_ENDIF:104,OP_VERIFY:105,OP_RETURN:106,OP_TOALTSTACK:107,OP_FROMALTSTACK:108,OP_2DROP:109,OP_2DUP:110,OP_3DUP:111,OP_2OVER:112,OP_2ROT:113,OP_2SWAP:114,OP_IFDUP:115,OP_DEPTH:116,OP_DROP:117,OP_DUP:118,OP_NIP:119,OP_OVER:120,OP_PICK:121,OP_ROLL:122,OP_ROT:123,OP_SWAP:124,OP_TUCK:125,OP_SUCCESS126:126,OP_SUCCESS127:127,OP_SUCCESS128:128,OP_SUCCESS129:129,OP_SIZE:130,OP_SUCCESS131:131,OP_SUCCESS132:132,OP_SUCCESS133:133,OP_SUCCESS134:134,OP_EQUAL:135,OP_EQUALVERIFY:136,OP_SUCCESS137:137,OP_SUCCESS138:138,OP_1ADD:139,OP_1SUB:140,OP_SUCCESS141:141,OP_SUCCESS142:142,OP_NEGATE:143,OP_ABS:144,OP_NOT:145,OP_0NOTEQUAL:146,OP_ADD:147,OP_SUB:148,OP_SUCCESS149:149,OP_SUCCESS150:150,OP_SUCCESS151:151,OP_SUCCESS152:152,OP_SUCCESS153:153,OP_BOOLAND:154,OP_BOOLOR:155,OP_NUMEQUAL:156,OP_NUMEQUALVERIFY:157,OP_NUMNOTEQUAL:158,OP_LESSTHAN:159,OP_GREATERTHAN:160,OP_LESSTHANOREQUAL:161,OP_GREATERTHANOREQUAL:162,OP_MIN:163,OP_MAX:164,OP_WITHIN:165,OP_RIPEMD160:166,OP_SHA1:167,OP_SHA256:168,OP_HASH160:169,OP_HASH256:170,OP_CODESEPARATOR:171,OP_CHECKSIG:172,OP_CHECKSIGVERIFY:173,OP_CHECKMULTISIG:174,OP_CHECKMULTISIGVERIFY:175,OP_NOP1:176,OP_CHECKLOCKTIMEVERIFY:177,OP_CHECKSEQUENCEVERIFY:178,OP_NOP4:179,OP_NOP5:180,OP_NOP6:181,OP_NOP7:182,OP_NOP8:183,OP_NOP9:184,OP_NOP10:185,OP_CHECKSIGADD:186};function Ai(e){if(e>186&&e<255)return"OP_SUCCESS"+String(e);for(const[t,n]of Object.entries(Si))if(n===e)return t;throw new Error("OPCODE not found:"+String(e))}function Ii(e){for(const[t,n]of Object.entries(Si))if(t===e)return Number(n);throw new Error("OPCODE not found:"+e)}function $i(e){switch(!0){case 0===e:return"opcode";case e>=1&&e<=75:return"varint";case 76===e:return"pushdata1";case 77===e:return"pushdata2";case 78===e:return"pushdata4";case e<=254:return"opcode";default:throw new Error(`Invalid word range: ${e}`)}}function Ti(e){switch(!0){case"number"!=typeof e:return!1;case 0===e:return!0;case[].includes(e):return!1;case 75<e&&e<254:return!0;default:return!1}}const Bi=520;function Ni(e,t=!1){if(0===e.length)return g.num(0,1);const n=[];for(const t of e)n.push(Ui(t));const r=g.join(n);return t?r.prepend(g.varint(r.length,"le")):r}function Ui(e){let t;if("string"==typeof e){if(e.startsWith("OP_")){const t=Ii(e);return g.num(t,1)}t=g.is_hex(e)?g.hex(e):g.str(e)}else if("number"==typeof e)t=g.num(e);else{if(!(e instanceof Uint8Array))throw new Error("invalid word type:"+typeof e);t=new g(e)}if(1===t.length&&t[0]<=16)0!==t[0]&&(t[0]+=80);else if(t.length>Bi){let e;e=Zi(t),e=e.map(e=>Ri(e)),t=g.join(e)}else t=Ri(t);return t}function Zi(e){const t=[],n=new _(e);for(;n.size>Bi;)t.push(n.read(Bi));return t.push(n.read(n.size)),t}function Ri(e){const t=Ci(e.length);return g.join([t,e])}function Ci(e){const t=g.num(76,1),n=g.num(77,1);switch(!0){case e<=75:return g.num(e);case e>75&&e<256:return g.join([t,g.num(e,1,"le")]);case e>=256&&e<=Bi:return g.join([n,g.num(e,2,"le")]);default:throw new Error("Invalid word size:"+e.toString())}}function ji(e){const t=g.bytes(e);return{asm:Fi(t),hex:t.hex}}function Fi(e){const t=new _(e),n=[],r=t.size;let i,o,s,u=0;for(;u<r;)switch(i=t.read(1).num,o=$i(i),u++,o){case"varint":n.push(t.read(i).hex),u+=i;break;case"pushdata1":s=t.read(1).reverse().num,n.push(t.read(s).hex),u+=s+1;break;case"pushdata2":s=t.read(2).reverse().num,n.push(t.read(s).hex),u+=s+2;break;case"pushdata4":s=t.read(4).reverse().num,n.push(t.read(s).hex),u+=s+4;break;case"opcode":if(!Ti(i))throw new Error(`Invalid OPCODE: ${i}`);n.push(Ai(i));break;default:throw new Error(`Word type undefined: ${i}`)}return n}function Di(e){try{return Fi(e).length>0}catch{return!1}}const Hi=BigInt(0),Li=BigInt(1),Vi=BigInt(26);var qi;function Ki(e){const t=function(e){const t=Fi(e),n=t.findIndex(e=>"OP_0"===e);b.ok(-1!==n,"inscription envelope not found");const r=[];for(let e=n;e<t.length;e++){b.ok("OP_IF"===t[e+1],"OP_IF missing from envelope"),b.ok("6f7264"===t[e+2],"magic bytes missing from envelope");const n=t.findIndex(e=>"OP_ENDIF"===e);b.ok(-1!==n,"inscription envelope missing END_IF statement");const i=t.slice(e+3,n);r.push(i),e+=n}return r}(e);return t.map(Gi)}function Mi(e){return g.join(e.map(Wi))}function Wi(e){let t=["OP_0","OP_IF","6f7264"];if("string"==typeof e.delegate){const n=Xi(e.delegate);t.push("OP_11",n)}if("string"==typeof e.ref&&t.push("OP_WITHIN",e.ref),"string"==typeof e.parent){const n=Xi(e.parent);t.push("OP_3",n)}if("number"==typeof e.opcode){const n=Qi(e.opcode);t.push("OP_NOP",n)}if("number"==typeof e.pointer){const n=Qi(e.pointer);t.push("OP_2",n)}if("string"==typeof e.rune){const n=function(e){const t=e.toUpperCase();let n=Hi;for(const e of t)e>="A"&&e<="Z"&&(n=n*Vi+BigInt(e.charCodeAt(0)-("A".charCodeAt(0)-1)));return n-=Li,g.big(n).reverse().hex}(e.rune);t.push("OP_13",n)}if("string"==typeof e.mimetype){const n=function(e){return g.str(e).hex}(e.mimetype);t.push("OP_1",n)}if("string"==typeof e.content){const n=function(e){const t=g.is_hex(e)?g.hex(e):g.str(e),n=new _(t),r=[];for(;n.size>0;)if(n.size>520){const e=n.read(520);r.push(e.hex)}else{const e=n.read(n.size);r.push(e.hex)}return r}(e.content);t.push("OP_0",...n)}return t.push("OP_ENDIF"),Ni(t)}function Gi(e){const t={};for(let n=0;n<e.length;n++)switch(e[n]){case"OP_1":t.mimetype=to(e[n+1]),n+=1;break;case"OP_2":t.pointer=eo(e[n+1]),n+=1;break;case"OP_3":t.parent=Ji(e[n+1]),n+=1;break;case"OP_11":t.delegate=Ji(e[n+1]),n+=1;break;case"OP_13":t.rune=ro(e[n+1]),n+=1;break;case"OP_WITHIN":t.ref=Yi(e[n+1]),n+=1;break;case"OP_NOP":t.opcode=eo(e[n+1]),n+=1;break;case"OP_0":return t.content=no(e.slice(n+1)),t}return t}function Yi(e){return g.bytes(e).hex}function Xi(e){b.ok(e.includes("i"),"identifier must include an index");const t=e.split("i"),n=g.hex(t[0]),r=Number(t[1]),i=n.reverse().hex;return 0!==r?i+g.num(r).hex:i}function Ji(e){const t=g.bytes(e),n=t.at(-1)??0;return t.slice(0,-1).reverse().hex+"i"+String(n)}function Qi(e){return g.num(e).reverse().hex}function eo(e){return g.bytes(e).reverse().num}function to(e){return g.bytes(e).str}function no(e,t="hex"){const n=g.join(e);return"hex"===t?n.hex:n.str}function ro(e){let t=g.bytes(e).reverse().big;t+=Li;let n="";for(;t>Hi;){const e=t%Vi;if(e===Hi)n="Z"+n,t=t/Vi-Li;else{const r=Number(e)+"A".charCodeAt(0)-1;n=String.fromCharCode(r)+n,t/=Vi}}return n}!function(e){e.encode=Mi,e.decode=Ki}(qi||(qi={}));const io=4194304,oo=65535,so=65535;var uo;function co(e){if("height"===e.mode){return(function(e){if(void 0===e||!Number.isInteger(e)||e<0||e>so)throw new Error("Heightlock value must be an integer between 0 and 65535");return e}(e.height)&oo)>>>0}if("stamp"===e.mode){const t=function(e){if(void 0===e||!Number.isInteger(e))throw new Error("timestamp must be a number");const t=Math.floor(e/512);if(!Number.isInteger(t)||t<0||t>so)throw new Error("timelock value must be an integer between 0 and 65535 (in 512-second increments)");return t}(e.stamp);return(io|t&oo)>>>0}throw new Error("invalid timelock mode: "+e.mode)}function ao(e){const t=function(e){const t="string"==typeof e?parseInt(e,16):e;if(!Number.isInteger(t)||t<0||t>4294967295)throw new Error(`invalid sequence value: ${t}`);return t}(e);if(2147483648&t)return null;const n=t&oo;if(t&io){const e=512*n;if(e>4294967295)throw new Error("Decoded timestamp exceeds 32-bit limit");return{mode:"stamp",stamp:e}}if(n>so)throw new Error("Decoded height exceeds maximum");return{mode:"height",height:n}}!function(e){e.encode=co,e.decode=ao}(uo||(uo={}));var fo,lo=Object.freeze({__proto__:null,get InscriptionUtil(){return qi},get LocktimeField(){return li},get RefPointer(){return hi},get SequenceField(){return uo},decode_inscription:Ki,decode_locktime:mi,decode_sequence:ao,encode_inscription:Mi,encode_locktime:pi,encode_sequence:co});function ho(e){return g.bytes(e).prefix_varint("le").hex}!function(e){e.parse=ji,e.decode=Fi,e.encode=Ni,e.is_valid=Di}(fo||(fo={}));var po=Object.freeze({__proto__:null,OPCODE_MAP:Si,get ScriptUtil(){return fo},decode_script:Fi,encode_script:Ni,encode_script_word:Ui,get_asm_code:Ii,get_lock_script_info:function(e){return{type:hr(e),version:pr(e)}},get_lock_script_type:hr,get_lock_script_version:pr,get_op_code:Ai,get_op_type:$i,get_size_varint:Ci,is_opreturn_script:function(e){const t=g.bytes(e).hex;return ar.opreturn.test(t)},is_p2pkh_script:mr,is_p2sh_script:gr,is_p2tr_script:wr,is_p2wpkh_script:_r,is_p2wsh_script:yr,is_return_script:function(e){return 106===g.bytes(e).at(0)},is_valid_op:Ti,is_valid_script:Di,parse_script:ji,parse_script_pubkeys:function(e){return[...("string"==typeof e?e:g.bytes(e).hex).matchAll(/20([0-9a-f]{64})(ac|ad|ba)/gi)].map(e=>e[1])},prefix_script_size:ho,prefix_word_size:Ri,split_script_word:Zi});function mo(e){return b.exists(e.prevout,"Prevout data missing for input: "+String(e.txid)),e.prevout}function go(e,t){let{txindex:n,txinput:r}=t??{};if(void 0!==n){if(n>=e.vin.length)throw new Error("Input index out of bounds: "+String(n));r=e.vin.at(n)}return b.ok(void 0!==r),r}function _o(e){if(void 0===e)return;if(e.length<2)return;const t=e.at(-1);if("string"==typeof t&&t.startsWith("50")){return pn(g.hex(t).prefix_varint("be"))}}function yo(e,t=!0){b.is_bytes(e,"txdata must be hex or bytes");const n=new _(e),r=function(e){return e.read(4).reverse().to_num()}(n);let i=function(e){const[t,n]=[...e.peek(2)];if(0===t){if(e.read(2),1===n)return!0;throw new Error(`Invalid witness flag: ${n}`)}return!1}(n);i=!!t&&i;const o=function(e){const t=[],n=e.varint();for(let r=0;r<n;r++){const n=wo(e);t.push(n)}return t}(n),s=function(e){const t=[],n=e.varint();for(let r=0;r<n;r++)try{t.push(vo(e))}catch(e){throw new Error(`failed to decode output: ${r}: ${w(e)}`)}return t}(n);if(i)for(const e of o)e.witness=bo(n);const u=function(e){return e.read(4).reverse().to_num()}(n);return{version:r,vin:o,vout:s,locktime:u}}function wo(e){const t=e.read(32).reverse().hex,n=e.read(4).reverse().num,r=Eo(e),i=e.read(4).reverse().num,o=[];return t===or.TXID&&n===or.VOUT?{coinbase:r,prevout:null,script_sig:null,sequence:i,txid:t,vout:n,witness:o}:{coinbase:null,prevout:null,script_sig:r,sequence:i,txid:t,vout:n,witness:o}}function vo(e){const t=e.read(8).reverse().big,n=Eo(e);return b.exists(n,"failed to decode script_pk"),{value:t,script_pk:n}}function bo(e){const t=[],n=e.varint();for(let r=0;r<n;r++){const n=Eo(e);if(null===n)throw new Error("failed to decode witness element: "+r);t.push(n)}return t}function Eo(e){const t=e.varint("le");return t>0?e.read(t).hex:null}function xo(e,t,n){function r(n,r){var i;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(i=n._zod).traits??(i.traits=new Set),n._zod.traits.add(e),t(n,r);for(const e in s.prototype)e in n||Object.defineProperty(n,e,{value:s.prototype[e].bind(n)});n._zod.constr=s,n._zod.def=r}const i=n?.Parent??Object;class o extends i{}function s(e){var t;const i=n?.Parent?new o:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(const e of i._zod.deferred)e();return i}return Object.defineProperty(o,"name",{value:e}),Object.defineProperty(s,"init",{value:r}),Object.defineProperty(s,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}class ko extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class zo extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const Oo={};function Po(e){return Oo}function So(e,t){return"bigint"==typeof t?t.toString():t}function Ao(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Io(e){return null==e}function $o(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const To=Symbol("evaluating");function Bo(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==To)return void 0===r&&(r=To,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function No(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Uo(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function Zo(e){return JSON.stringify(e)}const Ro="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Co(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const jo=Ao(()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Fo(e){if(!1===Co(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==Co(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function Do(e){return Fo(e)?{...e}:e}const Ho=new Set(["string","number","symbol"]);function Lo(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Vo(e,t,n){const r=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(r._zod.parent=e),r}function qo(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}const Ko={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Mo(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function Wo(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Go(e){return"string"==typeof e?e:e?.message}function Yo(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const i=Go(e.inst?._zod.def?.error?.(e))??Go(t?.error?.(e))??Go(n.customError?.(e))??Go(n.localeError?.(e))??"Invalid input";r.message=i}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Xo(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function Jo(...e){const[t,n,r]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:r}:{...t}}const Qo=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,So,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},es=xo("$ZodError",Qo),ts=xo("$ZodError",Qo,{Parent:Error});const ns=e=>(t,n,r,i)=>{const o=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new ko;if(s.issues.length){const t=new(i?.Err??e)(s.issues.map(e=>Yo(e,o,Po())));throw Ro(t,i?.callee),t}return s.value},rs=e=>async(t,n,r,i)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){const t=new(i?.Err??e)(s.issues.map(e=>Yo(e,o,Po())));throw Ro(t,i?.callee),t}return s.value},is=e=>(t,n,r)=>{const i=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new ko;return o.issues.length?{success:!1,error:new(e??es)(o.issues.map(e=>Yo(e,i,Po())))}:{success:!0,data:o.value}},os=is(ts),ss=e=>async(t,n,r)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let o=t._zod.run({value:n,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(e=>Yo(e,i,Po())))}:{success:!0,data:o.value}},us=ss(ts),cs=e=>(t,n,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ns(e)(t,n,i)},as=e=>(t,n,r)=>ns(e)(t,n,r),fs=e=>async(t,n,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return rs(e)(t,n,i)},ds=e=>async(t,n,r)=>rs(e)(t,n,r),ls=e=>(t,n,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return is(e)(t,n,i)},hs=e=>(t,n,r)=>is(e)(t,n,r),ps=e=>async(t,n,r)=>{const i=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ss(e)(t,n,i)},ms=e=>async(t,n,r)=>ss(e)(t,n,r),gs=/^[cC][^\s-]{8,}$/,_s=/^[0-9a-z]+$/,ys=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ws=/^[0-9a-vA-V]{20}$/,vs=/^[A-Za-z0-9]{27}$/,bs=/^[a-zA-Z0-9_-]{21}$/,Es=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,xs=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ks=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,zs=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;const Os=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ps=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Ss=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,As=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Is=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,$s=/^[A-Za-z0-9_-]*$/,Ts=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,Bs=/^\+(?:[0-9]){6,14}[0-9]$/,Ns="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Us=new RegExp(`^${Ns}$`);function Zs(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const Rs=/^\d+n?$/,Cs=/^\d+$/,js=/^-?\d+(?:\.\d+)?/i,Fs=/true|false/i,Ds=/null/i,Hs=/^[^A-Z]*$/,Ls=/^[^a-z]*$/,Vs=xo("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),qs={number:"number",bigint:"bigint",object:"date"},Ks=xo("$ZodCheckLessThan",(e,t)=>{Vs.init(e,t);const n=qs[typeof t.value];e._zod.onattach.push(e=>{const n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ms=xo("$ZodCheckGreaterThan",(e,t)=>{Vs.init(e,t);const n=qs[typeof t.value];e._zod.onattach.push(e=>{const n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ws=xo("$ZodCheckMultipleOf",(e,t)=>{Vs.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,r=t.toString();let i=(r.split(".")[1]||"").length;if(0===i&&/\d?e-\d?/.test(r)){const e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}const o=n>i?n:i;return Number.parseInt(e.toFixed(o).replace(".",""))%Number.parseInt(t.toFixed(o).replace(".",""))/10**o}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Gs=xo("$ZodCheckNumberFormat",(e,t)=>{Vs.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[i,o]=Ko[t.format];e._zod.onattach.push(e=>{const r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=o,n&&(r.pattern=Cs)}),e._zod.check=s=>{const u=s.value;if(n){if(!Number.isInteger(u))return void s.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:u,inst:e});if(!Number.isSafeInteger(u))return void(u>0?s.issues.push({input:u,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}):s.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}))}u<i&&s.issues.push({origin:"number",input:u,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),u>o&&s.issues.push({origin:"number",input:u,code:"too_big",maximum:o,inst:e})}}),Ys=xo("$ZodCheckMaxLength",(e,t)=>{var n;Vs.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!Io(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const r=n.value;if(r.length<=t.maximum)return;const i=Xo(r);n.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Xs=xo("$ZodCheckMinLength",(e,t)=>{var n;Vs.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!Io(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const r=n.value;if(r.length>=t.minimum)return;const i=Xo(r);n.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Js=xo("$ZodCheckLengthEquals",(e,t)=>{var n;Vs.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!Io(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{const r=n.value,i=r.length;if(i===t.length)return;const o=Xo(r),s=i>t.length;n.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Qs=xo("$ZodCheckStringFormat",(e,t)=>{var n,r;Vs.init(e,t),e._zod.onattach.push(e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),eu=xo("$ZodCheckRegex",(e,t)=>{Qs.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),tu=xo("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Hs),Qs.init(e,t)}),nu=xo("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Ls),Qs.init(e,t)}),ru=xo("$ZodCheckIncludes",(e,t)=>{Vs.init(e,t);const n=Lo(t.includes),r=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),iu=xo("$ZodCheckStartsWith",(e,t)=>{Vs.init(e,t);const n=new RegExp(`^${Lo(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),ou=xo("$ZodCheckEndsWith",(e,t)=>{Vs.init(e,t);const n=new RegExp(`.*${Lo(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),su=xo("$ZodCheckOverwrite",(e,t)=>{Vs.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});class uu{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>" ".repeat(2*this.indent)+e);for(const e of r)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map(e=>` ${e}`)].join("\n"))}}const cu={major:4,minor:1,patch:5},au=xo("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=cu;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const t of r)for(const n of t._zod.onattach)n(e);if(0===r.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const t=(e,t,n)=>{let r,i=Mo(e);for(const o of t){if(o._zod.def.when){if(!o._zod.def.when(e))continue}else if(i)continue;const t=e.issues.length,s=o._zod.check(e);if(s instanceof Promise&&!1===n?.async)throw new ko;if(r||s instanceof Promise)r=(r??Promise.resolve()).then(async()=>{await s;e.issues.length!==t&&(i||(i=Mo(e,t)))});else{if(e.issues.length===t)continue;i||(i=Mo(e,t))}}return r?r.then(()=>e):e},n=(n,i,o)=>{if(Mo(n))return n.aborted=!0,n;const s=t(i,r,o);if(s instanceof Promise){if(!1===o.async)throw new ko;return s.then(t=>e._zod.parse(t,o))}return e._zod.parse(s,o)};e._zod.run=(i,o)=>{if(o.skipChecks)return e._zod.parse(i,o);if("backward"===o.direction){const t=e._zod.parse({value:i.value,issues:[]},{...o,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,o)):n(t,i,o)}const s=e._zod.parse(i,o);if(s instanceof Promise){if(!1===o.async)throw new ko;return s.then(e=>t(e,r,o))}return t(s,r,o)}}e["~standard"]={validate:t=>{try{const n=os(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return us(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:"zod",version:1}}),fu=xo("$ZodString",(e,t)=>{var n;au.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(r){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),du=xo("$ZodStringFormat",(e,t)=>{Qs.init(e,t),fu.init(e,t)}),lu=xo("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=xs),du.init(e,t)}),hu=xo("$ZodUUID",(e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=ks(e))}else t.pattern??(t.pattern=ks());du.init(e,t)}),pu=xo("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=zs),du.init(e,t)}),mu=xo("$ZodURL",(e,t)=>{du.init(e,t),e._zod.check=n=>{try{const r=n.value.trim(),i=new URL(r);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Ts.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=i.href:n.value=r)}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),gu=xo("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),du.init(e,t)}),_u=xo("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=bs),du.init(e,t)}),yu=xo("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=gs),du.init(e,t)}),wu=xo("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=_s),du.init(e,t)}),vu=xo("$ZodULID",(e,t)=>{t.pattern??(t.pattern=ys),du.init(e,t)}),bu=xo("$ZodXID",(e,t)=>{t.pattern??(t.pattern=ws),du.init(e,t)}),Eu=xo("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=vs),du.init(e,t)}),xu=xo("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=function(e){const t=Zs({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Ns}T(?:${r})$`)}(t)),du.init(e,t)}),ku=xo("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Us),du.init(e,t)}),zu=xo("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=new RegExp(`^${Zs(t)}$`)),du.init(e,t)}),Ou=xo("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Es),du.init(e,t)}),Pu=xo("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Os),du.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv4"})}),Su=xo("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ps),du.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv6"}),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Au=xo("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Ss),du.init(e,t)}),Iu=xo("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=As),du.init(e,t),e._zod.check=n=>{const[r,i]=n.value.split("/");try{if(!i)throw new Error;const e=Number(i);if(`${e}`!==i)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${r}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function $u(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Tu=xo("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Is),du.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64"}),e._zod.check=n=>{$u(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});const Bu=xo("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=$s),du.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64url"}),e._zod.check=n=>{(function(e){if(!$s.test(e))return!1;const t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return $u(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),Nu=xo("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Bs),du.init(e,t)});const Uu=xo("$ZodJWT",(e,t)=>{du.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[r]=n;if(!r)return!1;const i=JSON.parse(atob(r));return!("typ"in i&&"JWT"!==i?.typ||!i.alg||t&&(!("alg"in i)||i.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Zu=xo("$ZodNumber",(e,t)=>{au.init(e,t),e._zod.pattern=e._zod.bag.pattern??js,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const i=n.value;if("number"==typeof i&&!Number.isNaN(i)&&Number.isFinite(i))return n;const o="number"==typeof i?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...o?{received:o}:{}}),n}}),Ru=xo("$ZodNumber",(e,t)=>{Gs.init(e,t),Zu.init(e,t)}),Cu=xo("$ZodBoolean",(e,t)=>{au.init(e,t),e._zod.pattern=Fs,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const i=n.value;return"boolean"==typeof i||n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),ju=xo("$ZodBigInt",(e,t)=>{au.init(e,t),e._zod.pattern=Rs,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(e){}return"bigint"==typeof n.value||n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),Fu=xo("$ZodNull",(e,t)=>{au.init(e,t),e._zod.pattern=Ds,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{const r=t.value;return null===r||t.issues.push({expected:"null",code:"invalid_type",input:r,inst:e}),t}}),Du=xo("$ZodAny",(e,t)=>{au.init(e,t),e._zod.parse=e=>e}),Hu=xo("$ZodUnknown",(e,t)=>{au.init(e,t),e._zod.parse=e=>e}),Lu=xo("$ZodNever",(e,t)=>{au.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)}),Vu=xo("$ZodDate",(e,t)=>{au.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const i=n.value,o=i instanceof Date;return o&&!Number.isNaN(i.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:i,...o?{received:"Invalid Date"}:{},inst:e}),n}});function qu(e,t,n){e.issues.length&&t.issues.push(...Wo(n,e.issues)),t.value[n]=e.value}const Ku=xo("$ZodArray",(e,t)=>{au.init(e,t),e._zod.parse=(n,r)=>{const i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);const o=[];for(let e=0;e<i.length;e++){const s=i[e],u=t.element._zod.run({value:s,issues:[]},r);u instanceof Promise?o.push(u.then(t=>qu(t,n,e))):qu(u,n,e)}return o.length?Promise.all(o).then(()=>n):n}});function Mu(e,t,n,r){e.issues.length&&t.issues.push(...Wo(n,e.issues)),void 0===e.value?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Wu(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape[n]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(r=e.shape,Object.keys(r).filter(e=>"optional"===r[e]._zod.optin&&"optional"===r[e]._zod.optout));var r;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Gu(e,t,n,r,i,o){const s=[],u=i.keySet,c=i.catchall._zod,a=c.def.type;for(const i of Object.keys(t)){if(u.has(i))continue;if("never"===a){s.push(i);continue}const o=c.run({value:t[i],issues:[]},r);o instanceof Promise?e.push(o.then(e=>Mu(e,n,i,t))):Mu(o,n,i,t)}return s.length&&n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:o}),e.length?Promise.all(e).then(()=>n):n}const Yu=xo("$ZodObject",(e,t)=>{au.init(e,t);const n=Ao(()=>Wu(t));Bo(e._zod,"propValues",()=>{const e=t.shape,n={};for(const t in e){const r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(const e of r.values)n[t].add(e)}}return n});const r=Co,i=t.catchall;let o;e._zod.parse=(t,s)=>{o??(o=n.value);const u=t.value;if(!r(u))return t.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),t;t.value={};const c=[],a=o.shape;for(const e of o.keys){const n=a[e]._zod.run({value:u[e],issues:[]},s);n instanceof Promise?c.push(n.then(n=>Mu(n,t,e,u))):Mu(n,t,e,u)}return i?Gu(c,u,t,s,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),Xu=xo("$ZodObjectJIT",(e,t)=>{Yu.init(e,t);const n=e._zod.parse,r=Ao(()=>Wu(t));let i;const o=Co,s=!Oo.jitless,u=s&&jo.value,c=t.catchall;let a;e._zod.parse=(f,d)=>{a??(a=r.value);const l=f.value;return o(l)?s&&u&&!1===d?.async&&!0!==d.jitless?(i||(i=(e=>{const t=new uu(["shape","payload","ctx"]),n=r.value,i=e=>{const t=Zo(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const o=Object.create(null);let s=0;for(const e of n.keys)o[e]="key_"+s++;t.write("const newResult = {}");for(const e of n.keys){const n=o[e],r=Zo(e);t.write(`const ${n} = ${i(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${r}, ...iss.path] : [${r}]\n })));\n }\n \n if (${n}.value === undefined) {\n if (${r} in input) {\n newResult[${r}] = undefined;\n }\n } else {\n newResult[${r}] = ${n}.value;\n }\n `)}t.write("payload.value = newResult;"),t.write("return payload;");const u=t.compile();return(t,n)=>u(e,t,n)})(t.shape)),f=i(f,d),c?Gu([],l,f,d,a,e):f):n(f,d):(f.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),f)}});function Ju(e,t,n,r){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const i=e.filter(e=>!Mo(e));return 1===i.length?(t.value=i[0].value,i[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Yo(e,r,Po())))}),t)}const Qu=xo("$ZodUnion",(e,t)=>{au.init(e,t),Bo(e._zod,"optin",()=>t.options.some(e=>"optional"===e._zod.optin)?"optional":void 0),Bo(e._zod,"optout",()=>t.options.some(e=>"optional"===e._zod.optout)?"optional":void 0),Bo(e._zod,"values",()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Bo(e._zod,"pattern",()=>{if(t.options.every(e=>e._zod.pattern)){const e=t.options.map(e=>e._zod.pattern);return new RegExp(`^(${e.map(e=>$o(e.source)).join("|")})$`)}});const n=1===t.options.length,r=t.options[0]._zod.run;e._zod.parse=(i,o)=>{if(n)return r(i,o);let s=!1;const u=[];for(const e of t.options){const t=e._zod.run({value:i.value,issues:[]},o);if(t instanceof Promise)u.push(t),s=!0;else{if(0===t.issues.length)return t;u.push(t)}}return s?Promise.all(u).then(t=>Ju(t,i,e,o)):Ju(u,i,e,o)}}),ec=xo("$ZodIntersection",(e,t)=>{au.init(e,t),e._zod.parse=(e,n)=>{const r=e.value,i=t.left._zod.run({value:r,issues:[]},n),o=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||o instanceof Promise?Promise.all([i,o]).then(([t,n])=>nc(e,t,n)):nc(e,i,o)}});function tc(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Fo(e)&&Fo(t)){const n=Object.keys(t),r=Object.keys(e).filter(e=>-1!==n.indexOf(e)),i={...e,...t};for(const n of r){const r=tc(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const i=tc(e[r],t[r]);if(!i.valid)return{valid:!1,mergeErrorPath:[r,...i.mergeErrorPath]};n.push(i.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function nc(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Mo(e))return e;const r=tc(t.value,n.value);if(!r.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const rc=xo("$ZodRecord",(e,t)=>{au.init(e,t),e._zod.parse=(n,r)=>{const i=n.value;if(!Fo(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;const o=[];if(t.keyType._zod.values){const s=t.keyType._zod.values;n.value={};for(const e of s)if("string"==typeof e||"number"==typeof e||"symbol"==typeof e){const s=t.valueType._zod.run({value:i[e],issues:[]},r);s instanceof Promise?o.push(s.then(t=>{t.issues.length&&n.issues.push(...Wo(e,t.issues)),n.value[e]=t.value})):(s.issues.length&&n.issues.push(...Wo(e,s.issues)),n.value[e]=s.value)}let u;for(const e in i)s.has(e)||(u=u??[],u.push(e));u&&u.length>0&&n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:u})}else{n.value={};for(const s of Reflect.ownKeys(i)){if("__proto__"===s)continue;const u=t.keyType._zod.run({value:s,issues:[]},r);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(u.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(e=>Yo(e,r,Po())),input:s,path:[s],inst:e}),n.value[u.value]=u.value;continue}const c=t.valueType._zod.run({value:i[s],issues:[]},r);c instanceof Promise?o.push(c.then(e=>{e.issues.length&&n.issues.push(...Wo(s,e.issues)),n.value[u.value]=e.value})):(c.issues.length&&n.issues.push(...Wo(s,c.issues)),n.value[u.value]=c.value)}}return o.length?Promise.all(o).then(()=>n):n}}),ic=xo("$ZodEnum",(e,t)=>{au.init(e,t);const n=function(e){const t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,n])=>-1===t.indexOf(+e)).map(([e,t])=>t)}(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(e=>Ho.has(typeof e)).map(e=>"string"==typeof e?Lo(e):e.toString()).join("|")})$`),e._zod.parse=(t,i)=>{const o=t.value;return r.has(o)||t.issues.push({code:"invalid_value",values:n,input:o,inst:e}),t}}),oc=xo("$ZodTransform",(e,t)=>{au.init(e,t),e._zod.parse=(n,r)=>{if("backward"===r.direction)throw new zo(e.constructor.name);const i=t.transform(n.value,n);if(r.async){return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n))}if(i instanceof Promise)throw new ko;return n.value=i,n}});function sc(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const uc=xo("$ZodOptional",(e,t)=>{au.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Bo(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Bo(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${$o(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>sc(t,e.value)):sc(r,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),cc=xo("$ZodNullable",(e,t)=>{au.init(e,t),Bo(e._zod,"optin",()=>t.innerType._zod.optin),Bo(e._zod,"optout",()=>t.innerType._zod.optout),Bo(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${$o(e.source)}|null)$`):void 0}),Bo(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)}),ac=xo("$ZodDefault",(e,t)=>{au.init(e,t),e._zod.optin="optional",Bo(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>fc(e,t)):fc(r,t)}});function fc(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const dc=xo("$ZodPrefault",(e,t)=>{au.init(e,t),e._zod.optin="optional",Bo(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),lc=xo("$ZodNonOptional",(e,t)=>{au.init(e,t),Bo(e._zod,"values",()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter(e=>void 0!==e)):void 0}),e._zod.parse=(n,r)=>{const i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>hc(t,e)):hc(i,e)}});function hc(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const pc=xo("$ZodCatch",(e,t)=>{au.init(e,t),Bo(e._zod,"optin",()=>t.innerType._zod.optin),Bo(e._zod,"optout",()=>t.innerType._zod.optout),Bo(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Yo(e,n,Po()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Yo(e,n,Po()))},input:e.value}),e.issues=[]),e)}}),mc=xo("$ZodPipe",(e,t)=>{au.init(e,t),Bo(e._zod,"values",()=>t.in._zod.values),Bo(e._zod,"optin",()=>t.in._zod.optin),Bo(e._zod,"optout",()=>t.out._zod.optout),Bo(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if("backward"===n.direction){const r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>gc(e,t.in,n)):gc(r,t.in,n)}const r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>gc(e,t.out,n)):gc(r,t.out,n)}});function gc(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const _c=xo("$ZodReadonly",(e,t)=>{au.init(e,t),Bo(e._zod,"propValues",()=>t.innerType._zod.propValues),Bo(e._zod,"values",()=>t.innerType._zod.values),Bo(e._zod,"optin",()=>t.innerType._zod.optin),Bo(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(yc):yc(r)}});function yc(e){return e.value=Object.freeze(e.value),e}const wc=xo("$ZodLazy",(e,t)=>{au.init(e,t),Bo(e._zod,"innerType",()=>t.getter()),Bo(e._zod,"pattern",()=>e._zod.innerType._zod.pattern),Bo(e._zod,"propValues",()=>e._zod.innerType._zod.propValues),Bo(e._zod,"optin",()=>e._zod.innerType._zod.optin??void 0),Bo(e._zod,"optout",()=>e._zod.innerType._zod.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),vc=xo("$ZodCustom",(e,t)=>{Vs.init(e,t),au.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>bc(t,n,r,e));bc(i,n,r,e)}});function bc(e,t,n,r){if(!e){const e={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Jo(e))}}class Ec{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function xc(){return new Ec}const kc=xc();function zc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...qo(t)})}function Oc(e,t){return new Ks({check:"less_than",...qo(t),value:e,inclusive:!1})}function Pc(e,t){return new Ks({check:"less_than",...qo(t),value:e,inclusive:!0})}function Sc(e,t){return new Ms({check:"greater_than",...qo(t),value:e,inclusive:!1})}function Ac(e,t){return new Ms({check:"greater_than",...qo(t),value:e,inclusive:!0})}function Ic(e,t){return new Ws({check:"multiple_of",...qo(t),value:e})}function $c(e,t){return new Ys({check:"max_length",...qo(t),maximum:e})}function Tc(e,t){return new Xs({check:"min_length",...qo(t),minimum:e})}function Bc(e,t){return new Js({check:"length_equals",...qo(t),length:e})}function Nc(e){return new su({check:"overwrite",tx:e})}function Uc(e){const t=function(e,t){const n=new Vs({check:"custom",...qo(t)});return n._zod.check=e,n}(n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push(Jo(e,n.value,t._zod.def));else{const r=e;r.fatal&&(r.continue=!1),r.code??(r.code="custom"),r.input??(r.input=n.value),r.inst??(r.inst=t),r.continue??(r.continue=!t._zod.def.abort),n.issues.push(Jo(r))}},e(n.value,n)));return t}const Zc=xo("ZodISODateTime",(e,t)=>{xu.init(e,t),ua.init(e,t)});function Rc(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...qo(t)})}(Zc,e)}const Cc=xo("ZodISODate",(e,t)=>{ku.init(e,t),ua.init(e,t)});function jc(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...qo(t)})}(Cc,e)}const Fc=xo("ZodISOTime",(e,t)=>{zu.init(e,t),ua.init(e,t)});function Dc(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...qo(t)})}(Fc,e)}const Hc=xo("ZodISODuration",(e,t)=>{Ou.init(e,t),ua.init(e,t)});function Lc(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...qo(t)})}(Hc,e)}const Vc=xo("ZodError",(e,t)=>{es.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},r={_errors:[]},i=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map(e=>i({issues:e}));else if("invalid_key"===t.code)i({issues:t.issues});else if("invalid_element"===t.code)i({issues:t.issues});else if(0===t.path.length)r._errors.push(n(t));else{let e=r,i=0;for(;i<t.path.length;){const r=t.path[i];i===t.path.length-1?(e[r]=e[r]||{_errors:[]},e[r]._errors.push(n(t))):e[r]=e[r]||{_errors:[]},e=e[r],i++}}};return i(e),r}(e,t)},flatten:{value:t=>function(e,t=e=>e.message){const n={},r=[];for(const i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,So,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,So,2)}},isEmpty:{get:()=>0===e.issues.length}})},{Parent:Error}),qc=ns(Vc),Kc=rs(Vc),Mc=is(Vc),Wc=ss(Vc),Gc=cs(Vc),Yc=as(Vc),Xc=fs(Vc),Jc=ds(Vc),Qc=ls(Vc),ea=hs(Vc),ta=ps(Vc),na=ms(Vc),ra=xo("ZodType",(e,t)=>(au.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e)]}),e.clone=(t,n)=>Vo(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>qc(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Mc(e,t,n),e.parseAsync=async(t,n)=>Kc(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Wc(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Gc(e,t,n),e.decode=(t,n)=>Yc(e,t,n),e.encodeAsync=async(t,n)=>Xc(e,t,n),e.decodeAsync=async(t,n)=>Jc(e,t,n),e.safeEncode=(t,n)=>Qc(e,t,n),e.safeDecode=(t,n)=>ea(e,t,n),e.safeEncodeAsync=async(t,n)=>ta(e,t,n),e.safeDecodeAsync=async(t,n)=>na(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...qo(n)})}(lf,e,t)}(t,n)),e.superRefine=t=>e.check(Uc(t)),e.overwrite=t=>e.check(Nc(t)),e.optional=()=>ef(e),e.nullable=()=>nf(e),e.nullish=()=>ef(nf(e)),e.nonoptional=t=>function(e,t){return new sf({type:"nonoptional",innerType:e,...qo(t)})}(e,t),e.array=()=>La(e),e.or=t=>Ma([e,t]),e.and=t=>new Wa({type:"intersection",left:e,right:t}),e.transform=t=>af(e,new Ja({type:"transform",transform:t})),e.default=t=>{return n=t,new rf({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():Do(n)}});var n},e.prefault=t=>{return n=t,new of({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():Do(n)}});var n},e.catch=t=>{return new uf({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>af(e,t),e.readonly=()=>new ff({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return kc.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>kc.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return kc.get(e);const n=e.clone();return kc.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),ia=xo("_ZodString",(e,t)=>{fu.init(e,t),ra.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new eu({check:"string_format",format:"regex",...qo(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new ru({check:"string_format",format:"includes",...qo(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new iu({check:"string_format",format:"starts_with",...qo(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new ou({check:"string_format",format:"ends_with",...qo(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Tc(...t)),e.max=(...t)=>e.check($c(...t)),e.length=(...t)=>e.check(Bc(...t)),e.nonempty=(...t)=>e.check(Tc(1,...t)),e.lowercase=t=>e.check(function(e){return new tu({check:"string_format",format:"lowercase",...qo(e)})}(t)),e.uppercase=t=>e.check(function(e){return new nu({check:"string_format",format:"uppercase",...qo(e)})}(t)),e.trim=()=>e.check(Nc(e=>e.trim())),e.normalize=(...t)=>e.check(function(e){return Nc(t=>t.normalize(e))}(...t)),e.toLowerCase=()=>e.check(Nc(e=>e.toLowerCase())),e.toUpperCase=()=>e.check(Nc(e=>e.toUpperCase()))}),oa=xo("ZodString",(e,t)=>{fu.init(e,t),ia.init(e,t),e.email=t=>e.check(function(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...qo(t)})}(ca,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...qo(t)})}(da,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...qo(t)})}(Oa,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...qo(t)})}(la,t)),e.guid=t=>e.check(zc(aa,t)),e.uuid=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...qo(t)})}(fa,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...qo(t)})}(fa,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...qo(t)})}(fa,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...qo(t)})}(fa,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...qo(t)})}(ha,t)),e.guid=t=>e.check(zc(aa,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...qo(t)})}(pa,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...qo(t)})}(ma,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...qo(t)})}(ga,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...qo(t)})}(xa,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...qo(t)})}(ka,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...qo(t)})}(_a,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...qo(t)})}(ya,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...qo(t)})}(wa,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...qo(t)})}(va,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...qo(t)})}(ba,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...qo(t)})}(Ea,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...qo(t)})}(za,t)),e.datetime=t=>e.check(Rc(t)),e.date=t=>e.check(jc(t)),e.time=t=>e.check(Dc(t)),e.duration=t=>e.check(Lc(t))});function sa(e){return function(e,t){return new e({type:"string",...qo(t)})}(oa,e)}const ua=xo("ZodStringFormat",(e,t)=>{du.init(e,t),ia.init(e,t)}),ca=xo("ZodEmail",(e,t)=>{pu.init(e,t),ua.init(e,t)}),aa=xo("ZodGUID",(e,t)=>{lu.init(e,t),ua.init(e,t)}),fa=xo("ZodUUID",(e,t)=>{hu.init(e,t),ua.init(e,t)}),da=xo("ZodURL",(e,t)=>{mu.init(e,t),ua.init(e,t)}),la=xo("ZodEmoji",(e,t)=>{gu.init(e,t),ua.init(e,t)}),ha=xo("ZodNanoID",(e,t)=>{_u.init(e,t),ua.init(e,t)}),pa=xo("ZodCUID",(e,t)=>{yu.init(e,t),ua.init(e,t)}),ma=xo("ZodCUID2",(e,t)=>{wu.init(e,t),ua.init(e,t)}),ga=xo("ZodULID",(e,t)=>{vu.init(e,t),ua.init(e,t)}),_a=xo("ZodXID",(e,t)=>{bu.init(e,t),ua.init(e,t)}),ya=xo("ZodKSUID",(e,t)=>{Eu.init(e,t),ua.init(e,t)}),wa=xo("ZodIPv4",(e,t)=>{Pu.init(e,t),ua.init(e,t)}),va=xo("ZodIPv6",(e,t)=>{Su.init(e,t),ua.init(e,t)}),ba=xo("ZodCIDRv4",(e,t)=>{Au.init(e,t),ua.init(e,t)}),Ea=xo("ZodCIDRv6",(e,t)=>{Iu.init(e,t),ua.init(e,t)}),xa=xo("ZodBase64",(e,t)=>{Tu.init(e,t),ua.init(e,t)}),ka=xo("ZodBase64URL",(e,t)=>{Bu.init(e,t),ua.init(e,t)}),za=xo("ZodE164",(e,t)=>{Nu.init(e,t),ua.init(e,t)}),Oa=xo("ZodJWT",(e,t)=>{Uu.init(e,t),ua.init(e,t)}),Pa=xo("ZodNumber",(e,t)=>{Zu.init(e,t),ra.init(e,t),e.gt=(t,n)=>e.check(Sc(t,n)),e.gte=(t,n)=>e.check(Ac(t,n)),e.min=(t,n)=>e.check(Ac(t,n)),e.lt=(t,n)=>e.check(Oc(t,n)),e.lte=(t,n)=>e.check(Pc(t,n)),e.max=(t,n)=>e.check(Pc(t,n)),e.int=t=>e.check(Ia(t)),e.safe=t=>e.check(Ia(t)),e.positive=t=>e.check(Sc(0,t)),e.nonnegative=t=>e.check(Ac(0,t)),e.negative=t=>e.check(Oc(0,t)),e.nonpositive=t=>e.check(Pc(0,t)),e.multipleOf=(t,n)=>e.check(Ic(t,n)),e.step=(t,n)=>e.check(Ic(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Sa(e){return function(e,t){return new e({type:"number",checks:[],...qo(t)})}(Pa,e)}const Aa=xo("ZodNumberFormat",(e,t)=>{Ru.init(e,t),Pa.init(e,t)});function Ia(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...qo(t)})}(Aa,e)}const $a=xo("ZodBoolean",(e,t)=>{Cu.init(e,t),ra.init(e,t)});function Ta(e){return function(e,t){return new e({type:"boolean",...qo(t)})}($a,e)}const Ba=xo("ZodBigInt",(e,t)=>{ju.init(e,t),ra.init(e,t),e.gte=(t,n)=>e.check(Ac(t,n)),e.min=(t,n)=>e.check(Ac(t,n)),e.gt=(t,n)=>e.check(Sc(t,n)),e.gte=(t,n)=>e.check(Ac(t,n)),e.min=(t,n)=>e.check(Ac(t,n)),e.lt=(t,n)=>e.check(Oc(t,n)),e.lte=(t,n)=>e.check(Pc(t,n)),e.max=(t,n)=>e.check(Pc(t,n)),e.positive=t=>e.check(Sc(BigInt(0),t)),e.negative=t=>e.check(Oc(BigInt(0),t)),e.nonpositive=t=>e.check(Pc(BigInt(0),t)),e.nonnegative=t=>e.check(Ac(BigInt(0),t)),e.multipleOf=(t,n)=>e.check(Ic(t,n));const n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Na(e){return function(e,t){return new e({type:"bigint",...qo(t)})}(Ba,e)}const Ua=xo("ZodNull",(e,t)=>{Fu.init(e,t),ra.init(e,t)});const Za=xo("ZodAny",(e,t)=>{Du.init(e,t),ra.init(e,t)});const Ra=xo("ZodUnknown",(e,t)=>{Hu.init(e,t),ra.init(e,t)});function Ca(){return new Ra({type:"unknown"})}const ja=xo("ZodNever",(e,t)=>{Lu.init(e,t),ra.init(e,t)});function Fa(e){return function(e,t){return new e({type:"never",...qo(t)})}(ja,e)}const Da=xo("ZodDate",(e,t)=>{Vu.init(e,t),ra.init(e,t),e.min=(t,n)=>e.check(Ac(t,n)),e.max=(t,n)=>e.check(Pc(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});const Ha=xo("ZodArray",(e,t)=>{Ku.init(e,t),ra.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Tc(t,n)),e.nonempty=t=>e.check(Tc(1,t)),e.max=(t,n)=>e.check($c(t,n)),e.length=(t,n)=>e.check(Bc(t,n)),e.unwrap=()=>e.element});function La(e,t){return function(e,t,n){return new e({type:"array",element:t,...qo(n)})}(Ha,e,t)}const Va=xo("ZodObject",(e,t)=>{Xu.init(e,t),ra.init(e,t),Bo(e,"shape",()=>t.shape),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new Xa({type:"enum",entries:n,...qo(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Ca()}),e.loose=()=>e.clone({...e._zod.def,catchall:Ca()}),e.strict=()=>e.clone({...e._zod.def,catchall:Fa()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!Fo(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const r=Uo(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return No(this,"shape",n),n},checks:[]});return Vo(e,r)}(e,t),e.safeExtend=t=>function(e,t){if(!Fo(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return No(this,"shape",n),n},checks:e._zod.def.checks};return Vo(e,n)}(e,t),e.merge=t=>function(e,t){const n=Uo(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return No(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Vo(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return Vo(e,Uo(e._zod.def,{get shape(){const e={};for(const r in t){if(!(r in n.shape))throw new Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return No(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,r=Uo(e._zod.def,{get shape(){const r={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return No(this,"shape",r),r},checks:[]});return Vo(e,r)}(e,t),e.partial=(...t)=>function(e,t,n){const r=Uo(t._zod.def,{get shape(){const r=t._zod.def.shape,i={...r};if(n)for(const t in n){if(!(t in r))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:"optional",innerType:r[t]}):r[t])}else for(const t in r)i[t]=e?new e({type:"optional",innerType:r[t]}):r[t];return No(this,"shape",i),i},checks:[]});return Vo(t,r)}(Qa,e,t[0]),e.required=(...t)=>function(e,t,n){const r=Uo(t._zod.def,{get shape(){const r=t._zod.def.shape,i={...r};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:"nonoptional",innerType:r[t]}))}else for(const t in r)i[t]=new e({type:"nonoptional",innerType:r[t]});return No(this,"shape",i),i},checks:[]});return Vo(t,r)}(sf,e,t[0])});function qa(e,t){const n={type:"object",get shape(){var t;return No(this,"shape",e?(t=e,Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))):{}),this.shape},...qo(t)};return new Va(n)}const Ka=xo("ZodUnion",(e,t)=>{Qu.init(e,t),ra.init(e,t),e.options=t.options});function Ma(e,t){return new Ka({type:"union",options:e,...qo(t)})}const Wa=xo("ZodIntersection",(e,t)=>{ec.init(e,t),ra.init(e,t)});const Ga=xo("ZodRecord",(e,t)=>{rc.init(e,t),ra.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Ya(e,t,n){return new Ga({type:"record",keyType:e,valueType:t,...qo(n)})}const Xa=xo("ZodEnum",(e,t)=>{ic.init(e,t),ra.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{const i={};for(const r of e){if(!n.has(r))throw new Error(`Key ${r} not found in enum`);i[r]=t.entries[r]}return new Xa({...t,checks:[],...qo(r),entries:i})},e.exclude=(e,r)=>{const i={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete i[t]}return new Xa({...t,checks:[],...qo(r),entries:i})}});const Ja=xo("ZodTransform",(e,t)=>{oc.init(e,t),ra.init(e,t),e._zod.parse=(n,r)=>{if("backward"===r.direction)throw new zo(e.constructor.name);n.addIssue=r=>{if("string"==typeof r)n.issues.push(Jo(r,n.value,t));else{const t=r;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push(Jo(t))}};const i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});const Qa=xo("ZodOptional",(e,t)=>{uc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ef(e){return new Qa({type:"optional",innerType:e})}const tf=xo("ZodNullable",(e,t)=>{cc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType});function nf(e){return new tf({type:"nullable",innerType:e})}const rf=xo("ZodDefault",(e,t)=>{ac.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});const of=xo("ZodPrefault",(e,t)=>{dc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType});const sf=xo("ZodNonOptional",(e,t)=>{lc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType});const uf=xo("ZodCatch",(e,t)=>{pc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});const cf=xo("ZodPipe",(e,t)=>{mc.init(e,t),ra.init(e,t),e.in=t.in,e.out=t.out});function af(e,t){return new cf({type:"pipe",in:e,out:t})}const ff=xo("ZodReadonly",(e,t)=>{_c.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.innerType});const df=xo("ZodLazy",(e,t)=>{wc.init(e,t),ra.init(e,t),e.unwrap=()=>e._zod.def.getter()});const lf=xo("ZodCustom",(e,t)=>{vc.init(e,t),ra.init(e,t)});var hf;Na(),Ta(),function(e,t){new e({type:"date",...qo(t)})}(Da,hf);const pf=Sa().min(Number.MIN_SAFE_INTEGER).max(Number.MAX_SAFE_INTEGER).int(),mf=function(e,t={error:`Input not instance of ${e.name}`}){const n=new lf({type:"custom",check:"custom",fn:t=>t instanceof e,abort:!0,...qo(t)});return n._zod.bag.Class=e,n}(Uint8Array),gf=sa();pf.min(5e8),new Za({type:"any"}),pf.min(0).max(255),pf.min(0).max(65535);const _f=pf.min(0).max(4294967295);Sa().refine(e=>String(e).includes(".")).refine(e=>{const t=String(e).split(".").at(1);return void 0!==t&&t.length<=2});const yf=sa().regex(/^[0-9a-fA-F]*$/).refine(e=>e.length%2==0),wf=Ma([sa(),Sa(),Ta(),function(e){return function(e,t){return new e({type:"null",...qo(t)})}(Ua,e)}()]),vf=new df({type:"lazy",getter:()=>Ma([wf,La(vf),Ya(gf,vf)])});mf.refine(e=>20===e.length);const bf=mf.refine(e=>32===e.length),Ef=mf.refine(e=>33===e.length),xf=mf.refine(e=>64===e.length);yf.refine(e=>40===e.length);const kf=yf.refine(e=>64===e.length),zf=yf.refine(e=>66===e.length),Of=yf.refine(e=>128===e.length);Ma([yf,mf]);const Pf=Ma([kf,bf]);Ma([zf,Ef]),Ma([Of,xf]),sa().regex(/^[1-9A-HJ-NP-Za-km-z]+$/),sa().regex(/^[a-zA-Z0-9+/]+={0,2}$/),sa().regex(/^[a-zA-Z0-9\-_]+={0,2}$/),sa().regex(/^[a-z]+1[023456789acdefghjklmnpqrstuvwxyz]+$/);const Sf=Ma([La(Pf),Pf]),Af=qa({pubkey:Pf,leaves:Sf.array().optional(),target:Pf.optional(),version:_f.optional()});var If=Object.freeze({__proto__:null,config:Af,taptree:Sf});const $f=Na().min(0n).max(2100000000000000n),Tf=qa({value:$f,script_pk:yf}),Bf=qa({coinbase:yf.nullable(),txid:kf,vout:_f,prevout:Tf.nullable(),script_sig:yf.nullable(),sequence:_f,witness:La(yf)}),Nf=qa({version:_f,vin:La(Bf),vout:La(Tf),locktime:_f}),Uf=Tf.extend({value:Ma([_f,$f])}),Zf=Bf.extend({coinbase:yf.nullable().optional(),prevout:Uf.nullable().optional(),script_sig:yf.nullable().optional(),sequence:Ma([yf,_f]).optional(),witness:La(yf).optional()}),Rf=qa({version:_f.optional(),vin:La(Zf),vout:La(Uf),locktime:_f.optional()});var Cf=Object.freeze({__proto__:null,tx_data:Nf,tx_input:Bf,tx_output:Tf,tx_template:Rf,vin_template:Zf,vout_template:Uf}),jf=Object.freeze({__proto__:null,taproot:If,tx:Cf});function Ff(e){Rf.parse(e)}function Df(e){if(e.some(e=>null===e.prevout))throw new Error("transaction missing prevouts")}function Hf(e){Nf.parse(e)}function Lf(e){Zf.parse(e)}function Vf(e){Uf.parse(e)}function qf(e,t=!0){Hf(e);const{version:n,vin:r,vout:i,locktime:o}=e,s=[Kf(n)];if(t&&s.push(g.hex("0001")),s.push(Yf(r)),s.push(Qf(i)),t)for(const e of r)s.push(td(e.witness));return s.push(nd(o)),g.join(s)}function Kf(e){return g.num(e,4).reverse()}function Mf(e){return g.hex(e,32).reverse()}function Wf(e){return g.num(e,4).reverse()}function Gf(e){return g.num(e,4).reverse()}function Yf(e){const t=[g.varint(e.length,"le")];for(const n of e)t.push(Xf(n));return g.join(t)}function Xf(e){return null!==e.coinbase?g.join([Mf(or.TXID),Wf(or.VOUT),rd(e.coinbase),Gf(e.sequence)]):g.join([Mf(e.txid),Wf(e.vout),rd(e.script_sig),Gf(e.sequence)])}function Jf(e){return g.big(e,8).reverse()}function Qf(e){const t=[g.varint(e.length,"le")];for(const n of e)t.push(ed(n));return g.join(t)}function ed(e){const{value:t,script_pk:n}=e;return g.join([Jf(t),rd(n)])}function td(e){const t=[g.varint(e.length)];for(const n of e)t.push(rd(n));return g.join(t)}function nd(e){return g.num(e,4).reverse()}function rd(e){return null!==e?(b.is_hex(e),g.hex(e).prefix_varint("le")):g.hex("00")}function id(e,t){let n;if("string"==typeof e||e instanceof Uint8Array?n=yo(e):(Ff(e),n=pd(e)),t){b.has_items(t,"prevouts must be a non-empty array");for(const[e,r]of n.vin.entries()){const n=t.at(e);b.exists(n,"prevout not found for input index: "+e),r.prevout=hd(n)}}return n}function od(e,t=!0){console.log("txdata:",e);const n=yo(e);return console.log("decoded:",n),qf(n,t)}function sd(e){if(!v.exists(e))return sr.SEQUENCE;if(v.is_hex(e))return g.hex(e,4).reverse().num;if(v.is_uint(e))return e;throw new Error("invalid sequence value: "+String(e))}function ud(e){if(v.is_uint(e))return BigInt(e);if("bigint"==typeof e)return e;throw new TypeError("invalid output value: "+String(e))}function cd(e){return{script_pk:e.script_pk,value:ud(e.value)}}function ad(e){Lf(e),b.exists(e.coinbase,"coinbase is required");const t=or.TXID,n=or.VOUT,r=e.coinbase,i=e.witness??[];return{coinbase:r,prevout:null,script_sig:null,sequence:sd(e.sequence),witness:i,txid:t,vout:n}}function fd(e){Lf(e),b.is_empty(e.coinbase,"coinbase is not allowed"),b.is_empty(e.prevout,"prevout is not allowed");const{txid:t,vout:n,script_sig:r=null,witness:i=[]}=e;return{txid:t,vout:n,coinbase:null,prevout:null,script_sig:r,sequence:sd(e.sequence),witness:i}}function dd(e){Lf(e),b.exists(e.prevout,"prevout is required");const{txid:t,vout:n,script_sig:r=null,witness:i=[]}=e;return{txid:t,vout:n,coinbase:null,prevout:cd(e.prevout),script_sig:r,sequence:sd(e.sequence),witness:i}}function ld(e){return e.coinbase?ad(e):e.prevout?dd(e):fd(e)}function hd(e){Vf(e);return{script_pk:e.script_pk,value:ud(e.value)}}function pd(e){Ff(e);const{vin:t=[],vout:n=[]}=e??{vin:[],vout:[]},r=e.locktime??sr.LOCKTIME,i=e.version??sr.VERSION;return{locktime:r,vin:t.map(e=>ld(e)),vout:n.map(e=>hd(e)),version:i}}var md=Object.freeze({__proto__:null,assert_has_prevouts:Df,assert_tx_data:Hf,assert_tx_input:function(e){Bf.parse(e)},assert_tx_output:function(e){Tf.parse(e)},assert_tx_spend_data:function(e){Hf(e),Df(e.vin)},assert_tx_template:Ff,assert_vin_template:Lf,assert_vout_template:Vf,create_coinbase_input:ad,create_spend_input:dd,create_tx:pd,create_tx_input:ld,create_tx_output:hd,create_virtual_input:fd,decode_tx:yo,encode_script_data:rd,encode_tx:qf,encode_tx_inputs:Yf,encode_tx_locktime:nd,encode_tx_outputs:Qf,encode_tx_version:Kf,encode_tx_vout:ed,encode_txin_sequence:Gf,encode_txin_txid:Mf,encode_txin_vout:Wf,encode_vin:Xf,encode_vin_witness:td,encode_vout_value:Jf,get_prevouts:function(e){Ff(e);const t=e.vin.map(e=>e.prevout);return b.ok(t.every(e=>null!==e),"prevouts missing from tx"),t},get_segwit_size:function(e){return 2+e.filter(e=>e.witness.length>0).map(e=>e.witness).reduce((e,t)=>e+td(t).length,0)},get_tx_value:function(e){const t=id(e);Ff(t);const n=t.vin.reduce((e,t)=>e+(t.prevout?.value??0n),0n),r=t.vout.reduce((e,t)=>e+t.value,0n);return{fees:n>r?n-r:0n,vin:n,vout:r}},get_txhash:function(e){return"object"==typeof e&&(Ff(e),e=qf(e,!0)),mn(e).reverse().hex},get_txid:function(e){let t;if(e instanceof Uint8Array)t=od(e,!1);else if("object"==typeof e)Ff(e),t=qf(e,!1);else{if("string"!=typeof e)throw new TypeError("invalid txdata type: "+typeof e);b.is_hex(e),t=od(e,!1)}return mn(t).reverse().hex},get_txin_size:function(e){return Xf(e).length},get_txout_size:function(e){return ed(e).length},get_txsize:function(e){const t=id(e),n=qf(t,!1).length,r=qf(t,!0).length,i=3*n+r,o=i%4>0?1:0;return{base:n,total:r,vsize:Math.ceil(i/4)+o,weight:i}},get_vin_size:function(e){return Yf(e).length},get_vout_size:function(e){return Qf(e).length},get_vsize:function(e){const t=g.bytes(e).length,n=t%4>0?1:0;return Math.ceil(t/4)+n},normalize_prevout:cd,normalize_sequence:sd,normalize_value:ud,parse_tx:id,read_payload:Eo,serialize_tx:function(e){const t=id(e),n=t.version,r=t.locktime,i=[],o=[];for(const e of t.vin)null!==e.prevout&&i.push({script_pk:e.prevout.script_pk,value:Number(e.prevout.value)});for(const e of t.vout)o.push({script_pk:e.script_pk,value:Number(e.value)});return{version:n,locktime:r,vin:i,vout:o}},transcode_tx:od});function gd(e,t={}){const{sigflag:n=1,txindex:r}=t,i=id(e),o=!(128&~n),s=n%128;if(!fr.includes(s))throw new Error("Invalid hash type: "+String(n));const{version:u,vin:c,vout:a,locktime:f}=i,d=go(i,t),{txid:l,vout:h,prevout:p,sequence:m}=d,{value:_}=p??{};if(void 0===_)throw new Error("Prevout value is empty!");let{pubkey:y,script:w}=t;if(void 0===w&&void 0!==y){const e=hn(y).hex;w=`76a914${String(e)}88ac`}if(void 0===w)throw new Error("No pubkey / script has been set!");if(Fi(w).includes("OP_CODESEPARATOR"))throw new Error("This library does not currently support the use of OP_CODESEPARATOR in segwit scripts.");const v=[Kf(u),_d(c,o),yd(c,s,o),Mf(l),Wf(h),ho(w),Jf(_),Gf(m),wd(a,s,r),nd(f),g.num(n,4).reverse()];return mn(g.join(v))}function _d(e,t){if(!0===t)return g.num(0,32);const n=[];for(const{txid:t,vout:r}of e)n.push(Mf(t)),n.push(Wf(r));return mn(g.join(n))}function yd(e,t,n){if(n||1!==t)return g.num(0,32);const r=[];for(const{sequence:t}of e)r.push(Gf(t));return mn(g.join(r))}function wd(e,t,n){const r=[];if(1===t){for(const{value:t,script_pk:n}of e)r.push(Jf(t)),r.push(ho(n));return mn(g.join(r))}if(3===t&&(b.ok(void 0!==n),n<e.length)){const{value:t,script_pk:i}=e[n];return r.push(Jf(t)),r.push(ho(i)),mn(g.join(r))}return g.num(0,32)}function vd(e,t=192){return bd(ho(e),t)}function bd(e,t=192){return gn("TapLeaf",xd(t),e)}function Ed(e,t){return t<e&&([e,t]=[t,e]),gn("TapBranch",e,t)}function xd(e=192){return 254&e}function kd(e,t=new Uint8Array){return b.size(e,32),gn("TapTweak",e,t)}function zd(e,t={}){return gn("TapSighash",Od(e,t))}function Od(e,t={}){const{script:n,txindex:r,sigflag:i=0,extflag:o=0,key_version:s=0,separator_pos:u=4294967295}=t,c=id(e),{version:a,vin:f,vout:d,locktime:l}=c,h=go(c,t),{txid:p,vout:m,sequence:_,witness:y=[]}=h;if(!dr.includes(i))throw new Error("Invalid hash type: "+String(i));if(o<0||o>127)throw new Error("Extention flag out of range: "+String(o));let{extension:w}=t;void 0!==n&&(w=vd(n).hex);const v=!(128&~i),E=_o(y),x=2*(o+(void 0!==w?1:0))+(void 0!==E?1:0),k=[g.num(0,1),g.num(i,1),Kf(a),nd(l)];if(!v){const e=f.map(e=>mo(e));k.push(Pd(f),Ad(e),Id(e),Sd(f))}if(((3&i)<2||(3&i)>3)&&k.push($d(d)),k.push(g.num(x,1)),v){const{value:e,script_pk:t}=mo(h);k.push(Mf(p),Wf(m),Jf(e),rd(t),Gf(_))}else b.ok("number"==typeof r),k.push(g.num(r,4).reverse());return void 0!==E&&k.push(E),3&~i||(b.ok("number"==typeof r),k.push(Td(d[r]))),void 0!==w&&k.push(g.bytes(w),g.num(s),g.num(u,4,"le")),g.join(k)}function Pd(e){const t=[];for(const{txid:n,vout:r}of e)t.push(Mf(n)),t.push(Wf(r));return pn(g.join(t))}function Sd(e){return pn(...e.map(e=>Gf(e.sequence)))}function Ad(e){return pn(...e.map(e=>Jf(e.value)))}function Id(e){return pn(...e.map(e=>rd(e.script_pk)))}function $d(e){const t=[];for(const{value:n,script_pk:r}of e)t.push(Jf(n)),t.push(rd(r));return pn(...t)}function Td(e){return pn(Jf(e.value),rd(e.script_pk))}var Bd=Object.freeze({__proto__:null,bip143_hash_outputs:wd,bip143_hash_prevouts:_d,bip143_hash_sequence:yd,bip341_hash_amounts:Ad,bip341_hash_outpoints:Pd,bip341_hash_output:Td,bip341_hash_outputs:$d,bip341_hash_scripts:Id,bip341_hash_sequence:Sd,get_annex_data:_o,get_prevout:mo,get_taproot_tx_preimage:Od,hash_segwit_tx:gd,hash_taproot_tx:zd,parse_txinput:go});function Nd(e){return 0!==e?g.num(e,1).hex:""}var Ud=Object.freeze({__proto__:null,sign_segwit_tx:function(e,t,n){return function(e,t){const n=Yt(t),r=$t.sign(n,e).toDERRawBytes();return g.bytes(r)}(e,gd(id(t),n)).hex+Nd(n.sigflag??1)},sign_taproot_tx:function(e,t,n){return function(e,t){const n=Yt(t);return Yt(Vt.sign(n,e))}(e,zd(id(t),n)).hex+Nd(n.sigflag??0)},verify_tx:function(e,t={}){return console.warn("verify_segwit_tx is not implemented"),!0}});function Zd(e,t,n=[]){const r=[],i=[];if(e.length<1)throw new Error("Tree is empty!");for(let i=0;i<e.length;i++){const o=e[i];if(Array.isArray(o)){let[e,i,s]=Zd(o,t);t=i,r.push(e);for(const e of s)n.push(e)}else{const e=g.bytes(o).hex;r.push(e)}}if(1===r.length)return[r[0],t,n];r.sort(),r.length%2!=0&&r.push(r[r.length-1]);for(let e=0;e<r.length-1;e+=2){const o=Ed(r[e],r[e+1]).hex;i.push(o),"string"==typeof t&&(t===r[e]?(n.push(r[e+1]),t=o):t===r[e+1]&&(n.push(r[e]),t=o))}return Zd(i,t,n)}function Rd(e){const t=e.map(e=>g.bytes(e)),n=e.map(e=>g.bytes(e).hex),r=function(e){let t=e.at(-1);return e.length>1&&t instanceof Uint8Array&&80===t[0]?new g(t).hex:null}(t);null!==r&&t.pop();const i=function(e){let t=e.at(-1);return e.length>1&&t instanceof Uint8Array&&t.length>32&&ur.includes(254&t[0])?new g(t).hex:null}(t);null!==i&&t.pop();const o=function(e,t){let n=e.at(0),r=e.at(1),i=e.at(-1);return null!==t&&void 0!==i?"p2ts":2===e.length&&void 0!==n&&void 0!==r&&n.length>=64&&33===r.length?"p2wpkh":1===e.length&&void 0!==n&&64===n.length?"p2tr":e.length>1&&void 0!==i&&Di(i)?"p2wsh":null}(t,i),s=function(e){return null===e?null:e.startsWith("p2w")?0:e.startsWith("p2t")?1:null}(o),u=function(e,t){let n;switch(t){case"p2ts":n=e.at(-1);case"p2wsh":n=e.at(-1)}return void 0!==n?new g(n).hex:null}(t,o);null!==u&&t.pop();return{annex:r,cblock:i,params:t.map(e=>e.hex),script:u,stack:n,type:o,version:s}}function Cd(e){const t=new _(e),n=t.read(1).num,r=t.read(32).hex,[i,o]=jd(n),s=[];for(;t.size>=32;)s.push(t.read(32).hex);if(0!==t.size)throw new Error("Non-empty buffer on control block: "+String(t));return{int_key:r,path:s,parity:o,version:i}}function jd(e){return e%2==0?[e-0,2]:[e-1,3]}function Fd(e){b.size(e,33,"invalid pubkey size");const[t]=g.bytes(e);if(2===t)return 0;if(3===t)return 1;throw new Error("Invalid parity bit: "+String(t))}const Dd=192;var Hd=Object.freeze({__proto__:null,create_taproot:function(e){Af.parse(e);const{pubkey:t,version:n=Dd}=e,r=e.leaves??[],i=void 0!==e.target?g.bytes(e.target).hex:void 0;let o,s=[];if(r.length>0){const[e,t,n]=Zd(r,i);s=n,o=e}else o=i;const u=kd(t,o),c=Wt(t,u,"ecdsa"),a=Fd(c),f=Gt(c,"bip340"),d=[g.num(n+a),g.bytes(t)];s.length>0&&s.forEach(e=>d.push(e));const l=g.join(d);return{int_key:g.bytes(t).hex,path:s,parity:a,taproot:o??null,cblock:l.hex,tapkey:f.hex,taptweak:u.hex}},encode_leaf_version:xd,encode_tapbranch:Ed,encode_tapleaf:bd,encode_tapscript:vd,encode_taptweak:kd,get_merkle_root:function(e){return Zd(e)[0]},merkleize:Zd,parse_cblock:Cd,parse_cblock_parity:jd,parse_pubkey_parity:Fd,parse_taproot_witness:function(e){const{cblock:t,params:n,script:r}=Rd(e);b.exists(t,"cblock is null"),b.exists(r,"script is null");const i=Cd(t);let o=vd(r,i.version).hex;for(const e of i.path)o=Ed(o,e).hex;const s=kd(i.int_key,o),u=Wt(i.int_key,s,"bip340");return n.map(e=>g.bytes(e).hex),{cblock:i,params:n,script:r,tapkey:u.hex,tweak:s.hex}},verify_taproot:function(e,t,n){b.size(e,32);const{parity:r,path:i,int_key:o}=Cd(n),s=g.join([r,e]);let u=g.bytes(t).hex;for(const e of i)u=Ed(u,e).hex;const c=Wt(o,kd(o,u),"ecdsa");return s.hex===c.hex}});var Ld=Object.freeze({__proto__:null,assert_witness:function(e){b.ok(Array.isArray(e),"witness must be an array"),b.ok(e.every(e=>g.is_bytes(e)),"witness must be an array of strings or bytes")},get_witness_size:function(e){const t=e.map(e=>g.bytes(e)).reduce((e,t)=>e+t.length,0);return{total:t,vsize:Math.ceil(1+t/4)}},parse_witness:Rd});return e.ADDRESS=fi,e.CONST=lr,e.META=lo,e.SCHEMA=jf,e.SCRIPT=po,e.SIGHASH=Bd,e.SIGNER=Ud,e.TAPROOT=Hd,e.TX=md,e.WITNESS=Ld,e}({});
|
|
14
13
|
//# sourceMappingURL=script.js.map
|