@smartledger/bsv 9.22.1 → 9.24.0

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/bsv.bundle.js CHANGED
@@ -8,7 +8,7 @@ var bsv=(()=>{var qH=Object.create;var Df=Object.defineProperty;var UH=Object.ge
8
8
  `)>=0&&i++,o+a.replace(/\u001b\[\d\d?m/g,"").length+1},0);return n>60?r[0]+(t===""?"":t+`
9
9
  `)+" "+e.join(`,
10
10
  `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}Qe.types=CO();function qO(e){return Array.isArray(e)}Qe.isArray=qO;function Z0(e){return typeof e=="boolean"}Qe.isBoolean=Z0;function Jd(e){return e===null}Qe.isNull=Jd;function i8(e){return e==null}Qe.isNullOrUndefined=i8;function UO(e){return typeof e=="number"}Qe.isNumber=UO;function Qd(e){return typeof e=="string"}Qe.isString=Qd;function n8(e){return typeof e=="symbol"}Qe.isSymbol=n8;function Ls(e){return e===void 0}Qe.isUndefined=Ls;function Yf(e){return ec(e)&&$0(e)==="[object RegExp]"}Qe.isRegExp=Yf;Qe.types.isRegExp=Yf;function ec(e){return typeof e=="object"&&e!==null}Qe.isObject=ec;function Xd(e){return ec(e)&&$0(e)==="[object Date]"}Qe.isDate=Xd;Qe.types.isDate=Xd;function Zf(e){return ec(e)&&($0(e)==="[object Error]"||e instanceof Error)}Qe.isError=Zf;Qe.types.isNativeError=Zf;function Zd(e){return typeof e=="function"}Qe.isFunction=Zd;function o8(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e>"u"}Qe.isPrimitive=o8;Qe.isBuffer=MO();function $0(e){return Object.prototype.toString.call(e)}function W0(e){return e<10?"0"+e.toString(10):e.toString(10)}var a8=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function s8(){var e=new Date,t=[W0(e.getHours()),W0(e.getMinutes()),W0(e.getSeconds())].join(":");return[e.getDate(),a8[e.getMonth()],t].join(" ")}Qe.log=function(){console.log("%s - %s",s8(),Qe.format.apply(Qe,arguments))};Qe.inherits=Rt();Qe._extend=function(e,t){if(!t||!ec(t))return e;for(var r=Object.keys(t),i=r.length;i--;)e[r[i]]=t[r[i]];return e};function FO(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var Cs=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;Qe.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(Cs&&t[Cs]){var r=t[Cs];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,Cs,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var i,n,o=new Promise(function(u,c){i=u,n=c}),a=[],s=0;s<arguments.length;s++)a.push(arguments[s]);a.push(function(u,c){u?n(u):i(c)});try{t.apply(this,a)}catch(u){n(u)}return o}return Object.setPrototypeOf(r,Object.getPrototypeOf(t)),Cs&&Object.defineProperty(r,Cs,{value:r,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(r,DO(t))};Qe.promisify.custom=Cs;function u8(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function c8(e){if(typeof e!="function")throw new TypeError('The "original" argument must be of type Function');function t(){for(var r=[],i=0;i<arguments.length;i++)r.push(arguments[i]);var n=r.pop();if(typeof n!="function")throw new TypeError("The last argument must be of type Function");var o=this,a=function(){return n.apply(o,arguments)};e.apply(this,r).then(function(s){b.default.nextTick(a.bind(null,null,s))},function(s){b.default.nextTick(u8.bind(null,s,a))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,DO(e)),t}Qe.callbackify=c8});var WO=T((Pre,GO)=>{"use strict";g();function jO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,i)}return r}function zO(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?jO(Object(r),!0).forEach(function(i){f8(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jO(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function f8(e,t,r){return t=VO(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l8(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function KO(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,VO(i.key),i)}}function h8(e,t,r){return t&&KO(e.prototype,t),r&&KO(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function VO(e){var t=d8(e,"string");return typeof t=="symbol"?t:String(t)}function d8(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||"default");if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var p8=rr(),ep=p8.Buffer,g8=nn(),X0=g8.inspect,m8=X0&&X0.custom||"inspect";function v8(e,t,r){ep.prototype.copy.call(e,t,r)}GO.exports=(function(){function e(){l8(this,e),this.head=null,this.tail=null,this.length=0}return h8(e,[{key:"push",value:function(r){var i={data:r,next:null};this.length>0?this.tail.next=i:this.head=i,this.tail=i,++this.length}},{key:"unshift",value:function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n}},{key:"concat",value:function(r){if(this.length===0)return ep.alloc(0);for(var i=ep.allocUnsafe(r>>>0),n=this.head,o=0;n;)v8(n.data,i,o),o+=n.data.length,n=n.next;return i}},{key:"consume",value:function(r,i){var n;return r<this.head.data.length?(n=this.head.data.slice(0,r),this.head.data=this.head.data.slice(r)):r===this.head.data.length?n=this.shift():n=i?this._getString(r):this._getBuffer(r),n}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(r){var i=this.head,n=1,o=i.data;for(r-=o.length;i=i.next;){var a=i.data,s=r>a.length?a.length:r;if(s===a.length?o+=a:o+=a.slice(0,r),r-=s,r===0){s===a.length?(++n,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=a.slice(s));break}++n}return this.length-=n,o}},{key:"_getBuffer",value:function(r){var i=ep.allocUnsafe(r),n=this.head,o=1;for(n.data.copy(i),r-=n.data.length;n=n.next;){var a=n.data,s=r>a.length?a.length:r;if(a.copy(i,i.length-r,0,s),r-=s,r===0){s===a.length?(++o,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=a.slice(s));break}++o}return this.length-=o,i}},{key:m8,value:function(r,i){return X0(this,zO(zO({},i),{},{depth:0,customInspect:!1}))}}]),e})()});var Q0=T((kre,ZO)=>{"use strict";g();function y8(e,t){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,b.default.nextTick(J0,this,e)):b.default.nextTick(J0,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted?b.default.nextTick(tp,r):(r._writableState.errorEmitted=!0,b.default.nextTick(YO,r,o)):b.default.nextTick(YO,r,o):t?(b.default.nextTick(tp,r),t(o)):b.default.nextTick(tp,r)}),this)}function YO(e,t){J0(e,t),tp(e)}function tp(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function b8(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function J0(e,t){e.emit("error",t)}function _8(e,t){var r=e._readableState,i=e._writableState;r&&r.autoDestroy||i&&i.autoDestroy?e.destroy(t):e.emit("error",t)}ZO.exports={destroy:y8,undestroy:b8,errorOrDestroy:_8}});var Ms=T((Nre,JO)=>{"use strict";g();function w8(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var XO={};function on(e,t,r){r||(r=Error);function i(o,a,s){return typeof t=="string"?t:t(o,a,s)}var n=(function(o){w8(a,o);function a(s,u,c){return o.call(this,i(s,u,c))||this}return a})(r);n.prototype.name=r.name,n.prototype.code=e,XO[e]=n}function $O(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(i){return String(i)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function S8(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function E8(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function x8(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}on("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);on("ERR_INVALID_ARG_TYPE",function(e,t,r){var i;typeof t=="string"&&S8(t,"not ")?(i="must not be",t=t.replace(/^not /,"")):i="must be";var n;if(E8(e," argument"))n="The ".concat(e," ").concat(i," ").concat($O(t,"type"));else{var o=x8(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(o," ").concat(i," ").concat($O(t,"type"))}return n+=". Received type ".concat(typeof r),n},TypeError);on("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");on("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});on("ERR_STREAM_PREMATURE_CLOSE","Premature close");on("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});on("ERR_MULTIPLE_CALLBACK","Callback called multiple times");on("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");on("ERR_STREAM_WRITE_AFTER_END","write after end");on("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);on("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);on("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");JO.exports.codes=XO});var ey=T((Lre,QO)=>{"use strict";g();var O8=Ms().codes.ERR_INVALID_OPT_VALUE;function I8(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function A8(e,t,r,i){var n=I8(t,i,r);if(n!=null){if(!(isFinite(n)&&Math.floor(n)===n)||n<0){var o=i?r:"highWaterMark";throw new O8(o,n)}return Math.floor(n)}return e.objectMode?16:16*1024}QO.exports={getHighWaterMark:A8}});var ry=T((Dre,eI)=>{g();eI.exports=T8;function T8(e,t){if(ty("noDeprecation"))return e;var r=!1;function i(){if(!r){if(ty("throwDeprecation"))throw new Error(t);ty("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return i}function ty(e){try{if(!globalThis.localStorage)return!1}catch{return!1}var t=globalThis.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var oy=T((qre,aI)=>{"use strict";g();aI.exports=ir;function rI(e){var t=this;this.next=null,this.entry=null,this.finish=function(){t4(t,e)}}var tc;ir.WritableState=Xf;var P8={deprecate:ry()},iI=y0(),ip=rr().Buffer,R8=(typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function k8(e){return ip.from(e)}function B8(e){return ip.isBuffer(e)||e instanceof R8}var ny=Q0(),N8=ey(),C8=N8.getHighWaterMark,Ba=Ms().codes,L8=Ba.ERR_INVALID_ARG_TYPE,M8=Ba.ERR_METHOD_NOT_IMPLEMENTED,D8=Ba.ERR_MULTIPLE_CALLBACK,H8=Ba.ERR_STREAM_CANNOT_PIPE,q8=Ba.ERR_STREAM_DESTROYED,U8=Ba.ERR_STREAM_NULL_VALUES,F8=Ba.ERR_STREAM_WRITE_AFTER_END,j8=Ba.ERR_UNKNOWN_ENCODING,rc=ny.errorOrDestroy;Rt()(ir,iI);function z8(){}function Xf(e,t,r){tc=tc||Ds(),e=e||{},typeof r!="boolean"&&(r=t instanceof tc),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=C8(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=e.decodeStrings===!1;this.decodeStrings=!i,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(n){$8(t,n)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new rI(this)}Xf.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(Xf.prototype,"buffer",{get:P8.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var rp;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(rp=Function.prototype[Symbol.hasInstance],Object.defineProperty(ir,Symbol.hasInstance,{value:function(t){return rp.call(this,t)?!0:this!==ir?!1:t&&t._writableState instanceof Xf}})):rp=function(t){return t instanceof this};function ir(e){tc=tc||Ds();var t=this instanceof tc;if(!t&&!rp.call(ir,this))return new ir(e);this._writableState=new Xf(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),iI.call(this)}ir.prototype.pipe=function(){rc(this,new H8)};function K8(e,t){var r=new F8;rc(e,r),b.default.nextTick(t,r)}function V8(e,t,r,i){var n;return r===null?n=new U8:typeof r!="string"&&!t.objectMode&&(n=new L8("chunk",["string","Buffer"],r)),n?(rc(e,n),b.default.nextTick(i,n),!1):!0}ir.prototype.write=function(e,t,r){var i=this._writableState,n=!1,o=!i.objectMode&&B8(e);return o&&!ip.isBuffer(e)&&(e=k8(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),typeof r!="function"&&(r=z8),i.ending?K8(this,r):(o||V8(this,i,e,r))&&(i.pendingcb++,n=W8(this,i,o,e,t,r)),n};ir.prototype.cork=function(){this._writableState.corked++};ir.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&nI(this,e))};ir.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new j8(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(ir.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function G8(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=ip.from(t,r)),t}Object.defineProperty(ir.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function W8(e,t,r,i,n,o){if(!r){var a=G8(t,i,n);i!==a&&(r=!0,n="buffer",i=a)}var s=t.objectMode?1:i.length;t.length+=s;var u=t.length<t.highWaterMark;if(u||(t.needDrain=!0),t.writing||t.corked){var c=t.lastBufferedRequest;t.lastBufferedRequest={chunk:i,encoding:n,isBuf:r,callback:o,next:null},c?c.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else iy(e,t,!1,s,i,n,o);return u}function iy(e,t,r,i,n,o,a){t.writelen=i,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new q8("write")):r?e._writev(n,t.onwrite):e._write(n,o,t.onwrite),t.sync=!1}function Y8(e,t,r,i,n){--t.pendingcb,r?(b.default.nextTick(n,i),b.default.nextTick($f,e,t),e._writableState.errorEmitted=!0,rc(e,i)):(n(i),e._writableState.errorEmitted=!0,rc(e,i),$f(e,t))}function Z8(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function $8(e,t){var r=e._writableState,i=r.sync,n=r.writecb;if(typeof n!="function")throw new D8;if(Z8(r),t)Y8(e,r,i,t,n);else{var o=oI(r)||e.destroyed;!o&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&nI(e,r),i?b.default.nextTick(tI,e,r,o,n):tI(e,r,o,n)}}function tI(e,t,r,i){r||X8(e,t),t.pendingcb--,i(),$f(e,t)}function X8(e,t){t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function nI(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,n=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var a=0,s=!0;r;)n[a]=r,r.isBuf||(s=!1),r=r.next,a+=1;n.allBuffers=s,iy(e,t,!0,t.length,n,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new rI(t),t.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,c=r.encoding,l=r.callback,p=t.objectMode?1:u.length;if(iy(e,t,!1,p,u,c,l),r=r.next,t.bufferedRequestCount--,t.writing)break}r===null&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}ir.prototype._write=function(e,t,r){r(new M8("_write()"))};ir.prototype._writev=null;ir.prototype.end=function(e,t,r){var i=this._writableState;return typeof e=="function"?(r=e,e=null,t=null):typeof t=="function"&&(r=t,t=null),e!=null&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||e4(this,i,r),this};Object.defineProperty(ir.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function oI(e){return e.ending&&e.length===0&&e.bufferedRequest===null&&!e.finished&&!e.writing}function J8(e,t){e._final(function(r){t.pendingcb--,r&&rc(e,r),t.prefinished=!0,e.emit("prefinish"),$f(e,t)})}function Q8(e,t){!t.prefinished&&!t.finalCalled&&(typeof e._final=="function"&&!t.destroyed?(t.pendingcb++,t.finalCalled=!0,b.default.nextTick(J8,e,t)):(t.prefinished=!0,e.emit("prefinish")))}function $f(e,t){var r=oI(t);if(r&&(Q8(e,t),t.pendingcb===0&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var i=e._readableState;(!i||i.autoDestroy&&i.endEmitted)&&e.destroy()}return r}function e4(e,t,r){t.ending=!0,$f(e,t),r&&(t.finished?b.default.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}function t4(e,t,r){var i=e.entry;for(e.entry=null;i;){var n=i.callback;t.pendingcb--,n(r),i=i.next}t.corkedRequestsFree.next=e}Object.defineProperty(ir.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}});ir.prototype.destroy=ny.destroy;ir.prototype._undestroy=ny.undestroy;ir.prototype._destroy=function(e,t){t(e)}});var Ds=T((Fre,uI)=>{"use strict";g();var r4=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};uI.exports=eo;var sI=uy(),sy=oy();Rt()(eo,sI);for(ay=r4(sy.prototype),np=0;np<ay.length;np++)op=ay[np],eo.prototype[op]||(eo.prototype[op]=sy.prototype[op]);var ay,op,np;function eo(e){if(!(this instanceof eo))return new eo(e);sI.call(this,e),sy.call(this,e),this.allowHalfOpen=!0,e&&(e.readable===!1&&(this.readable=!1),e.writable===!1&&(this.writable=!1),e.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",i4)))}Object.defineProperty(eo.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});Object.defineProperty(eo.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});Object.defineProperty(eo.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function i4(){this._writableState.ended||b.default.nextTick(n4,this)}function n4(e){e.end()}Object.defineProperty(eo.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(t){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=t,this._writableState.destroyed=t)}})});var lI=T((cy,fI)=>{g();var ap=rr(),Ko=ap.Buffer;function cI(e,t){for(var r in e)t[r]=e[r]}Ko.from&&Ko.alloc&&Ko.allocUnsafe&&Ko.allocUnsafeSlow?fI.exports=ap:(cI(ap,cy),cy.Buffer=ic);function ic(e,t,r){return Ko(e,t,r)}cI(Ko,ic);ic.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Ko(e,t,r)};ic.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var i=Ko(e);return t!==void 0?typeof r=="string"?i.fill(t,r):i.fill(t):i.fill(0),i};ic.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Ko(e)};ic.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return ap.SlowBuffer(e)}});var nc=T(dI=>{"use strict";g();var ly=lI().Buffer,hI=ly.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o4(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function a4(e){var t=o4(e);if(typeof t!="string"&&(ly.isEncoding===hI||!hI(e)))throw new Error("Unknown encoding: "+e);return t||e}dI.StringDecoder=Jf;function Jf(e){this.encoding=a4(e);var t;switch(this.encoding){case"utf16le":this.text=h4,this.end=d4,t=4;break;case"utf8":this.fillLast=c4,t=4;break;case"base64":this.text=p4,this.end=g4,t=3;break;default:this.write=m4,this.end=v4;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=ly.allocUnsafe(t)}Jf.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""};Jf.prototype.end=l4;Jf.prototype.text=f4;Jf.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length};function fy(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s4(e,t,r){var i=t.length-1;if(i<r)return 0;var n=fy(t[i]);return n>=0?(n>0&&(e.lastNeed=n-1),n):--i<r||n===-2?0:(n=fy(t[i]),n>=0?(n>0&&(e.lastNeed=n-2),n):--i<r||n===-2?0:(n=fy(t[i]),n>=0?(n>0&&(n===2?n=0:e.lastNeed=n-3),n):0))}function u4(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function c4(e){var t=this.lastTotal-this.lastNeed,r=u4(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function f4(e,t){var r=s4(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var i=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)}function l4(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function h4(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function d4(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function p4(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function g4(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function m4(e){return e.toString(this.encoding)}function v4(e){return e&&e.length?this.write(e):""}});var sp=T((Gre,mI)=>{"use strict";g();var pI=Ms().codes.ERR_STREAM_PREMATURE_CLOSE;function y4(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,i=new Array(r),n=0;n<r;n++)i[n]=arguments[n];e.apply(this,i)}}}function b4(){}function _4(e){return e.setHeader&&typeof e.abort=="function"}function gI(e,t,r){if(typeof t=="function")return gI(e,null,t);t||(t={}),r=y4(r||b4);var i=t.readable||t.readable!==!1&&e.readable,n=t.writable||t.writable!==!1&&e.writable,o=function(){e.writable||s()},a=e._writableState&&e._writableState.finished,s=function(){n=!1,a=!0,i||r.call(e)},u=e._readableState&&e._readableState.endEmitted,c=function(){i=!1,u=!0,n||r.call(e)},l=function(_){r.call(e,_)},p=function(){var _;if(i&&!u)return(!e._readableState||!e._readableState.ended)&&(_=new pI),r.call(e,_);if(n&&!a)return(!e._writableState||!e._writableState.ended)&&(_=new pI),r.call(e,_)},d=function(){e.req.on("finish",s)};return _4(e)?(e.on("complete",s),e.on("abort",p),e.req?d():e.on("request",d)):n&&!e._writableState&&(e.on("end",o),e.on("close",o)),e.on("end",c),e.on("finish",s),t.error!==!1&&e.on("error",l),e.on("close",p),function(){e.removeListener("complete",s),e.removeListener("abort",p),e.removeListener("request",d),e.req&&e.req.removeListener("finish",s),e.removeListener("end",o),e.removeListener("close",o),e.removeListener("finish",s),e.removeListener("end",c),e.removeListener("error",l),e.removeListener("close",p)}}mI.exports=gI});var yI=T((Yre,vI)=>{"use strict";g();var up;function Na(e,t,r){return t=w4(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function w4(e){var t=S4(e,"string");return typeof t=="symbol"?t:String(t)}function S4(e,t){if(typeof e!="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||"default");if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var E4=sp(),Ca=Symbol("lastResolve"),Hs=Symbol("lastReject"),Qf=Symbol("error"),cp=Symbol("ended"),qs=Symbol("lastPromise"),hy=Symbol("handlePromise"),Us=Symbol("stream");function La(e,t){return{value:e,done:t}}function x4(e){var t=e[Ca];if(t!==null){var r=e[Us].read();r!==null&&(e[qs]=null,e[Ca]=null,e[Hs]=null,t(La(r,!1)))}}function O4(e){b.default.nextTick(x4,e)}function I4(e,t){return function(r,i){e.then(function(){if(t[cp]){r(La(void 0,!0));return}t[hy](r,i)},i)}}var A4=Object.getPrototypeOf(function(){}),T4=Object.setPrototypeOf((up={get stream(){return this[Us]},next:function(){var t=this,r=this[Qf];if(r!==null)return Promise.reject(r);if(this[cp])return Promise.resolve(La(void 0,!0));if(this[Us].destroyed)return new Promise(function(a,s){b.default.nextTick(function(){t[Qf]?s(t[Qf]):a(La(void 0,!0))})});var i=this[qs],n;if(i)n=new Promise(I4(i,this));else{var o=this[Us].read();if(o!==null)return Promise.resolve(La(o,!1));n=new Promise(this[hy])}return this[qs]=n,n}},Na(up,Symbol.asyncIterator,function(){return this}),Na(up,"return",function(){var t=this;return new Promise(function(r,i){t[Us].destroy(null,function(n){if(n){i(n);return}r(La(void 0,!0))})})}),up),A4),P4=function(t){var r,i=Object.create(T4,(r={},Na(r,Us,{value:t,writable:!0}),Na(r,Ca,{value:null,writable:!0}),Na(r,Hs,{value:null,writable:!0}),Na(r,Qf,{value:null,writable:!0}),Na(r,cp,{value:t._readableState.endEmitted,writable:!0}),Na(r,hy,{value:function(o,a){var s=i[Us].read();s?(i[qs]=null,i[Ca]=null,i[Hs]=null,o(La(s,!1))):(i[Ca]=o,i[Hs]=a)},writable:!0}),r));return i[qs]=null,E4(t,function(n){if(n&&n.code!=="ERR_STREAM_PREMATURE_CLOSE"){var o=i[Hs];o!==null&&(i[qs]=null,i[Ca]=null,i[Hs]=null,o(n)),i[Qf]=n;return}var a=i[Ca];a!==null&&(i[qs]=null,i[Ca]=null,i[Hs]=null,a(La(void 0,!0))),i[cp]=!0}),t.on("readable",O4.bind(null,i)),i};vI.exports=P4});var _I=T(($re,bI)=>{g();bI.exports=function(){throw new Error("Readable.from is not available in the browser")}});var uy=T((Qre,RI)=>{"use strict";g();RI.exports=ht;var oc;ht.ReadableState=xI;var Jre=Vu().EventEmitter,EI=function(t,r){return t.listeners(r).length},tl=y0(),fp=rr().Buffer,R4=(typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function k4(e){return fp.from(e)}function B4(e){return fp.isBuffer(e)||e instanceof R4}var dy=nn(),ze;dy&&dy.debuglog?ze=dy.debuglog("stream"):ze=function(){};var N4=WO(),_y=Q0(),C4=ey(),L4=C4.getHighWaterMark,lp=Ms().codes,M4=lp.ERR_INVALID_ARG_TYPE,D4=lp.ERR_STREAM_PUSH_AFTER_EOF,H4=lp.ERR_METHOD_NOT_IMPLEMENTED,q4=lp.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,ac,py,gy;Rt()(ht,tl);var el=_y.errorOrDestroy,my=["error","close","destroy","pause","resume"];function U4(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function xI(e,t,r){oc=oc||Ds(),e=e||{},typeof r!="boolean"&&(r=t instanceof oc),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=L4(this,e,"readableHighWaterMark",r),this.buffer=new N4,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(ac||(ac=nc().StringDecoder),this.decoder=new ac(e.encoding),this.encoding=e.encoding)}function ht(e){if(oc=oc||Ds(),!(this instanceof ht))return new ht(e);var t=this instanceof oc;this._readableState=new xI(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),tl.call(this)}Object.defineProperty(ht.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});ht.prototype.destroy=_y.destroy;ht.prototype._undestroy=_y.undestroy;ht.prototype._destroy=function(e,t){t(e)};ht.prototype.push=function(e,t){var r=this._readableState,i;return r.objectMode?i=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=fp.from(e,t),t=""),i=!0),OI(this,e,t,!1,i)};ht.prototype.unshift=function(e){return OI(this,e,null,!0,!1)};function OI(e,t,r,i,n){ze("readableAddChunk",t);var o=e._readableState;if(t===null)o.reading=!1,z4(e,o);else{var a;if(n||(a=F4(o,t)),a)el(e,a);else if(o.objectMode||t&&t.length>0)if(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==fp.prototype&&(t=k4(t)),i)o.endEmitted?el(e,new q4):vy(e,o,t,!0);else if(o.ended)el(e,new D4);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?vy(e,o,t,!1):by(e,o)):vy(e,o,t,!1)}else i||(o.reading=!1,by(e,o))}return!o.ended&&(o.length<o.highWaterMark||o.length===0)}function vy(e,t,r,i){t.flowing&&t.length===0&&!t.sync?(t.awaitDrain=0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,i?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&hp(e)),by(e,t)}function F4(e,t){var r;return!B4(t)&&typeof t!="string"&&t!==void 0&&!e.objectMode&&(r=new M4("chunk",["string","Buffer","Uint8Array"],t)),r}ht.prototype.isPaused=function(){return this._readableState.flowing===!1};ht.prototype.setEncoding=function(e){ac||(ac=nc().StringDecoder);var t=new ac(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var r=this._readableState.buffer.head,i="";r!==null;)i+=t.write(r.data),r=r.next;return this._readableState.buffer.clear(),i!==""&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var wI=1073741824;function j4(e){return e>=wI?e=wI:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function SI(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=j4(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}ht.prototype.read=function(e){ze("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return ze("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?yy(this):hp(this),null;if(e=SI(e,t),e===0&&t.ended)return t.length===0&&yy(this),null;var i=t.needReadable;ze("need readable",i),(t.length===0||t.length-e<t.highWaterMark)&&(i=!0,ze("length less than watermark",i)),t.ended||t.reading?(i=!1,ze("reading or ended",i)):i&&(ze("do read"),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=SI(r,t)));var n;return e>0?n=TI(e,t):n=null,n===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&yy(this)),n!==null&&this.emit("data",n),n};function z4(e,t){if(ze("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?hp(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,II(e)))}}function hp(e){var t=e._readableState;ze("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(ze("emitReadable",t.flowing),t.emittedReadable=!0,b.default.nextTick(II,e))}function II(e){var t=e._readableState;ze("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,wy(e)}function by(e,t){t.readingMore||(t.readingMore=!0,b.default.nextTick(K4,e,t))}function K4(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&t.length===0);){var r=t.length;if(ze("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}ht.prototype._read=function(e){el(this,new H4("_read()"))};ht.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e);break}i.pipesCount+=1,ze("pipe count=%d opts=%j",i.pipesCount,t);var n=(!t||t.end!==!1)&&e!==b.default.stdout&&e!==b.default.stderr,o=n?s:I;i.endEmitted?b.default.nextTick(o):r.once("end",o),e.on("unpipe",a);function a(R,k){ze("onunpipe"),R===r&&k&&k.hasUnpiped===!1&&(k.hasUnpiped=!0,l())}function s(){ze("onend"),e.end()}var u=V4(r);e.on("drain",u);var c=!1;function l(){ze("cleanup"),e.removeListener("close",v),e.removeListener("finish",_),e.removeListener("drain",u),e.removeListener("error",d),e.removeListener("unpipe",a),r.removeListener("end",s),r.removeListener("end",I),r.removeListener("data",p),c=!0,i.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&u()}r.on("data",p);function p(R){ze("ondata");var k=e.write(R);ze("dest.write",k),k===!1&&((i.pipesCount===1&&i.pipes===e||i.pipesCount>1&&PI(i.pipes,e)!==-1)&&!c&&(ze("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function d(R){ze("onerror",R),I(),e.removeListener("error",d),EI(e,"error")===0&&el(e,R)}U4(e,"error",d);function v(){e.removeListener("finish",_),I()}e.once("close",v);function _(){ze("onfinish"),e.removeListener("close",v),I()}e.once("finish",_);function I(){ze("unpipe"),r.unpipe(e)}return e.emit("pipe",r),i.flowing||(ze("pipe resume"),r.resume()),e};function V4(e){return function(){var r=e._readableState;ze("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&EI(e,"data")&&(r.flowing=!0,wy(e))}}ht.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var i=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o<n;o++)i[o].emit("unpipe",this,{hasUnpiped:!1});return this}var a=PI(t.pipes,e);return a===-1?this:(t.pipes.splice(a,1),t.pipesCount-=1,t.pipesCount===1&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r),this)};ht.prototype.on=function(e,t){var r=tl.prototype.on.call(this,e,t),i=this._readableState;return e==="data"?(i.readableListening=this.listenerCount("readable")>0,i.flowing!==!1&&this.resume()):e==="readable"&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,ze("on readable",i.length,i.reading),i.length?hp(this):i.reading||b.default.nextTick(G4,this)),r};ht.prototype.addListener=ht.prototype.on;ht.prototype.removeListener=function(e,t){var r=tl.prototype.removeListener.call(this,e,t);return e==="readable"&&b.default.nextTick(AI,this),r};ht.prototype.removeAllListeners=function(e){var t=tl.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&b.default.nextTick(AI,this),t};function AI(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function G4(e){ze("readable nexttick read 0"),e.read(0)}ht.prototype.resume=function(){var e=this._readableState;return e.flowing||(ze("resume"),e.flowing=!e.readableListening,W4(this,e)),e.paused=!1,this};function W4(e,t){t.resumeScheduled||(t.resumeScheduled=!0,b.default.nextTick(Y4,e,t))}function Y4(e,t){ze("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),wy(e),t.flowing&&!t.reading&&e.read(0)}ht.prototype.pause=function(){return ze("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(ze("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function wy(e){var t=e._readableState;for(ze("flow",t.flowing);t.flowing&&e.read()!==null;);}ht.prototype.wrap=function(e){var t=this,r=this._readableState,i=!1;e.on("end",function(){if(ze("wrapped end"),r.decoder&&!r.ended){var a=r.decoder.end();a&&a.length&&t.push(a)}t.push(null)}),e.on("data",function(a){if(ze("wrapped data"),r.decoder&&(a=r.decoder.write(a)),!(r.objectMode&&a==null)&&!(!r.objectMode&&(!a||!a.length))){var s=t.push(a);s||(i=!0,e.pause())}});for(var n in e)this[n]===void 0&&typeof e[n]=="function"&&(this[n]=(function(s){return function(){return e[s].apply(e,arguments)}})(n));for(var o=0;o<my.length;o++)e.on(my[o],this.emit.bind(this,my[o]));return this._read=function(a){ze("wrapped _read",a),i&&(i=!1,e.resume())},this};typeof Symbol=="function"&&(ht.prototype[Symbol.asyncIterator]=function(){return py===void 0&&(py=yI()),py(this)});Object.defineProperty(ht.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(ht.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(ht.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}});ht._fromList=TI;Object.defineProperty(ht.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function TI(e,t){if(t.length===0)return null;var r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function yy(e){var t=e._readableState;ze("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,b.default.nextTick(Z4,t,e))}function Z4(e,t){if(ze("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(ht.from=function(e,t){return gy===void 0&&(gy=_I()),gy(ht,e,t)});function PI(e,t){for(var r=0,i=e.length;r<i;r++)if(e[r]===t)return r;return-1}});var Sy=T((tie,BI)=>{"use strict";g();BI.exports=Vo;var dp=Ms().codes,$4=dp.ERR_METHOD_NOT_IMPLEMENTED,X4=dp.ERR_MULTIPLE_CALLBACK,J4=dp.ERR_TRANSFORM_ALREADY_TRANSFORMING,Q4=dp.ERR_TRANSFORM_WITH_LENGTH_0,pp=Ds();Rt()(Vo,pp);function e5(e,t){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(i===null)return this.emit("error",new X4);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),i(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}function Vo(e){if(!(this instanceof Vo))return new Vo(e);pp.call(this,e),this._transformState={afterTransform:e5.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&(typeof e.transform=="function"&&(this._transform=e.transform),typeof e.flush=="function"&&(this._flush=e.flush)),this.on("prefinish",t5)}function t5(){var e=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(t,r){kI(e,t,r)}):kI(this,null,null)}Vo.prototype.push=function(e,t){return this._transformState.needTransform=!1,pp.prototype.push.call(this,e,t)};Vo.prototype._transform=function(e,t,r){r(new $4("_transform()"))};Vo.prototype._write=function(e,t,r){var i=this._transformState;if(i.writecb=r,i.writechunk=e,i.writeencoding=t,!i.transforming){var n=this._readableState;(i.needTransform||n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}};Vo.prototype._read=function(e){var t=this._transformState;t.writechunk!==null&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0};Vo.prototype._destroy=function(e,t){pp.prototype._destroy.call(this,e,function(r){t(r)})};function kI(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new Q4;if(e._transformState.transforming)throw new J4;return e.push(null)}});var LI=T((iie,CI)=>{"use strict";g();CI.exports=rl;var NI=Sy();Rt()(rl,NI);function rl(e){if(!(this instanceof rl))return new rl(e);NI.call(this,e)}rl.prototype._transform=function(e,t,r){r(null,e)}});var UI=T((oie,qI)=>{"use strict";g();var Ey;function r5(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var HI=Ms().codes,i5=HI.ERR_MISSING_ARGS,n5=HI.ERR_STREAM_DESTROYED;function MI(e){if(e)throw e}function o5(e){return e.setHeader&&typeof e.abort=="function"}function a5(e,t,r,i){i=r5(i);var n=!1;e.on("close",function(){n=!0}),Ey===void 0&&(Ey=sp()),Ey(e,{readable:t,writable:r},function(a){if(a)return i(a);n=!0,i()});var o=!1;return function(a){if(!n&&!o){if(o=!0,o5(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();i(a||new n5("pipe"))}}}function DI(e){e()}function s5(e,t){return e.pipe(t)}function u5(e){return!e.length||typeof e[e.length-1]!="function"?MI:e.pop()}function c5(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var i=u5(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new i5("streams");var n,o=t.map(function(a,s){var u=s<t.length-1,c=s>0;return a5(a,u,c,function(l){n||(n=l),l&&o.forEach(DI),!u&&(o.forEach(DI),i(n))})});return t.reduce(s5)}qI.exports=c5});var gp=T((sie,FI)=>{g();FI.exports=an;var xy=Vu().EventEmitter,f5=Rt();f5(an,xy);an.Readable=uy();an.Writable=oy();an.Duplex=Ds();an.Transform=Sy();an.PassThrough=LI();an.finished=sp();an.pipeline=UI();an.Stream=an;function an(){xy.call(this)}an.prototype.pipe=function(e,t){var r=this;function i(l){e.writable&&e.write(l)===!1&&r.pause&&r.pause()}r.on("data",i);function n(){r.readable&&r.resume&&r.resume()}e.on("drain",n),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",a),r.on("close",s));var o=!1;function a(){o||(o=!0,e.end())}function s(){o||(o=!0,typeof e.destroy=="function"&&e.destroy())}function u(l){if(c(),xy.listenerCount(this,"error")===0)throw l}r.on("error",u),e.on("error",u);function c(){r.removeListener("data",i),e.removeListener("drain",n),r.removeListener("end",a),r.removeListener("close",s),r.removeListener("error",u),e.removeListener("error",u),r.removeListener("end",c),r.removeListener("close",c),e.removeListener("close",c)}return r.on("end",c),r.on("close",c),e.on("close",c),e.emit("pipe",r),e}});var KI=T((cie,zI)=>{"use strict";g();var to=ii().Buffer,jI=gp().Transform,l5=Rt();function Ma(e){jI.call(this),this._block=to.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}l5(Ma,jI);Ma.prototype._transform=function(e,t,r){var i=null;try{this.update(e,t)}catch(n){i=n}r(i)};Ma.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)};var h5=typeof Uint8Array<"u",d5=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&ArrayBuffer.isView&&(to.prototype instanceof Uint8Array||to.TYPED_ARRAY_SUPPORT);function p5(e,t){if(e instanceof to)return e;if(typeof e=="string")return to.from(e,t);if(d5&&ArrayBuffer.isView(e)){if(e.byteLength===0)return to.alloc(0);var r=to.from(e.buffer,e.byteOffset,e.byteLength);if(r.byteLength===e.byteLength)return r}if(h5&&e instanceof Uint8Array||to.isBuffer(e)&&e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e))return to.from(e);throw new TypeError('The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView.')}Ma.prototype.update=function(e,t){if(this._finalized)throw new Error("Digest already called");e=p5(e,t);for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var n=this._blockOffset;n<this._blockSize;)r[n++]=e[i++];this._update(),this._blockOffset=0}for(;i<e.length;)r[this._blockOffset++]=e[i++];for(var o=0,a=e.length*8;a>0;++o)this._length[o]+=a,a=this._length[o]/4294967296|0,a>0&&(this._length[o]-=4294967296*a);return this};Ma.prototype._update=function(){throw new Error("_update is not implemented")};Ma.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();e!==void 0&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t};Ma.prototype._digest=function(){throw new Error("_digest is not implemented")};zI.exports=Ma});var Oy=T((lie,GI)=>{"use strict";g();var g5=Rt(),VI=KI(),m5=ii().Buffer,v5=new Array(16);function mp(){VI.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}g5(mp,VI);mp.prototype._update=function(){for(var e=v5,t=0;t<16;++t)e[t]=this._block.readInt32LE(t*4);var r=this._a,i=this._b,n=this._c,o=this._d;r=ci(r,i,n,o,e[0],3614090360,7),o=ci(o,r,i,n,e[1],3905402710,12),n=ci(n,o,r,i,e[2],606105819,17),i=ci(i,n,o,r,e[3],3250441966,22),r=ci(r,i,n,o,e[4],4118548399,7),o=ci(o,r,i,n,e[5],1200080426,12),n=ci(n,o,r,i,e[6],2821735955,17),i=ci(i,n,o,r,e[7],4249261313,22),r=ci(r,i,n,o,e[8],1770035416,7),o=ci(o,r,i,n,e[9],2336552879,12),n=ci(n,o,r,i,e[10],4294925233,17),i=ci(i,n,o,r,e[11],2304563134,22),r=ci(r,i,n,o,e[12],1804603682,7),o=ci(o,r,i,n,e[13],4254626195,12),n=ci(n,o,r,i,e[14],2792965006,17),i=ci(i,n,o,r,e[15],1236535329,22),r=fi(r,i,n,o,e[1],4129170786,5),o=fi(o,r,i,n,e[6],3225465664,9),n=fi(n,o,r,i,e[11],643717713,14),i=fi(i,n,o,r,e[0],3921069994,20),r=fi(r,i,n,o,e[5],3593408605,5),o=fi(o,r,i,n,e[10],38016083,9),n=fi(n,o,r,i,e[15],3634488961,14),i=fi(i,n,o,r,e[4],3889429448,20),r=fi(r,i,n,o,e[9],568446438,5),o=fi(o,r,i,n,e[14],3275163606,9),n=fi(n,o,r,i,e[3],4107603335,14),i=fi(i,n,o,r,e[8],1163531501,20),r=fi(r,i,n,o,e[13],2850285829,5),o=fi(o,r,i,n,e[2],4243563512,9),n=fi(n,o,r,i,e[7],1735328473,14),i=fi(i,n,o,r,e[12],2368359562,20),r=li(r,i,n,o,e[5],4294588738,4),o=li(o,r,i,n,e[8],2272392833,11),n=li(n,o,r,i,e[11],1839030562,16),i=li(i,n,o,r,e[14],4259657740,23),r=li(r,i,n,o,e[1],2763975236,4),o=li(o,r,i,n,e[4],1272893353,11),n=li(n,o,r,i,e[7],4139469664,16),i=li(i,n,o,r,e[10],3200236656,23),r=li(r,i,n,o,e[13],681279174,4),o=li(o,r,i,n,e[0],3936430074,11),n=li(n,o,r,i,e[3],3572445317,16),i=li(i,n,o,r,e[6],76029189,23),r=li(r,i,n,o,e[9],3654602809,4),o=li(o,r,i,n,e[12],3873151461,11),n=li(n,o,r,i,e[15],530742520,16),i=li(i,n,o,r,e[2],3299628645,23),r=hi(r,i,n,o,e[0],4096336452,6),o=hi(o,r,i,n,e[7],1126891415,10),n=hi(n,o,r,i,e[14],2878612391,15),i=hi(i,n,o,r,e[5],4237533241,21),r=hi(r,i,n,o,e[12],1700485571,6),o=hi(o,r,i,n,e[3],2399980690,10),n=hi(n,o,r,i,e[10],4293915773,15),i=hi(i,n,o,r,e[1],2240044497,21),r=hi(r,i,n,o,e[8],1873313359,6),o=hi(o,r,i,n,e[15],4264355552,10),n=hi(n,o,r,i,e[6],2734768916,15),i=hi(i,n,o,r,e[13],1309151649,21),r=hi(r,i,n,o,e[4],4149444226,6),o=hi(o,r,i,n,e[11],3174756917,10),n=hi(n,o,r,i,e[2],718787259,15),i=hi(i,n,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+i|0,this._c=this._c+n|0,this._d=this._d+o|0};mp.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=m5.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e};function vp(e,t){return e<<t|e>>>32-t}function ci(e,t,r,i,n,o,a){return vp(e+(t&r|~t&i)+n+o|0,a)+t|0}function fi(e,t,r,i,n,o,a){return vp(e+(t&i|r&~i)+n+o|0,a)+t|0}function li(e,t,r,i,n,o,a){return vp(e+(t^r^i)+n+o|0,a)+t|0}function hi(e,t,r,i,n,o,a){return vp(e+(r^(t|~i))+n+o|0,a)+t|0}GI.exports=mp});var YI=T((die,WI)=>{g();var y5={}.toString;WI.exports=Array.isArray||function(e){return y5.call(e)=="[object Array]"}});var $I=T((gie,ZI)=>{"use strict";g();var b5=ks(),_5=Ra(),w5=_5("TypedArray.prototype.buffer",!0),S5=z0();ZI.exports=w5||function(t){if(!S5(t))throw new b5("Not a Typed Array");return t.buffer}});var yp=T((vie,JI)=>{"use strict";g();var xn=ii().Buffer,E5=YI(),x5=$I(),O5=ArrayBuffer.isView||function(t){try{return x5(t),!0}catch{return!1}},I5=typeof Uint8Array<"u",XI=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u",A5=XI&&(xn.prototype instanceof Uint8Array||xn.TYPED_ARRAY_SUPPORT);JI.exports=function(t,r){if(xn.isBuffer(t))return t.constructor&&!("isBuffer"in t)?xn.from(t):t;if(typeof t=="string")return xn.from(t,r);if(XI&&O5(t)){if(t.byteLength===0)return xn.alloc(0);if(A5){var i=xn.from(t.buffer,t.byteOffset,t.byteLength);if(i.byteLength===t.byteLength)return i}var n=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=xn.from(n);if(o.length===t.byteLength)return o}if(I5&&t instanceof Uint8Array)return xn.from(t);var a=E5(t);if(a)for(var s=0;s<t.length;s+=1){var u=t[s];if(typeof u!="number"||u<0||u>255||~~u!==u)throw new RangeError("Array items must be numbers in the range 0-255.")}if(a||xn.isBuffer(t)&&t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t))return xn.from(t);throw new TypeError('The "data" argument must be a string, an Array, a Buffer, a Uint8Array, or a DataView.')}});var rA=T((bie,tA)=>{"use strict";g();var T5=ii().Buffer,P5=yp(),eA=typeof Uint8Array<"u",R5=eA&&typeof ArrayBuffer<"u",QI=R5&&ArrayBuffer.isView;tA.exports=function(e,t){if(typeof e=="string"||T5.isBuffer(e)||eA&&e instanceof Uint8Array||QI&&QI(e))return P5(e,t);throw new TypeError('The "data" argument must be a string, a Buffer, a Uint8Array, or a DataView')}});var il=T((wie,Iy)=>{"use strict";g();typeof b.default>"u"||!b.default.version||b.default.version.indexOf("v0.")===0||b.default.version.indexOf("v1.")===0&&b.default.version.indexOf("v1.8.")!==0?Iy.exports={nextTick:k5}:Iy.exports=b.default;function k5(e,t,r,i){if(typeof e!="function")throw new TypeError('"callback" argument must be a function');var n=arguments.length,o,a;switch(n){case 0:case 1:return b.default.nextTick(e);case 2:return b.default.nextTick(function(){e.call(null,t)});case 3:return b.default.nextTick(function(){e.call(null,t,r)});case 4:return b.default.nextTick(function(){e.call(null,t,r,i)});default:for(o=new Array(n-1),a=0;a<o.length;)o[a++]=arguments[a];return b.default.nextTick(function(){e.apply(null,o)})}}});var nA=T((Eie,iA)=>{g();var B5={}.toString;iA.exports=Array.isArray||function(e){return B5.call(e)=="[object Array]"}});var Ay=T((Oie,oA)=>{g();oA.exports=Vu().EventEmitter});var _p=T((Ty,sA)=>{g();var bp=rr(),Go=bp.Buffer;function aA(e,t){for(var r in e)t[r]=e[r]}Go.from&&Go.alloc&&Go.allocUnsafe&&Go.allocUnsafeSlow?sA.exports=bp:(aA(bp,Ty),Ty.Buffer=sc);function sc(e,t,r){return Go(e,t,r)}aA(Go,sc);sc.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Go(e,t,r)};sc.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var i=Go(e);return t!==void 0?typeof r=="string"?i.fill(t,r):i.fill(t):i.fill(0),i};sc.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Go(e)};sc.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return bp.SlowBuffer(e)}});var uc=T(di=>{g();function N5(e){return Array.isArray?Array.isArray(e):wp(e)==="[object Array]"}di.isArray=N5;function C5(e){return typeof e=="boolean"}di.isBoolean=C5;function L5(e){return e===null}di.isNull=L5;function M5(e){return e==null}di.isNullOrUndefined=M5;function D5(e){return typeof e=="number"}di.isNumber=D5;function H5(e){return typeof e=="string"}di.isString=H5;function q5(e){return typeof e=="symbol"}di.isSymbol=q5;function U5(e){return e===void 0}di.isUndefined=U5;function F5(e){return wp(e)==="[object RegExp]"}di.isRegExp=F5;function j5(e){return typeof e=="object"&&e!==null}di.isObject=j5;function z5(e){return wp(e)==="[object Date]"}di.isDate=z5;function K5(e){return wp(e)==="[object Error]"||e instanceof Error}di.isError=K5;function V5(e){return typeof e=="function"}di.isFunction=V5;function G5(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e>"u"}di.isPrimitive=G5;di.isBuffer=rr().Buffer.isBuffer;function wp(e){return Object.prototype.toString.call(e)}});var cA=T((Rie,Py)=>{"use strict";g();function W5(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var uA=_p().Buffer,nl=nn();function Y5(e,t,r){e.copy(t,r)}Py.exports=(function(){function e(){W5(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(r){var i={data:r,next:null};this.length>0?this.tail.next=i:this.head=i,this.tail=i,++this.length},e.prototype.unshift=function(r){var i={data:r,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length},e.prototype.shift=function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(r){if(this.length===0)return"";for(var i=this.head,n=""+i.data;i=i.next;)n+=r+i.data;return n},e.prototype.concat=function(r){if(this.length===0)return uA.alloc(0);for(var i=uA.allocUnsafe(r>>>0),n=this.head,o=0;n;)Y5(n.data,i,o),o+=n.data.length,n=n.next;return i},e})();nl&&nl.inspect&&nl.inspect.custom&&(Py.exports.prototype[nl.inspect.custom]=function(){var e=nl.inspect({length:this.length});return this.constructor.name+" "+e})});var Ry=T((Bie,fA)=>{"use strict";g();var Sp=il();function Z5(e,t){var r=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,Sp.nextTick(Ep,this,e)):Sp.nextTick(Ep,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,Sp.nextTick(Ep,r,o)):Sp.nextTick(Ep,r,o):t&&t(o)}),this)}function $5(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function Ep(e,t){e.emit("error",t)}fA.exports={destroy:Z5,undestroy:$5}});var By=T((Cie,yA)=>{"use strict";g();var Fs=il();yA.exports=Ir;function hA(e){var t=this;this.next=null,this.entry=null,this.finish=function(){pj(t,e)}}var X5=!b.default.browser&&["v0.10","v0.9."].indexOf(b.default.version.slice(0,5))>-1?setImmediate:Fs.nextTick,cc;Ir.WritableState=al;var dA=Object.create(uc());dA.inherits=Rt();var J5={deprecate:ry()},pA=Ay(),Op=_p().Buffer,Q5=(typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function ej(e){return Op.from(e)}function tj(e){return Op.isBuffer(e)||e instanceof Q5}var gA=Ry();dA.inherits(Ir,pA);function rj(){}function al(e,t){cc=cc||js(),e=e||{};var r=t instanceof cc;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,n=e.writableHighWaterMark,o=this.objectMode?16:16*1024;i||i===0?this.highWaterMark=i:r&&(n||n===0)?this.highWaterMark=n:this.highWaterMark=o,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=e.decodeStrings===!1;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(s){cj(t,s)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new hA(this)}al.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(al.prototype,"buffer",{get:J5.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var xp;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(xp=Function.prototype[Symbol.hasInstance],Object.defineProperty(Ir,Symbol.hasInstance,{value:function(e){return xp.call(this,e)?!0:this!==Ir?!1:e&&e._writableState instanceof al}})):xp=function(e){return e instanceof this};function Ir(e){if(cc=cc||js(),!xp.call(Ir,this)&&!(this instanceof cc))return new Ir(e);this._writableState=new al(e,this),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),pA.call(this)}Ir.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function ij(e,t){var r=new Error("write after end");e.emit("error",r),Fs.nextTick(t,r)}function nj(e,t,r,i){var n=!0,o=!1;return r===null?o=new TypeError("May not write null values to stream"):typeof r!="string"&&r!==void 0&&!t.objectMode&&(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),Fs.nextTick(i,o),n=!1),n}Ir.prototype.write=function(e,t,r){var i=this._writableState,n=!1,o=!i.objectMode&&tj(e);return o&&!Op.isBuffer(e)&&(e=ej(e)),typeof t=="function"&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),typeof r!="function"&&(r=rj),i.ended?ij(this,r):(o||nj(this,i,e,r))&&(i.pendingcb++,n=aj(this,i,o,e,t,r)),n};Ir.prototype.cork=function(){var e=this._writableState;e.corked++};Ir.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&mA(this,e))};Ir.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this};function oj(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=Op.from(t,r)),t}Object.defineProperty(Ir.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function aj(e,t,r,i,n,o){if(!r){var a=oj(t,i,n);i!==a&&(r=!0,n="buffer",i=a)}var s=t.objectMode?1:i.length;t.length+=s;var u=t.length<t.highWaterMark;if(u||(t.needDrain=!0),t.writing||t.corked){var c=t.lastBufferedRequest;t.lastBufferedRequest={chunk:i,encoding:n,isBuf:r,callback:o,next:null},c?c.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else ky(e,t,!1,s,i,n,o);return u}function ky(e,t,r,i,n,o,a){t.writelen=i,t.writecb=a,t.writing=!0,t.sync=!0,r?e._writev(n,t.onwrite):e._write(n,o,t.onwrite),t.sync=!1}function sj(e,t,r,i,n){--t.pendingcb,r?(Fs.nextTick(n,i),Fs.nextTick(ol,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(n(i),e._writableState.errorEmitted=!0,e.emit("error",i),ol(e,t))}function uj(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function cj(e,t){var r=e._writableState,i=r.sync,n=r.writecb;if(uj(r),t)sj(e,r,i,t,n);else{var o=vA(r);!o&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&mA(e,r),i?X5(lA,e,r,o,n):lA(e,r,o,n)}}function lA(e,t,r,i){r||fj(e,t),t.pendingcb--,i(),ol(e,t)}function fj(e,t){t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function mA(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,n=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var a=0,s=!0;r;)n[a]=r,r.isBuf||(s=!1),r=r.next,a+=1;n.allBuffers=s,ky(e,t,!0,t.length,n,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new hA(t),t.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,c=r.encoding,l=r.callback,p=t.objectMode?1:u.length;if(ky(e,t,!1,p,u,c,l),r=r.next,t.bufferedRequestCount--,t.writing)break}r===null&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}Ir.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))};Ir.prototype._writev=null;Ir.prototype.end=function(e,t,r){var i=this._writableState;typeof e=="function"?(r=e,e=null,t=null):typeof t=="function"&&(r=t,t=null),e!=null&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||dj(this,i,r)};function vA(e){return e.ending&&e.length===0&&e.bufferedRequest===null&&!e.finished&&!e.writing}function lj(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),ol(e,t)})}function hj(e,t){!t.prefinished&&!t.finalCalled&&(typeof e._final=="function"?(t.pendingcb++,t.finalCalled=!0,Fs.nextTick(lj,e,t)):(t.prefinished=!0,e.emit("prefinish")))}function ol(e,t){var r=vA(t);return r&&(hj(e,t),t.pendingcb===0&&(t.finished=!0,e.emit("finish"))),r}function dj(e,t,r){t.ending=!0,ol(e,t),r&&(t.finished?Fs.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}function pj(e,t,r){var i=e.entry;for(e.entry=null;i;){var n=i.callback;t.pendingcb--,n(r),i=i.next}t.corkedRequestsFree.next=e}Object.defineProperty(Ir.prototype,"destroyed",{get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}});Ir.prototype.destroy=gA.destroy;Ir.prototype._undestroy=gA.undestroy;Ir.prototype._destroy=function(e,t){this.end(),t(e)}});var js=T((Mie,SA)=>{"use strict";g();var bA=il(),gj=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};SA.exports=Wo;var _A=Object.create(uc());_A.inherits=Rt();var wA=Ly(),Cy=By();_A.inherits(Wo,wA);for(Ny=gj(Cy.prototype),Ip=0;Ip<Ny.length;Ip++)Ap=Ny[Ip],Wo.prototype[Ap]||(Wo.prototype[Ap]=Cy.prototype[Ap]);var Ny,Ap,Ip;function Wo(e){if(!(this instanceof Wo))return new Wo(e);wA.call(this,e),Cy.call(this,e),e&&e.readable===!1&&(this.readable=!1),e&&e.writable===!1&&(this.writable=!1),this.allowHalfOpen=!0,e&&e.allowHalfOpen===!1&&(this.allowHalfOpen=!1),this.once("end",mj)}Object.defineProperty(Wo.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function mj(){this.allowHalfOpen||this._writableState.ended||bA.nextTick(vj,this)}function vj(e){e.end()}Object.defineProperty(Wo.prototype,"destroyed",{get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(e){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=e,this._writableState.destroyed=e)}});Wo.prototype._destroy=function(e,t){this.push(null),this.end(),bA.nextTick(t,e)}});var Ly=T((qie,CA)=>{"use strict";g();var lc=il();CA.exports=jt;var yj=nA(),sl;jt.ReadableState=PA;var Hie=Vu().EventEmitter,IA=function(e,t){return e.listeners(t).length},Uy=Ay(),ul=_p().Buffer,bj=(typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function _j(e){return ul.from(e)}function wj(e){return ul.isBuffer(e)||e instanceof bj}var AA=Object.create(uc());AA.inherits=Rt();var My=nn(),yt=void 0;My&&My.debuglog?yt=My.debuglog("stream"):yt=function(){};var Sj=cA(),TA=Ry(),fc;AA.inherits(jt,Uy);var Dy=["error","close","destroy","pause","resume"];function Ej(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):yj(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function PA(e,t){sl=sl||js(),e=e||{};var r=t instanceof sl;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,n=e.readableHighWaterMark,o=this.objectMode?16:16*1024;i||i===0?this.highWaterMark=i:r&&(n||n===0)?this.highWaterMark=n:this.highWaterMark=o,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new Sj,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(fc||(fc=nc().StringDecoder),this.decoder=new fc(e.encoding),this.encoding=e.encoding)}function jt(e){if(sl=sl||js(),!(this instanceof jt))return new jt(e);this._readableState=new PA(e,this),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),Uy.call(this)}Object.defineProperty(jt.prototype,"destroyed",{get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}});jt.prototype.destroy=TA.destroy;jt.prototype._undestroy=TA.undestroy;jt.prototype._destroy=function(e,t){this.push(null),t(e)};jt.prototype.push=function(e,t){var r=this._readableState,i;return r.objectMode?i=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=ul.from(e,t),t=""),i=!0),RA(this,e,t,!1,i)};jt.prototype.unshift=function(e){return RA(this,e,null,!0,!1)};function RA(e,t,r,i,n){var o=e._readableState;if(t===null)o.reading=!1,Aj(e,o);else{var a;n||(a=xj(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?(typeof t!="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==ul.prototype&&(t=_j(t)),i?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):Hy(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||t.length!==0?Hy(e,o,t,!1):kA(e,o)):Hy(e,o,t,!1))):i||(o.reading=!1)}return Oj(o)}function Hy(e,t,r,i){t.flowing&&t.length===0&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,i?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&Tp(e)),kA(e,t)}function xj(e,t){var r;return!wj(t)&&typeof t!="string"&&t!==void 0&&!e.objectMode&&(r=new TypeError("Invalid non-string/buffer chunk")),r}function Oj(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||e.length===0)}jt.prototype.isPaused=function(){return this._readableState.flowing===!1};jt.prototype.setEncoding=function(e){return fc||(fc=nc().StringDecoder),this._readableState.decoder=new fc(e),this._readableState.encoding=e,this};var EA=8388608;function Ij(e){return e>=EA?e=EA:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function xA(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=Ij(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}jt.prototype.read=function(e){yt("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return yt("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?qy(this):Tp(this),null;if(e=xA(e,t),e===0&&t.ended)return t.length===0&&qy(this),null;var i=t.needReadable;yt("need readable",i),(t.length===0||t.length-e<t.highWaterMark)&&(i=!0,yt("length less than watermark",i)),t.ended||t.reading?(i=!1,yt("reading or ended",i)):i&&(yt("do read"),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=xA(r,t)));var n;return e>0?n=BA(e,t):n=null,n===null?(t.needReadable=!0,e=0):t.length-=e,t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&qy(this)),n!==null&&this.emit("data",n),n};function Aj(e,t){if(!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,Tp(e)}}function Tp(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(yt("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?lc.nextTick(OA,e):OA(e))}function OA(e){yt("emit readable"),e.emit("readable"),Fy(e)}function kA(e,t){t.readingMore||(t.readingMore=!0,lc.nextTick(Tj,e,t))}function Tj(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(yt("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}jt.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))};jt.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e);break}i.pipesCount+=1,yt("pipe count=%d opts=%j",i.pipesCount,t);var n=(!t||t.end!==!1)&&e!==b.default.stdout&&e!==b.default.stderr,o=n?s:R;i.endEmitted?lc.nextTick(o):r.once("end",o),e.on("unpipe",a);function a(k,q){yt("onunpipe"),k===r&&q&&q.hasUnpiped===!1&&(q.hasUnpiped=!0,l())}function s(){yt("onend"),e.end()}var u=Pj(r);e.on("drain",u);var c=!1;function l(){yt("cleanup"),e.removeListener("close",_),e.removeListener("finish",I),e.removeListener("drain",u),e.removeListener("error",v),e.removeListener("unpipe",a),r.removeListener("end",s),r.removeListener("end",R),r.removeListener("data",d),c=!0,i.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&u()}var p=!1;r.on("data",d);function d(k){yt("ondata"),p=!1;var q=e.write(k);q===!1&&!p&&((i.pipesCount===1&&i.pipes===e||i.pipesCount>1&&NA(i.pipes,e)!==-1)&&!c&&(yt("false write response, pause",i.awaitDrain),i.awaitDrain++,p=!0),r.pause())}function v(k){yt("onerror",k),R(),e.removeListener("error",v),IA(e,"error")===0&&e.emit("error",k)}Ej(e,"error",v);function _(){e.removeListener("finish",I),R()}e.once("close",_);function I(){yt("onfinish"),e.removeListener("close",_),R()}e.once("finish",I);function R(){yt("unpipe"),r.unpipe(e)}return e.emit("pipe",r),i.flowing||(yt("pipe resume"),r.resume()),e};function Pj(e){return function(){var t=e._readableState;yt("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,t.awaitDrain===0&&IA(e,"data")&&(t.flowing=!0,Fy(e))}}jt.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var i=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o<n;o++)i[o].emit("unpipe",this,{hasUnpiped:!1});return this}var a=NA(t.pipes,e);return a===-1?this:(t.pipes.splice(a,1),t.pipesCount-=1,t.pipesCount===1&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r),this)};jt.prototype.on=function(e,t){var r=Uy.prototype.on.call(this,e,t);if(e==="data")this._readableState.flowing!==!1&&this.resume();else if(e==="readable"){var i=this._readableState;!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&Tp(this):lc.nextTick(Rj,this))}return r};jt.prototype.addListener=jt.prototype.on;function Rj(e){yt("readable nexttick read 0"),e.read(0)}jt.prototype.resume=function(){var e=this._readableState;return e.flowing||(yt("resume"),e.flowing=!0,kj(this,e)),this};function kj(e,t){t.resumeScheduled||(t.resumeScheduled=!0,lc.nextTick(Bj,e,t))}function Bj(e,t){t.reading||(yt("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),Fy(e),t.flowing&&!t.reading&&e.read(0)}jt.prototype.pause=function(){return yt("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(yt("pause"),this._readableState.flowing=!1,this.emit("pause")),this};function Fy(e){var t=e._readableState;for(yt("flow",t.flowing);t.flowing&&e.read()!==null;);}jt.prototype.wrap=function(e){var t=this,r=this._readableState,i=!1;e.on("end",function(){if(yt("wrapped end"),r.decoder&&!r.ended){var a=r.decoder.end();a&&a.length&&t.push(a)}t.push(null)}),e.on("data",function(a){if(yt("wrapped data"),r.decoder&&(a=r.decoder.write(a)),!(r.objectMode&&a==null)&&!(!r.objectMode&&(!a||!a.length))){var s=t.push(a);s||(i=!0,e.pause())}});for(var n in e)this[n]===void 0&&typeof e[n]=="function"&&(this[n]=(function(a){return function(){return e[a].apply(e,arguments)}})(n));for(var o=0;o<Dy.length;o++)e.on(Dy[o],this.emit.bind(this,Dy[o]));return this._read=function(a){yt("wrapped _read",a),i&&(i=!1,e.resume())},this};Object.defineProperty(jt.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});jt._fromList=BA;function BA(e,t){if(t.length===0)return null;var r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.head.data:r=t.buffer.concat(t.length),t.buffer.clear()):r=Nj(e,t.buffer,t.decoder),r}function Nj(e,t,r){var i;return e<t.head.data.length?(i=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):e===t.head.data.length?i=t.shift():i=r?Cj(e,t):Lj(e,t),i}function Cj(e,t){var r=t.head,i=1,n=r.data;for(e-=n.length;r=r.next;){var o=r.data,a=e>o.length?o.length:e;if(a===o.length?n+=o:n+=o.slice(0,e),e-=a,e===0){a===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}function Lj(e,t){var r=ul.allocUnsafe(e),i=t.head,n=1;for(i.data.copy(r),e-=i.data.length;i=i.next;){var o=i.data,a=e>o.length?o.length:e;if(o.copy(r,r.length-e,0,a),e-=a,e===0){a===o.length?(++n,i.next?t.head=i.next:t.head=t.tail=null):(t.head=i,i.data=o.slice(a));break}++n}return t.length-=n,r}function qy(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,lc.nextTick(Mj,t,e))}function Mj(e,t){!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function NA(e,t){for(var r=0,i=e.length;r<i;r++)if(e[r]===t)return r;return-1}});var jy=T((Fie,DA)=>{"use strict";g();DA.exports=Yo;var Pp=js(),MA=Object.create(uc());MA.inherits=Rt();MA.inherits(Yo,Pp);function Dj(e,t){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(!i)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,t!=null&&this.push(t),i(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}function Yo(e){if(!(this instanceof Yo))return new Yo(e);Pp.call(this,e),this._transformState={afterTransform:Dj.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&(typeof e.transform=="function"&&(this._transform=e.transform),typeof e.flush=="function"&&(this._flush=e.flush)),this.on("prefinish",Hj)}function Hj(){var e=this;typeof this._flush=="function"?this._flush(function(t,r){LA(e,t,r)}):LA(this,null,null)}Yo.prototype.push=function(e,t){return this._transformState.needTransform=!1,Pp.prototype.push.call(this,e,t)};Yo.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")};Yo.prototype._write=function(e,t,r){var i=this._transformState;if(i.writecb=r,i.writechunk=e,i.writeencoding=t,!i.transforming){var n=this._readableState;(i.needTransform||n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}};Yo.prototype._read=function(e){var t=this._transformState;t.writechunk!==null&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0};Yo.prototype._destroy=function(e,t){var r=this;Pp.prototype._destroy.call(this,e,function(i){t(i),r.emit("close")})};function LA(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}});var FA=T((zie,UA)=>{"use strict";g();UA.exports=cl;var HA=jy(),qA=Object.create(uc());qA.inherits=Rt();qA.inherits(cl,HA);function cl(e){if(!(this instanceof cl))return new cl(e);HA.call(this,e)}cl.prototype._transform=function(e,t,r){r(null,e)}});var zA=T((ro,jA)=>{g();ro=jA.exports=Ly();ro.Stream=ro;ro.Readable=ro;ro.Writable=By();ro.Duplex=js();ro.Transform=jy();ro.PassThrough=FA()});var GA=T((Gie,VA)=>{"use strict";g();var qj=ii().Buffer,Uj=rA(),KA=zA().Transform,Fj=Rt();function Da(e){KA.call(this),this._block=qj.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}Fj(Da,KA);Da.prototype._transform=function(e,t,r){var i=null;try{this.update(e,t)}catch(n){i=n}r(i)};Da.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)};Da.prototype.update=function(e,t){if(this._finalized)throw new Error("Digest already called");for(var r=Uj(e,t),i=this._block,n=0;this._blockOffset+r.length-n>=this._blockSize;){for(var o=this._blockOffset;o<this._blockSize;)i[o]=r[n],o+=1,n+=1;this._update(),this._blockOffset=0}for(;n<r.length;)i[this._blockOffset]=r[n],this._blockOffset+=1,n+=1;for(var a=0,s=r.length*8;s>0;++a)this._length[a]+=s,s=this._length[a]/4294967296|0,s>0&&(this._length[a]-=4294967296*s);return this};Da.prototype._update=function(){throw new Error("_update is not implemented")};Da.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();e!==void 0&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t};Da.prototype._digest=function(){throw new Error("_digest is not implemented")};VA.exports=Da});var Ky=T((Yie,QA)=>{"use strict";g();var zy=rr().Buffer,jj=Rt(),JA=GA(),zj=new Array(16),fl=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],ll=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],hl=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],dl=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],pl=[0,1518500249,1859775393,2400959708,2840853838],gl=[1352829926,1548603684,1836072691,2053994217,0];function zs(e,t){return e<<t|e>>>32-t}function WA(e,t,r,i,n,o,a,s){return zs(e+(t^r^i)+o+a|0,s)+n|0}function YA(e,t,r,i,n,o,a,s){return zs(e+(t&r|~t&i)+o+a|0,s)+n|0}function ZA(e,t,r,i,n,o,a,s){return zs(e+((t|~r)^i)+o+a|0,s)+n|0}function $A(e,t,r,i,n,o,a,s){return zs(e+(t&i|r&~i)+o+a|0,s)+n|0}function XA(e,t,r,i,n,o,a,s){return zs(e+(t^(r|~i))+o+a|0,s)+n|0}function Rp(){JA.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}jj(Rp,JA);Rp.prototype._update=function(){for(var e=zj,t=0;t<16;++t)e[t]=this._block.readInt32LE(t*4);for(var r=this._a|0,i=this._b|0,n=this._c|0,o=this._d|0,a=this._e|0,s=this._a|0,u=this._b|0,c=this._c|0,l=this._d|0,p=this._e|0,d=0;d<80;d+=1){var v,_;d<16?(v=WA(r,i,n,o,a,e[fl[d]],pl[0],hl[d]),_=XA(s,u,c,l,p,e[ll[d]],gl[0],dl[d])):d<32?(v=YA(r,i,n,o,a,e[fl[d]],pl[1],hl[d]),_=$A(s,u,c,l,p,e[ll[d]],gl[1],dl[d])):d<48?(v=ZA(r,i,n,o,a,e[fl[d]],pl[2],hl[d]),_=ZA(s,u,c,l,p,e[ll[d]],gl[2],dl[d])):d<64?(v=$A(r,i,n,o,a,e[fl[d]],pl[3],hl[d]),_=YA(s,u,c,l,p,e[ll[d]],gl[3],dl[d])):(v=XA(r,i,n,o,a,e[fl[d]],pl[4],hl[d]),_=WA(s,u,c,l,p,e[ll[d]],gl[4],dl[d])),r=a,a=o,o=zs(n,10),n=i,i=v,s=p,p=l,l=zs(c,10),c=u,u=_}var I=this._b+n+l|0;this._b=this._c+o+p|0,this._c=this._d+a+s|0,this._d=this._e+r+u|0,this._e=this._a+i+c|0,this._a=I};Rp.prototype._digest=function(){this._block[this._blockOffset]=128,this._blockOffset+=1,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=zy.alloc?zy.alloc(20):new zy(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e};QA.exports=Rp});var Ks=T(($ie,eT)=>{"use strict";g();var Kj=ii().Buffer,Vj=yp();function kp(e,t){this._block=Kj.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}kp.prototype.update=function(e,t){e=Vj(e,t||"utf8");for(var r=this._block,i=this._blockSize,n=e.length,o=this._len,a=0;a<n;){for(var s=o%i,u=Math.min(n-a,i-s),c=0;c<u;c++)r[s+c]=e[a+c];o+=u,a+=u,o%i===0&&this._update(r)}return this._len+=n,this};kp.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=this._len*8;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var i=(r&4294967295)>>>0,n=(r-i)/4294967296;this._block.writeUInt32BE(n,this._blockSize-8),this._block.writeUInt32BE(i,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o};kp.prototype._update=function(){throw new Error("_update must be implemented by subclass")};eT.exports=kp});var iT=T((Jie,rT)=>{"use strict";g();var Gj=Rt(),tT=Ks(),Wj=ii().Buffer,Yj=[1518500249,1859775393,-1894007588,-899497514],Zj=new Array(80);function ml(){this.init(),this._w=Zj,tT.call(this,64,56)}Gj(ml,tT);ml.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function $j(e){return e<<5|e>>>27}function Xj(e){return e<<30|e>>>2}function Jj(e,t,r,i){return e===0?t&r|~t&i:e===2?t&r|t&i|r&i:t^r^i}ml.prototype._update=function(e){for(var t=this._w,r=this._a|0,i=this._b|0,n=this._c|0,o=this._d|0,a=this._e|0,s=0;s<16;++s)t[s]=e.readInt32BE(s*4);for(;s<80;++s)t[s]=t[s-3]^t[s-8]^t[s-14]^t[s-16];for(var u=0;u<80;++u){var c=~~(u/20),l=$j(r)+Jj(c,i,n,o)+a+t[u]+Yj[c]|0;a=o,o=n,n=Xj(i),i=r,r=l}this._a=r+this._a|0,this._b=i+this._b|0,this._c=n+this._c|0,this._d=o+this._d|0,this._e=a+this._e|0};ml.prototype._hash=function(){var e=Wj.allocUnsafe(20);return e.writeInt32BE(this._a|0,0),e.writeInt32BE(this._b|0,4),e.writeInt32BE(this._c|0,8),e.writeInt32BE(this._d|0,12),e.writeInt32BE(this._e|0,16),e};rT.exports=ml});var aT=T((ene,oT)=>{"use strict";g();var Qj=Rt(),nT=Ks(),ez=ii().Buffer,tz=[1518500249,1859775393,-1894007588,-899497514],rz=new Array(80);function vl(){this.init(),this._w=rz,nT.call(this,64,56)}Qj(vl,nT);vl.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function iz(e){return e<<1|e>>>31}function nz(e){return e<<5|e>>>27}function oz(e){return e<<30|e>>>2}function az(e,t,r,i){return e===0?t&r|~t&i:e===2?t&r|t&i|r&i:t^r^i}vl.prototype._update=function(e){for(var t=this._w,r=this._a|0,i=this._b|0,n=this._c|0,o=this._d|0,a=this._e|0,s=0;s<16;++s)t[s]=e.readInt32BE(s*4);for(;s<80;++s)t[s]=iz(t[s-3]^t[s-8]^t[s-14]^t[s-16]);for(var u=0;u<80;++u){var c=~~(u/20),l=nz(r)+az(c,i,n,o)+a+t[u]+tz[c]|0;a=o,o=n,n=oz(i),i=r,r=l}this._a=r+this._a|0,this._b=i+this._b|0,this._c=n+this._c|0,this._d=o+this._d|0,this._e=a+this._e|0};vl.prototype._hash=function(){var e=ez.allocUnsafe(20);return e.writeInt32BE(this._a|0,0),e.writeInt32BE(this._b|0,4),e.writeInt32BE(this._c|0,8),e.writeInt32BE(this._d|0,12),e.writeInt32BE(this._e|0,16),e};oT.exports=vl});var Vy=T((rne,uT)=>{"use strict";g();var sz=Rt(),sT=Ks(),uz=ii().Buffer,cz=[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],fz=new Array(64);function yl(){this.init(),this._w=fz,sT.call(this,64,56)}sz(yl,sT);yl.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function lz(e,t,r){return r^e&(t^r)}function hz(e,t,r){return e&t|r&(e|t)}function dz(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function pz(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function gz(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}function mz(e){return(e>>>17|e<<15)^(e>>>19|e<<13)^e>>>10}yl.prototype._update=function(e){for(var t=this._w,r=this._a|0,i=this._b|0,n=this._c|0,o=this._d|0,a=this._e|0,s=this._f|0,u=this._g|0,c=this._h|0,l=0;l<16;++l)t[l]=e.readInt32BE(l*4);for(;l<64;++l)t[l]=mz(t[l-2])+t[l-7]+gz(t[l-15])+t[l-16]|0;for(var p=0;p<64;++p){var d=c+pz(a)+lz(a,s,u)+cz[p]+t[p]|0,v=dz(r)+hz(r,i,n)|0;c=u,u=s,s=a,a=o+d|0,o=n,n=i,i=r,r=d+v|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=n+this._c|0,this._d=o+this._d|0,this._e=a+this._e|0,this._f=s+this._f|0,this._g=u+this._g|0,this._h=c+this._h|0};yl.prototype._hash=function(){var e=uz.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e};uT.exports=yl});var fT=T((nne,cT)=>{"use strict";g();var vz=Rt(),yz=Vy(),bz=Ks(),_z=ii().Buffer,wz=new Array(64);function Bp(){this.init(),this._w=wz,bz.call(this,64,56)}vz(Bp,yz);Bp.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this};Bp.prototype._hash=function(){var e=_z.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e};cT.exports=Bp});var Gy=T((ane,vT)=>{"use strict";g();var Sz=Rt(),mT=Ks(),Ez=ii().Buffer,lT=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],xz=new Array(160);function bl(){this.init(),this._w=xz,mT.call(this,128,112)}Sz(bl,mT);bl.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function hT(e,t,r){return r^e&(t^r)}function dT(e,t,r){return e&t|r&(e|t)}function pT(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function gT(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function Oz(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function Iz(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function Az(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function Tz(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function $r(e,t){return e>>>0<t>>>0?1:0}bl.prototype._update=function(e){for(var t=this._w,r=this._ah|0,i=this._bh|0,n=this._ch|0,o=this._dh|0,a=this._eh|0,s=this._fh|0,u=this._gh|0,c=this._hh|0,l=this._al|0,p=this._bl|0,d=this._cl|0,v=this._dl|0,_=this._el|0,I=this._fl|0,R=this._gl|0,k=this._hl|0,q=0;q<32;q+=2)t[q]=e.readInt32BE(q*4),t[q+1]=e.readInt32BE(q*4+4);for(;q<160;q+=2){var z=t[q-30],A=t[q-30+1],B=Oz(z,A),M=Iz(A,z);z=t[q-4],A=t[q-4+1];var F=Az(z,A),V=Tz(A,z),Y=t[q-14],E=t[q-14+1],h=t[q-32],y=t[q-32+1],w=M+E|0,S=B+Y+$r(w,M)|0;w=w+V|0,S=S+F+$r(w,V)|0,w=w+y|0,S=S+h+$r(w,y)|0,t[q]=S,t[q+1]=w}for(var O=0;O<160;O+=2){S=t[O],w=t[O+1];var C=dT(r,i,n),D=dT(l,p,d),P=pT(r,l),m=pT(l,r),x=gT(a,_),K=gT(_,a),U=lT[O],G=lT[O+1],te=hT(a,s,u),ae=hT(_,I,R),oe=k+K|0,le=c+x+$r(oe,k)|0;oe=oe+ae|0,le=le+te+$r(oe,ae)|0,oe=oe+G|0,le=le+U+$r(oe,G)|0,oe=oe+w|0,le=le+S+$r(oe,w)|0;var he=m+D|0,ve=P+C+$r(he,m)|0;c=u,k=R,u=s,R=I,s=a,I=_,_=v+oe|0,a=o+le+$r(_,v)|0,o=n,v=d,n=i,d=p,i=r,p=l,l=oe+he|0,r=le+ve+$r(l,oe)|0}this._al=this._al+l|0,this._bl=this._bl+p|0,this._cl=this._cl+d|0,this._dl=this._dl+v|0,this._el=this._el+_|0,this._fl=this._fl+I|0,this._gl=this._gl+R|0,this._hl=this._hl+k|0,this._ah=this._ah+r+$r(this._al,l)|0,this._bh=this._bh+i+$r(this._bl,p)|0,this._ch=this._ch+n+$r(this._cl,d)|0,this._dh=this._dh+o+$r(this._dl,v)|0,this._eh=this._eh+a+$r(this._el,_)|0,this._fh=this._fh+s+$r(this._fl,I)|0,this._gh=this._gh+u+$r(this._gl,R)|0,this._hh=this._hh+c+$r(this._hl,k)|0};bl.prototype._hash=function(){var e=Ez.allocUnsafe(64);function t(r,i,n){e.writeInt32BE(r,n),e.writeInt32BE(i,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e};vT.exports=bl});var bT=T((une,yT)=>{"use strict";g();var Pz=Rt(),Rz=Gy(),kz=Ks(),Bz=ii().Buffer,Nz=new Array(160);function Np(){this.init(),this._w=Nz,kz.call(this,128,112)}Pz(Np,Rz);Np.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this};Np.prototype._hash=function(){var e=Bz.allocUnsafe(48);function t(r,i,n){e.writeInt32BE(r,n),e.writeInt32BE(i,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e};yT.exports=Np});var Wy=T((fne,Zo)=>{"use strict";g();Zo.exports=function(t){var r=t.toLowerCase(),i=Zo.exports[r];if(!i)throw new Error(r+" is not supported (we accept pull requests)");return new i};Zo.exports.sha=iT();Zo.exports.sha1=aT();Zo.exports.sha224=fT();Zo.exports.sha256=Vy();Zo.exports.sha384=bT();Zo.exports.sha512=Gy()});var Cp=T((hne,wT)=>{"use strict";g();var Cz=ii().Buffer,_T=gp().Transform,Lz=nc().StringDecoder,Mz=Rt(),Dz=yp();function On(e){_T.call(this),this.hashMode=typeof e=="string",this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}Mz(On,_T);On.prototype.update=function(e,t,r){var i=Dz(e,t),n=this._update(i);return this.hashMode?this:(r&&(n=this._toString(n,r)),n)};On.prototype.setAutoPadding=function(){};On.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")};On.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")};On.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")};On.prototype._transform=function(e,t,r){var i;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(n){i=n}finally{r(i)}};On.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)};On.prototype._finalOrDigest=function(e){var t=this.__final()||Cz.alloc(0);return e&&(t=this._toString(t,e,!0)),t};On.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new Lz(t),this._encoding=t),this._encoding!==t)throw new Error("can\u2019t switch encodings");var i=this._decoder.write(e);return r&&(i+=this._decoder.end()),i};wT.exports=On});var xT=T((pne,ET)=>{"use strict";g();var Hz=Rt(),qz=Oy(),Uz=Ky(),Fz=Wy(),ST=Cp();function Lp(e){ST.call(this,"digest"),this._hash=e}Hz(Lp,ST);Lp.prototype._update=function(e){this._hash.update(e)};Lp.prototype._final=function(){return this._hash.digest()};ET.exports=function(t){return t=t.toLowerCase(),t==="md5"?new qz:t==="rmd160"||t==="ripemd160"?new Uz:new Lp(Fz(t))}});var AT=T((mne,IT)=>{"use strict";g();var jz=Rt(),Vs=ii().Buffer,OT=Cp(),zz=Vs.alloc(128),hc=64;function Mp(e,t){OT.call(this,"digest"),typeof t=="string"&&(t=Vs.from(t)),this._alg=e,this._key=t,t.length>hc?t=e(t):t.length<hc&&(t=Vs.concat([t,zz],hc));for(var r=this._ipad=Vs.allocUnsafe(hc),i=this._opad=Vs.allocUnsafe(hc),n=0;n<hc;n++)r[n]=t[n]^54,i[n]=t[n]^92;this._hash=[r]}jz(Mp,OT);Mp.prototype._update=function(e){this._hash.push(e)};Mp.prototype._final=function(){var e=this._alg(Vs.concat(this._hash));return this._alg(Vs.concat([this._opad,e]))};IT.exports=Mp});var PT=T((yne,TT)=>{g();var Kz=Oy();TT.exports=function(e){return new Kz().update(e).digest()}});var BT=T((_ne,kT)=>{"use strict";g();var Vz=Rt(),Gz=AT(),RT=Cp(),_l=ii().Buffer,Wz=PT(),Yy=Ky(),Zy=Wy(),Yz=_l.alloc(128);function wl(e,t){RT.call(this,"digest"),typeof t=="string"&&(t=_l.from(t));var r=e==="sha512"||e==="sha384"?128:64;if(this._alg=e,this._key=t,t.length>r){var i=e==="rmd160"?new Yy:Zy(e);t=i.update(t).digest()}else t.length<r&&(t=_l.concat([t,Yz],r));for(var n=this._ipad=_l.allocUnsafe(r),o=this._opad=_l.allocUnsafe(r),a=0;a<r;a++)n[a]=t[a]^54,o[a]=t[a]^92;this._hash=e==="rmd160"?new Yy:Zy(e),this._hash.update(n)}Vz(wl,RT);wl.prototype._update=function(e){this._hash.update(e)};wl.prototype._final=function(){var e=this._hash.digest(),t=this._alg==="rmd160"?new Yy:Zy(this._alg);return t.update(this._opad).update(e).digest()};kT.exports=function(t,r){return t=t.toLowerCase(),t==="rmd160"||t==="ripemd160"?new wl("rmd160",r):t==="md5"?new Gz(Wz,r):new wl(t,r)}});var NT=T((Sne,Xy)=>{"use strict";g();var $y=65536,Zz=4294967295;function $z(){throw new Error(`Secure random number generation is not supported by this browser.
11
- Use Chrome, Firefox or Internet Explorer 11`)}var Xz=ii().Buffer,Dp=globalThis.crypto||globalThis.msCrypto;Dp&&Dp.getRandomValues?Xy.exports=Jz:Xy.exports=$z;function Jz(e,t){if(e>Zz)throw new RangeError("requested too many random bytes");var r=Xz.allocUnsafe(e);if(e>0)if(e>$y)for(var i=0;i<e;i+=$y)Dp.getRandomValues(r.slice(i,i+$y));else Dp.getRandomValues(r);return typeof t=="function"?b.default.nextTick(function(){t(null,r)}):r}});var nr=T(Hp=>{"use strict";g();Hp.createHash=xT();Hp.createHmac=BT();Hp.randomBytes=NT()});var Ki=T((Ine,LT)=>{"use strict";g();var CT=65536;function Gs(){}Gs.getRandomBuffer=function(e){var t=typeof globalThis<"u"?globalThis.crypto:void 0;if(t&&typeof t.getRandomValues=="function")return Gs._fromGetRandomValues(t,e);try{var r=nr();if(r&&typeof r.randomBytes=="function")return r.randomBytes(e)}catch{}throw new Error("bsv: no CSPRNG available in this environment (needs globalThis.crypto.getRandomValues or node crypto)")};Gs._fromGetRandomValues=function(e,t){for(var r=f.Buffer.alloc(t),i=0;i<t;i+=CT){var n=new Uint8Array(Math.min(CT,t-i));e.getRandomValues(n),f.Buffer.from(n).copy(r,i)}return r};Gs.getRandomBufferNode=function(e){var t=nr();return t.randomBytes(e)};Gs.getRandomBufferBrowser=function(e){var t=typeof globalThis<"u"?globalThis:{},r=null;if(t.crypto&&typeof t.crypto.getRandomValues=="function"?r=t.crypto:t.msCrypto&&typeof t.msCrypto.getRandomValues=="function"&&(r=t.msCrypto),!r)throw new Error("window.crypto.getRandomValues not available");return Gs._fromGetRandomValues(r,e)};LT.exports=Gs});var at=T((Tne,MT)=>{"use strict";g();var Qz=Ki(),Ht={};Ht.isArray=e=>Array.isArray(e);Ht.isNumber=e=>typeof e=="number";Ht.isObject=e=>e&&typeof e=="object";Ht.isString=e=>typeof e=="string";Ht.isUndefined=e=>typeof e>"u";Ht.isFunction=e=>typeof e=="function";Ht.isNull=e=>e===null;Ht.isDate=e=>e instanceof Date;Ht.extend=(e,t)=>Object.assign(e,t);Ht.noop=()=>{};Ht.every=(e,t)=>e.every(t||(r=>r));Ht.map=(e,t)=>Array.from(e).map(t||(r=>r));Ht.includes=(e,t)=>e.includes(t);Ht.each=(e,t)=>e.forEach(t);Ht.clone=e=>Object.assign({},e);Ht.pick=(e,t)=>{let r={};return t.forEach(i=>{typeof e[i]<"u"&&(r[i]=e[i])}),r};Ht.values=e=>Object.values(e);Ht.filter=(e,t)=>e.filter(t);Ht.reduce=(e,t,r)=>e.reduce(t,r);Ht.without=(e,t)=>e.filter(r=>r!==t);Ht.shuffle=e=>{let t=e.slice(0);for(let r=t.length-1;r>0;r--){let n=Qz.getRandomBuffer(4).readUInt32BE(0)/4294967296,o=Math.floor(n*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t};Ht.difference=(e,t)=>e.filter(r=>!t.includes(r));Ht.findIndex=(e,t)=>e.findIndex(t);Ht.some=(e,t)=>e.some(t);Ht.range=e=>[...Array(e).keys()];MT.exports=Ht});var pc=T((Rne,qT)=>{"use strict";g();var Jy=at(),DT=rr(),dc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".split(""),HT={};for(Sl=0;Sl<dc.length;Sl++)HT[dc[Sl]]=Sl;var Sl;function eK(e){if(e.length===0)return"";var t=[0],r,i,n;for(r=0;r<e.length;r++){for(i=0,n=e[r];i<t.length;i++)n+=t[i]<<8,t[i]=n%58,n=n/58|0;for(;n>0;)t.push(n%58),n=n/58|0}var o="";for(r=0;e[r]===0&&r<e.length-1;r++)o+=dc[0];for(r=t.length-1;r>=0;r--)o+=dc[t[r]];return o}function tK(e){if(e.length===0)return f.Buffer.alloc(0);var t=[0],r,i,n;for(r=0;r<e.length;r++){var o=HT[e[r]];if(o===void 0)throw new Error("Non-base58 character");for(i=0,n=o;i<t.length;i++)n+=t[i]*58,t[i]=n&255,n>>=8;for(;n>0;)t.push(n&255),n>>=8}for(r=0;e[r]===dc[0]&&r<e.length-1;r++)t.push(0);return f.Buffer.from(t.reverse())}var Xr=function e(t){if(!(this instanceof e))return new e(t);if(f.Buffer.isBuffer(t)){var r=t;this.fromBuffer(r)}else if(typeof t=="string"){var i=t;this.fromString(i)}};Xr.validCharacters=function(t){return DT.Buffer.isBuffer(t)&&(t=t.toString()),Jy.every(Jy.map(t,function(r){return Jy.includes(dc,r)}))};Xr.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this};Xr.encode=function(e){if(!DT.Buffer.isBuffer(e))throw new Error("Input should be a buffer");return eK(e)};Xr.decode=function(e){if(typeof e!="string")throw new Error("Input should be a string");return tK(e)};Xr.prototype.fromBuffer=function(e){return this.buf=e,this};Xr.fromBuffer=function(e){return new Xr().fromBuffer(e)};Xr.fromHex=function(e){return Xr.fromBuffer(f.Buffer.from(e,"hex"))};Xr.prototype.fromString=function(e){var t=Xr.decode(e);return this.buf=t,this};Xr.fromString=function(e){return new Xr().fromString(e)};Xr.prototype.toBuffer=function(){return this.buf};Xr.prototype.toHex=function(){return this.toBuffer().toString("hex")};Xr.prototype.toString=function(){return Xr.encode(this.buf)};qT.exports=Xr});var qp=T((UT,Qy)=>{g();(function(e,t){"use strict";function r(E,h){if(!E)throw new Error(h||"Assertion failed")}function i(E,h){E.super_=h;var y=function(){};y.prototype=h.prototype,E.prototype=new y,E.prototype.constructor=E}function n(E,h,y){if(n.isBN(E))return E;this.negative=0,this.words=null,this.length=0,this.red=null,E!==null&&((h==="le"||h==="be")&&(y=h,h=10),this._init(E||0,h||10,y||"be"))}typeof e=="object"?e.exports=n:t.BN=n,n.BN=n,n.wordSize=26;var o;try{typeof window<"u"&&typeof window.Buffer<"u"?o=window.Buffer:o=rr().Buffer}catch{}n.isBN=function(h){return h instanceof n?!0:h!==null&&typeof h=="object"&&h.constructor.wordSize===n.wordSize&&Array.isArray(h.words)},n.max=function(h,y){return h.cmp(y)>0?h:y},n.min=function(h,y){return h.cmp(y)<0?h:y},n.prototype._init=function(h,y,w){if(typeof h=="number")return this._initNumber(h,y,w);if(typeof h=="object")return this._initArray(h,y,w);y==="hex"&&(y=16),r(y===(y|0)&&y>=2&&y<=36),h=h.toString().replace(/\s+/g,"");var S=0;h[0]==="-"&&(S++,this.negative=1),S<h.length&&(y===16?this._parseHex(h,S,w):(this._parseBase(h,y,S),w==="le"&&this._initArray(this.toArray(),y,w)))},n.prototype._initNumber=function(h,y,w){h<0&&(this.negative=1,h=-h),h<67108864?(this.words=[h&67108863],this.length=1):h<4503599627370496?(this.words=[h&67108863,h/67108864&67108863],this.length=2):(r(h<9007199254740992),this.words=[h&67108863,h/67108864&67108863,1],this.length=3),w==="le"&&this._initArray(this.toArray(),y,w)},n.prototype._initArray=function(h,y,w){if(r(typeof h.length=="number"),h.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(h.length/3),this.words=new Array(this.length);for(var S=0;S<this.length;S++)this.words[S]=0;var O,C,D=0;if(w==="be")for(S=h.length-1,O=0;S>=0;S-=3)C=h[S]|h[S-1]<<8|h[S-2]<<16,this.words[O]|=C<<D&67108863,this.words[O+1]=C>>>26-D&67108863,D+=24,D>=26&&(D-=26,O++);else if(w==="le")for(S=0,O=0;S<h.length;S+=3)C=h[S]|h[S+1]<<8|h[S+2]<<16,this.words[O]|=C<<D&67108863,this.words[O+1]=C>>>26-D&67108863,D+=24,D>=26&&(D-=26,O++);return this.strip()};function a(E,h){var y=E.charCodeAt(h);return y>=65&&y<=70?y-55:y>=97&&y<=102?y-87:y-48&15}function s(E,h,y){var w=a(E,y);return y-1>=h&&(w|=a(E,y-1)<<4),w}n.prototype._parseHex=function(h,y,w){this.length=Math.ceil((h.length-y)/6),this.words=new Array(this.length);for(var S=0;S<this.length;S++)this.words[S]=0;var O=0,C=0,D;if(w==="be")for(S=h.length-1;S>=y;S-=2)D=s(h,y,S)<<O,this.words[C]|=D&67108863,O>=18?(O-=18,C+=1,this.words[C]|=D>>>26):O+=8;else{var P=h.length-y;for(S=P%2===0?y+1:y;S<h.length;S+=2)D=s(h,y,S)<<O,this.words[C]|=D&67108863,O>=18?(O-=18,C+=1,this.words[C]|=D>>>26):O+=8}this.strip()};function u(E,h,y,w){for(var S=0,O=Math.min(E.length,y),C=h;C<O;C++){var D=E.charCodeAt(C)-48;S*=w,D>=49?S+=D-49+10:D>=17?S+=D-17+10:S+=D}return S}n.prototype._parseBase=function(h,y,w){this.words=[0],this.length=1;for(var S=0,O=1;O<=67108863;O*=y)S++;S--,O=O/y|0;for(var C=h.length-w,D=C%S,P=Math.min(C,C-D)+w,m=0,x=w;x<P;x+=S)m=u(h,x,x+S,y),this.imuln(O),this.words[0]+m<67108864?this.words[0]+=m:this._iaddn(m);if(D!==0){var K=1;for(m=u(h,x,h.length,y),x=0;x<D;x++)K*=y;this.imuln(K),this.words[0]+m<67108864?this.words[0]+=m:this._iaddn(m)}this.strip()},n.prototype.copy=function(h){h.words=new Array(this.length);for(var y=0;y<this.length;y++)h.words[y]=this.words[y];h.length=this.length,h.negative=this.negative,h.red=this.red},n.prototype.clone=function(){var h=new n(null);return this.copy(h),h},n.prototype._expand=function(h){for(;this.length<h;)this.words[this.length++]=0;return this},n.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];n.prototype.toString=function(h,y){h=h||10,y=y|0||1;var w;if(h===16||h==="hex"){w="";for(var S=0,O=0,C=0;C<this.length;C++){var D=this.words[C],P=((D<<S|O)&16777215).toString(16);O=D>>>24-S&16777215,S+=2,S>=26&&(S-=26,C--),O!==0||C!==this.length-1?w=c[6-P.length]+P+w:w=P+w}for(O!==0&&(w=O.toString(16)+w);w.length%y!==0;)w="0"+w;return this.negative!==0&&(w="-"+w),w}if(h===(h|0)&&h>=2&&h<=36){var m=l[h],x=p[h];w="";var K=this.clone();for(K.negative=0;!K.isZero();){var U=K.modn(x).toString(h);K=K.idivn(x),K.isZero()?w=U+w:w=c[m-U.length]+U+w}for(this.isZero()&&(w="0"+w);w.length%y!==0;)w="0"+w;return this.negative!==0&&(w="-"+w),w}r(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var h=this.words[0];return this.length===2?h+=this.words[1]*67108864:this.length===3&&this.words[2]===1?h+=4503599627370496+this.words[1]*67108864:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-h:h},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(h,y){return r(typeof o<"u"),this.toArrayLike(o,h,y)},n.prototype.toArray=function(h,y){return this.toArrayLike(Array,h,y)},n.prototype.toArrayLike=function(h,y,w){var S=this.byteLength(),O=w||Math.max(1,S);r(S<=O,"byte array longer than desired length"),r(O>0,"Requested array length <= 0"),this.strip();var C=y==="le",D=new h(O),P,m,x=this.clone();if(C){for(m=0;!x.isZero();m++)P=x.andln(255),x.iushrn(8),D[m]=P;for(;m<O;m++)D[m]=0}else{for(m=0;m<O-S;m++)D[m]=0;for(m=0;!x.isZero();m++)P=x.andln(255),x.iushrn(8),D[O-m-1]=P}return D},Math.clz32?n.prototype._countBits=function(h){return 32-Math.clz32(h)}:n.prototype._countBits=function(h){var y=h,w=0;return y>=4096&&(w+=13,y>>>=13),y>=64&&(w+=7,y>>>=7),y>=8&&(w+=4,y>>>=4),y>=2&&(w+=2,y>>>=2),w+y},n.prototype._zeroBits=function(h){if(h===0)return 26;var y=h,w=0;return(y&8191)===0&&(w+=13,y>>>=13),(y&127)===0&&(w+=7,y>>>=7),(y&15)===0&&(w+=4,y>>>=4),(y&3)===0&&(w+=2,y>>>=2),(y&1)===0&&w++,w},n.prototype.bitLength=function(){var h=this.words[this.length-1],y=this._countBits(h);return(this.length-1)*26+y};function d(E){for(var h=new Array(E.bitLength()),y=0;y<h.length;y++){var w=y/26|0,S=y%26;h[y]=(E.words[w]&1<<S)>>>S}return h}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var h=0,y=0;y<this.length;y++){var w=this._zeroBits(this.words[y]);if(h+=w,w!==26)break}return h},n.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},n.prototype.toTwos=function(h){return this.negative!==0?this.abs().inotn(h).iaddn(1):this.clone()},n.prototype.fromTwos=function(h){return this.testn(h-1)?this.notn(h).iaddn(1).ineg():this.clone()},n.prototype.isNeg=function(){return this.negative!==0},n.prototype.neg=function(){return this.clone().ineg()},n.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},n.prototype.iuor=function(h){for(;this.length<h.length;)this.words[this.length++]=0;for(var y=0;y<h.length;y++)this.words[y]=this.words[y]|h.words[y];return this.strip()},n.prototype.ior=function(h){return r((this.negative|h.negative)===0),this.iuor(h)},n.prototype.or=function(h){return this.length>h.length?this.clone().ior(h):h.clone().ior(this)},n.prototype.uor=function(h){return this.length>h.length?this.clone().iuor(h):h.clone().iuor(this)},n.prototype.iuand=function(h){var y;this.length>h.length?y=h:y=this;for(var w=0;w<y.length;w++)this.words[w]=this.words[w]&h.words[w];return this.length=y.length,this.strip()},n.prototype.iand=function(h){return r((this.negative|h.negative)===0),this.iuand(h)},n.prototype.and=function(h){return this.length>h.length?this.clone().iand(h):h.clone().iand(this)},n.prototype.uand=function(h){return this.length>h.length?this.clone().iuand(h):h.clone().iuand(this)},n.prototype.iuxor=function(h){var y,w;this.length>h.length?(y=this,w=h):(y=h,w=this);for(var S=0;S<w.length;S++)this.words[S]=y.words[S]^w.words[S];if(this!==y)for(;S<y.length;S++)this.words[S]=y.words[S];return this.length=y.length,this.strip()},n.prototype.ixor=function(h){return r((this.negative|h.negative)===0),this.iuxor(h)},n.prototype.xor=function(h){return this.length>h.length?this.clone().ixor(h):h.clone().ixor(this)},n.prototype.uxor=function(h){return this.length>h.length?this.clone().iuxor(h):h.clone().iuxor(this)},n.prototype.inotn=function(h){r(typeof h=="number"&&h>=0);var y=Math.ceil(h/26)|0,w=h%26;this._expand(y),w>0&&y--;for(var S=0;S<y;S++)this.words[S]=~this.words[S]&67108863;for(w>0&&(this.words[S]=~this.words[S]&67108863>>26-w,S++);S<this.length;S++)this.words[S]=0;return this.strip()},n.prototype.notn=function(h){return this.clone().inotn(h)},n.prototype.setn=function(h,y){r(typeof h=="number"&&h>=0);var w=h/26|0,S=h%26;return this._expand(w+1),y?this.words[w]=this.words[w]|1<<S:this.words[w]=this.words[w]&~(1<<S),this.strip()},n.prototype.iadd=function(h){var y;if(this.negative!==0&&h.negative===0)return this.negative=0,y=this.isub(h),this.negative^=1,this._normSign();if(this.negative===0&&h.negative!==0)return h.negative=0,y=this.isub(h),h.negative=1,y._normSign();var w,S;this.length>h.length?(w=this,S=h):(w=h,S=this);for(var O=0,C=0;C<S.length;C++)y=(w.words[C]|0)+(S.words[C]|0)+O,this.words[C]=y&67108863,O=y>>>26;for(;O!==0&&C<w.length;C++)y=(w.words[C]|0)+O,this.words[C]=y&67108863,O=y>>>26;if(this.length=w.length,O!==0)this.words[this.length]=O,this.length++;else if(w!==this)for(;C<w.length;C++)this.words[C]=w.words[C];return this},n.prototype.add=function(h){var y;return h.negative!==0&&this.negative===0?(h.negative=0,y=this.sub(h),h.negative^=1,y):h.negative===0&&this.negative!==0?(this.negative=0,y=h.sub(this),this.negative=1,y):this.length>h.length?this.clone().iadd(h):h.clone().iadd(this)},n.prototype.isub=function(h){if(h.negative!==0){h.negative=0;var y=this.iadd(h);return h.negative=1,y._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(h),this.negative=1,this._normSign();var w=this.cmp(h);if(w===0)return this.negative=0,this.length=1,this.words[0]=0,this;var S,O;w>0?(S=this,O=h):(S=h,O=this);for(var C=0,D=0;D<O.length;D++)y=(S.words[D]|0)-(O.words[D]|0)+C,C=y>>26,this.words[D]=y&67108863;for(;C!==0&&D<S.length;D++)y=(S.words[D]|0)+C,C=y>>26,this.words[D]=y&67108863;if(C===0&&D<S.length&&S!==this)for(;D<S.length;D++)this.words[D]=S.words[D];return this.length=Math.max(this.length,D),S!==this&&(this.negative=1),this.strip()},n.prototype.sub=function(h){return this.clone().isub(h)};function v(E,h,y){y.negative=h.negative^E.negative;var w=E.length+h.length|0;y.length=w,w=w-1|0;var S=E.words[0]|0,O=h.words[0]|0,C=S*O,D=C&67108863,P=C/67108864|0;y.words[0]=D;for(var m=1;m<w;m++){for(var x=P>>>26,K=P&67108863,U=Math.min(m,h.length-1),G=Math.max(0,m-E.length+1);G<=U;G++){var te=m-G|0;S=E.words[te]|0,O=h.words[G]|0,C=S*O+K,x+=C/67108864|0,K=C&67108863}y.words[m]=K|0,P=x|0}return P!==0?y.words[m]=P|0:y.length--,y.strip()}var _=function(h,y,w){var S=h.words,O=y.words,C=w.words,D=0,P,m,x,K=S[0]|0,U=K&8191,G=K>>>13,te=S[1]|0,ae=te&8191,oe=te>>>13,le=S[2]|0,he=le&8191,ve=le>>>13,je=S[3]|0,be=je&8191,_e=je>>>13,We=S[4]|0,Pe=We&8191,Me=We>>>13,rt=S[5]|0,Be=rt&8191,vt=rt>>>13,ui=S[6]|0,Et=ui&8191,_t=ui>>>13,Yn=S[7]|0,Lt=Yn&8191,N=Yn>>>13,W=S[8]|0,X=W&8191,ie=W>>>13,pe=S[9]|0,se=pe&8191,me=pe>>>13,ge=O[0]|0,ke=ge&8191,Oe=ge>>>13,Ye=O[1]|0,Ze=Ye&8191,Pt=Ye>>>13,Mt=O[2]|0,$e=Mt&8191,Ee=Mt>>>13,Jt=O[3]|0,wt=Jt&8191,Ft=Jt>>>13,Hu=O[4]|0,Dt=Hu&8191,gr=Hu>>>13,wE=O[5]|0,mr=wE&8191,vr=wE>>>13,SE=O[6]|0,yr=SE&8191,br=SE>>>13,EE=O[7]|0,_r=EE&8191,wr=EE>>>13,xE=O[8]|0,Sr=xE&8191,Er=xE>>>13,OE=O[9]|0,xr=OE&8191,Or=OE>>>13;w.negative=h.negative^y.negative,w.length=19,P=Math.imul(U,ke),m=Math.imul(U,Oe),m=m+Math.imul(G,ke)|0,x=Math.imul(G,Oe);var Hv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Hv>>>26)|0,Hv&=67108863,P=Math.imul(ae,ke),m=Math.imul(ae,Oe),m=m+Math.imul(oe,ke)|0,x=Math.imul(oe,Oe),P=P+Math.imul(U,Ze)|0,m=m+Math.imul(U,Pt)|0,m=m+Math.imul(G,Ze)|0,x=x+Math.imul(G,Pt)|0;var qv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(qv>>>26)|0,qv&=67108863,P=Math.imul(he,ke),m=Math.imul(he,Oe),m=m+Math.imul(ve,ke)|0,x=Math.imul(ve,Oe),P=P+Math.imul(ae,Ze)|0,m=m+Math.imul(ae,Pt)|0,m=m+Math.imul(oe,Ze)|0,x=x+Math.imul(oe,Pt)|0,P=P+Math.imul(U,$e)|0,m=m+Math.imul(U,Ee)|0,m=m+Math.imul(G,$e)|0,x=x+Math.imul(G,Ee)|0;var Uv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Uv>>>26)|0,Uv&=67108863,P=Math.imul(be,ke),m=Math.imul(be,Oe),m=m+Math.imul(_e,ke)|0,x=Math.imul(_e,Oe),P=P+Math.imul(he,Ze)|0,m=m+Math.imul(he,Pt)|0,m=m+Math.imul(ve,Ze)|0,x=x+Math.imul(ve,Pt)|0,P=P+Math.imul(ae,$e)|0,m=m+Math.imul(ae,Ee)|0,m=m+Math.imul(oe,$e)|0,x=x+Math.imul(oe,Ee)|0,P=P+Math.imul(U,wt)|0,m=m+Math.imul(U,Ft)|0,m=m+Math.imul(G,wt)|0,x=x+Math.imul(G,Ft)|0;var Fv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Fv>>>26)|0,Fv&=67108863,P=Math.imul(Pe,ke),m=Math.imul(Pe,Oe),m=m+Math.imul(Me,ke)|0,x=Math.imul(Me,Oe),P=P+Math.imul(be,Ze)|0,m=m+Math.imul(be,Pt)|0,m=m+Math.imul(_e,Ze)|0,x=x+Math.imul(_e,Pt)|0,P=P+Math.imul(he,$e)|0,m=m+Math.imul(he,Ee)|0,m=m+Math.imul(ve,$e)|0,x=x+Math.imul(ve,Ee)|0,P=P+Math.imul(ae,wt)|0,m=m+Math.imul(ae,Ft)|0,m=m+Math.imul(oe,wt)|0,x=x+Math.imul(oe,Ft)|0,P=P+Math.imul(U,Dt)|0,m=m+Math.imul(U,gr)|0,m=m+Math.imul(G,Dt)|0,x=x+Math.imul(G,gr)|0;var jv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(jv>>>26)|0,jv&=67108863,P=Math.imul(Be,ke),m=Math.imul(Be,Oe),m=m+Math.imul(vt,ke)|0,x=Math.imul(vt,Oe),P=P+Math.imul(Pe,Ze)|0,m=m+Math.imul(Pe,Pt)|0,m=m+Math.imul(Me,Ze)|0,x=x+Math.imul(Me,Pt)|0,P=P+Math.imul(be,$e)|0,m=m+Math.imul(be,Ee)|0,m=m+Math.imul(_e,$e)|0,x=x+Math.imul(_e,Ee)|0,P=P+Math.imul(he,wt)|0,m=m+Math.imul(he,Ft)|0,m=m+Math.imul(ve,wt)|0,x=x+Math.imul(ve,Ft)|0,P=P+Math.imul(ae,Dt)|0,m=m+Math.imul(ae,gr)|0,m=m+Math.imul(oe,Dt)|0,x=x+Math.imul(oe,gr)|0,P=P+Math.imul(U,mr)|0,m=m+Math.imul(U,vr)|0,m=m+Math.imul(G,mr)|0,x=x+Math.imul(G,vr)|0;var zv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(zv>>>26)|0,zv&=67108863,P=Math.imul(Et,ke),m=Math.imul(Et,Oe),m=m+Math.imul(_t,ke)|0,x=Math.imul(_t,Oe),P=P+Math.imul(Be,Ze)|0,m=m+Math.imul(Be,Pt)|0,m=m+Math.imul(vt,Ze)|0,x=x+Math.imul(vt,Pt)|0,P=P+Math.imul(Pe,$e)|0,m=m+Math.imul(Pe,Ee)|0,m=m+Math.imul(Me,$e)|0,x=x+Math.imul(Me,Ee)|0,P=P+Math.imul(be,wt)|0,m=m+Math.imul(be,Ft)|0,m=m+Math.imul(_e,wt)|0,x=x+Math.imul(_e,Ft)|0,P=P+Math.imul(he,Dt)|0,m=m+Math.imul(he,gr)|0,m=m+Math.imul(ve,Dt)|0,x=x+Math.imul(ve,gr)|0,P=P+Math.imul(ae,mr)|0,m=m+Math.imul(ae,vr)|0,m=m+Math.imul(oe,mr)|0,x=x+Math.imul(oe,vr)|0,P=P+Math.imul(U,yr)|0,m=m+Math.imul(U,br)|0,m=m+Math.imul(G,yr)|0,x=x+Math.imul(G,br)|0;var Kv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Kv>>>26)|0,Kv&=67108863,P=Math.imul(Lt,ke),m=Math.imul(Lt,Oe),m=m+Math.imul(N,ke)|0,x=Math.imul(N,Oe),P=P+Math.imul(Et,Ze)|0,m=m+Math.imul(Et,Pt)|0,m=m+Math.imul(_t,Ze)|0,x=x+Math.imul(_t,Pt)|0,P=P+Math.imul(Be,$e)|0,m=m+Math.imul(Be,Ee)|0,m=m+Math.imul(vt,$e)|0,x=x+Math.imul(vt,Ee)|0,P=P+Math.imul(Pe,wt)|0,m=m+Math.imul(Pe,Ft)|0,m=m+Math.imul(Me,wt)|0,x=x+Math.imul(Me,Ft)|0,P=P+Math.imul(be,Dt)|0,m=m+Math.imul(be,gr)|0,m=m+Math.imul(_e,Dt)|0,x=x+Math.imul(_e,gr)|0,P=P+Math.imul(he,mr)|0,m=m+Math.imul(he,vr)|0,m=m+Math.imul(ve,mr)|0,x=x+Math.imul(ve,vr)|0,P=P+Math.imul(ae,yr)|0,m=m+Math.imul(ae,br)|0,m=m+Math.imul(oe,yr)|0,x=x+Math.imul(oe,br)|0,P=P+Math.imul(U,_r)|0,m=m+Math.imul(U,wr)|0,m=m+Math.imul(G,_r)|0,x=x+Math.imul(G,wr)|0;var Vv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Vv>>>26)|0,Vv&=67108863,P=Math.imul(X,ke),m=Math.imul(X,Oe),m=m+Math.imul(ie,ke)|0,x=Math.imul(ie,Oe),P=P+Math.imul(Lt,Ze)|0,m=m+Math.imul(Lt,Pt)|0,m=m+Math.imul(N,Ze)|0,x=x+Math.imul(N,Pt)|0,P=P+Math.imul(Et,$e)|0,m=m+Math.imul(Et,Ee)|0,m=m+Math.imul(_t,$e)|0,x=x+Math.imul(_t,Ee)|0,P=P+Math.imul(Be,wt)|0,m=m+Math.imul(Be,Ft)|0,m=m+Math.imul(vt,wt)|0,x=x+Math.imul(vt,Ft)|0,P=P+Math.imul(Pe,Dt)|0,m=m+Math.imul(Pe,gr)|0,m=m+Math.imul(Me,Dt)|0,x=x+Math.imul(Me,gr)|0,P=P+Math.imul(be,mr)|0,m=m+Math.imul(be,vr)|0,m=m+Math.imul(_e,mr)|0,x=x+Math.imul(_e,vr)|0,P=P+Math.imul(he,yr)|0,m=m+Math.imul(he,br)|0,m=m+Math.imul(ve,yr)|0,x=x+Math.imul(ve,br)|0,P=P+Math.imul(ae,_r)|0,m=m+Math.imul(ae,wr)|0,m=m+Math.imul(oe,_r)|0,x=x+Math.imul(oe,wr)|0,P=P+Math.imul(U,Sr)|0,m=m+Math.imul(U,Er)|0,m=m+Math.imul(G,Sr)|0,x=x+Math.imul(G,Er)|0;var Gv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Gv>>>26)|0,Gv&=67108863,P=Math.imul(se,ke),m=Math.imul(se,Oe),m=m+Math.imul(me,ke)|0,x=Math.imul(me,Oe),P=P+Math.imul(X,Ze)|0,m=m+Math.imul(X,Pt)|0,m=m+Math.imul(ie,Ze)|0,x=x+Math.imul(ie,Pt)|0,P=P+Math.imul(Lt,$e)|0,m=m+Math.imul(Lt,Ee)|0,m=m+Math.imul(N,$e)|0,x=x+Math.imul(N,Ee)|0,P=P+Math.imul(Et,wt)|0,m=m+Math.imul(Et,Ft)|0,m=m+Math.imul(_t,wt)|0,x=x+Math.imul(_t,Ft)|0,P=P+Math.imul(Be,Dt)|0,m=m+Math.imul(Be,gr)|0,m=m+Math.imul(vt,Dt)|0,x=x+Math.imul(vt,gr)|0,P=P+Math.imul(Pe,mr)|0,m=m+Math.imul(Pe,vr)|0,m=m+Math.imul(Me,mr)|0,x=x+Math.imul(Me,vr)|0,P=P+Math.imul(be,yr)|0,m=m+Math.imul(be,br)|0,m=m+Math.imul(_e,yr)|0,x=x+Math.imul(_e,br)|0,P=P+Math.imul(he,_r)|0,m=m+Math.imul(he,wr)|0,m=m+Math.imul(ve,_r)|0,x=x+Math.imul(ve,wr)|0,P=P+Math.imul(ae,Sr)|0,m=m+Math.imul(ae,Er)|0,m=m+Math.imul(oe,Sr)|0,x=x+Math.imul(oe,Er)|0,P=P+Math.imul(U,xr)|0,m=m+Math.imul(U,Or)|0,m=m+Math.imul(G,xr)|0,x=x+Math.imul(G,Or)|0;var Wv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Wv>>>26)|0,Wv&=67108863,P=Math.imul(se,Ze),m=Math.imul(se,Pt),m=m+Math.imul(me,Ze)|0,x=Math.imul(me,Pt),P=P+Math.imul(X,$e)|0,m=m+Math.imul(X,Ee)|0,m=m+Math.imul(ie,$e)|0,x=x+Math.imul(ie,Ee)|0,P=P+Math.imul(Lt,wt)|0,m=m+Math.imul(Lt,Ft)|0,m=m+Math.imul(N,wt)|0,x=x+Math.imul(N,Ft)|0,P=P+Math.imul(Et,Dt)|0,m=m+Math.imul(Et,gr)|0,m=m+Math.imul(_t,Dt)|0,x=x+Math.imul(_t,gr)|0,P=P+Math.imul(Be,mr)|0,m=m+Math.imul(Be,vr)|0,m=m+Math.imul(vt,mr)|0,x=x+Math.imul(vt,vr)|0,P=P+Math.imul(Pe,yr)|0,m=m+Math.imul(Pe,br)|0,m=m+Math.imul(Me,yr)|0,x=x+Math.imul(Me,br)|0,P=P+Math.imul(be,_r)|0,m=m+Math.imul(be,wr)|0,m=m+Math.imul(_e,_r)|0,x=x+Math.imul(_e,wr)|0,P=P+Math.imul(he,Sr)|0,m=m+Math.imul(he,Er)|0,m=m+Math.imul(ve,Sr)|0,x=x+Math.imul(ve,Er)|0,P=P+Math.imul(ae,xr)|0,m=m+Math.imul(ae,Or)|0,m=m+Math.imul(oe,xr)|0,x=x+Math.imul(oe,Or)|0;var Yv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Yv>>>26)|0,Yv&=67108863,P=Math.imul(se,$e),m=Math.imul(se,Ee),m=m+Math.imul(me,$e)|0,x=Math.imul(me,Ee),P=P+Math.imul(X,wt)|0,m=m+Math.imul(X,Ft)|0,m=m+Math.imul(ie,wt)|0,x=x+Math.imul(ie,Ft)|0,P=P+Math.imul(Lt,Dt)|0,m=m+Math.imul(Lt,gr)|0,m=m+Math.imul(N,Dt)|0,x=x+Math.imul(N,gr)|0,P=P+Math.imul(Et,mr)|0,m=m+Math.imul(Et,vr)|0,m=m+Math.imul(_t,mr)|0,x=x+Math.imul(_t,vr)|0,P=P+Math.imul(Be,yr)|0,m=m+Math.imul(Be,br)|0,m=m+Math.imul(vt,yr)|0,x=x+Math.imul(vt,br)|0,P=P+Math.imul(Pe,_r)|0,m=m+Math.imul(Pe,wr)|0,m=m+Math.imul(Me,_r)|0,x=x+Math.imul(Me,wr)|0,P=P+Math.imul(be,Sr)|0,m=m+Math.imul(be,Er)|0,m=m+Math.imul(_e,Sr)|0,x=x+Math.imul(_e,Er)|0,P=P+Math.imul(he,xr)|0,m=m+Math.imul(he,Or)|0,m=m+Math.imul(ve,xr)|0,x=x+Math.imul(ve,Or)|0;var Zv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Zv>>>26)|0,Zv&=67108863,P=Math.imul(se,wt),m=Math.imul(se,Ft),m=m+Math.imul(me,wt)|0,x=Math.imul(me,Ft),P=P+Math.imul(X,Dt)|0,m=m+Math.imul(X,gr)|0,m=m+Math.imul(ie,Dt)|0,x=x+Math.imul(ie,gr)|0,P=P+Math.imul(Lt,mr)|0,m=m+Math.imul(Lt,vr)|0,m=m+Math.imul(N,mr)|0,x=x+Math.imul(N,vr)|0,P=P+Math.imul(Et,yr)|0,m=m+Math.imul(Et,br)|0,m=m+Math.imul(_t,yr)|0,x=x+Math.imul(_t,br)|0,P=P+Math.imul(Be,_r)|0,m=m+Math.imul(Be,wr)|0,m=m+Math.imul(vt,_r)|0,x=x+Math.imul(vt,wr)|0,P=P+Math.imul(Pe,Sr)|0,m=m+Math.imul(Pe,Er)|0,m=m+Math.imul(Me,Sr)|0,x=x+Math.imul(Me,Er)|0,P=P+Math.imul(be,xr)|0,m=m+Math.imul(be,Or)|0,m=m+Math.imul(_e,xr)|0,x=x+Math.imul(_e,Or)|0;var $v=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+($v>>>26)|0,$v&=67108863,P=Math.imul(se,Dt),m=Math.imul(se,gr),m=m+Math.imul(me,Dt)|0,x=Math.imul(me,gr),P=P+Math.imul(X,mr)|0,m=m+Math.imul(X,vr)|0,m=m+Math.imul(ie,mr)|0,x=x+Math.imul(ie,vr)|0,P=P+Math.imul(Lt,yr)|0,m=m+Math.imul(Lt,br)|0,m=m+Math.imul(N,yr)|0,x=x+Math.imul(N,br)|0,P=P+Math.imul(Et,_r)|0,m=m+Math.imul(Et,wr)|0,m=m+Math.imul(_t,_r)|0,x=x+Math.imul(_t,wr)|0,P=P+Math.imul(Be,Sr)|0,m=m+Math.imul(Be,Er)|0,m=m+Math.imul(vt,Sr)|0,x=x+Math.imul(vt,Er)|0,P=P+Math.imul(Pe,xr)|0,m=m+Math.imul(Pe,Or)|0,m=m+Math.imul(Me,xr)|0,x=x+Math.imul(Me,Or)|0;var Xv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Xv>>>26)|0,Xv&=67108863,P=Math.imul(se,mr),m=Math.imul(se,vr),m=m+Math.imul(me,mr)|0,x=Math.imul(me,vr),P=P+Math.imul(X,yr)|0,m=m+Math.imul(X,br)|0,m=m+Math.imul(ie,yr)|0,x=x+Math.imul(ie,br)|0,P=P+Math.imul(Lt,_r)|0,m=m+Math.imul(Lt,wr)|0,m=m+Math.imul(N,_r)|0,x=x+Math.imul(N,wr)|0,P=P+Math.imul(Et,Sr)|0,m=m+Math.imul(Et,Er)|0,m=m+Math.imul(_t,Sr)|0,x=x+Math.imul(_t,Er)|0,P=P+Math.imul(Be,xr)|0,m=m+Math.imul(Be,Or)|0,m=m+Math.imul(vt,xr)|0,x=x+Math.imul(vt,Or)|0;var Jv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Jv>>>26)|0,Jv&=67108863,P=Math.imul(se,yr),m=Math.imul(se,br),m=m+Math.imul(me,yr)|0,x=Math.imul(me,br),P=P+Math.imul(X,_r)|0,m=m+Math.imul(X,wr)|0,m=m+Math.imul(ie,_r)|0,x=x+Math.imul(ie,wr)|0,P=P+Math.imul(Lt,Sr)|0,m=m+Math.imul(Lt,Er)|0,m=m+Math.imul(N,Sr)|0,x=x+Math.imul(N,Er)|0,P=P+Math.imul(Et,xr)|0,m=m+Math.imul(Et,Or)|0,m=m+Math.imul(_t,xr)|0,x=x+Math.imul(_t,Or)|0;var Qv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Qv>>>26)|0,Qv&=67108863,P=Math.imul(se,_r),m=Math.imul(se,wr),m=m+Math.imul(me,_r)|0,x=Math.imul(me,wr),P=P+Math.imul(X,Sr)|0,m=m+Math.imul(X,Er)|0,m=m+Math.imul(ie,Sr)|0,x=x+Math.imul(ie,Er)|0,P=P+Math.imul(Lt,xr)|0,m=m+Math.imul(Lt,Or)|0,m=m+Math.imul(N,xr)|0,x=x+Math.imul(N,Or)|0;var e0=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(e0>>>26)|0,e0&=67108863,P=Math.imul(se,Sr),m=Math.imul(se,Er),m=m+Math.imul(me,Sr)|0,x=Math.imul(me,Er),P=P+Math.imul(X,xr)|0,m=m+Math.imul(X,Or)|0,m=m+Math.imul(ie,xr)|0,x=x+Math.imul(ie,Or)|0;var t0=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(t0>>>26)|0,t0&=67108863,P=Math.imul(se,xr),m=Math.imul(se,Or),m=m+Math.imul(me,xr)|0,x=Math.imul(me,Or);var r0=(D+P|0)+((m&8191)<<13)|0;return D=(x+(m>>>13)|0)+(r0>>>26)|0,r0&=67108863,C[0]=Hv,C[1]=qv,C[2]=Uv,C[3]=Fv,C[4]=jv,C[5]=zv,C[6]=Kv,C[7]=Vv,C[8]=Gv,C[9]=Wv,C[10]=Yv,C[11]=Zv,C[12]=$v,C[13]=Xv,C[14]=Jv,C[15]=Qv,C[16]=e0,C[17]=t0,C[18]=r0,D!==0&&(C[19]=D,w.length++),w};Math.imul||(_=v);function I(E,h,y){y.negative=h.negative^E.negative,y.length=E.length+h.length;for(var w=0,S=0,O=0;O<y.length-1;O++){var C=S;S=0;for(var D=w&67108863,P=Math.min(O,h.length-1),m=Math.max(0,O-E.length+1);m<=P;m++){var x=O-m,K=E.words[x]|0,U=h.words[m]|0,G=K*U,te=G&67108863;C=C+(G/67108864|0)|0,te=te+D|0,D=te&67108863,C=C+(te>>>26)|0,S+=C>>>26,C&=67108863}y.words[O]=D,w=C,C=S}return w!==0?y.words[O]=w:y.length--,y.strip()}function R(E,h,y){var w=new k;return w.mulp(E,h,y)}n.prototype.mulTo=function(h,y){var w,S=this.length+h.length;return this.length===10&&h.length===10?w=_(this,h,y):S<63?w=v(this,h,y):S<1024?w=I(this,h,y):w=R(this,h,y),w};function k(E,h){this.x=E,this.y=h}k.prototype.makeRBT=function(h){for(var y=new Array(h),w=n.prototype._countBits(h)-1,S=0;S<h;S++)y[S]=this.revBin(S,w,h);return y},k.prototype.revBin=function(h,y,w){if(h===0||h===w-1)return h;for(var S=0,O=0;O<y;O++)S|=(h&1)<<y-O-1,h>>=1;return S},k.prototype.permute=function(h,y,w,S,O,C){for(var D=0;D<C;D++)S[D]=y[h[D]],O[D]=w[h[D]]},k.prototype.transform=function(h,y,w,S,O,C){this.permute(C,h,y,w,S,O);for(var D=1;D<O;D<<=1)for(var P=D<<1,m=Math.cos(2*Math.PI/P),x=Math.sin(2*Math.PI/P),K=0;K<O;K+=P)for(var U=m,G=x,te=0;te<D;te++){var ae=w[K+te],oe=S[K+te],le=w[K+te+D],he=S[K+te+D],ve=U*le-G*he;he=U*he+G*le,le=ve,w[K+te]=ae+le,S[K+te]=oe+he,w[K+te+D]=ae-le,S[K+te+D]=oe-he,te!==P&&(ve=m*U-x*G,G=m*G+x*U,U=ve)}},k.prototype.guessLen13b=function(h,y){var w=Math.max(y,h)|1,S=w&1,O=0;for(w=w/2|0;w;w=w>>>1)O++;return 1<<O+1+S},k.prototype.conjugate=function(h,y,w){if(!(w<=1))for(var S=0;S<w/2;S++){var O=h[S];h[S]=h[w-S-1],h[w-S-1]=O,O=y[S],y[S]=-y[w-S-1],y[w-S-1]=-O}},k.prototype.normalize13b=function(h,y){for(var w=0,S=0;S<y/2;S++){var O=Math.round(h[2*S+1]/y)*8192+Math.round(h[2*S]/y)+w;h[S]=O&67108863,O<67108864?w=0:w=O/67108864|0}return h},k.prototype.convert13b=function(h,y,w,S){for(var O=0,C=0;C<y;C++)O=O+(h[C]|0),w[2*C]=O&8191,O=O>>>13,w[2*C+1]=O&8191,O=O>>>13;for(C=2*y;C<S;++C)w[C]=0;r(O===0),r((O&-8192)===0)},k.prototype.stub=function(h){for(var y=new Array(h),w=0;w<h;w++)y[w]=0;return y},k.prototype.mulp=function(h,y,w){var S=2*this.guessLen13b(h.length,y.length),O=this.makeRBT(S),C=this.stub(S),D=new Array(S),P=new Array(S),m=new Array(S),x=new Array(S),K=new Array(S),U=new Array(S),G=w.words;G.length=S,this.convert13b(h.words,h.length,D,S),this.convert13b(y.words,y.length,x,S),this.transform(D,C,P,m,S,O),this.transform(x,C,K,U,S,O);for(var te=0;te<S;te++){var ae=P[te]*K[te]-m[te]*U[te];m[te]=P[te]*U[te]+m[te]*K[te],P[te]=ae}return this.conjugate(P,m,S),this.transform(P,m,G,C,S,O),this.conjugate(G,C,S),this.normalize13b(G,S),w.negative=h.negative^y.negative,w.length=h.length+y.length,w.strip()},n.prototype.mul=function(h){var y=new n(null);return y.words=new Array(this.length+h.length),this.mulTo(h,y)},n.prototype.mulf=function(h){var y=new n(null);return y.words=new Array(this.length+h.length),R(this,h,y)},n.prototype.imul=function(h){return this.clone().mulTo(h,this)},n.prototype.imuln=function(h){r(typeof h=="number"),r(h<67108864);for(var y=0,w=0;w<this.length;w++){var S=(this.words[w]|0)*h,O=(S&67108863)+(y&67108863);y>>=26,y+=S/67108864|0,y+=O>>>26,this.words[w]=O&67108863}return y!==0&&(this.words[w]=y,this.length++),h===0&&(this.length=1,this._normSign()),this},n.prototype.muln=function(h){return this.clone().imuln(h)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(h){var y=d(h);if(y.length===0)return new n(1);for(var w=this,S=0;S<y.length&&y[S]===0;S++,w=w.sqr());if(++S<y.length)for(var O=w.sqr();S<y.length;S++,O=O.sqr())y[S]!==0&&(w=w.mul(O));return w},n.prototype.iushln=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26,S=67108863>>>26-y<<26-y,O;if(y!==0){var C=0;for(O=0;O<this.length;O++){var D=this.words[O]&S,P=(this.words[O]|0)-D<<y;this.words[O]=P|C,C=D>>>26-y}C&&(this.words[O]=C,this.length++)}if(w!==0){for(O=this.length-1;O>=0;O--)this.words[O+w]=this.words[O];for(O=0;O<w;O++)this.words[O]=0;this.length+=w}return this.strip()},n.prototype.ishln=function(h){return r(this.negative===0),this.iushln(h)},n.prototype.iushrn=function(h,y,w){r(typeof h=="number"&&h>=0);var S;y?S=(y-y%26)/26:S=0;var O=h%26,C=Math.min((h-O)/26,this.length),D=67108863^67108863>>>O<<O,P=w;if(S-=C,S=Math.max(0,S),P){for(var m=0;m<C;m++)P.words[m]=this.words[m];P.length=C}if(C!==0)if(this.length>C)for(this.length-=C,m=0;m<this.length;m++)this.words[m]=this.words[m+C];else this.words[0]=0,this.length=1;var x=0;for(m=this.length-1;m>=0&&(x!==0||m>=S);m--){var K=this.words[m]|0;this.words[m]=x<<26-O|K>>>O,x=K&D}return P&&x!==0&&(P.words[P.length++]=x),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(h,y,w){return r(this.negative===0),this.iushrn(h,y,w)},n.prototype.shln=function(h){return this.clone().ishln(h)},n.prototype.ushln=function(h){return this.clone().iushln(h)},n.prototype.shrn=function(h){return this.clone().ishrn(h)},n.prototype.ushrn=function(h){return this.clone().iushrn(h)},n.prototype.testn=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26,S=1<<y;if(this.length<=w)return!1;var O=this.words[w];return!!(O&S)},n.prototype.imaskn=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26;if(r(this.negative===0,"imaskn works only with positive numbers"),this.length<=w)return this;if(y!==0&&w++,this.length=Math.min(w,this.length),y!==0){var S=67108863^67108863>>>y<<y;this.words[this.length-1]&=S}return this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.maskn=function(h){return this.clone().imaskn(h)},n.prototype.iaddn=function(h){return r(typeof h=="number"),r(h<67108864),h<0?this.isubn(-h):this.negative!==0?this.length===1&&(this.words[0]|0)<h?(this.words[0]=h-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(h),this.negative=1,this):this._iaddn(h)},n.prototype._iaddn=function(h){this.words[0]+=h;for(var y=0;y<this.length&&this.words[y]>=67108864;y++)this.words[y]-=67108864,y===this.length-1?this.words[y+1]=1:this.words[y+1]++;return this.length=Math.max(this.length,y+1),this},n.prototype.isubn=function(h){if(r(typeof h=="number"),r(h<67108864),h<0)return this.iaddn(-h);if(this.negative!==0)return this.negative=0,this.iaddn(h),this.negative=1,this;if(this.words[0]-=h,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var y=0;y<this.length&&this.words[y]<0;y++)this.words[y]+=67108864,this.words[y+1]-=1;return this.strip()},n.prototype.addn=function(h){return this.clone().iaddn(h)},n.prototype.subn=function(h){return this.clone().isubn(h)},n.prototype.iabs=function(){return this.negative=0,this},n.prototype.abs=function(){return this.clone().iabs()},n.prototype._ishlnsubmul=function(h,y,w){var S=h.length+w,O;this._expand(S);var C,D=0;for(O=0;O<h.length;O++){C=(this.words[O+w]|0)+D;var P=(h.words[O]|0)*y;C-=P&67108863,D=(C>>26)-(P/67108864|0),this.words[O+w]=C&67108863}for(;O<this.length-w;O++)C=(this.words[O+w]|0)+D,D=C>>26,this.words[O+w]=C&67108863;if(D===0)return this.strip();for(r(D===-1),D=0,O=0;O<this.length;O++)C=-(this.words[O]|0)+D,D=C>>26,this.words[O]=C&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(h,y){var w=this.length-h.length,S=this.clone(),O=h,C=O.words[O.length-1]|0,D=this._countBits(C);w=26-D,w!==0&&(O=O.ushln(w),S.iushln(w),C=O.words[O.length-1]|0);var P=S.length-O.length,m;if(y!=="mod"){m=new n(null),m.length=P+1,m.words=new Array(m.length);for(var x=0;x<m.length;x++)m.words[x]=0}var K=S.clone()._ishlnsubmul(O,1,P);K.negative===0&&(S=K,m&&(m.words[P]=1));for(var U=P-1;U>=0;U--){var G=(S.words[O.length+U]|0)*67108864+(S.words[O.length+U-1]|0);for(G=Math.min(G/C|0,67108863),S._ishlnsubmul(O,G,U);S.negative!==0;)G--,S.negative=0,S._ishlnsubmul(O,1,U),S.isZero()||(S.negative^=1);m&&(m.words[U]=G)}return m&&m.strip(),S.strip(),y!=="div"&&w!==0&&S.iushrn(w),{div:m||null,mod:S}},n.prototype.divmod=function(h,y,w){if(r(!h.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var S,O,C;return this.negative!==0&&h.negative===0?(C=this.neg().divmod(h,y),y!=="mod"&&(S=C.div.neg()),y!=="div"&&(O=C.mod.neg(),w&&O.negative!==0&&O.iadd(h)),{div:S,mod:O}):this.negative===0&&h.negative!==0?(C=this.divmod(h.neg(),y),y!=="mod"&&(S=C.div.neg()),{div:S,mod:C.mod}):(this.negative&h.negative)!==0?(C=this.neg().divmod(h.neg(),y),y!=="div"&&(O=C.mod.neg(),w&&O.negative!==0&&O.isub(h)),{div:C.div,mod:O}):h.length>this.length||this.cmp(h)<0?{div:new n(0),mod:this}:h.length===1?y==="div"?{div:this.divn(h.words[0]),mod:null}:y==="mod"?{div:null,mod:new n(this.modn(h.words[0]))}:{div:this.divn(h.words[0]),mod:new n(this.modn(h.words[0]))}:this._wordDiv(h,y)},n.prototype.div=function(h){return this.divmod(h,"div",!1).div},n.prototype.mod=function(h){return this.divmod(h,"mod",!1).mod},n.prototype.umod=function(h){return this.divmod(h,"mod",!0).mod},n.prototype.divRound=function(h){var y=this.divmod(h);if(y.mod.isZero())return y.div;var w=y.mod.abs(),S=h.abs().iushrn(1),O=h.words[0]&1,C=w.cmp(S);if(C<0||O===1&&C===0)return y.div;var D=new n(1);return D.negative=this.negative^h.negative,y.div.iadd(D)},n.prototype.modn=function(h){r(h<=67108863);for(var y=(1<<26)%h,w=0,S=this.length-1;S>=0;S--)w=(y*w+(this.words[S]|0))%h;return w},n.prototype.idivn=function(h){r(h<=67108863);for(var y=0,w=this.length-1;w>=0;w--){var S=(this.words[w]|0)+y*67108864;this.words[w]=S/h|0,y=S%h}return this.strip()},n.prototype.divn=function(h){return this.clone().idivn(h)},n.prototype.egcd=function(h){r(h.negative===0),r(!h.isZero());var y=this,w=h.clone();y.negative!==0?y=y.umod(h):y=y.clone();for(var S=new n(1),O=new n(0),C=new n(0),D=new n(1),P=0;y.isEven()&&w.isEven();)y.iushrn(1),w.iushrn(1),++P;for(var m=w.clone(),x=y.clone();!y.isZero();){for(var K=0,U=1;(y.words[0]&U)===0&&K<26;++K,U<<=1);if(K>0)for(y.iushrn(K);K-- >0;)(S.isOdd()||O.isOdd())&&(S.iadd(m),O.isub(x)),S.iushrn(1),O.iushrn(1);for(var G=0,te=1;(w.words[0]&te)===0&&G<26;++G,te<<=1);if(G>0)for(w.iushrn(G);G-- >0;)(C.isOdd()||D.isOdd())&&(C.iadd(m),D.isub(x)),C.iushrn(1),D.iushrn(1);y.cmp(w)>=0?(y.isub(w),S.isub(C),O.isub(D)):(w.isub(y),C.isub(S),D.isub(O))}return{a:C,b:D,gcd:w.iushln(P)}},n.prototype._invmp=function(h){r(h.negative===0),r(!h.isZero());var y=this,w=h.clone();y.negative!==0?y=y.umod(h):y=y.clone();for(var S=new n(1),O=new n(0),C=w.clone();y.cmpn(1)>0&&w.cmpn(1)>0;){for(var D=0,P=1;(y.words[0]&P)===0&&D<26;++D,P<<=1);if(D>0)for(y.iushrn(D);D-- >0;)S.isOdd()&&S.iadd(C),S.iushrn(1);for(var m=0,x=1;(w.words[0]&x)===0&&m<26;++m,x<<=1);if(m>0)for(w.iushrn(m);m-- >0;)O.isOdd()&&O.iadd(C),O.iushrn(1);y.cmp(w)>=0?(y.isub(w),S.isub(O)):(w.isub(y),O.isub(S))}var K;return y.cmpn(1)===0?K=S:K=O,K.cmpn(0)<0&&K.iadd(h),K},n.prototype.gcd=function(h){if(this.isZero())return h.abs();if(h.isZero())return this.abs();var y=this.clone(),w=h.clone();y.negative=0,w.negative=0;for(var S=0;y.isEven()&&w.isEven();S++)y.iushrn(1),w.iushrn(1);do{for(;y.isEven();)y.iushrn(1);for(;w.isEven();)w.iushrn(1);var O=y.cmp(w);if(O<0){var C=y;y=w,w=C}else if(O===0||w.cmpn(1)===0)break;y.isub(w)}while(!0);return w.iushln(S)},n.prototype.invm=function(h){return this.egcd(h).a.umod(h)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(h){return this.words[0]&h},n.prototype.bincn=function(h){r(typeof h=="number");var y=h%26,w=(h-y)/26,S=1<<y;if(this.length<=w)return this._expand(w+1),this.words[w]|=S,this;for(var O=S,C=w;O!==0&&C<this.length;C++){var D=this.words[C]|0;D+=O,O=D>>>26,D&=67108863,this.words[C]=D}return O!==0&&(this.words[C]=O,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(h){var y=h<0;if(this.negative!==0&&!y)return-1;if(this.negative===0&&y)return 1;this.strip();var w;if(this.length>1)w=1;else{y&&(h=-h),r(h<=67108863,"Number is too big");var S=this.words[0]|0;w=S===h?0:S<h?-1:1}return this.negative!==0?-w|0:w},n.prototype.cmp=function(h){if(this.negative!==0&&h.negative===0)return-1;if(this.negative===0&&h.negative!==0)return 1;var y=this.ucmp(h);return this.negative!==0?-y|0:y},n.prototype.ucmp=function(h){if(this.length>h.length)return 1;if(this.length<h.length)return-1;for(var y=0,w=this.length-1;w>=0;w--){var S=this.words[w]|0,O=h.words[w]|0;if(S!==O){S<O?y=-1:S>O&&(y=1);break}}return y},n.prototype.gtn=function(h){return this.cmpn(h)===1},n.prototype.gt=function(h){return this.cmp(h)===1},n.prototype.gten=function(h){return this.cmpn(h)>=0},n.prototype.gte=function(h){return this.cmp(h)>=0},n.prototype.ltn=function(h){return this.cmpn(h)===-1},n.prototype.lt=function(h){return this.cmp(h)===-1},n.prototype.lten=function(h){return this.cmpn(h)<=0},n.prototype.lte=function(h){return this.cmp(h)<=0},n.prototype.eqn=function(h){return this.cmpn(h)===0},n.prototype.eq=function(h){return this.cmp(h)===0},n.red=function(h){return new V(h)},n.prototype.toRed=function(h){return r(!this.red,"Already a number in reduction context"),r(this.negative===0,"red works only with positives"),h.convertTo(this)._forceRed(h)},n.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(h){return this.red=h,this},n.prototype.forceRed=function(h){return r(!this.red,"Already a number in reduction context"),this._forceRed(h)},n.prototype.redAdd=function(h){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,h)},n.prototype.redIAdd=function(h){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,h)},n.prototype.redSub=function(h){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,h)},n.prototype.redISub=function(h){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,h)},n.prototype.redShl=function(h){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,h)},n.prototype.redMul=function(h){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,h),this.red.mul(this,h)},n.prototype.redIMul=function(h){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,h),this.red.imul(this,h)},n.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(h){return r(this.red&&!h.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,h)};var q={k256:null,p224:null,p192:null,p25519:null};function z(E,h){this.name=E,this.p=new n(h,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}z.prototype._tmp=function(){var h=new n(null);return h.words=new Array(Math.ceil(this.n/13)),h},z.prototype.ireduce=function(h){var y=h,w;do this.split(y,this.tmp),y=this.imulK(y),y=y.iadd(this.tmp),w=y.bitLength();while(w>this.n);var S=w<this.n?-1:y.ucmp(this.p);return S===0?(y.words[0]=0,y.length=1):S>0?y.isub(this.p):y.strip!==void 0?y.strip():y._strip(),y},z.prototype.split=function(h,y){h.iushrn(this.n,0,y)},z.prototype.imulK=function(h){return h.imul(this.k)};function A(){z.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}i(A,z),A.prototype.split=function(h,y){for(var w=4194303,S=Math.min(h.length,9),O=0;O<S;O++)y.words[O]=h.words[O];if(y.length=S,h.length<=9){h.words[0]=0,h.length=1;return}var C=h.words[9];for(y.words[y.length++]=C&w,O=10;O<h.length;O++){var D=h.words[O]|0;h.words[O-10]=(D&w)<<4|C>>>22,C=D}C>>>=22,h.words[O-10]=C,C===0&&h.length>10?h.length-=10:h.length-=9},A.prototype.imulK=function(h){h.words[h.length]=0,h.words[h.length+1]=0,h.length+=2;for(var y=0,w=0;w<h.length;w++){var S=h.words[w]|0;y+=S*977,h.words[w]=y&67108863,y=S*64+(y/67108864|0)}return h.words[h.length-1]===0&&(h.length--,h.words[h.length-1]===0&&h.length--),h};function B(){z.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}i(B,z);function M(){z.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}i(M,z);function F(){z.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}i(F,z),F.prototype.imulK=function(h){for(var y=0,w=0;w<h.length;w++){var S=(h.words[w]|0)*19+y,O=S&67108863;S>>>=26,h.words[w]=O,y=S}return y!==0&&(h.words[h.length++]=y),h},n._prime=function(h){if(q[h])return q[h];var y;if(h==="k256")y=new A;else if(h==="p224")y=new B;else if(h==="p192")y=new M;else if(h==="p25519")y=new F;else throw new Error("Unknown prime "+h);return q[h]=y,y};function V(E){if(typeof E=="string"){var h=n._prime(E);this.m=h.p,this.prime=h}else r(E.gtn(1),"modulus must be greater than 1"),this.m=E,this.prime=null}V.prototype._verify1=function(h){r(h.negative===0,"red works only with positives"),r(h.red,"red works only with red numbers")},V.prototype._verify2=function(h,y){r((h.negative|y.negative)===0,"red works only with positives"),r(h.red&&h.red===y.red,"red works only with red numbers")},V.prototype.imod=function(h){return this.prime?this.prime.ireduce(h)._forceRed(this):h.umod(this.m)._forceRed(this)},V.prototype.neg=function(h){return h.isZero()?h.clone():this.m.sub(h)._forceRed(this)},V.prototype.add=function(h,y){this._verify2(h,y);var w=h.add(y);return w.cmp(this.m)>=0&&w.isub(this.m),w._forceRed(this)},V.prototype.iadd=function(h,y){this._verify2(h,y);var w=h.iadd(y);return w.cmp(this.m)>=0&&w.isub(this.m),w},V.prototype.sub=function(h,y){this._verify2(h,y);var w=h.sub(y);return w.cmpn(0)<0&&w.iadd(this.m),w._forceRed(this)},V.prototype.isub=function(h,y){this._verify2(h,y);var w=h.isub(y);return w.cmpn(0)<0&&w.iadd(this.m),w},V.prototype.shl=function(h,y){return this._verify1(h),this.imod(h.ushln(y))},V.prototype.imul=function(h,y){return this._verify2(h,y),this.imod(h.imul(y))},V.prototype.mul=function(h,y){return this._verify2(h,y),this.imod(h.mul(y))},V.prototype.isqr=function(h){return this.imul(h,h.clone())},V.prototype.sqr=function(h){return this.mul(h,h)},V.prototype.sqrt=function(h){if(h.isZero())return h.clone();var y=this.m.andln(3);if(r(y%2===1),y===3){var w=this.m.add(new n(1)).iushrn(2);return this.pow(h,w)}for(var S=this.m.subn(1),O=0;!S.isZero()&&S.andln(1)===0;)O++,S.iushrn(1);r(!S.isZero());var C=new n(1).toRed(this),D=C.redNeg(),P=this.m.subn(1).iushrn(1),m=this.m.bitLength();for(m=new n(2*m*m).toRed(this);this.pow(m,P).cmp(D)!==0;)m.redIAdd(D);for(var x=this.pow(m,S),K=this.pow(h,S.addn(1).iushrn(1)),U=this.pow(h,S),G=O;U.cmp(C)!==0;){for(var te=U,ae=0;te.cmp(C)!==0;ae++)te=te.redSqr();r(ae<G);var oe=this.pow(x,new n(1).iushln(G-ae-1));K=K.redMul(oe),x=oe.redSqr(),U=U.redMul(x),G=ae}return K},V.prototype.invm=function(h){var y=h._invmp(this.m);return y.negative!==0?(y.negative=0,this.imod(y).redNeg()):this.imod(y)},V.prototype.pow=function(h,y){if(y.isZero())return new n(1).toRed(this);if(y.cmpn(1)===0)return h.clone();var w=4,S=new Array(1<<w);S[0]=new n(1).toRed(this),S[1]=h;for(var O=2;O<S.length;O++)S[O]=this.mul(S[O-1],h);var C=S[0],D=0,P=0,m=y.bitLength()%26;for(m===0&&(m=26),O=y.length-1;O>=0;O--){for(var x=y.words[O],K=m-1;K>=0;K--){var U=x>>K&1;if(C!==S[0]&&(C=this.sqr(C)),U===0&&D===0){P=0;continue}D<<=1,D|=U,P++,!(P!==w&&(O!==0||K!==0))&&(C=this.mul(C,S[D]),P=0,D=0)}m=26}return C},V.prototype.convertTo=function(h){var y=h.umod(this.m);return y===h?y.clone():y},V.prototype.convertFrom=function(h){var y=h.clone();return y.red=null,y},n.mont=function(h){return new Y(h)};function Y(E){V.call(this,E),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}i(Y,V),Y.prototype.convertTo=function(h){return this.imod(h.ushln(this.shift))},Y.prototype.convertFrom=function(h){var y=this.imod(h.mul(this.rinv));return y.red=null,y},Y.prototype.imul=function(h,y){if(h.isZero()||y.isZero())return h.words[0]=0,h.length=1,h;var w=h.imul(y),S=w.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),O=w.isub(S).iushrn(this.shift),C=O;return O.cmp(this.m)>=0?C=O.isub(this.m):O.cmpn(0)<0&&(C=O.iadd(this.m)),C._forceRed(this)},Y.prototype.mul=function(h,y){if(h.isZero()||y.isZero())return new n(0)._forceRed(this);var w=h.mul(y),S=w.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),O=w.isub(S).iushrn(this.shift),C=O;return O.cmp(this.m)>=0?C=O.isub(this.m):O.cmpn(0)<0&&(C=O.iadd(this.m)),C._forceRed(this)},Y.prototype.invm=function(h){var y=this.imod(h._invmp(this.m).mul(this.r2));return y._forceRed(this)}})(typeof Qy>"u"||Qy,UT)});var eb=T((Nne,FT)=>{"use strict";g();FT.exports="9.22.1"});var zT=T((Lne,jT)=>{"use strict";g();var rK="https://docs.moneybutton.com/";jT.exports=[{name:"InvalidB58Char",message:"Invalid Base58 character: {0} in {1}"},{name:"InvalidB58Checksum",message:"Invalid Base58 checksum for {0}"},{name:"InvalidNetwork",message:"Invalid version for network: got {0}"},{name:"InvalidState",message:"Invalid state: {0}"},{name:"NotImplemented",message:"Function {0} was not implemented yet"},{name:"InvalidNetworkArgument",message:'Invalid network: must be "livenet" or "testnet", got {0}'},{name:"InvalidArgument",message:function(){return"Invalid Argument"+(arguments[0]?": "+arguments[0]:"")+(arguments[1]?" Documentation: "+rK+arguments[1]:"")}},{name:"AbstractMethodInvoked",message:"Abstract Method Invocation: {0}"},{name:"InvalidArgumentType",message:function(){return"Invalid Argument for "+arguments[2]+", expected "+arguments[1]+" but got "+typeof arguments[0]}},{name:"Unit",message:"Internal Error on Unit {0}",errors:[{name:"UnknownCode",message:"Unrecognized unit code: {0}"},{name:"InvalidRate",message:"Invalid exchange rate: {0}"}]},{name:"MerkleBlock",message:"Internal Error on MerkleBlock {0}",errors:[{name:"InvalidMerkleTree",message:"This MerkleBlock contain an invalid Merkle Tree"}]},{name:"Transaction",message:"Internal Error on Transaction {0}",errors:[{name:"Input",message:"Internal Error on Input {0}",errors:[{name:"MissingScript",message:"Need a script to create an input"},{name:"UnsupportedScript",message:"Unsupported input script type: {0}"},{name:"MissingPreviousOutput",message:"No previous output information."}]},{name:"NeedMoreInfo",message:"{0}"},{name:"InvalidSorting",message:"The sorting function provided did not return the change output as one of the array elements"},{name:"InvalidOutputAmountSum",message:"{0}"},{name:"MissingSignatures",message:"Some inputs have not been fully signed"},{name:"InvalidIndex",message:"Invalid index: {0} is not between 0, {1}"},{name:"UnableToVerifySignature",message:"Unable to verify signature: {0}"},{name:"DustOutputs",message:"Dust amount detected in one output"},{name:"InvalidSatoshis",message:"Output satoshis are invalid"},{name:"FeeError",message:"Internal Error on Fee {0}",errors:[{name:"TooSmall",message:"Fee is too small: {0}"},{name:"TooLarge",message:"Fee is too large: {0}"},{name:"Different",message:"Unspent value is different from specified fee: {0}"}]},{name:"ChangeAddressMissing",message:"Change address is missing"},{name:"BlockHeightTooHigh",message:"Block Height can be at most 2^32 -1"},{name:"NLockTimeOutOfRange",message:"Block Height can only be between 0 and 499 999 999"},{name:"LockTimeTooEarly",message:"Lock Time can't be earlier than UNIX date 500 000 000"}]},{name:"Script",message:"Internal Error on Script {0}",errors:[{name:"UnrecognizedAddress",message:"Expected argument {0} to be an address"},{name:"CantDeriveAddress",message:"Can't derive address associated with script {0}, needs to be p2pkh in, p2pkh out, p2sh in, or p2sh out."},{name:"InvalidBuffer",message:"Invalid script buffer: can't parse valid script from given buffer {0}"}]},{name:"HDPrivateKey",message:"Internal Error on HDPrivateKey {0}",errors:[{name:"InvalidDerivationArgument",message:"Invalid derivation argument {0}, expected string, or number and boolean"},{name:"InvalidEntropyArgument",message:"Invalid entropy: must be an hexa string or binary buffer, got {0}",errors:[{name:"TooMuchEntropy",message:'Invalid entropy: more than 512 bits is non standard, got "{0}"'},{name:"NotEnoughEntropy",message:'Invalid entropy: at least 128 bits needed, got "{0}"'}]},{name:"InvalidLength",message:"Invalid length for xprivkey string in {0}"},{name:"InvalidPath",message:"Invalid derivation path: {0}"},{name:"UnrecognizedArgument",message:'Invalid argument: creating a HDPrivateKey requires a string, buffer, json or object, got "{0}"'}]},{name:"HDPublicKey",message:"Internal Error on HDPublicKey {0}",errors:[{name:"ArgumentIsPrivateExtended",message:"Argument is an extended private key: {0}"},{name:"InvalidDerivationArgument",message:"Invalid derivation argument: got {0}"},{name:"InvalidLength",message:'Invalid length for xpubkey: got "{0}"'},{name:"InvalidPath",message:'Invalid derivation path, it should look like: "m/1/100", got "{0}"'},{name:"InvalidIndexCantDeriveHardened",message:"Invalid argument: creating a hardened path requires an HDPrivateKey"},{name:"MustSupplyArgument",message:"Must supply an argument to create a HDPublicKey"},{name:"UnrecognizedArgument",message:"Invalid argument for creation, must be string, json, buffer, or object"}]}]});var pi=T((Dne,rb)=>{"use strict";g();var tb=at();function iK(e,t){return e.replace("{0}",t[0]).replace("{1}",t[1]).replace("{2}",t[2])}var KT=function(e,t){var r=function(){if(tb.isString(t.message))this.message=iK(t.message,arguments);else if(tb.isFunction(t.message))this.message=t.message.apply(null,arguments);else throw new Error("Invalid error definition for "+t.name);this.stack=this.message+`
11
+ Use Chrome, Firefox or Internet Explorer 11`)}var Xz=ii().Buffer,Dp=globalThis.crypto||globalThis.msCrypto;Dp&&Dp.getRandomValues?Xy.exports=Jz:Xy.exports=$z;function Jz(e,t){if(e>Zz)throw new RangeError("requested too many random bytes");var r=Xz.allocUnsafe(e);if(e>0)if(e>$y)for(var i=0;i<e;i+=$y)Dp.getRandomValues(r.slice(i,i+$y));else Dp.getRandomValues(r);return typeof t=="function"?b.default.nextTick(function(){t(null,r)}):r}});var nr=T(Hp=>{"use strict";g();Hp.createHash=xT();Hp.createHmac=BT();Hp.randomBytes=NT()});var Ki=T((Ine,LT)=>{"use strict";g();var CT=65536;function Gs(){}Gs.getRandomBuffer=function(e){var t=typeof globalThis<"u"?globalThis.crypto:void 0;if(t&&typeof t.getRandomValues=="function")return Gs._fromGetRandomValues(t,e);try{var r=nr();if(r&&typeof r.randomBytes=="function")return r.randomBytes(e)}catch{}throw new Error("bsv: no CSPRNG available in this environment (needs globalThis.crypto.getRandomValues or node crypto)")};Gs._fromGetRandomValues=function(e,t){for(var r=f.Buffer.alloc(t),i=0;i<t;i+=CT){var n=new Uint8Array(Math.min(CT,t-i));e.getRandomValues(n),f.Buffer.from(n).copy(r,i)}return r};Gs.getRandomBufferNode=function(e){var t=nr();return t.randomBytes(e)};Gs.getRandomBufferBrowser=function(e){var t=typeof globalThis<"u"?globalThis:{},r=null;if(t.crypto&&typeof t.crypto.getRandomValues=="function"?r=t.crypto:t.msCrypto&&typeof t.msCrypto.getRandomValues=="function"&&(r=t.msCrypto),!r)throw new Error("window.crypto.getRandomValues not available");return Gs._fromGetRandomValues(r,e)};LT.exports=Gs});var at=T((Tne,MT)=>{"use strict";g();var Qz=Ki(),Ht={};Ht.isArray=e=>Array.isArray(e);Ht.isNumber=e=>typeof e=="number";Ht.isObject=e=>e&&typeof e=="object";Ht.isString=e=>typeof e=="string";Ht.isUndefined=e=>typeof e>"u";Ht.isFunction=e=>typeof e=="function";Ht.isNull=e=>e===null;Ht.isDate=e=>e instanceof Date;Ht.extend=(e,t)=>Object.assign(e,t);Ht.noop=()=>{};Ht.every=(e,t)=>e.every(t||(r=>r));Ht.map=(e,t)=>Array.from(e).map(t||(r=>r));Ht.includes=(e,t)=>e.includes(t);Ht.each=(e,t)=>e.forEach(t);Ht.clone=e=>Object.assign({},e);Ht.pick=(e,t)=>{let r={};return t.forEach(i=>{typeof e[i]<"u"&&(r[i]=e[i])}),r};Ht.values=e=>Object.values(e);Ht.filter=(e,t)=>e.filter(t);Ht.reduce=(e,t,r)=>e.reduce(t,r);Ht.without=(e,t)=>e.filter(r=>r!==t);Ht.shuffle=e=>{let t=e.slice(0);for(let r=t.length-1;r>0;r--){let n=Qz.getRandomBuffer(4).readUInt32BE(0)/4294967296,o=Math.floor(n*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t};Ht.difference=(e,t)=>e.filter(r=>!t.includes(r));Ht.findIndex=(e,t)=>e.findIndex(t);Ht.some=(e,t)=>e.some(t);Ht.range=e=>[...Array(e).keys()];MT.exports=Ht});var pc=T((Rne,qT)=>{"use strict";g();var Jy=at(),DT=rr(),dc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".split(""),HT={};for(Sl=0;Sl<dc.length;Sl++)HT[dc[Sl]]=Sl;var Sl;function eK(e){if(e.length===0)return"";var t=[0],r,i,n;for(r=0;r<e.length;r++){for(i=0,n=e[r];i<t.length;i++)n+=t[i]<<8,t[i]=n%58,n=n/58|0;for(;n>0;)t.push(n%58),n=n/58|0}var o="";for(r=0;e[r]===0&&r<e.length-1;r++)o+=dc[0];for(r=t.length-1;r>=0;r--)o+=dc[t[r]];return o}function tK(e){if(e.length===0)return f.Buffer.alloc(0);var t=[0],r,i,n;for(r=0;r<e.length;r++){var o=HT[e[r]];if(o===void 0)throw new Error("Non-base58 character");for(i=0,n=o;i<t.length;i++)n+=t[i]*58,t[i]=n&255,n>>=8;for(;n>0;)t.push(n&255),n>>=8}for(r=0;e[r]===dc[0]&&r<e.length-1;r++)t.push(0);return f.Buffer.from(t.reverse())}var Xr=function e(t){if(!(this instanceof e))return new e(t);if(f.Buffer.isBuffer(t)){var r=t;this.fromBuffer(r)}else if(typeof t=="string"){var i=t;this.fromString(i)}};Xr.validCharacters=function(t){return DT.Buffer.isBuffer(t)&&(t=t.toString()),Jy.every(Jy.map(t,function(r){return Jy.includes(dc,r)}))};Xr.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this};Xr.encode=function(e){if(!DT.Buffer.isBuffer(e))throw new Error("Input should be a buffer");return eK(e)};Xr.decode=function(e){if(typeof e!="string")throw new Error("Input should be a string");return tK(e)};Xr.prototype.fromBuffer=function(e){return this.buf=e,this};Xr.fromBuffer=function(e){return new Xr().fromBuffer(e)};Xr.fromHex=function(e){return Xr.fromBuffer(f.Buffer.from(e,"hex"))};Xr.prototype.fromString=function(e){var t=Xr.decode(e);return this.buf=t,this};Xr.fromString=function(e){return new Xr().fromString(e)};Xr.prototype.toBuffer=function(){return this.buf};Xr.prototype.toHex=function(){return this.toBuffer().toString("hex")};Xr.prototype.toString=function(){return Xr.encode(this.buf)};qT.exports=Xr});var qp=T((UT,Qy)=>{g();(function(e,t){"use strict";function r(E,h){if(!E)throw new Error(h||"Assertion failed")}function i(E,h){E.super_=h;var y=function(){};y.prototype=h.prototype,E.prototype=new y,E.prototype.constructor=E}function n(E,h,y){if(n.isBN(E))return E;this.negative=0,this.words=null,this.length=0,this.red=null,E!==null&&((h==="le"||h==="be")&&(y=h,h=10),this._init(E||0,h||10,y||"be"))}typeof e=="object"?e.exports=n:t.BN=n,n.BN=n,n.wordSize=26;var o;try{typeof window<"u"&&typeof window.Buffer<"u"?o=window.Buffer:o=rr().Buffer}catch{}n.isBN=function(h){return h instanceof n?!0:h!==null&&typeof h=="object"&&h.constructor.wordSize===n.wordSize&&Array.isArray(h.words)},n.max=function(h,y){return h.cmp(y)>0?h:y},n.min=function(h,y){return h.cmp(y)<0?h:y},n.prototype._init=function(h,y,w){if(typeof h=="number")return this._initNumber(h,y,w);if(typeof h=="object")return this._initArray(h,y,w);y==="hex"&&(y=16),r(y===(y|0)&&y>=2&&y<=36),h=h.toString().replace(/\s+/g,"");var S=0;h[0]==="-"&&(S++,this.negative=1),S<h.length&&(y===16?this._parseHex(h,S,w):(this._parseBase(h,y,S),w==="le"&&this._initArray(this.toArray(),y,w)))},n.prototype._initNumber=function(h,y,w){h<0&&(this.negative=1,h=-h),h<67108864?(this.words=[h&67108863],this.length=1):h<4503599627370496?(this.words=[h&67108863,h/67108864&67108863],this.length=2):(r(h<9007199254740992),this.words=[h&67108863,h/67108864&67108863,1],this.length=3),w==="le"&&this._initArray(this.toArray(),y,w)},n.prototype._initArray=function(h,y,w){if(r(typeof h.length=="number"),h.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(h.length/3),this.words=new Array(this.length);for(var S=0;S<this.length;S++)this.words[S]=0;var O,C,D=0;if(w==="be")for(S=h.length-1,O=0;S>=0;S-=3)C=h[S]|h[S-1]<<8|h[S-2]<<16,this.words[O]|=C<<D&67108863,this.words[O+1]=C>>>26-D&67108863,D+=24,D>=26&&(D-=26,O++);else if(w==="le")for(S=0,O=0;S<h.length;S+=3)C=h[S]|h[S+1]<<8|h[S+2]<<16,this.words[O]|=C<<D&67108863,this.words[O+1]=C>>>26-D&67108863,D+=24,D>=26&&(D-=26,O++);return this.strip()};function a(E,h){var y=E.charCodeAt(h);return y>=65&&y<=70?y-55:y>=97&&y<=102?y-87:y-48&15}function s(E,h,y){var w=a(E,y);return y-1>=h&&(w|=a(E,y-1)<<4),w}n.prototype._parseHex=function(h,y,w){this.length=Math.ceil((h.length-y)/6),this.words=new Array(this.length);for(var S=0;S<this.length;S++)this.words[S]=0;var O=0,C=0,D;if(w==="be")for(S=h.length-1;S>=y;S-=2)D=s(h,y,S)<<O,this.words[C]|=D&67108863,O>=18?(O-=18,C+=1,this.words[C]|=D>>>26):O+=8;else{var P=h.length-y;for(S=P%2===0?y+1:y;S<h.length;S+=2)D=s(h,y,S)<<O,this.words[C]|=D&67108863,O>=18?(O-=18,C+=1,this.words[C]|=D>>>26):O+=8}this.strip()};function u(E,h,y,w){for(var S=0,O=Math.min(E.length,y),C=h;C<O;C++){var D=E.charCodeAt(C)-48;S*=w,D>=49?S+=D-49+10:D>=17?S+=D-17+10:S+=D}return S}n.prototype._parseBase=function(h,y,w){this.words=[0],this.length=1;for(var S=0,O=1;O<=67108863;O*=y)S++;S--,O=O/y|0;for(var C=h.length-w,D=C%S,P=Math.min(C,C-D)+w,m=0,x=w;x<P;x+=S)m=u(h,x,x+S,y),this.imuln(O),this.words[0]+m<67108864?this.words[0]+=m:this._iaddn(m);if(D!==0){var K=1;for(m=u(h,x,h.length,y),x=0;x<D;x++)K*=y;this.imuln(K),this.words[0]+m<67108864?this.words[0]+=m:this._iaddn(m)}this.strip()},n.prototype.copy=function(h){h.words=new Array(this.length);for(var y=0;y<this.length;y++)h.words[y]=this.words[y];h.length=this.length,h.negative=this.negative,h.red=this.red},n.prototype.clone=function(){var h=new n(null);return this.copy(h),h},n.prototype._expand=function(h){for(;this.length<h;)this.words[this.length++]=0;return this},n.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},n.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},n.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];n.prototype.toString=function(h,y){h=h||10,y=y|0||1;var w;if(h===16||h==="hex"){w="";for(var S=0,O=0,C=0;C<this.length;C++){var D=this.words[C],P=((D<<S|O)&16777215).toString(16);O=D>>>24-S&16777215,S+=2,S>=26&&(S-=26,C--),O!==0||C!==this.length-1?w=c[6-P.length]+P+w:w=P+w}for(O!==0&&(w=O.toString(16)+w);w.length%y!==0;)w="0"+w;return this.negative!==0&&(w="-"+w),w}if(h===(h|0)&&h>=2&&h<=36){var m=l[h],x=p[h];w="";var K=this.clone();for(K.negative=0;!K.isZero();){var U=K.modn(x).toString(h);K=K.idivn(x),K.isZero()?w=U+w:w=c[m-U.length]+U+w}for(this.isZero()&&(w="0"+w);w.length%y!==0;)w="0"+w;return this.negative!==0&&(w="-"+w),w}r(!1,"Base should be between 2 and 36")},n.prototype.toNumber=function(){var h=this.words[0];return this.length===2?h+=this.words[1]*67108864:this.length===3&&this.words[2]===1?h+=4503599627370496+this.words[1]*67108864:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-h:h},n.prototype.toJSON=function(){return this.toString(16)},n.prototype.toBuffer=function(h,y){return r(typeof o<"u"),this.toArrayLike(o,h,y)},n.prototype.toArray=function(h,y){return this.toArrayLike(Array,h,y)},n.prototype.toArrayLike=function(h,y,w){var S=this.byteLength(),O=w||Math.max(1,S);r(S<=O,"byte array longer than desired length"),r(O>0,"Requested array length <= 0"),this.strip();var C=y==="le",D=new h(O),P,m,x=this.clone();if(C){for(m=0;!x.isZero();m++)P=x.andln(255),x.iushrn(8),D[m]=P;for(;m<O;m++)D[m]=0}else{for(m=0;m<O-S;m++)D[m]=0;for(m=0;!x.isZero();m++)P=x.andln(255),x.iushrn(8),D[O-m-1]=P}return D},Math.clz32?n.prototype._countBits=function(h){return 32-Math.clz32(h)}:n.prototype._countBits=function(h){var y=h,w=0;return y>=4096&&(w+=13,y>>>=13),y>=64&&(w+=7,y>>>=7),y>=8&&(w+=4,y>>>=4),y>=2&&(w+=2,y>>>=2),w+y},n.prototype._zeroBits=function(h){if(h===0)return 26;var y=h,w=0;return(y&8191)===0&&(w+=13,y>>>=13),(y&127)===0&&(w+=7,y>>>=7),(y&15)===0&&(w+=4,y>>>=4),(y&3)===0&&(w+=2,y>>>=2),(y&1)===0&&w++,w},n.prototype.bitLength=function(){var h=this.words[this.length-1],y=this._countBits(h);return(this.length-1)*26+y};function d(E){for(var h=new Array(E.bitLength()),y=0;y<h.length;y++){var w=y/26|0,S=y%26;h[y]=(E.words[w]&1<<S)>>>S}return h}n.prototype.zeroBits=function(){if(this.isZero())return 0;for(var h=0,y=0;y<this.length;y++){var w=this._zeroBits(this.words[y]);if(h+=w,w!==26)break}return h},n.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},n.prototype.toTwos=function(h){return this.negative!==0?this.abs().inotn(h).iaddn(1):this.clone()},n.prototype.fromTwos=function(h){return this.testn(h-1)?this.notn(h).iaddn(1).ineg():this.clone()},n.prototype.isNeg=function(){return this.negative!==0},n.prototype.neg=function(){return this.clone().ineg()},n.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},n.prototype.iuor=function(h){for(;this.length<h.length;)this.words[this.length++]=0;for(var y=0;y<h.length;y++)this.words[y]=this.words[y]|h.words[y];return this.strip()},n.prototype.ior=function(h){return r((this.negative|h.negative)===0),this.iuor(h)},n.prototype.or=function(h){return this.length>h.length?this.clone().ior(h):h.clone().ior(this)},n.prototype.uor=function(h){return this.length>h.length?this.clone().iuor(h):h.clone().iuor(this)},n.prototype.iuand=function(h){var y;this.length>h.length?y=h:y=this;for(var w=0;w<y.length;w++)this.words[w]=this.words[w]&h.words[w];return this.length=y.length,this.strip()},n.prototype.iand=function(h){return r((this.negative|h.negative)===0),this.iuand(h)},n.prototype.and=function(h){return this.length>h.length?this.clone().iand(h):h.clone().iand(this)},n.prototype.uand=function(h){return this.length>h.length?this.clone().iuand(h):h.clone().iuand(this)},n.prototype.iuxor=function(h){var y,w;this.length>h.length?(y=this,w=h):(y=h,w=this);for(var S=0;S<w.length;S++)this.words[S]=y.words[S]^w.words[S];if(this!==y)for(;S<y.length;S++)this.words[S]=y.words[S];return this.length=y.length,this.strip()},n.prototype.ixor=function(h){return r((this.negative|h.negative)===0),this.iuxor(h)},n.prototype.xor=function(h){return this.length>h.length?this.clone().ixor(h):h.clone().ixor(this)},n.prototype.uxor=function(h){return this.length>h.length?this.clone().iuxor(h):h.clone().iuxor(this)},n.prototype.inotn=function(h){r(typeof h=="number"&&h>=0);var y=Math.ceil(h/26)|0,w=h%26;this._expand(y),w>0&&y--;for(var S=0;S<y;S++)this.words[S]=~this.words[S]&67108863;for(w>0&&(this.words[S]=~this.words[S]&67108863>>26-w,S++);S<this.length;S++)this.words[S]=0;return this.strip()},n.prototype.notn=function(h){return this.clone().inotn(h)},n.prototype.setn=function(h,y){r(typeof h=="number"&&h>=0);var w=h/26|0,S=h%26;return this._expand(w+1),y?this.words[w]=this.words[w]|1<<S:this.words[w]=this.words[w]&~(1<<S),this.strip()},n.prototype.iadd=function(h){var y;if(this.negative!==0&&h.negative===0)return this.negative=0,y=this.isub(h),this.negative^=1,this._normSign();if(this.negative===0&&h.negative!==0)return h.negative=0,y=this.isub(h),h.negative=1,y._normSign();var w,S;this.length>h.length?(w=this,S=h):(w=h,S=this);for(var O=0,C=0;C<S.length;C++)y=(w.words[C]|0)+(S.words[C]|0)+O,this.words[C]=y&67108863,O=y>>>26;for(;O!==0&&C<w.length;C++)y=(w.words[C]|0)+O,this.words[C]=y&67108863,O=y>>>26;if(this.length=w.length,O!==0)this.words[this.length]=O,this.length++;else if(w!==this)for(;C<w.length;C++)this.words[C]=w.words[C];return this},n.prototype.add=function(h){var y;return h.negative!==0&&this.negative===0?(h.negative=0,y=this.sub(h),h.negative^=1,y):h.negative===0&&this.negative!==0?(this.negative=0,y=h.sub(this),this.negative=1,y):this.length>h.length?this.clone().iadd(h):h.clone().iadd(this)},n.prototype.isub=function(h){if(h.negative!==0){h.negative=0;var y=this.iadd(h);return h.negative=1,y._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(h),this.negative=1,this._normSign();var w=this.cmp(h);if(w===0)return this.negative=0,this.length=1,this.words[0]=0,this;var S,O;w>0?(S=this,O=h):(S=h,O=this);for(var C=0,D=0;D<O.length;D++)y=(S.words[D]|0)-(O.words[D]|0)+C,C=y>>26,this.words[D]=y&67108863;for(;C!==0&&D<S.length;D++)y=(S.words[D]|0)+C,C=y>>26,this.words[D]=y&67108863;if(C===0&&D<S.length&&S!==this)for(;D<S.length;D++)this.words[D]=S.words[D];return this.length=Math.max(this.length,D),S!==this&&(this.negative=1),this.strip()},n.prototype.sub=function(h){return this.clone().isub(h)};function v(E,h,y){y.negative=h.negative^E.negative;var w=E.length+h.length|0;y.length=w,w=w-1|0;var S=E.words[0]|0,O=h.words[0]|0,C=S*O,D=C&67108863,P=C/67108864|0;y.words[0]=D;for(var m=1;m<w;m++){for(var x=P>>>26,K=P&67108863,U=Math.min(m,h.length-1),G=Math.max(0,m-E.length+1);G<=U;G++){var te=m-G|0;S=E.words[te]|0,O=h.words[G]|0,C=S*O+K,x+=C/67108864|0,K=C&67108863}y.words[m]=K|0,P=x|0}return P!==0?y.words[m]=P|0:y.length--,y.strip()}var _=function(h,y,w){var S=h.words,O=y.words,C=w.words,D=0,P,m,x,K=S[0]|0,U=K&8191,G=K>>>13,te=S[1]|0,ae=te&8191,oe=te>>>13,le=S[2]|0,he=le&8191,ve=le>>>13,je=S[3]|0,be=je&8191,_e=je>>>13,We=S[4]|0,Pe=We&8191,Me=We>>>13,rt=S[5]|0,Be=rt&8191,vt=rt>>>13,ui=S[6]|0,Et=ui&8191,_t=ui>>>13,Yn=S[7]|0,Lt=Yn&8191,N=Yn>>>13,W=S[8]|0,X=W&8191,ie=W>>>13,pe=S[9]|0,se=pe&8191,me=pe>>>13,ge=O[0]|0,ke=ge&8191,Oe=ge>>>13,Ye=O[1]|0,Ze=Ye&8191,Pt=Ye>>>13,Mt=O[2]|0,$e=Mt&8191,Ee=Mt>>>13,Jt=O[3]|0,wt=Jt&8191,Ft=Jt>>>13,Hu=O[4]|0,Dt=Hu&8191,gr=Hu>>>13,wE=O[5]|0,mr=wE&8191,vr=wE>>>13,SE=O[6]|0,yr=SE&8191,br=SE>>>13,EE=O[7]|0,_r=EE&8191,wr=EE>>>13,xE=O[8]|0,Sr=xE&8191,Er=xE>>>13,OE=O[9]|0,xr=OE&8191,Or=OE>>>13;w.negative=h.negative^y.negative,w.length=19,P=Math.imul(U,ke),m=Math.imul(U,Oe),m=m+Math.imul(G,ke)|0,x=Math.imul(G,Oe);var Hv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Hv>>>26)|0,Hv&=67108863,P=Math.imul(ae,ke),m=Math.imul(ae,Oe),m=m+Math.imul(oe,ke)|0,x=Math.imul(oe,Oe),P=P+Math.imul(U,Ze)|0,m=m+Math.imul(U,Pt)|0,m=m+Math.imul(G,Ze)|0,x=x+Math.imul(G,Pt)|0;var qv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(qv>>>26)|0,qv&=67108863,P=Math.imul(he,ke),m=Math.imul(he,Oe),m=m+Math.imul(ve,ke)|0,x=Math.imul(ve,Oe),P=P+Math.imul(ae,Ze)|0,m=m+Math.imul(ae,Pt)|0,m=m+Math.imul(oe,Ze)|0,x=x+Math.imul(oe,Pt)|0,P=P+Math.imul(U,$e)|0,m=m+Math.imul(U,Ee)|0,m=m+Math.imul(G,$e)|0,x=x+Math.imul(G,Ee)|0;var Uv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Uv>>>26)|0,Uv&=67108863,P=Math.imul(be,ke),m=Math.imul(be,Oe),m=m+Math.imul(_e,ke)|0,x=Math.imul(_e,Oe),P=P+Math.imul(he,Ze)|0,m=m+Math.imul(he,Pt)|0,m=m+Math.imul(ve,Ze)|0,x=x+Math.imul(ve,Pt)|0,P=P+Math.imul(ae,$e)|0,m=m+Math.imul(ae,Ee)|0,m=m+Math.imul(oe,$e)|0,x=x+Math.imul(oe,Ee)|0,P=P+Math.imul(U,wt)|0,m=m+Math.imul(U,Ft)|0,m=m+Math.imul(G,wt)|0,x=x+Math.imul(G,Ft)|0;var Fv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Fv>>>26)|0,Fv&=67108863,P=Math.imul(Pe,ke),m=Math.imul(Pe,Oe),m=m+Math.imul(Me,ke)|0,x=Math.imul(Me,Oe),P=P+Math.imul(be,Ze)|0,m=m+Math.imul(be,Pt)|0,m=m+Math.imul(_e,Ze)|0,x=x+Math.imul(_e,Pt)|0,P=P+Math.imul(he,$e)|0,m=m+Math.imul(he,Ee)|0,m=m+Math.imul(ve,$e)|0,x=x+Math.imul(ve,Ee)|0,P=P+Math.imul(ae,wt)|0,m=m+Math.imul(ae,Ft)|0,m=m+Math.imul(oe,wt)|0,x=x+Math.imul(oe,Ft)|0,P=P+Math.imul(U,Dt)|0,m=m+Math.imul(U,gr)|0,m=m+Math.imul(G,Dt)|0,x=x+Math.imul(G,gr)|0;var jv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(jv>>>26)|0,jv&=67108863,P=Math.imul(Be,ke),m=Math.imul(Be,Oe),m=m+Math.imul(vt,ke)|0,x=Math.imul(vt,Oe),P=P+Math.imul(Pe,Ze)|0,m=m+Math.imul(Pe,Pt)|0,m=m+Math.imul(Me,Ze)|0,x=x+Math.imul(Me,Pt)|0,P=P+Math.imul(be,$e)|0,m=m+Math.imul(be,Ee)|0,m=m+Math.imul(_e,$e)|0,x=x+Math.imul(_e,Ee)|0,P=P+Math.imul(he,wt)|0,m=m+Math.imul(he,Ft)|0,m=m+Math.imul(ve,wt)|0,x=x+Math.imul(ve,Ft)|0,P=P+Math.imul(ae,Dt)|0,m=m+Math.imul(ae,gr)|0,m=m+Math.imul(oe,Dt)|0,x=x+Math.imul(oe,gr)|0,P=P+Math.imul(U,mr)|0,m=m+Math.imul(U,vr)|0,m=m+Math.imul(G,mr)|0,x=x+Math.imul(G,vr)|0;var zv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(zv>>>26)|0,zv&=67108863,P=Math.imul(Et,ke),m=Math.imul(Et,Oe),m=m+Math.imul(_t,ke)|0,x=Math.imul(_t,Oe),P=P+Math.imul(Be,Ze)|0,m=m+Math.imul(Be,Pt)|0,m=m+Math.imul(vt,Ze)|0,x=x+Math.imul(vt,Pt)|0,P=P+Math.imul(Pe,$e)|0,m=m+Math.imul(Pe,Ee)|0,m=m+Math.imul(Me,$e)|0,x=x+Math.imul(Me,Ee)|0,P=P+Math.imul(be,wt)|0,m=m+Math.imul(be,Ft)|0,m=m+Math.imul(_e,wt)|0,x=x+Math.imul(_e,Ft)|0,P=P+Math.imul(he,Dt)|0,m=m+Math.imul(he,gr)|0,m=m+Math.imul(ve,Dt)|0,x=x+Math.imul(ve,gr)|0,P=P+Math.imul(ae,mr)|0,m=m+Math.imul(ae,vr)|0,m=m+Math.imul(oe,mr)|0,x=x+Math.imul(oe,vr)|0,P=P+Math.imul(U,yr)|0,m=m+Math.imul(U,br)|0,m=m+Math.imul(G,yr)|0,x=x+Math.imul(G,br)|0;var Kv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Kv>>>26)|0,Kv&=67108863,P=Math.imul(Lt,ke),m=Math.imul(Lt,Oe),m=m+Math.imul(N,ke)|0,x=Math.imul(N,Oe),P=P+Math.imul(Et,Ze)|0,m=m+Math.imul(Et,Pt)|0,m=m+Math.imul(_t,Ze)|0,x=x+Math.imul(_t,Pt)|0,P=P+Math.imul(Be,$e)|0,m=m+Math.imul(Be,Ee)|0,m=m+Math.imul(vt,$e)|0,x=x+Math.imul(vt,Ee)|0,P=P+Math.imul(Pe,wt)|0,m=m+Math.imul(Pe,Ft)|0,m=m+Math.imul(Me,wt)|0,x=x+Math.imul(Me,Ft)|0,P=P+Math.imul(be,Dt)|0,m=m+Math.imul(be,gr)|0,m=m+Math.imul(_e,Dt)|0,x=x+Math.imul(_e,gr)|0,P=P+Math.imul(he,mr)|0,m=m+Math.imul(he,vr)|0,m=m+Math.imul(ve,mr)|0,x=x+Math.imul(ve,vr)|0,P=P+Math.imul(ae,yr)|0,m=m+Math.imul(ae,br)|0,m=m+Math.imul(oe,yr)|0,x=x+Math.imul(oe,br)|0,P=P+Math.imul(U,_r)|0,m=m+Math.imul(U,wr)|0,m=m+Math.imul(G,_r)|0,x=x+Math.imul(G,wr)|0;var Vv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Vv>>>26)|0,Vv&=67108863,P=Math.imul(X,ke),m=Math.imul(X,Oe),m=m+Math.imul(ie,ke)|0,x=Math.imul(ie,Oe),P=P+Math.imul(Lt,Ze)|0,m=m+Math.imul(Lt,Pt)|0,m=m+Math.imul(N,Ze)|0,x=x+Math.imul(N,Pt)|0,P=P+Math.imul(Et,$e)|0,m=m+Math.imul(Et,Ee)|0,m=m+Math.imul(_t,$e)|0,x=x+Math.imul(_t,Ee)|0,P=P+Math.imul(Be,wt)|0,m=m+Math.imul(Be,Ft)|0,m=m+Math.imul(vt,wt)|0,x=x+Math.imul(vt,Ft)|0,P=P+Math.imul(Pe,Dt)|0,m=m+Math.imul(Pe,gr)|0,m=m+Math.imul(Me,Dt)|0,x=x+Math.imul(Me,gr)|0,P=P+Math.imul(be,mr)|0,m=m+Math.imul(be,vr)|0,m=m+Math.imul(_e,mr)|0,x=x+Math.imul(_e,vr)|0,P=P+Math.imul(he,yr)|0,m=m+Math.imul(he,br)|0,m=m+Math.imul(ve,yr)|0,x=x+Math.imul(ve,br)|0,P=P+Math.imul(ae,_r)|0,m=m+Math.imul(ae,wr)|0,m=m+Math.imul(oe,_r)|0,x=x+Math.imul(oe,wr)|0,P=P+Math.imul(U,Sr)|0,m=m+Math.imul(U,Er)|0,m=m+Math.imul(G,Sr)|0,x=x+Math.imul(G,Er)|0;var Gv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Gv>>>26)|0,Gv&=67108863,P=Math.imul(se,ke),m=Math.imul(se,Oe),m=m+Math.imul(me,ke)|0,x=Math.imul(me,Oe),P=P+Math.imul(X,Ze)|0,m=m+Math.imul(X,Pt)|0,m=m+Math.imul(ie,Ze)|0,x=x+Math.imul(ie,Pt)|0,P=P+Math.imul(Lt,$e)|0,m=m+Math.imul(Lt,Ee)|0,m=m+Math.imul(N,$e)|0,x=x+Math.imul(N,Ee)|0,P=P+Math.imul(Et,wt)|0,m=m+Math.imul(Et,Ft)|0,m=m+Math.imul(_t,wt)|0,x=x+Math.imul(_t,Ft)|0,P=P+Math.imul(Be,Dt)|0,m=m+Math.imul(Be,gr)|0,m=m+Math.imul(vt,Dt)|0,x=x+Math.imul(vt,gr)|0,P=P+Math.imul(Pe,mr)|0,m=m+Math.imul(Pe,vr)|0,m=m+Math.imul(Me,mr)|0,x=x+Math.imul(Me,vr)|0,P=P+Math.imul(be,yr)|0,m=m+Math.imul(be,br)|0,m=m+Math.imul(_e,yr)|0,x=x+Math.imul(_e,br)|0,P=P+Math.imul(he,_r)|0,m=m+Math.imul(he,wr)|0,m=m+Math.imul(ve,_r)|0,x=x+Math.imul(ve,wr)|0,P=P+Math.imul(ae,Sr)|0,m=m+Math.imul(ae,Er)|0,m=m+Math.imul(oe,Sr)|0,x=x+Math.imul(oe,Er)|0,P=P+Math.imul(U,xr)|0,m=m+Math.imul(U,Or)|0,m=m+Math.imul(G,xr)|0,x=x+Math.imul(G,Or)|0;var Wv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Wv>>>26)|0,Wv&=67108863,P=Math.imul(se,Ze),m=Math.imul(se,Pt),m=m+Math.imul(me,Ze)|0,x=Math.imul(me,Pt),P=P+Math.imul(X,$e)|0,m=m+Math.imul(X,Ee)|0,m=m+Math.imul(ie,$e)|0,x=x+Math.imul(ie,Ee)|0,P=P+Math.imul(Lt,wt)|0,m=m+Math.imul(Lt,Ft)|0,m=m+Math.imul(N,wt)|0,x=x+Math.imul(N,Ft)|0,P=P+Math.imul(Et,Dt)|0,m=m+Math.imul(Et,gr)|0,m=m+Math.imul(_t,Dt)|0,x=x+Math.imul(_t,gr)|0,P=P+Math.imul(Be,mr)|0,m=m+Math.imul(Be,vr)|0,m=m+Math.imul(vt,mr)|0,x=x+Math.imul(vt,vr)|0,P=P+Math.imul(Pe,yr)|0,m=m+Math.imul(Pe,br)|0,m=m+Math.imul(Me,yr)|0,x=x+Math.imul(Me,br)|0,P=P+Math.imul(be,_r)|0,m=m+Math.imul(be,wr)|0,m=m+Math.imul(_e,_r)|0,x=x+Math.imul(_e,wr)|0,P=P+Math.imul(he,Sr)|0,m=m+Math.imul(he,Er)|0,m=m+Math.imul(ve,Sr)|0,x=x+Math.imul(ve,Er)|0,P=P+Math.imul(ae,xr)|0,m=m+Math.imul(ae,Or)|0,m=m+Math.imul(oe,xr)|0,x=x+Math.imul(oe,Or)|0;var Yv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Yv>>>26)|0,Yv&=67108863,P=Math.imul(se,$e),m=Math.imul(se,Ee),m=m+Math.imul(me,$e)|0,x=Math.imul(me,Ee),P=P+Math.imul(X,wt)|0,m=m+Math.imul(X,Ft)|0,m=m+Math.imul(ie,wt)|0,x=x+Math.imul(ie,Ft)|0,P=P+Math.imul(Lt,Dt)|0,m=m+Math.imul(Lt,gr)|0,m=m+Math.imul(N,Dt)|0,x=x+Math.imul(N,gr)|0,P=P+Math.imul(Et,mr)|0,m=m+Math.imul(Et,vr)|0,m=m+Math.imul(_t,mr)|0,x=x+Math.imul(_t,vr)|0,P=P+Math.imul(Be,yr)|0,m=m+Math.imul(Be,br)|0,m=m+Math.imul(vt,yr)|0,x=x+Math.imul(vt,br)|0,P=P+Math.imul(Pe,_r)|0,m=m+Math.imul(Pe,wr)|0,m=m+Math.imul(Me,_r)|0,x=x+Math.imul(Me,wr)|0,P=P+Math.imul(be,Sr)|0,m=m+Math.imul(be,Er)|0,m=m+Math.imul(_e,Sr)|0,x=x+Math.imul(_e,Er)|0,P=P+Math.imul(he,xr)|0,m=m+Math.imul(he,Or)|0,m=m+Math.imul(ve,xr)|0,x=x+Math.imul(ve,Or)|0;var Zv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Zv>>>26)|0,Zv&=67108863,P=Math.imul(se,wt),m=Math.imul(se,Ft),m=m+Math.imul(me,wt)|0,x=Math.imul(me,Ft),P=P+Math.imul(X,Dt)|0,m=m+Math.imul(X,gr)|0,m=m+Math.imul(ie,Dt)|0,x=x+Math.imul(ie,gr)|0,P=P+Math.imul(Lt,mr)|0,m=m+Math.imul(Lt,vr)|0,m=m+Math.imul(N,mr)|0,x=x+Math.imul(N,vr)|0,P=P+Math.imul(Et,yr)|0,m=m+Math.imul(Et,br)|0,m=m+Math.imul(_t,yr)|0,x=x+Math.imul(_t,br)|0,P=P+Math.imul(Be,_r)|0,m=m+Math.imul(Be,wr)|0,m=m+Math.imul(vt,_r)|0,x=x+Math.imul(vt,wr)|0,P=P+Math.imul(Pe,Sr)|0,m=m+Math.imul(Pe,Er)|0,m=m+Math.imul(Me,Sr)|0,x=x+Math.imul(Me,Er)|0,P=P+Math.imul(be,xr)|0,m=m+Math.imul(be,Or)|0,m=m+Math.imul(_e,xr)|0,x=x+Math.imul(_e,Or)|0;var $v=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+($v>>>26)|0,$v&=67108863,P=Math.imul(se,Dt),m=Math.imul(se,gr),m=m+Math.imul(me,Dt)|0,x=Math.imul(me,gr),P=P+Math.imul(X,mr)|0,m=m+Math.imul(X,vr)|0,m=m+Math.imul(ie,mr)|0,x=x+Math.imul(ie,vr)|0,P=P+Math.imul(Lt,yr)|0,m=m+Math.imul(Lt,br)|0,m=m+Math.imul(N,yr)|0,x=x+Math.imul(N,br)|0,P=P+Math.imul(Et,_r)|0,m=m+Math.imul(Et,wr)|0,m=m+Math.imul(_t,_r)|0,x=x+Math.imul(_t,wr)|0,P=P+Math.imul(Be,Sr)|0,m=m+Math.imul(Be,Er)|0,m=m+Math.imul(vt,Sr)|0,x=x+Math.imul(vt,Er)|0,P=P+Math.imul(Pe,xr)|0,m=m+Math.imul(Pe,Or)|0,m=m+Math.imul(Me,xr)|0,x=x+Math.imul(Me,Or)|0;var Xv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Xv>>>26)|0,Xv&=67108863,P=Math.imul(se,mr),m=Math.imul(se,vr),m=m+Math.imul(me,mr)|0,x=Math.imul(me,vr),P=P+Math.imul(X,yr)|0,m=m+Math.imul(X,br)|0,m=m+Math.imul(ie,yr)|0,x=x+Math.imul(ie,br)|0,P=P+Math.imul(Lt,_r)|0,m=m+Math.imul(Lt,wr)|0,m=m+Math.imul(N,_r)|0,x=x+Math.imul(N,wr)|0,P=P+Math.imul(Et,Sr)|0,m=m+Math.imul(Et,Er)|0,m=m+Math.imul(_t,Sr)|0,x=x+Math.imul(_t,Er)|0,P=P+Math.imul(Be,xr)|0,m=m+Math.imul(Be,Or)|0,m=m+Math.imul(vt,xr)|0,x=x+Math.imul(vt,Or)|0;var Jv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Jv>>>26)|0,Jv&=67108863,P=Math.imul(se,yr),m=Math.imul(se,br),m=m+Math.imul(me,yr)|0,x=Math.imul(me,br),P=P+Math.imul(X,_r)|0,m=m+Math.imul(X,wr)|0,m=m+Math.imul(ie,_r)|0,x=x+Math.imul(ie,wr)|0,P=P+Math.imul(Lt,Sr)|0,m=m+Math.imul(Lt,Er)|0,m=m+Math.imul(N,Sr)|0,x=x+Math.imul(N,Er)|0,P=P+Math.imul(Et,xr)|0,m=m+Math.imul(Et,Or)|0,m=m+Math.imul(_t,xr)|0,x=x+Math.imul(_t,Or)|0;var Qv=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(Qv>>>26)|0,Qv&=67108863,P=Math.imul(se,_r),m=Math.imul(se,wr),m=m+Math.imul(me,_r)|0,x=Math.imul(me,wr),P=P+Math.imul(X,Sr)|0,m=m+Math.imul(X,Er)|0,m=m+Math.imul(ie,Sr)|0,x=x+Math.imul(ie,Er)|0,P=P+Math.imul(Lt,xr)|0,m=m+Math.imul(Lt,Or)|0,m=m+Math.imul(N,xr)|0,x=x+Math.imul(N,Or)|0;var e0=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(e0>>>26)|0,e0&=67108863,P=Math.imul(se,Sr),m=Math.imul(se,Er),m=m+Math.imul(me,Sr)|0,x=Math.imul(me,Er),P=P+Math.imul(X,xr)|0,m=m+Math.imul(X,Or)|0,m=m+Math.imul(ie,xr)|0,x=x+Math.imul(ie,Or)|0;var t0=(D+P|0)+((m&8191)<<13)|0;D=(x+(m>>>13)|0)+(t0>>>26)|0,t0&=67108863,P=Math.imul(se,xr),m=Math.imul(se,Or),m=m+Math.imul(me,xr)|0,x=Math.imul(me,Or);var r0=(D+P|0)+((m&8191)<<13)|0;return D=(x+(m>>>13)|0)+(r0>>>26)|0,r0&=67108863,C[0]=Hv,C[1]=qv,C[2]=Uv,C[3]=Fv,C[4]=jv,C[5]=zv,C[6]=Kv,C[7]=Vv,C[8]=Gv,C[9]=Wv,C[10]=Yv,C[11]=Zv,C[12]=$v,C[13]=Xv,C[14]=Jv,C[15]=Qv,C[16]=e0,C[17]=t0,C[18]=r0,D!==0&&(C[19]=D,w.length++),w};Math.imul||(_=v);function I(E,h,y){y.negative=h.negative^E.negative,y.length=E.length+h.length;for(var w=0,S=0,O=0;O<y.length-1;O++){var C=S;S=0;for(var D=w&67108863,P=Math.min(O,h.length-1),m=Math.max(0,O-E.length+1);m<=P;m++){var x=O-m,K=E.words[x]|0,U=h.words[m]|0,G=K*U,te=G&67108863;C=C+(G/67108864|0)|0,te=te+D|0,D=te&67108863,C=C+(te>>>26)|0,S+=C>>>26,C&=67108863}y.words[O]=D,w=C,C=S}return w!==0?y.words[O]=w:y.length--,y.strip()}function R(E,h,y){var w=new k;return w.mulp(E,h,y)}n.prototype.mulTo=function(h,y){var w,S=this.length+h.length;return this.length===10&&h.length===10?w=_(this,h,y):S<63?w=v(this,h,y):S<1024?w=I(this,h,y):w=R(this,h,y),w};function k(E,h){this.x=E,this.y=h}k.prototype.makeRBT=function(h){for(var y=new Array(h),w=n.prototype._countBits(h)-1,S=0;S<h;S++)y[S]=this.revBin(S,w,h);return y},k.prototype.revBin=function(h,y,w){if(h===0||h===w-1)return h;for(var S=0,O=0;O<y;O++)S|=(h&1)<<y-O-1,h>>=1;return S},k.prototype.permute=function(h,y,w,S,O,C){for(var D=0;D<C;D++)S[D]=y[h[D]],O[D]=w[h[D]]},k.prototype.transform=function(h,y,w,S,O,C){this.permute(C,h,y,w,S,O);for(var D=1;D<O;D<<=1)for(var P=D<<1,m=Math.cos(2*Math.PI/P),x=Math.sin(2*Math.PI/P),K=0;K<O;K+=P)for(var U=m,G=x,te=0;te<D;te++){var ae=w[K+te],oe=S[K+te],le=w[K+te+D],he=S[K+te+D],ve=U*le-G*he;he=U*he+G*le,le=ve,w[K+te]=ae+le,S[K+te]=oe+he,w[K+te+D]=ae-le,S[K+te+D]=oe-he,te!==P&&(ve=m*U-x*G,G=m*G+x*U,U=ve)}},k.prototype.guessLen13b=function(h,y){var w=Math.max(y,h)|1,S=w&1,O=0;for(w=w/2|0;w;w=w>>>1)O++;return 1<<O+1+S},k.prototype.conjugate=function(h,y,w){if(!(w<=1))for(var S=0;S<w/2;S++){var O=h[S];h[S]=h[w-S-1],h[w-S-1]=O,O=y[S],y[S]=-y[w-S-1],y[w-S-1]=-O}},k.prototype.normalize13b=function(h,y){for(var w=0,S=0;S<y/2;S++){var O=Math.round(h[2*S+1]/y)*8192+Math.round(h[2*S]/y)+w;h[S]=O&67108863,O<67108864?w=0:w=O/67108864|0}return h},k.prototype.convert13b=function(h,y,w,S){for(var O=0,C=0;C<y;C++)O=O+(h[C]|0),w[2*C]=O&8191,O=O>>>13,w[2*C+1]=O&8191,O=O>>>13;for(C=2*y;C<S;++C)w[C]=0;r(O===0),r((O&-8192)===0)},k.prototype.stub=function(h){for(var y=new Array(h),w=0;w<h;w++)y[w]=0;return y},k.prototype.mulp=function(h,y,w){var S=2*this.guessLen13b(h.length,y.length),O=this.makeRBT(S),C=this.stub(S),D=new Array(S),P=new Array(S),m=new Array(S),x=new Array(S),K=new Array(S),U=new Array(S),G=w.words;G.length=S,this.convert13b(h.words,h.length,D,S),this.convert13b(y.words,y.length,x,S),this.transform(D,C,P,m,S,O),this.transform(x,C,K,U,S,O);for(var te=0;te<S;te++){var ae=P[te]*K[te]-m[te]*U[te];m[te]=P[te]*U[te]+m[te]*K[te],P[te]=ae}return this.conjugate(P,m,S),this.transform(P,m,G,C,S,O),this.conjugate(G,C,S),this.normalize13b(G,S),w.negative=h.negative^y.negative,w.length=h.length+y.length,w.strip()},n.prototype.mul=function(h){var y=new n(null);return y.words=new Array(this.length+h.length),this.mulTo(h,y)},n.prototype.mulf=function(h){var y=new n(null);return y.words=new Array(this.length+h.length),R(this,h,y)},n.prototype.imul=function(h){return this.clone().mulTo(h,this)},n.prototype.imuln=function(h){r(typeof h=="number"),r(h<67108864);for(var y=0,w=0;w<this.length;w++){var S=(this.words[w]|0)*h,O=(S&67108863)+(y&67108863);y>>=26,y+=S/67108864|0,y+=O>>>26,this.words[w]=O&67108863}return y!==0&&(this.words[w]=y,this.length++),h===0&&(this.length=1,this._normSign()),this},n.prototype.muln=function(h){return this.clone().imuln(h)},n.prototype.sqr=function(){return this.mul(this)},n.prototype.isqr=function(){return this.imul(this.clone())},n.prototype.pow=function(h){var y=d(h);if(y.length===0)return new n(1);for(var w=this,S=0;S<y.length&&y[S]===0;S++,w=w.sqr());if(++S<y.length)for(var O=w.sqr();S<y.length;S++,O=O.sqr())y[S]!==0&&(w=w.mul(O));return w},n.prototype.iushln=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26,S=67108863>>>26-y<<26-y,O;if(y!==0){var C=0;for(O=0;O<this.length;O++){var D=this.words[O]&S,P=(this.words[O]|0)-D<<y;this.words[O]=P|C,C=D>>>26-y}C&&(this.words[O]=C,this.length++)}if(w!==0){for(O=this.length-1;O>=0;O--)this.words[O+w]=this.words[O];for(O=0;O<w;O++)this.words[O]=0;this.length+=w}return this.strip()},n.prototype.ishln=function(h){return r(this.negative===0),this.iushln(h)},n.prototype.iushrn=function(h,y,w){r(typeof h=="number"&&h>=0);var S;y?S=(y-y%26)/26:S=0;var O=h%26,C=Math.min((h-O)/26,this.length),D=67108863^67108863>>>O<<O,P=w;if(S-=C,S=Math.max(0,S),P){for(var m=0;m<C;m++)P.words[m]=this.words[m];P.length=C}if(C!==0)if(this.length>C)for(this.length-=C,m=0;m<this.length;m++)this.words[m]=this.words[m+C];else this.words[0]=0,this.length=1;var x=0;for(m=this.length-1;m>=0&&(x!==0||m>=S);m--){var K=this.words[m]|0;this.words[m]=x<<26-O|K>>>O,x=K&D}return P&&x!==0&&(P.words[P.length++]=x),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.ishrn=function(h,y,w){return r(this.negative===0),this.iushrn(h,y,w)},n.prototype.shln=function(h){return this.clone().ishln(h)},n.prototype.ushln=function(h){return this.clone().iushln(h)},n.prototype.shrn=function(h){return this.clone().ishrn(h)},n.prototype.ushrn=function(h){return this.clone().iushrn(h)},n.prototype.testn=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26,S=1<<y;if(this.length<=w)return!1;var O=this.words[w];return!!(O&S)},n.prototype.imaskn=function(h){r(typeof h=="number"&&h>=0);var y=h%26,w=(h-y)/26;if(r(this.negative===0,"imaskn works only with positive numbers"),this.length<=w)return this;if(y!==0&&w++,this.length=Math.min(w,this.length),y!==0){var S=67108863^67108863>>>y<<y;this.words[this.length-1]&=S}return this.length===0&&(this.words[0]=0,this.length=1),this.strip()},n.prototype.maskn=function(h){return this.clone().imaskn(h)},n.prototype.iaddn=function(h){return r(typeof h=="number"),r(h<67108864),h<0?this.isubn(-h):this.negative!==0?this.length===1&&(this.words[0]|0)<h?(this.words[0]=h-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(h),this.negative=1,this):this._iaddn(h)},n.prototype._iaddn=function(h){this.words[0]+=h;for(var y=0;y<this.length&&this.words[y]>=67108864;y++)this.words[y]-=67108864,y===this.length-1?this.words[y+1]=1:this.words[y+1]++;return this.length=Math.max(this.length,y+1),this},n.prototype.isubn=function(h){if(r(typeof h=="number"),r(h<67108864),h<0)return this.iaddn(-h);if(this.negative!==0)return this.negative=0,this.iaddn(h),this.negative=1,this;if(this.words[0]-=h,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var y=0;y<this.length&&this.words[y]<0;y++)this.words[y]+=67108864,this.words[y+1]-=1;return this.strip()},n.prototype.addn=function(h){return this.clone().iaddn(h)},n.prototype.subn=function(h){return this.clone().isubn(h)},n.prototype.iabs=function(){return this.negative=0,this},n.prototype.abs=function(){return this.clone().iabs()},n.prototype._ishlnsubmul=function(h,y,w){var S=h.length+w,O;this._expand(S);var C,D=0;for(O=0;O<h.length;O++){C=(this.words[O+w]|0)+D;var P=(h.words[O]|0)*y;C-=P&67108863,D=(C>>26)-(P/67108864|0),this.words[O+w]=C&67108863}for(;O<this.length-w;O++)C=(this.words[O+w]|0)+D,D=C>>26,this.words[O+w]=C&67108863;if(D===0)return this.strip();for(r(D===-1),D=0,O=0;O<this.length;O++)C=-(this.words[O]|0)+D,D=C>>26,this.words[O]=C&67108863;return this.negative=1,this.strip()},n.prototype._wordDiv=function(h,y){var w=this.length-h.length,S=this.clone(),O=h,C=O.words[O.length-1]|0,D=this._countBits(C);w=26-D,w!==0&&(O=O.ushln(w),S.iushln(w),C=O.words[O.length-1]|0);var P=S.length-O.length,m;if(y!=="mod"){m=new n(null),m.length=P+1,m.words=new Array(m.length);for(var x=0;x<m.length;x++)m.words[x]=0}var K=S.clone()._ishlnsubmul(O,1,P);K.negative===0&&(S=K,m&&(m.words[P]=1));for(var U=P-1;U>=0;U--){var G=(S.words[O.length+U]|0)*67108864+(S.words[O.length+U-1]|0);for(G=Math.min(G/C|0,67108863),S._ishlnsubmul(O,G,U);S.negative!==0;)G--,S.negative=0,S._ishlnsubmul(O,1,U),S.isZero()||(S.negative^=1);m&&(m.words[U]=G)}return m&&m.strip(),S.strip(),y!=="div"&&w!==0&&S.iushrn(w),{div:m||null,mod:S}},n.prototype.divmod=function(h,y,w){if(r(!h.isZero()),this.isZero())return{div:new n(0),mod:new n(0)};var S,O,C;return this.negative!==0&&h.negative===0?(C=this.neg().divmod(h,y),y!=="mod"&&(S=C.div.neg()),y!=="div"&&(O=C.mod.neg(),w&&O.negative!==0&&O.iadd(h)),{div:S,mod:O}):this.negative===0&&h.negative!==0?(C=this.divmod(h.neg(),y),y!=="mod"&&(S=C.div.neg()),{div:S,mod:C.mod}):(this.negative&h.negative)!==0?(C=this.neg().divmod(h.neg(),y),y!=="div"&&(O=C.mod.neg(),w&&O.negative!==0&&O.isub(h)),{div:C.div,mod:O}):h.length>this.length||this.cmp(h)<0?{div:new n(0),mod:this}:h.length===1?y==="div"?{div:this.divn(h.words[0]),mod:null}:y==="mod"?{div:null,mod:new n(this.modn(h.words[0]))}:{div:this.divn(h.words[0]),mod:new n(this.modn(h.words[0]))}:this._wordDiv(h,y)},n.prototype.div=function(h){return this.divmod(h,"div",!1).div},n.prototype.mod=function(h){return this.divmod(h,"mod",!1).mod},n.prototype.umod=function(h){return this.divmod(h,"mod",!0).mod},n.prototype.divRound=function(h){var y=this.divmod(h);if(y.mod.isZero())return y.div;var w=y.mod.abs(),S=h.abs().iushrn(1),O=h.words[0]&1,C=w.cmp(S);if(C<0||O===1&&C===0)return y.div;var D=new n(1);return D.negative=this.negative^h.negative,y.div.iadd(D)},n.prototype.modn=function(h){r(h<=67108863);for(var y=(1<<26)%h,w=0,S=this.length-1;S>=0;S--)w=(y*w+(this.words[S]|0))%h;return w},n.prototype.idivn=function(h){r(h<=67108863);for(var y=0,w=this.length-1;w>=0;w--){var S=(this.words[w]|0)+y*67108864;this.words[w]=S/h|0,y=S%h}return this.strip()},n.prototype.divn=function(h){return this.clone().idivn(h)},n.prototype.egcd=function(h){r(h.negative===0),r(!h.isZero());var y=this,w=h.clone();y.negative!==0?y=y.umod(h):y=y.clone();for(var S=new n(1),O=new n(0),C=new n(0),D=new n(1),P=0;y.isEven()&&w.isEven();)y.iushrn(1),w.iushrn(1),++P;for(var m=w.clone(),x=y.clone();!y.isZero();){for(var K=0,U=1;(y.words[0]&U)===0&&K<26;++K,U<<=1);if(K>0)for(y.iushrn(K);K-- >0;)(S.isOdd()||O.isOdd())&&(S.iadd(m),O.isub(x)),S.iushrn(1),O.iushrn(1);for(var G=0,te=1;(w.words[0]&te)===0&&G<26;++G,te<<=1);if(G>0)for(w.iushrn(G);G-- >0;)(C.isOdd()||D.isOdd())&&(C.iadd(m),D.isub(x)),C.iushrn(1),D.iushrn(1);y.cmp(w)>=0?(y.isub(w),S.isub(C),O.isub(D)):(w.isub(y),C.isub(S),D.isub(O))}return{a:C,b:D,gcd:w.iushln(P)}},n.prototype._invmp=function(h){r(h.negative===0),r(!h.isZero());var y=this,w=h.clone();y.negative!==0?y=y.umod(h):y=y.clone();for(var S=new n(1),O=new n(0),C=w.clone();y.cmpn(1)>0&&w.cmpn(1)>0;){for(var D=0,P=1;(y.words[0]&P)===0&&D<26;++D,P<<=1);if(D>0)for(y.iushrn(D);D-- >0;)S.isOdd()&&S.iadd(C),S.iushrn(1);for(var m=0,x=1;(w.words[0]&x)===0&&m<26;++m,x<<=1);if(m>0)for(w.iushrn(m);m-- >0;)O.isOdd()&&O.iadd(C),O.iushrn(1);y.cmp(w)>=0?(y.isub(w),S.isub(O)):(w.isub(y),O.isub(S))}var K;return y.cmpn(1)===0?K=S:K=O,K.cmpn(0)<0&&K.iadd(h),K},n.prototype.gcd=function(h){if(this.isZero())return h.abs();if(h.isZero())return this.abs();var y=this.clone(),w=h.clone();y.negative=0,w.negative=0;for(var S=0;y.isEven()&&w.isEven();S++)y.iushrn(1),w.iushrn(1);do{for(;y.isEven();)y.iushrn(1);for(;w.isEven();)w.iushrn(1);var O=y.cmp(w);if(O<0){var C=y;y=w,w=C}else if(O===0||w.cmpn(1)===0)break;y.isub(w)}while(!0);return w.iushln(S)},n.prototype.invm=function(h){return this.egcd(h).a.umod(h)},n.prototype.isEven=function(){return(this.words[0]&1)===0},n.prototype.isOdd=function(){return(this.words[0]&1)===1},n.prototype.andln=function(h){return this.words[0]&h},n.prototype.bincn=function(h){r(typeof h=="number");var y=h%26,w=(h-y)/26,S=1<<y;if(this.length<=w)return this._expand(w+1),this.words[w]|=S,this;for(var O=S,C=w;O!==0&&C<this.length;C++){var D=this.words[C]|0;D+=O,O=D>>>26,D&=67108863,this.words[C]=D}return O!==0&&(this.words[C]=O,this.length++),this},n.prototype.isZero=function(){return this.length===1&&this.words[0]===0},n.prototype.cmpn=function(h){var y=h<0;if(this.negative!==0&&!y)return-1;if(this.negative===0&&y)return 1;this.strip();var w;if(this.length>1)w=1;else{y&&(h=-h),r(h<=67108863,"Number is too big");var S=this.words[0]|0;w=S===h?0:S<h?-1:1}return this.negative!==0?-w|0:w},n.prototype.cmp=function(h){if(this.negative!==0&&h.negative===0)return-1;if(this.negative===0&&h.negative!==0)return 1;var y=this.ucmp(h);return this.negative!==0?-y|0:y},n.prototype.ucmp=function(h){if(this.length>h.length)return 1;if(this.length<h.length)return-1;for(var y=0,w=this.length-1;w>=0;w--){var S=this.words[w]|0,O=h.words[w]|0;if(S!==O){S<O?y=-1:S>O&&(y=1);break}}return y},n.prototype.gtn=function(h){return this.cmpn(h)===1},n.prototype.gt=function(h){return this.cmp(h)===1},n.prototype.gten=function(h){return this.cmpn(h)>=0},n.prototype.gte=function(h){return this.cmp(h)>=0},n.prototype.ltn=function(h){return this.cmpn(h)===-1},n.prototype.lt=function(h){return this.cmp(h)===-1},n.prototype.lten=function(h){return this.cmpn(h)<=0},n.prototype.lte=function(h){return this.cmp(h)<=0},n.prototype.eqn=function(h){return this.cmpn(h)===0},n.prototype.eq=function(h){return this.cmp(h)===0},n.red=function(h){return new V(h)},n.prototype.toRed=function(h){return r(!this.red,"Already a number in reduction context"),r(this.negative===0,"red works only with positives"),h.convertTo(this)._forceRed(h)},n.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},n.prototype._forceRed=function(h){return this.red=h,this},n.prototype.forceRed=function(h){return r(!this.red,"Already a number in reduction context"),this._forceRed(h)},n.prototype.redAdd=function(h){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,h)},n.prototype.redIAdd=function(h){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,h)},n.prototype.redSub=function(h){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,h)},n.prototype.redISub=function(h){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,h)},n.prototype.redShl=function(h){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,h)},n.prototype.redMul=function(h){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,h),this.red.mul(this,h)},n.prototype.redIMul=function(h){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,h),this.red.imul(this,h)},n.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},n.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},n.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},n.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},n.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},n.prototype.redPow=function(h){return r(this.red&&!h.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,h)};var q={k256:null,p224:null,p192:null,p25519:null};function z(E,h){this.name=E,this.p=new n(h,16),this.n=this.p.bitLength(),this.k=new n(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}z.prototype._tmp=function(){var h=new n(null);return h.words=new Array(Math.ceil(this.n/13)),h},z.prototype.ireduce=function(h){var y=h,w;do this.split(y,this.tmp),y=this.imulK(y),y=y.iadd(this.tmp),w=y.bitLength();while(w>this.n);var S=w<this.n?-1:y.ucmp(this.p);return S===0?(y.words[0]=0,y.length=1):S>0?y.isub(this.p):y.strip!==void 0?y.strip():y._strip(),y},z.prototype.split=function(h,y){h.iushrn(this.n,0,y)},z.prototype.imulK=function(h){return h.imul(this.k)};function A(){z.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}i(A,z),A.prototype.split=function(h,y){for(var w=4194303,S=Math.min(h.length,9),O=0;O<S;O++)y.words[O]=h.words[O];if(y.length=S,h.length<=9){h.words[0]=0,h.length=1;return}var C=h.words[9];for(y.words[y.length++]=C&w,O=10;O<h.length;O++){var D=h.words[O]|0;h.words[O-10]=(D&w)<<4|C>>>22,C=D}C>>>=22,h.words[O-10]=C,C===0&&h.length>10?h.length-=10:h.length-=9},A.prototype.imulK=function(h){h.words[h.length]=0,h.words[h.length+1]=0,h.length+=2;for(var y=0,w=0;w<h.length;w++){var S=h.words[w]|0;y+=S*977,h.words[w]=y&67108863,y=S*64+(y/67108864|0)}return h.words[h.length-1]===0&&(h.length--,h.words[h.length-1]===0&&h.length--),h};function B(){z.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}i(B,z);function M(){z.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}i(M,z);function F(){z.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}i(F,z),F.prototype.imulK=function(h){for(var y=0,w=0;w<h.length;w++){var S=(h.words[w]|0)*19+y,O=S&67108863;S>>>=26,h.words[w]=O,y=S}return y!==0&&(h.words[h.length++]=y),h},n._prime=function(h){if(q[h])return q[h];var y;if(h==="k256")y=new A;else if(h==="p224")y=new B;else if(h==="p192")y=new M;else if(h==="p25519")y=new F;else throw new Error("Unknown prime "+h);return q[h]=y,y};function V(E){if(typeof E=="string"){var h=n._prime(E);this.m=h.p,this.prime=h}else r(E.gtn(1),"modulus must be greater than 1"),this.m=E,this.prime=null}V.prototype._verify1=function(h){r(h.negative===0,"red works only with positives"),r(h.red,"red works only with red numbers")},V.prototype._verify2=function(h,y){r((h.negative|y.negative)===0,"red works only with positives"),r(h.red&&h.red===y.red,"red works only with red numbers")},V.prototype.imod=function(h){return this.prime?this.prime.ireduce(h)._forceRed(this):h.umod(this.m)._forceRed(this)},V.prototype.neg=function(h){return h.isZero()?h.clone():this.m.sub(h)._forceRed(this)},V.prototype.add=function(h,y){this._verify2(h,y);var w=h.add(y);return w.cmp(this.m)>=0&&w.isub(this.m),w._forceRed(this)},V.prototype.iadd=function(h,y){this._verify2(h,y);var w=h.iadd(y);return w.cmp(this.m)>=0&&w.isub(this.m),w},V.prototype.sub=function(h,y){this._verify2(h,y);var w=h.sub(y);return w.cmpn(0)<0&&w.iadd(this.m),w._forceRed(this)},V.prototype.isub=function(h,y){this._verify2(h,y);var w=h.isub(y);return w.cmpn(0)<0&&w.iadd(this.m),w},V.prototype.shl=function(h,y){return this._verify1(h),this.imod(h.ushln(y))},V.prototype.imul=function(h,y){return this._verify2(h,y),this.imod(h.imul(y))},V.prototype.mul=function(h,y){return this._verify2(h,y),this.imod(h.mul(y))},V.prototype.isqr=function(h){return this.imul(h,h.clone())},V.prototype.sqr=function(h){return this.mul(h,h)},V.prototype.sqrt=function(h){if(h.isZero())return h.clone();var y=this.m.andln(3);if(r(y%2===1),y===3){var w=this.m.add(new n(1)).iushrn(2);return this.pow(h,w)}for(var S=this.m.subn(1),O=0;!S.isZero()&&S.andln(1)===0;)O++,S.iushrn(1);r(!S.isZero());var C=new n(1).toRed(this),D=C.redNeg(),P=this.m.subn(1).iushrn(1),m=this.m.bitLength();for(m=new n(2*m*m).toRed(this);this.pow(m,P).cmp(D)!==0;)m.redIAdd(D);for(var x=this.pow(m,S),K=this.pow(h,S.addn(1).iushrn(1)),U=this.pow(h,S),G=O;U.cmp(C)!==0;){for(var te=U,ae=0;te.cmp(C)!==0;ae++)te=te.redSqr();r(ae<G);var oe=this.pow(x,new n(1).iushln(G-ae-1));K=K.redMul(oe),x=oe.redSqr(),U=U.redMul(x),G=ae}return K},V.prototype.invm=function(h){var y=h._invmp(this.m);return y.negative!==0?(y.negative=0,this.imod(y).redNeg()):this.imod(y)},V.prototype.pow=function(h,y){if(y.isZero())return new n(1).toRed(this);if(y.cmpn(1)===0)return h.clone();var w=4,S=new Array(1<<w);S[0]=new n(1).toRed(this),S[1]=h;for(var O=2;O<S.length;O++)S[O]=this.mul(S[O-1],h);var C=S[0],D=0,P=0,m=y.bitLength()%26;for(m===0&&(m=26),O=y.length-1;O>=0;O--){for(var x=y.words[O],K=m-1;K>=0;K--){var U=x>>K&1;if(C!==S[0]&&(C=this.sqr(C)),U===0&&D===0){P=0;continue}D<<=1,D|=U,P++,!(P!==w&&(O!==0||K!==0))&&(C=this.mul(C,S[D]),P=0,D=0)}m=26}return C},V.prototype.convertTo=function(h){var y=h.umod(this.m);return y===h?y.clone():y},V.prototype.convertFrom=function(h){var y=h.clone();return y.red=null,y},n.mont=function(h){return new Y(h)};function Y(E){V.call(this,E),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new n(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}i(Y,V),Y.prototype.convertTo=function(h){return this.imod(h.ushln(this.shift))},Y.prototype.convertFrom=function(h){var y=this.imod(h.mul(this.rinv));return y.red=null,y},Y.prototype.imul=function(h,y){if(h.isZero()||y.isZero())return h.words[0]=0,h.length=1,h;var w=h.imul(y),S=w.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),O=w.isub(S).iushrn(this.shift),C=O;return O.cmp(this.m)>=0?C=O.isub(this.m):O.cmpn(0)<0&&(C=O.iadd(this.m)),C._forceRed(this)},Y.prototype.mul=function(h,y){if(h.isZero()||y.isZero())return new n(0)._forceRed(this);var w=h.mul(y),S=w.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),O=w.isub(S).iushrn(this.shift),C=O;return O.cmp(this.m)>=0?C=O.isub(this.m):O.cmpn(0)<0&&(C=O.iadd(this.m)),C._forceRed(this)},Y.prototype.invm=function(h){var y=this.imod(h._invmp(this.m).mul(this.r2));return y._forceRed(this)}})(typeof Qy>"u"||Qy,UT)});var eb=T((Nne,FT)=>{"use strict";g();FT.exports="9.24.0"});var zT=T((Lne,jT)=>{"use strict";g();var rK="https://docs.moneybutton.com/";jT.exports=[{name:"InvalidB58Char",message:"Invalid Base58 character: {0} in {1}"},{name:"InvalidB58Checksum",message:"Invalid Base58 checksum for {0}"},{name:"InvalidNetwork",message:"Invalid version for network: got {0}"},{name:"InvalidState",message:"Invalid state: {0}"},{name:"NotImplemented",message:"Function {0} was not implemented yet"},{name:"InvalidNetworkArgument",message:'Invalid network: must be "livenet" or "testnet", got {0}'},{name:"InvalidArgument",message:function(){return"Invalid Argument"+(arguments[0]?": "+arguments[0]:"")+(arguments[1]?" Documentation: "+rK+arguments[1]:"")}},{name:"AbstractMethodInvoked",message:"Abstract Method Invocation: {0}"},{name:"InvalidArgumentType",message:function(){return"Invalid Argument for "+arguments[2]+", expected "+arguments[1]+" but got "+typeof arguments[0]}},{name:"Unit",message:"Internal Error on Unit {0}",errors:[{name:"UnknownCode",message:"Unrecognized unit code: {0}"},{name:"InvalidRate",message:"Invalid exchange rate: {0}"}]},{name:"MerkleBlock",message:"Internal Error on MerkleBlock {0}",errors:[{name:"InvalidMerkleTree",message:"This MerkleBlock contain an invalid Merkle Tree"}]},{name:"Transaction",message:"Internal Error on Transaction {0}",errors:[{name:"Input",message:"Internal Error on Input {0}",errors:[{name:"MissingScript",message:"Need a script to create an input"},{name:"UnsupportedScript",message:"Unsupported input script type: {0}"},{name:"MissingPreviousOutput",message:"No previous output information."}]},{name:"NeedMoreInfo",message:"{0}"},{name:"InvalidSorting",message:"The sorting function provided did not return the change output as one of the array elements"},{name:"InvalidOutputAmountSum",message:"{0}"},{name:"MissingSignatures",message:"Some inputs have not been fully signed"},{name:"InvalidIndex",message:"Invalid index: {0} is not between 0, {1}"},{name:"UnableToVerifySignature",message:"Unable to verify signature: {0}"},{name:"DustOutputs",message:"Dust amount detected in one output"},{name:"InvalidSatoshis",message:"Output satoshis are invalid"},{name:"FeeError",message:"Internal Error on Fee {0}",errors:[{name:"TooSmall",message:"Fee is too small: {0}"},{name:"TooLarge",message:"Fee is too large: {0}"},{name:"Different",message:"Unspent value is different from specified fee: {0}"}]},{name:"ChangeAddressMissing",message:"Change address is missing"},{name:"BlockHeightTooHigh",message:"Block Height can be at most 2^32 -1"},{name:"NLockTimeOutOfRange",message:"Block Height can only be between 0 and 499 999 999"},{name:"LockTimeTooEarly",message:"Lock Time can't be earlier than UNIX date 500 000 000"}]},{name:"Script",message:"Internal Error on Script {0}",errors:[{name:"UnrecognizedAddress",message:"Expected argument {0} to be an address"},{name:"CantDeriveAddress",message:"Can't derive address associated with script {0}, needs to be p2pkh in, p2pkh out, p2sh in, or p2sh out."},{name:"InvalidBuffer",message:"Invalid script buffer: can't parse valid script from given buffer {0}"}]},{name:"HDPrivateKey",message:"Internal Error on HDPrivateKey {0}",errors:[{name:"InvalidDerivationArgument",message:"Invalid derivation argument {0}, expected string, or number and boolean"},{name:"InvalidEntropyArgument",message:"Invalid entropy: must be an hexa string or binary buffer, got {0}",errors:[{name:"TooMuchEntropy",message:'Invalid entropy: more than 512 bits is non standard, got "{0}"'},{name:"NotEnoughEntropy",message:'Invalid entropy: at least 128 bits needed, got "{0}"'}]},{name:"InvalidLength",message:"Invalid length for xprivkey string in {0}"},{name:"InvalidPath",message:"Invalid derivation path: {0}"},{name:"UnrecognizedArgument",message:'Invalid argument: creating a HDPrivateKey requires a string, buffer, json or object, got "{0}"'}]},{name:"HDPublicKey",message:"Internal Error on HDPublicKey {0}",errors:[{name:"ArgumentIsPrivateExtended",message:"Argument is an extended private key: {0}"},{name:"InvalidDerivationArgument",message:"Invalid derivation argument: got {0}"},{name:"InvalidLength",message:'Invalid length for xpubkey: got "{0}"'},{name:"InvalidPath",message:'Invalid derivation path, it should look like: "m/1/100", got "{0}"'},{name:"InvalidIndexCantDeriveHardened",message:"Invalid argument: creating a hardened path requires an HDPrivateKey"},{name:"MustSupplyArgument",message:"Must supply an argument to create a HDPublicKey"},{name:"UnrecognizedArgument",message:"Invalid argument for creation, must be string, json, buffer, or object"}]}]});var pi=T((Dne,rb)=>{"use strict";g();var tb=at();function iK(e,t){return e.replace("{0}",t[0]).replace("{1}",t[1]).replace("{2}",t[2])}var KT=function(e,t){var r=function(){if(tb.isString(t.message))this.message=iK(t.message,arguments);else if(tb.isFunction(t.message))this.message=t.message.apply(null,arguments);else throw new Error("Invalid error definition for "+t.name);this.stack=this.message+`
12
12
  `+new Error().stack};return r.prototype=Object.create(e.prototype),r.prototype.name=e.prototype.name+t.name,e[t.name]=r,t.errors&&VT(r,t.errors),r},VT=function(e,t){tb.each(t,function(r){KT(e,r)})},nK=function(e,t){return VT(e,t),e},gc={};gc.Error=function(){this.message="Internal error",this.stack=this.message+`
13
13
  `+new Error().stack};gc.Error.prototype=Object.create(Error.prototype);gc.Error.prototype.name="bsv.Error";var oK=zT();nK(gc.Error,oK);rb.exports=gc.Error;rb.exports.extend=function(e){return KT(gc.Error,e)}});var Ie=T((qne,GT)=>{"use strict";g();var El=pi(),aK=at();GT.exports={checkState:function(e,t){if(!e)throw new El.InvalidState(t)},checkArgument:function(e,t,r,i){if(!e)throw new El.InvalidArgument(t,r,i)},checkArgumentType:function(e,t,r){if(r=r||"(unknown name)",aK.isString(t)){if(t==="Buffer"){var i=rr();if(!i.Buffer.isBuffer(e))throw new El.InvalidArgumentType(e,t,r)}else if(typeof e!==t)throw new El.InvalidArgumentType(e,t,r)}else if(!(e instanceof t))throw new El.InvalidArgumentType(e,t.name,r)}}});var Ke=T((Fne,$T)=>{"use strict";g();var pt=qp(),YT=Ie(),ZT=at(),Up=function(e){for(var t=f.Buffer.alloc(e.length),r=0;r<e.length;r++)t[r]=e[e.length-1-r];return t};pt.Zero=new pt(0);pt.One=new pt(1);pt.Minus1=new pt(-1);pt.fromNumber=function(e){return YT.checkArgument(ZT.isNumber(e)),new pt(e)};pt.fromString=function(e,t){return YT.checkArgument(ZT.isString(e)),new pt(e,t)};pt.fromBuffer=function(e,t){typeof t<"u"&&t.endian==="little"&&(e=Up(e));var r=e.toString("hex"),i=new pt(r,16);return i};pt.fromSM=function(e,t){var r;if(e.length===0)return pt.fromBuffer(f.Buffer.from([0]));var i="big";return t&&(i=t.endian),i==="little"&&(e=Up(e)),e[0]&128?(e[0]=e[0]&127,r=pt.fromBuffer(e),r.neg().copy(r)):r=pt.fromBuffer(e),r};pt.prototype.toNumber=function(){return parseInt(this.toString(10),10)};pt.prototype.toBuffer=function(e){var t,r;if(e&&e.size){r=this.toString(16,2);var i=r.length/2;t=f.Buffer.from(r,"hex"),i===e.size||(i>e.size?t=pt.trim(t,i):i<e.size&&(t=pt.pad(t,i,e.size)))}else r=this.toString(16,2),t=f.Buffer.from(r,"hex");return typeof e<"u"&&e.endian==="little"&&(t=Up(t)),t};pt.prototype.toSMBigEndian=function(){var e;return this.cmp(pt.Zero)===-1?(e=this.neg().toBuffer(),e[0]&128?e=f.Buffer.concat([f.Buffer.from([128]),e]):e[0]=e[0]|128):(e=this.toBuffer(),e[0]&128&&(e=f.Buffer.concat([f.Buffer.from([0]),e]))),e.length===1&&e[0]===0&&(e=f.Buffer.from([])),e};pt.prototype.toSM=function(e){var t=e?e.endian:"big",r=this.toSMBigEndian();return t==="little"&&(r=Up(r)),r};function WT(e,t){var r=new Error(e);return r.scriptErr=t,r}pt.fromScriptNumBuffer=function(e,t,r){var i=r||4;if(e.length>i)throw WT("script number overflow","SCRIPT_ERR_SCRIPTNUM_OVERFLOW");if(t&&e.length>0&&(e[e.length-1]&127)===0&&(e.length<=1||(e[e.length-2]&128)===0))throw WT("non-minimally encoded script number","SCRIPT_ERR_SCRIPTNUM_MINENCODE");return pt.fromSM(e,{endian:"little"})};pt.prototype.toScriptNumBuffer=function(){return this.toSM({endian:"little"})};pt.trim=function(e,t){return e.slice(t-e.length,e.length)};pt.pad=function(e,t,r){for(var i=f.Buffer.alloc(r),n=0;n<e.length;n++)i[i.length-1-n]=e[e.length-1-n];for(n=0;n<r-t;n++)i[n]=0;return i};pt.prototype.toHex=function(...e){return this.toBuffer(...e).toString("hex")};pt.fromHex=function(e,...t){return pt.fromBuffer(f.Buffer.from(e,"hex"),...t)};$T.exports=pt});function sK(e,t=!1){return t?{h:Number(e&Fp),l:Number(e>>XT&Fp)}:{h:Number(e>>XT&Fp)|0,l:Number(e&Fp)|0}}function JT(e,t=!1){let r=e.length,i=new Uint32Array(r),n=new Uint32Array(r);for(let o=0;o<r;o++){let{h:a,l:s}=sK(e[o],t);[i[o],n[o]]=[a,s]}return[i,n]}function QT(e,t,r,i){let n=uK(r),o=cK(r);e.setUint32(t,i?o:n,i),e.setUint32(t+4,i?n:o,i)}function io(e,t,r,i){let n=(t>>>0)+(i>>>0);return{h:e+r+(n/2**32|0)|0,l:n|0}}var Fp,XT,uK,cK,ib,nb,Ws,Ys,xl,Ol,eP,tP,rP,iP,nP,oP,ob=Dr(()=>{g();Fp=BigInt(4294967295),XT=BigInt(32);uK=e=>e/2**32|0,cK=e=>e>>>0;ib=(e,t,r)=>e>>>r,nb=(e,t,r)=>e<<32-r|t>>>r,Ws=(e,t,r)=>e>>>r|t<<32-r,Ys=(e,t,r)=>e<<32-r|t>>>r,xl=(e,t,r)=>e<<64-r|t>>>r-32,Ol=(e,t,r)=>e>>>r-32|t<<64-r;eP=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),tP=(e,t,r,i)=>t+r+i+(e/2**32|0)|0,rP=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),iP=(e,t,r,i,n)=>t+r+i+n+(e/2**32|0)|0,nP=(e,t,r,i,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(n>>>0),oP=(e,t,r,i,n,o)=>t+r+i+n+o+(e/2**32|0)|0});function jp(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function $o(e,t=""){if(typeof e!="number")throw new TypeError(ab(t)+"expected number, got "+typeof e);if(!Number.isSafeInteger(e)||e<0)throw new RangeError(ab(t)+"expected integer >= 0, got "+e);return e}function no(e,t,r=""){if(jp(e)&&(t===void 0||e.length===t))return e;t!==void 0&&$o(t,"length");let i=jp(e),n=t!==void 0?` of length ${t}`:"",o=i?`length=${e.length}`:`type=${typeof e}`,a=ab(r)+"expected Uint8Array"+n+", got "+o;throw i?new RangeError(a):new TypeError(a)}function zp(e){if(typeof e!="function"||typeof e.create!="function")throw new TypeError("expected hash wrapped by utils.createHasher");if($o(e.outputLen),$o(e.blockLen),e.outputLen<1||e.blockLen<1)throw new Error("hash blockLen / outputLen must be >= 1")}function mc(e,t=!0){if(e.destroyed)throw new Error("hash was destroyed");if(t&&e.finished)throw new Error("digest() was already called")}function Kp(e,t){no(e,void 0,"output");let r=t.outputLen;if(!(e.length>=r))throw new RangeError('"output" expected length >= '+r)}function wi(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Vp(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function In(e,t){return e<<32-t|e>>>t}function Xo(e,t){return e<<t|e>>>32-t>>>0}function Gp(e){if(no(e),uP)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=hK[e[r]];return t}function sP(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function sb(e){if(typeof e!="string")throw new TypeError("hex string expected, got "+typeof e);if(uP)try{return Uint8Array.fromHex(e)}catch(n){throw n instanceof SyntaxError?new RangeError(n.message):n}let t=e.length,r=t/2;if(t%2)throw new RangeError("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let n=0,o=0;n<r;n++,o+=2){let a=sP(e.charCodeAt(o)),s=sP(e.charCodeAt(o+1));if(a===void 0||s===void 0){let u=e[o]+e[o+1];throw new RangeError('hex string expected, got non-hex character "'+u+'" at index '+o)}i[n]=a*16+s}return i}function Jo(e){if(typeof e!="string")throw new TypeError("string expected");let t=new TextEncoder().encode(e);try{return new Uint8Array(t)}finally{wi(t)}}function cP(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];no(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function dK(e,t,r="opts"){return aP(e,"defaults"),t!==void 0&&aP(t,r),Object.assign(Object.create(null),e,t)}function An(e,t={}){if(typeof e!="function")throw new TypeError('"hashCons" expected function, got type='+typeof e);t=dK({},t,"info");let r=(n,o)=>e(o).update(n).digest(),i=e(void 0);return r.outputLen=i.outputLen,r.blockLen=i.blockLen,r.canXOF=i.canXOF,r.create=n=>e(n),Object.assign(r,t),Object.freeze(r)}function Il(e=32){$o(e,"bytesLength");let t=typeof globalThis=="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");if(e>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}var ab,lK,aP,uP,hK,Zs,Qo=Dr(()=>{g();ab=e=>e?`"${e}" `:"";lK=(e,t)=>{if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError((t==="object"?"":`"${t}" `)+"expected object, got type="+typeof e)},aP=(e,t)=>{lK(e,t);let r=Object.getPrototypeOf(e);if(r!==Object.prototype&&r!==null)throw new TypeError(`"${t}" expected plain object`);if(Object.hasOwn(e,"__proto__"))throw new TypeError(`"${t}.__proto__" is not allowed`)};uP=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",hK=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));Zs=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])})});function vc(e,t,r){return e&t^~e&r}function Wp(e,t,r){return e&t^e&r^t&r}var ea,fP,lP,hP,dP,ub=Dr(()=>{g();ob();Qo();ea=class{constructor(t,r,i,n){ee(this,"blockLen");ee(this,"outputLen");ee(this,"canXOF",!1);ee(this,"padOffset");ee(this,"isLE");ee(this,"buffer");ee(this,"view");ee(this,"finished",!1);ee(this,"length",0);ee(this,"pos",0);ee(this,"destroyed",!1);this.blockLen=t,this.outputLen=r,this.padOffset=i,this.isLE=n,this.buffer=new Uint8Array(t),this.view=Vp(this.buffer)}update(t){mc(this),no(t);let{view:r,buffer:i,blockLen:n}=this,o=t.length,a=!1;for(let s=0;s<o;){let u=Math.min(n-this.pos,o-s);if(u===n){let c=Vp(t);for(;n<=o-s;s+=n)this.process(c,s);a=!0;continue}i.set(s===0&&u===o?t:t.subarray(s,s+u),this.pos),this.pos+=u,s+=u,this.pos===n&&(this.process(r,0),this.pos=0,a=!0)}return this.length+=t.length,a&&this.roundClean(),this}digestInto(t){mc(this),Kp(t,this),this.finished=!0;let{buffer:r,view:i,blockLen:n,isLE:o}=this,{pos:a}=this;r[a++]=128,r.fill(0,a),this.padOffset>n-a&&(this.process(i,0),r.fill(0)),QT(i,n-8,this.length*8,o),this.process(i,0),this.roundClean();let s=t===r?i:Vp(t),u=this.outputLen,c=u/4,l=this.get();if(u%4||c>l.length)throw new Error("invalid outputLen");for(let p=0;p<c;p++)s.setUint32(4*p,l[p],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let i=t.slice(0,r);return this.destroy(),i}_cloneIntoMeta(t){let{buffer:r,length:i,finished:n,destroyed:o,pos:a}=this;return t.destroyed=o,t.finished=n,t.length=i,t.pos=a,a&&t.buffer.set(r),t}clone(){return this._cloneInto()}},fP=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),lP=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]),hP=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),dP=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])});var tg={};Hf(tg,{_SHA224:()=>$p,_SHA256:()=>Zp,_SHA384:()=>Jp,_SHA512:()=>Xp,_SHA512_224:()=>Qp,_SHA512_256:()=>eg,sha224:()=>bK,sha256:()=>Fa,sha384:()=>wK,sha512:()=>_K,sha512_224:()=>EK,sha512_256:()=>SK});var pK,Ha,Yp,Zp,$p,pP,gK,mK,qa,Ua,yc,Xp,Jp,vK,yK,Qp,eg,Fa,bK,_K,wK,SK,EK,Al=Dr(()=>{g();ub();ob();Qo();pK=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]),Ha=new Uint32Array(64),Yp=class extends ea{constructor(r,i){super(64,r,8,!1);ee(this,"A",0);ee(this,"B",0);ee(this,"C",0);ee(this,"D",0);ee(this,"E",0);ee(this,"F",0);ee(this,"G",0);ee(this,"H",0);this.A=i[0]|0,this.B=i[1]|0,this.C=i[2]|0,this.D=i[3]|0,this.E=i[4]|0,this.F=i[5]|0,this.G=i[6]|0,this.H=i[7]|0}get(){let{A:r,B:i,C:n,D:o,E:a,F:s,G:u,H:c}=this;return[r,i,n,o,a,s,u,c]}set(r,i,n,o,a,s,u,c){this.A=r|0,this.B=i|0,this.C=n|0,this.D=o|0,this.E=a|0,this.F=s|0,this.G=u|0,this.H=c|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,i){for(let d=0;d<16;d++,i+=4)Ha[d]=r.getUint32(i,!1);for(let d=16;d<64;d++){let v=Ha[d-15],_=Ha[d-2],I=In(v,7)^In(v,18)^v>>>3,R=In(_,17)^In(_,19)^_>>>10;Ha[d]=R+Ha[d-7]+I+Ha[d-16]|0}let{A:n,B:o,C:a,D:s,E:u,F:c,G:l,H:p}=this;for(let d=0;d<64;d++){let v=In(u,6)^In(u,11)^In(u,25),_=p+v+vc(u,c,l)+pK[d]+Ha[d]|0,R=(In(n,2)^In(n,13)^In(n,22))+Wp(n,o,a)|0;p=l,l=c,c=u,u=s+_|0,s=a,a=o,o=n,n=_+R|0}n=n+this.A|0,o=o+this.B|0,a=a+this.C|0,s=s+this.D|0,u=u+this.E|0,c=c+this.F|0,l=l+this.G|0,p=p+this.H|0,this.set(n,o,a,s,u,c,l,p)}roundClean(){wi(Ha)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),wi(this.buffer)}},Zp=class extends Yp{constructor(){super(32,fP)}},$p=class extends Yp{constructor(){super(28,lP)}},pP=JT(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),gK=pP[0],mK=pP[1],qa=new Uint32Array(80),Ua=new Uint32Array(80),yc=class extends ea{constructor(r,i){super(128,r,16,!1);ee(this,"Ah",0);ee(this,"Al",0);ee(this,"Bh",0);ee(this,"Bl",0);ee(this,"Ch",0);ee(this,"Cl",0);ee(this,"Dh",0);ee(this,"Dl",0);ee(this,"Eh",0);ee(this,"El",0);ee(this,"Fh",0);ee(this,"Fl",0);ee(this,"Gh",0);ee(this,"Gl",0);ee(this,"Hh",0);ee(this,"Hl",0);this.Ah=i[0]|0,this.Al=i[1]|0,this.Bh=i[2]|0,this.Bl=i[3]|0,this.Ch=i[4]|0,this.Cl=i[5]|0,this.Dh=i[6]|0,this.Dl=i[7]|0,this.Eh=i[8]|0,this.El=i[9]|0,this.Fh=i[10]|0,this.Fl=i[11]|0,this.Gh=i[12]|0,this.Gl=i[13]|0,this.Hh=i[14]|0,this.Hl=i[15]|0}get(){let{Ah:r,Al:i,Bh:n,Bl:o,Ch:a,Cl:s,Dh:u,Dl:c,Eh:l,El:p,Fh:d,Fl:v,Gh:_,Gl:I,Hh:R,Hl:k}=this;return[r,i,n,o,a,s,u,c,l,p,d,v,_,I,R,k]}set(r,i,n,o,a,s,u,c,l,p,d,v,_,I,R,k){this.Ah=r|0,this.Al=i|0,this.Bh=n|0,this.Bl=o|0,this.Ch=a|0,this.Cl=s|0,this.Dh=u|0,this.Dl=c|0,this.Eh=l|0,this.El=p|0,this.Fh=d|0,this.Fl=v|0,this.Gh=_|0,this.Gl=I|0,this.Hh=R|0,this.Hl=k|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,i){for(let A=0;A<16;A++,i+=4)qa[A]=r.getUint32(i),Ua[A]=r.getUint32(i+=4);for(let A=16;A<80;A++){let B=qa[A-15]|0,M=Ua[A-15]|0,F=Ws(B,M,1)^Ws(B,M,8)^ib(B,M,7),V=Ys(B,M,1)^Ys(B,M,8)^nb(B,M,7),Y=qa[A-2]|0,E=Ua[A-2]|0,h=Ws(Y,E,19)^xl(Y,E,61)^ib(Y,E,6),y=Ys(Y,E,19)^Ol(Y,E,61)^nb(Y,E,6),w=rP(V,y,Ua[A-7],Ua[A-16]),S=iP(w,F,h,qa[A-7],qa[A-16]);qa[A]=S|0,Ua[A]=w|0}let{Ah:n,Al:o,Bh:a,Bl:s,Ch:u,Cl:c,Dh:l,Dl:p,Eh:d,El:v,Fh:_,Fl:I,Gh:R,Gl:k,Hh:q,Hl:z}=this;for(let A=0;A<80;A++){let B=Ws(d,v,14)^Ws(d,v,18)^xl(d,v,41),M=Ys(d,v,14)^Ys(d,v,18)^Ol(d,v,41),F=d&_^~d&R,V=v&I^~v&k,Y=nP(z,M,V,mK[A],Ua[A]),E=oP(Y,q,B,F,gK[A],qa[A]),h=Y|0,y=Ws(n,o,28)^xl(n,o,34)^xl(n,o,39),w=Ys(n,o,28)^Ol(n,o,34)^Ol(n,o,39),S=n&a^n&u^a&u,O=o&s^o&c^s&c;q=R|0,z=k|0,R=_|0,k=I|0,_=d|0,I=v|0,{h:d,l:v}=io(l|0,p|0,E|0,h|0),l=u|0,p=c|0,u=a|0,c=s|0,a=n|0,s=o|0;let C=eP(h,w,O);n=tP(C,E,y,S),o=C|0}({h:n,l:o}=io(this.Ah|0,this.Al|0,n|0,o|0)),{h:a,l:s}=io(this.Bh|0,this.Bl|0,a|0,s|0),{h:u,l:c}=io(this.Ch|0,this.Cl|0,u|0,c|0),{h:l,l:p}=io(this.Dh|0,this.Dl|0,l|0,p|0),{h:d,l:v}=io(this.Eh|0,this.El|0,d|0,v|0),{h:_,l:I}=io(this.Fh|0,this.Fl|0,_|0,I|0),{h:R,l:k}=io(this.Gh|0,this.Gl|0,R|0,k|0),{h:q,l:z}=io(this.Hh|0,this.Hl|0,q|0,z|0),this.set(n,o,a,s,u,c,l,p,d,v,_,I,R,k,q,z)}roundClean(){wi(qa,Ua)}destroy(){this.destroyed=!0,wi(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Xp=class extends yc{constructor(){super(64,dP)}},Jp=class extends yc{constructor(){super(48,hP)}},vK=Uint32Array.from([2352822216,424955298,1944164710,2312950998,502970286,855612546,1738396948,1479516111,258812777,2077511080,2011393907,79989058,1067287976,1780299464,286451373,2446758561]),yK=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]),Qp=class extends yc{constructor(){super(28,vK)}},eg=class extends yc{constructor(){super(32,yK)}},Fa=An(()=>new Zp,Zs(1)),bK=An(()=>new $p,Zs(4)),_K=An(()=>new Xp,Zs(3)),wK=An(()=>new Jp,Zs(2)),SK=An(()=>new eg,Zs(6)),EK=An(()=>new Qp,Zs(5))});function lr(e,t,r=()=>{}){if(!Array.isArray(e))throw new TypeError(`"${t}" expected array, got type=${typeof e}`);for(let i=0;i<e.length;i++)r(e[i],`${t}[${i}]`);return e}function Tl(e,t=""){if(typeof e!="string"){let r=t&&`"${t}" `;throw new TypeError(r+"expected string, got type="+typeof e)}return e}function ja(e,t="object"){if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError(t==="object"?"expected valid options object":`"${t}" expected object, got type=${typeof e}`);return e}function $s(e,t){if(typeof e!="function")throw new TypeError(`"${t}" is invalid: expected function, got ${typeof e}`);return e}function ao(e,t=""){if(typeof e!="boolean")throw new TypeError(xK(t)+"expected boolean, got type="+typeof e);return e}function ig(e){if(typeof e=="bigint"){if(!za(e))throw new RangeError("positive bigint expected, got "+e)}else cb(e);return e}function or(e,t=""){if(typeof e!="number"){let r=t&&`"${t}" `;throw new TypeError(r+"expected number, got type="+typeof e)}if(!Number.isSafeInteger(e)){let r=t&&`"${t}" `;throw new RangeError(r+"expected safe integer, got "+e)}}function Pl(e){let t=ig(e).toString(16);return t.length&1?"0"+t:t}function mP(e){if(typeof e!="string")throw new TypeError("hex string expected, got "+typeof e);return e===""?rg:BigInt("0x"+e)}function Hr(e){return mP(Gp(e))}function _c(e){return mP(Gp(ra(no(e)).reverse()))}function ng(e,t){if($o(t),t===0)throw new Error("zero output length is invalid");e=ig(e);let r=t*2,i=e.toString(16);if(i.length>r)throw new RangeError("number is too large");return sb(i.padStart(r,"0"))}function fb(e,t){return ng(e,t).reverse()}function lb(e,t){if(e=Ce(e),t=Ce(t),e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function ra(e){return Uint8Array.from(Ce(e))}function wc(e){if(typeof e!="string")throw new TypeError("ascii string expected, got "+typeof e);return Uint8Array.from(e,(t,r)=>{let i=t.charCodeAt(0);if(t.length!==1||i>127)throw new RangeError(`string contains non-ASCII character "${e[r]}" with code ${i} at position ${r}`);return i})}function za(e){return typeof e=="bigint"&&rg<=e}function hb(e,t,r){return za(e)&&za(t)&&za(r)&&t<=e&&e<r}function db(e,t,r,i){if(!hb(t,r,i))throw new RangeError("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function Sc(e){if(e<rg)throw new Error("expected non-negative bigint, got "+e);return e===rg?0:e.toString(2).length}function vP(e,t,r){if($o(e,"hashLen"),$o(t,"qByteLen"),typeof r!="function")throw new TypeError("hmacFn must be a function");let i=R=>new Uint8Array(R),n=Uint8Array.of(),o=Uint8Array.of(0),a=Uint8Array.of(1),s=1e3,u=i(e),c=i(e),l=0,p=()=>{u.fill(1),c.fill(0),l=0},d=(...R)=>r(c,bt(u,...R)),v=(R=n)=>{c=d(o,R),u=d(),R.length!==0&&(c=d(a,R),u=d())},_=()=>{if(l++>=s)throw new Error("drbg: tried max amount of iterations");let R=0,k=[];for(;R<t;){u=d();let q=u.slice();k.push(q),R+=u.length}return bt(...k)};return(R,k)=>{p(),v(R);let q;for(;(q=k(_()))===void 0;)v();return p(),q}}function At(e,t={},r={},i="object"){ja(e,i),ja(t,"fields"),ja(r,"optFields");function n(a,s,u){let c=i==="object"?`param "${String(a)}"`:`"${i}.${String(a)}"`,l=e[a];if(!Object.hasOwn(e,a)&&(u?l!==void 0:s!=="function"))throw new TypeError(`${c} is invalid: expected own property`);if(u&&l===void 0)return;let p=typeof l;if(p!==s||l===null)throw new TypeError(`${c} is invalid: expected ${s}, got ${p}`)}let o=(a,s)=>Object.entries(a).forEach(([u,c])=>n(u,c,s));o(t,!1),o(r,!0)}var Ce,cb,ta,bt,bc,oo,Si,rg,gP,xK,Rl,Ka=Dr(()=>{g();Qo();Ce=(e,t,r)=>no(e,t,r),cb=$o;ta=Gp,bt=(...e)=>cP(...e),bc=e=>sb(e),oo=jp,Si=e=>Il(e),rg=BigInt(0),gP=BigInt(1),xK=e=>e?`"${e}" `:"";Rl=e=>(or(e,"n"),(gP<<BigInt(e))-gP)});function Ei(e,t){if(t<=qr)throw new Error("mod: expected positive modulus, got "+t);let r=e%t;return r>=qr?r:t+r}function xP(e,t,r){if(r<=Tt)throw new Error("pow: expected modulus > 1, got "+r);if(typeof t!="bigint")throw new TypeError("invalid exponent: expected bigint, got "+typeof t);if(t<qr)throw new Error("invalid exponent, negatives unsupported");if(t===qr)return Tt;if(t===Tt)return e;let i=e%r;if(i<qr&&(i+=r),t<TK){let s=Tt;for(;t>qr;)t&Tt&&(s=s*i%r),i=i*i%r,t>>=Tt;return s}let n=[];for(;t>qr;)n.push(Number(t&AK)),t>>=gb;let o=new Array(16);o[0]=Tt,o[1]=i;for(let s=2;s<16;s++)o[s]=o[s-1]*i%r;let a=o[n[n.length-1]];for(let s=n.length-2;s>=0;s--){a=a*a%r,a=a*a%r,a=a*a%r,a=a*a%r;let u=n[s];u!==0&&(a=a*o[u]%r)}return a}function Vi(e,t,r){if(r<=Tt)throw new Error("pow2: expected modulus > 1, got "+r);if(t<qr)throw new Error("pow2: expected non-negative exponent, got "+t);let i=e;for(;t-- >qr;)i*=i,i%=r;return i}function yP(e,t){if(e===qr)throw new Error("invert: expected non-zero number");if(t<=Tt)throw new Error("invert: expected modulus > 1, got "+t);let r=Ei(e,t),i=t,n=qr,o=Tt;for(;r!==qr;){let s=i/r,u=i-r*s,c=n-o*s;i=r,r=u,n=o,o=c}if(i!==Tt)throw new Error("invert: does not exist");return Ei(n,t)}function OP(e,t){if(t<=Tt)throw new Error("invertCt: expected prime modulus > 1, got "+t);let r=Ei(e,t);if(r===qr)throw new Error("invertCt: expected non-zero number");let i=xP(r,t-Va,t);if(Ei(r*i,t)!==Tt)throw new Error("invertCt: does not exist");return i}function mb(e,t,r){let i=e;if(!i.eql(i.sqr(t),r))throw new Error("Cannot find square root")}function vb(e,t){if((e&Tt)===qr)throw new Error(t+": expected odd modulus, got "+e)}function IP(e,t){let r=e,i=(r.ORDER+Tt)/gb,n=r.pow(t,i);return mb(r,n,t),n}function PK(e,t){let r=e,i=(r.ORDER-wP)/SP,n=r.mul(t,Va),o=r.pow(n,i),a=r.mul(t,o),s=r.mul(r.mul(a,Va),o),u=r.mul(a,r.sub(s,r.ONE));return mb(r,u,t),u}function RK(e){let t=xc(e),r=AP(e),i=r(t,t.neg(t.ONE)),n=r(t,i),o=r(t,t.neg(i)),a=(e+OK)/EP;return((s,u)=>{let c=s,l=c.pow(u,a),p=c.mul(l,i),d=c.mul(l,n),v=c.mul(l,o),_=c.eql(c.sqr(p),u),I=c.eql(c.sqr(d),u);l=c.cmov(l,p,_),p=c.cmov(v,d,I);let R=c.eql(c.sqr(p),u),k=c.cmov(l,p,R);return mb(c,k,u),k})}function AP(e){if(e<_P)throw new Error("sqrt is not defined for small field");vb(e,"tonelliShanks");let t=e-Tt,r=0;for(;t%Va===qr;)t/=Va,r++;let i=Va,n=xc(e);for(;pb(n,i)===1;)if(i++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return IP;let o=n.pow(i,t),a=(t+Tt)/Va;return function(u,c){let l=u;if(l.is0(c))return c;if(pb(l,c)!==1)throw new Error("Cannot find square root");let p=r,d=l.mul(l.ONE,o),v=l.pow(c,t),_=l.pow(c,a);for(;!l.eql(v,l.ONE);){if(l.is0(v))throw new Error("Cannot find square root: probably non-prime P");let I=1,R=l.sqr(v);for(;!l.eql(R,l.ONE);)if(I++,R=l.sqr(R),I===p)throw new Error("Cannot find square root");let k=Tt<<BigInt(p-I-1),q=l.pow(d,k);p=I,d=l.sqr(q),v=l.mul(v,d),_=l.mul(_,q)}return _}}function kK(e){return vb(e,"Fp.sqrt"),e%gb===_P?IP:e%SP===wP?PK:e%EP===IK?RK(e):AP(e)}function sn(e){if(ja(e,"field"),typeof e.ORDER!="bigint")throw new TypeError('param "ORDER" is invalid: expected bigint, got '+typeof e.ORDER);or(e.BYTES,"BYTES"),or(e.BITS,"BITS");for(let t of BK)$s(e[t],"field."+t);if(e.BYTES<1||e.BITS<1)throw new Error("invalid field: expected BYTES/BITS > 0");if(e.ORDER<=Tt)throw new Error("invalid field: expected ORDER > 1, got "+e.ORDER);return e}function Ec(e,t,r=!1){sn(e),lr(t,"nums"),ao(r,"passZero");let i=e,n=new Array(t.length).fill(r?i.ZERO:void 0),o=t.reduce((s,u,c)=>i.is0(u)?s:(n[c]=s,i.mul(s,u)),i.ONE),a=i.inv(o);return t.reduceRight((s,u,c)=>i.is0(u)?s:(n[c]=i.mul(s,n[c]),i.mul(s,u)),a),n}function pb(e,t){sn(e);let r=e;vb(r.ORDER,"FpLegendre");let i=(r.ORDER-Tt)/Va,n=r.pow(t,i),o=r.eql(n,r.ONE),a=r.eql(n,r.ZERO),s=r.eql(n,r.neg(r.ONE));if(!o&&!a&&!s)throw new Error("invalid Legendre symbol result");return o?1:a?0:-1}function yb(e,t){return pb(e,t)!==-1}function NK(e,t){if(t!==void 0&&cb(t),e<=qr)throw new Error("invalid n length: expected positive n, got "+e);if(t!==void 0&&t<1)throw new Error("invalid n length: expected positive bit length, got "+t);let r=Sc(e);if(t!==void 0&&t<r)throw new Error(`invalid n length: expected nBitLength (${t}) >= bitLen(n) (${r})`);let i=t!==void 0?t:r,n=Math.ceil(i/8);return{nBitLength:i,nByteLength:n}}function xc(e,t={}){return Object.freeze(og.prototype),new og(e,t)}function TP(e){if(typeof e!="bigint")throw new Error("field order must be bigint");if(e<=Tt)throw new Error("field order must be greater than 1");let t=Sc(e-Tt);return Math.ceil(t/8)}function Oc(e){let t=TP(e);return t+Math.ceil(t/2)}function Xs(e,t,r=!1){Ce(e);let i=e.length,n=TP(t),o=Math.max(Oc(t),16);if(i<o||i>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+i);let a=r?_c(e):Hr(e),s=Ei(a,t-Tt)+Tt;return r?fb(s,n):ng(s,n)}var qr,Tt,Va,_P,gb,wP,OK,SP,IK,AK,EP,TK,BK,bP,og,Js=Dr(()=>{g();Ka();qr=BigInt(0),Tt=BigInt(1),Va=BigInt(2),_P=BigInt(3),gb=BigInt(4),wP=BigInt(5),OK=BigInt(7),SP=BigInt(8),IK=BigInt(9),AK=BigInt(15),EP=BigInt(16),TK=BigInt("0x10000000000000000");BK=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];bP=new WeakMap,og=class{constructor(t,r={}){ee(this,"ORDER");ee(this,"BITS");ee(this,"BYTES");ee(this,"isLE");ee(this,"ZERO",qr);ee(this,"ONE",Tt);ee(this,"_lengths");ee(this,"_mod");if(t<=Tt)throw new Error("invalid field: expected ORDER > 1, got "+t);let i;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(i=r.BITS),typeof r.sqrt=="function"&&Object.defineProperty(this,"sqrt",{value:r.sqrt,enumerable:!0}),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=Object.freeze(r.allowedLengths.slice())),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:n,nByteLength:o}=NK(t,i);if(o>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=t,this.BITS=n,this.BYTES=o,Object.freeze(this)}create(t){return Ei(t,this.ORDER)}isValid(t){if(typeof t!="bigint")throw new TypeError("invalid field element: expected bigint, got "+typeof t);return qr<=t&&t<this.ORDER}is0(t){return t===qr}isValidNot0(t){return!this.is0(t)&&this.isValid(t)}isOdd(t){return(t&Tt)===Tt}neg(t){return Ei(-t,this.ORDER)}eql(t,r){return t===r}sqr(t){return Ei(t*t,this.ORDER)}add(t,r){return Ei(t+r,this.ORDER)}sub(t,r){return Ei(t-r,this.ORDER)}mul(t,r){return Ei(t*r,this.ORDER)}pow(t,r){return xP(t,r,this.ORDER)}div(t,r){return Ei(t*yP(r,this.ORDER),this.ORDER)}sqrN(t){return t*t}addN(t,r){return t+r}subN(t,r){return t-r}mulN(t,r){return t*r}inv(t){return yP(t,this.ORDER)}sqrt(t){let r=bP.get(this);return r||bP.set(this,r=kK(this.ORDER)),r(this,t)}toBytes(t){return this.isLE?fb(t,this.BYTES):ng(t,this.BYTES)}fromBytes(t,r=!1){Ce(t);let{_lengths:i,BYTES:n,isLE:o,ORDER:a,_mod:s}=this;if(i){if(t.length<1||!i.includes(t.length)||t.length>n)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+t.length);let c=new Uint8Array(n);c.set(t,o?0:c.length-t.length),t=c}if(t.length!==n)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+t.length);let u=o?_c(t):Hr(t);if(s&&(u=Ei(u,a)),!r&&!this.isValid(u))throw new Error("invalid field element: outside of range 0..ORDER");return u}invertBatch(t){return Ec(this,t,!0)}cmov(t,r,i){return ao(i,"condition"),i?r:t}}});function Ga(e){let t=e;if(typeof t!="function")throw new TypeError('"Point" expected constructor, got type='+typeof e);$s(t.fromAffine,"Point.fromAffine"),$s(t.fromBytes,"Point.fromBytes"),$s(t.fromHex,"Point.fromHex"),ja(t.BASE,"Point.BASE"),ja(t.ZERO,"Point.ZERO"),sn(t.Fp),sn(t.Fn)}function BP(e,t){Ga(e),NP(t,e);let r=Ec(e.Fp,t.map(i=>i.Z));return t.map((i,n)=>e.fromAffine(i.toAffine(r[n])))}function MK(e,t,r=1){if(!Number.isSafeInteger(e)||e<r||e>t)throw new Error("invalid window size, expected ["+r+".."+t+"], got W="+e)}function DK(e,t){let r=e*(4*t+128);if(r>RP)throw new Error("invalid window size: table would need ~"+Math.ceil(r/2**20)+" MiB, max "+RP/2**20+" MiB")}function Sb(e,t){if(e!==void 0){$s(e,"randomBytes");try{let r=e(t);if(!oo(r)||r.length!==t)return}catch{return}return e}}function NP(e,t){lr(e,"points"),e.forEach((r,i)=>{if(!(r instanceof t))throw new Error("invalid point at index "+i)})}function HK(e,t,r){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((i,n)=>{if(!(r===void 0?t.isValid(i):za(i)&&i<r))throw new Error("invalid scalar at index "+n)})}function _b(e){return CP.get(e)||1}function qK(e,t){let r=e.double(),i=[e];for(let n=1;n<t;n++)i.push(i[n-1].add(r));return i}function UK(e,t){let r=2**t,i=r/2,n=BigInt(r-1),o=[];for(;e>wb;){let a=0;e&kl&&(a=Number(e&n),a>=i&&(a-=r),e-=BigInt(a)),o.push(a),e>>=kl}return o}function FK(e,t,r){let i=2**t,n=i/2,o=BigInt(i-1),a=BigInt(t),s=[];for(let u=0;u<r;u++){let c=Number(e&o);e>>=a,c>n&&(c-=i,e+=kl),s.push(c)}if(e!==wb)throw new Error("invalid wnaf");return s}function jK(e,t,r){let i=0;for(let o of r)i=Math.max(i,o.length);let n=e;for(let o=i-1;o>=0;o--){o!==i-1&&(n=n.double());for(let a=0;a<r.length;a++){let s=r[a][o];if(s){let u=t[a][Math.abs(s)-1>>1];n=n.add(s<0?u.negate():u)}}}return n}function Ic(e,t,r,i=!1){if(Ga(e),NP(t,e),ao(i,"allowOversized"),HK(r,e.Fn,i?e.Fn.ORDER**CK:void 0),t.length!==r.length)throw new Error("arrays of points and scalars must have equal length");let n=t.map(a=>qK(a,4)),o=r.map(a=>UK(a,4));return jK(e.ZERO,n,o)}function kP(e,t,r){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return sn(t),t}else return xc(e,{isLE:r})}function LP(e,t,r={},i){if(e!=="weierstrass"&&e!=="edwards")throw new Error('expected curve type "weierstrass" or "edwards"');if(i===void 0&&(i=e==="edwards"),!t||typeof t!="object")throw new Error(`expected valid ${e} CURVE object`);At(r);for(let u of["p","n","h"]){let c=t[u];if(!(za(c)&&c!==wb))throw new Error(`CURVE.${u} must be positive bigint`)}let n=kP(t.p,r.Fp,i),o=kP(t.n,r.Fn,i),s=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let u of s)if(!n.isValid(t[u]))throw new Error(`CURVE.${u} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:n,Fn:o}}function sg(e,t){return function(i){let n=e(i);return{secretKey:n,publicKey:t(n)}}}var wb,kl,CK,bb,PP,LK,RP,CP,ag,ug=Dr(()=>{g();Ka();Js();wb=BigInt(0),kl=BigInt(1),CK=BigInt(4),bb=16,PP=128,LK=5,RP=2**31;CP=new WeakMap;ag=class{constructor(t,r){ee(this,"Point");ee(this,"BASE");ee(this,"ZERO");ee(this,"randomBytes");ee(this,"wnafPrecomputes",new WeakMap);ee(this,"baseCanBeBlinded");ee(this,"bits");Ga(t),this.randomBytes=Sb(r,bb),this.Point=t,this.BASE=t.BASE,this.ZERO=t.ZERO,this.bits=t.Fn.BITS}buildWnafTable(t,r,i){let n=Math.ceil(i/r)+1,o=2**(r-1),a=[],s=t;for(let u=0;u<n;u++){let c=s;for(let l=0;l<o;l++)a.push(c),c=c.add(s);s=a[a.length-1].double()}return{W:r,bits:i,windows:n,comp:a}}wnafCachedCT(t,r){let{W:i,windows:n,comp:o}=t,a=2**(i-1),s=FK(r,i,n),u=this.ZERO,c=this.BASE;for(let l=0;l<n;l++){let p=s[l],d=l*a,v=Math.abs(p)-1,_=o[d];for(let R=1;R<a;R++)_=R===v?o[d+R]:_;let I=_.negate();p===0?c=c.add(o[d]):u=u.add(p<0?I:_)}return{p:u,f:c}}getWnafPrecomputes(t,r,i,n){let o=this.wnafPrecomputes.get(r),a=o?.find(s=>s.W===t&&s.bits===i);return a||(a=this.buildWnafTable(r,t,i),typeof n=="function"&&(a={...a,comp:n(a.comp)}),o||(o=[],this.wnafPrecomputes.set(r,o)),o.push(a)),a}assertPoint(t){if(!(t instanceof this.Point))throw new TypeError('"point" expected Point instance, got type='+typeof t)}validateMulInput(t,r){if(this.assertPoint(t),!hb(r,kl,this.Point.Fn.ORDER))throw new Error("invalid scalar")}runCT(t,r,i,n){let o=_b(t);return o===1?this.fixedWindowCT(t,r,i):this.wnafCachedCT(this.getWnafPrecomputes(o,t,i,n),r)}mulCT(t,r,i){return this.validateMulInput(t,r),this.runCT(t,r,this.bits,i)}mulCTBlinded(t,r,i){if(this.validateMulInput(t,r),this.randomBytes===void 0)throw new Error("randomBytes is required for scalar blinding");let n=this.Point.Fn.BITS+PP,o=this.randomBytes(bb);if(!oo(o)||o.length!==bb)throw new Error("randomBytes returned invalid byte array");o[0]=o[0]&63|128;let a=r+Hr(o)*this.Point.Fn.ORDER;return this.runCT(t,a,n,i)}fixedWindowCT(t,r,i){let n=LK,o=1<<n,a=Rl(n),s=new Array(o);s[0]=this.ZERO;for(let l=1;l<o;l++)s[l]=s[l-1].add(t);let u=Math.ceil(i/n),c=this.ZERO;for(let l=u-1;l>=0;l--){if(l!==u-1)for(let v=0;v<n;v++)c=c.double();let p=Number(r>>BigInt(l*n)&a),d=s[0];for(let v=1;v<o;v++)d=v===p?s[v]:d;c=c.add(d)}return{p:c,f:c}}shouldBlind(t,r){return this.randomBytes===void 0?!1:r===kl?!0:t!==this.BASE?!1:(this.baseCanBeBlinded===void 0&&(this.baseCanBeBlinded=this.mulUnsafe(this.BASE,this.Point.Fn.ORDER).is0()),this.baseCanBeBlinded)}mulSecret(t,r,i,n){return this.shouldBlind(t,i)?this.mulCTBlinded(t,r,n):this.mulCT(t,r,n)}mulUnsafe(t,r,i){if(this.assertPoint(t),!za(r))throw new Error("invalid scalar");let n=_b(t);if(n===1||r>=this.Point.Fn.ORDER)return Ic(this.Point,[t],[r],!0);let o=this.getWnafPrecomputes(n,t,this.bits,i);return this.wnafCachedCT(o,r).p}setWindowSize(t,r){this.assertPoint(t),MK(r,this.bits);let i=Math.ceil((this.bits+PP)/r)+1;DK(i*2**(r-1),this.Point.Fp.BYTES),CP.set(t,r),this.wnafPrecomputes.delete(t)}hasWindowSize(t){return _b(t)!==1}}});function Eb(e,t="n"){if(typeof e!="number")throw new TypeError(`wrong u32 integer "${t}": expected number, got type=${typeof e}`);if(!Number.isSafeInteger(e)||e<0||e>4294967295)throw new RangeError(`wrong u32 integer "${t}": expected 0..4294967295, got ${e}`);return e}function MP(e){return Eb(e,"x"),(e&e-1)===0&&e!==0}function zK(e){if(Eb(e),e<=1)return 1;if(e>2147483648)throw new Error("nextPowerOfTwo overflow: result does not fit u32");return 1<<cg(e-1)+1>>>0}function cg(e){return Eb(e),31-Math.clz32(e)}function DP(e,t,r,i,n){sn(e);let o=e,a=r||((p,d)=>new Array(p).fill(d??o.ZERO)),s=p=>{if(Array.isArray(p))return!0;if(!ArrayBuffer.isView(p))return!1;let d=p;return typeof d.length=="number"&&typeof d.slice=="function"&&typeof d[Symbol.iterator]=="function"},u=(p,d)=>{if(!s(d))throw new TypeError(`"${p}" expected polynomial, got type=${typeof d}`)},c=(p,d)=>{u("a",p);let v=p.length;if(d!==void 0&&(u("b",d),d.length!==v))throw new Error(`poly: mismatched lengths ${v} vs ${d.length}`);if(n!==void 0&&v!==n)throw new Error(`poly: expected fixed length ${n}, got ${v}`);return v};function l(p,d,v=!1,_){if(!MP(d))throw new Error("poly.lagrange: expected power of two length, got "+d);let I=_||(v?t.brp(cg(d)):t.roots(cg(d)));for(let R=0;R<d;R++)if(o.eql(p,I[R]))return R;return-1}return{roots:t,create:a,length:n,extend:(p,d)=>{c(p);let v=a(d,o.ZERO);for(let _=0;_<Math.min(p.length,d);_++)v[_]=p[_];return v},degree:p=>{c(p);for(let d=p.length-1;d>=0;d--)if(!o.is0(p[d]))return d;return-1},add:(p,d)=>{let v=c(p,d),_=a(v);for(let I=0;I<v;I++)_[I]=o.add(p[I],d[I]);return _},sub:(p,d)=>{let v=c(p,d),_=a(v);for(let I=0;I<v;I++)_[I]=o.sub(p[I],d[I]);return _},dot:(p,d)=>{let v=c(p,d),_=a(v);for(let I=0;I<v;I++)_[I]=o.mul(p[I],d[I]);return _},mul:(p,d)=>{if(s(d)){let v=c(p,d);if(i){let _=i.direct(p,!1,!0),I=i.direct(d,!1,!0);for(let R=0;R<_.length;R++)_[R]=o.mul(_[R],I[R]);return i.inverse(_,!0,!1)}else{let _=a(v);for(let I=0;I<v;I++)for(let R=0;R<v;R++){let k=(I+R)%v;_[k]=o.add(_[k],o.mul(p[I],d[R]))}return _}}else{let v=a(c(p));for(let _=0;_<v.length;_++)v[_]=o.mul(p[_],d);return v}},convolve(p,d){u("a",p),u("b",d);let v=zK(p.length+d.length-1);return this.mul(this.extend(p,v),this.extend(d,v))},shift(p,d){u("p",p);let v=a(p.length);if(n!==void 0&&p.length!==n)throw new Error(`poly: expected fixed length ${n}, got ${p.length}`);if(!p.length)return v;v[0]=p[0];for(let _=1,I=o.ONE;_<p.length;_++)I=o.mul(I,d),v[_]=o.mul(p[_],I);return v},clone:p=>{c(p);let d=a(p.length);for(let v=0;v<p.length;v++)d[v]=p[v];return d},eval:(p,d)=>{c(p,d);let v=o.ZERO;for(let _=0;_<p.length;_++)v=o.add(v,o.mul(p[_],d[_]));return v},monomial:{basis:(p,d)=>{let v=a(d),_=o.ONE;for(let I=0;I<d;I++)v[I]=_,_=o.mul(_,p);return v},eval:(p,d)=>{c(p);let v=o.ZERO;for(let _=p.length-1;_>=0;_--)v=o.add(o.mul(v,d),p[_]);return v}},lagrange:{basis:(p,d,v=!1,_)=>{if(!MP(d))throw new Error("poly.lagrange: expected power of two length, got "+d);let I=cg(d),R=_||(v?t.brp(I):t.roots(I)),k=a(d),q=l(p,d,v,_);if(q!==-1)return k[q]=o.ONE,k;let z=o.pow(p,BigInt(d)),A=o.mul(o.sub(z,o.ONE),o.inv(BigInt(d))),B=a(d);for(let F=0;F<d;F++)B[F]=o.sub(p,R[F]);let M=o.invertBatch(B);for(let F=0;F<d;F++)k[F]=o.mul(A,o.mul(R[F],M[F]));return k},eval(p,d,v=!1){c(p);let _=l(d,p.length,v);if(_!==-1)return p[_];let I=this.basis(d,p.length,v),R=o.ZERO;for(let k=0;k<p.length;k++)o.is0(p[k])||(R=o.add(R,o.mul(p[k],I[k])));return R}},vanishing(p){if(u("roots",p),n!==void 0&&p.length!==n)throw new Error(`poly: expected fixed length ${n}, got ${p.length}`);let d=a(p.length+1,o.ZERO);d[0]=o.ONE;for(let v of p){let _=o.neg(v);for(let I=d.length-1;I>0;I--)d[I]=o.add(o.mul(d[I],_),d[I-1]);d[0]=o.mul(d[0],_)}return d}}}var HP=Dr(()=>{g();Js()});function Qs(e,t){if(or(e),or(t),t<0||t>4)throw new Error("invalid I2OSP length: "+t);if(e<0||e>2**(8*t)-1)throw new Error("invalid I2OSP input: "+e);let r=Array.from({length:t}).fill(0);for(let i=t-1;i>=0;i--)r[i]=e&255,e>>>=8;return new Uint8Array(r)}function VK(e,t){let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e[i]^t[i];return r}function jP(e){if(!oo(e)&&typeof e!="string")throw new Error("DST must be Uint8Array or ascii string");let t=typeof e=="string"?wc(e):e;if(t.length===0)throw new Error("DST must be non-empty");return t}function GK(e,t,r,i){if(Ce(e),or(r),typeof i!="function")throw new Error("expand_message_xmd: expected hash function");or(i.outputLen,"hash.outputLen"),or(i.blockLen,"hash.blockLen"),t=jP(t),t.length>255&&(t=i(bt(wc("H2C-OVERSIZE-DST-"),t)));let{outputLen:n,blockLen:o}=i,a=Math.ceil(r/n);if(r>65535||a>255)throw new Error("expand_message_xmd: invalid lenInBytes");let s=bt(t,Qs(t.length,1)),u=new Uint8Array(o),c=Qs(r,2),l=new Array(a),p=i(bt(u,e,c,Qs(0,1),s));l[0]=i(bt(p,Qs(1,1),s));for(let v=1;v<a;v++){let _=[VK(p,l[v-1]),Qs(v+1,1),s];l[v]=i(bt(..._))}return bt(...l).slice(0,r)}function WK(e,t,r,i,n){if(Ce(e),or(r),or(i,"k"),i<0)throw new Error("expand_message_xof: invalid k");if(typeof n!="function")throw new Error("expand_message_xof: expected XOF function");if(typeof n.create!="function")throw new Error("expand_message_xof: expected XOF create");if(t=jP(t),r<0||r>65535)throw new Error("expand_message_xof: invalid lenInBytes");if(t.length>255){let o=Math.ceil(2*i/8);t=n.create({dkLen:o}).update(wc("H2C-OVERSIZE-DST-")).update(t).digest()}if(t.length>255)throw new Error("expand_message_xof: invalid DST");return n.create({dkLen:r}).update(e).update(Qs(r,2)).update(t).update(Qs(t.length,1)).digest()}function xb(e,t,r){At(r,{p:"bigint",m:"number",k:"number",hash:"function"});let{p:i,k:n,m:o,hash:a,expand:s,DST:u}=r;if(or(a.outputLen,"valid hash"),Ce(e),or(t),or(o,"m"),or(n,"k"),i<=BigInt(1))throw new Error("hash_to_field: expected valid field characteristic");if(t<1)throw new Error("hash_to_field: expected count >= 1");if(o<1)throw new Error("hash_to_field: expected m >= 1");if(n<0)throw new Error("hash_to_field: invalid k");let c=i.toString(2).length,l=Math.ceil((c+n)/8),p=t*o*l,d;if(s==="xmd")d=GK(e,u,p,a);else if(s==="xof")d=WK(e,u,p,n,a);else if(s==="_internal_pass")d=e;else throw new Error('expand must be "xmd" or "xof"');let v=new Array(t);for(let _=0;_<t;_++){let I=new Array(o);for(let R=0;R<o;R++){let k=l*(R+_*o),q=d.subarray(k,k+l);I[R]=Ei(KK(q),i)}v[_]=I}return v}function zP(e,t){sn(e),lr(t,"map");let r=t.map((i,n)=>{if(lr(i,"map["+n+"]"),i.length<1)throw new Error("isogenyMap: expected non-empty coefficients");return Array.from(i).reverse()});return(i,n)=>{let[o,a,s,u]=r.map(d=>d.reduce((v,_)=>e.add(e.mul(v,i),_))),c=e.is0(a)||e.is0(u),[l,p]=Ec(e,[a,u],!0);return i=e.mul(o,l),n=e.mul(n,e.mul(s,p)),c?{x:e.ZERO,y:e.ZERO}:{x:i,y:n}}}function KP(e,t,r){if(typeof t!="function")throw new Error("mapToCurve() must be defined");At(r);let i=u=>Object.freeze({...u,DST:oo(u.DST)?ra(u.DST):u.DST,...u.encodeDST===void 0?{}:{encodeDST:oo(u.encodeDST)?ra(u.encodeDST):u.encodeDST}}),n=i(r),o=u=>u&&u.DST!==void 0?{DST:u.DST}:void 0;function a(u){return e.fromAffine(t(u))}function s(u){let c=u.clearCofactor();return c.equals(e.ZERO)?e.ZERO:(c.assertValidity(),c)}return Object.freeze({get defaults(){return i(n)},Point:e,hashToCurve(u,c){let l=Object.assign({},n,o(c)),p=xb(u,2,l),d=a(p[0]),v=a(p[1]);return s(d.add(v))},encodeToCurve(u,c){let l=n.encodeDST===void 0?{}:{DST:n.encodeDST},p=Object.assign({},n,l,o(c)),d=xb(u,1,p),v=a(d[0]);return s(v)},mapToCurve(u){if(n.m===1){if(typeof u!="bigint")throw new Error("expected bigint (m=1)");return s(a([u]))}if(!Array.isArray(u))throw new Error("expected array of bigints");if(u.length!==n.m)throw new Error(`expected array of ${n.m} bigints`);for(let c of u)if(typeof c!="bigint")throw new Error("expected array of bigints");return s(a(u))},hashToScalar(u,c){let l=e.Fn.ORDER,p=Object.assign({},n,{DST:YK},o(c),{p:l,m:1});return xb(u,1,p)[0][0]}})}function ZK(e,t){let r=sn(e),i=r.ORDER,n=qP;for(let I=i-so;I%Wa===qP;I/=Wa)n+=so;let o=n,a=Wa<<o-so-so,s=a*Wa,u=(i-so)/s,c=(u-so)/Wa,l=s-so,p=a,d=r.pow(t,u),v=r.pow(t,(u+so)/Wa),_=(I,R)=>{let k=d,q=r.pow(R,l),z=r.sqr(q);z=r.mul(z,R);let A=r.mul(I,z);A=r.pow(A,c),A=r.mul(A,q),q=r.mul(A,R),z=r.mul(A,I);let B=r.mul(z,q);A=r.pow(B,p);let M=r.eql(A,r.ONE);q=r.mul(z,v),A=r.mul(B,k),z=r.cmov(q,z,M),B=r.cmov(A,B,M);for(let F=o;F>so;F--){let V=F-Wa;V=Wa<<V-so;let Y=r.pow(B,V),E=r.eql(Y,r.ONE);q=r.mul(z,k),k=r.mul(k,k),Y=r.mul(B,k),z=r.cmov(q,z,E),B=r.cmov(Y,B,E)}return{isValid:!r.is0(R)&&(M||r.is0(I)),value:z}};if(r.ORDER%FP===UP){let I=(r.ORDER-UP)/FP,R=r.sqrt(r.neg(t));_=(k,q)=>{let z=r.sqr(q),A=r.mul(k,q);z=r.mul(z,A);let B=r.pow(z,I);B=r.mul(B,A);let M=r.mul(B,R),F=r.mul(r.sqr(B),q),V=r.eql(F,k),Y=r.cmov(M,B,V);return{isValid:!r.is0(q)&&V,value:Y}}}return _}function VP(e,t){let r=sn(e);At(t,{},{},"opts");let{A:i,B:n,Z:o}=t;if(!r.isValidNot0(i)||!r.isValidNot0(n)||!r.isValid(o))throw new Error("mapToCurveSimpleSWU: invalid opts");if(r.eql(o,r.neg(r.ONE))||yb(r,o))throw new Error("mapToCurveSimpleSWU: invalid opts");let a=r.mul(n,r.inv(r.mul(o,i))),s=r.add(r.add(r.mul(r.sqr(a),a),r.mul(i,a)),n);if(!yb(r,s))throw new Error("mapToCurveSimpleSWU: invalid opts");let u=ZK(r,o);if(!r.isOdd)throw new Error("Field does not have .isOdd()");return c=>{let l,p,d,v,_,I,R,k;l=r.sqr(c),l=r.mul(l,o),p=r.sqr(l),p=r.add(p,l),d=r.add(p,r.ONE),d=r.mul(d,n),v=r.cmov(o,r.neg(p),!r.eql(p,r.ZERO)),v=r.mul(v,i),p=r.sqr(d),I=r.sqr(v),_=r.mul(I,i),p=r.add(p,_),p=r.mul(p,d),I=r.mul(I,v),_=r.mul(I,n),p=r.add(p,_),R=r.mul(l,d);let{isValid:q,value:z}=u(p,I);k=r.mul(l,c),k=r.mul(k,z),R=r.cmov(R,d,q),k=r.cmov(k,z,q);let A=r.isOdd(c)===r.isOdd(k);k=r.cmov(r.neg(k),k,A);let B=Ec(r,[v],!0)[0];return R=r.mul(R,B),{x:R,y:k}}}var qP,so,Wa,UP,FP,KK,YK,GP=Dr(()=>{g();Ka();Js();qP=BigInt(0),so=BigInt(1),Wa=BigInt(2),UP=BigInt(3),FP=BigInt(4),KK=Hr;YK="HashToScalar-"});function Ob(e){At(e,{name:"string",hash:"function"},{hashToScalar:"function",validatePoint:"function",parsePublicKey:"function",adjustScalar:"function",adjustPoint:"function",challenge:"function",adjustNonces:"function",adjustSecret:"function",adjustPublic:"function",adjustGroupCommitmentShare:"function",adjustTx:"object",adjustDKG:"function"}),Ga(e.Point);let{Point:t,validatePoint:r,parsePublicKey:i,adjustScalar:n,adjustPoint:o,challenge:a,adjustNonces:s,adjustSecret:u,adjustPublic:c,adjustGroupCommitmentShare:l,adjustDKG:p}=e,d=e.Fn===void 0?t.Fn:e.Fn,v=e.adjustTx===void 0?void 0:{encode:e.adjustTx.encode,decode:e.adjustTx.decode};v&&At(v,{encode:"function",decode:"function"});let _=e.hash,I=e.hashToScalar===void 0?(N,W={DST:new Uint8Array})=>{let X=_(bt(W.DST,N));return d.create(d.isLE?_c(X):Hr(X))}:e.hashToScalar,R=Jo(e.H1!==void 0?e.H1:e.name+"rho"),k=Jo(e.H2!==void 0?e.H2:e.name+"chal"),q=Jo(e.H3!==void 0?e.H3:e.name+"nonce"),z=Jo(e.H4!==void 0?e.H4:e.name+"msg"),A=Jo(e.H5!==void 0?e.H5:e.name+"com"),B=Jo(e.HDKG!==void 0?e.HDKG:e.name+"dkg"),M=Jo(e.HID!==void 0?e.HID:e.name+"id"),F=N=>I(N,{DST:R}),V=N=>I(N,{DST:k}),Y=N=>I(N,{DST:q}),E=N=>_(bt(z,N)),h=N=>_(bt(A,N)),y=N=>I(N,{DST:B}),w=N=>I(N,{DST:M}),S=(N=Si)=>{if(typeof N!="function")throw new TypeError('"rng" expected function, got type='+typeof N);let W=Xs(N(Oc(d.ORDER)),d.ORDER,d.isLE);return d.isLE?_c(W):Hr(W)},O=N=>N.toBytes(),C=N=>{if(N.assertValidity(),N.is0())throw new Error("invalid point: identity");if(!N.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return r&&r(N),N},D=N=>C(t.fromBytes(N)),P=(N,W)=>({identifier:N,hiding:O(t.BASE.multiply(d.fromBytes(W.hiding))),binding:O(t.BASE.multiply(d.fromBytes(W.binding)))}),m=o===void 0?N=>N:o,x=N=>{if(!d.isValid(N)||d.is0(N))throw new Error("Invalid identifier "+N);return N},K=N=>ta(d.toBytes(x(N))),U=(N,W="identifier")=>{Tl(N,W);let X=x(d.fromBytes(bc(N)));if(K(X)!==N)throw new Error("expected canonical identifier hex");return X},G=N=>({identifier:K(U(N.identifier)),commitment:N.commitment.map(W=>ra(W)),proofOfKnowledge:ra(N.proofOfKnowledge)}),te=N=>{let W=N.map(G);return W.sort((X,ie)=>{let pe=U(X.identifier),se=U(ie.identifier);return pe<se?-1:pe>se?1:0}),W},ae=(N,W)=>{if(N.length!==W.length)return!1;for(let X=0;X<N.length;X++){let ie=N[X],pe=W[X];if(ie.identifier!==pe.identifier||ie.commitment.length!==pe.commitment.length)return!1;for(let se=0;se<ie.commitment.length;se++)if(!lb(ie.commitment[se],pe.commitment[se]))return!1;if(!lb(ie.proofOfKnowledge,pe.proofOfKnowledge))return!1}return!0},oe={encode:(N,W)=>{let X=bt(O(N),d.toBytes(W));return v&&(X=v.encode(X)),X},decode:N=>{v&&(N=v.decode(N));let W=N.subarray(0,-d.BYTES),X=D(W);if(O(X).length!==W.length)throw new Error("invalid signature encoding");let ie=d.fromBytes(N.subarray(-d.BYTES));return{R:X,z:ie}}},le=(N=Si)=>{let W=S(N);n&&(W=n(W));let X=t.BASE.multiply(W);return{scalar:W,point:X}},he="roots are unavailable in FROST polynomial mode",ve={info:{G:d.ZERO,oddFactor:d.ZERO,powerOfTwo:0},roots(){throw new Error(he)},brp(){throw new Error(he)},inverse(){throw new Error(he)},omega(){throw new Error(he)},clear(){}},je=DP(d,ve),be=(N,W)=>Ic(t,N,W),_e=(N,W)=>{if(!W.length)throw new Error("empty coefficients");return je.monomial.eval(W,N)},We=(N,W)=>{let X="invalid parameters";if(!N.some(me=>d.eql(me,W)))throw new Error(X);let ie=new Set(N);if(ie.size!==N.length)throw new Error(X);if(!ie.has(W))throw new Error(X);let pe=d.ONE,se=d.ONE;for(let me of N)d.eql(me,W)||(pe=d.mul(pe,me),se=d.mul(se,d.sub(me,W)));return d.div(pe,se)},Pe=(N,W)=>{let X=je.monomial.basis(N,W.length);return be(W,X)},Me=(N,W,X,ie=Si)=>{if(uo(N),W!==void 0&&Ce(W,d.BYTES,"secret"),X!==void 0&&lr(X,"coeffs"),typeof ie!="function")throw new TypeError('"rng" expected function, got type='+typeof ie);let pe=W===void 0?S(ie):d.fromBytes(W);if(!X){X=[];for(let ge=0;ge<N.min-1;ge++)X.push(S(ie))}if(X.length!==N.min-1)throw new Error("wrong coefficients length");let se=[pe,...X],me=se.map(ge=>t.BASE.multiply(ge));return{coefficients:se,commitment:me,secret:pe}},rt={challenge:(N,W,X)=>y(bt(d.toBytes(N),O(W),O(X))),compute(N,W,X,ie=Si){if(W.length<1)throw new Error("coefficients should have at least one element");let{point:pe,scalar:se}=le(ie),me=X[0],ge=this.challenge(N,me,pe),ke=d.add(se,d.mul(W[0],ge));return oe.encode(pe,ke)},validate(N,W,X){if(W.length<1)throw new Error("commitment should have at least one element");let{R:ie,z:pe}=oe.decode(X),se=D(W[0]),me=this.challenge(N,se,ie);if(!ie.equals(t.BASE.multiplyUnsafe(pe).subtract(se.multiplyUnsafe(me))))throw new Error("invalid proof of knowledge")}},Be={challenge:(N,W,X)=>a?a(N,W,X):V(bt(O(N),O(W),X)),sign(N,W,X=Si){let{point:ie,scalar:pe}=le(X),se=t.BASE.multiply(W),me=this.challenge(ie,se,N),ge=d.add(pe,d.mul(me,W));return[ie,ge]},verify(N,W,X,ie){o&&(ie=o(ie)),o&&(W=o(W));let pe=this.challenge(W,ie,N),se=t.BASE.multiplyUnsafe(X),me=ie.multiplyUnsafe(pe),ge=se.subtract(me).subtract(W);return ge.clearCofactor&&(ge=ge.clearCofactor()),t.ZERO.equals(ge)}},vt=(N,W,X)=>{if(!t.BASE.multiply(X).equals(Pe(N,W)))throw new Error("invalid secret share")},ui={fromNumber(N){if(!Number.isSafeInteger(N))throw new Error("expected safe interger");return K(BigInt(N))},derive(N){return Tl(N,"s"),K(w(Jo(N)))}},Et=(N,W=Si)=>Y(bt(W(32),d.toBytes(N))),_t=(N,W,X)=>{let ie=W.map(Mt=>[Mt.identifier,U(Mt.identifier),D(Mt.hiding),D(Mt.binding)]);ie.sort((Mt,$e)=>Mt[1]<$e[1]?-1:Mt[1]>$e[1]?1:0);let pe=[];for(let[Mt,$e,Ee,Jt]of ie)pe.push(d.toBytes($e),O(Ee),O(Jt));let se=h(bt(...pe)),me=bt(O(N),E(X),se),ge={};for(let[Mt,$e]of ie)ge[Mt]=F(bt(me,d.toBytes($e)));let ke=t.ZERO,Oe=[],Ye=[];for(let[Mt,$e,Ee,Jt]of ie){if(t.ZERO.equals(Ee)||t.ZERO.equals(Jt))throw new Error("infinity commitment");ke=ke.add(Ee),Oe.push(Jt),Ye.push(ge[Mt])}let Ze=ke.add(be(Oe,Ye));return{identifiers:ie.map(Mt=>Mt[1]),groupCommitment:Ze,bindingFactors:ge}},Yn=(N,W,X,ie)=>{let pe=m(D(N)),se=U(ie),{identifiers:me,groupCommitment:ge,bindingFactors:ke}=_t(pe,W,X),Oe=ke[ie],Ye=We(me,se),Ze=Be.challenge(ge,pe,X);return{lambda:Ye,challenge:Ze,bindingFactor:Oe,groupCommitment:ge}};Object.freeze(ui);let Lt={Identifier:ui,DKG:Object.freeze({round1:(N,W,X,ie=Si)=>{let pe=U(N,"id");uo(W);let{coefficients:se,commitment:me}=Me(W,X,void 0,ie),ge=rt.compute(pe,se,me,ie),ke=me.map(O),Oe={identifier:K(pe),commitment:ke,proofOfKnowledge:ge},Ye={identifier:pe,coefficients:se,commitment:me.map(O),signers:{min:W.min,max:W.max},step:1};return{public:Oe,secret:Ye}},round2:(N,W)=>{if(At(N,{identifier:"bigint",commitment:"object",signers:"object"},{coefficients:"object",round1Cache:"object",round2Cache:"object",step:"number"},"secret"),uo(N.signers,"secret.signers"),lr(W,"others"),W.length!==N.signers.max-1)throw new Error("wrong number of round1 packages");if(!N.coefficients||N.step===3)throw new Error("round3 package used in round2");let X=te(W);if(N.round2Cache!==void 0){if(N.round1Cache===void 0||!ae(N.round1Cache,X))throw new Error("round1 packages do not match authenticated transcript");return N.round2Cache}let ie={};for(let pe of X){if(pe.commitment.length!==N.signers.min)throw new Error("wrong number of commitments");let se=U(pe.identifier);if(se===N.identifier)throw new Error("duplicate id="+K(se));rt.validate(se,pe.commitment,pe.proofOfKnowledge);for(let ge of pe.commitment)D(ge);if(ie[pe.identifier])throw new Error("Duplicate id="+se);let me=d.toBytes(_e(se,N.coefficients));ie[pe.identifier]={identifier:K(N.identifier),signingShare:me}}return N.round1Cache=X,N.round2Cache=ie,N.step=2,ie},round3:(N,W,X)=>{if(At(N,{identifier:"bigint",commitment:"object",signers:"object"},{coefficients:"object",round1Cache:"object",round2Cache:"object",step:"number"},"secret"),uo(N.signers,"secret.signers"),lr(W,"round1"),lr(X,"round2"),W.length!==N.signers.max-1)throw new Error("wrong length of round1 packages");if(!N.coefficients||N.step!==2||!N.round1Cache)throw new Error("round2 package used in round3");let ie=te(W),pe=N.round1Cache;if(!ae(pe,ie))throw new Error("round1 packages do not match authenticated transcript");if(X.length!==pe.length)throw new Error("wrong length of round2 packages");let se={};for(let Ee of pe){if(!Ee.identifier||!Ee.commitment)throw new Error("wrong round1 share");se[Ee.identifier]={...Ee}}for(let Ee of X){if(!Ee.identifier||!Ee.signingShare)throw new Error("wrong round2 share");if(!se[Ee.identifier])throw new Error("round1 share for "+Ee.identifier+" is missing");se[Ee.identifier].signingShare=Ee.signingShare}if(Object.keys(se).length!==pe.length)throw new Error("mismatch identifiers between rounds");let me=d.ZERO;if(N.commitment.length!==N.signers.min)throw new Error("wrong commitments length");let ge=N.commitment.map(D),ke=_e(N.identifier,N.coefficients);vt(N.identifier,ge,ke);let Oe=ge.map(O),Ye={[K(N.identifier)]:Oe};for(let Ee in se){let Jt=se[Ee];if(!Jt.signingShare||!Jt.commitment)throw new Error("mismatch identifiers");let wt=U(Ee),Ft=d.fromBytes(Jt.signingShare),Hu=Jt.commitment.map(D);vt(N.identifier,Hu,Ft),me=d.add(me,Ft);let Dt=K(wt);if(Ye[Dt])throw new Error("duplicated id="+Dt);Ye[Dt]=Jt.commitment}me=d.add(me,ke);let Ze=new Array(N.signers.min).fill(t.ZERO);for(let Ee in Ye){let Jt=Ye[Ee];if(Jt.length!==N.signers.min)throw new Error("wrong commitments length");for(let wt=0;wt<Jt.length;wt++)Ze[wt]=Ze[wt].add(D(Jt[wt]))}let Pt=Ze.map(O),Mt={};for(let Ee in Ye)Mt[Ee]=O(Pe(U(Ee),Ze));let $e={public:{signers:{min:N.signers.min,max:N.signers.max},commitments:Pt,verifyingShares:Object.fromEntries(Object.entries(Mt).map(([Ee,Jt])=>[Ee,Jt.slice()]))},secret:{identifier:K(N.identifier),signingShare:d.toBytes(me)}};p&&($e=p($e));for(let Ee=0;Ee<N.coefficients.length;Ee++)N.coefficients[Ee]-=N.coefficients[Ee];return delete N.coefficients,delete N.round1Cache,delete N.round2Cache,N.step=3,$e},clean(N){if(At(N,{identifier:"bigint",commitment:"object",signers:"object"},{coefficients:"object",round1Cache:"object",round2Cache:"object",step:"number"},"secret"),N.identifier-=N.identifier,N.coefficients)for(let W=0;W<N.coefficients.length;W++)N.coefficients[W]-=N.coefficients[W];delete N.round1Cache,delete N.round2Cache,N.step=3}}),trustedDealer(N,W,X,ie=Si){if(uo(N),W===void 0){W=[];for(let Oe=1;Oe<=N.max;Oe++)W.push(ui.fromNumber(Oe))}else if(lr(W,"identifiers"),W.length!==N.max)throw new Error("identifiers should be array of "+N.max);let pe={};for(let Oe of W){let Ye=U(Oe);if(Oe in pe)throw new Error("duplicated id="+Oe);pe[Oe]=Ye}let se=Me(N,X,void 0,ie),me=se.commitment.map(O),ge={},ke={};for(let Oe of W){let Ye=_e(pe[Oe],se.coefficients);ke[Oe]=O(t.BASE.multiply(Ye)),ge[Oe]={identifier:Oe,signingShare:d.toBytes(Ye)}}return{public:{signers:{min:N.min,max:N.max},commitments:me,verifyingShares:ke},secretShares:ge}},validateSecret(N,W){At(N,{identifier:"string",signingShare:"object"},{},"secret"),Ce(N.signingShare,d.BYTES,"secret.signingShare"),At(W,{signers:"object",commitments:"object",verifyingShares:"object"},{},"pub"),uo(W.signers,"pub.signers"),lr(W.commitments,"pub.commitments");let X=U(N.identifier),ie=W.commitments.map(D),pe=d.fromBytes(N.signingShare);vt(X,ie,pe)},commit(N,W=Si){if(At(N,{identifier:"string",signingShare:"object"},{},"secret"),Ce(N.signingShare,d.BYTES,"secret.signingShare"),typeof W!="function")throw new TypeError('"rng" expected function, got type='+typeof W);let X=d.fromBytes(N.signingShare),ie=Et(X,W),pe=Et(X,W),se={hiding:d.toBytes(ie),binding:d.toBytes(pe)};return{nonces:se,commitments:P(N.identifier,se)}},signShare(N,W,X,ie,pe){At(N,{identifier:"string",signingShare:"object"},{},"secret"),Ce(N.signingShare,d.BYTES,"secret.signingShare"),At(W,{signers:"object",commitments:"object",verifyingShares:"object"},{},"pub"),uo(W.signers,"pub.signers"),lr(W.commitments,"pub.commitments"),At(X,{hiding:"object",binding:"object"},{},"nonces"),Ce(X.hiding,d.BYTES,"nonces.hiding"),Ce(X.binding,d.BYTES,"nonces.binding"),lr(ie,"commitmentList"),Ce(pe,void 0,"msg"),WP(W.signers,ie.length);let se=d.fromBytes(X.hiding),me=d.fromBytes(X.binding);if(d.is0(se)||d.is0(me))throw new Error("signing nonces already used");let ge={identifier:N.identifier,hiding:O(t.BASE.multiply(se)),binding:O(t.BASE.multiply(me))},ke=ie.find(Dt=>Dt.identifier===N.identifier);if(!ke)throw new Error("missing signer commitment");if(ta(ke.hiding)!==ta(ge.hiding)||ta(ke.binding)!==ta(ge.binding))throw new Error("incorrect signer commitment");u&&(N=u(N,W)),c&&(W=c(W));let Oe=d.fromBytes(N.signingShare),{lambda:Ye,challenge:Ze,bindingFactor:Pt,groupCommitment:Mt}=Yn(W.commitments[0],ie,pe,N.identifier),$e=s?s(Mt,X):X,Ee=s?d.fromBytes($e.hiding):se,Jt=s?d.fromBytes($e.binding):me,wt=d.mul(d.mul(Ye,Oe),Ze),Ft=d.mul(Jt,Pt),Hu=d.toBytes(d.add(d.add(Ee,Ft),wt));return X.hiding.fill(0),X.binding.fill(0),Hu},verifyShare(N,W,X,ie,pe){At(N,{signers:"object",commitments:"object",verifyingShares:"object"},{},"pub"),uo(N.signers,"pub.signers"),lr(N.commitments,"pub.commitments"),lr(W,"commitmentList"),Ce(X,void 0,"msg"),U(ie),Ce(pe,d.BYTES,"sigShare"),c&&(N=c(N));let se=W.find(Jt=>Jt.identifier===ie);if(!se)throw new Error("cannot find identifier commitment");let me=D(N.verifyingShares[ie]),ge=D(se.hiding),ke=D(se.binding),{lambda:Oe,challenge:Ye,bindingFactor:Ze,groupCommitment:Pt}=Yn(N.commitments[0],W,X,ie),Mt=ge.add(ke.multiplyUnsafe(Ze));l&&(Mt=l(Pt,Mt));let $e=t.BASE.multiplyUnsafe(d.fromBytes(pe)),Ee=Mt.add(me.multiplyUnsafe(d.mul(Ye,Oe)));return $e.equals(Ee)},aggregate(N,W,X,ie){At(N,{signers:"object",commitments:"object",verifyingShares:"object"},{},"pub"),uo(N.signers,"pub.signers"),lr(N.commitments,"pub.commitments"),lr(W,"commitmentList"),Ce(X,void 0,"msg"),At(ie,{},{},"sigShares");let pe=N;c&&(N=c(N));try{WP(N.signers,W.length)}catch{throw new eu("aggregation failed",[])}let se=W.map(Ye=>Ye.identifier),me=new Set;for(let Ye of se){if(me.has(Ye))throw new eu("aggregation failed",[]);me.add(Ye)}if(se.length!==Object.keys(ie).length)throw new eu("aggregation failed",[]);for(let Ye of se)if(!(Ye in ie)||!(Ye in N.verifyingShares))throw new eu("aggregation failed",[]);let ge=D(N.commitments[0]),{groupCommitment:ke}=_t(ge,W,X),Oe=d.ZERO;for(let Ye of se)Oe=d.add(Oe,d.fromBytes(ie[Ye]));if(!Be.verify(X,ke,Oe,ge)){let Ye=[];for(let Ze of se)this.verifyShare(pe,W,X,Ze,ie[Ze])||Ye.push(Ze);throw new eu("aggregation failed",Ye)}return oe.encode(ke,Oe)},sign(N,W){let X=d.fromBytes(W);n&&(X=n(X));let[ie,pe]=Be.sign(N,X);return oe.encode(ie,pe)},verify(N,W,X){let ie=i?C(i(X)):D(X),{R:pe,z:se}=oe.decode(N);return Be.verify(W,pe,se,ie)},combineSecret(N,W){if(lr(N,"shares"),uo(W),N.length<W.min||N.length>W.max)throw new Error("wrong secret shares array");let X=[],ie={};for(let me of N){let ge=U(me.identifier),ke=K(ge);if(ie[ke])throw new Error("duplicated id="+ke);ie[ke]=!0,X.push([ge,d.fromBytes(me.signingShare)])}let pe=X.map(([me])=>me),se=d.ZERO;for(let[me,ge]of X)se=d.add(se,d.mul(ge,We(pe,me)));return d.toBytes(se)},utils:Object.freeze({Fn:d,randomScalar:(N=Si)=>d.toBytes(le(N).scalar),generateSecretPolynomial:(N,W,X,ie)=>{let pe=Me(N,W,X,ie);return{...pe,commitment:pe.commitment.map(O)}}})};return Object.freeze(Lt)}var uo,WP,eu,YP=Dr(()=>{g();Qo();Ka();ug();HP();Js();uo=(e,t="signers")=>{if(At(e,{min:"number",max:"number"},{},t),or(e.min,t+".min"),or(e.max,t+".max"),e.min<2||e.max<2||e.min>e.max)throw new Error("Wrong signers info: min="+e.min+" max="+e.max)},WP=(e,t)=>{if(t<e.min||t>e.max)throw new Error("Wrong number of commitments="+t)},eu=class extends Error{constructor(r,i){super(r);ee(this,"cheaters");this.cheaters=i}}});var Ab={};Hf(Ab,{_HMAC:()=>Bl,hmac:()=>Ib});var Bl,Ib,fg=Dr(()=>{g();Qo();Bl=class{constructor(t,r){ee(this,"oHash");ee(this,"iHash");ee(this,"blockLen");ee(this,"outputLen");ee(this,"canXOF",!1);ee(this,"finished",!1);ee(this,"destroyed",!1);if(zp(t),no(r,void 0,"key"),this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("expected Hash instance");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,n=new Uint8Array(i);n.set(r.length>i?t.create().update(r).digest():r);for(let o=0;o<n.length;o++)n[o]^=54;this.iHash.update(n),this.oHash=t.create();for(let o=0;o<n.length;o++)n[o]^=106;this.oHash.update(n),wi(n)}update(t){return mc(this),this.iHash.update(t),this}digestInto(t){mc(this),Kp(t,this),this.finished=!0;let r=t.subarray(0,this.outputLen);this.iHash.digestInto(r),this.oHash.update(r),this.oHash.digestInto(r),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:i,finished:n,destroyed:o,blockLen:a,outputLen:s,canXOF:u}=this;return t=t,t.finished=n,t.destroyed=o,t.blockLen=a,t.outputLen=s,t.canXOF=u,t.oHash=r._cloneInto(t.oHash),t.iHash=i._cloneInto(t.iHash),t}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ib=(()=>{let e=((t,r,i)=>new Bl(t,r).update(i).digest());return e.create=(t,r)=>new Bl(t,r),e})()});var $K,Tb,ia,lg,ZP=Dr(()=>{g();Ka();$K=BigInt(0),Tb=class extends Error{constructor(t=""){super(t)}},ia={Err:Tb,_tlv:{encode:(e,t)=>{let{Err:r}=ia;if(or(e,"tag"),e<0||e>255)throw new r("tlv.encode: wrong tag");if(Tl(t,"data"),t.length&1)throw new r("tlv.encode: unpadded data");let i=t.length/2,n=Pl(i);if(n.length/2&128)throw new r("tlv.encode: long form length too big");let o=i>127?Pl(n.length/2|128):"";return Pl(e)+o+n+t},decode(e,t){let{Err:r}=ia;t=Ce(t,void 0,"DER data");let i=0;if(e<0||e>255)throw new r("tlv.decode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let n=t[i++],o=!!(n&128),a=0;if(!o)a=n;else{let u=n&127;if(!u)throw new r("tlv.decode(long): indefinite length not supported");if(u>4)throw new r("tlv.decode(long): byte length is too big");let c=t.subarray(i,i+u);if(c.length!==u)throw new r("tlv.decode: length bytes not complete");if(c[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let l of c)a=a<<8|l;if(i+=u,a<128)throw new r("tlv.decode(long): not minimal encoding")}let s=t.subarray(i,i+a);if(s.length!==a)throw new r("tlv.decode: wrong value length");return{v:s,l:t.subarray(i+a)}}},_int:{encode(e){let{Err:t}=ia;if(ig(e),e<$K)throw new t("integer: negative integers are not allowed");let r=Pl(e);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=ia;if(e.length<1)throw new t("invalid signature integer: empty");if(e[0]&128)throw new t("invalid signature integer: negative");if(e.length>1&&e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return Hr(e)}},toSig(e,t){let{Err:r,_int:i,_tlv:n}=ia;if(t!==void 0&&(or(t,"maxScalarBytes"),t<1))throw new r("invalid signature: maxScalarBytes must be positive");let o=Ce(e,void 0,"signature"),{v:a,l:s}=n.decode(48,o);if(s.length)throw new r("invalid signature: left bytes after parsing");let{v:u,l:c}=n.decode(2,a),{v:l,l:p}=n.decode(2,c);if(p.length)throw new r("invalid signature: left bytes after parsing");if(t!==void 0&&(u.length>t||l.length>t))throw new r("invalid signature: integer too large");return{r:i.decode(u),s:i.decode(l)}},hexFromSig(e){let{_tlv:t,_int:r}=ia;At(e,{r:"bigint",s:"bigint"},{},"sig");let i=t.encode(2,r.encode(e.r)),n=t.encode(2,r.encode(e.s)),o=i+n;return t.encode(48,o)}},lg=(Object.freeze(ia._tlv),Object.freeze(ia._int),Object.freeze(ia))});function XK(e,t,r){db("scalar",e,na,r);let[[i,n],[o,a]]=t,s=$P(a*e,r),u=$P(-n*e,r),c=e-s*i-u*o,l=-s*n-u*a,p=c<na,d=l<na;p&&(c=-c),d&&(l=-l);let v=Rl(Math.ceil(Sc(r)/2))+tu;if(c<na||c>=v||l<na||l>=v)throw new Error("splitScalar (endomorphism): failed for k");return{k1neg:p,k1:c,k2neg:d,k2:l}}function kb(e){if(!["compact","recovered","der"].includes(e))throw new Error('Signature format must be "compact", "recovered", or "der"');return e}function Pb(e,t){At(e);let r={};for(let i of Object.keys(t))r[i]=e[i]===void 0?t[i]:e[i];return ao(r.lowS,"lowS"),ao(r.prehash,"prehash"),r.format!==void 0&&kb(r.format),r}function JP(e,t={}){let r=LP("weierstrass",e,t),i=r.Fp,n=r.Fn,o=r.CURVE,{h:a,n:s}=o;At(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",randomBytes:"function"});let{endo:u,allowInfinityPoint:c,clearCofactor:l,isTorsionFree:p,fromBytes:d,toBytes:v}=t,_=t.randomBytes===void 0?Si:t.randomBytes;if(u&&(!i.is0(o.a)||typeof u.beta!="bigint"||!Array.isArray(u.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let I=u?{beta:u.beta,basises:u.basises.map(K=>[...K])}:void 0,R=e2(i,n);function k(){if(!i.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function q(K,U,G){if(U.is0()){if(!c)throw new Error("bad point: ZERO");return Uint8Array.of(0)}let{x:te,y:ae}=U.toAffine(),oe=i.toBytes(te);if(ao(G,"isCompressed"),G){k();let le=!i.isOdd(ae);return bt(QP(le),oe)}else return bt(Uint8Array.of(4),oe,i.toBytes(ae))}function z(K){Ce(K,void 0,"Point");let{publicKey:U,publicKeyUncompressed:G}=R,te=K.length,ae=K[0],oe=K.subarray(1);if(c&&te===1&&ae===0)return{x:i.ZERO,y:i.ZERO};if(te===U&&(ae===2||ae===3)){let le=i.fromBytes(oe);if(!i.isValid(le))throw new Error("bad point: is not on curve, wrong x");let he=V(le),ve;try{ve=i.sqrt(he)}catch(_e){let We=_e instanceof Error?": "+_e.message:"";throw new Error("bad point: is not on curve, sqrt error"+We)}k();let je=i.isOdd(ve);return(ae&1)===1!==je&&(ve=i.neg(ve)),{x:le,y:ve}}else if(te===G&&ae===4){let le=i.BYTES,he=i.fromBytes(oe.subarray(0,le)),ve=i.fromBytes(oe.subarray(le,le*2));if(!Y(he,ve))throw new Error("bad point: is not on curve");return{x:he,y:ve}}else throw new Error(`bad point: got length ${te}, expected compressed=${U} or uncompressed=${G}`)}let A=v===void 0?q:v,B=d===void 0?z:d,M=i.mul(o.b,Rb),F=i.is0(o.a)?K=>i.ZERO:K=>i.mul(o.a,K);function V(K){let U=i.sqr(K),G=i.mul(U,K);return i.add(i.add(G,i.mul(K,o.a)),o.b)}function Y(K,U){let G=i.sqr(U),te=V(K);return i.eql(G,te)}if(!Y(o.Gx,o.Gy))throw new Error("bad curve params: generator point");let E=i.mul(i.pow(o.a,Rb),JK),h=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(E,h)))throw new Error("bad curve params: a or b");function y(K,U,G=!1){if(!i.isValid(U)||G&&i.is0(U))throw new Error(`bad point coordinate ${K}`);return typeof U=="object"&&U!==null?i.create(U):U}function w(K){if(!(K instanceof D))throw new Error("Weierstrass Point expected")}function S(K){if(!I||!I.basises)throw new Error("no endo");return XK(K,I.basises,n.ORDER)}function O(K,U,G,te){if(!n.isValid(te))throw new RangeError("invalid scalar: out of range");if(I){let{k1neg:ae,k1:oe,k2neg:le,k2:he}=S(te),ve=new D(i.mul(G.X,I.beta),G.Y,G.Z);K.push(ae?G.negate():G,le?ve.negate():ve),U.push(oe,he)}else K.push(G),U.push(te)}let C=new WeakSet,x=class x{constructor(U,G,te){ee(this,"X");ee(this,"Y");ee(this,"Z");this.X=y("x",U),this.Y=y("y",G,!0),this.Z=y("z",te),Object.freeze(this)}static CURVE(){return o}static fromAffine(U){let{x:G,y:te}=U||{};if(!U||!i.isValid(G)||!i.isValid(te))throw new Error("invalid affine point");if(U instanceof x)throw new Error("projective point not allowed");return i.is0(G)&&i.is0(te)?x.ZERO:new x(G,te,i.ONE)}static fromBytes(U){let G=x.fromAffine(B(Ce(U,void 0,"point")));return G.assertValidity(),G}static fromHex(U){return x.fromBytes(bc(U))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(U=6,G=!0){return m.setWindowSize(this,U),G||this.multiply(Rb),this}assertValidity(){let U=this;if(U.is0()){if(c&&i.is0(U.X)&&i.eql(U.Y,i.ONE)&&i.is0(U.Z))return;throw new Error("bad point: ZERO")}if(C.has(U))return;let{x:G,y:te}=U.toAffine();if(!i.isValid(G)||!i.isValid(te))throw new Error("bad point: x or y not field elements");if(!Y(G,te))throw new Error("bad point: equation left != right");if(!U.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");C.add(U)}hasEvenY(){let{y:U}=this.toAffine();if(!i.isOdd)throw new Error("Field doesn't support isOdd");return!i.isOdd(U)}equals(U){w(U);let{X:G,Y:te,Z:ae}=this,{X:oe,Y:le,Z:he}=U,ve=i.eql(i.mul(G,he),i.mul(oe,ae)),je=i.eql(i.mul(te,he),i.mul(le,ae));return ve&&je}negate(){return new x(this.X,i.neg(this.Y),this.Z)}double(){let{X:U,Y:G,Z:te}=this,ae=i.ZERO,oe=i.ZERO,le=i.ZERO,he=i.mul(U,U),ve=i.mul(G,G),je=i.mul(te,te),be=i.mul(U,G);return be=i.add(be,be),le=i.mul(U,te),le=i.add(le,le),ae=F(le),oe=i.mul(M,je),oe=i.add(ae,oe),ae=i.sub(ve,oe),oe=i.add(ve,oe),oe=i.mul(ae,oe),ae=i.mul(be,ae),le=i.mul(M,le),je=F(je),be=i.sub(he,je),be=F(be),be=i.add(be,le),le=i.add(he,he),he=i.add(le,he),he=i.add(he,je),he=i.mul(he,be),oe=i.add(oe,he),je=i.mul(G,te),je=i.add(je,je),he=i.mul(je,be),ae=i.sub(ae,he),le=i.mul(je,ve),le=i.add(le,le),le=i.add(le,le),new x(ae,oe,le)}add(U){w(U);let{X:G,Y:te,Z:ae}=this,{X:oe,Y:le,Z:he}=U,ve=i.ZERO,je=i.ZERO,be=i.ZERO,_e=i.mul(G,oe),We=i.mul(te,le),Pe=i.mul(ae,he),Me=i.add(G,te),rt=i.add(oe,le);Me=i.mul(Me,rt),rt=i.add(_e,We),Me=i.sub(Me,rt),rt=i.add(G,ae);let Be=i.add(oe,he);return rt=i.mul(rt,Be),Be=i.add(_e,Pe),rt=i.sub(rt,Be),Be=i.add(te,ae),ve=i.add(le,he),Be=i.mul(Be,ve),ve=i.add(We,Pe),Be=i.sub(Be,ve),be=F(rt),ve=i.mul(M,Pe),be=i.add(ve,be),ve=i.sub(We,be),be=i.add(We,be),je=i.mul(ve,be),We=i.add(_e,_e),We=i.add(We,_e),Pe=F(Pe),rt=i.mul(M,rt),We=i.add(We,Pe),Pe=i.sub(_e,Pe),Pe=F(Pe),rt=i.add(rt,Pe),_e=i.mul(We,rt),je=i.add(je,_e),_e=i.mul(Be,rt),ve=i.mul(Me,ve),ve=i.sub(ve,_e),_e=i.mul(Me,We),be=i.mul(Be,be),be=i.add(be,_e),new x(ve,je,be)}subtract(U){return w(U),this.add(U.negate())}is0(){return this.equals(x.ZERO)}multiply(U){if(!n.isValidNot0(U))throw new RangeError("invalid scalar: out of range");let{p:G,f:te}=m.mulSecret(this,U,a,P);return P([G,te])[0]}multiplyUnsafe(U){let G=this,te=U;if(!n.isValid(te))throw new RangeError("invalid scalar: out of range");if(te===na||G.is0())return x.ZERO;if(te===tu)return G;if(m.hasWindowSize(this))return m.mulUnsafe(G,te,P);let ae=[],oe=[];return O(ae,oe,G,te),Ic(x,ae,oe)}mulAddUnsafe(U,G,te){w(G);let ae=[],oe=[];return O(ae,oe,this,U),O(ae,oe,G,te),Ic(x,ae,oe)}toAffine(U){let G=this,te=U;if(te!=null&&!i.isValid(te))throw new RangeError('"invertedZ" expected valid field element');let{X:ae,Y:oe,Z:le}=G;if(i.eql(le,i.ONE))return{x:ae,y:oe};let he=G.is0();te==null&&(te=he?i.ONE:i.inv(le));let ve=i.mul(ae,te),je=i.mul(oe,te),be=i.mul(le,te);if(he)return{x:i.ZERO,y:i.ZERO};if(!i.eql(be,i.ONE))throw new Error("invZ was invalid");return{x:ve,y:je}}isTorsionFree(){return a===tu?!0:p?p(x,this):m.mulUnsafe(this,s).is0()}clearCofactor(){return a===tu?this:l?l(x,this):this.multiplyUnsafe(a)}isSmallOrder(){return a===tu?this.is0():this.clearCofactor().is0()}toBytes(U=!0){return ao(U,"isCompressed"),this.assertValidity(),A(x,this,U)}toHex(U=!0){return ta(this.toBytes(U))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}};ee(x,"BASE",new x(o.Gx,o.Gy,i.ONE)),ee(x,"ZERO",new x(i.ZERO,i.ONE,i.ZERO)),ee(x,"Fp",i),ee(x,"Fn",n);let D=x,P=K=>BP(D,K),m=new ag(D,_);return m.bits>=6&&D.BASE.precompute(6),Object.freeze(D.prototype),Object.freeze(D),D}function QP(e){return Uint8Array.of(e?2:3)}function e2(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function QK(e,t={}){Ga(e);let{Fn:r}=e,i=t.randomBytes===void 0?Si:t.randomBytes,n=Object.assign(e2(e.Fp,r),{seed:Math.max(Oc(r.ORDER),16)});function o(v){try{let _=r.fromBytes(v);return r.isValidNot0(_)}catch{return!1}}function a(v,_){let{publicKey:I,publicKeyUncompressed:R}=n;try{let k=v.length;return _===!0&&k!==I||_===!1&&k!==R?!1:!e.fromBytes(v).is0()}catch{return!1}}function s(v){return v=v===void 0?i(n.seed):v,Xs(Ce(v,n.seed,"seed"),r.ORDER)}function u(v,_=!0){return e.BASE.multiply(r.fromBytes(v)).toBytes(_)}function c(v){let{secretKey:_,publicKey:I,publicKeyUncompressed:R}=n,k=r._lengths;if(!oo(v))return;let q=Ce(v,void 0,"key").length,z=q===I||q===R,A=q===_||!!k?.includes(q);if(!(z&&A))return z}function l(v,_,I=!0){if(c(v)===!0)throw new Error("first arg must be private key");if(c(_)===!1)throw new Error("second arg must be public key");let R=r.fromBytes(v),k=e.fromBytes(_);if(k.is0())throw new Error("invalid public key: point at infinity");return k.multiply(R).toBytes(I)}let p={isValidSecretKey:o,isValidPublicKey:a,randomSecretKey:s},d=sg(s,u);return Object.freeze(p),Object.freeze(n),Object.freeze({getPublicKey:u,getSharedSecret:l,keygen:d,Point:e,utils:p,lengths:n})}function t2(e,t,r={}){Ga(e);let i=t;zp(i),At(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let n=Object.assign({},r),o=n.randomBytes===void 0?Si:n.randomBytes,a=n.hmac===void 0?(x,K)=>Ib(i,x,K):n.hmac,{Fp:s,Fn:u}=e,{ORDER:c,BITS:l}=u,p=Oc(c),d=Sb(o,p),{keygen:v,getPublicKey:_,getSharedSecret:I,utils:R,lengths:k}=QK(e,n),q={prehash:!0,lowS:typeof n.lowS=="boolean"?n.lowS:!0,format:"compact",extraEntropy:!1},z=c*XP+tu<s.ORDER;function A(x){let K=c>>tu;return x>K}function B(x,K){if(!u.isValidNot0(K))throw new Error(`invalid signature ${x}: out of range 1..Point.Fn.ORDER`);return K}function M(){if(!s.isOdd)throw new Error("Field doesn't support isOdd")}function F(x,K,U){return M(),(x===U?0:2)|Number(s.isOdd(K))}function V(){if(z)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function Y(x,K){kb(K);let U=k.signature,G=K==="compact"?U:K==="recovered"?U+1:void 0;return Ce(x,G)}class E{constructor(K,U,G){ee(this,"r");ee(this,"s");ee(this,"recovery");if(this.r=B("r",K),this.s=B("s",U),G!=null){if(V(),![0,1,2,3].includes(G))throw new Error("invalid recovery id");this.recovery=G}Object.freeze(this)}static fromBytes(K,U=q.format){Y(K,U);let G;if(U==="der"){if(K.length>2*u.BYTES+16)throw new lg.Err("invalid signature: DER signature too long");let{r:le,s:he}=lg.toSig(Ce(K),u.BYTES+1);return new E(le,he)}U==="recovered"&&(G=K[0],U="compact",K=K.subarray(1));let te=k.signature/2,ae=K.subarray(0,te),oe=K.subarray(te,te*2);return new E(u.fromBytes(ae),u.fromBytes(oe),G)}static fromHex(K,U){return this.fromBytes(bc(K),U)}assertRecovery(){let{recovery:K}=this;if(K==null)throw new Error("invalid recovery id: must be present");return K}addRecoveryBit(K){return new E(this.r,this.s,K)}recoverPublicKey(K){let{r:U,s:G}=this,te=this.assertRecovery(),ae=te===2||te===3?U+c:U;if(!s.isValid(ae))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let oe=s.toBytes(ae),le=e.fromBytes(bt(QP((te&1)===0),oe)),he=u.inv(ae),ve=y(Ce(K,void 0,"msgHash")),je=u.create(-ve*he),be=u.create(G*he),_e=e.BASE.mulAddUnsafe(je,le,be);if(_e.is0())throw new Error("invalid recovery: point at infinify");return _e.assertValidity(),_e}hasHighS(){return A(this.s)}toBytes(K=q.format){if(kb(K),K==="der")return bc(lg.hexFromSig(this));let{r:U,s:G}=this,te=u.toBytes(U),ae=u.toBytes(G);return K==="recovered"?(V(),bt(Uint8Array.of(this.assertRecovery()),te,ae)):bt(te,ae)}toHex(K){return ta(this.toBytes(K))}}Object.freeze(E.prototype),Object.freeze(E);let h=n.bits2int===void 0?function(K){if(K.length>8192)throw new Error("input is too large");let U=Hr(K),G=K.length*8-l;return G>0?U>>BigInt(G):U}:n.bits2int,y=n.bits2int_modN===void 0?function(K){return u.create(h(K))}:n.bits2int_modN,w=Rl(l);function S(x){return db("num < 2^"+l,x,na,w),u.toBytes(x)}function O(x,K){return Ce(x,void 0,"message"),K?Ce(i(x),void 0,"prehashed message"):x}function C(x,K,U){let{lowS:G,prehash:te,extraEntropy:ae}=Pb(U,q);x=O(x,te);let oe=y(x),le=u.fromBytes(K);if(!u.isValidNot0(le))throw new Error("invalid private key");let he=[S(le),S(oe)];if(ae!=null&&ae!==!1){let _e=ae===!0?o(k.secretKey):ae;he.push(Ce(_e,void 0,"extraEntropy"))}let ve=bt(...he),je=oe;function be(_e){let We=h(_e);if(!u.isValidNot0(We))return;let Pe=e.BASE.multiply(We).toAffine(),Me=u.create(Pe.x);if(Me===na)return;let rt;if(d!==void 0){let ui=Hr(Xs(d(p),c)),Et=u.inv(u.mul(ui,We)),_t=u.mul(ui,je),Yn=u.mul(ui,le);rt=u.create(Et*u.create(_t+Yn*Me))}else{let ui=OP(We,c);rt=u.create(ui*u.create(je+Me*le))}if(rt===na)return;let Be=F(Pe.x,Pe.y,Me),vt=rt;return G&&A(rt)&&(vt=u.neg(rt),Be^=1),new E(Me,vt,z?void 0:Be)}return{seed:ve,k2sig:be}}function D(x,K,U={}){let{seed:G,k2sig:te}=C(x,K,U);return vP(i.outputLen,u.BYTES,a)(G,te).toBytes(U.format)}function P(x,K,U,G={}){let{lowS:te,prehash:ae,format:oe}=Pb(G,q);if(U=Ce(U,void 0,"publicKey"),K=O(K,ae),!oo(x)){let le=x instanceof E?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+le)}Y(x,oe);try{let le=E.fromBytes(x,oe),he=e.fromBytes(U);if(he.is0()||te&&le.hasHighS())return!1;let{r:ve,s:je}=le,be=y(K),_e=u.inv(je),We=u.create(be*_e),Pe=u.create(ve*_e),Me=e.BASE.mulAddUnsafe(We,he,Pe);if(Me.is0())return!1;let rt=Me.toAffine();return!(u.create(rt.x)!==ve||oe==="recovered"&&le.recovery!==F(rt.x,rt.y,ve))}catch{return!1}}function m(x,K,U={}){let{prehash:G}=Pb(U,q);return K=O(K,G),E.fromBytes(x,"recovered").recoverPublicKey(K).toBytes()}return Object.freeze({keygen:v,getPublicKey:_,getSharedSecret:I,utils:R,lengths:k,Point:e,sign:D,verify:P,recoverPublicKey:m,Signature:E,hash:i})}var $P,na,tu,XP,Rb,JK,r2=Dr(()=>{g();fg();Qo();Ka();ug();ZP();Js();$P=(e,t)=>(e+(e>=0?t:-t)/XP)/t;na=BigInt(0),tu=BigInt(1),XP=BigInt(2),Rb=BigInt(3),JK=BigInt(4)});var Ll={};Hf(Ll,{__TEST:()=>nV,schnorr:()=>oV,schnorr_FROST:()=>fV,secp256k1:()=>rV,secp256k1_FROST:()=>uV,secp256k1_hasher:()=>Cb});function tV(e){let t=hg.p,r=BigInt(3),i=BigInt(6),n=BigInt(11),o=BigInt(22),a=BigInt(23),s=BigInt(44),u=BigInt(88),c=e*e*e%t,l=c*c*e%t,p=Vi(l,r,t)*l%t,d=Vi(p,r,t)*l%t,v=Vi(d,i2,t)*c%t,_=Vi(v,n,t)*v%t,I=Vi(_,o,t)*_%t,R=Vi(I,s,t)*I%t,k=Vi(R,u,t)*R%t,q=Vi(k,s,t)*I%t,z=Vi(q,r,t)*l%t,A=Vi(z,a,t)*_%t,B=Vi(A,i,t)*c%t,M=Vi(B,i2,t);if(!Tn.eql(Tn.sqr(M),e))throw new Error("Cannot find square root");return M}function Nl(e,...t){let r=n2[e];if(r===void 0){let i=Fa(wc(e));r=bt(i,i),n2[e]=r}return Fa(bt(r,...t))}function u2(e){let{Fn:t,BASE:r}=kt,i=t.fromBytes(Ce(e,32,"secretKey")),o=r.multiply(i).toAffine();return{scalar:co(o.y)?i:t.neg(i),bytes:s2(o)}}function dg(e){let t=Tn;if(!t.isValidNot0(e))throw new Error("invalid x: Fail if x \u2265 p");let r=t.sqr(e),i=t.add(t.mulN(r,e),BigInt(7)),n=t.sqrt(i);co(n)||(n=t.neg(n));let o=kt.fromAffine({x:e,y:n});return o.assertValidity(),o}function Nb(...e){return kt.Fn.create(Ac(Nl("BIP0340/challenge",...e)))}function o2(e){return u2(e).bytes}function iV(e,t,r=Il(32)){let{Fn:i,BASE:n}=kt,o=ra(Ce(e,void 0,"message")),{bytes:a,scalar:s}=u2(t),u=Ce(r,32,"auxRand"),c=i.toBytes(s^Ac(Nl("BIP0340/aux",u))),l=Nl("BIP0340/nonce",c,a,o),p=i.create(Ac(l));if(p===Bb)throw new Error("sign failed: k is zero");let v=n.multiply(p).toAffine(),_=co(v.y)?p:i.neg(p),I=s2(v),R=Nb(I,a,o),k=new Uint8Array(64);if(k.set(I,0),k.set(i.toBytes(i.create(_+R*s)),32),!c2(k,o,a))throw new Error("sign: Invalid signature produced");return k}function c2(e,t,r){let{Fp:i,Fn:n,BASE:o}=kt,a=Ce(e,64,"signature"),s=Ce(t,void 0,"message"),u=Ce(r,32,"publicKey");try{let c=dg(Ac(u)),l=a.subarray(0,32),p=Ac(l);if(!i.isValidNot0(p))return!1;let d=Ac(a.subarray(32,64));if(!n.isValidNot0(d))return!1;let v=Nb(l,Cl(c),s),_=o.mulAddUnsafe(d,c,n.neg(v)),{x:I,y:R}=_.toAffine();return!(_.is0()||!co(R)||!i.eql(I,p))}catch{return!1}}function f2(e,t){if(t===void 0)return Bb;let r=Cl(e),i=Hr(Nl("TapTweak",r,t));if(!kt.Fn.isValid(i))throw new Error("invalid TapTweak hash");return i}function Lb(e){let t=kt.fromBytes(e.commitments[0]);return co(t.y)?e:{signers:{min:e.signers.min,max:e.signers.max},commitments:e.commitments.map(r=>kt.fromBytes(r).negate().toBytes()),verifyingShares:Object.fromEntries(Object.entries(e.verifyingShares).map(([r,i])=>[r,kt.fromBytes(i).negate().toBytes()]))}}function l2(e,t){let r=kt.fromBytes(t.commitments[0]);if(co(r.y))return e;let i=kt.Fn;return{...e,signingShare:i.toBytes(i.neg(i.fromBytes(e.signingShare)))}}function cV(e,t){if(co(e.y))return t;let r=kt.Fn;return{binding:r.toBytes(r.neg(r.fromBytes(t.binding))),hiding:r.toBytes(r.neg(r.fromBytes(t.hiding)))}}function h2(e,t,r){let i=kt.Fn,n=l2(e,t),o=Lb(t),a=f2(kt.fromBytes(o.commitments[0]),r),s=i.toBytes(i.add(i.fromBytes(n.signingShare),a));return{identifier:n.identifier,signingShare:s}}function d2(e,t){let r=Lb(e),i=f2(kt.fromBytes(r.commitments[0]),t);if(i===Bb)return r;let n=kt.BASE.multiply(i),o=r.commitments.map((s,u)=>(u===0?kt.fromBytes(s).add(n):kt.fromBytes(s)).toBytes()),a={};for(let s in r.verifyingShares)a[s]=kt.fromBytes(r.verifyingShares[s]).add(n).toBytes();return{signers:{min:r.signers.min,max:r.signers.max},commitments:o,verifyingShares:a}}var hg,eV,Bb,i2,Tn,kt,rV,n2,Cl,s2,co,Ac,nV,oV,aV,a2,sV,Cb,uV,fV,Ml=Dr(()=>{g();Al();Qo();ug();YP();GP();Js();r2();Ka();hg={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},eV={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},Bb=BigInt(0),i2=BigInt(2);Tn=xc(hg.p,{sqrt:tV}),kt=JP(hg,{Fp:Tn,endo:eV}),rV=t2(kt,Fa),n2=Object.create(null);Cl=e=>e.toBytes(!0).slice(1),s2=({x:e})=>Tn.toBytes(e),co=e=>!Tn.isOdd(e);Ac=Hr;nV=Object.freeze({lift_x:dg,frostTweakPublic:d2,frostTweakSecret:h2}),oV=(()=>{let r=i=>(i=i===void 0?Il(48):i,Xs(Ce(i,48,"seed"),hg.n));return Object.freeze({keygen:sg(r,o2),getPublicKey:o2,sign:iV,verify:c2,Point:kt,utils:Object.freeze({randomSecretKey:r,taggedHash:Nl,lift_x:dg,pointToBytes:Cl}),lengths:Object.freeze({secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:64,seed:48})})})(),aV=zP(Tn,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(e=>e.map(t=>BigInt(t)))),sV=()=>a2||(a2=VP(Tn,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:Tn.create(BigInt("-11"))})),Cb=KP(kt,e=>{let{x:t,y:r}=sV()(Tn.create(e[0]));return aV(t,r)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:Tn.ORDER,m:1,k:128,expand:"xmd",hash:Fa}),uV=Ob({name:"FROST-secp256k1-SHA256-v1",Point:kt,hashToScalar:Cb.hashToScalar,hash:Fa});fV=Ob({name:"FROST-secp256k1-SHA256-TR-v1",Point:kt,hashToScalar:Cb.hashToScalar,hash:Fa,parsePublicKey(e){if(e.length===32)return dg(Hr(e));if(e.length===33)return kt.fromBytes(e);throw new Error(`expected x-only or compressed public key, got length=${e.length}`)},adjustScalar(e){let t=kt.BASE.multiply(e);return co(t.y)?e:kt.Fn.neg(e)},adjustPoint:e=>co(e.y)?e:e.negate(),challenge(e,t,r){return Nb(Cl(e),Cl(t),r)},adjustNonces:cV,adjustGroupCommitmentShare:(e,t)=>co(e.y)?t:t.negate(),adjustPublic:Lb,adjustSecret:l2,adjustTx:{encode:e=>e.subarray(1),decode:e=>bt(Uint8Array.of(2),e)},adjustDKG:e=>{let t=new Uint8Array(0);return{public:d2(e.public,t),secret:h2(e.secret,e.public,t)}}})});var un=T((Joe,v2)=>{"use strict";g();var p2=Ke(),{secp256k1:lV}=(Ml(),en(Ll)),Hl=lV.Point,pg=Hl.Fn.ORDER;function hV(e){return BigInt("0x"+(e.toString(16)||"0"))}function Mb(e){var t=e.toString(16);return t.length%2&&(t="0"+t),new p2(t,16)}function gg(e){if(e==null)throw new Error("Invalid Point");if(typeof e=="bigint")return e;if(typeof e=="number")return BigInt(e);if(typeof e=="string")return BigInt(e.indexOf("0x")===0?e:"0x"+e);if(typeof e.toString=="function")return hV(e);throw new Error("Invalid Point")}function Dl(e){var t=Object.create(Bt.prototype);return t._p=e,t}function g2(e,t){var r=gg(t).toString(16).padStart(64,"0");return Hl.fromHex((e?"03":"02")+r)}function m2(e,t){var r;try{r=g2((t&1n)===1n,e)}catch{throw new Error("Point does not lie on the curve")}if(r.toAffine().y!==t)throw new Error("Invalid y value for curve.")}function Bt(e,t,r){if(!(this instanceof Bt))return new Bt(e,t,r);var i,n;try{i=gg(e),n=gg(t)}catch{throw new Error("Invalid Point")}m2(i,n);try{this._p=Hl.fromAffine({x:i,y:n})}catch{throw new Error("Invalid Point")}return this}Bt.fromX=function(t,r){try{var i=Dl(g2(t,r))}catch{throw new Error("Invalid X")}return i.validate(),i};Bt.getG=function(){return Dl(Hl.BASE)};Bt.getN=function(){return Mb(pg)};Bt.prototype.getX=function(){return Mb(this._p.toAffine().x)};Bt.prototype.getY=function(){return Mb(this._p.toAffine().y)};Object.defineProperty(Bt.prototype,"x",{configurable:!0,enumerable:!0,get:function(){return this.getX()}});Object.defineProperty(Bt.prototype,"y",{configurable:!0,enumerable:!0,get:function(){return this.getY()}});Bt.prototype.mul=function(t){var r=(gg(t)%pg+pg)%pg;return r===0n||this._p.is0()?Dl(Hl.ZERO):Dl(this._p.multiply(r))};Bt.prototype.add=function(t){return Dl(this._p.add(t._p))};Bt.prototype.mulAdd=function(t,r,i){return this.mul(t).add(r.mul(i))};Bt.prototype.eq=function(t){return this._p.equals(t._p)};Bt.prototype.isInfinity=function(){return this._p.is0()};Bt.prototype.validate=function(){if(this.isInfinity())throw new Error("Point cannot be equal to Infinity");var t=this._p.toAffine();return m2(t.x,t.y),this};Bt.pointToCompressed=function(t){var r=t.getX().toBuffer({size:32}),i=t.getY().toBuffer({size:32}),n,o=i[i.length-1]%2;return o?n=f.Buffer.from([3]):n=f.Buffer.from([2]),f.Buffer.concat([n,r])};Bt.pointFromCompressed=function(e){if(e.length!==33)throw new Error("invalid buffer length");var t=e[0],r;if(t===3)r=!0;else if(t===2)r=!1;else throw new Error("invalid value of compressed prefix");var i=p2.fromBuffer(e.slice(1,33));return Bt.fromX(r,i)};Bt.prototype.toBuffer=function(){return Bt.pointToCompressed(this)};Bt.prototype.toHex=function(){return this.toBuffer().toString("hex")};Bt.fromBuffer=function(e){return Bt.pointFromCompressed(e)};Bt.fromHex=function(e){return Bt.fromBuffer(f.Buffer.from(e,"hex"))};v2.exports=Bt});var ni=T((eae,_2)=>{"use strict";g();var b2=at(),dV=Ie(),y2=function(t){return b2.isString(t)?/^[0-9a-fA-F]+$/.test(t):!1};_2.exports={isValidJSON:function(t){var r;if(!b2.isString(t))return!1;try{r=JSON.parse(t)}catch{return!1}return typeof r=="object"},isHexa:y2,isHexaString:y2,defineImmutable:function(t,r){return Object.keys(r).forEach(function(i){Object.defineProperty(t,i,{configurable:!1,enumerable:!0,value:r[i]})}),t},isNaturalNumber:function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t&&t>=0},integerAsBuffer:function(t){dV.checkArgumentType(t,"number","integer");let r=f.Buffer.allocUnsafe(4);return r.writeUInt32BE(t,0),r}}});var gt=T((rae,S2)=>{"use strict";g();var ru=Ke(),pV=at(),xi=Ie(),gV=ni(),it=function e(t,r){if(!(this instanceof e))return new e(t,r);if(t instanceof ru)this.set({r:t,s:r});else if(t){var i=t;this.set(i)}};it.prototype.set=function(e){return this.r=e.r||this.r||void 0,this.s=e.s||this.s||void 0,this.i=typeof e.i<"u"?e.i:this.i,this.compressed=typeof e.compressed<"u"?e.compressed:this.compressed,this.nhashtype=e.nhashtype||this.nhashtype||void 0,this};it.fromCompact=function(e){xi.checkArgument(f.Buffer.isBuffer(e),"Argument is expected to be a Buffer");var t=new it,r=!0,i=e.slice(0,1)[0]-27-4;i<0&&(r=!1,i=i+4);var n=e.slice(1,33),o=e.slice(33,65);return xi.checkArgument(i===0||i===1||i===2||i===3,new Error("i must be 0, 1, 2, or 3")),xi.checkArgument(n.length===32,new Error("r must be 32 bytes")),xi.checkArgument(o.length===32,new Error("s must be 32 bytes")),t.compressed=r,t.i=i,t.r=ru.fromBuffer(n),t.s=ru.fromBuffer(o),t};it.fromDER=it.fromBuffer=function(e,t){var r=it.parseDER(e,t),i=new it;return i.r=r.r,i.s=r.s,i};it.fromTxFormat=function(e){var t=e.readUInt8(e.length-1),r=e.slice(0,e.length-1),i=it.fromDER(r,!1);return i.nhashtype=t,i};it.fromString=function(e){var t=f.Buffer.from(e,"hex");return it.fromDER(t)};function w2(e,t){xi.checkArgument(t.length>0,new Error("Length of "+e+" is zero")),xi.checkArgument(!(t[0]&128),new Error("Value of "+e+" is negative")),xi.checkArgument(!(t.length>1&&t[0]===0&&!(t[1]&128)),new Error("Value of "+e+" is excessively padded"))}it.parseDER=function(e,t){xi.checkArgument(f.Buffer.isBuffer(e),new Error("DER formatted signature should be a buffer")),pV.isUndefined(t)&&(t=!0);var r=e[0];xi.checkArgument(r===48,new Error("Header byte should be 0x30"));var i=e[1],n=e.slice(2).length;xi.checkArgument(!t||i===n,new Error("Length byte should length of what follows")),i=i<n?i:n;var o=e[2];xi.checkArgument(o===2,new Error("Integer byte for r should be 0x02"));var a=e[3],s=e.slice(4,4+a),u=ru.fromBuffer(s),c=e[4]===0;xi.checkArgument(a===s.length,new Error("Length of r incorrect"));var l=e[4+a+0];xi.checkArgument(l===2,new Error("Integer byte for s should be 0x02"));var p=e[4+a+1],d=e.slice(4+a+2,4+a+2+p),v=ru.fromBuffer(d),_=e[4+a+2]===0;xi.checkArgument(p===d.length,new Error("Length of s incorrect"));var I=4+a+2+p;xi.checkArgument(i===I-2,new Error("Length of signature incorrect")),t&&(w2("r",s),w2("s",d));var R={header:r,length:i,rheader:o,rlength:a,rneg:c,rbuf:s,r:u,sheader:l,slength:p,sneg:_,sbuf:d,s:v};return R};it.prototype.toCompact=function(e,t){if(e=typeof e=="number"?e:this.i,t=typeof t=="boolean"?t:this.compressed,!(e===0||e===1||e===2||e===3))throw new Error("i must be equal to 0, 1, 2, or 3");var r=e+27+4;t===!1&&(r=r-4);var i=f.Buffer.from([r]),n=this.r.toBuffer({size:32}),o=this.s.toBuffer({size:32});return f.Buffer.concat([i,n,o])};it.prototype.toBuffer=it.prototype.toDER=function(){var e=this.r.toBuffer(),t=this.s.toBuffer(),r=!!(e[0]&128),i=!!(t[0]&128),n=r?f.Buffer.concat([f.Buffer.from([0]),e]):e,o=i?f.Buffer.concat([f.Buffer.from([0]),t]):t,a=n.length,s=o.length,u=2+a+2+s,c=2,l=2,p=48,d=f.Buffer.concat([f.Buffer.from([p,u,c,a]),n,f.Buffer.from([l,s]),o]);return d};it.prototype.toString=function(){var e=this.toDER();return e.toString("hex")};it.isTxDER=function(e){if(e.length<9||e.length>73||e[0]!==48||e[1]!==e.length-3)return!1;var t=e[3];if(5+t>=e.length)return!1;var r=e[5+t];if(t+r+7!==e.length)return!1;var i=e.slice(4);if(e[2]!==2||t===0||i[0]&128||t>1&&i[0]===0&&!(i[1]&128))return!1;var n=e.slice(6+t);return!(e[6+t-2]!==2||r===0||n[0]&128||r>1&&n[0]===0&&!(n[1]&128))};it.prototype.hasLowS=function(){return!(this.s.lt(new ru(1))||this.s.gt(new ru("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex")))};it.prototype.hasDefinedHashtype=function(){if(!gV.isNaturalNumber(this.nhashtype))return!1;var e=this.nhashtype&31;return!(e<it.SIGHASH_ALL||e>it.SIGHASH_SINGLE)};it.prototype.toTxFormat=function(){var e=this.toDER(),t=f.Buffer.alloc(1);return t.writeUInt8(this.nhashtype,0),f.Buffer.concat([e,t])};it.SIGHASH_ALL=1;it.SIGHASH_NONE=2;it.SIGHASH_SINGLE=3;it.SIGHASH_CHRONICLE=32;it.SIGHASH_FORKID=64;it.SIGHASH_ANYONECANPAY=128;it.prototype.isCanonical=function(){var e=un(),t=e.getN().shrn(1);return this.s.lte(t)};it.prototype.toCanonical=function(){if(this.isCanonical())return new it({r:this.r,s:this.s,i:this.i,compressed:this.compressed,nhashtype:this.nhashtype});var e=un(),t=e.getN(),r=t.sub(this.s);return new it({r:this.r,s:r,i:this.i,compressed:this.compressed,nhashtype:this.nhashtype})};it.prototype.validate=function(){if(!this.r||!this.s)throw new Error("Signature missing r or s component");if(this.r.isZero())throw new Error("Signature r component is zero");if(this.s.isZero())throw new Error("Signature s component is zero");var e=un(),t=e.getN();if(this.r.gte(t))throw new Error("Signature r component >= curve order");if(this.s.gte(t))throw new Error("Signature s component >= curve order");if(this.r.isNeg())throw new Error("Signature r component is negative");if(this.s.isNeg())throw new Error("Signature s component is negative");return!0};it.prototype.isValid=function(){try{return this.validate(),!0}catch{return!1}};it.prototype.applySecurityPatches=function(){var e=un(),t=e.getN(),r=t.shrn(1);if(this.r.isZero()||this.s.isZero())throw new Error("Invalid signature: zero r or s");if(this.r.gte(t)||this.s.gte(t))throw new Error("Invalid signature: out of range");if(this.s.gt(r))throw new Error("Invalid signature: non-canonical (high) s");return this};S2.exports=it});var x2=T((nae,E2)=>{"use strict";g();var mg=nr(),oa=Ie(),Ar=E2.exports;Ar.sha1=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),mg.createHash("sha1").update(e).digest()};Ar.sha1.blocksize=512;Ar.sha256=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),mg.createHash("sha256").update(e).digest()};Ar.sha256.blocksize=512;Ar.sha256sha256=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),Ar.sha256(Ar.sha256(e))};Ar.ripemd160=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),mg.createHash("ripemd160").update(e).digest()};Ar.sha256ripemd160=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),Ar.ripemd160(Ar.sha256(e))};Ar.sha512=function(e){return oa.checkArgument(f.Buffer.isBuffer(e)),mg.createHash("sha512").update(e).digest()};Ar.sha512.blocksize=1024;Ar.hmac=function(e,t,r){oa.checkArgument(f.Buffer.isBuffer(t)),oa.checkArgument(f.Buffer.isBuffer(r)),oa.checkArgument(e.blocksize);var i=e.blocksize/8;if(r.length>i)r=e(r);else if(r.length<i){var n=f.Buffer.alloc(i);n.fill(0),r.copy(n),r=n}var o=f.Buffer.alloc(i);o.fill(92);var a=f.Buffer.alloc(i);a.fill(54);for(var s=f.Buffer.alloc(i),u=f.Buffer.alloc(i),c=0;c<i;c++)s[c]=o[c]^r[c],u[c]=a[c]^r[c];return e(f.Buffer.concat([s,e(f.Buffer.concat([u,t]))]))};Ar.sha256hmac=function(e,t){return Ar.hmac(Ar.sha256,e,t)};Ar.sha512hmac=function(e,t){return Ar.hmac(Ar.sha512,e,t)}});var k2={};Hf(k2,{_MD5:()=>_g,_RIPEMD160:()=>wg,_SHA1:()=>bg,md5:()=>_V,ripemd160:()=>AV,sha1:()=>mV});function O2(e,t,r,i){return e===0?t^r^i:e===1?t&r|~t&i:e===2?(t|~r)^i:e===3?t&i|r&~i:t^(r|~i)}var Tc,Ya,bg,mV,vV,yV,vg,Db,bV,_g,_V,wV,I2,SV,A2,T2,P2,R2,EV,xV,OV,IV,yg,wg,AV,B2=Dr(()=>{g();ub();Qo();Tc=Uint32Array.from([1732584193,4023233417,2562383102,271733878,3285377520]),Ya=new Uint32Array(80),bg=class extends ea{constructor(){super(64,20,8,!1);ee(this,"A",Tc[0]|0);ee(this,"B",Tc[1]|0);ee(this,"C",Tc[2]|0);ee(this,"D",Tc[3]|0);ee(this,"E",Tc[4]|0)}get(){let{A:r,B:i,C:n,D:o,E:a}=this;return[r,i,n,o,a]}set(r,i,n,o,a){this.A=r|0,this.B=i|0,this.C=n|0,this.D=o|0,this.E=a|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,i){for(let c=0;c<16;c++,i+=4)Ya[c]=r.getUint32(i,!1);for(let c=16;c<80;c++)Ya[c]=Xo(Ya[c-3]^Ya[c-8]^Ya[c-14]^Ya[c-16],1);let{A:n,B:o,C:a,D:s,E:u}=this;for(let c=0;c<80;c++){let l,p;c<20?(l=vc(o,a,s),p=1518500249):c<40?(l=o^a^s,p=1859775393):c<60?(l=Wp(o,a,s),p=2400959708):(l=o^a^s,p=3395469782);let d=Xo(n,5)+l+u+p+Ya[c]|0;u=s,s=a,a=Xo(o,30),o=n,n=d}n=n+this.A|0,o=o+this.B|0,a=a+this.C|0,s=s+this.D|0,u=u+this.E|0,this.set(n,o,a,s,u)}roundClean(){wi(Ya)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0),wi(this.buffer)}},mV=An(()=>new bg),vV=Math.pow(2,32),yV=Array.from({length:64},(e,t)=>Math.floor(vV*Math.abs(Math.sin(t+1)))),vg=Tc.slice(0,4),Db=new Uint32Array(16),bV=(()=>{let e=[[7,12,17,22],[5,9,14,20],[4,11,16,23],[6,10,15,21]];return Uint8Array.from({length:64},(t,r)=>e[Math.floor(r/16)][r%4])})(),_g=class extends ea{constructor(){super(64,16,8,!0);ee(this,"A",vg[0]|0);ee(this,"B",vg[1]|0);ee(this,"C",vg[2]|0);ee(this,"D",vg[3]|0)}get(){let{A:r,B:i,C:n,D:o}=this;return[r,i,n,o]}set(r,i,n,o){this.A=r|0,this.B=i|0,this.C=n|0,this.D=o|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,i){for(let u=0;u<16;u++,i+=4)Db[u]=r.getUint32(i,!0);let{A:n,B:o,C:a,D:s}=this;for(let u=0;u<64;u++){let c,l;u<16?(c=vc(o,a,s),l=u):u<32?(c=vc(s,o,a),l=(5*u+1)%16):u<48?(c=o^a^s,l=(3*u+5)%16):(c=a^(o|~s),l=7*u%16),c=c+n+yV[u]+Db[l],n=s,s=a,a=o,o=o+Xo(c,bV[u])}n=n+this.A|0,o=o+this.B|0,a=a+this.C|0,s=s+this.D|0,this.set(n,o,a,s)}roundClean(){wi(Db)}destroy(){this.destroyed=!0,this.set(0,0,0,0),wi(this.buffer)}},_V=An(()=>new _g),wV=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),I2=Uint8Array.from(new Array(16).fill(0).map((e,t)=>t)),SV=I2.map(e=>(9*e+5)%16),A2=(()=>{let r=[[I2],[SV]];for(let i=0;i<4;i++)for(let n of r)n.push(n[i].map(o=>wV[o]));return r})(),T2=A2[0],P2=A2[1],R2=[[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)),EV=T2.map((e,t)=>e.map(r=>R2[t][r])),xV=P2.map((e,t)=>e.map(r=>R2[t][r])),OV=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),IV=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);yg=new Uint32Array(16),wg=class extends ea{constructor(){super(64,20,8,!0);ee(this,"h0",1732584193);ee(this,"h1",-271733879);ee(this,"h2",-1732584194);ee(this,"h3",271733878);ee(this,"h4",-1009589776)}get(){let{h0:r,h1:i,h2:n,h3:o,h4:a}=this;return[r,i,n,o,a]}set(r,i,n,o,a){this.h0=r|0,this.h1=i|0,this.h2=n|0,this.h3=o|0,this.h4=a|0}_cloneInto(r){return(r||(r=new this.constructor)).set(...this.get()),this._cloneIntoMeta(r)}process(r,i){for(let _=0;_<16;_++,i+=4)yg[_]=r.getUint32(i,!0);let n=this.h0|0,o=n,a=this.h1|0,s=a,u=this.h2|0,c=u,l=this.h3|0,p=l,d=this.h4|0,v=d;for(let _=0;_<5;_++){let I=4-_,R=OV[_],k=IV[_],q=T2[_],z=P2[_],A=EV[_],B=xV[_];for(let M=0;M<16;M++){let F=Xo(n+O2(_,a,u,l)+yg[q[M]]+R,A[M])+d|0;n=d,d=l,l=Xo(u,10)|0,u=a,a=F}for(let M=0;M<16;M++){let F=Xo(o+O2(I,s,c,p)+yg[z[M]]+k,B[M])+v|0;o=v,v=p,p=Xo(c,10)|0,c=s,s=F}}this.set(this.h1+u+p|0,this.h2+l+v|0,this.h3+d+o|0,this.h4+n+s|0,this.h0+a+c|0)}roundClean(){wi(yg)}destroy(){this.destroyed=!0,wi(this.buffer),this.set(0,0,0,0,0)}},AV=An(()=>new wg)});var C2=T((fae,N2)=>{"use strict";g();var{sha256:TV,sha512:PV}=(Al(),en(tg)),{sha1:RV,ripemd160:kV}=(B2(),en(k2)),aa=Ie(),Tr=N2.exports;Tr.sha1=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),f.Buffer.from(RV(e))};Tr.sha1.blocksize=512;Tr.sha256=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),f.Buffer.from(TV(e))};Tr.sha256.blocksize=512;Tr.sha256sha256=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),Tr.sha256(Tr.sha256(e))};Tr.ripemd160=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),f.Buffer.from(kV(e))};Tr.sha256ripemd160=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),Tr.ripemd160(Tr.sha256(e))};Tr.sha512=function(e){return aa.checkArgument(f.Buffer.isBuffer(e)),f.Buffer.from(PV(e))};Tr.sha512.blocksize=1024;Tr.hmac=function(e,t,r){aa.checkArgument(f.Buffer.isBuffer(t)),aa.checkArgument(f.Buffer.isBuffer(r)),aa.checkArgument(e.blocksize);var i=e.blocksize/8;if(r.length>i)r=e(r);else if(r.length<i){var n=f.Buffer.alloc(i);n.fill(0),r.copy(n),r=n}var o=f.Buffer.alloc(i);o.fill(92);var a=f.Buffer.alloc(i);a.fill(54);for(var s=f.Buffer.alloc(i),u=f.Buffer.alloc(i),c=0;c<i;c++)s[c]=o[c]^r[c],u[c]=a[c]^r[c];return e(f.Buffer.concat([s,e(f.Buffer.concat([u,t]))]))};Tr.sha256hmac=function(e,t){return Tr.hmac(Tr.sha256,e,t)};Tr.sha512hmac=function(e,t){return Tr.hmac(Tr.sha512,e,t)}});var Le=T((hae,M2)=>{"use strict";g();var L2={sha1:"a9993e364706816aba3e25717850c26c9cd0d89d",sha256:"ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad",sha512:"ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f",ripemd160:"8eb208f7e05d987a9b044a8e98c6b087f15a0bfc"};function BV(){var e;try{e=nr()}catch{return!1}if(!e||typeof e.createHash!="function")return!1;for(var t=Object.keys(L2),r=0;r<t.length;r++){var i=t[r];try{if(e.createHash(i).update("abc").digest("hex")!==L2[i])return!1}catch{return!1}}return!0}M2.exports=BV()?x2():C2()});var ca=T((pae,q2)=>{"use strict";g();var sa=at(),ql=ni(),iu=[],Ul={};function D2(){}D2.prototype.toString=function(){return this.name};function Fl(e,t){if(~iu.indexOf(e))return e;if(t){sa.isArray(t)||(t=[t]);for(var r=0;r<iu.length;r++){var i=iu[r],n=sa.pick(i,t),o=sa.values(n);if(~o.indexOf(e))return i}return}return Ul[e]}function Sg(e){for(var t=[],r=0;r<e.length;r++)t.push(e.charCodeAt(r)&31);return t}function jl(e){var t=new D2;ql.defineImmutable(t,{name:e.name,alias:e.alias,pubkeyhash:e.pubkeyhash,privatekey:e.privatekey,scripthash:e.scripthash,xpubkey:e.xpubkey,xprivkey:e.xprivkey});var r=e.indexBy||Object.keys(e);return e.cashAddrPrefix&&sa.extend(t,{cashAddrPrefix:e.cashAddrPrefix,cashAddrPrefixArray:Sg(e.cashAddrPrefix)}),e.networkMagic&&sa.extend(t,{networkMagic:ql.integerAsBuffer(e.networkMagic)}),e.port&&sa.extend(t,{port:e.port}),e.dnsSeeds&&sa.extend(t,{dnsSeeds:e.dnsSeeds}),iu.push(t),NV(t,r),t}function NV(e,t){for(var r=0;r<t.length;r++){var i=t[r],n=e[i];!sa.isUndefined(n)&&!sa.isObject(n)&&(Ul[n]=e)}}function CV(e,t){for(var r=0;r<t.length;r++){var i=t[r];Ul[i]===e&&delete Ul[i]}}function LV(e){for(var t=0;t<iu.length;t++)iu[t]===e&&iu.splice(t,1);CV(e,Object.keys(Ul))}var Eg={livenet:3823236072,testnet:4108710900,regtest:3669344250,stn:4224632057},H2=["seed.bitcoinsv.org","seed.bitcoinunlimited.info"],Za={PORT:18333,NETWORK_MAGIC:Eg.testnet,DNS_SEEDS:H2,PREFIX:"testnet",CASHADDRPREFIX:"bchtest"},ua={PORT:18444,NETWORK_MAGIC:Eg.regtest,DNS_SEEDS:[],PREFIX:"regtest",CASHADDRPREFIX:"bchreg"},$a={PORT:9333,NETWORK_MAGIC:Eg.stn,DNS_SEEDS:["stn-seed.bitcoinsv.io"],PREFIX:"stn",CASHADDRPREFIX:"bsvstn"},MV={name:"livenet",alias:"mainnet",prefix:"bitcoin",cashAddrPrefix:"bitcoincash",pubkeyhash:0,privatekey:128,scripthash:5,xpubkey:76067358,xprivkey:76066276,networkMagic:Eg.livenet,port:8333,dnsSeeds:H2},DV={name:"testnet",prefix:Za.PREFIX,cashAddrPrefix:Za.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:Za.NETWORK_MAGIC},HV={name:"regtest",prefix:ua.PREFIX,cashAddrPrefix:ua.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:ua.NETWORK_MAGIC,port:ua.PORT,dnsSeeds:[],indexBy:["port","name","cashAddrPrefix","networkMagic"]},qV={name:"stn",prefix:$a.PREFIX,cashAddrPrefix:$a.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:$a.NETWORK_MAGIC,indexBy:["port","name","cashAddrPrefix","networkMagic"]};jl(DV);jl(qV);jl(HV);jl(MV);var Hb=Fl("livenet"),UV=Fl("regtest"),fo=Fl("testnet"),FV=Fl("stn");Object.defineProperty(fo,"port",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?ua.PORT:this.stnEnabled?$a.PORT:Za.PORT}});Object.defineProperty(fo,"networkMagic",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?ql.integerAsBuffer(ua.NETWORK_MAGIC):this.stnEnabled?ql.integerAsBuffer($a.NETWORK_MAGIC):ql.integerAsBuffer(Za.NETWORK_MAGIC)}});Object.defineProperty(fo,"dnsSeeds",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?ua.DNS_SEEDS:this.stnEnabled?$a.DNS_SEEDS:Za.DNS_SEEDS}});Object.defineProperty(fo,"cashAddrPrefix",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?ua.CASHADDRPREFIX:this.stnEnabled?$a.CASHADDRPREFIX:Za.CASHADDRPREFIX}});Object.defineProperty(fo,"cashAddrPrefixArray",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?Sg(ua.CASHADDRPREFIX):this.stnEnabled?Sg($a.CASHADDRPREFIX):Sg(Za.CASHADDRPREFIX)}});function jV(){fo.regtestEnabled=!0}function zV(){fo.regtestEnabled=!1}function KV(){fo.stnEnabled=!0}function VV(){fo.stnEnabled=!1}q2.exports={add:jl,remove:LV,defaultNetwork:Hb,livenet:Hb,mainnet:Hb,testnet:fo,regtest:UV,stn:FV,get:Fl,enableRegtest:jV,disableRegtest:zV,enableStn:KV,disableStn:VV}});var Pc=T((mae,z2)=>{"use strict";g();var U2=at(),xg=pc(),F2=rr(),j2=Le().sha256sha256,ar=function e(t){if(!(this instanceof e))return new e(t);if(f.Buffer.isBuffer(t)){var r=t;this.fromBuffer(r)}else if(typeof t=="string"){var i=t;this.fromString(i)}};ar.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this};ar.validChecksum=function(t,r){return U2.isString(t)&&(t=F2.Buffer.from(xg.decode(t))),U2.isString(r)&&(r=F2.Buffer.from(xg.decode(r))),r||(r=t.slice(-4),t=t.slice(0,-4)),ar.checksum(t).toString("hex")===r.toString("hex")};ar.decode=function(e){if(typeof e!="string")throw new Error("Input must be a string");var t=f.Buffer.from(xg.decode(e));if(t.length<4)throw new Error("Input string too short");var r=t.slice(0,-4),i=t.slice(-4),n=j2(r),o=n.slice(0,4);if(i.toString("hex")!==o.toString("hex"))throw new Error("Checksum mismatch");return r};ar.checksum=function(e){return j2(e).slice(0,4)};ar.encode=function(e){if(!f.Buffer.isBuffer(e))throw new Error("Input must be a buffer");var t=f.Buffer.alloc(e.length+4),r=ar.checksum(e);return e.copy(t),r.copy(t,e.length),xg.encode(t)};ar.prototype.fromBuffer=function(e){return this.buf=e,this};ar.fromBuffer=function(e){return new ar().fromBuffer(e)};ar.fromHex=function(e){return ar.fromBuffer(f.Buffer.from(e,"hex"))};ar.prototype.fromString=function(e){var t=ar.decode(e);return this.buf=t,this};ar.fromString=function(e){var t=ar.decode(e);return new ar(t)};ar.prototype.toBuffer=function(){return this.buf};ar.prototype.toHex=function(){return this.toBuffer().toString("hex")};ar.prototype.toString=function(){return ar.encode(this.buf)};z2.exports=ar});var Fb=T((yae,W2)=>{"use strict";g();function Xa(e){"@babel/helpers - typeof";return Xa=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xa(e)}function K2(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,WV(i.key),i)}}function GV(e,t,r){return t&&K2(e.prototype,t),r&&K2(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function WV(e){var t=YV(e,"string");return Xa(t)==="symbol"?t:String(t)}function YV(e,t){if(Xa(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||"default");if(Xa(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ZV(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function $V(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ub(e,t)}function Ub(e,t){return Ub=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,n){return i.__proto__=n,i},Ub(e,t)}function XV(e){var t=eG();return function(){var i=Og(e),n;if(t){var o=Og(this).constructor;n=Reflect.construct(i,arguments,o)}else n=i.apply(this,arguments);return JV(this,n)}}function JV(e,t){if(t&&(Xa(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return QV(e)}function QV(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function eG(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Og(e){return Og=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},Og(e)}var G2={},Rc,qb;function zl(e,t,r){r||(r=Error);function i(o,a,s){return typeof t=="string"?t:t(o,a,s)}var n=(function(o){$V(s,o);var a=XV(s);function s(u,c,l){var p;return ZV(this,s),p=a.call(this,i(u,c,l)),p.code=e,p}return GV(s)})(r);G2[e]=n}function V2(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(i){return String(i)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function tG(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function rG(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function iG(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}zl("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);zl("ERR_INVALID_ARG_TYPE",function(e,t,r){Rc===void 0&&(Rc=fa()),Rc(typeof e=="string","'name' must be a string");var i;typeof t=="string"&&tG(t,"not ")?(i="must not be",t=t.replace(/^not /,"")):i="must be";var n;if(rG(e," argument"))n="The ".concat(e," ").concat(i," ").concat(V2(t,"type"));else{var o=iG(e,".")?"property":"argument";n='The "'.concat(e,'" ').concat(o," ").concat(i," ").concat(V2(t,"type"))}return n+=". Received type ".concat(Xa(r)),n},TypeError);zl("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";qb===void 0&&(qb=nn());var i=qb.inspect(t);return i.length>128&&(i="".concat(i.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(i)},TypeError,RangeError);zl("ERR_INVALID_RETURN_VALUE",function(e,t,r){var i;return r&&r.constructor&&r.constructor.name?i="instance of ".concat(r.constructor.name):i="type ".concat(Xa(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(i,".")},TypeError);zl("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];Rc===void 0&&(Rc=fa()),Rc(t.length>0,"At least one arg needs to be specified");var i="The ",n=t.length;switch(t=t.map(function(o){return'"'.concat(o,'"')}),n){case 1:i+="".concat(t[0]," argument");break;case 2:i+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:i+=t.slice(0,n-1).join(", "),i+=", and ".concat(t[n-1]," arguments");break}return"".concat(i," must be specified")},TypeError);W2.exports.codes=G2});var iR=T((_ae,rR)=>{"use strict";g();function Y2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,i)}return r}function Z2(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Y2(Object(r),!0).forEach(function(i){nG(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y2(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function nG(e,t,r){return t=Q2(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function oG(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function $2(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,Q2(i.key),i)}}function aG(e,t,r){return t&&$2(e.prototype,t),r&&$2(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function Q2(e){var t=sG(e,"string");return Bi(t)==="symbol"?t:String(t)}function sG(e,t){if(Bi(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||"default");if(Bi(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function uG(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Wl(e,t)}function cG(e){var t=tR();return function(){var i=Yl(e),n;if(t){var o=Yl(this).constructor;n=Reflect.construct(i,arguments,o)}else n=i.apply(this,arguments);return eR(this,n)}}function eR(e,t){if(t&&(Bi(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return jb(e)}function jb(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function zb(e){var t=typeof Map=="function"?new Map:void 0;return zb=function(i){if(i===null||!fG(i))return i;if(typeof i!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t<"u"){if(t.has(i))return t.get(i);t.set(i,n)}function n(){return Ig(i,arguments,Yl(this).constructor)}return n.prototype=Object.create(i.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Wl(n,i)},zb(e)}function Ig(e,t,r){return tR()?Ig=Reflect.construct.bind():Ig=function(n,o,a){var s=[null];s.push.apply(s,o);var u=Function.bind.apply(n,s),c=new u;return a&&Wl(c,a.prototype),c},Ig.apply(null,arguments)}function tR(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function fG(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Wl(e,t){return Wl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,n){return i.__proto__=n,i},Wl(e,t)}function Yl(e){return Yl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},Yl(e)}function Bi(e){"@babel/helpers - typeof";return Bi=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bi(e)}var lG=nn(),Kb=lG.inspect,hG=Fb(),dG=hG.codes.ERR_INVALID_ARG_TYPE;function X2(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function pG(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Pn="",Kl="",Vl="",oi="",nu={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},gG=10;function J2(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(i){r[i]=e[i]}),Object.defineProperty(r,"message",{value:e.message}),r}function Gl(e){return Kb(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function mG(e,t,r){var i="",n="",o=0,a="",s=!1,u=Gl(e),c=u.split(`
14
14
  `),l=Gl(t).split(`
@@ -71,7 +71,7 @@ The flags passed to verify() (0x`+(e>>>0).toString(16)+`) carry no era bit, so t
71
71
  To validate against BSV as it is today, omit the flags argument or pass Interpreter.mainnetFlags(). If you are deliberately testing pre-Genesis consensus this failure is correct \u2014 set Interpreter.eraDiagnostics = false (or BSV_NO_ERA_HINT=1) to silence this.`,L.eraDiagnostics&&!I_&&(I_=!0,console.warn(`
72
72
  [@smartledger/bsv] `+this.eraHint+`
73
73
  (shown once per process)
74
- `))}}};L.prototype.verify=function(e,t,r,i,n,o){this.eraHint=null;var a=this._verifyCore(e,t,r,i,n,o);return a||this._eraDiagnose(n),a};L._resetEraWarning=function(){I_=!1};L.mainnetFlags=function(e){e=e||{};var t=L.SCRIPT_VERIFY_P2SH|L.SCRIPT_VERIFY_STRICTENC|L.SCRIPT_VERIFY_DERSIG|L.SCRIPT_VERIFY_SIGPUSHONLY|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_NULLFAIL|L.SCRIPT_VERIFY_MINIMALDATA|L.SCRIPT_ENABLE_SIGHASH_FORKID|L.SCRIPT_ENABLE_MAGNETIC_OPCODES|L.SCRIPT_ENABLE_MONOLITH_OPCODES|L.SCRIPT_GENESIS|L.SCRIPT_UTXO_AFTER_GENESIS;return e.afterChronicle!==!1&&(t|=L.SCRIPT_ENABLE_CHRONICLE|L.SCRIPT_UTXO_AFTER_CHRONICLE),t};L.currentConsensusFlags=function(){return L.SCRIPT_ENABLE_MONOLITH_OPCODES|L.SCRIPT_ENABLE_MAGNETIC_OPCODES|L.SCRIPT_GENESIS|L.SCRIPT_UTXO_AFTER_GENESIS|L.SCRIPT_ENABLE_CHRONICLE|L.SCRIPT_UTXO_AFTER_CHRONICLE|L.SCRIPT_ENABLE_SIGHASH_FORKID|L.SCRIPT_VERIFY_SIGPUSHONLY|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_NULLFAIL};L.useMainnetConsensus=function(e){return e=e||{},L.useGenesisLimits(e.max),L.mainnetFlags(e)};L.SEQUENCE_LOCKTIME_DISABLE_FLAG=1<<31;L.SEQUENCE_LOCKTIME_TYPE_FLAG=1<<22;L.SEQUENCE_LOCKTIME_MASK=65535;L.castToBool=function(e){for(var t=0;t<e.length;t++)if(e[t]!==0)return!(t===e.length-1&&e[t]===128);return!1};function UB(e,t){return(e&L.SCRIPT_CHRONICLE)===0?!0:!(t&&(t.version|0)>1)}L.prototype.enforceNonMalleability=function(){return UB(this.flags,this.tx)};L.prototype.checkSignatureEncoding=function(e){var t;if(e.length===0)return!0;if((this.flags&(L.SCRIPT_VERIFY_DERSIG|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_STRICTENC))!==0&&!ma.isTxDER(e))return this.errstr="SCRIPT_ERR_SIG_DER_INVALID_FORMAT",!1;if((this.flags&L.SCRIPT_VERIFY_LOW_S)!==0&&(t=ma.fromTxFormat(e),!t.hasLowS()&&this.enforceNonMalleability()))return this.errstr="SCRIPT_ERR_SIG_DER_HIGH_S",!1;if((this.flags&L.SCRIPT_VERIFY_STRICTENC)!==0){if(t=ma.fromTxFormat(e),!t.hasDefinedHashtype())return this.errstr="SCRIPT_ERR_SIG_HASHTYPE",!1;if(!(this.flags&L.SCRIPT_ENABLE_SIGHASH_FORKID)&&t.nhashtype&ma.SIGHASH_FORKID)return this.errstr="SCRIPT_ERR_ILLEGAL_FORKID",!1;if(!(this.flags&L.SCRIPT_CHRONICLE)&&t.nhashtype&ma.SIGHASH_CHRONICLE)return this.errstr="SCRIPT_ERR_ILLEGAL_CHRONICLE",!1;if(this.flags&L.SCRIPT_ENABLE_SIGHASH_FORKID&&!(t.nhashtype&ma.SIGHASH_FORKID))return this.errstr="SCRIPT_ERR_MUST_USE_FORKID",!1}return!0};function HB(e,t,r){var i=t.length?t[t.length-1]:0;return(!(r&L.SCRIPT_ENABLE_SIGHASH_FORKID)||!(i&ma.SIGHASH_FORKID))&&e.findAndDelete(new im().add(t)),e}L.prototype.checkPubkeyEncoding=function(e){return(this.flags&L.SCRIPT_VERIFY_STRICTENC)!==0&&!O_.isValid(e)?(this.errstr="SCRIPT_ERR_PUBKEYTYPE",!1):!0};L.prototype.isAfterGenesis=function(){return(this.flags&L.SCRIPT_UTXO_AFTER_GENESIS)!==0};L.prototype.isAfterChronicle=function(){return(this.flags&(L.SCRIPT_UTXO_AFTER_CHRONICLE|L.SCRIPT_ENABLE_CHRONICLE))!==0};L.prototype.maxScriptElementSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_SCRIPT_ELEMENT_SIZE};L.prototype.maxScriptSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_SCRIPT_SIZE};L.prototype.maxOpsPerScript=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_OPS_PER_SCRIPT};L.prototype.maxScriptNumLength=function(){return this.isAfterChronicle()?L.MAX_SCRIPT_NUM_LENGTH_AFTER_CHRONICLE:this.isAfterGenesis()?L.MAX_SCRIPT_NUM_LENGTH_AFTER_GENESIS:L.MAXIMUM_ELEMENT_SIZE};L.prototype.maxStackSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_STACK_SIZE};L.prototype.maxStackMemoryUsage=function(){return this.isAfterGenesis()?L.MAX_STACK_MEMORY_USAGE_AFTER_GENESIS:L.UNLIMITED};L.prototype.stackMemoryUsage=function(){let e=L.STACK_ELEMENT_OVERHEAD,t=(this.stack.length+this.altstack.length)*e;for(let r=0;r<this.stack.length;r++)t+=this.stack[r].length;for(let r=0;r<this.altstack.length;r++)t+=this.altstack[r].length;return t};L.prototype.checkStackLimits=function(){if(this.stack.length+this.altstack.length>this.maxStackSize())return"SCRIPT_ERR_STACK_SIZE";let e=this.maxStackMemoryUsage();return e!==L.UNLIMITED&&this.stackMemoryUsage()>e?"SCRIPT_ERR_STACK_SIZE":null};L.prototype.maxPubKeysPerMultisig=function(){return this.isAfterGenesis()?L.MAX_PUBKEYS_PER_MULTISIG_AFTER_GENESIS:20};L._isMinimallyEncoded=function(e,t){return t=t||L.MAXIMUM_ELEMENT_SIZE,!(e.length>t||e.length>0&&(e[e.length-1]&127)===0&&(e.length<=1||(e[e.length-2]&128)===0))};L._minimallyEncode=function(e){if(e.length===0)return e;var t=e[e.length-1];if(t&127)return e;if(e.length===1)return f.Buffer.from("");if(e[e.length-2]&128)return e;e=f.Buffer.from(e);for(var r=e.length-1;r>0;r--)if(e[r-1]!==0)return e[r-1]&128?e[r++]=t:e[r-1]|=t,e.slice(0,r);return f.Buffer.from("")};L.prototype.evaluate=function(){if(this.script.toBuffer().length>this.maxScriptSize())return this.errstr="SCRIPT_ERR_SCRIPT_SIZE",!1;try{for(;this.pc<this.script.chunks.length;){let r={pc:this.pc,opcode:j.fromNumber(this.script.chunks[this.pc].opcodenum)};var e=this.step();if(!e)return!1;if(this._callbackStep(r),this.returned)return!0;let i=this.checkStackLimits();if(i)return this.errstr=i,!1}let t=this.checkStackLimits();if(t)return this.errstr=t,!1}catch(t){return this.errstr=t.scriptErr||"SCRIPT_ERR_UNKNOWN_ERROR: "+t,!1}return this.vfExec.length>0?(this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1):!0};L.prototype._callbackStep=function(e){if(typeof this.stepListener=="function")try{this.stepListener(e,DB(this.stack),DB(this.altstack))}catch(t){console.log(`Error in Step callback:${t}`)}};L.prototype.checkLockTime=function(e){if(!(this.tx.nLockTime<L.LOCKTIME_THRESHOLD&&e.lt(L.LOCKTIME_THRESHOLD_BN)||this.tx.nLockTime>=L.LOCKTIME_THRESHOLD&&e.gte(L.LOCKTIME_THRESHOLD_BN))||e.gt(new we(this.tx.nLockTime)))return!1;var t=this.tx.inputs[this.nin];return!(!t||t.isFinal())};L.prototype.checkSequence=function(e){var t=this.tx.inputs[this.nin];if(!t)return!1;var r=t.sequenceNumber;if(this.tx.version<2||r&L.SEQUENCE_LOCKTIME_DISABLE_FLAG)return!1;var i=L.SEQUENCE_LOCKTIME_TYPE_FLAG|L.SEQUENCE_LOCKTIME_MASK,n=new we(r&i),o=e.and(new we(i)),a=new we(L.SEQUENCE_LOCKTIME_TYPE_FLAG);return!(!(n.lt(a)&&o.lt(a)||n.gte(a)&&o.gte(a))||o.gt(n))};function qB(e){var t=f.Buffer.alloc(4);return t.writeInt32LE(e|0,0),t}L.prototype.step=function(){var e=this;function t(ge){return e.stack[e.stack.length+ge]}function r(ge){switch(ge){case j.OP_2MUL:case j.OP_2DIV:if(!e.isAfterChronicle())return!0;break;case j.OP_INVERT:case j.OP_MUL:case j.OP_LSHIFT:case j.OP_RSHIFT:case j.OP_DIV:case j.OP_MOD:case j.OP_SPLIT:case j.OP_CAT:case j.OP_AND:case j.OP_OR:case j.OP_XOR:case j.OP_BIN2NUM:case j.OP_NUM2BIN:return!1;default:break}return!1}var i=(this.flags&L.SCRIPT_VERIFY_MINIMALDATA)!==0&&this.enforceNonMalleability(),n,o,a,s,u,c,l,p,d,v,_,I,R,k,q,z,A,B=this.script.chunks[this.pc];this.pc++;var M=B.opcodenum,F=this.vfExec.indexOf(!1)===-1&&(!this.nonTopLevelReturnAfterGenesis||M===j.OP_RETURN);if(rm.isUndefined(M))return this.errstr="SCRIPT_ERR_UNDEFINED_OPCODE",!1;if(B.buf&&B.buf.length>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;if(M>j.OP_16&&++this.nOpCount>this.maxOpsPerScript())return this.errstr="SCRIPT_ERR_OP_COUNT",!1;if(r(M)&&(!this.isAfterGenesis()||F))return this.errstr="SCRIPT_ERR_DISABLED_OPCODE",!1;if(F&&M>=0&&M<=j.OP_PUSHDATA4){if(i&&!this.script.checkMinimalPush(this.pc-1))return this.errstr="SCRIPT_ERR_MINIMALDATA",!1;if(!B.buf)this.stack.push(L.false);else{if(B.len!==B.buf.length)return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1;this.stack.push(B.buf)}}else if(F||j.OP_IF<=M&&M<=j.OP_ENDIF)switch(M){case j.OP_1NEGATE:case j.OP_1:case j.OP_2:case j.OP_3:case j.OP_4:case j.OP_5:case j.OP_6:case j.OP_7:case j.OP_8:case j.OP_9:case j.OP_10:case j.OP_11:case j.OP_12:case j.OP_13:case j.OP_14:case j.OP_15:case j.OP_16:u=M-(j.OP_1-1),n=new we(u).toScriptNumBuffer(),this.stack.push(n);break;case j.OP_NOP:break;case j.OP_NOP2:case j.OP_CHECKLOCKTIMEVERIFY:if(!(this.flags&L.SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY)||this.isAfterGenesis()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var V=we.fromScriptNumBuffer(this.stack[this.stack.length-1],i,5);if(V.lt(new we(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if(!this.checkLockTime(V))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case j.OP_NOP3:case j.OP_CHECKSEQUENCEVERIFY:if(!(this.flags&L.SCRIPT_VERIFY_CHECKSEQUENCEVERIFY)||this.isAfterGenesis()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Y=we.fromScriptNumBuffer(t(-1),i,5);if(Y.lt(new we(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if((Y&L.SEQUENCE_LOCKTIME_DISABLE_FLAG)!==0)break;if(!this.checkSequence(Y))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case j.OP_NOP1:case j.OP_NOP9:case j.OP_NOP10:if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break;case j.OP_LSHIFTNUM:case j.OP_RSHIFTNUM:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var E=this.maxScriptNumLength(),h=we.fromScriptNumBuffer(t(-1),i,E);if(h.isNeg())return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop();var y=we.fromScriptNumBuffer(t(-1),i,E);this.stack.pop();var w=h.toNumber(),S=y.isNeg(),O=y.abs(),C;if(M===j.OP_LSHIFTNUM){var D=y.toScriptNumBuffer().length;if(D+Math.floor(w/8)>E)return this.errstr="SCRIPT_ERR_SCRIPTNUM_OVERFLOW",!1;C=O.shln(w)}else C=w>=O.bitLength()?new we(0):O.shrn(w);if(S&&!C.isZero()&&(C=C.neg()),C.toScriptNumBuffer().length>E)return this.errstr="SCRIPT_ERR_SCRIPTNUM_OVERFLOW",!1;this.stack.push(C.toScriptNumBuffer());break;case j.OP_VER:if(!this.isAfterChronicle())return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1;if(this.tx==null)return this.errstr="SCRIPT_ERR_UNKNOWN_ERROR",!1;this.stack.push(qB(this.tx.version));break;case j.OP_VERIF:case j.OP_VERNOTIF:if(!this.isAfterChronicle()){if(this.isAfterGenesis()&&!F)break;return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1}if(z=!1,F){if(this.stack.length<1)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;if(this.tx==null)return this.errstr="SCRIPT_ERR_UNKNOWN_ERROR",!1;n=t(-1),z=n.length===4&&n.equals(qB(this.tx.version)),M===j.OP_VERNOTIF&&(z=!z),this.stack.pop()}this.vfExec.push(z),this.vfElse.push(!1);break;case j.OP_IF:case j.OP_NOTIF:if(z=!1,F){if(this.stack.length<1)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;if(n=t(-1),this.flags&L.SCRIPT_VERIFY_MINIMALIF&&(n.length>1||n.length===1&&n[0]!==1)&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_MINIMALIF",!1;z=L.castToBool(n),M===j.OP_NOTIF&&(z=!z),this.stack.pop()}this.vfExec.push(z),this.vfElse.push(!1);break;case j.OP_ELSE:if(this.vfExec.length===0||this.vfElse[this.vfElse.length-1]&&this.isAfterGenesis())return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec[this.vfExec.length-1]=!this.vfExec[this.vfExec.length-1],this.vfElse[this.vfElse.length-1]=!0;break;case j.OP_ENDIF:if(this.vfExec.length===0)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec.pop(),this.vfElse.pop();break;case j.OP_VERIFY:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(n=t(-1),z=L.castToBool(n),z)this.stack.pop();else return this.errstr="SCRIPT_ERR_VERIFY",!1;break;case j.OP_RETURN:if(this.isAfterGenesis()){if(this.vfExec.length===0){this.returned=!0;break}this.nonTopLevelReturnAfterGenesis=!0;break}return this.errstr="SCRIPT_ERR_OP_RETURN",!1;case j.OP_TOALTSTACK:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.altstack.push(this.stack.pop());break;case j.OP_FROMALTSTACK:if(this.altstack.length<1)return this.errstr="SCRIPT_ERR_INVALID_ALTSTACK_OPERATION",!1;this.stack.push(this.altstack.pop());break;case j.OP_2DROP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop(),this.stack.pop();break;case j.OP_2DUP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2),a=t(-1),this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a));break;case j.OP_3DUP:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-3),a=t(-2);var P=t(-1);this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a)),this.stack.push(f.Buffer.from(P));break;case j.OP_2OVER:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-4),a=t(-3),this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a));break;case j.OP_2ROT:if(this.stack.length<6)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;s=this.stack.splice(this.stack.length-6,2),this.stack.push(s[0]),this.stack.push(s[1]);break;case j.OP_2SWAP:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;s=this.stack.splice(this.stack.length-4,2),this.stack.push(s[0]),this.stack.push(s[1]);break;case j.OP_IFDUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1),z=L.castToBool(n),z&&this.stack.push(f.Buffer.from(n));break;case j.OP_DEPTH:n=new we(this.stack.length).toScriptNumBuffer(),this.stack.push(n);break;case j.OP_DROP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop();break;case j.OP_DUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(f.Buffer.from(t(-1)));break;case j.OP_NIP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.splice(this.stack.length-2,1);break;case j.OP_OVER:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(f.Buffer.from(t(-2)));break;case j.OP_PICK:case j.OP_ROLL:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(n=t(-1),p=we.fromScriptNumBuffer(n,i,this.maxScriptNumLength()),u=p.toNumber(),this.stack.pop(),u<0||u>=this.stack.length)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-u-1),M===j.OP_ROLL&&this.stack.splice(this.stack.length-u-1,1),this.stack.push(f.Buffer.from(n));break;case j.OP_ROT:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;c=t(-3),l=t(-2);var m=t(-1);this.stack[this.stack.length-3]=l,this.stack[this.stack.length-2]=m,this.stack[this.stack.length-1]=c;break;case j.OP_SWAP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;c=t(-2),l=t(-1),this.stack[this.stack.length-2]=l,this.stack[this.stack.length-1]=c;break;case j.OP_TUCK:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.splice(this.stack.length-2,0,f.Buffer.from(t(-1)));break;case j.OP_SIZE:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;p=new we(t(-1).length),this.stack.push(p.toScriptNumBuffer());break;case j.OP_AND:case j.OP_OR:case j.OP_XOR:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),a=t(-1),o.length!==a.length)return this.errstr="SCRIPT_ERR_INVALID_OPERAND_SIZE",!1;switch(s=f.Buffer.alloc(o.length),M){case j.OP_AND:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]&a[ge];break;case j.OP_OR:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]|a[ge];break;case j.OP_XOR:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]^a[ge];break;default:break}this.stack.pop(),this.stack[this.stack.length-1]=s;break;case j.OP_INVERT:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1),o=f.Buffer.alloc(n.length);for(let ge=0;ge<n.length;ge++)o[ge]=~n[ge]&255;this.stack[this.stack.length-1]=o;break;case j.OP_LSHIFT:case j.OP_RSHIFT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),v=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()),v.cmpn(0)<0)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),this.stack.pop();var x=f.Buffer.alloc(o.length);if(v.lt(new we(o.length).muln(8)))for(var K=v.toNumber(),U=Math.floor(K/8),G=K%8,te=M===j.OP_LSHIFT,ae=0;ae<o.length;ae++){var oe=te?ae+U:ae-U,le=oe>=0&&oe<o.length?o[oe]:0,he=te?oe+1:oe-1,ve=G&&he>=0&&he<o.length?o[he]:0;x[ae]=te?(le<<G|ve>>8-G)&255:(le>>G|ve<<8-G)&255}this.stack.push(x);break;case j.OP_EQUAL:case j.OP_EQUALVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2),a=t(-1);var je=o.toString("hex")===a.toString("hex");if(this.stack.pop(),this.stack.pop(),this.stack.push(je?L.true:L.false),M===j.OP_EQUALVERIFY)if(je)this.stack.pop();else return this.errstr="SCRIPT_ERR_EQUALVERIFY",!1;break;case j.OP_2MUL:case j.OP_2DIV:case j.OP_1ADD:case j.OP_1SUB:case j.OP_NEGATE:case j.OP_ABS:case j.OP_NOT:case j.OP_0NOTEQUAL:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(n=t(-1),p=we.fromScriptNumBuffer(n,i,this.maxScriptNumLength()),M){case j.OP_2MUL:p=p.mul(new we(2));break;case j.OP_2DIV:p=p.div(new we(2));break;case j.OP_1ADD:p=p.add(we.One);break;case j.OP_1SUB:p=p.sub(we.One);break;case j.OP_NEGATE:p=p.neg();break;case j.OP_ABS:p.cmp(we.Zero)<0&&(p=p.neg());break;case j.OP_NOT:p=new we((p.cmp(we.Zero)===0)+0);break;case j.OP_0NOTEQUAL:p=new we((p.cmp(we.Zero)!==0)+0);break}this.stack.pop(),this.stack.push(p.toScriptNumBuffer());break;case j.OP_ADD:case j.OP_SUB:case j.OP_MUL:case j.OP_MOD:case j.OP_DIV:case j.OP_BOOLAND:case j.OP_BOOLOR:case j.OP_NUMEQUAL:case j.OP_NUMEQUALVERIFY:case j.OP_NUMNOTEQUAL:case j.OP_LESSTHAN:case j.OP_GREATERTHAN:case j.OP_LESSTHANOREQUAL:case j.OP_GREATERTHANOREQUAL:case j.OP_MIN:case j.OP_MAX:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(d=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength()),v=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()),p=new we(0),M){case j.OP_ADD:p=d.add(v);break;case j.OP_SUB:p=d.sub(v);break;case j.OP_MUL:p=d.mul(v);break;case j.OP_DIV:if(v.cmp(we.Zero)===0)return this.errstr="SCRIPT_ERR_DIV_BY_ZERO",!1;p=d.div(v);break;case j.OP_MOD:if(v.cmp(we.Zero)===0)return this.errstr="SCRIPT_ERR_MOD_BY_ZERO",!1;p=d.mod(v);break;case j.OP_BOOLAND:p=new we((d.cmp(we.Zero)!==0&&v.cmp(we.Zero)!==0)+0);break;case j.OP_BOOLOR:p=new we((d.cmp(we.Zero)!==0||v.cmp(we.Zero)!==0)+0);break;case j.OP_NUMEQUAL:p=new we((d.cmp(v)===0)+0);break;case j.OP_NUMEQUALVERIFY:p=new we((d.cmp(v)===0)+0);break;case j.OP_NUMNOTEQUAL:p=new we((d.cmp(v)!==0)+0);break;case j.OP_LESSTHAN:p=new we((d.cmp(v)<0)+0);break;case j.OP_GREATERTHAN:p=new we((d.cmp(v)>0)+0);break;case j.OP_LESSTHANOREQUAL:p=new we((d.cmp(v)<=0)+0);break;case j.OP_GREATERTHANOREQUAL:p=new we((d.cmp(v)>=0)+0);break;case j.OP_MIN:p=d.cmp(v)<0?d:v;break;case j.OP_MAX:p=d.cmp(v)>0?d:v;break}if(this.stack.pop(),this.stack.pop(),this.stack.push(p.toScriptNumBuffer()),M===j.OP_NUMEQUALVERIFY)if(L.castToBool(t(-1)))this.stack.pop();else return this.errstr="SCRIPT_ERR_NUMEQUALVERIFY",!1;break;case j.OP_WITHIN:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;d=we.fromScriptNumBuffer(t(-3),i,this.maxScriptNumLength()),v=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength());var be=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength());z=v.cmp(d)<=0&&d.cmp(be)<0,this.stack.pop(),this.stack.pop(),this.stack.pop(),this.stack.push(z?L.true:L.false);break;case j.OP_RIPEMD160:case j.OP_SHA1:case j.OP_SHA256:case j.OP_HASH160:case j.OP_HASH256:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1);var _e;M===j.OP_RIPEMD160?_e=fh.ripemd160(n):M===j.OP_SHA1?_e=fh.sha1(n):M===j.OP_SHA256?_e=fh.sha256(n):M===j.OP_HASH160?_e=fh.sha256ripemd160(n):M===j.OP_HASH256&&(_e=fh.sha256sha256(n)),this.stack.pop(),this.stack.push(_e);break;case j.OP_CODESEPARATOR:this.pbegincodehash=this.pc;break;case j.OP_CHECKSIG:case j.OP_CHECKSIGVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(_=t(-2),I=t(-1),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(I))return!1;R=new im().set({chunks:this.script.chunks.slice(this.pbegincodehash)}),HB(R,_,this.flags);try{k=ma.fromTxFormat(_),q=O_.fromBuffer(I,!1),A=this.tx.verifySignature(k,q,this.nin,R,this.satoshisBN,this.flags)}catch{A=!1}if(!A&&this.flags&L.SCRIPT_VERIFY_NULLFAIL&&_.length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_NULLFAIL",!1;if(this.stack.pop(),this.stack.pop(),this.stack.push(A?L.true:L.false),M===j.OP_CHECKSIGVERIFY)if(A)this.stack.pop();else return this.errstr="SCRIPT_ERR_CHECKSIGVERIFY",!1;break;case j.OP_CHECKMULTISIG:case j.OP_CHECKMULTISIGVERIFY:var We=1;if(this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Pe=we.fromScriptNumBuffer(t(-We),i,4).toNumber();if(Pe<0||Pe>this.maxPubKeysPerMultisig())return this.errstr="SCRIPT_ERR_PUBKEY_COUNT",!1;if(this.nOpCount+=Pe,this.nOpCount>this.maxOpsPerScript())return this.errstr="SCRIPT_ERR_OP_COUNT",!1;var Me=++We;We+=Pe;var rt=Pe+2;if(this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Be=we.fromScriptNumBuffer(t(-We),i,4).toNumber();if(Be<0||Be>Pe)return this.errstr="SCRIPT_ERR_SIG_COUNT",!1;var vt=++We;if(We+=Be,this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;R=new im().set({chunks:this.script.chunks.slice(this.pbegincodehash)});for(var ui=0;ui<Be;ui++)_=t(-vt-ui),HB(R,_,this.flags);for(A=!0;A&&Be>0;){if(_=t(-vt),I=t(-Me),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(I))return!1;var Et;try{k=ma.fromTxFormat(_),q=O_.fromBuffer(I,!1),Et=this.tx.verifySignature(k,q,this.nin,R,this.satoshisBN,this.flags)}catch{Et=!1}Et&&(vt++,Be--),Me++,Pe--,Be>Pe&&(A=!1)}for(;We-- >1;){if(!A&&this.flags&L.SCRIPT_VERIFY_NULLFAIL&&!rt&&t(-1).length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_NULLFAIL",!1;rt>0&&rt--,this.stack.pop()}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(this.flags&L.SCRIPT_VERIFY_NULLDUMMY&&t(-1).length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_SIG_NULLDUMMY",!1;if(this.stack.pop(),this.stack.push(A?L.true:L.false),M===j.OP_CHECKMULTISIGVERIFY)if(A)this.stack.pop();else return this.errstr="SCRIPT_ERR_CHECKMULTISIGVERIFY",!1;break;case j.OP_CAT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),a=t(-1),o.length+a.length>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack[this.stack.length-2]=f.Buffer.concat([o,a]),this.stack.pop();break;case j.OP_SPLIT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2);var _t=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber();if(_t<0||_t>o.length)return this.errstr="SCRIPT_ERR_INVALID_SPLIT_RANGE",!1;var Yn=f.Buffer.from(o);this.stack[this.stack.length-2]=Yn.slice(0,_t),this.stack[this.stack.length-1]=Yn.slice(_t);break;case j.OP_LEFT:case j.OP_RIGHT:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),u=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber(),u<0||u>o.length)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),M===j.OP_LEFT?this.stack[this.stack.length-1]=f.Buffer.from(o).slice(0,u):this.stack[this.stack.length-1]=f.Buffer.from(o).slice(o.length-u);break;case j.OP_SUBSTR:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-3);var Lt=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber(),N=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength()).toNumber();if(N<0||N>=o.length||Lt<0||Lt>o.length-N)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),this.stack.pop(),this.stack[this.stack.length-1]=f.Buffer.from(o).slice(N,N+Lt);break;case j.OP_NUM2BIN:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var W=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength());if(W.cmpn(0)<0||W.gt(new we(2147483647)))return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;var X=W.toNumber();if(X>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack.pop();var ie=t(-1);if(ie=L._minimallyEncode(ie),ie.length>X)return this.errstr="SCRIPT_ERR_IMPOSSIBLE_ENCODING",!1;if(ie.length===X){this.stack[this.stack.length-1]=ie;break}var pe=0;ie.length>0&&(ie=f.Buffer.from(ie),pe=ie[ie.length-1]&128,ie[ie.length-1]&=127);var se=f.Buffer.alloc(X);ie.copy(se,0);for(var me=ie.length-1;me++<X-2;)se[me]=0;se[me]=pe,this.stack[this.stack.length-1]=se;break;case j.OP_BIN2NUM:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-1),a=L._minimallyEncode(o),this.stack[this.stack.length-1]=a,!L._isMinimallyEncoded(a,this.maxScriptNumLength()))return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;break;default:return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1}return!0}});var ut=T((jse,A_)=>{g();A_.exports=Kg();A_.exports.Interpreter=hn()});var Ni=T((Kse,VB)=>{"use strict";g();var T_=at(),va=Ie(),M9=pi(),jB=Pc(),pn=ca(),zB=Le(),KB=ni(),P_=sr();function ye(e,t,r){if(!(this instanceof ye))return new ye(e,t,r);if(T_.isArray(e)&&T_.isNumber(t))return ye.createMultisig(e,t,r);if(e instanceof ye)return e;if(va.checkArgument(e,"First argument is required, please include address data.","guide/address.html"),t&&!pn.get(t))throw new TypeError('Second argument must be "livenet", "testnet", or "regtest".');if(r&&r!==ye.PayToPublicKeyHash&&r!==ye.PayToScriptHash)throw new TypeError('Third argument must be "pubkeyhash" or "scripthash".');var i=this._classifyArguments(e,t,r);return i.network=i.network||pn.get(t)||pn.defaultNetwork,i.type=i.type||r||ye.PayToPublicKeyHash,KB.defineImmutable(this,{hashBuffer:i.hashBuffer,network:i.network,type:i.type}),this}ye.prototype._classifyArguments=function(e,t,r){if((e instanceof f.Buffer||e instanceof Uint8Array)&&e.length===20)return ye._transformHash(e);if((e instanceof f.Buffer||e instanceof Uint8Array)&&e.length===21)return ye._transformBuffer(e,t,r);if(e instanceof P_)return ye._transformPublicKey(e);if(e instanceof lh())return ye._transformScript(e,t);if(typeof e=="string")return ye._transformString(e,t,r);if(T_.isObject(e))return ye._transformObject(e);throw new TypeError("First argument is an unrecognized data format.")};ye.PayToPublicKeyHash="pubkeyhash";ye.PayToScriptHash="scripthash";ye._transformHash=function(e){var t={};if(!(e instanceof f.Buffer)&&!(e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(e.length!==20)throw new TypeError("Address hashbuffers must be exactly 20 bytes.");return t.hashBuffer=e,t};ye._transformObject=function(e){return va.checkArgument(e.hash||e.hashBuffer,"Must provide a `hash` or `hashBuffer` property"),va.checkArgument(e.type,"Must provide a `type` property"),{hashBuffer:e.hash?f.Buffer.from(e.hash,"hex"):e.hashBuffer,network:pn.get(e.network)||pn.defaultNetwork,type:e.type}};ye._classifyFromVersion=function(e){var t={},r=pn.get(e[0],"pubkeyhash"),i=pn.get(e[0],"scripthash");return r?(t.network=r,t.type=ye.PayToPublicKeyHash):i&&(t.network=i,t.type=ye.PayToScriptHash),t};ye._transformBuffer=function(e,t,r){var i={};if(!(e instanceof f.Buffer)&&!(e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(e.length!==21)throw new TypeError("Address buffers must be exactly 21 bytes.");var n=pn.get(t),o=ye._classifyFromVersion(e);if(t&&!n)throw new TypeError("Unknown network");if(!o.network||n&&n!==o.network)throw new TypeError("Address has mismatched network type.");if(!o.type||r&&r!==o.type)throw new TypeError("Address has mismatched type.");return i.hashBuffer=e.slice(1),i.network=o.network,i.type=o.type,i};ye._transformPublicKey=function(e){var t={};if(!(e instanceof P_))throw new TypeError("Address must be an instance of PublicKey.");return t.hashBuffer=zB.sha256ripemd160(e.toBuffer()),t.type=ye.PayToPublicKeyHash,t};ye._transformScript=function(e,t){va.checkArgument(e instanceof lh(),"script must be a Script instance");var r=e.getAddressInfo(t);if(!r)throw new M9.Script.CantDeriveAddress(e);return r};ye.createMultisig=function(e,t,r){return r=r||e[0].network||pn.defaultNetwork,ye.payingTo(lh().buildMultisigOut(e,t),r)};ye._transformString=function(e,t,r){if(typeof e!="string")throw new TypeError("data parameter supplied is not a string.");if(e.length<27)throw new Error("Invalid Address string provided");e=e.trim();var i=pn.get(t);if(t&&!i)throw new TypeError("Unknown network");var n=jB.decode(e);return ye._transformBuffer(n,t,r)};ye.fromPublicKey=function(e,t){var r=ye._transformPublicKey(e);return t=t||pn.defaultNetwork,new ye(r.hashBuffer,t,r.type)};ye.fromPrivateKey=function(e,t){let r=P_.fromPrivateKey(e);return t=t||e.network||pn.defaultNetwork,ye.fromPublicKey(r,t)};ye.fromPublicKeyHash=function(e,t){var r=ye._transformHash(e);return new ye(r.hashBuffer,t,ye.PayToPublicKeyHash)};ye.fromScriptHash=function(e,t){va.checkArgument(e,"hash parameter is required");var r=ye._transformHash(e);return new ye(r.hashBuffer,t,ye.PayToScriptHash)};ye.payingTo=function(e,t){return va.checkArgument(e,"script is required"),va.checkArgument(e instanceof lh(),"script must be instance of Script"),ye.fromScriptHash(zB.sha256ripemd160(e.toBuffer()),t)};ye.fromScript=function(e,t){va.checkArgument(e instanceof lh(),"script must be a Script instance");var r=ye._transformScript(e,t);return new ye(r.hashBuffer,t,r.type)};ye.fromBuffer=function(e,t,r){var i=ye._transformBuffer(e,t,r);return new ye(i.hashBuffer,i.network,i.type)};ye.fromHex=function(e,t,r){return ye.fromBuffer(f.Buffer.from(e,"hex"),t,r)};ye.fromString=function(e,t,r){var i=ye._transformString(e,t,r);return new ye(i.hashBuffer,i.network,i.type)};ye.fromObject=function(t){va.checkState(KB.isHexa(t.hash),'Unexpected hash property, "'+t.hash+'", expected to be hex.');var r=f.Buffer.from(t.hash,"hex");return new ye(r,t.network,t.type)};ye.getValidationError=function(e,t,r){var i;try{new ye(e,t,r)}catch(n){i=n}return i};ye.isValid=function(e,t,r){return!ye.getValidationError(e,t,r)};ye.prototype.isPayToPublicKeyHash=function(){return this.type===ye.PayToPublicKeyHash};ye.prototype.isPayToScriptHash=function(){return this.type===ye.PayToScriptHash};ye.prototype.toBuffer=function(){var e=f.Buffer.from([this.network[this.type]]),t=f.Buffer.concat([e,this.hashBuffer]);return t};ye.prototype.toHex=function(){return this.toBuffer().toString("hex")};ye.prototype.toObject=ye.prototype.toJSON=function(){return{hash:this.hashBuffer.toString("hex"),type:this.type,network:this.network.toString()}};ye.prototype.inspect=function(){return"<Address: "+this.toString()+", type: "+this.type+", network: "+this.network+">"};ye.prototype.toString=function(){return jB.encode(this.toBuffer())};VB.exports=ye;function lh(){return ut()}});var ei=T((Gse,ZB)=>{"use strict";g();var nm=at(),D9=Ni(),GB=Pc(),ns=Ke(),WB=ni(),go=ca(),k_=un(),H9=sr(),q9=Ki(),YB=Ie(),R_="[REDACTED]";function Ne(e,t){if(!(this instanceof Ne))return new Ne(e,t);if(e instanceof Ne)return e;var r=this._classifyArguments(e,t);if(!r.bn||r.bn.cmp(new ns(0))===0)throw new TypeError("Number can not be equal to zero, undefined, null or false");if(!r.bn.lt(k_.getN()))throw new TypeError("Number must be less than N");if(typeof r.network>"u")throw new TypeError('Must specify the network ("livenet" or "testnet")');return WB.defineImmutable(this,{bn:r.bn,compressed:r.compressed,network:r.network}),Object.defineProperty(this,"publicKey",{configurable:!1,enumerable:!0,get:this.toPublicKey.bind(this)}),this}Ne.prototype._classifyArguments=function(e,t){var r={compressed:!0,network:t?go.get(t):go.defaultNetwork};if(nm.isUndefined(e)||nm.isNull(e))r.bn=Ne._getRandomBN();else if(e instanceof ns)r.bn=e;else if(e instanceof f.Buffer||e instanceof Uint8Array)r=Ne._transformBuffer(e,t);else if(e.bn&&e.network)r=Ne._transformObject(e);else if(!t&&go.get(e))r.bn=Ne._getRandomBN(),r.network=go.get(e);else if(typeof e=="string")WB.isHexa(e)?r.bn=new ns(f.Buffer.from(e,"hex")):r=Ne._transformWIF(e,t);else throw new TypeError("First argument is an unrecognized data type.");return r};Ne._getRandomBN=function(){var e,t;do{var r=q9.getRandomBuffer(32);t=ns.fromBuffer(r),e=t.lt(k_.getN())}while(!e);return t};Ne._transformBuffer=function(e,t){var r={};if(e.length===32)return Ne._transformBNBuffer(e,t);if(r.network=go.get(e[0],"privatekey"),!r.network)throw new Error("Invalid network");if(t&&r.network!==go.get(t))throw new TypeError("Private key network mismatch");if(e.length===34&&e[33]===1)r.compressed=!0;else if(e.length===33)r.compressed=!1;else throw new Error("Length of buffer must be 33 (uncompressed) or 34 (compressed)");return r.bn=ns.fromBuffer(e.slice(1,33)),r};Ne._transformBNBuffer=function(e,t,r){var i={};return i.network=go.get(t)||go.defaultNetwork,i.bn=ns.fromBuffer(e),i.compressed=r===void 0?!0:!!r,i};Ne._transformWIF=function(e,t){return Ne._transformBuffer(GB.decode(e),t)};Ne.fromBuffer=function(e,t,r){return r!==void 0&&e&&e.length===32?new Ne(Ne._transformBNBuffer(e,t,r)):new Ne(e,t)};Ne.fromHex=function(e,t,r){return Ne.fromBuffer(f.Buffer.from(e,"hex"),t,r)};Ne._transformObject=function(e){if(e.bn instanceof ns)return{bn:e.bn,network:go.get(e.network),compressed:e.compressed};if(typeof e.bn!="string"||!e.bn.length)throw new TypeError("Invalid private key: `bn` must be a hex string");if(e.bn===R_)throw new TypeError('Invalid private key: `bn` is "'+R_+'". JSON.stringify() redacts the secret on purpose \u2014 use toObject() for a round-trippable export, or toWIF().');if(!/^[0-9a-fA-F]+$/.test(e.bn))throw new TypeError("Invalid private key: `bn` is not hexadecimal");var t=new ns(e.bn,"hex");if(t.isZero()||t.gte(k_.getN()))throw new TypeError("Invalid private key: outside the range of valid keys");var r=go.get(e.network);return{bn:t,network:r,compressed:e.compressed}};Ne.fromString=Ne.fromWIF=function(e,t){return YB.checkArgument(nm.isString(e),"First argument is expected to be a string."),new Ne(e,t)};Ne.fromObject=Ne.fromJSON=function(e){return YB.checkArgument(nm.isObject(e),"First argument is expected to be an object."),new Ne(e)};Ne.fromRandom=function(e){var t=Ne._getRandomBN();return new Ne(t,e)};Ne.getValidationError=function(e,t){var r;try{new Ne(e,t)}catch(i){r=i}return r};Ne.isValid=function(e,t){return e?!Ne.getValidationError(e,t):!1};Ne.prototype.toString=function(){return this.toWIF()};Ne.prototype.toWIF=function(){var e=this.network,t=this.compressed,r;return t?r=f.Buffer.concat([f.Buffer.from([e.privatekey]),this.bn.toBuffer({size:32}),f.Buffer.from([1])]):r=f.Buffer.concat([f.Buffer.from([e.privatekey]),this.bn.toBuffer({size:32})]),GB.encode(r)};Ne.prototype.toBigNumber=function(){return this.bn};Ne.prototype.toBuffer=function(){return this.bn.toBuffer({size:32})};Ne.prototype.toHex=function(){return this.toBuffer().toString("hex")};Ne.prototype.toPublicKey=function(){return this._pubkey||(this._pubkey=H9.fromPrivateKey(this)),this._pubkey};Ne.prototype.toAddress=function(e){var t=this.toPublicKey();return D9.fromPublicKey(t,e||this.network)};Ne.prototype.toObject=function(){return{bn:this.bn.toString("hex"),compressed:this.compressed,network:this.network.toString()}};Ne.prototype.toJSON=function(){return{bn:R_,compressed:this.compressed,network:this.network.toString()}};Ne.prototype.inspect=function(){var e=this.compressed?"":", uncompressed";return"<PrivateKey: "+this.toHex()+", network: "+this.network+e+">"};ZB.exports=Ne});var sr=T((Yse,XB)=>{"use strict";g();var Uc=Ke(),Fc=un(),U9=Le(),F9=ni(),$B=ca(),B_=at(),uu=Ie();function xe(e,t){if(!(this instanceof xe))return new xe(e,t);if(uu.checkArgument(e,"First argument is required, please include public key data."),e instanceof xe)return e;t=t||{};var r=this._classifyArgs(e,t);return r.point.validate(),F9.defineImmutable(this,{point:r.point,compressed:r.compressed,network:r.network||$B.defaultNetwork}),this}xe.prototype._classifyArgs=function(e,t){var r={compressed:B_.isUndefined(t.compressed)||t.compressed};if(e instanceof Fc)r.point=e;else if(e.x&&e.y)r=xe._transformObject(e);else if(typeof e=="string")r=xe._transformDER(f.Buffer.from(e,"hex"));else if(xe._isBuffer(e))r=xe._transformDER(e);else if(xe._isPrivateKey(e))r=xe._transformPrivateKey(e);else throw new TypeError("First argument is an unrecognized data format.");return r.network||(r.network=B_.isUndefined(t.network)?void 0:$B.get(t.network)),r};xe._isPrivateKey=function(e){var t=ei();return e instanceof t};xe._isBuffer=function(e){return e instanceof f.Buffer||e instanceof Uint8Array};xe._transformPrivateKey=function(e){uu.checkArgument(xe._isPrivateKey(e),"Must be an instance of PrivateKey");var t={};return t.point=Fc.getG().mul(e.bn),t.compressed=e.compressed,t.network=e.network,t};xe._transformDER=function(e,t){uu.checkArgument(xe._isBuffer(e),"Must be a buffer of DER encoded public key");var r={};t=B_.isUndefined(t)?!0:t;var i,n,o,a;if(e[0]===4||!t&&(e[0]===6||e[0]===7)){if(o=e.slice(1,33),a=e.slice(33,65),o.length!==32||a.length!==32||e.length!==65)throw new TypeError("Length of x and y must be 32 bytes");i=new Uc(o),n=new Uc(a),r.point=new Fc(i,n),r.compressed=!1}else if(e[0]===3)o=e.slice(1),i=new Uc(o),r=xe._transformX(!0,i),r.compressed=!0;else if(e[0]===2)o=e.slice(1),i=new Uc(o),r=xe._transformX(!1,i),r.compressed=!0;else throw new TypeError("Invalid DER format public key");return r};xe._transformX=function(e,t){uu.checkArgument(typeof e=="boolean","Must specify whether y is odd or not (true or false)");var r={};return r.point=Fc.fromX(e,t),r};xe._transformObject=function(e){var t=new Uc(e.x,"hex"),r=new Uc(e.y,"hex"),i=new Fc(t,r);return new xe(i,{compressed:e.compressed})};xe.fromPrivateKey=function(e){uu.checkArgument(xe._isPrivateKey(e),"Must be an instance of PrivateKey");var t=xe._transformPrivateKey(e);return new xe(t.point,{compressed:t.compressed,network:t.network})};xe.fromDER=xe.fromBuffer=function(e,t){uu.checkArgument(xe._isBuffer(e),"Must be a buffer of DER encoded public key");var r=xe._transformDER(e,t);return new xe(r.point,{compressed:r.compressed})};xe.fromPoint=function(e,t){return uu.checkArgument(e instanceof Fc,"First argument must be an instance of Point."),new xe(e,{compressed:t})};xe.fromHex=xe.fromString=function(e,t){var r=f.Buffer.from(e,t||"hex"),i=xe._transformDER(r);return new xe(i.point,{compressed:i.compressed})};xe.fromX=function(e,t){var r=xe._transformX(e,t);return new xe(r.point,{compressed:r.compressed})};xe.getValidationError=function(e){var t;try{new xe(e)}catch(r){t=r}return t};xe.isValid=function(e){return!xe.getValidationError(e)};xe.prototype.toObject=xe.prototype.toJSON=function(){return{x:this.point.getX().toString("hex",2),y:this.point.getY().toString("hex",2),compressed:this.compressed}};xe.prototype.toBuffer=xe.prototype.toDER=function(){var e=this.point.getX(),t=this.point.getY(),r=e.toBuffer({size:32}),i=t.toBuffer({size:32}),n;if(this.compressed){var o=i[i.length-1]%2;return o?n=f.Buffer.from([3]):n=f.Buffer.from([2]),f.Buffer.concat([n,r])}else return n=f.Buffer.from([4]),f.Buffer.concat([n,r,i])};xe.prototype._getID=function(){return U9.sha256ripemd160(this.toBuffer())};xe.prototype.toAddress=function(e){var t=Ni();return t.fromPublicKey(this,e||this.network)};xe.prototype.toString=xe.prototype.toHex=function(){return this.toDER().toString("hex")};xe.prototype.inspect=function(){return"<PublicKey: "+this.toHex()+(this.compressed?"":", uncompressed")+">"};XB.exports=xe});var dn=T(($se,JB)=>{"use strict";g();var Gi=Ke(),mo=un(),j9=gt(),z9=sr(),K9=Ki(),os=Le(),V9=at(),N_=Ie(),Ct=function e(t){if(!(this instanceof e))return new e(t);t&&this.set(t)};Object.defineProperty(Ct.prototype,"k",{get:function(){return this._k},set:function(e){this._k=e,this._kFresh=!0},enumerable:!0,configurable:!0});Ct.prototype.set=function(e){if(this.hashbuf=e.hashbuf||this.hashbuf,this.endian=e.endian||this.endian,this.privkey=e.privkey||this.privkey,this.pubkey=e.pubkey||(this.privkey?this.privkey.publicKey:this.pubkey),e.sig)if(f.Buffer.isBuffer(e.sig)){var t=gt();this.sig=t.fromDER(e.sig)}else this.sig=e.sig;else this.sig=this.sig;return e.k&&(this.k=e.k),this.verified=e.verified||this.verified,this};Ct.prototype.privkey2pubkey=function(){this.pubkey=this.privkey.toPublicKey()};Ct.prototype.calci=function(){for(var e=0;e<4;e++){this.sig.i=e;var t;try{t=this.toPublicKey()}catch(r){console.error(r);continue}if(t.point.eq(this.pubkey.point))return this.sig.compressed=this.pubkey.compressed,this}throw this.sig.i=void 0,new Error("Unable to find valid recovery factor")};Ct.fromString=function(e){var t=JSON.parse(e);return new Ct(t)};Ct.prototype.randomK=function(){var e=mo.getN(),t;do t=Gi.fromBuffer(K9.getRandomBuffer(32));while(!(t.lt(e)&&t.gt(Gi.Zero)));return this.k=t,this};Ct.prototype.deterministicK=function(e){V9.isUndefined(e)&&(e=0);var t=f.Buffer.alloc(32);t.fill(1);var r=f.Buffer.alloc(32);r.fill(0);var i=this.privkey.bn.toBuffer({size:32}),n=this.endian==="little"?f.Buffer.from(this.hashbuf).reverse():this.hashbuf;r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([0]),i,n]),r),t=os.sha256hmac(t,r),r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([1]),i,n]),r),t=os.sha256hmac(t,r),t=os.sha256hmac(t,r);for(var o=Gi.fromBuffer(t),a=mo.getN(),s=0;s<e||!(o.lt(a)&&o.gt(Gi.Zero));s++)r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([0])]),r),t=os.sha256hmac(t,r),t=os.sha256hmac(t,r),o=Gi.fromBuffer(t);return this.k=o,this};Ct.prototype.toPublicKey=function(){var e=this.sig.i;N_.checkArgument(e===0||e===1||e===2||e===3,new Error("i must be equal to 0, 1, 2, or 3"));var t=Gi.fromBuffer(this.hashbuf),r=this.sig.r,i=this.sig.s,n=e&1,o=e>>1,a=mo.getN(),s=mo.getG(),u=o?r.add(a):r,c=mo.fromX(n,u),l=c.mul(a);if(!l.isInfinity())throw new Error("nR is not a valid curve point");var p=t.neg().umod(a),d=r.invm(a),v=c.mul(i).add(s.mul(p)).mul(d),_=z9.fromPoint(v,this.sig.compressed);return _};Ct.prototype.sigError=function(){if(!f.Buffer.isBuffer(this.hashbuf)||this.hashbuf.length!==32)return"hashbuf must be a 32 byte buffer";var e=this.sig.r,t=this.sig.s,r=mo.getN();try{if(e.lte(Gi.Zero)||t.lte(Gi.Zero)||e.gte(r)||t.gte(r))return"r and s not in range";var i=Gi.fromBuffer(this.hashbuf,this.endian?{endian:this.endian}:void 0),n=t.invm(r),o=n.mul(i).umod(r),a=n.mul(e).umod(r),s=mo.getG().mulAdd(o,this.pubkey.point,a);return s.isInfinity()?"p is infinity":s.getX().umod(r).cmp(e)!==0?"Invalid signature":!1}catch(u){return"Signature security validation failed: "+u.message}};Ct.toLowS=function(e){return e.gt(Gi.fromBuffer(f.Buffer.from("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex")))&&(e=mo.getN().sub(e)),e};Ct.prototype._findSignature=function(e,t){var r=mo.getN(),i=mo.getG(),n=0,o,a,s,u;do(!this.k||!this._kFresh||n>0)&&this.deterministicK(n),n++,o=this.k,a=i.mul(o),s=a.x.umod(r),u=o.invm(r).mul(t.add(e.mul(s))).umod(r);while(s.cmp(Gi.Zero)<=0||u.cmp(Gi.Zero)<=0);return this._kFresh=!1,u=Ct.toLowS(u),{s:u,r:s}};Ct.prototype.sign=function(){var e=this.hashbuf,t=this.privkey,r=t.bn;N_.checkState(e&&t&&r,new Error("invalid parameters")),N_.checkState(f.Buffer.isBuffer(e)&&e.length===32,new Error("hashbuf must be a 32 byte buffer"));var i=Gi.fromBuffer(e,this.endian?{endian:this.endian}:void 0),n=this._findSignature(r,i);return n.compressed=this.pubkey.compressed,this.sig=new j9(n),this};Ct.prototype.signRandomK=function(){return this.randomK(),this.sign()};Ct.prototype.toString=function(){var e={};return this.hashbuf&&(e.hashbuf=this.hashbuf.toString("hex")),this.privkey&&(e.privkey=this.privkey.toString()),this.pubkey&&(e.pubkey=this.pubkey.toString()),this.sig&&(e.sig=this.sig.toString()),this.k&&(e.k=this.k.toString()),JSON.stringify(e)};Ct.prototype.verify=function(){return this.verified=!this.sigError(),this.verified};Ct.prototype.verifyBool=function(){return this.verify()===!0};Ct.sign=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).sign().sig};Ct.signWithCalcI=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).sign().calci().sig};Ct.signRandomK=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).signRandomK().sig};Ct.verify=function(e,t,r,i){return Ct().set({hashbuf:e,endian:i,sig:t,pubkey:r}).verify()};JB.exports=Ct});var eN=T((C_,QB)=>{g();(function(e,t){"use strict";typeof define=="function"&&define.amd?define([],function(){return e.secrets=t()}):typeof C_=="object"?QB.exports=t(nr()):e.secrets=t(e.crypto)})(C_,function(e){"use strict";var t,r,i,n,o;function a(){t={bits:8,radix:16,minBits:3,maxBits:20,bytesPerChar:2,maxBytesPerChar:6,primitivePolynomials:[null,null,1,3,3,5,3,3,29,17,9,5,83,27,43,3,45,9,39,39,9,5,3,33,27,9,71,39,9,5,83]},r={},i=new Array(1024).join("0"),n=!0,o=["nodeCryptoRandomBytes","browserCryptoGetRandomValues","testRandom"]}function s(){return!!(r&&r.rng&&typeof r.rng=="function")}function u(A,B){var M;if(B===0||B===1)return A;if(B&&B>1024)throw new Error("Padding must be multiples of no larger than 1024 bits.");return B=B||r.bits,A&&(M=A.length%B),M?(i+A).slice(-(B-M+A.length)):A}function c(A){var B="",M,F;for(F=A.length-1;F>=0;F--){if(M=parseInt(A[F],16),isNaN(M))throw new Error("Invalid hex character.");B=u(M.toString(2),4)+B}return B}function l(A){var B="",M,F;for(A=u(A,4),F=A.length;F>=4;F-=4){if(M=parseInt(A.slice(F-4,F),2),isNaN(M))throw new Error("Invalid binary character.");B=M.toString(16)+B}return B}function p(){return!!(e&&typeof e=="object"&&(typeof e.getRandomValues=="function"||typeof e.getRandomValues=="object")&&(typeof Uint32Array=="function"||typeof Uint32Array=="object"))}function d(){return typeof e=="object"&&typeof e.randomBytes=="function"}function v(A){function B(Y,E,h,y){var w=0,S,O="",C;for(E&&(S=E.length-1);w<S||O.length<Y;)C=Math.abs(parseInt(E[w],h)),O=O+u(C.toString(2),y),w++;return O=O.substr(-Y),(O.match(/0/g)||[]).length===O.length?null:O}function M(Y){var E,h,y,w,S=null;for(y=16,w=4,h=Math.ceil(Y/8);S===null;)E=e.randomBytes(h),S=B(Y,E.toString("hex"),y,w);return S}function F(Y){var E,h,y,w=null;for(h=10,y=32,E=Math.ceil(Y/32);w===null;)w=B(Y,e.getRandomValues(new Uint32Array(E)),h,y);return w}function V(Y){var E,h,y,w,S,O=null;w=10,S=32,h=Math.ceil(Y/32),y=123456789,E=new Uint32Array(h);for(var C=0;C<E.length;C++)E[C]=y;for(;O===null;)O=B(Y,E,w,S);return O}if(A&&A==="testRandom")return r.typeCSPRNG=A,V;if(A&&A==="nodeCryptoRandomBytes")return r.typeCSPRNG=A,M;if(A&&A==="browserCryptoGetRandomValues")return r.typeCSPRNG=A,F;if(d())return r.typeCSPRNG="nodeCryptoRandomBytes",M;if(p())return r.typeCSPRNG="browserCryptoGetRandomValues",F}function _(A,B){var M=[],F;for(B&&(A=u(A,B)),F=A.length;F>r.bits;F-=r.bits)M.push(parseInt(A.slice(F-r.bits,F),2));return M.push(parseInt(A.slice(0,F),2)),M}function I(A,B){var M=r.logs[A],F=0,V;for(V=B.length-1;V>=0;V--)F!==0?F=r.exps[(M+r.logs[F])%r.maxShares]^B[V]:F=B[V];return F}function R(A,B,M){var F=0,V,Y,E,h;for(E=0,V=B.length;E<V;E++)if(M[E]){for(Y=r.logs[M[E]],h=0;h<V;h++)if(E!==h){if(A===B[h]){Y=-1;break}Y=(Y+r.logs[A^B[h]]-r.logs[B[E]^B[h]]+r.maxShares)%r.maxShares}F=Y===-1?F:F^r.exps[Y]}return F}function k(A,B,M){var F=[],V=[A],Y,E;for(Y=1;Y<M;Y++)V[Y]=parseInt(r.rng(r.bits),2);for(Y=1,E=B+1;Y<E;Y++)F[Y-1]={x:Y,y:I(Y,V)};return F}function q(A,B,M){var F,V,Y,E,h;if(B=parseInt(B,r.radix),A=parseInt(A,10)||r.bits,F=A.toString(36).toUpperCase(),Y=Math.pow(2,A)-1,E=Y.toString(r.radix).length,V=u(B.toString(r.radix),E),typeof B!="number"||B%1!==0||B<1||B>Y)throw new Error("Share id must be an integer between 1 and "+Y+", inclusive.");return h=F+V+M,h}var z={init:function(A,B){var M=[],F=[],V=1,Y,E;if(a(),A&&(typeof A!="number"||A%1!==0||A<t.minBits||A>t.maxBits))throw new Error("Number of bits must be an integer between "+t.minBits+" and "+t.maxBits+", inclusive.");if(B&&o.indexOf(B)===-1)throw new Error("Invalid RNG type argument : '"+B+"'");for(r.radix=t.radix,r.bits=A||t.bits,r.size=Math.pow(2,r.bits),r.maxShares=r.size-1,Y=t.primitivePolynomials[r.bits],E=0;E<r.size;E++)F[E]=V,M[V]=E,V=V<<1,V>=r.size&&(V=V^Y,V=V&r.maxShares);if(r.logs=M,r.exps=F,B&&this.setRNG(B),s()||this.setRNG(),!s()||!r.bits||!r.size||!r.maxShares||!r.logs||!r.exps||r.logs.length!==r.size||r.exps.length!==r.size)throw new Error("Initialization failed.")},combine:function(A,B){var M,F,V,Y,E="",h,y,w,S=[],O=[];for(B=B||0,M=0,V=A.length;M<V;M++){if(y=this.extractShareComponents(A[M]),h===void 0)h=y.bits;else if(y.bits!==h)throw new Error("Mismatched shares: Different bit settings.");if(r.bits!==h&&this.init(h),S.indexOf(y.id)===-1)for(S.push(y.id),w=_(c(y.data)),F=0,Y=w.length;F<Y;F++)O[F]=O[F]||[],O[F][S.length-1]=w[F]}for(M=0,V=O.length;M<V;M++)E=u(R(B,S,O[M]).toString(2))+E;return l(B>=1?E:E.slice(E.indexOf("1")+1))},getConfig:function(){var A={};return A.radix=r.radix,A.bits=r.bits,A.maxShares=r.maxShares,A.hasCSPRNG=s(),A.typeCSPRNG=r.typeCSPRNG,A},extractShareComponents:function(A){var B,M,F,V,Y={},E,h;if(B=parseInt(A.substr(0,1),36),B&&(typeof B!="number"||B%1!==0||B<t.minBits||B>t.maxBits))throw new Error("Invalid share : Number of bits must be an integer between "+t.minBits+" and "+t.maxBits+", inclusive.");if(V=Math.pow(2,B)-1,F=(Math.pow(2,B)-1).toString(r.radix).length,E="^([a-kA-K3-9]{1})([a-fA-F0-9]{"+F+"})([a-fA-F0-9]+)$",h=new RegExp(E).exec(A),h&&(M=parseInt(h[2],r.radix)),typeof M!="number"||M%1!==0||M<1||M>V)throw new Error("Invalid share : Share id must be an integer between 1 and "+r.maxShares+", inclusive.");if(h&&h[3])return Y.bits=B,Y.id=M,Y.data=h[3],Y;throw new Error("The share data provided is invalid : "+A)},setRNG:function(A){var B="Random number generator is invalid ",M=" Supply an CSPRNG of the form function(bits){} that returns a string containing 'bits' number of random 1's and 0's.";if(A&&typeof A=="string"&&o.indexOf(A)===-1)throw new Error("Invalid RNG type argument : '"+A+"'");if(A||(A=v()),A&&typeof A=="string"&&(A=v(A)),n){if(A&&typeof A!="function")throw new Error(B+"(Not a function)."+M);if(A&&typeof A(r.bits)!="string")throw new Error(B+"(Output is not a string)."+M);if(A&&!parseInt(A(r.bits),2))throw new Error(B+"(Binary string output not parseable to an Integer)."+M);if(A&&A(r.bits).length>r.bits)throw new Error(B+"(Output length is greater than config.bits)."+M);if(A&&A(r.bits).length<r.bits)throw new Error(B+"(Output length is less than config.bits)."+M)}return r.rng=A,!0},str2hex:function(A,B){var M,F,V="",Y,E,h,y;if(typeof A!="string")throw new Error("Input must be a character string.");if(B||(B=t.bytesPerChar),typeof B!="number"||B<1||B>t.maxBytesPerChar||B%1!==0)throw new Error("Bytes per character must be an integer between 1 and "+t.maxBytesPerChar+", inclusive.");for(M=2*B,F=Math.pow(16,M)-1,h=0,y=A.length;h<y;h++){if(E=A[h].charCodeAt(),isNaN(E))throw new Error("Invalid character: "+A[h]);if(E>F)throw Y=Math.ceil(Math.log(E+1)/Math.log(256)),new Error("Invalid character code ("+E+"). Maximum allowable is 256^bytes-1 ("+F+"). To convert this character, use at least "+Y+" bytes.");V=u(E.toString(16),M)+V}return V},hex2str:function(A,B){var M,F="",V,Y;if(typeof A!="string")throw new Error("Input must be a hexadecimal string.");if(B=B||t.bytesPerChar,typeof B!="number"||B%1!==0||B<1||B>t.maxBytesPerChar)throw new Error("Bytes per character must be an integer between 1 and "+t.maxBytesPerChar+", inclusive.");for(M=2*B,A=u(A,M),V=0,Y=A.length;V<Y;V+=M)F=String.fromCharCode(parseInt(A.slice(V,V+M),16))+F;return F},random:function(A){if(typeof A!="number"||A%1!==0||A<2||A>65536)throw new Error("Number of bits must be an Integer between 1 and 65536.");return l(r.rng(A))},share:function(A,B,M,F){var V,Y,E=new Array(B),h=new Array(B),y,w,S;if(F=F||128,typeof A!="string")throw new Error("Secret must be a string.");if(typeof B!="number"||B%1!==0||B<2)throw new Error("Number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive.");if(B>r.maxShares)throw V=Math.ceil(Math.log(B+1)/Math.LN2),new Error("Number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive. To create "+B+" shares, use at least "+V+" bits.");if(typeof M!="number"||M%1!==0||M<2)throw new Error("Threshold number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive.");if(M>r.maxShares)throw V=Math.ceil(Math.log(M+1)/Math.LN2),new Error("Threshold number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive. To use a threshold of "+M+", use at least "+V+" bits.");if(M>B)throw new Error("Threshold number of shares was "+M+" but must be less than or equal to the "+B+" shares specified as the total to generate.");if(typeof F!="number"||F%1!==0||F<0||F>1024)throw new Error("Zero-pad length must be an integer between 0 and 1024 inclusive.");for(A="1"+c(A),A=_(A,F),y=0,S=A.length;y<S;y++)for(Y=k(A[y],B,M),w=0;w<B;w++)E[w]=E[w]||Y[w].x.toString(r.radix),h[w]=u(Y[w].y.toString(2))+(h[w]||"");for(y=0;y<B;y++)E[y]=q(r.bits,E[y],l(h[y]));return E},newShare:function(A,B){var M,F;if(A&&typeof A=="string"&&(A=parseInt(A,r.radix)),F=A.toString(r.radix),A&&F&&B&&B[0])return M=this.extractShareComponents(B[0]),q(M.bits,F,this.combine(B,A));throw new Error("Invalid 'id' or 'shares' Array argument to newShare().")},_reset:a,_padLeft:u,_hex2bin:c,_bin2hex:l,_hasCryptoGetRandomValues:p,_hasCryptoRandomBytes:d,_getRNG:v,_isSetRNG:s,_splitNumStringToIntArray:_,_horner:I,_lagrange:R,_getShares:k,_constructPublicShareString:q};return z.init(),z})});var M_=T((Qse,nN)=>{"use strict";g();var vi=Ke(),tN=Ki(),rN=Le(),om=null;function L_(){if(om)return om;var e=eN();return e.setRNG(function(t){for(var r=64,i=0;i<r;i++){for(var n=tN.getRandomBuffer(Math.ceil(t/8)),o="",a=0;a<n.length;a++)o+=("00000000"+n[a].toString(2)).slice(-8);if(o=o.slice(0,t),/1/.test(o))return o}throw new Error("shamir: CSPRNG returned all-zero draws "+r+" times in a row \u2014 refusing to hang on a degenerate/stubbed random source")}),om=e,om}var am="ff",iN=2;function kr(e){return this instanceof kr?(this.options=e||{},this):new kr(e)}kr.split=function(e,t,r,i){if(i=i||{},e==null)throw new Error("Secret is required");if(t<2)throw new Error("Threshold must be at least 2");if(r<t)throw new Error("Number of shares must be at least threshold");if(t>255||r>255)throw new Error("Threshold and shares must be <= 255");for(var n=f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"utf8"),o=am+n.toString("hex"),a=L_().share(o,r,t),s=tN.getRandomBuffer(8).toString("hex"),u=i.checksum===!0,c=u?rN.sha256(n).slice(0,4).toString("hex"):null,l=[],p=0;p<a.length;p++)l.push({v:iN,id:p+1,threshold:t,shares:r,length:n.length,splitId:s,share:a[p],checksum:c});return l};kr.combine=function(e){if(!e||e.length===0)throw new Error("Shares array is required");if(e[0]&&Array.isArray(e[0].bytes)&&e[0].share===void 0)return kr._combineLegacy(e);var t=e[0].threshold,r=e[0].splitId;if(e.length<t)throw new Error("Insufficient shares: need "+t+", got "+e.length);for(var i=[],n=0;n<e.length;n++){var o=e[n];if(!o||typeof o.share!="string")throw new Error("Invalid share at index "+n);if(r!==void 0&&o.splitId!==r)throw new Error("Shares are from different splits (splitId mismatch)");if(o.threshold!==t)throw new Error("Shares have inconsistent threshold");i.push(o.share)}var a=L_().combine(i);if(a.slice(0,am.length)!==am)throw new Error("Reconstruction failed: invalid or insufficient shares");var s=f.Buffer.from(a.slice(am.length),"hex"),u=e[0].checksum;if(u){var c=rN.sha256(s).slice(0,4).toString("hex");if(c!==u)throw new Error("Integrity check failed: shares are inconsistent or tampered")}return s};kr.verifyShare=function(e){try{return!e||typeof e!="object"?!1:Array.isArray(e.bytes)&&e.share===void 0?kr._verifyLegacyShare(e):e.v!==iN||typeof e.share!="string"||!/^[0-9a-fA-F]+$/.test(e.share)||typeof e.threshold!="number"||typeof e.shares!="number"||e.threshold<2||e.shares<e.threshold||e.shares>255||e.id<1||e.id>e.shares||e.checksum!==null&&e.checksum!==void 0&&!/^[0-9a-fA-F]{8}$/.test(e.checksum)?!1:(L_().extractShareComponents(e.share),!0)}catch{return!1}};kr.generateTestVectors=function(){var e="Hello, Bitcoin SV!",t=3,r=5,i=kr.split(e,t,r),n=kr.combine(i.slice(0,t));return{secret:e,threshold:t,totalShares:r,shares:i,reconstructed:n.toString("utf8"),valid:n.toString("utf8")===e}};var as=new vi(2147483647);kr._combineLegacy=function(e){var t=e[0].threshold,r=e[0].shares,i=e[0].length;if(e.length<t)throw new Error("Insufficient shares: need "+t+", got "+e.length);for(var n=0;n<e.length;n++){if(e[n].threshold!==t||e[n].shares!==r)throw new Error("Shares have inconsistent parameters");if(e[n].length!==i)throw new Error("Shares have different secret lengths")}for(var o=[],a=0;a<i;a++){for(var s=[],u=0;u<Math.min(e.length,t);u++)s.push(e[u].bytes[a]);o.push(kr._combineByteLegacy(s))}return f.Buffer.from(o)};kr._combineByteLegacy=function(e){for(var t=new vi(0),r=0;r<e.length;r++){for(var i=new vi(e[r].x),n=new vi(e[r].y,16),o=new vi(1),a=new vi(1),s=0;s<e.length;s++)if(r!==s){var u=new vi(e[s].x),c=new vi(0).sub(u);c.lt(new vi(0))&&(c=c.add(as)),o=o.mul(c).mod(as);var l=i.sub(u);l.lt(new vi(0))&&(l=l.add(as)),a=a.mul(l).mod(as)}var p=kr._modInverseLegacy(a,as),d=o.mul(p).mod(as);t=t.add(n.mul(d)).mod(as)}return t.mod(as).mod(new vi(256)).toNumber()};kr._modInverseLegacy=function(e,t){e.lt(new vi(0))&&(e=e.mod(t).add(t));var r=kr._extendedGCDLegacy(e,t);if(!r.gcd.eq(new vi(1)))throw new Error("Modular inverse does not exist");return r.x.mod(t).add(t).mod(t)};kr._extendedGCDLegacy=function(e,t){if(e.eq(new vi(0)))return{gcd:t,x:new vi(0),y:new vi(1)};var r=kr._extendedGCDLegacy(t.mod(e),e);return{gcd:r.gcd,x:r.y.sub(t.div(e).mul(r.x)),y:r.x}};kr._verifyLegacyShare=function(e){if(!e.id||!e.threshold||!e.shares||!e.bytes||typeof e.length!="number"||e.threshold<2||e.shares<e.threshold||!Array.isArray(e.bytes)||e.bytes.length!==e.length)return!1;for(var t=0;t<e.bytes.length;t++){var r=e.bytes[t];if(!r||!r.x||!r.y||r.x<1||r.x>e.shares||!/^[0-9a-fA-F]+$/.test(r.y))return!1}return!0};nN.exports=kr});var um=T((tue,oN)=>{"use strict";g();var vo=Ke(),G9=un(),W9=dn(),hh=G9.getN(),sm=hh.shrn(1);function Y9(e,t,r){if(!f.Buffer.isBuffer(e)||e.length!==32)throw new Error("Invalid message hash: must be 32-byte buffer");if(!t)return!1;let i=t;if(f.Buffer.isBuffer(t))try{i=gt().fromDER(t)}catch{return!1}if(!i||!i.r||!i.s)return!1;let n=vo.isBN(i.r)?i.r:new vo(i.r),o=vo.isBN(i.s)?i.s:new vo(i.s);if(n.isZero()||o.isZero()||n.gte(hh)||o.gte(hh)||o.gt(sm))return!1;let a=gt(),s=new a({r:n,s:o});return W9.verify(e,s,r)}function Z9(e){if(!e)return!1;let t=e;if(f.Buffer.isBuffer(e))try{t=gt().fromDER(e)}catch{return!1}return!t||!t.s?!1:(vo.isBN(t.s)?t.s:new vo(t.s)).lte(sm)}function $9(e){if(!e||!e.r||!e.s)throw new Error("Invalid signature object");let t=vo.isBN(e.r)?e.r:new vo(e.r),r=vo.isBN(e.s)?e.s:new vo(e.s),i=r;return r.gt(sm)&&(i=hh.sub(r)),{r:t,s:i}}oN.exports={smartVerify:Y9,isCanonical:Z9,canonicalize:$9,constants:{n:hh,nh:sm}}});var cm=T((iue,uN)=>{"use strict";g();var X9=Ke(),{secp256k1:jc}=(Ml(),en(Ll)),aN=jc.Point,J9=aN.Fn.ORDER;function D_(e){var t=e.toString(16);return t.length%2&&(t="0"+t),new X9(t,16)}function H_(e){return f.Buffer.isBuffer(e)?Uint8Array.from(e):e instanceof Uint8Array?e:Uint8Array.from(f.Buffer.from(e,"hex"))}function q_(e){this._p=e}q_.prototype.eq=function(e){var t=e&&e._p?e._p:e;return this._p.equals(t)};var sN={curve:{n:D_(J9)},keyFromPrivate:function(e,t){var r;f.Buffer.isBuffer(e)?r=e:e instanceof Uint8Array?r=f.Buffer.from(e):r=f.Buffer.from(e,t||"hex");var i=Uint8Array.from(r);return{_priv:i,getPublic:function(){return new q_(aN.fromBytes(jc.getPublicKey(i,!0)))}}},sign:function(e,t){var r=jc.sign(H_(e),t._priv,{lowS:!0,prehash:!1,format:"recovered"}),i=r[0],n=D_(BigInt("0x"+f.Buffer.from(r.subarray(1,33)).toString("hex"))),o=D_(BigInt("0x"+f.Buffer.from(r.subarray(33,65)).toString("hex")));return{r:n,s:o,recoveryParam:i}},verify:function(e,t,r){try{if(!t||typeof t!="object")return!1;var i=t.r,n=t.s;if(!i||!n||typeof i.cmp!="function"||typeof n.cmp!="function"||i.isZero()||n.isZero())return!1;var o=sN.curve.n;if(i.cmp(o)>=0||n.cmp(o)>=0)return!1;var a=f.Buffer.concat([i.toBuffer({size:32}),n.toBuffer({size:32})]),s=r._priv?jc.getPublicKey(r._priv,!0):r._p?r._p.toBytes(!0):r;return jc.verify(Uint8Array.from(a),H_(e),Uint8Array.from(s),{lowS:!1,prehash:!1})}catch{return!1}},recoverPubKey:function(e,t,r){var i=f.Buffer.concat([t.r.toBuffer({size:32}),t.s.toBuffer({size:32})]),n=jc.Signature.fromBytes(Uint8Array.from(i),"compact").addRecoveryBit(r);return new q_(n.recoverPublicKey(H_(e)))}};uN.exports=sN});var zc=T((oue,lN)=>{"use strict";g();var fm=at(),dh=Ke(),lm=lo(),Q9=Nn(),eW=Le(),cN=Ie(),tW=486604799,nt=function e(t){if(!(this instanceof e))return new e(t);var r=e._from(t);return this.version=r.version,this.prevHash=r.prevHash,this.merkleRoot=r.merkleRoot,this.time=r.time,this.timestamp=r.time,this.bits=r.bits,this.nonce=r.nonce,r.hash&&cN.checkState(this.hash===r.hash,"Argument object hash property does not match block hash."),this};nt._from=function(t){var r={};if(f.Buffer.isBuffer(t))r=nt._fromBufferReader(lm(t));else if(fm.isObject(t))r=nt._fromObject(t);else throw new TypeError("Unrecognized argument for BlockHeader");return r};nt._fromObject=function(t){cN.checkArgument(t,"data is required");var r=t.prevHash,i=t.merkleRoot;fm.isString(t.prevHash)&&(r=f.Buffer.from(t.prevHash,"hex").reverse()),fm.isString(t.merkleRoot)&&(i=f.Buffer.from(t.merkleRoot,"hex").reverse());var n={hash:t.hash,version:t.version,prevHash:r,merkleRoot:i,time:t.time,timestamp:t.time,bits:t.bits,nonce:t.nonce};return n};nt.fromObject=function(t){var r=nt._fromObject(t);return new nt(r)};nt.fromRawBlock=function(t){f.Buffer.isBuffer(t)||(t=f.Buffer.from(t,"binary"));var r=lm(t);r.pos=nt.Constants.START_OF_HEADER;var i=nt._fromBufferReader(r);return new nt(i)};nt.fromBuffer=function(t){var r=nt._fromBufferReader(lm(t));return new nt(r)};nt.fromString=function(t){var r=f.Buffer.from(t,"hex");return nt.fromBuffer(r)};nt._fromBufferReader=function(t){var r={};return r.version=t.readInt32LE(),r.prevHash=t.read(32),r.merkleRoot=t.read(32),r.time=t.readUInt32LE(),r.bits=t.readUInt32LE(),r.nonce=t.readUInt32LE(),r};nt.fromBufferReader=function(t){var r=nt._fromBufferReader(t);return new nt(r)};nt.prototype.toObject=nt.prototype.toJSON=function(){return{hash:this.hash,version:this.version,prevHash:f.Buffer.from(this.prevHash).reverse().toString("hex"),merkleRoot:f.Buffer.from(this.merkleRoot).reverse().toString("hex"),time:this.time,bits:this.bits,nonce:this.nonce}};nt.prototype.toBuffer=function(){return this.toBufferWriter().concat()};nt.prototype.toString=function(){return this.toBuffer().toString("hex")};nt.prototype.toBufferWriter=function(t){return t||(t=new Q9),t.writeInt32LE(this.version),t.write(this.prevHash),t.write(this.merkleRoot),t.writeUInt32LE(this.time),t.writeUInt32LE(this.bits),t.writeUInt32LE(this.nonce),t};nt.prototype.getTargetDifficulty=function(t){t=t||this.bits;for(var r=new dh(t&16777215),i=8*((t>>>24)-3);i-- >0;)r=r.mul(new dh(2));return r};nt.prototype.getDifficulty=function(){var t=this.getTargetDifficulty(tW).mul(new dh(Math.pow(10,8))),r=this.getTargetDifficulty(),i=t.div(r).toString(10),n=i.length-8;return i=i.slice(0,n)+"."+i.slice(n),parseFloat(i)};nt.prototype._getHash=function(){var t=this.toBuffer();return eW.sha256sha256(t)};var fN={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=lm(this._getHash()).readReverse().toString("hex")),this._id},set:fm.noop};Object.defineProperty(nt.prototype,"id",fN);Object.defineProperty(nt.prototype,"hash",fN);nt.prototype.validTimestamp=function(){var t=Math.round(new Date().getTime()/1e3);return!(this.time>t+nt.Constants.MAX_TIME_OFFSET)};nt.prototype.validProofOfWork=function(){var t=new dh(this.id,"hex"),r=this.getTargetDifficulty();return!(t.cmp(r)>0)};nt.prototype.inspect=function(){return"<BlockHeader "+this.id+">"};nt.Constants={START_OF_HEADER:8,MAX_TIME_OFFSET:7200,LARGEST_HASH:new dh("10000000000000000000000000000000000000000000000000000000000000000","hex")};lN.exports=nt});var vN=T((sue,mN)=>{"use strict";g();var F_=at(),dN=zc(),hN=Ke(),j_=lo(),rW=Nn(),iW=Le(),U_=zt(),pN=Ie();function qe(e){return this instanceof qe?(F_.extend(this,qe._from(e)),this):new qe(e)}qe.MAX_BLOCK_SIZE=128e6;qe._from=function(t){var r={};if(f.Buffer.isBuffer(t))r=qe._fromBufferReader(j_(t));else if(F_.isObject(t))r=qe._fromObject(t);else throw new TypeError("Unrecognized argument for Block");return r};qe._fromObject=function(t){var r=[];t.transactions.forEach(function(n){n instanceof U_?r.push(n):r.push(U_().fromObject(n))});var i={header:dN.fromObject(t.header),transactions:r};return i};qe.fromObject=function(t){var r=qe._fromObject(t);return new qe(r)};qe._fromBufferReader=function(t){var r={};pN.checkState(!t.finished(),"No block data received"),r.header=dN.fromBufferReader(t);var i=t.readVarintNum();r.transactions=[];for(var n=0;n<i;n++)r.transactions.push(U_().fromBufferReader(t));return r};qe.fromBufferReader=function(t){pN.checkArgument(t,"br is required");var r=qe._fromBufferReader(t);return new qe(r)};qe.fromBuffer=function(t){return qe.fromBufferReader(new j_(t))};qe.fromString=function(t){var r=f.Buffer.from(t,"hex");return qe.fromBuffer(r)};qe.fromRawBlock=function(t){f.Buffer.isBuffer(t)||(t=f.Buffer.from(t,"binary"));var r=j_(t);r.pos=qe.Values.START_OF_BLOCK;var i=qe._fromBufferReader(r);return new qe(i)};qe.prototype.toObject=qe.prototype.toJSON=function(){var t=[];return this.transactions.forEach(function(r){t.push(r.toObject())}),{header:this.header.toObject(),transactions:t}};qe.prototype.toBuffer=function(){return this.toBufferWriter().concat()};qe.prototype.toString=function(){return this.toBuffer().toString("hex")};qe.prototype.toBufferWriter=function(t){t||(t=new rW),t.write(this.header.toBuffer()),t.writeVarintNum(this.transactions.length);for(var r=0;r<this.transactions.length;r++)this.transactions[r].toBufferWriter(t);return t};qe.prototype.getTransactionHashes=function(){var t=[];if(this.transactions.length===0)return[qe.Values.NULL_HASH];for(var r=0;r<this.transactions.length;r++)t.push(this.transactions[r]._getHash());return t};qe.prototype.getMerkleTree=function(){for(var t=this.getTransactionHashes(),r=0,i=this.transactions.length;i>1;i=Math.floor((i+1)/2)){for(var n=0;n<i;n+=2){var o=Math.min(n+1,i-1),a=f.Buffer.concat([t[r+n],t[r+o]]);t.push(iW.sha256sha256(a))}r+=i}return t};qe.prototype.getMerkleRoot=function(){var t=this.getMerkleTree();return t[t.length-1]};qe.prototype.validMerkleRoot=function(){var t=new hN(this.header.merkleRoot.toString("hex"),"hex"),r=new hN(this.getMerkleRoot().toString("hex"),"hex");return t.cmp(r)===0};qe.prototype._getHash=function(){return this.header._getHash()};var gN={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=this.header.id),this._id},set:F_.noop};Object.defineProperty(qe.prototype,"id",gN);Object.defineProperty(qe.prototype,"hash",gN);qe.prototype.inspect=function(){return"<Block "+this.id+">"};qe.Values={START_OF_BLOCK:8,NULL_HASH:f.Buffer.from("0000000000000000000000000000000000000000000000000000000000000000","hex")};mN.exports=qe});var V_=T((cue,_N)=>{"use strict";g();var cu=at(),K_=zc(),bN=lo(),nW=Nn(),oW=Le(),yN=zt(),z_=pi(),fu=Ie(),aW=ts();function hm(e){return Array.isArray(e)?e.slice():e}function Qt(e){if(!(this instanceof Qt))return new Qt(e);var t={};if(f.Buffer.isBuffer(e))t=Qt._fromBufferReader(bN(e));else if(cu.isObject(e)){var r;e.header instanceof K_?r=e.header:r=K_.fromObject(e.header),t={header:r,numTransactions:e.numTransactions,hashes:hm(e.hashes),flags:hm(e.flags)}}else throw new TypeError("Unrecognized argument for MerkleBlock");return cu.extend(this,t),this._flagBitsUsed=0,this._hashesUsed=0,this}Qt.fromBuffer=function(t){return Qt.fromBufferReader(bN(t))};Qt.fromBufferReader=function(t){return new Qt(Qt._fromBufferReader(t))};Qt.prototype.toBuffer=function(){return this.toBufferWriter().concat()};Qt.prototype.toBufferWriter=function(t){t||(t=new nW),t.write(this.header.toBuffer()),t.writeUInt32LE(this.numTransactions),t.writeVarintNum(this.hashes.length);for(var r=0;r<this.hashes.length;r++)t.write(f.Buffer.from(this.hashes[r],"hex"));for(t.writeVarintNum(this.flags.length),r=0;r<this.flags.length;r++)t.writeUInt8(this.flags[r]);return t};Qt.prototype.toObject=Qt.prototype.toJSON=function(){return{header:this.header.toObject(),numTransactions:this.numTransactions,hashes:hm(this.hashes),flags:hm(this.flags)}};Qt.prototype.validMerkleTree=function(){if(fu.checkState(cu.isArray(this.flags),"MerkleBlock flags is not an array"),fu.checkState(cu.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions||this.flags.length*8<this.hashes.length)return!1;var t=this._calcTreeHeight(),r={hashesUsed:0,flagBitsUsed:0},i=this._traverseMerkleTree(t,0,r);return r.hashesUsed!==this.hashes.length?!1:i.equals(this.header.merkleRoot)};Qt.prototype.filterdTxsHash=aW.fn(function(){return this.filteredTxsHash()},{what:"MerkleBlock#filterdTxsHash",since:"9.1.0",removeIn:"10.0.0",use:"MerkleBlock#filteredTxsHash",why:"the name is a misspelling"});Qt.prototype.filteredTxsHash=function(){if(fu.checkState(cu.isArray(this.flags),"MerkleBlock flags is not an array"),fu.checkState(cu.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions)throw new z_.MerkleBlock.InvalidMerkleTree;if(this.flags.length*8<this.hashes.length)throw new z_.MerkleBlock.InvalidMerkleTree;if(this.hashes.length===1)return[];var t=this._calcTreeHeight(),r={hashesUsed:0,flagBitsUsed:0},i=this._traverseMerkleTree(t,0,r,!0);if(r.hashesUsed!==this.hashes.length)throw new z_.MerkleBlock.InvalidMerkleTree;return i};Qt.prototype._traverseMerkleTree=function(t,r,i,n){if(i=i||{},i.txs=i.txs||[],i.flagBitsUsed=i.flagBitsUsed||0,i.hashesUsed=i.hashesUsed||0,n=n||!1,i.flagBitsUsed>this.flags.length*8)return null;var o=this.flags[i.flagBitsUsed>>3]>>>(i.flagBitsUsed++&7)&1;if(t===0||!o){if(i.hashesUsed>=this.hashes.length)return null;var a=this.hashes[i.hashesUsed++];return t===0&&o&&i.txs.push(a),f.Buffer.from(a,"hex")}else{var s=this._traverseMerkleTree(t-1,r*2,i),u=s;return r*2+1<this._calcTreeWidth(t-1)&&(u=this._traverseMerkleTree(t-1,r*2+1,i)),n?i.txs:oW.sha256sha256(f.Buffer.concat([s,u]))}};Qt.prototype._calcTreeWidth=function(t){return this.numTransactions+(1<<t)-1>>t};Qt.prototype._calcTreeHeight=function(){for(var t=0;this._calcTreeWidth(t)>1;)t++;return t};Qt.prototype.hasTransaction=function(t){fu.checkArgument(!cu.isUndefined(t),"tx cannot be undefined"),fu.checkArgument(t instanceof yN||typeof t=="string",'Invalid tx given, tx must be a "string" or "Transaction"');var r=t;t instanceof yN&&(r=f.Buffer.from(t.id,"hex").reverse().toString("hex"));var i=[],n=this._calcTreeHeight();return this._traverseMerkleTree(n,0,{txs:i}),i.indexOf(r)!==-1};Qt._fromBufferReader=function(t){fu.checkState(!t.finished(),"No merkleblock data received");var r={};r.header=K_.fromBufferReader(t),r.numTransactions=t.readUInt32LE();var i=t.readVarintNum();r.hashes=[];for(var n=0;n<i;n++)r.hashes.push(t.read(32).toString("hex"));var o=t.readVarintNum();for(r.flags=[],n=0;n<o;n++)r.flags.push(t.readUInt8());return r};Qt.fromObject=function(t){return new Qt(t)};_N.exports=Qt});var wN=T((lue,dm)=>{g();dm.exports=vN();dm.exports.BlockHeader=zc();dm.exports.MerkleBlock=V_()});var $_=T((due,kN)=>{"use strict";g();var G_=zc(),gn=Ke(),SN=Le(),EN=/^[0-9a-fA-F]{64}$/,ON=G_.Constants.LARGEST_HASH,W_=486604799;function pm(e){var t=e>>>24,r=e&8388607,i;return t<=3?(r=r>>>8*(3-t),i=new gn(r)):i=new gn(r).shln(8*(t-3)),r===0||(e&8388608)!==0||t>34||r>255&&t>33||r>65535&&t>32?null:i}function Y_(e){return ON.div(e.add(new gn(1)))}function IN(e){if(e==null&&(e=W_),gn.isBN(e)){if(e.isNeg()||e.isZero()||e.cmp(ON)>=0)throw new Error("powLimit as a BN must be a target above zero and below 2^256");return e}var t;if(typeof e=="string"){if(!/^(0x)?[0-9a-fA-F]{1,8}$/.test(e))throw new Error("powLimit must be compact bits as hex, a uint32, or a BN target, not "+JSON.stringify(e));t=parseInt(e.replace(/^0x/,""),16)}else if(typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=4294967295)t=e;else throw new Error("powLimit must be compact bits as hex, a uint32, or a BN target, not "+JSON.stringify(e));var r=pm(t);if(!r)throw new Error("powLimit is not a usable compact target: "+e);return r}function AN(e){var t=typeof e=="number"?uW(e):String(e);if(/^[0-9]+(\.[0-9]+)?[eE][+]?[0-9]+$/.test(t)&&(t=sW(t)),!/^[0-9]+(\.[0-9]+)?$/.test(t))throw new Error("minDifficulty must be a non-negative decimal number, not "+JSON.stringify(e));var r=t.split("."),i=r[1]||"",n=new gn(r[0]+i,10).mul(Y_(pm(W_)));return i.length?n.div(new gn(10).pow(new gn(i.length))):n}function sW(e){var t=e.split(/[eE]/),r=parseInt(t[1].replace("+",""),10),i=t[0].split("."),n=i[0],o=i[1]||"";return r>=o.length?n+o+new Array(r-o.length+1).join("0"):n+o.slice(0,r)+"."+o.slice(r)}function uW(e){if(!Number.isFinite(e)||e<0)throw new Error("minDifficulty must be a non-negative finite number, not "+String(e));return/e/i.test(String(e))?e.toLocaleString("en-US",{useGrouping:!1,maximumFractionDigits:20}):String(e)}function cW(e){if(gn.isBN(e)){if(e.isNeg())throw new Error("minWork as a BN must not be negative");return e}if(typeof e=="number"){if(!Number.isSafeInteger(e)||e<0)throw new Error("minWork as a number must be a non-negative safe integer; for larger floors pass a decimal string or a BN, not "+e);return new gn(String(e),10)}if(typeof e=="string"&&/^[0-9]+$/.test(e))return new gn(e,10);throw new Error("minWork must be a non-negative integer, a decimal string or a BN, not "+JSON.stringify(e))}function TN(e){var t;if(f.Buffer.isBuffer(e))t=e;else if(typeof e=="string"){if(!/^[0-9a-fA-F]{160}$/.test(e))throw new Error("a block header as hex must be exactly 160 hex characters");t=f.Buffer.from(e,"hex")}else if(e instanceof G_)t=e.toBuffer();else if(e&&typeof e.toBuffer=="function")t=e.toBuffer();else throw new Error("a block header must be 80 bytes, as hex, a Buffer or a BlockHeader; an object stating a merkleRoot is not a header and cannot be checked");if(!f.Buffer.isBuffer(t)||t.length!==80)throw new Error("a block header must be exactly 80 bytes, not "+(f.Buffer.isBuffer(t)?t.length:typeof t));return G_.fromBuffer(t)}function PN(e){return f.Buffer.from(e).reverse()}function xN(e){return PN(f.Buffer.from(e,"hex"))}function RN(e){return PN(e).toString("hex")}function Z_(e,t,r){if(!EN.test(String(e)))throw new Error("txid must be 32-byte hex");if(!Number.isInteger(t)||t<0)throw new Error("index must be a non-negative integer");r=r||[];for(var i=xN(e),n=t,o=0;o<r.length;o++){var a=r[o],s;if(a==="*"||a===""||a==null)s=i;else{if(!EN.test(String(a)))throw new Error("proof node "+o+' must be 32-byte hex or "*"');s=xN(a)}i=n&1?SN.sha256sha256(f.Buffer.concat([s,i])):SN.sha256sha256(f.Buffer.concat([i,s])),n=Math.floor(n/2)}return RN(i)}function fW(e){if(!e||!e.merkleRoot)throw new Error("proof.merkleRoot is required");var t=Z_(e.txid,e.index,e.nodes);return t.toLowerCase()===String(e.merkleRoot).toLowerCase()}function lW(e){var t=TN(e.header),r=RN(t.merkleRoot),i=Z_(e.txid,e.index,e.nodes),n=i.toLowerCase()===r.toLowerCase(),o=e.requirePow!==!1,a=pm(t.bits),s=a!==null&&new gn(t.id,"hex").cmp(a)<=0,u=a===null?new gn(0):Y_(a),c=a!==null&&(!o||a.cmp(IN(e.powLimit))<=0),l=null;if(o){if(e.minWork!==void 0&&e.minWork!==null&&e.minDifficulty!==void 0&&e.minDifficulty!==null)throw new Error("pass minWork (hashes) or minDifficulty (difficulty), not both");e.minWork!==void 0&&e.minWork!==null?l=cW(e.minWork):e.minDifficulty!==void 0&&e.minDifficulty!==null&&(l=AN(e.minDifficulty))}var p=l===null||u.cmp(l)>=0;return{valid:n&&(!o||s&&c&&p),rootMatches:n,powValid:s,targetAllowed:c,workSufficient:p,work:u.toString(10),merkleRoot:i,blockHash:t.id}}kN.exports={POW_LIMIT_BITS:W_,targetFromBits:pm,targetLimit:IN,workFromTarget:Y_,workFromDifficulty:AN,headerSnapshot:TN,merkleRootFromBranch:Z_,verifyMerkleProof:fW,verifyTxInclusion:lW}});var NN=T((gue,BN)=>{"use strict";g();var hW=Ke(),X_=$_();function dW(e){return f.Buffer.from(e).reverse()}function pW(e){return X_.headerSnapshot(e)}function gW(e,t){if(t=t||{},!Array.isArray(e)||e.length===0)throw new Error("headers must be a non-empty array");for(var r=e.map(pW),i=t.requirePow!==!1,n=0,o=i?X_.targetLimit(t.powLimit):null,a=0;a<r.length;a++){var s=X_.targetFromBits(r[a].bits);if(i){if(s===null||new hW(r[a].id,"hex").cmp(s)>0)return{valid:!1,reason:"invalid proof-of-work at index "+a,count:r.length};if(s.cmp(o)>0)return{valid:!1,reason:"target easier than the proof-of-work limit at index "+a,count:r.length}}if(n+=r[a].getDifficulty(),a>0){var u=dW(r[a].prevHash).toString("hex").toLowerCase()===r[a-1].id.toLowerCase();if(!u)return{valid:!1,reason:"broken link at index "+a,count:r.length}}}var c=r[0].id,l=r[r.length-1].id;if(t.trustedHash){var p=String(t.trustedHash).toLowerCase();if(p!==l.toLowerCase()&&p!==c.toLowerCase())return{valid:!1,reason:"chain is not anchored at the trusted hash",count:r.length,anchorHash:c,tipHash:l}}return{valid:!0,count:r.length,anchorHash:c,tipHash:l,work:n}}BN.exports={verifyHeaderChain:gW}});var mm=T((vue,CN)=>{"use strict";g();var gm=$_(),mW=NN();CN.exports={POW_LIMIT_BITS:gm.POW_LIMIT_BITS,merkleRootFromBranch:gm.merkleRootFromBranch,verifyMerkleProof:gm.verifyMerkleProof,verifyTxInclusion:gm.verifyTxInclusion,verifyHeaderChain:mW.verifyHeaderChain}});var Q_=T((bue,LN)=>{"use strict";g();var vW=Le(),lu=Ie(),ti={};ti.PROTOCOL_PREFIX="NotaryHash/1.0";ti.VERSION=1;ti.lp=function(e){var t=f.Buffer.isBuffer(e)?e:f.Buffer.from(String(e),"utf8"),r=f.Buffer.alloc(4);return r.writeUInt32BE(t.length,0),f.Buffer.concat([r,t])};function J_(e,t){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e+". Certificates store this field as hex; decode it with Buffer.from(hex, 'hex') before hashing, or the length prefix covers the wrong number of bytes.");return e}ti.u64be=function(e){lu.checkArgument(typeof e=="number"&&isFinite(e),"createdAtUnix must be a finite number"),lu.checkArgument(Number.isInteger(e),"createdAtUnix must be whole seconds, not milliseconds or a fraction"),lu.checkArgument(e>=0,"createdAtUnix must not be negative");var t=f.Buffer.alloc(8);return t.writeBigUInt64BE(BigInt(e),0),t};ti.toUnixSeconds=function(e){var t=e instanceof Date?e:new Date(e);return lu.checkArgument(!isNaN(t.getTime()),"createdAt is not a valid date: "+e),Math.floor(t.getTime()/1e3)};ti.canonicalBytes=function(e){return lu.checkArgument(e&&typeof e=="object","fields object is required"),lu.checkArgument(typeof e.algorithm=="string"&&e.algorithm.length>0,"algorithm must be a non-empty string"),lu.checkArgument(typeof e.hashAlgorithm=="string"&&e.hashAlgorithm.length>0,"hashAlgorithm must be a non-empty string"),f.Buffer.concat([ti.lp(ti.PROTOCOL_PREFIX),f.Buffer.from([ti.VERSION]),ti.lp(e.algorithm),ti.lp(e.hashAlgorithm),ti.lp(J_(e.payloadHash,"payloadHash")),ti.lp(J_(e.publicKey,"publicKey")),ti.lp(J_(e.signature,"signature")),ti.u64be(e.createdAtUnix)])};ti.proofHash=function(e){return vW.sha256(ti.canonicalBytes(e))};LN.exports=ti});var ew=T((wue,UN)=>{"use strict";g();var vm=Kg(),mn=Pr(),MN=Le(),Kc=Ie(),Wt={};Wt.PREFIX="NOTARYHASH";Wt.VERSION=1;Wt.MODE={FULL:0,HYBRID:1,BATCH:2};var DN={full:Wt.MODE.FULL,hybrid:Wt.MODE.HYBRID,batch:Wt.MODE.BATCH};function HN(e){return f.Buffer.from([e])}function yW(e){var t=f.Buffer.alloc(4);return t.writeUInt32BE(e,0),t}function yo(e,t,r){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e+". Decode hex with Buffer.from(hex, 'hex') first.");if(r!=null&&e.length!==r)throw new Error(t+" must be exactly "+r+" bytes, got "+e.length);return e}function qN(e,t){if(e.buf&&e.buf.length===1)return e.buf[0];if(e.opcodenum===mn.OP_0)return 0;if(e.opcodenum>=mn.OP_1&&e.opcodenum<=mn.OP_16)return e.opcodenum-mn.OP_1+1;throw new Error(t+" must be a single byte at this push")}function qn(e,t){if(!e||!e.buf)throw new Error(t+" push is missing or carries no data");return e.buf}Wt.build=function(e){Kc.checkArgument(e&&typeof e=="object","record is required");var t=typeof e.mode=="string"&&Object.prototype.hasOwnProperty.call(DN,e.mode)?DN[e.mode]:e.mode;Kc.checkArgument(t===Wt.MODE.FULL||t===Wt.MODE.HYBRID||t===Wt.MODE.BATCH,"mode must be 0 (full), 1 (hybrid) or 2 (batch)");var r=new vm().add(mn.OP_FALSE).add(mn.OP_RETURN).add(f.Buffer.from(Wt.PREFIX,"ascii")).add(HN(Wt.VERSION)).add(HN(t));if(t===Wt.MODE.BATCH)return Kc.checkArgument(typeof e.leafCount=="number"&&Number.isInteger(e.leafCount)&&e.leafCount>=0,"leafCount must be a non-negative integer"),r.add(yo(e.merkleRoot,"merkleRoot",32)),r.add(yW(e.leafCount)),r;Kc.checkArgument(typeof e.algorithm=="string"&&e.algorithm.length>0,"algorithm must be a non-empty string"),Kc.checkArgument(typeof e.hashAlgorithm=="string"&&e.hashAlgorithm.length>0,"hashAlgorithm must be a non-empty string"),r.add(f.Buffer.from(e.algorithm,"utf8")),r.add(f.Buffer.from(e.hashAlgorithm,"utf8")),r.add(yo(e.payloadHash,"payloadHash",32)),r.add(yo(e.proofHash,"proofHash",32));var i=yo(e.publicKey,"publicKey"),n=yo(e.signature,"signature");return t===Wt.MODE.HYBRID?(r.add(MN.sha256(i)),r.add(MN.sha256(n))):(r.add(i),r.add(n)),r};Wt.parse=function(e){typeof e=="string"&&(e=vm.fromHex(e)),Kc.checkArgument(e instanceof vm,"script must be a Script or hex string");var t=e.chunks;if(t.length<5)throw new Error("not a NotaryHash record: too few pushes");if(t[0].opcodenum!==mn.OP_FALSE&&t[0].opcodenum!==mn.OP_0)throw new Error("not a NotaryHash record: does not start with OP_FALSE");if(t[1].opcodenum!==mn.OP_RETURN)throw new Error("not a NotaryHash record: no OP_RETURN");var r=qn(t[2],"prefix");if(r.toString("ascii")!==Wt.PREFIX)throw new Error("not a NotaryHash record: prefix is "+JSON.stringify(r.toString("ascii")));var i=qN(t[3],"version");if(i!==Wt.VERSION)throw new Error("unsupported NotaryHash version: "+i);var n=qN(t[4],"mode");if(n===Wt.MODE.BATCH){if(t.length!==7)throw new Error("batch record must have exactly 7 pushes, got "+t.length);var o=qn(t[6],"leafCount");if(o.length!==4)throw new Error("leafCount must be 4 bytes (u32be), got "+o.length);return{mode:n,version:i,merkleRoot:yo(qn(t[5],"merkleRoot"),"merkleRoot",32),leafCount:o.readUInt32BE(0)}}if(n!==Wt.MODE.FULL&&n!==Wt.MODE.HYBRID)throw new Error("unknown NotaryHash mode: "+n);if(t.length!==11)throw new Error("full/hybrid record must have exactly 11 pushes, got "+t.length);var a={mode:n,version:i,algorithm:qn(t[5],"algorithm").toString("utf8"),hashAlgorithm:qn(t[6],"hashAlgorithm").toString("utf8"),payloadHash:yo(qn(t[7],"payloadHash"),"payloadHash",32),proofHash:yo(qn(t[8],"proofHash"),"proofHash",32)};return n===Wt.MODE.HYBRID?(a.publicKeyHash=yo(qn(t[9],"publicKeyHash"),"publicKeyHash",32),a.signatureHash=yo(qn(t[10],"signatureHash"),"signatureHash",32)):(a.publicKey=qn(t[9],"publicKey"),a.signature=qn(t[10],"signature")),a};Wt.isNotaryHash=function(e){try{typeof e=="string"&&(e=vm.fromHex(e));var t=e.chunks;return t.length>=5&&(t[0].opcodenum===mn.OP_FALSE||t[0].opcodenum===mn.OP_0)&&t[1].opcodenum===mn.OP_RETURN&&!!t[2].buf&&t[2].buf.toString("ascii")===Wt.PREFIX}catch{return!1}};UN.exports=Wt});var Vc=T((Eue,jN)=>{"use strict";g();var FN={};FN.stringify=function(e){return tw(e,[])};function tw(e,t){if(e===null)return"null";var r=typeof e;if(r==="boolean")return e?"true":"false";if(r==="number"){if(!isFinite(e))throw new Error("Cannot canonicalize non-finite number: "+e);return JSON.stringify(e)}if(r==="string")return JSON.stringify(e);if(r==="bigint")throw new Error("Cannot canonicalize bigint; represent it as a string");if(Array.isArray(e)||r==="object"){if(t.indexOf(e)!==-1)throw new Error("Cannot canonicalize a circular structure");t.push(e);var i;if(Array.isArray(e))i="["+e.map(function(o){return o===void 0?"null":tw(o,t)}).join(",")+"]";else{var n=Object.keys(e).filter(function(o){return e[o]!==void 0&&typeof e[o]!="function"}).sort();i="{"+n.map(function(o){return JSON.stringify(o)+":"+tw(e[o],t)}).join(",")+"}"}return t.pop(),i}throw new Error("Cannot canonicalize value of type: "+r)}jN.exports=FN});var iw=T((Oue,zN)=>{"use strict";g();var rw=Le(),Li=Ie(),Ue={};Ue.LEAF_PREFIX=0;Ue.NODE_PREFIX=1;Ue.hashLeaf=function(e){return Li.checkArgument(f.Buffer.isBuffer(e),"leaf data must be a Buffer"),rw.sha256(f.Buffer.concat([f.Buffer.from([Ue.LEAF_PREFIX]),e]))};Ue.hashNode=function(e,t){return rw.sha256(f.Buffer.concat([f.Buffer.from([Ue.NODE_PREFIX]),e,t]))};Ue.largestPowerOfTwoBelow=function(e){Li.checkArgument(Number.isInteger(e)&&e>=2,"n must be an integer >= 2");for(var t=1;t*2<e;)t*=2;return t};Ue.root=function(e){if(Li.checkArgument(Array.isArray(e),"leaves must be an array"),e.length===0)return rw.sha256(f.Buffer.alloc(0));if(e.length===1)return Ue.hashLeaf(e[0]);var t=Ue.largestPowerOfTwoBelow(e.length);return Ue.hashNode(Ue.root(e.slice(0,t)),Ue.root(e.slice(t)))};Ue.path=function(e,t){if(Li.checkArgument(Array.isArray(e)&&e.length>0,"leaves must be a non-empty array"),Li.checkArgument(Number.isInteger(t)&&t>=0&&t<e.length,"index must be within the leaves"),e.length===1)return[];var r=Ue.largestPowerOfTwoBelow(e.length);return t<r?Ue.path(e.slice(0,r),t).concat([Ue.root(e.slice(r))]):Ue.path(e.slice(r),t-r).concat([Ue.root(e.slice(0,r))])};Ue.foldPath=function(e,t,r,i){Li.checkArgument(f.Buffer.isBuffer(e),"leafData must be a Buffer"),Li.checkArgument(Number.isInteger(t)&&t>=0,"index must be a non-negative integer"),Li.checkArgument(Number.isInteger(r)&&r>0,"leafCount must be a positive integer"),Li.checkArgument(t<r,"index must be less than leafCount"),Li.checkArgument(Array.isArray(i),"path must be an array");for(var n=Ue.hashLeaf(e),o=t,a=r-1,s=0;s<i.length;s++){if(a===0)throw new Error("audit path is too long for a tree of "+r+" leaves");if((o&1)===1||o===a)for(n=Ue.hashNode(i[s],n);(o&1)===0&&o!==0;)o>>=1,a>>=1;else n=Ue.hashNode(n,i[s]);o>>=1,a>>=1}if(a!==0)throw new Error("audit path is too short for a tree of "+r+" leaves");return n};Ue.verifyInclusion=function(e,t,r,i,n){try{return f.Buffer.isBuffer(n)?Ue.foldPath(e,t,r,i).equals(n):!1}catch{return!1}};Ue.pathSides=function(e,t){if(Li.checkArgument(Number.isInteger(t)&&t>0,"leafCount must be a positive integer"),Li.checkArgument(Number.isInteger(e)&&e>=0&&e<t,"index must be within the tree"),t===1)return[];var r=Ue.largestPowerOfTwoBelow(t);return e<r?Ue.pathSides(e,r).concat(["right"]):Ue.pathSides(e-r,t-r).concat(["left"])};Ue.auditPath=function(e,t){var r=Ue.pathSides(t,e.length);return Ue.path(e,t).map(function(i,n){return{hash:i,side:r[n]}})};function bW(e,t){var r=f.Buffer.isBuffer(e)?e:null;if(!r){if(typeof e!="string")throw new Error("audit path node "+t+" has no hash");var i=e.slice(0,2)==="0x"?e.slice(2):e;if(!/^[0-9a-fA-F]*$/.test(i))throw new Error("audit path node "+t+" is not hex");r=f.Buffer.from(i,"hex")}if(r.length!==32)throw new Error("audit path node "+t+" is not 32 bytes");return r}Ue.rootFromPath=function(e,t){Li.checkArgument(f.Buffer.isBuffer(e),"leafData must be a Buffer"),Li.checkArgument(Array.isArray(t),"path must be an array");for(var r=Ue.hashLeaf(e),i=0;i<t.length;i++){var n=t[i];if(!n||typeof n!="object")throw new Error("audit path node "+i+" is not an object");var o=bW(n.hash,i);if(n.side==="left")r=Ue.hashNode(o,r);else if(n.side==="right")r=Ue.hashNode(r,o);else throw new Error("audit path node "+i+" has side "+JSON.stringify(n.side))}return r};Ue.verifyAuditPath=function(e,t,r){try{return f.Buffer.isBuffer(r)?Ue.rootFromPath(e,t).equals(r):!1}catch{return!1}};zN.exports=Ue});var JN=T((Aue,XN)=>{"use strict";g();var _W=Vc(),Gc=Q_(),KN=iw(),ph=ew(),wW=ts(),zr=Ie(),de={};de.PROTOCOL="NotaryHash";de.VERSION=1;de.REFERENCE_VERSION="1.0";de.FORMAT={REFERENCE:"reference",LEGACY:"legacy"};de.MODE={FULL:"full",HYBRID:"hybrid"};de.ENCODING={HEX:"hex",BASE64:"base64",RAW:"raw",DER:"der"};de.ANCHOR_TYPE={DIRECT:"direct",BATCH:"batch"};de.DEFAULT_NETWORK="bsv-mainnet";var sw=1,VN={0:"full",1:"hybrid",2:"full"},YN=/^[0-9a-fA-F]*$/,SW=/^[A-Za-z0-9+/_-]*={0,2}$/;de.decodeBytes=function(e,t,r){if(r=r||"value",typeof e!="string")throw new Error(r+" must be a string");if(t===de.ENCODING.HEX){var i=e.slice(0,2)==="0x"?e.slice(2):e;if(i.length%2!==0||!YN.test(i))throw new Error(r+" must be a hex string");return f.Buffer.from(i,"hex")}if(t===de.ENCODING.BASE64){if(!SW.test(e))throw new Error(r+" must be base64");var n=e.replace(/=+$/,"");if(n.length!==e.length&&e.length%4!==0||n.length%4===1)throw new Error(r+" is not a valid base64 length");return f.Buffer.from(e,"base64")}throw new Error('encoding must be "hex" or "base64", not '+JSON.stringify(t))};function nw(e,t,r){if(!f.Buffer.isBuffer(e))throw new Error(r+" must be a Buffer of raw bytes, not "+typeof e);return t===de.ENCODING.BASE64?e.toString("base64"):e.toString("hex")}function aw(e,t){var r=f.Buffer.isBuffer(e)?e:de.decodeBytes(e,"hex",t);if(r.length!==32)throw new Error(t+" must be 32 bytes");return r.toString("hex")}function EW(e){if(e===de.MODE.FULL||e===de.MODE.HYBRID)return{mode:e,batch:!1};if(e===ph.MODE.FULL)return{mode:"full",batch:!1};if(e===ph.MODE.HYBRID)return{mode:"hybrid",batch:!1};if(e===ph.MODE.BATCH)return{mode:"full",batch:!0};throw e==="batch"?new Error('batch is an anchor type, not a mode: pass mode "full" or "hybrid" with a merkle proof'):new Error('mode is required: "full" or "hybrid"')}function xW(e){if(e===void 0)return de.ENCODING.HEX;if(e===de.ENCODING.HEX||e===de.ENCODING.BASE64)return e;if(e===de.ENCODING.RAW||e===de.ENCODING.DER)return de.ENCODING.HEX;throw new Error('encoding must be "hex" or "base64"')}function ZN(e,t,r){if(!Array.isArray(e))throw new Error("merkle.path must be an array");var i=e.length>0&&e.every(function(u){return u&&typeof u=="object"&&!f.Buffer.isBuffer(u)&&"side"in u});if(i||e.length===0){var n=e.map(function(u,c){if(u.side!=="left"&&u.side!=="right")throw new Error("merkle.path["+c+'].side must be "left" or "right"');return{hash:aw(u.hash,"merkle.path["+c+"].hash"),side:u.side}});if(Number.isInteger(t)&&Number.isInteger(r)&&r>0&&t>=0&&t<r){var o=KN.pathSides(t,r);if(o.length!==n.length)throw new Error("merkle.leafIndex "+t+" in a tree of "+r+" leaves needs "+o.length+" path nodes; the path has "+n.length);for(var a=0;a<o.length;a++)if(o[a]!==n[a].side)throw new Error("merkle.leafIndex "+t+" disagrees with the path: node "+a+' is marked "'+n[a].side+'" but leaf '+t+" of "+r+' requires "'+o[a]+'"')}return n}var s=KN.pathSides(t,r);if(s.length!==e.length)throw new Error("merkle.path has "+e.length+" nodes; a tree of "+r+" leaves needs "+s.length+" for leaf "+t);return e.map(function(u,c){return{hash:aw(u,"merkle.path["+c+"]"),side:s[c]}})}function OW(e){return zr.checkArgument(e&&typeof e=="object","batch certificates require a merkle inclusion proof"),zr.checkArgument(Number.isInteger(e.leafIndex)&&e.leafIndex>=0,"merkle.leafIndex must be a non-negative integer"),zr.checkArgument(Number.isInteger(e.leafCount)&&e.leafCount>e.leafIndex,"merkle.leafCount must be an integer greater than leafIndex"),{root:aw(e.root,"merkle.root"),leafIndex:e.leafIndex,leafCount:e.leafCount,path:ZN(e.path,e.leafIndex,e.leafCount)}}function IW(e,t){zr.checkArgument(e&&typeof e=="object","anchor is required"),zr.checkArgument(typeof e.txid=="string","anchor.txid must be a string");var r=e.type||(t?de.ANCHOR_TYPE.BATCH:de.ANCHOR_TYPE.DIRECT);return zr.checkArgument(r===de.ANCHOR_TYPE.DIRECT||r===de.ANCHOR_TYPE.BATCH,'anchor.type must be "direct" or "batch"'),zr.checkArgument(r===de.ANCHOR_TYPE.BATCH===t,'anchor.type is "batch" exactly when a merkle inclusion proof is given'),{type:r,network:e.network||de.DEFAULT_NETWORK,txid:e.txid,vout:e.vout===void 0?0:e.vout,blockHeight:e.blockHeight===void 0?null:e.blockHeight,blockTime:e.blockTime===void 0?null:e.blockTime}}function AW(e){var t=EW(e.mode),r=t.batch||e.merkle!==void 0||!!(e.anchor&&e.anchor.type===de.ANCHOR_TYPE.BATCH);r&&zr.checkArgument(e.merkle&&typeof e.merkle=="object","batch certificates require a merkle inclusion proof");var i=xW(e.encoding),n=IW(e.anchor,r),o=e.createdAtUnix!==void 0?e.createdAtUnix:Gc.toUnixSeconds(e.createdAt===void 0?new Date:e.createdAt);zr.checkArgument(Number.isInteger(o)&&o>=0,"createdAtUnix must be a non-negative whole number of seconds");var a=Gc.proofHash({algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:e.payloadHash,publicKey:e.publicKey,signature:e.signature,createdAtUnix:o}),s={protocol:de.PROTOCOL,version:de.REFERENCE_VERSION,mode:t.mode,algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:nw(e.payloadHash,"hex","payloadHash"),publicKey:nw(e.publicKey,i,"publicKey"),signature:nw(e.signature,i,"signature"),encoding:i,proofHash:a.toString("hex"),createdAt:new Date(o*1e3).toISOString(),anchor:n};return r&&(s.merkle=OW(e.merkle)),s}function ow(e,t){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e);return e.toString("hex")}function GN(e){zr.checkArgument(e.anchor&&typeof e.anchor=="object","anchor is required"),zr.checkArgument(typeof e.anchor.txid=="string","anchor.txid must be a string");var t=e.encoding||de.ENCODING.RAW;zr.checkArgument(t===de.ENCODING.RAW||t===de.ENCODING.DER,'encoding must be "raw" or "der"');var r=e.createdAt?e.createdAt instanceof Date?e.createdAt.toISOString():e.createdAt:new Date().toISOString(),i=Gc.toUnixSeconds(r),n=Gc.proofHash({algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:e.payloadHash,publicKey:e.publicKey,signature:e.signature,createdAtUnix:i}),o={protocol:de.PROTOCOL,version:sw,mode:e.mode,algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:ow(e.payloadHash,"payloadHash"),publicKey:ow(e.publicKey,"publicKey"),signature:ow(e.signature,"signature"),encoding:t,proofHash:n.toString("hex"),createdAt:r,anchor:{txid:e.anchor.txid,blockHeight:e.anchor.blockHeight}};return e.mode===ph.MODE.BATCH&&(zr.checkArgument(e.merkle&&typeof e.merkle=="object","batch certificates require a merkle inclusion proof"),o.merkle={root:e.merkle.root,leafIndex:e.merkle.leafIndex,leafCount:e.merkle.leafCount,path:e.merkle.path}),o}de.build=function(e){zr.checkArgument(e&&typeof e=="object","params is required");var t=e.format;return t===void 0?(wW({what:"NotaryHash.Certificate.build() without a format",since:"9.9.0",removeIn:"10.0.0",use:"NotaryHash.Certificate.build({ ...params, format: 'reference' })",why:"the default format is this library's own, which the BRC-220 reference implementation cannot verify"}),GN(e)):(zr.checkArgument(t===de.FORMAT.REFERENCE||t===de.FORMAT.LEGACY,"Unknown certificate format: "+t+". Expected 'reference' or 'legacy' (NotaryHash.Certificate.FORMAT)"),t===de.FORMAT.REFERENCE?AW(e):GN(e))};de.isLegacy=function(e){return!!e&&typeof e=="object"&&(e.version===sw||e.version===void 0&&typeof e.mode=="number")};de.normalize=function(e){if(!de.isLegacy(e))return e;var t=e.mode===ph.MODE.BATCH,r=Object.assign({},e);r.version=e.version===sw?de.REFERENCE_VERSION:e.version,r.mode=VN[e.mode]!==void 0?VN[e.mode]:e.mode,(e.encoding===de.ENCODING.RAW||e.encoding===de.ENCODING.DER)&&(r.encoding=de.ENCODING.HEX);var i=e.anchor&&typeof e.anchor=="object"?e.anchor:{};if(r.anchor={type:t?de.ANCHOR_TYPE.BATCH:de.ANCHOR_TYPE.DIRECT,network:i.network||de.DEFAULT_NETWORK,txid:i.txid,vout:i.vout===void 0?0:i.vout,blockHeight:i.blockHeight===void 0?null:i.blockHeight,blockTime:i.blockTime===void 0?null:i.blockTime},e.merkle&&typeof e.merkle=="object"){var n=e.merkle,o=n.path;try{o=ZN(n.path,n.leafIndex,n.leafCount)}catch{}r.merkle={root:n.root,leafIndex:n.leafIndex,leafCount:n.leafCount,path:o}}return r};function $N(e){return{algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:de.decodeBytes(e.payloadHash,"hex","payloadHash"),publicKey:de.decodeBytes(e.publicKey,e.encoding,"publicKey"),signature:de.decodeBytes(e.signature,e.encoding,"signature")}}de.toSignatureInput=function(e){return zr.checkArgument(e&&typeof e=="object","certificate is required"),$N(de.normalize(e))};de.toProofInput=function(e){zr.checkArgument(e&&typeof e=="object","certificate is required");var t=de.normalize(e),r=$N(t);return r.createdAtUnix=Gc.toUnixSeconds(t.createdAt),r};de.recomputeProofHash=function(e){return Gc.proofHash(de.toProofInput(e))};de.proofHashMatches=function(e){try{if(!e||typeof e.proofHash!="string")return!1;var t=de.decodeBytes(e.proofHash,"hex","proofHash");return t.length!==32?!1:de.recomputeProofHash(e).equals(t)}catch{return!1}};de.REQUIRED_FIELDS=["protocol","version","mode","algorithm","hashAlgorithm","payloadHash","publicKey","signature","encoding","proofHash","createdAt","anchor"];function ym(e,t,r){if(e!==void 0){var i=typeof e=="string"&&e.slice(0,2)==="0x"?e.slice(2):e;typeof i!="string"||!YN.test(i)||i.length%2!==0?r.push(t+" must be a hex string"):i.length!==64&&r.push(t+" must be 32 bytes (64 hex chars)")}}function WN(e){return e===null||Number.isInteger(e)}de.validateShape=function(e){if(!e||typeof e!="object")return["certificate must be an object"];var t=de.normalize(e),r=[];if(de.REQUIRED_FIELDS.forEach(function(s){t[s]===void 0&&r.push("missing required field: "+s)}),typeof t.createdAt=="string"&&!de.isLegacy(e)){var i=null,n=new Date(t.createdAt);isNaN(n.getTime())||(i=new Date(Math.floor(n.getTime()/1e3)*1e3).toISOString()),i===null?r.push("createdAt is not a date: "+t.createdAt):t.createdAt!==i&&r.push("createdAt must be the canonical rendering of its second: expected "+i+", got "+t.createdAt)}if(t.protocol!==void 0&&t.protocol!==de.PROTOCOL&&r.push('protocol must be "'+de.PROTOCOL+'"'),t.version!==void 0&&t.version!==de.REFERENCE_VERSION&&r.push("unsupported version: "+JSON.stringify(t.version)),t.mode!==void 0&&t.mode!==de.MODE.FULL&&t.mode!==de.MODE.HYBRID&&r.push('mode must be "full" or "hybrid"'),["algorithm","hashAlgorithm"].forEach(function(s){t[s]!==void 0&&(typeof t[s]!="string"||t[s].length===0)&&r.push(s+" must be a non-empty string")}),ym(t.payloadHash,"payloadHash",r),ym(t.proofHash,"proofHash",r),t.encoding!==void 0&&(t.encoding!==de.ENCODING.HEX&&t.encoding!==de.ENCODING.BASE64?r.push('encoding must be "hex" or "base64"'):["publicKey","signature"].forEach(function(s){if(t[s]!==void 0)try{de.decodeBytes(t[s],t.encoding,s).length===0&&r.push(s+" must not be empty")}catch{r.push(s+" is not valid "+t.encoding)}})),t.createdAt!==void 0&&(typeof t.createdAt!="string"||isNaN(new Date(t.createdAt).getTime()))&&r.push("createdAt must be an ISO 8601 date"),t.anchor!==void 0){var o=t.anchor;!o||typeof o!="object"?r.push("anchor must be an object"):(o.type!==de.ANCHOR_TYPE.DIRECT&&o.type!==de.ANCHOR_TYPE.BATCH&&r.push('anchor.type must be "direct" or "batch"'),(typeof o.txid!="string"||!/^[0-9a-fA-F]{64}$/.test(o.txid))&&r.push("anchor.txid must be a 32-byte hex string"),o.vout!==void 0&&!(Number.isInteger(o.vout)&&o.vout>=0)&&r.push("anchor.vout must be a non-negative integer"),o.blockHeight!==void 0&&!WN(o.blockHeight)&&r.push("anchor.blockHeight must be an integer or null"),o.blockTime!==void 0&&!WN(o.blockTime)&&r.push("anchor.blockTime must be an integer or null"),o.type===de.ANCHOR_TYPE.BATCH&&t.merkle===void 0&&r.push("batch certificates require a merkle inclusion proof"))}if(t.merkle!==void 0){var a=t.merkle;!a||typeof a!="object"?r.push("merkle must be an object"):(ym(a.root,"merkle.root",r),Number.isInteger(a.leafIndex)&&a.leafIndex>=0||r.push("merkle.leafIndex must be a non-negative integer"),Number.isInteger(a.leafCount)&&a.leafCount>=1?Number.isInteger(a.leafIndex)&&a.leafIndex>=a.leafCount&&r.push("merkle.leafIndex must be less than leafCount"):r.push("merkle.leafCount must be a positive integer"),Array.isArray(a.path)?a.path.forEach(function(s,u){!s||typeof s!="object"||s.side!=="left"&&s.side!=="right"?r.push("merkle.path["+u+'] must be { hash, side: "left" | "right" }'):ym(s.hash,"merkle.path["+u+"].hash",r)}):r.push("merkle.path must be an array"))}return r};de.attachSPV=function(e,t){zr.checkArgument(e&&typeof e=="object","certificate is required"),zr.checkArgument(t&&typeof t=="object","spv envelope is required");var r=e.proofHash,i=Object.assign({},e,{spv:{rawTx:t.rawTx,blockHash:t.blockHash,blockHeight:t.blockHeight,merkleProof:t.merkleProof,format:t.format||"TSC"}});if(i.proofHash!==r)throw new Error("attaching the SPV envelope changed proofHash; this must never happen");return i};de.canonicalize=function(e){return _W.stringify(e)};XN.exports=de});var iC=T((Pue,rC)=>{"use strict";g();var QN=Ke(),TW=dn(),eC=gt(),PW=sr(),tC=Ie(),ya={},gh={};ya.register=function(e,t){return tC.checkArgument(typeof e=="string"&&e.length>0,"algorithm must be a non-empty string"),tC.checkArgument(t&&typeof t.verify=="function","suite must provide a verify(payloadHash, signature, publicKey) function"),gh[e]=t,ya};ya.get=function(e){return gh[e]};ya.list=function(){return Object.keys(gh).sort()};ya.unregister=function(e){return delete gh[e],ya};ya.verify=function(e,t,r,i){var n=gh[e];if(!n||!f.Buffer.isBuffer(t)||!f.Buffer.isBuffer(r)||!f.Buffer.isBuffer(i))return!1;try{return n.verify(t,r,i)===!0}catch{return!1}};ya.register("ECDSA-secp256k1",{verify:function(e,t,r){if(e.length!==32)return!1;var i;if(t.length===64)i=new eC(QN.fromBuffer(t.slice(0,32)),QN.fromBuffer(t.slice(32,64)));else if(t[0]===48)try{i=eC.fromDER(t)}catch{return!1}else return!1;var n;try{n=PW.fromBuffer(r)}catch{return!1}var o=new TW;return o.hashbuf=e,o.pubkey=n,o.sig=i,o.verify()===!0}});rC.exports=ya});var aC=T((kue,oC)=>{"use strict";g();var RW=zt(),cw=Le(),kW=mm(),BW=Q_(),bo=ew(),Br=JN(),NW=ts(),bm=iC(),fw=iw(),Yt={};Yt.Encoding=BW;Yt.Script=bo;Yt.Certificate=Br;Yt.Suites=bm;Yt.Merkle=fw;Yt.MODE=bo.MODE;Yt.registerSuite=function(e,t){return bm.register(e,t)};function uw(e,t){if(f.Buffer.isBuffer(e)){if(e.length===0)throw new Error(t+" must not be empty");return e}return Br.decodeBytes(e,"hex",t)}Yt.verifySignature=function(e){try{if(!e||typeof e!="object")return!1;var t=Br.toSignatureInput(e);return bm.verify(t.algorithm,t.payloadHash,t.signature,t.publicKey)}catch{return!1}};Yt.verifySignatureOnly=function(e,t,r,i){var n=i||"ECDSA-secp256k1";return bm.verify(n,uw(e,"payloadHash"),uw(t,"signature"),uw(r,"publicKey"))};Yt.txidFromRawTx=function(e){var t=f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"hex");return f.Buffer.from(cw.sha256sha256(t)).reverse().toString("hex")};Yt.recordFromRawTx=function(e,t){try{var r=new RW(f.Buffer.isBuffer(e)?e.toString("hex"):e);if(t!=null){if(!Number.isInteger(t)||t<0||t>=r.outputs.length)return null;var i=r.outputs[t].script;return bo.isNotaryHash(i)?bo.parse(i):null}for(var n=0;n<r.outputs.length;n++){var o=r.outputs[n].script;if(bo.isNotaryHash(o))return bo.parse(o)}return null}catch{return null}};Yt.recordMatchesCertificate=function(e,t){try{if(!e||!t)return!1;var r=Br.normalize(t),i=e.mode===bo.MODE.BATCH,n=!!(r.anchor&&r.anchor.type===Br.ANCHOR_TYPE.BATCH);if(i||n)return!i||!n||!r.merkle||!e.merkleRoot.equals(Br.decodeBytes(r.merkle.root,"hex","merkle.root"))?!1:e.leafCount===r.merkle.leafCount;var o=r.mode===Br.MODE.FULL?bo.MODE.FULL:r.mode===Br.MODE.HYBRID?bo.MODE.HYBRID:-1;if(e.mode!==o)return!1;var a=Br.toProofInput(r);return e.algorithm!==a.algorithm||e.hashAlgorithm!==a.hashAlgorithm||!e.payloadHash.equals(a.payloadHash)||!e.proofHash.equals(Br.decodeBytes(r.proofHash,"hex","proofHash"))?!1:e.mode===bo.MODE.HYBRID?e.publicKeyHash.equals(cw.sha256(a.publicKey))&&e.signatureHash.equals(cw.sha256(a.signature)):e.publicKey.equals(a.publicKey)&&e.signature.equals(a.signature)}catch{return!1}};Yt.verifyAnchorSPV=function(e,t){var r=[];t=t||{};try{var i=Br.normalize(e),n=i&&i.spv;if(!n)return{valid:!1,errors:["certificate has no SPV envelope"]};if(!t.header)return{valid:!1,errors:["a block header is required: the verifier must obtain one itself rather than trust the certificate or its issuer for the anchor"]};var o=Yt.txidFromRawTx(n.rawTx);(!i.anchor||o!==String(i.anchor.txid).toLowerCase())&&r.push("rawTx does not hash to anchor.txid");var a=Yt.recordFromRawTx(n.rawTx,i.anchor&&i.anchor.vout);a?Yt.recordMatchesCertificate(a,i)||r.push("on-chain record does not match the certificate"):r.push("no NotaryHash record at anchor.vout in rawTx"),t.requirePow!==!1&&t.minWork===void 0&&t.minDifficulty===void 0&&(t.blockHashAtHeight===void 0||t.blockHashAtHeight===null)&&NW({what:"NotaryHash.verify() with a header but no minWork or blockHashAtHeight",since:"9.13.0",removeIn:"10.0.0",use:"verify(certificate, { header, blockHashAtHeight }) with the block hash your own chain source has at spv.blockHeight, or { header, minDifficulty } with the difficulty you require",why:"the proof-of-work limit only rules out a free forgery: a header at difficulty 1 costs about 4.3e9 hashes, while a real mainnet header carries about 1e20"});var s=n.merkleProof||{},u;try{u=kW.verifyTxInclusion({header:t.header,txid:o,index:s.index,nodes:s.nodes,requirePow:t.requirePow!==!1,powLimit:t.powLimit,minWork:t.minWork,minDifficulty:t.minDifficulty})}catch(_){return r.push(_.message),{valid:!1,errors:r}}if(u.rootMatches!==!0&&r.push("merkle proof does not fold to the header's root"),t.requirePow!==!1&&(u.powValid!==!0&&r.push("block header failed proof-of-work validation"),u.targetAllowed!==!0&&r.push("block header declares a target easier than the proof-of-work limit, so its work proves nothing"),u.workSufficient!==!0&&r.push("block header carries less work than required: "+u.work)),n.blockHash!==void 0&&String(n.blockHash).toLowerCase()!==String(u.blockHash).toLowerCase()&&r.push("the supplied header is not the block the SPV envelope names"),t.height!==void 0&&t.height!==n.blockHeight&&r.push("the supplied header is not at the height the SPV envelope names"),t.blockHashAtHeight!==void 0&&t.blockHashAtHeight!==null){var c=f.Buffer.isBuffer(t.blockHashAtHeight)?t.blockHashAtHeight.toString("hex"):String(t.blockHashAtHeight).replace(/^0x/,"");/^[0-9a-fA-F]{64}$/.test(c)?c.toLowerCase()!==String(u.blockHash).toLowerCase()&&r.push("the header is not the block the caller's chain has at that height: it may be orphaned"):r.push("blockHashAtHeight must be a 32-byte block hash")}var l=f.Buffer.isBuffer(t.header)?t.header:f.Buffer.from(String(t.header).replace(/^0x/,""),"hex");if(l.length===80&&i.anchor){if(i.anchor.blockTime!==void 0&&i.anchor.blockTime!==null){var p=l.readUInt32LE(68);Number(i.anchor.blockTime)!==p&&r.push("anchor.blockTime "+i.anchor.blockTime+" is not the time in the block header ("+p+")")}i.anchor.blockHeight!==void 0&&i.anchor.blockHeight!==null&&n.blockHeight!==void 0&&n.blockHeight!==null&&Number(i.anchor.blockHeight)!==Number(n.blockHeight)&&r.push("anchor.blockHeight "+i.anchor.blockHeight+" does not equal spv.blockHeight "+n.blockHeight)}t.network!==void 0&&t.network!==null&&i.anchor&&i.anchor.network!==void 0&&i.anchor.network!==null&&String(i.anchor.network)!==String(t.network)&&r.push('anchor.network is "'+i.anchor.network+'" but the verifier expects "'+t.network+'"');var d=n.merkleProof;if(d&&Array.isArray(d.nodes)&&d.index!==void 0&&d.index!==null){var v=Math.pow(2,d.nodes.length);(!Number.isInteger(Number(d.index))||Number(d.index)<0||Number(d.index)>=v)&&r.push("spv.merkleProof.index "+d.index+" does not fit a path of "+d.nodes.length+" nodes, which addresses at most "+v+" leaves")}return{valid:r.length===0,errors:r}}catch(_){return{valid:!1,errors:["anchor verification error: "+_.message]}}};Yt.verifyBatchInclusion=function(e){try{var t=Br.normalize(e);return!t||!t.anchor||t.anchor.type!==Br.ANCHOR_TYPE.BATCH?{valid:!1,errors:['certificate is not batch-anchored (anchor.type is not "batch")']}:t.merkle?nC(t,"merkle inclusion proof does not fold to the batch root"):{valid:!1,errors:["batch certificate has no merkle proof"]}}catch(r){return{valid:!1,errors:["batch inclusion error: "+r.message]}}};function nC(e,t){try{var r=e.merkle,i=Br.decodeBytes(e.proofHash,"hex","proofHash"),n=Br.decodeBytes(r.root,"hex","merkle.root");if(Number.isInteger(r.leafIndex)&&Number.isInteger(r.leafCount)&&r.leafCount>0&&r.leafIndex>=0&&r.leafIndex<r.leafCount){var o=fw.pathSides(r.leafIndex,r.leafCount),a=(r.path||[]).map(function(u){return u&&typeof u=="object"&&!f.Buffer.isBuffer(u)?u.side:void 0});if(o.length!==a.length)return{valid:!1,errors:["merkle.leafIndex "+r.leafIndex+" in a tree of "+r.leafCount+" leaves needs "+o.length+" path nodes; the path has "+a.length]};for(var s=0;s<o.length;s++)if(a[s]!==void 0&&a[s]!==o[s])return{valid:!1,errors:["merkle.leafIndex "+r.leafIndex+" disagrees with the path: node "+s+' is marked "'+a[s]+'" but leaf '+r.leafIndex+" of "+r.leafCount+' requires "'+o[s]+'"']}}return fw.verifyAuditPath(i,r.path,n)?{valid:!0,errors:[]}:{valid:!1,errors:[t]}}catch(u){return{valid:!1,errors:["batch inclusion error: "+u.message]}}}Yt.verify=function(e,t){t=t||{};var r={valid:!1,shape:[],signature:!1,proofIntegrity:!1,anchor:!1,errors:[]};if(r.legacy=Br.isLegacy(e),e=Br.normalize(e),r.shape=Br.validateShape(e),r.shape.length)return r.errors=r.shape.slice(),r;if(r.signature=Yt.verifySignature(e),r.signature||r.errors.push("signature does not verify"),r.proofIntegrity=Br.proofHashMatches(e),r.proofIntegrity||r.errors.push("proofHash does not match the certificate fields"),t.skipAnchor)return r.errors.push("anchor not checked (skipAnchor): this certificate is NOT verified"),r;var i=Yt.verifyAnchorSPV(e,t);r.anchor=i.valid,i.errors.forEach(function(a){r.errors.push(a)}),r.batchInclusion=!0;var n=!!(e.anchor&&e.anchor.type===Br.ANCHOR_TYPE.BATCH);if(n||e.merkle!==void 0){var o=n?Yt.verifyBatchInclusion(e):nC(e,"merkle proof does not fold to its stated root");r.batchInclusion=o.valid,o.errors.forEach(function(a){r.errors.push(a)})}return r.valid=r.signature&&r.proofIntegrity&&r.anchor&&r.batchInclusion,r};Yt.isValid=function(e,t){return Yt.verify(e,t).valid===!0};oC.exports=Yt});var hw=T((Nue,hC)=>{"use strict";g();var Nr=at(),sC=Ie(),uC=Ke(),CW=pc(),_m=Pc(),cC=Le(),wm=vh(),hu=ca(),lw=un(),fC=sr(),lC=pi(),mh=lC,Un=lC.HDPublicKey,Sm=fa(),ss=ni();function re(e){if(e instanceof re)return e;if(!(this instanceof re))return new re(e);if(e)if(Nr.isString(e)||f.Buffer.isBuffer(e)){var t=re.getSerializedError(e);if(t){if(f.Buffer.isBuffer(e)&&!re.getSerializedError(e.toString()))return this._buildFromSerialized(e.toString());if(t instanceof Un.ArgumentIsPrivateExtended)return new wm(e).hdPublicKey;throw t}else return this._buildFromSerialized(e)}else{if(Nr.isObject(e))return e instanceof wm?this._buildFromPrivate(e):this._buildFromObject(e);throw new Un.UnrecognizedArgument(e)}else throw new Un.MustSupplyArgument}re.fromHDPrivateKey=function(e){return new re(e)};re.isValidPath=function(e){if(Nr.isString(e)){var t=wm._getDerivationIndexes(e);return t!==null&&Nr.every(t,re.isValidPath)}return Nr.isNumber(e)?e>=0&&e<re.Hardened:!1};re.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")};re.prototype.deriveChild=function(e,t){if(Nr.isNumber(e))return this._deriveWithNumber(e,t);if(Nr.isString(e))return this._deriveFromString(e);throw new Un.InvalidDerivationArgument(e)};re.prototype._deriveWithNumber=function(e,t){if(e>=re.Hardened||t)throw new Un.InvalidIndexCantDeriveHardened;if(e<0)throw new Un.InvalidPath(e);var r=ss.integerAsBuffer(e),i=f.Buffer.concat([this.publicKey.toBuffer(),r]),n=cC.sha512hmac(i,this._buffers.chainCode),o=uC.fromBuffer(n.slice(0,32),{size:32}),a=n.slice(32,64),s;try{s=fC.fromPoint(lw.getG().mul(o).add(this.publicKey.point))}catch{return this._deriveWithNumber(e+1)}var u=new re({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:a,publicKey:s});return u};re.prototype._deriveFromString=function(e){if(Nr.includes(e,"'"))throw new Un.InvalidIndexCantDeriveHardened;if(!re.isValidPath(e))throw new Un.InvalidPath(e);var t=wm._getDerivationIndexes(e),r=t.reduce(function(i,n){return i._deriveWithNumber(n)},this);return r};re.isValidSerialized=function(e,t){return Nr.isNull(re.getSerializedError(e,t))};re.getSerializedError=function(e,t){if(!(Nr.isString(e)||f.Buffer.isBuffer(e)))return new Un.UnrecognizedArgument("expected buffer or string");if(!CW.validCharacters(e))return new mh.InvalidB58Char("(unknown)",e);try{e=_m.decode(e)}catch{return new mh.InvalidB58Checksum(e)}if(e.length!==re.DataSize)return new Un.InvalidLength(e);if(!Nr.isUndefined(t)){var r=re._validateNetwork(e,t);if(r)return r}var i=e.readUInt32BE(0);return i===hu.livenet.xprivkey||i===hu.testnet.xprivkey?new Un.ArgumentIsPrivateExtended:null};re._validateNetwork=function(e,t){var r=hu.get(t);if(!r)return new mh.InvalidNetworkArgument(t);var i=e.slice(re.VersionStart,re.VersionEnd);return i.readUInt32BE(0)!==r.xpubkey?new mh.InvalidNetwork(i):null};re.prototype._buildFromPrivate=function(e){var t=Nr.clone(e._buffers),r=lw.getG().mul(uC.fromBuffer(t.privateKey));return t.publicKey=lw.pointToCompressed(r),t.version=ss.integerAsBuffer(hu.get(t.version.readUInt32BE(0)).xpubkey),t.privateKey=void 0,t.checksum=void 0,t.xprivkey=void 0,this._buildFromBuffers(t)};re.prototype._buildFromObject=function(e){var t={version:e.network?ss.integerAsBuffer(hu.get(e.network).xpubkey):e.version,depth:Nr.isNumber(e.depth)?f.Buffer.from([e.depth&255]):e.depth,parentFingerPrint:Nr.isNumber(e.parentFingerPrint)?ss.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:Nr.isNumber(e.childIndex)?ss.integerAsBuffer(e.childIndex):e.childIndex,chainCode:Nr.isString(e.chainCode)?f.Buffer.from(e.chainCode,"hex"):e.chainCode,publicKey:Nr.isString(e.publicKey)?f.Buffer.from(e.publicKey,"hex"):f.Buffer.isBuffer(e.publicKey)?e.publicKey:e.publicKey.toBuffer(),checksum:Nr.isNumber(e.checksum)?ss.integerAsBuffer(e.checksum):e.checksum};return this._buildFromBuffers(t)};re.prototype._buildFromSerialized=function(e){var t=_m.decode(e),r={version:t.slice(re.VersionStart,re.VersionEnd),depth:t.slice(re.DepthStart,re.DepthEnd),parentFingerPrint:t.slice(re.ParentFingerPrintStart,re.ParentFingerPrintEnd),childIndex:t.slice(re.ChildIndexStart,re.ChildIndexEnd),chainCode:t.slice(re.ChainCodeStart,re.ChainCodeEnd),publicKey:t.slice(re.PublicKeyStart,re.PublicKeyEnd),checksum:t.slice(re.ChecksumStart,re.ChecksumEnd),xpubkey:e};return this._buildFromBuffers(r)};re.prototype._buildFromBuffers=function(e){re._validateBufferArguments(e),ss.defineImmutable(this,{_buffers:e});var t=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,e.publicKey],r=f.Buffer.concat(t),i=_m.checksum(r);if(!e.checksum||!e.checksum.length)e.checksum=i;else if(e.checksum.toString("hex")!==i.toString("hex"))throw new mh.InvalidB58Checksum(r,i);var n=hu.get(e.version.readUInt32BE(0)),o;o=_m.encode(f.Buffer.concat(t)),e.xpubkey=f.Buffer.from(o);var a=new fC(e.publicKey,{network:n}),s=re.ParentFingerPrintSize,u=cC.sha256ripemd160(a.toBuffer()).slice(0,s);return ss.defineImmutable(this,{xpubkey:o,network:n,depth:e.depth[0],publicKey:a,fingerPrint:u}),this};re._validateBufferArguments=function(e){var t=function(r,i){var n=e[r];Sm(f.Buffer.isBuffer(n),r+" argument is not a buffer, it's "+typeof n),Sm(n.length===i,r+" has not the expected size: found "+n.length+", expected "+i)};t("version",re.VersionSize),t("depth",re.DepthSize),t("parentFingerPrint",re.ParentFingerPrintSize),t("childIndex",re.ChildIndexSize),t("chainCode",re.ChainCodeSize),t("publicKey",re.PublicKeySize),e.checksum&&e.checksum.length&&t("checksum",re.CheckSumSize)};re.fromString=function(e){return sC.checkArgument(Nr.isString(e),"No valid string was provided"),new re(e)};re.fromObject=function(e){return sC.checkArgument(Nr.isObject(e),"No valid argument was provided"),new re(e)};re.prototype.toString=function(){return this.xpubkey};re.prototype.inspect=function(){return"<HDPublicKey: "+this.xpubkey+">"};re.prototype.toObject=re.prototype.toJSON=function(){return{network:hu.get(this._buffers.version.readUInt32BE(0)).name,depth:this._buffers.depth[0],fingerPrint:this.fingerPrint.readUInt32BE(0),parentFingerPrint:this._buffers.parentFingerPrint.readUInt32BE(0),childIndex:this._buffers.childIndex.readUInt32BE(0),chainCode:this._buffers.chainCode.toString("hex"),publicKey:this.publicKey.toString(),checksum:this._buffers.checksum.readUInt32BE(0),xpubkey:this.xpubkey}};re.fromBuffer=function(e){return new re(e)};re.fromHex=function(e){return re.fromBuffer(f.Buffer.from(e,"hex"))};re.prototype.toBuffer=function(){return f.Buffer.from(this._buffers.xpubkey)};re.prototype.toHex=function(){return this.toBuffer().toString("hex")};re.Hardened=2147483648;re.RootElementAlias=["m","M"];re.VersionSize=4;re.DepthSize=1;re.ParentFingerPrintSize=4;re.ChildIndexSize=4;re.ChainCodeSize=32;re.PublicKeySize=33;re.CheckSumSize=4;re.DataSize=78;re.SerializedByteSize=82;re.VersionStart=0;re.VersionEnd=re.VersionStart+re.VersionSize;re.DepthStart=re.VersionEnd;re.DepthEnd=re.DepthStart+re.DepthSize;re.ParentFingerPrintStart=re.DepthEnd;re.ParentFingerPrintEnd=re.ParentFingerPrintStart+re.ParentFingerPrintSize;re.ChildIndexStart=re.ParentFingerPrintEnd;re.ChildIndexEnd=re.ChildIndexStart+re.ChildIndexSize;re.ChainCodeStart=re.ChildIndexEnd;re.ChainCodeEnd=re.ChainCodeStart+re.ChainCodeSize;re.PublicKeyStart=re.ChainCodeEnd;re.PublicKeyEnd=re.PublicKeyStart+re.PublicKeySize;re.ChecksumStart=re.PublicKeyEnd;re.ChecksumEnd=re.ChecksumStart+re.CheckSumSize;Sm(re.PublicKeyEnd===re.DataSize);Sm(re.ChecksumEnd===re.SerializedByteSize);hC.exports=re});var vh=T((Lue,vC)=>{"use strict";g();var Em=fa(),bh=rr(),pr=at(),pC=Ie(),gC=Ke(),LW=pc(),yh=Pc(),dw=Le(),du=ca(),MW=un(),mC=ei(),DW=Ki(),Wc=pi(),wo=Wc.HDPrivateKey,_o=ni(),HW=128,dC=1/8,qW=512;function Z(e){if(e instanceof Z)return e;if(!(this instanceof Z))return new Z(e);if(!e)return this._generateRandomly();if(du.get(e))return this._generateRandomly(e);if(pr.isString(e)||f.Buffer.isBuffer(e))if(Z.isValidSerialized(e))this._buildFromSerialized(e);else if(_o.isValidJSON(e))this._buildFromJSON(e);else if(f.Buffer.isBuffer(e)&&Z.isValidSerialized(e.toString()))this._buildFromSerialized(e.toString());else throw Z.getSerializedError(e);else if(pr.isObject(e))this._buildFromObject(e);else throw new wo.UnrecognizedArgument(e)}Z.fromRandom=function(e){return new Z(e)};Z.isValidPath=function(e,t){if(pr.isString(e)){var r=Z._getDerivationIndexes(e);return r!==null&&pr.every(r,Z.isValidPath)}return pr.isNumber(e)?(e<Z.Hardened&&t===!0&&(e+=Z.Hardened),e>=0&&e<Z.MaxIndex):!1};Z._getDerivationIndexes=function(e){var t=e.split("/");if(pr.includes(Z.RootElementAlias,e))return[];if(!pr.includes(Z.RootElementAlias,t[0]))return null;var r=t.slice(1).map(function(i){var n=i.slice(-1)==="'";if(n&&(i=i.slice(0,-1)),!i||i[0]==="-")return NaN;var o=+i;return n&&(o+=Z.Hardened),o});return pr.some(r,isNaN)?null:r};Z.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")};Z.prototype.deriveChild=function(e,t){if(pr.isNumber(e))return this._deriveWithNumber(e,t);if(pr.isString(e))return this._deriveFromString(e);throw new wo.InvalidDerivationArgument(e)};Z.prototype.deriveNonCompliantChild=function(e,t){if(pr.isNumber(e))return this._deriveWithNumber(e,t,!0);if(pr.isString(e))return this._deriveFromString(e,!0);throw new wo.InvalidDerivationArgument(e)};Z.prototype._deriveWithNumber=function(e,t,r){if(!Z.isValidPath(e,t))throw new wo.InvalidPath(e);t=e>=Z.Hardened?!0:t,e<Z.Hardened&&t===!0&&(e+=Z.Hardened);var i=_o.integerAsBuffer(e),n;if(t&&r){var o=this.privateKey.bn.toBuffer();n=f.Buffer.concat([bh.Buffer.from([0]),o,i])}else if(t){var a=this.privateKey.bn.toBuffer({size:32});Em(a.length===32,"length of private key buffer is expected to be 32 bytes"),n=f.Buffer.concat([bh.Buffer.from([0]),a,i])}else n=f.Buffer.concat([this.publicKey.toBuffer(),i]);var s=dw.sha512hmac(n,this._buffers.chainCode),u=gC.fromBuffer(s.slice(0,32),{size:32}),c=s.slice(32,64),l=u.add(this.privateKey.toBigNumber()).umod(MW.getN()).toBuffer({size:32});if(!mC.isValid(l))return this._deriveWithNumber(e+1,null,r);var p=new Z({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:c,privateKey:l});return p};Z.prototype._deriveFromString=function(e,t){if(!Z.isValidPath(e))throw new wo.InvalidPath(e);var r=Z._getDerivationIndexes(e),i=r.reduce(function(n,o){return n._deriveWithNumber(o,null,t)},this);return i};Z.isValidSerialized=function(e,t){return!Z.getSerializedError(e,t)};Z.getSerializedError=function(e,t){if(!(pr.isString(e)||f.Buffer.isBuffer(e)))return new wo.UnrecognizedArgument("Expected string or buffer");if(!LW.validCharacters(e))return new Wc.InvalidB58Char("(unknown)",e);try{e=yh.decode(e)}catch{return new Wc.InvalidB58Checksum(e)}if(e.length!==Z.DataLength)return new wo.InvalidLength(e);if(!pr.isUndefined(t)){var r=Z._validateNetwork(e,t);if(r)return r}return null};Z._validateNetwork=function(e,t){var r=du.get(t);if(!r)return new Wc.InvalidNetworkArgument(t);var i=e.slice(0,4);return i.readUInt32BE(0)!==r.xprivkey?new Wc.InvalidNetwork(i):null};Z.fromString=function(e){return pC.checkArgument(pr.isString(e),"No valid string was provided"),new Z(e)};Z.fromObject=function(e){return pC.checkArgument(pr.isObject(e),"No valid argument was provided"),new Z(e)};Z.prototype._buildFromJSON=function(e){return this._buildFromObject(JSON.parse(e))};Z.prototype._buildFromObject=function(e){var t={version:e.network?_o.integerAsBuffer(du.get(e.network).xprivkey):e.version,depth:pr.isNumber(e.depth)?f.Buffer.from([e.depth&255]):e.depth,parentFingerPrint:pr.isNumber(e.parentFingerPrint)?_o.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:pr.isNumber(e.childIndex)?_o.integerAsBuffer(e.childIndex):e.childIndex,chainCode:pr.isString(e.chainCode)?f.Buffer.from(e.chainCode,"hex"):e.chainCode,privateKey:pr.isString(e.privateKey)&&_o.isHexa(e.privateKey)?f.Buffer.from(e.privateKey,"hex"):e.privateKey,checksum:e.checksum?e.checksum.length?e.checksum:_o.integerAsBuffer(e.checksum):void 0};return this._buildFromBuffers(t)};Z.prototype._buildFromSerialized=function(e){var t=yh.decode(e),r={version:t.slice(Z.VersionStart,Z.VersionEnd),depth:t.slice(Z.DepthStart,Z.DepthEnd),parentFingerPrint:t.slice(Z.ParentFingerPrintStart,Z.ParentFingerPrintEnd),childIndex:t.slice(Z.ChildIndexStart,Z.ChildIndexEnd),chainCode:t.slice(Z.ChainCodeStart,Z.ChainCodeEnd),privateKey:t.slice(Z.PrivateKeyStart,Z.PrivateKeyEnd),checksum:t.slice(Z.ChecksumStart,Z.ChecksumEnd),xprivkey:e};return this._buildFromBuffers(r)};Z.prototype._generateRandomly=function(e){return Z.fromSeed(DW.getRandomBuffer(64),e)};Z.fromSeed=function(e,t){if(_o.isHexaString(e)&&(e=f.Buffer.from(e,"hex")),!f.Buffer.isBuffer(e))throw new wo.InvalidEntropyArgument(e);if(e.length<HW*dC)throw new wo.InvalidEntropyArgument.NotEnoughEntropy(e);if(e.length>qW*dC)throw new wo.InvalidEntropyArgument.TooMuchEntropy(e);var r=dw.sha512hmac(e,bh.Buffer.from("Bitcoin seed"));return new Z({network:du.get(t)||du.defaultNetwork,depth:0,parentFingerPrint:0,childIndex:0,privateKey:r.slice(0,32),chainCode:r.slice(32,64)})};Z.prototype._calcHDPublicKey=function(){if(!this._hdPublicKey){var e=hw();this._hdPublicKey=new e(this)}};Z.prototype._buildFromBuffers=function(e){Z._validateBufferArguments(e),_o.defineImmutable(this,{_buffers:e});var t=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,f.Buffer.alloc(1),e.privateKey],r=bh.Buffer.concat(t);if(!e.checksum||!e.checksum.length)e.checksum=yh.checksum(r);else if(e.checksum.toString()!==yh.checksum(r).toString())throw new Wc.InvalidB58Checksum(r);var i=du.get(e.version.readUInt32BE(0)),n;n=yh.encode(bh.Buffer.concat(t)),e.xprivkey=f.Buffer.from(n);var o=new mC(gC.fromBuffer(e.privateKey),i),a=o.toPublicKey(),s=Z.ParentFingerPrintSize,u=dw.sha256ripemd160(a.toBuffer()).slice(0,s);return _o.defineImmutable(this,{xprivkey:n,network:i,depth:e.depth[0],privateKey:o,publicKey:a,fingerPrint:u}),this._hdPublicKey=null,Object.defineProperty(this,"hdPublicKey",{configurable:!1,enumerable:!0,get:function(){return this._calcHDPublicKey(),this._hdPublicKey}}),Object.defineProperty(this,"xpubkey",{configurable:!1,enumerable:!0,get:function(){return this._calcHDPublicKey(),this._hdPublicKey.xpubkey}}),this};Z._validateBufferArguments=function(e){var t=function(r,i){var n=e[r];Em(f.Buffer.isBuffer(n),r+" argument is not a buffer"),Em(n.length===i,r+" has not the expected size: found "+n.length+", expected "+i)};t("version",Z.VersionSize),t("depth",Z.DepthSize),t("parentFingerPrint",Z.ParentFingerPrintSize),t("childIndex",Z.ChildIndexSize),t("chainCode",Z.ChainCodeSize),t("privateKey",Z.PrivateKeySize),e.checksum&&e.checksum.length&&t("checksum",Z.CheckSumSize)};Z.prototype.toString=function(){return this.xprivkey};Z.prototype.inspect=function(){return"<HDPrivateKey: "+this.xprivkey+">"};Z.prototype.toObject=Z.prototype.toJSON=function(){return{network:du.get(this._buffers.version.readUInt32BE(0),"xprivkey").name,depth:this._buffers.depth[0],fingerPrint:this.fingerPrint.readUInt32BE(0),parentFingerPrint:this._buffers.parentFingerPrint.readUInt32BE(0),childIndex:this._buffers.childIndex.readUInt32BE(0),chainCode:this._buffers.chainCode.toString("hex"),privateKey:this.privateKey.toBuffer().toString("hex"),checksum:this._buffers.checksum.readUInt32BE(0),xprivkey:this.xprivkey}};Z.fromBuffer=function(e){return new Z(e.toString())};Z.fromHex=function(e){return Z.fromBuffer(f.Buffer.from(e,"hex"))};Z.prototype.toBuffer=function(){return f.Buffer.from(this.toString())};Z.prototype.toHex=function(){return this.toBuffer().toString("hex")};Z.DefaultDepth=0;Z.DefaultFingerprint=0;Z.DefaultChildIndex=0;Z.Hardened=2147483648;Z.MaxIndex=2*Z.Hardened;Z.RootElementAlias=["m","M","m'","M'"];Z.VersionSize=4;Z.DepthSize=1;Z.ParentFingerPrintSize=4;Z.ChildIndexSize=4;Z.ChainCodeSize=32;Z.PrivateKeySize=32;Z.CheckSumSize=4;Z.DataLength=78;Z.SerializedByteSize=82;Z.VersionStart=0;Z.VersionEnd=Z.VersionStart+Z.VersionSize;Z.DepthStart=Z.VersionEnd;Z.DepthEnd=Z.DepthStart+Z.DepthSize;Z.ParentFingerPrintStart=Z.DepthEnd;Z.ParentFingerPrintEnd=Z.ParentFingerPrintStart+Z.ParentFingerPrintSize;Z.ChildIndexStart=Z.ParentFingerPrintEnd;Z.ChildIndexEnd=Z.ChildIndexStart+Z.ChildIndexSize;Z.ChainCodeStart=Z.ChildIndexEnd;Z.ChainCodeEnd=Z.ChainCodeStart+Z.ChainCodeSize;Z.PrivateKeyStart=Z.ChainCodeEnd+1;Z.PrivateKeyEnd=Z.PrivateKeyStart+Z.PrivateKeySize;Z.ChecksumStart=Z.PrivateKeyEnd;Z.ChecksumEnd=Z.ChecksumStart+Z.CheckSumSize;Em(Z.ChecksumEnd===Z.SerializedByteSize);vC.exports=Z});var SC=T((Due,wC)=>{"use strict";g();var UW=Le(),xm=at(),FW=ei(),jW=sr(),yC=Ni(),bC=Nn(),pw=dn(),_C=gt(),zW=UW.sha256sha256,KW=ni(),Yc=Ie(),er=function e(t){return this instanceof e?(Yc.checkArgument(xm.isString(t)||f.Buffer.isBuffer(t),"First argument should be a string or Buffer"),xm.isString(t)&&(this.messageBuffer=f.Buffer.from(t)),f.Buffer.isBuffer(t)&&(this.messageBuffer=t),this):new e(t)};er.sign=function(e,t){return new er(e).sign(t)};er.verify=function(e,t,r){return new er(e).verify(t,r)};er.MAGIC_BYTES=f.Buffer.from(`Bitcoin Signed Message:
74
+ `))}}};L.prototype.verify=function(e,t,r,i,n,o){this.eraHint=null;var a=this._verifyCore(e,t,r,i,n,o);return a||this._eraDiagnose(n),a};L._resetEraWarning=function(){I_=!1};L.mainnetFlags=function(e){e=e||{};var t=L.SCRIPT_VERIFY_P2SH|L.SCRIPT_VERIFY_STRICTENC|L.SCRIPT_VERIFY_DERSIG|L.SCRIPT_VERIFY_SIGPUSHONLY|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_NULLFAIL|L.SCRIPT_VERIFY_MINIMALDATA|L.SCRIPT_ENABLE_SIGHASH_FORKID|L.SCRIPT_ENABLE_MAGNETIC_OPCODES|L.SCRIPT_ENABLE_MONOLITH_OPCODES|L.SCRIPT_GENESIS|L.SCRIPT_UTXO_AFTER_GENESIS;return e.afterChronicle!==!1&&(t|=L.SCRIPT_ENABLE_CHRONICLE|L.SCRIPT_UTXO_AFTER_CHRONICLE),t};L.currentConsensusFlags=function(){return L.SCRIPT_ENABLE_MONOLITH_OPCODES|L.SCRIPT_ENABLE_MAGNETIC_OPCODES|L.SCRIPT_GENESIS|L.SCRIPT_UTXO_AFTER_GENESIS|L.SCRIPT_ENABLE_CHRONICLE|L.SCRIPT_UTXO_AFTER_CHRONICLE|L.SCRIPT_ENABLE_SIGHASH_FORKID|L.SCRIPT_VERIFY_SIGPUSHONLY|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_NULLFAIL};L.useMainnetConsensus=function(e){return e=e||{},L.useGenesisLimits(e.max),L.mainnetFlags(e)};L.SEQUENCE_LOCKTIME_DISABLE_FLAG=1<<31;L.SEQUENCE_LOCKTIME_TYPE_FLAG=1<<22;L.SEQUENCE_LOCKTIME_MASK=65535;L.castToBool=function(e){for(var t=0;t<e.length;t++)if(e[t]!==0)return!(t===e.length-1&&e[t]===128);return!1};function UB(e,t){return(e&L.SCRIPT_CHRONICLE)===0?!0:!(t&&(t.version|0)>1)}L.prototype.enforceNonMalleability=function(){return UB(this.flags,this.tx)};L.prototype.checkSignatureEncoding=function(e){var t;if(e.length===0)return!0;if((this.flags&(L.SCRIPT_VERIFY_DERSIG|L.SCRIPT_VERIFY_LOW_S|L.SCRIPT_VERIFY_STRICTENC))!==0&&!ma.isTxDER(e))return this.errstr="SCRIPT_ERR_SIG_DER_INVALID_FORMAT",!1;if((this.flags&L.SCRIPT_VERIFY_LOW_S)!==0&&(t=ma.fromTxFormat(e),!t.hasLowS()&&this.enforceNonMalleability()))return this.errstr="SCRIPT_ERR_SIG_DER_HIGH_S",!1;if((this.flags&L.SCRIPT_VERIFY_STRICTENC)!==0){if(t=ma.fromTxFormat(e),!t.hasDefinedHashtype())return this.errstr="SCRIPT_ERR_SIG_HASHTYPE",!1;if(!(this.flags&L.SCRIPT_ENABLE_SIGHASH_FORKID)&&t.nhashtype&ma.SIGHASH_FORKID)return this.errstr="SCRIPT_ERR_ILLEGAL_FORKID",!1;if(!(this.flags&L.SCRIPT_CHRONICLE)&&t.nhashtype&ma.SIGHASH_CHRONICLE)return this.errstr="SCRIPT_ERR_ILLEGAL_CHRONICLE",!1;if(this.flags&L.SCRIPT_ENABLE_SIGHASH_FORKID&&!(t.nhashtype&ma.SIGHASH_FORKID))return this.errstr="SCRIPT_ERR_MUST_USE_FORKID",!1}return!0};function HB(e,t,r){var i=t.length?t[t.length-1]:0;return(!(r&L.SCRIPT_ENABLE_SIGHASH_FORKID)||!(i&ma.SIGHASH_FORKID))&&e.findAndDelete(new im().add(t)),e}L.prototype.checkPubkeyEncoding=function(e){return(this.flags&L.SCRIPT_VERIFY_STRICTENC)!==0&&!O_.isValid(e)?(this.errstr="SCRIPT_ERR_PUBKEYTYPE",!1):!0};L.prototype.isAfterGenesis=function(){return(this.flags&L.SCRIPT_UTXO_AFTER_GENESIS)!==0};L.prototype.isAfterChronicle=function(){return(this.flags&(L.SCRIPT_UTXO_AFTER_CHRONICLE|L.SCRIPT_ENABLE_CHRONICLE))!==0};L.prototype.maxScriptElementSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_SCRIPT_ELEMENT_SIZE};L.prototype.maxScriptSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_SCRIPT_SIZE};L.prototype.maxOpsPerScript=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_OPS_PER_SCRIPT};L.prototype.maxScriptNumLength=function(){return this.isAfterChronicle()?L.MAX_SCRIPT_NUM_LENGTH_AFTER_CHRONICLE:this.isAfterGenesis()?L.MAX_SCRIPT_NUM_LENGTH_AFTER_GENESIS:L.MAXIMUM_ELEMENT_SIZE};L.prototype.maxStackSize=function(){return this.isAfterGenesis()?L.UNLIMITED:L.MAX_STACK_SIZE};L.prototype.maxStackMemoryUsage=function(){return this.isAfterGenesis()?L.MAX_STACK_MEMORY_USAGE_AFTER_GENESIS:L.UNLIMITED};L.prototype.stackMemoryUsage=function(){let e=L.STACK_ELEMENT_OVERHEAD,t=(this.stack.length+this.altstack.length)*e;for(let r=0;r<this.stack.length;r++)t+=this.stack[r].length;for(let r=0;r<this.altstack.length;r++)t+=this.altstack[r].length;return t};L.prototype.checkStackLimits=function(){if(this.stack.length+this.altstack.length>this.maxStackSize())return"SCRIPT_ERR_STACK_SIZE";let e=this.maxStackMemoryUsage();return e!==L.UNLIMITED&&this.stackMemoryUsage()>e?"SCRIPT_ERR_STACK_SIZE":null};L.prototype.maxPubKeysPerMultisig=function(){return this.isAfterGenesis()?L.MAX_PUBKEYS_PER_MULTISIG_AFTER_GENESIS:20};L._isMinimallyEncoded=function(e,t){return t=t||L.MAXIMUM_ELEMENT_SIZE,!(e.length>t||e.length>0&&(e[e.length-1]&127)===0&&(e.length<=1||(e[e.length-2]&128)===0))};L._minimallyEncode=function(e){if(e.length===0)return e;var t=e[e.length-1];if(t&127)return e;if(e.length===1)return f.Buffer.from("");if(e[e.length-2]&128)return e;e=f.Buffer.from(e);for(var r=e.length-1;r>0;r--)if(e[r-1]!==0)return e[r-1]&128?e[r++]=t:e[r-1]|=t,e.slice(0,r);return f.Buffer.from("")};L.prototype.evaluate=function(){if(this.script.toBuffer().length>this.maxScriptSize())return this.errstr="SCRIPT_ERR_SCRIPT_SIZE",!1;try{for(;this.pc<this.script.chunks.length;){let r={pc:this.pc,opcode:j.fromNumber(this.script.chunks[this.pc].opcodenum)};var e=this.step();if(!e)return!1;if(this._callbackStep(r),this.returned)return!0;let i=this.checkStackLimits();if(i)return this.errstr=i,!1}let t=this.checkStackLimits();if(t)return this.errstr=t,!1}catch(t){return this.errstr=t.scriptErr||"SCRIPT_ERR_UNKNOWN_ERROR: "+t,!1}return this.vfExec.length>0?(this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1):!0};L.prototype._callbackStep=function(e){if(typeof this.stepListener=="function")try{this.stepListener(e,DB(this.stack),DB(this.altstack))}catch(t){console.log(`Error in Step callback:${t}`)}};L.prototype.checkLockTime=function(e){if(!(this.tx.nLockTime<L.LOCKTIME_THRESHOLD&&e.lt(L.LOCKTIME_THRESHOLD_BN)||this.tx.nLockTime>=L.LOCKTIME_THRESHOLD&&e.gte(L.LOCKTIME_THRESHOLD_BN))||e.gt(new we(this.tx.nLockTime)))return!1;var t=this.tx.inputs[this.nin];return!(!t||t.isFinal())};L.prototype.checkSequence=function(e){var t=this.tx.inputs[this.nin];if(!t)return!1;var r=t.sequenceNumber;if(this.tx.version<2||r&L.SEQUENCE_LOCKTIME_DISABLE_FLAG)return!1;var i=L.SEQUENCE_LOCKTIME_TYPE_FLAG|L.SEQUENCE_LOCKTIME_MASK,n=new we(r&i),o=e.and(new we(i)),a=new we(L.SEQUENCE_LOCKTIME_TYPE_FLAG);return!(!(n.lt(a)&&o.lt(a)||n.gte(a)&&o.gte(a))||o.gt(n))};function qB(e){var t=f.Buffer.alloc(4);return t.writeInt32LE(e|0,0),t}L.prototype.step=function(){var e=this;function t(ge){return e.stack[e.stack.length+ge]}function r(ge){switch(ge){case j.OP_2MUL:case j.OP_2DIV:if(!e.isAfterChronicle())return!0;break;case j.OP_INVERT:case j.OP_MUL:case j.OP_LSHIFT:case j.OP_RSHIFT:case j.OP_DIV:case j.OP_MOD:case j.OP_SPLIT:case j.OP_CAT:case j.OP_AND:case j.OP_OR:case j.OP_XOR:case j.OP_BIN2NUM:case j.OP_NUM2BIN:return!1;default:break}return!1}var i=(this.flags&L.SCRIPT_VERIFY_MINIMALDATA)!==0&&this.enforceNonMalleability(),n,o,a,s,u,c,l,p,d,v,_,I,R,k,q,z,A,B=this.script.chunks[this.pc];this.pc++;var M=B.opcodenum,F=this.vfExec.indexOf(!1)===-1&&(!this.nonTopLevelReturnAfterGenesis||M===j.OP_RETURN);if(rm.isUndefined(M))return this.errstr="SCRIPT_ERR_UNDEFINED_OPCODE",!1;if(B.buf&&B.buf.length>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;if(M>j.OP_16&&++this.nOpCount>this.maxOpsPerScript())return this.errstr="SCRIPT_ERR_OP_COUNT",!1;if(r(M)&&(!this.isAfterGenesis()||F))return this.errstr="SCRIPT_ERR_DISABLED_OPCODE",!1;if(F&&M>=0&&M<=j.OP_PUSHDATA4){if(i&&!this.script.checkMinimalPush(this.pc-1))return this.errstr="SCRIPT_ERR_MINIMALDATA",!1;if(!B.buf)this.stack.push(L.false);else{if(B.len!==B.buf.length)return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1;this.stack.push(B.buf)}}else if(F||j.OP_IF<=M&&M<=j.OP_ENDIF)switch(M){case j.OP_1NEGATE:case j.OP_1:case j.OP_2:case j.OP_3:case j.OP_4:case j.OP_5:case j.OP_6:case j.OP_7:case j.OP_8:case j.OP_9:case j.OP_10:case j.OP_11:case j.OP_12:case j.OP_13:case j.OP_14:case j.OP_15:case j.OP_16:u=M-(j.OP_1-1),n=new we(u).toScriptNumBuffer(),this.stack.push(n);break;case j.OP_NOP:break;case j.OP_NOP2:case j.OP_CHECKLOCKTIMEVERIFY:if(!(this.flags&L.SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY)||this.isAfterGenesis()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var V=we.fromScriptNumBuffer(this.stack[this.stack.length-1],i,5);if(V.lt(new we(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if(!this.checkLockTime(V))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case j.OP_NOP3:case j.OP_CHECKSEQUENCEVERIFY:if(!(this.flags&L.SCRIPT_VERIFY_CHECKSEQUENCEVERIFY)||this.isAfterGenesis()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Y=we.fromScriptNumBuffer(t(-1),i,5);if(Y.lt(new we(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if((Y&L.SEQUENCE_LOCKTIME_DISABLE_FLAG)!==0)break;if(!this.checkSequence(Y))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case j.OP_NOP1:case j.OP_NOP9:case j.OP_NOP10:if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break;case j.OP_LSHIFTNUM:case j.OP_RSHIFTNUM:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var E=this.maxScriptNumLength(),h=we.fromScriptNumBuffer(t(-1),i,E);if(h.isNeg())return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop();var y=we.fromScriptNumBuffer(t(-1),i,E);this.stack.pop();var w=h.toNumber(),S=y.isNeg(),O=y.abs(),C;if(M===j.OP_LSHIFTNUM){var D=y.toScriptNumBuffer().length;if(D+Math.floor(w/8)>E)return this.errstr="SCRIPT_ERR_SCRIPTNUM_OVERFLOW",!1;C=O.shln(w)}else C=w>=O.bitLength()?new we(0):O.shrn(w);if(S&&!C.isZero()&&(C=C.neg()),C.toScriptNumBuffer().length>E)return this.errstr="SCRIPT_ERR_SCRIPTNUM_OVERFLOW",!1;this.stack.push(C.toScriptNumBuffer());break;case j.OP_VER:if(!this.isAfterChronicle())return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1;if(this.tx==null)return this.errstr="SCRIPT_ERR_UNKNOWN_ERROR",!1;this.stack.push(qB(this.tx.version));break;case j.OP_VERIF:case j.OP_VERNOTIF:if(!this.isAfterChronicle()){if(this.isAfterGenesis()&&!F)break;return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1}if(z=!1,F){if(this.stack.length<1)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;if(this.tx==null)return this.errstr="SCRIPT_ERR_UNKNOWN_ERROR",!1;n=t(-1),z=n.length===4&&n.equals(qB(this.tx.version)),M===j.OP_VERNOTIF&&(z=!z),this.stack.pop()}this.vfExec.push(z),this.vfElse.push(!1);break;case j.OP_IF:case j.OP_NOTIF:if(z=!1,F){if(this.stack.length<1)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;if(n=t(-1),this.flags&L.SCRIPT_VERIFY_MINIMALIF&&(n.length>1||n.length===1&&n[0]!==1)&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_MINIMALIF",!1;z=L.castToBool(n),M===j.OP_NOTIF&&(z=!z),this.stack.pop()}this.vfExec.push(z),this.vfElse.push(!1);break;case j.OP_ELSE:if(this.vfExec.length===0||this.vfElse[this.vfElse.length-1]&&this.isAfterGenesis())return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec[this.vfExec.length-1]=!this.vfExec[this.vfExec.length-1],this.vfElse[this.vfElse.length-1]=!0;break;case j.OP_ENDIF:if(this.vfExec.length===0)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec.pop(),this.vfElse.pop();break;case j.OP_VERIFY:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(n=t(-1),z=L.castToBool(n),z)this.stack.pop();else return this.errstr="SCRIPT_ERR_VERIFY",!1;break;case j.OP_RETURN:if(this.isAfterGenesis()){if(this.vfExec.length===0){this.returned=!0;break}this.nonTopLevelReturnAfterGenesis=!0;break}return this.errstr="SCRIPT_ERR_OP_RETURN",!1;case j.OP_TOALTSTACK:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.altstack.push(this.stack.pop());break;case j.OP_FROMALTSTACK:if(this.altstack.length<1)return this.errstr="SCRIPT_ERR_INVALID_ALTSTACK_OPERATION",!1;this.stack.push(this.altstack.pop());break;case j.OP_2DROP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop(),this.stack.pop();break;case j.OP_2DUP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2),a=t(-1),this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a));break;case j.OP_3DUP:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-3),a=t(-2);var P=t(-1);this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a)),this.stack.push(f.Buffer.from(P));break;case j.OP_2OVER:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-4),a=t(-3),this.stack.push(f.Buffer.from(o)),this.stack.push(f.Buffer.from(a));break;case j.OP_2ROT:if(this.stack.length<6)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;s=this.stack.splice(this.stack.length-6,2),this.stack.push(s[0]),this.stack.push(s[1]);break;case j.OP_2SWAP:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;s=this.stack.splice(this.stack.length-4,2),this.stack.push(s[0]),this.stack.push(s[1]);break;case j.OP_IFDUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1),z=L.castToBool(n),z&&this.stack.push(f.Buffer.from(n));break;case j.OP_DEPTH:n=new we(this.stack.length).toScriptNumBuffer(),this.stack.push(n);break;case j.OP_DROP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop();break;case j.OP_DUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(f.Buffer.from(t(-1)));break;case j.OP_NIP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.splice(this.stack.length-2,1);break;case j.OP_OVER:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(f.Buffer.from(t(-2)));break;case j.OP_PICK:case j.OP_ROLL:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(n=t(-1),p=we.fromScriptNumBuffer(n,i,this.maxScriptNumLength()),u=p.toNumber(),this.stack.pop(),u<0||u>=this.stack.length)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-u-1),M===j.OP_ROLL&&this.stack.splice(this.stack.length-u-1,1),this.stack.push(f.Buffer.from(n));break;case j.OP_ROT:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;c=t(-3),l=t(-2);var m=t(-1);this.stack[this.stack.length-3]=l,this.stack[this.stack.length-2]=m,this.stack[this.stack.length-1]=c;break;case j.OP_SWAP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;c=t(-2),l=t(-1),this.stack[this.stack.length-2]=l,this.stack[this.stack.length-1]=c;break;case j.OP_TUCK:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.splice(this.stack.length-2,0,f.Buffer.from(t(-1)));break;case j.OP_SIZE:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;p=new we(t(-1).length),this.stack.push(p.toScriptNumBuffer());break;case j.OP_AND:case j.OP_OR:case j.OP_XOR:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),a=t(-1),o.length!==a.length)return this.errstr="SCRIPT_ERR_INVALID_OPERAND_SIZE",!1;switch(s=f.Buffer.alloc(o.length),M){case j.OP_AND:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]&a[ge];break;case j.OP_OR:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]|a[ge];break;case j.OP_XOR:for(let ge=0;ge<o.length;ge++)s[ge]=o[ge]^a[ge];break;default:break}this.stack.pop(),this.stack[this.stack.length-1]=s;break;case j.OP_INVERT:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1),o=f.Buffer.alloc(n.length);for(let ge=0;ge<n.length;ge++)o[ge]=~n[ge]&255;this.stack[this.stack.length-1]=o;break;case j.OP_LSHIFT:case j.OP_RSHIFT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),v=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()),v.cmpn(0)<0)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),this.stack.pop();var x=f.Buffer.alloc(o.length);if(v.lt(new we(o.length).muln(8)))for(var K=v.toNumber(),U=Math.floor(K/8),G=K%8,te=M===j.OP_LSHIFT,ae=0;ae<o.length;ae++){var oe=te?ae+U:ae-U,le=oe>=0&&oe<o.length?o[oe]:0,he=te?oe+1:oe-1,ve=G&&he>=0&&he<o.length?o[he]:0;x[ae]=te?(le<<G|ve>>8-G)&255:(le>>G|ve<<8-G)&255}this.stack.push(x);break;case j.OP_EQUAL:case j.OP_EQUALVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2),a=t(-1);var je=o.toString("hex")===a.toString("hex");if(this.stack.pop(),this.stack.pop(),this.stack.push(je?L.true:L.false),M===j.OP_EQUALVERIFY)if(je)this.stack.pop();else return this.errstr="SCRIPT_ERR_EQUALVERIFY",!1;break;case j.OP_2MUL:case j.OP_2DIV:case j.OP_1ADD:case j.OP_1SUB:case j.OP_NEGATE:case j.OP_ABS:case j.OP_NOT:case j.OP_0NOTEQUAL:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(n=t(-1),p=we.fromScriptNumBuffer(n,i,this.maxScriptNumLength()),M){case j.OP_2MUL:p=p.mul(new we(2));break;case j.OP_2DIV:p=p.div(new we(2));break;case j.OP_1ADD:p=p.add(we.One);break;case j.OP_1SUB:p=p.sub(we.One);break;case j.OP_NEGATE:p=p.neg();break;case j.OP_ABS:p.cmp(we.Zero)<0&&(p=p.neg());break;case j.OP_NOT:p=new we((p.cmp(we.Zero)===0)+0);break;case j.OP_0NOTEQUAL:p=new we((p.cmp(we.Zero)!==0)+0);break}this.stack.pop(),this.stack.push(p.toScriptNumBuffer());break;case j.OP_ADD:case j.OP_SUB:case j.OP_MUL:case j.OP_MOD:case j.OP_DIV:case j.OP_BOOLAND:case j.OP_BOOLOR:case j.OP_NUMEQUAL:case j.OP_NUMEQUALVERIFY:case j.OP_NUMNOTEQUAL:case j.OP_LESSTHAN:case j.OP_GREATERTHAN:case j.OP_LESSTHANOREQUAL:case j.OP_GREATERTHANOREQUAL:case j.OP_MIN:case j.OP_MAX:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(d=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength()),v=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()),p=new we(0),M){case j.OP_ADD:p=d.add(v);break;case j.OP_SUB:p=d.sub(v);break;case j.OP_MUL:p=d.mul(v);break;case j.OP_DIV:if(v.cmp(we.Zero)===0)return this.errstr="SCRIPT_ERR_DIV_BY_ZERO",!1;p=d.div(v);break;case j.OP_MOD:if(v.cmp(we.Zero)===0)return this.errstr="SCRIPT_ERR_MOD_BY_ZERO",!1;p=d.mod(v);break;case j.OP_BOOLAND:p=new we((d.cmp(we.Zero)!==0&&v.cmp(we.Zero)!==0)+0);break;case j.OP_BOOLOR:p=new we((d.cmp(we.Zero)!==0||v.cmp(we.Zero)!==0)+0);break;case j.OP_NUMEQUAL:p=new we((d.cmp(v)===0)+0);break;case j.OP_NUMEQUALVERIFY:p=new we((d.cmp(v)===0)+0);break;case j.OP_NUMNOTEQUAL:p=new we((d.cmp(v)!==0)+0);break;case j.OP_LESSTHAN:p=new we((d.cmp(v)<0)+0);break;case j.OP_GREATERTHAN:p=new we((d.cmp(v)>0)+0);break;case j.OP_LESSTHANOREQUAL:p=new we((d.cmp(v)<=0)+0);break;case j.OP_GREATERTHANOREQUAL:p=new we((d.cmp(v)>=0)+0);break;case j.OP_MIN:p=d.cmp(v)<0?d:v;break;case j.OP_MAX:p=d.cmp(v)>0?d:v;break}if(this.stack.pop(),this.stack.pop(),this.stack.push(p.toScriptNumBuffer()),M===j.OP_NUMEQUALVERIFY)if(L.castToBool(t(-1)))this.stack.pop();else return this.errstr="SCRIPT_ERR_NUMEQUALVERIFY",!1;break;case j.OP_WITHIN:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;d=we.fromScriptNumBuffer(t(-3),i,this.maxScriptNumLength()),v=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength());var be=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength());z=v.cmp(d)<=0&&d.cmp(be)<0,this.stack.pop(),this.stack.pop(),this.stack.pop(),this.stack.push(z?L.true:L.false);break;case j.OP_RIPEMD160:case j.OP_SHA1:case j.OP_SHA256:case j.OP_HASH160:case j.OP_HASH256:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;n=t(-1);var _e;M===j.OP_RIPEMD160?_e=fh.ripemd160(n):M===j.OP_SHA1?_e=fh.sha1(n):M===j.OP_SHA256?_e=fh.sha256(n):M===j.OP_HASH160?_e=fh.sha256ripemd160(n):M===j.OP_HASH256&&(_e=fh.sha256sha256(n)),this.stack.pop(),this.stack.push(_e);break;case j.OP_CODESEPARATOR:this.pbegincodehash=this.pc;break;case j.OP_CHECKSIG:case j.OP_CHECKSIGVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(_=t(-2),I=t(-1),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(I))return!1;R=new im().set({chunks:this.script.chunks.slice(this.pbegincodehash)}),HB(R,_,this.flags);try{k=ma.fromTxFormat(_),q=O_.fromBuffer(I,!1),A=this.tx.verifySignature(k,q,this.nin,R,this.satoshisBN,this.flags)}catch{A=!1}if(!A&&this.flags&L.SCRIPT_VERIFY_NULLFAIL&&_.length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_NULLFAIL",!1;if(this.stack.pop(),this.stack.pop(),this.stack.push(A?L.true:L.false),M===j.OP_CHECKSIGVERIFY)if(A)this.stack.pop();else return this.errstr="SCRIPT_ERR_CHECKSIGVERIFY",!1;break;case j.OP_CHECKMULTISIG:case j.OP_CHECKMULTISIGVERIFY:var We=1;if(this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Pe=we.fromScriptNumBuffer(t(-We),i,4).toNumber();if(Pe<0||Pe>this.maxPubKeysPerMultisig())return this.errstr="SCRIPT_ERR_PUBKEY_COUNT",!1;if(this.nOpCount+=Pe,this.nOpCount>this.maxOpsPerScript())return this.errstr="SCRIPT_ERR_OP_COUNT",!1;var Me=++We;We+=Pe;var rt=Pe+2;if(this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var Be=we.fromScriptNumBuffer(t(-We),i,4).toNumber();if(Be<0||Be>Pe)return this.errstr="SCRIPT_ERR_SIG_COUNT",!1;var vt=++We;if(We+=Be,this.stack.length<We)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;R=new im().set({chunks:this.script.chunks.slice(this.pbegincodehash)});for(var ui=0;ui<Be;ui++)_=t(-vt-ui),HB(R,_,this.flags);for(A=!0;A&&Be>0;){if(_=t(-vt),I=t(-Me),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(I))return!1;var Et;try{k=ma.fromTxFormat(_),q=O_.fromBuffer(I,!1),Et=this.tx.verifySignature(k,q,this.nin,R,this.satoshisBN,this.flags)}catch{Et=!1}Et&&(vt++,Be--),Me++,Pe--,Be>Pe&&(A=!1)}for(;We-- >1;){if(!A&&this.flags&L.SCRIPT_VERIFY_NULLFAIL&&!rt&&t(-1).length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_NULLFAIL",!1;rt>0&&rt--,this.stack.pop()}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(this.flags&L.SCRIPT_VERIFY_NULLDUMMY&&t(-1).length&&this.enforceNonMalleability())return this.errstr="SCRIPT_ERR_SIG_NULLDUMMY",!1;if(this.stack.pop(),this.stack.push(A?L.true:L.false),M===j.OP_CHECKMULTISIGVERIFY)if(A)this.stack.pop();else return this.errstr="SCRIPT_ERR_CHECKMULTISIGVERIFY",!1;break;case j.OP_CAT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),a=t(-1),o.length+a.length>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack[this.stack.length-2]=f.Buffer.concat([o,a]),this.stack.pop();break;case j.OP_SPLIT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-2);var _t=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber();if(_t<0||_t>o.length)return this.errstr="SCRIPT_ERR_INVALID_SPLIT_RANGE",!1;var Yn=f.Buffer.from(o);this.stack[this.stack.length-2]=Yn.slice(0,_t),this.stack[this.stack.length-1]=Yn.slice(_t);break;case j.OP_LEFT:case j.OP_RIGHT:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-2),u=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber(),u<0||u>o.length)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),M===j.OP_LEFT?this.stack[this.stack.length-1]=f.Buffer.from(o).slice(0,u):this.stack[this.stack.length-1]=f.Buffer.from(o).slice(o.length-u);break;case j.OP_SUBSTR:if(!this.isAfterChronicle()){if(this.flags&L.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break}if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;o=t(-3);var Lt=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength()).toNumber(),N=we.fromScriptNumBuffer(t(-2),i,this.maxScriptNumLength()).toNumber();if(N<0||N>=o.length||Lt<0||Lt>o.length-N)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;this.stack.pop(),this.stack.pop(),this.stack[this.stack.length-1]=f.Buffer.from(o).slice(N,N+Lt);break;case j.OP_NUM2BIN:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var W=we.fromScriptNumBuffer(t(-1),i,this.maxScriptNumLength());if(W.cmpn(0)<0||W.gt(new we(2147483647)))return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;var X=W.toNumber();if(X>this.maxScriptElementSize())return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack.pop();var ie=t(-1);if(ie=L._minimallyEncode(ie),ie.length>X)return this.errstr="SCRIPT_ERR_IMPOSSIBLE_ENCODING",!1;if(ie.length===X){this.stack[this.stack.length-1]=ie;break}var pe=0;ie.length>0&&(ie=f.Buffer.from(ie),pe=ie[ie.length-1]&128,ie[ie.length-1]&=127);var se=f.Buffer.alloc(X);ie.copy(se,0);for(var me=ie.length-1;me++<X-2;)se[me]=0;se[me]=pe,this.stack[this.stack.length-1]=se;break;case j.OP_BIN2NUM:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(o=t(-1),a=L._minimallyEncode(o),this.stack[this.stack.length-1]=a,!L._isMinimallyEncoded(a,this.maxScriptNumLength()))return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;break;default:return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1}return!0}});var ut=T((jse,A_)=>{g();A_.exports=Kg();A_.exports.Interpreter=hn()});var Ni=T((Kse,VB)=>{"use strict";g();var T_=at(),va=Ie(),M9=pi(),jB=Pc(),pn=ca(),zB=Le(),KB=ni(),P_=sr();function ye(e,t,r){if(!(this instanceof ye))return new ye(e,t,r);if(T_.isArray(e)&&T_.isNumber(t))return ye.createMultisig(e,t,r);if(e instanceof ye)return e;if(va.checkArgument(e,"First argument is required, please include address data.","guide/address.html"),t&&!pn.get(t))throw new TypeError('Second argument must be "livenet", "testnet", or "regtest".');if(r&&r!==ye.PayToPublicKeyHash&&r!==ye.PayToScriptHash)throw new TypeError('Third argument must be "pubkeyhash" or "scripthash".');var i=this._classifyArguments(e,t,r);return i.network=i.network||pn.get(t)||pn.defaultNetwork,i.type=i.type||r||ye.PayToPublicKeyHash,KB.defineImmutable(this,{hashBuffer:i.hashBuffer,network:i.network,type:i.type}),this}ye.prototype._classifyArguments=function(e,t,r){if((e instanceof f.Buffer||e instanceof Uint8Array)&&e.length===20)return ye._transformHash(e);if((e instanceof f.Buffer||e instanceof Uint8Array)&&e.length===21)return ye._transformBuffer(e,t,r);if(e instanceof P_)return ye._transformPublicKey(e);if(e instanceof lh())return ye._transformScript(e,t);if(typeof e=="string")return ye._transformString(e,t,r);if(T_.isObject(e))return ye._transformObject(e);throw new TypeError("First argument is an unrecognized data format.")};ye.PayToPublicKeyHash="pubkeyhash";ye.PayToScriptHash="scripthash";ye._transformHash=function(e){var t={};if(!(e instanceof f.Buffer)&&!(e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(e.length!==20)throw new TypeError("Address hashbuffers must be exactly 20 bytes.");return t.hashBuffer=e,t};ye._transformObject=function(e){return va.checkArgument(e.hash||e.hashBuffer,"Must provide a `hash` or `hashBuffer` property"),va.checkArgument(e.type,"Must provide a `type` property"),{hashBuffer:e.hash?f.Buffer.from(e.hash,"hex"):e.hashBuffer,network:pn.get(e.network)||pn.defaultNetwork,type:e.type}};ye._classifyFromVersion=function(e){var t={},r=pn.get(e[0],"pubkeyhash"),i=pn.get(e[0],"scripthash");return r?(t.network=r,t.type=ye.PayToPublicKeyHash):i&&(t.network=i,t.type=ye.PayToScriptHash),t};ye._transformBuffer=function(e,t,r){var i={};if(!(e instanceof f.Buffer)&&!(e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(e.length!==21)throw new TypeError("Address buffers must be exactly 21 bytes.");var n=pn.get(t),o=ye._classifyFromVersion(e);if(t&&!n)throw new TypeError("Unknown network");if(!o.network||n&&n!==o.network)throw new TypeError("Address has mismatched network type.");if(!o.type||r&&r!==o.type)throw new TypeError("Address has mismatched type.");return i.hashBuffer=e.slice(1),i.network=o.network,i.type=o.type,i};ye._transformPublicKey=function(e){var t={};if(!(e instanceof P_))throw new TypeError("Address must be an instance of PublicKey.");return t.hashBuffer=zB.sha256ripemd160(e.toBuffer()),t.type=ye.PayToPublicKeyHash,t};ye._transformScript=function(e,t){va.checkArgument(e instanceof lh(),"script must be a Script instance");var r=e.getAddressInfo(t);if(!r)throw new M9.Script.CantDeriveAddress(e);return r};ye.createMultisig=function(e,t,r){return r=r||e[0].network||pn.defaultNetwork,ye.payingTo(lh().buildMultisigOut(e,t),r)};ye._transformString=function(e,t,r){if(typeof e!="string")throw new TypeError("data parameter supplied is not a string.");if(e.length<27)throw new Error("Invalid Address string provided");e=e.trim();var i=pn.get(t);if(t&&!i)throw new TypeError("Unknown network");var n=jB.decode(e);return ye._transformBuffer(n,t,r)};ye.fromPublicKey=function(e,t){var r=ye._transformPublicKey(e);return t=t||pn.defaultNetwork,new ye(r.hashBuffer,t,r.type)};ye.fromPrivateKey=function(e,t){let r=P_.fromPrivateKey(e);return t=t||e.network||pn.defaultNetwork,ye.fromPublicKey(r,t)};ye.fromPublicKeyHash=function(e,t){var r=ye._transformHash(e);return new ye(r.hashBuffer,t,ye.PayToPublicKeyHash)};ye.fromScriptHash=function(e,t){va.checkArgument(e,"hash parameter is required");var r=ye._transformHash(e);return new ye(r.hashBuffer,t,ye.PayToScriptHash)};ye.payingTo=function(e,t){return va.checkArgument(e,"script is required"),va.checkArgument(e instanceof lh(),"script must be instance of Script"),ye.fromScriptHash(zB.sha256ripemd160(e.toBuffer()),t)};ye.fromScript=function(e,t){va.checkArgument(e instanceof lh(),"script must be a Script instance");var r=ye._transformScript(e,t);return new ye(r.hashBuffer,t,r.type)};ye.fromBuffer=function(e,t,r){var i=ye._transformBuffer(e,t,r);return new ye(i.hashBuffer,i.network,i.type)};ye.fromHex=function(e,t,r){return ye.fromBuffer(f.Buffer.from(e,"hex"),t,r)};ye.fromString=function(e,t,r){var i=ye._transformString(e,t,r);return new ye(i.hashBuffer,i.network,i.type)};ye.fromObject=function(t){va.checkState(KB.isHexa(t.hash),'Unexpected hash property, "'+t.hash+'", expected to be hex.');var r=f.Buffer.from(t.hash,"hex");return new ye(r,t.network,t.type)};ye.getValidationError=function(e,t,r){var i;try{new ye(e,t,r)}catch(n){i=n}return i};ye.isValid=function(e,t,r){return!ye.getValidationError(e,t,r)};ye.prototype.isPayToPublicKeyHash=function(){return this.type===ye.PayToPublicKeyHash};ye.prototype.isPayToScriptHash=function(){return this.type===ye.PayToScriptHash};ye.prototype.toBuffer=function(){var e=f.Buffer.from([this.network[this.type]]),t=f.Buffer.concat([e,this.hashBuffer]);return t};ye.prototype.toHex=function(){return this.toBuffer().toString("hex")};ye.prototype.toObject=ye.prototype.toJSON=function(){return{hash:this.hashBuffer.toString("hex"),type:this.type,network:this.network.toString()}};ye.prototype.inspect=function(){return"<Address: "+this.toString()+", type: "+this.type+", network: "+this.network+">"};ye.prototype.toString=function(){return jB.encode(this.toBuffer())};VB.exports=ye;function lh(){return ut()}});var ei=T((Gse,ZB)=>{"use strict";g();var nm=at(),D9=Ni(),GB=Pc(),ns=Ke(),WB=ni(),go=ca(),k_=un(),H9=sr(),q9=Ki(),YB=Ie(),R_="[REDACTED]";function Ne(e,t){if(!(this instanceof Ne))return new Ne(e,t);if(e instanceof Ne)return e;var r=this._classifyArguments(e,t);if(!r.bn||r.bn.cmp(new ns(0))===0)throw new TypeError("Number can not be equal to zero, undefined, null or false");if(!r.bn.lt(k_.getN()))throw new TypeError("Number must be less than N");if(typeof r.network>"u")throw new TypeError('Must specify the network ("livenet" or "testnet")');return WB.defineImmutable(this,{bn:r.bn,compressed:r.compressed,network:r.network}),Object.defineProperty(this,"publicKey",{configurable:!1,enumerable:!0,get:this.toPublicKey.bind(this)}),this}Ne.prototype._classifyArguments=function(e,t){var r={compressed:!0,network:t?go.get(t):go.defaultNetwork};if(nm.isUndefined(e)||nm.isNull(e))r.bn=Ne._getRandomBN();else if(e instanceof ns)r.bn=e;else if(e instanceof f.Buffer||e instanceof Uint8Array)r=Ne._transformBuffer(e,t);else if(e.bn&&e.network)r=Ne._transformObject(e);else if(!t&&go.get(e))r.bn=Ne._getRandomBN(),r.network=go.get(e);else if(typeof e=="string")WB.isHexa(e)?r.bn=new ns(f.Buffer.from(e,"hex")):r=Ne._transformWIF(e,t);else throw new TypeError("First argument is an unrecognized data type.");return r};Ne._getRandomBN=function(){var e,t;do{var r=q9.getRandomBuffer(32);t=ns.fromBuffer(r),e=t.lt(k_.getN())}while(!e);return t};Ne._transformBuffer=function(e,t){var r={};if(e.length===32)return Ne._transformBNBuffer(e,t);if(r.network=go.get(e[0],"privatekey"),!r.network)throw new Error("Invalid network");if(t&&r.network!==go.get(t))throw new TypeError("Private key network mismatch");if(e.length===34&&e[33]===1)r.compressed=!0;else if(e.length===33)r.compressed=!1;else throw new Error("Length of buffer must be 33 (uncompressed) or 34 (compressed)");return r.bn=ns.fromBuffer(e.slice(1,33)),r};Ne._transformBNBuffer=function(e,t,r){var i={};return i.network=go.get(t)||go.defaultNetwork,i.bn=ns.fromBuffer(e),i.compressed=r===void 0?!0:!!r,i};Ne._transformWIF=function(e,t){return Ne._transformBuffer(GB.decode(e),t)};Ne.fromBuffer=function(e,t,r){return r!==void 0&&e&&e.length===32?new Ne(Ne._transformBNBuffer(e,t,r)):new Ne(e,t)};Ne.fromHex=function(e,t,r){return Ne.fromBuffer(f.Buffer.from(e,"hex"),t,r)};Ne._transformObject=function(e){if(e.bn instanceof ns)return{bn:e.bn,network:go.get(e.network),compressed:e.compressed};if(typeof e.bn!="string"||!e.bn.length)throw new TypeError("Invalid private key: `bn` must be a hex string");if(e.bn===R_)throw new TypeError('Invalid private key: `bn` is "'+R_+'". JSON.stringify() redacts the secret on purpose \u2014 use toObject() for a round-trippable export, or toWIF().');if(!/^[0-9a-fA-F]+$/.test(e.bn))throw new TypeError("Invalid private key: `bn` is not hexadecimal");var t=new ns(e.bn,"hex");if(t.isZero()||t.gte(k_.getN()))throw new TypeError("Invalid private key: outside the range of valid keys");var r=go.get(e.network);return{bn:t,network:r,compressed:e.compressed}};Ne.fromString=Ne.fromWIF=function(e,t){return YB.checkArgument(nm.isString(e),"First argument is expected to be a string."),new Ne(e,t)};Ne.fromObject=Ne.fromJSON=function(e){return YB.checkArgument(nm.isObject(e),"First argument is expected to be an object."),new Ne(e)};Ne.fromRandom=function(e){var t=Ne._getRandomBN();return new Ne(t,e)};Ne.getValidationError=function(e,t){var r;try{new Ne(e,t)}catch(i){r=i}return r};Ne.isValid=function(e,t){return e?!Ne.getValidationError(e,t):!1};Ne.prototype.toString=function(){return this.toWIF()};Ne.prototype.toWIF=function(){var e=this.network,t=this.compressed,r;return t?r=f.Buffer.concat([f.Buffer.from([e.privatekey]),this.bn.toBuffer({size:32}),f.Buffer.from([1])]):r=f.Buffer.concat([f.Buffer.from([e.privatekey]),this.bn.toBuffer({size:32})]),GB.encode(r)};Ne.prototype.toBigNumber=function(){return this.bn};Ne.prototype.toBuffer=function(){return this.bn.toBuffer({size:32})};Ne.prototype.toHex=function(){return this.toBuffer().toString("hex")};Ne.prototype.toPublicKey=function(){return this._pubkey||(this._pubkey=H9.fromPrivateKey(this)),this._pubkey};Ne.prototype.toAddress=function(e){var t=this.toPublicKey();return D9.fromPublicKey(t,e||this.network)};Ne.prototype.toObject=function(){return{bn:this.bn.toString("hex"),compressed:this.compressed,network:this.network.toString()}};Ne.prototype.toJSON=function(){return{bn:R_,compressed:this.compressed,network:this.network.toString()}};Ne.prototype.inspect=function(){var e=this.compressed?"":", uncompressed";return"<PrivateKey: "+this.toHex()+", network: "+this.network+e+">"};ZB.exports=Ne});var sr=T((Yse,XB)=>{"use strict";g();var Uc=Ke(),Fc=un(),U9=Le(),F9=ni(),$B=ca(),B_=at(),uu=Ie();function xe(e,t){if(!(this instanceof xe))return new xe(e,t);if(uu.checkArgument(e,"First argument is required, please include public key data."),e instanceof xe)return e;t=t||{};var r=this._classifyArgs(e,t);return r.point.validate(),F9.defineImmutable(this,{point:r.point,compressed:r.compressed,network:r.network||$B.defaultNetwork}),this}xe.prototype._classifyArgs=function(e,t){var r={compressed:B_.isUndefined(t.compressed)||t.compressed};if(e instanceof Fc)r.point=e;else if(e.x&&e.y)r=xe._transformObject(e);else if(typeof e=="string")r=xe._transformDER(f.Buffer.from(e,"hex"));else if(xe._isBuffer(e))r=xe._transformDER(e);else if(xe._isPrivateKey(e))r=xe._transformPrivateKey(e);else throw new TypeError("First argument is an unrecognized data format.");return r.network||(r.network=B_.isUndefined(t.network)?void 0:$B.get(t.network)),r};xe._isPrivateKey=function(e){var t=ei();return e instanceof t};xe._isBuffer=function(e){return e instanceof f.Buffer||e instanceof Uint8Array};xe._transformPrivateKey=function(e){uu.checkArgument(xe._isPrivateKey(e),"Must be an instance of PrivateKey");var t={};return t.point=Fc.getG().mul(e.bn),t.compressed=e.compressed,t.network=e.network,t};xe._transformDER=function(e,t){uu.checkArgument(xe._isBuffer(e),"Must be a buffer of DER encoded public key");var r={};t=B_.isUndefined(t)?!0:t;var i,n,o,a;if(e[0]===4||!t&&(e[0]===6||e[0]===7)){if(o=e.slice(1,33),a=e.slice(33,65),o.length!==32||a.length!==32||e.length!==65)throw new TypeError("Length of x and y must be 32 bytes");i=new Uc(o),n=new Uc(a),r.point=new Fc(i,n),r.compressed=!1}else if(e[0]===3)o=e.slice(1),i=new Uc(o),r=xe._transformX(!0,i),r.compressed=!0;else if(e[0]===2)o=e.slice(1),i=new Uc(o),r=xe._transformX(!1,i),r.compressed=!0;else throw new TypeError("Invalid DER format public key");return r};xe._transformX=function(e,t){uu.checkArgument(typeof e=="boolean","Must specify whether y is odd or not (true or false)");var r={};return r.point=Fc.fromX(e,t),r};xe._transformObject=function(e){var t=new Uc(e.x,"hex"),r=new Uc(e.y,"hex"),i=new Fc(t,r);return new xe(i,{compressed:e.compressed})};xe.fromPrivateKey=function(e){uu.checkArgument(xe._isPrivateKey(e),"Must be an instance of PrivateKey");var t=xe._transformPrivateKey(e);return new xe(t.point,{compressed:t.compressed,network:t.network})};xe.fromDER=xe.fromBuffer=function(e,t){uu.checkArgument(xe._isBuffer(e),"Must be a buffer of DER encoded public key");var r=xe._transformDER(e,t);return new xe(r.point,{compressed:r.compressed})};xe.fromPoint=function(e,t){return uu.checkArgument(e instanceof Fc,"First argument must be an instance of Point."),new xe(e,{compressed:t})};xe.fromHex=xe.fromString=function(e,t){var r=f.Buffer.from(e,t||"hex"),i=xe._transformDER(r);return new xe(i.point,{compressed:i.compressed})};xe.fromX=function(e,t){var r=xe._transformX(e,t);return new xe(r.point,{compressed:r.compressed})};xe.getValidationError=function(e){var t;try{new xe(e)}catch(r){t=r}return t};xe.isValid=function(e){return!xe.getValidationError(e)};xe.prototype.toObject=xe.prototype.toJSON=function(){return{x:this.point.getX().toString("hex",2),y:this.point.getY().toString("hex",2),compressed:this.compressed}};xe.prototype.toBuffer=xe.prototype.toDER=function(){var e=this.point.getX(),t=this.point.getY(),r=e.toBuffer({size:32}),i=t.toBuffer({size:32}),n;if(this.compressed){var o=i[i.length-1]%2;return o?n=f.Buffer.from([3]):n=f.Buffer.from([2]),f.Buffer.concat([n,r])}else return n=f.Buffer.from([4]),f.Buffer.concat([n,r,i])};xe.prototype._getID=function(){return U9.sha256ripemd160(this.toBuffer())};xe.prototype.toAddress=function(e){var t=Ni();return t.fromPublicKey(this,e||this.network)};xe.prototype.toString=xe.prototype.toHex=function(){return this.toDER().toString("hex")};xe.prototype.inspect=function(){return"<PublicKey: "+this.toHex()+(this.compressed?"":", uncompressed")+">"};XB.exports=xe});var dn=T(($se,JB)=>{"use strict";g();var Gi=Ke(),mo=un(),j9=gt(),z9=sr(),K9=Ki(),os=Le(),V9=at(),N_=Ie(),Ct=function e(t){if(!(this instanceof e))return new e(t);t&&this.set(t)};Object.defineProperty(Ct.prototype,"k",{get:function(){return this._k},set:function(e){this._k=e,this._kFresh=!0},enumerable:!0,configurable:!0});Ct.prototype.set=function(e){if(this.hashbuf=e.hashbuf||this.hashbuf,this.endian=e.endian||this.endian,this.privkey=e.privkey||this.privkey,this.pubkey=e.pubkey||(this.privkey?this.privkey.publicKey:this.pubkey),e.sig)if(f.Buffer.isBuffer(e.sig)){var t=gt();this.sig=t.fromDER(e.sig)}else this.sig=e.sig;else this.sig=this.sig;return e.k&&(this.k=e.k),this.verified=e.verified||this.verified,this};Ct.prototype.privkey2pubkey=function(){this.pubkey=this.privkey.toPublicKey()};Ct.prototype.calci=function(){for(var e=0;e<4;e++){this.sig.i=e;var t;try{t=this.toPublicKey()}catch(r){console.error(r);continue}if(t.point.eq(this.pubkey.point))return this.sig.compressed=this.pubkey.compressed,this}throw this.sig.i=void 0,new Error("Unable to find valid recovery factor")};Ct.fromString=function(e){var t=JSON.parse(e);return new Ct(t)};Ct.prototype.randomK=function(){var e=mo.getN(),t;do t=Gi.fromBuffer(K9.getRandomBuffer(32));while(!(t.lt(e)&&t.gt(Gi.Zero)));return this.k=t,this};Ct.prototype.deterministicK=function(e){V9.isUndefined(e)&&(e=0);var t=f.Buffer.alloc(32);t.fill(1);var r=f.Buffer.alloc(32);r.fill(0);var i=this.privkey.bn.toBuffer({size:32}),n=this.endian==="little"?f.Buffer.from(this.hashbuf).reverse():this.hashbuf;r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([0]),i,n]),r),t=os.sha256hmac(t,r),r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([1]),i,n]),r),t=os.sha256hmac(t,r),t=os.sha256hmac(t,r);for(var o=Gi.fromBuffer(t),a=mo.getN(),s=0;s<e||!(o.lt(a)&&o.gt(Gi.Zero));s++)r=os.sha256hmac(f.Buffer.concat([t,f.Buffer.from([0])]),r),t=os.sha256hmac(t,r),t=os.sha256hmac(t,r),o=Gi.fromBuffer(t);return this.k=o,this};Ct.prototype.toPublicKey=function(){var e=this.sig.i;N_.checkArgument(e===0||e===1||e===2||e===3,new Error("i must be equal to 0, 1, 2, or 3"));var t=Gi.fromBuffer(this.hashbuf),r=this.sig.r,i=this.sig.s,n=e&1,o=e>>1,a=mo.getN(),s=mo.getG(),u=o?r.add(a):r,c=mo.fromX(n,u),l=c.mul(a);if(!l.isInfinity())throw new Error("nR is not a valid curve point");var p=t.neg().umod(a),d=r.invm(a),v=c.mul(i).add(s.mul(p)).mul(d),_=z9.fromPoint(v,this.sig.compressed);return _};Ct.prototype.sigError=function(){if(!f.Buffer.isBuffer(this.hashbuf)||this.hashbuf.length!==32)return"hashbuf must be a 32 byte buffer";var e=this.sig.r,t=this.sig.s,r=mo.getN();try{if(e.lte(Gi.Zero)||t.lte(Gi.Zero)||e.gte(r)||t.gte(r))return"r and s not in range";var i=Gi.fromBuffer(this.hashbuf,this.endian?{endian:this.endian}:void 0),n=t.invm(r),o=n.mul(i).umod(r),a=n.mul(e).umod(r),s=mo.getG().mulAdd(o,this.pubkey.point,a);return s.isInfinity()?"p is infinity":s.getX().umod(r).cmp(e)!==0?"Invalid signature":!1}catch(u){return"Signature security validation failed: "+u.message}};Ct.toLowS=function(e){return e.gt(Gi.fromBuffer(f.Buffer.from("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex")))&&(e=mo.getN().sub(e)),e};Ct.prototype._findSignature=function(e,t){var r=mo.getN(),i=mo.getG(),n=0,o,a,s,u;do(!this.k||!this._kFresh||n>0)&&this.deterministicK(n),n++,o=this.k,a=i.mul(o),s=a.x.umod(r),u=o.invm(r).mul(t.add(e.mul(s))).umod(r);while(s.cmp(Gi.Zero)<=0||u.cmp(Gi.Zero)<=0);return this._kFresh=!1,u=Ct.toLowS(u),{s:u,r:s}};Ct.prototype.sign=function(){var e=this.hashbuf,t=this.privkey,r=t.bn;N_.checkState(e&&t&&r,new Error("invalid parameters")),N_.checkState(f.Buffer.isBuffer(e)&&e.length===32,new Error("hashbuf must be a 32 byte buffer"));var i=Gi.fromBuffer(e,this.endian?{endian:this.endian}:void 0),n=this._findSignature(r,i);return n.compressed=this.pubkey.compressed,this.sig=new j9(n),this};Ct.prototype.signRandomK=function(){return this.randomK(),this.sign()};Ct.prototype.toString=function(){var e={};return this.hashbuf&&(e.hashbuf=this.hashbuf.toString("hex")),this.privkey&&(e.privkey=this.privkey.toString()),this.pubkey&&(e.pubkey=this.pubkey.toString()),this.sig&&(e.sig=this.sig.toString()),this.k&&(e.k=this.k.toString()),JSON.stringify(e)};Ct.prototype.verify=function(){return this.verified=!this.sigError(),this.verified};Ct.prototype.verifyBool=function(){return this.verify()===!0};Ct.sign=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).sign().sig};Ct.signWithCalcI=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).sign().calci().sig};Ct.signRandomK=function(e,t,r){return Ct().set({hashbuf:e,endian:r,privkey:t}).signRandomK().sig};Ct.verify=function(e,t,r,i){return Ct().set({hashbuf:e,endian:i,sig:t,pubkey:r}).verify()};JB.exports=Ct});var eN=T((C_,QB)=>{g();(function(e,t){"use strict";typeof define=="function"&&define.amd?define([],function(){return e.secrets=t()}):typeof C_=="object"?QB.exports=t(nr()):e.secrets=t(e.crypto)})(C_,function(e){"use strict";var t,r,i,n,o;function a(){t={bits:8,radix:16,minBits:3,maxBits:20,bytesPerChar:2,maxBytesPerChar:6,primitivePolynomials:[null,null,1,3,3,5,3,3,29,17,9,5,83,27,43,3,45,9,39,39,9,5,3,33,27,9,71,39,9,5,83]},r={},i=new Array(1024).join("0"),n=!0,o=["nodeCryptoRandomBytes","browserCryptoGetRandomValues","testRandom"]}function s(){return!!(r&&r.rng&&typeof r.rng=="function")}function u(A,B){var M;if(B===0||B===1)return A;if(B&&B>1024)throw new Error("Padding must be multiples of no larger than 1024 bits.");return B=B||r.bits,A&&(M=A.length%B),M?(i+A).slice(-(B-M+A.length)):A}function c(A){var B="",M,F;for(F=A.length-1;F>=0;F--){if(M=parseInt(A[F],16),isNaN(M))throw new Error("Invalid hex character.");B=u(M.toString(2),4)+B}return B}function l(A){var B="",M,F;for(A=u(A,4),F=A.length;F>=4;F-=4){if(M=parseInt(A.slice(F-4,F),2),isNaN(M))throw new Error("Invalid binary character.");B=M.toString(16)+B}return B}function p(){return!!(e&&typeof e=="object"&&(typeof e.getRandomValues=="function"||typeof e.getRandomValues=="object")&&(typeof Uint32Array=="function"||typeof Uint32Array=="object"))}function d(){return typeof e=="object"&&typeof e.randomBytes=="function"}function v(A){function B(Y,E,h,y){var w=0,S,O="",C;for(E&&(S=E.length-1);w<S||O.length<Y;)C=Math.abs(parseInt(E[w],h)),O=O+u(C.toString(2),y),w++;return O=O.substr(-Y),(O.match(/0/g)||[]).length===O.length?null:O}function M(Y){var E,h,y,w,S=null;for(y=16,w=4,h=Math.ceil(Y/8);S===null;)E=e.randomBytes(h),S=B(Y,E.toString("hex"),y,w);return S}function F(Y){var E,h,y,w=null;for(h=10,y=32,E=Math.ceil(Y/32);w===null;)w=B(Y,e.getRandomValues(new Uint32Array(E)),h,y);return w}function V(Y){var E,h,y,w,S,O=null;w=10,S=32,h=Math.ceil(Y/32),y=123456789,E=new Uint32Array(h);for(var C=0;C<E.length;C++)E[C]=y;for(;O===null;)O=B(Y,E,w,S);return O}if(A&&A==="testRandom")return r.typeCSPRNG=A,V;if(A&&A==="nodeCryptoRandomBytes")return r.typeCSPRNG=A,M;if(A&&A==="browserCryptoGetRandomValues")return r.typeCSPRNG=A,F;if(d())return r.typeCSPRNG="nodeCryptoRandomBytes",M;if(p())return r.typeCSPRNG="browserCryptoGetRandomValues",F}function _(A,B){var M=[],F;for(B&&(A=u(A,B)),F=A.length;F>r.bits;F-=r.bits)M.push(parseInt(A.slice(F-r.bits,F),2));return M.push(parseInt(A.slice(0,F),2)),M}function I(A,B){var M=r.logs[A],F=0,V;for(V=B.length-1;V>=0;V--)F!==0?F=r.exps[(M+r.logs[F])%r.maxShares]^B[V]:F=B[V];return F}function R(A,B,M){var F=0,V,Y,E,h;for(E=0,V=B.length;E<V;E++)if(M[E]){for(Y=r.logs[M[E]],h=0;h<V;h++)if(E!==h){if(A===B[h]){Y=-1;break}Y=(Y+r.logs[A^B[h]]-r.logs[B[E]^B[h]]+r.maxShares)%r.maxShares}F=Y===-1?F:F^r.exps[Y]}return F}function k(A,B,M){var F=[],V=[A],Y,E;for(Y=1;Y<M;Y++)V[Y]=parseInt(r.rng(r.bits),2);for(Y=1,E=B+1;Y<E;Y++)F[Y-1]={x:Y,y:I(Y,V)};return F}function q(A,B,M){var F,V,Y,E,h;if(B=parseInt(B,r.radix),A=parseInt(A,10)||r.bits,F=A.toString(36).toUpperCase(),Y=Math.pow(2,A)-1,E=Y.toString(r.radix).length,V=u(B.toString(r.radix),E),typeof B!="number"||B%1!==0||B<1||B>Y)throw new Error("Share id must be an integer between 1 and "+Y+", inclusive.");return h=F+V+M,h}var z={init:function(A,B){var M=[],F=[],V=1,Y,E;if(a(),A&&(typeof A!="number"||A%1!==0||A<t.minBits||A>t.maxBits))throw new Error("Number of bits must be an integer between "+t.minBits+" and "+t.maxBits+", inclusive.");if(B&&o.indexOf(B)===-1)throw new Error("Invalid RNG type argument : '"+B+"'");for(r.radix=t.radix,r.bits=A||t.bits,r.size=Math.pow(2,r.bits),r.maxShares=r.size-1,Y=t.primitivePolynomials[r.bits],E=0;E<r.size;E++)F[E]=V,M[V]=E,V=V<<1,V>=r.size&&(V=V^Y,V=V&r.maxShares);if(r.logs=M,r.exps=F,B&&this.setRNG(B),s()||this.setRNG(),!s()||!r.bits||!r.size||!r.maxShares||!r.logs||!r.exps||r.logs.length!==r.size||r.exps.length!==r.size)throw new Error("Initialization failed.")},combine:function(A,B){var M,F,V,Y,E="",h,y,w,S=[],O=[];for(B=B||0,M=0,V=A.length;M<V;M++){if(y=this.extractShareComponents(A[M]),h===void 0)h=y.bits;else if(y.bits!==h)throw new Error("Mismatched shares: Different bit settings.");if(r.bits!==h&&this.init(h),S.indexOf(y.id)===-1)for(S.push(y.id),w=_(c(y.data)),F=0,Y=w.length;F<Y;F++)O[F]=O[F]||[],O[F][S.length-1]=w[F]}for(M=0,V=O.length;M<V;M++)E=u(R(B,S,O[M]).toString(2))+E;return l(B>=1?E:E.slice(E.indexOf("1")+1))},getConfig:function(){var A={};return A.radix=r.radix,A.bits=r.bits,A.maxShares=r.maxShares,A.hasCSPRNG=s(),A.typeCSPRNG=r.typeCSPRNG,A},extractShareComponents:function(A){var B,M,F,V,Y={},E,h;if(B=parseInt(A.substr(0,1),36),B&&(typeof B!="number"||B%1!==0||B<t.minBits||B>t.maxBits))throw new Error("Invalid share : Number of bits must be an integer between "+t.minBits+" and "+t.maxBits+", inclusive.");if(V=Math.pow(2,B)-1,F=(Math.pow(2,B)-1).toString(r.radix).length,E="^([a-kA-K3-9]{1})([a-fA-F0-9]{"+F+"})([a-fA-F0-9]+)$",h=new RegExp(E).exec(A),h&&(M=parseInt(h[2],r.radix)),typeof M!="number"||M%1!==0||M<1||M>V)throw new Error("Invalid share : Share id must be an integer between 1 and "+r.maxShares+", inclusive.");if(h&&h[3])return Y.bits=B,Y.id=M,Y.data=h[3],Y;throw new Error("The share data provided is invalid : "+A)},setRNG:function(A){var B="Random number generator is invalid ",M=" Supply an CSPRNG of the form function(bits){} that returns a string containing 'bits' number of random 1's and 0's.";if(A&&typeof A=="string"&&o.indexOf(A)===-1)throw new Error("Invalid RNG type argument : '"+A+"'");if(A||(A=v()),A&&typeof A=="string"&&(A=v(A)),n){if(A&&typeof A!="function")throw new Error(B+"(Not a function)."+M);if(A&&typeof A(r.bits)!="string")throw new Error(B+"(Output is not a string)."+M);if(A&&!parseInt(A(r.bits),2))throw new Error(B+"(Binary string output not parseable to an Integer)."+M);if(A&&A(r.bits).length>r.bits)throw new Error(B+"(Output length is greater than config.bits)."+M);if(A&&A(r.bits).length<r.bits)throw new Error(B+"(Output length is less than config.bits)."+M)}return r.rng=A,!0},str2hex:function(A,B){var M,F,V="",Y,E,h,y;if(typeof A!="string")throw new Error("Input must be a character string.");if(B||(B=t.bytesPerChar),typeof B!="number"||B<1||B>t.maxBytesPerChar||B%1!==0)throw new Error("Bytes per character must be an integer between 1 and "+t.maxBytesPerChar+", inclusive.");for(M=2*B,F=Math.pow(16,M)-1,h=0,y=A.length;h<y;h++){if(E=A[h].charCodeAt(),isNaN(E))throw new Error("Invalid character: "+A[h]);if(E>F)throw Y=Math.ceil(Math.log(E+1)/Math.log(256)),new Error("Invalid character code ("+E+"). Maximum allowable is 256^bytes-1 ("+F+"). To convert this character, use at least "+Y+" bytes.");V=u(E.toString(16),M)+V}return V},hex2str:function(A,B){var M,F="",V,Y;if(typeof A!="string")throw new Error("Input must be a hexadecimal string.");if(B=B||t.bytesPerChar,typeof B!="number"||B%1!==0||B<1||B>t.maxBytesPerChar)throw new Error("Bytes per character must be an integer between 1 and "+t.maxBytesPerChar+", inclusive.");for(M=2*B,A=u(A,M),V=0,Y=A.length;V<Y;V+=M)F=String.fromCharCode(parseInt(A.slice(V,V+M),16))+F;return F},random:function(A){if(typeof A!="number"||A%1!==0||A<2||A>65536)throw new Error("Number of bits must be an Integer between 1 and 65536.");return l(r.rng(A))},share:function(A,B,M,F){var V,Y,E=new Array(B),h=new Array(B),y,w,S;if(F=F||128,typeof A!="string")throw new Error("Secret must be a string.");if(typeof B!="number"||B%1!==0||B<2)throw new Error("Number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive.");if(B>r.maxShares)throw V=Math.ceil(Math.log(B+1)/Math.LN2),new Error("Number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive. To create "+B+" shares, use at least "+V+" bits.");if(typeof M!="number"||M%1!==0||M<2)throw new Error("Threshold number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive.");if(M>r.maxShares)throw V=Math.ceil(Math.log(M+1)/Math.LN2),new Error("Threshold number of shares must be an integer between 2 and 2^bits-1 ("+r.maxShares+"), inclusive. To use a threshold of "+M+", use at least "+V+" bits.");if(M>B)throw new Error("Threshold number of shares was "+M+" but must be less than or equal to the "+B+" shares specified as the total to generate.");if(typeof F!="number"||F%1!==0||F<0||F>1024)throw new Error("Zero-pad length must be an integer between 0 and 1024 inclusive.");for(A="1"+c(A),A=_(A,F),y=0,S=A.length;y<S;y++)for(Y=k(A[y],B,M),w=0;w<B;w++)E[w]=E[w]||Y[w].x.toString(r.radix),h[w]=u(Y[w].y.toString(2))+(h[w]||"");for(y=0;y<B;y++)E[y]=q(r.bits,E[y],l(h[y]));return E},newShare:function(A,B){var M,F;if(A&&typeof A=="string"&&(A=parseInt(A,r.radix)),F=A.toString(r.radix),A&&F&&B&&B[0])return M=this.extractShareComponents(B[0]),q(M.bits,F,this.combine(B,A));throw new Error("Invalid 'id' or 'shares' Array argument to newShare().")},_reset:a,_padLeft:u,_hex2bin:c,_bin2hex:l,_hasCryptoGetRandomValues:p,_hasCryptoRandomBytes:d,_getRNG:v,_isSetRNG:s,_splitNumStringToIntArray:_,_horner:I,_lagrange:R,_getShares:k,_constructPublicShareString:q};return z.init(),z})});var M_=T((Qse,nN)=>{"use strict";g();var vi=Ke(),tN=Ki(),rN=Le(),om=null;function L_(){if(om)return om;var e=eN();return e.setRNG(function(t){for(var r=64,i=0;i<r;i++){for(var n=tN.getRandomBuffer(Math.ceil(t/8)),o="",a=0;a<n.length;a++)o+=("00000000"+n[a].toString(2)).slice(-8);if(o=o.slice(0,t),/1/.test(o))return o}throw new Error("shamir: CSPRNG returned all-zero draws "+r+" times in a row \u2014 refusing to hang on a degenerate/stubbed random source")}),om=e,om}var am="ff",iN=2;function kr(e){return this instanceof kr?(this.options=e||{},this):new kr(e)}kr.split=function(e,t,r,i){if(i=i||{},e==null)throw new Error("Secret is required");if(t<2)throw new Error("Threshold must be at least 2");if(r<t)throw new Error("Number of shares must be at least threshold");if(t>255||r>255)throw new Error("Threshold and shares must be <= 255");for(var n=f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"utf8"),o=am+n.toString("hex"),a=L_().share(o,r,t),s=tN.getRandomBuffer(8).toString("hex"),u=i.checksum===!0,c=u?rN.sha256(n).slice(0,4).toString("hex"):null,l=[],p=0;p<a.length;p++)l.push({v:iN,id:p+1,threshold:t,shares:r,length:n.length,splitId:s,share:a[p],checksum:c});return l};kr.combine=function(e){if(!e||e.length===0)throw new Error("Shares array is required");if(e[0]&&Array.isArray(e[0].bytes)&&e[0].share===void 0)return kr._combineLegacy(e);var t=e[0].threshold,r=e[0].splitId;if(e.length<t)throw new Error("Insufficient shares: need "+t+", got "+e.length);for(var i=[],n=0;n<e.length;n++){var o=e[n];if(!o||typeof o.share!="string")throw new Error("Invalid share at index "+n);if(r!==void 0&&o.splitId!==r)throw new Error("Shares are from different splits (splitId mismatch)");if(o.threshold!==t)throw new Error("Shares have inconsistent threshold");i.push(o.share)}var a=L_().combine(i);if(a.slice(0,am.length)!==am)throw new Error("Reconstruction failed: invalid or insufficient shares");var s=f.Buffer.from(a.slice(am.length),"hex"),u=e[0].checksum;if(u){var c=rN.sha256(s).slice(0,4).toString("hex");if(c!==u)throw new Error("Integrity check failed: shares are inconsistent or tampered")}return s};kr.verifyShare=function(e){try{return!e||typeof e!="object"?!1:Array.isArray(e.bytes)&&e.share===void 0?kr._verifyLegacyShare(e):e.v!==iN||typeof e.share!="string"||!/^[0-9a-fA-F]+$/.test(e.share)||typeof e.threshold!="number"||typeof e.shares!="number"||e.threshold<2||e.shares<e.threshold||e.shares>255||e.id<1||e.id>e.shares||e.checksum!==null&&e.checksum!==void 0&&!/^[0-9a-fA-F]{8}$/.test(e.checksum)?!1:(L_().extractShareComponents(e.share),!0)}catch{return!1}};kr.generateTestVectors=function(){var e="Hello, Bitcoin SV!",t=3,r=5,i=kr.split(e,t,r),n=kr.combine(i.slice(0,t));return{secret:e,threshold:t,totalShares:r,shares:i,reconstructed:n.toString("utf8"),valid:n.toString("utf8")===e}};var as=new vi(2147483647);kr._combineLegacy=function(e){var t=e[0].threshold,r=e[0].shares,i=e[0].length;if(e.length<t)throw new Error("Insufficient shares: need "+t+", got "+e.length);for(var n=0;n<e.length;n++){if(e[n].threshold!==t||e[n].shares!==r)throw new Error("Shares have inconsistent parameters");if(e[n].length!==i)throw new Error("Shares have different secret lengths")}for(var o=[],a=0;a<i;a++){for(var s=[],u=0;u<Math.min(e.length,t);u++)s.push(e[u].bytes[a]);o.push(kr._combineByteLegacy(s))}return f.Buffer.from(o)};kr._combineByteLegacy=function(e){for(var t=new vi(0),r=0;r<e.length;r++){for(var i=new vi(e[r].x),n=new vi(e[r].y,16),o=new vi(1),a=new vi(1),s=0;s<e.length;s++)if(r!==s){var u=new vi(e[s].x),c=new vi(0).sub(u);c.lt(new vi(0))&&(c=c.add(as)),o=o.mul(c).mod(as);var l=i.sub(u);l.lt(new vi(0))&&(l=l.add(as)),a=a.mul(l).mod(as)}var p=kr._modInverseLegacy(a,as),d=o.mul(p).mod(as);t=t.add(n.mul(d)).mod(as)}return t.mod(as).mod(new vi(256)).toNumber()};kr._modInverseLegacy=function(e,t){e.lt(new vi(0))&&(e=e.mod(t).add(t));var r=kr._extendedGCDLegacy(e,t);if(!r.gcd.eq(new vi(1)))throw new Error("Modular inverse does not exist");return r.x.mod(t).add(t).mod(t)};kr._extendedGCDLegacy=function(e,t){if(e.eq(new vi(0)))return{gcd:t,x:new vi(0),y:new vi(1)};var r=kr._extendedGCDLegacy(t.mod(e),e);return{gcd:r.gcd,x:r.y.sub(t.div(e).mul(r.x)),y:r.x}};kr._verifyLegacyShare=function(e){if(!e.id||!e.threshold||!e.shares||!e.bytes||typeof e.length!="number"||e.threshold<2||e.shares<e.threshold||!Array.isArray(e.bytes)||e.bytes.length!==e.length)return!1;for(var t=0;t<e.bytes.length;t++){var r=e.bytes[t];if(!r||!r.x||!r.y||r.x<1||r.x>e.shares||!/^[0-9a-fA-F]+$/.test(r.y))return!1}return!0};nN.exports=kr});var um=T((tue,oN)=>{"use strict";g();var vo=Ke(),G9=un(),W9=dn(),hh=G9.getN(),sm=hh.shrn(1);function Y9(e,t,r){if(!f.Buffer.isBuffer(e)||e.length!==32)throw new Error("Invalid message hash: must be 32-byte buffer");if(!t)return!1;let i=t;if(f.Buffer.isBuffer(t))try{i=gt().fromDER(t)}catch{return!1}if(!i||!i.r||!i.s)return!1;let n=vo.isBN(i.r)?i.r:new vo(i.r),o=vo.isBN(i.s)?i.s:new vo(i.s);if(n.isZero()||o.isZero()||n.gte(hh)||o.gte(hh)||o.gt(sm))return!1;let a=gt(),s=new a({r:n,s:o});return W9.verify(e,s,r)}function Z9(e){if(!e)return!1;let t=e;if(f.Buffer.isBuffer(e))try{t=gt().fromDER(e)}catch{return!1}return!t||!t.s?!1:(vo.isBN(t.s)?t.s:new vo(t.s)).lte(sm)}function $9(e){if(!e||!e.r||!e.s)throw new Error("Invalid signature object");let t=vo.isBN(e.r)?e.r:new vo(e.r),r=vo.isBN(e.s)?e.s:new vo(e.s),i=r;return r.gt(sm)&&(i=hh.sub(r)),{r:t,s:i}}oN.exports={smartVerify:Y9,isCanonical:Z9,canonicalize:$9,constants:{n:hh,nh:sm}}});var cm=T((iue,uN)=>{"use strict";g();var X9=Ke(),{secp256k1:jc}=(Ml(),en(Ll)),aN=jc.Point,J9=aN.Fn.ORDER;function D_(e){var t=e.toString(16);return t.length%2&&(t="0"+t),new X9(t,16)}function H_(e){return f.Buffer.isBuffer(e)?Uint8Array.from(e):e instanceof Uint8Array?e:Uint8Array.from(f.Buffer.from(e,"hex"))}function q_(e){this._p=e}q_.prototype.eq=function(e){var t=e&&e._p?e._p:e;return this._p.equals(t)};var sN={curve:{n:D_(J9)},keyFromPrivate:function(e,t){var r;f.Buffer.isBuffer(e)?r=e:e instanceof Uint8Array?r=f.Buffer.from(e):r=f.Buffer.from(e,t||"hex");var i=Uint8Array.from(r);return{_priv:i,getPublic:function(){return new q_(aN.fromBytes(jc.getPublicKey(i,!0)))}}},sign:function(e,t){var r=jc.sign(H_(e),t._priv,{lowS:!0,prehash:!1,format:"recovered"}),i=r[0],n=D_(BigInt("0x"+f.Buffer.from(r.subarray(1,33)).toString("hex"))),o=D_(BigInt("0x"+f.Buffer.from(r.subarray(33,65)).toString("hex")));return{r:n,s:o,recoveryParam:i}},verify:function(e,t,r){try{if(!t||typeof t!="object")return!1;var i=t.r,n=t.s;if(!i||!n||typeof i.cmp!="function"||typeof n.cmp!="function"||i.isZero()||n.isZero())return!1;var o=sN.curve.n;if(i.cmp(o)>=0||n.cmp(o)>=0)return!1;var a=f.Buffer.concat([i.toBuffer({size:32}),n.toBuffer({size:32})]),s=r._priv?jc.getPublicKey(r._priv,!0):r._p?r._p.toBytes(!0):r;return jc.verify(Uint8Array.from(a),H_(e),Uint8Array.from(s),{lowS:!1,prehash:!1})}catch{return!1}},recoverPubKey:function(e,t,r){var i=f.Buffer.concat([t.r.toBuffer({size:32}),t.s.toBuffer({size:32})]),n=jc.Signature.fromBytes(Uint8Array.from(i),"compact").addRecoveryBit(r);return new q_(n.recoverPublicKey(H_(e)))}};uN.exports=sN});var zc=T((oue,lN)=>{"use strict";g();var fm=at(),dh=Ke(),lm=lo(),Q9=Nn(),eW=Le(),cN=Ie(),tW=486604799,nt=function e(t){if(!(this instanceof e))return new e(t);var r=e._from(t);return this.version=r.version,this.prevHash=r.prevHash,this.merkleRoot=r.merkleRoot,this.time=r.time,this.timestamp=r.time,this.bits=r.bits,this.nonce=r.nonce,r.hash&&cN.checkState(this.hash===r.hash,"Argument object hash property does not match block hash."),this};nt._from=function(t){var r={};if(f.Buffer.isBuffer(t))r=nt._fromBufferReader(lm(t));else if(fm.isObject(t))r=nt._fromObject(t);else throw new TypeError("Unrecognized argument for BlockHeader");return r};nt._fromObject=function(t){cN.checkArgument(t,"data is required");var r=t.prevHash,i=t.merkleRoot;fm.isString(t.prevHash)&&(r=f.Buffer.from(t.prevHash,"hex").reverse()),fm.isString(t.merkleRoot)&&(i=f.Buffer.from(t.merkleRoot,"hex").reverse());var n={hash:t.hash,version:t.version,prevHash:r,merkleRoot:i,time:t.time,timestamp:t.time,bits:t.bits,nonce:t.nonce};return n};nt.fromObject=function(t){var r=nt._fromObject(t);return new nt(r)};nt.fromRawBlock=function(t){f.Buffer.isBuffer(t)||(t=f.Buffer.from(t,"binary"));var r=lm(t);r.pos=nt.Constants.START_OF_HEADER;var i=nt._fromBufferReader(r);return new nt(i)};nt.fromBuffer=function(t){var r=nt._fromBufferReader(lm(t));return new nt(r)};nt.fromString=function(t){var r=f.Buffer.from(t,"hex");return nt.fromBuffer(r)};nt._fromBufferReader=function(t){var r={};return r.version=t.readInt32LE(),r.prevHash=t.read(32),r.merkleRoot=t.read(32),r.time=t.readUInt32LE(),r.bits=t.readUInt32LE(),r.nonce=t.readUInt32LE(),r};nt.fromBufferReader=function(t){var r=nt._fromBufferReader(t);return new nt(r)};nt.prototype.toObject=nt.prototype.toJSON=function(){return{hash:this.hash,version:this.version,prevHash:f.Buffer.from(this.prevHash).reverse().toString("hex"),merkleRoot:f.Buffer.from(this.merkleRoot).reverse().toString("hex"),time:this.time,bits:this.bits,nonce:this.nonce}};nt.prototype.toBuffer=function(){return this.toBufferWriter().concat()};nt.prototype.toString=function(){return this.toBuffer().toString("hex")};nt.prototype.toBufferWriter=function(t){return t||(t=new Q9),t.writeInt32LE(this.version),t.write(this.prevHash),t.write(this.merkleRoot),t.writeUInt32LE(this.time),t.writeUInt32LE(this.bits),t.writeUInt32LE(this.nonce),t};nt.prototype.getTargetDifficulty=function(t){t=t||this.bits;for(var r=new dh(t&16777215),i=8*((t>>>24)-3);i-- >0;)r=r.mul(new dh(2));return r};nt.prototype.getDifficulty=function(){var t=this.getTargetDifficulty(tW).mul(new dh(Math.pow(10,8))),r=this.getTargetDifficulty(),i=t.div(r).toString(10),n=i.length-8;return i=i.slice(0,n)+"."+i.slice(n),parseFloat(i)};nt.prototype._getHash=function(){var t=this.toBuffer();return eW.sha256sha256(t)};var fN={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=lm(this._getHash()).readReverse().toString("hex")),this._id},set:fm.noop};Object.defineProperty(nt.prototype,"id",fN);Object.defineProperty(nt.prototype,"hash",fN);nt.prototype.validTimestamp=function(){var t=Math.round(new Date().getTime()/1e3);return!(this.time>t+nt.Constants.MAX_TIME_OFFSET)};nt.prototype.validProofOfWork=function(){var t=new dh(this.id,"hex"),r=this.getTargetDifficulty();return!(t.cmp(r)>0)};nt.prototype.inspect=function(){return"<BlockHeader "+this.id+">"};nt.Constants={START_OF_HEADER:8,MAX_TIME_OFFSET:7200,LARGEST_HASH:new dh("10000000000000000000000000000000000000000000000000000000000000000","hex")};lN.exports=nt});var vN=T((sue,mN)=>{"use strict";g();var F_=at(),dN=zc(),hN=Ke(),j_=lo(),rW=Nn(),iW=Le(),U_=zt(),pN=Ie();function qe(e){return this instanceof qe?(F_.extend(this,qe._from(e)),this):new qe(e)}qe.MAX_BLOCK_SIZE=128e6;qe._from=function(t){var r={};if(f.Buffer.isBuffer(t))r=qe._fromBufferReader(j_(t));else if(F_.isObject(t))r=qe._fromObject(t);else throw new TypeError("Unrecognized argument for Block");return r};qe._fromObject=function(t){var r=[];t.transactions.forEach(function(n){n instanceof U_?r.push(n):r.push(U_().fromObject(n))});var i={header:dN.fromObject(t.header),transactions:r};return i};qe.fromObject=function(t){var r=qe._fromObject(t);return new qe(r)};qe._fromBufferReader=function(t){var r={};pN.checkState(!t.finished(),"No block data received"),r.header=dN.fromBufferReader(t);var i=t.readVarintNum();r.transactions=[];for(var n=0;n<i;n++)r.transactions.push(U_().fromBufferReader(t));return r};qe.fromBufferReader=function(t){pN.checkArgument(t,"br is required");var r=qe._fromBufferReader(t);return new qe(r)};qe.fromBuffer=function(t){return qe.fromBufferReader(new j_(t))};qe.fromString=function(t){var r=f.Buffer.from(t,"hex");return qe.fromBuffer(r)};qe.fromRawBlock=function(t){f.Buffer.isBuffer(t)||(t=f.Buffer.from(t,"binary"));var r=j_(t);r.pos=qe.Values.START_OF_BLOCK;var i=qe._fromBufferReader(r);return new qe(i)};qe.prototype.toObject=qe.prototype.toJSON=function(){var t=[];return this.transactions.forEach(function(r){t.push(r.toObject())}),{header:this.header.toObject(),transactions:t}};qe.prototype.toBuffer=function(){return this.toBufferWriter().concat()};qe.prototype.toString=function(){return this.toBuffer().toString("hex")};qe.prototype.toBufferWriter=function(t){t||(t=new rW),t.write(this.header.toBuffer()),t.writeVarintNum(this.transactions.length);for(var r=0;r<this.transactions.length;r++)this.transactions[r].toBufferWriter(t);return t};qe.prototype.getTransactionHashes=function(){var t=[];if(this.transactions.length===0)return[qe.Values.NULL_HASH];for(var r=0;r<this.transactions.length;r++)t.push(this.transactions[r]._getHash());return t};qe.prototype.getMerkleTree=function(){for(var t=this.getTransactionHashes(),r=0,i=this.transactions.length;i>1;i=Math.floor((i+1)/2)){for(var n=0;n<i;n+=2){var o=Math.min(n+1,i-1),a=f.Buffer.concat([t[r+n],t[r+o]]);t.push(iW.sha256sha256(a))}r+=i}return t};qe.prototype.getMerkleRoot=function(){var t=this.getMerkleTree();return t[t.length-1]};qe.prototype.validMerkleRoot=function(){var t=new hN(this.header.merkleRoot.toString("hex"),"hex"),r=new hN(this.getMerkleRoot().toString("hex"),"hex");return t.cmp(r)===0};qe.prototype._getHash=function(){return this.header._getHash()};var gN={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=this.header.id),this._id},set:F_.noop};Object.defineProperty(qe.prototype,"id",gN);Object.defineProperty(qe.prototype,"hash",gN);qe.prototype.inspect=function(){return"<Block "+this.id+">"};qe.Values={START_OF_BLOCK:8,NULL_HASH:f.Buffer.from("0000000000000000000000000000000000000000000000000000000000000000","hex")};mN.exports=qe});var V_=T((cue,_N)=>{"use strict";g();var cu=at(),K_=zc(),bN=lo(),nW=Nn(),oW=Le(),yN=zt(),z_=pi(),fu=Ie(),aW=ts();function hm(e){return Array.isArray(e)?e.slice():e}function Qt(e){if(!(this instanceof Qt))return new Qt(e);var t={};if(f.Buffer.isBuffer(e))t=Qt._fromBufferReader(bN(e));else if(cu.isObject(e)){var r;e.header instanceof K_?r=e.header:r=K_.fromObject(e.header),t={header:r,numTransactions:e.numTransactions,hashes:hm(e.hashes),flags:hm(e.flags)}}else throw new TypeError("Unrecognized argument for MerkleBlock");return cu.extend(this,t),this._flagBitsUsed=0,this._hashesUsed=0,this}Qt.fromBuffer=function(t){return Qt.fromBufferReader(bN(t))};Qt.fromBufferReader=function(t){return new Qt(Qt._fromBufferReader(t))};Qt.prototype.toBuffer=function(){return this.toBufferWriter().concat()};Qt.prototype.toBufferWriter=function(t){t||(t=new nW),t.write(this.header.toBuffer()),t.writeUInt32LE(this.numTransactions),t.writeVarintNum(this.hashes.length);for(var r=0;r<this.hashes.length;r++)t.write(f.Buffer.from(this.hashes[r],"hex"));for(t.writeVarintNum(this.flags.length),r=0;r<this.flags.length;r++)t.writeUInt8(this.flags[r]);return t};Qt.prototype.toObject=Qt.prototype.toJSON=function(){return{header:this.header.toObject(),numTransactions:this.numTransactions,hashes:hm(this.hashes),flags:hm(this.flags)}};Qt.prototype.validMerkleTree=function(){if(fu.checkState(cu.isArray(this.flags),"MerkleBlock flags is not an array"),fu.checkState(cu.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions||this.flags.length*8<this.hashes.length)return!1;var t=this._calcTreeHeight(),r={hashesUsed:0,flagBitsUsed:0},i=this._traverseMerkleTree(t,0,r);return r.hashesUsed!==this.hashes.length?!1:i.equals(this.header.merkleRoot)};Qt.prototype.filterdTxsHash=aW.fn(function(){return this.filteredTxsHash()},{what:"MerkleBlock#filterdTxsHash",since:"9.1.0",removeIn:"10.0.0",use:"MerkleBlock#filteredTxsHash",why:"the name is a misspelling"});Qt.prototype.filteredTxsHash=function(){if(fu.checkState(cu.isArray(this.flags),"MerkleBlock flags is not an array"),fu.checkState(cu.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions)throw new z_.MerkleBlock.InvalidMerkleTree;if(this.flags.length*8<this.hashes.length)throw new z_.MerkleBlock.InvalidMerkleTree;if(this.hashes.length===1)return[];var t=this._calcTreeHeight(),r={hashesUsed:0,flagBitsUsed:0},i=this._traverseMerkleTree(t,0,r,!0);if(r.hashesUsed!==this.hashes.length)throw new z_.MerkleBlock.InvalidMerkleTree;return i};Qt.prototype._traverseMerkleTree=function(t,r,i,n){if(i=i||{},i.txs=i.txs||[],i.flagBitsUsed=i.flagBitsUsed||0,i.hashesUsed=i.hashesUsed||0,n=n||!1,i.flagBitsUsed>this.flags.length*8)return null;var o=this.flags[i.flagBitsUsed>>3]>>>(i.flagBitsUsed++&7)&1;if(t===0||!o){if(i.hashesUsed>=this.hashes.length)return null;var a=this.hashes[i.hashesUsed++];return t===0&&o&&i.txs.push(a),f.Buffer.from(a,"hex")}else{var s=this._traverseMerkleTree(t-1,r*2,i),u=s;return r*2+1<this._calcTreeWidth(t-1)&&(u=this._traverseMerkleTree(t-1,r*2+1,i)),n?i.txs:oW.sha256sha256(f.Buffer.concat([s,u]))}};Qt.prototype._calcTreeWidth=function(t){return this.numTransactions+(1<<t)-1>>t};Qt.prototype._calcTreeHeight=function(){for(var t=0;this._calcTreeWidth(t)>1;)t++;return t};Qt.prototype.hasTransaction=function(t){fu.checkArgument(!cu.isUndefined(t),"tx cannot be undefined"),fu.checkArgument(t instanceof yN||typeof t=="string",'Invalid tx given, tx must be a "string" or "Transaction"');var r=t;t instanceof yN&&(r=f.Buffer.from(t.id,"hex").reverse().toString("hex"));var i=[],n=this._calcTreeHeight();return this._traverseMerkleTree(n,0,{txs:i}),i.indexOf(r)!==-1};Qt._fromBufferReader=function(t){fu.checkState(!t.finished(),"No merkleblock data received");var r={};r.header=K_.fromBufferReader(t),r.numTransactions=t.readUInt32LE();var i=t.readVarintNum();r.hashes=[];for(var n=0;n<i;n++)r.hashes.push(t.read(32).toString("hex"));var o=t.readVarintNum();for(r.flags=[],n=0;n<o;n++)r.flags.push(t.readUInt8());return r};Qt.fromObject=function(t){return new Qt(t)};_N.exports=Qt});var wN=T((lue,dm)=>{g();dm.exports=vN();dm.exports.BlockHeader=zc();dm.exports.MerkleBlock=V_()});var $_=T((due,kN)=>{"use strict";g();var G_=zc(),gn=Ke(),SN=Le(),EN=/^[0-9a-fA-F]{64}$/,ON=G_.Constants.LARGEST_HASH,W_=486604799;function pm(e){var t=e>>>24,r=e&8388607,i;return t<=3?(r=r>>>8*(3-t),i=new gn(r)):i=new gn(r).shln(8*(t-3)),r===0||(e&8388608)!==0||t>34||r>255&&t>33||r>65535&&t>32?null:i}function Y_(e){return ON.div(e.add(new gn(1)))}function IN(e){if(e==null&&(e=W_),gn.isBN(e)){if(e.isNeg()||e.isZero()||e.cmp(ON)>=0)throw new Error("powLimit as a BN must be a target above zero and below 2^256");return e}var t;if(typeof e=="string"){if(!/^(0x)?[0-9a-fA-F]{1,8}$/.test(e))throw new Error("powLimit must be compact bits as hex, a uint32, or a BN target, not "+JSON.stringify(e));t=parseInt(e.replace(/^0x/,""),16)}else if(typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=4294967295)t=e;else throw new Error("powLimit must be compact bits as hex, a uint32, or a BN target, not "+JSON.stringify(e));var r=pm(t);if(!r)throw new Error("powLimit is not a usable compact target: "+e);return r}function AN(e){var t=typeof e=="number"?uW(e):String(e);if(/^[0-9]+(\.[0-9]+)?[eE][+]?[0-9]+$/.test(t)&&(t=sW(t)),!/^[0-9]+(\.[0-9]+)?$/.test(t))throw new Error("minDifficulty must be a non-negative decimal number, not "+JSON.stringify(e));var r=t.split("."),i=r[1]||"",n=new gn(r[0]+i,10).mul(Y_(pm(W_)));return i.length?n.div(new gn(10).pow(new gn(i.length))):n}function sW(e){var t=e.split(/[eE]/),r=parseInt(t[1].replace("+",""),10),i=t[0].split("."),n=i[0],o=i[1]||"";return r>=o.length?n+o+new Array(r-o.length+1).join("0"):n+o.slice(0,r)+"."+o.slice(r)}function uW(e){if(!Number.isFinite(e)||e<0)throw new Error("minDifficulty must be a non-negative finite number, not "+String(e));return/e/i.test(String(e))?e.toLocaleString("en-US",{useGrouping:!1,maximumFractionDigits:20}):String(e)}function cW(e){if(gn.isBN(e)){if(e.isNeg())throw new Error("minWork as a BN must not be negative");return e}if(typeof e=="number"){if(!Number.isSafeInteger(e)||e<0)throw new Error("minWork as a number must be a non-negative safe integer; for larger floors pass a decimal string or a BN, not "+e);return new gn(String(e),10)}if(typeof e=="string"&&/^[0-9]+$/.test(e))return new gn(e,10);throw new Error("minWork must be a non-negative integer, a decimal string or a BN, not "+JSON.stringify(e))}function TN(e){var t;if(f.Buffer.isBuffer(e))t=e;else if(typeof e=="string"){if(!/^[0-9a-fA-F]{160}$/.test(e))throw new Error("a block header as hex must be exactly 160 hex characters");t=f.Buffer.from(e,"hex")}else if(e instanceof G_)t=e.toBuffer();else if(e&&typeof e.toBuffer=="function")t=e.toBuffer();else throw new Error("a block header must be 80 bytes, as hex, a Buffer or a BlockHeader; an object stating a merkleRoot is not a header and cannot be checked");if(!f.Buffer.isBuffer(t)||t.length!==80)throw new Error("a block header must be exactly 80 bytes, not "+(f.Buffer.isBuffer(t)?t.length:typeof t));return G_.fromBuffer(t)}function PN(e){return f.Buffer.from(e).reverse()}function xN(e){return PN(f.Buffer.from(e,"hex"))}function RN(e){return PN(e).toString("hex")}function Z_(e,t,r){if(!EN.test(String(e)))throw new Error("txid must be 32-byte hex");if(!Number.isInteger(t)||t<0)throw new Error("index must be a non-negative integer");r=r||[];for(var i=xN(e),n=t,o=0;o<r.length;o++){var a=r[o],s;if(a==="*"||a===""||a==null)s=i;else{if(!EN.test(String(a)))throw new Error("proof node "+o+' must be 32-byte hex or "*"');s=xN(a)}i=n&1?SN.sha256sha256(f.Buffer.concat([s,i])):SN.sha256sha256(f.Buffer.concat([i,s])),n=Math.floor(n/2)}return RN(i)}function fW(e){if(!e||!e.merkleRoot)throw new Error("proof.merkleRoot is required");var t=Z_(e.txid,e.index,e.nodes);return t.toLowerCase()===String(e.merkleRoot).toLowerCase()}function lW(e){var t=TN(e.header),r=RN(t.merkleRoot),i=Z_(e.txid,e.index,e.nodes),n=i.toLowerCase()===r.toLowerCase(),o=e.requirePow!==!1,a=pm(t.bits),s=a!==null&&new gn(t.id,"hex").cmp(a)<=0,u=a===null?new gn(0):Y_(a),c=a!==null&&(!o||a.cmp(IN(e.powLimit))<=0),l=null;if(o){if(e.minWork!==void 0&&e.minWork!==null&&e.minDifficulty!==void 0&&e.minDifficulty!==null)throw new Error("pass minWork (hashes) or minDifficulty (difficulty), not both");e.minWork!==void 0&&e.minWork!==null?l=cW(e.minWork):e.minDifficulty!==void 0&&e.minDifficulty!==null&&(l=AN(e.minDifficulty))}var p=l===null||u.cmp(l)>=0;return{valid:n&&(!o||s&&c&&p),rootMatches:n,powValid:s,targetAllowed:c,workSufficient:p,work:u.toString(10),merkleRoot:i,blockHash:t.id}}kN.exports={POW_LIMIT_BITS:W_,targetFromBits:pm,targetLimit:IN,workFromTarget:Y_,workFromDifficulty:AN,headerSnapshot:TN,merkleRootFromBranch:Z_,verifyMerkleProof:fW,verifyTxInclusion:lW}});var NN=T((gue,BN)=>{"use strict";g();var hW=Ke(),X_=$_();function dW(e){return f.Buffer.from(e).reverse()}function pW(e){return X_.headerSnapshot(e)}function gW(e,t){if(t=t||{},!Array.isArray(e)||e.length===0)throw new Error("headers must be a non-empty array");for(var r=e.map(pW),i=t.requirePow!==!1,n=0,o=i?X_.targetLimit(t.powLimit):null,a=0;a<r.length;a++){var s=X_.targetFromBits(r[a].bits);if(i){if(s===null||new hW(r[a].id,"hex").cmp(s)>0)return{valid:!1,reason:"invalid proof-of-work at index "+a,count:r.length};if(s.cmp(o)>0)return{valid:!1,reason:"target easier than the proof-of-work limit at index "+a,count:r.length}}if(n+=r[a].getDifficulty(),a>0){var u=dW(r[a].prevHash).toString("hex").toLowerCase()===r[a-1].id.toLowerCase();if(!u)return{valid:!1,reason:"broken link at index "+a,count:r.length}}}var c=r[0].id,l=r[r.length-1].id;if(t.trustedHash){var p=String(t.trustedHash).toLowerCase();if(p!==l.toLowerCase()&&p!==c.toLowerCase())return{valid:!1,reason:"chain is not anchored at the trusted hash",count:r.length,anchorHash:c,tipHash:l}}return{valid:!0,count:r.length,anchorHash:c,tipHash:l,work:n}}BN.exports={verifyHeaderChain:gW}});var mm=T((vue,CN)=>{"use strict";g();var gm=$_(),mW=NN();CN.exports={POW_LIMIT_BITS:gm.POW_LIMIT_BITS,merkleRootFromBranch:gm.merkleRootFromBranch,verifyMerkleProof:gm.verifyMerkleProof,verifyTxInclusion:gm.verifyTxInclusion,verifyHeaderChain:mW.verifyHeaderChain}});var Q_=T((bue,LN)=>{"use strict";g();var vW=Le(),lu=Ie(),ti={};ti.PROTOCOL_PREFIX="NotaryHash/1.0";ti.VERSION=1;ti.lp=function(e){var t=f.Buffer.isBuffer(e)?e:f.Buffer.from(String(e),"utf8"),r=f.Buffer.alloc(4);return r.writeUInt32BE(t.length,0),f.Buffer.concat([r,t])};function J_(e,t){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e+". Certificates store this field as hex; decode it with Buffer.from(hex, 'hex') before hashing, or the length prefix covers the wrong number of bytes.");return e}ti.u64be=function(e){lu.checkArgument(typeof e=="number"&&isFinite(e),"createdAtUnix must be a finite number"),lu.checkArgument(Number.isInteger(e),"createdAtUnix must be whole seconds, not milliseconds or a fraction"),lu.checkArgument(e>=0,"createdAtUnix must not be negative");var t=f.Buffer.alloc(8);return t.writeBigUInt64BE(BigInt(e),0),t};ti.toUnixSeconds=function(e){var t=e instanceof Date?e:new Date(e);return lu.checkArgument(!isNaN(t.getTime()),"createdAt is not a valid date: "+e),Math.floor(t.getTime()/1e3)};ti.canonicalBytes=function(e){return lu.checkArgument(e&&typeof e=="object","fields object is required"),lu.checkArgument(typeof e.algorithm=="string"&&e.algorithm.length>0,"algorithm must be a non-empty string"),lu.checkArgument(typeof e.hashAlgorithm=="string"&&e.hashAlgorithm.length>0,"hashAlgorithm must be a non-empty string"),f.Buffer.concat([ti.lp(ti.PROTOCOL_PREFIX),f.Buffer.from([ti.VERSION]),ti.lp(e.algorithm),ti.lp(e.hashAlgorithm),ti.lp(J_(e.payloadHash,"payloadHash")),ti.lp(J_(e.publicKey,"publicKey")),ti.lp(J_(e.signature,"signature")),ti.u64be(e.createdAtUnix)])};ti.proofHash=function(e){return vW.sha256(ti.canonicalBytes(e))};LN.exports=ti});var ew=T((wue,UN)=>{"use strict";g();var vm=Kg(),mn=Pr(),MN=Le(),Kc=Ie(),Wt={};Wt.PREFIX="NOTARYHASH";Wt.VERSION=1;Wt.MODE={FULL:0,HYBRID:1,BATCH:2};var DN={full:Wt.MODE.FULL,hybrid:Wt.MODE.HYBRID,batch:Wt.MODE.BATCH};function HN(e){return f.Buffer.from([e])}function yW(e){var t=f.Buffer.alloc(4);return t.writeUInt32BE(e,0),t}function yo(e,t,r){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e+". Decode hex with Buffer.from(hex, 'hex') first.");if(r!=null&&e.length!==r)throw new Error(t+" must be exactly "+r+" bytes, got "+e.length);return e}function qN(e,t){if(e.buf&&e.buf.length===1)return e.buf[0];if(e.opcodenum===mn.OP_0)return 0;if(e.opcodenum>=mn.OP_1&&e.opcodenum<=mn.OP_16)return e.opcodenum-mn.OP_1+1;throw new Error(t+" must be a single byte at this push")}function qn(e,t){if(!e||!e.buf)throw new Error(t+" push is missing or carries no data");return e.buf}Wt.build=function(e){Kc.checkArgument(e&&typeof e=="object","record is required");var t=typeof e.mode=="string"&&Object.prototype.hasOwnProperty.call(DN,e.mode)?DN[e.mode]:e.mode;Kc.checkArgument(t===Wt.MODE.FULL||t===Wt.MODE.HYBRID||t===Wt.MODE.BATCH,"mode must be 0 (full), 1 (hybrid) or 2 (batch)");var r=new vm().add(mn.OP_FALSE).add(mn.OP_RETURN).add(f.Buffer.from(Wt.PREFIX,"ascii")).add(HN(Wt.VERSION)).add(HN(t));if(t===Wt.MODE.BATCH)return Kc.checkArgument(typeof e.leafCount=="number"&&Number.isInteger(e.leafCount)&&e.leafCount>=0,"leafCount must be a non-negative integer"),r.add(yo(e.merkleRoot,"merkleRoot",32)),r.add(yW(e.leafCount)),r;Kc.checkArgument(typeof e.algorithm=="string"&&e.algorithm.length>0,"algorithm must be a non-empty string"),Kc.checkArgument(typeof e.hashAlgorithm=="string"&&e.hashAlgorithm.length>0,"hashAlgorithm must be a non-empty string"),r.add(f.Buffer.from(e.algorithm,"utf8")),r.add(f.Buffer.from(e.hashAlgorithm,"utf8")),r.add(yo(e.payloadHash,"payloadHash",32)),r.add(yo(e.proofHash,"proofHash",32));var i=yo(e.publicKey,"publicKey"),n=yo(e.signature,"signature");return t===Wt.MODE.HYBRID?(r.add(MN.sha256(i)),r.add(MN.sha256(n))):(r.add(i),r.add(n)),r};Wt.parse=function(e){typeof e=="string"&&(e=vm.fromHex(e)),Kc.checkArgument(e instanceof vm,"script must be a Script or hex string");var t=e.chunks;if(t.length<5)throw new Error("not a NotaryHash record: too few pushes");if(t[0].opcodenum!==mn.OP_FALSE&&t[0].opcodenum!==mn.OP_0)throw new Error("not a NotaryHash record: does not start with OP_FALSE");if(t[1].opcodenum!==mn.OP_RETURN)throw new Error("not a NotaryHash record: no OP_RETURN");var r=qn(t[2],"prefix");if(r.toString("ascii")!==Wt.PREFIX)throw new Error("not a NotaryHash record: prefix is "+JSON.stringify(r.toString("ascii")));var i=qN(t[3],"version");if(i!==Wt.VERSION)throw new Error("unsupported NotaryHash version: "+i);var n=qN(t[4],"mode");if(n===Wt.MODE.BATCH){if(t.length!==7)throw new Error("batch record must have exactly 7 pushes, got "+t.length);var o=qn(t[6],"leafCount");if(o.length!==4)throw new Error("leafCount must be 4 bytes (u32be), got "+o.length);return{mode:n,version:i,merkleRoot:yo(qn(t[5],"merkleRoot"),"merkleRoot",32),leafCount:o.readUInt32BE(0)}}if(n!==Wt.MODE.FULL&&n!==Wt.MODE.HYBRID)throw new Error("unknown NotaryHash mode: "+n);if(t.length!==11)throw new Error("full/hybrid record must have exactly 11 pushes, got "+t.length);var a={mode:n,version:i,algorithm:qn(t[5],"algorithm").toString("utf8"),hashAlgorithm:qn(t[6],"hashAlgorithm").toString("utf8"),payloadHash:yo(qn(t[7],"payloadHash"),"payloadHash",32),proofHash:yo(qn(t[8],"proofHash"),"proofHash",32)};return n===Wt.MODE.HYBRID?(a.publicKeyHash=yo(qn(t[9],"publicKeyHash"),"publicKeyHash",32),a.signatureHash=yo(qn(t[10],"signatureHash"),"signatureHash",32)):(a.publicKey=qn(t[9],"publicKey"),a.signature=qn(t[10],"signature")),a};Wt.isNotaryHash=function(e){try{typeof e=="string"&&(e=vm.fromHex(e));var t=e.chunks;return t.length>=5&&(t[0].opcodenum===mn.OP_FALSE||t[0].opcodenum===mn.OP_0)&&t[1].opcodenum===mn.OP_RETURN&&!!t[2].buf&&t[2].buf.toString("ascii")===Wt.PREFIX}catch{return!1}};UN.exports=Wt});var Vc=T((Eue,jN)=>{"use strict";g();var FN={};FN.stringify=function(e){return tw(e,[])};function tw(e,t){if(e===null)return"null";var r=typeof e;if(r==="boolean")return e?"true":"false";if(r==="number"){if(!isFinite(e))throw new Error("Cannot canonicalize non-finite number: "+e);return JSON.stringify(e)}if(r==="string")return JSON.stringify(e);if(r==="bigint")throw new Error("Cannot canonicalize bigint; represent it as a string");if(Array.isArray(e)||r==="object"){if(t.indexOf(e)!==-1)throw new Error("Cannot canonicalize a circular structure");t.push(e);var i;if(Array.isArray(e))i="["+e.map(function(o){return o===void 0?"null":tw(o,t)}).join(",")+"]";else{var n=Object.keys(e).filter(function(o){return e[o]!==void 0&&typeof e[o]!="function"}).sort();i="{"+n.map(function(o){return JSON.stringify(o)+":"+tw(e[o],t)}).join(",")+"}"}return t.pop(),i}throw new Error("Cannot canonicalize value of type: "+r)}jN.exports=FN});var iw=T((Oue,zN)=>{"use strict";g();var rw=Le(),Li=Ie(),Ue={};Ue.LEAF_PREFIX=0;Ue.NODE_PREFIX=1;Ue.hashLeaf=function(e){return Li.checkArgument(f.Buffer.isBuffer(e),"leaf data must be a Buffer"),rw.sha256(f.Buffer.concat([f.Buffer.from([Ue.LEAF_PREFIX]),e]))};Ue.hashNode=function(e,t){return rw.sha256(f.Buffer.concat([f.Buffer.from([Ue.NODE_PREFIX]),e,t]))};Ue.largestPowerOfTwoBelow=function(e){Li.checkArgument(Number.isInteger(e)&&e>=2,"n must be an integer >= 2");for(var t=1;t*2<e;)t*=2;return t};Ue.root=function(e){if(Li.checkArgument(Array.isArray(e),"leaves must be an array"),e.length===0)return rw.sha256(f.Buffer.alloc(0));if(e.length===1)return Ue.hashLeaf(e[0]);var t=Ue.largestPowerOfTwoBelow(e.length);return Ue.hashNode(Ue.root(e.slice(0,t)),Ue.root(e.slice(t)))};Ue.path=function(e,t){if(Li.checkArgument(Array.isArray(e)&&e.length>0,"leaves must be a non-empty array"),Li.checkArgument(Number.isInteger(t)&&t>=0&&t<e.length,"index must be within the leaves"),e.length===1)return[];var r=Ue.largestPowerOfTwoBelow(e.length);return t<r?Ue.path(e.slice(0,r),t).concat([Ue.root(e.slice(r))]):Ue.path(e.slice(r),t-r).concat([Ue.root(e.slice(0,r))])};Ue.foldPath=function(e,t,r,i){Li.checkArgument(f.Buffer.isBuffer(e),"leafData must be a Buffer"),Li.checkArgument(Number.isInteger(t)&&t>=0,"index must be a non-negative integer"),Li.checkArgument(Number.isInteger(r)&&r>0,"leafCount must be a positive integer"),Li.checkArgument(t<r,"index must be less than leafCount"),Li.checkArgument(Array.isArray(i),"path must be an array");for(var n=Ue.hashLeaf(e),o=t,a=r-1,s=0;s<i.length;s++){if(a===0)throw new Error("audit path is too long for a tree of "+r+" leaves");if((o&1)===1||o===a)for(n=Ue.hashNode(i[s],n);(o&1)===0&&o!==0;)o>>=1,a>>=1;else n=Ue.hashNode(n,i[s]);o>>=1,a>>=1}if(a!==0)throw new Error("audit path is too short for a tree of "+r+" leaves");return n};Ue.verifyInclusion=function(e,t,r,i,n){try{return f.Buffer.isBuffer(n)?Ue.foldPath(e,t,r,i).equals(n):!1}catch{return!1}};Ue.pathSides=function(e,t){if(Li.checkArgument(Number.isInteger(t)&&t>0,"leafCount must be a positive integer"),Li.checkArgument(Number.isInteger(e)&&e>=0&&e<t,"index must be within the tree"),t===1)return[];var r=Ue.largestPowerOfTwoBelow(t);return e<r?Ue.pathSides(e,r).concat(["right"]):Ue.pathSides(e-r,t-r).concat(["left"])};Ue.auditPath=function(e,t){var r=Ue.pathSides(t,e.length);return Ue.path(e,t).map(function(i,n){return{hash:i,side:r[n]}})};function bW(e,t){var r=f.Buffer.isBuffer(e)?e:null;if(!r){if(typeof e!="string")throw new Error("audit path node "+t+" has no hash");var i=e.slice(0,2)==="0x"?e.slice(2):e;if(!/^[0-9a-fA-F]*$/.test(i))throw new Error("audit path node "+t+" is not hex");r=f.Buffer.from(i,"hex")}if(r.length!==32)throw new Error("audit path node "+t+" is not 32 bytes");return r}Ue.rootFromPath=function(e,t){Li.checkArgument(f.Buffer.isBuffer(e),"leafData must be a Buffer"),Li.checkArgument(Array.isArray(t),"path must be an array");for(var r=Ue.hashLeaf(e),i=0;i<t.length;i++){var n=t[i];if(!n||typeof n!="object")throw new Error("audit path node "+i+" is not an object");var o=bW(n.hash,i);if(n.side==="left")r=Ue.hashNode(o,r);else if(n.side==="right")r=Ue.hashNode(r,o);else throw new Error("audit path node "+i+" has side "+JSON.stringify(n.side))}return r};Ue.verifyAuditPath=function(e,t,r){try{return f.Buffer.isBuffer(r)?Ue.rootFromPath(e,t).equals(r):!1}catch{return!1}};zN.exports=Ue});var JN=T((Aue,XN)=>{"use strict";g();var _W=Vc(),Gc=Q_(),KN=iw(),ph=ew(),wW=ts(),zr=Ie(),de={};de.PROTOCOL="NotaryHash";de.VERSION=1;de.REFERENCE_VERSION="1.0";de.FORMAT={REFERENCE:"reference",LEGACY:"legacy"};de.MODE={FULL:"full",HYBRID:"hybrid"};de.ENCODING={HEX:"hex",BASE64:"base64",RAW:"raw",DER:"der"};de.ANCHOR_TYPE={DIRECT:"direct",BATCH:"batch"};de.DEFAULT_NETWORK="bsv-mainnet";var sw=1,VN={0:"full",1:"hybrid",2:"full"},YN=/^[0-9a-fA-F]*$/,SW=/^[A-Za-z0-9+/_-]*={0,2}$/;de.decodeBytes=function(e,t,r){if(r=r||"value",typeof e!="string")throw new Error(r+" must be a string");if(t===de.ENCODING.HEX){var i=e.slice(0,2)==="0x"?e.slice(2):e;if(i.length%2!==0||!YN.test(i))throw new Error(r+" must be a hex string");return f.Buffer.from(i,"hex")}if(t===de.ENCODING.BASE64){if(!SW.test(e))throw new Error(r+" must be base64");var n=e.replace(/=+$/,"");if(n.length!==e.length&&e.length%4!==0||n.length%4===1)throw new Error(r+" is not a valid base64 length");return f.Buffer.from(e,"base64")}throw new Error('encoding must be "hex" or "base64", not '+JSON.stringify(t))};function nw(e,t,r){if(!f.Buffer.isBuffer(e))throw new Error(r+" must be a Buffer of raw bytes, not "+typeof e);return t===de.ENCODING.BASE64?e.toString("base64"):e.toString("hex")}function aw(e,t){var r=f.Buffer.isBuffer(e)?e:de.decodeBytes(e,"hex",t);if(r.length!==32)throw new Error(t+" must be 32 bytes");return r.toString("hex")}function EW(e){if(e===de.MODE.FULL||e===de.MODE.HYBRID)return{mode:e,batch:!1};if(e===ph.MODE.FULL)return{mode:"full",batch:!1};if(e===ph.MODE.HYBRID)return{mode:"hybrid",batch:!1};if(e===ph.MODE.BATCH)return{mode:"full",batch:!0};throw e==="batch"?new Error('batch is an anchor type, not a mode: pass mode "full" or "hybrid" with a merkle proof'):new Error('mode is required: "full" or "hybrid"')}function xW(e){if(e===void 0)return de.ENCODING.HEX;if(e===de.ENCODING.HEX||e===de.ENCODING.BASE64)return e;if(e===de.ENCODING.RAW||e===de.ENCODING.DER)return de.ENCODING.HEX;throw new Error('encoding must be "hex" or "base64"')}function ZN(e,t,r){if(!Array.isArray(e))throw new Error("merkle.path must be an array");var i=e.length>0&&e.every(function(u){return u&&typeof u=="object"&&!f.Buffer.isBuffer(u)&&"side"in u});if(i||e.length===0){var n=e.map(function(u,c){if(u.side!=="left"&&u.side!=="right")throw new Error("merkle.path["+c+'].side must be "left" or "right"');return{hash:aw(u.hash,"merkle.path["+c+"].hash"),side:u.side}});if(Number.isInteger(t)&&Number.isInteger(r)&&r>0&&t>=0&&t<r){var o=KN.pathSides(t,r);if(o.length!==n.length)throw new Error("merkle.leafIndex "+t+" in a tree of "+r+" leaves needs "+o.length+" path nodes; the path has "+n.length);for(var a=0;a<o.length;a++)if(o[a]!==n[a].side)throw new Error("merkle.leafIndex "+t+" disagrees with the path: node "+a+' is marked "'+n[a].side+'" but leaf '+t+" of "+r+' requires "'+o[a]+'"')}return n}var s=KN.pathSides(t,r);if(s.length!==e.length)throw new Error("merkle.path has "+e.length+" nodes; a tree of "+r+" leaves needs "+s.length+" for leaf "+t);return e.map(function(u,c){return{hash:aw(u,"merkle.path["+c+"]"),side:s[c]}})}function OW(e){return zr.checkArgument(e&&typeof e=="object","batch certificates require a merkle inclusion proof"),zr.checkArgument(Number.isInteger(e.leafIndex)&&e.leafIndex>=0,"merkle.leafIndex must be a non-negative integer"),zr.checkArgument(Number.isInteger(e.leafCount)&&e.leafCount>e.leafIndex,"merkle.leafCount must be an integer greater than leafIndex"),{root:aw(e.root,"merkle.root"),leafIndex:e.leafIndex,leafCount:e.leafCount,path:ZN(e.path,e.leafIndex,e.leafCount)}}function IW(e,t){zr.checkArgument(e&&typeof e=="object","anchor is required"),zr.checkArgument(typeof e.txid=="string","anchor.txid must be a string");var r=e.type||(t?de.ANCHOR_TYPE.BATCH:de.ANCHOR_TYPE.DIRECT);return zr.checkArgument(r===de.ANCHOR_TYPE.DIRECT||r===de.ANCHOR_TYPE.BATCH,'anchor.type must be "direct" or "batch"'),zr.checkArgument(r===de.ANCHOR_TYPE.BATCH===t,'anchor.type is "batch" exactly when a merkle inclusion proof is given'),{type:r,network:e.network||de.DEFAULT_NETWORK,txid:e.txid,vout:e.vout===void 0?0:e.vout,blockHeight:e.blockHeight===void 0?null:e.blockHeight,blockTime:e.blockTime===void 0?null:e.blockTime}}function AW(e){var t=EW(e.mode),r=t.batch||e.merkle!==void 0||!!(e.anchor&&e.anchor.type===de.ANCHOR_TYPE.BATCH);r&&zr.checkArgument(e.merkle&&typeof e.merkle=="object","batch certificates require a merkle inclusion proof");var i=xW(e.encoding),n=IW(e.anchor,r),o=e.createdAtUnix!==void 0?e.createdAtUnix:Gc.toUnixSeconds(e.createdAt===void 0?new Date:e.createdAt);zr.checkArgument(Number.isInteger(o)&&o>=0,"createdAtUnix must be a non-negative whole number of seconds");var a=Gc.proofHash({algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:e.payloadHash,publicKey:e.publicKey,signature:e.signature,createdAtUnix:o}),s={protocol:de.PROTOCOL,version:de.REFERENCE_VERSION,mode:t.mode,algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:nw(e.payloadHash,"hex","payloadHash"),publicKey:nw(e.publicKey,i,"publicKey"),signature:nw(e.signature,i,"signature"),encoding:i,proofHash:a.toString("hex"),createdAt:new Date(o*1e3).toISOString(),anchor:n};return r&&(s.merkle=OW(e.merkle)),s}function ow(e,t){if(!f.Buffer.isBuffer(e))throw new Error(t+" must be a Buffer of raw bytes, not "+typeof e);return e.toString("hex")}function GN(e){zr.checkArgument(e.anchor&&typeof e.anchor=="object","anchor is required"),zr.checkArgument(typeof e.anchor.txid=="string","anchor.txid must be a string");var t=e.encoding||de.ENCODING.RAW;zr.checkArgument(t===de.ENCODING.RAW||t===de.ENCODING.DER,'encoding must be "raw" or "der"');var r=e.createdAt?e.createdAt instanceof Date?e.createdAt.toISOString():e.createdAt:new Date().toISOString(),i=Gc.toUnixSeconds(r),n=Gc.proofHash({algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:e.payloadHash,publicKey:e.publicKey,signature:e.signature,createdAtUnix:i}),o={protocol:de.PROTOCOL,version:sw,mode:e.mode,algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:ow(e.payloadHash,"payloadHash"),publicKey:ow(e.publicKey,"publicKey"),signature:ow(e.signature,"signature"),encoding:t,proofHash:n.toString("hex"),createdAt:r,anchor:{txid:e.anchor.txid,blockHeight:e.anchor.blockHeight}};return e.mode===ph.MODE.BATCH&&(zr.checkArgument(e.merkle&&typeof e.merkle=="object","batch certificates require a merkle inclusion proof"),o.merkle={root:e.merkle.root,leafIndex:e.merkle.leafIndex,leafCount:e.merkle.leafCount,path:e.merkle.path}),o}de.build=function(e){zr.checkArgument(e&&typeof e=="object","params is required");var t=e.format;return t===void 0?(wW({what:"NotaryHash.Certificate.build() without a format",since:"9.9.0",removeIn:"10.0.0",use:"NotaryHash.Certificate.build({ ...params, format: 'reference' })",why:"the default format is this library's own, which the BRC-220 reference implementation cannot verify"}),GN(e)):(zr.checkArgument(t===de.FORMAT.REFERENCE||t===de.FORMAT.LEGACY,"Unknown certificate format: "+t+". Expected 'reference' or 'legacy' (NotaryHash.Certificate.FORMAT)"),t===de.FORMAT.REFERENCE?AW(e):GN(e))};de.isLegacy=function(e){return!!e&&typeof e=="object"&&(e.version===sw||e.version===void 0&&typeof e.mode=="number")};de.normalize=function(e){if(!de.isLegacy(e))return e;var t=e.mode===ph.MODE.BATCH,r=Object.assign({},e);r.version=e.version===sw?de.REFERENCE_VERSION:e.version,r.mode=VN[e.mode]!==void 0?VN[e.mode]:e.mode,(e.encoding===de.ENCODING.RAW||e.encoding===de.ENCODING.DER)&&(r.encoding=de.ENCODING.HEX);var i=e.anchor&&typeof e.anchor=="object"?e.anchor:{};if(r.anchor={type:t?de.ANCHOR_TYPE.BATCH:de.ANCHOR_TYPE.DIRECT,network:i.network||de.DEFAULT_NETWORK,txid:i.txid,vout:i.vout===void 0?0:i.vout,blockHeight:i.blockHeight===void 0?null:i.blockHeight,blockTime:i.blockTime===void 0?null:i.blockTime},e.merkle&&typeof e.merkle=="object"){var n=e.merkle,o=n.path;try{o=ZN(n.path,n.leafIndex,n.leafCount)}catch{}r.merkle={root:n.root,leafIndex:n.leafIndex,leafCount:n.leafCount,path:o}}return r};function $N(e){return{algorithm:e.algorithm,hashAlgorithm:e.hashAlgorithm,payloadHash:de.decodeBytes(e.payloadHash,"hex","payloadHash"),publicKey:de.decodeBytes(e.publicKey,e.encoding,"publicKey"),signature:de.decodeBytes(e.signature,e.encoding,"signature")}}de.toSignatureInput=function(e){return zr.checkArgument(e&&typeof e=="object","certificate is required"),$N(de.normalize(e))};de.toProofInput=function(e){zr.checkArgument(e&&typeof e=="object","certificate is required");var t=de.normalize(e),r=$N(t);return r.createdAtUnix=Gc.toUnixSeconds(t.createdAt),r};de.recomputeProofHash=function(e){return Gc.proofHash(de.toProofInput(e))};de.proofHashMatches=function(e){try{if(!e||typeof e.proofHash!="string")return!1;var t=de.decodeBytes(e.proofHash,"hex","proofHash");return t.length!==32?!1:de.recomputeProofHash(e).equals(t)}catch{return!1}};de.REQUIRED_FIELDS=["protocol","version","mode","algorithm","hashAlgorithm","payloadHash","publicKey","signature","encoding","proofHash","createdAt","anchor"];function ym(e,t,r){if(e!==void 0){var i=typeof e=="string"&&e.slice(0,2)==="0x"?e.slice(2):e;typeof i!="string"||!YN.test(i)||i.length%2!==0?r.push(t+" must be a hex string"):i.length!==64&&r.push(t+" must be 32 bytes (64 hex chars)")}}function WN(e){return e===null||Number.isInteger(e)}de.validateShape=function(e){if(!e||typeof e!="object")return["certificate must be an object"];var t=de.normalize(e),r=[];if(de.REQUIRED_FIELDS.forEach(function(s){t[s]===void 0&&r.push("missing required field: "+s)}),typeof t.createdAt=="string"&&!de.isLegacy(e)){var i=null,n=new Date(t.createdAt);isNaN(n.getTime())||(i=new Date(Math.floor(n.getTime()/1e3)*1e3).toISOString()),i===null?r.push("createdAt is not a date: "+t.createdAt):t.createdAt!==i&&r.push("createdAt must be the canonical rendering of its second: expected "+i+", got "+t.createdAt)}if(t.protocol!==void 0&&t.protocol!==de.PROTOCOL&&r.push('protocol must be "'+de.PROTOCOL+'"'),t.version!==void 0&&t.version!==de.REFERENCE_VERSION&&r.push("unsupported version: "+JSON.stringify(t.version)),t.mode!==void 0&&t.mode!==de.MODE.FULL&&t.mode!==de.MODE.HYBRID&&r.push('mode must be "full" or "hybrid"'),["algorithm","hashAlgorithm"].forEach(function(s){t[s]!==void 0&&(typeof t[s]!="string"||t[s].length===0)&&r.push(s+" must be a non-empty string")}),ym(t.payloadHash,"payloadHash",r),ym(t.proofHash,"proofHash",r),t.encoding!==void 0&&(t.encoding!==de.ENCODING.HEX&&t.encoding!==de.ENCODING.BASE64?r.push('encoding must be "hex" or "base64"'):["publicKey","signature"].forEach(function(s){if(t[s]!==void 0)try{de.decodeBytes(t[s],t.encoding,s).length===0&&r.push(s+" must not be empty")}catch{r.push(s+" is not valid "+t.encoding)}})),t.createdAt!==void 0&&(typeof t.createdAt!="string"||isNaN(new Date(t.createdAt).getTime()))&&r.push("createdAt must be an ISO 8601 date"),t.anchor!==void 0){var o=t.anchor;!o||typeof o!="object"?r.push("anchor must be an object"):(o.type!==de.ANCHOR_TYPE.DIRECT&&o.type!==de.ANCHOR_TYPE.BATCH&&r.push('anchor.type must be "direct" or "batch"'),(typeof o.txid!="string"||!/^[0-9a-fA-F]{64}$/.test(o.txid))&&r.push("anchor.txid must be a 32-byte hex string"),o.vout!==void 0&&!(Number.isInteger(o.vout)&&o.vout>=0)&&r.push("anchor.vout must be a non-negative integer"),o.blockHeight!==void 0&&!WN(o.blockHeight)&&r.push("anchor.blockHeight must be an integer or null"),o.blockTime!==void 0&&!WN(o.blockTime)&&r.push("anchor.blockTime must be an integer or null"),o.type===de.ANCHOR_TYPE.BATCH&&t.merkle===void 0&&r.push("batch certificates require a merkle inclusion proof"))}if(t.merkle!==void 0){var a=t.merkle;!a||typeof a!="object"?r.push("merkle must be an object"):(ym(a.root,"merkle.root",r),Number.isInteger(a.leafIndex)&&a.leafIndex>=0||r.push("merkle.leafIndex must be a non-negative integer"),Number.isInteger(a.leafCount)&&a.leafCount>=1?Number.isInteger(a.leafIndex)&&a.leafIndex>=a.leafCount&&r.push("merkle.leafIndex must be less than leafCount"):r.push("merkle.leafCount must be a positive integer"),Array.isArray(a.path)?a.path.forEach(function(s,u){!s||typeof s!="object"||s.side!=="left"&&s.side!=="right"?r.push("merkle.path["+u+'] must be { hash, side: "left" | "right" }'):ym(s.hash,"merkle.path["+u+"].hash",r)}):r.push("merkle.path must be an array"))}return r};de.attachSPV=function(e,t){zr.checkArgument(e&&typeof e=="object","certificate is required"),zr.checkArgument(t&&typeof t=="object","spv envelope is required");var r=e.proofHash,i=Object.assign({},e,{spv:{rawTx:t.rawTx,blockHash:t.blockHash,blockHeight:t.blockHeight,merkleProof:t.merkleProof,format:t.format||"TSC"}});if(i.proofHash!==r)throw new Error("attaching the SPV envelope changed proofHash; this must never happen");return i};de.canonicalize=function(e){return _W.stringify(e)};XN.exports=de});var iC=T((Pue,rC)=>{"use strict";g();var QN=Ke(),TW=dn(),eC=gt(),PW=sr(),tC=Ie(),ya={},gh={};ya.register=function(e,t){return tC.checkArgument(typeof e=="string"&&e.length>0,"algorithm must be a non-empty string"),tC.checkArgument(t&&typeof t.verify=="function","suite must provide a verify(payloadHash, signature, publicKey) function"),gh[e]=t,ya};ya.get=function(e){return gh[e]};ya.list=function(){return Object.keys(gh).sort()};ya.unregister=function(e){return delete gh[e],ya};ya.verify=function(e,t,r,i){var n=gh[e];if(!n||!f.Buffer.isBuffer(t)||!f.Buffer.isBuffer(r)||!f.Buffer.isBuffer(i))return!1;try{return n.verify(t,r,i)===!0}catch{return!1}};ya.register("ECDSA-secp256k1",{verify:function(e,t,r){if(e.length!==32)return!1;var i;if(t.length===64)i=new eC(QN.fromBuffer(t.slice(0,32)),QN.fromBuffer(t.slice(32,64)));else if(t[0]===48)try{i=eC.fromDER(t)}catch{return!1}else return!1;var n;try{n=PW.fromBuffer(r)}catch{return!1}var o=new TW;return o.hashbuf=e,o.pubkey=n,o.sig=i,o.verify()===!0}});rC.exports=ya});var aC=T((kue,oC)=>{"use strict";g();var RW=zt(),cw=Le(),kW=mm(),BW=Q_(),bo=ew(),Br=JN(),NW=ts(),bm=iC(),fw=iw(),Yt={};Yt.Encoding=BW;Yt.Script=bo;Yt.Certificate=Br;Yt.Suites=bm;Yt.Merkle=fw;Yt.MODE=bo.MODE;Yt.registerSuite=function(e,t){return bm.register(e,t)};function uw(e,t){if(f.Buffer.isBuffer(e)){if(e.length===0)throw new Error(t+" must not be empty");return e}return Br.decodeBytes(e,"hex",t)}Yt.verifySignature=function(e){try{if(!e||typeof e!="object")return!1;var t=Br.toSignatureInput(e);return bm.verify(t.algorithm,t.payloadHash,t.signature,t.publicKey)}catch{return!1}};Yt.verifySignatureOnly=function(e,t,r,i){var n=i||"ECDSA-secp256k1";return bm.verify(n,uw(e,"payloadHash"),uw(t,"signature"),uw(r,"publicKey"))};Yt.txidFromRawTx=function(e){var t=f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"hex");return f.Buffer.from(cw.sha256sha256(t)).reverse().toString("hex")};Yt.recordFromRawTx=function(e,t){try{var r=new RW(f.Buffer.isBuffer(e)?e.toString("hex"):e);if(t!=null){if(!Number.isInteger(t)||t<0||t>=r.outputs.length)return null;var i=r.outputs[t].script;return bo.isNotaryHash(i)?bo.parse(i):null}for(var n=0;n<r.outputs.length;n++){var o=r.outputs[n].script;if(bo.isNotaryHash(o))return bo.parse(o)}return null}catch{return null}};Yt.recordMatchesCertificate=function(e,t){try{if(!e||!t)return!1;var r=Br.normalize(t),i=e.mode===bo.MODE.BATCH,n=!!(r.anchor&&r.anchor.type===Br.ANCHOR_TYPE.BATCH);if(i||n)return!i||!n||!r.merkle||!e.merkleRoot.equals(Br.decodeBytes(r.merkle.root,"hex","merkle.root"))?!1:e.leafCount===r.merkle.leafCount;var o=r.mode===Br.MODE.FULL?bo.MODE.FULL:r.mode===Br.MODE.HYBRID?bo.MODE.HYBRID:-1;if(e.mode!==o)return!1;var a=Br.toProofInput(r);return e.algorithm!==a.algorithm||e.hashAlgorithm!==a.hashAlgorithm||!e.payloadHash.equals(a.payloadHash)||!e.proofHash.equals(Br.decodeBytes(r.proofHash,"hex","proofHash"))?!1:e.mode===bo.MODE.HYBRID?e.publicKeyHash.equals(cw.sha256(a.publicKey))&&e.signatureHash.equals(cw.sha256(a.signature)):e.publicKey.equals(a.publicKey)&&e.signature.equals(a.signature)}catch{return!1}};Yt.verifyAnchorSPV=function(e,t){var r=[];t=t||{};try{var i=Br.normalize(e),n=i&&i.spv;if(!n)return{valid:!1,errors:["certificate has no SPV envelope"]};if(!t.header)return{valid:!1,errors:["a block header is required: the verifier must obtain one itself rather than trust the certificate or its issuer for the anchor"]};var o=Yt.txidFromRawTx(n.rawTx);(!i.anchor||o!==String(i.anchor.txid).toLowerCase())&&r.push("rawTx does not hash to anchor.txid");var a=Yt.recordFromRawTx(n.rawTx,i.anchor&&i.anchor.vout);a?Yt.recordMatchesCertificate(a,i)||r.push("on-chain record does not match the certificate"):r.push("no NotaryHash record at anchor.vout in rawTx"),t.requirePow!==!1&&t.minWork===void 0&&t.minDifficulty===void 0&&(t.blockHashAtHeight===void 0||t.blockHashAtHeight===null)&&NW({what:"NotaryHash.verify() with a header but no minWork or blockHashAtHeight",since:"9.13.0",removeIn:"10.0.0",use:"verify(certificate, { header, blockHashAtHeight }) with the block hash your own chain source has at spv.blockHeight, or { header, minDifficulty } with the difficulty you require",why:"the proof-of-work limit only rules out a free forgery: a header at difficulty 1 costs about 4.3e9 hashes, while a real mainnet header carries about 1e20"});var s=n.merkleProof||{},u;try{u=kW.verifyTxInclusion({header:t.header,txid:o,index:s.index,nodes:s.nodes,requirePow:t.requirePow!==!1,powLimit:t.powLimit,minWork:t.minWork,minDifficulty:t.minDifficulty})}catch(_){return r.push(_.message),{valid:!1,errors:r}}if(u.rootMatches!==!0&&r.push("merkle proof does not fold to the header's root"),t.requirePow!==!1&&(u.powValid!==!0&&r.push("block header failed proof-of-work validation"),u.targetAllowed!==!0&&r.push("block header declares a target easier than the proof-of-work limit, so its work proves nothing"),u.workSufficient!==!0&&r.push("block header carries less work than required: "+u.work)),n.blockHash!==void 0&&String(n.blockHash).toLowerCase()!==String(u.blockHash).toLowerCase()&&r.push("the supplied header is not the block the SPV envelope names"),t.height!==void 0&&t.height!==n.blockHeight&&r.push("the supplied header is not at the height the SPV envelope names"),t.blockHashAtHeight!==void 0&&t.blockHashAtHeight!==null){var c=f.Buffer.isBuffer(t.blockHashAtHeight)?t.blockHashAtHeight.toString("hex"):String(t.blockHashAtHeight).replace(/^0x/,"");/^[0-9a-fA-F]{64}$/.test(c)?c.toLowerCase()!==String(u.blockHash).toLowerCase()&&r.push("the header is not the block the caller's chain has at that height: it may be orphaned"):r.push("blockHashAtHeight must be a 32-byte block hash")}var l=f.Buffer.isBuffer(t.header)?t.header:f.Buffer.from(String(t.header).replace(/^0x/,""),"hex");if(l.length===80&&i.anchor){if(i.anchor.blockTime!==void 0&&i.anchor.blockTime!==null){var p=l.readUInt32LE(68);Number(i.anchor.blockTime)!==p&&r.push("anchor.blockTime "+i.anchor.blockTime+" is not the time in the block header ("+p+")")}i.anchor.blockHeight!==void 0&&i.anchor.blockHeight!==null&&n.blockHeight!==void 0&&n.blockHeight!==null&&Number(i.anchor.blockHeight)!==Number(n.blockHeight)&&r.push("anchor.blockHeight "+i.anchor.blockHeight+" does not equal spv.blockHeight "+n.blockHeight)}n&&n.format!==void 0&&n.format!==null&&String(n.format).toUpperCase()!=="TSC"&&!t.allowUnknownSpvFormat&&r.push('spv.format is "'+n.format+'" but only "TSC" proofs are verified; the proof was folded as TSC, so this certificate does not describe how it was checked (pass allowUnknownSpvFormat to accept it anyway)'),t.network!==void 0&&t.network!==null&&i.anchor&&i.anchor.network!==void 0&&i.anchor.network!==null&&String(i.anchor.network)!==String(t.network)&&r.push('anchor.network is "'+i.anchor.network+'" but the verifier expects "'+t.network+'"');var d=n.merkleProof;if(d&&Array.isArray(d.nodes)&&d.index!==void 0&&d.index!==null){var v=Math.pow(2,d.nodes.length);(!Number.isInteger(Number(d.index))||Number(d.index)<0||Number(d.index)>=v)&&r.push("spv.merkleProof.index "+d.index+" does not fit a path of "+d.nodes.length+" nodes, which addresses at most "+v+" leaves")}return{valid:r.length===0,errors:r}}catch(_){return{valid:!1,errors:["anchor verification error: "+_.message]}}};Yt.verifyBatchInclusion=function(e){try{var t=Br.normalize(e);return!t||!t.anchor||t.anchor.type!==Br.ANCHOR_TYPE.BATCH?{valid:!1,errors:['certificate is not batch-anchored (anchor.type is not "batch")']}:t.merkle?nC(t,"merkle inclusion proof does not fold to the batch root"):{valid:!1,errors:["batch certificate has no merkle proof"]}}catch(r){return{valid:!1,errors:["batch inclusion error: "+r.message]}}};function nC(e,t){try{var r=e.merkle,i=Br.decodeBytes(e.proofHash,"hex","proofHash"),n=Br.decodeBytes(r.root,"hex","merkle.root");if(Number.isInteger(r.leafIndex)&&Number.isInteger(r.leafCount)&&r.leafCount>0&&r.leafIndex>=0&&r.leafIndex<r.leafCount){var o=fw.pathSides(r.leafIndex,r.leafCount),a=(r.path||[]).map(function(u){return u&&typeof u=="object"&&!f.Buffer.isBuffer(u)?u.side:void 0});if(o.length!==a.length)return{valid:!1,errors:["merkle.leafIndex "+r.leafIndex+" in a tree of "+r.leafCount+" leaves needs "+o.length+" path nodes; the path has "+a.length]};for(var s=0;s<o.length;s++)if(a[s]!==void 0&&a[s]!==o[s])return{valid:!1,errors:["merkle.leafIndex "+r.leafIndex+" disagrees with the path: node "+s+' is marked "'+a[s]+'" but leaf '+r.leafIndex+" of "+r.leafCount+' requires "'+o[s]+'"']}}return fw.verifyAuditPath(i,r.path,n)?{valid:!0,errors:[]}:{valid:!1,errors:[t]}}catch(u){return{valid:!1,errors:["batch inclusion error: "+u.message]}}}Yt.verify=function(e,t){t=t||{};var r={valid:!1,shape:[],signature:!1,proofIntegrity:!1,anchor:!1,errors:[]};if(r.legacy=Br.isLegacy(e),e=Br.normalize(e),r.shape=Br.validateShape(e),r.shape.length)return r.errors=r.shape.slice(),r;if(r.signature=Yt.verifySignature(e),r.signature||r.errors.push("signature does not verify"),r.proofIntegrity=Br.proofHashMatches(e),r.proofIntegrity||r.errors.push("proofHash does not match the certificate fields"),t.skipAnchor)return r.errors.push("anchor not checked (skipAnchor): this certificate is NOT verified"),r;var i=Yt.verifyAnchorSPV(e,t);r.anchor=i.valid,i.errors.forEach(function(a){r.errors.push(a)}),r.batchInclusion=!0;var n=!!(e.anchor&&e.anchor.type===Br.ANCHOR_TYPE.BATCH);if(n||e.merkle!==void 0){var o=n?Yt.verifyBatchInclusion(e):nC(e,"merkle proof does not fold to its stated root");r.batchInclusion=o.valid,o.errors.forEach(function(a){r.errors.push(a)})}return r.valid=r.signature&&r.proofIntegrity&&r.anchor&&r.batchInclusion,r};Yt.isValid=function(e,t){return Yt.verify(e,t).valid===!0};oC.exports=Yt});var hw=T((Nue,hC)=>{"use strict";g();var Nr=at(),sC=Ie(),uC=Ke(),CW=pc(),_m=Pc(),cC=Le(),wm=vh(),hu=ca(),lw=un(),fC=sr(),lC=pi(),mh=lC,Un=lC.HDPublicKey,Sm=fa(),ss=ni();function re(e){if(e instanceof re)return e;if(!(this instanceof re))return new re(e);if(e)if(Nr.isString(e)||f.Buffer.isBuffer(e)){var t=re.getSerializedError(e);if(t){if(f.Buffer.isBuffer(e)&&!re.getSerializedError(e.toString()))return this._buildFromSerialized(e.toString());if(t instanceof Un.ArgumentIsPrivateExtended)return new wm(e).hdPublicKey;throw t}else return this._buildFromSerialized(e)}else{if(Nr.isObject(e))return e instanceof wm?this._buildFromPrivate(e):this._buildFromObject(e);throw new Un.UnrecognizedArgument(e)}else throw new Un.MustSupplyArgument}re.fromHDPrivateKey=function(e){return new re(e)};re.isValidPath=function(e){if(Nr.isString(e)){var t=wm._getDerivationIndexes(e);return t!==null&&Nr.every(t,re.isValidPath)}return Nr.isNumber(e)?e>=0&&e<re.Hardened:!1};re.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")};re.prototype.deriveChild=function(e,t){if(Nr.isNumber(e))return this._deriveWithNumber(e,t);if(Nr.isString(e))return this._deriveFromString(e);throw new Un.InvalidDerivationArgument(e)};re.prototype._deriveWithNumber=function(e,t){if(e>=re.Hardened||t)throw new Un.InvalidIndexCantDeriveHardened;if(e<0)throw new Un.InvalidPath(e);var r=ss.integerAsBuffer(e),i=f.Buffer.concat([this.publicKey.toBuffer(),r]),n=cC.sha512hmac(i,this._buffers.chainCode),o=uC.fromBuffer(n.slice(0,32),{size:32}),a=n.slice(32,64),s;try{s=fC.fromPoint(lw.getG().mul(o).add(this.publicKey.point))}catch{return this._deriveWithNumber(e+1)}var u=new re({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:a,publicKey:s});return u};re.prototype._deriveFromString=function(e){if(Nr.includes(e,"'"))throw new Un.InvalidIndexCantDeriveHardened;if(!re.isValidPath(e))throw new Un.InvalidPath(e);var t=wm._getDerivationIndexes(e),r=t.reduce(function(i,n){return i._deriveWithNumber(n)},this);return r};re.isValidSerialized=function(e,t){return Nr.isNull(re.getSerializedError(e,t))};re.getSerializedError=function(e,t){if(!(Nr.isString(e)||f.Buffer.isBuffer(e)))return new Un.UnrecognizedArgument("expected buffer or string");if(!CW.validCharacters(e))return new mh.InvalidB58Char("(unknown)",e);try{e=_m.decode(e)}catch{return new mh.InvalidB58Checksum(e)}if(e.length!==re.DataSize)return new Un.InvalidLength(e);if(!Nr.isUndefined(t)){var r=re._validateNetwork(e,t);if(r)return r}var i=e.readUInt32BE(0);return i===hu.livenet.xprivkey||i===hu.testnet.xprivkey?new Un.ArgumentIsPrivateExtended:null};re._validateNetwork=function(e,t){var r=hu.get(t);if(!r)return new mh.InvalidNetworkArgument(t);var i=e.slice(re.VersionStart,re.VersionEnd);return i.readUInt32BE(0)!==r.xpubkey?new mh.InvalidNetwork(i):null};re.prototype._buildFromPrivate=function(e){var t=Nr.clone(e._buffers),r=lw.getG().mul(uC.fromBuffer(t.privateKey));return t.publicKey=lw.pointToCompressed(r),t.version=ss.integerAsBuffer(hu.get(t.version.readUInt32BE(0)).xpubkey),t.privateKey=void 0,t.checksum=void 0,t.xprivkey=void 0,this._buildFromBuffers(t)};re.prototype._buildFromObject=function(e){var t={version:e.network?ss.integerAsBuffer(hu.get(e.network).xpubkey):e.version,depth:Nr.isNumber(e.depth)?f.Buffer.from([e.depth&255]):e.depth,parentFingerPrint:Nr.isNumber(e.parentFingerPrint)?ss.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:Nr.isNumber(e.childIndex)?ss.integerAsBuffer(e.childIndex):e.childIndex,chainCode:Nr.isString(e.chainCode)?f.Buffer.from(e.chainCode,"hex"):e.chainCode,publicKey:Nr.isString(e.publicKey)?f.Buffer.from(e.publicKey,"hex"):f.Buffer.isBuffer(e.publicKey)?e.publicKey:e.publicKey.toBuffer(),checksum:Nr.isNumber(e.checksum)?ss.integerAsBuffer(e.checksum):e.checksum};return this._buildFromBuffers(t)};re.prototype._buildFromSerialized=function(e){var t=_m.decode(e),r={version:t.slice(re.VersionStart,re.VersionEnd),depth:t.slice(re.DepthStart,re.DepthEnd),parentFingerPrint:t.slice(re.ParentFingerPrintStart,re.ParentFingerPrintEnd),childIndex:t.slice(re.ChildIndexStart,re.ChildIndexEnd),chainCode:t.slice(re.ChainCodeStart,re.ChainCodeEnd),publicKey:t.slice(re.PublicKeyStart,re.PublicKeyEnd),checksum:t.slice(re.ChecksumStart,re.ChecksumEnd),xpubkey:e};return this._buildFromBuffers(r)};re.prototype._buildFromBuffers=function(e){re._validateBufferArguments(e),ss.defineImmutable(this,{_buffers:e});var t=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,e.publicKey],r=f.Buffer.concat(t),i=_m.checksum(r);if(!e.checksum||!e.checksum.length)e.checksum=i;else if(e.checksum.toString("hex")!==i.toString("hex"))throw new mh.InvalidB58Checksum(r,i);var n=hu.get(e.version.readUInt32BE(0)),o;o=_m.encode(f.Buffer.concat(t)),e.xpubkey=f.Buffer.from(o);var a=new fC(e.publicKey,{network:n}),s=re.ParentFingerPrintSize,u=cC.sha256ripemd160(a.toBuffer()).slice(0,s);return ss.defineImmutable(this,{xpubkey:o,network:n,depth:e.depth[0],publicKey:a,fingerPrint:u}),this};re._validateBufferArguments=function(e){var t=function(r,i){var n=e[r];Sm(f.Buffer.isBuffer(n),r+" argument is not a buffer, it's "+typeof n),Sm(n.length===i,r+" has not the expected size: found "+n.length+", expected "+i)};t("version",re.VersionSize),t("depth",re.DepthSize),t("parentFingerPrint",re.ParentFingerPrintSize),t("childIndex",re.ChildIndexSize),t("chainCode",re.ChainCodeSize),t("publicKey",re.PublicKeySize),e.checksum&&e.checksum.length&&t("checksum",re.CheckSumSize)};re.fromString=function(e){return sC.checkArgument(Nr.isString(e),"No valid string was provided"),new re(e)};re.fromObject=function(e){return sC.checkArgument(Nr.isObject(e),"No valid argument was provided"),new re(e)};re.prototype.toString=function(){return this.xpubkey};re.prototype.inspect=function(){return"<HDPublicKey: "+this.xpubkey+">"};re.prototype.toObject=re.prototype.toJSON=function(){return{network:hu.get(this._buffers.version.readUInt32BE(0)).name,depth:this._buffers.depth[0],fingerPrint:this.fingerPrint.readUInt32BE(0),parentFingerPrint:this._buffers.parentFingerPrint.readUInt32BE(0),childIndex:this._buffers.childIndex.readUInt32BE(0),chainCode:this._buffers.chainCode.toString("hex"),publicKey:this.publicKey.toString(),checksum:this._buffers.checksum.readUInt32BE(0),xpubkey:this.xpubkey}};re.fromBuffer=function(e){return new re(e)};re.fromHex=function(e){return re.fromBuffer(f.Buffer.from(e,"hex"))};re.prototype.toBuffer=function(){return f.Buffer.from(this._buffers.xpubkey)};re.prototype.toHex=function(){return this.toBuffer().toString("hex")};re.Hardened=2147483648;re.RootElementAlias=["m","M"];re.VersionSize=4;re.DepthSize=1;re.ParentFingerPrintSize=4;re.ChildIndexSize=4;re.ChainCodeSize=32;re.PublicKeySize=33;re.CheckSumSize=4;re.DataSize=78;re.SerializedByteSize=82;re.VersionStart=0;re.VersionEnd=re.VersionStart+re.VersionSize;re.DepthStart=re.VersionEnd;re.DepthEnd=re.DepthStart+re.DepthSize;re.ParentFingerPrintStart=re.DepthEnd;re.ParentFingerPrintEnd=re.ParentFingerPrintStart+re.ParentFingerPrintSize;re.ChildIndexStart=re.ParentFingerPrintEnd;re.ChildIndexEnd=re.ChildIndexStart+re.ChildIndexSize;re.ChainCodeStart=re.ChildIndexEnd;re.ChainCodeEnd=re.ChainCodeStart+re.ChainCodeSize;re.PublicKeyStart=re.ChainCodeEnd;re.PublicKeyEnd=re.PublicKeyStart+re.PublicKeySize;re.ChecksumStart=re.PublicKeyEnd;re.ChecksumEnd=re.ChecksumStart+re.CheckSumSize;Sm(re.PublicKeyEnd===re.DataSize);Sm(re.ChecksumEnd===re.SerializedByteSize);hC.exports=re});var vh=T((Lue,vC)=>{"use strict";g();var Em=fa(),bh=rr(),pr=at(),pC=Ie(),gC=Ke(),LW=pc(),yh=Pc(),dw=Le(),du=ca(),MW=un(),mC=ei(),DW=Ki(),Wc=pi(),wo=Wc.HDPrivateKey,_o=ni(),HW=128,dC=1/8,qW=512;function Z(e){if(e instanceof Z)return e;if(!(this instanceof Z))return new Z(e);if(!e)return this._generateRandomly();if(du.get(e))return this._generateRandomly(e);if(pr.isString(e)||f.Buffer.isBuffer(e))if(Z.isValidSerialized(e))this._buildFromSerialized(e);else if(_o.isValidJSON(e))this._buildFromJSON(e);else if(f.Buffer.isBuffer(e)&&Z.isValidSerialized(e.toString()))this._buildFromSerialized(e.toString());else throw Z.getSerializedError(e);else if(pr.isObject(e))this._buildFromObject(e);else throw new wo.UnrecognizedArgument(e)}Z.fromRandom=function(e){return new Z(e)};Z.isValidPath=function(e,t){if(pr.isString(e)){var r=Z._getDerivationIndexes(e);return r!==null&&pr.every(r,Z.isValidPath)}return pr.isNumber(e)?(e<Z.Hardened&&t===!0&&(e+=Z.Hardened),e>=0&&e<Z.MaxIndex):!1};Z._getDerivationIndexes=function(e){var t=e.split("/");if(pr.includes(Z.RootElementAlias,e))return[];if(!pr.includes(Z.RootElementAlias,t[0]))return null;var r=t.slice(1).map(function(i){var n=i.slice(-1)==="'";if(n&&(i=i.slice(0,-1)),!i||i[0]==="-")return NaN;var o=+i;return n&&(o+=Z.Hardened),o});return pr.some(r,isNaN)?null:r};Z.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")};Z.prototype.deriveChild=function(e,t){if(pr.isNumber(e))return this._deriveWithNumber(e,t);if(pr.isString(e))return this._deriveFromString(e);throw new wo.InvalidDerivationArgument(e)};Z.prototype.deriveNonCompliantChild=function(e,t){if(pr.isNumber(e))return this._deriveWithNumber(e,t,!0);if(pr.isString(e))return this._deriveFromString(e,!0);throw new wo.InvalidDerivationArgument(e)};Z.prototype._deriveWithNumber=function(e,t,r){if(!Z.isValidPath(e,t))throw new wo.InvalidPath(e);t=e>=Z.Hardened?!0:t,e<Z.Hardened&&t===!0&&(e+=Z.Hardened);var i=_o.integerAsBuffer(e),n;if(t&&r){var o=this.privateKey.bn.toBuffer();n=f.Buffer.concat([bh.Buffer.from([0]),o,i])}else if(t){var a=this.privateKey.bn.toBuffer({size:32});Em(a.length===32,"length of private key buffer is expected to be 32 bytes"),n=f.Buffer.concat([bh.Buffer.from([0]),a,i])}else n=f.Buffer.concat([this.publicKey.toBuffer(),i]);var s=dw.sha512hmac(n,this._buffers.chainCode),u=gC.fromBuffer(s.slice(0,32),{size:32}),c=s.slice(32,64),l=u.add(this.privateKey.toBigNumber()).umod(MW.getN()).toBuffer({size:32});if(!mC.isValid(l))return this._deriveWithNumber(e+1,null,r);var p=new Z({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:c,privateKey:l});return p};Z.prototype._deriveFromString=function(e,t){if(!Z.isValidPath(e))throw new wo.InvalidPath(e);var r=Z._getDerivationIndexes(e),i=r.reduce(function(n,o){return n._deriveWithNumber(o,null,t)},this);return i};Z.isValidSerialized=function(e,t){return!Z.getSerializedError(e,t)};Z.getSerializedError=function(e,t){if(!(pr.isString(e)||f.Buffer.isBuffer(e)))return new wo.UnrecognizedArgument("Expected string or buffer");if(!LW.validCharacters(e))return new Wc.InvalidB58Char("(unknown)",e);try{e=yh.decode(e)}catch{return new Wc.InvalidB58Checksum(e)}if(e.length!==Z.DataLength)return new wo.InvalidLength(e);if(!pr.isUndefined(t)){var r=Z._validateNetwork(e,t);if(r)return r}return null};Z._validateNetwork=function(e,t){var r=du.get(t);if(!r)return new Wc.InvalidNetworkArgument(t);var i=e.slice(0,4);return i.readUInt32BE(0)!==r.xprivkey?new Wc.InvalidNetwork(i):null};Z.fromString=function(e){return pC.checkArgument(pr.isString(e),"No valid string was provided"),new Z(e)};Z.fromObject=function(e){return pC.checkArgument(pr.isObject(e),"No valid argument was provided"),new Z(e)};Z.prototype._buildFromJSON=function(e){return this._buildFromObject(JSON.parse(e))};Z.prototype._buildFromObject=function(e){var t={version:e.network?_o.integerAsBuffer(du.get(e.network).xprivkey):e.version,depth:pr.isNumber(e.depth)?f.Buffer.from([e.depth&255]):e.depth,parentFingerPrint:pr.isNumber(e.parentFingerPrint)?_o.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:pr.isNumber(e.childIndex)?_o.integerAsBuffer(e.childIndex):e.childIndex,chainCode:pr.isString(e.chainCode)?f.Buffer.from(e.chainCode,"hex"):e.chainCode,privateKey:pr.isString(e.privateKey)&&_o.isHexa(e.privateKey)?f.Buffer.from(e.privateKey,"hex"):e.privateKey,checksum:e.checksum?e.checksum.length?e.checksum:_o.integerAsBuffer(e.checksum):void 0};return this._buildFromBuffers(t)};Z.prototype._buildFromSerialized=function(e){var t=yh.decode(e),r={version:t.slice(Z.VersionStart,Z.VersionEnd),depth:t.slice(Z.DepthStart,Z.DepthEnd),parentFingerPrint:t.slice(Z.ParentFingerPrintStart,Z.ParentFingerPrintEnd),childIndex:t.slice(Z.ChildIndexStart,Z.ChildIndexEnd),chainCode:t.slice(Z.ChainCodeStart,Z.ChainCodeEnd),privateKey:t.slice(Z.PrivateKeyStart,Z.PrivateKeyEnd),checksum:t.slice(Z.ChecksumStart,Z.ChecksumEnd),xprivkey:e};return this._buildFromBuffers(r)};Z.prototype._generateRandomly=function(e){return Z.fromSeed(DW.getRandomBuffer(64),e)};Z.fromSeed=function(e,t){if(_o.isHexaString(e)&&(e=f.Buffer.from(e,"hex")),!f.Buffer.isBuffer(e))throw new wo.InvalidEntropyArgument(e);if(e.length<HW*dC)throw new wo.InvalidEntropyArgument.NotEnoughEntropy(e);if(e.length>qW*dC)throw new wo.InvalidEntropyArgument.TooMuchEntropy(e);var r=dw.sha512hmac(e,bh.Buffer.from("Bitcoin seed"));return new Z({network:du.get(t)||du.defaultNetwork,depth:0,parentFingerPrint:0,childIndex:0,privateKey:r.slice(0,32),chainCode:r.slice(32,64)})};Z.prototype._calcHDPublicKey=function(){if(!this._hdPublicKey){var e=hw();this._hdPublicKey=new e(this)}};Z.prototype._buildFromBuffers=function(e){Z._validateBufferArguments(e),_o.defineImmutable(this,{_buffers:e});var t=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,f.Buffer.alloc(1),e.privateKey],r=bh.Buffer.concat(t);if(!e.checksum||!e.checksum.length)e.checksum=yh.checksum(r);else if(e.checksum.toString()!==yh.checksum(r).toString())throw new Wc.InvalidB58Checksum(r);var i=du.get(e.version.readUInt32BE(0)),n;n=yh.encode(bh.Buffer.concat(t)),e.xprivkey=f.Buffer.from(n);var o=new mC(gC.fromBuffer(e.privateKey),i),a=o.toPublicKey(),s=Z.ParentFingerPrintSize,u=dw.sha256ripemd160(a.toBuffer()).slice(0,s);return _o.defineImmutable(this,{xprivkey:n,network:i,depth:e.depth[0],privateKey:o,publicKey:a,fingerPrint:u}),this._hdPublicKey=null,Object.defineProperty(this,"hdPublicKey",{configurable:!1,enumerable:!0,get:function(){return this._calcHDPublicKey(),this._hdPublicKey}}),Object.defineProperty(this,"xpubkey",{configurable:!1,enumerable:!0,get:function(){return this._calcHDPublicKey(),this._hdPublicKey.xpubkey}}),this};Z._validateBufferArguments=function(e){var t=function(r,i){var n=e[r];Em(f.Buffer.isBuffer(n),r+" argument is not a buffer"),Em(n.length===i,r+" has not the expected size: found "+n.length+", expected "+i)};t("version",Z.VersionSize),t("depth",Z.DepthSize),t("parentFingerPrint",Z.ParentFingerPrintSize),t("childIndex",Z.ChildIndexSize),t("chainCode",Z.ChainCodeSize),t("privateKey",Z.PrivateKeySize),e.checksum&&e.checksum.length&&t("checksum",Z.CheckSumSize)};Z.prototype.toString=function(){return this.xprivkey};Z.prototype.inspect=function(){return"<HDPrivateKey: "+this.xprivkey+">"};Z.prototype.toObject=Z.prototype.toJSON=function(){return{network:du.get(this._buffers.version.readUInt32BE(0),"xprivkey").name,depth:this._buffers.depth[0],fingerPrint:this.fingerPrint.readUInt32BE(0),parentFingerPrint:this._buffers.parentFingerPrint.readUInt32BE(0),childIndex:this._buffers.childIndex.readUInt32BE(0),chainCode:this._buffers.chainCode.toString("hex"),privateKey:this.privateKey.toBuffer().toString("hex"),checksum:this._buffers.checksum.readUInt32BE(0),xprivkey:this.xprivkey}};Z.fromBuffer=function(e){return new Z(e.toString())};Z.fromHex=function(e){return Z.fromBuffer(f.Buffer.from(e,"hex"))};Z.prototype.toBuffer=function(){return f.Buffer.from(this.toString())};Z.prototype.toHex=function(){return this.toBuffer().toString("hex")};Z.DefaultDepth=0;Z.DefaultFingerprint=0;Z.DefaultChildIndex=0;Z.Hardened=2147483648;Z.MaxIndex=2*Z.Hardened;Z.RootElementAlias=["m","M","m'","M'"];Z.VersionSize=4;Z.DepthSize=1;Z.ParentFingerPrintSize=4;Z.ChildIndexSize=4;Z.ChainCodeSize=32;Z.PrivateKeySize=32;Z.CheckSumSize=4;Z.DataLength=78;Z.SerializedByteSize=82;Z.VersionStart=0;Z.VersionEnd=Z.VersionStart+Z.VersionSize;Z.DepthStart=Z.VersionEnd;Z.DepthEnd=Z.DepthStart+Z.DepthSize;Z.ParentFingerPrintStart=Z.DepthEnd;Z.ParentFingerPrintEnd=Z.ParentFingerPrintStart+Z.ParentFingerPrintSize;Z.ChildIndexStart=Z.ParentFingerPrintEnd;Z.ChildIndexEnd=Z.ChildIndexStart+Z.ChildIndexSize;Z.ChainCodeStart=Z.ChildIndexEnd;Z.ChainCodeEnd=Z.ChainCodeStart+Z.ChainCodeSize;Z.PrivateKeyStart=Z.ChainCodeEnd+1;Z.PrivateKeyEnd=Z.PrivateKeyStart+Z.PrivateKeySize;Z.ChecksumStart=Z.PrivateKeyEnd;Z.ChecksumEnd=Z.ChecksumStart+Z.CheckSumSize;Em(Z.ChecksumEnd===Z.SerializedByteSize);vC.exports=Z});var SC=T((Due,wC)=>{"use strict";g();var UW=Le(),xm=at(),FW=ei(),jW=sr(),yC=Ni(),bC=Nn(),pw=dn(),_C=gt(),zW=UW.sha256sha256,KW=ni(),Yc=Ie(),er=function e(t){return this instanceof e?(Yc.checkArgument(xm.isString(t)||f.Buffer.isBuffer(t),"First argument should be a string or Buffer"),xm.isString(t)&&(this.messageBuffer=f.Buffer.from(t)),f.Buffer.isBuffer(t)&&(this.messageBuffer=t),this):new e(t)};er.sign=function(e,t){return new er(e).sign(t)};er.verify=function(e,t,r){return new er(e).verify(t,r)};er.MAGIC_BYTES=f.Buffer.from(`Bitcoin Signed Message:
75
75
  `);er.prototype.magicHash=function(){var t=bC.varintBufNum(er.MAGIC_BYTES.length),r=bC.varintBufNum(this.messageBuffer.length),i=f.Buffer.concat([t,er.MAGIC_BYTES,r,this.messageBuffer]),n=zW(i);return n};er.prototype._sign=function(t){Yc.checkArgument(t instanceof FW,"First argument should be an instance of PrivateKey");var r=this.magicHash();return pw.signWithCalcI(r,t)};er.prototype.sign=function(t){var r=this._sign(t);return r.toCompact().toString("base64")};er.prototype._verify=function(t,r){Yc.checkArgument(t instanceof jW,"First argument should be an instance of PublicKey"),Yc.checkArgument(r instanceof _C,"Second argument should be an instance of Signature");var i=this.magicHash(),n=pw.verify(i,r,t);return n||(this.error="The signature was invalid"),n};er.prototype.verify=function(t,r){Yc.checkArgument(t),Yc.checkArgument(r&&xm.isString(r)),xm.isString(t)&&(t=yC.fromString(t));var i=_C.fromCompact(f.Buffer.from(r,"base64")),n=new pw;n.hashbuf=this.magicHash(),n.sig=i;var o=n.toPublicKey(),a=yC.fromPublicKey(o,t.network);return t.toString()!==a.toString()?(this.error="The signature did not match the message digest",!1):this._verify(o,i)};er.fromString=function(e){return new er(e)};er.fromJSON=function(t){return KW.isValidJSON(t)&&(t=JSON.parse(t)),er.fromObject(t)};er.prototype.toObject=function(){return{messageHex:this.messageBuffer.toString("hex")}};er.fromObject=function(e){let t=f.Buffer.from(e.messageHex,"hex");return new er(t)};er.prototype.toJSON=function(){return JSON.stringify(this.toObject())};er.prototype.toString=function(){return this.messageBuffer.toString()};er.prototype.inspect=function(){return"<Message: "+this.toString()+">"};wC.exports=er});var xC=T((que,EC)=>{g();EC.exports=SC()});var AC=T((Fue,IC)=>{"use strict";g();var OC=nr();function VW(e,t,r,i){var n=64;if(i>(Math.pow(2,32)-1)*n)throw Error("Requested key length too long");if(typeof e!="string"&&!f.Buffer.isBuffer(e))throw new TypeError("key must a string or Buffer");if(typeof t!="string"&&!f.Buffer.isBuffer(t))throw new TypeError("salt must a string or Buffer");typeof e=="string"&&(e=f.Buffer.from(e)),typeof t=="string"&&(t=f.Buffer.from(t));var o=f.Buffer.alloc(i),a=f.Buffer.alloc(n),s=f.Buffer.alloc(n),u=f.Buffer.alloc(t.length+4),c=Math.ceil(i/n),l=i-(c-1)*n;t.copy(u,0,0,t.length);for(var p=1;p<=c;p++){u[t.length+0]=p>>24&255,u[t.length+1]=p>>16&255,u[t.length+2]=p>>8&255,u[t.length+3]=p>>0&255,a=OC.createHmac("sha512",e).update(u).digest(),a.copy(s,0,0,n);for(var d=1;d<r;d++){a=OC.createHmac("sha512",e).update(a).digest();for(var v=0;v<n;v++)s[v]^=a[v]}var _=(p-1)*n,I=p===c?l:n;s.copy(o,_,0,I)}return o}IC.exports=VW});var RC=T((zue,PC)=>{"use strict";g();var TC=Le();function GW(e,t,r,i){var n=64;if(i>(Math.pow(2,32)-1)*n)throw Error("Requested key length too long");if(typeof e!="string"&&!f.Buffer.isBuffer(e))throw new TypeError("key must a string or Buffer");if(typeof t!="string"&&!f.Buffer.isBuffer(t))throw new TypeError("salt must a string or Buffer");typeof e=="string"&&(e=f.Buffer.from(e)),typeof t=="string"&&(t=f.Buffer.from(t));var o=f.Buffer.alloc(i),a=f.Buffer.alloc(n),s=f.Buffer.alloc(n),u=f.Buffer.alloc(t.length+4),c=Math.ceil(i/n),l=i-(c-1)*n;t.copy(u,0,0,t.length);for(var p=1;p<=c;p++){u[t.length+0]=p>>24&255,u[t.length+1]=p>>16&255,u[t.length+2]=p>>8&255,u[t.length+3]=p>>0&255,a=TC.sha512hmac(u,e),a.copy(s,0,0,n);for(var d=1;d<r;d++){a=TC.sha512hmac(a,e);for(var v=0;v<n;v++)s[v]^=a[v]}var _=(p-1)*n,I=p===c?l:n;s.copy(o,_,0,I)}return o}PC.exports=GW});var BC=T((Vue,kC)=>{"use strict";g();var WW="87aa7cdea5ef619d4ff0b4241a1d6cb02379f4e2ce4ec2787ad0b30545e17cdedaa833b7d6b8a702038b274eaea3f4e4be9d914eeb61f1702e696c203a126854";function YW(){var e;try{e=nr()}catch{return!1}if(!e||typeof e.createHmac!="function")return!1;try{var t=e.createHmac("sha512",f.Buffer.alloc(20,11)).update("Hi There").digest("hex");return t===WW}catch{return!1}}kC.exports=YW()?AC():RC()});var CC=T((Wue,NC)=>{"use strict";g();var ZW={name:"Mnemonic",message:"Internal Error on bsv-mnemonic module {0}",errors:[{name:"InvalidEntropy",message:"Entropy length must be an even multiple of 11 bits: {0}"},{name:"UnknownWordlist",message:"Could not detect the used word list: {0}"},{name:"InvalidMnemonic",message:"Mnemonic string is invalid: {0}"}]};NC.exports=pi().extend(ZW)});var MC=T((Zue,LC)=>{"use strict";g();var $W=["\u7684","\u4E00","\u662F","\u5728","\u4E0D","\u4E86","\u6709","\u548C","\u4EBA","\u8FD9","\u4E2D","\u5927","\u4E3A","\u4E0A","\u4E2A","\u56FD","\u6211","\u4EE5","\u8981","\u4ED6","\u65F6","\u6765","\u7528","\u4EEC","\u751F","\u5230","\u4F5C","\u5730","\u4E8E","\u51FA","\u5C31","\u5206","\u5BF9","\u6210","\u4F1A","\u53EF","\u4E3B","\u53D1","\u5E74","\u52A8","\u540C","\u5DE5","\u4E5F","\u80FD","\u4E0B","\u8FC7","\u5B50","\u8BF4","\u4EA7","\u79CD","\u9762","\u800C","\u65B9","\u540E","\u591A","\u5B9A","\u884C","\u5B66","\u6CD5","\u6240","\u6C11","\u5F97","\u7ECF","\u5341","\u4E09","\u4E4B","\u8FDB","\u7740","\u7B49","\u90E8","\u5EA6","\u5BB6","\u7535","\u529B","\u91CC","\u5982","\u6C34","\u5316","\u9AD8","\u81EA","\u4E8C","\u7406","\u8D77","\u5C0F","\u7269","\u73B0","\u5B9E","\u52A0","\u91CF","\u90FD","\u4E24","\u4F53","\u5236","\u673A","\u5F53","\u4F7F","\u70B9","\u4ECE","\u4E1A","\u672C","\u53BB","\u628A","\u6027","\u597D","\u5E94","\u5F00","\u5B83","\u5408","\u8FD8","\u56E0","\u7531","\u5176","\u4E9B","\u7136","\u524D","\u5916","\u5929","\u653F","\u56DB","\u65E5","\u90A3","\u793E","\u4E49","\u4E8B","\u5E73","\u5F62","\u76F8","\u5168","\u8868","\u95F4","\u6837","\u4E0E","\u5173","\u5404","\u91CD","\u65B0","\u7EBF","\u5185","\u6570","\u6B63","\u5FC3","\u53CD","\u4F60","\u660E","\u770B","\u539F","\u53C8","\u4E48","\u5229","\u6BD4","\u6216","\u4F46","\u8D28","\u6C14","\u7B2C","\u5411","\u9053","\u547D","\u6B64","\u53D8","\u6761","\u53EA","\u6CA1","\u7ED3","\u89E3","\u95EE","\u610F","\u5EFA","\u6708","\u516C","\u65E0","\u7CFB","\u519B","\u5F88","\u60C5","\u8005","\u6700","\u7ACB","\u4EE3","\u60F3","\u5DF2","\u901A","\u5E76","\u63D0","\u76F4","\u9898","\u515A","\u7A0B","\u5C55","\u4E94","\u679C","\u6599","\u8C61","\u5458","\u9769","\u4F4D","\u5165","\u5E38","\u6587","\u603B","\u6B21","\u54C1","\u5F0F","\u6D3B","\u8BBE","\u53CA","\u7BA1","\u7279","\u4EF6","\u957F","\u6C42","\u8001","\u5934","\u57FA","\u8D44","\u8FB9","\u6D41","\u8DEF","\u7EA7","\u5C11","\u56FE","\u5C71","\u7EDF","\u63A5","\u77E5","\u8F83","\u5C06","\u7EC4","\u89C1","\u8BA1","\u522B","\u5979","\u624B","\u89D2","\u671F","\u6839","\u8BBA","\u8FD0","\u519C","\u6307","\u51E0","\u4E5D","\u533A","\u5F3A","\u653E","\u51B3","\u897F","\u88AB","\u5E72","\u505A","\u5FC5","\u6218","\u5148","\u56DE","\u5219","\u4EFB","\u53D6","\u636E","\u5904","\u961F","\u5357","\u7ED9","\u8272","\u5149","\u95E8","\u5373","\u4FDD","\u6CBB","\u5317","\u9020","\u767E","\u89C4","\u70ED","\u9886","\u4E03","\u6D77","\u53E3","\u4E1C","\u5BFC","\u5668","\u538B","\u5FD7","\u4E16","\u91D1","\u589E","\u4E89","\u6D4E","\u9636","\u6CB9","\u601D","\u672F","\u6781","\u4EA4","\u53D7","\u8054","\u4EC0","\u8BA4","\u516D","\u5171","\u6743","\u6536","\u8BC1","\u6539","\u6E05","\u7F8E","\u518D","\u91C7","\u8F6C","\u66F4","\u5355","\u98CE","\u5207","\u6253","\u767D","\u6559","\u901F","\u82B1","\u5E26","\u5B89","\u573A","\u8EAB","\u8F66","\u4F8B","\u771F","\u52A1","\u5177","\u4E07","\u6BCF","\u76EE","\u81F3","\u8FBE","\u8D70","\u79EF","\u793A","\u8BAE","\u58F0","\u62A5","\u6597","\u5B8C","\u7C7B","\u516B","\u79BB","\u534E","\u540D","\u786E","\u624D","\u79D1","\u5F20","\u4FE1","\u9A6C","\u8282","\u8BDD","\u7C73","\u6574","\u7A7A","\u5143","\u51B5","\u4ECA","\u96C6","\u6E29","\u4F20","\u571F","\u8BB8","\u6B65","\u7FA4","\u5E7F","\u77F3","\u8BB0","\u9700","\u6BB5","\u7814","\u754C","\u62C9","\u6797","\u5F8B","\u53EB","\u4E14","\u7A76","\u89C2","\u8D8A","\u7EC7","\u88C5","\u5F71","\u7B97","\u4F4E","\u6301","\u97F3","\u4F17","\u4E66","\u5E03","\u590D","\u5BB9","\u513F","\u987B","\u9645","\u5546","\u975E","\u9A8C","\u8FDE","\u65AD","\u6DF1","\u96BE","\u8FD1","\u77FF","\u5343","\u5468","\u59D4","\u7D20","\u6280","\u5907","\u534A","\u529E","\u9752","\u7701","\u5217","\u4E60","\u54CD","\u7EA6","\u652F","\u822C","\u53F2","\u611F","\u52B3","\u4FBF","\u56E2","\u5F80","\u9178","\u5386","\u5E02","\u514B","\u4F55","\u9664","\u6D88","\u6784","\u5E9C","\u79F0","\u592A","\u51C6","\u7CBE","\u503C","\u53F7","\u7387","\u65CF","\u7EF4","\u5212","\u9009","\u6807","\u5199","\u5B58","\u5019","\u6BDB","\u4EB2","\u5FEB","\u6548","\u65AF","\u9662","\u67E5","\u6C5F","\u578B","\u773C","\u738B","\u6309","\u683C","\u517B","\u6613","\u7F6E","\u6D3E","\u5C42","\u7247","\u59CB","\u5374","\u4E13","\u72B6","\u80B2","\u5382","\u4EAC","\u8BC6","\u9002","\u5C5E","\u5706","\u5305","\u706B","\u4F4F","\u8C03","\u6EE1","\u53BF","\u5C40","\u7167","\u53C2","\u7EA2","\u7EC6","\u5F15","\u542C","\u8BE5","\u94C1","\u4EF7","\u4E25","\u9996","\u5E95","\u6DB2","\u5B98","\u5FB7","\u968F","\u75C5","\u82CF","\u5931","\u5C14","\u6B7B","\u8BB2","\u914D","\u5973","\u9EC4","\u63A8","\u663E","\u8C08","\u7F6A","\u795E","\u827A","\u5462","\u5E2D","\u542B","\u4F01","\u671B","\u5BC6","\u6279","\u8425","\u9879","\u9632","\u4E3E","\u7403","\u82F1","\u6C27","\u52BF","\u544A","\u674E","\u53F0","\u843D","\u6728","\u5E2E","\u8F6E","\u7834","\u4E9A","\u5E08","\u56F4","\u6CE8","\u8FDC","\u5B57","\u6750","\u6392","\u4F9B","\u6CB3","\u6001","\u5C01","\u53E6","\u65BD","\u51CF","\u6811","\u6EB6","\u600E","\u6B62","\u6848","\u8A00","\u58EB","\u5747","\u6B66","\u56FA","\u53F6","\u9C7C","\u6CE2","\u89C6","\u4EC5","\u8D39","\u7D27","\u7231","\u5DE6","\u7AE0","\u65E9","\u671D","\u5BB3","\u7EED","\u8F7B","\u670D","\u8BD5","\u98DF","\u5145","\u5175","\u6E90","\u5224","\u62A4","\u53F8","\u8DB3","\u67D0","\u7EC3","\u5DEE","\u81F4","\u677F","\u7530","\u964D","\u9ED1","\u72AF","\u8D1F","\u51FB","\u8303","\u7EE7","\u5174","\u4F3C","\u4F59","\u575A","\u66F2","\u8F93","\u4FEE","\u6545","\u57CE","\u592B","\u591F","\u9001","\u7B14","\u8239","\u5360","\u53F3","\u8D22","\u5403","\u5BCC","\u6625","\u804C","\u89C9","\u6C49","\u753B","\u529F","\u5DF4","\u8DDF","\u867D","\u6742","\u98DE","\u68C0","\u5438","\u52A9","\u5347","\u9633","\u4E92","\u521D","\u521B","\u6297","\u8003","\u6295","\u574F","\u7B56","\u53E4","\u5F84","\u6362","\u672A","\u8DD1","\u7559","\u94A2","\u66FE","\u7AEF","\u8D23","\u7AD9","\u7B80","\u8FF0","\u94B1","\u526F","\u5C3D","\u5E1D","\u5C04","\u8349","\u51B2","\u627F","\u72EC","\u4EE4","\u9650","\u963F","\u5BA3","\u73AF","\u53CC","\u8BF7","\u8D85","\u5FAE","\u8BA9","\u63A7","\u5DDE","\u826F","\u8F74","\u627E","\u5426","\u7EAA","\u76CA","\u4F9D","\u4F18","\u9876","\u7840","\u8F7D","\u5012","\u623F","\u7A81","\u5750","\u7C89","\u654C","\u7565","\u5BA2","\u8881","\u51B7","\u80DC","\u7EDD","\u6790","\u5757","\u5242","\u6D4B","\u4E1D","\u534F","\u8BC9","\u5FF5","\u9648","\u4ECD","\u7F57","\u76D0","\u53CB","\u6D0B","\u9519","\u82E6","\u591C","\u5211","\u79FB","\u9891","\u9010","\u9760","\u6DF7","\u6BCD","\u77ED","\u76AE","\u7EC8","\u805A","\u6C7D","\u6751","\u4E91","\u54EA","\u65E2","\u8DDD","\u536B","\u505C","\u70C8","\u592E","\u5BDF","\u70E7","\u8FC5","\u5883","\u82E5","\u5370","\u6D32","\u523B","\u62EC","\u6FC0","\u5B54","\u641E","\u751A","\u5BA4","\u5F85","\u6838","\u6821","\u6563","\u4FB5","\u5427","\u7532","\u6E38","\u4E45","\u83DC","\u5473","\u65E7","\u6A21","\u6E56","\u8D27","\u635F","\u9884","\u963B","\u6BEB","\u666E","\u7A33","\u4E59","\u5988","\u690D","\u606F","\u6269","\u94F6","\u8BED","\u6325","\u9152","\u5B88","\u62FF","\u5E8F","\u7EB8","\u533B","\u7F3A","\u96E8","\u5417","\u9488","\u5218","\u554A","\u6025","\u5531","\u8BEF","\u8BAD","\u613F","\u5BA1","\u9644","\u83B7","\u8336","\u9C9C","\u7CAE","\u65A4","\u5B69","\u8131","\u786B","\u80A5","\u5584","\u9F99","\u6F14","\u7236","\u6E10","\u8840","\u6B22","\u68B0","\u638C","\u6B4C","\u6C99","\u521A","\u653B","\u8C13","\u76FE","\u8BA8","\u665A","\u7C92","\u4E71","\u71C3","\u77DB","\u4E4E","\u6740","\u836F","\u5B81","\u9C81","\u8D35","\u949F","\u7164","\u8BFB","\u73ED","\u4F2F","\u9999","\u4ECB","\u8FEB","\u53E5","\u4E30","\u57F9","\u63E1","\u5170","\u62C5","\u5F26","\u86CB","\u6C89","\u5047","\u7A7F","\u6267","\u7B54","\u4E50","\u8C01","\u987A","\u70DF","\u7F29","\u5F81","\u8138","\u559C","\u677E","\u811A","\u56F0","\u5F02","\u514D","\u80CC","\u661F","\u798F","\u4E70","\u67D3","\u4E95","\u6982","\u6162","\u6015","\u78C1","\u500D","\u7956","\u7687","\u4FC3","\u9759","\u8865","\u8BC4","\u7FFB","\u8089","\u8DF5","\u5C3C","\u8863","\u5BBD","\u626C","\u68C9","\u5E0C","\u4F24","\u64CD","\u5782","\u79CB","\u5B9C","\u6C22","\u5957","\u7763","\u632F","\u67B6","\u4EAE","\u672B","\u5BAA","\u5E86","\u7F16","\u725B","\u89E6","\u6620","\u96F7","\u9500","\u8BD7","\u5EA7","\u5C45","\u6293","\u88C2","\u80DE","\u547C","\u5A18","\u666F","\u5A01","\u7EFF","\u6676","\u539A","\u76DF","\u8861","\u9E21","\u5B59","\u5EF6","\u5371","\u80F6","\u5C4B","\u4E61","\u4E34","\u9646","\u987E","\u6389","\u5440","\u706F","\u5C81","\u63AA","\u675F","\u8010","\u5267","\u7389","\u8D75","\u8DF3","\u54E5","\u5B63","\u8BFE","\u51EF","\u80E1","\u989D","\u6B3E","\u7ECD","\u5377","\u9F50","\u4F1F","\u84B8","\u6B96","\u6C38","\u5B97","\u82D7","\u5DDD","\u7089","\u5CA9","\u5F31","\u96F6","\u6768","\u594F","\u6CBF","\u9732","\u6746","\u63A2","\u6ED1","\u9547","\u996D","\u6D53","\u822A","\u6000","\u8D76","\u5E93","\u593A","\u4F0A","\u7075","\u7A0E","\u9014","\u706D","\u8D5B","\u5F52","\u53EC","\u9F13","\u64AD","\u76D8","\u88C1","\u9669","\u5EB7","\u552F","\u5F55","\u83CC","\u7EAF","\u501F","\u7CD6","\u76D6","\u6A2A","\u7B26","\u79C1","\u52AA","\u5802","\u57DF","\u67AA","\u6DA6","\u5E45","\u54C8","\u7ADF","\u719F","\u866B","\u6CFD","\u8111","\u58E4","\u78B3","\u6B27","\u904D","\u4FA7","\u5BE8","\u6562","\u5F7B","\u8651","\u659C","\u8584","\u5EAD","\u7EB3","\u5F39","\u9972","\u4F38","\u6298","\u9EA6","\u6E7F","\u6697","\u8377","\u74E6","\u585E","\u5E8A","\u7B51","\u6076","\u6237","\u8BBF","\u5854","\u5947","\u900F","\u6881","\u5200","\u65CB","\u8FF9","\u5361","\u6C2F","\u9047","\u4EFD","\u6BD2","\u6CE5","\u9000","\u6D17","\u6446","\u7070","\u5F69","\u5356","\u8017","\u590F","\u62E9","\u5FD9","\u94DC","\u732E","\u786C","\u4E88","\u7E41","\u5708","\u96EA","\u51FD","\u4EA6","\u62BD","\u7BC7","\u9635","\u9634","\u4E01","\u5C3A","\u8FFD","\u5806","\u96C4","\u8FCE","\u6CDB","\u7238","\u697C","\u907F","\u8C0B","\u5428","\u91CE","\u732A","\u65D7","\u7D2F","\u504F","\u5178","\u9986","\u7D22","\u79E6","\u8102","\u6F6E","\u7237","\u8C46","\u5FFD","\u6258","\u60CA","\u5851","\u9057","\u6108","\u6731","\u66FF","\u7EA4","\u7C97","\u503E","\u5C1A","\u75DB","\u695A","\u8C22","\u594B","\u8D2D","\u78E8","\u541B","\u6C60","\u65C1","\u788E","\u9AA8","\u76D1","\u6355","\u5F1F","\u66B4","\u5272","\u8D2F","\u6B8A","\u91CA","\u8BCD","\u4EA1","\u58C1","\u987F","\u5B9D","\u5348","\u5C18","\u95FB","\u63ED","\u70AE","\u6B8B","\u51AC","\u6865","\u5987","\u8B66","\u7EFC","\u62DB","\u5434","\u4ED8","\u6D6E","\u906D","\u5F90","\u60A8","\u6447","\u8C37","\u8D5E","\u7BB1","\u9694","\u8BA2","\u7537","\u5439","\u56ED","\u7EB7","\u5510","\u8D25","\u5B8B","\u73BB","\u5DE8","\u8015","\u5766","\u8363","\u95ED","\u6E7E","\u952E","\u51E1","\u9A7B","\u9505","\u6551","\u6069","\u5265","\u51DD","\u78B1","\u9F7F","\u622A","\u70BC","\u9EBB","\u7EBA","\u7981","\u5E9F","\u76DB","\u7248","\u7F13","\u51C0","\u775B","\u660C","\u5A5A","\u6D89","\u7B52","\u5634","\u63D2","\u5CB8","\u6717","\u5E84","\u8857","\u85CF","\u59D1","\u8D38","\u8150","\u5974","\u5566","\u60EF","\u4E58","\u4F19","\u6062","\u5300","\u7EB1","\u624E","\u8FA9","\u8033","\u5F6A","\u81E3","\u4EBF","\u7483","\u62B5","\u8109","\u79C0","\u8428","\u4FC4","\u7F51","\u821E","\u5E97","\u55B7","\u7EB5","\u5BF8","\u6C57","\u6302","\u6D2A","\u8D3A","\u95EA","\u67EC","\u7206","\u70EF","\u6D25","\u7A3B","\u5899","\u8F6F","\u52C7","\u50CF","\u6EDA","\u5398","\u8499","\u82B3","\u80AF","\u5761","\u67F1","\u8361","\u817F","\u4EEA","\u65C5","\u5C3E","\u8F67","\u51B0","\u8D21","\u767B","\u9ECE","\u524A","\u94BB","\u52D2","\u9003","\u969C","\u6C28","\u90ED","\u5CF0","\u5E01","\u6E2F","\u4F0F","\u8F68","\u4EA9","\u6BD5","\u64E6","\u83AB","\u523A","\u6D6A","\u79D8","\u63F4","\u682A","\u5065","\u552E","\u80A1","\u5C9B","\u7518","\u6CE1","\u7761","\u7AE5","\u94F8","\u6C64","\u9600","\u4F11","\u6C47","\u820D","\u7267","\u7ED5","\u70B8","\u54F2","\u78F7","\u7EE9","\u670B","\u6DE1","\u5C16","\u542F","\u9677","\u67F4","\u5448","\u5F92","\u989C","\u6CEA","\u7A0D","\u5FD8","\u6CF5","\u84DD","\u62D6","\u6D1E","\u6388","\u955C","\u8F9B","\u58EE","\u950B","\u8D2B","\u865A","\u5F2F","\u6469","\u6CF0","\u5E7C","\u5EF7","\u5C0A","\u7A97","\u7EB2","\u5F04","\u96B6","\u7591","\u6C0F","\u5BAB","\u59D0","\u9707","\u745E","\u602A","\u5C24","\u7434","\u5FAA","\u63CF","\u819C","\u8FDD","\u5939","\u8170","\u7F18","\u73E0","\u7A77","\u68EE","\u679D","\u7AF9","\u6C9F","\u50AC","\u7EF3","\u5FC6","\u90A6","\u5269","\u5E78","\u6D46","\u680F","\u62E5","\u7259","\u8D2E","\u793C","\u6EE4","\u94A0","\u7EB9","\u7F62","\u62CD","\u54B1","\u558A","\u8896","\u57C3","\u52E4","\u7F5A","\u7126","\u6F5C","\u4F0D","\u58A8","\u6B32","\u7F1D","\u59D3","\u520A","\u9971","\u4EFF","\u5956","\u94DD","\u9B3C","\u4E3D","\u8DE8","\u9ED8","\u6316","\u94FE","\u626B","\u559D","\u888B","\u70AD","\u6C61","\u5E55","\u8BF8","\u5F27","\u52B1","\u6885","\u5976","\u6D01","\u707E","\u821F","\u9274","\u82EF","\u8BBC","\u62B1","\u6BC1","\u61C2","\u5BD2","\u667A","\u57D4","\u5BC4","\u5C4A","\u8DC3","\u6E21","\u6311","\u4E39","\u8270","\u8D1D","\u78B0","\u62D4","\u7239","\u6234","\u7801","\u68A6","\u82BD","\u7194","\u8D64","\u6E14","\u54ED","\u656C","\u9897","\u5954","\u94C5","\u4EF2","\u864E","\u7A00","\u59B9","\u4E4F","\u73CD","\u7533","\u684C","\u9075","\u5141","\u9686","\u87BA","\u4ED3","\u9B4F","\u9510","\u6653","\u6C2E","\u517C","\u9690","\u788D","\u8D6B","\u62E8","\u5FE0","\u8083","\u7F38","\u7275","\u62A2","\u535A","\u5DE7","\u58F3","\u5144","\u675C","\u8BAF","\u8BDA","\u78A7","\u7965","\u67EF","\u9875","\u5DE1","\u77E9","\u60B2","\u704C","\u9F84","\u4F26","\u7968","\u5BFB","\u6842","\u94FA","\u5723","\u6050","\u6070","\u90D1","\u8DA3","\u62AC","\u8352","\u817E","\u8D34","\u67D4","\u6EF4","\u731B","\u9614","\u8F86","\u59BB","\u586B","\u64A4","\u50A8","\u7B7E","\u95F9","\u6270","\u7D2B","\u7802","\u9012","\u620F","\u540A","\u9676","\u4F10","\u5582","\u7597","\u74F6","\u5A46","\u629A","\u81C2","\u6478","\u5FCD","\u867E","\u8721","\u90BB","\u80F8","\u5DE9","\u6324","\u5076","\u5F03","\u69FD","\u52B2","\u4E73","\u9093","\u5409","\u4EC1","\u70C2","\u7816","\u79DF","\u4E4C","\u8230","\u4F34","\u74DC","\u6D45","\u4E19","\u6682","\u71E5","\u6A61","\u67F3","\u8FF7","\u6696","\u724C","\u79E7","\u80C6","\u8BE6","\u7C27","\u8E0F","\u74F7","\u8C31","\u5446","\u5BBE","\u7CCA","\u6D1B","\u8F89","\u6124","\u7ADE","\u9699","\u6012","\u7C98","\u4E43","\u7EEA","\u80A9","\u7C4D","\u654F","\u6D82","\u7199","\u7686","\u4FA6","\u60AC","\u6398","\u4EAB","\u7EA0","\u9192","\u72C2","\u9501","\u6DC0","\u6068","\u7272","\u9738","\u722C","\u8D4F","\u9006","\u73A9","\u9675","\u795D","\u79D2","\u6D59","\u8C8C","\u5F79","\u5F7C","\u6089","\u9E2D","\u8D8B","\u51E4","\u6668","\u755C","\u8F88","\u79E9","\u5375","\u7F72","\u68AF","\u708E","\u6EE9","\u68CB","\u9A71","\u7B5B","\u5CE1","\u5192","\u5565","\u5BFF","\u8BD1","\u6D78","\u6CC9","\u5E3D","\u8FDF","\u7845","\u7586","\u8D37","\u6F0F","\u7A3F","\u51A0","\u5AE9","\u80C1","\u82AF","\u7262","\u53DB","\u8680","\u5965","\u9E23","\u5CAD","\u7F8A","\u51ED","\u4E32","\u5858","\u7ED8","\u9175","\u878D","\u76C6","\u9521","\u5E99","\u7B79","\u51BB","\u8F85","\u6444","\u88AD","\u7B4B","\u62D2","\u50DA","\u65F1","\u94BE","\u9E1F","\u6F06","\u6C88","\u7709","\u758F","\u6DFB","\u68D2","\u7A57","\u785D","\u97E9","\u903C","\u626D","\u4FA8","\u51C9","\u633A","\u7897","\u683D","\u7092","\u676F","\u60A3","\u998F","\u529D","\u8C6A","\u8FBD","\u52C3","\u9E3F","\u65E6","\u540F","\u62DC","\u72D7","\u57CB","\u8F8A","\u63A9","\u996E","\u642C","\u9A82","\u8F9E","\u52FE","\u6263","\u4F30","\u848B","\u7ED2","\u96FE","\u4E08","\u6735","\u59C6","\u62DF","\u5B87","\u8F91","\u9655","\u96D5","\u507F","\u84C4","\u5D07","\u526A","\u5021","\u5385","\u54AC","\u9A76","\u85AF","\u5237","\u65A5","\u756A","\u8D4B","\u5949","\u4F5B","\u6D47","\u6F2B","\u66FC","\u6247","\u9499","\u6843","\u6276","\u4ED4","\u8FD4","\u4FD7","\u4E8F","\u8154","\u978B","\u68F1","\u8986","\u6846","\u6084","\u53D4","\u649E","\u9A97","\u52D8","\u65FA","\u6CB8","\u5B64","\u5410","\u5B5F","\u6E20","\u5C48","\u75BE","\u5999","\u60DC","\u4EF0","\u72E0","\u80C0","\u8C10","\u629B","\u9709","\u6851","\u5C97","\u561B","\u8870","\u76D7","\u6E17","\u810F","\u8D56","\u6D8C","\u751C","\u66F9","\u9605","\u808C","\u54E9","\u5389","\u70C3","\u7EAC","\u6BC5","\u6628","\u4F2A","\u75C7","\u716E","\u53F9","\u9489","\u642D","\u830E","\u7B3C","\u9177","\u5077","\u5F13","\u9525","\u6052","\u6770","\u5751","\u9F3B","\u7FFC","\u7EB6","\u53D9","\u72F1","\u902E","\u7F50","\u7EDC","\u68DA","\u6291","\u81A8","\u852C","\u5BFA","\u9AA4","\u7A46","\u51B6","\u67AF","\u518C","\u5C38","\u51F8","\u7EC5","\u576F","\u727A","\u7130","\u8F70","\u6B23","\u664B","\u7626","\u5FA1","\u952D","\u9526","\u4E27","\u65EC","\u953B","\u5784","\u641C","\u6251","\u9080","\u4EAD","\u916F","\u8FC8","\u8212","\u8106","\u9176","\u95F2","\u5FE7","\u915A","\u987D","\u7FBD","\u6DA8","\u5378","\u4ED7","\u966A","\u8F9F","\u60E9","\u676D","\u59DA","\u809A","\u6349","\u98D8","\u6F02","\u6606","\u6B3A","\u543E","\u90CE","\u70F7","\u6C41","\u5475","\u9970","\u8427","\u96C5","\u90AE","\u8FC1","\u71D5","\u6492","\u59FB","\u8D74","\u5BB4","\u70E6","\u503A","\u5E10","\u6591","\u94C3","\u65E8","\u9187","\u8463","\u997C","\u96CF","\u59FF","\u62CC","\u5085","\u8179","\u59A5","\u63C9","\u8D24","\u62C6","\u6B6A","\u8461","\u80FA","\u4E22","\u6D69","\u5FBD","\u6602","\u57AB","\u6321","\u89C8","\u8D2A","\u6170","\u7F34","\u6C6A","\u614C","\u51AF","\u8BFA","\u59DC","\u8C0A","\u51F6","\u52A3","\u8BEC","\u8000","\u660F","\u8EBA","\u76C8","\u9A91","\u4E54","\u6EAA","\u4E1B","\u5362","\u62B9","\u95F7","\u54A8","\u522E","\u9A7E","\u7F06","\u609F","\u6458","\u94D2","\u63B7","\u9887","\u5E7B","\u67C4","\u60E0","\u60E8","\u4F73","\u4EC7","\u814A","\u7A9D","\u6DA4","\u5251","\u77A7","\u5821","\u6CFC","\u8471","\u7F69","\u970D","\u635E","\u80CE","\u82CD","\u6EE8","\u4FE9","\u6345","\u6E58","\u780D","\u971E","\u90B5","\u8404","\u75AF","\u6DEE","\u9042","\u718A","\u7CAA","\u70D8","\u5BBF","\u6863","\u6208","\u9A73","\u5AC2","\u88D5","\u5F99","\u7BAD","\u6350","\u80A0","\u6491","\u6652","\u8FA8","\u6BBF","\u83B2","\u644A","\u6405","\u9171","\u5C4F","\u75AB","\u54C0","\u8521","\u5835","\u6CAB","\u76B1","\u7545","\u53E0","\u9601","\u83B1","\u6572","\u8F96","\u94A9","\u75D5","\u575D","\u5DF7","\u997F","\u7978","\u4E18","\u7384","\u6E9C","\u66F0","\u903B","\u5F6D","\u5C1D","\u537F","\u59A8","\u8247","\u541E","\u97E6","\u6028","\u77EE","\u6B47"];LC.exports=$W});var HC=T((Xue,DC)=>{"use strict";g();var XW=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"];DC.exports=XW});var UC=T((Que,qC)=>{"use string";g();var JW=["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","acade\u0301mie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acque\u0301rir","acronyme","acteur","actif","actuel","adepte","ade\u0301quat","adhe\u0301sif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","ae\u0301rer","ae\u0301ronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agre\u0301able","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","alge\u0300bre","algue","alie\u0301ner","aliment","alle\u0301ger","alliage","allouer","allumer","alourdir","alpaga","altesse","alve\u0301ole","amateur","ambigu","ambre","ame\u0301nager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","ane\u0301antir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","ape\u0301ritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","arte\u0301riel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannie\u0300re","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","be\u0301lier","belote","be\u0301ne\u0301fice","berceau","berger","berline","bermuda","besace","besogne","be\u0301tail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","bre\u0300che","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","cafe\u0301ine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","came\u0301ra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","ce\u0301dille","ceinture","ce\u0301leste","cellule","cendrier","censurer","central","cercle","ce\u0301re\u0301bral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","che\u0301quier","chercher","cheval","chien","chiffre","chignon","chime\u0300re","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cine\u0301ma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohe\u0301sion","coiffer","coincer","cole\u0300re","colibri","colline","colmater","colonel","combat","come\u0301die","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","corte\u0300ge","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","cre\u0301ature","cre\u0301diter","cre\u0301meux","creuser","crevette","cribler","crier","cristal","crite\u0300re","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuille\u0300re","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","de\u0301battre","de\u0301biter","de\u0301border","de\u0301brider","de\u0301butant","de\u0301caler","de\u0301cembre","de\u0301chirer","de\u0301cider","de\u0301clarer","de\u0301corer","de\u0301crire","de\u0301cupler","de\u0301dale","de\u0301ductif","de\u0301esse","de\u0301fensif","de\u0301filer","de\u0301frayer","de\u0301gager","de\u0301givrer","de\u0301glutir","de\u0301grafer","de\u0301jeuner","de\u0301lice","de\u0301loger","demander","demeurer","de\u0301molir","de\u0301nicher","de\u0301nouer","dentelle","de\u0301nuder","de\u0301part","de\u0301penser","de\u0301phaser","de\u0301placer","de\u0301poser","de\u0301ranger","de\u0301rober","de\u0301sastre","descente","de\u0301sert","de\u0301signer","de\u0301sobe\u0301ir","dessiner","destrier","de\u0301tacher","de\u0301tester","de\u0301tourer","de\u0301tresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","diffe\u0301rer","dige\u0301rer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","e\u0301blouir","e\u0301carter","e\u0301charpe","e\u0301chelle","e\u0301clairer","e\u0301clipse","e\u0301clore","e\u0301cluse","e\u0301cole","e\u0301conomie","e\u0301corce","e\u0301couter","e\u0301craser","e\u0301cre\u0301mer","e\u0301crivain","e\u0301crou","e\u0301cume","e\u0301cureuil","e\u0301difier","e\u0301duquer","effacer","effectif","effigie","effort","effrayer","effusion","e\u0301galiser","e\u0301garer","e\u0301jecter","e\u0301laborer","e\u0301largir","e\u0301lectron","e\u0301le\u0301gant","e\u0301le\u0301phant","e\u0301le\u0300ve","e\u0301ligible","e\u0301litisme","e\u0301loge","e\u0301lucider","e\u0301luder","emballer","embellir","embryon","e\u0301meraude","e\u0301mission","emmener","e\u0301motion","e\u0301mouvoir","empereur","employer","emporter","emprise","e\u0301mulsion","encadrer","enche\u0300re","enclave","encoche","endiguer","endosser","endroit","enduire","e\u0301nergie","enfance","enfermer","enfouir","engager","engin","englober","e\u0301nigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","e\u0301nume\u0301rer","envahir","enviable","envoyer","enzyme","e\u0301olien","e\u0301paissir","e\u0301pargne","e\u0301patant","e\u0301paule","e\u0301picerie","e\u0301pide\u0301mie","e\u0301pier","e\u0301pilogue","e\u0301pine","e\u0301pisode","e\u0301pitaphe","e\u0301poque","e\u0301preuve","e\u0301prouver","e\u0301puisant","e\u0301querre","e\u0301quipe","e\u0301riger","e\u0301rosion","erreur","e\u0301ruption","escalier","espadon","espe\u0300ce","espie\u0300gle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","e\u0301tage\u0300re","e\u0301taler","e\u0301tanche","e\u0301tatique","e\u0301teindre","e\u0301tendoir","e\u0301ternel","e\u0301thanol","e\u0301thique","ethnie","e\u0301tirer","e\u0301toffer","e\u0301toile","e\u0301tonnant","e\u0301tourdir","e\u0301trange","e\u0301troit","e\u0301tude","euphorie","e\u0301valuer","e\u0301vasion","e\u0301ventail","e\u0301vidence","e\u0301viter","e\u0301volutif","e\u0301voquer","exact","exage\u0301rer","exaucer","exceller","excitant","exclusif","excuse","exe\u0301cuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expe\u0301dier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fe\u0301brile","fe\u0301conder","fe\u0301de\u0301rer","fe\u0301lin","femme","fe\u0301mur","fendoir","fe\u0301odal","fermer","fe\u0301roce","ferveur","festival","feuille","feutre","fe\u0301vrier","fiasco","ficeler","fictif","fide\u0300le","figure","filature","filetage","filie\u0300re","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fle\u0301au","fle\u0300che","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fouge\u0300re","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","fre\u0301gate","freiner","frelon","fre\u0301mir","fre\u0301ne\u0301sie","fre\u0300re","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","ge\u0301ant","ge\u0301latine","ge\u0301lule","gendarme","ge\u0301ne\u0301ral","ge\u0301nie","genou","gentil","ge\u0301ologie","ge\u0301ome\u0300tre","ge\u0301ranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruye\u0300re","gue\u0301pard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","he\u0301lium","he\u0301matome","herbe","he\u0301risson","hermine","he\u0301ron","he\u0301siter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homoge\u0300ne","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygie\u0300ne","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impe\u0301rial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","ine\u0301dit","ineptie","inexact","infini","infliger","informer","infusion","inge\u0301rer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irre\u0301el","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juve\u0301nile","kayak","kimono","kiosque","label","labial","labourer","lace\u0301rer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","le\u0301gal","le\u0301ger","le\u0301gume","lessive","lettre","levier","lexique","le\u0301zard","liasse","libe\u0301rer","libre","licence","licorne","lie\u0300ge","lie\u0300vre","ligature","ligoter","ligue","limer","limite","limonade","limpide","line\u0301aire","lingot","lionceau","liquide","lisie\u0300re","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumie\u0300re","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","male\u0301fice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","mate\u0301riel","matie\u0300re","matraque","maudire","maussade","mauve","maximal","me\u0301chant","me\u0301connu","me\u0301daille","me\u0301decin","me\u0301diter","me\u0301duse","meilleur","me\u0301lange","me\u0301lodie","membre","me\u0301moire","menacer","mener","menhir","mensonge","mentor","mercredi","me\u0301rite","merle","messager","mesure","me\u0301tal","me\u0301te\u0301ore","me\u0301thode","me\u0301tier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","mine\u0301ral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","mure\u0300ne","murmure","muscle","muse\u0301um","musicien","mutation","muter","mutuel","myriade","myrtille","myste\u0300re","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","ne\u0301buleux","nectar","ne\u0301faste","ne\u0301gation","ne\u0301gliger","ne\u0301gocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","nume\u0301ro","nuptial","nuque","nutritif","obe\u0301ir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","oce\u0301an","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","one\u0301reux","onirique","opale","opaque","ope\u0301rer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxyge\u0300ne","ozone","paisible","palace","palmare\u0300s","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","paste\u0300que","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pe\u0301lican","pelle","pelouse","peluche","pendule","pe\u0301ne\u0301trer","pe\u0301nible","pensif","pe\u0301nurie","pe\u0301pite","pe\u0301plum","perdrix","perforer","pe\u0301riode","permuter","perplexe","persil","perte","peser","pe\u0301tale","petit","pe\u0301trir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pie\u0300ce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poe\u0301sie","poe\u0300te","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","ponde\u0301rer","poney","portique","position","posse\u0301der","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","pre\u0301cieux","pre\u0301dire","pre\u0301fixe","pre\u0301lude","pre\u0301nom","pre\u0301sence","pre\u0301texte","pre\u0301voir","primitif","prince","prison","priver","proble\u0300me","proce\u0301der","prodige","profond","progre\u0300s","proie","projeter","prologue","promener","propre","prospe\u0300re","prote\u0301ger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quie\u0301tude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","re\u0301actif","re\u0301agir","re\u0301aliser","re\u0301animer","recevoir","re\u0301citer","re\u0301clamer","re\u0301colter","recruter","reculer","recycler","re\u0301diger","redouter","refaire","re\u0301flexe","re\u0301former","refrain","refuge","re\u0301galien","re\u0301gion","re\u0301glage","re\u0301gulier","re\u0301ite\u0301rer","rejeter","rejouer","relatif","relever","relief","remarque","reme\u0300de","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","re\u0301serve","re\u0301sineux","re\u0301soudre","respect","rester","re\u0301sultat","re\u0301tablir","retenir","re\u0301ticule","retomber","retracer","re\u0301union","re\u0301ussir","revanche","revivre","re\u0301volte","re\u0301vulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivie\u0300re","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","sce\u0301le\u0301rat","sce\u0301nario","sceptre","sche\u0301ma","science","scinder","score","scrutin","sculpter","se\u0301ance","se\u0301cable","se\u0301cher","secouer","se\u0301cre\u0301ter","se\u0301datif","se\u0301duire","seigneur","se\u0301jour","se\u0301lectif","semaine","sembler","semence","se\u0301minal","se\u0301nateur","sensible","sentence","se\u0301parer","se\u0301quence","serein","sergent","se\u0301rieux","serrure","se\u0301rum","service","se\u0301same","se\u0301vir","sevrage","sextuple","side\u0301ral","sie\u0300cle","sie\u0301ger","siffler","sigle","signal","silence","silicium","simple","since\u0300re","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spe\u0301cial","sphe\u0300re","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succe\u0300s","sucre","suffixe","sugge\u0301rer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","syme\u0301trie","synapse","syntaxe","syste\u0300me","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","te\u0301moin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","te\u0301tine","texte","the\u0300me","the\u0301orie","the\u0301rapie","thorax","tibia","tie\u0300de","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tole\u0301rant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","tre\u0300fle","tremper","tre\u0301sor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","ve\u0301ge\u0301tal","ve\u0301hicule","veinard","ve\u0301loce","vendredi","ve\u0301ne\u0301rer","venger","venimeux","ventouse","verdure","ve\u0301rin","vernir","verrou","verser","vertu","veston","ve\u0301te\u0301ran","ve\u0301tuste","vexant","vexer","viaduc","viande","victoire","vidange","vide\u0301o","vignette","vigueur","vilain","village","vinaigre","violon","vipe\u0300re","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xe\u0301non","yacht","ze\u0300bre","ze\u0301nith","zeste","zoologie"];qC.exports=JW});var jC=T((tce,FC)=>{"use strict";g();var QW=["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"];FC.exports=QW});var KC=T((ice,zC)=>{"use strict";g();var eY=["\u3042\u3044\u3053\u304F\u3057\u3093","\u3042\u3044\u3055\u3064","\u3042\u3044\u305F\u3099","\u3042\u304A\u305D\u3099\u3089","\u3042\u304B\u3061\u3083\u3093","\u3042\u304D\u308B","\u3042\u3051\u304B\u3099\u305F","\u3042\u3051\u308B","\u3042\u3053\u304B\u3099\u308C\u308B","\u3042\u3055\u3044","\u3042\u3055\u3072","\u3042\u3057\u3042\u3068","\u3042\u3057\u3099\u308F\u3046","\u3042\u3059\u3099\u304B\u308B","\u3042\u3059\u3099\u304D","\u3042\u305D\u3075\u3099","\u3042\u305F\u3048\u308B","\u3042\u305F\u305F\u3081\u308B","\u3042\u305F\u308A\u307E\u3048","\u3042\u305F\u308B","\u3042\u3064\u3044","\u3042\u3064\u304B\u3046","\u3042\u3063\u3057\u3085\u304F","\u3042\u3064\u307E\u308A","\u3042\u3064\u3081\u308B","\u3042\u3066\u306A","\u3042\u3066\u306F\u307E\u308B","\u3042\u3072\u308B","\u3042\u3075\u3099\u3089","\u3042\u3075\u3099\u308B","\u3042\u3075\u308C\u308B","\u3042\u307E\u3044","\u3042\u307E\u3068\u3099","\u3042\u307E\u3084\u304B\u3059","\u3042\u307E\u308A","\u3042\u307F\u3082\u306E","\u3042\u3081\u308A\u304B","\u3042\u3084\u307E\u308B","\u3042\u3086\u3080","\u3042\u3089\u3044\u304F\u3099\u307E","\u3042\u3089\u3057","\u3042\u3089\u3059\u3057\u3099","\u3042\u3089\u305F\u3081\u308B","\u3042\u3089\u3086\u308B","\u3042\u3089\u308F\u3059","\u3042\u308A\u304B\u3099\u3068\u3046","\u3042\u308F\u305B\u308B","\u3042\u308F\u3066\u308B","\u3042\u3093\u3044","\u3042\u3093\u304B\u3099\u3044","\u3042\u3093\u3053","\u3042\u3093\u305B\u3099\u3093","\u3042\u3093\u3066\u3044","\u3042\u3093\u306A\u3044","\u3042\u3093\u307E\u308A","\u3044\u3044\u305F\u3099\u3059","\u3044\u304A\u3093","\u3044\u304B\u3099\u3044","\u3044\u304B\u3099\u304F","\u3044\u304D\u304A\u3044","\u3044\u304D\u306A\u308A","\u3044\u304D\u3082\u306E","\u3044\u304D\u308B","\u3044\u304F\u3057\u3099","\u3044\u304F\u3075\u3099\u3093","\u3044\u3051\u306F\u3099\u306A","\u3044\u3051\u3093","\u3044\u3053\u3046","\u3044\u3053\u304F","\u3044\u3053\u3064","\u3044\u3055\u307E\u3057\u3044","\u3044\u3055\u3093","\u3044\u3057\u304D","\u3044\u3057\u3099\u3085\u3046","\u3044\u3057\u3099\u3087\u3046","\u3044\u3057\u3099\u308F\u308B","\u3044\u3059\u3099\u307F","\u3044\u3059\u3099\u308C","\u3044\u305B\u3044","\u3044\u305B\u3048\u3072\u3099","\u3044\u305B\u304B\u3044","\u3044\u305B\u304D","\u3044\u305B\u3099\u3093","\u3044\u305D\u3046\u308D\u3046","\u3044\u305D\u304B\u3099\u3057\u3044","\u3044\u305F\u3099\u3044","\u3044\u305F\u3099\u304F","\u3044\u305F\u3059\u3099\u3089","\u3044\u305F\u307F","\u3044\u305F\u308A\u3042","\u3044\u3061\u304A\u3046","\u3044\u3061\u3057\u3099","\u3044\u3061\u3068\u3099","\u3044\u3061\u306F\u3099","\u3044\u3061\u3075\u3099","\u3044\u3061\u308A\u3085\u3046","\u3044\u3064\u304B","\u3044\u3063\u3057\u3085\u3093","\u3044\u3063\u305B\u3044","\u3044\u3063\u305D\u3046","\u3044\u3063\u305F\u3093","\u3044\u3063\u3061","\u3044\u3063\u3066\u3044","\u3044\u3063\u307B\u309A\u3046","\u3044\u3066\u3055\u3099","\u3044\u3066\u3093","\u3044\u3068\u3099\u3046","\u3044\u3068\u3053","\u3044\u306A\u3044","\u3044\u306A\u304B","\u3044\u306D\u3080\u308A","\u3044\u306E\u3061","\u3044\u306E\u308B","\u3044\u306F\u3064","\u3044\u306F\u3099\u308B","\u3044\u306F\u3093","\u3044\u3072\u3099\u304D","\u3044\u3072\u3093","\u3044\u3075\u304F","\u3044\u3078\u3093","\u3044\u307B\u3046","\u3044\u307F\u3093","\u3044\u3082\u3046\u3068","\u3044\u3082\u305F\u308C","\u3044\u3082\u308A","\u3044\u3084\u304B\u3099\u308B","\u3044\u3084\u3059","\u3044\u3088\u304B\u3093","\u3044\u3088\u304F","\u3044\u3089\u3044","\u3044\u3089\u3059\u3068","\u3044\u308A\u304F\u3099\u3061","\u3044\u308A\u3087\u3046","\u3044\u308C\u3044","\u3044\u308C\u3082\u306E","\u3044\u308C\u308B","\u3044\u308D\u3048\u3093\u3072\u309A\u3064","\u3044\u308F\u3044","\u3044\u308F\u3046","\u3044\u308F\u304B\u3093","\u3044\u308F\u306F\u3099","\u3044\u308F\u3086\u308B","\u3044\u3093\u3051\u3099\u3093\u307E\u3081","\u3044\u3093\u3055\u3064","\u3044\u3093\u3057\u3087\u3046","\u3044\u3093\u3088\u3046","\u3046\u3048\u304D","\u3046\u3048\u308B","\u3046\u304A\u3055\u3099","\u3046\u304B\u3099\u3044","\u3046\u304B\u3075\u3099","\u3046\u304B\u3078\u3099\u308B","\u3046\u304D\u308F","\u3046\u304F\u3089\u3044\u306A","\u3046\u304F\u308C\u308C","\u3046\u3051\u305F\u307E\u308F\u308B","\u3046\u3051\u3064\u3051","\u3046\u3051\u3068\u308B","\u3046\u3051\u3082\u3064","\u3046\u3051\u308B","\u3046\u3053\u3099\u304B\u3059","\u3046\u3053\u3099\u304F","\u3046\u3053\u3093","\u3046\u3055\u304D\u3099","\u3046\u3057\u306A\u3046","\u3046\u3057\u308D\u304B\u3099\u307F","\u3046\u3059\u3044","\u3046\u3059\u304D\u3099","\u3046\u3059\u304F\u3099\u3089\u3044","\u3046\u3059\u3081\u308B","\u3046\u305B\u3064","\u3046\u3061\u3042\u308F\u305B","\u3046\u3061\u304B\u3099\u308F","\u3046\u3061\u304D","\u3046\u3061\u3085\u3046","\u3046\u3063\u304B\u308A","\u3046\u3064\u304F\u3057\u3044","\u3046\u3063\u305F\u3048\u308B","\u3046\u3064\u308B","\u3046\u3068\u3099\u3093","\u3046\u306A\u304D\u3099","\u3046\u306A\u3057\u3099","\u3046\u306A\u3059\u3099\u304F","\u3046\u306A\u308B","\u3046\u306D\u308B","\u3046\u306E\u3046","\u3046\u3075\u3099\u3051\u3099","\u3046\u3075\u3099\u3053\u3099\u3048","\u3046\u307E\u308C\u308B","\u3046\u3081\u308B","\u3046\u3082\u3046","\u3046\u3084\u307E\u3046","\u3046\u3088\u304F","\u3046\u3089\u304B\u3099\u3048\u3059","\u3046\u3089\u304F\u3099\u3061","\u3046\u3089\u306A\u3044","\u3046\u308A\u3042\u3051\u3099","\u3046\u308A\u304D\u308C","\u3046\u308B\u3055\u3044","\u3046\u308C\u3057\u3044","\u3046\u308C\u3086\u304D","\u3046\u308C\u308B","\u3046\u308D\u3053","\u3046\u308F\u304D","\u3046\u308F\u3055","\u3046\u3093\u3053\u3046","\u3046\u3093\u3061\u3093","\u3046\u3093\u3066\u3093","\u3046\u3093\u3068\u3099\u3046","\u3048\u3044\u3048\u3093","\u3048\u3044\u304B\u3099","\u3048\u3044\u304D\u3087\u3046","\u3048\u3044\u3053\u3099","\u3048\u3044\u305B\u3044","\u3048\u3044\u3075\u3099\u3093","\u3048\u3044\u3088\u3046","\u3048\u3044\u308F","\u3048\u304A\u308A","\u3048\u304B\u3099\u304A","\u3048\u304B\u3099\u304F","\u3048\u304D\u305F\u3044","\u3048\u304F\u305B\u308B","\u3048\u3057\u3083\u304F","\u3048\u3059\u3066","\u3048\u3064\u3089\u3093","\u3048\u306E\u304F\u3099","\u3048\u307B\u3046\u307E\u304D","\u3048\u307B\u3093","\u3048\u307E\u304D","\u3048\u3082\u3057\u3099","\u3048\u3082\u306E","\u3048\u3089\u3044","\u3048\u3089\u3075\u3099","\u3048\u308A\u3042","\u3048\u3093\u3048\u3093","\u3048\u3093\u304B\u3044","\u3048\u3093\u304D\u3099","\u3048\u3093\u3051\u3099\u304D","\u3048\u3093\u3057\u3085\u3046","\u3048\u3093\u305B\u3099\u3064","\u3048\u3093\u305D\u304F","\u3048\u3093\u3061\u3087\u3046","\u3048\u3093\u3068\u3064","\u304A\u3044\u304B\u3051\u308B","\u304A\u3044\u3053\u3059","\u304A\u3044\u3057\u3044","\u304A\u3044\u3064\u304F","\u304A\u3046\u3048\u3093","\u304A\u3046\u3055\u307E","\u304A\u3046\u3057\u3099","\u304A\u3046\u305B\u3064","\u304A\u3046\u305F\u3044","\u304A\u3046\u3075\u304F","\u304A\u3046\u3078\u3099\u3044","\u304A\u3046\u3088\u3046","\u304A\u3048\u308B","\u304A\u304A\u3044","\u304A\u304A\u3046","\u304A\u304A\u3068\u3099\u304A\u308A","\u304A\u304A\u3084","\u304A\u304A\u3088\u305D","\u304A\u304B\u3048\u308A","\u304A\u304B\u3059\u3099","\u304A\u304B\u3099\u3080","\u304A\u304B\u308F\u308A","\u304A\u304D\u3099\u306A\u3046","\u304A\u304D\u308B","\u304A\u304F\u3055\u307E","\u304A\u304F\u3057\u3099\u3087\u3046","\u304A\u304F\u308A\u304B\u3099\u306A","\u304A\u304F\u308B","\u304A\u304F\u308C\u308B","\u304A\u3053\u3059","\u304A\u3053\u306A\u3046","\u304A\u3053\u308B","\u304A\u3055\u3048\u308B","\u304A\u3055\u306A\u3044","\u304A\u3055\u3081\u308B","\u304A\u3057\u3044\u308C","\u304A\u3057\u3048\u308B","\u304A\u3057\u3099\u304D\u3099","\u304A\u3057\u3099\u3055\u3093","\u304A\u3057\u3083\u308C","\u304A\u305D\u3089\u304F","\u304A\u305D\u308F\u308B","\u304A\u305F\u304B\u3099\u3044","\u304A\u305F\u304F","\u304A\u305F\u3099\u3084\u304B","\u304A\u3061\u3064\u304F","\u304A\u3063\u3068","\u304A\u3064\u308A","\u304A\u3066\u3099\u304B\u3051","\u304A\u3068\u3057\u3082\u306E","\u304A\u3068\u306A\u3057\u3044","\u304A\u3068\u3099\u308A","\u304A\u3068\u3099\u308D\u304B\u3059","\u304A\u306F\u3099\u3055\u3093","\u304A\u307E\u3044\u308A","\u304A\u3081\u3066\u3099\u3068\u3046","\u304A\u3082\u3044\u3066\u3099","\u304A\u3082\u3046","\u304A\u3082\u305F\u3044","\u304A\u3082\u3061\u3083","\u304A\u3084\u3064","\u304A\u3084\u3086\u3072\u3099","\u304A\u3088\u307B\u3099\u3059","\u304A\u3089\u3093\u305F\u3099","\u304A\u308D\u3059","\u304A\u3093\u304B\u3099\u304F","\u304A\u3093\u3051\u3044","\u304A\u3093\u3057\u3083","\u304A\u3093\u305B\u3093","\u304A\u3093\u305F\u3099\u3093","\u304A\u3093\u3061\u3085\u3046","\u304A\u3093\u3068\u3099\u3051\u3044","\u304B\u3042\u3064","\u304B\u3044\u304B\u3099","\u304B\u3099\u3044\u304D","\u304B\u3099\u3044\u3051\u3093","\u304B\u3099\u3044\u3053\u3046","\u304B\u3044\u3055\u3064","\u304B\u3044\u3057\u3083","\u304B\u3044\u3059\u3044\u3088\u304F","\u304B\u3044\u305B\u3099\u3093","\u304B\u3044\u305D\u3099\u3046\u3068\u3099","\u304B\u3044\u3064\u3046","\u304B\u3044\u3066\u3093","\u304B\u3044\u3068\u3046","\u304B\u3044\u3075\u304F","\u304B\u3099\u3044\u3078\u304D","\u304B\u3044\u307B\u3046","\u304B\u3044\u3088\u3046","\u304B\u3099\u3044\u3089\u3044","\u304B\u3044\u308F","\u304B\u3048\u308B","\u304B\u304A\u308A","\u304B\u304B\u3048\u308B","\u304B\u304B\u3099\u304F","\u304B\u304B\u3099\u3057","\u304B\u304B\u3099\u307F","\u304B\u304F\u3053\u3099","\u304B\u304F\u3068\u304F","\u304B\u3055\u3099\u308B","\u304B\u3099\u305D\u3099\u3046","\u304B\u305F\u3044","\u304B\u305F\u3061","\u304B\u3099\u3061\u3087\u3046","\u304B\u3099\u3063\u304D\u3085\u3046","\u304B\u3099\u3063\u3053\u3046","\u304B\u3099\u3063\u3055\u3093","\u304B\u3099\u3063\u3057\u3087\u3046","\u304B\u306A\u3055\u3099\u308F\u3057","\u304B\u306E\u3046","\u304B\u3099\u306F\u304F","\u304B\u3075\u3099\u304B","\u304B\u307B\u3046","\u304B\u307B\u3053\u3099","\u304B\u307E\u3046","\u304B\u307E\u307B\u3099\u3053","\u304B\u3081\u308C\u304A\u3093","\u304B\u3086\u3044","\u304B\u3088\u3046\u3072\u3099","\u304B\u3089\u3044","\u304B\u308B\u3044","\u304B\u308D\u3046","\u304B\u308F\u304F","\u304B\u308F\u3089","\u304B\u3099\u3093\u304B","\u304B\u3093\u3051\u3044","\u304B\u3093\u3053\u3046","\u304B\u3093\u3057\u3083","\u304B\u3093\u305D\u3046","\u304B\u3093\u305F\u3093","\u304B\u3093\u3061","\u304B\u3099\u3093\u306F\u3099\u308B","\u304D\u3042\u3044","\u304D\u3042\u3064","\u304D\u3044\u308D","\u304D\u3099\u3044\u3093","\u304D\u3046\u3044","\u304D\u3046\u3093","\u304D\u3048\u308B","\u304D\u304A\u3046","\u304D\u304A\u304F","\u304D\u304A\u3061","\u304D\u304A\u3093","\u304D\u304B\u3044","\u304D\u304B\u304F","\u304D\u304B\u3093\u3057\u3083","\u304D\u304D\u3066","\u304D\u304F\u306F\u3099\u308A","\u304D\u304F\u3089\u3051\u3099","\u304D\u3051\u3093\u305B\u3044","\u304D\u3053\u3046","\u304D\u3053\u3048\u308B","\u304D\u3053\u304F","\u304D\u3055\u3044","\u304D\u3055\u304F","\u304D\u3055\u307E","\u304D\u3055\u3089\u304D\u3099","\u304D\u3099\u3057\u3099\u304B\u304B\u3099\u304F","\u304D\u3099\u3057\u304D","\u304D\u3099\u3057\u3099\u305F\u3044\u3051\u3093","\u304D\u3099\u3057\u3099\u306B\u3063\u3066\u3044","\u304D\u3099\u3057\u3099\u3085\u3064\u3057\u3083","\u304D\u3059\u3046","\u304D\u305B\u3044","\u304D\u305B\u304D","\u304D\u305B\u3064","\u304D\u305D\u3046","\u304D\u305D\u3099\u304F","\u304D\u305D\u3099\u3093","\u304D\u305F\u3048\u308B","\u304D\u3061\u3087\u3046","\u304D\u3064\u3048\u3093","\u304D\u3099\u3063\u3061\u308A","\u304D\u3064\u3064\u304D","\u304D\u3064\u306D","\u304D\u3066\u3044","\u304D\u3068\u3099\u3046","\u304D\u3068\u3099\u304F","\u304D\u306A\u3044","\u304D\u306A\u304B\u3099","\u304D\u306A\u3053","\u304D\u306C\u3053\u3099\u3057","\u304D\u306D\u3093","\u304D\u306E\u3046","\u304D\u306E\u3057\u305F","\u304D\u306F\u304F","\u304D\u3072\u3099\u3057\u3044","\u304D\u3072\u3093","\u304D\u3075\u304F","\u304D\u3075\u3099\u3093","\u304D\u307B\u3099\u3046","\u304D\u307B\u3093","\u304D\u307E\u308B","\u304D\u307F\u3064","\u304D\u3080\u3059\u3099\u304B\u3057\u3044","\u304D\u3081\u308B","\u304D\u3082\u305F\u3099\u3081\u3057","\u304D\u3082\u3061","\u304D\u3082\u306E","\u304D\u3083\u304F","\u304D\u3084\u304F","\u304D\u3099\u3085\u3046\u306B\u304F","\u304D\u3088\u3046","\u304D\u3087\u3046\u308A\u3085\u3046","\u304D\u3089\u3044","\u304D\u3089\u304F","\u304D\u308A\u3093","\u304D\u308C\u3044","\u304D\u308C\u3064","\u304D\u308D\u304F","\u304D\u3099\u308D\u3093","\u304D\u308F\u3081\u308B","\u304D\u3099\u3093\u3044\u308D","\u304D\u3093\u304B\u304F\u3057\u3099","\u304D\u3093\u3057\u3099\u3087","\u304D\u3093\u3088\u3046\u3072\u3099","\u304F\u3099\u3042\u3044","\u304F\u3044\u3059\u3099","\u304F\u3046\u304B\u3093","\u304F\u3046\u304D","\u304F\u3046\u304F\u3099\u3093","\u304F\u3046\u3053\u3046","\u304F\u3099\u3046\u305B\u3044","\u304F\u3046\u305D\u3046","\u304F\u3099\u3046\u305F\u3089","\u304F\u3046\u3075\u304F","\u304F\u3046\u307B\u3099","\u304F\u304B\u3093","\u304F\u304D\u3087\u3046","\u304F\u3051\u3099\u3093","\u304F\u3099\u3053\u3046","\u304F\u3055\u3044","\u304F\u3055\u304D","\u304F\u3055\u306F\u3099\u306A","\u304F\u3055\u308B","\u304F\u3057\u3083\u307F","\u304F\u3057\u3087\u3046","\u304F\u3059\u306E\u304D","\u304F\u3059\u308A\u3086\u3072\u3099","\u304F\u305B\u3051\u3099","\u304F\u305B\u3093","\u304F\u3099\u305F\u3044\u3066\u304D","\u304F\u305F\u3099\u3055\u308B","\u304F\u305F\u3072\u3099\u308C\u308B","\u304F\u3061\u3053\u307F","\u304F\u3061\u3055\u304D","\u304F\u3064\u3057\u305F","\u304F\u3099\u3063\u3059\u308A","\u304F\u3064\u308D\u304F\u3099","\u304F\u3068\u3046\u3066\u3093","\u304F\u3068\u3099\u304F","\u304F\u306A\u3093","\u304F\u306D\u304F\u306D","\u304F\u306E\u3046","\u304F\u3075\u3046","\u304F\u307F\u3042\u308F\u305B","\u304F\u307F\u305F\u3066\u308B","\u304F\u3081\u308B","\u304F\u3084\u304F\u3057\u3087","\u304F\u3089\u3059","\u304F\u3089\u3078\u3099\u308B","\u304F\u308B\u307E","\u304F\u308C\u308B","\u304F\u308D\u3046","\u304F\u308F\u3057\u3044","\u304F\u3099\u3093\u304B\u3093","\u304F\u3099\u3093\u3057\u3087\u304F","\u304F\u3099\u3093\u305F\u3044","\u304F\u3099\u3093\u3066","\u3051\u3042\u306A","\u3051\u3044\u304B\u304F","\u3051\u3044\u3051\u3093","\u3051\u3044\u3053","\u3051\u3044\u3055\u3064","\u3051\u3099\u3044\u3057\u3099\u3085\u3064","\u3051\u3044\u305F\u3044","\u3051\u3099\u3044\u306E\u3046\u3057\u3099\u3093","\u3051\u3044\u308C\u304D","\u3051\u3044\u308D","\u3051\u304A\u3068\u3059","\u3051\u304A\u308A\u3082\u306E","\u3051\u3099\u304D\u304B","\u3051\u3099\u304D\u3051\u3099\u3093","\u3051\u3099\u304D\u305F\u3099\u3093","\u3051\u3099\u304D\u3061\u3093","\u3051\u3099\u304D\u3068\u3064","\u3051\u3099\u304D\u306F","\u3051\u3099\u304D\u3084\u304F","\u3051\u3099\u3053\u3046","\u3051\u3099\u3053\u304F\u3057\u3099\u3087\u3046","\u3051\u3099\u3055\u3099\u3044","\u3051\u3055\u304D","\u3051\u3099\u3055\u3099\u3093","\u3051\u3057\u304D","\u3051\u3057\u3053\u3099\u3080","\u3051\u3057\u3087\u3046","\u3051\u3099\u3059\u3068","\u3051\u305F\u306F\u3099","\u3051\u3061\u3083\u3063\u3075\u309A","\u3051\u3061\u3089\u3059","\u3051\u3064\u3042\u3064","\u3051\u3064\u3044","\u3051\u3064\u3048\u304D","\u3051\u3063\u3053\u3093","\u3051\u3064\u3057\u3099\u3087","\u3051\u3063\u305B\u304D","\u3051\u3063\u3066\u3044","\u3051\u3064\u307E\u3064","\u3051\u3099\u3064\u3088\u3046\u3072\u3099","\u3051\u3099\u3064\u308C\u3044","\u3051\u3064\u308D\u3093","\u3051\u3099\u3068\u3099\u304F","\u3051\u3068\u306F\u3099\u3059","\u3051\u3068\u308B","\u3051\u306A\u3051\u3099","\u3051\u306A\u3059","\u3051\u306A\u307F","\u3051\u306C\u304D","\u3051\u3099\u306D\u3064","\u3051\u306D\u3093","\u3051\u306F\u3044","\u3051\u3099\u3072\u3093","\u3051\u3075\u3099\u304B\u3044","\u3051\u3099\u307B\u3099\u304F","\u3051\u307E\u308A","\u3051\u307F\u304B\u308B","\u3051\u3080\u3057","\u3051\u3080\u308A","\u3051\u3082\u306E","\u3051\u3089\u3044","\u3051\u308D\u3051\u308D","\u3051\u308F\u3057\u3044","\u3051\u3093\u3044","\u3051\u3093\u3048\u3064","\u3051\u3093\u304A","\u3051\u3093\u304B","\u3051\u3099\u3093\u304D","\u3051\u3093\u3051\u3099\u3093","\u3051\u3093\u3053\u3046","\u3051\u3093\u3055\u304F","\u3051\u3093\u3057\u3085\u3046","\u3051\u3093\u3059\u3046","\u3051\u3099\u3093\u305D\u3046","\u3051\u3093\u3061\u304F","\u3051\u3093\u3066\u3044","\u3051\u3093\u3068\u3046","\u3051\u3093\u306A\u3044","\u3051\u3093\u306B\u3093","\u3051\u3099\u3093\u3075\u3099\u3064","\u3051\u3093\u307E","\u3051\u3093\u307F\u3093","\u3051\u3093\u3081\u3044","\u3051\u3093\u3089\u3093","\u3051\u3093\u308A","\u3053\u3042\u304F\u307E","\u3053\u3044\u306C","\u3053\u3044\u3072\u3099\u3068","\u3053\u3099\u3046\u3044","\u3053\u3046\u3048\u3093","\u3053\u3046\u304A\u3093","\u3053\u3046\u304B\u3093","\u3053\u3099\u3046\u304D\u3085\u3046","\u3053\u3099\u3046\u3051\u3044","\u3053\u3046\u3053\u3046","\u3053\u3046\u3055\u3044","\u3053\u3046\u3057\u3099","\u3053\u3046\u3059\u3044","\u3053\u3099\u3046\u305B\u3044","\u3053\u3046\u305D\u304F","\u3053\u3046\u305F\u3044","\u3053\u3046\u3061\u3083","\u3053\u3046\u3064\u3046","\u3053\u3046\u3066\u3044","\u3053\u3046\u3068\u3099\u3046","\u3053\u3046\u306A\u3044","\u3053\u3046\u306F\u3044","\u3053\u3099\u3046\u307B\u3046","\u3053\u3099\u3046\u307E\u3093","\u3053\u3046\u3082\u304F","\u3053\u3046\u308A\u3064","\u3053\u3048\u308B","\u3053\u304A\u308A","\u3053\u3099\u304B\u3044","\u3053\u3099\u304B\u3099\u3064","\u3053\u3099\u304B\u3093","\u3053\u304F\u3053\u3099","\u3053\u304F\u3055\u3044","\u3053\u304F\u3068\u3046","\u3053\u304F\u306A\u3044","\u3053\u304F\u306F\u304F","\u3053\u304F\u3099\u307E","\u3053\u3051\u3044","\u3053\u3051\u308B","\u3053\u3053\u306E\u304B","\u3053\u3053\u308D","\u3053\u3055\u3081","\u3053\u3057\u3064","\u3053\u3059\u3046","\u3053\u305B\u3044","\u3053\u305B\u304D","\u3053\u305B\u3099\u3093","\u3053\u305D\u305F\u3099\u3066","\u3053\u305F\u3044","\u3053\u305F\u3048\u308B","\u3053\u305F\u3064","\u3053\u3061\u3087\u3046","\u3053\u3063\u304B","\u3053\u3064\u3053\u3064","\u3053\u3064\u306F\u3099\u3093","\u3053\u3064\u3075\u3099","\u3053\u3066\u3044","\u3053\u3066\u3093","\u3053\u3068\u304B\u3099\u3089","\u3053\u3068\u3057","\u3053\u3068\u306F\u3099","\u3053\u3068\u308A","\u3053\u306A\u3053\u3099\u306A","\u3053\u306D\u3053\u306D","\u3053\u306E\u307E\u307E","\u3053\u306E\u307F","\u3053\u306E\u3088","\u3053\u3099\u306F\u3093","\u3053\u3072\u3064\u3057\u3099","\u3053\u3075\u3046","\u3053\u3075\u3093","\u3053\u307B\u3099\u308C\u308B","\u3053\u3099\u307E\u3042\u3075\u3099\u3089","\u3053\u307E\u304B\u3044","\u3053\u3099\u307E\u3059\u308A","\u3053\u307E\u3064\u306A","\u3053\u307E\u308B","\u3053\u3080\u304D\u3099\u3053","\u3053\u3082\u3057\u3099","\u3053\u3082\u3061","\u3053\u3082\u306E","\u3053\u3082\u3093","\u3053\u3084\u304F","\u3053\u3084\u307E","\u3053\u3086\u3046","\u3053\u3086\u3072\u3099","\u3053\u3088\u3044","\u3053\u3088\u3046","\u3053\u308A\u308B","\u3053\u308C\u304F\u3057\u3087\u3093","\u3053\u308D\u3063\u3051","\u3053\u308F\u3082\u3066","\u3053\u308F\u308C\u308B","\u3053\u3093\u3044\u3093","\u3053\u3093\u304B\u3044","\u3053\u3093\u304D","\u3053\u3093\u3057\u3085\u3046","\u3053\u3093\u3059\u3044","\u3053\u3093\u305F\u3099\u3066","\u3053\u3093\u3068\u3093","\u3053\u3093\u306A\u3093","\u3053\u3093\u3072\u3099\u306B","\u3053\u3093\u307B\u309A\u3093","\u3053\u3093\u307E\u3051","\u3053\u3093\u3084","\u3053\u3093\u308C\u3044","\u3053\u3093\u308F\u304F","\u3055\u3099\u3044\u3048\u304D","\u3055\u3044\u304B\u3044","\u3055\u3044\u304D\u3093","\u3055\u3099\u3044\u3051\u3099\u3093","\u3055\u3099\u3044\u3053","\u3055\u3044\u3057\u3087","\u3055\u3044\u305B\u3044","\u3055\u3099\u3044\u305F\u304F","\u3055\u3099\u3044\u3061\u3085\u3046","\u3055\u3044\u3066\u304D","\u3055\u3099\u3044\u308A\u3087\u3046","\u3055\u3046\u306A","\u3055\u304B\u3044\u3057","\u3055\u304B\u3099\u3059","\u3055\u304B\u306A","\u3055\u304B\u307F\u3061","\u3055\u304B\u3099\u308B","\u3055\u304D\u3099\u3087\u3046","\u3055\u304F\u3057","\u3055\u304F\u3072\u3093","\u3055\u304F\u3089","\u3055\u3053\u304F","\u3055\u3053\u3064","\u3055\u3059\u3099\u304B\u308B","\u3055\u3099\u305B\u304D","\u3055\u305F\u3093","\u3055\u3064\u3048\u3044","\u3055\u3099\u3064\u304A\u3093","\u3055\u3099\u3063\u304B","\u3055\u3099\u3064\u304B\u3099\u304F","\u3055\u3063\u304D\u3087\u304F","\u3055\u3099\u3063\u3057","\u3055\u3064\u3057\u3099\u3093","\u3055\u3099\u3063\u305D\u3046","\u3055\u3064\u305F\u306F\u3099","\u3055\u3064\u307E\u3044\u3082","\u3055\u3066\u3044","\u3055\u3068\u3044\u3082","\u3055\u3068\u3046","\u3055\u3068\u304A\u3084","\u3055\u3068\u3057","\u3055\u3068\u308B","\u3055\u306E\u3046","\u3055\u306F\u3099\u304F","\u3055\u3072\u3099\u3057\u3044","\u3055\u3078\u3099\u3064","\u3055\u307B\u3046","\u3055\u307B\u3068\u3099","\u3055\u307E\u3059","\u3055\u307F\u3057\u3044","\u3055\u307F\u305F\u3099\u308C","\u3055\u3080\u3051","\u3055\u3081\u308B","\u3055\u3084\u3048\u3093\u3068\u3099\u3046","\u3055\u3086\u3046","\u3055\u3088\u3046","\u3055\u3088\u304F","\u3055\u3089\u305F\u3099","\u3055\u3099\u308B\u305D\u306F\u3099","\u3055\u308F\u3084\u304B","\u3055\u308F\u308B","\u3055\u3093\u3044\u3093","\u3055\u3093\u304B","\u3055\u3093\u304D\u3083\u304F","\u3055\u3093\u3053\u3046","\u3055\u3093\u3055\u3044","\u3055\u3099\u3093\u3057\u3087","\u3055\u3093\u3059\u3046","\u3055\u3093\u305B\u3044","\u3055\u3093\u305D","\u3055\u3093\u3061","\u3055\u3093\u307E","\u3055\u3093\u307F","\u3055\u3093\u3089\u3093","\u3057\u3042\u3044","\u3057\u3042\u3051\u3099","\u3057\u3042\u3055\u3063\u3066","\u3057\u3042\u308F\u305B","\u3057\u3044\u304F","\u3057\u3044\u3093","\u3057\u3046\u3061","\u3057\u3048\u3044","\u3057\u304A\u3051","\u3057\u304B\u3044","\u3057\u304B\u304F","\u3057\u3099\u304B\u3093","\u3057\u3053\u3099\u3068","\u3057\u3059\u3046","\u3057\u3099\u305F\u3099\u3044","\u3057\u305F\u3046\u3051","\u3057\u305F\u304D\u3099","\u3057\u305F\u3066","\u3057\u305F\u307F","\u3057\u3061\u3087\u3046","\u3057\u3061\u308A\u3093","\u3057\u3063\u304B\u308A","\u3057\u3064\u3057\u3099","\u3057\u3064\u3082\u3093","\u3057\u3066\u3044","\u3057\u3066\u304D","\u3057\u3066\u3064","\u3057\u3099\u3066\u3093","\u3057\u3099\u3068\u3099\u3046","\u3057\u306A\u304D\u3099\u308C","\u3057\u306A\u3082\u306E","\u3057\u306A\u3093","\u3057\u306D\u307E","\u3057\u306D\u3093","\u3057\u306E\u304F\u3099","\u3057\u306E\u3075\u3099","\u3057\u306F\u3044","\u3057\u306F\u3099\u304B\u308A","\u3057\u306F\u3064","\u3057\u306F\u3089\u3044","\u3057\u306F\u3093","\u3057\u3072\u3087\u3046","\u3057\u3075\u304F","\u3057\u3099\u3075\u3099\u3093","\u3057\u3078\u3044","\u3057\u307B\u3046","\u3057\u307B\u3093","\u3057\u307E\u3046","\u3057\u307E\u308B","\u3057\u307F\u3093","\u3057\u3080\u3051\u308B","\u3057\u3099\u3080\u3057\u3087","\u3057\u3081\u3044","\u3057\u3081\u308B","\u3057\u3082\u3093","\u3057\u3083\u3044\u3093","\u3057\u3083\u3046\u3093","\u3057\u3083\u304A\u3093","\u3057\u3099\u3083\u304B\u3099\u3044\u3082","\u3057\u3084\u304F\u3057\u3087","\u3057\u3083\u304F\u307B\u3046","\u3057\u3083\u3051\u3093","\u3057\u3083\u3053","\u3057\u3083\u3055\u3099\u3044","\u3057\u3083\u3057\u3093","\u3057\u3083\u305B\u3093","\u3057\u3083\u305D\u3046","\u3057\u3083\u305F\u3044","\u3057\u3083\u3061\u3087\u3046","\u3057\u3083\u3063\u304D\u3093","\u3057\u3099\u3083\u307E","\u3057\u3083\u308A\u3093","\u3057\u3083\u308C\u3044","\u3057\u3099\u3086\u3046","\u3057\u3099\u3085\u3046\u3057\u3087","\u3057\u3085\u304F\u306F\u304F","\u3057\u3099\u3085\u3057\u3093","\u3057\u3085\u3063\u305B\u304D","\u3057\u3085\u307F","\u3057\u3085\u3089\u306F\u3099","\u3057\u3099\u3085\u3093\u306F\u3099\u3093","\u3057\u3087\u3046\u304B\u3044","\u3057\u3087\u304F\u305F\u304F","\u3057\u3087\u3063\u3051\u3093","\u3057\u3087\u3068\u3099\u3046","\u3057\u3087\u3082\u3064","\u3057\u3089\u305B\u308B","\u3057\u3089\u3078\u3099\u308B","\u3057\u3093\u304B","\u3057\u3093\u3053\u3046","\u3057\u3099\u3093\u3057\u3099\u3083","\u3057\u3093\u305B\u3044\u3057\u3099","\u3057\u3093\u3061\u304F","\u3057\u3093\u308A\u3093","\u3059\u3042\u3051\u3099","\u3059\u3042\u3057","\u3059\u3042\u306A","\u3059\u3099\u3042\u3093","\u3059\u3044\u3048\u3044","\u3059\u3044\u304B","\u3059\u3044\u3068\u3046","\u3059\u3099\u3044\u3075\u3099\u3093","\u3059\u3044\u3088\u3046\u3072\u3099","\u3059\u3046\u304B\u3099\u304F","\u3059\u3046\u3057\u3099\u3064","\u3059\u3046\u305B\u3093","\u3059\u304A\u3068\u3099\u308A","\u3059\u304D\u307E","\u3059\u304F\u3046","\u3059\u304F\u306A\u3044","\u3059\u3051\u308B","\u3059\u3053\u3099\u3044","\u3059\u3053\u3057","\u3059\u3099\u3055\u3093","\u3059\u3059\u3099\u3057\u3044","\u3059\u3059\u3080","\u3059\u3059\u3081\u308B","\u3059\u3063\u304B\u308A","\u3059\u3099\u3063\u3057\u308A","\u3059\u3099\u3063\u3068","\u3059\u3066\u304D","\u3059\u3066\u308B","\u3059\u306D\u308B","\u3059\u306E\u3053","\u3059\u306F\u305F\u3099","\u3059\u306F\u3099\u3089\u3057\u3044","\u3059\u3099\u3072\u3087\u3046","\u3059\u3099\u3075\u3099\u306C\u308C","\u3059\u3075\u3099\u308A","\u3059\u3075\u308C","\u3059\u3078\u3099\u3066","\u3059\u3078\u3099\u308B","\u3059\u3099\u307B\u3046","\u3059\u307B\u3099\u3093","\u3059\u307E\u3044","\u3059\u3081\u3057","\u3059\u3082\u3046","\u3059\u3084\u304D","\u3059\u3089\u3059\u3089","\u3059\u308B\u3081","\u3059\u308C\u3061\u304B\u3099\u3046","\u3059\u308D\u3063\u3068","\u3059\u308F\u308B","\u3059\u3093\u305B\u3099\u3093","\u3059\u3093\u307B\u309A\u3046","\u305B\u3042\u3075\u3099\u3089","\u305B\u3044\u304B\u3064","\u305B\u3044\u3051\u3099\u3093","\u305B\u3044\u3057\u3099","\u305B\u3044\u3088\u3046","\u305B\u304A\u3046","\u305B\u304B\u3044\u304B\u3093","\u305B\u304D\u306B\u3093","\u305B\u304D\u3080","\u305B\u304D\u3086","\u305B\u304D\u3089\u3093\u3046\u3093","\u305B\u3051\u3093","\u305B\u3053\u3046","\u305B\u3059\u3057\u3099","\u305B\u305F\u3044","\u305B\u305F\u3051","\u305B\u3063\u304B\u304F","\u305B\u3063\u304D\u3083\u304F","\u305B\u3099\u3063\u304F","\u305B\u3063\u3051\u3093","\u305B\u3063\u3053\u3064","\u305B\u3063\u3055\u305F\u304F\u307E","\u305B\u3064\u305D\u3099\u304F","\u305B\u3064\u305F\u3099\u3093","\u305B\u3064\u3066\u3099\u3093","\u305B\u3063\u306F\u309A\u3093","\u305B\u3064\u3072\u3099","\u305B\u3064\u3075\u3099\u3093","\u305B\u3064\u3081\u3044","\u305B\u3064\u308A\u3064","\u305B\u306A\u304B","\u305B\u306E\u3072\u3099","\u305B\u306F\u306F\u3099","\u305B\u3072\u3099\u308D","\u305B\u307B\u3099\u306D","\u305B\u307E\u3044","\u305B\u307E\u308B","\u305B\u3081\u308B","\u305B\u3082\u305F\u308C","\u305B\u308A\u3075","\u305B\u3099\u3093\u3042\u304F","\u305B\u3093\u3044","\u305B\u3093\u3048\u3044","\u305B\u3093\u304B","\u305B\u3093\u304D\u3087","\u305B\u3093\u304F","\u305B\u3093\u3051\u3099\u3093","\u305B\u3099\u3093\u3053\u3099","\u305B\u3093\u3055\u3044","\u305B\u3093\u3057\u3085","\u305B\u3093\u3059\u3044","\u305B\u3093\u305B\u3044","\u305B\u3093\u305D\u3099","\u305B\u3093\u305F\u304F","\u305B\u3093\u3061\u3087\u3046","\u305B\u3093\u3066\u3044","\u305B\u3093\u3068\u3046","\u305B\u3093\u306C\u304D","\u305B\u3093\u306D\u3093","\u305B\u3093\u306F\u309A\u3044","\u305B\u3099\u3093\u3075\u3099","\u305B\u3099\u3093\u307B\u309A\u3046","\u305B\u3093\u3080","\u305B\u3093\u3081\u3093\u3057\u3099\u3087","\u305B\u3093\u3082\u3093","\u305B\u3093\u3084\u304F","\u305B\u3093\u3086\u3046","\u305B\u3093\u3088\u3046","\u305B\u3099\u3093\u3089","\u305B\u3099\u3093\u308A\u3083\u304F","\u305B\u3093\u308C\u3044","\u305B\u3093\u308D","\u305D\u3042\u304F","\u305D\u3044\u3068\u3051\u3099\u308B","\u305D\u3044\u306D","\u305D\u3046\u304B\u3099\u3093\u304D\u3087\u3046","\u305D\u3046\u304D","\u305D\u3046\u3053\u3099","\u305D\u3046\u3057\u3093","\u305D\u3046\u305F\u3099\u3093","\u305D\u3046\u306A\u3093","\u305D\u3046\u3072\u3099","\u305D\u3046\u3081\u3093","\u305D\u3046\u308A","\u305D\u3048\u3082\u306E","\u305D\u3048\u3093","\u305D\u304B\u3099\u3044","\u305D\u3051\u3099\u304D","\u305D\u3053\u3046","\u305D\u3053\u305D\u3053","\u305D\u3055\u3099\u3044","\u305D\u3057\u306A","\u305D\u305B\u3044","\u305D\u305B\u3093","\u305D\u305D\u304F\u3099","\u305D\u305F\u3099\u3066\u308B","\u305D\u3064\u3046","\u305D\u3064\u3048\u3093","\u305D\u3063\u304B\u3093","\u305D\u3064\u304D\u3099\u3087\u3046","\u305D\u3063\u3051\u3064","\u305D\u3063\u3053\u3046","\u305D\u3063\u305B\u3093","\u305D\u3063\u3068","\u305D\u3068\u304B\u3099\u308F","\u305D\u3068\u3064\u3099\u3089","\u305D\u306A\u3048\u308B","\u305D\u306A\u305F","\u305D\u3075\u307B\u3099","\u305D\u307B\u3099\u304F","\u305D\u307B\u3099\u308D","\u305D\u307E\u3064","\u305D\u307E\u308B","\u305D\u3080\u304F","\u305D\u3080\u308A\u3048","\u305D\u3081\u308B","\u305D\u3082\u305D\u3082","\u305D\u3088\u304B\u305B\u3099","\u305D\u3089\u307E\u3081","\u305D\u308D\u3046","\u305D\u3093\u304B\u3044","\u305D\u3093\u3051\u3044","\u305D\u3093\u3055\u3099\u3044","\u305D\u3093\u3057\u3064","\u305D\u3093\u305D\u3099\u304F","\u305D\u3093\u3061\u3087\u3046","\u305D\u3099\u3093\u3072\u3099","\u305D\u3099\u3093\u3075\u3099\u3093","\u305D\u3093\u307F\u3093","\u305F\u3042\u3044","\u305F\u3044\u3044\u3093","\u305F\u3044\u3046\u3093","\u305F\u3044\u3048\u304D","\u305F\u3044\u304A\u3046","\u305F\u3099\u3044\u304B\u3099\u304F","\u305F\u3044\u304D","\u305F\u3044\u304F\u3099\u3046","\u305F\u3044\u3051\u3093","\u305F\u3044\u3053","\u305F\u3044\u3055\u3099\u3044","\u305F\u3099\u3044\u3057\u3099\u3087\u3046\u3075\u3099","\u305F\u3099\u3044\u3059\u304D","\u305F\u3044\u305B\u3064","\u305F\u3044\u305D\u3046","\u305F\u3099\u3044\u305F\u3044","\u305F\u3044\u3061\u3087\u3046","\u305F\u3044\u3066\u3044","\u305F\u3099\u3044\u3068\u3099\u3053\u308D","\u305F\u3044\u306A\u3044","\u305F\u3044\u306D\u3064","\u305F\u3044\u306E\u3046","\u305F\u3044\u306F\u3093","\u305F\u3099\u3044\u3072\u3087\u3046","\u305F\u3044\u3075\u3046","\u305F\u3044\u3078\u3093","\u305F\u3044\u307B","\u305F\u3044\u307E\u3064\u306F\u3099\u306A","\u305F\u3044\u307F\u3093\u304F\u3099","\u305F\u3044\u3080","\u305F\u3044\u3081\u3093","\u305F\u3044\u3084\u304D","\u305F\u3044\u3088\u3046","\u305F\u3044\u3089","\u305F\u3044\u308A\u3087\u304F","\u305F\u3044\u308B","\u305F\u3044\u308F\u3093","\u305F\u3046\u3048","\u305F\u3048\u308B","\u305F\u304A\u3059","\u305F\u304A\u308B","\u305F\u304A\u308C\u308B","\u305F\u304B\u3044","\u305F\u304B\u306D","\u305F\u304D\u3072\u3099","\u305F\u304F\u3055\u3093","\u305F\u3053\u304F","\u305F\u3053\u3084\u304D","\u305F\u3055\u3044","\u305F\u3057\u3055\u3099\u3093","\u305F\u3099\u3057\u3099\u3083\u308C","\u305F\u3059\u3051\u308B","\u305F\u3059\u3099\u3055\u308F\u308B","\u305F\u305D\u304B\u3099\u308C","\u305F\u305F\u304B\u3046","\u305F\u305F\u304F","\u305F\u305F\u3099\u3057\u3044","\u305F\u305F\u307F","\u305F\u3061\u306F\u3099\u306A","\u305F\u3099\u3063\u304B\u3044","\u305F\u3099\u3063\u304D\u3083\u304F","\u305F\u3099\u3063\u3053","\u305F\u3099\u3063\u3057\u3085\u3064","\u305F\u3099\u3063\u305F\u3044","\u305F\u3066\u308B","\u305F\u3068\u3048\u308B","\u305F\u306A\u306F\u3099\u305F","\u305F\u306B\u3093","\u305F\u306C\u304D","\u305F\u306E\u3057\u307F","\u305F\u306F\u3064","\u305F\u3075\u3099\u3093","\u305F\u3078\u3099\u308B","\u305F\u307B\u3099\u3046","\u305F\u307E\u3053\u3099","\u305F\u307E\u308B","\u305F\u3099\u3080\u308B","\u305F\u3081\u3044\u304D","\u305F\u3081\u3059","\u305F\u3081\u308B","\u305F\u3082\u3064","\u305F\u3084\u3059\u3044","\u305F\u3088\u308B","\u305F\u3089\u3059","\u305F\u308A\u304D\u307B\u3093\u304B\u3099\u3093","\u305F\u308A\u3087\u3046","\u305F\u308A\u308B","\u305F\u308B\u3068","\u305F\u308C\u308B","\u305F\u308C\u3093\u3068","\u305F\u308D\u3063\u3068","\u305F\u308F\u3080\u308C\u308B","\u305F\u3099\u3093\u3042\u3064","\u305F\u3093\u3044","\u305F\u3093\u304A\u3093","\u305F\u3093\u304B","\u305F\u3093\u304D","\u305F\u3093\u3051\u3093","\u305F\u3093\u3053\u3099","\u305F\u3093\u3055\u3093","\u305F\u3093\u3057\u3099\u3087\u3046\u3072\u3099","\u305F\u3099\u3093\u305B\u3044","\u305F\u3093\u305D\u304F","\u305F\u3093\u305F\u3044","\u305F\u3099\u3093\u3061","\u305F\u3093\u3066\u3044","\u305F\u3093\u3068\u3046","\u305F\u3099\u3093\u306A","\u305F\u3093\u306B\u3093","\u305F\u3099\u3093\u306D\u3064","\u305F\u3093\u306E\u3046","\u305F\u3093\u3072\u309A\u3093","\u305F\u3099\u3093\u307B\u3099\u3046","\u305F\u3093\u307E\u3064","\u305F\u3093\u3081\u3044","\u305F\u3099\u3093\u308C\u3064","\u305F\u3099\u3093\u308D","\u305F\u3099\u3093\u308F","\u3061\u3042\u3044","\u3061\u3042\u3093","\u3061\u3044\u304D","\u3061\u3044\u3055\u3044","\u3061\u3048\u3093","\u3061\u304B\u3044","\u3061\u304B\u3089","\u3061\u304D\u3085\u3046","\u3061\u304D\u3093","\u3061\u3051\u3044\u3059\u3099","\u3061\u3051\u3093","\u3061\u3053\u304F","\u3061\u3055\u3044","\u3061\u3057\u304D","\u3061\u3057\u308A\u3087\u3046","\u3061\u305B\u3044","\u3061\u305D\u3046","\u3061\u305F\u3044","\u3061\u305F\u3093","\u3061\u3061\u304A\u3084","\u3061\u3064\u3057\u3099\u3087","\u3061\u3066\u304D","\u3061\u3066\u3093","\u3061\u306C\u304D","\u3061\u306C\u308A","\u3061\u306E\u3046","\u3061\u3072\u3087\u3046","\u3061\u3078\u3044\u305B\u3093","\u3061\u307B\u3046","\u3061\u307E\u305F","\u3061\u307F\u3064","\u3061\u307F\u3068\u3099\u308D","\u3061\u3081\u3044\u3068\u3099","\u3061\u3083\u3093\u3053\u306A\u3078\u3099","\u3061\u3085\u3046\u3044","\u3061\u3086\u308A\u3087\u304F","\u3061\u3087\u3046\u3057","\u3061\u3087\u3055\u304F\u3051\u3093","\u3061\u3089\u3057","\u3061\u3089\u307F","\u3061\u308A\u304B\u3099\u307F","\u3061\u308A\u3087\u3046","\u3061\u308B\u3068\u3099","\u3061\u308F\u308F","\u3061\u3093\u305F\u3044","\u3061\u3093\u3082\u304F","\u3064\u3044\u304B","\u3064\u3044\u305F\u3061","\u3064\u3046\u304B","\u3064\u3046\u3057\u3099\u3087\u3046","\u3064\u3046\u306F\u3093","\u3064\u3046\u308F","\u3064\u304B\u3046","\u3064\u304B\u308C\u308B","\u3064\u304F\u306D","\u3064\u304F\u308B","\u3064\u3051\u306D","\u3064\u3051\u308B","\u3064\u3053\u3099\u3046","\u3064\u305F\u3048\u308B","\u3064\u3064\u3099\u304F","\u3064\u3064\u3057\u3099","\u3064\u3064\u3080","\u3064\u3068\u3081\u308B","\u3064\u306A\u304B\u3099\u308B","\u3064\u306A\u307F","\u3064\u306D\u3064\u3099\u306D","\u3064\u306E\u308B","\u3064\u3075\u3099\u3059","\u3064\u307E\u3089\u306A\u3044","\u3064\u307E\u308B","\u3064\u307F\u304D","\u3064\u3081\u305F\u3044","\u3064\u3082\u308A","\u3064\u3082\u308B","\u3064\u3088\u3044","\u3064\u308B\u307B\u3099","\u3064\u308B\u307F\u304F","\u3064\u308F\u3082\u306E","\u3064\u308F\u308A","\u3066\u3042\u3057","\u3066\u3042\u3066","\u3066\u3042\u307F","\u3066\u3044\u304A\u3093","\u3066\u3044\u304B","\u3066\u3044\u304D","\u3066\u3044\u3051\u3044","\u3066\u3044\u3053\u304F","\u3066\u3044\u3055\u3064","\u3066\u3044\u3057","\u3066\u3044\u305B\u3044","\u3066\u3044\u305F\u3044","\u3066\u3044\u3068\u3099","\u3066\u3044\u306D\u3044","\u3066\u3044\u3072\u3087\u3046","\u3066\u3044\u3078\u3093","\u3066\u3044\u307B\u3099\u3046","\u3066\u3046\u3061","\u3066\u304A\u304F\u308C","\u3066\u304D\u3068\u3046","\u3066\u304F\u3072\u3099","\u3066\u3099\u3053\u307B\u3099\u3053","\u3066\u3055\u304D\u3099\u3087\u3046","\u3066\u3055\u3051\u3099","\u3066\u3059\u308A","\u3066\u305D\u3046","\u3066\u3061\u304B\u3099\u3044","\u3066\u3061\u3087\u3046","\u3066\u3064\u304B\u3099\u304F","\u3066\u3064\u3064\u3099\u304D","\u3066\u3099\u3063\u306F\u309A","\u3066\u3064\u307B\u3099\u3046","\u3066\u3064\u3084","\u3066\u3099\u306C\u304B\u3048","\u3066\u306C\u304D","\u3066\u306C\u304F\u3099\u3044","\u3066\u306E\u3072\u3089","\u3066\u306F\u3044","\u3066\u3075\u3099\u304F\u308D","\u3066\u3075\u305F\u3099","\u3066\u307B\u3068\u3099\u304D","\u3066\u307B\u3093","\u3066\u307E\u3048","\u3066\u307E\u304D\u3059\u3099\u3057","\u3066\u307F\u3057\u3099\u304B","\u3066\u307F\u3084\u3051\u3099","\u3066\u3089\u3059","\u3066\u308C\u3072\u3099","\u3066\u308F\u3051","\u3066\u308F\u305F\u3057","\u3066\u3099\u3093\u3042\u3064","\u3066\u3093\u3044\u3093","\u3066\u3093\u304B\u3044","\u3066\u3093\u304D","\u3066\u3093\u304F\u3099","\u3066\u3093\u3051\u3093","\u3066\u3093\u3053\u3099\u304F","\u3066\u3093\u3055\u3044","\u3066\u3093\u3057","\u3066\u3093\u3059\u3046","\u3066\u3099\u3093\u3061","\u3066\u3093\u3066\u304D","\u3066\u3093\u3068\u3046","\u3066\u3093\u306A\u3044","\u3066\u3093\u3075\u309A\u3089","\u3066\u3093\u307B\u3099\u3046\u305F\u3099\u3044","\u3066\u3093\u3081\u3064","\u3066\u3093\u3089\u3093\u304B\u3044","\u3066\u3099\u3093\u308A\u3087\u304F","\u3066\u3099\u3093\u308F","\u3068\u3099\u3042\u3044","\u3068\u3044\u308C","\u3068\u3099\u3046\u304B\u3093","\u3068\u3046\u304D\u3085\u3046","\u3068\u3099\u3046\u304F\u3099","\u3068\u3046\u3057","\u3068\u3046\u3080\u304D\u3099","\u3068\u304A\u3044","\u3068\u304A\u304B","\u3068\u304A\u304F","\u3068\u304A\u3059","\u3068\u304A\u308B","\u3068\u304B\u3044","\u3068\u304B\u3059","\u3068\u304D\u304A\u308A","\u3068\u304D\u3068\u3099\u304D","\u3068\u304F\u3044","\u3068\u304F\u3057\u3085\u3046","\u3068\u304F\u3066\u3093","\u3068\u304F\u306B","\u3068\u304F\u3078\u3099\u3064","\u3068\u3051\u3044","\u3068\u3051\u308B","\u3068\u3053\u3084","\u3068\u3055\u304B","\u3068\u3057\u3087\u304B\u3093","\u3068\u305D\u3046","\u3068\u305F\u3093","\u3068\u3061\u3085\u3046","\u3068\u3063\u304D\u3085\u3046","\u3068\u3063\u304F\u3093","\u3068\u3064\u305B\u3099\u3093","\u3068\u3064\u306B\u3085\u3046","\u3068\u3068\u3099\u3051\u308B","\u3068\u3068\u306E\u3048\u308B","\u3068\u306A\u3044","\u3068\u306A\u3048\u308B","\u3068\u306A\u308A","\u3068\u306E\u3055\u307E","\u3068\u306F\u3099\u3059","\u3068\u3099\u3075\u3099\u304B\u3099\u308F","\u3068\u307B\u3046","\u3068\u307E\u308B","\u3068\u3081\u308B","\u3068\u3082\u305F\u3099\u3061","\u3068\u3082\u308B","\u3068\u3099\u3088\u3046\u3072\u3099","\u3068\u3089\u3048\u308B","\u3068\u3093\u304B\u3064","\u3068\u3099\u3093\u3075\u3099\u308A","\u306A\u3044\u304B\u304F","\u306A\u3044\u3053\u3046","\u306A\u3044\u3057\u3087","\u306A\u3044\u3059","\u306A\u3044\u305B\u3093","\u306A\u3044\u305D\u3046","\u306A\u304A\u3059","\u306A\u304B\u3099\u3044","\u306A\u304F\u3059","\u306A\u3051\u3099\u308B","\u306A\u3053\u3046\u3068\u3099","\u306A\u3055\u3051","\u306A\u305F\u3066\u3099\u3053\u3053","\u306A\u3063\u3068\u3046","\u306A\u3064\u3084\u3059\u307F","\u306A\u306A\u304A\u3057","\u306A\u306B\u3053\u3099\u3068","\u306A\u306B\u3082\u306E","\u306A\u306B\u308F","\u306A\u306E\u304B","\u306A\u3075\u305F\u3099","\u306A\u307E\u3044\u304D","\u306A\u307E\u3048","\u306A\u307E\u307F","\u306A\u307F\u305F\u3099","\u306A\u3081\u3089\u304B","\u306A\u3081\u308B","\u306A\u3084\u3080","\u306A\u3089\u3046","\u306A\u3089\u3072\u3099","\u306A\u3089\u3075\u3099","\u306A\u308C\u308B","\u306A\u308F\u3068\u3072\u3099","\u306A\u308F\u306F\u3099\u308A","\u306B\u3042\u3046","\u306B\u3044\u304B\u3099\u305F","\u306B\u3046\u3051","\u306B\u304A\u3044","\u306B\u304B\u3044","\u306B\u304B\u3099\u3066","\u306B\u304D\u3072\u3099","\u306B\u304F\u3057\u307F","\u306B\u304F\u307E\u3093","\u306B\u3051\u3099\u308B","\u306B\u3055\u3093\u304B\u305F\u3093\u305D","\u306B\u3057\u304D","\u306B\u305B\u3082\u306E","\u306B\u3061\u3057\u3099\u3087\u3046","\u306B\u3061\u3088\u3046\u3072\u3099","\u306B\u3063\u304B","\u306B\u3063\u304D","\u306B\u3063\u3051\u3044","\u306B\u3063\u3053\u3046","\u306B\u3063\u3055\u3093","\u306B\u3063\u3057\u3087\u304F","\u306B\u3063\u3059\u3046","\u306B\u3063\u305B\u304D","\u306B\u3063\u3066\u3044","\u306B\u306A\u3046","\u306B\u307B\u3093","\u306B\u307E\u3081","\u306B\u3082\u3064","\u306B\u3084\u308A","\u306B\u3085\u3046\u3044\u3093","\u306B\u308A\u3093\u3057\u3083","\u306B\u308F\u3068\u308A","\u306B\u3093\u3044","\u306B\u3093\u304B","\u306B\u3093\u304D","\u306B\u3093\u3051\u3099\u3093","\u306B\u3093\u3057\u304D","\u306B\u3093\u3059\u3099\u3046","\u306B\u3093\u305D\u3046","\u306B\u3093\u305F\u3044","\u306B\u3093\u3061","\u306B\u3093\u3066\u3044","\u306B\u3093\u306B\u304F","\u306B\u3093\u3075\u309A","\u306B\u3093\u307E\u308A","\u306B\u3093\u3080","\u306B\u3093\u3081\u3044","\u306B\u3093\u3088\u3046","\u306C\u3044\u304F\u304D\u3099","\u306C\u304B\u3059","\u306C\u304F\u3099\u3044\u3068\u308B","\u306C\u304F\u3099\u3046","\u306C\u304F\u3082\u308A","\u306C\u3059\u3080","\u306C\u307E\u3048\u3072\u3099","\u306C\u3081\u308A","\u306C\u3089\u3059","\u306C\u3093\u3061\u3083\u304F","\u306D\u3042\u3051\u3099","\u306D\u3044\u304D","\u306D\u3044\u308B","\u306D\u3044\u308D","\u306D\u304F\u3099\u305B","\u306D\u304F\u305F\u3044","\u306D\u304F\u3089","\u306D\u3053\u305B\u3099","\u306D\u3053\u3080","\u306D\u3055\u3051\u3099","\u306D\u3059\u3053\u3099\u3059","\u306D\u305D\u3078\u3099\u308B","\u306D\u305F\u3099\u3093","\u306D\u3064\u3044","\u306D\u3063\u3057\u3093","\u306D\u3064\u305D\u3099\u3046","\u306D\u3063\u305F\u3044\u304D\u3099\u3087","\u306D\u3075\u3099\u305D\u304F","\u306D\u3075\u305F\u3099","\u306D\u307B\u3099\u3046","\u306D\u307B\u308A\u306F\u307B\u308A","\u306D\u307E\u304D","\u306D\u307E\u308F\u3057","\u306D\u307F\u307F","\u306D\u3080\u3044","\u306D\u3080\u305F\u3044","\u306D\u3082\u3068","\u306D\u3089\u3046","\u306D\u308F\u3055\u3099","\u306D\u3093\u3044\u308A","\u306D\u3093\u304A\u3057","\u306D\u3093\u304B\u3093","\u306D\u3093\u304D\u3093","\u306D\u3093\u304F\u3099","\u306D\u3093\u3055\u3099","\u306D\u3093\u3057","\u306D\u3093\u3061\u3083\u304F","\u306D\u3093\u3068\u3099","\u306D\u3093\u3072\u309A","\u306D\u3093\u3075\u3099\u3064","\u306D\u3093\u307E\u3064","\u306D\u3093\u308A\u3087\u3046","\u306D\u3093\u308C\u3044","\u306E\u3044\u3059\u3099","\u306E\u304A\u3064\u3099\u307E","\u306E\u304B\u3099\u3059","\u306E\u304D\u306A\u307F","\u306E\u3053\u304D\u3099\u308A","\u306E\u3053\u3059","\u306E\u3053\u308B","\u306E\u305B\u308B","\u306E\u305D\u3099\u304F","\u306E\u305D\u3099\u3080","\u306E\u305F\u307E\u3046","\u306E\u3061\u307B\u3068\u3099","\u306E\u3063\u304F","\u306E\u306F\u3099\u3059","\u306E\u306F\u3089","\u306E\u3078\u3099\u308B","\u306E\u307B\u3099\u308B","\u306E\u307F\u3082\u306E","\u306E\u3084\u307E","\u306E\u3089\u3044\u306C","\u306E\u3089\u306D\u3053","\u306E\u308A\u3082\u306E","\u306E\u308A\u3086\u304D","\u306E\u308C\u3093","\u306E\u3093\u304D","\u306F\u3099\u3042\u3044","\u306F\u3042\u304F","\u306F\u3099\u3042\u3055\u3093","\u306F\u3099\u3044\u304B","\u306F\u3099\u3044\u304F","\u306F\u3044\u3051\u3093","\u306F\u3044\u3053\u3099","\u306F\u3044\u3057\u3093","\u306F\u3044\u3059\u3044","\u306F\u3044\u305B\u3093","\u306F\u3044\u305D\u3046","\u306F\u3044\u3061","\u306F\u3099\u3044\u306F\u3099\u3044","\u306F\u3044\u308C\u3064","\u306F\u3048\u308B","\u306F\u304A\u308B","\u306F\u304B\u3044","\u306F\u3099\u304B\u308A","\u306F\u304B\u308B","\u306F\u304F\u3057\u3085","\u306F\u3051\u3093","\u306F\u3053\u3075\u3099","\u306F\u3055\u307F","\u306F\u3055\u3093","\u306F\u3057\u3053\u3099","\u306F\u3099\u3057\u3087","\u306F\u3057\u308B","\u306F\u305B\u308B","\u306F\u309A\u305D\u3053\u3093","\u306F\u305D\u3093","\u306F\u305F\u3093","\u306F\u3061\u307F\u3064","\u306F\u3064\u304A\u3093","\u306F\u3063\u304B\u304F","\u306F\u3064\u3099\u304D","\u306F\u3063\u304D\u308A","\u306F\u3063\u304F\u3064","\u306F\u3063\u3051\u3093","\u306F\u3063\u3053\u3046","\u306F\u3063\u3055\u3093","\u306F\u3063\u3057\u3093","\u306F\u3063\u305F\u3064","\u306F\u3063\u3061\u3085\u3046","\u306F\u3063\u3066\u3093","\u306F\u3063\u3072\u309A\u3087\u3046","\u306F\u3063\u307B\u309A\u3046","\u306F\u306A\u3059","\u306F\u306A\u3072\u3099","\u306F\u306B\u304B\u3080","\u306F\u3075\u3099\u3089\u3057","\u306F\u307F\u304B\u3099\u304D","\u306F\u3080\u304B\u3046","\u306F\u3081\u3064","\u306F\u3084\u3044","\u306F\u3084\u3057","\u306F\u3089\u3046","\u306F\u308D\u3046\u3043\u3093","\u306F\u308F\u3044","\u306F\u3093\u3044","\u306F\u3093\u3048\u3044","\u306F\u3093\u304A\u3093","\u306F\u3093\u304B\u304F","\u306F\u3093\u304D\u3087\u3046","\u306F\u3099\u3093\u304F\u3099\u307F","\u306F\u3093\u3053","\u306F\u3093\u3057\u3083","\u306F\u3093\u3059\u3046","\u306F\u3093\u305F\u3099\u3093","\u306F\u309A\u3093\u3061","\u306F\u309A\u3093\u3064","\u306F\u3093\u3066\u3044","\u306F\u3093\u3068\u3057","\u306F\u3093\u306E\u3046","\u306F\u3093\u306F\u309A","\u306F\u3093\u3075\u3099\u3093","\u306F\u3093\u3078\u309A\u3093","\u306F\u3093\u307B\u3099\u3046\u304D","\u306F\u3093\u3081\u3044","\u306F\u3093\u3089\u3093","\u306F\u3093\u308D\u3093","\u3072\u3044\u304D","\u3072\u3046\u3093","\u3072\u3048\u308B","\u3072\u304B\u304F","\u3072\u304B\u308A","\u3072\u304B\u308B","\u3072\u304B\u3093","\u3072\u304F\u3044","\u3072\u3051\u3064","\u3072\u3053\u3046\u304D","\u3072\u3053\u304F","\u3072\u3055\u3044","\u3072\u3055\u3057\u3075\u3099\u308A","\u3072\u3055\u3093","\u3072\u3099\u3057\u3099\u3085\u3064\u304B\u3093","\u3072\u3057\u3087","\u3072\u305D\u304B","\u3072\u305D\u3080","\u3072\u305F\u3080\u304D","\u3072\u305F\u3099\u308A","\u3072\u305F\u308B","\u3072\u3064\u304D\u3099","\u3072\u3063\u3053\u3057","\u3072\u3063\u3057","\u3072\u3064\u3057\u3099\u3085\u3072\u3093","\u3072\u3063\u3059","\u3072\u3064\u305B\u3099\u3093","\u3072\u309A\u3063\u305F\u308A","\u3072\u309A\u3063\u3061\u308A","\u3072\u3064\u3088\u3046","\u3072\u3066\u3044","\u3072\u3068\u3053\u3099\u307F","\u3072\u306A\u307E\u3064\u308A","\u3072\u306A\u3093","\u3072\u306D\u308B","\u3072\u306F\u3093","\u3072\u3072\u3099\u304F","\u3072\u3072\u3087\u3046","\u3072\u307B\u3046","\u3072\u307E\u308F\u308A","\u3072\u307E\u3093","\u3072\u307F\u3064","\u3072\u3081\u3044","\u3072\u3081\u3057\u3099\u3057","\u3072\u3084\u3051","\u3072\u3084\u3059","\u3072\u3088\u3046","\u3072\u3099\u3087\u3046\u304D","\u3072\u3089\u304B\u3099\u306A","\u3072\u3089\u304F","\u3072\u308A\u3064","\u3072\u308A\u3087\u3046","\u3072\u308B\u307E","\u3072\u308B\u3084\u3059\u307F","\u3072\u308C\u3044","\u3072\u308D\u3044","\u3072\u308D\u3046","\u3072\u308D\u304D","\u3072\u308D\u3086\u304D","\u3072\u3093\u304B\u304F","\u3072\u3093\u3051\u3064","\u3072\u3093\u3053\u3093","\u3072\u3093\u3057\u3085","\u3072\u3093\u305D\u3046","\u3072\u309A\u3093\u3061","\u3072\u3093\u306F\u309A\u3093","\u3072\u3099\u3093\u307B\u3099\u3046","\u3075\u3042\u3093","\u3075\u3044\u3046\u3061","\u3075\u3046\u3051\u3044","\u3075\u3046\u305B\u3093","\u3075\u309A\u3046\u305F\u308D\u3046","\u3075\u3046\u3068\u3046","\u3075\u3046\u3075","\u3075\u3048\u308B","\u3075\u304A\u3093","\u3075\u304B\u3044","\u3075\u304D\u3093","\u3075\u304F\u3055\u3099\u3064","\u3075\u304F\u3075\u3099\u304F\u308D","\u3075\u3053\u3046","\u3075\u3055\u3044","\u3075\u3057\u304D\u3099","\u3075\u3057\u3099\u307F","\u3075\u3059\u307E","\u3075\u305B\u3044","\u3075\u305B\u304F\u3099","\u3075\u305D\u304F","\u3075\u3099\u305F\u306B\u304F","\u3075\u305F\u3093","\u3075\u3061\u3087\u3046","\u3075\u3064\u3046","\u3075\u3064\u304B","\u3075\u3063\u304B\u3064","\u3075\u3063\u304D","\u3075\u3063\u3053\u304F","\u3075\u3099\u3068\u3099\u3046","\u3075\u3068\u308B","\u3075\u3068\u3093","\u3075\u306E\u3046","\u3075\u306F\u3044","\u3075\u3072\u3087\u3046","\u3075\u3078\u3093","\u3075\u307E\u3093","\u3075\u307F\u3093","\u3075\u3081\u3064","\u3075\u3081\u3093","\u3075\u3088\u3046","\u3075\u308A\u3053","\u3075\u308A\u308B","\u3075\u308B\u3044","\u3075\u3093\u3044\u304D","\u3075\u3099\u3093\u304B\u3099\u304F","\u3075\u3099\u3093\u304F\u3099","\u3075\u3093\u3057\u3064","\u3075\u3099\u3093\u305B\u304D","\u3075\u3093\u305D\u3046","\u3075\u3099\u3093\u307B\u309A\u3046","\u3078\u3044\u3042\u3093","\u3078\u3044\u304A\u3093","\u3078\u3044\u304B\u3099\u3044","\u3078\u3044\u304D","\u3078\u3044\u3051\u3099\u3093","\u3078\u3044\u3053\u3046","\u3078\u3044\u3055","\u3078\u3044\u3057\u3083","\u3078\u3044\u305B\u3064","\u3078\u3044\u305D","\u3078\u3044\u305F\u304F","\u3078\u3044\u3066\u3093","\u3078\u3044\u306D\u3064","\u3078\u3044\u308F","\u3078\u304D\u304B\u3099","\u3078\u3053\u3080","\u3078\u3099\u306B\u3044\u308D","\u3078\u3099\u306B\u3057\u3087\u3046\u304B\u3099","\u3078\u3089\u3059","\u3078\u3093\u304B\u3093","\u3078\u3099\u3093\u304D\u3087\u3046","\u3078\u3099\u3093\u3053\u3099\u3057","\u3078\u3093\u3055\u3044","\u3078\u3093\u305F\u3044","\u3078\u3099\u3093\u308A","\u307B\u3042\u3093","\u307B\u3044\u304F","\u307B\u3099\u3046\u304D\u3099\u3087","\u307B\u3046\u3053\u304F","\u307B\u3046\u305D\u3046","\u307B\u3046\u307B\u3046","\u307B\u3046\u3082\u3093","\u307B\u3046\u308A\u3064","\u307B\u3048\u308B","\u307B\u304A\u3093","\u307B\u304B\u3093","\u307B\u304D\u3087\u3046","\u307B\u3099\u304D\u3093","\u307B\u304F\u308D","\u307B\u3051\u3064","\u307B\u3051\u3093","\u307B\u3053\u3046","\u307B\u3053\u308B","\u307B\u3057\u3044","\u307B\u3057\u3064","\u307B\u3057\u3085","\u307B\u3057\u3087\u3046","\u307B\u305B\u3044","\u307B\u305D\u3044","\u307B\u305D\u304F","\u307B\u305F\u3066","\u307B\u305F\u308B","\u307B\u309A\u3061\u3075\u3099\u304F\u308D","\u307B\u3063\u304D\u3087\u304F","\u307B\u3063\u3055","\u307B\u3063\u305F\u3093","\u307B\u3068\u3093\u3068\u3099","\u307B\u3081\u308B","\u307B\u3093\u3044","\u307B\u3093\u304D","\u307B\u3093\u3051","\u307B\u3093\u3057\u3064","\u307B\u3093\u3084\u304F","\u307E\u3044\u306B\u3061","\u307E\u304B\u3044","\u307E\u304B\u305B\u308B","\u307E\u304B\u3099\u308B","\u307E\u3051\u308B","\u307E\u3053\u3068","\u307E\u3055\u3064","\u307E\u3057\u3099\u3081","\u307E\u3059\u304F","\u307E\u305B\u3099\u308B","\u307E\u3064\u308A","\u307E\u3068\u3081","\u307E\u306A\u3075\u3099","\u307E\u306C\u3051","\u307E\u306D\u304F","\u307E\u307B\u3046","\u307E\u3082\u308B","\u307E\u3086\u3051\u3099","\u307E\u3088\u3046","\u307E\u308D\u3084\u304B","\u307E\u308F\u3059","\u307E\u308F\u308A","\u307E\u308F\u308B","\u307E\u3093\u304B\u3099","\u307E\u3093\u304D\u3064","\u307E\u3093\u305D\u3099\u304F","\u307E\u3093\u306A\u304B","\u307F\u3044\u3089","\u307F\u3046\u3061","\u307F\u3048\u308B","\u307F\u304B\u3099\u304F","\u307F\u304B\u305F","\u307F\u304B\u3093","\u307F\u3051\u3093","\u307F\u3053\u3093","\u307F\u3057\u3099\u304B\u3044","\u307F\u3059\u3044","\u307F\u3059\u3048\u308B","\u307F\u305B\u308B","\u307F\u3063\u304B","\u307F\u3064\u304B\u308B","\u307F\u3064\u3051\u308B","\u307F\u3066\u3044","\u307F\u3068\u3081\u308B","\u307F\u306A\u3068","\u307F\u306A\u307F\u304B\u3055\u3044","\u307F\u306D\u3089\u308B","\u307F\u306E\u3046","\u307F\u306E\u304B\u3099\u3059","\u307F\u307B\u3093","\u307F\u3082\u3068","\u307F\u3084\u3051\u3099","\u307F\u3089\u3044","\u307F\u308A\u3087\u304F","\u307F\u308F\u304F","\u307F\u3093\u304B","\u307F\u3093\u305D\u3099\u304F","\u3080\u3044\u304B","\u3080\u3048\u304D","\u3080\u3048\u3093","\u3080\u304B\u3044","\u3080\u304B\u3046","\u3080\u304B\u3048","\u3080\u304B\u3057","\u3080\u304D\u3099\u3061\u3083","\u3080\u3051\u308B","\u3080\u3051\u3099\u3093","\u3080\u3055\u307B\u3099\u308B","\u3080\u3057\u3042\u3064\u3044","\u3080\u3057\u306F\u3099","\u3080\u3057\u3099\u3085\u3093","\u3080\u3057\u308D","\u3080\u3059\u3046","\u3080\u3059\u3053","\u3080\u3059\u3075\u3099","\u3080\u3059\u3081","\u3080\u305B\u308B","\u3080\u305B\u3093","\u3080\u3061\u3085\u3046","\u3080\u306A\u3057\u3044","\u3080\u306E\u3046","\u3080\u3084\u307F","\u3080\u3088\u3046","\u3080\u3089\u3055\u304D","\u3080\u308A\u3087\u3046","\u3080\u308D\u3093","\u3081\u3044\u3042\u3093","\u3081\u3044\u3046\u3093","\u3081\u3044\u3048\u3093","\u3081\u3044\u304B\u304F","\u3081\u3044\u304D\u3087\u304F","\u3081\u3044\u3055\u3044","\u3081\u3044\u3057","\u3081\u3044\u305D\u3046","\u3081\u3044\u3075\u3099\u3064","\u3081\u3044\u308C\u3044","\u3081\u3044\u308F\u304F","\u3081\u304F\u3099\u307E\u308C\u308B","\u3081\u3055\u3099\u3059","\u3081\u3057\u305F","\u3081\u3059\u3099\u3089\u3057\u3044","\u3081\u305F\u3099\u3064","\u3081\u307E\u3044","\u3081\u3084\u3059","\u3081\u3093\u304D\u3087","\u3081\u3093\u305B\u304D","\u3081\u3093\u3068\u3099\u3046","\u3082\u3046\u3057\u3042\u3051\u3099\u308B","\u3082\u3046\u3068\u3099\u3046\u3051\u3093","\u3082\u3048\u308B","\u3082\u304F\u3057","\u3082\u304F\u3066\u304D","\u3082\u304F\u3088\u3046\u3072\u3099","\u3082\u3061\u308D\u3093","\u3082\u3068\u3099\u308B","\u3082\u3089\u3046","\u3082\u3093\u304F","\u3082\u3093\u305F\u3099\u3044","\u3084\u304A\u3084","\u3084\u3051\u308B","\u3084\u3055\u3044","\u3084\u3055\u3057\u3044","\u3084\u3059\u3044","\u3084\u3059\u305F\u308D\u3046","\u3084\u3059\u307F","\u3084\u305B\u308B","\u3084\u305D\u3046","\u3084\u305F\u3044","\u3084\u3061\u3093","\u3084\u3063\u3068","\u3084\u3063\u306F\u309A\u308A","\u3084\u3075\u3099\u308B","\u3084\u3081\u308B","\u3084\u3084\u3053\u3057\u3044","\u3084\u3088\u3044","\u3084\u308F\u3089\u304B\u3044","\u3086\u3046\u304D","\u3086\u3046\u3072\u3099\u3093\u304D\u3087\u304F","\u3086\u3046\u3078\u3099","\u3086\u3046\u3081\u3044","\u3086\u3051\u3064","\u3086\u3057\u3085\u3064","\u3086\u305B\u3093","\u3086\u305D\u3046","\u3086\u305F\u304B","\u3086\u3061\u3083\u304F","\u3086\u3066\u3099\u308B","\u3086\u306B\u3085\u3046","\u3086\u3072\u3099\u308F","\u3086\u3089\u3044","\u3086\u308C\u308B","\u3088\u3046\u3044","\u3088\u3046\u304B","\u3088\u3046\u304D\u3085\u3046","\u3088\u3046\u3057\u3099","\u3088\u3046\u3059","\u3088\u3046\u3061\u3048\u3093","\u3088\u304B\u305B\u3099","\u3088\u304B\u3093","\u3088\u304D\u3093","\u3088\u304F\u305B\u3044","\u3088\u304F\u307B\u3099\u3046","\u3088\u3051\u3044","\u3088\u3053\u3099\u308C\u308B","\u3088\u3055\u3093","\u3088\u3057\u3085\u3046","\u3088\u305D\u3046","\u3088\u305D\u304F","\u3088\u3063\u304B","\u3088\u3066\u3044","\u3088\u3068\u3099\u304B\u3099\u308F\u304F","\u3088\u306D\u3064","\u3088\u3084\u304F","\u3088\u3086\u3046","\u3088\u308D\u3053\u3075\u3099","\u3088\u308D\u3057\u3044","\u3089\u3044\u3046","\u3089\u304F\u304B\u3099\u304D","\u3089\u304F\u3053\u3099","\u3089\u304F\u3055\u3064","\u3089\u304F\u305F\u3099","\u3089\u3057\u3093\u306F\u3099\u3093","\u3089\u305B\u3093","\u3089\u305D\u3099\u304F","\u3089\u305F\u3044","\u3089\u3063\u304B","\u3089\u308C\u3064","\u308A\u3048\u304D","\u308A\u304B\u3044","\u308A\u304D\u3055\u304F","\u308A\u304D\u305B\u3064","\u308A\u304F\u304F\u3099\u3093","\u308A\u304F\u3064","\u308A\u3051\u3093","\u308A\u3053\u3046","\u308A\u305B\u3044","\u308A\u305D\u3046","\u308A\u305D\u304F","\u308A\u3066\u3093","\u308A\u306D\u3093","\u308A\u3086\u3046","\u308A\u3085\u3046\u304B\u3099\u304F","\u308A\u3088\u3046","\u308A\u3087\u3046\u308A","\u308A\u3087\u304B\u3093","\u308A\u3087\u304F\u3061\u3083","\u308A\u3087\u3053\u3046","\u308A\u308A\u304F","\u308A\u308C\u304D","\u308A\u308D\u3093","\u308A\u3093\u3053\u3099","\u308B\u3044\u3051\u3044","\u308B\u3044\u3055\u3044","\u308B\u3044\u3057\u3099","\u308B\u3044\u305B\u304D","\u308B\u3059\u306F\u3099\u3093","\u308B\u308A\u304B\u3099\u308F\u3089","\u308C\u3044\u304B\u3093","\u308C\u3044\u304D\u3099","\u308C\u3044\u305B\u3044","\u308C\u3044\u305D\u3099\u3046\u3053","\u308C\u3044\u3068\u3046","\u308C\u3044\u307B\u3099\u3046","\u308C\u304D\u3057","\u308C\u304D\u305F\u3099\u3044","\u308C\u3093\u3042\u3044","\u308C\u3093\u3051\u3044","\u308C\u3093\u3053\u3093","\u308C\u3093\u3055\u3044","\u308C\u3093\u3057\u3085\u3046","\u308C\u3093\u305D\u3099\u304F","\u308C\u3093\u3089\u304F","\u308D\u3046\u304B","\u308D\u3046\u3053\u3099","\u308D\u3046\u3057\u3099\u3093","\u308D\u3046\u305D\u304F","\u308D\u304F\u304B\u3099","\u308D\u3053\u3064","\u308D\u3057\u3099\u3046\u3089","\u308D\u3057\u3085\u3064","\u308D\u305B\u3093","\u308D\u3066\u3093","\u308D\u3081\u3093","\u308D\u308C\u3064","\u308D\u3093\u304D\u3099","\u308D\u3093\u306F\u309A","\u308D\u3093\u3075\u3099\u3093","\u308D\u3093\u308A","\u308F\u304B\u3059","\u308F\u304B\u3081","\u308F\u304B\u3084\u307E","\u308F\u304B\u308C\u308B","\u308F\u3057\u3064","\u308F\u3057\u3099\u307E\u3057","\u308F\u3059\u308C\u3082\u306E","\u308F\u3089\u3046","\u308F\u308C\u308B"];zC.exports=eY});var GC=T((oce,VC)=>{"use strict";g();var tY=["a\u0301baco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","accio\u0301n","aceite","acelga","acento","aceptar","a\u0301cido","aclarar","acne\u0301","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","ae\u0301reo","afectar","aficio\u0301n","afinar","afirmar","a\u0301gil","agitar","agoni\u0301a","agosto","agotar","agregar","agrio","agua","agudo","a\u0301guila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacra\u0301n","alambre","alarma","alba","a\u0301lbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodo\u0301n","aliado","aliento","alivio","alma","almeja","almi\u0301bar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","a\u0301mbar","a\u0301mbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","ande\u0301n","anemia","a\u0301ngulo","anillo","a\u0301nimo","ani\u0301s","anotar","antena","antiguo","antojo","anual","anular","anuncio","an\u0303adir","an\u0303ejo","an\u0303o","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","aran\u0303a","arar","a\u0301rbitro","a\u0301rbol","arbusto","archivo","arco","arder","ardilla","arduo","a\u0301rea","a\u0301rido","aries","armoni\u0301a","arne\u0301s","aroma","arpa","arpo\u0301n","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","a\u0301spero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","a\u0301tico","atleta","a\u0301tomo","atraer","atroz","atu\u0301n","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avio\u0301n","aviso","ayer","ayuda","ayuno","azafra\u0301n","azar","azote","azu\u0301car","azufre","azul","baba","babor","bache","bahi\u0301a","baile","bajar","balanza","balco\u0301n","balde","bambu\u0301","banco","banda","ban\u0303o","barba","barco","barniz","barro","ba\u0301scula","basto\u0301n","basura","batalla","bateri\u0301a","batir","batuta","bau\u0301l","bazar","bebe\u0301","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsa\u0301i","borde","borrar","bosque","bote","boti\u0301n","bo\u0301veda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufo\u0301n","bu\u0301ho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzo\u0301n","caballo","cabeza","cabina","cabra","cacao","cada\u0301ver","cadena","caer","cafe\u0301","cai\u0301da","caima\u0301n","caja","cajo\u0301n","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","ca\u0301ncer","candil","canela","canguro","canica","canto","can\u0303a","can\u0303o\u0301n","caoba","caos","capaz","capita\u0301n","capote","captar","capucha","cara","carbo\u0301n","ca\u0301rcel","careta","carga","carin\u0303o","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","ce\u0301lebre","celoso","ce\u0301lula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","ce\u0301sped","cetro","chacal","chaleco","champu\u0301","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclo\u0301n","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","cipre\u0301s","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","cli\u0301nica","cobre","coccio\u0301n","cochino","cocina","coco","co\u0301digo","codo","cofre","coger","cohete","coji\u0301n","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","co\u0301modo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazo\u0301n","corbata","corcho","cordo\u0301n","corona","correr","coser","cosmos","costa","cra\u0301neo","cra\u0301ter","crear","crecer","crei\u0301do","crema","cri\u0301a","crimen","cripta","crisis","cromo","cro\u0301nica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupo\u0301n","cu\u0301pula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","da\u0301til","deber","de\u0301bil","de\u0301cada","decir","dedo","defensa","definir","dejar","delfi\u0301n","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvi\u0301o","detalle","detener","deuda","di\u0301a","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difi\u0301cil","digno","dilema","diluir","dinero","directo","dirigir","disco","disen\u0303o","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","drago\u0301n","droga","ducha","duda","duelo","duen\u0303o","dulce","du\u0301o","duque","durar","dureza","duro","e\u0301bano","ebrio","echar","eco","ecuador","edad","edicio\u0301n","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","e\u0301lite","elixir","elogio","eludir","embudo","emitir","emocio\u0301n","empate","empen\u0303o","empleo","empresa","enano","encargo","enchufe","enci\u0301a","enemigo","enero","enfado","enfermo","engan\u0303o","enigma","enlace","enorme","enredo","ensayo","ensen\u0303ar","entero","entrar","envase","envi\u0301o","e\u0301poca","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espi\u0301a","esposa","espuma","esqui\u0301","estar","este","estilo","estufa","etapa","eterno","e\u0301tica","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","e\u0301xito","experto","explicar","exponer","extremo","fa\u0301brica","fa\u0301bula","fachada","fa\u0301cil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","farao\u0301n","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fe\u0301rtil","fervor","festi\u0301n","fiable","fianza","fiar","fibra","ficcio\u0301n","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flu\u0301or","fobia","foca","fogata","fogo\u0301n","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","fra\u0301gil","franja","frase","fraude","frei\u0301r","freno","fresa","fri\u0301o","frito","fruta","fuego","fuente","fuerza","fuga","fumar","funcio\u0301n","funda","furgo\u0301n","furia","fusil","fu\u0301tbol","futuro","gacela","gafas","gaita","gajo","gala","galeri\u0301a","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavila\u0301n","gemelo","gemir","gen","ge\u0301nero","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gra\u0301fico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","gru\u0301a","grueso","grumo","grupo","guante","guapo","guardia","guerra","gui\u0301a","guin\u0303o","guion","guiso","guitarra","gusano","gustar","haber","ha\u0301bil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazan\u0303a","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","he\u0301roe","hervir","hielo","hierro","hi\u0301gado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","hu\u0301medo","humilde","humo","hundir","huraca\u0301n","hurto","icono","ideal","idioma","i\u0301dolo","iglesia","iglu\u0301","igual","ilegal","ilusio\u0301n","imagen","ima\u0301n","imitar","impar","imperio","imponer","impulso","incapaz","i\u0301ndice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","intere\u0301s","i\u0301ntimo","intuir","inu\u0301til","invierno","ira","iris","ironi\u0301a","isla","islote","jabali\u0301","jabo\u0301n","jamo\u0301n","jarabe","jardi\u0301n","jarra","jaula","jazmi\u0301n","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","ju\u0301piter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladro\u0301n","lagarto","la\u0301grima","laguna","laico","lamer","la\u0301mina","la\u0301mpara","lana","lancha","langosta","lanza","la\u0301piz","largo","larva","la\u0301stima","lata","la\u0301tex","latir","laurel","lavar","lazo","leal","leccio\u0301n","leche","lector","leer","legio\u0301n","legumbre","lejano","lengua","lento","len\u0303a","leo\u0301n","leopardo","lesio\u0301n","letal","letra","leve","leyenda","libertad","libro","licor","li\u0301der","lidiar","lienzo","liga","ligero","lima","li\u0301mite","limo\u0301n","limpio","lince","lindo","li\u0301nea","lingote","lino","linterna","li\u0301quido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","locio\u0301n","loco","locura","lo\u0301gica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","mai\u0301z","maldad","maleta","malla","malo","mama\u0301","mambo","mamut","manco","mando","manejar","manga","maniqui\u0301","manjar","mano","manso","manta","man\u0303ana","mapa","ma\u0301quina","mar","marco","marea","marfil","margen","marido","ma\u0301rmol","marro\u0301n","martes","marzo","masa","ma\u0301scara","masivo","matar","materia","matiz","matriz","ma\u0301ximo","mayor","mazorca","mecha","medalla","medio","me\u0301dula","mejilla","mejor","melena","melo\u0301n","memoria","menor","mensaje","mente","menu\u0301","mercado","merengue","me\u0301rito","mes","meso\u0301n","meta","meter","me\u0301todo","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millo\u0301n","mimo","mina","minero","mi\u0301nimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","mocio\u0301n","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","mon\u0303o","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","mo\u0301vil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","mun\u0303eca","mural","muro","mu\u0301sculo","museo","musgo","mu\u0301sica","muslo","na\u0301car","nacio\u0301n","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","na\u0301usea","naval","nave","navidad","necio","ne\u0301ctar","negar","negocio","negro","neo\u0301n","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","nin\u0303ez","nin\u0303o","ni\u0301tido","nivel","nobleza","noche","no\u0301mina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","nu\u0301cleo","nudillo","nudo","nuera","nueve","nuez","nulo","nu\u0301mero","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","oce\u0301ano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oi\u0301do","oi\u0301r","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opcio\u0301n","o\u0301pera","opinar","oponer","optar","o\u0301ptica","opuesto","oracio\u0301n","orador","oral","o\u0301rbita","orca","orden","oreja","o\u0301rgano","orgi\u0301a","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadi\u0301a","oscuro","osezno","oso","ostra","oton\u0303o","otro","oveja","o\u0301vulo","o\u0301xido","oxi\u0301geno","oyente","ozono","pacto","padre","paella","pa\u0301gina","pago","pai\u0301s","pa\u0301jaro","palabra","palco","paleta","pa\u0301lido","palma","paloma","palpar","pan","panal","pa\u0301nico","pantera","pan\u0303uelo","papa\u0301","papel","papilla","paquete","parar","parcela","pared","parir","paro","pa\u0301rpado","parque","pa\u0301rrafo","parte","pasar","paseo","pasio\u0301n","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peato\u0301n","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldan\u0303o","pelea","peligro","pellejo","pelo","peluca","pena","pensar","pen\u0303o\u0301n","peo\u0301n","peor","pepino","pequen\u0303o","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pe\u0301simo","pestan\u0303a","pe\u0301talo","petro\u0301leo","pez","pezun\u0303a","picar","picho\u0301n","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","pin\u0303a","piojo","pipa","pirata","pisar","piscina","piso","pista","pito\u0301n","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesi\u0301a","poeta","polen","polici\u0301a","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porcio\u0301n","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","pri\u0301ncipe","prisio\u0301n","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","pro\u0301ximo","prueba","pu\u0301blico","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmo\u0301n","pulpo","pulso","puma","punto","pun\u0303al","pun\u0303o","pupa","pupila","pure\u0301","quedar","queja","quemar","querer","queso","quieto","qui\u0301mica","quince","quitar","ra\u0301bano","rabia","rabo","racio\u0301n","radical","rai\u0301z","rama","rampa","rancho","rango","rapaz","ra\u0301pido","rapto","rasgo","raspa","rato","rayo","raza","razo\u0301n","reaccio\u0301n","realidad","reban\u0303o","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refra\u0301n","refugio","regalo","regir","regla","regreso","rehe\u0301n","reino","rei\u0301r","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","reve\u0301s","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","ri\u0301gido","rigor","rinco\u0301n","rin\u0303o\u0301n","ri\u0301o","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubi\u0301","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sa\u0301bado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmo\u0301n","salo\u0301n","salsa","salto","salud","salvar","samba","sancio\u0301n","sandi\u0301a","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sarte\u0301n","sastre","sata\u0301n","sauna","saxofo\u0301n","seccio\u0301n","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","sen\u0303al","sen\u0303or","separar","sepia","sequi\u0301a","ser","serie","sermo\u0301n","servir","sesenta","sesio\u0301n","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","si\u0301laba","silbar","silencio","silla","si\u0301mbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","so\u0301lido","soltar","solucio\u0301n","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","soste\u0301n","so\u0301tano","suave","subir","suceso","sudor","suegra","suelo","suen\u0303o","suerte","sufrir","sujeto","sulta\u0301n","sumar","superar","suplir","suponer","supremo","sur","surco","suren\u0303o","surgir","susto","sutil","tabaco","tabique","tabla","tabu\u0301","taco","tacto","tajo","talar","talco","talento","talla","talo\u0301n","taman\u0303o","tambor","tango","tanque","tapa","tapete","tapia","tapo\u0301n","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazo\u0301n","teatro","techo","tecla","te\u0301cnica","tejado","tejer","tejido","tela","tele\u0301fono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teori\u0301a","terapia","terco","te\u0301rmino","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburo\u0301n","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","ti\u0301mido","timo","tinta","ti\u0301o","ti\u0301pico","tipo","tira","tiro\u0301n","tita\u0301n","ti\u0301tere","ti\u0301tulo","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","to\u0301rax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","to\u0301xico","trabajo","tractor","traer","tra\u0301fico","trago","traje","tramo","trance","trato","trauma","trazar","tre\u0301bol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tuberi\u0301a","tubo","tuerto","tumba","tumor","tu\u0301nel","tu\u0301nica","turbina","turismo","turno","tutor","ubicar","u\u0301lcera","umbral","unidad","unir","universo","uno","untar","un\u0303a","urbano","urbe","urgente","urna","usar","usuario","u\u0301til","utopi\u0301a","uva","vaca","vaci\u0301o","vacuna","vagar","vago","vaina","vajilla","vale","va\u0301lido","valle","valor","va\u0301lvula","vampiro","vara","variar","varo\u0301n","vaso","vecino","vector","vehi\u0301culo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vi\u0301a","viaje","vibrar","vicio","vi\u0301ctima","vida","vi\u0301deo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","vin\u0303edo","violi\u0301n","viral","virgo","virtud","visor","vi\u0301spera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volca\u0301n","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"];VC.exports=tY});var YC=T((sce,WC)=>{g();WC.exports={CHINESE:MC(),ENGLISH:HC(),FRENCH:UC(),ITALIAN:jC(),JAPANESE:KC(),SPANISH:GC()}});var JC=T((cce,XC)=>{"use strict";g();var rY=vh(),iY=Ke(),Zc=at(),nY=BC(),gw=CC(),ZC=pi(),oY=Le(),aY=Ki(),$C=Ie();function _h(e){return typeof e=="string"?e.normalize("NFKD"):""}var et=function(e,t){if(!(this instanceof et))return new et(e,t);Zc.isArray(e)&&(t=e,e=null);var r,i,n;if(f.Buffer.isBuffer(e))n=e;else if(Zc.isString(e))i=_h(e);else if(Zc.isNumber(e))r=e;else if(e)throw new ZC.InvalidArgument("data","Must be a Buffer, a string or an integer");if(r=r||128,t=t||et._getDictionary(i),i&&!t)throw new gw.UnknownWordlist(i);if(t=t||et.Words.ENGLISH,n&&(i=et._entropy2mnemonic(n,t)),i&&!et.isValid(i,t))throw new gw.InvalidMnemonic(i);if(r%32!==0||r<128)throw new ZC.InvalidArgument("ENT","Values must be ENT > 128 and ENT % 32 == 0");i=i||et._mnemonic(r,t),Object.defineProperty(this,"wordlist",{configurable:!1,value:t}),Object.defineProperty(this,"phrase",{configurable:!1,value:i})};et.fromRandom=function(e,t){if(Zc.isNumber(e)){var r=t;t=e,e=r}return e=e||et.Words.ENGLISH,t=t||128,new et(t,e)};et.fromString=function(e,t=et.Words.ENGLISH){return new et(e,t)};et.Words=YC();et.isValid=function(e,t){if(e=_h(e),t=t||et._getDictionary(e),!t)return!1;for(var r=e.split(" "),i="",n=0;n<r.length;n++){var o=t.indexOf(r[n]);if(o<0)return!1;i=i+("00000000000"+o.toString(2)).slice(-11)}var a=i.length/33,s=i.slice(-a),u=i.slice(0,i.length-a),c=f.Buffer.alloc(u.length/8);for(n=0;n<u.length/8;n++)c.writeUInt8(parseInt(i.slice(n*8,(n+1)*8),2),n);var l=et._entropyChecksum(c);return l===s};et._belongsToWordlist=function(e,t){for(var r=_h(e).split(" "),i=0;i<r.length;i++){var n=t.indexOf(r[i]);if(n<0)return!1}return!0};et._getDictionary=function(e){if(!e)return null;for(var t=Object.keys(et.Words),r=0;r<t.length;r++){var i=t[r];if(et._belongsToWordlist(e,et.Words[i]))return et.Words[i]}return null};et.prototype.toSeed=function(e){return e=e||"",nY(_h(this.phrase),_h("mnemonic"+e),2048,64)};et.fromSeed=function(e,t){return $C.checkArgument(f.Buffer.isBuffer(e),"seed must be a Buffer."),$C.checkArgument(Zc.isArray(t)||Zc.isString(t),"wordlist must be a string or an array."),new et(e,t)};et.prototype.toHDPrivateKey=function(e,t){var r=this.toSeed(e);return rY.fromSeed(r,t)};et.prototype.toString=function(){return this.phrase};et.prototype.inspect=function(){return"<Mnemonic: "+this.toString()+" >"};et._mnemonic=function(e,t){var r=aY.getRandomBuffer(e/8);return et._entropy2mnemonic(r,t)};et._entropy2mnemonic=function(e,t){for(var r="",i=0;i<e.length;i++)r=r+("00000000"+e[i].toString(2)).slice(-8);if(r=r+et._entropyChecksum(e),r.length%11!==0)throw new gw.InvalidEntropy(r);var n=[];for(i=0;i<r.length/11;i++){var o=parseInt(r.slice(i*11,(i+1)*11),2);n.push(t[o])}var a;return t===et.Words.JAPANESE?a=n.join("\u3000"):a=n.join(" "),a};et._entropyChecksum=function(e){for(var t=oY.sha256(e),r=e.length*8,i=r/32,n=new iY(t.toString("hex"),16).toString(2);n.length%256!==0;)n="0"+n;var o=n.slice(0,i);return o};Object.defineProperty(et,"bsv",{configurable:!0,enumerable:!0,get:function(){return Om()}});XC.exports=et});var mw=T((lce,QC)=>{g();QC.exports=JC()});function vw(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function sY(e,t=""){if(typeof e!="boolean")throw new TypeError(Im(t)+"expected boolean, got type="+typeof e);return e}function wh(e,t=""){if(typeof e!="number")throw new TypeError(Im(t)+"expected number, got "+typeof e);if(!Number.isSafeInteger(e)||e<0)throw new RangeError(Im(t)+"expected integer >= 0, got "+e);return e}function He(e,t,r=""){if(vw(e)&&(t===void 0||e.length===t))return e;t!==void 0&&wh(t,"length");let i=vw(e),n=t!==void 0?` of length ${t}`:"",o=i?`length=${e.length}`:`type=${typeof e}`,a=Im(r)+"expected Uint8Array"+n+", got "+o;throw i?new RangeError(a):new TypeError(a)}function us(e,t=!0){if(e.destroyed)throw new Error("hash was destroyed");if(t&&e.finished)throw new Error("digest() was already called")}function uY(e,t){He(e,void 0,"output");let r=t.outputLen;if(!(e.length>=r))throw new RangeError('"output" expected length >= '+r)}function Sh(e,t){if(uY(e,t),!ri(e))throw new Error("invalid output, must be aligned")}function Am(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function Ve(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function ot(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function $c(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function pu(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function cY(e){for(let t=0;t<e.length;t++)e[t]=pu(e[t]);return e}function yw(e,t){return!e.byteLength||!t.byteLength?!1:e.buffer===t.buffer&&e.byteOffset<t.byteOffset+t.byteLength&&t.byteOffset<e.byteOffset+e.byteLength}function Tm(e,t){if(yw(e,t)&&e.byteOffset<t.byteOffset)throw new Error("complex overlap of input and output is not supported")}function bw(...e){let t=0;for(let i=0;i<e.length;i++){let n=e[i];He(n),t+=n.length}let r=new Uint8Array(t);for(let i=0,n=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function Eh(e,t){if(e=He(e),t=He(t),e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}function xh(e,t,r){let i=t,n=r||(()=>[]),o=(s,u)=>i(u,...n(s)).update(s).digest(),a=i(new Uint8Array(e),...n(new Uint8Array(0)));return o.outputLen=a.outputLen,o.blockLen=a.blockLen,o.create=(s,...u)=>i(s,...u),o}function Xc(e,t,r=!0){if(t===void 0)return new Uint8Array(e);if(He(t,e,"output"),r&&!ri(t))throw new Error("invalid output, must be aligned");return t}function eL(e,t,r){wh(e),wh(t),sY(r);let i=new Uint8Array(16),n=$c(i);return n.setBigUint64(0,BigInt(t),r),n.setBigUint64(8,BigInt(e),r),i}function ri(e){return e.byteOffset%4===0}function Zt(e){return Uint8Array.from(He(e))}var Im,yi,Fe,Ge,So,_w=Dr(()=>{g();Im=e=>e?`"${e}" `:"";yi=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Fe=yi?e=>e:e=>pu(e)>>>0;Ge=yi?e=>e:cY;So=(e,t)=>{function r(i,...n){if(He(i,void 0,"key"),e.nonceLength!==void 0){let p=n[0];He(p,e.varSizeNonce?void 0:e.nonceLength,"nonce")}let o=e.tagLength,a=e.nonceLength!==void 0?1:0;if(!e.withAAD){for(let p=a;p<n.length;p++)if(vw(n[p]))throw new Error("AAD not supported")}e.withAAD&&n[a]!==void 0&&He(n[a],void 0,"AAD");let s=t(i,...n),u=(p,d)=>{if(d!==void 0){if(p!==2)throw new Error("cipher output not supported");He(d,void 0,"output")}},c=!1;return{encrypt(p,d){if(c)throw new Error("cannot encrypt() twice with same key + nonce");return c=!0,He(p,void 0,"data"),u(s.encrypt.length,d),s.encrypt(p,d)},decrypt(p,d){if(He(p,void 0,"data"),o&&p.length<o)throw new Error('"ciphertext" expected length >= tagLength='+o);return u(s.decrypt.length,d),s.decrypt(p,d)}}}return Object.assign(r,e),r}});function hY(e){e.reverse();let t=e[15]&1,r=0;for(let i=0;i<e.length;i++){let n=e[i];e[i]=n>>>1|r,r=(n&1)<<7}return e[0]^=-t&225,e}var Eo,Sw,xo,fY,lY,Oh,cs,dY,Pm,ww,Ew,tL,rL=Dr(()=>{g();_w();Eo=16,Sw=new Uint8Array(16),xo=Ve(Sw),fY=225,lY=(e,t,r,i)=>{let n=i&1;return{s3:r<<31|i>>>1,s2:t<<31|r>>>1,s1:e<<31|t>>>1,s0:e>>>1^fY<<24&-(n&1)}},Oh=e=>(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255|0,cs=e=>Fe(Oh(e));dY=e=>e>64*1024?8:e>1024?4:2,Pm=class{constructor(t,r){ee(this,"blockLen",Eo);ee(this,"outputLen",Eo);ee(this,"s0",0);ee(this,"s1",0);ee(this,"s2",0);ee(this,"s3",0);ee(this,"finished",!1);ee(this,"destroyed",!1);ee(this,"t");ee(this,"W");ee(this,"windowSize");He(t,16,"key"),t=Zt(t);let i=$c(t),n=i.getUint32(0,!1),o=i.getUint32(4,!1),a=i.getUint32(8,!1),s=i.getUint32(12,!1),u=[];for(let _=0;_<128;_++)u.push({s0:Oh(n),s1:Oh(o),s2:Oh(a),s3:Oh(s)}),{s0:n,s1:o,s2:a,s3:s}=lY(n,o,a,s);let c=dY(r||1024);if(![1,2,4,8].includes(c))throw new Error("ghash: invalid window size, expected 2, 4 or 8");this.W=c;let p=128/c,d=this.windowSize=2**c,v=[];for(let _=0;_<p;_++)for(let I=0;I<d;I++){let R=0,k=0,q=0,z=0;for(let A=0;A<c;A++){if(!(I>>>c-A-1&1))continue;let{s0:M,s1:F,s2:V,s3:Y}=u[c*_+A];R^=M,k^=F,q^=V,z^=Y}v.push({s0:R,s1:k,s2:q,s3:z})}this.t=v}_updateBlock(t,r,i,n){t^=this.s0,r^=this.s1,i^=this.s2,n^=this.s3;let{W:o,t:a,windowSize:s}=this,u=0,c=0,l=0,p=0,d=(1<<o)-1,v=0;for(let _ of[t,r,i,n])for(let I=0;I<4;I++){let R=_>>>8*I&255;for(let k=8/o-1;k>=0;k--){let q=R>>>o*k&d,{s0:z,s1:A,s2:B,s3:M}=a[v*s+q];u^=z,c^=A,l^=B,p^=M,v+=1}}this.s0=u,this.s1=c,this.s2=l,this.s3=p}update(t){us(this),He(t),t=Zt(t);let r=Ve(t),i=Math.floor(t.length/Eo),n=t.length%Eo;for(let o=0;o<i;o++)this._updateBlock(Fe(r[o*4+0]),Fe(r[o*4+1]),Fe(r[o*4+2]),Fe(r[o*4+3]));return n&&(Sw.set(t.subarray(i*Eo)),this._updateBlock(Fe(xo[0]),Fe(xo[1]),Fe(xo[2]),Fe(xo[3])),ot(xo)),this}destroy(){this.destroyed=!0;let{t}=this;for(let r of t)r.s0=0,r.s1=0,r.s2=0,r.s3=0}digestInto(t){us(this),Sh(t,this),this.finished=!0;let{s0:r,s1:i,s2:n,s3:o}=this,a=Ve(t);a[0]=r,a[1]=i,a[2]=n,a[3]=o,yi||Ge(a.subarray(0,Eo/4))}digest(){let t=new Uint8Array(Eo);return this.digestInto(t),this.destroy(),t}},ww=class extends Pm{constructor(t,r){He(t);let i=hY(Zt(t));super(i,r),ot(i)}update(t){us(this),He(t),t=Zt(t);let r=Ve(t),i=t.length%Eo,n=Math.floor(t.length/Eo);for(let o=0;o<n;o++)this._updateBlock(cs(r[o*4+3]),cs(r[o*4+2]),cs(r[o*4+1]),cs(r[o*4+0]));return i&&(Sw.set(t.subarray(n*Eo)),this._updateBlock(cs(xo[3]),cs(xo[2]),cs(xo[1]),cs(xo[0])),ot(xo)),this}digestInto(t){us(this),Sh(t,this),this.finished=!0;let r=t.subarray(0,this.outputLen),{s0:i,s1:n,s2:o,s3:a}=this,s=Ve(r);s[0]=i,s[1]=n,s[2]=o,s[3]=a,Ge(s),r.reverse()}},Ew=xh(16,(e,t)=>new Pm(e,t),e=>[e.length]),tL=xh(16,(e,t)=>new ww(e,t),e=>[e.length])});var Bw={};Hf(Bw,{__TESTS:()=>kY,aeskw:()=>xY,aeskwp:()=>OY,aessiv:()=>PY,cbc:()=>_Y,cfb:()=>wY,cmac:()=>Ah,ctr:()=>tf,ecb:()=>bY,gcm:()=>SY,gcmsiv:()=>EY,rngAesCtrDrbg128:()=>IY,rngAesCtrDrbg256:()=>AY,siv:()=>TY,unsafe:()=>RY});function Nm(e){if(![16,24,32].includes(e.length))throw new Error('"aes key" expected Uint8Array of length 16/24/32, got length='+e.length)}function Rw(e){return e<<1^gY&-(e>>7)}function Jc(e,t){let r=0;for(;t>0;t>>=1)r^=e&-(t&1),e=Rw(e);return r}function oL(e,t){if(e.length!==256)throw new Error("wrong sbox length");let r=new Uint32Array(256).map((c,l)=>t(e[l])),i=r.map(xw),n=i.map(xw),o=n.map(xw),a=new Uint32Array(256*256),s=new Uint32Array(256*256),u=new Uint16Array(256*256);for(let c=0;c<256;c++)for(let l=0;l<256;l++){let p=c*256+l;a[p]=r[c]^i[l],s[p]=n[c]^o[l],u[p]=e[c]<<8|e[l]}return{sbox:e,sbox2:u,T0:r,T1:i,T2:n,T3:o,T01:a,T23:s}}function Fn(e){He(e);let t=e.length;Nm(e);let{sbox2:r}=kw,i=[];(!yi||!ri(e))&&i.push(e=Zt(e));let n=Ge(Ve(e)),o=n.length,a=u=>Oo(r,u,u,u,u),s=new Uint32Array(t+28);s.set(n);for(let u=o;u<s.length;u++){let c=s[u-1];u%o===0?c=a(vY(c))^yY[u/o-1]:o>6&&u%o===4&&(c=a(c)),s[u]=s[u-o]^c}return ot(...i),s}function Cm(e){let t=Fn(e),r=t.slice(),i=t.length,{sbox2:n}=kw,{T0:o,T1:a,T2:s,T3:u}=aL;for(let c=0;c<i;c+=4)for(let l=0;l<4;l++)r[c+l]=t[i-c-4+l];ot(t);for(let c=4;c<i-4;c++){let l=r[c],p=Oo(n,l,l,l,l);r[c]=o[p&255]^a[p>>>8&255]^s[p>>>16&255]^u[p>>>24]}return r}function fs(e,t,r,i,n,o){return e[r<<8&65280|i>>>8&255]^t[n>>>8&65280|o>>>24&255]}function Oo(e,t,r,i,n){return e[t&255|r&65280]|e[i>>>16&255|n>>>16&65280]<<16}function bi(e,t,r,i,n){let{sbox2:o,T01:a,T23:s}=kw,u=0;t^=e[u++],r^=e[u++],i^=e[u++],n^=e[u++];let c=e.length/4-2;for(let _=0;_<c;_++){let I=e[u++]^fs(a,s,t,r,i,n),R=e[u++]^fs(a,s,r,i,n,t),k=e[u++]^fs(a,s,i,n,t,r),q=e[u++]^fs(a,s,n,t,r,i);t=I,r=R,i=k,n=q}let l=e[u++]^Oo(o,t,r,i,n),p=e[u++]^Oo(o,r,i,n,t),d=e[u++]^Oo(o,i,n,t,r),v=e[u++]^Oo(o,n,t,r,i);return{s0:l,s1:p,s2:d,s3:v}}function Ph(e,t,r,i,n){let{sbox2:o,T01:a,T23:s}=aL,u=0;t^=e[u++],r^=e[u++],i^=e[u++],n^=e[u++];let c=e.length/4-2;for(let _=0;_<c;_++){let I=e[u++]^fs(a,s,t,n,i,r),R=e[u++]^fs(a,s,r,t,n,i),k=e[u++]^fs(a,s,i,r,t,n),q=e[u++]^fs(a,s,n,i,r,t);t=I,r=R,i=k,n=q}let l=e[u++]^Oo(o,t,n,i,r),p=e[u++]^Oo(o,r,t,n,i),d=e[u++]^Oo(o,i,r,t,n),v=e[u++]^Oo(o,n,i,r,t);return{s0:l,s1:p,s2:d,s3:v}}function sL(e,t,r,i){He(t,ft,"nonce"),He(r);let n=r.length;i=Xc(n,i),Tm(r,i);let o=t,a=Ve(o),s=Ve(r),u=Ve(i);for(let l=0;l+4<=s.length;l+=4){let{s0:p,s1:d,s2:v,s3:_}=bi(e,Fe(a[0]),Fe(a[1]),Fe(a[2]),Fe(a[3]));u[l+0]=s[l+0]^Fe(p),u[l+1]=s[l+1]^Fe(d),u[l+2]=s[l+2]^Fe(v),u[l+3]=s[l+3]^Fe(_);for(let I=ft-1,R=1;I>=0;I--)R=R+o[I]|0,o[I]=R&255,R>>>=8}let c=ft*Math.floor(s.length/Pw);if(c<n){let{s0:l,s1:p,s2:d,s3:v}=bi(e,Fe(a[0]),Fe(a[1]),Fe(a[2]),Fe(a[3])),_=new Uint32Array([l,p,d,v]);Ge(_);let I=Am(_);for(let R=c,k=0;R<n;R++,k++)i[R]=r[R]^I[k];ot(_)}return i}function Qc(e,t,r,i,n){He(r,ft,"nonce"),He(i),n=Xc(i.length,n);let o=r,a=Ve(o),s=$c(o),u=Ve(i),c=Ve(n),l=t?0:12,p=i.length,d=s.getUint32(l,t);for(let _=0;_+4<=u.length;_+=4){let{s0:I,s1:R,s2:k,s3:q}=bi(e,Fe(a[0]),Fe(a[1]),Fe(a[2]),Fe(a[3]));c[_+0]=u[_+0]^Fe(I),c[_+1]=u[_+1]^Fe(R),c[_+2]=u[_+2]^Fe(k),c[_+3]=u[_+3]^Fe(q),d=d+1>>>0,s.setUint32(l,d,t)}let v=ft*Math.floor(u.length/Pw);if(v<p){let{s0:_,s1:I,s2:R,s3:k}=bi(e,Fe(a[0]),Fe(a[1]),Fe(a[2]),Fe(a[3])),q=new Uint32Array([_,I,R,k]);Ge(q);let z=Am(q);for(let A=v,B=0;A<p;A++,B++)n[A]=i[A]^z[B];ot(q)}return n}function uL(e,t){if(He(e),e.length%ft!==0)throw new Error("ciphertext must be multiple of "+ft);t!==void 0&&(Xc(e.length,t),Tm(e,t))}function cL(e,t,r){He(e);let i=e.length,n=i%ft;if(!t&&n!==0)throw new Error("plaintext must be multiple of "+ft);if(t){let o=ft-n;o||(o=ft),i=i+o}return r!==void 0&&(Xc(i,r),Tm(e,r)),i}function fL(e,t,r){r===void 0&&(r=new Uint8Array(t)),(!yi||!ri(e))&&(e=Zt(e));let i=Ve(r);return{b:e,o:i,out:r}}function lL(e,t){if(!t)return e;let r=e.length;if(r===0)throw new Error("pkcs7: empty ciphertext not allowed");let i=e[r-1],n=1;n&=i-1>>>31^1,n&=16-i>>>31^1;for(let o=0;o<16;o++){let a=o-i>>>31,s=(e[r-1-o]^i)===0?1:0;n&=s|a^1}if(!n)throw new Error("aes: bad decrypt");return e.subarray(0,r-i)}function hL(e){let t=new Uint8Array(16),r=Ve(t);t.set(e);let i=ft-e.length;for(let n=ft-i;n<ft;n++)t[n]=i;return r}function dL(e,t,r,i,n){let o=n?n.length:0,a=e.create(r,i.length+o);n&&a.update(n);let s=eL(8*i.length,8*o,t);a.update(i),a.update(s);let u=a.digest();return ot(s),u}function pL(e){return e instanceof Uint32Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint32Array"}function km(e,t){if(He(t,16,"block"),!pL(e))throw new Error("_encryptBlock accepts result of expandKeyLE");let r=Ve(t);Ge(r);let{s0:i,s1:n,s2:o,s3:a}=bi(e,r[0],r[1],r[2],r[3]);return r[0]=i,r[1]=n,r[2]=o,r[3]=a,Ge(r),t}function gL(e,t){if(He(t,16,"block"),!pL(e))throw new Error("_decryptBlock accepts result of expandKeyLE");let r=Ve(t);Ge(r);let{s0:i,s1:n,s2:o,s3:a}=Ph(e,r[0],r[1],r[2],r[3]);return r[0]=i,r[1]=n,r[2]=o,r[3]=a,Ge(r),t}function Th(e){let t=0;for(let r=ft-1;r>=0;r--){let i=(e[r]&128)>>>7;e[r]=e[r]<<1|t,t=i}return e[ft-1]^=135&-t,e}function rf(e,t){if(e.length!==t.length)throw new Error("xorBlock: blocks must have same length");for(let r=0;r<e.length;r++)e[r]=e[r]^t[r];return e}function vL(e,t){if(t.length>e.length)throw new Error("xorend: expected len(B) <= len(A)");let r=e.length-t.length;for(let i=0;i<t.length;i++)e[r+i]=e[r+i]^t[i];return e}function Tw(e,t){Nm(e);let r=t.length;if(r>127)throw new Error("s2v: expected <= 127 inputs");if(r===0)return Ah(pY,e);let i=Ah(Ih,e);for(let s=0;s<r-1;s++){Th(i);let u=Ah(t[s],e);rf(i,u),ot(u)}let n=t[r-1];He(n);let o;if(n.byteLength>=ft)o=vL(Uint8Array.from(n),i);else{let s=new Uint8Array(ft);s.set(n),s[n.length]=128,o=rf(Th(i),s),ot(s)}let a=Ah(o,e);return ot(i,o),a}var ft,Pw,Ih,pY,gY,Rm,Ow,mY,vY,xw,kw,aL,yY,tf,bY,_Y,wY,SY,ef,EY,Bm,iL,xY,nL,OY,Iw,mL,IY,AY,Aw,Ah,TY,PY,RY,kY,Nw=Dr(()=>{g();rL();_w();ft=16,Pw=4,Ih=new Uint8Array(ft),pY=Uint8Array.from([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]),gY=283;Rm=(e,t,r=1)=>{if(!Number.isSafeInteger(r)||r<0||r>4294967040)throw new Error("incBytes: wrong carry "+r);He(e);for(let i=0;i<e.length;i++){let n=t?i:e.length-1-i;r=r+(e[n]&255)|0,e[n]=r&255,r>>>=8}},Ow=(()=>{let e=new Uint8Array(256);for(let r=0,i=1;r<256;r++,i^=Rw(i))e[r]=i;let t=new Uint8Array(256);t[0]=99;for(let r=0;r<255;r++){let i=e[255-r];i|=i<<8,t[e[r]]=(i^i>>4^i>>5^i>>6^i>>7^99)&255}return ot(e),t})(),mY=Ow.map((e,t)=>Ow.indexOf(t)),vY=e=>e<<24|e>>>8,xw=e=>e<<8|e>>>24;kw=oL(Ow,e=>Jc(e,3)<<24|e<<16|e<<8|Jc(e,2)),aL=oL(mY,e=>Jc(e,11)<<24|Jc(e,13)<<16|Jc(e,9)<<8|Jc(e,14)),yY=(()=>{let e=new Uint8Array(16);for(let t=0,r=1;t<16;t++,r=Rw(r))e[t]=r;return e})();tf=So({blockSize:16,nonceLength:16},function(t,r){function i(n,o){if(He(n),o!==void 0&&(He(o),!ri(o)))throw new Error("unaligned destination");let a=Fn(t),s=Zt(r),u=[a,s];ri(n)||u.push(n=Zt(n));let c=sL(a,s,n,o);return ot(...u),c}return{encrypt:(n,o)=>i(n,o),decrypt:(n,o)=>i(n,o)}});bY=So({blockSize:16},function(t,r={}){let i=!r.disablePadding;return{encrypt(n,o){let a=cL(n,i,o),s=Fn(t),{b:u,o:c,out:l}=fL(n,a,o),p=Ve(u);Ge(p);let d=0;for(;d+4<=p.length;){let{s0:v,s1:_,s2:I,s3:R}=bi(s,p[d+0],p[d+1],p[d+2],p[d+3]);c[d++]=v,c[d++]=_,c[d++]=I,c[d++]=R}if(i){let v=hL(n.subarray(d*4));Ge(v);let{s0:_,s1:I,s2:R,s3:k}=bi(s,v[0],v[1],v[2],v[3]);c[d++]=_,c[d++]=I,c[d++]=R,c[d++]=k,ot(v)}return Ge(c),ot(s),u!==n&&ot(u),l},decrypt(n,o){uL(n,o);let a=Cm(t);o===void 0&&(o=new Uint8Array(n.length));let s=[a];(!yi||!ri(n))&&s.push(n=Zt(n));let u=Ve(n),c=Ve(o);Ge(u);for(let l=0;l+4<=u.length;){let{s0:p,s1:d,s2:v,s3:_}=Ph(a,u[l+0],u[l+1],u[l+2],u[l+3]);c[l++]=p,c[l++]=d,c[l++]=v,c[l++]=_}return Ge(c),ot(...s),lL(o,i)}}}),_Y=So({blockSize:16,nonceLength:16},function(t,r,i={}){let n=!i.disablePadding;return{encrypt(o,a){let s=cL(o,n,a),u=Fn(t),{b:c,o:l,out:p}=fL(o,s,a),d=Ve(c);Ge(d);let v=r,_=[u];(!yi||!ri(v))&&_.push(v=Zt(v));let I=Ve(v);Ge(I);let R=I[0],k=I[1],q=I[2],z=I[3],A=0;for(;A+4<=d.length;)R^=d[A+0],k^=d[A+1],q^=d[A+2],z^=d[A+3],{s0:R,s1:k,s2:q,s3:z}=bi(u,R,k,q,z),l[A++]=R,l[A++]=k,l[A++]=q,l[A++]=z;if(n){let B=hL(o.subarray(A*4));Ge(B),R^=B[0],k^=B[1],q^=B[2],z^=B[3],{s0:R,s1:k,s2:q,s3:z}=bi(u,R,k,q,z),l[A++]=R,l[A++]=k,l[A++]=q,l[A++]=z,ot(B)}return Ge(l),ot(..._),c!==o&&ot(c),p},decrypt(o,a){uL(o,a);let s=Cm(t);a===void 0&&(a=new Uint8Array(o.length));let u=r,c=[s];(!yi||!ri(u))&&c.push(u=Zt(u));let l=Ve(u);Ge(l),(!yi||!ri(o))&&c.push(o=Zt(o));let p=Ve(o),d=Ve(a);Ge(p);let v=l[0],_=l[1],I=l[2],R=l[3];for(let k=0;k+4<=p.length;){let q=v,z=_,A=I,B=R;v=p[k+0],_=p[k+1],I=p[k+2],R=p[k+3];let{s0:M,s1:F,s2:V,s3:Y}=Ph(s,v,_,I,R);d[k++]=M^q,d[k++]=F^z,d[k++]=V^A,d[k++]=Y^B}return Ge(d),ot(...c),lL(a,n)}}}),wY=So({blockSize:16,nonceLength:16},function(t,r){function i(n,o,a){He(n);let s=n.length;if(a=Xc(s,a),yw(n,a))throw new Error("overlapping src and dst not supported");let u=Fn(t),c=r,l=[u];(!yi||!ri(c))&&l.push(c=Zt(c)),(!yi||!ri(n))&&l.push(n=Zt(n));let p=Ve(n),d=Ve(a),v=o?d:p,_=Ve(c);Ge(p),Ge(_);let I=_[0],R=_[1],k=_[2],q=_[3];for(let A=0;A+4<=p.length;){let{s0:B,s1:M,s2:F,s3:V}=bi(u,I,R,k,q);d[A+0]=p[A+0]^B,d[A+1]=p[A+1]^M,d[A+2]=p[A+2]^F,d[A+3]=p[A+3]^V,I=v[A++],R=v[A++],k=v[A++],q=v[A++]}let z=ft*Math.floor(p.length/Pw);if(z<s){yi||Ge(p.subarray(z/4)),{s0:I,s1:R,s2:k,s3:q}=bi(u,I,R,k,q);let A=new Uint32Array([I,R,k,q]);Ge(A);let B=Am(A);for(let M=z,F=0;M<s;M++,F++)a[M]=n[M]^B[F];ot(B)}return yi||Ge(d.subarray(0,z/4)),ot(...l),a}return{encrypt:(n,o)=>i(n,!0,o),decrypt:(n,o)=>i(n,!1,o)}});SY=So({blockSize:16,nonceLength:12,tagLength:16,withAAD:!0,varSizeNonce:!0},function(t,r,i){if(r.length<8)throw new Error("aes/gcm: invalid nonce length");let n=16;function o(s,u,c){let l=dL(Ew,!1,s,c,i);for(let p=0;p<u.length;p++)l[p]^=u[p];return l}function a(){let s=Fn(t),u=Ih.slice(),c=Ih.slice();if(Qc(s,!1,c,c,u),r.length===12)c.set(r);else{let p=Ih.slice();$c(p).setBigUint64(8,BigInt(r.length*8),!1);let v=Ew.create(u).update(r).update(p);v.digestInto(c),v.destroy()}let l=Qc(s,!1,c,Ih);return{xk:s,authKey:u,counter:c,tagMask:l}}return{encrypt(s){let{xk:u,authKey:c,counter:l,tagMask:p}=a(),d=new Uint8Array(s.length+n),v=[u,c,l,p];ri(s)||v.push(s=Zt(s)),Qc(u,!1,l,s,d.subarray(0,s.length));let _=o(c,p,d.subarray(0,d.length-n));return v.push(_),d.set(_,s.length),ot(...v),d},decrypt(s){let{xk:u,authKey:c,counter:l,tagMask:p}=a(),d=[u,c,p,l];ri(s)||d.push(s=Zt(s));let v=s.subarray(0,-n),_=s.subarray(-n),I=o(c,p,v);if(d.push(I),!Eh(I,_))throw ot(...d),new Error("aes-gcm: invalid tag");let R=Qc(u,!1,l,v);return ot(...d),R}}}),ef=(e,t,r)=>i=>{if(!Number.isSafeInteger(i)||t>i||i>r){let n="["+t+".."+r+"]";throw new Error(""+e+": expected value in range "+n+", got "+i)}},EY=So({blockSize:16,nonceLength:12,tagLength:16,withAAD:!0,varSizeNonce:!0},function(t,r,i){let o=ef("AAD",0,68719476736),a=ef("plaintext",0,2**36),s=ef("nonce",12,12),u=ef("ciphertext",16,2**36+16);He(t),Nm(t),s(r.length),i!==void 0&&o(i.length);function c(){let d=Fn(t),v=new Uint8Array(t.length),_=new Uint8Array(16),I=[d,v],R=r;(!yi||!ri(R))&&I.push(R=Zt(R));let k=Ve(R);Ge(k);let q=0,z=k[0],A=k[1],B=k[2],M=0;for(let V of[_,v].map(Ve)){let Y=Ve(V);for(let E=0;E<Y.length;E+=2){let{s0:h,s1:y}=bi(d,q,z,A,B);Y[E+0]=h,Y[E+1]=y,q=++M}Ge(Y)}let F={authKey:_,encKey:Fn(v)};return ot(...I),F}function l(d,v,_){let I=dL(tL,!0,v,_,i);for(let B=0;B<12;B++)I[B]^=r[B];I[15]&=127;let R=Ve(I);Ge(R);let k=R[0],q=R[1],z=R[2],A=R[3];return{s0:k,s1:q,s2:z,s3:A}=bi(d,k,q,z,A),R[0]=k,R[1]=q,R[2]=z,R[3]=A,Ge(R),I}function p(d,v,_){let I=Zt(v);I[15]|=128;let R=Qc(d,!0,I,_);return ot(I),R}return{encrypt(d){a(d.length);let{encKey:v,authKey:_}=c(),I=l(v,_,d),R=[v,_,I];ri(d)||R.push(d=Zt(d));let k=new Uint8Array(d.length+16);return k.set(I,d.length),k.set(p(v,I,d)),ot(...R),k},decrypt(d){u(d.length);let v=d.subarray(-16),{encKey:_,authKey:I}=c(),R=[_,I];ri(d)||R.push(d=Zt(d));let k=p(_,v,d.subarray(0,-16)),q=l(_,I,k);if(R.push(q),!Eh(v,q))throw ot(k,...R),new Error("invalid polyval tag");return ot(...R),k}}});Bm={encrypt(e,t){if(t.length>=2**32)throw new Error("plaintext should be less than 4gb");let r=Fn(e);if(t.length===16)km(r,t);else{let i=Ve(t);Ge(i);let n=i[0],o=i[1];for(let a=0,s=1;a<6;a++)for(let u=2;u<i.length;u+=2,s++){let{s0:c,s1:l,s2:p,s3:d}=bi(r,n,o,i[u],i[u+1]);n=c,o=l^pu(s),i[u]=p,i[u+1]=d}i[0]=n,i[1]=o,Ge(i)}r.fill(0)},decrypt(e,t){if(t.length-8>=2**32)throw new Error("ciphertext should be less than 4gb");let r=Cm(e),i=t.length/8-1;if(i===1)gL(r,t);else{let n=Ve(t);Ge(n);let o=n[0],a=n[1];for(let s=0,u=i*6;s<6;s++)for(let c=i*2;c>=1;c-=2,u--){a^=pu(u);let{s0:l,s1:p,s2:d,s3:v}=Ph(r,o,a,n[c],n[c+1]);o=l,a=p,n[c]=d,n[c+1]=v}n[0]=o,n[1]=a,Ge(n)}r.fill(0)}},iL=new Uint8Array(8).fill(166),xY=So({blockSize:8},e=>({encrypt(t){if(!t.length||t.length%8!==0)throw new Error("invalid plaintext length");if(t.length===8)throw new Error("8-byte keys not allowed, use AESKWP");let r=bw(iL,t);return Bm.encrypt(e,r),r},decrypt(t){if(t.length%8!==0||t.length<24)throw new Error("invalid ciphertext length");let r=Zt(t);if(Bm.decrypt(e,r),!Eh(r.subarray(0,8),iL))throw new Error("integrity check failed");return r.subarray(0,8).fill(0),r.subarray(8)}})),nL=2790873510,OY=So({blockSize:8},e=>({encrypt(t){if(!t.length)throw new Error("invalid plaintext length");let r=Math.ceil(t.length/8)*8,i=new Uint8Array(8+r);i.set(t,8);let n=Ve(i);return n[0]=Fe(nL),n[1]=Fe(pu(t.length)),Bm.encrypt(e,i),i},decrypt(t){if(t.length<16)throw new Error("invalid ciphertext length");let r=Zt(t),i=Ve(r);Bm.decrypt(e,r);let n=pu(Fe(i[1]))>>>0,o=Math.ceil(n/8)*8;if(Fe(i[0])!==nL||r.length-8!==o)throw new Error("integrity check failed");for(let a=n;a<o;a++)if(r[8+a]!==0)throw new Error("integrity check failed");return r.subarray(0,8).fill(0),r.subarray(8,8+n)}})),Iw=class{constructor(t,r,i){ee(this,"blockLen");ee(this,"key");ee(this,"nonce");ee(this,"state");ee(this,"reseedCnt");ee(this,"destroyed",!1);this.blockLen=tf.blockSize;let n=t/8,o=16;this.state=new Uint8Array(n+o),this.key=this.state.subarray(0,n),this.nonce=this.state.subarray(n,n+o),this.reseedCnt=1,Rm(this.nonce,!1,1),this.addEntropy(r,i)}update(t){if(tf(this.key,this.nonce).encrypt(new Uint8Array(this.state.length),this.state),t){He(t);for(let r=0;r<t.length;r++)this.state[r]^=t[r]}Rm(this.nonce,!1,1)}addEntropy(t,r){if(this.destroyed)throw new Error("cannot use destroyed DRBG");He(t,this.state.length,"seed");let i=t.slice();if(r){if(He(r),r.length>i.length)throw new Error("info length is too big");for(let n=0;n<r.length;n++)i[n]^=r[n]}this.update(i),i.fill(0),this.reseedCnt=1}randomBytes(t,r){if(this.destroyed)throw new Error("cannot use destroyed DRBG");if(wh(t),t>2**16)throw new Error("requested output is too big");if(this.reseedCnt>2**48)throw new Error("entropy exhausted");if(r){if(He(r),r.length>this.state.length)throw new Error("info length is too big");this.update(r)}let i=new Uint8Array(t);return tf(this.key,this.nonce).encrypt(i,i),Rm(this.nonce,!1,Math.ceil(t/this.blockLen)),this.update(r),this.reseedCnt++,i}clean(){this.state.fill(0),this.reseedCnt=0,this.destroyed=!0}},mL=e=>(t,r=void 0)=>new Iw(e,t,r),IY=mL(128),AY=mL(256);Aw=class{constructor(t){ee(this,"blockLen",ft);ee(this,"outputLen",ft);ee(this,"buffer");ee(this,"pos");ee(this,"finished");ee(this,"destroyed");ee(this,"k1");ee(this,"k2");ee(this,"x");ee(this,"x32");ee(this,"xk");He(t),Nm(t),this.xk=Fn(t),this.buffer=new Uint8Array(ft),this.pos=0,this.finished=!1,this.destroyed=!1,this.x=new Uint8Array(ft),this.x32=Ve(this.x);let r=new Uint8Array(ft);km(this.xk,r),this.k1=Th(r),this.k2=Th(new Uint8Array(this.k1))}process(t,r){let{x:i,x32:n,xk:o}=this;for(let l=0;l<ft;l++)i[l]^=t[r+l];Ge(n);let{s0:a,s1:s,s2:u,s3:c}=bi(o,n[0],n[1],n[2],n[3]);n[0]=a,n[1]=s,n[2]=u,n[3]=c,Ge(n)}update(t){us(this),He(t);let r=0;if(this.pos){let i=Math.min(ft-this.pos,t.length);this.buffer.set(t.subarray(0,i),this.pos),this.pos+=i,r=i,this.pos===ft&&r<t.length&&(this.process(this.buffer,0),this.pos=0)}for(;r+ft<t.length;)this.process(t,r),r+=ft;return r<t.length&&(this.buffer.set(t.subarray(r),0),this.pos=t.length-r),this}digestInto(t){us(this),Sh(t,this),this.finished=!0;let r=t.subarray(0,this.outputLen),i=new Uint8Array(ft);this.pos===ft?(i.set(this.buffer),rf(i,this.k1)):(i.set(this.buffer.subarray(0,this.pos)),i[this.pos]=128,rf(i,this.k2)),r.set(this.x),rf(r,i),km(this.xk,r),ot(i)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let i=t.slice(0,r);return this.destroy(),i}destroy(){let{buffer:t,destroyed:r,x:i,xk:n,k1:o,k2:a}=this;r||(this.destroyed=!0,ot(t,i,n,o,a))}},Ah=xh(16,e=>new Aw(e));TY=()=>{throw new Error('"siv" from v1 is now "gcmsiv"')},PY=So({blockSize:16,tagLength:16,withAAD:!0},function(t,...r){let i=ef("plaintext",0,5444517870735016e24),n=ef("ciphertext",16,2**132+16);if(r.length>126)throw new Error('"AAD" expected <= 126 items');if(r.forEach(s=>He(s)),He(t),![32,48,64].includes(t.length))throw new Error('"aes key" expected Uint8Array of length 32/48/64, got length='+t.length);let o=t.subarray(0,t.length/2),a=t.subarray(t.length/2);return{encrypt(s){i(s.length);let u=Tw(o,[...r,s]),c=Uint8Array.from(u);c[8]&=127,c[12]&=127;let l=tf(a,c).encrypt(s);return bw(u,l)},decrypt(s){n(s.length);let u=s.subarray(0,ft),c=s.subarray(ft),l=Uint8Array.from(u);l[8]&=127,l[12]&=127;let p=tf(a,l).decrypt(c),d=Tw(o,[...r,p]);if(Eh(d,u))return p;throw ot(p),new Error("invalid siv tag")}}}),RY=Object.freeze({expandKeyLE:Fn,expandKeyDecLE:Cm,encrypt:bi,decrypt:Ph,encryptBlock:km,decryptBlock:gL,ctrCounter:sL,ctr32:Qc,dbl:Th,xorBlock:rf,xorend:vL,s2v:Tw}),kY=Object.freeze({incBytes:Rm})});var wL=T((Ece,_L)=>{"use strict";g();var{secp256k1:yL}=(Ml(),en(Ll)),{sha512:BY,sha256:NY}=(Al(),en(tg)),{hmac:CY}=(fg(),en(Ab)),{cbc:bL}=(Nw(),en(Bw)),LY=sr(),ls=Ie(),MY=Ki();function Rh(e){return f.Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function Cw(e,t){return Rh(CY(NY,e,t))}function DY(e,t){if(e.length!==t.length)return!1;for(var r=0,i=0;i<e.length;i++)r|=e[i]^t[i];return r===0}var Lm=function(){};Lm.encrypt=function(e,t,r){ls.checkArgument(e),ls.checkArgument(t),ls.checkArgument(r),r=r||MY.getRandomBuffer(128/8);var i=bL(Uint8Array.from(t),Uint8Array.from(r)).encrypt(Uint8Array.from(e));return f.Buffer.concat([f.Buffer.from(r),Rh(i)])};Lm.decrypt=function(e,t){ls.checkArgument(e),ls.checkArgument(t);var r=e.slice(0,128/8),i=e.slice(128/8),n=bL(Uint8Array.from(t),Uint8Array.from(r)).decrypt(Uint8Array.from(i));return Rh(n)};var nf=function e(t){if(!(this instanceof e))return new e(t);this.opts=t||{}};nf.prototype.privateKey=function(e){return ls.checkArgument(e,"no private key provided"),this._privateKey=e||null,this};nf.prototype.publicKey=function(e){return ls.checkArgument(e,"no public key provided"),this._publicKey=e||null,this};var Mm=function(e,t){var r="_"+e;Object.defineProperty(nf.prototype,e,{configurable:!1,enumerable:!0,get:function(){var i=this[r];return i||(i=this[r]=t.apply(this)),i}})};Mm("Rbuf",function(){var e=this._privateKey.bn.toBuffer({size:32});return Rh(yL.getPublicKey(Uint8Array.from(e),!0))});Mm("kEkM",function(){var e=this._privateKey.bn.toBuffer({size:32}),t=this._publicKey.toDER(),r=yL.getSharedSecret(Uint8Array.from(e),Uint8Array.from(t),!0),i=r.slice(1);return Rh(BY(i))});Mm("kE",function(){return this.kEkM.slice(0,32)});Mm("kM",function(){return this.kEkM.slice(32,64)});nf.prototype.encrypt=function(e,t){f.Buffer.isBuffer(e)||(e=f.Buffer.from(e)),t===void 0&&(t=Cw(this._privateKey.toBuffer(),e).slice(0,16));var r=Lm.encrypt(e,this.kE,t),i=Cw(this.kM,r);return this.opts.shortTag&&(i=i.slice(0,4)),this.opts.noKey?f.Buffer.concat([r,i]):f.Buffer.concat([this.Rbuf,r,i])};nf.prototype.decrypt=function(e){ls.checkArgument(e);var t=0,r=this.opts.shortTag?4:32;if(!this.opts.noKey){var i;switch(e[0]){case 4:i=e.slice(0,65);break;case 3:case 2:i=e.slice(0,33);break;default:throw new Error("Invalid type: "+e[0])}this._publicKey=LY.fromDER(i),t+=i.length}var n=e.slice(t,e.length-r),o=e.slice(e.length-r,e.length),a=Cw(this.kM,n);if(this.opts.shortTag&&(a=a.slice(0,4)),!DY(o,a))throw new Error("Invalid checksum");return Lm.decrypt(n,this.kE)};_L.exports=nf});var EL=T((Oce,SL)=>{"use strict";g();var HY={name:"ECIES",message:"Internal Error on bsv-ecies Module {0}",errors:[{name:"DecryptionError",message:"Invalid Message: {0}"},{name:"UnsupportAlgorithm",message:"Unsupport Algorithm: {0}"}]};SL.exports=pi().extend(HY)});var TL=T((Ace,AL)=>{"use strict";g();var Lw=sr(),Mw=ei(),Wi=Ie(),qY=wL(),Dm=EL(),{secp256k1:xL}=(Ml(),en(Ll)),{sha512:UY,sha256:FY}=(Al(),en(tg)),{hmac:jY}=(fg(),en(Ab)),{cbc:OL}=(Nw(),en(Bw));function kh(e){return f.Buffer.from(e.buffer,e.byteOffset,e.byteLength)}function IL(e,t){return kh(jY(FY,t,e))}var Hm=function(){};Hm.encrypt=function(e,t,r){return Wi.checkArgument(e),Wi.checkArgument(t),Wi.checkArgument(r),Wi.checkArgument(t.length===16,"keybuf length must be 16"),Wi.checkArgument(r.length===16,"ivbuf length must be 16"),kh(OL(Uint8Array.from(t),Uint8Array.from(r)).encrypt(Uint8Array.from(e)))};Hm.decrypt=function(e,t,r){return Wi.checkArgument(e),Wi.checkArgument(t),Wi.checkArgument(r),Wi.checkArgument(t.length===16,"keybuf length must be 16"),Wi.checkArgument(r.length===16,"ivbuf length must be 16"),kh(OL(Uint8Array.from(t),Uint8Array.from(r)).decrypt(Uint8Array.from(e)))};var gu=function e(t,r="BIE1"){if(r!=="BIE1")throw new Dm.UnsupportAlgorithm(r);if(!(this instanceof e))return new e(t,r);this._privateKey=new Mw,this.opts=t||{},this.opts.ephemeralKey=!0};gu.prototype.privateKey=function(e){return Wi.checkArgument(Mw.isValid(e),"no private key provided"),this._privateKey=Mw(e.toHex())||null,this.opts.ephemeralKey=!1,this};gu.prototype.publicKey=function(e){return Wi.checkArgument(Lw.isValid(e),"no public key provided"),this._publicKey=Lw(e.toString())||null,this._publicKey!=null&&(this.opts.fixedPublicKey=!0),this};var Bh=function(e,t){var r="_"+e;Object.defineProperty(gu.prototype,e,{configurable:!1,enumerable:!0,get:function(){var i=this[r];return i=this[r]=t.apply(this),i}})};Bh("Rbuf",function(){var e=this._privateKey.bn.toBuffer({size:32});return kh(xL.getPublicKey(Uint8Array.from(e),!0))});Bh("ivkEkM",function(){var e=this._privateKey.bn.toBuffer({size:32}),t=this._publicKey.toDER(),r=xL.getSharedSecret(Uint8Array.from(e),Uint8Array.from(t),!0);return kh(UY(r))});Bh("iv",function(){return this.ivkEkM.slice(0,16)});Bh("kE",function(){return this.ivkEkM.slice(16,32)});Bh("kM",function(){return this.ivkEkM.slice(32,64)});gu.prototype.encrypt=function(e){f.Buffer.isBuffer(e)||(e=f.Buffer.from(e));var t=Hm.encrypt(e,this.kE,this.iv),r,i=f.Buffer.from("BIE1");this.opts.noKey&&!this.opts.ephemeralKey?r=f.Buffer.concat([i,t]):r=f.Buffer.concat([i,this.Rbuf,t]);var n=IL(r,this.kM);return this.opts.shortTag&&(n=n.slice(0,4)),f.Buffer.concat([r,n])};gu.prototype.decrypt=function(e){Wi.checkArgument(f.Buffer.isBuffer(e),"ciphetext must be a buffer");var t=this.opts.shortTag?4:32,r=4,i=e.slice(0,4);if(!i.equals(f.Buffer.from("BIE1")))throw new Dm.DecryptionError("Invalid Magic");if(!this.opts.noKey){var n=e.slice(4,37);this.opts.fixedPublicKey?console.log('Notice: Overriding PublicKey in message. Consider use "noKey" option if you are not sending message to electrum and do not want to use ephemeral key'):this._publicKey=Lw.fromDER(n),r=37}var o=e.slice(r,e.length-t),a=e.slice(e.length-t,e.length),s=IL(e.slice(0,e.length-t),this.kM);if(this.opts.shortTag&&(s=s.slice(0,4)),a.length!==s.length)throw new Dm.DecryptionError("Invalid checksum");for(var u=0,c=0;c<s.length;c++)u|=a[c]^s[c];if(u!==0)throw new Dm.DecryptionError("Invalid checksum");return Hm.decrypt(o,this.kE,this.iv)};gu.bitcoreECIES=qY;AL.exports=gu});var RL=T((Pce,PL)=>{g();PL.exports=TL()});var qm=T((kce,BL)=>{"use strict";g();function Io(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function kL(e,t){for(var r="",i=0,n=-1,o=0,a,s=0;s<=e.length;++s){if(s<e.length)a=e.charCodeAt(s);else{if(a===47)break;a=47}if(a===47){if(!(n===s-1||o===1))if(n!==s-1&&o===2){if(r.length<2||i!==2||r.charCodeAt(r.length-1)!==46||r.charCodeAt(r.length-2)!==46){if(r.length>2){var u=r.lastIndexOf("/");if(u!==r.length-1){u===-1?(r="",i=0):(r=r.slice(0,u),i=r.length-1-r.lastIndexOf("/")),n=s,o=0;continue}}else if(r.length===2||r.length===1){r="",i=0,n=s,o=0;continue}}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(n+1,s):r=e.slice(n+1,s),i=s-n-1;n=s,o=0}else a===46&&o!==-1?++o:o=-1}return r}function zY(e,t){var r=t.dir||t.root,i=t.base||(t.name||"")+(t.ext||"");return r?r===t.root?r+i:r+e+i:i}var of={resolve:function(){for(var t="",r=!1,i,n=arguments.length-1;n>=-1&&!r;n--){var o;n>=0?o=arguments[n]:(i===void 0&&(i=b.default.cwd()),o=i),Io(o),o.length!==0&&(t=o+"/"+t,r=o.charCodeAt(0)===47)}return t=kL(t,!r),r?t.length>0?"/"+t:"/":t.length>0?t:"."},normalize:function(t){if(Io(t),t.length===0)return".";var r=t.charCodeAt(0)===47,i=t.charCodeAt(t.length-1)===47;return t=kL(t,!r),t.length===0&&!r&&(t="."),t.length>0&&i&&(t+="/"),r?"/"+t:t},isAbsolute:function(t){return Io(t),t.length>0&&t.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var t,r=0;r<arguments.length;++r){var i=arguments[r];Io(i),i.length>0&&(t===void 0?t=i:t+="/"+i)}return t===void 0?".":of.normalize(t)},relative:function(t,r){if(Io(t),Io(r),t===r||(t=of.resolve(t),r=of.resolve(r),t===r))return"";for(var i=1;i<t.length&&t.charCodeAt(i)===47;++i);for(var n=t.length,o=n-i,a=1;a<r.length&&r.charCodeAt(a)===47;++a);for(var s=r.length,u=s-a,c=o<u?o:u,l=-1,p=0;p<=c;++p){if(p===c){if(u>c){if(r.charCodeAt(a+p)===47)return r.slice(a+p+1);if(p===0)return r.slice(a+p)}else o>c&&(t.charCodeAt(i+p)===47?l=p:p===0&&(l=0));break}var d=t.charCodeAt(i+p),v=r.charCodeAt(a+p);if(d!==v)break;d===47&&(l=p)}var _="";for(p=i+l+1;p<=n;++p)(p===n||t.charCodeAt(p)===47)&&(_.length===0?_+="..":_+="/..");return _.length>0?_+r.slice(a+l):(a+=l,r.charCodeAt(a)===47&&++a,r.slice(a))},_makeLong:function(t){return t},dirname:function(t){if(Io(t),t.length===0)return".";for(var r=t.charCodeAt(0),i=r===47,n=-1,o=!0,a=t.length-1;a>=1;--a)if(r=t.charCodeAt(a),r===47){if(!o){n=a;break}}else o=!1;return n===-1?i?"/":".":i&&n===1?"//":t.slice(0,n)},basename:function(t,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');Io(t);var i=0,n=-1,o=!0,a;if(r!==void 0&&r.length>0&&r.length<=t.length){if(r.length===t.length&&r===t)return"";var s=r.length-1,u=-1;for(a=t.length-1;a>=0;--a){var c=t.charCodeAt(a);if(c===47){if(!o){i=a+1;break}}else u===-1&&(o=!1,u=a+1),s>=0&&(c===r.charCodeAt(s)?--s===-1&&(n=a):(s=-1,n=u))}return i===n?n=u:n===-1&&(n=t.length),t.slice(i,n)}else{for(a=t.length-1;a>=0;--a)if(t.charCodeAt(a)===47){if(!o){i=a+1;break}}else n===-1&&(o=!1,n=a+1);return n===-1?"":t.slice(i,n)}},extname:function(t){Io(t);for(var r=-1,i=0,n=-1,o=!0,a=0,s=t.length-1;s>=0;--s){var u=t.charCodeAt(s);if(u===47){if(!o){i=s+1;break}continue}n===-1&&(o=!1,n=s+1),u===46?r===-1?r=s:a!==1&&(a=1):r!==-1&&(a=-1)}return r===-1||n===-1||a===0||a===1&&r===n-1&&r===i+1?"":t.slice(r,n)},format:function(t){if(t===null||typeof t!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof t);return zY("/",t)},parse:function(t){Io(t);var r={root:"",dir:"",base:"",ext:"",name:""};if(t.length===0)return r;var i=t.charCodeAt(0),n=i===47,o;n?(r.root="/",o=1):o=0;for(var a=-1,s=0,u=-1,c=!0,l=t.length-1,p=0;l>=o;--l){if(i=t.charCodeAt(l),i===47){if(!c){s=l+1;break}continue}u===-1&&(c=!1,u=l+1),i===46?a===-1?a=l:p!==1&&(p=1):a!==-1&&(p=-1)}return a===-1||u===-1||p===0||p===1&&a===u-1&&a===s+1?u!==-1&&(s===0&&n?r.base=r.name=t.slice(1,u):r.base=r.name=t.slice(s,u)):(s===0&&n?(r.name=t.slice(1,a),r.base=t.slice(1,u)):(r.name=t.slice(s,a),r.base=t.slice(s,u)),r.ext=t.slice(a,u)),s>0?r.dir=t.slice(0,s-1):n&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};of.posix=of;BL.exports=of});var Nh=T((Nce,NL)=>{"use strict";g();NL.exports={}});var qL=T((Lce,HL)=>{"use strict";g();var ML=mi(),KY=ho(),af=hn(),CL=gt(),VY=Le(),Dw=Ke(),DL=zt(),hs=ut(),LL=qm(),ba;try{ba=Nh()}catch{ba=null}var GY=function(){var e=typeof b.default<"u"&&b.default.env&&b.default.env.BSV_DEBUG||typeof window<"u"&&window.BSV_DEBUG;e&&console.log.apply(console,arguments)};function Mi(e,t){if(!(this instanceof Mi))return new Mi(e,t);this.privateKey=e,this.publicKey=e.publicKey,this.address=e.toAddress(),t=t||{},this.storageDir=t.storageDir||(typeof b.default<"u"?LL.join(b.default.cwd(),".bsv-covenants"):".bsv-covenants"),this.covenantUtxoPath=LL.join(this.storageDir,"covenant_utxos.json"),this.sighashType=CL.SIGHASH_ALL|CL.SIGHASH_FORKID,this.allowNonEnforcing=t.allowNonEnforcing===!0,ba&&this._ensureStorageDir()}Mi.prototype.createFromP2PKH=function(e){if(!this.allowNonEnforcing)throw new Error("SmartContract.Covenant builds a NON-ENFORCING script that reduces to plain P2PK \u2014 it does not constrain the spend. Use SmartContract.PushTx.valueCovenant (output binding) or SmartContract.Token / perpetualCovenant (stateful covenants) for real covenants. To use this demo anyway, construct with { allowNonEnforcing: true }.");e.script||(e.script=Mi.reconstructP2pkhScript(this.address));var t=new DL().from({txId:e.txid,outputIndex:e.vout,script:e.script,satoshis:e.satoshis}).to(this.address,e.satoshis-1e3),r=hs.fromHex(e.script),i=ML.sighashPreimage(t,this.sighashType,0,r,new Dw(e.satoshis)),n=VY.sha256sha256(i),o=new hs().add("OP_DUP").add("OP_HASH256").add(n).add("OP_EQUALVERIFY").add("OP_DROP").add(this.publicKey.toBuffer()).add("OP_CHECKSIG");t.outputs[0].setScript(o),t.sign(this.privateKey);var a={txid:t.id,vout:0,satoshis:e.satoshis-1e3,script:o.toHex(),scriptPubKey:o.toHex(),preimageHash:n.toString("hex"),originalPreimage:i.toString("hex"),status:"local",createdAt:new Date().toISOString(),type:"preimage_covenant"};return{transaction:t,covenantUtxo:a}};Mi.prototype.createSpendingTx=function(e,t,r){var i=t||this.address,n=r||e.satoshis-500,o=new DL;o.addInput(new KY({prevTxId:e.txid,outputIndex:e.vout,script:hs.empty()}),hs.fromHex(e.script),e.satoshis),o.to(i,n);var a=hs.fromHex(e.script),s=ML.sign(o,this.privateKey,this.sighashType,0,a,new Dw(e.satoshis)),u=f.Buffer.concat([s.toDER(),f.Buffer.from([this.sighashType])]),c=f.Buffer.from(e.originalPreimage,"hex"),l=new hs().add(u).add(c);return o.inputs[0].setScript(l),o};Mi.prototype.validate=function(e,t){var r=new af,i=af.SCRIPT_VERIFY_P2SH|af.SCRIPT_VERIFY_STRICTENC|af.SCRIPT_VERIFY_DERSIG|af.SCRIPT_VERIFY_LOW_S|af.SCRIPT_ENABLE_SIGHASH_FORKID,n=e.inputs[0].script,o=hs.fromHex(t.script),a=r.verify(n,o,e,0,i,new Dw(t.satoshis));return{valid:a,error:a?null:r.errstr}};Mi.prototype.save=function(e){if(!ba)return GY("File system operations not available in browser environment"),e;var t=this.list();return t.push(e),ba.writeFileSync(this.covenantUtxoPath,JSON.stringify(t,null,2)),e};Mi.prototype.load=function(e){var t=this.list();if(e){var r=t.find(function(i){return i.txid===e});if(!r)throw new Error("Covenant UTXO with TXID "+e+" not found");return r}else{var r=t.find(function(n){return n.type==="preimage_covenant"});if(!r)throw new Error("No preimage covenant UTXO found");return r}};Mi.prototype.list=function(){return ba.existsSync(this.covenantUtxoPath)?JSON.parse(ba.readFileSync(this.covenantUtxoPath,"utf8")):[]};Mi.prototype.getPortfolio=function(){var e=this.list(),t={total:e.length,totalValue:e.reduce(function(r,i){return r+i.satoshis},0),byStatus:{},recent:e.slice(-5)};return e.forEach(function(r){var i=r.status||"local";t.byStatus[i]||(t.byStatus[i]={count:0,value:0}),t.byStatus[i].count++,t.byStatus[i].value+=r.satoshis}),t};Mi.prototype.completeFlow=function(e,t){var r=this.createFromP2PKH(e),i=this.save(r.covenantUtxo);t&&t(r.transaction,"creation");var n=this.createSpendingTx(i),o=this.validate(n,i);return t&&o.valid&&t(n,"spending"),{creationTx:r.transaction,spendingTx:n,covenantUtxo:i,validation:o,success:o.valid}};Mi.prototype._ensureStorageDir=function(){ba.existsSync(this.storageDir)||ba.mkdirSync(this.storageDir,{recursive:!0})};Mi.reconstructP2pkhScript=function(e){return hs.buildPublicKeyHashOut(e).toHex()};HL.exports=Mi});var Ao=T((Hce,FL)=>{"use strict";g();var WY=mi(),YY=Ke(),ZY=zt(),$Y=ei(),UL=ut(),Dce=nr();function Te(e,t){if(!(this instanceof Te))return new Te(e,t);this.preimage=f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"hex"),this.options=t||{},this.strategy=this.options.strategy||"DYNAMIC",this.fields=null,this.sighashInfo=null,this.options.deferExtraction||this._extractFields()}Te.LEFT_FIXED_LENGTH=104;Te.RIGHT_FIXED_LENGTH=52;Te.MIN_PREIMAGE_LENGTH=Te.LEFT_FIXED_LENGTH+1+Te.RIGHT_FIXED_LENGTH;Te.prototype.extract=function(e){return this.strategy=e||this.strategy,this._extractFields(),this.fields};Te.prototype.getSighashInfo=function(){return this.fields||this._extractFields(),this.sighashInfo};Te.prototype.getField=function(e){return this.fields||this._extractFields(),this.fields[e]};Te.prototype.extractField=function(e,t){t=t||{},this.fields||this._extractFields();var r=this._parsePreimageStructure(),i=this._generateBidirectionalASM(e,r,t.includeComments),n=this._extractSpecificField(e,r),o=this._interpretField(e,n,r);return{field:e,value:n?n.toString("hex"):null,buffer:n,asm:i,interpretation:o,strategy:this._getExtractionStrategy(e),structure:r._structure}};Te.prototype.generateASM=function(e,t){var r=this._parsePreimageStructure();return this._generateBidirectionalASM(e,r,t)};Te.prototype.extractFields=function(e){var t={};return e.forEach(function(r){t[r]=this.extractField(r)}.bind(this)),t};Te.prototype.validate=function(){var e=[],t=[];if(this.preimage.length<Te.MIN_PREIMAGE_LENGTH)return e.push("Preimage too short: "+this.preimage.length+" bytes (BIP-143 preimage requires at least "+Te.MIN_PREIMAGE_LENGTH+")"),{valid:!1,errors:e,warnings:t,sighashInfo:this.sighashInfo};this.fields||this._extractFields();var r=["version","hashPrevouts","hashSequence","outpoint","scriptCode","amount","sequence","hashOutputs","locktime","sighash"];return r.forEach(function(i){this.fields[i]||e.push("Missing required field: "+i)}.bind(this)),this.sighashInfo.hasZeroHashes&&t.push("Zero hashes detected - check SIGHASH flags: "+this.sighashInfo.zeroFields.join(", ")),{valid:e.length===0,errors:e,warnings:t,sighashInfo:this.sighashInfo}};Te.prototype.toObject=function(){return this.fields||this._extractFields(),{preimage:this.preimage.toString("hex"),length:this.preimage.length,strategy:this.strategy,fields:{version:this.fields.version?this.fields.version.toString("hex"):null,hashPrevouts:this.fields.hashPrevouts?this.fields.hashPrevouts.toString("hex"):null,hashSequence:this.fields.hashSequence?this.fields.hashSequence.toString("hex"):null,outpoint:this.fields.outpoint?this.fields.outpoint.toString("hex"):null,scriptCode:this.fields.scriptCode?this.fields.scriptCode.toString("hex"):null,scriptCodeLength:this.fields.scriptCodeLength,amount:this.fields.amount?this.fields.amount.toString("hex"):null,sequence:this.fields.sequence?this.fields.sequence.toString("hex"):null,hashOutputs:this.fields.hashOutputs?this.fields.hashOutputs.toString("hex"):null,locktime:this.fields.locktime?this.fields.locktime.toString("hex"):null,sighash:this.fields.sighash?this.fields.sighash.toString("hex"):null},sighashInfo:this.sighashInfo,validation:this.validate()}};Te.prototype._extractFields=function(){if(this.fields={},this.sighashInfo={flag:null,hasZeroHashes:!1,zeroFields:[],warnings:[]},this.preimage.length<Te.MIN_PREIMAGE_LENGTH)throw new Error("Preimage too short: "+this.preimage.length+" bytes (BIP-143 preimage requires at least "+Te.MIN_PREIMAGE_LENGTH+")");try{this.strategy==="LEFT"||this.strategy==="DYNAMIC"?this._extractFromLeft():this.strategy==="RIGHT"&&this._extractFromRight(),this._analyzeSighash()}catch(e){if(this.strategy==="DYNAMIC")try{this.strategy="RIGHT",this._extractFromRight(),this._analyzeSighash()}catch{throw new Error("Failed to extract preimage fields with any strategy: "+e.message)}else throw e}};Te.prototype._extractFromLeft=function(){var e=0;this.fields.version=this.preimage.slice(e,e+4),e+=4,this.fields.hashPrevouts=this.preimage.slice(e,e+32),e+=32,this.fields.hashSequence=this.preimage.slice(e,e+32),e+=32,this.fields.outpoint=this.preimage.slice(e,e+36),e+=36;var t=Te.decodeCompactSize(this.preimage,e);this.fields.scriptCodeLength=t.value,e=t.nextOffset,this.fields.scriptCode=this.preimage.slice(e,e+this.fields.scriptCodeLength),e+=this.fields.scriptCodeLength,this.fields.amount=this.preimage.slice(e,e+8),e+=8,this.fields.sequence=this.preimage.slice(e,e+4),e+=4,this.fields.hashOutputs=this.preimage.slice(e,e+32),e+=32,this.fields.locktime=this.preimage.slice(e,e+4),e+=4,this.fields.sighash=this.preimage.slice(e,e+4)};Te.prototype._extractFromRight=function(){var e=this.preimage.length,t=e;t-=4,this.fields.sighash=this.preimage.slice(t,t+4),t-=4,this.fields.locktime=this.preimage.slice(t,t+4),t-=32,this.fields.hashOutputs=this.preimage.slice(t,t+32),t-=4,this.fields.sequence=this.preimage.slice(t,t+4),t-=8,this.fields.amount=this.preimage.slice(t,t+8);var r=104,i=Te.decodeCompactSize(this.preimage,r);this.fields.scriptCodeLength=i.value,this.fields.scriptCode=this.preimage.slice(i.nextOffset,i.nextOffset+this.fields.scriptCodeLength),this.fields.version=this.preimage.slice(0,4),this.fields.hashPrevouts=this.preimage.slice(4,36),this.fields.hashSequence=this.preimage.slice(36,68),this.fields.outpoint=this.preimage.slice(68,104)};Te.prototype._analyzeSighash=function(){if(this.fields.sighash){var e=this.fields.sighash.readUInt32LE(0);this.sighashInfo.flag=e;var t=e&31,r=(e&128)!==0,i=(e&64)!==0,n=f.Buffer.alloc(32);r&&this.fields.hashPrevouts.equals(n)&&(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashPrevouts"),this.sighashInfo.warnings.push("ANYONECANPAY flag detected - hashPrevouts is zero")),t===2&&this.fields.hashSequence.equals(n)&&(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashSequence"),this.sighashInfo.warnings.push("SIGHASH_NONE flag detected - hashSequence is zero")),(t===2||t===3)&&this.fields.hashOutputs.equals(n)&&(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashOutputs"),this.sighashInfo.warnings.push("SIGHASH_NONE/SINGLE flag detected - hashOutputs is zero"));var o=[];t===1?o.push("ALL"):t===2?o.push("NONE"):t===3&&o.push("SINGLE"),r&&o.push("ANYONECANPAY"),i&&o.push("FORKID"),this.sighashInfo.flagName=o.join(" | ")}};Te.prototype._parsePreimageStructure=function(){for(var e=this.preimage,t=0,r={},i=[{name:"nVersion",len:4},{name:"hashPrevouts",len:32},{name:"hashSequence",len:32},{name:"outpoint_txid",len:32},{name:"outpoint_vout",len:4}],n=[{name:"value",len:8},{name:"nSequence",len:4},{name:"hashOutputs",len:32},{name:"nLocktime",len:4},{name:"sighashType",len:4}],o=0;o<i.length;o++){var a=i[o];r[a.name]=e.slice(t,t+a.len).toString("hex"),t+=a.len}var s=Te.decodeCompactSize(e,t);r.scriptLen=s.value,r.scriptLenSize=s.bytes,r.scriptLenRaw=e.slice(t,t+s.bytes).toString("hex"),t+=s.bytes,r.scriptCode=e.slice(t,t+r.scriptLen).toString("hex"),t+=r.scriptLen;for(var u=0;u<n.length;u++){var c=n[u];r[c.name]=e.slice(t,t+c.len).toString("hex"),t+=c.len}var l=i.reduce(function(d,v){return d+v.len},0),p=n.reduce(function(d,v){return d+v.len},0);return r._structure={leftFixed:l,scriptLenVarint:s.bytes,scriptCode:r.scriptLen,rightFixed:p,totalCalculated:l+s.bytes+r.scriptLen+p,totalActual:e.length},r};Te.prototype._generateBidirectionalASM=function(e,t,r){var i=["value","nSequence","hashOutputs","nLocktime","sighashType"],n=["nVersion","hashPrevouts","hashSequence","outpoint_txid","outpoint_vout"];if(i.includes(e))return this._generateRightExtractionASM(e,r);if(n.includes(e))return this._generateLeftExtractionASM(e,r);if(e==="scriptCode")return this._generateDynamicExtractionASM(t,r);if(e==="scriptLen")return this._generateScriptLenExtractionASM(t,r);throw new Error("Unknown field: "+e)};Te.prototype._generateRightExtractionASM=function(e,t){for(var r=[{name:"value",len:8},{name:"nSequence",len:4},{name:"hashOutputs",len:32},{name:"nLocktime",len:4},{name:"sighashType",len:4}],i=0,n=0,o=!1,a=0;a<r.length;a++){var s=r[a];if(s.name===e){n=s.len,o=!0;break}i+=s.len}if(!o)throw new Error("Field not found in RIGHT fields: "+e);var u=52,c=u-i,l=[];return t?(l.push("# \u{1F504} Extract "+e+" from RIGHT side (bidirectional strategy)"),l.push("OP_SIZE # Push preimage size: [preimage, size]")):l.push("OP_SIZE"),t?l=l.concat([c+" OP_SUB # Calculate split point: [preimage, split_point]","OP_SPLIT # Split: [left_part, right_part]","OP_NIP # Drop left (OP_SPLIT leaves right on top): [right_part]",n+" OP_SPLIT # Extract field: ["+e+", remaining]","OP_DROP # Clean up: ["+e+"]","# \u2705 Result: "+e+" is now on top of stack"]):l=l.concat([c+" OP_SUB","OP_SPLIT","OP_NIP",n+" OP_SPLIT","OP_DROP"]),l.join(`
76
76
  `)};Te.prototype._generateLeftExtractionASM=function(e,t){var r=[{name:"nVersion",len:4,offset:0},{name:"hashPrevouts",len:32,offset:4},{name:"hashSequence",len:32,offset:36},{name:"outpoint_txid",len:32,offset:68},{name:"outpoint_vout",len:4,offset:100}],i=r.find(function(o){return o.name===e});if(!i)throw new Error("Field not found in LEFT fields: "+e);var n=[];return t?n=["# \u{1F504} Extract "+e+" from LEFT side (bidirectional strategy)",i.offset+" OP_SPLIT # Skip to field: [prefix, remainder]","OP_NIP # Drop prefix (OP_SPLIT leaves remainder on top): [remainder]",i.len+" OP_SPLIT # Extract field: ["+e+", suffix]","OP_DROP # Clean up: ["+e+"]","# \u2705 Result: "+e+" is now on top of stack"]:n=[i.offset+" OP_SPLIT","OP_NIP",i.len+" OP_SPLIT","OP_DROP"],n.join(`
77
77
  `)};Te.prototype._generateDynamicExtractionASM=function(e,t){var r=104+e.scriptLenSize;return["# \u{1F3AF} Extract scriptCode DYNAMICALLY with CompactSize varint support",r+" OP_SPLIT # Skip left zone + scriptLen varint: [left_zone, remainder]","OP_NIP # Drop left (OP_SPLIT leaves remainder on top): [remainder]",e.scriptLen+" OP_SPLIT # Extract scriptCode: [scriptCode, right_zone]","OP_DROP # Clean up: [scriptCode]","# \u2705 Result: scriptCode extracted with "+e.scriptLenSize+"-byte varint awareness"].join(`
@@ -95,7 +95,7 @@ To validate against BSV as it is today, omit the flags argument or pass Interpre
95
95
  ===========================================`),console.log("\u2705 Final Stack State:"),eS(i.stack||[],i.altstack||[]),console.log("===========================================")}function _M(e,t,r){console.log("==========================================="),console.log("\u{1F50D} SCRIPT INTERPRETER DEBUGGER (FULL RUN)"),console.log(`===========================================
96
96
  `);let i=new Gm,n=new qZ(1e5),o=i.verify(e,t,r,0,Gm.SCRIPT_ENABLE_SIGHASH_FORKID,n);console.log("\u{1F510} Locking Script:",t.toASM()),console.log("\u{1F513} Unlocking Script:",e.toASM()),console.log("-------------------------------------------"),console.log("\u2705 Result:",o?"TRUE (Success)":"\u274C FALSE (Failure)"),console.log("Final Stack:",i.stack.map(a=>a.toString("hex"))),console.log("AltStack:",i.altstack.map(a=>a.toString("hex"))),console.log("===========================================")}async function wM(){if(typeof b.default>"u"||!b.default.argv){console.log("\u2699\uFE0F CLI mode not available in browser environment");return}let e=b.default.argv.slice(2),t=d=>{let v=e.indexOf(d);return v!==-1&&e[v+1]?e[v+1]:null},r=t("--unlocking"),i=t("--locking"),n=t("--combined"),o=e.includes("--step"),a=e.includes("--truth"),s,u,c;if(n)c=Km(n);else{s=Km(r),u=Km(i);let d=f.Buffer.concat([s.toBuffer(),u.toBuffer()]);c=Sa.fromBuffer(d)}let l=new UZ,p=new FZ({prevTxId:"0".repeat(64),outputIndex:0,script:Sa.empty(),satoshis:1e5,output:new yM({satoshis:1e5,script:Sa.empty()})});l.addInput(p),l.addOutput(new yM({satoshis:1e5,script:Sa.empty()})),o?await bM(c,l,!0):a?_M(s||Sa.empty(),u||Sa.empty(),l):console.log("\u2699\uFE0F No mode specified. Use --step or --truth")}tS.exports={parseScript:Km,printStack:eS,stepThroughScript:bM,runFullEvaluation:_M,main:wM};typeof Wr<"u"&&Wr.main===tS&&wM()});var To=T((gfe,RM)=>{"use strict";g();var xM=ut(),OM=hn(),rS=Pr(),iS=zt(),jZ=ho(),IM=gi(),AM=mi(),Wm=Ke(),zZ=Le(),EM=gt(),nS=EM.SIGHASH_ALL|EM.SIGHASH_FORKID;function TM(){return OM.mainnetFlags()}function KZ(e,t,r){r=r||{};var i=new OM,n=i.verify(e,t,r.tx||new iS,r.inputIndex||0,r.flags||TM(),new Wm(r.satoshis||0));return{ok:n,err:i.errstr||""}}function PM(e,t,r,i,n){return AM.sighashPreimage(e,n||nS,t,r,new Wm(i))}function VZ(e,t,r,i,n){return zZ.sha256sha256(PM(e,t,r,i,n))}function GZ(e,t,r,i,n,o){o=o||nS;var a=AM.sign(e,t,o,r,i,new Wm(n));return f.Buffer.concat([a.toDER(),f.Buffer.from([o])])}function WZ(e,t,r){r=r||{};var i=new iS().addOutput(new IM({script:e,satoshis:t})),n=new iS;return n.addInput(new jZ({prevTxId:i.hash,outputIndex:0,script:xM.empty()}),e,t),r.outputs&&r.outputs.forEach(function(o){n.addOutput(o)}),{funding:i,spend:n}}function YZ(e,t){var r=e.toAddress?e.toAddress():e;return new IM({script:xM.buildPublicKeyHashOut(r),satoshis:t})}function ZZ(e){return e===0?rS.OP_0:e===-1?rS.OP_1NEGATE:e>=1&&e<=16?rS["OP_"+e]:new Wm(e).toScriptNumBuffer()}RM.exports={SIGHASH:nS,flags:TM,verify:KZ,rawPreimage:PM,sighashDigest:VZ,signInput:GZ,fundAndSpend:WZ,p2pkhOutput:YZ,scriptNum:ZZ}});var NM=T((vfe,BM)=>{"use strict";g();var $Z=Le(),XZ=To(),df=ut(),hf=Pr(),kM=XZ.signInput;function JZ(e){var t=$Z.sha256(e),r=new df().add(hf.OP_SHA256).add(t).add(hf.OP_EQUAL);return{lock:r,meta:{name:"hash-lock",digest:t.toString("hex")},unlock:function(i,n,o){return new df().add(o||e)}}}function QZ(e){var t=e.toPublicKey(),r=df.buildPublicKeyHashOut(t.toAddress());return{lock:r,meta:{name:"p2pkh",address:t.toAddress().toString()},unlock:function(i,n){return new df().add(kM(i,e,0,r,n)).add(t.toBuffer())}}}function e$(e,t){var r=t.map(function(n){return n.toPublicKey()}),i=new df().add(hf["OP_"+e]);return r.forEach(function(n){i.add(n.toBuffer())}),i.add(hf["OP_"+r.length]).add(hf.OP_CHECKMULTISIG),{lock:i,meta:{name:e+"-of-"+r.length+"-multisig"},unlock:function(n,o,a){a=a||t.slice(0,e);var s=new df().add(hf.OP_0);return a.forEach(function(u){s.add(kM(n,u,0,i,o))}),s}}}BM.exports={hashLock:JZ,p2pkh:QZ,multisig:e$}});var gf=T((bfe,FM)=>{"use strict";g();var CM=ut(),xt=Pr(),Po=gt(),Ym=Ke(),LM=Le(),aS=To(),sS=aS.SIGHASH,Zm=aS.scriptNum,pf=f.Buffer.from("79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","hex"),uS=new Ym("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16),t$=f.Buffer.concat([f.Buffer.from([2]),pf]),MM=f.Buffer.from(pf).reverse(),DM=f.Buffer.concat([f.Buffer.from(uS.toBuffer()).reverse(),f.Buffer.from([0])]),r$=f.Buffer.concat([f.Buffer.from([48,68,2,32]),pf,f.Buffer.from([2,32])]);function oS(e,t){var r;for(r=0;r<t-1;r++)e.add(xt.OP_1).add(xt.OP_SPLIT);for(r=0;r<t-1;r++)e.add(xt.OP_SWAP).add(xt.OP_CAT);return e}var i$=Po.SIGHASH_ALL|Po.SIGHASH_FORKID,n$=Po.SIGHASH_SINGLE|Po.SIGHASH_FORKID,o$=Po.SIGHASH_SINGLE|Po.SIGHASH_ANYONECANPAY|Po.SIGHASH_FORKID,a$=Po.SIGHASH_ALL|Po.SIGHASH_ANYONECANPAY|Po.SIGHASH_FORKID;function cS(e,t){var r=t&&t.sighashType||sS;return e.add(xt.OP_HASH256),oS(e,32),e.add(MM).add(xt.OP_ADD),e.add(DM).add(xt.OP_MOD),e.add(Zm(32)).add(xt.OP_NUM2BIN),oS(e,32),e.add(pf).add(xt.OP_DUP),e.add(xt.OP_2).add(xt.OP_SWAP).add(xt.OP_CAT),e.add(xt.OP_TOALTSTACK),e.add(f.Buffer.from([48,68,2,32])).add(xt.OP_SWAP).add(xt.OP_CAT),e.add(f.Buffer.from([2,32])).add(xt.OP_CAT),e.add(xt.OP_SWAP).add(xt.OP_CAT),e.add(f.Buffer.from([r])).add(xt.OP_CAT),e.add(xt.OP_FROMALTSTACK).add(xt.OP_CHECKSIG),e}function s$(){return cS(new CM)}function HM(e){return e.add(Zm(40)).add(xt.OP_RIGHT).add(Zm(32)).add(xt.OP_LEFT),e}function u$(e){return qM(e,sS)}function qM(e,t){var r=f.Buffer.from([t&255,0,0,0]);return e.add(xt.OP_DUP).add(Zm(4)).add(xt.OP_RIGHT).add(r).add(xt.OP_EQUALVERIFY),e}function c$(e){var t=f.Buffer.concat(e.map(function(r){return r.toBufferWriter().toBuffer()}));return LM.sha256sha256(t)}function f$(e){var t=new CM().add(xt.OP_DUP);return cS(t),t.add(xt.OP_VERIFY),HM(t),t.add(f.Buffer.from(e)).add(xt.OP_EQUAL),t}var l$=new Ym("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex");function UM(e){var t=LM.sha256sha256(e);if(t[0]<1||t[0]>127)return null;var r=new Ym(t).add(new Ym(pf)).mod(uS);if(r.gt(l$))return null;var i=r.toBuffer("be",32);return i[0]>=1?i:null}function h$(e,t,r,i,n){typeof n=="number"&&(n={maxTries:n}),n=n||{};var o=n.maxTries||5e3,a=n.start||0,s=n.field||"nLockTime",u=n.sighashType||sS;if(s!=="nLockTime"&&s!=="sequence")throw new Error("grind field must be 'nLockTime' or 'sequence'");for(var c=e.inputs[t],l=0;l<o;l++){var p=a+l;s==="nLockTime"?e.nLockTime=p:c.sequenceNumber=4294967294-p;var d=aS.rawPreimage(e,t,r,i,u);if(UM(d))return{preimage:d,tries:l+1,field:s,nonce:p}}throw new Error("OP_PUSH_TX grind failed after "+o+" tries")}FM.exports={Gx:pf,N:uS,PUBKEY:t$,gxLe:MM,N_LE:DM,DER_PREFIX:r$,reverseBytes:oS,pushTxCore:cS,authenticator:s$,extractHashOutputs:HM,assertSighashAll:u$,assertSighashType:qM,SIGHASH_ALL_FORKID:i$,SIGHASH_SINGLE_FORKID:n$,SIGHASH_SINGLE_ANYONECANPAY_FORKID:o$,SIGHASH_ALL_ANYONECANPAY_FORKID:a$,hashOutputs:c$,valueCovenant:f$,sFromPreimage:UM,grind:h$}});var lS=T((wfe,jM)=>{"use strict";g();var fS=gf(),d$=To(),p$=ut(),Cr=Pr(),mf=d$.scriptNum;function g$(e){var t=new p$;return t.add(Cr.OP_DUP),fS.pushTxCore(t),t.add(Cr.OP_VERIFY),fS.assertSighashAll(t),t.add(Cr.OP_DUP),t.add(mf(104)).add(Cr.OP_SPLIT).add(Cr.OP_NIP),t.add(Cr.OP_SIZE).add(mf(52)).add(Cr.OP_SUB).add(Cr.OP_SPLIT).add(Cr.OP_DROP),t.add(Cr.OP_OVER),t.add(mf(52)).add(Cr.OP_RIGHT).add(mf(8)).add(Cr.OP_LEFT),t.add(Cr.OP_BIN2NUM).add(mf(e)).add(Cr.OP_SUB),t.add(mf(8)).add(Cr.OP_NUM2BIN),t.add(Cr.OP_SWAP).add(Cr.OP_CAT),t.add(Cr.OP_HASH256),t.add(Cr.OP_SWAP),fS.extractHashOutputs(t),t.add(Cr.OP_EQUAL),t}jM.exports={pelsCovenant:g$}});var pS=T((Efe,KM)=>{"use strict";g();var m$=ei(),v$=sr(),y$=ut(),zM=Le(),dS=To(),Kt=Pr(),vf=dS.scriptNum;function $m(e){return e instanceof m$?e.toPublicKey().toBuffer():e instanceof v$?e.toBuffer():e}function b$(){return{name:"single-key",commit:function(e){return zM.sha256ripemd160($m(e))},emit:function(e){return e.add(Kt.OP_OVER).add(Kt.OP_HASH160).add(Kt.OP_EQUALVERIFY),e.add(Kt.OP_CHECKSIGVERIFY),e},unlockArgs:function(e,t,r,i,n){var o=dS.signInput(e,n,t,r,i);return[o,n.toPublicKey().toBuffer()]}}}function hS(e,t){var r=t.length;if(e<1||e>r||r<1||r>16)throw new Error("multisig requires 1 <= m <= n <= 16");var i=new y$().add(Kt["OP_"+e]);return t.forEach(function(n){i.add(f.Buffer.from(n))}),i.add(Kt["OP_"+r]).add(Kt.OP_CHECKMULTISIG),i.toBuffer()}function _$(e,t){if(typeof t!="number"||!Number.isInteger(t))throw new Error("multisig(m, nKeys): nKeys is the NUMBER of keys, not the keys themselves"+(Array.isArray(t)?" \u2014 pass "+t.length+" instead of the array":""));if(typeof e!="number"||!Number.isInteger(e))throw new Error("multisig(m, nKeys): m must be an integer");if(e<1||e>t||t<1||t>16)throw new Error("multisig requires 1 <= m <= n <= 16");return{name:e+"-of-"+t+"-multisig",m:e,n:t,commit:function(r){if(r.length!==t)throw new Error("expected "+t+" public keys");return zM.sha256ripemd160(hS(e,r.map($m)))},emit:function(r){r.add(Kt.OP_OVER).add(Kt.OP_HASH160).add(Kt.OP_EQUALVERIFY),r.add(vf(1)).add(Kt.OP_SPLIT).add(Kt.OP_NIP),r.add(Kt.OP_SIZE).add(vf(2)).add(Kt.OP_SUB).add(Kt.OP_SPLIT).add(Kt.OP_DROP);for(var i=0;i<this.n;i++)r.add(vf(34)).add(Kt.OP_SPLIT),r.add(Kt.OP_SWAP).add(vf(1)).add(Kt.OP_SPLIT).add(Kt.OP_NIP),r.add(Kt.OP_TOALTSTACK);for(r.add(Kt.OP_DROP),r.add(vf(this.m)),i=0;i<this.n;i++)r.add(Kt.OP_FROMALTSTACK);return r.add(vf(this.n)),r.add(Kt.OP_CHECKMULTISIGVERIFY),r},unlockArgs:function(r,i,n,o,a){var s=a.keys;if(s.length!==t)throw new Error("expected "+t+" public keys in signer.keys");var u=hS(e,s.map($m)),c=s.map($m).map(function(d){return d.toString("hex")}),l=a.signWith.map(function(d){var v=c.indexOf(d.toPublicKey().toBuffer().toString("hex"));if(v<0)throw new Error("signWith key is not in the committed key set");return{idx:v,priv:d}}).sort(function(d,v){return v.idx-d.idx}).slice(0,e);if(l.length<e)throw new Error("need at least "+e+" signing keys");var p=l.map(function(d){return dS.signInput(r,d.priv,i,n,o)});return[Kt.OP_0].concat(p).concat([u])}}}function w$(e){if(!e||typeof e.emit!="function"||typeof e.unlockArgs!="function"||typeof e.commit!="function")throw new Error("predicate authorizer needs { commit, emit, unlockArgs } functions");return{name:e.name||"predicate",commit:e.commit,emit:e.emit,unlockArgs:e.unlockArgs}}KM.exports={singleKey:b$,multisig:_$,predicate:w$,redeemScript:hS}});var mS=T((Ofe,JM)=>{"use strict";g();var S$=Ke(),Mh=gf(),gS=To(),Dh=pS(),Xm=ut(),Re=Pr(),Ro=gS.scriptNum;function GM(e,t){var r=f.Buffer.isBuffer(e)?e:t.commit(e);if(r.length!==20)throw new Error("owner commitment must be 20 bytes (HASH160)");return r}function VM(e,t){return t.length?e.add(f.Buffer.from(t)):e.add(Re.OP_0)}function WM(e,t){return e.add(Re.OP_DUP),Mh.pushTxCore(e),e.add(Re.OP_VERIFY),Mh.assertSighashAll(e),e.add(Re.OP_DUP).add(Ro(52)).add(Re.OP_RIGHT).add(Ro(8)).add(Re.OP_LEFT).add(Re.OP_TOALTSTACK),e.add(Re.OP_DUP),Mh.extractHashOutputs(e),e.add(Re.OP_TOALTSTACK),e.add(Ro(104)).add(Re.OP_SPLIT).add(Re.OP_NIP).add(Re.OP_SIZE).add(Ro(52)).add(Re.OP_SUB).add(Re.OP_SPLIT).add(Re.OP_DROP),e.add(Re.OP_DUP).add(Ro(4)).add(Ro(20)).add(Re.OP_SUBSTR),e.add(Re.OP_SWAP).add(Re.OP_TOALTSTACK),t.emit(e),e.add(Re.OP_FROMALTSTACK),e}function YM(e){return e.add(Ro(4)).add(Re.OP_SPLIT).add(Ro(20)).add(Re.OP_SPLIT).add(Re.OP_NIP),e.add(Re.OP_TOALTSTACK),e.add(Re.OP_SWAP).add(Re.OP_CAT),e.add(Re.OP_FROMALTSTACK).add(Re.OP_CAT),e}function ZM(e){var t=e.toBuffer().length;if(t<=252||t>65535)throw new Error("token script length must use a 3-byte varint (253..65535); got "+t);return e}function E$(e,t,r){r=r||Dh.singleKey();var i=new Xm;return i.add(GM(t,r)),i.add(Re.OP_DROP),WM(i,r),YM(i),i.add(Re.OP_FROMALTSTACK),i.add(Re.OP_SWAP),i.add(Re.OP_FROMALTSTACK),i.add(Re.OP_BIN2NUM).add(Ro(e)).add(Re.OP_SUB).add(Ro(8)).add(Re.OP_NUM2BIN),i.add(Re.OP_SWAP).add(Re.OP_CAT),i.add(Re.OP_HASH256),i.add(Re.OP_EQUAL),ZM(i)}function $M(e,t){t=t||Dh.singleKey();var r=new Xm;return r.add(GM(e,t)),r.add(Re.OP_DROP),WM(r,t),YM(r),r.add(Re.OP_CAT),r.add(Re.OP_SWAP).add(Re.OP_CAT),r.add(Re.OP_CAT),r.add(Re.OP_FROMALTSTACK),r.add(Re.OP_FROMALTSTACK).add(Re.OP_DROP),r.add(Re.OP_SWAP).add(Re.OP_HASH256).add(Re.OP_EQUAL),ZM(r)}function x$(e){return Dh.singleKey().commit(e)}function O$(e,t,r,i,n,o){o=o||{};var a=o.auth||Dh.singleKey(),s=o.inputIndex||0;if(t.length!==20)throw new Error("newOwnerHash must be 20 bytes (HASH160)");if(i<=1&&!o.allowLowValue)throw new Error("unlockTransfer: single-output token sets output = input - fee, which burns a "+i+"-sat UTXO (e.g. a 1-sat ordinal). Use Token.transferOrdinal / ownershipTokenMulti to preserve the satoshi.");Mh.grind(r,s,n,i,o.grind);var u=gS.rawPreimage(r,s,n,i),c=a.unlockArgs(r,s,n,i,e),l=new Xm().add(f.Buffer.from(t));return c.forEach(function(p){l.add(p)}),l.add(f.Buffer.from(u)),l}function XM(e,t,r,i,n,o,a){a=a||{};var s=a.auth||Dh.singleKey(),u=a.inputIndex||0;if(t.length!==20)throw new Error("newOwnerHash must be 20 bytes (HASH160)");if(!o||o.tokenValue==null||o.tokenValue.length!==8)throw new Error("layout.tokenValue must be the 8-byte LE value of the token output");Mh.grind(r,u,n,i,a.grind);var c=gS.rawPreimage(r,u,n,i),l=s.unlockArgs(r,u,n,i,e),p=new Xm;return VM(p,o.before||f.Buffer.alloc(0)),VM(p,o.after||f.Buffer.alloc(0)),p.add(f.Buffer.from(o.tokenValue)),p.add(f.Buffer.from(t)),l.forEach(function(d){p.add(d)}),p.add(f.Buffer.from(c)),p}function I$(e,t){return $M(e,t)}function A$(e,t,r,i,n,o){o=o||{},i==null&&(i=1);var a=o.tokenIndex||0,s=r.outputs||[],u=s[a];if(!u)throw new Error("transferOrdinal: spend has no output at tokenIndex "+a);if(u.satoshis!==i)throw new Error("transferOrdinal: token output value ("+u.satoshis+" sat) must equal the ordinal value ("+i+" sat) to avoid burning the inscription");function c(v){return v.toBufferWriter().toBuffer()}var l=f.Buffer.concat(s.slice(0,a).map(c)),p=f.Buffer.concat(s.slice(a+1).map(c)),d=new S$(i).toBuffer({endian:"little",size:8});return XM(e,t,r,i,n,{before:l,after:p,tokenValue:d},o)}JM.exports={ownershipToken:E$,ownershipTokenMulti:$M,ordinalLock:I$,ownerId:x$,unlockTransfer:O$,unlockTransferMulti:XM,transferOrdinal:A$}});var SS=T((Afe,QM)=>{"use strict";g();var Jm=gf(),T$=lS(),P$=mS(),_S=To(),vS=ut(),ur=Pr(),yS=zt(),yf=_S.scriptNum,bS=5e8,R$=f.Buffer.from([255,255,255,255]),k$=f.Buffer.from([0]);function B$(e,t){return e instanceof yS.Output?e:e instanceof vS?new yS.Output({script:e,satoshis:t}):_S.p2pkhOutput(e,t)}function N$(e,t,r,i,n,o){o=o||5e4;for(var a=0;a<o;a++){e.nLockTime=n+a;var s=_S.rawPreimage(e,t,r,i);if(Jm.sFromPreimage(s))return s}throw new Error("covenant grind failed after "+o+" tries")}function Ea(){if(!(this instanceof Ea))return new Ea;this._outputs=[],this._minLockTime=null}Ea.prototype.payTo=function(e,t){return this._outputs.push(B$(e,t)),this};Ea.prototype.lockUntil=function(e){if(!Number.isInteger(e)||e<1||e>4294967295)throw new Error("lockUntil: expected an integer in 1..4294967295, got "+e+' (nLockTime 0 means "no lock" \u2014 consensus treats such a transaction as final)');return this._minLockTime=e,this};Ea.prototype.outputs=function(){return this._outputs.map(function(e){return new yS.Output(e.toObject())})};Ea.prototype.describe=function(){var e=[];if(this._outputs.forEach(function(r,i){e.push("output["+i+"] = "+r.satoshis+" sat to "+r.script.toASM().slice(0,24)+"...")}),this._minLockTime!==null){var t=this._minLockTime<bS?"block height":"unix time";e.push("nLockTime >= "+this._minLockTime+" as a "+t),e.push("this input is non-final (nSequence != 0xffffffff)")}return"spend allowed iff: "+e.join(" AND ")};Ea.prototype.compile=function(){if(this._outputs.length===0&&this._minLockTime===null)throw new Error("empty policy: add at least one constraint (payTo / lockUntil)");var e=this,t=new vS().add(ur.OP_DUP);if(Jm.pushTxCore(t),t.add(ur.OP_VERIFY),this._outputs.length){var r=Jm.hashOutputs(this._outputs);t.add(ur.OP_DUP),Jm.extractHashOutputs(t),t.add(f.Buffer.from(r)).add(ur.OP_EQUALVERIFY)}return this._minLockTime!==null&&(t.add(ur.OP_DUP),t.add(yf(44)).add(ur.OP_RIGHT).add(yf(4)).add(ur.OP_LEFT),t.add(R$).add(ur.OP_EQUAL).add(ur.OP_NOT).add(ur.OP_VERIFY),t.add(ur.OP_DUP),t.add(yf(8)).add(ur.OP_RIGHT).add(yf(4)).add(ur.OP_LEFT),t.add(k$).add(ur.OP_CAT).add(ur.OP_BIN2NUM),this._minLockTime<bS&&t.add(ur.OP_DUP).add(yf(bS)).add(ur.OP_LESSTHAN).add(ur.OP_VERIFY),t.add(yf(this._minLockTime)).add(ur.OP_GREATERTHANOREQUAL).add(ur.OP_VERIFY)),t.add(ur.OP_DROP).add(ur.OP_1),{lock:t,outputs:e.outputs(),describe:function(){return e.describe()},unlock:function(i,n,o){o=o||0;var a=e._minLockTime===null?0:e._minLockTime;return e._minLockTime!==null&&(i.inputs[o].sequenceNumber=4294967294),new vS().add(N$(i,o,t,n,a))}}};function wS(){return new Ea}wS.perpetual=function(e){return T$.pelsCovenant(e)};wS.token=function(e,t){return P$.ownershipToken(e,t)};QM.exports={policy:wS,Policy:Ea}});var nD=T((Pfe,iD)=>{"use strict";g();var C$=hn(),L$=Ke(),M$=zt(),D$=Pr(),H$=To();function tD(e){if(e===0)return"OP_0";if(e>=1&&e<=75)return"PUSH("+e+")";if(e===76)return"OP_PUSHDATA1";if(e===77)return"OP_PUSHDATA2";if(e===78)return"OP_PUSHDATA4";try{return D$.fromNumber(e).toString()}catch{return"0x"+e.toString(16)}}function eD(e,t){t=t||16;var r=f.Buffer.from(e).toString("hex");return r.length<=t*2?r||"0":r.slice(0,t*2)+"...("+e.length+"B)"}function q$(e,t,r){r=r||{};var i=new C$,n=[];i.stepListener=function(a,s,u){n.push({phase:i.script===t?"lock":"unlock",op:tD(a.opcode&&typeof a.opcode.toNumber=="function"?a.opcode.toNumber():a.opcode.num),stack:s.map(function(c){return eD(c)}),altstack:u.map(function(c){return eD(c)})})};var o=i.verify(e,t,r.tx||new M$,r.inputIndex||0,typeof r.flags=="number"?r.flags:H$.flags(),new L$(r.satoshis||0));return{ok:o,err:i.errstr||"",steps:n}}function rD(e){var t=[],r=null;return e.steps.forEach(function(i,n){i.phase!==r&&(t.push("-- "+i.phase+" script --"),r=i.phase);var o=i.stack.length?i.stack.join(" | "):"(empty)",a=i.altstack.length?" alt:["+i.altstack.join(" | ")+"]":"";t.push(String(n).padStart(3)+" "+i.op.padEnd(16)+" -> ["+o+"]"+a)}),t.push((e.ok?"VALID":"INVALID")+(e.err?" ("+e.err+")":"")),t.join(`
97
97
  `)}function U$(e){return console.log(rD(e)),e}iD.exports={trace:q$,format:rD,print:U$,opLabel:tD}});var sD=T((kfe,aD)=>{"use strict";g();var F$=Le(),oD=zt(),j$=Ni(),z$=ut(),Q={Covenant:qL(),Preimage:Ao(),SIGHASH:KL(),Builder:YL(),UTXOGenerator:oM(),ScriptTester:uM(),CovenantBuilder:Zw().CovenantBuilder,CovenantTemplates:Zw().CovenantTemplates,OpcodeMap:Gw(),ScriptUtils:gM(),StackExaminer:vM(),ScriptInterpreter:SM(),CovenantHelpers:To(),Locks:NM(),PushTx:gf(),PELS:lS(),Token:mS(),Authorizers:pS(),DSL:SS(),Policy:SS().Policy,Debugger:nD()};Q.policy=Q.DSL.policy;Q.trace=function(e,t,r){return Q.Debugger.trace(e,t,r)};Q.verifyScript=function(e,t,r){return Q.CovenantHelpers.verify(e,t,r)};Q.perpetualCovenant=function(e){return Q.PELS.pelsCovenant(e)};Q.ownershipToken=function(e,t,r){return Q.Token.ownershipToken(e,t,r)};Q.valueCovenant=function(e){return Q.PushTx.valueCovenant(e)};Q.ordinalLock=function(e,t){return Q.Token.ordinalLock(e,t)};Q.transferOrdinal=function(e,t,r,i,n,o){return Q.Token.transferOrdinal(e,t,r,i,n,o)};Q.createCovenant=function(e,t){return new Q.Covenant(e,t)};Q.extractPreimage=function(e,t){return new Q.Preimage(e,t)};Q.analyzeSIGHASH=function(e){return new Q.SIGHASH(e)};Q.buildCovenant=function(e,t){return new Q.Builder(e,t)};Q.createUTXOGenerator=function(e){return new Q.UTXOGenerator(e)};Q.createTestEnvironment=function(e){return Q.UTXOGenerator.createTestEnvironment(e)};Q.testScript=function(e,t,r){return Q.ScriptTester.test(e,t,r)};Q.testCovenant=function(e,t,r){return Q.ScriptTester.testCovenant(e,t,r)};Q.testFieldExtraction=function(e,t,r){return Q.ScriptTester.testFieldExtraction(e,t,r)};Q.debugScript=function(e,t){var r=new Q.ScriptTester(t);return r.debug(e)};Q.explainZeroHashes=function(){return Q.SIGHASH.explainZeroMystery()};Q.getAllSIGHASHTypes=function(){return Q.SIGHASH.getAllTypes()};Q.demonstrateAllSIGHASH=function(){return Q.SIGHASH.generateAllDemonstrations()};Q.createCovenantBuilder=function(){return new Q.CovenantBuilder};Q.createValueLockCovenant=function(e){return Q.CovenantTemplates.valueLock(e)};Q.createHashLockCovenant=function(e){return Q.CovenantTemplates.hashLock(e)};Q.createComplexValidationCovenant=function(e){return Q.CovenantTemplates.complexValidation(e)};Q.getOpcodeMap=function(){return Q.OpcodeMap.opcodeMap};Q.simulateScript=function(e,t){return Q.OpcodeMap.utils.simulate(e,t)};Q.createASMFromJS=function(e){return Q.OpcodeMap.utils.createASM(e)};Q.scriptToASM=function(e){return Q.ScriptUtils.scriptToASM(e)};Q.asmToScript=function(e){return Q.ScriptUtils.asmToScript(e)};Q.asmToHex=function(e){return Q.ScriptUtils.asmToHex(e)};Q.hexToASM=function(e){return Q.ScriptUtils.hexToASM(e)};Q.scriptToHex=function(e){return Q.ScriptUtils.scriptToHex(e)};Q.validateASM=function(e){return Q.ScriptUtils.validateASM(e)};Q.validateScript=function(e){return Q.ScriptUtils.validateScript(e)};Q.estimateScriptSize=function(e){return Q.ScriptUtils.estimateScriptSize(e)};Q.optimizeScript=function(e){return Q.ScriptUtils.optimizeScript(e)};Q.compareScripts=function(e,t){return Q.ScriptUtils.compareScripts(e,t)};Q.explainScript=function(e){return Q.ScriptUtils.explainScript(e)};Q.scriptMetrics=function(e){return Q.ScriptUtils.scriptMetrics(e)};Q.analyzeComplexity=function(e){return Q.ScriptUtils.analyzeComplexity(e)};Q.findOptimizations=function(e){return Q.ScriptUtils.findOptimizations(e)};Q.covenantToEnglish=function(e){return Q.ScriptUtils.covenantToEnglish(e)};Q.batchTestScripts=function(e,t){return Q.ScriptUtils.batchTestScripts(e,t)};Q.examineStack=function(e,t){return Q.StackExaminer.runScript(e,t)};Q.debugScriptExecution=function(e,t,r){return r=r||{},r.stepMode?Q.ScriptInterpreter.stepThroughScript(Q.ScriptInterpreter.parseScript(e+" "+t),new oD,!0):Q.ScriptInterpreter.runFullEvaluation(Q.ScriptInterpreter.parseScript(e),Q.ScriptInterpreter.parseScript(t),new oD)};Q.parseScript=function(e){return Q.ScriptInterpreter.parseScript(e)};Q.printStack=function(e,t){return Q.ScriptInterpreter.printStack(e,t)};Q.createQuickCovenant=function(e,t){let r=Q.createCovenantBuilder();switch(e){case"value_lock":return r.comment(`Value lock: minimum ${t.value} satoshis`).extractField("value").push(t.value).greaterThanOrEqual().verify().build();case"hash_lock":return r.comment(`Hash lock: requires preimage of ${t.hash}`).push("secret_placeholder").sha256().push(t.hash).equalVerify().build();case"time_lock":return r.comment(`Time lock: requires nLockTime > ${t.timestamp}`).extractField("nLockTime").push(t.timestamp).greaterThan().verify().build();case"multi_condition":let i=r.comment("Multi-condition covenant");return t.conditions.forEach(n=>{switch(n.type){case"value":i=i.extractField("value").push(n.value).greaterThanOrEqual().verify();break;case"hash":i=i.push("secret_placeholder").sha256().push(n.hash).equalVerify();break;case"time":i=i.extractField("nLockTime").push(n.timestamp).greaterThan().verify();break}}),i.build();default:throw new Error(`Unknown covenant type: ${e}`)}};Q.completeCovenantFlow=function(e,t,r){var i=new Q.Covenant(e);return i.completeFlow(t,r)};Q.getEducationalResources=function(){return{zeroHashMystery:Q.SIGHASH.explainZeroMystery(),sighashTypes:Q.SIGHASH.getAllTypes(),exampleDemonstrations:Q.SIGHASH.generateAllDemonstrations()}};Q.utils={};Q.utils.reconstructP2pkhScript=function(e){return z$.buildPublicKeyHashOut(e).toHex()};Q.utils.createCovenantAddress=function(e){var t=F$.sha256ripemd160(e.toBuffer());return j$.fromScriptHash(t)};Q.utils.decodeCompactSize=function(e,t){return Q.Preimage.decodeCompactSize(e,t)};Q.version=eb();Q.description="Smart Contract Framework for Bitcoin SV";Q.features={BIP143_PREIMAGE:!0,COMPACT_SIZE_VARINT:!0,BIDIRECTIONAL_EXTRACTION:!0,SIGHASH_DETECTION:!0,ZERO_HASH_WARNINGS:!0,MULTI_FIELD_VALIDATION:!0,REAL_UTXO_GENERATION:!0,SCRIPT_TESTING:!0,LOCAL_VERIFICATION:!0,JAVASCRIPT_TO_SCRIPT:!0,OPCODE_MAPPING:!0,COVENANT_BUILDER:!0,SCRIPT_ANALYSIS:!0,SCRIPT_OPTIMIZATION:!0,SCRIPT_CONVERSION:!0,BATCH_TESTING:!0,QUICK_COVENANTS:!0,SCRIPT_EXPLANATIONS:!0,STACK_EXAMINATION:!0,SCRIPT_DEBUGGING:!0,STEP_BY_STEP_EXECUTION:!0,INTERACTIVE_DEBUGGING:!0};Q.interpretScript=Q.debugScriptExecution;Q.getScriptMetrics=Q.scriptMetrics;aD.exports=Q});var uD=T((Nfe,Hh)=>{"use strict";g();var Qm=function(){var e=typeof b.default<"u"&&b.default.env&&b.default.env.BSV_DEBUG||typeof window<"u"&&window.BSV_DEBUG;e&&console.log.apply(console,arguments)},xa={MEMORY:"memory",SESSION:"session",LOCAL:"local"};function Ii(e){e=e||{},this.options={storage:e.storage||xa.MEMORY,storageKey:e.storageKey||"smartledger-utxos",autoSave:e.autoSave!==!1,maxUTXOs:e.maxUTXOs||1e3};var t=[xa.MEMORY,xa.SESSION,xa.LOCAL];if(t.indexOf(this.options.storage)===-1)throw new Error("Invalid storage type: "+this.options.storage);this.utxos=new Map,this.addressIndex=new Map,this.spentUTXOs=new Map,this.metadata={totalUTXOs:0,totalValue:0,createdAt:new Date().toISOString(),lastModified:new Date().toISOString()},this.loadFromStorage()}Ii.prototype.getStorage=function(){return this.options.storage===xa.SESSION?typeof sessionStorage<"u"?sessionStorage:null:this.options.storage===xa.LOCAL&&typeof localStorage<"u"?localStorage:null};Ii.prototype.loadFromStorage=function(){var e=this.getStorage();if(e)try{var t=e.getItem(this.options.storageKey);if(!t)return;var r=JSON.parse(t);if(!r.utxos)return;var i=this;r.utxos.forEach(function(n){var o=n.txid+":"+n.vout;i.utxos.set(o,n),i.addressIndex.has(n.address)||i.addressIndex.set(n.address,new Set),i.addressIndex.get(n.address).add(o)}),r.metadata&&(this.metadata=r.metadata),Qm("\u2705 BrowserUTXOManager: Loaded "+this.utxos.size+" UTXOs from "+this.options.storage+" storage")}catch(n){console.error("Failed to load UTXOs from storage:",n)}};Ii.prototype.saveToStorage=function(){if(this.options.storage!==xa.MEMORY){var e=this.getStorage();if(e)try{var t={utxos:Array.from(this.utxos.values()),metadata:this.metadata,version:"1.0.0",timestamp:new Date().toISOString()};e.setItem(this.options.storageKey,JSON.stringify(t)),Qm("\u{1F4BE} BrowserUTXOManager: Saved "+this.utxos.size+" UTXOs to "+this.options.storage+" storage")}catch(r){console.error("Failed to save UTXOs to storage:",r)}}};Ii.prototype.addUTXO=function(e){if(!e||!e.txid||typeof e.vout!="number")throw new Error("Invalid UTXO: missing txid or vout");var t=e.txid+":"+e.vout;if(this.utxos.has(t))return Qm("\u26A0\uFE0F UTXO already exists: "+t),!1;var r={txid:e.txid,vout:e.vout,address:e.address||"",satoshis:e.satoshis||0,script:e.script||"",status:"available",addedAt:new Date().toISOString()};return this.utxos.set(t,r),r.address&&(this.addressIndex.has(r.address)||this.addressIndex.set(r.address,new Set),this.addressIndex.get(r.address).add(t)),this.updateMetadata(),this.options.autoSave&&this.saveToStorage(),!0};Ii.prototype.getUTXOsForAddress=function(e){var t=this.addressIndex.get(e);if(!t)return[];var r=[],i=this;return t.forEach(function(n){var o=i.utxos.get(n);o&&o.status==="available"&&r.push(o)}),r};Ii.prototype.getBalance=function(e){var t=this.getUTXOsForAddress(e);return t.reduce(function(r,i){return r+(i.satoshis||0)},0)};Ii.prototype.spendUTXOs=function(e,t){t=t||"browser-spend";for(var r=[],i=0;i<e.length;i++){var n=e[i],o=n.txid+":"+n.vout,a=this.utxos.get(o);a&&a.status==="available"&&(a.status="spent",a.spentAt=new Date().toISOString(),a.spentInTx=t,this.spentUTXOs.set(o,{txid:a.txid,vout:a.vout,spentInTx:t,spentAt:a.spentAt}),r.push(a))}return this.updateMetadata(),this.options.autoSave&&this.saveToStorage(),r};Ii.prototype.getUTXO=function(e,t){var r=e+":"+t,i=this.utxos.get(r);return{exists:!!i,utxo:i,status:i?i.status:"not-found"}};Ii.prototype.createMockUTXOs=function(e,t,r){t=t||5,r=r||1e5;for(var i=[],n=0;n<t;n++){for(var o="",a=0;a<64;a++)o+=Math.floor(Math.random()*16).toString(16);var s={txid:o,vout:n,address:e,satoshis:r+Math.floor(Math.random()*1e4),script:"",status:"available"};this.addUTXO(s),i.push(s)}return i};Ii.prototype.getStats=function(){var e=0,t=0,r=0;return this.utxos.forEach(function(i){e+=i.satoshis||0,i.status==="available"?t++:i.status==="spent"&&r++}),{totalUTXOs:this.utxos.size,totalAvailable:t,totalSpent:r,totalValue:e,totalAddresses:this.addressIndex.size,storageType:this.options.storage,metadata:this.metadata}};Ii.prototype.updateMetadata=function(){var e=this.getStats();this.metadata.totalUTXOs=e.totalUTXOs,this.metadata.totalValue=e.totalValue,this.metadata.lastModified=new Date().toISOString()};Ii.prototype.exportData=function(){return JSON.stringify({utxos:Array.from(this.utxos.values()),metadata:this.metadata,version:"1.0.0",exportedAt:new Date().toISOString()})};Ii.prototype.importData=function(e,t){t=t||!1;try{var r=JSON.parse(e);if(t||(this.utxos.clear(),this.addressIndex.clear(),this.spentUTXOs.clear()),r.utxos&&Array.isArray(r.utxos)){var i=this;r.utxos.forEach(function(n){i.addUTXO(n)})}return Qm("\u2705 BrowserUTXOManager: Imported "+(r.utxos&&r.utxos.length||0)+" UTXOs"),!0}catch(n){return console.error("Failed to import UTXO data:",n),!1}};typeof Hh<"u"&&Hh.exports?(Hh.exports=Ii,Hh.exports.STORAGE_TYPES=xa):typeof window<"u"&&(window.BrowserUTXOManager=Ii,window.BrowserUTXOManager.STORAGE_TYPES=xa)});var fD=T((Lfe,cD)=>{"use strict";g();var ES=class{constructor(t,r={}){this.bsv=t,this.options={difficulty:r.difficulty||1,blockTime:r.blockTime||1e4,validateScripts:r.validateScripts!==!1,logLevel:r.logLevel||"info",...r},this.currentBlock={height:0,transactions:[],timestamp:Date.now()},this.mempool=[]}acceptTransaction(t){try{return this.options.validateScripts&&!this.validateTransactionSignatures(t)?(this.log("warn","\u274C Transaction rejected: Invalid signatures"),!1):(this.mempool.push(t),this.log("info",`\u2705 Transaction accepted into mempool: ${t.id||"unknown"}`),!0)}catch(r){return this.log("error",`\u274C Transaction rejected: ${r.message}`),!1}}validateTransactionSignatures(t){try{let r=t.verify();return this.log("debug",`\u{1F4CA} Transaction verification result: ${r}`),r===!0}catch(r){return this.log("warn",`\u26A0\uFE0F Signature validation error: ${r.message}`),!1}}mineBlock(t=10){let r=this.mempool.splice(0,t),i={height:this.currentBlock.height+1,timestamp:Date.now(),transactions:r,transactionCount:r.length,previousBlockHash:this.currentBlock.hash||"0000000000000000000000000000000000000000000000000000000000000000"},n=JSON.stringify({height:i.height,timestamp:i.timestamp,previousBlockHash:i.previousBlockHash,transactions:r.map(o=>o.id||o.toString())});return i.hash=this.bsv.crypto.Hash.sha256(f.Buffer.from(n)).toString("hex"),this.currentBlock=i,this.log("info",`\u26CF\uFE0F Mined block ${i.height} with ${r.length} transactions`),this.log("debug",`\u{1F4E6} Block hash: ${i.hash}`),i}getMempoolStats(){return{transactionCount:this.mempool.length,transactions:this.mempool.map(t=>({id:t.id||"unknown",size:t.toBuffer?t.toBuffer().length:0,inputs:t.inputs?t.inputs.length:0,outputs:t.outputs?t.outputs.length:0}))}}getBlockchainStats(){return{currentHeight:this.currentBlock.height,currentBlockHash:this.currentBlock.hash,currentBlockTimestamp:this.currentBlock.timestamp,mempoolSize:this.mempool.length,difficulty:this.options.difficulty,blockTime:this.options.blockTime}}reset(){this.currentBlock={height:0,transactions:[],timestamp:Date.now()},this.mempool=[],this.log("info","\u{1F504} Miner reset to genesis state")}log(t,r){let i={error:0,warn:1,info:2,debug:3},n=i[this.options.logLevel]||2;if(i[t]<=n){let o=new Date().toISOString();console.log(`[${o}] [${t.toUpperCase()}] ${r}`)}}};cD.exports=ES});var pD=T((Dfe,dD)=>{g();var lD=mi(),bf=hn(),ko=gt(),hD=Ke(),K$=zt(),Zi=Pr(),vu=ut(),_f=class{static createSignature(t,r,i,n,o,a=null){a=a||ko.SIGHASH_ALL|ko.SIGHASH_FORKID;let s=lD.sign(t,r,a,i,n,new hD(o));return f.Buffer.concat([s.toDER(),f.Buffer.from([a])])}static createMultisigScript(t,r){let i=new vu().add(Zi[`OP_${t}`]);for(let n of r)i=i.add(n.toBuffer());return i.add(Zi[`OP_${r.length}`]).add(Zi.OP_CHECKMULTISIG)}static createMultisigUnlocking(t){let r=new vu().add(Zi.OP_0);for(let i of t)r=r.add(i);return r}static createConditionalScript(t,r=null){let i=new vu().add(Zi.OP_IF).add(t.toBuffer());return r&&(i=i.add(Zi.OP_ELSE).add(r.toBuffer())),i.add(Zi.OP_ENDIF)}static createP2PKHScript(t){return new vu().add(Zi.OP_DUP).add(Zi.OP_HASH160).add(t.toAddress().hashBuffer).add(Zi.OP_EQUALVERIFY).add(Zi.OP_CHECKSIG)}static createP2PKHUnlocking(t,r){return new vu().add(t).add(r.toBuffer())}static getPreimage(t,r,i,n,o=null){return o=o||ko.SIGHASH_ALL|ko.SIGHASH_FORKID,lD.sighash(t,o,r,i,new hD(n))}static createDataScript(t){return typeof t=="string"&&(t=f.Buffer.from(t,"utf8")),new vu().add(t)}static createOpReturnScript(t){return typeof t=="string"&&(t=f.Buffer.from(t,"utf8")),new vu().add(Zi.OP_FALSE).add(Zi.OP_RETURN).add(t)}static validateTransaction(t){try{return t.verify()}catch(r){return console.error("Transaction validation error:",r.message),!1}}static validateScript(t,r,i,n){try{return new bf().verify(t,r,i,n,bf.SCRIPT_VERIFY_P2SH|bf.SCRIPT_VERIFY_STRICTENC|bf.SCRIPT_ENABLE_SIGHASH_FORKID|bf.SCRIPT_ENABLE_MAGNETIC_OPCODES|bf.SCRIPT_ENABLE_MONOLITH_OPCODES)}catch(o){return console.error("Script validation error:",o.message),!1}}static createLowFeeTransaction(t,r,i=10){let n=new K$().feePerKb(i);for(let o of t)n=n.from(o);for(let o of r)n=n.to(o.address,o.satoshis);return n}};_f.SIGHASH_ALL=ko.SIGHASH_ALL|ko.SIGHASH_FORKID;_f.SIGHASH_NONE=ko.SIGHASH_NONE|ko.SIGHASH_FORKID;_f.SIGHASH_SINGLE=ko.SIGHASH_SINGLE|ko.SIGHASH_FORKID;dD.exports=_f});var ev=T((qfe,_D)=>{"use strict";g();var Oa=ut(),Kn=Pr(),gD=Ni(),V$=gi(),mD=f.Buffer.from("ord","utf8");function vD(e){if(e===null)return"null";if(e===void 0)return"undefined";if(Array.isArray(e))return"an array";var t=typeof e;return(t==="object"?"an ":"a ")+t}function xS(e,t){if(f.Buffer.isBuffer(e))return e;if(typeof e=="string")return f.Buffer.from(e,"utf8");throw new Error(t+" must be a string or Buffer, got "+vD(e))}var G$=["data","body","payload","text","message"];function W$(e){var t=e.lock!=null,r=e.address!=null;if(t&&r)throw new Error("buildInscription accepts `lock` or `address`, not both \u2014 they name different owners and one would be silently ignored");if(t){var i;if(e.lock instanceof Oa)i=e.lock;else if(f.Buffer.isBuffer(e.lock))i=Oa.fromBuffer(e.lock);else if(typeof e.lock=="string")i=Oa.fromHex(e.lock);else throw new Error("lock must be a Script, Buffer, or hex string, got "+vD(e.lock));if(!i.chunks.length&&!e.allowEmptyLock)throw new Error("lock is empty: the inscription would carry no locking script at all and the ordinal would be spendable by anyone. Pass a real lock, or { allowEmptyLock: true } if you are appending this envelope to your own script");return i}if(r){var n=e.address instanceof gD?e.address:gD.fromString(String(e.address));return Oa.buildPublicKeyHashOut(n)}throw new Error("buildInscription requires an address or a lock script")}var Y$=[0,1,2,3,5,7,9,11],Z$=0,$$=1;function X$(e,t){if(t>=1&&t<=16)return e.add(Kn.OP_1-1+t);for(var r=[],i=t;i>0;)r.push(i&255),i=Math.floor(i/256);return r[r.length-1]&128&&r.push(0),e.add(f.Buffer.from(r))}function J$(e,t){if(!Number.isSafeInteger(e)||e<0)throw new Error("field tag must be a non-negative integer, got "+JSON.stringify(e));if(e===Z$)throw new Error("field tag 0 opens the inscription body and cannot carry a field: anything pushed after it becomes part of the content");if(e===$$)throw new Error("field tag 1 is the content type; pass `contentType` instead of a field, or the inscription declares it twice");if(e%2===0&&Y$.indexOf(e)===-1&&!t)throw new Error("field tag "+e+" is an unrecognized even tag. The Ordinals spec requires such an inscription to be treated as unbound \u2014 it would be indexed without a location, permanently, and nothing local would report it. Use an odd tag, or pass { allowUnknownEvenFields: true } if you have established that every indexer you care about recognises "+e+".")}function Q$(e){var t=e.fields;if(t==null)return[];if(typeof t!="object"||Array.isArray(t)||f.Buffer.isBuffer(t))throw new Error("fields must be an object of tag numbers to values, e.g. { 5: metadata }");return Object.keys(t).filter(function(r){return t[r]!=null}).map(function(r){var i=Number(r);J$(i,e.allowUnknownEvenFields);var n=xS(t[r],"field "+i);if(!n.length)throw new Error("field "+i+" has an empty value; omit the field instead of inscribing a zero-length one permanently");return[i,n]}).sort(function(r,i){return r[0]-i[0]})}function yD(e){e=e||{};var t=W$(e);if(e.content==null){var r=G$.filter(function(s){return e[s]!=null})[0];throw new Error("buildInscription requires `content`"+(r?" \u2014 received `"+r+"`, which is not read":"")+". Omitting it would inscribe an empty payload; pass content: '' if that is intended")}var i=xS(e.content,"content"),n;if(e.contentType==null){if(f.Buffer.isBuffer(e.content))throw new Error("contentType is required when content is a Buffer (e.g. 'image/png', 'application/octet-stream') \u2014 it cannot be inferred from bytes");n=f.Buffer.from("text/plain","utf8")}else if(n=xS(e.contentType,"contentType"),!n.length)throw new Error("contentType must not be empty");var o=Q$(e),a=Oa.fromBuffer(t.toBuffer());return a.add(Kn.OP_FALSE),a.add(Kn.OP_IF),a.add(mD),a.add(Kn.OP_1),a.add(n),o.forEach(function(s){X$(a,s[0]),a.add(s[1])}),a.add(Kn.OP_0),a.add(i),a.add(Kn.OP_ENDIF),a}function qh(e,t){return e&&e.opcodenum===t&&e.buf==null}function bD(e){for(var t=e instanceof Oa?e:f.Buffer.isBuffer(e)?Oa.fromBuffer(e):Oa.fromHex(e),r=t.chunks,i=-1,n=0;n+2<r.length;n++)if(qh(r[n],Kn.OP_FALSE)&&qh(r[n+1],Kn.OP_IF)&&r[n+2].buf&&r[n+2].buf.equals(mD)){i=n;break}if(i===-1)return null;for(var o=f.Buffer.alloc(0),a=f.Buffer.alloc(0),s=r.length,u=i+3;u<r.length;u++){var c=r[u];if(qh(c,Kn.OP_ENDIF)){s=u;break}qh(c,Kn.OP_1)&&r[u+1]&&r[u+1].buf?(o=r[u+1].buf,u++):qh(c,Kn.OP_0)&&r[u+1]&&r[u+1].buf&&(a=r[u+1].buf,u++)}for(var l=new Oa,p=0;p<i;p++)l.chunks.push(r[p]);for(var d=s+1;d<r.length;d++)l.chunks.push(r[d]);return{contentType:o.toString("utf8"),content:a,contentText:a.toString("utf8"),lock:l}}function eX(e){try{return bD(e)!==null}catch{return!1}}function tX(e){e=e||{};var t=e.satoshis!=null?e.satoshis:1;if(typeof t!="number"||!Number.isInteger(t)||t<1)throw new Error("satoshis must be a positive integer (1 for a standard 1Sat ordinal)");return new V$({script:yD(e),satoshis:t})}_D.exports={buildInscription:yD,parseInscription:bD,isInscription:eX,createInscriptionOutput:tX}});var PD=T((Ffe,TD)=>{"use strict";g();var Sf=gf(),OS=To(),ED=ev(),Bo=ut(),Vt=Pr(),IS=Ni(),rX=sr(),iX=Le(),xD=zt(),nX=ho(),ms=gi(),OD=lo(),iv=Sf.SIGHASH_ALL_ANYONECANPAY_FORKID;function wD(e,t){return t&&t.length?e.add(f.Buffer.from(t)):e.add(Vt.OP_0)}function tv(e){return e.toBufferWriter().toBuffer()}function Ef(e,t){if(typeof e!="number"||!isFinite(e)||e<0||Math.floor(e)!==e)throw new Error(t+" must be a non-negative integer number of satoshis (got "+e+")");return e}function ov(e){return e instanceof Bo?e:f.Buffer.isBuffer(e)?Bo.fromBuffer(e):Bo.fromHex(e)}function ID(e){return e instanceof IS?e:e&&typeof e.toAddress=="function"?e.toAddress():IS.fromString(String(e))}function oX(e){if(f.Buffer.isBuffer(e)){if(e.length!==20)throw new Error("seller pubkeyhash buffer must be 20 bytes (HASH160)");return e}return e instanceof rX?iX.sha256ripemd160(e.toBuffer()):ID(e).hashBuffer}function xf(e,t){return Ef(t,"payment price"),new ms({script:Bo.buildPublicKeyHashOut(ID(e)),satoshis:t})}function rv(e){if(e instanceof ms)return e;if(f.Buffer.isBuffer(e))return ms.fromBufferReader(new OD(e));var t=e.payTo!=null?e.payTo:e.address,r=e.satoshis!=null?e.satoshis:e.price;if(t==null||r==null)throw new Error("payment spec needs {address|payTo, satoshis|price}");return xf(t,r)}function aX(e){if(e.payOutputs){if(!e.payOutputs.length)throw new Error("payOutputs must be a non-empty array");return e.payOutputs.map(rv)}if(e.payOutput!=null)return[rv(e.payOutput)];if(e.price!=null){var t=e.payTo!=null?e.payTo:e.seller,r=t instanceof ms?t:xf(t,e.price),i=[r];return e.royalties&&e.royalties.forEach(function(n){i.push(rv(n))}),i}throw new Error("buildOrdLock requires a price, a payOutput, or payOutputs")}function sX(e){return f.Buffer.concat(e.map(tv))}function av(e){if(e=e||{},e.seller==null)throw new Error("buildOrdLock requires a seller");var t=oX(e.seller),r=sX(aX(e)),i=new Bo;if(i.add(Vt.OP_IF),i.add(Vt.OP_DUP).add(Vt.OP_HASH160),i.add(f.Buffer.from(t)).add(Vt.OP_EQUALVERIFY).add(Vt.OP_CHECKSIG),i.add(Vt.OP_ELSE),i.add(Vt.OP_DUP),Sf.pushTxCore(i,{sighashType:iv}),i.add(Vt.OP_VERIFY),Sf.assertSighashType(i,iv),Sf.extractHashOutputs(i),i.add(Vt.OP_TOALTSTACK),i.add(f.Buffer.from(r)).add(Vt.OP_CAT),i.add(Vt.OP_SWAP).add(Vt.OP_CAT),i.add(Vt.OP_HASH256),i.add(Vt.OP_FROMALTSTACK).add(Vt.OP_EQUAL),i.add(Vt.OP_ENDIF),e.inscription){var n=ED.buildInscription({lock:new Bo,allowEmptyLock:!0,contentType:e.inscription.contentType,content:e.inscription.content});n.chunks.forEach(function(o){i.chunks.push(o)})}return i}function wf(e,t){return e&&e.opcodenum===t&&e.buf==null}function SD(e){for(var t=new OD(e),r=[];!t.eof();)r.push(ms.fromBufferReader(t));return r}function sv(e,t){var r=t&&t.network;try{for(var i=ov(e),n=i.chunks,o=0,a=-1,s=-1,u=-1,c=0;c<n.length;c++)if(wf(n[c],Vt.OP_IF))o===0&&(a=c),o++;else if(wf(n[c],Vt.OP_ELSE)&&o===1)s=c;else if(wf(n[c],Vt.OP_ENDIF)&&(o--,o===0)){u=c;break}if(a===-1||s===-1||u===-1)return null;for(var l=null,p=a+1;p<s;p++)if(n[p].buf&&n[p].buf.length===20){l=n[p].buf;break}if(!l)return null;for(var d=null,v=s+1;v<u;v++)wf(n[v],Vt.OP_TOALTSTACK)&&n[v+1]&&n[v+1].buf&&wf(n[v+2],Vt.OP_CAT)&&wf(n[v+3],Vt.OP_SWAP)&&(d=n[v+1].buf);if(!d)return null;var _=SD(d).map(function(z){var A=null;try{z.script.isPublicKeyHashOut()&&(A=z.script.toAddress(r).toString())}catch{}return{satoshis:z.satoshis,script:z.script,address:A}}),I=_.reduce(function(z,A){return z+A.satoshis},0),R=null,k=ED.parseInscription(i);k&&(R={contentType:k.contentType,content:k.content,contentText:k.contentText});var q=av({seller:l,payOutputs:SD(d),inscription:k?{contentType:k.contentType,content:k.content}:void 0});return q.toHex()!==i.toHex()?null:{seller:{pubKeyHash:l,address:IS.fromPublicKeyHash(l,r).toString()},payOutputs:_,payBlob:d,totalPrice:I,inscription:R}}catch{return null}}function uX(e,t){return sv(e,t)!==null}function cX(e){e=e||{};var t=e.satoshis!=null?e.satoshis:1;return new ms({script:av(e),satoshis:t})}function AD(e){e=e||{};var t=e.spend,r=e.lockingScript;if(!t||!r)throw new Error("purchase requires { spend, lockingScript }");var i=e.inputIndex||0,n=e.payoutIndex!=null?e.payoutIndex:1,o=e.satoshis!=null?e.satoshis:1,a=t.outputs||[],s=e.parsed||sv(r),u=e.payoutCount!=null?e.payoutCount:s?s.payOutputs.length:1;if(n+u>a.length)throw new Error("purchase: spend has fewer outputs than the pinned block requires (need "+(n+u)+", have "+a.length+")");if(e.validate!==!1&&s){var c=f.Buffer.concat(a.slice(n,n+u).map(tv));if(!c.equals(s.payBlob))throw new Error("purchase: outputs ["+n+".."+(n+u-1)+"] do not match the listing payment \u2014 the seller (or a royalty/fee payee) would not be paid")}var l=f.Buffer.concat(a.slice(0,n).map(tv)),p=f.Buffer.concat(a.slice(n+u).map(tv)),d=Object.assign({sighashType:iv},e.grind||{}),v=Sf.grind(t,i,r,o,d),_=new Bo;return wD(_,p),wD(_,l),_.add(f.Buffer.from(v.preimage)),_.add(Vt.OP_FALSE),t.inputs[i].setScript(_),_}function fX(e){e=e||{};var t=e.privateKey,r=e.spend,i=e.lockingScript;if(!t||!r||!i)throw new Error("cancel requires { privateKey, spend, lockingScript }");var n=e.inputIndex||0,o=e.satoshis!=null?e.satoshis:1,a=e.sighashType!=null?e.sighashType:OS.SIGHASH,s=OS.signInput(r,t,n,i,o,a),u=new Bo;return u.add(f.Buffer.from(s)),u.add(t.toPublicKey().toBuffer()),u.add(Vt.OP_TRUE),r.inputs[n].setScript(u),u}function nv(e,t,r,i){e.addInput(new nX({prevTxId:t.txid||t.prevTxId,outputIndex:t.outputIndex!=null?t.outputIndex:t.vout,script:Bo.empty()}),ov(r),i)}function AS(e,t,r){Ef(r.satoshis,"input "+t+" satoshis");var i=ov(r.script),n=OS.signInput(e,r.privateKey,t,i,r.satoshis,Sf.SIGHASH_ALL_FORKID),o=new Bo;o.add(f.Buffer.from(n)),o.add(r.privateKey.toPublicKey().toBuffer()),e.inputs[t].setScript(o)}function lX(e){e=e||{};var t=e.ordinal;if(!t||!t.script||!t.privateKey)throw new Error("buildListingTx requires ordinal { script, privateKey, txid, outputIndex }");var r=Ef(t.satoshis!=null?t.satoshis:1,"ordinal satoshis"),i=av(e),n=e.funding||[],o=e.fee!=null?e.fee:500,a=n.reduce(function(c,l){return c+Ef(l.satoshis,"funding satoshis")},0),s=a-o;if(s<0)throw new Error("buildListingTx: insufficient funding \u2014 need "+o+" sat fee, funded "+a);var u=new xD;return nv(u,t,t.script,r),n.forEach(function(c){nv(u,c,c.script,c.satoshis)}),u.addOutput(new ms({script:i,satoshis:r})),s>0&&u.addOutput(xf(e.changeAddress||t.privateKey.toAddress(),s)),AS(u,0,{script:t.script,privateKey:t.privateKey,satoshis:r}),n.forEach(function(c,l){AS(u,1+l,c)}),{tx:u,listingScript:i,listingOutpoint:{txid:u.hash,outputIndex:0}}}function hX(e){e=e||{};var t=e.listing;if(!t||!t.script)throw new Error("buildPurchaseTx requires listing.script");if(!e.ordinalDestination)throw new Error("buildPurchaseTx requires ordinalDestination");if(!e.funding||!e.funding.length)throw new Error("buildPurchaseTx requires funding coins");var r=ov(t.script),i=sv(r);if(!i)throw new Error("buildPurchaseTx: listing.script is not a parseable OrdLock");var n=Ef(t.satoshis!=null?t.satoshis:1,"listing satoshis"),o=e.payOutputs?e.payOutputs.map(rv):i.payOutputs.map(function(p){return new ms({script:p.script,satoshis:p.satoshis})}),a=o.reduce(function(p,d){return p+d.satoshis},0),s=e.fee!=null?e.fee:500,u=e.funding.reduce(function(p,d){return p+Ef(d.satoshis,"funding satoshis")},0),c=u-a-s;if(c<0)throw new Error("buildPurchaseTx: insufficient funding \u2014 need "+(a+s)+" sat (payments "+a+" + fee "+s+"), funded "+u);var l=new xD;return nv(l,t,r,n),e.funding.forEach(function(p){nv(l,p,p.script,p.satoshis)}),l.addOutput(xf(e.ordinalDestination,n)),o.forEach(function(p){l.addOutput(p)}),c>0&&l.addOutput(xf(e.changeAddress||e.ordinalDestination,c)),AD({spend:l,lockingScript:r,parsed:i,satoshis:n,inputIndex:0,payoutIndex:1,payoutCount:o.length,grind:e.grind}),e.funding.forEach(function(p,d){AS(l,1+d,p)}),l}TD.exports={ORDLOCK_SIGHASH:iv,buildOrdLock:av,parseOrdLock:sv,isOrdLock:uX,listInscriptionOutput:cX,payOutputFor:xf,purchase:AD,cancel:fX,buildListingTx:lX,buildPurchaseTx:hX}});var YD=T((zfe,WD)=>{"use strict";g();var RD=ev(),dX=ut(),pX=gi(),kD="application/bsv-20",TS=18,uv="18446744073709551615";function BD(e){return typeof e=="string"&&/^\d+$/.test(e)}function ND(e){return e.length>uv.length||e.length===uv.length&&e>uv}function CD(e,t){var r;if(typeof e=="number"){if(!Number.isInteger(e)||e<0)throw new Error(t+" must be a non-negative integer");if(e>Number.MAX_SAFE_INTEGER)throw new Error(t+" exceeds Number.MAX_SAFE_INTEGER and would lose precision \u2014 pass it as a string");r=String(e)}else if(BD(e))r=e.replace(/^0+(?=\d)/,"");else throw new Error(t+" must be a non-negative integer (string or number)");if(ND(r))throw new Error(t+" exceeds the uint64 maximum ("+uv+")");return r}function Uh(e,t){var r=CD(e,t);if(!/[1-9]/.test(r))throw new Error(t+" must be greater than zero");return r}function LD(e){if(typeof e!="string"||!e.length)throw new Error("tick is required");if(f.Buffer.byteLength(e,"utf8")>4)throw new Error("tick must be 1\u20134 UTF-8 bytes");return e}function PS(e){var t=typeof e=="string"?Number(e):e;if(!Number.isInteger(t)||t<0||t>TS)throw new Error("dec must be an integer 0\u2026"+TS);return String(t)}var RS=/^[0-9a-fA-F]{64}_\d+$/;function kS(e){if(typeof e!="string"||!RS.test(e))throw new Error('id must be "<txid>_<vout>" (64-hex txid, underscore, output index)');return e}function BS(e,t){if(typeof e!="string"){var r=e===null?"null":Array.isArray(e)?"an array":(typeof e=="object"?"an ":"a ")+typeof e;throw new Error(t+" must be a string, got "+r)}if(!e.length)throw new Error(t+" must not be empty");return e}function MD(e){if(BS(e,"icon"),!RS.test(e))throw new Error('icon must be an outpoint reference "<txid>_<vout>" (64-hex txid, underscore, output index)');return e}function yu(e,t){return t=t||{},RD.buildInscription({lock:t.lock,address:t.address,contentType:t.contentType||kD,content:JSON.stringify(e)})}function DD(e){e=e||{};var t={p:"bsv-20",op:"deploy",tick:LD(e.tick),max:Uh(e.max,"max")};return e.lim!=null&&(t.lim=CD(e.lim,"lim")),e.dec!=null&&(t.dec=PS(e.dec)),yu(t,e)}function HD(e,t,r){var i=t.tick!=null,n=t.id!=null;if(i&&n)throw new Error(r+" names a token by `tick` (v1) or `id` (BSV-21), not both");if(!i&&!n)throw new Error(r+" requires `tick` (v1) or `id` (BSV-21)");return n?e.id=kS(t.id):e.tick=LD(t.tick),e}function qD(e,t){if(e.amt!=null)throw new Error(t+" must not carry an amt \u2014 the specification forbids it, and a payload that does is discarded")}function UD(e){e=e||{};var t={p:"bsv-20",op:"mint"};return HD(t,e,"mint"),t.amt=Uh(e.amt,"amt"),yu(t,e)}function FD(e){e=e||{};var t={p:"bsv-20",op:"transfer",amt:Uh(e.amt,"amt")};return HD(t,e,"transfer"),yu(t,e)}function jD(e){if(e=e||{},e.tick!=null)throw new Error("burn is a BSV-21 operation and names its token by `id` (<txid>_<vout>), not `tick`");var t={p:"bsv-20",op:"burn",id:kS(e.id),amt:Uh(e.amt,"amt")};return yu(t,e)}function zD(e){e=e||{},qD(e,"deploy+auth");var t={p:"bsv-20",op:"deploy+auth"};return e.dec!=null&&(t.dec=PS(e.dec)),e.sym!=null&&(t.sym=BS(e.sym,"sym")),e.icon!=null&&(t.icon=MD(e.icon)),yu(t,e)}function KD(e){e=e||{},qD(e,"auth");var t={p:"bsv-20",op:"auth",id:kS(e.id)};return yu(t,e)}function VD(e){e=e||{};var t={p:"bsv-20",op:"deploy+mint",amt:Uh(e.amt,"amt")};return e.dec!=null&&(t.dec=PS(e.dec)),e.sym!=null&&(t.sym=BS(e.sym,"sym")),e.icon!=null&&(t.icon=MD(e.icon)),yu(t,e)}function bu(e,t){return new pX({script:e,satoshis:t??1})}function gX(e){return bu(DD(e),e&&e.satoshis)}function mX(e){return bu(UD(e),e&&e.satoshis)}function vX(e){return bu(FD(e),e&&e.satoshis)}function yX(e){return bu(VD(e),e&&e.satoshis)}function bX(e){return bu(jD(e),e&&e.satoshis)}function _X(e){return bu(zD(e),e&&e.satoshis)}function wX(e){return bu(KD(e),e&&e.satoshis)}function SX(e){if(e&&typeof e=="object"&&!f.Buffer.isBuffer(e)&&!(e instanceof dX)||typeof e=="string"&&e.trim()[0]==="{")return e;var t=RD.parseInscription(e);return t?t.contentText:null}var EX={deploy:{need:["tick","max"]},mint:{need:["amt"],tickOrId:!0},transfer:{need:["amt"],tickOrId:!0},"deploy+mint":{need:["amt"]},"deploy+auth":{need:[],noAmt:!0},auth:{need:["id"],noAmt:!0},burn:{need:["id","amt"]}};function xX(e){var t=typeof e=="number"?Number.isInteger(e)&&e>=0?String(e):null:BD(e)?e:null;return t==null?!1:!ND(t.replace(/^0+(?=\d)/,""))}function OX(e){if(!e||e.p!=="bsv-20"||typeof e.op!="string")return!1;var t=EX[e.op];if(!t)return!1;for(var r=0;r<t.need.length;r++)if(e[t.need[r]]==null)return!1;if(t.tickOrId&&e.tick==null==(e.id==null)||t.noAmt&&e.amt!=null||e.tick!=null&&(typeof e.tick!="string"||!e.tick.length||f.Buffer.byteLength(e.tick,"utf8")>4)||e.id!=null&&(typeof e.id!="string"||!RS.test(e.id)))return!1;for(var i=["amt","max","lim"],n=0;n<i.length;n++)if(e[i[n]]!=null&&!xX(e[i[n]]))return!1;if(e.dec!=null){var o=typeof e.dec=="string"?Number(e.dec):e.dec;if(!Number.isInteger(o)||o<0||o>TS)return!1}return!0}function GD(e){try{var t=SX(e);if(t==null)return null;var r=typeof t=="object"?t:JSON.parse(t);return OX(r)?r:null}catch{return null}}function IX(e){return GD(e)!==null}WD.exports={CONTENT_TYPE:kD,buildDeploy:DD,buildMint:UD,buildTransfer:FD,buildDeployMint:VD,buildBurn:jD,buildDeployAuth:zD,buildAuth:KD,createDeployOutput:gX,createMintOutput:mX,createTransferOutput:vX,createDeployMintOutput:yX,createBurnOutput:bX,createDeployAuthOutput:_X,createAuthOutput:wX,parseBsv20:GD,isBsv20:IX}});var $D=T((Vfe,ZD)=>{"use strict";g();var Fh=ev(),No=PD(),AX=YD();function TX(e){if(!Array.isArray(e)||!e.length)throw new Error("batchInscriptionOutputs requires a non-empty array of items");return e.map(function(t){return Fh.createInscriptionOutput(t)})}ZD.exports={buildInscription:Fh.buildInscription,parseInscription:Fh.parseInscription,isInscription:Fh.isInscription,createInscriptionOutput:Fh.createInscriptionOutput,batchInscriptionOutputs:TX,ORDLOCK_SIGHASH:No.ORDLOCK_SIGHASH,buildOrdLock:No.buildOrdLock,parseOrdLock:No.parseOrdLock,isOrdLock:No.isOrdLock,listInscriptionOutput:No.listInscriptionOutput,payOutputFor:No.payOutputFor,purchaseOrdLock:No.purchase,cancelOrdLock:No.cancel,buildListingTx:No.buildListingTx,buildPurchaseTx:No.buildPurchaseTx,BSV20:AX}});var cv=T((Yfe,QD)=>{"use strict";g();var PX=gt(),XD=dn(),NS=sr(),jh=ei(),JD=Le(),bn=Ie(),Wfe=pi();function Ot(e){return this instanceof Ot?(this.options=e||{},this.network=this.options.network||"mainnet",this.registry=this.options.registry||null,this):new Ot(e)}Ot.fromPublicKey=function(e,t){t=t||{},typeof e=="string"&&(e=NS.fromString(e)),bn.checkArgument(e instanceof NS,"Invalid public key");var r=e.toString("hex"),i=t.network||"mainnet",n=t.path||"",o="did:smartledger:"+r;return i!=="mainnet"&&(o+=":"+i),n&&(o+=":"+n),o};Ot.fromPrivateKey=function(e,t){return typeof e=="string"&&(e=jh.fromWIF(e)),bn.checkArgument(e instanceof jh,"Invalid private key"),Ot.fromPublicKey(e.toPublicKey(),t)};Ot.parseDID=function(e){if(bn.checkArgument(typeof e=="string","DID must be a string"),!e.startsWith("did:smartledger:"))throw new Error("Invalid SmartLedger DID format");var t=e.split(":");if(t.length<3)throw new Error("Invalid DID format");var r={method:"smartledger",identifier:t[2],network:"mainnet",path:""};return t.length>3&&t[3]!==""&&(r.network=t[3]),t.length>4&&(r.path=t.slice(4).join(":")),r};Ot.isValidDID=function(e){try{var t=Ot.parseDID(e);return!(!/^[0-9a-fA-F]{66}$/.test(t.identifier)&&!/^[0-9a-fA-F]{130}$/.test(t.identifier)||!["mainnet","testnet","regtest"].includes(t.network))}catch{return!1}};Ot.getPublicKey=function(e){var t=Ot.parseDID(e);return NS.fromString(t.identifier)};Ot.createDocument=function(e,t){t=t||{},bn.checkArgument(Ot.isValidDID(e),"Invalid DID");var r=Ot.getPublicKey(e),i=e+"#keys-1",n={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/secp256k1-2019/v1"],id:e,verificationMethod:[{id:i,type:"EcdsaSecp256k1VerificationKey2019",controller:e,publicKeyHex:r.toString("hex")}],authentication:[i],assertionMethod:[i],keyAgreement:[i],capabilityInvocation:[i],capabilityDelegation:[i]};return t.services&&Array.isArray(t.services)&&(n.service=t.services),t.verificationMethods&&(n.verificationMethod=n.verificationMethod.concat(t.verificationMethods)),t.created&&(n.created=t.created),t.updated&&(n.updated=t.updated),n};Ot.resolve=async function(e,t){t=t||{};try{bn.checkArgument(Ot.isValidDID(e),"Invalid DID");var r=Ot.createDocument(e,t);return{"@context":"https://w3id.org/did-resolution/v1",didDocument:r,didResolutionMetadata:{contentType:"application/did+ld+json",retrieved:new Date().toISOString()},didDocumentMetadata:{method:{published:!0,recoveryCommitment:null,updateCommitment:null}}}}catch(i){return{"@context":"https://w3id.org/did-resolution/v1",didDocument:null,didResolutionMetadata:{error:"notFound",errorMessage:i.message},didDocumentMetadata:{}}}};Ot.verifyOwnership=function(e,t,r){try{var i=Ot.getPublicKey(e),n=JD.sha256(f.Buffer.isBuffer(r)?r:f.Buffer.from(r,"utf8")),o=PX.fromString(t),a=new XD;return a.hashbuf=n,a.pubkey=i,a.sig=o,a.verify()===!0}catch{return!1}};Ot.signMessage=function(e,t){bn.checkArgument(t instanceof jh,"Invalid private key");var r=JD.sha256(f.Buffer.isBuffer(e)?e:f.Buffer.from(e,"utf8")),i=new XD;return i.hashbuf=r,i.privkey=t,i.pubkey=t.toPublicKey(),i.sign().toString()};Ot.createProofOfOwnership=function(e,t){bn.checkArgument(e instanceof jh,"Invalid private key"),bn.checkArgument(typeof t=="string","Challenge must be a string");var r=Ot.fromPrivateKey(e),i=new Date().toISOString(),n=t+":"+i+":"+r,o=Ot.signMessage(n,e);return{type:"EcdsaSecp256k1Signature2019",created:i,verificationMethod:r+"#keys-1",proofPurpose:"authentication",challenge:t,jws:o}};Ot.verifyProofOfOwnership=function(e,t){try{bn.checkArgument(e&&typeof e=="object","Invalid proof object"),bn.checkArgument(typeof t=="string","DID must be a string");var r=e.challenge+":"+e.created+":"+t;return Ot.verifyOwnership(t,e.jws,r)}catch{return!1}};Ot.createDIDURL=function(e,t){return bn.checkArgument(typeof e=="string","DID must be a string"),bn.checkArgument(typeof t=="string","Fragment must be a string"),e+"#"+t};Ot.generateTestDID=function(e){e=e||{};var t=new jh,r=Ot.fromPrivateKey(t,e),i=Ot.createDocument(r,e);return{did:r,privateKey:t.toWIF(),publicKey:t.toPublicKey().toString("hex"),document:i}};QD.exports=Ot});var fv=T((Jfe,r6)=>{"use strict";g();var RX=Ki(),kX=cv(),e6=ei(),vs=Le(),t6=dn(),$fe=gt(),ys=Ie(),BX=Vc(),Xfe=at();function Ut(e,t){return this instanceof Ut?(typeof e=="string"&&(e=e6.fromWIF(e)),ys.checkArgument(e instanceof e6,"Invalid private key"),this.privateKey=e,this.publicKey=e.toPublicKey(),this.options=t||{},this.did=kX.fromPrivateKey(e,this.options),this):new Ut(e,t)}Ut._sortValue=function(e){return Array.isArray(e)?e.map(function(t){return Ut._sortValue(t)}):e!==null&&typeof e=="object"?Object.keys(e).sort().reduce(function(t,r){return t[r]=Ut._sortValue(e[r]),t},{}):e};Ut._canonicalizeJSON=function(e){return JSON.stringify(Ut._sortValue(e))};Ut._canonicalizeJCS=function(e){return BX.stringify(e)};Ut._hashCredential=function(e,t){var r=t===Ut.CANONICALIZATION.LEGACY?Ut._canonicalizeJSON(e):Ut._canonicalizeJCS(e);return vs.sha256(f.Buffer.from(r,"utf8"))};Ut.CANONICALIZATION={JCS:"jcs",LEGACY:"legacy"};Ut.prototype.createCredential=function(e,t){t=t||{},ys.checkArgument(e&&typeof e=="object","Invalid credential subject");var r=new Date().toISOString(),i=t.id||"urn:uuid:"+this._generateUUID(),n={"@context":["https://www.w3.org/2018/credentials/v1"],id:i,type:["VerifiableCredential"],issuer:this.did,issuanceDate:r,credentialSubject:e};return t.type&&(Array.isArray(t.type)?n.type=n.type.concat(t.type):n.type.push(t.type)),t.context&&(Array.isArray(t.context)?n["@context"]=n["@context"].concat(t.context):n["@context"].push(t.context)),t.expirationDate&&(n.expirationDate=t.expirationDate),t.termsOfUse&&(n.termsOfUse=t.termsOfUse),t.evidence&&(n.evidence=t.evidence),t.refreshService&&(n.refreshService=t.refreshService),n};Ut.prototype.signCredential=function(e,t){t=t||{},ys.checkArgument(e&&typeof e=="object","Invalid credential");var r=JSON.parse(JSON.stringify(e));delete r.proof;var i=Ut._hashCredential(r),n=new t6;n.hashbuf=i,n.privkey=this.privateKey,n.pubkey=this.publicKey,n.sign();var o=n.sig,a=this._createJWSSignature(i,o),s={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:this.did+"#keys-1",proofPurpose:t.proofPurpose||"assertionMethod",jws:a};t.challenge&&(s.challenge=t.challenge),t.domain&&(s.domain=t.domain);var u=JSON.parse(JSON.stringify(r));return u.proof=s,u.rootHash=i.toString("hex"),u};Ut.prototype._createJWSSignature=function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=e.toString("base64url"),o=t.toDER().toString("base64url");return i+".."+o};Ut.prototype.createEmailCredential=function(e,t){t=t||{},ys.checkArgument(typeof e=="string"&&e.includes("@"),"Invalid email address");var r={id:t.subjectId||"did:smartledger:"+vs.sha256(f.Buffer.from(e)).toString("hex"),email:e,verified:!0,verificationMethod:"email_verification",verificationTimestamp:new Date().toISOString()},i={type:"EmailVerifiedCredential",context:"https://smartledger.technology/contexts/email/v1",...t},n=this.createCredential(r,i);return this.signCredential(n,t)};Ut.prototype.createAgeCredential=function(e,t,r){r=r||{},ys.checkArgument(typeof e=="number"&&e>0,"Invalid age");var i={id:r.subjectId||"urn:uuid:"+this._generateUUID(),ageOver:e,verified:!0,verificationMethod:"age_verification"};t&&(i.birthDateHash=vs.sha256(f.Buffer.from(t.toISOString())).toString("hex"));var n={type:"AgeVerifiedCredential",context:"https://smartledger.technology/contexts/age/v1",...r},o=this.createCredential(i,n);return this.signCredential(o,r)};Ut.prototype.createKYCCredential=function(e,t){t=t||{},ys.checkArgument(e&&typeof e=="object","Invalid KYC data");var r={id:t.subjectId||"urn:uuid:"+this._generateUUID(),kycLevel:e.level||"basic",verified:!0,verificationMethod:"kyc_verification",verificationTimestamp:new Date().toISOString(),verifyingAuthority:e.authority||this.did};e.firstName&&(r.firstNameHash=vs.sha256(f.Buffer.from(e.firstName)).toString("hex")),e.lastName&&(r.lastNameHash=vs.sha256(f.Buffer.from(e.lastName)).toString("hex")),e.ssn&&(r.ssnHash=vs.sha256(f.Buffer.from(e.ssn)).toString("hex"));var i={type:"KYCVerifiedCredential",context:"https://smartledger.technology/contexts/kyc/v1",...t},n=this.createCredential(r,i);return this.signCredential(n,t)};Ut.prototype.createOrganizationCredential=function(e,t){t=t||{},ys.checkArgument(e&&typeof e=="object","Invalid organization data");var r={id:t.subjectId||"did:smartledger:org:"+vs.sha256(f.Buffer.from(e.name||"")).toString("hex"),name:e.name,type:e.type||"Organization",verified:!0,verificationMethod:"organization_verification",verificationTimestamp:new Date().toISOString()};e.taxId&&(r.taxIdHash=vs.sha256(f.Buffer.from(e.taxId)).toString("hex")),e.incorporationState&&(r.incorporationState=e.incorporationState),e.industry&&(r.industry=e.industry);var i={type:"OrganizationCredential",context:"https://smartledger.technology/contexts/organization/v1",...t},n=this.createCredential(r,i);return this.signCredential(n,t)};Ut.prototype._generateUUID=function(){var e=RX.getRandomBuffer(16);e[6]=e[6]&15|64,e[8]=e[8]&63|128;var t=e.toString("hex");return[t.substring(0,8),t.substring(8,12),t.substring(12,16),t.substring(16,20),t.substring(20,32)].join("-")};Ut.prototype.createPresentation=function(e,t){t=t||{},ys.checkArgument(Array.isArray(e),"Credentials must be an array");var r={"@context":["https://www.w3.org/2018/credentials/v1"],type:["VerifiablePresentation"],id:t.id||"urn:uuid:"+this._generateUUID(),holder:this.did,verifiableCredential:e};t.context&&(Array.isArray(t.context)?r["@context"]=r["@context"].concat(t.context):r["@context"].push(t.context));var i=Ut._hashCredential(r),n=new t6;n.hashbuf=i,n.privkey=this.privateKey,n.pubkey=this.publicKey,n.sign();var o=n.sig,a=this._createJWSSignature(i,o),s={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:this.did+"#keys-1",proofPurpose:"authentication",jws:a};return t.challenge&&(s.challenge=t.challenge),t.domain&&(s.domain=t.domain),r.proof=s,r};Ut.prototype.getIssuerInfo=function(){return{did:this.did,publicKey:this.publicKey.toString("hex"),verificationMethod:this.did+"#keys-1"}};r6.exports=Ut});var a6=T((rle,o6)=>{"use strict";g();var lv=cv(),Ia=fv(),ele=sr(),tle=Le(),i6=dn(),NX=gt(),n6=Ie();function St(e){return this instanceof St?(this.options=e||{},this.trustedIssuers=this.options.trustedIssuers||[],this):new St(e)}St.verifyCredential=async function(e,t){t=t||{};try{n6.checkArgument(e&&typeof e=="object","Invalid credential");var r={valid:!1,errors:[],warnings:[],checks:{structure:!1,signature:!1,issuer:!1,temporal:!1,schema:!1}},i=St._validateStructure(e);r.checks.structure=i.valid,i.valid||(r.errors=r.errors.concat(i.errors));var n=await St._verifySignature(e);r.checks.signature=n.valid,n.valid?(r.issuerDID=n.issuerDID,r.verificationMethod=n.verificationMethod):r.errors=r.errors.concat(n.errors);var o=await St._validateIssuer(e,t);r.checks.issuer=o.valid,o.valid||(r.errors=r.errors.concat(o.errors)),o.warnings&&(r.warnings=r.warnings.concat(o.warnings));var a=St._validateTemporal(e);if(r.checks.temporal=a.valid,a.valid||(r.errors=r.errors.concat(a.errors)),a.warnings&&(r.warnings=r.warnings.concat(a.warnings)),t.schema){var s=St._validateSchema(e,t.schema);r.checks.schema=s.valid,s.valid||(r.errors=r.errors.concat(s.errors))}else r.checks.schema=!0;return r.valid=Object.values(r.checks).every(u=>u===!0),r}catch(u){return{valid:!1,errors:["Verification failed: "+u.message],warnings:[],checks:{structure:!1,signature:!1,issuer:!1,temporal:!1,schema:!1}}}};St.verifyPresentation=async function(e,t){t=t||{};try{n6.checkArgument(e&&typeof e=="object","Invalid presentation");var r={valid:!1,errors:[],warnings:[],credentialResults:[],presentationValid:!1};if(!e.type||!e.type.includes("VerifiablePresentation"))return r.errors.push("Invalid presentation type"),r;if(!e.holder)return r.errors.push("Missing presentation holder"),r;var i=await St._verifyPresentationSignature(e);if(r.presentationValid=i.valid,i.valid||(r.errors=r.errors.concat(i.errors)),e.verifiableCredential&&Array.isArray(e.verifiableCredential))for(var n=0;n<e.verifiableCredential.length;n++){var o=e.verifiableCredential[n],a=await St.verifyCredential(o,t);r.credentialResults.push({index:n,result:a}),a.valid||r.errors.push("Credential "+n+" is invalid")}var s=r.credentialResults.every(u=>u.result.valid);return r.valid=r.presentationValid&&s,r}catch(u){return{valid:!1,errors:["Presentation verification failed: "+u.message],warnings:[],credentialResults:[],presentationValid:!1}}};St._validateStructure=function(e){var t=[];return e["@context"]?Array.isArray(e["@context"])?e["@context"].includes("https://www.w3.org/2018/credentials/v1")||t.push("Missing required W3C credentials context"):t.push("@context must be an array"):t.push("Missing @context"),e.type?Array.isArray(e.type)?e.type.includes("VerifiableCredential")||t.push("Must include VerifiableCredential type"):t.push("type must be an array"):t.push("Missing type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject"),e.proof||t.push("Missing proof"),{valid:t.length===0,errors:t}};St._normalizeDID=function(e){var t=e&&typeof e=="object"?e.id:e;return typeof t!="string"||t.length===0?null:t.split("#")[0]};St._verifySignature=async function(e){try{var t=e.proof;if(!t)return{valid:!1,errors:["Missing proof"]};if(t.type!=="EcdsaSecp256k1Signature2019")return{valid:!1,errors:["Unsupported proof type: "+t.type]};if(!t.verificationMethod)return{valid:!1,errors:["Missing verification method"]};if(!t.jws)return{valid:!1,errors:["Missing JWS signature"]};var r=t.verificationMethod,i=r.split("#")[0],n=St._normalizeDID(e.issuer);if(!n)return{valid:!1,errors:["Missing or invalid credential issuer"]};if(n!==i)return{valid:!1,errors:["Verification method DID ("+i+") does not match credential issuer ("+n+")"]};var o=lv.getPublicKey(i),a=JSON.parse(JSON.stringify(e));delete a.proof,delete a.rootHash;var s=St._parseJWSSignature(t.jws),u=[Ia.CANONICALIZATION.JCS,Ia.CANONICALIZATION.LEGACY].some(function(c){var l=new i6;return l.hashbuf=Ia._hashCredential(a,c),l.pubkey=o,l.sig=s,l.verify()===!0});return u?{valid:!0,issuerDID:i,verificationMethod:r}:{valid:!1,errors:["Signature verification failed"]}}catch(c){return{valid:!1,errors:["Signature verification error: "+c.message]}}};St._parseJWSSignature=function(e){var t=e.split(".");if(t.length!==3)throw new Error("Invalid JWS format");var r=t[2],i=f.Buffer.from(r,"base64url");return NX.fromDER(i)};St._verifyPresentationSignature=async function(e){try{var t=e.proof;if(!t)return{valid:!1,errors:["Missing presentation proof"]};var r=e.holder,i=lv.getPublicKey(r),n=JSON.parse(JSON.stringify(e));delete n.proof;var o=St._parseJWSSignature(t.jws),a=[Ia.CANONICALIZATION.JCS,Ia.CANONICALIZATION.LEGACY].some(function(s){var u=new i6;return u.hashbuf=Ia._hashCredential(n,s),u.pubkey=i,u.sig=o,u.verify()===!0});return{valid:a,errors:a?[]:["Presentation signature verification failed"]}}catch(s){return{valid:!1,errors:["Presentation signature error: "+s.message]}}};St._validateIssuer=async function(e,t){var r=[],i=[];try{var n=e.issuer;if(!lv.isValidDID(n))return r.push("Invalid issuer DID format"),{valid:!1,errors:r};var o=await lv.resolve(n);if(!o.didDocument)return r.push("Unable to resolve issuer DID"),{valid:!1,errors:r};if(t.trustedIssuers&&Array.isArray(t.trustedIssuers)){var a=St._normalizeDID(n),s=t.trustedIssuers.map(function(u){return St._normalizeDID(u)}).filter(Boolean);if(!a||s.indexOf(a)===-1)return r.push("Issuer not in trusted list"),{valid:!1,errors:r,warnings:i}}return{valid:r.length===0,errors:r,warnings:i}}catch(u){return{valid:!1,errors:["Issuer validation error: "+u.message],warnings:i}}};St._validateTemporal=function(e){var t=[],r=[],i=new Date;if(e.issuanceDate){var n=new Date(e.issuanceDate);isNaN(n.getTime())?t.push("Invalid issuanceDate format"):n>i&&t.push("Credential issued in the future")}if(e.expirationDate){var o=new Date(e.expirationDate);isNaN(o.getTime())?t.push("Invalid expirationDate format"):o<=i?t.push("Credential has expired"):o<=new Date(i.getTime()+1440*60*1e3)&&r.push("Credential expires within 24 hours")}return{valid:t.length===0,errors:t,warnings:r}};St._validateSchema=function(e,t){var r=[];if(t.requiredFields&&t.requiredFields.forEach(function(n){St._getNestedProperty(e,n)||r.push("Missing required field: "+n)}),t.requiredTypes){var i=t.requiredTypes.some(function(n){return e.type&&e.type.includes(n)});i||r.push("Missing required credential type")}return{valid:r.length===0,errors:r}};St._getNestedProperty=function(e,t){return t.split(".").reduce(function(r,i){return r&&r[i]},e)};St.verifyCredentialHash=function(e){try{if(!e.rootHash)return!1;var t=JSON.parse(JSON.stringify(e));delete t.proof,delete t.rootHash;var r=f.Buffer.from(e.rootHash,"hex");return[Ia.CANONICALIZATION.JCS,Ia.CANONICALIZATION.LEGACY].some(function(i){return f.Buffer.compare(Ia._hashCredential(t,i),r)===0})}catch{return!1}};St.extractClaims=function(e){try{var t={issuer:e.issuer,subject:e.credentialSubject.id||"unknown",types:e.type||[],issuanceDate:e.issuanceDate,expirationDate:e.expirationDate,claims:{}};return Object.keys(e.credentialSubject).forEach(function(r){r!=="id"&&(t.claims[r]=e.credentialSubject[r])}),t}catch{return null}};St.createReport=function(e){var t=[];return t.push("=== Credential Verification Report ==="),t.push("Overall Status: "+(e.valid?"VALID":"INVALID")),t.push(""),t.push("Verification Checks:"),Object.keys(e.checks).forEach(function(r){var i=e.checks[r]?"\u2713":"\u2717";t.push(" "+i+" "+r.charAt(0).toUpperCase()+r.slice(1))}),t.push(""),e.errors.length>0&&(t.push("Errors:"),e.errors.forEach(function(r){t.push(" \u2022 "+r)}),t.push("")),e.warnings.length>0&&(t.push("Warnings:"),e.warnings.forEach(function(r){t.push(" \u2022 "+r)}),t.push("")),e.issuerDID&&t.push("Issuer: "+e.issuerDID),e.verificationMethod&&t.push("Verification Method: "+e.verificationMethod),t.join(`
98
- `)};o6.exports=St});var u6=T((ole,s6)=>{"use strict";g();var hv=Ki(),CX=fv(),Ai=Le(),nle=Ke(),ai=Ie(),LX=Vc();function $t(e){return this instanceof $t?(this.options=e||{},this):new $t(e)}$t.createMerkleTree=function(e,t){ai.checkArgument(e&&typeof e=="object","Invalid credential");var r=$t._extractFields(e),i=t||hv.getRandomBuffer(32).toString("hex"),n=r.map(function(a,s){var u=Ai.sha256(f.Buffer.from(i+":"+s+":"+a.path,"utf8")).toString("hex"),c=a.path+":"+JSON.stringify(a.value)+":"+u;return{path:a.path,value:a.value,hash:Ai.sha256(f.Buffer.from(c,"utf8")).toString("hex"),salt:u}}),o=$t._buildMerkleTree(n.map(a=>a.hash));return{salt:i,leaves:n,tree:o,root:o[o.length-1][0]}};$t.generateSelectiveProof=function(e,t,r){ai.checkArgument(e&&typeof e=="object","Invalid credential"),typeof t=="string"&&(t=[t]),ai.checkArgument(Array.isArray(t),"Disclose paths must be array");var i=$t.createMerkleTree(e,r),n=[],o=[];return t.forEach(function(a){var s=i.leaves.find(l=>l.path===a);if(s){n.push(s);var u=i.leaves.findIndex(l=>l.path===a),c=$t._generateMerkleProof(i.tree,u);o.push({path:a,leafIndex:u,proof:c})}}),{type:"SelectiveDisclosureProof",created:new Date().toISOString(),proofPurpose:"selectiveDisclosure",verificationMethod:e.proof?e.proof.verificationMethod:null,credentialRoot:i.root,credentialHash:e.rootHash||CX._hashCredential(e).toString("hex"),disclosedFields:n.map(function(a){return{path:a.path,value:a.value,hash:a.hash,salt:a.salt}}),merkleProofs:o}};$t.verifySelectiveProof=function(e,t){try{ai.checkArgument(e&&typeof e=="object","Invalid proof"),ai.checkArgument(typeof t=="string","Expected root must be string");for(var r={valid:!1,errors:[],verifiedFields:[]},i=0;i<e.disclosedFields.length;i++){var n=e.disclosedFields[i],o=e.merkleProofs.find(c=>c.path===n.path);if(!o){r.errors.push("Missing Merkle proof for field: "+n.path);continue}if(typeof n.salt!="string"||!n.salt){r.errors.push("Missing per-field salt for: "+n.path);continue}var a=n.path+":"+JSON.stringify(n.value)+":"+n.salt,s=Ai.sha256(f.Buffer.from(a,"utf8")).toString("hex");if(s!==n.hash){r.errors.push("Field hash mismatch for: "+n.path);continue}var u=$t._verifyMerkleProof(n.hash,o.proof,t);if(!u){r.errors.push("Invalid Merkle proof for: "+n.path);continue}r.verifiedFields.push({path:n.path,value:n.value,verified:!0})}return r.valid=r.errors.length===0&&r.verifiedFields.length>0,r}catch(c){return{valid:!1,errors:["Proof verification failed: "+c.message],verifiedFields:[]}}};$t.generateAgeProof=function(e,t,r){ai.checkArgument(e instanceof Date,"Birth date must be Date object"),ai.checkArgument(typeof t=="number","Minimum age must be number"),r=r||hv.getRandomBuffer(32).toString("hex");var i=new Date,n=Math.floor((i-e)/(365.25*24*60*60*1e3));if(n<t)throw new Error("Age requirement not met");var o=e.toISOString().split("T")[0],a=Ai.sha256(f.Buffer.from(o+":"+r,"utf8")).toString("hex"),s={minimumAge:t,ageAttestation:n>=t,timestamp:i.toISOString(),salt:r},u=Ai.sha256(f.Buffer.from(JSON.stringify(s),"utf8")).toString("hex");return{type:"AgeProof",created:new Date().toISOString(),proofPurpose:"ageVerification",minimumAge:t,meetsRequirement:!0,birthDateCommitment:a,ageProofHash:u,challengeResponse:$t._generateAgeChallenge(e,t,r),opening:{birthDate:o,salt:r}}};$t.verifyAgeProof=function(e,t,r){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),ai.checkArgument(typeof t=="number","Required age must be number"),e.type!=="AgeProof"||e.minimumAge!==t||!r||typeof r!="object")return!1;var i=r.birthDate;if(typeof i=="string"&&(i=new Date(i)),!(i instanceof Date)||isNaN(i.getTime())||typeof r.salt!="string")return!1;var n=i.toISOString().split("T")[0],o=Ai.sha256(f.Buffer.from(n+":"+r.salt,"utf8")).toString("hex");if(o!==e.birthDateCommitment)return!1;var a=Math.floor((Date.now()-i.getTime())/(365.25*24*60*60*1e3));return a>=t}catch{return!1}};$t.generateRangeProof=function(e,t,r,i){ai.checkArgument(typeof e=="number","Value must be number"),ai.checkArgument(typeof t=="number","Min must be number"),ai.checkArgument(typeof r=="number","Max must be number"),ai.checkArgument(e>=t&&e<=r,"Value not in range"),i=i||hv.getRandomBuffer(32).toString("hex");var n=Ai.sha256(f.Buffer.from(e.toString()+":"+i,"utf8")).toString("hex"),o={min:t,max:r,inRange:!0,timestamp:new Date().toISOString(),salt:i},a=Ai.sha256(f.Buffer.from(JSON.stringify(o),"utf8")).toString("hex");return{type:"RangeProof",created:new Date().toISOString(),proofPurpose:"rangeVerification",range:{min:t,max:r},valueCommitment:n,proofHash:a,inRange:!0,opening:{value:e,salt:i}}};$t.verifyRangeProof=function(e,t,r,i){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),e.type!=="RangeProof"||!e.range||e.range.min!==t||e.range.max!==r||!i||typeof i!="object"||typeof i.value!="number"||typeof i.salt!="string")return!1;var n=Ai.sha256(f.Buffer.from(i.value.toString()+":"+i.salt,"utf8")).toString("hex");return n!==e.valueCommitment?!1:i.value>=t&&i.value<=r}catch{return!1}};$t._extractFields=function(e,t){t=t||"";var r=[];return Object.keys(e).forEach(function(i){var n=t?t+"."+i:i,o=e[i];o&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)?r=r.concat($t._extractFields(o,n)):r.push({path:n,value:o})}),r};$t._buildMerkleTree=function(e){if(e.length===0)throw new Error("Cannot build tree from empty leaves");for(var t=[e];t[t.length-1].length>1;){for(var r=t[t.length-1],i=[],n=0;n<r.length;n+=2){var o=r[n],a=n+1<r.length?r[n+1]:o,s=o+a,u=Ai.sha256(f.Buffer.from(s,"hex")).toString("hex");i.push(u)}t.push(i)}return t};$t._generateMerkleProof=function(e,t){for(var r=[],i=t,n=0;n<e.length-1;n++){var o=e[n],a=i%2===0,s=a?i+1:i-1;s<o.length&&r.push({hash:o[s],isLeft:!a}),i=Math.floor(i/2)}return r};$t._verifyMerkleProof=function(e,t,r){for(var i=e,n=0;n<t.length;n++){var o=t[n],a=o.isLeft?o.hash+i:i+o.hash;i=Ai.sha256(f.Buffer.from(a,"hex")).toString("hex")}return i===r};$t._generateAgeChallenge=function(e,t,r){var i=Ai.sha256(f.Buffer.from(e.toISOString()+t+r,"utf8"));return i.toString("hex")};function zh(e,t){var r=t||"value",i=typeof e;if(!(e===null||i==="boolean"||i==="string"))if(i==="number"){if(!isFinite(e))throw new Error(r+" must be a finite number")}else if(Array.isArray(e))for(var n=0;n<e.length;n++){if(e[n]===void 0)throw new Error(r+"["+n+"] is undefined");zh(e[n],r+"["+n+"]")}else if(i==="object"){if(Object.getPrototypeOf(e)!==Object.prototype&&Object.getPrototypeOf(e)!==null)throw new Error(r+" must be a plain object");for(var o=Object.keys(e),a=0;a<o.length;a++){if(e[o[a]]===void 0)throw new Error(r+"."+o[a]+" is undefined");zh(e[o[a]],r+"."+o[a])}}else throw new Error(r+" is not a permitted type: "+i);return LX.stringify(e)}$t.generateMembershipProof=function(e,t,r){ai.checkArgument(Array.isArray(e),"Set must be array");var i=e.map(function(s,u){return zh(s,"set["+u+"]")}),n=zh(t);ai.checkArgument(i.indexOf(n)!==-1,"Value not in set"),r=r||hv.getRandomBuffer(32).toString("hex");var o=i.map(function(s){return Ai.sha256(f.Buffer.from(s+":"+r,"utf8")).toString("hex")}),a=Ai.sha256(f.Buffer.from(n+":"+r,"utf8")).toString("hex");return{type:"MembershipProof",created:new Date().toISOString(),proofPurpose:"membershipVerification",setCommitments:o,valueCommitment:a,isMember:!0,salt:r}};$t.verifyMembershipProof=function(e,t,r){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),e.type!=="MembershipProof"||!Array.isArray(e.setCommitments)||!Array.isArray(r)||r.length===0||!t||typeof t!="object"||typeof t.salt!="string"||!("value"in t))return!1;var i=function(a,s){return Ai.sha256(f.Buffer.from(zh(a,s)+":"+t.salt,"utf8")).toString("hex")},n=r.map(function(a,s){return i(a,"set["+s+"]")});if(n.length!==e.setCommitments.length)return!1;for(var o=0;o<n.length;o++)if(n[o]!==e.setCommitments[o])return!1;return i(t.value,"opening.value")!==e.valueCommitment?!1:n.indexOf(e.valueCommitment)!==-1}catch{return!1}};s6.exports=$t});var p6=T((ule,d6)=>{"use strict";g();var MX=vh(),DX=mw(),CS=zt(),HX=ut(),Kh=ei(),sle=Ni(),Vh=Le(),c6=mm(),bs=Ie();function Lr(e,t){return this instanceof Lr?(typeof e=="string"&&(e=Kh.fromWIF(e)),e!==null?(bs.checkArgument(e instanceof Kh,"Invalid private key"),this.privateKey=e,this.address=e.toAddress()):(this.privateKey=null,this.address=null),this.options=t||{},this.network=this.options.network||"mainnet",this.PROTOCOL_ID="SMARTLEDGER.ATTEST",this.VERSION=1,this):new Lr(e,t)}Lr.prototype.anchorCredential=async function(e,t,r){t=t||{},typeof e=="string"&&(e=f.Buffer.from(e,"hex")),bs.checkArgument(f.Buffer.isBuffer(e),"Invalid credential hash"),bs.checkArgument(e.length===32,"Hash must be 32 bytes");var i=this._createAnchorPayload("CREDENTIAL",e,t),n=await this._createAnchorTransaction(i,r);return{txid:n.hash,transaction:n,anchorHash:e.toString("hex"),metadata:t,timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"CREDENTIAL"}}};Lr.prototype.anchorBatch=async function(e,t,r){t=t||{},bs.checkArgument(Array.isArray(e),"Credential hashes must be array"),bs.checkArgument(e.length>0,"Must provide at least one hash");var i=this._createMerkleRoot(e),n=this._createAnchorPayload("BATCH",i,{...t,batchSize:e.length,merkleRoot:i.toString("hex")}),o=await this._createAnchorTransaction(n,r);return{txid:o.hash,transaction:o,merkleRoot:i.toString("hex"),batchSize:e.length,credentialHashes:e.map(a=>f.Buffer.isBuffer(a)?a.toString("hex"):a),metadata:t,timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"BATCH"}}};Lr.prototype.registerDID=async function(e,t,r){bs.checkArgument(typeof e=="string","DID must be string"),bs.checkArgument(t&&typeof t=="object","Invalid DID document");var i=Vh.sha256(f.Buffer.from(JSON.stringify(t),"utf8")),n=this._createAnchorPayload("DID_REG",i,{did:e,operation:"create",documentHash:i.toString("hex")}),o=await this._createAnchorTransaction(n,r);return{txid:o.hash,transaction:o,did:e,documentHash:i.toString("hex"),timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"DID_REG"}}};Lr.prototype.revokeCredential=async function(e,t,r){bs.checkArgument(typeof e=="string","Credential ID must be string"),t=t||"unspecified";var i={credentialId:e,reason:t,timestamp:new Date().toISOString(),issuer:this.address.toString()},n=Vh.sha256(f.Buffer.from(JSON.stringify(i),"utf8")),o=this._createAnchorPayload("REVOKE",n,{credentialId:e,reason:t}),a=await this._createAnchorTransaction(o,r);return{txid:a.hash,transaction:a,credentialId:e,reason:t,revocationHash:n.toString("hex"),timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"REVOKE"}}};var qX=["bn","privateKey","privkey","privKey","wif","privateJwk","xpriv","xprv","mnemonic"],UX=["d","seed","secret","key"];function f6(e){if(typeof e!="string"||e.length<50||e.length>53)return!1;try{return Kh.fromWIF(e),!0}catch{return!1}}function l6(e){if(typeof e!="string"||!/^(xprv|tprv)/.test(e))return!1;try{return MX.fromString(e),!0}catch{return!1}}function h6(e){if(typeof e!="string")return!1;var t=e.trim().split(/\s+/);if([12,15,18,21,24].indexOf(t.length)===-1)return!1;try{return DX.isValid(e.trim())}catch{return!1}}function FX(e){if(typeof e!="string"||!/^[0-9a-fA-F]{64}$/.test(e))return!1;try{return Kh.fromHex(e),!0}catch{return!1}}function jX(e){return f6(e)||l6(e)||h6(e)}function zX(e,t){var r=[];if(t&&typeof t.toWIF=="function")try{r=[t.toWIF(),t.toString(),t.bn&&t.bn.toString(16)].filter(function(a){return typeof a=="string"&&a.length}).map(function(a){return a.toLowerCase()})}catch{r=[]}function i(a,s){throw new Error("Refusing to anchor: "+(a||"metadata")+" "+s+", and anchor metadata is published in the OP_RETURN where it is permanent and public.")}function n(a,s){r.length&&r.indexOf(a.toLowerCase())!==-1&&i(s,"is this anchor's own private key"),f6(a)&&i(s,"is a WIF private key"),l6(a)&&i(s,"is an extended private key"),h6(a)&&i(s,"is a BIP39 mnemonic phrase")}function o(a,s,u){if(typeof a=="string"){n(a,s);return}if(!(!a||typeof a!="object"||u>6)){if(typeof a.toWIF=="function"&&a.bn&&i(s,"is a PrivateKey"),Array.isArray(a)){a.forEach(function(c,l){o(c,(s||"metadata")+"["+l+"]",u+1)});return}Object.keys(a).forEach(function(c){var l=a[c],p=s?s+"."+c:c;if(l!=null&&typeof l!="object"){var d=String(l);qX.indexOf(c)!==-1&&i(p,"is a field that holds key material"),UX.indexOf(c)!==-1&&(jX(d)||FX(d))&&i(p,"holds something that decodes as a private key")}o(l,p,u+1)})}}o(e,"",0)}Lr.prototype._createAnchorPayload=function(e,t,r){var i=Math.floor(Date.now()/1e3);zX(r,this.privateKey);var n=f.Buffer.concat([f.Buffer.from(this.PROTOCOL_ID,"utf8"),f.Buffer.from([this.VERSION]),f.Buffer.from(e.padEnd(10,"\0"),"utf8"),f.Buffer.from([i>>24,i>>16,i>>8,i]),t,f.Buffer.from(JSON.stringify(r),"utf8")]);return n};Lr.prototype._createAnchorTransaction=async function(e,t){if(!t||t.length===0)throw new Error("UTXOs required for anchor transaction");var r=200+e.length,i=this.options.feeRate||1,n=r*i,o=t.reduce((c,l)=>c+l.satoshis,0);if(o<n)throw new Error("Insufficient funds for anchor transaction");var a=new CS;t.forEach(c=>{a.from(c)});var s=HX.buildDataOut(e);a.addOutput(new CS.Output({script:s,satoshis:0}));var u=o-n;return u>546&&a.to(this.address,u),a.sign(this.privateKey),a};Lr.prototype._createMerkleRoot=function(e){if(e.length===0)throw new Error("Cannot create Merkle root from empty array");for(var t=e.map(u=>f.Buffer.isBuffer(u)?u:f.Buffer.from(u,"hex"));t.length>1;){for(var r=[],i=0;i<t.length;i+=2){var n=t[i],o=i+1<t.length?t[i+1]:n,a=f.Buffer.concat([n,o]),s=Vh.sha256(a);r.push(s)}t=r}return t[0]};Lr.parseAnchorData=function(e){if(!f.Buffer.isBuffer(e))throw new Error("Data must be Buffer");if(e.length<50)throw new Error("Data too short for SmartLedger anchor");var t=0,r=18,i=e.slice(t,t+r).toString("utf8");if(t+=r,i!=="SMARTLEDGER.ATTEST")throw new Error("Invalid protocol identifier");var n=e[t];t+=1;var o=e.slice(t,t+10).toString("utf8").replace(/\0/g,"");t+=10;var a=e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3];t+=4;var s=e.slice(t,t+32);t+=32;var u=e.slice(t),c={};try{c=JSON.parse(u.toString("utf8"))}catch{}return{protocol:i,version:n,type:o,timestamp:new Date(a*1e3),hash:s.toString("hex"),metadata:c}};Lr.verifyAnchor=async function(e,t,r){if(r=r||{},!e||!t)throw new Error("verifyAnchor requires both txid and expectedHash");if(r.spvProof&&(r.header||r.headerChain)&&r.rawTx)return Lr._verifyAnchorSPV(e,t,r);if(typeof r.chainProvider!="function")throw new Error("verifyAnchor needs either a trustless SPV proof \u2014 { spvProof: { index, nodes }, header, rawTx } \u2014 or a trusted options.chainProvider(txid) returning { confirmations, blockHeight, opReturns }. Refusing to fabricate a result.");var i=r.minConfirmations!=null?r.minConfirmations:1,n=await r.chainProvider(e),o=n&&n.confirmations||0,a=n&&n.opReturns||[],s=String(t).toLowerCase(),u=a.some(function(l){return String(l).toLowerCase().indexOf(s)!==-1}),c=o>=i&&u;return{verified:c,txid:e,hash:t,committed:u,confirmations:o,blockHeight:n&&n.blockHeight||null,timestamp:new Date().toISOString(),proof:{type:"blockchain_anchor",protocol:"SMARTLEDGER.ATTEST",network:r.network||"mainnet"}}};Lr._verifyAnchorSPV=function(e,t,r){var i=r.spvProof||{},n=null,o=r.header;r.headerChain&&(n=c6.verifyHeaderChain(r.headerChain,{requirePow:r.requirePow!==!1,powLimit:r.powLimit,trustedHash:r.trustedHash}),o=r.headerChain[0]);var a=c6.verifyTxInclusion({txid:e,index:i.index,nodes:i.nodes,header:o,requirePow:r.requirePow!==!1,powLimit:r.powLimit,minWork:r.minWork}),s=f.Buffer.isBuffer(r.rawTx)?r.rawTx:f.Buffer.from(r.rawTx,"hex"),u=f.Buffer.from(Vh.sha256sha256(s)).reverse().toString("hex"),c=u.toLowerCase()===String(e).toLowerCase(),l=c&&Lr._rawTxCommitsTo(s,t),p=n?n.count:r.header?1:0,d=r.minConfirmations!=null?r.minConfirmations:1,v=n?n.valid:!0,_=p>=d;return{verified:a.valid&&c&&l&&v&&_,chainVerified:a.valid,committed:l,txidBound:c,powValid:a.powValid,confirmations:p,headerChainValid:n?n.valid:null,headerChainReason:n&&n.reason||null,tipHash:n?n.tipHash:null,txid:e,hash:t,blockHash:a.blockHash,merkleRoot:a.merkleRoot,timestamp:new Date().toISOString(),proof:{type:n?"spv_merkle_inclusion_with_confirmations":"spv_merkle_inclusion",protocol:"SMARTLEDGER.ATTEST",network:r.network||"mainnet"}}};Lr._rawTxCommitsTo=function(e,t){var r=String(t).toLowerCase(),i;try{i=new CS(e)}catch{return!1}return i.outputs.some(function(n){var o=n.script;if(!o||!o.chunks||!o.chunks.length)return!1;var a=o.chunks[0].opcodenum===106||o.chunks[0].opcodenum===0&&o.chunks[1]&&o.chunks[1].opcodenum===106;return a?o.chunks.some(function(s){return s.buf&&s.buf.toString("hex").toLowerCase().indexOf(r)!==-1}):!1})};Lr.getCostEstimate=function(e,t){t=t||{};var r=t.feeRate||1,i=200,n=32,o=e*(i+n)*r,a=(i+e*n)*r;return{individual:{totalCost:o,costPerHash:i*r,transactions:e},batch:{totalCost:a,costPerHash:Math.ceil(a/e),transactions:1},savings:{absolute:o-a,percentage:Math.round((o-a)/o*100)}}};Lr.createUTXO=function(e,t,r,i){return{txid:e,outputIndex:t,satoshis:r,script:i}};Lr.generateTestData=function(){var e=new Kh,t=new Lr(e),r=Vh.sha256(f.Buffer.from("test credential data")),i={issuer:"did:smartledger:test",type:"EmailVerifiedCredential",environment:"test"};return{privateKey:e.toWIF(),address:e.toAddress().toString(),credentialHash:r.toString("hex"),metadata:i,anchor:t}};d6.exports=Lr});var m6=T((fle,g6)=>{"use strict";g();var LS=Ie(),Gh={EmailVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/email/v1"],type:["VerifiableCredential","EmailVerifiedCredential"],requiredFields:["credentialSubject.email","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["email","verified"],properties:{email:{type:"string",format:"email"},verified:{type:"boolean"},verificationMethod:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"}}}}},AgeVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/age/v1"],type:["VerifiableCredential","AgeVerifiedCredential"],requiredFields:["credentialSubject.ageOver","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["ageOver","verified"],properties:{ageOver:{type:"number",minimum:0,maximum:150},verified:{type:"boolean"},birthDateHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},verificationMethod:{type:"string"}}}}},KYCVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/kyc/v1"],type:["VerifiableCredential","KYCVerifiedCredential"],requiredFields:["credentialSubject.kycLevel","credentialSubject.verified","credentialSubject.verifyingAuthority"],properties:{credentialSubject:{type:"object",required:["kycLevel","verified","verifyingAuthority"],properties:{kycLevel:{type:"string",enum:["basic","enhanced","premium","institutional"]},verified:{type:"boolean"},verifyingAuthority:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"},firstNameHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},lastNameHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},ssnHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"}}}}},OrganizationCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/organization/v1"],type:["VerifiableCredential","OrganizationCredential"],requiredFields:["credentialSubject.name","credentialSubject.type","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["name","type","verified"],properties:{name:{type:"string"},type:{type:"string",enum:["Corporation","LLC","Partnership","NGO","Government","Other"]},verified:{type:"boolean"},taxIdHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},incorporationState:{type:"string"},industry:{type:"string"},verificationMethod:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"}}}}},SSNVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ssn/v1"],type:["VerifiableCredential","SSNVerifiedCredential"],requiredFields:["credentialSubject.ssnHash","credentialSubject.verified","credentialSubject.verifyingAuthority"],properties:{credentialSubject:{type:"object",required:["ssnHash","verified","verifyingAuthority"],properties:{ssnHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},verified:{type:"boolean"},verifyingAuthority:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"},issuingState:{type:"string"}}}}},EducationalCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/education/v1"],type:["VerifiableCredential","EducationalCredential"],requiredFields:["credentialSubject.degree","credentialSubject.institution","credentialSubject.graduationDate"],properties:{credentialSubject:{type:"object",required:["degree","institution","graduationDate"],properties:{degree:{type:"string"},institution:{type:"string"},graduationDate:{type:"string",format:"date"},gpa:{type:"number",minimum:0,maximum:4},major:{type:"string"},honors:{type:"array",items:{type:"string"}}}}}},ProfessionalLicenseCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/license/v1"],type:["VerifiableCredential","ProfessionalLicenseCredential"],requiredFields:["credentialSubject.licenseType","credentialSubject.licenseNumber","credentialSubject.issuingAuthority","credentialSubject.isValid"],properties:{credentialSubject:{type:"object",required:["licenseType","licenseNumber","issuingAuthority","isValid"],properties:{licenseType:{type:"string"},licenseNumber:{type:"string"},issuingAuthority:{type:"string"},issuingState:{type:"string"},isValid:{type:"boolean"},issueDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"}}}}}},KX={getSchema:function(e){return Gh[e]||null},getAllSchemas:function(){return Gh},validate:function(e,t){try{LS.checkArgument(e&&typeof e=="object","Invalid credential");var r;if(typeof t=="string"){if(r=Gh[t],!r)return{valid:!1,errors:["Unknown schema type: "+t]}}else if(typeof t=="object")r=t;else return{valid:!1,errors:["Invalid schema parameter"]};var i=[],n=[];return this._validateCredentialStructure(e,i),this._validateCredentialTypes(e,r,i),this._validateRequiredFields(e,r,i),this._validateFieldProperties(e,r,i,n),{valid:i.length===0,errors:i,warnings:n}}catch(o){return{valid:!1,errors:["Schema validation error: "+o.message]}}},_validateCredentialStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.type||t.push("Missing type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject")},_validateCredentialTypes:function(e,t,r){if(!Array.isArray(e.type)){r.push("Credential type must be array");return}if(t.type&&Array.isArray(t.type))for(var i=0;i<t.type.length;i++)e.type.includes(t.type[i])||r.push("Missing required type: "+t.type[i])},_validateRequiredFields:function(e,t,r){if(t.requiredFields&&Array.isArray(t.requiredFields))for(var i=0;i<t.requiredFields.length;i++){var n=t.requiredFields[i],o=this._getNestedProperty(e,n);o==null&&r.push("Missing required field: "+n)}},_validateFieldProperties:function(e,t,r,i){t.properties&&t.properties.credentialSubject&&this._validateObjectProperties(e.credentialSubject,t.properties.credentialSubject,"credentialSubject",r,i)},_validateObjectProperties:function(e,t,r,i,n){!e||typeof e!="object"||t.properties&&Object.keys(t.properties).forEach(function(o){var a=e[o],s=t.properties[o],u=r+"."+o;a!=null&&this._validateProperty(a,s,u,i,n)}.bind(this))},_validateProperty:function(e,t,r,i,n){if(t.type){var o=Array.isArray(e)?"array":typeof e;if(o!==t.type){i.push("Invalid type for "+r+": expected "+t.type+", got "+o);return}}if(t.type==="string"&&(t.format==="email"&&!this._isValidEmail(e)&&i.push("Invalid email format for "+r),t.format==="date"&&!this._isValidDate(e)&&i.push("Invalid date format for "+r),t.format==="date-time"&&!this._isValidDateTime(e)&&i.push("Invalid date-time format for "+r),t.pattern&&!new RegExp(t.pattern).test(e)&&i.push("Value does not match pattern for "+r),t.enum&&!t.enum.includes(e)&&i.push("Invalid enum value for "+r+": "+e)),t.type==="number"&&(t.minimum!==void 0&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),t.maximum!==void 0&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum)),t.type==="array"&&t.items)for(var a=0;a<e.length;a++)this._validateProperty(e[a],t.items,r+"["+a+"]",i,n)},_getNestedProperty:function(e,t){return t.split(".").reduce(function(r,i){return r&&r[i]},e)},_isValidEmail:function(e){var t=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;return t.test(e)},_isValidDate:function(e){var t=new Date(e);return!isNaN(t.getTime())&&e.match(/^\d{4}-\d{2}-\d{2}$/)},_isValidDateTime:function(e){var t=new Date(e);return!isNaN(t.getTime())},addSchema:function(e,t){LS.checkArgument(typeof e=="string","Schema name must be string"),LS.checkArgument(t&&typeof t=="object","Invalid schema definition"),Gh[e]=t},createTemplate:function(e){var t=Gh[e];if(!t)throw new Error("Unknown credential type: "+e);var r={"@context":t["@context"]||["https://www.w3.org/2018/credentials/v1"],type:t.type||["VerifiableCredential"],issuer:"did:smartledger:ISSUER_DID_HERE",issuanceDate:new Date().toISOString(),credentialSubject:this._createSubjectTemplate(t.properties?t.properties.credentialSubject:{})};return r},_createSubjectTemplate:function(e){var t={id:"SUBJECT_ID_HERE"};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];t[r]=this._getDefaultValue(i)}.bind(this)),t},_getDefaultValue:function(e){switch(e.type){case"string":return e.enum?e.enum[0]:e.format==="email"?"example@example.com":e.format==="date"?"2023-01-01":e.format==="date-time"?new Date().toISOString():"PLACEHOLDER_STRING";case"number":return e.minimum||0;case"boolean":return!0;case"array":return[];case"object":return{};default:return null}}};g6.exports=KX});var y6=T((hle,v6)=>{"use strict";g();var VX=cv(),Of=fv(),GX=a6(),WX=u6(),Wh=p6(),YX=m6();function tt(e){if(!(this instanceof tt))return new tt(e);e=e||{},this.didResolver=VX,this.attestationVerifier=GX,this.zkProver=WX,this.schemaValidator=YX,this._attestationSignerOptions=e.attestationSigner||{},this._anchorOptions=e.anchor||{}}tt.prototype.createDID=function(e){return this.didResolver.fromPublicKey(e)};tt.prototype.resolveDID=function(e){return this.didResolver.resolve(e)};tt.prototype.verifyDIDOwnership=function(e,t){return this.didResolver.verifyOwnership(e,t)};tt.prototype.createEmailCredential=function(e,t,r,i){var n=new Of(i,this._attestationSignerOptions);return n.createEmailCredential(r,{issuerDID:e,subjectId:t})};tt.prototype.createAgeCredential=function(e,t,r,i,n){var o=new Of(n,this._attestationSignerOptions);return o.createAgeCredential(r,i,{issuerDID:e,subjectId:t})};tt.prototype.createKYCCredential=function(e,t,r,i,n){var o=new Of(n,this._attestationSignerOptions),a=Object.assign({level:r},i);return o.createKYCCredential(a,{issuerDID:e,subjectId:t})};tt.prototype.createOrganizationCredential=function(e,t,r,i){var n=new Of(i,this._attestationSignerOptions);return n.createOrganizationCredential(r,{issuerDID:e,subjectId:t})};tt.prototype.createPresentation=function(e,t,r,i){var n=new Of(r,this._attestationSignerOptions);return n.createPresentation(e,t,r,i)};tt.prototype.signCredential=function(e,t){var r=new Of(t,this._attestationSignerOptions);return r.signCredential(e,t)};tt.prototype.verifyCredential=function(e,t){return this.attestationVerifier.verifyCredential(e,t)};tt.prototype.verifyPresentation=function(e,t){return this.attestationVerifier.verifyPresentation(e,t)};tt.prototype.extractClaims=function(e){return this.attestationVerifier.extractClaims(e)};tt.prototype.generateSelectiveProof=function(e,t,r){return this.zkProver.generateSelectiveProof(e,t,r)};tt.prototype.verifySelectiveProof=function(e,t){return this.zkProver.verifySelectiveProof(e,t)};tt.prototype.generateAgeProof=function(e,t,r){var i=new Date("1995-06-15");return this.zkProver.generateAgeProof(i,t,r)};tt.prototype.verifyAgeProof=function(e,t,r){return this.zkProver.verifyAgeProof(e,t,r)};tt.prototype.generateRangeProof=function(e,t,r,i){return this.zkProver.generateRangeProof(e,t,r,i)};tt.prototype.verifyRangeProof=function(e,t,r){return this.zkProver.verifyRangeProof(e,t,r)};tt.prototype.generateMembershipProof=function(e,t,r){return this.zkProver.generateMembershipProof(e,t,r)};tt.prototype.verifyMembershipProof=function(e,t){return this.zkProver.verifyMembershipProof(e,t)};function dv(e){return Array.isArray(e)?{metadata:void 0,utxos:e}:(e=e||{},{metadata:e.metadata,utxos:e.utxos})}tt.prototype.anchorCredential=function(e,t,r){var i=new Wh(t,this._anchorOptions),n=dv(r);return i.anchorCredential(e,n.metadata,n.utxos)};tt.prototype.anchorBatch=function(e,t,r){var i=new Wh(t,this._anchorOptions),n=dv(r);return i.anchorBatch(e,n.metadata,n.utxos)};tt.prototype.registerDID=function(e,t,r,i){var n=new Wh(r,this._anchorOptions);return n.registerDID(e,t,dv(i).utxos)};tt.prototype.revokeCredential=function(e,t,r,i){var n=new Wh(r,this._anchorOptions);return n.revokeCredential(e,t,dv(i).utxos)};tt.prototype.queryAnchoredData=function(e){var t=new Wh(null,this._anchorOptions);return t.queryAnchoredData(e)};tt.prototype.validateCredential=function(e,t){return this.schemaValidator.validate(e,t)};tt.prototype.getSchema=function(e){return this.schemaValidator.getSchema(e)};tt.prototype.getAllSchemas=function(){return this.schemaValidator.getAllSchemas()};tt.prototype.addSchema=function(e,t){return this.schemaValidator.addSchema(e,t)};tt.prototype.createTemplate=function(e){return this.schemaValidator.createTemplate(e)};tt.prototype.generateNonce=function(e){e=e||32;var t=nr();return t.randomBytes(e).toString("hex")};tt.prototype.hashData=function(e,t){var r=nr(),i=r.createHash("sha256");return i.update(e),t&&i.update(t),i.digest("hex")};tt.prototype.getVersion=function(){return"1.0.0"};tt.prototype.getInfo=function(){return{name:"SmartLedger BSV Global Digital Attestation Framework",version:this.getVersion(),description:"W3C-compliant verifiable credentials with DID resolution, zero-knowledge proofs, and blockchain anchoring",components:{didResolver:"DID Resolution and Management",attestationSigner:"Verifiable Credential Creation",attestationVerifier:"Credential and Presentation Verification",zkProver:"Zero-Knowledge Proof Generation and Verification",anchor:"Blockchain Anchoring and Timestamping",schemaValidator:"W3C VC Schema Validation"},standards:["W3C Verifiable Credentials Data Model v1.1","W3C Decentralized Identifiers (DIDs) v1.0","RFC 7515 JSON Web Signature (JWS)","BSV Blockchain Protocol"]}};v6.exports=tt});var _6=T((ple,b6)=>{"use strict";g();var pv=nr();async function ZX(e){e=e||{};var t=e.alg||"ES256",r=e.kid||"key-"+Date.now();if(t!=="ES256"&&t!=="ES256K")throw new Error("Invalid algorithm. Must be ES256 or ES256K");var i;t==="ES256"?i=pv.generateKeyPairSync("ec",{namedCurve:"P-256",publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}}):i=pv.generateKeyPairSync("ec",{namedCurve:"secp256k1",publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});var n=pv.createPublicKey(i.publicKey).export({format:"jwk"}),o=pv.createPrivateKey(i.privateKey).export({format:"jwk"});return n.kid=r,n.alg=t,n.use="sig",n.kty="EC",o.kid=r,o.alg=t,o.use="sig",o.kty="EC",{privateJwk:o,publicJwk:n,kid:r,alg:t}}var Yh=["authentication","assertionMethod","keyAgreement","capabilityInvocation","capabilityDelegation"],$X=["authentication","assertionMethod"];function MS(e){var t=e.relationships||$X;if(!Array.isArray(t)||t.length===0)throw new Error("relationships must be a non-empty array of DID Core verification relationships");return t.forEach(function(r){if(Yh.indexOf(r)===-1)throw new Error("unknown verification relationship: "+r+" (expected one of "+Yh.join(", ")+")")}),t}function XX(e){if(!e.domain)throw new Error("domain is required");var t=e.domain,r="did:web:"+t.replace(/:/g,"%3A"),i=[],n=[],o=[];if(e.p256){var a={id:r+"#"+e.p256.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.p256.jwk};i.push(a),n.push(MS(e.p256)),o.push(e.p256.jwk)}if(e.k1){var s={id:r+"#"+e.k1.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.k1.jwk};i.push(s),n.push(MS(e.k1)),o.push(e.k1.jwk)}if(i.length===0)throw new Error("At least one key (p256 or k1) must be provided");var u={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/jws-2020/v1"],id:r,verificationMethod:i};Yh.forEach(function(l){var p=i.filter(function(d,v){return n[v].indexOf(l)!==-1}).map(function(d){return d.id});p.length&&(u[l]=p)}),e.controllerName&&(u.controller=e.controllerName);var c={keys:o};return{did:r,didDocument:u,jwks:c}}function JX(e){if(!e.domain||!e.newKey)throw new Error("domain and newKey are required");var t=e.domain,r="did:web:"+t.replace(/:/g,"%3A"),i=e.keepOldForDays||30,n={id:r+"#"+e.newKey.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.newKey.jwk},o=MS(e.newKey),a=e.currentDocument||null,s={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/jws-2020/v1"],id:r,verificationMethod:[n]};if(Yh.forEach(function(l){o.indexOf(l)!==-1?s[l]=[n.id]:a&&Array.isArray(a[l])&&a[l].length&&(s[l]=a[l].slice())}),a&&Array.isArray(a.verificationMethod)){var u={};Yh.forEach(function(l){(s[l]||[]).forEach(function(p){u[p]=!0})}),a.verificationMethod.forEach(function(l){u[l.id]&&l.id!==n.id&&s.verificationMethod.push(l)})}s.rotationInfo={rotatedAt:new Date().toISOString(),gracePeriodDays:i};var c={keys:[e.newKey.jwk]};return{didDocument:s,jwks:c}}b6.exports={generateIssuerKeys:ZX,buildDidWebDocuments:XX,rotateIssuerKey:JX}});var DS=T((mle,w6)=>{"use strict";g();var Zh=nr(),$h={ES256:"P-256",ES256K:"secp256k1"},QX=["ES256","ES256K"];function gv(e){return e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function mv(e){for(e=e.replace(/-/g,"+").replace(/_/g,"/");e.length%4;)e+="=";return f.Buffer.from(e,"base64")}async function eJ(e){if(!e.issuerDid||!e.subjectId||!e.credentialSubject||!e.privateJwk)throw new Error("issuerDid, subjectId, credentialSubject, and privateJwk are required");var t=e.alg||"ES256";if(!$h[t])throw new Error("Unsupported algorithm: "+t);if(e.privateJwk.crv&&e.privateJwk.crv!==$h[t])throw new Error("Key curve "+e.privateJwk.crv+" does not match alg "+t);var r=e.kid||e.privateJwk.kid,i=e.types||["VerifiableCredential"],n=e.expSeconds||365*24*60*60,o=Math.floor(Date.now()/1e3),a=new Date().toISOString(),s={"@context":["https://www.w3.org/2018/credentials/v1"],type:i,issuer:e.issuerDid,issuanceDate:a,credentialSubject:Object.assign({id:e.subjectId},e.credentialSubject)},u={iss:e.issuerDid,sub:e.subjectId,iat:o,exp:o+n,vc:s},c={alg:t,typ:"JWT",kid:r},l=gv(f.Buffer.from(JSON.stringify(c))),p=gv(f.Buffer.from(JSON.stringify(u))),d=l+"."+p,v=Zh.createPrivateKey({key:e.privateJwk,format:"jwk"}),_=Zh.sign("sha256",f.Buffer.from(d),{key:v,dsaEncoding:"ieee-p1363"}),I=gv(_),R=d+"."+I;return{jwt:R}}async function tJ(e,t){t=t||{};try{if(typeof e!="string")return{valid:!1,error:"Invalid JWT format"};var r=e.split(".");if(r.length!==3)return{valid:!1,error:"Invalid JWT format"};var i=r[0],n=r[1],o=r[2],a=JSON.parse(mv(i).toString()),s=JSON.parse(mv(n).toString()),u=mv(o),c=t.allowedAlgs||QX;if(!a.alg||c.indexOf(a.alg)===-1||!$h[a.alg])return{valid:!1,error:"Algorithm not allowed: "+a.alg,header:a,payload:s};var l=Math.floor(Date.now()/1e3),p=t.clockToleranceSec||60;if(t.requireExpiration&&!s.exp)return{valid:!1,error:"JWT missing required exp claim",header:a,payload:s};if(s.exp&&s.exp<l-p)return{valid:!1,error:"JWT expired",header:a,payload:s};if(s.nbf&&s.nbf>l+p)return{valid:!1,error:"JWT not yet valid",header:a,payload:s};if(t.expectedIssuerDid&&s.iss!==t.expectedIssuerDid)return{valid:!1,error:"Unexpected issuer",header:a,payload:s};var d;if(t.didResolver){var v=await t.didResolver(s.iss);if(!v||!v.jwks||!v.jwks.keys)return{valid:!1,error:"Failed to resolve issuer DID",header:a,payload:s};var _=v.jwks.keys.find(function(q){return q.kid===a.kid});if(!_)return{valid:!1,error:"Key not found in JWKS",header:a,payload:s};d=_}else return{valid:!1,error:"DID resolver required for verification",header:a,payload:s};if(d.crv&&d.crv!==$h[a.alg])return{valid:!1,error:"Key curve does not match algorithm",header:a,payload:s};var I=i+"."+n,R=Zh.createPublicKey({key:d,format:"jwk"}),k=Zh.verify("sha256",f.Buffer.from(I),{key:R,dsaEncoding:"ieee-p1363"},u);if(!k&&t.allowLegacyDER)try{k=Zh.verify("sha256",f.Buffer.from(I),{key:R,dsaEncoding:"der"},u)}catch{k=!1}return k?{valid:!0,header:a,payload:s}:{valid:!1,error:"Invalid signature",header:a,payload:s}}catch(q){return{valid:!1,error:q.message||"Verification failed"}}}w6.exports={issueVcJwt:eJ,verifyVcJwt:tJ,base64UrlEncode:gv,base64UrlDecode:mv,ALG_TO_CRV:$h}});var E6=T((yle,S6)=>{"use strict";g();function rJ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}S6.exports=rJ});var Xh=T(Ti=>{"use strict";g();var iJ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function nJ(e,t){return Object.prototype.hasOwnProperty.call(e,t)}Ti.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var i in r)nJ(r,i)&&(e[i]=r[i])}}return e};Ti.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var oJ={arraySet:function(e,t,r,i,n){if(t.subarray&&e.subarray){e.set(t.subarray(r,r+i),n);return}for(var o=0;o<i;o++)e[n+o]=t[r+o]},flattenChunks:function(e){var t,r,i,n,o,a;for(i=0,t=0,r=e.length;t<r;t++)i+=e[t].length;for(a=new Uint8Array(i),n=0,t=0,r=e.length;t<r;t++)o=e[t],a.set(o,n),n+=o.length;return a}},aJ={arraySet:function(e,t,r,i,n){for(var o=0;o<i;o++)e[n+o]=t[r+o]},flattenChunks:function(e){return[].concat.apply([],e)}};Ti.setTyped=function(e){e?(Ti.Buf8=Uint8Array,Ti.Buf16=Uint16Array,Ti.Buf32=Int32Array,Ti.assign(Ti,oJ)):(Ti.Buf8=Array,Ti.Buf16=Array,Ti.Buf32=Array,Ti.assign(Ti,aJ))};Ti.setTyped(iJ)});var G6=T(Tf=>{"use strict";g();var sJ=Xh(),uJ=4,x6=0,O6=1,cJ=2;function Af(e){for(var t=e.length;--t>=0;)e[t]=0}var fJ=0,k6=1,lJ=2,hJ=3,dJ=258,KS=29,id=256,Qh=id+1+KS,If=30,VS=19,B6=2*Qh+1,_u=15,HS=16,pJ=7,GS=256,N6=16,C6=17,L6=18,jS=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],vv=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],gJ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],M6=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],mJ=512,Aa=new Array((Qh+2)*2);Af(Aa);var Jh=new Array(If*2);Af(Jh);var ed=new Array(mJ);Af(ed);var td=new Array(dJ-hJ+1);Af(td);var WS=new Array(KS);Af(WS);var yv=new Array(If);Af(yv);function qS(e,t,r,i,n){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=i,this.max_length=n,this.has_stree=e&&e.length}var D6,H6,q6;function US(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function U6(e){return e<256?ed[e]:ed[256+(e>>>7)]}function rd(e,t){e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255}function Ui(e,t,r){e.bi_valid>HS-r?(e.bi_buf|=t<<e.bi_valid&65535,rd(e,e.bi_buf),e.bi_buf=t>>HS-e.bi_valid,e.bi_valid+=r-HS):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function Co(e,t,r){Ui(e,r[t*2],r[t*2+1])}function F6(e,t){var r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1}function vJ(e){e.bi_valid===16?(rd(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)}function yJ(e,t){var r=t.dyn_tree,i=t.max_code,n=t.stat_desc.static_tree,o=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,s=t.stat_desc.extra_base,u=t.stat_desc.max_length,c,l,p,d,v,_,I=0;for(d=0;d<=_u;d++)e.bl_count[d]=0;for(r[e.heap[e.heap_max]*2+1]=0,c=e.heap_max+1;c<B6;c++)l=e.heap[c],d=r[r[l*2+1]*2+1]+1,d>u&&(d=u,I++),r[l*2+1]=d,!(l>i)&&(e.bl_count[d]++,v=0,l>=s&&(v=a[l-s]),_=r[l*2],e.opt_len+=_*(d+v),o&&(e.static_len+=_*(n[l*2+1]+v)));if(I!==0){do{for(d=u-1;e.bl_count[d]===0;)d--;e.bl_count[d]--,e.bl_count[d+1]+=2,e.bl_count[u]--,I-=2}while(I>0);for(d=u;d!==0;d--)for(l=e.bl_count[d];l!==0;)p=e.heap[--c],!(p>i)&&(r[p*2+1]!==d&&(e.opt_len+=(d-r[p*2+1])*r[p*2],r[p*2+1]=d),l--)}}function j6(e,t,r){var i=new Array(_u+1),n=0,o,a;for(o=1;o<=_u;o++)i[o]=n=n+r[o-1]<<1;for(a=0;a<=t;a++){var s=e[a*2+1];s!==0&&(e[a*2]=F6(i[s]++,s))}}function bJ(){var e,t,r,i,n,o=new Array(_u+1);for(r=0,i=0;i<KS-1;i++)for(WS[i]=r,e=0;e<1<<jS[i];e++)td[r++]=i;for(td[r-1]=i,n=0,i=0;i<16;i++)for(yv[i]=n,e=0;e<1<<vv[i];e++)ed[n++]=i;for(n>>=7;i<If;i++)for(yv[i]=n<<7,e=0;e<1<<vv[i]-7;e++)ed[256+n++]=i;for(t=0;t<=_u;t++)o[t]=0;for(e=0;e<=143;)Aa[e*2+1]=8,e++,o[8]++;for(;e<=255;)Aa[e*2+1]=9,e++,o[9]++;for(;e<=279;)Aa[e*2+1]=7,e++,o[7]++;for(;e<=287;)Aa[e*2+1]=8,e++,o[8]++;for(j6(Aa,Qh+1,o),e=0;e<If;e++)Jh[e*2+1]=5,Jh[e*2]=F6(e,5);D6=new qS(Aa,jS,id+1,Qh,_u),H6=new qS(Jh,vv,0,If,_u),q6=new qS(new Array(0),gJ,0,VS,pJ)}function z6(e){var t;for(t=0;t<Qh;t++)e.dyn_ltree[t*2]=0;for(t=0;t<If;t++)e.dyn_dtree[t*2]=0;for(t=0;t<VS;t++)e.bl_tree[t*2]=0;e.dyn_ltree[GS*2]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function K6(e){e.bi_valid>8?rd(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function _J(e,t,r,i){K6(e),i&&(rd(e,r),rd(e,~r)),sJ.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}function I6(e,t,r,i){var n=t*2,o=r*2;return e[n]<e[o]||e[n]===e[o]&&i[t]<=i[r]}function FS(e,t,r){for(var i=e.heap[r],n=r<<1;n<=e.heap_len&&(n<e.heap_len&&I6(t,e.heap[n+1],e.heap[n],e.depth)&&n++,!I6(t,i,e.heap[n],e.depth));)e.heap[r]=e.heap[n],r=n,n<<=1;e.heap[r]=i}function A6(e,t,r){var i,n,o=0,a,s;if(e.last_lit!==0)do i=e.pending_buf[e.d_buf+o*2]<<8|e.pending_buf[e.d_buf+o*2+1],n=e.pending_buf[e.l_buf+o],o++,i===0?Co(e,n,t):(a=td[n],Co(e,a+id+1,t),s=jS[a],s!==0&&(n-=WS[a],Ui(e,n,s)),i--,a=U6(i),Co(e,a,r),s=vv[a],s!==0&&(i-=yv[a],Ui(e,i,s)));while(o<e.last_lit);Co(e,GS,t)}function zS(e,t){var r=t.dyn_tree,i=t.stat_desc.static_tree,n=t.stat_desc.has_stree,o=t.stat_desc.elems,a,s,u=-1,c;for(e.heap_len=0,e.heap_max=B6,a=0;a<o;a++)r[a*2]!==0?(e.heap[++e.heap_len]=u=a,e.depth[a]=0):r[a*2+1]=0;for(;e.heap_len<2;)c=e.heap[++e.heap_len]=u<2?++u:0,r[c*2]=1,e.depth[c]=0,e.opt_len--,n&&(e.static_len-=i[c*2+1]);for(t.max_code=u,a=e.heap_len>>1;a>=1;a--)FS(e,r,a);c=o;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],FS(e,r,1),s=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=s,r[c*2]=r[a*2]+r[s*2],e.depth[c]=(e.depth[a]>=e.depth[s]?e.depth[a]:e.depth[s])+1,r[a*2+1]=r[s*2+1]=c,e.heap[1]=c++,FS(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],yJ(e,t),j6(r,u,e.bl_count)}function T6(e,t,r){var i,n=-1,o,a=t[1],s=0,u=7,c=4;for(a===0&&(u=138,c=3),t[(r+1)*2+1]=65535,i=0;i<=r;i++)o=a,a=t[(i+1)*2+1],!(++s<u&&o===a)&&(s<c?e.bl_tree[o*2]+=s:o!==0?(o!==n&&e.bl_tree[o*2]++,e.bl_tree[N6*2]++):s<=10?e.bl_tree[C6*2]++:e.bl_tree[L6*2]++,s=0,n=o,a===0?(u=138,c=3):o===a?(u=6,c=3):(u=7,c=4))}function P6(e,t,r){var i,n=-1,o,a=t[1],s=0,u=7,c=4;for(a===0&&(u=138,c=3),i=0;i<=r;i++)if(o=a,a=t[(i+1)*2+1],!(++s<u&&o===a)){if(s<c)do Co(e,o,e.bl_tree);while(--s!==0);else o!==0?(o!==n&&(Co(e,o,e.bl_tree),s--),Co(e,N6,e.bl_tree),Ui(e,s-3,2)):s<=10?(Co(e,C6,e.bl_tree),Ui(e,s-3,3)):(Co(e,L6,e.bl_tree),Ui(e,s-11,7));s=0,n=o,a===0?(u=138,c=3):o===a?(u=6,c=3):(u=7,c=4)}}function wJ(e){var t;for(T6(e,e.dyn_ltree,e.l_desc.max_code),T6(e,e.dyn_dtree,e.d_desc.max_code),zS(e,e.bl_desc),t=VS-1;t>=3&&e.bl_tree[M6[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t}function SJ(e,t,r,i){var n;for(Ui(e,t-257,5),Ui(e,r-1,5),Ui(e,i-4,4),n=0;n<i;n++)Ui(e,e.bl_tree[M6[n]*2+1],3);P6(e,e.dyn_ltree,t-1),P6(e,e.dyn_dtree,r-1)}function EJ(e){var t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return x6;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return O6;for(r=32;r<id;r++)if(e.dyn_ltree[r*2]!==0)return O6;return x6}var R6=!1;function xJ(e){R6||(bJ(),R6=!0),e.l_desc=new US(e.dyn_ltree,D6),e.d_desc=new US(e.dyn_dtree,H6),e.bl_desc=new US(e.bl_tree,q6),e.bi_buf=0,e.bi_valid=0,z6(e)}function V6(e,t,r,i){Ui(e,(fJ<<1)+(i?1:0),3),_J(e,t,r,!0)}function OJ(e){Ui(e,k6<<1,3),Co(e,GS,Aa),vJ(e)}function IJ(e,t,r,i){var n,o,a=0;e.level>0?(e.strm.data_type===cJ&&(e.strm.data_type=EJ(e)),zS(e,e.l_desc),zS(e,e.d_desc),a=wJ(e),n=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=n&&(n=o)):n=o=r+5,r+4<=n&&t!==-1?V6(e,t,r,i):e.strategy===uJ||o===n?(Ui(e,(k6<<1)+(i?1:0),3),A6(e,Aa,Jh)):(Ui(e,(lJ<<1)+(i?1:0),3),SJ(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),A6(e,e.dyn_ltree,e.dyn_dtree)),z6(e),i&&K6(e)}function AJ(e,t,r){return e.pending_buf[e.d_buf+e.last_lit*2]=t>>>8&255,e.pending_buf[e.d_buf+e.last_lit*2+1]=t&255,e.pending_buf[e.l_buf+e.last_lit]=r&255,e.last_lit++,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(td[r]+id+1)*2]++,e.dyn_dtree[U6(t)*2]++),e.last_lit===e.lit_bufsize-1}Tf._tr_init=xJ;Tf._tr_stored_block=V6;Tf._tr_flush_block=IJ;Tf._tr_tally=AJ;Tf._tr_align=OJ});var YS=T((xle,W6)=>{"use strict";g();function TJ(e,t,r,i){for(var n=e&65535|0,o=e>>>16&65535|0,a=0;r!==0;){a=r>2e3?2e3:r,r-=a;do n=n+t[i++]|0,o=o+n|0;while(--a);n%=65521,o%=65521}return n|o<<16|0}W6.exports=TJ});var ZS=T((Ile,Y6)=>{"use strict";g();function PJ(){for(var e,t=[],r=0;r<256;r++){e=r;for(var i=0;i<8;i++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t}var RJ=PJ();function kJ(e,t,r,i){var n=RJ,o=i+r;e^=-1;for(var a=i;a<o;a++)e=e>>>8^n[(e^t[a])&255];return e^-1}Y6.exports=kJ});var $6=T((Tle,Z6)=>{"use strict";g();Z6.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var o3=T(Do=>{"use strict";g();var Pi=Xh(),_n=G6(),e3=YS(),_s=ZS(),BJ=$6(),xu=0,NJ=1,CJ=3,Os=4,X6=5,Mo=0,J6=1,wn=-2,LJ=-3,$S=-5,MJ=-1,DJ=1,bv=2,HJ=3,qJ=4,UJ=0,FJ=2,Ev=8,jJ=9,zJ=15,KJ=8,VJ=29,GJ=256,JS=GJ+1+VJ,WJ=30,YJ=19,ZJ=2*JS+1,$J=15,ct=3,Es=258,Vn=Es+ct+1,XJ=32,xv=42,QS=69,_v=73,wv=91,Sv=103,wu=113,od=666,Gr=1,ad=2,Su=3,kf=4,JJ=3;function xs(e,t){return e.msg=BJ[t],t}function Q6(e){return(e<<1)-(e>4?9:0)}function Ss(e){for(var t=e.length;--t>=0;)e[t]=0}function ws(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(Pi.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))}function si(e,t){_n._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ws(e.strm)}function mt(e,t){e.pending_buf[e.pending++]=t}function nd(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255}function QJ(e,t,r,i){var n=e.avail_in;return n>i&&(n=i),n===0?0:(e.avail_in-=n,Pi.arraySet(t,e.input,e.next_in,n,r),e.state.wrap===1?e.adler=e3(e.adler,t,n,r):e.state.wrap===2&&(e.adler=_s(e.adler,t,n,r)),e.next_in+=n,e.total_in+=n,n)}function t3(e,t){var r=e.max_chain_length,i=e.strstart,n,o,a=e.prev_length,s=e.nice_match,u=e.strstart>e.w_size-Vn?e.strstart-(e.w_size-Vn):0,c=e.window,l=e.w_mask,p=e.prev,d=e.strstart+Es,v=c[i+a-1],_=c[i+a];e.prev_length>=e.good_match&&(r>>=2),s>e.lookahead&&(s=e.lookahead);do if(n=t,!(c[n+a]!==_||c[n+a-1]!==v||c[n]!==c[i]||c[++n]!==c[i+1])){i+=2,n++;do;while(c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&i<d);if(o=Es-(d-i),i=d-Es,o>a){if(e.match_start=t,a=o,o>=s)break;v=c[i+a-1],_=c[i+a]}}while((t=p[t&l])>u&&--r!==0);return a<=e.lookahead?a:e.lookahead}function Eu(e){var t=e.w_size,r,i,n,o,a;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Vn)){Pi.arraySet(e.window,e.window,t,t,0),e.match_start-=t,e.strstart-=t,e.block_start-=t,i=e.hash_size,r=i;do n=e.head[--r],e.head[r]=n>=t?n-t:0;while(--i);i=t,r=i;do n=e.prev[--r],e.prev[r]=n>=t?n-t:0;while(--i);o+=t}if(e.strm.avail_in===0)break;if(i=QJ(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=i,e.lookahead+e.insert>=ct)for(a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+ct-1])&e.hash_mask,e.prev[a&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=a,a++,e.insert--,!(e.lookahead+e.insert<ct)););}while(e.lookahead<Vn&&e.strm.avail_in!==0)}function eQ(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(Eu(e),e.lookahead===0&&t===xu)return Gr;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var i=e.block_start+r;if((e.strstart===0||e.strstart>=i)&&(e.lookahead=e.strstart-i,e.strstart=i,si(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-Vn&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):(e.strstart>e.block_start&&(si(e,!1),e.strm.avail_out===0),Gr)}function XS(e,t){for(var r,i;;){if(e.lookahead<Vn){if(Eu(e),e.lookahead<Vn&&t===xu)return Gr;if(e.lookahead===0)break}if(r=0,e.lookahead>=ct&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-Vn&&(e.match_length=t3(e,r)),e.match_length>=ct)if(i=_n._tr_tally(e,e.strstart-e.match_start,e.match_length-ct),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=ct){e.match_length--;do e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else i=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(i&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=e.strstart<ct-1?e.strstart:ct-1,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function Pf(e,t){for(var r,i,n;;){if(e.lookahead<Vn){if(Eu(e),e.lookahead<Vn&&t===xu)return Gr;if(e.lookahead===0)break}if(r=0,e.lookahead>=ct&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=ct-1,r!==0&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-Vn&&(e.match_length=t3(e,r),e.match_length<=5&&(e.strategy===DJ||e.match_length===ct&&e.strstart-e.match_start>4096)&&(e.match_length=ct-1)),e.prev_length>=ct&&e.match_length<=e.prev_length){n=e.strstart+e.lookahead-ct,i=_n._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-ct),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=n&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=ct-1,e.strstart++,i&&(si(e,!1),e.strm.avail_out===0))return Gr}else if(e.match_available){if(i=_n._tr_tally(e,0,e.window[e.strstart-1]),i&&si(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Gr}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(i=_n._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<ct-1?e.strstart:ct-1,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function tQ(e,t){for(var r,i,n,o,a=e.window;;){if(e.lookahead<=Es){if(Eu(e),e.lookahead<=Es&&t===xu)return Gr;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=ct&&e.strstart>0&&(n=e.strstart-1,i=a[n],i===a[++n]&&i===a[++n]&&i===a[++n])){o=e.strstart+Es;do;while(i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&n<o);e.match_length=Es-(o-n),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=ct?(r=_n._tr_tally(e,1,e.match_length-ct),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function rQ(e,t){for(var r;;){if(e.lookahead===0&&(Eu(e),e.lookahead===0)){if(t===xu)return Gr;break}if(e.match_length=0,r=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function Lo(e,t,r,i,n){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=i,this.func=n}var Rf;Rf=[new Lo(0,0,0,0,eQ),new Lo(4,4,8,4,XS),new Lo(4,5,16,8,XS),new Lo(4,6,32,32,XS),new Lo(4,4,16,16,Pf),new Lo(8,16,32,32,Pf),new Lo(8,16,128,128,Pf),new Lo(8,32,128,256,Pf),new Lo(32,128,258,1024,Pf),new Lo(32,258,258,4096,Pf)];function iQ(e){e.window_size=2*e.w_size,Ss(e.head),e.max_lazy_match=Rf[e.level].max_lazy,e.good_match=Rf[e.level].good_length,e.nice_match=Rf[e.level].nice_length,e.max_chain_length=Rf[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=ct-1,e.match_available=0,e.ins_h=0}function nQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Ev,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Pi.Buf16(ZJ*2),this.dyn_dtree=new Pi.Buf16((2*WJ+1)*2),this.bl_tree=new Pi.Buf16((2*YJ+1)*2),Ss(this.dyn_ltree),Ss(this.dyn_dtree),Ss(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Pi.Buf16($J+1),this.heap=new Pi.Buf16(2*JS+1),Ss(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Pi.Buf16(2*JS+1),Ss(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function r3(e){var t;return!e||!e.state?xs(e,wn):(e.total_in=e.total_out=0,e.data_type=FJ,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?xv:wu,e.adler=t.wrap===2?0:1,t.last_flush=xu,_n._tr_init(t),Mo)}function i3(e){var t=r3(e);return t===Mo&&iQ(e.state),t}function oQ(e,t){return!e||!e.state||e.state.wrap!==2?wn:(e.state.gzhead=t,Mo)}function n3(e,t,r,i,n,o){if(!e)return wn;var a=1;if(t===MJ&&(t=6),i<0?(a=0,i=-i):i>15&&(a=2,i-=16),n<1||n>jJ||r!==Ev||i<8||i>15||t<0||t>9||o<0||o>qJ)return xs(e,wn);i===8&&(i=9);var s=new nQ;return e.state=s,s.strm=e,s.wrap=a,s.gzhead=null,s.w_bits=i,s.w_size=1<<s.w_bits,s.w_mask=s.w_size-1,s.hash_bits=n+7,s.hash_size=1<<s.hash_bits,s.hash_mask=s.hash_size-1,s.hash_shift=~~((s.hash_bits+ct-1)/ct),s.window=new Pi.Buf8(s.w_size*2),s.head=new Pi.Buf16(s.hash_size),s.prev=new Pi.Buf16(s.w_size),s.lit_bufsize=1<<n+6,s.pending_buf_size=s.lit_bufsize*4,s.pending_buf=new Pi.Buf8(s.pending_buf_size),s.d_buf=1*s.lit_bufsize,s.l_buf=3*s.lit_bufsize,s.level=t,s.strategy=o,s.method=r,i3(e)}function aQ(e,t){return n3(e,t,Ev,zJ,KJ,UJ)}function sQ(e,t){var r,i,n,o;if(!e||!e.state||t>X6||t<0)return e?xs(e,wn):wn;if(i=e.state,!e.output||!e.input&&e.avail_in!==0||i.status===od&&t!==Os)return xs(e,e.avail_out===0?$S:wn);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===xv)if(i.wrap===2)e.adler=0,mt(i,31),mt(i,139),mt(i,8),i.gzhead?(mt(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),mt(i,i.gzhead.time&255),mt(i,i.gzhead.time>>8&255),mt(i,i.gzhead.time>>16&255),mt(i,i.gzhead.time>>24&255),mt(i,i.level===9?2:i.strategy>=bv||i.level<2?4:0),mt(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length&&(mt(i,i.gzhead.extra.length&255),mt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=_s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=QS):(mt(i,0),mt(i,0),mt(i,0),mt(i,0),mt(i,0),mt(i,i.level===9?2:i.strategy>=bv||i.level<2?4:0),mt(i,JJ),i.status=wu);else{var a=Ev+(i.w_bits-8<<4)<<8,s=-1;i.strategy>=bv||i.level<2?s=0:i.level<6?s=1:i.level===6?s=2:s=3,a|=s<<6,i.strstart!==0&&(a|=XJ),a+=31-a%31,i.status=wu,nd(i,a),i.strstart!==0&&(nd(i,e.adler>>>16),nd(i,e.adler&65535)),e.adler=1}if(i.status===QS)if(i.gzhead.extra){for(n=i.pending;i.gzindex<(i.gzhead.extra.length&65535)&&!(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size));)mt(i,i.gzhead.extra[i.gzindex]&255),i.gzindex++;i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=_v)}else i.status=_v;if(i.status===_v)if(i.gzhead.name){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size)){o=1;break}i.gzindex<i.gzhead.name.length?o=i.gzhead.name.charCodeAt(i.gzindex++)&255:o=0,mt(i,o)}while(o!==0);i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),o===0&&(i.gzindex=0,i.status=wv)}else i.status=wv;if(i.status===wv)if(i.gzhead.comment){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size)){o=1;break}i.gzindex<i.gzhead.comment.length?o=i.gzhead.comment.charCodeAt(i.gzindex++)&255:o=0,mt(i,o)}while(o!==0);i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),o===0&&(i.status=Sv)}else i.status=Sv;if(i.status===Sv&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ws(e),i.pending+2<=i.pending_buf_size&&(mt(i,e.adler&255),mt(i,e.adler>>8&255),e.adler=0,i.status=wu)):i.status=wu),i.pending!==0){if(ws(e),e.avail_out===0)return i.last_flush=-1,Mo}else if(e.avail_in===0&&Q6(t)<=Q6(r)&&t!==Os)return xs(e,$S);if(i.status===od&&e.avail_in!==0)return xs(e,$S);if(e.avail_in!==0||i.lookahead!==0||t!==xu&&i.status!==od){var u=i.strategy===bv?rQ(i,t):i.strategy===HJ?tQ(i,t):Rf[i.level].func(i,t);if((u===Su||u===kf)&&(i.status=od),u===Gr||u===Su)return e.avail_out===0&&(i.last_flush=-1),Mo;if(u===ad&&(t===NJ?_n._tr_align(i):t!==X6&&(_n._tr_stored_block(i,0,0,!1),t===CJ&&(Ss(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),ws(e),e.avail_out===0))return i.last_flush=-1,Mo}return t!==Os?Mo:i.wrap<=0?J6:(i.wrap===2?(mt(i,e.adler&255),mt(i,e.adler>>8&255),mt(i,e.adler>>16&255),mt(i,e.adler>>24&255),mt(i,e.total_in&255),mt(i,e.total_in>>8&255),mt(i,e.total_in>>16&255),mt(i,e.total_in>>24&255)):(nd(i,e.adler>>>16),nd(i,e.adler&65535)),ws(e),i.wrap>0&&(i.wrap=-i.wrap),i.pending!==0?Mo:J6)}function uQ(e){var t;return!e||!e.state?wn:(t=e.state.status,t!==xv&&t!==QS&&t!==_v&&t!==wv&&t!==Sv&&t!==wu&&t!==od?xs(e,wn):(e.state=null,t===wu?xs(e,LJ):Mo))}function cQ(e,t){var r=t.length,i,n,o,a,s,u,c,l;if(!e||!e.state||(i=e.state,a=i.wrap,a===2||a===1&&i.status!==xv||i.lookahead))return wn;for(a===1&&(e.adler=e3(e.adler,t,r,0)),i.wrap=0,r>=i.w_size&&(a===0&&(Ss(i.head),i.strstart=0,i.block_start=0,i.insert=0),l=new Pi.Buf8(i.w_size),Pi.arraySet(l,t,r-i.w_size,i.w_size,0),t=l,r=i.w_size),s=e.avail_in,u=e.next_in,c=e.input,e.avail_in=r,e.next_in=0,e.input=t,Eu(i);i.lookahead>=ct;){n=i.strstart,o=i.lookahead-(ct-1);do i.ins_h=(i.ins_h<<i.hash_shift^i.window[n+ct-1])&i.hash_mask,i.prev[n&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=n,n++;while(--o);i.strstart=n,i.lookahead=ct-1,Eu(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=ct-1,i.match_available=0,e.next_in=u,e.input=c,e.avail_in=s,i.wrap=a,Mo}Do.deflateInit=aQ;Do.deflateInit2=n3;Do.deflateReset=i3;Do.deflateResetKeep=r3;Do.deflateSetHeader=oQ;Do.deflate=sQ;Do.deflateEnd=uQ;Do.deflateSetDictionary=cQ;Do.deflateInfo="pako deflate (from Nodeca project)"});var s3=T((Ble,a3)=>{"use strict";g();var Ov=30,fQ=12;a3.exports=function(t,r){var i,n,o,a,s,u,c,l,p,d,v,_,I,R,k,q,z,A,B,M,F,V,Y,E,h;i=t.state,n=t.next_in,E=t.input,o=n+(t.avail_in-5),a=t.next_out,h=t.output,s=a-(r-t.avail_out),u=a+(t.avail_out-257),c=i.dmax,l=i.wsize,p=i.whave,d=i.wnext,v=i.window,_=i.hold,I=i.bits,R=i.lencode,k=i.distcode,q=(1<<i.lenbits)-1,z=(1<<i.distbits)-1;e:do{I<15&&(_+=E[n++]<<I,I+=8,_+=E[n++]<<I,I+=8),A=R[_&q];t:for(;;){if(B=A>>>24,_>>>=B,I-=B,B=A>>>16&255,B===0)h[a++]=A&65535;else if(B&16){M=A&65535,B&=15,B&&(I<B&&(_+=E[n++]<<I,I+=8),M+=_&(1<<B)-1,_>>>=B,I-=B),I<15&&(_+=E[n++]<<I,I+=8,_+=E[n++]<<I,I+=8),A=k[_&z];r:for(;;){if(B=A>>>24,_>>>=B,I-=B,B=A>>>16&255,B&16){if(F=A&65535,B&=15,I<B&&(_+=E[n++]<<I,I+=8,I<B&&(_+=E[n++]<<I,I+=8)),F+=_&(1<<B)-1,F>c){t.msg="invalid distance too far back",i.mode=Ov;break e}if(_>>>=B,I-=B,B=a-s,F>B){if(B=F-B,B>p&&i.sane){t.msg="invalid distance too far back",i.mode=Ov;break e}if(V=0,Y=v,d===0){if(V+=l-B,B<M){M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}}else if(d<B){if(V+=l+d-B,B-=d,B<M){M-=B;do h[a++]=v[V++];while(--B);if(V=0,d<M){B=d,M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}}}else if(V+=d-B,B<M){M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}for(;M>2;)h[a++]=Y[V++],h[a++]=Y[V++],h[a++]=Y[V++],M-=3;M&&(h[a++]=Y[V++],M>1&&(h[a++]=Y[V++]))}else{V=a-F;do h[a++]=h[V++],h[a++]=h[V++],h[a++]=h[V++],M-=3;while(M>2);M&&(h[a++]=h[V++],M>1&&(h[a++]=h[V++]))}}else if((B&64)===0){A=k[(A&65535)+(_&(1<<B)-1)];continue r}else{t.msg="invalid distance code",i.mode=Ov;break e}break}}else if((B&64)===0){A=R[(A&65535)+(_&(1<<B)-1)];continue t}else if(B&32){i.mode=fQ;break e}else{t.msg="invalid literal/length code",i.mode=Ov;break e}break}}while(n<o&&a<u);M=I>>3,n-=M,I-=M<<3,_&=(1<<I)-1,t.next_in=n,t.next_out=a,t.avail_in=n<o?5+(o-n):5-(n-o),t.avail_out=a<u?257+(u-a):257-(a-u),i.hold=_,i.bits=I}});var p3=T((Cle,d3)=>{"use strict";g();var u3=Xh(),Bf=15,c3=852,f3=592,l3=0,eE=1,h3=2,lQ=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],hQ=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],dQ=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],pQ=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];d3.exports=function(t,r,i,n,o,a,s,u){var c=u.bits,l=0,p=0,d=0,v=0,_=0,I=0,R=0,k=0,q=0,z=0,A,B,M,F,V,Y=null,E=0,h,y=new u3.Buf16(Bf+1),w=new u3.Buf16(Bf+1),S=null,O=0,C,D,P;for(l=0;l<=Bf;l++)y[l]=0;for(p=0;p<n;p++)y[r[i+p]]++;for(_=c,v=Bf;v>=1&&y[v]===0;v--);if(_>v&&(_=v),v===0)return o[a++]=1<<24|64<<16|0,o[a++]=1<<24|64<<16|0,u.bits=1,0;for(d=1;d<v&&y[d]===0;d++);for(_<d&&(_=d),k=1,l=1;l<=Bf;l++)if(k<<=1,k-=y[l],k<0)return-1;if(k>0&&(t===l3||v!==1))return-1;for(w[1]=0,l=1;l<Bf;l++)w[l+1]=w[l]+y[l];for(p=0;p<n;p++)r[i+p]!==0&&(s[w[r[i+p]]++]=p);if(t===l3?(Y=S=s,h=19):t===eE?(Y=lQ,E-=257,S=hQ,O-=257,h=256):(Y=dQ,S=pQ,h=-1),z=0,p=0,l=d,V=a,I=_,R=0,M=-1,q=1<<_,F=q-1,t===eE&&q>c3||t===h3&&q>f3)return 1;for(;;){C=l-R,s[p]<h?(D=0,P=s[p]):s[p]>h?(D=S[O+s[p]],P=Y[E+s[p]]):(D=96,P=0),A=1<<l-R,B=1<<I,d=B;do B-=A,o[V+(z>>R)+B]=C<<24|D<<16|P|0;while(B!==0);for(A=1<<l-1;z&A;)A>>=1;if(A!==0?(z&=A-1,z+=A):z=0,p++,--y[l]===0){if(l===v)break;l=r[i+s[p]]}if(l>_&&(z&F)!==M){for(R===0&&(R=_),V+=d,I=l-R,k=1<<I;I+R<v&&(k-=y[I+R],!(k<=0));)I++,k<<=1;if(q+=1<<I,t===eE&&q>c3||t===h3&&q>f3)return 1;M=z&F,o[M]=_<<24|I<<16|V-a|0}}return z!==0&&(o[V+z]=l-R<<24|64<<16|0),u.bits=_,0}});var Z3=T(Gn=>{"use strict";g();var $i=Xh(),aE=YS(),Ho=ZS(),gQ=s3(),sd=p3(),mQ=0,U3=1,F3=2,g3=4,vQ=5,Iv=6,Ou=0,yQ=1,bQ=2,Sn=-2,j3=-3,sE=-4,_Q=-5,m3=8,z3=1,v3=2,y3=3,b3=4,_3=5,w3=6,S3=7,E3=8,x3=9,O3=10,Pv=11,Ta=12,tE=13,I3=14,rE=15,A3=16,T3=17,P3=18,R3=19,Av=20,Tv=21,k3=22,B3=23,N3=24,C3=25,L3=26,iE=27,M3=28,D3=29,Xt=30,uE=31,wQ=32,SQ=852,EQ=592,xQ=15,OQ=xQ;function H3(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function IQ(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new $i.Buf16(320),this.work=new $i.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function K3(e){var t;return!e||!e.state?Sn:(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=z3,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new $i.Buf32(SQ),t.distcode=t.distdyn=new $i.Buf32(EQ),t.sane=1,t.back=-1,Ou)}function V3(e){var t;return!e||!e.state?Sn:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,K3(e))}function G3(e,t){var r,i;return!e||!e.state||(i=e.state,t<0?(r=0,t=-t):(r=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?Sn:(i.window!==null&&i.wbits!==t&&(i.window=null),i.wrap=r,i.wbits=t,V3(e))}function W3(e,t){var r,i;return e?(i=new IQ,e.state=i,i.window=null,r=G3(e,t),r!==Ou&&(e.state=null),r):Sn}function AQ(e){return W3(e,OQ)}var q3=!0,nE,oE;function TQ(e){if(q3){var t;for(nE=new $i.Buf32(512),oE=new $i.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(sd(U3,e.lens,0,288,nE,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;sd(F3,e.lens,0,32,oE,0,e.work,{bits:5}),q3=!1}e.lencode=nE,e.lenbits=9,e.distcode=oE,e.distbits=5}function Y3(e,t,r,i){var n,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new $i.Buf8(o.wsize)),i>=o.wsize?($i.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(n=o.wsize-o.wnext,n>i&&(n=i),$i.arraySet(o.window,t,r-i,n,o.wnext),i-=n,i?($i.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=n,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=n))),0}function PQ(e,t){var r,i,n,o,a,s,u,c,l,p,d,v,_,I,R=0,k,q,z,A,B,M,F,V,Y=new $i.Buf8(4),E,h,y=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return Sn;r=e.state,r.mode===Ta&&(r.mode=tE),a=e.next_out,n=e.output,u=e.avail_out,o=e.next_in,i=e.input,s=e.avail_in,c=r.hold,l=r.bits,p=s,d=u,V=Ou;e:for(;;)switch(r.mode){case z3:if(r.wrap===0){r.mode=tE;break}for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.wrap&2&&c===35615){r.check=0,Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0),c=0,l=0,r.mode=v3;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){e.msg="incorrect header check",r.mode=Xt;break}if((c&15)!==m3){e.msg="unknown compression method",r.mode=Xt;break}if(c>>>=4,l-=4,F=(c&15)+8,r.wbits===0)r.wbits=F;else if(F>r.wbits){e.msg="invalid window size",r.mode=Xt;break}r.dmax=1<<F,e.adler=r.check=1,r.mode=c&512?O3:Ta,c=0,l=0;break;case v3:for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.flags=c,(r.flags&255)!==m3){e.msg="unknown compression method",r.mode=Xt;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=Xt;break}r.head&&(r.head.text=c>>8&1),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0,r.mode=y3;case y3:for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.head&&(r.head.time=c),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,Y[2]=c>>>16&255,Y[3]=c>>>24&255,r.check=Ho(r.check,Y,4,0)),c=0,l=0,r.mode=b3;case b3:for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.head&&(r.head.xflags=c&255,r.head.os=c>>8),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0,r.mode=_3;case _3:if(r.flags&1024){for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.length=c,r.head&&(r.head.extra_len=c),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0}else r.head&&(r.head.extra=null);r.mode=w3;case w3:if(r.flags&1024&&(v=r.length,v>s&&(v=s),v&&(r.head&&(F=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),$i.arraySet(r.head.extra,i,o,v,F)),r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,r.length-=v),r.length))break e;r.length=0,r.mode=S3;case S3:if(r.flags&2048){if(s===0)break e;v=0;do F=i[o+v++],r.head&&F&&r.length<65536&&(r.head.name+=String.fromCharCode(F));while(F&&v<s);if(r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,F)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=E3;case E3:if(r.flags&4096){if(s===0)break e;v=0;do F=i[o+v++],r.head&&F&&r.length<65536&&(r.head.comment+=String.fromCharCode(F));while(F&&v<s);if(r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,F)break e}else r.head&&(r.head.comment=null);r.mode=x3;case x3:if(r.flags&512){for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c!==(r.check&65535)){e.msg="header crc mismatch",r.mode=Xt;break}c=0,l=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Ta;break;case O3:for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}e.adler=r.check=H3(c),c=0,l=0,r.mode=Pv;case Pv:if(r.havedict===0)return e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,bQ;e.adler=r.check=1,r.mode=Ta;case Ta:if(t===vQ||t===Iv)break e;case tE:if(r.last){c>>>=l&7,l-=l&7,r.mode=iE;break}for(;l<3;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}switch(r.last=c&1,c>>>=1,l-=1,c&3){case 0:r.mode=I3;break;case 1:if(TQ(r),r.mode=Av,t===Iv){c>>>=2,l-=2;break e}break;case 2:r.mode=T3;break;case 3:e.msg="invalid block type",r.mode=Xt}c>>>=2,l-=2;break;case I3:for(c>>>=l&7,l-=l&7;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if((c&65535)!==(c>>>16^65535)){e.msg="invalid stored block lengths",r.mode=Xt;break}if(r.length=c&65535,c=0,l=0,r.mode=rE,t===Iv)break e;case rE:r.mode=A3;case A3:if(v=r.length,v){if(v>s&&(v=s),v>u&&(v=u),v===0)break e;$i.arraySet(n,i,o,v,a),s-=v,o+=v,u-=v,a+=v,r.length-=v;break}r.mode=Ta;break;case T3:for(;l<14;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.nlen=(c&31)+257,c>>>=5,l-=5,r.ndist=(c&31)+1,c>>>=5,l-=5,r.ncode=(c&15)+4,c>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=Xt;break}r.have=0,r.mode=P3;case P3:for(;r.have<r.ncode;){for(;l<3;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.lens[y[r.have++]]=c&7,c>>>=3,l-=3}for(;r.have<19;)r.lens[y[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,E={bits:r.lenbits},V=sd(mQ,r.lens,0,19,r.lencode,0,r.work,E),r.lenbits=E.bits,V){e.msg="invalid code lengths set",r.mode=Xt;break}r.have=0,r.mode=R3;case R3:for(;r.have<r.nlen+r.ndist;){for(;R=r.lencode[c&(1<<r.lenbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(z<16)c>>>=k,l-=k,r.lens[r.have++]=z;else{if(z===16){for(h=k+2;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c>>>=k,l-=k,r.have===0){e.msg="invalid bit length repeat",r.mode=Xt;break}F=r.lens[r.have-1],v=3+(c&3),c>>>=2,l-=2}else if(z===17){for(h=k+3;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=k,l-=k,F=0,v=3+(c&7),c>>>=3,l-=3}else{for(h=k+7;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=k,l-=k,F=0,v=11+(c&127),c>>>=7,l-=7}if(r.have+v>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=Xt;break}for(;v--;)r.lens[r.have++]=F}}if(r.mode===Xt)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=Xt;break}if(r.lenbits=9,E={bits:r.lenbits},V=sd(U3,r.lens,0,r.nlen,r.lencode,0,r.work,E),r.lenbits=E.bits,V){e.msg="invalid literal/lengths set",r.mode=Xt;break}if(r.distbits=6,r.distcode=r.distdyn,E={bits:r.distbits},V=sd(F3,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,E),r.distbits=E.bits,V){e.msg="invalid distances set",r.mode=Xt;break}if(r.mode=Av,t===Iv)break e;case Av:r.mode=Tv;case Tv:if(s>=6&&u>=258){e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,gQ(e,d),a=e.next_out,n=e.output,u=e.avail_out,o=e.next_in,i=e.input,s=e.avail_in,c=r.hold,l=r.bits,r.mode===Ta&&(r.back=-1);break}for(r.back=0;R=r.lencode[c&(1<<r.lenbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(q&&(q&240)===0){for(A=k,B=q,M=z;R=r.lencode[M+((c&(1<<A+B)-1)>>A)],k=R>>>24,q=R>>>16&255,z=R&65535,!(A+k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=A,l-=A,r.back+=A}if(c>>>=k,l-=k,r.back+=k,r.length=z,q===0){r.mode=L3;break}if(q&32){r.back=-1,r.mode=Ta;break}if(q&64){e.msg="invalid literal/length code",r.mode=Xt;break}r.extra=q&15,r.mode=k3;case k3:if(r.extra){for(h=r.extra;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.length+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=B3;case B3:for(;R=r.distcode[c&(1<<r.distbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if((q&240)===0){for(A=k,B=q,M=z;R=r.distcode[M+((c&(1<<A+B)-1)>>A)],k=R>>>24,q=R>>>16&255,z=R&65535,!(A+k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=A,l-=A,r.back+=A}if(c>>>=k,l-=k,r.back+=k,q&64){e.msg="invalid distance code",r.mode=Xt;break}r.offset=z,r.extra=q&15,r.mode=N3;case N3:if(r.extra){for(h=r.extra;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.offset+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=Xt;break}r.mode=C3;case C3:if(u===0)break e;if(v=d-u,r.offset>v){if(v=r.offset-v,v>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=Xt;break}v>r.wnext?(v-=r.wnext,_=r.wsize-v):_=r.wnext-v,v>r.length&&(v=r.length),I=r.window}else I=n,_=a-r.offset,v=r.length;v>u&&(v=u),u-=v,r.length-=v;do n[a++]=I[_++];while(--v);r.length===0&&(r.mode=Tv);break;case L3:if(u===0)break e;n[a++]=r.length,u--,r.mode=Tv;break;case iE:if(r.wrap){for(;l<32;){if(s===0)break e;s--,c|=i[o++]<<l,l+=8}if(d-=u,e.total_out+=d,r.total+=d,d&&(e.adler=r.check=r.flags?Ho(r.check,n,d,a-d):aE(r.check,n,d,a-d)),d=u,(r.flags?c:H3(c))!==r.check){e.msg="incorrect data check",r.mode=Xt;break}c=0,l=0}r.mode=M3;case M3:if(r.wrap&&r.flags){for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=Xt;break}c=0,l=0}r.mode=D3;case D3:V=yQ;break e;case Xt:V=j3;break e;case uE:return sE;case wQ:default:return Sn}return e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,(r.wsize||d!==e.avail_out&&r.mode<Xt&&(r.mode<iE||t!==g3))&&Y3(e,e.output,e.next_out,d-e.avail_out)?(r.mode=uE,sE):(p-=e.avail_in,d-=e.avail_out,e.total_in+=p,e.total_out+=d,r.total+=d,r.wrap&&d&&(e.adler=r.check=r.flags?Ho(r.check,n,d,e.next_out-d):aE(r.check,n,d,e.next_out-d)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Ta?128:0)+(r.mode===Av||r.mode===rE?256:0),(p===0&&d===0||t===g3)&&V===Ou&&(V=_Q),V)}function RQ(e){if(!e||!e.state)return Sn;var t=e.state;return t.window&&(t.window=null),e.state=null,Ou}function kQ(e,t){var r;return!e||!e.state||(r=e.state,(r.wrap&2)===0)?Sn:(r.head=t,t.done=!1,Ou)}function BQ(e,t){var r=t.length,i,n,o;return!e||!e.state||(i=e.state,i.wrap!==0&&i.mode!==Pv)?Sn:i.mode===Pv&&(n=1,n=aE(n,t,r,0),n!==i.check)?j3:(o=Y3(e,t,r,r),o?(i.mode=uE,sE):(i.havedict=1,Ou))}Gn.inflateReset=V3;Gn.inflateReset2=G3;Gn.inflateResetKeep=K3;Gn.inflateInit=AQ;Gn.inflateInit2=W3;Gn.inflate=PQ;Gn.inflateEnd=RQ;Gn.inflateGetHeader=kQ;Gn.inflateSetDictionary=BQ;Gn.inflateInfo="pako inflate (from Nodeca project)"});var X3=T((Hle,$3)=>{"use strict";g();$3.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var Q3=T(fe=>{"use strict";g();var Xi=fa(),NQ=E6(),ud=o3(),Iu=Z3(),J3=X3();for(cE in J3)fe[cE]=J3[cE];var cE;fe.NONE=0;fe.DEFLATE=1;fe.INFLATE=2;fe.GZIP=3;fe.GUNZIP=4;fe.DEFLATERAW=5;fe.INFLATERAW=6;fe.UNZIP=7;var CQ=31,LQ=139;function _i(e){if(typeof e!="number"||e<fe.DEFLATE||e>fe.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=e,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}_i.prototype.close=function(){if(this.write_in_progress){this.pending_close=!0;return}this.pending_close=!1,Xi(this.init_done,"close before init"),Xi(this.mode<=fe.UNZIP),this.mode===fe.DEFLATE||this.mode===fe.GZIP||this.mode===fe.DEFLATERAW?ud.deflateEnd(this.strm):(this.mode===fe.INFLATE||this.mode===fe.GUNZIP||this.mode===fe.INFLATERAW||this.mode===fe.UNZIP)&&Iu.inflateEnd(this.strm),this.mode=fe.NONE,this.dictionary=null};_i.prototype.write=function(e,t,r,i,n,o,a){return this._write(!0,e,t,r,i,n,o,a)};_i.prototype.writeSync=function(e,t,r,i,n,o,a){return this._write(!1,e,t,r,i,n,o,a)};_i.prototype._write=function(e,t,r,i,n,o,a,s){if(Xi.equal(arguments.length,8),Xi(this.init_done,"write before init"),Xi(this.mode!==fe.NONE,"already finalized"),Xi.equal(!1,this.write_in_progress,"write already in progress"),Xi.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,Xi.equal(!1,t===void 0,"must provide flush value"),this.write_in_progress=!0,t!==fe.Z_NO_FLUSH&&t!==fe.Z_PARTIAL_FLUSH&&t!==fe.Z_SYNC_FLUSH&&t!==fe.Z_FULL_FLUSH&&t!==fe.Z_FINISH&&t!==fe.Z_BLOCK)throw new Error("Invalid flush value");if(r==null&&(r=f.Buffer.alloc(0),n=0,i=0),this.strm.avail_in=n,this.strm.input=r,this.strm.next_in=i,this.strm.avail_out=s,this.strm.output=o,this.strm.next_out=a,this.flush=t,!e)return this._process(),this._checkError()?this._afterSync():void 0;var u=this;return b.default.nextTick(function(){u._process(),u._after()}),this};_i.prototype._afterSync=function(){var e=this.strm.avail_out,t=this.strm.avail_in;return this.write_in_progress=!1,[t,e]};_i.prototype._process=function(){var e=null;switch(this.mode){case fe.DEFLATE:case fe.GZIP:case fe.DEFLATERAW:this.err=ud.deflate(this.strm,this.flush);break;case fe.UNZIP:switch(this.strm.avail_in>0&&(e=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(e===null)break;if(this.strm.input[e]===CQ){if(this.gzip_id_bytes_read=1,e++,this.strm.avail_in===1)break}else{this.mode=fe.INFLATE;break}case 1:if(e===null)break;this.strm.input[e]===LQ?(this.gzip_id_bytes_read=2,this.mode=fe.GUNZIP):this.mode=fe.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case fe.INFLATE:case fe.GUNZIP:case fe.INFLATERAW:for(this.err=Iu.inflate(this.strm,this.flush),this.err===fe.Z_NEED_DICT&&this.dictionary&&(this.err=Iu.inflateSetDictionary(this.strm,this.dictionary),this.err===fe.Z_OK?this.err=Iu.inflate(this.strm,this.flush):this.err===fe.Z_DATA_ERROR&&(this.err=fe.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===fe.GUNZIP&&this.err===fe.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=Iu.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}};_i.prototype._checkError=function(){switch(this.err){case fe.Z_OK:case fe.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===fe.Z_FINISH)return this._error("unexpected end of file"),!1;break;case fe.Z_STREAM_END:break;case fe.Z_NEED_DICT:return this.dictionary==null?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0};_i.prototype._after=function(){if(this._checkError()){var e=this.strm.avail_out,t=this.strm.avail_in;this.write_in_progress=!1,this.callback(t,e),this.pending_close&&this.close()}};_i.prototype._error=function(e){this.strm.msg&&(e=this.strm.msg),this.onerror(e,this.err),this.write_in_progress=!1,this.pending_close&&this.close()};_i.prototype.init=function(e,t,r,i,n){Xi(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),Xi(e>=8&&e<=15,"invalid windowBits"),Xi(t>=-1&&t<=9,"invalid compression level"),Xi(r>=1&&r<=9,"invalid memlevel"),Xi(i===fe.Z_FILTERED||i===fe.Z_HUFFMAN_ONLY||i===fe.Z_RLE||i===fe.Z_FIXED||i===fe.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(t,e,r,i,n),this._setDictionary()};_i.prototype.params=function(){throw new Error("deflateParams Not supported")};_i.prototype.reset=function(){this._reset(),this._setDictionary()};_i.prototype._init=function(e,t,r,i,n){switch(this.level=e,this.windowBits=t,this.memLevel=r,this.strategy=i,this.flush=fe.Z_NO_FLUSH,this.err=fe.Z_OK,(this.mode===fe.GZIP||this.mode===fe.GUNZIP)&&(this.windowBits+=16),this.mode===fe.UNZIP&&(this.windowBits+=32),(this.mode===fe.DEFLATERAW||this.mode===fe.INFLATERAW)&&(this.windowBits=-1*this.windowBits),this.strm=new NQ,this.mode){case fe.DEFLATE:case fe.GZIP:case fe.DEFLATERAW:this.err=ud.deflateInit2(this.strm,this.level,fe.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case fe.INFLATE:case fe.GUNZIP:case fe.INFLATERAW:case fe.UNZIP:this.err=Iu.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==fe.Z_OK&&this._error("Init error"),this.dictionary=n,this.write_in_progress=!1,this.init_done=!0};_i.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=fe.Z_OK,this.mode){case fe.DEFLATE:case fe.DEFLATERAW:this.err=ud.deflateSetDictionary(this.strm,this.dictionary);break;default:break}this.err!==fe.Z_OK&&this._error("Failed to set dictionary")}};_i.prototype._reset=function(){switch(this.err=fe.Z_OK,this.mode){case fe.DEFLATE:case fe.DEFLATERAW:case fe.GZIP:this.err=ud.deflateReset(this.strm);break;case fe.INFLATE:case fe.INFLATERAW:case fe.GUNZIP:this.err=Iu.inflateReset(this.strm);break;default:break}this.err!==fe.Z_OK&&this._error("Failed to reset stream")};fe.Zlib=_i});var hE=T(Se=>{"use strict";g();var qo=rr().Buffer,iH=gp().Transform,De=Q3(),Is=nn(),cd=fa().ok,lE=rr().kMaxLength,nH="Cannot create final Buffer. It would be larger than 0x"+lE.toString(16)+" bytes";De.Z_MIN_WINDOWBITS=8;De.Z_MAX_WINDOWBITS=15;De.Z_DEFAULT_WINDOWBITS=15;De.Z_MIN_CHUNK=64;De.Z_MAX_CHUNK=1/0;De.Z_DEFAULT_CHUNK=16*1024;De.Z_MIN_MEMLEVEL=1;De.Z_MAX_MEMLEVEL=9;De.Z_DEFAULT_MEMLEVEL=8;De.Z_MIN_LEVEL=-1;De.Z_MAX_LEVEL=9;De.Z_DEFAULT_LEVEL=De.Z_DEFAULT_COMPRESSION;var eH=Object.keys(De);for(Rv=0;Rv<eH.length;Rv++)kv=eH[Rv],kv.match(/^Z/)&&Object.defineProperty(Se,kv,{enumerable:!0,value:De[kv],writable:!1});var kv,Rv,Nv={Z_OK:De.Z_OK,Z_STREAM_END:De.Z_STREAM_END,Z_NEED_DICT:De.Z_NEED_DICT,Z_ERRNO:De.Z_ERRNO,Z_STREAM_ERROR:De.Z_STREAM_ERROR,Z_DATA_ERROR:De.Z_DATA_ERROR,Z_MEM_ERROR:De.Z_MEM_ERROR,Z_BUF_ERROR:De.Z_BUF_ERROR,Z_VERSION_ERROR:De.Z_VERSION_ERROR},tH=Object.keys(Nv);for(Bv=0;Bv<tH.length;Bv++)fE=tH[Bv],Nv[Nv[fE]]=fE;var fE,Bv;Object.defineProperty(Se,"codes",{enumerable:!0,value:Object.freeze(Nv),writable:!1});Se.Deflate=Au;Se.Inflate=Tu;Se.Gzip=Pu;Se.Gunzip=Ru;Se.DeflateRaw=ku;Se.InflateRaw=Bu;Se.Unzip=Nu;Se.createDeflate=function(e){return new Au(e)};Se.createInflate=function(e){return new Tu(e)};Se.createDeflateRaw=function(e){return new ku(e)};Se.createInflateRaw=function(e){return new Bu(e)};Se.createGzip=function(e){return new Pu(e)};Se.createGunzip=function(e){return new Ru(e)};Se.createUnzip=function(e){return new Nu(e)};Se.deflate=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Au(t),e,r)};Se.deflateSync=function(e,t){return Lu(new Au(t),e)};Se.gzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Pu(t),e,r)};Se.gzipSync=function(e,t){return Lu(new Pu(t),e)};Se.deflateRaw=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new ku(t),e,r)};Se.deflateRawSync=function(e,t){return Lu(new ku(t),e)};Se.unzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Nu(t),e,r)};Se.unzipSync=function(e,t){return Lu(new Nu(t),e)};Se.inflate=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Tu(t),e,r)};Se.inflateSync=function(e,t){return Lu(new Tu(t),e)};Se.gunzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Ru(t),e,r)};Se.gunzipSync=function(e,t){return Lu(new Ru(t),e)};Se.inflateRaw=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Bu(t),e,r)};Se.inflateRawSync=function(e,t){return Lu(new Bu(t),e)};function Cu(e,t,r){var i=[],n=0;e.on("error",a),e.on("end",s),e.end(t),o();function o(){for(var u;(u=e.read())!==null;)i.push(u),n+=u.length;e.once("readable",o)}function a(u){e.removeListener("end",s),e.removeListener("readable",o),r(u)}function s(){var u,c=null;n>=lE?c=new RangeError(nH):u=qo.concat(i,n),i=[],e.close(),r(c,u)}}function Lu(e,t){if(typeof t=="string"&&(t=qo.from(t)),!qo.isBuffer(t))throw new TypeError("Not a string or buffer");var r=e._finishFlushFlag;return e._processChunk(t,r)}function Au(e){if(!(this instanceof Au))return new Au(e);cr.call(this,e,De.DEFLATE)}function Tu(e){if(!(this instanceof Tu))return new Tu(e);cr.call(this,e,De.INFLATE)}function Pu(e){if(!(this instanceof Pu))return new Pu(e);cr.call(this,e,De.GZIP)}function Ru(e){if(!(this instanceof Ru))return new Ru(e);cr.call(this,e,De.GUNZIP)}function ku(e){if(!(this instanceof ku))return new ku(e);cr.call(this,e,De.DEFLATERAW)}function Bu(e){if(!(this instanceof Bu))return new Bu(e);cr.call(this,e,De.INFLATERAW)}function Nu(e){if(!(this instanceof Nu))return new Nu(e);cr.call(this,e,De.UNZIP)}function rH(e){return e===De.Z_NO_FLUSH||e===De.Z_PARTIAL_FLUSH||e===De.Z_SYNC_FLUSH||e===De.Z_FULL_FLUSH||e===De.Z_FINISH||e===De.Z_BLOCK}function cr(e,t){var r=this;if(this._opts=e=e||{},this._chunkSize=e.chunkSize||Se.Z_DEFAULT_CHUNK,iH.call(this,e),e.flush&&!rH(e.flush))throw new Error("Invalid flush flag: "+e.flush);if(e.finishFlush&&!rH(e.finishFlush))throw new Error("Invalid flush flag: "+e.finishFlush);if(this._flushFlag=e.flush||De.Z_NO_FLUSH,this._finishFlushFlag=typeof e.finishFlush<"u"?e.finishFlush:De.Z_FINISH,e.chunkSize&&(e.chunkSize<Se.Z_MIN_CHUNK||e.chunkSize>Se.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBits<Se.Z_MIN_WINDOWBITS||e.windowBits>Se.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.level<Se.Z_MIN_LEVEL||e.level>Se.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevel<Se.Z_MIN_MEMLEVEL||e.memLevel>Se.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=Se.Z_FILTERED&&e.strategy!=Se.Z_HUFFMAN_ONLY&&e.strategy!=Se.Z_RLE&&e.strategy!=Se.Z_FIXED&&e.strategy!=Se.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!qo.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new De.Zlib(t);var i=this;this._hadError=!1,this._handle.onerror=function(a,s){Cv(i),i._hadError=!0;var u=new Error(a);u.errno=s,u.code=Se.codes[s],i.emit("error",u)};var n=Se.Z_DEFAULT_COMPRESSION;typeof e.level=="number"&&(n=e.level);var o=Se.Z_DEFAULT_STRATEGY;typeof e.strategy=="number"&&(o=e.strategy),this._handle.init(e.windowBits||Se.Z_DEFAULT_WINDOWBITS,n,e.memLevel||Se.Z_DEFAULT_MEMLEVEL,o,e.dictionary),this._buffer=qo.allocUnsafe(this._chunkSize),this._offset=0,this._level=n,this._strategy=o,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!r._handle},configurable:!0,enumerable:!0})}Is.inherits(cr,iH);cr.prototype.params=function(e,t,r){if(e<Se.Z_MIN_LEVEL||e>Se.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(t!=Se.Z_FILTERED&&t!=Se.Z_HUFFMAN_ONLY&&t!=Se.Z_RLE&&t!=Se.Z_FIXED&&t!=Se.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+t);if(this._level!==e||this._strategy!==t){var i=this;this.flush(De.Z_SYNC_FLUSH,function(){cd(i._handle,"zlib binding closed"),i._handle.params(e,t),i._hadError||(i._level=e,i._strategy=t,r&&r())})}else b.default.nextTick(r)};cr.prototype.reset=function(){return cd(this._handle,"zlib binding closed"),this._handle.reset()};cr.prototype._flush=function(e){this._transform(qo.alloc(0),"",e)};cr.prototype.flush=function(e,t){var r=this,i=this._writableState;(typeof e=="function"||e===void 0&&!t)&&(t=e,e=De.Z_FULL_FLUSH),i.ended?t&&b.default.nextTick(t):i.ending?t&&this.once("end",t):i.needDrain?t&&this.once("drain",function(){return r.flush(e,t)}):(this._flushFlag=e,this.write(qo.alloc(0),"",t))};cr.prototype.close=function(e){Cv(this,e),b.default.nextTick(MQ,this)};function Cv(e,t){t&&b.default.nextTick(t),e._handle&&(e._handle.close(),e._handle=null)}function MQ(e){e.emit("close")}cr.prototype._transform=function(e,t,r){var i,n=this._writableState,o=n.ending||n.ended,a=o&&(!e||n.length===e.length);if(e!==null&&!qo.isBuffer(e))return r(new Error("invalid input"));if(!this._handle)return r(new Error("zlib binding closed"));a?i=this._finishFlushFlag:(i=this._flushFlag,e.length>=n.length&&(this._flushFlag=this._opts.flush||De.Z_NO_FLUSH)),this._processChunk(e,i,r)};cr.prototype._processChunk=function(e,t,r){var i=e&&e.length,n=this._chunkSize-this._offset,o=0,a=this,s=typeof r=="function";if(!s){var u=[],c=0,l;this.on("error",function(I){l=I}),cd(this._handle,"zlib binding closed");do var p=this._handle.writeSync(t,e,o,i,this._buffer,this._offset,n);while(!this._hadError&&_(p[0],p[1]));if(this._hadError)throw l;if(c>=lE)throw Cv(this),new RangeError(nH);var d=qo.concat(u,c);return Cv(this),d}cd(this._handle,"zlib binding closed");var v=this._handle.write(t,e,o,i,this._buffer,this._offset,n);v.buffer=e,v.callback=_;function _(I,R){if(this&&(this.buffer=null,this.callback=null),!a._hadError){var k=n-R;if(cd(k>=0,"have should not go down"),k>0){var q=a._buffer.slice(a._offset,a._offset+k);a._offset+=k,s?a.push(q):(u.push(q),c+=q.length)}if((R===0||a._offset>=a._chunkSize)&&(n=a._chunkSize,a._offset=0,a._buffer=qo.allocUnsafe(a._chunkSize)),R===0){if(o+=i-I,i=I,!s)return!0;var z=a._handle.write(t,e,o,i,a._buffer,a._offset,a._chunkSize);z.callback=_,z.buffer=e;return}if(!s)return!1;r()}}};Is.inherits(Au,cr);Is.inherits(Tu,cr);Is.inherits(Pu,cr);Is.inherits(Ru,cr);Is.inherits(ku,cr);Is.inherits(Bu,cr);Is.inherits(Nu,cr)});var cH=T((Vle,uH)=>{"use strict";g();var dE=DS(),Kle=nr(),oH=hE(),DQ=8*1024*1024;function aH(e,t){var r=t&&t.maxDecompressedBytes||DQ;return oH.gunzipSync(f.Buffer.from(e,"base64"),{maxOutputLength:r})}async function sH(e,t){if(!t.expectedIssuerDid)throw new Error("expectedIssuerDid is required to verify a status list (issuer pinning); refusing to read revocation state from an unpinned/unverified JWT");var r=t.didResolver;if(!r){var i=t.issuerJwks||(t.issuerPublicJwk?{keys:[t.issuerPublicJwk]}:null);if(!i)throw new Error("Provide params.didResolver, params.issuerJwks, or params.issuerPublicJwk to verify the status list signature");r=async function(){return{jwks:i}}}var n=await dE.verifyVcJwt(e,{didResolver:r,expectedIssuerDid:t.expectedIssuerDid,allowedAlgs:t.allowedAlgs,allowLegacyDER:t.allowLegacyDER,clockToleranceSec:t.clockToleranceSec});if(!n.valid)throw new Error("Status list signature verification failed: "+(n.error||"invalid signature"));return n.payload}async function HQ(e){if(!e.issuerDid||!e.privateJwk)throw new Error("issuerDid and privateJwk are required");var t=e.listId||e.issuerDid+"/status/"+Date.now(),r=e.listSize||1e5,i=Math.ceil(r/8),n=f.Buffer.alloc(i,0),o=hE(),a=o.gzipSync(n),s=a.toString("base64"),u={"@context":["https://www.w3.org/2018/credentials/v1","https://w3id.org/vc/status-list/2021/v1"],type:["VerifiableCredential","StatusList2021Credential"],issuer:e.issuerDid,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,type:"StatusList2021",statusPurpose:"revocation",encodedList:s}},c=await dE.issueVcJwt({issuerDid:e.issuerDid,subjectId:t,types:["VerifiableCredential","StatusList2021Credential"],credentialSubject:u.credentialSubject,privateJwk:e.privateJwk,alg:e.privateJwk.alg||"ES256"});return{listVcJwt:c.jwt,listId:t}}async function qQ(e){if(!e.listVcJwt||e.index===void 0||!e.status||!e.privateJwk)throw new Error("listVcJwt, index, status, and privateJwk are required");if(e.status==="suspended")throw new Error("status 'suspended' is not supported by this list: its statusPurpose is 'revocation', and suspension would be written to the same bit and read back as 'revoked'. Maintain a separate list for suspension until statusPurpose is configurable.");var t=await sH(e.listVcJwt,e),r=t.vc.credentialSubject.encodedList,i=aH(r,e),n=Math.floor(e.index/8),o=e.index%8;if(n>=i.length)throw new Error("Index out of range");var a=e.status==="revoked"?1:0;a===1?i[n]|=1<<o:i[n]&=~(1<<o);var s=oH.gzipSync(i),u=s.toString("base64"),c={id:t.vc.credentialSubject.id,type:"StatusList2021",statusPurpose:"revocation",encodedList:u},l=await dE.issueVcJwt({issuerDid:t.iss,subjectId:t.vc.credentialSubject.id,types:["VerifiableCredential","StatusList2021Credential"],credentialSubject:c,privateJwk:e.privateJwk,alg:e.privateJwk.alg||"ES256"});return{listVcJwt:l.jwt}}async function UQ(e){if(!e.listVcJwt||e.index===void 0)throw new Error("listVcJwt and index are required");var t=await sH(e.listVcJwt,e),r=t.vc.credentialSubject.encodedList,i=aH(r,e),n=Math.floor(e.index/8),o=e.index%8;if(n>=i.length)throw new Error("Index out of range");var a=i[n]>>o&1;return a===1?"revoked":"valid"}uH.exports={createStatusList:HQ,updateStatusList:qQ,getCredentialStatusEntry:UQ}});var hH=T((Wle,lH)=>{"use strict";g();var FQ=nr();function fH(e){var t;if(typeof e=="string")t=f.Buffer.from(e,"utf8");else if(f.Buffer.isBuffer(e))t=e;else if(e instanceof Uint8Array)t=f.Buffer.from(e);else throw new Error("Data must be string, Buffer, or Uint8Array");return FQ.createHash("sha256").update(t).digest("hex")}function jQ(e){if(!e.kind||!e.hash||!e.issuerDid)throw new Error("kind, hash, and issuerDid are required");var t=["VC_ANCHOR_SHA256","STATUSLIST_SHA256","PRESENTATION_SHA256"];if(t.indexOf(e.kind)===-1)throw new Error("Invalid kind. Must be one of: "+t.join(", "));if(!/^[a-fA-F0-9]{64}$/.test(e.hash))throw new Error("Invalid hash format. Must be 64 hex characters");var r={protocol:"SmartLedger",version:"1.0",type:e.kind,hash:e.hash,issuer:e.issuerDid,timestamp:e.issuedAt||new Date().toISOString()};return{json:JSON.stringify(r)}}function zQ(e,t){var r=fH(e);return r===t}function KQ(e){try{var t=JSON.parse(e);if(t.protocol!=="SmartLedger")return{valid:!1,error:"Invalid protocol"};var r=["VC_ANCHOR_SHA256","STATUSLIST_SHA256","PRESENTATION_SHA256"];return r.indexOf(t.type)===-1?{valid:!1,error:"Invalid anchor type"}:/^[a-fA-F0-9]{64}$/.test(t.hash)?{valid:!0,protocol:t.protocol,version:t.version,type:t.type,hash:t.hash,issuer:t.issuer,timestamp:t.timestamp}:{valid:!1,error:"Invalid hash format"}}catch(i){return{valid:!1,error:"Failed to parse anchor payload: "+i.message}}}lH.exports={sha256Hex:fH,buildAnchorPayload:jQ,verifyAnchorHash:zQ,parseAnchorPayload:KQ}});var fd=T((Zle,pH)=>{"use strict";g();var dH=Ki();function VQ(){var e=dH.getRandomBuffer(16);e[6]=e[6]&15|64,e[8]=e[8]&63|128;var t=e.toString("hex");return[t.substring(0,8),t.substring(8,12),t.substring(12,16),t.substring(16,20),t.substring(20,32)].join("-")}function GQ(e){return dH.getRandomBuffer(Math.ceil(e/2)).toString("hex").substring(0,e)}pH.exports={uuid4:VQ,randomHex:GQ}});var bH=T((Jle,yH)=>{"use strict";g();var ld=sr(),pE=Le(),gE=dn(),gH=gt(),mE=ei(),Mr=Ie(),Xle=at(),WQ=fd();function mH(e,t){if(t=t||{},t.issuerPublicKey)return t.issuerPublicKey instanceof ld?t.issuerPublicKey:ld.fromString(t.issuerPublicKey);var r=e&&e.issuer;if(typeof r!="string")return null;try{var i=r.split("#")[0].split(":")[2];return i?ld.fromString(i):null}catch{return null}}var Nf={PROPERTY_TITLE:"PropertyTitle",VEHICLE_TITLE:"VehicleTitle",INTELLECTUAL_PROPERTY:"IntellectualProperty",MUSIC_LICENSE:"MusicLicense",SOFTWARE_LICENSE:"SoftwareLicense",FINANCIAL_INSTRUMENT:"FinancialInstrument",PROMISSORY_NOTE:"PromissoryNote",BOND:"Bond",EQUITY_SHARE:"EquityShare",PROFESSIONAL_LICENSE:"ProfessionalLicense",REGULATORY_PERMIT:"RegulatoryPermit",ACCESS_RIGHT:"AccessRight",VOTING_RIGHT:"VotingRight",ROYALTY_RIGHT:"RoyaltyRight",USAGE_RIGHT:"UsageRight"},vH={create:function(e,t,r,i,n,o){o=o||{},Mr.checkArgument(typeof e=="string","Right type must be string"),Mr.checkArgument(typeof t=="string","Issuer DID must be string"),Mr.checkArgument(typeof r=="string","Subject DID must be string"),Mr.checkArgument(i&&typeof i=="object","Claim must be object");var a=Object.values(Nf);Mr.checkArgument(a.includes(e),"Invalid right type: "+e);var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalRightToken",e],issuer:t,issuanceDate:new Date().toISOString(),credentialSubject:{id:r,rightType:e,claim:i,jurisdiction:o.jurisdiction||"US",purpose:o.purpose||"legal_right",validFrom:o.validFrom||new Date().toISOString(),validUntil:o.validUntil||null,transferable:o.transferable!==!1,revocable:o.revocable!==!1}};return o.metadata&&(s.credentialSubject.metadata=o.metadata),s},prepareRightToken:function(e,t,r,i,n,o){o=o||{},Mr.checkArgument(typeof e=="string","Right type must be string"),Mr.checkArgument(typeof t=="string","Issuer DID must be string"),Mr.checkArgument(typeof r=="string","Subject DID must be string"),Mr.checkArgument(i&&typeof i=="object","Claim must be object"),Mr.checkArgument(n instanceof mE,"Invalid issuer private key");var a=Object.values(Nf);Mr.checkArgument(a.includes(e),"Invalid right type: "+e);try{var s=this.create(e,t,r,i,n,o),u=this._signToken(s,n);return{success:!0,rightToken:u,tokenHash:u.tokenHash,metadata:{type:e,issuer:t,subject:r,transferable:s.credentialSubject.transferable,revocable:s.credentialSubject.revocable,jurisdiction:s.credentialSubject.jurisdiction},externalOperations:{storeToken:{endpoint:"POST /rights/tokens",data:{token:u,metadata:{type:e,issuer:t,subject:r,transferable:s.credentialSubject.transferable,revocable:s.credentialSubject.revocable,jurisdiction:s.credentialSubject.jurisdiction}}},indexToken:{endpoint:"POST /rights/index",data:{tokenId:u.id,tokenHash:u.tokenHash,type:e,issuer:t,subject:r,issuedAt:u.issuanceDate}},notifyParties:{endpoint:"POST /notifications/right-issued",data:{tokenId:u.id,issuer:t,subject:r,rightType:e}}}}}catch(c){return{success:!1,error:c.message}}},prepareRightTokenVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r,t),this._validateTokenTemporal(e,r,i),this._validateRightType(e,r),t.requireJurisdiction&&this._validateJurisdiction(e,t.allowedJurisdictions,r);var n={valid:r.length===0,errors:r,warnings:i,issuerDID:e.issuer,subjectDID:e.credentialSubject?e.credentialSubject.id:null,rightType:e.credentialSubject?e.credentialSubject.rightType:null,transferable:e.credentialSubject?e.credentialSubject.transferable:null,revocable:e.credentialSubject?e.credentialSubject.revocable:null,verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /rights/verification-record",data:{tokenId:e.id,result:n.valid,errors:r,warnings:i,verifiedAt:n.verifiedAt}},auditVerification:{endpoint:"POST /audit/right-verification",data:{tokenId:e.id,rightType:n.rightType,issuer:n.issuerDID,subject:n.subjectDID,result:n.valid,verifiedAt:n.verifiedAt}},updateTokenStatus:n.valid?{endpoint:"PUT /rights/tokens/"+e.id+"/status",data:{status:"VERIFIED",verifiedAt:n.verifiedAt}}:null}}}catch(o){return{success:!1,error:"Verification preparation failed: "+o.message}}},prepareRightTokenTransfer:function(e,t,r,i){i=i||{},Mr.checkArgument(e&&typeof e=="object","Invalid token"),Mr.checkArgument(typeof t=="string","New owner DID must be string"),Mr.checkArgument(r instanceof mE,"Invalid current owner key");try{var n=this.prepareRightTokenVerification(e,{});if(!n.success||!n.verification.valid)return{success:!1,error:"Cannot transfer invalid token: "+n.verification.errors.join(", ")};if(!e.credentialSubject.transferable)return{success:!1,error:"Token is not transferable"};var o=e.credentialSubject&&e.credentialSubject.id,a=mH({issuer:o},{issuerPublicKey:i.currentOwnerPublicKey});if(!a)return{success:!1,error:"Cannot resolve current owner public key from token.credentialSubject.id; pass options.currentOwnerPublicKey"};if(r.toPublicKey().toString()!==a.toString())return{success:!1,error:"Unauthorized transfer: signing key does not match the current owner"};var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalRightTransfer"],issuer:e.credentialSubject.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,originalToken:e.id,transferFrom:e.credentialSubject.id,transferTo:t,transferDate:new Date().toISOString(),transferReason:i.reason||"ownership_transfer",consideration:i.consideration||null}},u=this._signToken(s,r),c=JSON.parse(JSON.stringify(e));c.id="urn:uuid:"+this._generateUUID(),c.issuanceDate=new Date().toISOString(),c.credentialSubject.id=t,c.credentialSubject.transferHistory=c.credentialSubject.transferHistory||[],c.credentialSubject.transferHistory.push({transferId:u.id,transferDate:u.issuanceDate,from:e.credentialSubject.id,to:t}),delete c.proof;var l=this._signToken(c,r);return{success:!0,newToken:l,transferProof:u,transferId:u.id,externalOperations:{recordTransfer:{endpoint:"POST /rights/transfers",data:{originalTokenId:e.id,newTokenId:l.id,transferProof:u,fromOwner:e.credentialSubject.id,toOwner:t,transferDate:u.issuanceDate}},updateOwnership:{endpoint:"PUT /rights/tokens/"+e.id+"/ownership",data:{newOwner:t,transferId:u.id,transferDate:u.issuanceDate,previousOwner:e.credentialSubject.id}},notifyParties:{endpoint:"POST /notifications/right-transferred",data:{originalTokenId:e.id,newTokenId:l.id,fromOwner:e.credentialSubject.id,toOwner:t,rightType:e.credentialSubject.rightType}},auditTransfer:{endpoint:"POST /audit/right-transfer",data:{originalTokenId:e.id,newTokenId:l.id,transferId:u.id,fromOwner:e.credentialSubject.id,toOwner:t,transferredAt:u.issuanceDate}}}}}catch(p){return{success:!1,error:p.message}}},prepareObligationToken:function(e,t,r,i){Mr.checkArgument(e&&typeof e=="object","Invalid right token"),Mr.checkArgument(typeof t=="string","Obligor DID must be string"),Mr.checkArgument(r&&typeof r=="object","Obligation must be object"),Mr.checkArgument(i instanceof mE,"Invalid issuer key");try{var n={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalObligationToken"],issuer:e.issuer,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,obligationType:"correlative_obligation",correlativeRight:e.id,rightHolder:e.credentialSubject.id,obligation:r,jurisdiction:e.credentialSubject.jurisdiction,purpose:e.credentialSubject.purpose}},o=this._signToken(n,i);return{success:!0,obligationToken:o,correlativeRight:e.id,externalOperations:{storeObligation:{endpoint:"POST /obligations/tokens",data:{obligationToken:o,correlativeRightId:e.id,obligor:t,rightHolder:e.credentialSubject.id}},linkToRight:{endpoint:"POST /rights/tokens/"+e.id+"/obligations",data:{obligationId:o.id,obligor:t,obligationType:"correlative_obligation"}},notifyObligor:{endpoint:"POST /notifications/obligation-created",data:{obligationId:o.id,obligor:t,rightHolder:e.credentialSubject.id,correlativeRight:e.id}}}}}catch(a){return{success:!1,error:a.message}}},prepareRightTypeValidation:function(e){Mr.checkArgument(typeof e=="string","Right type must be string");var t=Object.values(Nf),r=t.includes(e);return{success:!0,validation:{type:e,valid:r,availableTypes:t,category:this._categorizeRightType(e),description:this._getRightTypeDescription(e)},externalOperations:{validateType:{endpoint:"POST /rights/validate-type",data:{type:e,valid:r}}}}},_categorizeRightType:function(e){var t={PropertyTitle:"PROPERTY_RIGHT",VehicleTitle:"PROPERTY_RIGHT",IntellectualProperty:"IP_RIGHT",MusicLicense:"IP_RIGHT",SoftwareLicense:"IP_RIGHT",FinancialInstrument:"FINANCIAL_RIGHT",PromissoryNote:"FINANCIAL_RIGHT",Bond:"FINANCIAL_RIGHT",EquityShare:"FINANCIAL_RIGHT",ProfessionalLicense:"LICENSE_RIGHT",RegulatoryPermit:"LICENSE_RIGHT",AccessRight:"ACCESS_RIGHT",VotingRight:"GOVERNANCE_RIGHT",RoyaltyRight:"IP_RIGHT",UsageRight:"ACCESS_RIGHT"};return t[e]||"UNKNOWN"},_getRightTypeDescription:function(e){var t={PropertyTitle:"Legal ownership of real estate property",VehicleTitle:"Legal ownership of motor vehicle",IntellectualProperty:"Rights to intellectual property assets",MusicLicense:"License for music performance and usage",SoftwareLicense:"License for software usage and distribution",FinancialInstrument:"Rights related to financial instruments",PromissoryNote:"Promise to pay a specified amount",Bond:"Debt security representing loan",EquityShare:"Ownership stake in company",ProfessionalLicense:"License for professional practice",RegulatoryPermit:"Permit for regulated activities",AccessRight:"Right to access resources or locations",VotingRight:"Right to participate in governance",RoyaltyRight:"Right to receive royalty payments",UsageRight:"Right to use specific assets or services"};return t[e]||"Unknown right type"},getRightTypes:function(){return Nf},verifyToken:function(e,t){var r=[];try{if(Mr.checkArgument(e&&typeof e=="object","Invalid token"),!e.proof||!e.proof.jws)return r.push("Missing signature proof"),{valid:!1,errors:r};var i=t instanceof ld?t:ld.fromString(t),n=this._canonicalizeToken(e),o=pE.sha256(f.Buffer.from(n));if(e.tokenHash&&e.tokenHash!==o.toString("hex"))return r.push("Token hash mismatch"),{valid:!1,errors:r};var a=e.proof.jws.split(".");if(a.length!==3||!a[2])return r.push("Malformed JWS"),{valid:!1,errors:r};var s=gH.fromDER(f.Buffer.from(a[2],"base64url")),u=new gE;return u.hashbuf=o,u.sig=s,u.pubkey=i,u.verify()||r.push("Signature verification failed"),{valid:r.length===0,errors:r,tokenHash:o.toString("hex"),verifiedAt:new Date().toISOString()}}catch(c){return r.push(c.message),{valid:!1,errors:r}}},_signToken:function(e,t){var r=this._canonicalizeToken(e),i=pE.sha256(f.Buffer.from(r)),n=new gE;n.hashbuf=i,n.privkey=t,n.pubkey=t.toPublicKey(),n.sign();var o=n.sig,a={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(i,o)},s=JSON.parse(JSON.stringify(e));return s.proof=a,s.tokenHash=i.toString("hex"),s},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=t.toDER().toString("base64url");return i+".."+n},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,JSON.stringify(this._sortObjectKeys(t))},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_validateTokenStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.id||t.push("Missing id"),(!e.type||!Array.isArray(e.type))&&t.push("Missing or invalid type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject"),e.proof||t.push("Missing proof")},_verifyTokenSignature:function(e,t,r){try{if(!e.proof||!e.proof.jws){t.push("Missing signature proof");return}var i=this._canonicalizeToken(e),n=pE.sha256(f.Buffer.from(i));if(e.tokenHash&&e.tokenHash!==n.toString("hex")){t.push("Token hash mismatch");return}var o=mH(e,r);if(!o){t.push("Signature not verified: issuer public key could not be resolved from token.issuer; pass options.issuerPublicKey");return}var a=e.proof.jws.split(".");if(a.length!==3||!a[2]){t.push("Malformed JWS");return}var s=gH.fromDER(f.Buffer.from(a[2],"base64url")),u=new gE;u.hashbuf=n,u.sig=s,u.pubkey=o,u.verify()!==!0&&t.push("Signature verification failed")}catch(c){t.push("Signature verification failed: "+c.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date,n=new Date(e.issuanceDate);if(n>i&&t.push("Token issued in the future"),e.credentialSubject.validFrom){var o=new Date(e.credentialSubject.validFrom);i<o&&r.push("Token not yet valid")}if(e.credentialSubject.validUntil){var a=new Date(e.credentialSubject.validUntil);i>a&&t.push("Token expired")}},_validateRightType:function(e,t){if(!e.credentialSubject.rightType){t.push("Missing rightType");return}var r=Object.values(Nf);r.includes(e.credentialSubject.rightType)||t.push("Invalid right type: "+e.credentialSubject.rightType)},_validateJurisdiction:function(e,t,r){if(!e.credentialSubject.jurisdiction){r.push("Missing jurisdiction");return}t&&Array.isArray(t)&&(t.includes(e.credentialSubject.jurisdiction)||r.push("Jurisdiction not allowed: "+e.credentialSubject.jurisdiction))},_generateUUID:function(){return WQ.uuid4()}};vH.RightTypes=Nf;yH.exports=vH});var wH=T((ehe,_H)=>{"use strict";g();var Cf=Le(),Fi=Ie(),YQ=fd(),ZQ=Vc(),$Q=ts(),Mu={PropertyTitle:{title:"Property Title",description:"Real estate property ownership title",type:"object",required:["propertyId","address","ownershipType"],properties:{propertyId:{type:"string",description:"Unique property identifier"},address:{type:"object",required:["street","city","state","country"],properties:{street:{type:"string"},city:{type:"string"},state:{type:"string"},country:{type:"string"},postalCode:{type:"string"}}},ownershipType:{type:"string",enum:["fee_simple","leasehold","joint_tenancy","tenancy_in_common"]},titleNumber:{type:"string"},registeredDate:{type:"string",format:"date-time"},legalDescription:{type:"string"},encumbrances:{type:"array",items:{type:"object",properties:{type:{type:"string"},amount:{type:"number"},description:{type:"string"}}}}}},VehicleTitle:{title:"Vehicle Title",description:"Motor vehicle ownership title",type:"object",required:["vin","make","model","year"],properties:{vin:{type:"string",pattern:"^[A-HJ-NPR-Z0-9]{17}$",description:"Vehicle Identification Number"},make:{type:"string"},model:{type:"string"},year:{type:"integer",minimum:1900,maximum:2030},titleNumber:{type:"string"},registeredState:{type:"string"},mileage:{type:"integer",minimum:0},color:{type:"string"},fuelType:{type:"string",enum:["gasoline","diesel","electric","hybrid","other"]},liens:{type:"array",items:{type:"object",properties:{lienholderName:{type:"string"},lienAmount:{type:"number"},lienDate:{type:"string",format:"date"}}}}}},PromissoryNote:{title:"Promissory Note",description:"Legal promise to pay a specified amount",type:"object",required:["principal","interestRate","maturityDate","borrower","lender"],properties:{principalAmount:{type:"number",minimum:0,description:"Principal amount in base currency units"},currency:{type:"string",default:"USD"},interestRate:{type:"number",minimum:0,maximum:100,description:"Annual interest rate percentage"},maturityDate:{type:"string",format:"date",description:"Date when principal and interest are due"},payee:{type:"string",description:"DID of the payee (creditor)"},payor:{type:"string",description:"DID of the payor (debtor)"},paymentSchedule:{type:"string",enum:["lump_sum","monthly","quarterly","annually"]},collateral:{type:"array",items:{type:"object",properties:{description:{type:"string"},value:{type:"number"},type:{type:"string"}}}},defaultProvisions:{type:"string"},governingLaw:{type:"string"}}},IntellectualProperty:{title:"Intellectual Property",description:"Intellectual property rights and licensing",type:"object",required:["ipType","title","registrationNumber"],properties:{ipType:{type:"string",enum:["patent","trademark","copyright","trade_secret"]},title:{type:"string"},creator:{type:"string",description:"Creator DID"},registrationNumber:{type:"string"},registrationDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"},jurisdiction:{type:"string"},description:{type:"string"},claims:{type:"array",items:{type:"string"}},priorArt:{type:"array",items:{type:"object",properties:{reference:{type:"string"},date:{type:"string",format:"date"},relevance:{type:"string"}}}}}},ProfessionalLicense:{title:"Professional License",description:"Professional practice license or certification",type:"object",required:["licenseType","licenseNumber","issuingAuthority","expirationDate"],properties:{licenseType:{type:"string"},licenseNumber:{type:"string"},issuingAuthority:{type:"string"},licensee:{type:"string",description:"Licensee DID"},issueDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"},renewalDate:{type:"string",format:"date"},jurisdiction:{type:"string"},scope:{type:"string"},restrictions:{type:"array",items:{type:"string"}},continuing_education:{type:"object",properties:{hours_required:{type:"integer"},deadline:{type:"string",format:"date"},completed_hours:{type:"integer"}}}}},MusicLicense:{title:"Music License",description:"Music performance and usage licensing",type:"object",required:["songTitle","artist","licenseType","royaltyRate"],properties:{workTitle:{type:"string"},composer:{type:"string",description:"Composer DID"},performer:{type:"string",description:"Performer DID"},licenseType:{type:"string",enum:["mechanical","performance","synchronization","master_use"]},territory:{type:"string"},duration:{type:"string"},royaltyRate:{type:"number",minimum:0,maximum:100},advancePayment:{type:"number",minimum:0},exclusivity:{type:"boolean"},mediaTypes:{type:"array",items:{type:"string",enum:["cd","vinyl","digital","streaming","broadcast","film","tv"]}},usage_restrictions:{type:"string"},copyrightNotice:{type:"string"}}}},XQ={prepareClaimValidation:function(e,t){try{Fi.checkArgument(e&&typeof e=="object","Invalid claim"),Fi.checkArgument(typeof t=="string","Schema name must be string");var r=Mu[t];if(!r)return{success:!1,error:"Unknown schema: "+t};var i=[],n=[];this._validateObject(e,r,"",i,n);var o={valid:i.length===0,errors:i,warnings:n,schema:t,claimHash:Cf.sha256(f.Buffer.from(this._canonicalizeWith(e,this.CANONICALIZATION.LEGACY))).toString("hex"),canonical:this._canonicalizeWith(e,this.CANONICALIZATION.LEGACY)};return{success:!0,validation:o,claim:e,schema:r,externalOperations:{store:{endpoint:"POST /claims/validate",data:{claim:e,validation:o,schema:t}},index:{endpoint:"POST /claims/index",data:{claimHash:o.claimHash,schemaName:t,valid:o.valid}}}}}catch(a){return{success:!1,error:"Validation preparation failed: "+a.message}}},prepareClaimAttestation:function(e,t,r){try{Fi.checkArgument(e&&typeof e=="object","Invalid claim"),Fi.checkArgument(typeof t=="string","Schema name must be string"),Fi.checkArgument(r&&typeof r=="object","Invalid attestor");var i=this.prepareClaimValidation(e,t);if(!i.success||!i.validation.valid)return{success:!1,error:"Cannot attest invalid claim",validation:i};var n={type:"LTP_CLAIM_ATTESTATION",claimHash:i.validation.claimHash,schemaName:t,attestor:{did:r.did||r.id,name:r.name||"Unknown",authority:r.authority||null,jurisdiction:r.jurisdiction||null},attestedAt:new Date().toISOString(),confidence:r.confidence||100,evidence:r.evidence||null,notes:r.notes||null},o=Cf.sha256(f.Buffer.from(this._canonicalizeWith(n,this.CANONICALIZATION.LEGACY))).toString("hex");return n.attestationHash=o,{success:!0,attestation:n,claim:e,validation:i.validation,externalOperations:{storeAttestation:{endpoint:"POST /claims/"+i.validation.claimHash+"/attestations",data:n},notifyStakeholders:{endpoint:"POST /notifications/claim-attested",data:{claimHash:i.validation.claimHash,attestorDid:n.attestor.did,attestationHash:o}}}}}catch(a){return{success:!1,error:"Attestation preparation failed: "+a.message}}},prepareClaimDispute:function(e,t,r){try{Fi.checkArgument(typeof e=="string","Claim hash must be string"),Fi.checkArgument(t&&typeof t=="object","Invalid disputant"),Fi.checkArgument(r&&typeof r=="object","Invalid dispute");var i={type:"LTP_CLAIM_DISPUTE",claimHash:e,disputant:{did:t.did||t.id,name:t.name||"Unknown",jurisdiction:t.jurisdiction||null},dispute:{reason:r.reason||"UNSPECIFIED",category:r.category||"ACCURACY",description:r.description||"",evidence:r.evidence||null,requestedAction:r.requestedAction||"REVIEW"},disputedAt:new Date().toISOString(),status:"FILED",priority:r.priority||"NORMAL"},n=Cf.sha256(f.Buffer.from(this._canonicalizeWith(i,this.CANONICALIZATION.LEGACY))).toString("hex");return i.disputeHash=n,{success:!0,dispute:i,disputeId:this._generateDisputeId(e),externalOperations:{fileDispute:{endpoint:"POST /claims/"+e+"/disputes",data:i},notifyStakeholders:{endpoint:"POST /notifications/claim-disputed",data:{claimHash:e,disputantDid:i.disputant.did,disputeHash:n}},escalate:{endpoint:"POST /disputes/escalate",data:{disputeHash:n,priority:i.priority}}}}}catch(o){return{success:!1,error:"Dispute preparation failed: "+o.message}}},prepareBulkClaimValidation:function(e,t){try{Fi.checkArgument(Array.isArray(e),"Claims must be array"),Fi.checkArgument(typeof t=="string","Schema name must be string");var r=[],i=[],n=0;e.forEach(function(s,u){try{var c=this.prepareClaimValidation(s,t);c.success&&c.validation.valid&&n++,r.push({index:u,result:c})}catch(l){i.push({index:u,error:l.message})}}.bind(this));var o=this._generateBatchId(),a=Cf.sha256(f.Buffer.from(JSON.stringify(r.map(s=>s.result.validation.claimHash)))).toString("hex");return{success:!0,batchId:o,batchHash:a,totalClaims:e.length,validClaims:n,invalidClaims:e.length-n,validations:r,errors:i,externalOperations:{storeBatch:{endpoint:"POST /claims/batch-validate",data:{batchId:o,batchHash:a,schemaName:t,validations:r}},generateReport:{endpoint:"POST /reports/bulk-validation",data:{batchId:o,summary:{total:e.length,valid:n,invalid:e.length-n}}}}}}catch(s){return{success:!1,error:"Bulk validation preparation failed: "+s.message}}},CANONICALIZATION:{JCS:"jcs",LEGACY:"legacy"},canonicalize:function(e,t){return this._canonicalizeWith(e,this._resolveCanonicalization(t,"LTP.Claim.canonicalize"))},hash:function(e,t){var r=this._canonicalizeWith(e,this._resolveCanonicalization(t,"LTP.Claim.hash"));return Cf.sha256(f.Buffer.from(r)).toString("hex")},_canonicalizeWith:function(e,t){if(Fi.checkArgument(e&&typeof e=="object","Invalid claim"),t===this.CANONICALIZATION.JCS)return ZQ.stringify(e);var r=this._sortObjectKeys(e);return JSON.stringify(r)},_resolveCanonicalization:function(e,t){return e===void 0?($Q({what:t+"() without a canonicalization argument",since:"9.2.0",removeIn:"10.0.0",use:t+"(claim, bsv.LTP.Claim.CANONICALIZATION.JCS)",why:"the default sorted-key form is not RFC 8785, so other implementations compute a different claim hash"}),this.CANONICALIZATION.LEGACY):(Fi.checkArgument(e===this.CANONICALIZATION.JCS||e===this.CANONICALIZATION.LEGACY,"Unknown canonicalization: "+e+". Expected 'jcs' or 'legacy' (bsv.LTP.Claim.CANONICALIZATION)"),e)},prepareClaimTemplate:function(e,t){t=t||{};try{var r=Mu[e];if(!r)return{success:!1,error:"Unknown schema: "+e};var i=this._createTemplateFromSchema(r),n=this._generateFormStructure(r);return{success:!0,schemaName:e,template:i,schema:r,formStructure:n,validation:{required:r.required||[],patterns:this._extractPatterns(r),enums:this._extractEnums(r)},externalOperations:{generateForm:{endpoint:"POST /forms/generate",data:{schemaName:e,formStructure:n,template:i}},saveTemplate:{endpoint:"POST /templates/claim",data:{schemaName:e,template:i,customizations:t.customizations||{}}}}}}catch(o){return{success:!1,error:"Template preparation failed: "+o.message}}},getSchemas:function(){return Mu},getSchemaNames:function(){return Object.keys(Mu)},getSchema:function(e){return Mu[e]||null},addSchema:function(e,t){Fi.checkArgument(typeof e=="string","Schema name must be string"),Fi.checkArgument(t&&typeof t=="object","Invalid schema"),Mu[e]=t},createTemplate:function(e){var t=Mu[e];if(!t)throw new Error("Unknown schema: "+e);return this._createTemplateFromSchema(t)},_generateDisputeId:function(e){var t="dispute_"+e+"_"+Date.now();return Cf.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_generateBatchId:function(){return YQ.randomHex(16)},_generateFormStructure:function(e){var t={type:"form",title:e.title||"Legal Claim Form",description:e.description||"",fields:[]};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r],n={name:r,label:this._humanizeFieldName(r),type:this._mapSchemaTypeToFormType(i),required:e.required&&e.required.includes(r),validation:this._extractFieldValidation(i)};i.enum&&(n.options=i.enum.map(function(o){return{value:o,label:this._humanizeValue(o)}}.bind(this))),t.fields.push(n)}.bind(this)),t},_extractPatterns:function(e){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];i.pattern&&(t[r]=i.pattern)}),t},_extractEnums:function(e){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];i.enum&&(t[r]=i.enum)}),t},_mapSchemaTypeToFormType:function(e){switch(e.type){case"string":return e.enum?"select":e.format==="date"?"date":e.format==="date-time"?"datetime":"text";case"number":case"integer":return"number";case"boolean":return"checkbox";case"array":return"list";case"object":return"fieldset";default:return"text"}},_extractFieldValidation:function(e){var t={};return e.pattern&&(t.pattern=e.pattern),e.minimum!==void 0&&(t.min=e.minimum),e.maximum!==void 0&&(t.max=e.maximum),e.format&&(t.format=e.format),t},_humanizeFieldName:function(e){return e.replace(/([A-Z])/g," $1").replace(/^./,function(t){return t.toUpperCase()}).replace(/_/g," ")},_humanizeValue:function(e){return e.replace(/_/g," ").replace(/\b\w/g,function(t){return t.toUpperCase()})},_validateObject:function(e,t,r,i,n){t.type==="object"?(t.required&&Array.isArray(t.required)&&t.required.forEach(function(o){e.hasOwnProperty(o)||i.push("Missing required field: "+this._getFieldPath(r,o))}.bind(this)),t.properties&&Object.keys(e).forEach(function(o){var a=this._getFieldPath(r,o),s=t.properties[o];s?this._validateValue(e[o],s,a,i,n):n.push("Unknown field: "+a)}.bind(this))):this._validateValue(e,t,r,i,n)},_validateValue:function(e,t,r,i,n){if(t.type){var o=Array.isArray(e)?"array":typeof e;if(o!==t.type){i.push("Invalid type for "+r+": expected "+t.type+", got "+o);return}}if(t.type==="string"&&(t.pattern&&!new RegExp(t.pattern).test(e)&&i.push("Value does not match pattern for "+r),t.enum&&!t.enum.includes(e)&&i.push("Invalid enum value for "+r+": "+e),t.format==="date"&&!this._isValidDate(e)&&i.push("Invalid date format for "+r),t.format==="date-time"&&!this._isValidDateTime(e)&&i.push("Invalid date-time format for "+r)),(t.type==="number"||t.type==="integer")&&(t.minimum!==void 0&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),t.maximum!==void 0&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum),t.type==="integer"&&!Number.isInteger(e)&&i.push("Value must be integer for "+r)),t.type==="array"&&t.items)for(var a=0;a<e.length;a++)this._validateValue(e[a],t.items,r+"["+a+"]",i,n);t.type==="object"&&this._validateObject(e,t,r,i,n)},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_createTemplateFromSchema:function(e){if(e.type==="object"){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];t[r]=this._getDefaultValue(i)}.bind(this)),t}return this._getDefaultValue(e)},_getDefaultValue:function(e){if(e.default!==void 0)return e.default;switch(e.type){case"string":return e.enum?e.enum[0]:e.format==="date"?"2023-01-01":e.format==="date-time"?new Date().toISOString():"PLACEHOLDER_STRING";case"number":case"integer":return e.minimum||0;case"boolean":return!1;case"array":return[];case"object":return this._createTemplateFromSchema(e);default:return null}},_getFieldPath:function(e,t){return e?e+"."+t:t},_isValidDate:function(e){var t=new Date(e);return!isNaN(t.getTime())&&e.match(/^\d{4}-\d{2}-\d{2}$/)},_isValidDateTime:function(e){var t=new Date(e);return!isNaN(t.getTime())}};_H.exports=XQ});var EH=T((rhe,SH)=>{"use strict";g();var hd=Le(),Lf=Ie(),JQ={prepareTokenCommitment:function(e,t){t=t||{},Lf.checkArgument(e&&typeof e=="object","Invalid token");try{var r=this._createCommitment(e,t),i=this._formatOpReturn(r,t),n=this._createTxTemplate(i,t);return{success:!0,commitment:r,opReturnData:i,txTemplate:n,preparedAt:new Date().toISOString(),metadata:{tokenId:e.id,purpose:t.purpose||"legal_token_anchor",version:"LTP.v1"}}}catch(o){return{success:!1,error:o.message}}},prepareBatchCommitment:function(e,t){t=t||{},Lf.checkArgument(Array.isArray(e),"Tokens must be array");try{var r=this._createBatchCommitment(e,t),i=this._formatOpReturn(r,t),n=this._createTxTemplate(i,t);return{success:!0,batchCommitment:r,opReturnData:i,txTemplate:n,tokenCount:e.length,preparedAt:new Date().toISOString(),metadata:{purpose:t.purpose||"legal_token_batch_anchor",version:"LTP.v1"}}}catch(o){return{success:!1,error:o.message}}},verifyTokenAnchor:function(e,t,r){Lf.checkArgument(e&&typeof e=="object","Invalid token"),Lf.checkArgument(typeof t=="string","Transaction ID must be string");try{var i=this._createCommitment(e,{}),n=this._extractOpReturn(r);if(!n)return{valid:!1,error:"No OP_RETURN data found in transaction"};var o=this._verifyCommitment(i,n);return{valid:o,chainVerified:!1,txid:t,commitment:i,anchorData:n,verifiedAt:new Date().toISOString()}}catch(a){return{valid:!1,error:a.message}}},formatRevocation:function(e,t){Lf.checkArgument(typeof e=="string","Token ID must be string"),Lf.checkArgument(t&&typeof t=="object","Invalid revocation data");try{var r={type:"LTP_REVOCATION",tokenId:e,reason:t.reason||"UNSPECIFIED",revokedBy:t.revokedBy||"UNKNOWN",revokedAt:new Date().toISOString(),effectiveDate:t.effectiveDate||new Date().toISOString(),legalBasis:t.legalBasis||null,evidence:t.evidence||null},i=hd.sha256(f.Buffer.from(JSON.stringify(r))).toString("hex");return{success:!0,revocation:r,revocationHash:i,opReturnData:this._formatOpReturn({hash:i,type:"REVOCATION"},{})}}catch(n){return{success:!1,error:n.message}}},_createCommitment:function(e,t){var r=this._canonicalizeToken(e),i={type:"LTP_TOKEN",tokenHash:hd.sha256(f.Buffer.from(r)).toString("hex"),tokenId:e.id,timestamp:new Date().toISOString(),purpose:t.purpose||"legal_token"},n=hd.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex");return{hash:n,data:i,canonical:r}},_createBatchCommitment:function(e,t){var r=[],i=[];e.forEach(function(s){var u=this._createCommitment(s,t);r.push(u.hash),i.push(s.id)}.bind(this));var n=this._createMerkleRoot(r),o={type:"LTP_BATCH",merkleRoot:n,tokenCount:e.length,tokenIds:i,timestamp:new Date().toISOString(),purpose:t.purpose||"batch_anchor"},a=hd.sha256(f.Buffer.from(JSON.stringify(o))).toString("hex");return{hash:a,data:o,merkleRoot:n,tokenHashes:r}},_formatOpReturn:function(e,t){var r=t.prefix||"LTP.v1",i=e.hash;return{prefix:r,data:i,full:r+"."+i,bytes:f.Buffer.from(r+"."+i,"utf8"),size:f.Buffer.from(r+"."+i,"utf8").length}},_createTxTemplate:function(e,t){try{var r={version:1,inputs:[],outputs:[{satoshis:0,script:"OP_RETURN "+e.data}],locktime:0};return t.feeOutput&&r.outputs.push(t.feeOutput),{template:r,opReturn:e,estimatedSize:this._estimateSize(r),instructions:{step1:"Add input UTXOs to cover fees",step2:"Add change output if needed",step3:"Sign transaction with appropriate keys",step4:"Broadcast to BSV network"}}}catch(i){throw new Error("Failed to create transaction template: "+i.message)}},_extractOpReturn:function(e){try{if(!e||!e.outputs)return null;for(var t=0;t<e.outputs.length;t++){var r=e.outputs[t];if(r.script&&r.script.startsWith("OP_RETURN")){var i=r.script.replace("OP_RETURN ","");return{raw:i,decoded:f.Buffer.from(i,"hex").toString("utf8")}}}return null}catch{return null}},_verifyCommitment:function(e,t){try{return!t||!t.decoded?!1:t.decoded.includes(e.hash)}catch{return!1}},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,delete t.anchorTx,delete t.anchorBlock,JSON.stringify(this._sortObjectKeys(t))},_createMerkleRoot:function(e){if(e.length===0)return null;if(e.length===1)return e[0];for(var t=e.slice();t.length>1;){for(var r=[],i=0;i<t.length;i+=2){var n=t[i],o=t[i+1]||n,a=f.Buffer.concat([f.Buffer.from(n,"hex"),f.Buffer.from(o,"hex")]),s=hd.sha256(a).toString("hex");r.push(s)}t=r}return t[0]},_estimateSize:function(e){var t=10,r=e.outputs.length*34,i=148;return{base:t+r,withOneInput:t+r+i,bytesPerInput:i}},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};SH.exports=JQ});var IH=T((nhe,OH)=>{"use strict";g();var QQ=sr(),Wn=Le(),xH=dn(),eee=gt(),tee=ei(),Ri=Ie(),ree={prepareSignatureProof:function(e,t,r){r=r||{},Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t instanceof tee,"Invalid private key");try{var i=this._canonicalizeForSigning(e),n=Wn.sha256(f.Buffer.from(i)),o=new xH;o.hashbuf=n,o.privkey=t,o.pubkey=t.toPublicKey(),o.sign();var a=o.sig,s={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:r.purpose||"assertionMethod",jws:this._createJWS(n,a),proofValue:a.toDER().toString("hex")};return{success:!0,proof:s,tokenHash:n.toString("hex"),canonical:i,signingKey:{publicKey:t.toPublicKey().toString(),keyId:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1"},externalOperations:{storeProof:{endpoint:"POST /proofs/signature",data:{tokenHash:n.toString("hex"),proof:s,signingKey:t.toPublicKey().toString()}},verifyProof:{endpoint:"POST /proofs/verify-signature",data:{tokenHash:n.toString("hex"),signature:a.toDER().toString("hex"),publicKey:t.toPublicKey().toString()}}}}}catch(u){return{success:!1,error:u.message}}},prepareSignatureVerification:function(e,t){try{if(Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(typeof t=="string","Public key must be string"),!e.proof)return{success:!1,error:"No proof found in token"};var r=this._canonicalizeForSigning(e),i=Wn.sha256(f.Buffer.from(r)),n=eee.fromDER(f.Buffer.from(e.proof.proofValue,"hex")),o={tokenHash:i.toString("hex"),signature:n.toDER().toString("hex"),publicKey:t,proof:e.proof,canonical:r},a=new xH;a.hashbuf=i,a.sig=n,a.pubkey=QQ.fromString(t);var s=a.verify()===!0;return{success:!0,verification:{valid:s,tokenHash:i.toString("hex"),signatureValid:s,publicKey:t,verifiedAt:new Date().toISOString()},verificationData:o,externalOperations:{recordVerification:{endpoint:"POST /proofs/verification-record",data:{tokenHash:i.toString("hex"),result:s,publicKey:t,verifiedAt:new Date().toISOString()}},auditVerification:{endpoint:"POST /audit/proof-verification",data:{tokenId:e.id,proofType:e.proof.type,result:s,verifier:t}}}}}catch(u){return{success:!1,error:u.message}}},prepareSelectiveDisclosure:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(Array.isArray(t),"Revealed fields must be array"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=this._createFieldCommitments(e,r),n=this._createMerkleTree(i),o=[],a=[];t.forEach(function(u){var c=this._getNestedValue(e,u),l=this._findFieldCommitment(i,u);if(l){o.push({path:u,value:c,commitment:l.hash,salt:l.salt});var p=this._generateMerkleProof(n,l.index);a.push({path:u,leafIndex:l.index,proof:p})}}.bind(this));var s={type:"LegalTokenSelectiveDisclosure",created:new Date().toISOString(),proofPurpose:"selectiveDisclosure",verificationMethod:e.proof?e.proof.verificationMethod:null,nonce:r,merkleRoot:n.root,disclosures:o,merkleProofs:a,totalFields:i.length};return{success:!0,proof:s,hiddenFieldCount:i.length-o.length,revealedFieldCount:o.length,externalOperations:{storeDisclosure:{endpoint:"POST /proofs/selective-disclosure",data:{tokenId:e.id,proof:s,merkleRoot:n.root}},verifyDisclosure:{endpoint:"POST /proofs/verify-disclosure",data:{proof:s,expectedNonce:r}},auditDisclosure:{endpoint:"POST /audit/selective-disclosure",data:{tokenId:e.id,revealedFields:t,totalFields:i.length,disclosedAt:new Date().toISOString()}}}}}catch(u){return{success:!1,error:u.message}}},prepareSelectiveDisclosureVerification:function(e,t){try{if(Ri.checkArgument(e&&typeof e=="object","Invalid proof"),Ri.checkArgument(typeof t=="string","Expected nonce must be string"),e.nonce!==t)return{success:!1,error:"Nonce mismatch"};var r=[],i=[];e.disclosures.forEach(function(o,a){var s=e.merkleProofs[a],u=this._hashField(o.path,o.value,o.salt);if(u!==o.commitment){i.push("Invalid commitment for field: "+o.path);return}var c=this._verifyMerkleProof(o.commitment,s.leafIndex,s.proof,e.merkleRoot);c?r.push({path:o.path,value:o.value,verified:!0}):i.push("Invalid Merkle proof for field: "+o.path)}.bind(this));var n={valid:i.length===0,errors:i,disclosures:r,merkleRoot:e.merkleRoot,totalFields:e.totalFields,verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /proofs/disclosure-verification",data:{proofId:e.id||"unknown",result:n.valid,verifiedFields:r.length,totalFields:e.totalFields,verifiedAt:n.verifiedAt}},auditVerification:{endpoint:"POST /audit/disclosure-verification",data:{merkleRoot:e.merkleRoot,disclosuresVerified:r.length,errors:i.length,result:n.valid}}}}}catch(o){return{success:!1,error:o.message}}},prepareLegalValidityProof:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t&&typeof t=="object","Invalid jurisdiction"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=t.requirements||[],n=[],o=!0;i.forEach(function(s){var u=this._checkLegalRequirement(e,s);n.push(u),u.satisfied||(o=!1)}.bind(this));var a={type:"LegalValidityProof",created:new Date().toISOString(),proofPurpose:"legalValidity",jurisdiction:t.code,nonce:r,valid:o,checks:n,complianceHash:this._hashCompliance(e,t,r)};return{success:!0,proof:a,valid:o,complianceReport:{jurisdiction:t.code,totalRequirements:i.length,satisfiedRequirements:n.filter(s=>s.satisfied).length,failedRequirements:n.filter(s=>!s.satisfied).length,overallCompliance:o},externalOperations:{submitCompliance:{endpoint:"POST /compliance/legal-validity",data:{tokenId:e.id,jurisdiction:t.code,proof:a,complianceReport:{jurisdiction:t.code,totalRequirements:i.length,satisfiedRequirements:n.filter(s=>s.satisfied).length,failedRequirements:n.filter(s=>!s.satisfied).length,overallCompliance:o}}},auditCompliance:{endpoint:"POST /audit/compliance-check",data:{tokenId:e.id,jurisdiction:t.code,result:o,checkedAt:new Date().toISOString(),requirements:n}},notifyRegulator:o?null:{endpoint:"POST /notifications/compliance-failure",data:{tokenId:e.id,jurisdiction:t.code,failedRequirements:n.filter(s=>!s.satisfied)}}}}}catch(s){return{success:!1,error:s.message}}},prepareZeroKnowledgeProof:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t&&typeof t=="object","Invalid statement"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=Wn.sha256(f.Buffer.from(this._canonicalizeForSigning(e)+r)).toString("hex"),n={type:"LegalTokenZKProof",created:new Date().toISOString(),proofPurpose:"zeroKnowledge",statement:{claim:t.claim||"UNSPECIFIED",predicate:t.predicate||"SATISFIES",threshold:t.threshold||null},commitment:i,nonce:r,proofData:this._generateZKProofData(e,t,r)};return{success:!0,proof:n,commitment:i,externalOperations:{storeZKProof:{endpoint:"POST /proofs/zero-knowledge",data:{tokenId:e.id,proof:n,statement:t}},verifyZKProof:{endpoint:"POST /proofs/verify-zk",data:{proof:n,expectedNonce:r}},auditZKProof:{endpoint:"POST /audit/zk-proof",data:{tokenId:e.id,statement:t.claim,proofGenerated:new Date().toISOString()}}}}}catch(o){return{success:!1,error:o.message}}},_generateZKProofData:function(e,t,r){var i={challenge:Wn.sha256(f.Buffer.from(t.claim+r)).toString("hex"),response:Wn.sha256(f.Buffer.from(this._canonicalizeForSigning(e)+t.claim)).toString("hex"),witness:Wn.sha256(f.Buffer.from(r+e.id+t.predicate)).toString("hex")};return i},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=e.toString("base64url"),o=t.toDER().toString("base64url");return i+".."+o},_canonicalizeForSigning:function(e){var t=JSON.parse(JSON.stringify(e));delete t.proof,delete t.tokenHash;var r=this._sortObjectKeys(t);return JSON.stringify(r)},_createFieldCommitments:function(e,t){var r=[],i=0;return this._traverseObject(e,"",function(n,o){if(n!=="proof"&&n!=="tokenHash"){var a=Wn.sha256(f.Buffer.from(t+n+i)).toString("hex"),s=this._hashField(n,o,a);r.push({path:n,value:o,salt:a,hash:s,index:i}),i++}}.bind(this)),r},_hashField:function(e,t,r){var i=e+":"+JSON.stringify(t)+":"+r;return Wn.sha256(f.Buffer.from(i)).toString("hex")},_createMerkleTree:function(e){var t=e.map(function(l){return l.hash});if(t.length===0)return{root:null,levels:[]};for(var r=[t],i=t;i.length>1;){for(var n=[],o=0;o<i.length;o+=2){var a=i[o],s=i[o+1]||a,u=f.Buffer.concat([f.Buffer.from(a,"hex"),f.Buffer.from(s,"hex")]),c=Wn.sha256(u).toString("hex");n.push(c)}r.push(n),i=n}return{root:i[0],levels:r}},_generateMerkleProof:function(e,t){for(var r=[],i=t,n=0;n<e.levels.length-1;n++){var o=e.levels[n],a=i%2===0,s=a?i+1:i-1;s<o.length&&r.push({hash:o[s],isLeft:!a}),i=Math.floor(i/2)}return r},_verifyMerkleProof:function(e,t,r,i){for(var n=e,o=t,a=0;a<r.length;a++){var s=r[a],u=o%2===0,c;s.isLeft?c=f.Buffer.concat([f.Buffer.from(s.hash,"hex"),f.Buffer.from(n,"hex")]):c=f.Buffer.concat([f.Buffer.from(n,"hex"),f.Buffer.from(s.hash,"hex")]),n=Wn.sha256(c).toString("hex"),o=Math.floor(o/2)}return n===i},_traverseObject:function(e,t,r){Array.isArray(e)?e.forEach(function(i,n){var o=t+"["+n+"]";this._traverseObject(i,o,r)}.bind(this)):e!==null&&typeof e=="object"?Object.keys(e).forEach(function(i){var n=t?t+"."+i:i;this._traverseObject(e[i],n,r)}.bind(this)):r(t,e)},_getNestedValue:function(e,t){return t.split(".").reduce(function(r,i){return r&&r[i]},e)},_findFieldCommitment:function(e,t){return e.find(function(r){return r.path===t})},_checkLegalRequirement:function(e,t){switch(t.type){case"field_present":var r=this._getNestedValue(e,t.field);return{requirement:t.type,field:t.field,satisfied:r!=null};case"field_value":var r=this._getNestedValue(e,t.field);return{requirement:t.type,field:t.field,satisfied:r===t.expectedValue};case"temporal_validity":var i=new Date,n=new Date(e.issuanceDate);return{requirement:t.type,satisfied:n<=i};default:return{requirement:t.type,satisfied:!1,error:"Unknown requirement type"}}},_hashCompliance:function(e,t,r){var i={tokenId:e.id,jurisdiction:t.code,nonce:r,timestamp:new Date().toISOString()};return Wn.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex")},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};OH.exports=ree});var PH=T((uhe,TH)=>{"use strict";g();var dd=Le(),ahe=Ni(),she=zt(),ji=Ie(),AH=fd(),iee={prepareRegistry:function(e){e=e||{},ji.checkArgument(typeof e=="object","Config must be object");var t={id:e.id||this._generateRegistryId(),name:e.name||"Legal Token Registry",jurisdiction:e.jurisdiction||"GLOBAL",authority:e.authority||null,created:new Date().toISOString(),version:"1.0.0",config:{allowPublicRegistration:e.allowPublicRegistration||!1,requireApproval:e.requireApproval||!0,enableRevocation:e.enableRevocation!==!1,enableAuditTrail:e.enableAuditTrail!==!1,retentionPeriod:e.retentionPeriod||"7Y",complianceLevel:e.complianceLevel||"STANDARD"},dataStructure:{tokens:"Map<tokenId, registrationRecord>",revocations:"Map<tokenId, revocationRecord>",auditLog:"Array<auditEntry>",statistics:{totalTokens:0,activeTokens:0,revokedTokens:0,registrations:0}},externalStorage:{required:!0,type:"database_or_blockchain",endpoints:{store:"POST /registry/{id}/tokens",retrieve:"GET /registry/{id}/tokens/{tokenId}",search:"GET /registry/{id}/search",revoke:"POST /registry/{id}/revocations"}}},r=this._prepareAuditEntry({action:"REGISTRY_CREATED",actor:e.authority,timestamp:t.created,metadata:{jurisdiction:t.jurisdiction,config:t.config}});return{success:!0,registry:t,initialAudit:r,instructions:{step1:"Store registry configuration in external system",step2:"Initialize token storage with provided data structure",step3:"Set up audit logging with provided templates",step4:"Configure external endpoints for registry operations"}}},prepareTokenRegistration:function(e,t,r){r=r||{},ji.checkArgument(e&&typeof e=="object","Invalid token"),ji.checkArgument(t&&typeof t=="object","Invalid registry config");try{var i=this._validateTokenForRegistration(e,t);if(!i.valid)return{success:!1,error:"Token validation failed: "+i.error};var n={tokenId:e.id,tokenHash:this._hashToken(e),token:e,status:t.requireApproval?"PENDING":"ACTIVE",registeredBy:r.registeredBy||"UNKNOWN",registeredAt:new Date().toISOString(),approvedBy:null,approvedAt:null,metadata:r.metadata||{},compliance:{jurisdiction:e.jurisdiction||t.jurisdiction,level:this._calculateComplianceLevel(e),checks:i.checks||[]}},o=this._prepareAuditEntry({action:"TOKEN_REGISTERED",actor:r.registeredBy,tokenId:e.id,timestamp:n.registeredAt,metadata:{status:n.status,tokenType:e.type,compliance:n.compliance}});return{success:!0,registrationRecord:n,auditEntry:o,registrationId:this._generateRegistrationId(e.id),validation:i,externalOperations:{store:{endpoint:"POST /registry/"+t.id+"/tokens",data:n},audit:{endpoint:"POST /registry/"+t.id+"/audit",data:o}}}}catch(a){return{success:!1,error:a.message}}},prepareTokenApproval:function(e,t,r){try{ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(typeof t=="string","Approver must be string"),ji.checkArgument(r&&typeof r=="object","Invalid registry config");var i={tokenId:e,status:"ACTIVE",approvedBy:t,approvedAt:new Date().toISOString()},n=this._prepareAuditEntry({action:"TOKEN_APPROVED",actor:t,tokenId:e,timestamp:i.approvedAt});return{success:!0,approvalData:i,auditEntry:n,externalOperations:{update:{endpoint:"PUT /registry/"+r.id+"/tokens/"+e+"/status",data:i},audit:{endpoint:"POST /registry/"+r.id+"/audit",data:n}}}}catch(o){return{success:!1,error:o.message}}},prepareTokenRevocation:function(e,t,r){try{if(ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(t&&typeof t=="object","Invalid revocation"),ji.checkArgument(r&&typeof r=="object","Invalid registry config"),!r.enableRevocation)return{success:!1,error:"Revocation is disabled for this registry"};var i={tokenId:e,reason:t.reason||"UNSPECIFIED",revokedBy:t.revokedBy||"UNKNOWN",revokedAt:new Date().toISOString(),effectiveDate:t.effectiveDate||new Date().toISOString(),legalBasis:t.legalBasis||null,evidence:t.evidence||null,revocationHash:this._generateRevocationHash(e,t)},n={tokenId:e,status:"REVOKED",revokedAt:i.revokedAt,revocationReason:i.reason},o=this._prepareAuditEntry({action:"TOKEN_REVOKED",actor:t.revokedBy,tokenId:e,timestamp:i.revokedAt,metadata:{reason:i.reason,legalBasis:i.legalBasis}});return{success:!0,revocationRecord:i,statusUpdate:n,auditEntry:o,revocationId:this._generateRevocationId(e),externalOperations:{storeRevocation:{endpoint:"POST /registry/"+r.id+"/revocations",data:i},updateStatus:{endpoint:"PUT /registry/"+r.id+"/tokens/"+e+"/status",data:n},audit:{endpoint:"POST /registry/"+r.id+"/audit",data:o}}}}catch(a){return{success:!1,error:a.message}}},prepareTokenStatusQuery:function(e,t){try{return ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(t&&typeof t=="object","Invalid registry config"),{success:!0,query:{tokenId:e,registryId:t.id},externalOperations:{retrieve:{endpoint:"GET /registry/"+t.id+"/tokens/"+e,method:"GET"},checkRevocation:{endpoint:"GET /registry/"+t.id+"/revocations/"+e,method:"GET"}},expectedResponse:{found:"boolean",status:"string (PENDING|ACTIVE|REVOKED)",registeredAt:"ISO datetime",registeredBy:"string",approvedAt:"ISO datetime or null",approvedBy:"string or null",revokedAt:"ISO datetime or null",revocationReason:"string or null",compliance:"object",revocation:"object or null"}}}catch(r){return{success:!1,error:r.message}}},prepareTokenSearch:function(e,t){e=e||{};try{ji.checkArgument(t&&typeof t=="object","Invalid registry config");var r=[];e.status&&r.push("status="+encodeURIComponent(e.status)),e.type&&r.push("type="+encodeURIComponent(e.type)),e.registeredBy&&r.push("registeredBy="+encodeURIComponent(e.registeredBy)),e.jurisdiction&&r.push("jurisdiction="+encodeURIComponent(e.jurisdiction)),e.dateFrom&&r.push("dateFrom="+encodeURIComponent(e.dateFrom)),e.dateTo&&r.push("dateTo="+encodeURIComponent(e.dateTo)),e.includeTokens&&r.push("includeTokens=true"),e.sortBy&&r.push("sortBy="+encodeURIComponent(e.sortBy)),e.sortOrder&&r.push("sortOrder="+encodeURIComponent(e.sortOrder));var i=e.offset||0,n=e.limit||100;r.push("offset="+i),r.push("limit="+n);var o=r.length>0?"?"+r.join("&"):"";return{success:!0,searchCriteria:e,externalOperations:{search:{endpoint:"GET /registry/"+t.id+"/search"+o,method:"GET"}},expectedResponse:{success:"boolean",results:"Array<tokenRecord>",totalCount:"number",totalRegistrations:"number",offset:"number",limit:"number",hasMore:"boolean"}}}catch(a){return{success:!1,error:a.message}}},prepareStatisticsQuery:function(e){return ji.checkArgument(e&&typeof e=="object","Invalid registry config"),{success:!0,query:{registryId:e.id},externalOperations:{getStatistics:{endpoint:"GET /registry/"+e.id+"/statistics",method:"GET"}},expectedResponse:{id:"string",name:"string",jurisdiction:"string",created:"ISO datetime",statistics:{totalTokens:"number",activeTokens:"number",revokedTokens:"number",registrations:"number"},auditEntries:"number",lastActivity:"ISO datetime"}}},prepareAuditLogQuery:function(e,t){if(t=t||{},ji.checkArgument(e&&typeof e=="object","Invalid registry config"),!e.enableAuditTrail)return{success:!1,error:"Audit trail is disabled"};var r=[];t.action&&r.push("action="+encodeURIComponent(t.action)),t.actor&&r.push("actor="+encodeURIComponent(t.actor)),t.tokenId&&r.push("tokenId="+encodeURIComponent(t.tokenId)),t.dateFrom&&r.push("dateFrom="+encodeURIComponent(t.dateFrom)),t.dateTo&&r.push("dateTo="+encodeURIComponent(t.dateTo));var i=t.offset||0,n=t.limit||100;r.push("offset="+i),r.push("limit="+n);var o=r.length>0?"?"+r.join("&"):"";return{success:!0,auditOptions:t,externalOperations:{getAuditLog:{endpoint:"GET /registry/"+e.id+"/audit"+o,method:"GET"}},expectedResponse:{success:"boolean",entries:"Array<auditEntry>",totalEntries:"number",offset:"number",limit:"number",hasMore:"boolean"}}},_generateRegistryId:function(){return"reg_"+AH.randomHex(16)},_generateRegistrationId:function(e){var t="reg_"+e+"_"+Date.now();return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_generateRevocationId:function(e){var t="rev_"+e+"_"+Date.now();return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_hashToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,dd.sha256(f.Buffer.from(JSON.stringify(t))).toString("hex")},_generateRevocationHash:function(e,t){var r=e+(t.reason||"")+(t.revokedBy||"")+Date.now();return dd.sha256(f.Buffer.from(r)).toString("hex")},_validateTokenForRegistration:function(e,t){var r=[],i=!0;return e.id?r.push({field:"id",valid:!0}):(r.push({field:"id",valid:!1,error:"Missing token ID"}),i=!1),e.type?r.push({field:"type",valid:!0}):(r.push({field:"type",valid:!1,error:"Missing token type"}),i=!1),e.issuanceDate?r.push({field:"issuanceDate",valid:!0}):(r.push({field:"issuanceDate",valid:!1,error:"Missing issuance date"}),i=!1),e.proof?r.push({field:"proof",valid:!0}):(r.push({field:"proof",valid:!1,error:"Missing cryptographic proof"}),i=!1),{valid:i,checks:r}},_calculateComplianceLevel:function(e){var t="BASIC";return e.proof&&e.proof.type&&(t="STANDARD"),e.jurisdiction&&e.legalBasis&&(t="ENHANCED"),e.attestations&&e.attestations.length>0&&(t="PREMIUM"),t},_prepareAuditEntry:function(e){var t={id:this._generateAuditId(),action:e.action,actor:e.actor||"SYSTEM",tokenId:e.tokenId||null,timestamp:e.timestamp||new Date().toISOString(),metadata:e.metadata||{},hash:this._generateAuditHash(e)};return t},_generateAuditId:function(){return"audit_"+AH.randomHex(32)},_generateAuditHash:function(e){var t=(e.action||"")+(e.actor||"")+(e.tokenId||"")+(e.timestamp||"");return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)}};TH.exports=iee});var NH=T((fhe,BH)=>{"use strict";g();var vE=sr(),yE=Le(),RH=dn(),nee=gt(),kH=ei(),Ji=Ie(),oee=fd();function aee(e,t){if(t=t||{},t.issuerPublicKey)return t.issuerPublicKey instanceof vE?t.issuerPublicKey:vE.fromString(t.issuerPublicKey);var r=e&&e.issuer;if(typeof r!="string")return null;try{var i=r.split("#")[0].split(":")[2];return i?vE.fromString(i):null}catch{return null}}var Lv={CORRELATIVE_OBLIGATION:"CorrelativeObligation",CONTRACTUAL_OBLIGATION:"ContractualObligation",PAYMENT_OBLIGATION:"PaymentObligation",DELIVERY_OBLIGATION:"DeliveryObligation",PERFORMANCE_OBLIGATION:"PerformanceObligation",MAINTENANCE_OBLIGATION:"MaintenanceObligation",COMPLIANCE_OBLIGATION:"ComplianceObligation",REPORTING_OBLIGATION:"ReportingObligation",CONFIDENTIALITY_OBLIGATION:"ConfidentialityObligation",NON_COMPETE_OBLIGATION:"NonCompeteObligation",INDEMNIFICATION_OBLIGATION:"IndemnificationObligation",WARRANTY_OBLIGATION:"WarrantyObligation",SUPPORT_OBLIGATION:"SupportObligation",REGULATORY_OBLIGATION:"RegulatoryObligation",FIDUCIARY_OBLIGATION:"FiduciaryObligation"},Mf={CRITICAL:"CRITICAL",HIGH:"HIGH",MEDIUM:"MEDIUM",LOW:"LOW",DEFERRED:"DEFERRED"},zi={PENDING:"PENDING",ACTIVE:"ACTIVE",IN_PROGRESS:"IN_PROGRESS",COMPLETED:"COMPLETED",OVERDUE:"OVERDUE",BREACHED:"BREACHED",WAIVED:"WAIVED",TERMINATED:"TERMINATED"},Mv={prepareObligationToken:function(e,t,r,i,n,o){o=o||{},Ji.checkArgument(typeof e=="string","Obligation type must be string"),Ji.checkArgument(typeof t=="string","Issuer DID must be string"),Ji.checkArgument(typeof r=="string","Obligor DID must be string"),Ji.checkArgument(i&&typeof i=="object","Obligation must be object"),Ji.checkArgument(n instanceof kH,"Invalid issuer private key");var a=Object.values(Lv);Ji.checkArgument(a.includes(e),"Invalid obligation type: "+e);try{var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalObligationToken",e],issuer:t,issuanceDate:new Date().toISOString(),credentialSubject:{id:r,obligationType:e,obligation:i,jurisdiction:o.jurisdiction||"US",priority:o.priority||Mf.MEDIUM,status:zi.PENDING,dueDate:o.dueDate||null,effectiveDate:o.effectiveDate||new Date().toISOString(),expirationDate:o.expirationDate||null,correlativeRight:o.correlativeRight||null,rightHolder:o.rightHolder||null,enforceable:o.enforceable!==!1,penalties:o.penalties||null,remedies:o.remedies||null}};o.metadata&&(s.credentialSubject.metadata=o.metadata);var u=this._signToken(s,n);return{success:!0,obligationToken:u,tokenHash:u.tokenHash,metadata:{type:e,issuer:t,obligor:r,priority:s.credentialSubject.priority,status:s.credentialSubject.status,jurisdiction:s.credentialSubject.jurisdiction,dueDate:s.credentialSubject.dueDate,correlativeRight:s.credentialSubject.correlativeRight},externalOperations:{storeToken:{endpoint:"POST /obligations/tokens",data:{token:u,metadata:{type:e,issuer:t,obligor:r,priority:s.credentialSubject.priority,status:s.credentialSubject.status,jurisdiction:s.credentialSubject.jurisdiction,dueDate:s.credentialSubject.dueDate,correlativeRight:s.credentialSubject.correlativeRight}}},indexToken:{endpoint:"POST /obligations/index",data:{tokenId:u.id,tokenHash:u.tokenHash,type:e,issuer:t,obligor:r,issuedAt:u.issuanceDate,dueDate:s.credentialSubject.dueDate,priority:s.credentialSubject.priority}},notifyObligor:{endpoint:"POST /notifications/obligation-issued",data:{tokenId:u.id,issuer:t,obligor:r,obligationType:e,dueDate:s.credentialSubject.dueDate,priority:s.credentialSubject.priority}},scheduleReminders:s.credentialSubject.dueDate?{endpoint:"POST /obligations/schedule-reminders",data:{tokenId:u.id,obligor:r,dueDate:s.credentialSubject.dueDate,reminderSchedule:o.reminderSchedule||["7d","3d","1d"]}}:null}}}catch(c){return{success:!1,error:c.message}}},prepareObligationVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r,t),this._validateTokenTemporal(e,r,i),this._validateObligationType(e,r),this._validateObligationStatus(e,r,i),this._validateObligationPriority(e,i);var n={valid:r.length===0,errors:r,warnings:i,issuerDID:e.issuer,obligorDID:e.credentialSubject?e.credentialSubject.id:null,obligationType:e.credentialSubject?e.credentialSubject.obligationType:null,status:e.credentialSubject?e.credentialSubject.status:null,priority:e.credentialSubject?e.credentialSubject.priority:null,isOverdue:this._checkIfOverdue(e),verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /obligations/verification-record",data:{tokenId:e.id,result:n.valid,errors:r,warnings:i,verifiedAt:n.verifiedAt,isOverdue:n.isOverdue}},auditVerification:{endpoint:"POST /audit/obligation-verification",data:{tokenId:e.id,obligationType:n.obligationType,issuer:n.issuerDID,obligor:n.obligorDID,result:n.valid,verifiedAt:n.verifiedAt}},updateStatus:n.isOverdue&&e.credentialSubject.status===zi.ACTIVE?{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:zi.OVERDUE,updatedAt:n.verifiedAt,reason:"Due date passed"}}:null}}}catch(o){return{success:!1,error:"Verification preparation failed: "+o.message}}},prepareObligationFulfillment:function(e,t,r,i){i=i||{},Ji.checkArgument(e&&typeof e=="object","Invalid token"),Ji.checkArgument(t&&typeof t=="object","Invalid fulfillment"),Ji.checkArgument(r instanceof kH,"Invalid obligor key");try{var n=this.prepareObligationVerification(e,{});if(!n.success||!n.verification.valid)return{success:!1,error:"Cannot fulfill invalid obligation: "+n.verification.errors.join(", ")};if(e.credentialSubject.status===zi.COMPLETED)return{success:!1,error:"Obligation already fulfilled"};if(e.credentialSubject.status===zi.TERMINATED)return{success:!1,error:"Obligation has been terminated"};var o={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","ObligationFulfillment"],issuer:e.credentialSubject.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:e.id,fulfillmentType:t.type||"FULL_FULFILLMENT",fulfillmentDate:new Date().toISOString(),evidence:t.evidence||null,description:t.description||"",completionPercentage:t.completionPercentage||100,attestations:t.attestations||[],notes:t.notes||null}},a=this._signToken(o,r),s=o.credentialSubject.completionPercentage>=100?zi.COMPLETED:zi.IN_PROGRESS;return{success:!0,fulfillmentRecord:a,newStatus:s,fulfillmentId:a.id,externalOperations:{recordFulfillment:{endpoint:"POST /obligations/fulfillments",data:{obligationId:e.id,fulfillmentRecord:a,obligor:e.credentialSubject.id,fulfillmentDate:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:s,fulfillmentId:a.id,updatedAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},notifyRightHolder:e.credentialSubject.rightHolder?{endpoint:"POST /notifications/obligation-fulfilled",data:{obligationId:e.id,fulfillmentId:a.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,completionPercentage:o.credentialSubject.completionPercentage,newStatus:s}}:null,auditFulfillment:{endpoint:"POST /audit/obligation-fulfillment",data:{obligationId:e.id,fulfillmentId:a.id,obligor:e.credentialSubject.id,fulfilledAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}}}}}catch(u){return{success:!1,error:u.message}}},prepareObligationBreachAssessment:function(e,t,r){Ji.checkArgument(e&&typeof e=="object","Invalid token"),Ji.checkArgument(t&&typeof t=="object","Invalid breach details"),Ji.checkArgument(r&&typeof r=="object","Invalid assessor");try{var i={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","ObligationBreachAssessment"],issuer:r.did||r.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:e.id,breachType:t.type||"MATERIAL_BREACH",breachDate:t.date||new Date().toISOString(),description:t.description||"",severity:t.severity||"MODERATE",evidence:t.evidence||[],assessor:{did:r.did||r.id,name:r.name||"Unknown",authority:r.authority||null,jurisdiction:r.jurisdiction||null},damages:t.damages||null,recommendedRemedies:t.recommendedRemedies||[],assessmentDate:new Date().toISOString()}},n=yE.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex");return i.credentialSubject.assessmentHash=n,{success:!0,breachAssessment:i,breachId:i.id,severity:t.severity||"MODERATE",externalOperations:{recordBreach:{endpoint:"POST /obligations/breaches",data:{obligationId:e.id,breachAssessment:i,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachDate:t.date||new Date().toISOString(),severity:t.severity||"MODERATE"}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:zi.BREACHED,breachId:i.id,breachDate:t.date||new Date().toISOString(),updatedAt:new Date().toISOString()}},notifyParties:{endpoint:"POST /notifications/obligation-breached",data:{obligationId:e.id,breachId:i.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachType:t.type||"MATERIAL_BREACH",severity:t.severity||"MODERATE"}},escalateBreach:t.severity==="CRITICAL"?{endpoint:"POST /legal/escalate-breach",data:{obligationId:e.id,breachId:i.id,severity:t.severity,jurisdiction:e.credentialSubject.jurisdiction}}:null,auditBreach:{endpoint:"POST /audit/obligation-breach",data:{obligationId:e.id,breachId:i.id,obligor:e.credentialSubject.id,assessedAt:i.credentialSubject.assessmentDate,severity:t.severity||"MODERATE"}}}}}catch(o){return{success:!1,error:o.message}}},prepareObligationMonitoringReport:function(e,t){t=t||{},Ji.checkArgument(Array.isArray(e),"Obligations must be array");try{var r={reportId:"rpt_"+this._generateUUID(),generatedAt:new Date().toISOString(),criteria:t,summary:{totalObligations:e.length,byStatus:{},byPriority:{},byType:{},overdue:0,dueSoon:0,completed:0},obligations:[],alerts:[],recommendations:[]},i=new Date,n=new Date(i.getTime()+10080*60*1e3);return e.forEach(function(o){var a={id:o.id,type:o.credentialSubject.obligationType,status:o.credentialSubject.status,priority:o.credentialSubject.priority,obligor:o.credentialSubject.id,dueDate:o.credentialSubject.dueDate,isOverdue:this._checkIfOverdue(o),isDueSoon:!1};if(o.credentialSubject.dueDate){var s=new Date(o.credentialSubject.dueDate);a.isDueSoon=s<=n&&s>i}r.summary.byStatus[a.status]=(r.summary.byStatus[a.status]||0)+1,r.summary.byPriority[a.priority]=(r.summary.byPriority[a.priority]||0)+1,r.summary.byType[a.type]=(r.summary.byType[a.type]||0)+1,a.isOverdue&&r.summary.overdue++,a.isDueSoon&&r.summary.dueSoon++,a.status===zi.COMPLETED&&r.summary.completed++,a.isOverdue&&a.priority===Mf.CRITICAL&&r.alerts.push({type:"CRITICAL_OVERDUE",obligationId:o.id,message:"Critical obligation is overdue",priority:"HIGH"}),a.isDueSoon&&a.priority===Mf.HIGH&&r.alerts.push({type:"HIGH_PRIORITY_DUE_SOON",obligationId:o.id,message:"High priority obligation due soon",priority:"MEDIUM"}),r.obligations.push(a)}.bind(this)),r.summary.overdue>0&&r.recommendations.push({type:"OVERDUE_MANAGEMENT",message:"Consider prioritizing overdue obligations",count:r.summary.overdue}),r.summary.dueSoon>5&&r.recommendations.push({type:"WORKLOAD_MANAGEMENT",message:"High number of obligations due soon - consider workload distribution",count:r.summary.dueSoon}),{success:!0,report:r,externalOperations:{storeReport:{endpoint:"POST /obligations/monitoring-reports",data:{report:r,generatedAt:r.generatedAt}},sendAlerts:r.alerts.length>0?{endpoint:"POST /notifications/obligation-alerts",data:{reportId:r.reportId,alerts:r.alerts,summary:r.summary}}:null,updateDashboard:{endpoint:"PUT /dashboard/obligation-metrics",data:{summary:r.summary,lastUpdated:r.generatedAt}}}}}catch(o){return{success:!1,error:o.message}}},getObligationTypes:function(){return Lv},getObligationPriority:function(){return Mf},getObligationStatus:function(){return zi},_signToken:function(e,t){var r=this._canonicalizeToken(e),i=yE.sha256(f.Buffer.from(r)),n=new RH;n.hashbuf=i,n.privkey=t,n.pubkey=t.toPublicKey(),n.sign();var o=n.sig,a={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(i,o)},s=JSON.parse(JSON.stringify(e));return s.proof=a,s.tokenHash=i.toString("hex"),s},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=e.toString("base64url"),o=t.toDER().toString("base64url");return i+".."+o},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,JSON.stringify(this._sortObjectKeys(t))},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_validateTokenStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.id||t.push("Missing id"),(!e.type||!Array.isArray(e.type))&&t.push("Missing or invalid type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject"),e.proof||t.push("Missing proof")},_verifyTokenSignature:function(e,t,r){try{if(!e.proof||!e.proof.jws){t.push("Missing signature proof");return}var i=this._canonicalizeToken(e),n=yE.sha256(f.Buffer.from(i));if(e.tokenHash&&e.tokenHash!==n.toString("hex")){t.push("Token hash mismatch");return}var o=aee(e,r);if(!o){t.push("Signature not verified: issuer public key could not be resolved from token.issuer; pass options.issuerPublicKey");return}var a=e.proof.jws.split(".");if(a.length!==3||!a[2]){t.push("Malformed JWS");return}var s=nee.fromDER(f.Buffer.from(a[2],"base64url")),u=new RH;u.hashbuf=n,u.sig=s,u.pubkey=o,u.verify()!==!0&&t.push("Signature verification failed")}catch(c){t.push("Signature verification failed: "+c.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date,n=new Date(e.issuanceDate);if(n>i&&t.push("Token issued in the future"),e.credentialSubject.effectiveDate){var o=new Date(e.credentialSubject.effectiveDate);i<o&&r.push("Obligation not yet effective")}if(e.credentialSubject.expirationDate){var a=new Date(e.credentialSubject.expirationDate);i>a&&t.push("Obligation expired")}},_validateObligationType:function(e,t){if(!e.credentialSubject.obligationType){t.push("Missing obligationType");return}var r=Object.values(Lv);r.includes(e.credentialSubject.obligationType)||t.push("Invalid obligation type: "+e.credentialSubject.obligationType)},_validateObligationStatus:function(e,t,r){if(!e.credentialSubject.status){t.push("Missing status");return}var i=Object.values(zi);i.includes(e.credentialSubject.status)||t.push("Invalid obligation status: "+e.credentialSubject.status),this._checkIfOverdue(e)&&e.credentialSubject.status===zi.ACTIVE&&r.push("Obligation is overdue but status is still ACTIVE")},_validateObligationPriority:function(e,t){if(e.credentialSubject.priority){var r=Object.values(Mf);r.includes(e.credentialSubject.priority)||t.push("Invalid obligation priority: "+e.credentialSubject.priority)}},_checkIfOverdue:function(e){if(!e.credentialSubject.dueDate)return!1;var t=new Date,r=new Date(e.credentialSubject.dueDate);return t>r&&e.credentialSubject.status!==zi.COMPLETED},_generateUUID:function(){return oee.uuid4()}};Mv.ObligationTypes=Lv;Mv.ObligationPriority=Mf;Mv.ObligationStatus=zi;BH.exports=Mv});var LH=T((hhe,CH)=>{"use strict";g();var Du=bH(),Dv=wH(),pd=EH(),bE=IH(),Uo=PH(),see=NH(),_E=ei(),Qi=Ie(),lt=function(e){return this instanceof lt?(this.config=e||{},this.registry=null,this.config.registry&&(this.registry=Uo.createRegistry(this.config.registry)),this):new lt(e)};lt.prototype.createRightToken=function(e,t,r){Qi.checkArgument(e&&typeof e=="object","Invalid right data"),Qi.checkArgument(t instanceof _E,"Invalid private key"),r=r||{};try{var i=Du.create(e.type,e.owner,e.owner,e,t,r);if(!i)return{success:!1,error:"Failed to create token"};if(r.addProof!==!1&&(i=Du._signToken(i,t)),r.anchor){var n=pd.anchorToken(i,r.anchor);n.success&&(i.anchorTx=n.txid,i.anchorBlock=n.blockHeight)}if(this.registry&&r.register!==!1){var o=Uo.registerToken(this.registry,i,{registeredBy:r.registeredBy||"SYSTEM"});o.success&&(i.registrationId=o.registrationId,i.registrationStatus=o.status)}return{success:!0,token:i,type:"LegalRightToken"}}catch(a){return{success:!1,error:a.message}}};lt.prototype.validateClaim=function(e,t){return Dv.validate(e,t)};lt.prototype.createSelectiveDisclosure=function(e,t,r){return bE.prepareSelectiveDisclosure(e,t,r)};lt.prototype.verifyToken=function(e,t){return!e||!e.proof?{valid:!1,error:"No proof found in token"}:Du.verifyToken(e,t)};lt.prototype.transferRight=function(e,t,r,i){Qi.checkArgument(e&&typeof e=="object","Invalid token"),Qi.checkArgument(typeof t=="string","New owner must be string"),Qi.checkArgument(r instanceof _E,"Invalid owner key"),i=i||{};try{var n=this.verifyToken(e,r.toPublicKey().toString());if(!n.valid)return{success:!1,error:"Invalid token or ownership proof"};var o=Du.prepareRightTokenTransfer(e,t,r,i);if(!o.success)return{success:!1,error:o.error};var a=o.newToken,s=o.transferProof;if(i.anchor){var u=pd.anchorToken(a,i.anchor);u.success&&(a.transferAnchorTx=u.txid)}if(this.registry){var c=Uo.registerToken(this.registry,a,{registeredBy:i.registeredBy||t,metadata:{transferFrom:e.owner,transferTo:t,originalTokenId:e.id}});c.success&&(a.registrationId=c.registrationId)}return{success:!0,token:a,transferId:s.id,transferredAt:s.issuanceDate,transferProof:s}}catch(l){return{success:!1,error:l.message}}};lt.prototype.createObligation=function(e,t,r){Qi.checkArgument(e&&typeof e=="object","Invalid right token"),Qi.checkArgument(t&&typeof t=="object","Invalid obligation data"),Qi.checkArgument(r instanceof _E,"Invalid private key");try{var i=Du.prepareObligationToken(e,t.obligor,t,r);return i.success?{success:!0,obligation:i.obligationToken,rightTokenId:e.id}:{success:!1,error:i.error}}catch(n){return{success:!1,error:n.message}}};lt.prototype.revokeToken=function(e,t,r){return Qi.checkArgument(typeof e=="string","Token ID must be string"),Qi.checkArgument(t&&typeof t=="object","Invalid revocation data"),Qi.checkArgument(typeof r=="string","Authority must be string"),this.registry?Uo.revokeToken(this.registry,e,{reason:t.reason,revokedBy:r,legalBasis:t.legalBasis,evidence:t.evidence}):{success:!1,error:"No registry available for revocation"}};lt.prototype.checkTokenStatus=function(e){return Qi.checkArgument(typeof e=="string","Token ID must be string"),this.registry?Uo.checkTokenStatus(this.registry,e):{found:!1,error:"No registry available"}};lt.prototype.searchTokens=function(e){return this.registry?Uo.searchTokens(this.registry,e):{success:!1,error:"No registry available"}};lt.prototype.getRegistryStats=function(){return this.registry?Uo.getStatistics(this.registry):{error:"No registry available"}};lt.prototype.createLegalValidityProof=function(e,t,r){return bE.prepareLegalValidityProof(e,t,r)};lt.prototype.anchorTokenBatch=function(e,t){return pd.anchorBatch(e,t)};lt.prototype.verifyAnchor=function(e,t){return pd.verifyAnchor(e,t)};lt.prototype.getRightTypes=function(){return Du.getRightTypes()};lt.prototype.getClaimSchemas=function(){return Dv.getSchemas()};lt.prototype.createRegistry=function(e){return this.registry=Uo.createRegistry(e),this.registry};lt.prototype.setRegistry=function(e){Qi.checkArgument(e&&typeof e=="object","Invalid registry"),this.registry=e};lt.create=function(e){return new lt(e)};lt.createRightToken=function(e,t,r){var i=new lt;return i.createRightToken(e,t,r)};lt.validateClaim=function(e,t){return Dv.validate(e,t)};lt.verifyToken=function(e,t){var r=new lt;return r.verifyToken(e,t)};lt.createRegistry=function(e){return Uo.createRegistry(e)};lt.Right=Du;lt.Claim=Dv;lt.Anchor=pd;lt.Proof=bE;lt.Registry=Uo;lt.Obligation=see;CH.exports=lt});var Om=T((phe,DH)=>{"use strict";g();var H=DH.exports;H.deps=H.deps||{};H.deps._=at();H.deps.Buffer=typeof f.Buffer<"u"?f.Buffer:null;var MH=pc();H.deps.bs58={encode:MH.encode,decode:MH.decode};if(typeof window>"u")H.deps.bnjs=qp();else try{H.deps.bnjs=qp()}catch{}H.version="v"+eb();H.versionGuard=function(e){if(e!==void 0){var t=`
98
+ `)};o6.exports=St});var u6=T((ole,s6)=>{"use strict";g();var hv=Ki(),CX=fv(),Ai=Le(),nle=Ke(),ai=Ie(),LX=Vc();function $t(e){return this instanceof $t?(this.options=e||{},this):new $t(e)}$t.createMerkleTree=function(e,t){ai.checkArgument(e&&typeof e=="object","Invalid credential");var r=$t._extractFields(e),i=t||hv.getRandomBuffer(32).toString("hex"),n=r.map(function(a,s){var u=Ai.sha256(f.Buffer.from(i+":"+s+":"+a.path,"utf8")).toString("hex"),c=a.path+":"+JSON.stringify(a.value)+":"+u;return{path:a.path,value:a.value,hash:Ai.sha256(f.Buffer.from(c,"utf8")).toString("hex"),salt:u}}),o=$t._buildMerkleTree(n.map(a=>a.hash));return{salt:i,leaves:n,tree:o,root:o[o.length-1][0]}};$t.generateSelectiveProof=function(e,t,r){ai.checkArgument(e&&typeof e=="object","Invalid credential"),typeof t=="string"&&(t=[t]),ai.checkArgument(Array.isArray(t),"Disclose paths must be array");var i=$t.createMerkleTree(e,r),n=[],o=[];return t.forEach(function(a){var s=i.leaves.find(l=>l.path===a);if(s){n.push(s);var u=i.leaves.findIndex(l=>l.path===a),c=$t._generateMerkleProof(i.tree,u);o.push({path:a,leafIndex:u,proof:c})}}),{type:"SelectiveDisclosureProof",created:new Date().toISOString(),proofPurpose:"selectiveDisclosure",verificationMethod:e.proof?e.proof.verificationMethod:null,credentialRoot:i.root,credentialHash:e.rootHash||CX._hashCredential(e).toString("hex"),disclosedFields:n.map(function(a){return{path:a.path,value:a.value,hash:a.hash,salt:a.salt}}),merkleProofs:o}};$t.verifySelectiveProof=function(e,t){try{ai.checkArgument(e&&typeof e=="object","Invalid proof"),ai.checkArgument(typeof t=="string","Expected root must be string");for(var r={valid:!1,errors:[],verifiedFields:[]},i=0;i<e.disclosedFields.length;i++){var n=e.disclosedFields[i],o=e.merkleProofs.find(c=>c.path===n.path);if(!o){r.errors.push("Missing Merkle proof for field: "+n.path);continue}if(typeof n.salt!="string"||!n.salt){r.errors.push("Missing per-field salt for: "+n.path);continue}var a=n.path+":"+JSON.stringify(n.value)+":"+n.salt,s=Ai.sha256(f.Buffer.from(a,"utf8")).toString("hex");if(s!==n.hash){r.errors.push("Field hash mismatch for: "+n.path);continue}var u=$t._verifyMerkleProof(n.hash,o.proof,t);if(!u){r.errors.push("Invalid Merkle proof for: "+n.path);continue}r.verifiedFields.push({path:n.path,value:n.value,verified:!0})}return r.valid=r.errors.length===0&&r.verifiedFields.length>0,r}catch(c){return{valid:!1,errors:["Proof verification failed: "+c.message],verifiedFields:[]}}};$t.generateAgeProof=function(e,t,r){ai.checkArgument(e instanceof Date,"Birth date must be Date object"),ai.checkArgument(typeof t=="number","Minimum age must be number"),r=r||hv.getRandomBuffer(32).toString("hex");var i=new Date,n=Math.floor((i-e)/(365.25*24*60*60*1e3));if(n<t)throw new Error("Age requirement not met");var o=e.toISOString().split("T")[0],a=Ai.sha256(f.Buffer.from(o+":"+r,"utf8")).toString("hex"),s={minimumAge:t,ageAttestation:n>=t,timestamp:i.toISOString(),salt:r},u=Ai.sha256(f.Buffer.from(JSON.stringify(s),"utf8")).toString("hex");return{type:"AgeProof",created:new Date().toISOString(),proofPurpose:"ageVerification",minimumAge:t,meetsRequirement:!0,birthDateCommitment:a,ageProofHash:u,challengeResponse:$t._generateAgeChallenge(e,t,r),opening:{birthDate:o,salt:r}}};$t.verifyAgeProof=function(e,t,r){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),ai.checkArgument(typeof t=="number","Required age must be number"),e.type!=="AgeProof"||e.minimumAge!==t||!r||typeof r!="object")return!1;var i=r.birthDate;if(typeof i=="string"&&(i=new Date(i)),!(i instanceof Date)||isNaN(i.getTime())||typeof r.salt!="string")return!1;var n=i.toISOString().split("T")[0],o=Ai.sha256(f.Buffer.from(n+":"+r.salt,"utf8")).toString("hex");if(o!==e.birthDateCommitment)return!1;var a=Math.floor((Date.now()-i.getTime())/(365.25*24*60*60*1e3));return a>=t}catch{return!1}};$t.generateRangeProof=function(e,t,r,i){ai.checkArgument(typeof e=="number","Value must be number"),ai.checkArgument(typeof t=="number","Min must be number"),ai.checkArgument(typeof r=="number","Max must be number"),ai.checkArgument(e>=t&&e<=r,"Value not in range"),i=i||hv.getRandomBuffer(32).toString("hex");var n=Ai.sha256(f.Buffer.from(e.toString()+":"+i,"utf8")).toString("hex"),o={min:t,max:r,inRange:!0,timestamp:new Date().toISOString(),salt:i},a=Ai.sha256(f.Buffer.from(JSON.stringify(o),"utf8")).toString("hex");return{type:"RangeProof",created:new Date().toISOString(),proofPurpose:"rangeVerification",range:{min:t,max:r},valueCommitment:n,proofHash:a,inRange:!0,opening:{value:e,salt:i}}};$t.verifyRangeProof=function(e,t,r,i){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),e.type!=="RangeProof"||!e.range||e.range.min!==t||e.range.max!==r||!i||typeof i!="object"||typeof i.value!="number"||typeof i.salt!="string")return!1;var n=Ai.sha256(f.Buffer.from(i.value.toString()+":"+i.salt,"utf8")).toString("hex");return n!==e.valueCommitment?!1:i.value>=t&&i.value<=r}catch{return!1}};$t._extractFields=function(e,t){t=t||"";var r=[];return Object.keys(e).forEach(function(i){var n=t?t+"."+i:i,o=e[i];o&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)?r=r.concat($t._extractFields(o,n)):r.push({path:n,value:o})}),r};$t._buildMerkleTree=function(e){if(e.length===0)throw new Error("Cannot build tree from empty leaves");for(var t=[e];t[t.length-1].length>1;){for(var r=t[t.length-1],i=[],n=0;n<r.length;n+=2){var o=r[n],a=n+1<r.length?r[n+1]:o,s=o+a,u=Ai.sha256(f.Buffer.from(s,"hex")).toString("hex");i.push(u)}t.push(i)}return t};$t._generateMerkleProof=function(e,t){for(var r=[],i=t,n=0;n<e.length-1;n++){var o=e[n],a=i%2===0,s=a?i+1:i-1;s<o.length&&r.push({hash:o[s],isLeft:!a}),i=Math.floor(i/2)}return r};$t._verifyMerkleProof=function(e,t,r){for(var i=e,n=0;n<t.length;n++){var o=t[n],a=o.isLeft?o.hash+i:i+o.hash;i=Ai.sha256(f.Buffer.from(a,"hex")).toString("hex")}return i===r};$t._generateAgeChallenge=function(e,t,r){var i=Ai.sha256(f.Buffer.from(e.toISOString()+t+r,"utf8"));return i.toString("hex")};function zh(e,t){var r=t||"value",i=typeof e;if(!(e===null||i==="boolean"||i==="string"))if(i==="number"){if(!isFinite(e))throw new Error(r+" must be a finite number")}else if(Array.isArray(e))for(var n=0;n<e.length;n++){if(e[n]===void 0)throw new Error(r+"["+n+"] is undefined");zh(e[n],r+"["+n+"]")}else if(i==="object"){if(Object.getPrototypeOf(e)!==Object.prototype&&Object.getPrototypeOf(e)!==null)throw new Error(r+" must be a plain object");for(var o=Object.keys(e),a=0;a<o.length;a++){if(e[o[a]]===void 0)throw new Error(r+"."+o[a]+" is undefined");zh(e[o[a]],r+"."+o[a])}}else throw new Error(r+" is not a permitted type: "+i);return LX.stringify(e)}$t.generateMembershipProof=function(e,t,r){ai.checkArgument(Array.isArray(e),"Set must be array");var i=e.map(function(s,u){return zh(s,"set["+u+"]")}),n=zh(t);ai.checkArgument(i.indexOf(n)!==-1,"Value not in set"),r=r||hv.getRandomBuffer(32).toString("hex");var o=i.map(function(s){return Ai.sha256(f.Buffer.from(s+":"+r,"utf8")).toString("hex")}),a=Ai.sha256(f.Buffer.from(n+":"+r,"utf8")).toString("hex");return{type:"MembershipProof",created:new Date().toISOString(),proofPurpose:"membershipVerification",setCommitments:o,valueCommitment:a,isMember:!0,salt:r}};$t.verifyMembershipProof=function(e,t,r){try{if(ai.checkArgument(e&&typeof e=="object","Invalid proof"),e.type!=="MembershipProof"||!Array.isArray(e.setCommitments)||!Array.isArray(r)||r.length===0||!t||typeof t!="object"||typeof t.salt!="string"||!("value"in t))return!1;var i=function(a,s){return Ai.sha256(f.Buffer.from(zh(a,s)+":"+t.salt,"utf8")).toString("hex")},n=r.map(function(a,s){return i(a,"set["+s+"]")});if(n.length!==e.setCommitments.length)return!1;for(var o=0;o<n.length;o++)if(n[o]!==e.setCommitments[o])return!1;return i(t.value,"opening.value")!==e.valueCommitment?!1:n.indexOf(e.valueCommitment)!==-1}catch{return!1}};s6.exports=$t});var p6=T((ule,d6)=>{"use strict";g();var MX=vh(),DX=mw(),CS=zt(),HX=ut(),Kh=ei(),sle=Ni(),Vh=Le(),c6=mm(),bs=Ie();function Lr(e,t){return this instanceof Lr?(typeof e=="string"&&(e=Kh.fromWIF(e)),e!==null?(bs.checkArgument(e instanceof Kh,"Invalid private key"),this.privateKey=e,this.address=e.toAddress()):(this.privateKey=null,this.address=null),this.options=t||{},this.network=this.options.network||"mainnet",this.PROTOCOL_ID="SMARTLEDGER.ATTEST",this.VERSION=1,this):new Lr(e,t)}Lr.prototype.anchorCredential=async function(e,t,r){t=t||{},typeof e=="string"&&(e=f.Buffer.from(e,"hex")),bs.checkArgument(f.Buffer.isBuffer(e),"Invalid credential hash"),bs.checkArgument(e.length===32,"Hash must be 32 bytes");var i=this._createAnchorPayload("CREDENTIAL",e,t),n=await this._createAnchorTransaction(i,r);return{txid:n.hash,transaction:n,anchorHash:e.toString("hex"),metadata:t,timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"CREDENTIAL"}}};Lr.prototype.anchorBatch=async function(e,t,r){t=t||{},bs.checkArgument(Array.isArray(e),"Credential hashes must be array"),bs.checkArgument(e.length>0,"Must provide at least one hash");var i=this._createMerkleRoot(e),n=this._createAnchorPayload("BATCH",i,{...t,batchSize:e.length,merkleRoot:i.toString("hex")}),o=await this._createAnchorTransaction(n,r);return{txid:o.hash,transaction:o,merkleRoot:i.toString("hex"),batchSize:e.length,credentialHashes:e.map(a=>f.Buffer.isBuffer(a)?a.toString("hex"):a),metadata:t,timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"BATCH"}}};Lr.prototype.registerDID=async function(e,t,r){bs.checkArgument(typeof e=="string","DID must be string"),bs.checkArgument(t&&typeof t=="object","Invalid DID document");var i=Vh.sha256(f.Buffer.from(JSON.stringify(t),"utf8")),n=this._createAnchorPayload("DID_REG",i,{did:e,operation:"create",documentHash:i.toString("hex")}),o=await this._createAnchorTransaction(n,r);return{txid:o.hash,transaction:o,did:e,documentHash:i.toString("hex"),timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"DID_REG"}}};Lr.prototype.revokeCredential=async function(e,t,r){bs.checkArgument(typeof e=="string","Credential ID must be string"),t=t||"unspecified";var i={credentialId:e,reason:t,timestamp:new Date().toISOString(),issuer:this.address.toString()},n=Vh.sha256(f.Buffer.from(JSON.stringify(i),"utf8")),o=this._createAnchorPayload("REVOKE",n,{credentialId:e,reason:t}),a=await this._createAnchorTransaction(o,r);return{txid:a.hash,transaction:a,credentialId:e,reason:t,revocationHash:n.toString("hex"),timestamp:new Date().toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"REVOKE"}}};var qX=["bn","privateKey","privkey","privKey","wif","privateJwk","xpriv","xprv","mnemonic"],UX=["d","seed","secret","key"];function f6(e){if(typeof e!="string"||e.length<50||e.length>53)return!1;try{return Kh.fromWIF(e),!0}catch{return!1}}function l6(e){if(typeof e!="string"||!/^(xprv|tprv)/.test(e))return!1;try{return MX.fromString(e),!0}catch{return!1}}function h6(e){if(typeof e!="string")return!1;var t=e.trim().split(/\s+/);if([12,15,18,21,24].indexOf(t.length)===-1)return!1;try{return DX.isValid(e.trim())}catch{return!1}}function FX(e){if(typeof e!="string"||!/^[0-9a-fA-F]{64}$/.test(e))return!1;try{return Kh.fromHex(e),!0}catch{return!1}}function jX(e){return f6(e)||l6(e)||h6(e)}function zX(e,t){var r=[];if(t&&typeof t.toWIF=="function")try{r=[t.toWIF(),t.toString(),t.bn&&t.bn.toString(16)].filter(function(a){return typeof a=="string"&&a.length}).map(function(a){return a.toLowerCase()})}catch{r=[]}function i(a,s){throw new Error("Refusing to anchor: "+(a||"metadata")+" "+s+", and anchor metadata is published in the OP_RETURN where it is permanent and public.")}function n(a,s){r.length&&r.indexOf(a.toLowerCase())!==-1&&i(s,"is this anchor's own private key"),f6(a)&&i(s,"is a WIF private key"),l6(a)&&i(s,"is an extended private key"),h6(a)&&i(s,"is a BIP39 mnemonic phrase")}function o(a,s,u){if(typeof a=="string"){n(a,s);return}if(!(!a||typeof a!="object"||u>6)){if(typeof a.toWIF=="function"&&a.bn&&i(s,"is a PrivateKey"),Array.isArray(a)){a.forEach(function(c,l){o(c,(s||"metadata")+"["+l+"]",u+1)});return}Object.keys(a).forEach(function(c){var l=a[c],p=s?s+"."+c:c;if(l!=null&&typeof l!="object"){var d=String(l);qX.indexOf(c)!==-1&&i(p,"is a field that holds key material"),UX.indexOf(c)!==-1&&(jX(d)||FX(d))&&i(p,"holds something that decodes as a private key")}o(l,p,u+1)})}}o(e,"",0)}Lr.prototype._createAnchorPayload=function(e,t,r){var i=Math.floor(Date.now()/1e3);zX(r,this.privateKey);var n=f.Buffer.concat([f.Buffer.from(this.PROTOCOL_ID,"utf8"),f.Buffer.from([this.VERSION]),f.Buffer.from(e.padEnd(10,"\0"),"utf8"),f.Buffer.from([i>>24,i>>16,i>>8,i]),t,f.Buffer.from(JSON.stringify(r),"utf8")]);return n};Lr.prototype._createAnchorTransaction=async function(e,t){if(!t||t.length===0)throw new Error("UTXOs required for anchor transaction");var r=200+e.length,i=this.options.feeRate||1,n=r*i,o=t.reduce((c,l)=>c+l.satoshis,0);if(o<n)throw new Error("Insufficient funds for anchor transaction");var a=new CS;t.forEach(c=>{a.from(c)});var s=HX.buildDataOut(e);a.addOutput(new CS.Output({script:s,satoshis:0}));var u=o-n;return u>546&&a.to(this.address,u),a.sign(this.privateKey),a};Lr.prototype._createMerkleRoot=function(e){if(e.length===0)throw new Error("Cannot create Merkle root from empty array");for(var t=e.map(u=>f.Buffer.isBuffer(u)?u:f.Buffer.from(u,"hex"));t.length>1;){for(var r=[],i=0;i<t.length;i+=2){var n=t[i],o=i+1<t.length?t[i+1]:n,a=f.Buffer.concat([n,o]),s=Vh.sha256(a);r.push(s)}t=r}return t[0]};Lr.parseAnchorData=function(e){if(!f.Buffer.isBuffer(e))throw new Error("Data must be Buffer");if(e.length<50)throw new Error("Data too short for SmartLedger anchor");var t=0,r=18,i=e.slice(t,t+r).toString("utf8");if(t+=r,i!=="SMARTLEDGER.ATTEST")throw new Error("Invalid protocol identifier");var n=e[t];t+=1;var o=e.slice(t,t+10).toString("utf8").replace(/\0/g,"");t+=10;var a=e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3];t+=4;var s=e.slice(t,t+32);t+=32;var u=e.slice(t),c={};try{c=JSON.parse(u.toString("utf8"))}catch{}return{protocol:i,version:n,type:o,timestamp:new Date(a*1e3),hash:s.toString("hex"),metadata:c}};Lr.verifyAnchor=async function(e,t,r){if(r=r||{},!e||!t)throw new Error("verifyAnchor requires both txid and expectedHash");if(r.spvProof&&(r.header||r.headerChain)&&r.rawTx)return Lr._verifyAnchorSPV(e,t,r);if(typeof r.chainProvider!="function")throw new Error("verifyAnchor needs either a trustless SPV proof \u2014 { spvProof: { index, nodes }, header, rawTx } \u2014 or a trusted options.chainProvider(txid) returning { confirmations, blockHeight, opReturns }. Refusing to fabricate a result.");var i=r.minConfirmations!=null?r.minConfirmations:1,n=await r.chainProvider(e),o=n&&n.confirmations||0,a=n&&n.opReturns||[],s=String(t).toLowerCase(),u=a.some(function(l){return String(l).toLowerCase().indexOf(s)!==-1}),c=o>=i&&u;return{verified:c,txid:e,hash:t,committed:u,confirmations:o,blockHeight:n&&n.blockHeight||null,timestamp:new Date().toISOString(),proof:{type:"blockchain_anchor",protocol:"SMARTLEDGER.ATTEST",network:r.network||"mainnet"}}};Lr._verifyAnchorSPV=function(e,t,r){var i=r.spvProof||{},n=null,o=r.header;r.headerChain&&(n=c6.verifyHeaderChain(r.headerChain,{requirePow:r.requirePow!==!1,powLimit:r.powLimit,trustedHash:r.trustedHash}),o=r.headerChain[0]);var a=c6.verifyTxInclusion({txid:e,index:i.index,nodes:i.nodes,header:o,requirePow:r.requirePow!==!1,powLimit:r.powLimit,minWork:r.minWork}),s=f.Buffer.isBuffer(r.rawTx)?r.rawTx:f.Buffer.from(r.rawTx,"hex"),u=f.Buffer.from(Vh.sha256sha256(s)).reverse().toString("hex"),c=u.toLowerCase()===String(e).toLowerCase(),l=c&&Lr._rawTxCommitsTo(s,t),p=n?n.count:r.header?1:0,d=r.minConfirmations!=null?r.minConfirmations:1,v=n?n.valid:!0,_=p>=d;return{verified:a.valid&&c&&l&&v&&_,chainVerified:a.valid,committed:l,txidBound:c,powValid:a.powValid,confirmations:p,headerChainValid:n?n.valid:null,headerChainReason:n&&n.reason||null,tipHash:n?n.tipHash:null,txid:e,hash:t,blockHash:a.blockHash,merkleRoot:a.merkleRoot,timestamp:new Date().toISOString(),proof:{type:n?"spv_merkle_inclusion_with_confirmations":"spv_merkle_inclusion",protocol:"SMARTLEDGER.ATTEST",network:r.network||"mainnet"}}};Lr._rawTxCommitsTo=function(e,t){var r=String(t).toLowerCase(),i;try{i=new CS(e)}catch{return!1}return i.outputs.some(function(n){var o=n.script;if(!o||!o.chunks||!o.chunks.length)return!1;var a=o.chunks[0].opcodenum===106||o.chunks[0].opcodenum===0&&o.chunks[1]&&o.chunks[1].opcodenum===106;return a?o.chunks.some(function(s){return s.buf&&s.buf.toString("hex").toLowerCase().indexOf(r)!==-1}):!1})};Lr.getCostEstimate=function(e,t){t=t||{};var r=t.feeRate||1,i=200,n=32,o=e*(i+n)*r,a=(i+e*n)*r;return{individual:{totalCost:o,costPerHash:i*r,transactions:e},batch:{totalCost:a,costPerHash:Math.ceil(a/e),transactions:1},savings:{absolute:o-a,percentage:Math.round((o-a)/o*100)}}};Lr.createUTXO=function(e,t,r,i){return{txid:e,outputIndex:t,satoshis:r,script:i}};Lr.generateTestData=function(){var e=new Kh,t=new Lr(e),r=Vh.sha256(f.Buffer.from("test credential data")),i={issuer:"did:smartledger:test",type:"EmailVerifiedCredential",environment:"test"};return{privateKey:e.toWIF(),address:e.toAddress().toString(),credentialHash:r.toString("hex"),metadata:i,anchor:t}};d6.exports=Lr});var m6=T((fle,g6)=>{"use strict";g();var LS=Ie(),Gh={EmailVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/email/v1"],type:["VerifiableCredential","EmailVerifiedCredential"],requiredFields:["credentialSubject.email","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["email","verified"],properties:{email:{type:"string",format:"email"},verified:{type:"boolean"},verificationMethod:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"}}}}},AgeVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/age/v1"],type:["VerifiableCredential","AgeVerifiedCredential"],requiredFields:["credentialSubject.ageOver","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["ageOver","verified"],properties:{ageOver:{type:"number",minimum:0,maximum:150},verified:{type:"boolean"},birthDateHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},verificationMethod:{type:"string"}}}}},KYCVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/kyc/v1"],type:["VerifiableCredential","KYCVerifiedCredential"],requiredFields:["credentialSubject.kycLevel","credentialSubject.verified","credentialSubject.verifyingAuthority"],properties:{credentialSubject:{type:"object",required:["kycLevel","verified","verifyingAuthority"],properties:{kycLevel:{type:"string",enum:["basic","enhanced","premium","institutional"]},verified:{type:"boolean"},verifyingAuthority:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"},firstNameHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},lastNameHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},ssnHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"}}}}},OrganizationCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/organization/v1"],type:["VerifiableCredential","OrganizationCredential"],requiredFields:["credentialSubject.name","credentialSubject.type","credentialSubject.verified"],properties:{credentialSubject:{type:"object",required:["name","type","verified"],properties:{name:{type:"string"},type:{type:"string",enum:["Corporation","LLC","Partnership","NGO","Government","Other"]},verified:{type:"boolean"},taxIdHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},incorporationState:{type:"string"},industry:{type:"string"},verificationMethod:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"}}}}},SSNVerifiedCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ssn/v1"],type:["VerifiableCredential","SSNVerifiedCredential"],requiredFields:["credentialSubject.ssnHash","credentialSubject.verified","credentialSubject.verifyingAuthority"],properties:{credentialSubject:{type:"object",required:["ssnHash","verified","verifyingAuthority"],properties:{ssnHash:{type:"string",pattern:"^[a-fA-F0-9]{64}$"},verified:{type:"boolean"},verifyingAuthority:{type:"string"},verificationTimestamp:{type:"string",format:"date-time"},issuingState:{type:"string"}}}}},EducationalCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/education/v1"],type:["VerifiableCredential","EducationalCredential"],requiredFields:["credentialSubject.degree","credentialSubject.institution","credentialSubject.graduationDate"],properties:{credentialSubject:{type:"object",required:["degree","institution","graduationDate"],properties:{degree:{type:"string"},institution:{type:"string"},graduationDate:{type:"string",format:"date"},gpa:{type:"number",minimum:0,maximum:4},major:{type:"string"},honors:{type:"array",items:{type:"string"}}}}}},ProfessionalLicenseCredential:{"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/license/v1"],type:["VerifiableCredential","ProfessionalLicenseCredential"],requiredFields:["credentialSubject.licenseType","credentialSubject.licenseNumber","credentialSubject.issuingAuthority","credentialSubject.isValid"],properties:{credentialSubject:{type:"object",required:["licenseType","licenseNumber","issuingAuthority","isValid"],properties:{licenseType:{type:"string"},licenseNumber:{type:"string"},issuingAuthority:{type:"string"},issuingState:{type:"string"},isValid:{type:"boolean"},issueDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"}}}}}},KX={getSchema:function(e){return Gh[e]||null},getAllSchemas:function(){return Gh},validate:function(e,t){try{LS.checkArgument(e&&typeof e=="object","Invalid credential");var r;if(typeof t=="string"){if(r=Gh[t],!r)return{valid:!1,errors:["Unknown schema type: "+t]}}else if(typeof t=="object")r=t;else return{valid:!1,errors:["Invalid schema parameter"]};var i=[],n=[];return this._validateCredentialStructure(e,i),this._validateCredentialTypes(e,r,i),this._validateRequiredFields(e,r,i),this._validateFieldProperties(e,r,i,n),{valid:i.length===0,errors:i,warnings:n}}catch(o){return{valid:!1,errors:["Schema validation error: "+o.message]}}},_validateCredentialStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.type||t.push("Missing type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject")},_validateCredentialTypes:function(e,t,r){if(!Array.isArray(e.type)){r.push("Credential type must be array");return}if(t.type&&Array.isArray(t.type))for(var i=0;i<t.type.length;i++)e.type.includes(t.type[i])||r.push("Missing required type: "+t.type[i])},_validateRequiredFields:function(e,t,r){if(t.requiredFields&&Array.isArray(t.requiredFields))for(var i=0;i<t.requiredFields.length;i++){var n=t.requiredFields[i],o=this._getNestedProperty(e,n);o==null&&r.push("Missing required field: "+n)}},_validateFieldProperties:function(e,t,r,i){t.properties&&t.properties.credentialSubject&&this._validateObjectProperties(e.credentialSubject,t.properties.credentialSubject,"credentialSubject",r,i)},_validateObjectProperties:function(e,t,r,i,n){!e||typeof e!="object"||t.properties&&Object.keys(t.properties).forEach(function(o){var a=e[o],s=t.properties[o],u=r+"."+o;a!=null&&this._validateProperty(a,s,u,i,n)}.bind(this))},_validateProperty:function(e,t,r,i,n){if(t.type){var o=Array.isArray(e)?"array":typeof e;if(o!==t.type){i.push("Invalid type for "+r+": expected "+t.type+", got "+o);return}}if(t.type==="string"&&(t.format==="email"&&!this._isValidEmail(e)&&i.push("Invalid email format for "+r),t.format==="date"&&!this._isValidDate(e)&&i.push("Invalid date format for "+r),t.format==="date-time"&&!this._isValidDateTime(e)&&i.push("Invalid date-time format for "+r),t.pattern&&!new RegExp(t.pattern).test(e)&&i.push("Value does not match pattern for "+r),t.enum&&!t.enum.includes(e)&&i.push("Invalid enum value for "+r+": "+e)),t.type==="number"&&(t.minimum!==void 0&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),t.maximum!==void 0&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum)),t.type==="array"&&t.items)for(var a=0;a<e.length;a++)this._validateProperty(e[a],t.items,r+"["+a+"]",i,n)},_getNestedProperty:function(e,t){return t.split(".").reduce(function(r,i){return r&&r[i]},e)},_isValidEmail:function(e){var t=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;return t.test(e)},_isValidDate:function(e){var t=new Date(e);return!isNaN(t.getTime())&&e.match(/^\d{4}-\d{2}-\d{2}$/)},_isValidDateTime:function(e){var t=new Date(e);return!isNaN(t.getTime())},addSchema:function(e,t){LS.checkArgument(typeof e=="string","Schema name must be string"),LS.checkArgument(t&&typeof t=="object","Invalid schema definition"),Gh[e]=t},createTemplate:function(e){var t=Gh[e];if(!t)throw new Error("Unknown credential type: "+e);var r={"@context":t["@context"]||["https://www.w3.org/2018/credentials/v1"],type:t.type||["VerifiableCredential"],issuer:"did:smartledger:ISSUER_DID_HERE",issuanceDate:new Date().toISOString(),credentialSubject:this._createSubjectTemplate(t.properties?t.properties.credentialSubject:{})};return r},_createSubjectTemplate:function(e){var t={id:"SUBJECT_ID_HERE"};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];t[r]=this._getDefaultValue(i)}.bind(this)),t},_getDefaultValue:function(e){switch(e.type){case"string":return e.enum?e.enum[0]:e.format==="email"?"example@example.com":e.format==="date"?"2023-01-01":e.format==="date-time"?new Date().toISOString():"PLACEHOLDER_STRING";case"number":return e.minimum||0;case"boolean":return!0;case"array":return[];case"object":return{};default:return null}}};g6.exports=KX});var y6=T((hle,v6)=>{"use strict";g();var VX=cv(),Of=fv(),GX=a6(),WX=u6(),Wh=p6(),YX=m6();function tt(e){if(!(this instanceof tt))return new tt(e);e=e||{},this.didResolver=VX,this.attestationVerifier=GX,this.zkProver=WX,this.schemaValidator=YX,this._attestationSignerOptions=e.attestationSigner||{},this._anchorOptions=e.anchor||{}}tt.prototype.createDID=function(e){return this.didResolver.fromPublicKey(e)};tt.prototype.resolveDID=function(e){return this.didResolver.resolve(e)};tt.prototype.verifyDIDOwnership=function(e,t){return this.didResolver.verifyOwnership(e,t)};tt.prototype.createEmailCredential=function(e,t,r,i){var n=new Of(i,this._attestationSignerOptions);return n.createEmailCredential(r,{issuerDID:e,subjectId:t})};tt.prototype.createAgeCredential=function(e,t,r,i,n){var o=new Of(n,this._attestationSignerOptions);return o.createAgeCredential(r,i,{issuerDID:e,subjectId:t})};tt.prototype.createKYCCredential=function(e,t,r,i,n){var o=new Of(n,this._attestationSignerOptions),a=Object.assign({level:r},i);return o.createKYCCredential(a,{issuerDID:e,subjectId:t})};tt.prototype.createOrganizationCredential=function(e,t,r,i){var n=new Of(i,this._attestationSignerOptions);return n.createOrganizationCredential(r,{issuerDID:e,subjectId:t})};tt.prototype.createPresentation=function(e,t,r,i){var n=new Of(r,this._attestationSignerOptions);return n.createPresentation(e,t,r,i)};tt.prototype.signCredential=function(e,t){var r=new Of(t,this._attestationSignerOptions);return r.signCredential(e,t)};tt.prototype.verifyCredential=function(e,t){return this.attestationVerifier.verifyCredential(e,t)};tt.prototype.verifyPresentation=function(e,t){return this.attestationVerifier.verifyPresentation(e,t)};tt.prototype.extractClaims=function(e){return this.attestationVerifier.extractClaims(e)};tt.prototype.generateSelectiveProof=function(e,t,r){return this.zkProver.generateSelectiveProof(e,t,r)};tt.prototype.verifySelectiveProof=function(e,t){return this.zkProver.verifySelectiveProof(e,t)};tt.prototype.generateAgeProof=function(e,t,r){var i=new Date("1995-06-15");return this.zkProver.generateAgeProof(i,t,r)};tt.prototype.verifyAgeProof=function(e,t,r){return this.zkProver.verifyAgeProof(e,t,r)};tt.prototype.generateRangeProof=function(e,t,r,i){return this.zkProver.generateRangeProof(e,t,r,i)};tt.prototype.verifyRangeProof=function(e,t,r,i){return this.zkProver.verifyRangeProof(e,t,r,i)};tt.prototype.generateMembershipProof=function(e,t,r){return this.zkProver.generateMembershipProof(e,t,r)};tt.prototype.verifyMembershipProof=function(e,t,r){return this.zkProver.verifyMembershipProof(e,t,r)};function dv(e){return Array.isArray(e)?{metadata:void 0,utxos:e}:(e=e||{},{metadata:e.metadata,utxos:e.utxos})}tt.prototype.anchorCredential=function(e,t,r){var i=new Wh(t,this._anchorOptions),n=dv(r);return i.anchorCredential(e,n.metadata,n.utxos)};tt.prototype.anchorBatch=function(e,t,r){var i=new Wh(t,this._anchorOptions),n=dv(r);return i.anchorBatch(e,n.metadata,n.utxos)};tt.prototype.registerDID=function(e,t,r,i){var n=new Wh(r,this._anchorOptions);return n.registerDID(e,t,dv(i).utxos)};tt.prototype.revokeCredential=function(e,t,r,i){var n=new Wh(r,this._anchorOptions);return n.revokeCredential(e,t,dv(i).utxos)};tt.prototype.queryAnchoredData=function(e){var t=new Wh(null,this._anchorOptions);return t.queryAnchoredData(e)};tt.prototype.validateCredential=function(e,t){return this.schemaValidator.validate(e,t)};tt.prototype.getSchema=function(e){return this.schemaValidator.getSchema(e)};tt.prototype.getAllSchemas=function(){return this.schemaValidator.getAllSchemas()};tt.prototype.addSchema=function(e,t){return this.schemaValidator.addSchema(e,t)};tt.prototype.createTemplate=function(e){return this.schemaValidator.createTemplate(e)};tt.prototype.generateNonce=function(e){e=e||32;var t=nr();return t.randomBytes(e).toString("hex")};tt.prototype.hashData=function(e,t){var r=nr(),i=r.createHash("sha256");return i.update(e),t&&i.update(t),i.digest("hex")};tt.prototype.getVersion=function(){return"1.0.0"};tt.prototype.getInfo=function(){return{name:"SmartLedger BSV Global Digital Attestation Framework",version:this.getVersion(),description:"W3C-compliant verifiable credentials with DID resolution, zero-knowledge proofs, and blockchain anchoring",components:{didResolver:"DID Resolution and Management",attestationSigner:"Verifiable Credential Creation",attestationVerifier:"Credential and Presentation Verification",zkProver:"Zero-Knowledge Proof Generation and Verification",anchor:"Blockchain Anchoring and Timestamping",schemaValidator:"W3C VC Schema Validation"},standards:["W3C Verifiable Credentials Data Model v1.1","W3C Decentralized Identifiers (DIDs) v1.0","RFC 7515 JSON Web Signature (JWS)","BSV Blockchain Protocol"]}};v6.exports=tt});var _6=T((ple,b6)=>{"use strict";g();var pv=nr();async function ZX(e){e=e||{};var t=e.alg||"ES256",r=e.kid||"key-"+Date.now();if(t!=="ES256"&&t!=="ES256K")throw new Error("Invalid algorithm. Must be ES256 or ES256K");var i;t==="ES256"?i=pv.generateKeyPairSync("ec",{namedCurve:"P-256",publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}}):i=pv.generateKeyPairSync("ec",{namedCurve:"secp256k1",publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});var n=pv.createPublicKey(i.publicKey).export({format:"jwk"}),o=pv.createPrivateKey(i.privateKey).export({format:"jwk"});return n.kid=r,n.alg=t,n.use="sig",n.kty="EC",o.kid=r,o.alg=t,o.use="sig",o.kty="EC",{privateJwk:o,publicJwk:n,kid:r,alg:t}}var Yh=["authentication","assertionMethod","keyAgreement","capabilityInvocation","capabilityDelegation"],$X=["authentication","assertionMethod"];function MS(e){var t=e.relationships||$X;if(!Array.isArray(t)||t.length===0)throw new Error("relationships must be a non-empty array of DID Core verification relationships");return t.forEach(function(r){if(Yh.indexOf(r)===-1)throw new Error("unknown verification relationship: "+r+" (expected one of "+Yh.join(", ")+")")}),t}function XX(e){if(!e.domain)throw new Error("domain is required");var t=e.domain,r="did:web:"+t.replace(/:/g,"%3A"),i=[],n=[],o=[];if(e.p256){var a={id:r+"#"+e.p256.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.p256.jwk};i.push(a),n.push(MS(e.p256)),o.push(e.p256.jwk)}if(e.k1){var s={id:r+"#"+e.k1.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.k1.jwk};i.push(s),n.push(MS(e.k1)),o.push(e.k1.jwk)}if(i.length===0)throw new Error("At least one key (p256 or k1) must be provided");var u={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/jws-2020/v1"],id:r,verificationMethod:i};Yh.forEach(function(l){var p=i.filter(function(d,v){return n[v].indexOf(l)!==-1}).map(function(d){return d.id});p.length&&(u[l]=p)}),e.controllerName&&(u.controller=e.controllerName);var c={keys:o};return{did:r,didDocument:u,jwks:c}}function JX(e){if(!e.domain||!e.newKey)throw new Error("domain and newKey are required");var t=e.domain,r="did:web:"+t.replace(/:/g,"%3A"),i=e.keepOldForDays||30,n={id:r+"#"+e.newKey.kid,type:"JsonWebKey2020",controller:r,publicKeyJwk:e.newKey.jwk},o=MS(e.newKey),a=e.currentDocument||null,s={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/jws-2020/v1"],id:r,verificationMethod:[n]};if(Yh.forEach(function(l){o.indexOf(l)!==-1?s[l]=[n.id]:a&&Array.isArray(a[l])&&a[l].length&&(s[l]=a[l].slice())}),a&&Array.isArray(a.verificationMethod)){var u={};Yh.forEach(function(l){(s[l]||[]).forEach(function(p){u[p]=!0})}),a.verificationMethod.forEach(function(l){u[l.id]&&l.id!==n.id&&s.verificationMethod.push(l)})}s.rotationInfo={rotatedAt:new Date().toISOString(),gracePeriodDays:i};var c={keys:[e.newKey.jwk]};return{didDocument:s,jwks:c}}b6.exports={generateIssuerKeys:ZX,buildDidWebDocuments:XX,rotateIssuerKey:JX}});var DS=T((mle,w6)=>{"use strict";g();var Zh=nr(),$h={ES256:"P-256",ES256K:"secp256k1"},QX=["ES256","ES256K"];function gv(e){return e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function mv(e){for(e=e.replace(/-/g,"+").replace(/_/g,"/");e.length%4;)e+="=";return f.Buffer.from(e,"base64")}async function eJ(e){if(!e.issuerDid||!e.subjectId||!e.credentialSubject||!e.privateJwk)throw new Error("issuerDid, subjectId, credentialSubject, and privateJwk are required");var t=e.alg||"ES256";if(!$h[t])throw new Error("Unsupported algorithm: "+t);if(e.privateJwk.crv&&e.privateJwk.crv!==$h[t])throw new Error("Key curve "+e.privateJwk.crv+" does not match alg "+t);var r=e.kid||e.privateJwk.kid,i=e.types||["VerifiableCredential"],n=e.expSeconds||365*24*60*60,o=Math.floor(Date.now()/1e3),a=new Date().toISOString(),s={"@context":["https://www.w3.org/2018/credentials/v1"],type:i,issuer:e.issuerDid,issuanceDate:a,credentialSubject:Object.assign({id:e.subjectId},e.credentialSubject)},u={iss:e.issuerDid,sub:e.subjectId,iat:o,exp:o+n,vc:s},c={alg:t,typ:"JWT",kid:r},l=gv(f.Buffer.from(JSON.stringify(c))),p=gv(f.Buffer.from(JSON.stringify(u))),d=l+"."+p,v=Zh.createPrivateKey({key:e.privateJwk,format:"jwk"}),_=Zh.sign("sha256",f.Buffer.from(d),{key:v,dsaEncoding:"ieee-p1363"}),I=gv(_),R=d+"."+I;return{jwt:R}}async function tJ(e,t){t=t||{};try{if(typeof e!="string")return{valid:!1,error:"Invalid JWT format"};var r=e.split(".");if(r.length!==3)return{valid:!1,error:"Invalid JWT format"};var i=r[0],n=r[1],o=r[2],a=JSON.parse(mv(i).toString()),s=JSON.parse(mv(n).toString()),u=mv(o),c=t.allowedAlgs||QX;if(!a.alg||c.indexOf(a.alg)===-1||!$h[a.alg])return{valid:!1,error:"Algorithm not allowed: "+a.alg,header:a,payload:s};var l=Math.floor(Date.now()/1e3),p=t.clockToleranceSec||60;if(t.requireExpiration&&!s.exp)return{valid:!1,error:"JWT missing required exp claim",header:a,payload:s};if(s.exp&&s.exp<l-p)return{valid:!1,error:"JWT expired",header:a,payload:s};if(s.nbf&&s.nbf>l+p)return{valid:!1,error:"JWT not yet valid",header:a,payload:s};if(t.expectedIssuerDid&&s.iss!==t.expectedIssuerDid)return{valid:!1,error:"Unexpected issuer",header:a,payload:s};var d;if(t.didResolver){var v=await t.didResolver(s.iss);if(!v||!v.jwks||!v.jwks.keys)return{valid:!1,error:"Failed to resolve issuer DID",header:a,payload:s};var _=v.jwks.keys.find(function(q){return q.kid===a.kid});if(!_)return{valid:!1,error:"Key not found in JWKS",header:a,payload:s};d=_}else return{valid:!1,error:"DID resolver required for verification",header:a,payload:s};if(d.crv&&d.crv!==$h[a.alg])return{valid:!1,error:"Key curve does not match algorithm",header:a,payload:s};var I=i+"."+n,R=Zh.createPublicKey({key:d,format:"jwk"}),k=Zh.verify("sha256",f.Buffer.from(I),{key:R,dsaEncoding:"ieee-p1363"},u);if(!k&&t.allowLegacyDER)try{k=Zh.verify("sha256",f.Buffer.from(I),{key:R,dsaEncoding:"der"},u)}catch{k=!1}return k?{valid:!0,header:a,payload:s}:{valid:!1,error:"Invalid signature",header:a,payload:s}}catch(q){return{valid:!1,error:q.message||"Verification failed"}}}w6.exports={issueVcJwt:eJ,verifyVcJwt:tJ,base64UrlEncode:gv,base64UrlDecode:mv,ALG_TO_CRV:$h}});var E6=T((yle,S6)=>{"use strict";g();function rJ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}S6.exports=rJ});var Xh=T(Ti=>{"use strict";g();var iJ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function nJ(e,t){return Object.prototype.hasOwnProperty.call(e,t)}Ti.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var i in r)nJ(r,i)&&(e[i]=r[i])}}return e};Ti.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var oJ={arraySet:function(e,t,r,i,n){if(t.subarray&&e.subarray){e.set(t.subarray(r,r+i),n);return}for(var o=0;o<i;o++)e[n+o]=t[r+o]},flattenChunks:function(e){var t,r,i,n,o,a;for(i=0,t=0,r=e.length;t<r;t++)i+=e[t].length;for(a=new Uint8Array(i),n=0,t=0,r=e.length;t<r;t++)o=e[t],a.set(o,n),n+=o.length;return a}},aJ={arraySet:function(e,t,r,i,n){for(var o=0;o<i;o++)e[n+o]=t[r+o]},flattenChunks:function(e){return[].concat.apply([],e)}};Ti.setTyped=function(e){e?(Ti.Buf8=Uint8Array,Ti.Buf16=Uint16Array,Ti.Buf32=Int32Array,Ti.assign(Ti,oJ)):(Ti.Buf8=Array,Ti.Buf16=Array,Ti.Buf32=Array,Ti.assign(Ti,aJ))};Ti.setTyped(iJ)});var G6=T(Tf=>{"use strict";g();var sJ=Xh(),uJ=4,x6=0,O6=1,cJ=2;function Af(e){for(var t=e.length;--t>=0;)e[t]=0}var fJ=0,k6=1,lJ=2,hJ=3,dJ=258,KS=29,id=256,Qh=id+1+KS,If=30,VS=19,B6=2*Qh+1,_u=15,HS=16,pJ=7,GS=256,N6=16,C6=17,L6=18,jS=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],vv=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],gJ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],M6=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],mJ=512,Aa=new Array((Qh+2)*2);Af(Aa);var Jh=new Array(If*2);Af(Jh);var ed=new Array(mJ);Af(ed);var td=new Array(dJ-hJ+1);Af(td);var WS=new Array(KS);Af(WS);var yv=new Array(If);Af(yv);function qS(e,t,r,i,n){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=i,this.max_length=n,this.has_stree=e&&e.length}var D6,H6,q6;function US(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function U6(e){return e<256?ed[e]:ed[256+(e>>>7)]}function rd(e,t){e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255}function Ui(e,t,r){e.bi_valid>HS-r?(e.bi_buf|=t<<e.bi_valid&65535,rd(e,e.bi_buf),e.bi_buf=t>>HS-e.bi_valid,e.bi_valid+=r-HS):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function Co(e,t,r){Ui(e,r[t*2],r[t*2+1])}function F6(e,t){var r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1}function vJ(e){e.bi_valid===16?(rd(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)}function yJ(e,t){var r=t.dyn_tree,i=t.max_code,n=t.stat_desc.static_tree,o=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,s=t.stat_desc.extra_base,u=t.stat_desc.max_length,c,l,p,d,v,_,I=0;for(d=0;d<=_u;d++)e.bl_count[d]=0;for(r[e.heap[e.heap_max]*2+1]=0,c=e.heap_max+1;c<B6;c++)l=e.heap[c],d=r[r[l*2+1]*2+1]+1,d>u&&(d=u,I++),r[l*2+1]=d,!(l>i)&&(e.bl_count[d]++,v=0,l>=s&&(v=a[l-s]),_=r[l*2],e.opt_len+=_*(d+v),o&&(e.static_len+=_*(n[l*2+1]+v)));if(I!==0){do{for(d=u-1;e.bl_count[d]===0;)d--;e.bl_count[d]--,e.bl_count[d+1]+=2,e.bl_count[u]--,I-=2}while(I>0);for(d=u;d!==0;d--)for(l=e.bl_count[d];l!==0;)p=e.heap[--c],!(p>i)&&(r[p*2+1]!==d&&(e.opt_len+=(d-r[p*2+1])*r[p*2],r[p*2+1]=d),l--)}}function j6(e,t,r){var i=new Array(_u+1),n=0,o,a;for(o=1;o<=_u;o++)i[o]=n=n+r[o-1]<<1;for(a=0;a<=t;a++){var s=e[a*2+1];s!==0&&(e[a*2]=F6(i[s]++,s))}}function bJ(){var e,t,r,i,n,o=new Array(_u+1);for(r=0,i=0;i<KS-1;i++)for(WS[i]=r,e=0;e<1<<jS[i];e++)td[r++]=i;for(td[r-1]=i,n=0,i=0;i<16;i++)for(yv[i]=n,e=0;e<1<<vv[i];e++)ed[n++]=i;for(n>>=7;i<If;i++)for(yv[i]=n<<7,e=0;e<1<<vv[i]-7;e++)ed[256+n++]=i;for(t=0;t<=_u;t++)o[t]=0;for(e=0;e<=143;)Aa[e*2+1]=8,e++,o[8]++;for(;e<=255;)Aa[e*2+1]=9,e++,o[9]++;for(;e<=279;)Aa[e*2+1]=7,e++,o[7]++;for(;e<=287;)Aa[e*2+1]=8,e++,o[8]++;for(j6(Aa,Qh+1,o),e=0;e<If;e++)Jh[e*2+1]=5,Jh[e*2]=F6(e,5);D6=new qS(Aa,jS,id+1,Qh,_u),H6=new qS(Jh,vv,0,If,_u),q6=new qS(new Array(0),gJ,0,VS,pJ)}function z6(e){var t;for(t=0;t<Qh;t++)e.dyn_ltree[t*2]=0;for(t=0;t<If;t++)e.dyn_dtree[t*2]=0;for(t=0;t<VS;t++)e.bl_tree[t*2]=0;e.dyn_ltree[GS*2]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function K6(e){e.bi_valid>8?rd(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function _J(e,t,r,i){K6(e),i&&(rd(e,r),rd(e,~r)),sJ.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}function I6(e,t,r,i){var n=t*2,o=r*2;return e[n]<e[o]||e[n]===e[o]&&i[t]<=i[r]}function FS(e,t,r){for(var i=e.heap[r],n=r<<1;n<=e.heap_len&&(n<e.heap_len&&I6(t,e.heap[n+1],e.heap[n],e.depth)&&n++,!I6(t,i,e.heap[n],e.depth));)e.heap[r]=e.heap[n],r=n,n<<=1;e.heap[r]=i}function A6(e,t,r){var i,n,o=0,a,s;if(e.last_lit!==0)do i=e.pending_buf[e.d_buf+o*2]<<8|e.pending_buf[e.d_buf+o*2+1],n=e.pending_buf[e.l_buf+o],o++,i===0?Co(e,n,t):(a=td[n],Co(e,a+id+1,t),s=jS[a],s!==0&&(n-=WS[a],Ui(e,n,s)),i--,a=U6(i),Co(e,a,r),s=vv[a],s!==0&&(i-=yv[a],Ui(e,i,s)));while(o<e.last_lit);Co(e,GS,t)}function zS(e,t){var r=t.dyn_tree,i=t.stat_desc.static_tree,n=t.stat_desc.has_stree,o=t.stat_desc.elems,a,s,u=-1,c;for(e.heap_len=0,e.heap_max=B6,a=0;a<o;a++)r[a*2]!==0?(e.heap[++e.heap_len]=u=a,e.depth[a]=0):r[a*2+1]=0;for(;e.heap_len<2;)c=e.heap[++e.heap_len]=u<2?++u:0,r[c*2]=1,e.depth[c]=0,e.opt_len--,n&&(e.static_len-=i[c*2+1]);for(t.max_code=u,a=e.heap_len>>1;a>=1;a--)FS(e,r,a);c=o;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],FS(e,r,1),s=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=s,r[c*2]=r[a*2]+r[s*2],e.depth[c]=(e.depth[a]>=e.depth[s]?e.depth[a]:e.depth[s])+1,r[a*2+1]=r[s*2+1]=c,e.heap[1]=c++,FS(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],yJ(e,t),j6(r,u,e.bl_count)}function T6(e,t,r){var i,n=-1,o,a=t[1],s=0,u=7,c=4;for(a===0&&(u=138,c=3),t[(r+1)*2+1]=65535,i=0;i<=r;i++)o=a,a=t[(i+1)*2+1],!(++s<u&&o===a)&&(s<c?e.bl_tree[o*2]+=s:o!==0?(o!==n&&e.bl_tree[o*2]++,e.bl_tree[N6*2]++):s<=10?e.bl_tree[C6*2]++:e.bl_tree[L6*2]++,s=0,n=o,a===0?(u=138,c=3):o===a?(u=6,c=3):(u=7,c=4))}function P6(e,t,r){var i,n=-1,o,a=t[1],s=0,u=7,c=4;for(a===0&&(u=138,c=3),i=0;i<=r;i++)if(o=a,a=t[(i+1)*2+1],!(++s<u&&o===a)){if(s<c)do Co(e,o,e.bl_tree);while(--s!==0);else o!==0?(o!==n&&(Co(e,o,e.bl_tree),s--),Co(e,N6,e.bl_tree),Ui(e,s-3,2)):s<=10?(Co(e,C6,e.bl_tree),Ui(e,s-3,3)):(Co(e,L6,e.bl_tree),Ui(e,s-11,7));s=0,n=o,a===0?(u=138,c=3):o===a?(u=6,c=3):(u=7,c=4)}}function wJ(e){var t;for(T6(e,e.dyn_ltree,e.l_desc.max_code),T6(e,e.dyn_dtree,e.d_desc.max_code),zS(e,e.bl_desc),t=VS-1;t>=3&&e.bl_tree[M6[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t}function SJ(e,t,r,i){var n;for(Ui(e,t-257,5),Ui(e,r-1,5),Ui(e,i-4,4),n=0;n<i;n++)Ui(e,e.bl_tree[M6[n]*2+1],3);P6(e,e.dyn_ltree,t-1),P6(e,e.dyn_dtree,r-1)}function EJ(e){var t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return x6;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return O6;for(r=32;r<id;r++)if(e.dyn_ltree[r*2]!==0)return O6;return x6}var R6=!1;function xJ(e){R6||(bJ(),R6=!0),e.l_desc=new US(e.dyn_ltree,D6),e.d_desc=new US(e.dyn_dtree,H6),e.bl_desc=new US(e.bl_tree,q6),e.bi_buf=0,e.bi_valid=0,z6(e)}function V6(e,t,r,i){Ui(e,(fJ<<1)+(i?1:0),3),_J(e,t,r,!0)}function OJ(e){Ui(e,k6<<1,3),Co(e,GS,Aa),vJ(e)}function IJ(e,t,r,i){var n,o,a=0;e.level>0?(e.strm.data_type===cJ&&(e.strm.data_type=EJ(e)),zS(e,e.l_desc),zS(e,e.d_desc),a=wJ(e),n=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=n&&(n=o)):n=o=r+5,r+4<=n&&t!==-1?V6(e,t,r,i):e.strategy===uJ||o===n?(Ui(e,(k6<<1)+(i?1:0),3),A6(e,Aa,Jh)):(Ui(e,(lJ<<1)+(i?1:0),3),SJ(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),A6(e,e.dyn_ltree,e.dyn_dtree)),z6(e),i&&K6(e)}function AJ(e,t,r){return e.pending_buf[e.d_buf+e.last_lit*2]=t>>>8&255,e.pending_buf[e.d_buf+e.last_lit*2+1]=t&255,e.pending_buf[e.l_buf+e.last_lit]=r&255,e.last_lit++,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(td[r]+id+1)*2]++,e.dyn_dtree[U6(t)*2]++),e.last_lit===e.lit_bufsize-1}Tf._tr_init=xJ;Tf._tr_stored_block=V6;Tf._tr_flush_block=IJ;Tf._tr_tally=AJ;Tf._tr_align=OJ});var YS=T((xle,W6)=>{"use strict";g();function TJ(e,t,r,i){for(var n=e&65535|0,o=e>>>16&65535|0,a=0;r!==0;){a=r>2e3?2e3:r,r-=a;do n=n+t[i++]|0,o=o+n|0;while(--a);n%=65521,o%=65521}return n|o<<16|0}W6.exports=TJ});var ZS=T((Ile,Y6)=>{"use strict";g();function PJ(){for(var e,t=[],r=0;r<256;r++){e=r;for(var i=0;i<8;i++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t}var RJ=PJ();function kJ(e,t,r,i){var n=RJ,o=i+r;e^=-1;for(var a=i;a<o;a++)e=e>>>8^n[(e^t[a])&255];return e^-1}Y6.exports=kJ});var $6=T((Tle,Z6)=>{"use strict";g();Z6.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var o3=T(Do=>{"use strict";g();var Pi=Xh(),_n=G6(),e3=YS(),_s=ZS(),BJ=$6(),xu=0,NJ=1,CJ=3,Os=4,X6=5,Mo=0,J6=1,wn=-2,LJ=-3,$S=-5,MJ=-1,DJ=1,bv=2,HJ=3,qJ=4,UJ=0,FJ=2,Ev=8,jJ=9,zJ=15,KJ=8,VJ=29,GJ=256,JS=GJ+1+VJ,WJ=30,YJ=19,ZJ=2*JS+1,$J=15,ct=3,Es=258,Vn=Es+ct+1,XJ=32,xv=42,QS=69,_v=73,wv=91,Sv=103,wu=113,od=666,Gr=1,ad=2,Su=3,kf=4,JJ=3;function xs(e,t){return e.msg=BJ[t],t}function Q6(e){return(e<<1)-(e>4?9:0)}function Ss(e){for(var t=e.length;--t>=0;)e[t]=0}function ws(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(Pi.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))}function si(e,t){_n._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ws(e.strm)}function mt(e,t){e.pending_buf[e.pending++]=t}function nd(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255}function QJ(e,t,r,i){var n=e.avail_in;return n>i&&(n=i),n===0?0:(e.avail_in-=n,Pi.arraySet(t,e.input,e.next_in,n,r),e.state.wrap===1?e.adler=e3(e.adler,t,n,r):e.state.wrap===2&&(e.adler=_s(e.adler,t,n,r)),e.next_in+=n,e.total_in+=n,n)}function t3(e,t){var r=e.max_chain_length,i=e.strstart,n,o,a=e.prev_length,s=e.nice_match,u=e.strstart>e.w_size-Vn?e.strstart-(e.w_size-Vn):0,c=e.window,l=e.w_mask,p=e.prev,d=e.strstart+Es,v=c[i+a-1],_=c[i+a];e.prev_length>=e.good_match&&(r>>=2),s>e.lookahead&&(s=e.lookahead);do if(n=t,!(c[n+a]!==_||c[n+a-1]!==v||c[n]!==c[i]||c[++n]!==c[i+1])){i+=2,n++;do;while(c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&i<d);if(o=Es-(d-i),i=d-Es,o>a){if(e.match_start=t,a=o,o>=s)break;v=c[i+a-1],_=c[i+a]}}while((t=p[t&l])>u&&--r!==0);return a<=e.lookahead?a:e.lookahead}function Eu(e){var t=e.w_size,r,i,n,o,a;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Vn)){Pi.arraySet(e.window,e.window,t,t,0),e.match_start-=t,e.strstart-=t,e.block_start-=t,i=e.hash_size,r=i;do n=e.head[--r],e.head[r]=n>=t?n-t:0;while(--i);i=t,r=i;do n=e.prev[--r],e.prev[r]=n>=t?n-t:0;while(--i);o+=t}if(e.strm.avail_in===0)break;if(i=QJ(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=i,e.lookahead+e.insert>=ct)for(a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+ct-1])&e.hash_mask,e.prev[a&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=a,a++,e.insert--,!(e.lookahead+e.insert<ct)););}while(e.lookahead<Vn&&e.strm.avail_in!==0)}function eQ(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(Eu(e),e.lookahead===0&&t===xu)return Gr;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var i=e.block_start+r;if((e.strstart===0||e.strstart>=i)&&(e.lookahead=e.strstart-i,e.strstart=i,si(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-Vn&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):(e.strstart>e.block_start&&(si(e,!1),e.strm.avail_out===0),Gr)}function XS(e,t){for(var r,i;;){if(e.lookahead<Vn){if(Eu(e),e.lookahead<Vn&&t===xu)return Gr;if(e.lookahead===0)break}if(r=0,e.lookahead>=ct&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-Vn&&(e.match_length=t3(e,r)),e.match_length>=ct)if(i=_n._tr_tally(e,e.strstart-e.match_start,e.match_length-ct),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=ct){e.match_length--;do e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else i=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(i&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=e.strstart<ct-1?e.strstart:ct-1,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function Pf(e,t){for(var r,i,n;;){if(e.lookahead<Vn){if(Eu(e),e.lookahead<Vn&&t===xu)return Gr;if(e.lookahead===0)break}if(r=0,e.lookahead>=ct&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=ct-1,r!==0&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-Vn&&(e.match_length=t3(e,r),e.match_length<=5&&(e.strategy===DJ||e.match_length===ct&&e.strstart-e.match_start>4096)&&(e.match_length=ct-1)),e.prev_length>=ct&&e.match_length<=e.prev_length){n=e.strstart+e.lookahead-ct,i=_n._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-ct),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=n&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+ct-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=ct-1,e.strstart++,i&&(si(e,!1),e.strm.avail_out===0))return Gr}else if(e.match_available){if(i=_n._tr_tally(e,0,e.window[e.strstart-1]),i&&si(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Gr}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(i=_n._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<ct-1?e.strstart:ct-1,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function tQ(e,t){for(var r,i,n,o,a=e.window;;){if(e.lookahead<=Es){if(Eu(e),e.lookahead<=Es&&t===xu)return Gr;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=ct&&e.strstart>0&&(n=e.strstart-1,i=a[n],i===a[++n]&&i===a[++n]&&i===a[++n])){o=e.strstart+Es;do;while(i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&n<o);e.match_length=Es-(o-n),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=ct?(r=_n._tr_tally(e,1,e.match_length-ct),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function rQ(e,t){for(var r;;){if(e.lookahead===0&&(Eu(e),e.lookahead===0)){if(t===xu)return Gr;break}if(e.match_length=0,r=_n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(si(e,!1),e.strm.avail_out===0))return Gr}return e.insert=0,t===Os?(si(e,!0),e.strm.avail_out===0?Su:kf):e.last_lit&&(si(e,!1),e.strm.avail_out===0)?Gr:ad}function Lo(e,t,r,i,n){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=i,this.func=n}var Rf;Rf=[new Lo(0,0,0,0,eQ),new Lo(4,4,8,4,XS),new Lo(4,5,16,8,XS),new Lo(4,6,32,32,XS),new Lo(4,4,16,16,Pf),new Lo(8,16,32,32,Pf),new Lo(8,16,128,128,Pf),new Lo(8,32,128,256,Pf),new Lo(32,128,258,1024,Pf),new Lo(32,258,258,4096,Pf)];function iQ(e){e.window_size=2*e.w_size,Ss(e.head),e.max_lazy_match=Rf[e.level].max_lazy,e.good_match=Rf[e.level].good_length,e.nice_match=Rf[e.level].nice_length,e.max_chain_length=Rf[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=ct-1,e.match_available=0,e.ins_h=0}function nQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Ev,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Pi.Buf16(ZJ*2),this.dyn_dtree=new Pi.Buf16((2*WJ+1)*2),this.bl_tree=new Pi.Buf16((2*YJ+1)*2),Ss(this.dyn_ltree),Ss(this.dyn_dtree),Ss(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Pi.Buf16($J+1),this.heap=new Pi.Buf16(2*JS+1),Ss(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Pi.Buf16(2*JS+1),Ss(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function r3(e){var t;return!e||!e.state?xs(e,wn):(e.total_in=e.total_out=0,e.data_type=FJ,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?xv:wu,e.adler=t.wrap===2?0:1,t.last_flush=xu,_n._tr_init(t),Mo)}function i3(e){var t=r3(e);return t===Mo&&iQ(e.state),t}function oQ(e,t){return!e||!e.state||e.state.wrap!==2?wn:(e.state.gzhead=t,Mo)}function n3(e,t,r,i,n,o){if(!e)return wn;var a=1;if(t===MJ&&(t=6),i<0?(a=0,i=-i):i>15&&(a=2,i-=16),n<1||n>jJ||r!==Ev||i<8||i>15||t<0||t>9||o<0||o>qJ)return xs(e,wn);i===8&&(i=9);var s=new nQ;return e.state=s,s.strm=e,s.wrap=a,s.gzhead=null,s.w_bits=i,s.w_size=1<<s.w_bits,s.w_mask=s.w_size-1,s.hash_bits=n+7,s.hash_size=1<<s.hash_bits,s.hash_mask=s.hash_size-1,s.hash_shift=~~((s.hash_bits+ct-1)/ct),s.window=new Pi.Buf8(s.w_size*2),s.head=new Pi.Buf16(s.hash_size),s.prev=new Pi.Buf16(s.w_size),s.lit_bufsize=1<<n+6,s.pending_buf_size=s.lit_bufsize*4,s.pending_buf=new Pi.Buf8(s.pending_buf_size),s.d_buf=1*s.lit_bufsize,s.l_buf=3*s.lit_bufsize,s.level=t,s.strategy=o,s.method=r,i3(e)}function aQ(e,t){return n3(e,t,Ev,zJ,KJ,UJ)}function sQ(e,t){var r,i,n,o;if(!e||!e.state||t>X6||t<0)return e?xs(e,wn):wn;if(i=e.state,!e.output||!e.input&&e.avail_in!==0||i.status===od&&t!==Os)return xs(e,e.avail_out===0?$S:wn);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===xv)if(i.wrap===2)e.adler=0,mt(i,31),mt(i,139),mt(i,8),i.gzhead?(mt(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),mt(i,i.gzhead.time&255),mt(i,i.gzhead.time>>8&255),mt(i,i.gzhead.time>>16&255),mt(i,i.gzhead.time>>24&255),mt(i,i.level===9?2:i.strategy>=bv||i.level<2?4:0),mt(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length&&(mt(i,i.gzhead.extra.length&255),mt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=_s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=QS):(mt(i,0),mt(i,0),mt(i,0),mt(i,0),mt(i,0),mt(i,i.level===9?2:i.strategy>=bv||i.level<2?4:0),mt(i,JJ),i.status=wu);else{var a=Ev+(i.w_bits-8<<4)<<8,s=-1;i.strategy>=bv||i.level<2?s=0:i.level<6?s=1:i.level===6?s=2:s=3,a|=s<<6,i.strstart!==0&&(a|=XJ),a+=31-a%31,i.status=wu,nd(i,a),i.strstart!==0&&(nd(i,e.adler>>>16),nd(i,e.adler&65535)),e.adler=1}if(i.status===QS)if(i.gzhead.extra){for(n=i.pending;i.gzindex<(i.gzhead.extra.length&65535)&&!(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size));)mt(i,i.gzhead.extra[i.gzindex]&255),i.gzindex++;i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=_v)}else i.status=_v;if(i.status===_v)if(i.gzhead.name){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size)){o=1;break}i.gzindex<i.gzhead.name.length?o=i.gzhead.name.charCodeAt(i.gzindex++)&255:o=0,mt(i,o)}while(o!==0);i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),o===0&&(i.gzindex=0,i.status=wv)}else i.status=wv;if(i.status===wv)if(i.gzhead.comment){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),ws(e),n=i.pending,i.pending===i.pending_buf_size)){o=1;break}i.gzindex<i.gzhead.comment.length?o=i.gzhead.comment.charCodeAt(i.gzindex++)&255:o=0,mt(i,o)}while(o!==0);i.gzhead.hcrc&&i.pending>n&&(e.adler=_s(e.adler,i.pending_buf,i.pending-n,n)),o===0&&(i.status=Sv)}else i.status=Sv;if(i.status===Sv&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ws(e),i.pending+2<=i.pending_buf_size&&(mt(i,e.adler&255),mt(i,e.adler>>8&255),e.adler=0,i.status=wu)):i.status=wu),i.pending!==0){if(ws(e),e.avail_out===0)return i.last_flush=-1,Mo}else if(e.avail_in===0&&Q6(t)<=Q6(r)&&t!==Os)return xs(e,$S);if(i.status===od&&e.avail_in!==0)return xs(e,$S);if(e.avail_in!==0||i.lookahead!==0||t!==xu&&i.status!==od){var u=i.strategy===bv?rQ(i,t):i.strategy===HJ?tQ(i,t):Rf[i.level].func(i,t);if((u===Su||u===kf)&&(i.status=od),u===Gr||u===Su)return e.avail_out===0&&(i.last_flush=-1),Mo;if(u===ad&&(t===NJ?_n._tr_align(i):t!==X6&&(_n._tr_stored_block(i,0,0,!1),t===CJ&&(Ss(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),ws(e),e.avail_out===0))return i.last_flush=-1,Mo}return t!==Os?Mo:i.wrap<=0?J6:(i.wrap===2?(mt(i,e.adler&255),mt(i,e.adler>>8&255),mt(i,e.adler>>16&255),mt(i,e.adler>>24&255),mt(i,e.total_in&255),mt(i,e.total_in>>8&255),mt(i,e.total_in>>16&255),mt(i,e.total_in>>24&255)):(nd(i,e.adler>>>16),nd(i,e.adler&65535)),ws(e),i.wrap>0&&(i.wrap=-i.wrap),i.pending!==0?Mo:J6)}function uQ(e){var t;return!e||!e.state?wn:(t=e.state.status,t!==xv&&t!==QS&&t!==_v&&t!==wv&&t!==Sv&&t!==wu&&t!==od?xs(e,wn):(e.state=null,t===wu?xs(e,LJ):Mo))}function cQ(e,t){var r=t.length,i,n,o,a,s,u,c,l;if(!e||!e.state||(i=e.state,a=i.wrap,a===2||a===1&&i.status!==xv||i.lookahead))return wn;for(a===1&&(e.adler=e3(e.adler,t,r,0)),i.wrap=0,r>=i.w_size&&(a===0&&(Ss(i.head),i.strstart=0,i.block_start=0,i.insert=0),l=new Pi.Buf8(i.w_size),Pi.arraySet(l,t,r-i.w_size,i.w_size,0),t=l,r=i.w_size),s=e.avail_in,u=e.next_in,c=e.input,e.avail_in=r,e.next_in=0,e.input=t,Eu(i);i.lookahead>=ct;){n=i.strstart,o=i.lookahead-(ct-1);do i.ins_h=(i.ins_h<<i.hash_shift^i.window[n+ct-1])&i.hash_mask,i.prev[n&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=n,n++;while(--o);i.strstart=n,i.lookahead=ct-1,Eu(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=ct-1,i.match_available=0,e.next_in=u,e.input=c,e.avail_in=s,i.wrap=a,Mo}Do.deflateInit=aQ;Do.deflateInit2=n3;Do.deflateReset=i3;Do.deflateResetKeep=r3;Do.deflateSetHeader=oQ;Do.deflate=sQ;Do.deflateEnd=uQ;Do.deflateSetDictionary=cQ;Do.deflateInfo="pako deflate (from Nodeca project)"});var s3=T((Ble,a3)=>{"use strict";g();var Ov=30,fQ=12;a3.exports=function(t,r){var i,n,o,a,s,u,c,l,p,d,v,_,I,R,k,q,z,A,B,M,F,V,Y,E,h;i=t.state,n=t.next_in,E=t.input,o=n+(t.avail_in-5),a=t.next_out,h=t.output,s=a-(r-t.avail_out),u=a+(t.avail_out-257),c=i.dmax,l=i.wsize,p=i.whave,d=i.wnext,v=i.window,_=i.hold,I=i.bits,R=i.lencode,k=i.distcode,q=(1<<i.lenbits)-1,z=(1<<i.distbits)-1;e:do{I<15&&(_+=E[n++]<<I,I+=8,_+=E[n++]<<I,I+=8),A=R[_&q];t:for(;;){if(B=A>>>24,_>>>=B,I-=B,B=A>>>16&255,B===0)h[a++]=A&65535;else if(B&16){M=A&65535,B&=15,B&&(I<B&&(_+=E[n++]<<I,I+=8),M+=_&(1<<B)-1,_>>>=B,I-=B),I<15&&(_+=E[n++]<<I,I+=8,_+=E[n++]<<I,I+=8),A=k[_&z];r:for(;;){if(B=A>>>24,_>>>=B,I-=B,B=A>>>16&255,B&16){if(F=A&65535,B&=15,I<B&&(_+=E[n++]<<I,I+=8,I<B&&(_+=E[n++]<<I,I+=8)),F+=_&(1<<B)-1,F>c){t.msg="invalid distance too far back",i.mode=Ov;break e}if(_>>>=B,I-=B,B=a-s,F>B){if(B=F-B,B>p&&i.sane){t.msg="invalid distance too far back",i.mode=Ov;break e}if(V=0,Y=v,d===0){if(V+=l-B,B<M){M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}}else if(d<B){if(V+=l+d-B,B-=d,B<M){M-=B;do h[a++]=v[V++];while(--B);if(V=0,d<M){B=d,M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}}}else if(V+=d-B,B<M){M-=B;do h[a++]=v[V++];while(--B);V=a-F,Y=h}for(;M>2;)h[a++]=Y[V++],h[a++]=Y[V++],h[a++]=Y[V++],M-=3;M&&(h[a++]=Y[V++],M>1&&(h[a++]=Y[V++]))}else{V=a-F;do h[a++]=h[V++],h[a++]=h[V++],h[a++]=h[V++],M-=3;while(M>2);M&&(h[a++]=h[V++],M>1&&(h[a++]=h[V++]))}}else if((B&64)===0){A=k[(A&65535)+(_&(1<<B)-1)];continue r}else{t.msg="invalid distance code",i.mode=Ov;break e}break}}else if((B&64)===0){A=R[(A&65535)+(_&(1<<B)-1)];continue t}else if(B&32){i.mode=fQ;break e}else{t.msg="invalid literal/length code",i.mode=Ov;break e}break}}while(n<o&&a<u);M=I>>3,n-=M,I-=M<<3,_&=(1<<I)-1,t.next_in=n,t.next_out=a,t.avail_in=n<o?5+(o-n):5-(n-o),t.avail_out=a<u?257+(u-a):257-(a-u),i.hold=_,i.bits=I}});var p3=T((Cle,d3)=>{"use strict";g();var u3=Xh(),Bf=15,c3=852,f3=592,l3=0,eE=1,h3=2,lQ=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],hQ=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],dQ=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],pQ=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];d3.exports=function(t,r,i,n,o,a,s,u){var c=u.bits,l=0,p=0,d=0,v=0,_=0,I=0,R=0,k=0,q=0,z=0,A,B,M,F,V,Y=null,E=0,h,y=new u3.Buf16(Bf+1),w=new u3.Buf16(Bf+1),S=null,O=0,C,D,P;for(l=0;l<=Bf;l++)y[l]=0;for(p=0;p<n;p++)y[r[i+p]]++;for(_=c,v=Bf;v>=1&&y[v]===0;v--);if(_>v&&(_=v),v===0)return o[a++]=1<<24|64<<16|0,o[a++]=1<<24|64<<16|0,u.bits=1,0;for(d=1;d<v&&y[d]===0;d++);for(_<d&&(_=d),k=1,l=1;l<=Bf;l++)if(k<<=1,k-=y[l],k<0)return-1;if(k>0&&(t===l3||v!==1))return-1;for(w[1]=0,l=1;l<Bf;l++)w[l+1]=w[l]+y[l];for(p=0;p<n;p++)r[i+p]!==0&&(s[w[r[i+p]]++]=p);if(t===l3?(Y=S=s,h=19):t===eE?(Y=lQ,E-=257,S=hQ,O-=257,h=256):(Y=dQ,S=pQ,h=-1),z=0,p=0,l=d,V=a,I=_,R=0,M=-1,q=1<<_,F=q-1,t===eE&&q>c3||t===h3&&q>f3)return 1;for(;;){C=l-R,s[p]<h?(D=0,P=s[p]):s[p]>h?(D=S[O+s[p]],P=Y[E+s[p]]):(D=96,P=0),A=1<<l-R,B=1<<I,d=B;do B-=A,o[V+(z>>R)+B]=C<<24|D<<16|P|0;while(B!==0);for(A=1<<l-1;z&A;)A>>=1;if(A!==0?(z&=A-1,z+=A):z=0,p++,--y[l]===0){if(l===v)break;l=r[i+s[p]]}if(l>_&&(z&F)!==M){for(R===0&&(R=_),V+=d,I=l-R,k=1<<I;I+R<v&&(k-=y[I+R],!(k<=0));)I++,k<<=1;if(q+=1<<I,t===eE&&q>c3||t===h3&&q>f3)return 1;M=z&F,o[M]=_<<24|I<<16|V-a|0}}return z!==0&&(o[V+z]=l-R<<24|64<<16|0),u.bits=_,0}});var Z3=T(Gn=>{"use strict";g();var $i=Xh(),aE=YS(),Ho=ZS(),gQ=s3(),sd=p3(),mQ=0,U3=1,F3=2,g3=4,vQ=5,Iv=6,Ou=0,yQ=1,bQ=2,Sn=-2,j3=-3,sE=-4,_Q=-5,m3=8,z3=1,v3=2,y3=3,b3=4,_3=5,w3=6,S3=7,E3=8,x3=9,O3=10,Pv=11,Ta=12,tE=13,I3=14,rE=15,A3=16,T3=17,P3=18,R3=19,Av=20,Tv=21,k3=22,B3=23,N3=24,C3=25,L3=26,iE=27,M3=28,D3=29,Xt=30,uE=31,wQ=32,SQ=852,EQ=592,xQ=15,OQ=xQ;function H3(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function IQ(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new $i.Buf16(320),this.work=new $i.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function K3(e){var t;return!e||!e.state?Sn:(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=z3,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new $i.Buf32(SQ),t.distcode=t.distdyn=new $i.Buf32(EQ),t.sane=1,t.back=-1,Ou)}function V3(e){var t;return!e||!e.state?Sn:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,K3(e))}function G3(e,t){var r,i;return!e||!e.state||(i=e.state,t<0?(r=0,t=-t):(r=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?Sn:(i.window!==null&&i.wbits!==t&&(i.window=null),i.wrap=r,i.wbits=t,V3(e))}function W3(e,t){var r,i;return e?(i=new IQ,e.state=i,i.window=null,r=G3(e,t),r!==Ou&&(e.state=null),r):Sn}function AQ(e){return W3(e,OQ)}var q3=!0,nE,oE;function TQ(e){if(q3){var t;for(nE=new $i.Buf32(512),oE=new $i.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(sd(U3,e.lens,0,288,nE,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;sd(F3,e.lens,0,32,oE,0,e.work,{bits:5}),q3=!1}e.lencode=nE,e.lenbits=9,e.distcode=oE,e.distbits=5}function Y3(e,t,r,i){var n,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new $i.Buf8(o.wsize)),i>=o.wsize?($i.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(n=o.wsize-o.wnext,n>i&&(n=i),$i.arraySet(o.window,t,r-i,n,o.wnext),i-=n,i?($i.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=n,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=n))),0}function PQ(e,t){var r,i,n,o,a,s,u,c,l,p,d,v,_,I,R=0,k,q,z,A,B,M,F,V,Y=new $i.Buf8(4),E,h,y=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return Sn;r=e.state,r.mode===Ta&&(r.mode=tE),a=e.next_out,n=e.output,u=e.avail_out,o=e.next_in,i=e.input,s=e.avail_in,c=r.hold,l=r.bits,p=s,d=u,V=Ou;e:for(;;)switch(r.mode){case z3:if(r.wrap===0){r.mode=tE;break}for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.wrap&2&&c===35615){r.check=0,Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0),c=0,l=0,r.mode=v3;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){e.msg="incorrect header check",r.mode=Xt;break}if((c&15)!==m3){e.msg="unknown compression method",r.mode=Xt;break}if(c>>>=4,l-=4,F=(c&15)+8,r.wbits===0)r.wbits=F;else if(F>r.wbits){e.msg="invalid window size",r.mode=Xt;break}r.dmax=1<<F,e.adler=r.check=1,r.mode=c&512?O3:Ta,c=0,l=0;break;case v3:for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.flags=c,(r.flags&255)!==m3){e.msg="unknown compression method",r.mode=Xt;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=Xt;break}r.head&&(r.head.text=c>>8&1),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0,r.mode=y3;case y3:for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.head&&(r.head.time=c),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,Y[2]=c>>>16&255,Y[3]=c>>>24&255,r.check=Ho(r.check,Y,4,0)),c=0,l=0,r.mode=b3;case b3:for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.head&&(r.head.xflags=c&255,r.head.os=c>>8),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0,r.mode=_3;case _3:if(r.flags&1024){for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.length=c,r.head&&(r.head.extra_len=c),r.flags&512&&(Y[0]=c&255,Y[1]=c>>>8&255,r.check=Ho(r.check,Y,2,0)),c=0,l=0}else r.head&&(r.head.extra=null);r.mode=w3;case w3:if(r.flags&1024&&(v=r.length,v>s&&(v=s),v&&(r.head&&(F=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),$i.arraySet(r.head.extra,i,o,v,F)),r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,r.length-=v),r.length))break e;r.length=0,r.mode=S3;case S3:if(r.flags&2048){if(s===0)break e;v=0;do F=i[o+v++],r.head&&F&&r.length<65536&&(r.head.name+=String.fromCharCode(F));while(F&&v<s);if(r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,F)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=E3;case E3:if(r.flags&4096){if(s===0)break e;v=0;do F=i[o+v++],r.head&&F&&r.length<65536&&(r.head.comment+=String.fromCharCode(F));while(F&&v<s);if(r.flags&512&&(r.check=Ho(r.check,i,v,o)),s-=v,o+=v,F)break e}else r.head&&(r.head.comment=null);r.mode=x3;case x3:if(r.flags&512){for(;l<16;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c!==(r.check&65535)){e.msg="header crc mismatch",r.mode=Xt;break}c=0,l=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Ta;break;case O3:for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}e.adler=r.check=H3(c),c=0,l=0,r.mode=Pv;case Pv:if(r.havedict===0)return e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,bQ;e.adler=r.check=1,r.mode=Ta;case Ta:if(t===vQ||t===Iv)break e;case tE:if(r.last){c>>>=l&7,l-=l&7,r.mode=iE;break}for(;l<3;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}switch(r.last=c&1,c>>>=1,l-=1,c&3){case 0:r.mode=I3;break;case 1:if(TQ(r),r.mode=Av,t===Iv){c>>>=2,l-=2;break e}break;case 2:r.mode=T3;break;case 3:e.msg="invalid block type",r.mode=Xt}c>>>=2,l-=2;break;case I3:for(c>>>=l&7,l-=l&7;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if((c&65535)!==(c>>>16^65535)){e.msg="invalid stored block lengths",r.mode=Xt;break}if(r.length=c&65535,c=0,l=0,r.mode=rE,t===Iv)break e;case rE:r.mode=A3;case A3:if(v=r.length,v){if(v>s&&(v=s),v>u&&(v=u),v===0)break e;$i.arraySet(n,i,o,v,a),s-=v,o+=v,u-=v,a+=v,r.length-=v;break}r.mode=Ta;break;case T3:for(;l<14;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(r.nlen=(c&31)+257,c>>>=5,l-=5,r.ndist=(c&31)+1,c>>>=5,l-=5,r.ncode=(c&15)+4,c>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=Xt;break}r.have=0,r.mode=P3;case P3:for(;r.have<r.ncode;){for(;l<3;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.lens[y[r.have++]]=c&7,c>>>=3,l-=3}for(;r.have<19;)r.lens[y[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,E={bits:r.lenbits},V=sd(mQ,r.lens,0,19,r.lencode,0,r.work,E),r.lenbits=E.bits,V){e.msg="invalid code lengths set",r.mode=Xt;break}r.have=0,r.mode=R3;case R3:for(;r.have<r.nlen+r.ndist;){for(;R=r.lencode[c&(1<<r.lenbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(z<16)c>>>=k,l-=k,r.lens[r.have++]=z;else{if(z===16){for(h=k+2;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c>>>=k,l-=k,r.have===0){e.msg="invalid bit length repeat",r.mode=Xt;break}F=r.lens[r.have-1],v=3+(c&3),c>>>=2,l-=2}else if(z===17){for(h=k+3;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=k,l-=k,F=0,v=3+(c&7),c>>>=3,l-=3}else{for(h=k+7;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=k,l-=k,F=0,v=11+(c&127),c>>>=7,l-=7}if(r.have+v>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=Xt;break}for(;v--;)r.lens[r.have++]=F}}if(r.mode===Xt)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=Xt;break}if(r.lenbits=9,E={bits:r.lenbits},V=sd(U3,r.lens,0,r.nlen,r.lencode,0,r.work,E),r.lenbits=E.bits,V){e.msg="invalid literal/lengths set",r.mode=Xt;break}if(r.distbits=6,r.distcode=r.distdyn,E={bits:r.distbits},V=sd(F3,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,E),r.distbits=E.bits,V){e.msg="invalid distances set",r.mode=Xt;break}if(r.mode=Av,t===Iv)break e;case Av:r.mode=Tv;case Tv:if(s>=6&&u>=258){e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,gQ(e,d),a=e.next_out,n=e.output,u=e.avail_out,o=e.next_in,i=e.input,s=e.avail_in,c=r.hold,l=r.bits,r.mode===Ta&&(r.back=-1);break}for(r.back=0;R=r.lencode[c&(1<<r.lenbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(q&&(q&240)===0){for(A=k,B=q,M=z;R=r.lencode[M+((c&(1<<A+B)-1)>>A)],k=R>>>24,q=R>>>16&255,z=R&65535,!(A+k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=A,l-=A,r.back+=A}if(c>>>=k,l-=k,r.back+=k,r.length=z,q===0){r.mode=L3;break}if(q&32){r.back=-1,r.mode=Ta;break}if(q&64){e.msg="invalid literal/length code",r.mode=Xt;break}r.extra=q&15,r.mode=k3;case k3:if(r.extra){for(h=r.extra;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.length+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=B3;case B3:for(;R=r.distcode[c&(1<<r.distbits)-1],k=R>>>24,q=R>>>16&255,z=R&65535,!(k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if((q&240)===0){for(A=k,B=q,M=z;R=r.distcode[M+((c&(1<<A+B)-1)>>A)],k=R>>>24,q=R>>>16&255,z=R&65535,!(A+k<=l);){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}c>>>=A,l-=A,r.back+=A}if(c>>>=k,l-=k,r.back+=k,q&64){e.msg="invalid distance code",r.mode=Xt;break}r.offset=z,r.extra=q&15,r.mode=N3;case N3:if(r.extra){for(h=r.extra;l<h;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}r.offset+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=Xt;break}r.mode=C3;case C3:if(u===0)break e;if(v=d-u,r.offset>v){if(v=r.offset-v,v>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=Xt;break}v>r.wnext?(v-=r.wnext,_=r.wsize-v):_=r.wnext-v,v>r.length&&(v=r.length),I=r.window}else I=n,_=a-r.offset,v=r.length;v>u&&(v=u),u-=v,r.length-=v;do n[a++]=I[_++];while(--v);r.length===0&&(r.mode=Tv);break;case L3:if(u===0)break e;n[a++]=r.length,u--,r.mode=Tv;break;case iE:if(r.wrap){for(;l<32;){if(s===0)break e;s--,c|=i[o++]<<l,l+=8}if(d-=u,e.total_out+=d,r.total+=d,d&&(e.adler=r.check=r.flags?Ho(r.check,n,d,a-d):aE(r.check,n,d,a-d)),d=u,(r.flags?c:H3(c))!==r.check){e.msg="incorrect data check",r.mode=Xt;break}c=0,l=0}r.mode=M3;case M3:if(r.wrap&&r.flags){for(;l<32;){if(s===0)break e;s--,c+=i[o++]<<l,l+=8}if(c!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=Xt;break}c=0,l=0}r.mode=D3;case D3:V=yQ;break e;case Xt:V=j3;break e;case uE:return sE;case wQ:default:return Sn}return e.next_out=a,e.avail_out=u,e.next_in=o,e.avail_in=s,r.hold=c,r.bits=l,(r.wsize||d!==e.avail_out&&r.mode<Xt&&(r.mode<iE||t!==g3))&&Y3(e,e.output,e.next_out,d-e.avail_out)?(r.mode=uE,sE):(p-=e.avail_in,d-=e.avail_out,e.total_in+=p,e.total_out+=d,r.total+=d,r.wrap&&d&&(e.adler=r.check=r.flags?Ho(r.check,n,d,e.next_out-d):aE(r.check,n,d,e.next_out-d)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Ta?128:0)+(r.mode===Av||r.mode===rE?256:0),(p===0&&d===0||t===g3)&&V===Ou&&(V=_Q),V)}function RQ(e){if(!e||!e.state)return Sn;var t=e.state;return t.window&&(t.window=null),e.state=null,Ou}function kQ(e,t){var r;return!e||!e.state||(r=e.state,(r.wrap&2)===0)?Sn:(r.head=t,t.done=!1,Ou)}function BQ(e,t){var r=t.length,i,n,o;return!e||!e.state||(i=e.state,i.wrap!==0&&i.mode!==Pv)?Sn:i.mode===Pv&&(n=1,n=aE(n,t,r,0),n!==i.check)?j3:(o=Y3(e,t,r,r),o?(i.mode=uE,sE):(i.havedict=1,Ou))}Gn.inflateReset=V3;Gn.inflateReset2=G3;Gn.inflateResetKeep=K3;Gn.inflateInit=AQ;Gn.inflateInit2=W3;Gn.inflate=PQ;Gn.inflateEnd=RQ;Gn.inflateGetHeader=kQ;Gn.inflateSetDictionary=BQ;Gn.inflateInfo="pako inflate (from Nodeca project)"});var X3=T((Hle,$3)=>{"use strict";g();$3.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var Q3=T(fe=>{"use strict";g();var Xi=fa(),NQ=E6(),ud=o3(),Iu=Z3(),J3=X3();for(cE in J3)fe[cE]=J3[cE];var cE;fe.NONE=0;fe.DEFLATE=1;fe.INFLATE=2;fe.GZIP=3;fe.GUNZIP=4;fe.DEFLATERAW=5;fe.INFLATERAW=6;fe.UNZIP=7;var CQ=31,LQ=139;function _i(e){if(typeof e!="number"||e<fe.DEFLATE||e>fe.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=e,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}_i.prototype.close=function(){if(this.write_in_progress){this.pending_close=!0;return}this.pending_close=!1,Xi(this.init_done,"close before init"),Xi(this.mode<=fe.UNZIP),this.mode===fe.DEFLATE||this.mode===fe.GZIP||this.mode===fe.DEFLATERAW?ud.deflateEnd(this.strm):(this.mode===fe.INFLATE||this.mode===fe.GUNZIP||this.mode===fe.INFLATERAW||this.mode===fe.UNZIP)&&Iu.inflateEnd(this.strm),this.mode=fe.NONE,this.dictionary=null};_i.prototype.write=function(e,t,r,i,n,o,a){return this._write(!0,e,t,r,i,n,o,a)};_i.prototype.writeSync=function(e,t,r,i,n,o,a){return this._write(!1,e,t,r,i,n,o,a)};_i.prototype._write=function(e,t,r,i,n,o,a,s){if(Xi.equal(arguments.length,8),Xi(this.init_done,"write before init"),Xi(this.mode!==fe.NONE,"already finalized"),Xi.equal(!1,this.write_in_progress,"write already in progress"),Xi.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,Xi.equal(!1,t===void 0,"must provide flush value"),this.write_in_progress=!0,t!==fe.Z_NO_FLUSH&&t!==fe.Z_PARTIAL_FLUSH&&t!==fe.Z_SYNC_FLUSH&&t!==fe.Z_FULL_FLUSH&&t!==fe.Z_FINISH&&t!==fe.Z_BLOCK)throw new Error("Invalid flush value");if(r==null&&(r=f.Buffer.alloc(0),n=0,i=0),this.strm.avail_in=n,this.strm.input=r,this.strm.next_in=i,this.strm.avail_out=s,this.strm.output=o,this.strm.next_out=a,this.flush=t,!e)return this._process(),this._checkError()?this._afterSync():void 0;var u=this;return b.default.nextTick(function(){u._process(),u._after()}),this};_i.prototype._afterSync=function(){var e=this.strm.avail_out,t=this.strm.avail_in;return this.write_in_progress=!1,[t,e]};_i.prototype._process=function(){var e=null;switch(this.mode){case fe.DEFLATE:case fe.GZIP:case fe.DEFLATERAW:this.err=ud.deflate(this.strm,this.flush);break;case fe.UNZIP:switch(this.strm.avail_in>0&&(e=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(e===null)break;if(this.strm.input[e]===CQ){if(this.gzip_id_bytes_read=1,e++,this.strm.avail_in===1)break}else{this.mode=fe.INFLATE;break}case 1:if(e===null)break;this.strm.input[e]===LQ?(this.gzip_id_bytes_read=2,this.mode=fe.GUNZIP):this.mode=fe.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case fe.INFLATE:case fe.GUNZIP:case fe.INFLATERAW:for(this.err=Iu.inflate(this.strm,this.flush),this.err===fe.Z_NEED_DICT&&this.dictionary&&(this.err=Iu.inflateSetDictionary(this.strm,this.dictionary),this.err===fe.Z_OK?this.err=Iu.inflate(this.strm,this.flush):this.err===fe.Z_DATA_ERROR&&(this.err=fe.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===fe.GUNZIP&&this.err===fe.Z_STREAM_END&&this.strm.next_in[0]!==0;)this.reset(),this.err=Iu.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}};_i.prototype._checkError=function(){switch(this.err){case fe.Z_OK:case fe.Z_BUF_ERROR:if(this.strm.avail_out!==0&&this.flush===fe.Z_FINISH)return this._error("unexpected end of file"),!1;break;case fe.Z_STREAM_END:break;case fe.Z_NEED_DICT:return this.dictionary==null?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0};_i.prototype._after=function(){if(this._checkError()){var e=this.strm.avail_out,t=this.strm.avail_in;this.write_in_progress=!1,this.callback(t,e),this.pending_close&&this.close()}};_i.prototype._error=function(e){this.strm.msg&&(e=this.strm.msg),this.onerror(e,this.err),this.write_in_progress=!1,this.pending_close&&this.close()};_i.prototype.init=function(e,t,r,i,n){Xi(arguments.length===4||arguments.length===5,"init(windowBits, level, memLevel, strategy, [dictionary])"),Xi(e>=8&&e<=15,"invalid windowBits"),Xi(t>=-1&&t<=9,"invalid compression level"),Xi(r>=1&&r<=9,"invalid memlevel"),Xi(i===fe.Z_FILTERED||i===fe.Z_HUFFMAN_ONLY||i===fe.Z_RLE||i===fe.Z_FIXED||i===fe.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(t,e,r,i,n),this._setDictionary()};_i.prototype.params=function(){throw new Error("deflateParams Not supported")};_i.prototype.reset=function(){this._reset(),this._setDictionary()};_i.prototype._init=function(e,t,r,i,n){switch(this.level=e,this.windowBits=t,this.memLevel=r,this.strategy=i,this.flush=fe.Z_NO_FLUSH,this.err=fe.Z_OK,(this.mode===fe.GZIP||this.mode===fe.GUNZIP)&&(this.windowBits+=16),this.mode===fe.UNZIP&&(this.windowBits+=32),(this.mode===fe.DEFLATERAW||this.mode===fe.INFLATERAW)&&(this.windowBits=-1*this.windowBits),this.strm=new NQ,this.mode){case fe.DEFLATE:case fe.GZIP:case fe.DEFLATERAW:this.err=ud.deflateInit2(this.strm,this.level,fe.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case fe.INFLATE:case fe.GUNZIP:case fe.INFLATERAW:case fe.UNZIP:this.err=Iu.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==fe.Z_OK&&this._error("Init error"),this.dictionary=n,this.write_in_progress=!1,this.init_done=!0};_i.prototype._setDictionary=function(){if(this.dictionary!=null){switch(this.err=fe.Z_OK,this.mode){case fe.DEFLATE:case fe.DEFLATERAW:this.err=ud.deflateSetDictionary(this.strm,this.dictionary);break;default:break}this.err!==fe.Z_OK&&this._error("Failed to set dictionary")}};_i.prototype._reset=function(){switch(this.err=fe.Z_OK,this.mode){case fe.DEFLATE:case fe.DEFLATERAW:case fe.GZIP:this.err=ud.deflateReset(this.strm);break;case fe.INFLATE:case fe.INFLATERAW:case fe.GUNZIP:this.err=Iu.inflateReset(this.strm);break;default:break}this.err!==fe.Z_OK&&this._error("Failed to reset stream")};fe.Zlib=_i});var hE=T(Se=>{"use strict";g();var qo=rr().Buffer,iH=gp().Transform,De=Q3(),Is=nn(),cd=fa().ok,lE=rr().kMaxLength,nH="Cannot create final Buffer. It would be larger than 0x"+lE.toString(16)+" bytes";De.Z_MIN_WINDOWBITS=8;De.Z_MAX_WINDOWBITS=15;De.Z_DEFAULT_WINDOWBITS=15;De.Z_MIN_CHUNK=64;De.Z_MAX_CHUNK=1/0;De.Z_DEFAULT_CHUNK=16*1024;De.Z_MIN_MEMLEVEL=1;De.Z_MAX_MEMLEVEL=9;De.Z_DEFAULT_MEMLEVEL=8;De.Z_MIN_LEVEL=-1;De.Z_MAX_LEVEL=9;De.Z_DEFAULT_LEVEL=De.Z_DEFAULT_COMPRESSION;var eH=Object.keys(De);for(Rv=0;Rv<eH.length;Rv++)kv=eH[Rv],kv.match(/^Z/)&&Object.defineProperty(Se,kv,{enumerable:!0,value:De[kv],writable:!1});var kv,Rv,Nv={Z_OK:De.Z_OK,Z_STREAM_END:De.Z_STREAM_END,Z_NEED_DICT:De.Z_NEED_DICT,Z_ERRNO:De.Z_ERRNO,Z_STREAM_ERROR:De.Z_STREAM_ERROR,Z_DATA_ERROR:De.Z_DATA_ERROR,Z_MEM_ERROR:De.Z_MEM_ERROR,Z_BUF_ERROR:De.Z_BUF_ERROR,Z_VERSION_ERROR:De.Z_VERSION_ERROR},tH=Object.keys(Nv);for(Bv=0;Bv<tH.length;Bv++)fE=tH[Bv],Nv[Nv[fE]]=fE;var fE,Bv;Object.defineProperty(Se,"codes",{enumerable:!0,value:Object.freeze(Nv),writable:!1});Se.Deflate=Au;Se.Inflate=Tu;Se.Gzip=Pu;Se.Gunzip=Ru;Se.DeflateRaw=ku;Se.InflateRaw=Bu;Se.Unzip=Nu;Se.createDeflate=function(e){return new Au(e)};Se.createInflate=function(e){return new Tu(e)};Se.createDeflateRaw=function(e){return new ku(e)};Se.createInflateRaw=function(e){return new Bu(e)};Se.createGzip=function(e){return new Pu(e)};Se.createGunzip=function(e){return new Ru(e)};Se.createUnzip=function(e){return new Nu(e)};Se.deflate=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Au(t),e,r)};Se.deflateSync=function(e,t){return Lu(new Au(t),e)};Se.gzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Pu(t),e,r)};Se.gzipSync=function(e,t){return Lu(new Pu(t),e)};Se.deflateRaw=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new ku(t),e,r)};Se.deflateRawSync=function(e,t){return Lu(new ku(t),e)};Se.unzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Nu(t),e,r)};Se.unzipSync=function(e,t){return Lu(new Nu(t),e)};Se.inflate=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Tu(t),e,r)};Se.inflateSync=function(e,t){return Lu(new Tu(t),e)};Se.gunzip=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Ru(t),e,r)};Se.gunzipSync=function(e,t){return Lu(new Ru(t),e)};Se.inflateRaw=function(e,t,r){return typeof t=="function"&&(r=t,t={}),Cu(new Bu(t),e,r)};Se.inflateRawSync=function(e,t){return Lu(new Bu(t),e)};function Cu(e,t,r){var i=[],n=0;e.on("error",a),e.on("end",s),e.end(t),o();function o(){for(var u;(u=e.read())!==null;)i.push(u),n+=u.length;e.once("readable",o)}function a(u){e.removeListener("end",s),e.removeListener("readable",o),r(u)}function s(){var u,c=null;n>=lE?c=new RangeError(nH):u=qo.concat(i,n),i=[],e.close(),r(c,u)}}function Lu(e,t){if(typeof t=="string"&&(t=qo.from(t)),!qo.isBuffer(t))throw new TypeError("Not a string or buffer");var r=e._finishFlushFlag;return e._processChunk(t,r)}function Au(e){if(!(this instanceof Au))return new Au(e);cr.call(this,e,De.DEFLATE)}function Tu(e){if(!(this instanceof Tu))return new Tu(e);cr.call(this,e,De.INFLATE)}function Pu(e){if(!(this instanceof Pu))return new Pu(e);cr.call(this,e,De.GZIP)}function Ru(e){if(!(this instanceof Ru))return new Ru(e);cr.call(this,e,De.GUNZIP)}function ku(e){if(!(this instanceof ku))return new ku(e);cr.call(this,e,De.DEFLATERAW)}function Bu(e){if(!(this instanceof Bu))return new Bu(e);cr.call(this,e,De.INFLATERAW)}function Nu(e){if(!(this instanceof Nu))return new Nu(e);cr.call(this,e,De.UNZIP)}function rH(e){return e===De.Z_NO_FLUSH||e===De.Z_PARTIAL_FLUSH||e===De.Z_SYNC_FLUSH||e===De.Z_FULL_FLUSH||e===De.Z_FINISH||e===De.Z_BLOCK}function cr(e,t){var r=this;if(this._opts=e=e||{},this._chunkSize=e.chunkSize||Se.Z_DEFAULT_CHUNK,iH.call(this,e),e.flush&&!rH(e.flush))throw new Error("Invalid flush flag: "+e.flush);if(e.finishFlush&&!rH(e.finishFlush))throw new Error("Invalid flush flag: "+e.finishFlush);if(this._flushFlag=e.flush||De.Z_NO_FLUSH,this._finishFlushFlag=typeof e.finishFlush<"u"?e.finishFlush:De.Z_FINISH,e.chunkSize&&(e.chunkSize<Se.Z_MIN_CHUNK||e.chunkSize>Se.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBits<Se.Z_MIN_WINDOWBITS||e.windowBits>Se.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.level<Se.Z_MIN_LEVEL||e.level>Se.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevel<Se.Z_MIN_MEMLEVEL||e.memLevel>Se.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=Se.Z_FILTERED&&e.strategy!=Se.Z_HUFFMAN_ONLY&&e.strategy!=Se.Z_RLE&&e.strategy!=Se.Z_FIXED&&e.strategy!=Se.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!qo.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new De.Zlib(t);var i=this;this._hadError=!1,this._handle.onerror=function(a,s){Cv(i),i._hadError=!0;var u=new Error(a);u.errno=s,u.code=Se.codes[s],i.emit("error",u)};var n=Se.Z_DEFAULT_COMPRESSION;typeof e.level=="number"&&(n=e.level);var o=Se.Z_DEFAULT_STRATEGY;typeof e.strategy=="number"&&(o=e.strategy),this._handle.init(e.windowBits||Se.Z_DEFAULT_WINDOWBITS,n,e.memLevel||Se.Z_DEFAULT_MEMLEVEL,o,e.dictionary),this._buffer=qo.allocUnsafe(this._chunkSize),this._offset=0,this._level=n,this._strategy=o,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!r._handle},configurable:!0,enumerable:!0})}Is.inherits(cr,iH);cr.prototype.params=function(e,t,r){if(e<Se.Z_MIN_LEVEL||e>Se.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(t!=Se.Z_FILTERED&&t!=Se.Z_HUFFMAN_ONLY&&t!=Se.Z_RLE&&t!=Se.Z_FIXED&&t!=Se.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+t);if(this._level!==e||this._strategy!==t){var i=this;this.flush(De.Z_SYNC_FLUSH,function(){cd(i._handle,"zlib binding closed"),i._handle.params(e,t),i._hadError||(i._level=e,i._strategy=t,r&&r())})}else b.default.nextTick(r)};cr.prototype.reset=function(){return cd(this._handle,"zlib binding closed"),this._handle.reset()};cr.prototype._flush=function(e){this._transform(qo.alloc(0),"",e)};cr.prototype.flush=function(e,t){var r=this,i=this._writableState;(typeof e=="function"||e===void 0&&!t)&&(t=e,e=De.Z_FULL_FLUSH),i.ended?t&&b.default.nextTick(t):i.ending?t&&this.once("end",t):i.needDrain?t&&this.once("drain",function(){return r.flush(e,t)}):(this._flushFlag=e,this.write(qo.alloc(0),"",t))};cr.prototype.close=function(e){Cv(this,e),b.default.nextTick(MQ,this)};function Cv(e,t){t&&b.default.nextTick(t),e._handle&&(e._handle.close(),e._handle=null)}function MQ(e){e.emit("close")}cr.prototype._transform=function(e,t,r){var i,n=this._writableState,o=n.ending||n.ended,a=o&&(!e||n.length===e.length);if(e!==null&&!qo.isBuffer(e))return r(new Error("invalid input"));if(!this._handle)return r(new Error("zlib binding closed"));a?i=this._finishFlushFlag:(i=this._flushFlag,e.length>=n.length&&(this._flushFlag=this._opts.flush||De.Z_NO_FLUSH)),this._processChunk(e,i,r)};cr.prototype._processChunk=function(e,t,r){var i=e&&e.length,n=this._chunkSize-this._offset,o=0,a=this,s=typeof r=="function";if(!s){var u=[],c=0,l;this.on("error",function(I){l=I}),cd(this._handle,"zlib binding closed");do var p=this._handle.writeSync(t,e,o,i,this._buffer,this._offset,n);while(!this._hadError&&_(p[0],p[1]));if(this._hadError)throw l;if(c>=lE)throw Cv(this),new RangeError(nH);var d=qo.concat(u,c);return Cv(this),d}cd(this._handle,"zlib binding closed");var v=this._handle.write(t,e,o,i,this._buffer,this._offset,n);v.buffer=e,v.callback=_;function _(I,R){if(this&&(this.buffer=null,this.callback=null),!a._hadError){var k=n-R;if(cd(k>=0,"have should not go down"),k>0){var q=a._buffer.slice(a._offset,a._offset+k);a._offset+=k,s?a.push(q):(u.push(q),c+=q.length)}if((R===0||a._offset>=a._chunkSize)&&(n=a._chunkSize,a._offset=0,a._buffer=qo.allocUnsafe(a._chunkSize)),R===0){if(o+=i-I,i=I,!s)return!0;var z=a._handle.write(t,e,o,i,a._buffer,a._offset,a._chunkSize);z.callback=_,z.buffer=e;return}if(!s)return!1;r()}}};Is.inherits(Au,cr);Is.inherits(Tu,cr);Is.inherits(Pu,cr);Is.inherits(Ru,cr);Is.inherits(ku,cr);Is.inherits(Bu,cr);Is.inherits(Nu,cr)});var cH=T((Vle,uH)=>{"use strict";g();var dE=DS(),Kle=nr(),oH=hE(),DQ=8*1024*1024;function aH(e,t){var r=t&&t.maxDecompressedBytes||DQ;return oH.gunzipSync(f.Buffer.from(e,"base64"),{maxOutputLength:r})}async function sH(e,t){if(!t.expectedIssuerDid)throw new Error("expectedIssuerDid is required to verify a status list (issuer pinning); refusing to read revocation state from an unpinned/unverified JWT");var r=t.didResolver;if(!r){var i=t.issuerJwks||(t.issuerPublicJwk?{keys:[t.issuerPublicJwk]}:null);if(!i)throw new Error("Provide params.didResolver, params.issuerJwks, or params.issuerPublicJwk to verify the status list signature");r=async function(){return{jwks:i}}}var n=await dE.verifyVcJwt(e,{didResolver:r,expectedIssuerDid:t.expectedIssuerDid,allowedAlgs:t.allowedAlgs,allowLegacyDER:t.allowLegacyDER,clockToleranceSec:t.clockToleranceSec});if(!n.valid)throw new Error("Status list signature verification failed: "+(n.error||"invalid signature"));return n.payload}async function HQ(e){if(!e.issuerDid||!e.privateJwk)throw new Error("issuerDid and privateJwk are required");var t=e.listId||e.issuerDid+"/status/"+Date.now(),r=e.listSize||1e5,i=Math.ceil(r/8),n=f.Buffer.alloc(i,0),o=hE(),a=o.gzipSync(n),s=a.toString("base64"),u={"@context":["https://www.w3.org/2018/credentials/v1","https://w3id.org/vc/status-list/2021/v1"],type:["VerifiableCredential","StatusList2021Credential"],issuer:e.issuerDid,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,type:"StatusList2021",statusPurpose:"revocation",encodedList:s}},c=await dE.issueVcJwt({issuerDid:e.issuerDid,subjectId:t,types:["VerifiableCredential","StatusList2021Credential"],credentialSubject:u.credentialSubject,privateJwk:e.privateJwk,alg:e.privateJwk.alg||"ES256"});return{listVcJwt:c.jwt,listId:t}}async function qQ(e){if(!e.listVcJwt||e.index===void 0||!e.status||!e.privateJwk)throw new Error("listVcJwt, index, status, and privateJwk are required");if(e.status==="suspended")throw new Error("status 'suspended' is not supported by this list: its statusPurpose is 'revocation', and suspension would be written to the same bit and read back as 'revoked'. Maintain a separate list for suspension until statusPurpose is configurable.");var t=await sH(e.listVcJwt,e),r=t.vc.credentialSubject.encodedList,i=aH(r,e),n=Math.floor(e.index/8),o=e.index%8;if(n>=i.length)throw new Error("Index out of range");var a=e.status==="revoked"?1:0;a===1?i[n]|=1<<o:i[n]&=~(1<<o);var s=oH.gzipSync(i),u=s.toString("base64"),c={id:t.vc.credentialSubject.id,type:"StatusList2021",statusPurpose:"revocation",encodedList:u},l=await dE.issueVcJwt({issuerDid:t.iss,subjectId:t.vc.credentialSubject.id,types:["VerifiableCredential","StatusList2021Credential"],credentialSubject:c,privateJwk:e.privateJwk,alg:e.privateJwk.alg||"ES256"});return{listVcJwt:l.jwt}}async function UQ(e){if(!e.listVcJwt||e.index===void 0)throw new Error("listVcJwt and index are required");var t=await sH(e.listVcJwt,e),r=t.vc.credentialSubject.encodedList,i=aH(r,e),n=Math.floor(e.index/8),o=e.index%8;if(n>=i.length)throw new Error("Index out of range");var a=i[n]>>o&1;return a===1?"revoked":"valid"}uH.exports={createStatusList:HQ,updateStatusList:qQ,getCredentialStatusEntry:UQ}});var hH=T((Wle,lH)=>{"use strict";g();var FQ=nr();function fH(e){var t;if(typeof e=="string")t=f.Buffer.from(e,"utf8");else if(f.Buffer.isBuffer(e))t=e;else if(e instanceof Uint8Array)t=f.Buffer.from(e);else throw new Error("Data must be string, Buffer, or Uint8Array");return FQ.createHash("sha256").update(t).digest("hex")}function jQ(e){if(!e.kind||!e.hash||!e.issuerDid)throw new Error("kind, hash, and issuerDid are required");var t=["VC_ANCHOR_SHA256","STATUSLIST_SHA256","PRESENTATION_SHA256"];if(t.indexOf(e.kind)===-1)throw new Error("Invalid kind. Must be one of: "+t.join(", "));if(!/^[a-fA-F0-9]{64}$/.test(e.hash))throw new Error("Invalid hash format. Must be 64 hex characters");var r={protocol:"SmartLedger",version:"1.0",type:e.kind,hash:e.hash,issuer:e.issuerDid,timestamp:e.issuedAt||new Date().toISOString()};return{json:JSON.stringify(r)}}function zQ(e,t){var r=fH(e);return r===t}function KQ(e){try{var t=JSON.parse(e);if(t.protocol!=="SmartLedger")return{valid:!1,error:"Invalid protocol"};var r=["VC_ANCHOR_SHA256","STATUSLIST_SHA256","PRESENTATION_SHA256"];return r.indexOf(t.type)===-1?{valid:!1,error:"Invalid anchor type"}:/^[a-fA-F0-9]{64}$/.test(t.hash)?{valid:!0,protocol:t.protocol,version:t.version,type:t.type,hash:t.hash,issuer:t.issuer,timestamp:t.timestamp}:{valid:!1,error:"Invalid hash format"}}catch(i){return{valid:!1,error:"Failed to parse anchor payload: "+i.message}}}lH.exports={sha256Hex:fH,buildAnchorPayload:jQ,verifyAnchorHash:zQ,parseAnchorPayload:KQ}});var fd=T((Zle,pH)=>{"use strict";g();var dH=Ki();function VQ(){var e=dH.getRandomBuffer(16);e[6]=e[6]&15|64,e[8]=e[8]&63|128;var t=e.toString("hex");return[t.substring(0,8),t.substring(8,12),t.substring(12,16),t.substring(16,20),t.substring(20,32)].join("-")}function GQ(e){return dH.getRandomBuffer(Math.ceil(e/2)).toString("hex").substring(0,e)}pH.exports={uuid4:VQ,randomHex:GQ}});var bH=T((Jle,yH)=>{"use strict";g();var ld=sr(),pE=Le(),gE=dn(),gH=gt(),mE=ei(),Mr=Ie(),Xle=at(),WQ=fd();function mH(e,t){if(t=t||{},t.issuerPublicKey)return t.issuerPublicKey instanceof ld?t.issuerPublicKey:ld.fromString(t.issuerPublicKey);var r=e&&e.issuer;if(typeof r!="string")return null;try{var i=r.split("#")[0].split(":")[2];return i?ld.fromString(i):null}catch{return null}}var Nf={PROPERTY_TITLE:"PropertyTitle",VEHICLE_TITLE:"VehicleTitle",INTELLECTUAL_PROPERTY:"IntellectualProperty",MUSIC_LICENSE:"MusicLicense",SOFTWARE_LICENSE:"SoftwareLicense",FINANCIAL_INSTRUMENT:"FinancialInstrument",PROMISSORY_NOTE:"PromissoryNote",BOND:"Bond",EQUITY_SHARE:"EquityShare",PROFESSIONAL_LICENSE:"ProfessionalLicense",REGULATORY_PERMIT:"RegulatoryPermit",ACCESS_RIGHT:"AccessRight",VOTING_RIGHT:"VotingRight",ROYALTY_RIGHT:"RoyaltyRight",USAGE_RIGHT:"UsageRight"},vH={create:function(e,t,r,i,n,o){o=o||{},Mr.checkArgument(typeof e=="string","Right type must be string"),Mr.checkArgument(typeof t=="string","Issuer DID must be string"),Mr.checkArgument(typeof r=="string","Subject DID must be string"),Mr.checkArgument(i&&typeof i=="object","Claim must be object");var a=Object.values(Nf);Mr.checkArgument(a.includes(e),"Invalid right type: "+e);var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalRightToken",e],issuer:t,issuanceDate:new Date().toISOString(),credentialSubject:{id:r,rightType:e,claim:i,jurisdiction:o.jurisdiction||"US",purpose:o.purpose||"legal_right",validFrom:o.validFrom||new Date().toISOString(),validUntil:o.validUntil||null,transferable:o.transferable!==!1,revocable:o.revocable!==!1}};return o.metadata&&(s.credentialSubject.metadata=o.metadata),s},prepareRightToken:function(e,t,r,i,n,o){o=o||{},Mr.checkArgument(typeof e=="string","Right type must be string"),Mr.checkArgument(typeof t=="string","Issuer DID must be string"),Mr.checkArgument(typeof r=="string","Subject DID must be string"),Mr.checkArgument(i&&typeof i=="object","Claim must be object"),Mr.checkArgument(n instanceof mE,"Invalid issuer private key");var a=Object.values(Nf);Mr.checkArgument(a.includes(e),"Invalid right type: "+e);try{var s=this.create(e,t,r,i,n,o),u=this._signToken(s,n);return{success:!0,rightToken:u,tokenHash:u.tokenHash,metadata:{type:e,issuer:t,subject:r,transferable:s.credentialSubject.transferable,revocable:s.credentialSubject.revocable,jurisdiction:s.credentialSubject.jurisdiction},externalOperations:{storeToken:{endpoint:"POST /rights/tokens",data:{token:u,metadata:{type:e,issuer:t,subject:r,transferable:s.credentialSubject.transferable,revocable:s.credentialSubject.revocable,jurisdiction:s.credentialSubject.jurisdiction}}},indexToken:{endpoint:"POST /rights/index",data:{tokenId:u.id,tokenHash:u.tokenHash,type:e,issuer:t,subject:r,issuedAt:u.issuanceDate}},notifyParties:{endpoint:"POST /notifications/right-issued",data:{tokenId:u.id,issuer:t,subject:r,rightType:e}}}}}catch(c){return{success:!1,error:c.message}}},prepareRightTokenVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r,t),this._validateTokenTemporal(e,r,i),this._validateRightType(e,r),t.requireJurisdiction&&this._validateJurisdiction(e,t.allowedJurisdictions,r);var n={valid:r.length===0,errors:r,warnings:i,issuerDID:e.issuer,subjectDID:e.credentialSubject?e.credentialSubject.id:null,rightType:e.credentialSubject?e.credentialSubject.rightType:null,transferable:e.credentialSubject?e.credentialSubject.transferable:null,revocable:e.credentialSubject?e.credentialSubject.revocable:null,verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /rights/verification-record",data:{tokenId:e.id,result:n.valid,errors:r,warnings:i,verifiedAt:n.verifiedAt}},auditVerification:{endpoint:"POST /audit/right-verification",data:{tokenId:e.id,rightType:n.rightType,issuer:n.issuerDID,subject:n.subjectDID,result:n.valid,verifiedAt:n.verifiedAt}},updateTokenStatus:n.valid?{endpoint:"PUT /rights/tokens/"+e.id+"/status",data:{status:"VERIFIED",verifiedAt:n.verifiedAt}}:null}}}catch(o){return{success:!1,error:"Verification preparation failed: "+o.message}}},prepareRightTokenTransfer:function(e,t,r,i){i=i||{},Mr.checkArgument(e&&typeof e=="object","Invalid token"),Mr.checkArgument(typeof t=="string","New owner DID must be string"),Mr.checkArgument(r instanceof mE,"Invalid current owner key");try{var n=this.prepareRightTokenVerification(e,{});if(!n.success||!n.verification.valid)return{success:!1,error:"Cannot transfer invalid token: "+n.verification.errors.join(", ")};if(!e.credentialSubject.transferable)return{success:!1,error:"Token is not transferable"};var o=e.credentialSubject&&e.credentialSubject.id,a=mH({issuer:o},{issuerPublicKey:i.currentOwnerPublicKey});if(!a)return{success:!1,error:"Cannot resolve current owner public key from token.credentialSubject.id; pass options.currentOwnerPublicKey"};if(r.toPublicKey().toString()!==a.toString())return{success:!1,error:"Unauthorized transfer: signing key does not match the current owner"};var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalRightTransfer"],issuer:e.credentialSubject.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,originalToken:e.id,transferFrom:e.credentialSubject.id,transferTo:t,transferDate:new Date().toISOString(),transferReason:i.reason||"ownership_transfer",consideration:i.consideration||null}},u=this._signToken(s,r),c=JSON.parse(JSON.stringify(e));c.id="urn:uuid:"+this._generateUUID(),c.issuanceDate=new Date().toISOString(),c.credentialSubject.id=t,c.credentialSubject.transferHistory=c.credentialSubject.transferHistory||[],c.credentialSubject.transferHistory.push({transferId:u.id,transferDate:u.issuanceDate,from:e.credentialSubject.id,to:t}),delete c.proof;var l=this._signToken(c,r);return{success:!0,newToken:l,transferProof:u,transferId:u.id,externalOperations:{recordTransfer:{endpoint:"POST /rights/transfers",data:{originalTokenId:e.id,newTokenId:l.id,transferProof:u,fromOwner:e.credentialSubject.id,toOwner:t,transferDate:u.issuanceDate}},updateOwnership:{endpoint:"PUT /rights/tokens/"+e.id+"/ownership",data:{newOwner:t,transferId:u.id,transferDate:u.issuanceDate,previousOwner:e.credentialSubject.id}},notifyParties:{endpoint:"POST /notifications/right-transferred",data:{originalTokenId:e.id,newTokenId:l.id,fromOwner:e.credentialSubject.id,toOwner:t,rightType:e.credentialSubject.rightType}},auditTransfer:{endpoint:"POST /audit/right-transfer",data:{originalTokenId:e.id,newTokenId:l.id,transferId:u.id,fromOwner:e.credentialSubject.id,toOwner:t,transferredAt:u.issuanceDate}}}}}catch(p){return{success:!1,error:p.message}}},prepareObligationToken:function(e,t,r,i){Mr.checkArgument(e&&typeof e=="object","Invalid right token"),Mr.checkArgument(typeof t=="string","Obligor DID must be string"),Mr.checkArgument(r&&typeof r=="object","Obligation must be object"),Mr.checkArgument(i instanceof mE,"Invalid issuer key");try{var n={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalObligationToken"],issuer:e.issuer,issuanceDate:new Date().toISOString(),credentialSubject:{id:t,obligationType:"correlative_obligation",correlativeRight:e.id,rightHolder:e.credentialSubject.id,obligation:r,jurisdiction:e.credentialSubject.jurisdiction,purpose:e.credentialSubject.purpose}},o=this._signToken(n,i);return{success:!0,obligationToken:o,correlativeRight:e.id,externalOperations:{storeObligation:{endpoint:"POST /obligations/tokens",data:{obligationToken:o,correlativeRightId:e.id,obligor:t,rightHolder:e.credentialSubject.id}},linkToRight:{endpoint:"POST /rights/tokens/"+e.id+"/obligations",data:{obligationId:o.id,obligor:t,obligationType:"correlative_obligation"}},notifyObligor:{endpoint:"POST /notifications/obligation-created",data:{obligationId:o.id,obligor:t,rightHolder:e.credentialSubject.id,correlativeRight:e.id}}}}}catch(a){return{success:!1,error:a.message}}},prepareRightTypeValidation:function(e){Mr.checkArgument(typeof e=="string","Right type must be string");var t=Object.values(Nf),r=t.includes(e);return{success:!0,validation:{type:e,valid:r,availableTypes:t,category:this._categorizeRightType(e),description:this._getRightTypeDescription(e)},externalOperations:{validateType:{endpoint:"POST /rights/validate-type",data:{type:e,valid:r}}}}},_categorizeRightType:function(e){var t={PropertyTitle:"PROPERTY_RIGHT",VehicleTitle:"PROPERTY_RIGHT",IntellectualProperty:"IP_RIGHT",MusicLicense:"IP_RIGHT",SoftwareLicense:"IP_RIGHT",FinancialInstrument:"FINANCIAL_RIGHT",PromissoryNote:"FINANCIAL_RIGHT",Bond:"FINANCIAL_RIGHT",EquityShare:"FINANCIAL_RIGHT",ProfessionalLicense:"LICENSE_RIGHT",RegulatoryPermit:"LICENSE_RIGHT",AccessRight:"ACCESS_RIGHT",VotingRight:"GOVERNANCE_RIGHT",RoyaltyRight:"IP_RIGHT",UsageRight:"ACCESS_RIGHT"};return t[e]||"UNKNOWN"},_getRightTypeDescription:function(e){var t={PropertyTitle:"Legal ownership of real estate property",VehicleTitle:"Legal ownership of motor vehicle",IntellectualProperty:"Rights to intellectual property assets",MusicLicense:"License for music performance and usage",SoftwareLicense:"License for software usage and distribution",FinancialInstrument:"Rights related to financial instruments",PromissoryNote:"Promise to pay a specified amount",Bond:"Debt security representing loan",EquityShare:"Ownership stake in company",ProfessionalLicense:"License for professional practice",RegulatoryPermit:"Permit for regulated activities",AccessRight:"Right to access resources or locations",VotingRight:"Right to participate in governance",RoyaltyRight:"Right to receive royalty payments",UsageRight:"Right to use specific assets or services"};return t[e]||"Unknown right type"},getRightTypes:function(){return Nf},verifyToken:function(e,t){var r=[];try{if(Mr.checkArgument(e&&typeof e=="object","Invalid token"),!e.proof||!e.proof.jws)return r.push("Missing signature proof"),{valid:!1,errors:r};var i=t instanceof ld?t:ld.fromString(t),n=this._canonicalizeToken(e),o=pE.sha256(f.Buffer.from(n));if(e.tokenHash&&e.tokenHash!==o.toString("hex"))return r.push("Token hash mismatch"),{valid:!1,errors:r};var a=e.proof.jws.split(".");if(a.length!==3||!a[2])return r.push("Malformed JWS"),{valid:!1,errors:r};var s=gH.fromDER(f.Buffer.from(a[2],"base64url")),u=new gE;return u.hashbuf=o,u.sig=s,u.pubkey=i,u.verify()||r.push("Signature verification failed"),{valid:r.length===0,errors:r,tokenHash:o.toString("hex"),verifiedAt:new Date().toISOString()}}catch(c){return r.push(c.message),{valid:!1,errors:r}}},_signToken:function(e,t){var r=this._canonicalizeToken(e),i=pE.sha256(f.Buffer.from(r)),n=new gE;n.hashbuf=i,n.privkey=t,n.pubkey=t.toPublicKey(),n.sign();var o=n.sig,a={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(i,o)},s=JSON.parse(JSON.stringify(e));return s.proof=a,s.tokenHash=i.toString("hex"),s},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=t.toDER().toString("base64url");return i+".."+n},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,JSON.stringify(this._sortObjectKeys(t))},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_validateTokenStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.id||t.push("Missing id"),(!e.type||!Array.isArray(e.type))&&t.push("Missing or invalid type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject"),e.proof||t.push("Missing proof")},_verifyTokenSignature:function(e,t,r){try{if(!e.proof||!e.proof.jws){t.push("Missing signature proof");return}var i=this._canonicalizeToken(e),n=pE.sha256(f.Buffer.from(i));if(e.tokenHash&&e.tokenHash!==n.toString("hex")){t.push("Token hash mismatch");return}var o=mH(e,r);if(!o){t.push("Signature not verified: issuer public key could not be resolved from token.issuer; pass options.issuerPublicKey");return}var a=e.proof.jws.split(".");if(a.length!==3||!a[2]){t.push("Malformed JWS");return}var s=gH.fromDER(f.Buffer.from(a[2],"base64url")),u=new gE;u.hashbuf=n,u.sig=s,u.pubkey=o,u.verify()!==!0&&t.push("Signature verification failed")}catch(c){t.push("Signature verification failed: "+c.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date,n=new Date(e.issuanceDate);if(n>i&&t.push("Token issued in the future"),e.credentialSubject.validFrom){var o=new Date(e.credentialSubject.validFrom);i<o&&r.push("Token not yet valid")}if(e.credentialSubject.validUntil){var a=new Date(e.credentialSubject.validUntil);i>a&&t.push("Token expired")}},_validateRightType:function(e,t){if(!e.credentialSubject.rightType){t.push("Missing rightType");return}var r=Object.values(Nf);r.includes(e.credentialSubject.rightType)||t.push("Invalid right type: "+e.credentialSubject.rightType)},_validateJurisdiction:function(e,t,r){if(!e.credentialSubject.jurisdiction){r.push("Missing jurisdiction");return}t&&Array.isArray(t)&&(t.includes(e.credentialSubject.jurisdiction)||r.push("Jurisdiction not allowed: "+e.credentialSubject.jurisdiction))},_generateUUID:function(){return WQ.uuid4()}};vH.RightTypes=Nf;yH.exports=vH});var wH=T((ehe,_H)=>{"use strict";g();var Cf=Le(),Fi=Ie(),YQ=fd(),ZQ=Vc(),$Q=ts(),Mu={PropertyTitle:{title:"Property Title",description:"Real estate property ownership title",type:"object",required:["propertyId","address","ownershipType"],properties:{propertyId:{type:"string",description:"Unique property identifier"},address:{type:"object",required:["street","city","state","country"],properties:{street:{type:"string"},city:{type:"string"},state:{type:"string"},country:{type:"string"},postalCode:{type:"string"}}},ownershipType:{type:"string",enum:["fee_simple","leasehold","joint_tenancy","tenancy_in_common"]},titleNumber:{type:"string"},registeredDate:{type:"string",format:"date-time"},legalDescription:{type:"string"},encumbrances:{type:"array",items:{type:"object",properties:{type:{type:"string"},amount:{type:"number"},description:{type:"string"}}}}}},VehicleTitle:{title:"Vehicle Title",description:"Motor vehicle ownership title",type:"object",required:["vin","make","model","year"],properties:{vin:{type:"string",pattern:"^[A-HJ-NPR-Z0-9]{17}$",description:"Vehicle Identification Number"},make:{type:"string"},model:{type:"string"},year:{type:"integer",minimum:1900,maximum:2030},titleNumber:{type:"string"},registeredState:{type:"string"},mileage:{type:"integer",minimum:0},color:{type:"string"},fuelType:{type:"string",enum:["gasoline","diesel","electric","hybrid","other"]},liens:{type:"array",items:{type:"object",properties:{lienholderName:{type:"string"},lienAmount:{type:"number"},lienDate:{type:"string",format:"date"}}}}}},PromissoryNote:{title:"Promissory Note",description:"Legal promise to pay a specified amount",type:"object",required:["principal","interestRate","maturityDate","borrower","lender"],properties:{principalAmount:{type:"number",minimum:0,description:"Principal amount in base currency units"},currency:{type:"string",default:"USD"},interestRate:{type:"number",minimum:0,maximum:100,description:"Annual interest rate percentage"},maturityDate:{type:"string",format:"date",description:"Date when principal and interest are due"},payee:{type:"string",description:"DID of the payee (creditor)"},payor:{type:"string",description:"DID of the payor (debtor)"},paymentSchedule:{type:"string",enum:["lump_sum","monthly","quarterly","annually"]},collateral:{type:"array",items:{type:"object",properties:{description:{type:"string"},value:{type:"number"},type:{type:"string"}}}},defaultProvisions:{type:"string"},governingLaw:{type:"string"}}},IntellectualProperty:{title:"Intellectual Property",description:"Intellectual property rights and licensing",type:"object",required:["ipType","title","registrationNumber"],properties:{ipType:{type:"string",enum:["patent","trademark","copyright","trade_secret"]},title:{type:"string"},creator:{type:"string",description:"Creator DID"},registrationNumber:{type:"string"},registrationDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"},jurisdiction:{type:"string"},description:{type:"string"},claims:{type:"array",items:{type:"string"}},priorArt:{type:"array",items:{type:"object",properties:{reference:{type:"string"},date:{type:"string",format:"date"},relevance:{type:"string"}}}}}},ProfessionalLicense:{title:"Professional License",description:"Professional practice license or certification",type:"object",required:["licenseType","licenseNumber","issuingAuthority","expirationDate"],properties:{licenseType:{type:"string"},licenseNumber:{type:"string"},issuingAuthority:{type:"string"},licensee:{type:"string",description:"Licensee DID"},issueDate:{type:"string",format:"date"},expirationDate:{type:"string",format:"date"},renewalDate:{type:"string",format:"date"},jurisdiction:{type:"string"},scope:{type:"string"},restrictions:{type:"array",items:{type:"string"}},continuing_education:{type:"object",properties:{hours_required:{type:"integer"},deadline:{type:"string",format:"date"},completed_hours:{type:"integer"}}}}},MusicLicense:{title:"Music License",description:"Music performance and usage licensing",type:"object",required:["songTitle","artist","licenseType","royaltyRate"],properties:{workTitle:{type:"string"},composer:{type:"string",description:"Composer DID"},performer:{type:"string",description:"Performer DID"},licenseType:{type:"string",enum:["mechanical","performance","synchronization","master_use"]},territory:{type:"string"},duration:{type:"string"},royaltyRate:{type:"number",minimum:0,maximum:100},advancePayment:{type:"number",minimum:0},exclusivity:{type:"boolean"},mediaTypes:{type:"array",items:{type:"string",enum:["cd","vinyl","digital","streaming","broadcast","film","tv"]}},usage_restrictions:{type:"string"},copyrightNotice:{type:"string"}}}},XQ={prepareClaimValidation:function(e,t){try{Fi.checkArgument(e&&typeof e=="object","Invalid claim"),Fi.checkArgument(typeof t=="string","Schema name must be string");var r=Mu[t];if(!r)return{success:!1,error:"Unknown schema: "+t};var i=[],n=[];this._validateObject(e,r,"",i,n);var o={valid:i.length===0,errors:i,warnings:n,schema:t,claimHash:Cf.sha256(f.Buffer.from(this._canonicalizeWith(e,this.CANONICALIZATION.LEGACY))).toString("hex"),canonical:this._canonicalizeWith(e,this.CANONICALIZATION.LEGACY)};return{success:!0,validation:o,claim:e,schema:r,externalOperations:{store:{endpoint:"POST /claims/validate",data:{claim:e,validation:o,schema:t}},index:{endpoint:"POST /claims/index",data:{claimHash:o.claimHash,schemaName:t,valid:o.valid}}}}}catch(a){return{success:!1,error:"Validation preparation failed: "+a.message}}},prepareClaimAttestation:function(e,t,r){try{Fi.checkArgument(e&&typeof e=="object","Invalid claim"),Fi.checkArgument(typeof t=="string","Schema name must be string"),Fi.checkArgument(r&&typeof r=="object","Invalid attestor");var i=this.prepareClaimValidation(e,t);if(!i.success||!i.validation.valid)return{success:!1,error:"Cannot attest invalid claim",validation:i};var n={type:"LTP_CLAIM_ATTESTATION",claimHash:i.validation.claimHash,schemaName:t,attestor:{did:r.did||r.id,name:r.name||"Unknown",authority:r.authority||null,jurisdiction:r.jurisdiction||null},attestedAt:new Date().toISOString(),confidence:r.confidence||100,evidence:r.evidence||null,notes:r.notes||null},o=Cf.sha256(f.Buffer.from(this._canonicalizeWith(n,this.CANONICALIZATION.LEGACY))).toString("hex");return n.attestationHash=o,{success:!0,attestation:n,claim:e,validation:i.validation,externalOperations:{storeAttestation:{endpoint:"POST /claims/"+i.validation.claimHash+"/attestations",data:n},notifyStakeholders:{endpoint:"POST /notifications/claim-attested",data:{claimHash:i.validation.claimHash,attestorDid:n.attestor.did,attestationHash:o}}}}}catch(a){return{success:!1,error:"Attestation preparation failed: "+a.message}}},prepareClaimDispute:function(e,t,r){try{Fi.checkArgument(typeof e=="string","Claim hash must be string"),Fi.checkArgument(t&&typeof t=="object","Invalid disputant"),Fi.checkArgument(r&&typeof r=="object","Invalid dispute");var i={type:"LTP_CLAIM_DISPUTE",claimHash:e,disputant:{did:t.did||t.id,name:t.name||"Unknown",jurisdiction:t.jurisdiction||null},dispute:{reason:r.reason||"UNSPECIFIED",category:r.category||"ACCURACY",description:r.description||"",evidence:r.evidence||null,requestedAction:r.requestedAction||"REVIEW"},disputedAt:new Date().toISOString(),status:"FILED",priority:r.priority||"NORMAL"},n=Cf.sha256(f.Buffer.from(this._canonicalizeWith(i,this.CANONICALIZATION.LEGACY))).toString("hex");return i.disputeHash=n,{success:!0,dispute:i,disputeId:this._generateDisputeId(e),externalOperations:{fileDispute:{endpoint:"POST /claims/"+e+"/disputes",data:i},notifyStakeholders:{endpoint:"POST /notifications/claim-disputed",data:{claimHash:e,disputantDid:i.disputant.did,disputeHash:n}},escalate:{endpoint:"POST /disputes/escalate",data:{disputeHash:n,priority:i.priority}}}}}catch(o){return{success:!1,error:"Dispute preparation failed: "+o.message}}},prepareBulkClaimValidation:function(e,t){try{Fi.checkArgument(Array.isArray(e),"Claims must be array"),Fi.checkArgument(typeof t=="string","Schema name must be string");var r=[],i=[],n=0;e.forEach(function(s,u){try{var c=this.prepareClaimValidation(s,t);c.success&&c.validation.valid&&n++,r.push({index:u,result:c})}catch(l){i.push({index:u,error:l.message})}}.bind(this));var o=this._generateBatchId(),a=Cf.sha256(f.Buffer.from(JSON.stringify(r.map(s=>s.result.validation.claimHash)))).toString("hex");return{success:!0,batchId:o,batchHash:a,totalClaims:e.length,validClaims:n,invalidClaims:e.length-n,validations:r,errors:i,externalOperations:{storeBatch:{endpoint:"POST /claims/batch-validate",data:{batchId:o,batchHash:a,schemaName:t,validations:r}},generateReport:{endpoint:"POST /reports/bulk-validation",data:{batchId:o,summary:{total:e.length,valid:n,invalid:e.length-n}}}}}}catch(s){return{success:!1,error:"Bulk validation preparation failed: "+s.message}}},CANONICALIZATION:{JCS:"jcs",LEGACY:"legacy"},canonicalize:function(e,t){return this._canonicalizeWith(e,this._resolveCanonicalization(t,"LTP.Claim.canonicalize"))},hash:function(e,t){var r=this._canonicalizeWith(e,this._resolveCanonicalization(t,"LTP.Claim.hash"));return Cf.sha256(f.Buffer.from(r)).toString("hex")},_canonicalizeWith:function(e,t){if(Fi.checkArgument(e&&typeof e=="object","Invalid claim"),t===this.CANONICALIZATION.JCS)return ZQ.stringify(e);var r=this._sortObjectKeys(e);return JSON.stringify(r)},_resolveCanonicalization:function(e,t){return e===void 0?($Q({what:t+"() without a canonicalization argument",since:"9.2.0",removeIn:"10.0.0",use:t+"(claim, bsv.LTP.Claim.CANONICALIZATION.JCS)",why:"the default sorted-key form is not RFC 8785, so other implementations compute a different claim hash"}),this.CANONICALIZATION.LEGACY):(Fi.checkArgument(e===this.CANONICALIZATION.JCS||e===this.CANONICALIZATION.LEGACY,"Unknown canonicalization: "+e+". Expected 'jcs' or 'legacy' (bsv.LTP.Claim.CANONICALIZATION)"),e)},prepareClaimTemplate:function(e,t){t=t||{};try{var r=Mu[e];if(!r)return{success:!1,error:"Unknown schema: "+e};var i=this._createTemplateFromSchema(r),n=this._generateFormStructure(r);return{success:!0,schemaName:e,template:i,schema:r,formStructure:n,validation:{required:r.required||[],patterns:this._extractPatterns(r),enums:this._extractEnums(r)},externalOperations:{generateForm:{endpoint:"POST /forms/generate",data:{schemaName:e,formStructure:n,template:i}},saveTemplate:{endpoint:"POST /templates/claim",data:{schemaName:e,template:i,customizations:t.customizations||{}}}}}}catch(o){return{success:!1,error:"Template preparation failed: "+o.message}}},getSchemas:function(){return Mu},getSchemaNames:function(){return Object.keys(Mu)},getSchema:function(e){return Mu[e]||null},addSchema:function(e,t){Fi.checkArgument(typeof e=="string","Schema name must be string"),Fi.checkArgument(t&&typeof t=="object","Invalid schema"),Mu[e]=t},createTemplate:function(e){var t=Mu[e];if(!t)throw new Error("Unknown schema: "+e);return this._createTemplateFromSchema(t)},_generateDisputeId:function(e){var t="dispute_"+e+"_"+Date.now();return Cf.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_generateBatchId:function(){return YQ.randomHex(16)},_generateFormStructure:function(e){var t={type:"form",title:e.title||"Legal Claim Form",description:e.description||"",fields:[]};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r],n={name:r,label:this._humanizeFieldName(r),type:this._mapSchemaTypeToFormType(i),required:e.required&&e.required.includes(r),validation:this._extractFieldValidation(i)};i.enum&&(n.options=i.enum.map(function(o){return{value:o,label:this._humanizeValue(o)}}.bind(this))),t.fields.push(n)}.bind(this)),t},_extractPatterns:function(e){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];i.pattern&&(t[r]=i.pattern)}),t},_extractEnums:function(e){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];i.enum&&(t[r]=i.enum)}),t},_mapSchemaTypeToFormType:function(e){switch(e.type){case"string":return e.enum?"select":e.format==="date"?"date":e.format==="date-time"?"datetime":"text";case"number":case"integer":return"number";case"boolean":return"checkbox";case"array":return"list";case"object":return"fieldset";default:return"text"}},_extractFieldValidation:function(e){var t={};return e.pattern&&(t.pattern=e.pattern),e.minimum!==void 0&&(t.min=e.minimum),e.maximum!==void 0&&(t.max=e.maximum),e.format&&(t.format=e.format),t},_humanizeFieldName:function(e){return e.replace(/([A-Z])/g," $1").replace(/^./,function(t){return t.toUpperCase()}).replace(/_/g," ")},_humanizeValue:function(e){return e.replace(/_/g," ").replace(/\b\w/g,function(t){return t.toUpperCase()})},_validateObject:function(e,t,r,i,n){t.type==="object"?(t.required&&Array.isArray(t.required)&&t.required.forEach(function(o){e.hasOwnProperty(o)||i.push("Missing required field: "+this._getFieldPath(r,o))}.bind(this)),t.properties&&Object.keys(e).forEach(function(o){var a=this._getFieldPath(r,o),s=t.properties[o];s?this._validateValue(e[o],s,a,i,n):n.push("Unknown field: "+a)}.bind(this))):this._validateValue(e,t,r,i,n)},_validateValue:function(e,t,r,i,n){if(t.type){var o=Array.isArray(e)?"array":typeof e;if(o!==t.type){i.push("Invalid type for "+r+": expected "+t.type+", got "+o);return}}if(t.type==="string"&&(t.pattern&&!new RegExp(t.pattern).test(e)&&i.push("Value does not match pattern for "+r),t.enum&&!t.enum.includes(e)&&i.push("Invalid enum value for "+r+": "+e),t.format==="date"&&!this._isValidDate(e)&&i.push("Invalid date format for "+r),t.format==="date-time"&&!this._isValidDateTime(e)&&i.push("Invalid date-time format for "+r)),(t.type==="number"||t.type==="integer")&&(t.minimum!==void 0&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),t.maximum!==void 0&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum),t.type==="integer"&&!Number.isInteger(e)&&i.push("Value must be integer for "+r)),t.type==="array"&&t.items)for(var a=0;a<e.length;a++)this._validateValue(e[a],t.items,r+"["+a+"]",i,n);t.type==="object"&&this._validateObject(e,t,r,i,n)},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_createTemplateFromSchema:function(e){if(e.type==="object"){var t={};return e.properties&&Object.keys(e.properties).forEach(function(r){var i=e.properties[r];t[r]=this._getDefaultValue(i)}.bind(this)),t}return this._getDefaultValue(e)},_getDefaultValue:function(e){if(e.default!==void 0)return e.default;switch(e.type){case"string":return e.enum?e.enum[0]:e.format==="date"?"2023-01-01":e.format==="date-time"?new Date().toISOString():"PLACEHOLDER_STRING";case"number":case"integer":return e.minimum||0;case"boolean":return!1;case"array":return[];case"object":return this._createTemplateFromSchema(e);default:return null}},_getFieldPath:function(e,t){return e?e+"."+t:t},_isValidDate:function(e){var t=new Date(e);return!isNaN(t.getTime())&&e.match(/^\d{4}-\d{2}-\d{2}$/)},_isValidDateTime:function(e){var t=new Date(e);return!isNaN(t.getTime())}};_H.exports=XQ});var EH=T((rhe,SH)=>{"use strict";g();var hd=Le(),Lf=Ie(),JQ={prepareTokenCommitment:function(e,t){t=t||{},Lf.checkArgument(e&&typeof e=="object","Invalid token");try{var r=this._createCommitment(e,t),i=this._formatOpReturn(r,t),n=this._createTxTemplate(i,t);return{success:!0,commitment:r,opReturnData:i,txTemplate:n,preparedAt:new Date().toISOString(),metadata:{tokenId:e.id,purpose:t.purpose||"legal_token_anchor",version:"LTP.v1"}}}catch(o){return{success:!1,error:o.message}}},prepareBatchCommitment:function(e,t){t=t||{},Lf.checkArgument(Array.isArray(e),"Tokens must be array");try{var r=this._createBatchCommitment(e,t),i=this._formatOpReturn(r,t),n=this._createTxTemplate(i,t);return{success:!0,batchCommitment:r,opReturnData:i,txTemplate:n,tokenCount:e.length,preparedAt:new Date().toISOString(),metadata:{purpose:t.purpose||"legal_token_batch_anchor",version:"LTP.v1"}}}catch(o){return{success:!1,error:o.message}}},verifyTokenAnchor:function(e,t,r){Lf.checkArgument(e&&typeof e=="object","Invalid token"),Lf.checkArgument(typeof t=="string","Transaction ID must be string");try{var i=this._createCommitment(e,{}),n=this._extractOpReturn(r);if(!n)return{valid:!1,error:"No OP_RETURN data found in transaction"};var o=this._verifyCommitment(i,n);return{valid:o,chainVerified:!1,txid:t,commitment:i,anchorData:n,verifiedAt:new Date().toISOString()}}catch(a){return{valid:!1,error:a.message}}},formatRevocation:function(e,t){Lf.checkArgument(typeof e=="string","Token ID must be string"),Lf.checkArgument(t&&typeof t=="object","Invalid revocation data");try{var r={type:"LTP_REVOCATION",tokenId:e,reason:t.reason||"UNSPECIFIED",revokedBy:t.revokedBy||"UNKNOWN",revokedAt:new Date().toISOString(),effectiveDate:t.effectiveDate||new Date().toISOString(),legalBasis:t.legalBasis||null,evidence:t.evidence||null},i=hd.sha256(f.Buffer.from(JSON.stringify(r))).toString("hex");return{success:!0,revocation:r,revocationHash:i,opReturnData:this._formatOpReturn({hash:i,type:"REVOCATION"},{})}}catch(n){return{success:!1,error:n.message}}},_createCommitment:function(e,t){var r=this._canonicalizeToken(e),i={type:"LTP_TOKEN",tokenHash:hd.sha256(f.Buffer.from(r)).toString("hex"),tokenId:e.id,timestamp:new Date().toISOString(),purpose:t.purpose||"legal_token"},n=hd.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex");return{hash:n,data:i,canonical:r}},_createBatchCommitment:function(e,t){var r=[],i=[];e.forEach(function(s){var u=this._createCommitment(s,t);r.push(u.hash),i.push(s.id)}.bind(this));var n=this._createMerkleRoot(r),o={type:"LTP_BATCH",merkleRoot:n,tokenCount:e.length,tokenIds:i,timestamp:new Date().toISOString(),purpose:t.purpose||"batch_anchor"},a=hd.sha256(f.Buffer.from(JSON.stringify(o))).toString("hex");return{hash:a,data:o,merkleRoot:n,tokenHashes:r}},_formatOpReturn:function(e,t){var r=t.prefix||"LTP.v1",i=e.hash;return{prefix:r,data:i,full:r+"."+i,bytes:f.Buffer.from(r+"."+i,"utf8"),size:f.Buffer.from(r+"."+i,"utf8").length}},_createTxTemplate:function(e,t){try{var r={version:1,inputs:[],outputs:[{satoshis:0,script:"OP_RETURN "+e.data}],locktime:0};return t.feeOutput&&r.outputs.push(t.feeOutput),{template:r,opReturn:e,estimatedSize:this._estimateSize(r),instructions:{step1:"Add input UTXOs to cover fees",step2:"Add change output if needed",step3:"Sign transaction with appropriate keys",step4:"Broadcast to BSV network"}}}catch(i){throw new Error("Failed to create transaction template: "+i.message)}},_extractOpReturn:function(e){try{if(!e||!e.outputs)return null;for(var t=0;t<e.outputs.length;t++){var r=e.outputs[t];if(r.script&&r.script.startsWith("OP_RETURN")){var i=r.script.replace("OP_RETURN ","");return{raw:i,decoded:f.Buffer.from(i,"hex").toString("utf8")}}}return null}catch{return null}},_verifyCommitment:function(e,t){try{return!t||!t.decoded?!1:t.decoded.includes(e.hash)}catch{return!1}},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,delete t.anchorTx,delete t.anchorBlock,JSON.stringify(this._sortObjectKeys(t))},_createMerkleRoot:function(e){if(e.length===0)return null;if(e.length===1)return e[0];for(var t=e.slice();t.length>1;){for(var r=[],i=0;i<t.length;i+=2){var n=t[i],o=t[i+1]||n,a=f.Buffer.concat([f.Buffer.from(n,"hex"),f.Buffer.from(o,"hex")]),s=hd.sha256(a).toString("hex");r.push(s)}t=r}return t[0]},_estimateSize:function(e){var t=10,r=e.outputs.length*34,i=148;return{base:t+r,withOneInput:t+r+i,bytesPerInput:i}},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};SH.exports=JQ});var IH=T((nhe,OH)=>{"use strict";g();var QQ=sr(),Wn=Le(),xH=dn(),eee=gt(),tee=ei(),Ri=Ie(),ree={prepareSignatureProof:function(e,t,r){r=r||{},Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t instanceof tee,"Invalid private key");try{var i=this._canonicalizeForSigning(e),n=Wn.sha256(f.Buffer.from(i)),o=new xH;o.hashbuf=n,o.privkey=t,o.pubkey=t.toPublicKey(),o.sign();var a=o.sig,s={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:r.purpose||"assertionMethod",jws:this._createJWS(n,a),proofValue:a.toDER().toString("hex")};return{success:!0,proof:s,tokenHash:n.toString("hex"),canonical:i,signingKey:{publicKey:t.toPublicKey().toString(),keyId:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1"},externalOperations:{storeProof:{endpoint:"POST /proofs/signature",data:{tokenHash:n.toString("hex"),proof:s,signingKey:t.toPublicKey().toString()}},verifyProof:{endpoint:"POST /proofs/verify-signature",data:{tokenHash:n.toString("hex"),signature:a.toDER().toString("hex"),publicKey:t.toPublicKey().toString()}}}}}catch(u){return{success:!1,error:u.message}}},prepareSignatureVerification:function(e,t){try{if(Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(typeof t=="string","Public key must be string"),!e.proof)return{success:!1,error:"No proof found in token"};var r=this._canonicalizeForSigning(e),i=Wn.sha256(f.Buffer.from(r)),n=eee.fromDER(f.Buffer.from(e.proof.proofValue,"hex")),o={tokenHash:i.toString("hex"),signature:n.toDER().toString("hex"),publicKey:t,proof:e.proof,canonical:r},a=new xH;a.hashbuf=i,a.sig=n,a.pubkey=QQ.fromString(t);var s=a.verify()===!0;return{success:!0,verification:{valid:s,tokenHash:i.toString("hex"),signatureValid:s,publicKey:t,verifiedAt:new Date().toISOString()},verificationData:o,externalOperations:{recordVerification:{endpoint:"POST /proofs/verification-record",data:{tokenHash:i.toString("hex"),result:s,publicKey:t,verifiedAt:new Date().toISOString()}},auditVerification:{endpoint:"POST /audit/proof-verification",data:{tokenId:e.id,proofType:e.proof.type,result:s,verifier:t}}}}}catch(u){return{success:!1,error:u.message}}},prepareSelectiveDisclosure:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(Array.isArray(t),"Revealed fields must be array"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=this._createFieldCommitments(e,r),n=this._createMerkleTree(i),o=[],a=[];t.forEach(function(u){var c=this._getNestedValue(e,u),l=this._findFieldCommitment(i,u);if(l){o.push({path:u,value:c,commitment:l.hash,salt:l.salt});var p=this._generateMerkleProof(n,l.index);a.push({path:u,leafIndex:l.index,proof:p})}}.bind(this));var s={type:"LegalTokenSelectiveDisclosure",created:new Date().toISOString(),proofPurpose:"selectiveDisclosure",verificationMethod:e.proof?e.proof.verificationMethod:null,nonce:r,merkleRoot:n.root,disclosures:o,merkleProofs:a,totalFields:i.length};return{success:!0,proof:s,hiddenFieldCount:i.length-o.length,revealedFieldCount:o.length,externalOperations:{storeDisclosure:{endpoint:"POST /proofs/selective-disclosure",data:{tokenId:e.id,proof:s,merkleRoot:n.root}},verifyDisclosure:{endpoint:"POST /proofs/verify-disclosure",data:{proof:s,expectedNonce:r}},auditDisclosure:{endpoint:"POST /audit/selective-disclosure",data:{tokenId:e.id,revealedFields:t,totalFields:i.length,disclosedAt:new Date().toISOString()}}}}}catch(u){return{success:!1,error:u.message}}},prepareSelectiveDisclosureVerification:function(e,t){try{if(Ri.checkArgument(e&&typeof e=="object","Invalid proof"),Ri.checkArgument(typeof t=="string","Expected nonce must be string"),e.nonce!==t)return{success:!1,error:"Nonce mismatch"};var r=[],i=[];e.disclosures.forEach(function(o,a){var s=e.merkleProofs[a],u=this._hashField(o.path,o.value,o.salt);if(u!==o.commitment){i.push("Invalid commitment for field: "+o.path);return}var c=this._verifyMerkleProof(o.commitment,s.leafIndex,s.proof,e.merkleRoot);c?r.push({path:o.path,value:o.value,verified:!0}):i.push("Invalid Merkle proof for field: "+o.path)}.bind(this));var n={valid:i.length===0,errors:i,disclosures:r,merkleRoot:e.merkleRoot,totalFields:e.totalFields,verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /proofs/disclosure-verification",data:{proofId:e.id||"unknown",result:n.valid,verifiedFields:r.length,totalFields:e.totalFields,verifiedAt:n.verifiedAt}},auditVerification:{endpoint:"POST /audit/disclosure-verification",data:{merkleRoot:e.merkleRoot,disclosuresVerified:r.length,errors:i.length,result:n.valid}}}}}catch(o){return{success:!1,error:o.message}}},prepareLegalValidityProof:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t&&typeof t=="object","Invalid jurisdiction"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=t.requirements||[],n=[],o=!0;i.forEach(function(s){var u=this._checkLegalRequirement(e,s);n.push(u),u.satisfied||(o=!1)}.bind(this));var a={type:"LegalValidityProof",created:new Date().toISOString(),proofPurpose:"legalValidity",jurisdiction:t.code,nonce:r,valid:o,checks:n,complianceHash:this._hashCompliance(e,t,r)};return{success:!0,proof:a,valid:o,complianceReport:{jurisdiction:t.code,totalRequirements:i.length,satisfiedRequirements:n.filter(s=>s.satisfied).length,failedRequirements:n.filter(s=>!s.satisfied).length,overallCompliance:o},externalOperations:{submitCompliance:{endpoint:"POST /compliance/legal-validity",data:{tokenId:e.id,jurisdiction:t.code,proof:a,complianceReport:{jurisdiction:t.code,totalRequirements:i.length,satisfiedRequirements:n.filter(s=>s.satisfied).length,failedRequirements:n.filter(s=>!s.satisfied).length,overallCompliance:o}}},auditCompliance:{endpoint:"POST /audit/compliance-check",data:{tokenId:e.id,jurisdiction:t.code,result:o,checkedAt:new Date().toISOString(),requirements:n}},notifyRegulator:o?null:{endpoint:"POST /notifications/compliance-failure",data:{tokenId:e.id,jurisdiction:t.code,failedRequirements:n.filter(s=>!s.satisfied)}}}}}catch(s){return{success:!1,error:s.message}}},prepareZeroKnowledgeProof:function(e,t,r){Ri.checkArgument(e&&typeof e=="object","Invalid token"),Ri.checkArgument(t&&typeof t=="object","Invalid statement"),Ri.checkArgument(typeof r=="string","Nonce must be string");try{var i=Wn.sha256(f.Buffer.from(this._canonicalizeForSigning(e)+r)).toString("hex"),n={type:"LegalTokenZKProof",created:new Date().toISOString(),proofPurpose:"zeroKnowledge",statement:{claim:t.claim||"UNSPECIFIED",predicate:t.predicate||"SATISFIES",threshold:t.threshold||null},commitment:i,nonce:r,proofData:this._generateZKProofData(e,t,r)};return{success:!0,proof:n,commitment:i,externalOperations:{storeZKProof:{endpoint:"POST /proofs/zero-knowledge",data:{tokenId:e.id,proof:n,statement:t}},verifyZKProof:{endpoint:"POST /proofs/verify-zk",data:{proof:n,expectedNonce:r}},auditZKProof:{endpoint:"POST /audit/zk-proof",data:{tokenId:e.id,statement:t.claim,proofGenerated:new Date().toISOString()}}}}}catch(o){return{success:!1,error:o.message}}},_generateZKProofData:function(e,t,r){var i={challenge:Wn.sha256(f.Buffer.from(t.claim+r)).toString("hex"),response:Wn.sha256(f.Buffer.from(this._canonicalizeForSigning(e)+t.claim)).toString("hex"),witness:Wn.sha256(f.Buffer.from(r+e.id+t.predicate)).toString("hex")};return i},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=e.toString("base64url"),o=t.toDER().toString("base64url");return i+".."+o},_canonicalizeForSigning:function(e){var t=JSON.parse(JSON.stringify(e));delete t.proof,delete t.tokenHash;var r=this._sortObjectKeys(t);return JSON.stringify(r)},_createFieldCommitments:function(e,t){var r=[],i=0;return this._traverseObject(e,"",function(n,o){if(n!=="proof"&&n!=="tokenHash"){var a=Wn.sha256(f.Buffer.from(t+n+i)).toString("hex"),s=this._hashField(n,o,a);r.push({path:n,value:o,salt:a,hash:s,index:i}),i++}}.bind(this)),r},_hashField:function(e,t,r){var i=e+":"+JSON.stringify(t)+":"+r;return Wn.sha256(f.Buffer.from(i)).toString("hex")},_createMerkleTree:function(e){var t=e.map(function(l){return l.hash});if(t.length===0)return{root:null,levels:[]};for(var r=[t],i=t;i.length>1;){for(var n=[],o=0;o<i.length;o+=2){var a=i[o],s=i[o+1]||a,u=f.Buffer.concat([f.Buffer.from(a,"hex"),f.Buffer.from(s,"hex")]),c=Wn.sha256(u).toString("hex");n.push(c)}r.push(n),i=n}return{root:i[0],levels:r}},_generateMerkleProof:function(e,t){for(var r=[],i=t,n=0;n<e.levels.length-1;n++){var o=e.levels[n],a=i%2===0,s=a?i+1:i-1;s<o.length&&r.push({hash:o[s],isLeft:!a}),i=Math.floor(i/2)}return r},_verifyMerkleProof:function(e,t,r,i){for(var n=e,o=t,a=0;a<r.length;a++){var s=r[a],u=o%2===0,c;s.isLeft?c=f.Buffer.concat([f.Buffer.from(s.hash,"hex"),f.Buffer.from(n,"hex")]):c=f.Buffer.concat([f.Buffer.from(n,"hex"),f.Buffer.from(s.hash,"hex")]),n=Wn.sha256(c).toString("hex"),o=Math.floor(o/2)}return n===i},_traverseObject:function(e,t,r){Array.isArray(e)?e.forEach(function(i,n){var o=t+"["+n+"]";this._traverseObject(i,o,r)}.bind(this)):e!==null&&typeof e=="object"?Object.keys(e).forEach(function(i){var n=t?t+"."+i:i;this._traverseObject(e[i],n,r)}.bind(this)):r(t,e)},_getNestedValue:function(e,t){return t.split(".").reduce(function(r,i){return r&&r[i]},e)},_findFieldCommitment:function(e,t){return e.find(function(r){return r.path===t})},_checkLegalRequirement:function(e,t){switch(t.type){case"field_present":var r=this._getNestedValue(e,t.field);return{requirement:t.type,field:t.field,satisfied:r!=null};case"field_value":var r=this._getNestedValue(e,t.field);return{requirement:t.type,field:t.field,satisfied:r===t.expectedValue};case"temporal_validity":var i=new Date,n=new Date(e.issuanceDate);return{requirement:t.type,satisfied:n<=i};default:return{requirement:t.type,satisfied:!1,error:"Unknown requirement type"}}},_hashCompliance:function(e,t,r){var i={tokenId:e.id,jurisdiction:t.code,nonce:r,timestamp:new Date().toISOString()};return Wn.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex")},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};OH.exports=ree});var PH=T((uhe,TH)=>{"use strict";g();var dd=Le(),ahe=Ni(),she=zt(),ji=Ie(),AH=fd(),iee={prepareRegistry:function(e){e=e||{},ji.checkArgument(typeof e=="object","Config must be object");var t={id:e.id||this._generateRegistryId(),name:e.name||"Legal Token Registry",jurisdiction:e.jurisdiction||"GLOBAL",authority:e.authority||null,created:new Date().toISOString(),version:"1.0.0",config:{allowPublicRegistration:e.allowPublicRegistration||!1,requireApproval:e.requireApproval||!0,enableRevocation:e.enableRevocation!==!1,enableAuditTrail:e.enableAuditTrail!==!1,retentionPeriod:e.retentionPeriod||"7Y",complianceLevel:e.complianceLevel||"STANDARD"},dataStructure:{tokens:"Map<tokenId, registrationRecord>",revocations:"Map<tokenId, revocationRecord>",auditLog:"Array<auditEntry>",statistics:{totalTokens:0,activeTokens:0,revokedTokens:0,registrations:0}},externalStorage:{required:!0,type:"database_or_blockchain",endpoints:{store:"POST /registry/{id}/tokens",retrieve:"GET /registry/{id}/tokens/{tokenId}",search:"GET /registry/{id}/search",revoke:"POST /registry/{id}/revocations"}}},r=this._prepareAuditEntry({action:"REGISTRY_CREATED",actor:e.authority,timestamp:t.created,metadata:{jurisdiction:t.jurisdiction,config:t.config}});return{success:!0,registry:t,initialAudit:r,instructions:{step1:"Store registry configuration in external system",step2:"Initialize token storage with provided data structure",step3:"Set up audit logging with provided templates",step4:"Configure external endpoints for registry operations"}}},prepareTokenRegistration:function(e,t,r){r=r||{},ji.checkArgument(e&&typeof e=="object","Invalid token"),ji.checkArgument(t&&typeof t=="object","Invalid registry config");try{var i=this._validateTokenForRegistration(e,t);if(!i.valid)return{success:!1,error:"Token validation failed: "+i.error};var n={tokenId:e.id,tokenHash:this._hashToken(e),token:e,status:t.requireApproval?"PENDING":"ACTIVE",registeredBy:r.registeredBy||"UNKNOWN",registeredAt:new Date().toISOString(),approvedBy:null,approvedAt:null,metadata:r.metadata||{},compliance:{jurisdiction:e.jurisdiction||t.jurisdiction,level:this._calculateComplianceLevel(e),checks:i.checks||[]}},o=this._prepareAuditEntry({action:"TOKEN_REGISTERED",actor:r.registeredBy,tokenId:e.id,timestamp:n.registeredAt,metadata:{status:n.status,tokenType:e.type,compliance:n.compliance}});return{success:!0,registrationRecord:n,auditEntry:o,registrationId:this._generateRegistrationId(e.id),validation:i,externalOperations:{store:{endpoint:"POST /registry/"+t.id+"/tokens",data:n},audit:{endpoint:"POST /registry/"+t.id+"/audit",data:o}}}}catch(a){return{success:!1,error:a.message}}},prepareTokenApproval:function(e,t,r){try{ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(typeof t=="string","Approver must be string"),ji.checkArgument(r&&typeof r=="object","Invalid registry config");var i={tokenId:e,status:"ACTIVE",approvedBy:t,approvedAt:new Date().toISOString()},n=this._prepareAuditEntry({action:"TOKEN_APPROVED",actor:t,tokenId:e,timestamp:i.approvedAt});return{success:!0,approvalData:i,auditEntry:n,externalOperations:{update:{endpoint:"PUT /registry/"+r.id+"/tokens/"+e+"/status",data:i},audit:{endpoint:"POST /registry/"+r.id+"/audit",data:n}}}}catch(o){return{success:!1,error:o.message}}},prepareTokenRevocation:function(e,t,r){try{if(ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(t&&typeof t=="object","Invalid revocation"),ji.checkArgument(r&&typeof r=="object","Invalid registry config"),!r.enableRevocation)return{success:!1,error:"Revocation is disabled for this registry"};var i={tokenId:e,reason:t.reason||"UNSPECIFIED",revokedBy:t.revokedBy||"UNKNOWN",revokedAt:new Date().toISOString(),effectiveDate:t.effectiveDate||new Date().toISOString(),legalBasis:t.legalBasis||null,evidence:t.evidence||null,revocationHash:this._generateRevocationHash(e,t)},n={tokenId:e,status:"REVOKED",revokedAt:i.revokedAt,revocationReason:i.reason},o=this._prepareAuditEntry({action:"TOKEN_REVOKED",actor:t.revokedBy,tokenId:e,timestamp:i.revokedAt,metadata:{reason:i.reason,legalBasis:i.legalBasis}});return{success:!0,revocationRecord:i,statusUpdate:n,auditEntry:o,revocationId:this._generateRevocationId(e),externalOperations:{storeRevocation:{endpoint:"POST /registry/"+r.id+"/revocations",data:i},updateStatus:{endpoint:"PUT /registry/"+r.id+"/tokens/"+e+"/status",data:n},audit:{endpoint:"POST /registry/"+r.id+"/audit",data:o}}}}catch(a){return{success:!1,error:a.message}}},prepareTokenStatusQuery:function(e,t){try{return ji.checkArgument(typeof e=="string","Token ID must be string"),ji.checkArgument(t&&typeof t=="object","Invalid registry config"),{success:!0,query:{tokenId:e,registryId:t.id},externalOperations:{retrieve:{endpoint:"GET /registry/"+t.id+"/tokens/"+e,method:"GET"},checkRevocation:{endpoint:"GET /registry/"+t.id+"/revocations/"+e,method:"GET"}},expectedResponse:{found:"boolean",status:"string (PENDING|ACTIVE|REVOKED)",registeredAt:"ISO datetime",registeredBy:"string",approvedAt:"ISO datetime or null",approvedBy:"string or null",revokedAt:"ISO datetime or null",revocationReason:"string or null",compliance:"object",revocation:"object or null"}}}catch(r){return{success:!1,error:r.message}}},prepareTokenSearch:function(e,t){e=e||{};try{ji.checkArgument(t&&typeof t=="object","Invalid registry config");var r=[];e.status&&r.push("status="+encodeURIComponent(e.status)),e.type&&r.push("type="+encodeURIComponent(e.type)),e.registeredBy&&r.push("registeredBy="+encodeURIComponent(e.registeredBy)),e.jurisdiction&&r.push("jurisdiction="+encodeURIComponent(e.jurisdiction)),e.dateFrom&&r.push("dateFrom="+encodeURIComponent(e.dateFrom)),e.dateTo&&r.push("dateTo="+encodeURIComponent(e.dateTo)),e.includeTokens&&r.push("includeTokens=true"),e.sortBy&&r.push("sortBy="+encodeURIComponent(e.sortBy)),e.sortOrder&&r.push("sortOrder="+encodeURIComponent(e.sortOrder));var i=e.offset||0,n=e.limit||100;r.push("offset="+i),r.push("limit="+n);var o=r.length>0?"?"+r.join("&"):"";return{success:!0,searchCriteria:e,externalOperations:{search:{endpoint:"GET /registry/"+t.id+"/search"+o,method:"GET"}},expectedResponse:{success:"boolean",results:"Array<tokenRecord>",totalCount:"number",totalRegistrations:"number",offset:"number",limit:"number",hasMore:"boolean"}}}catch(a){return{success:!1,error:a.message}}},prepareStatisticsQuery:function(e){return ji.checkArgument(e&&typeof e=="object","Invalid registry config"),{success:!0,query:{registryId:e.id},externalOperations:{getStatistics:{endpoint:"GET /registry/"+e.id+"/statistics",method:"GET"}},expectedResponse:{id:"string",name:"string",jurisdiction:"string",created:"ISO datetime",statistics:{totalTokens:"number",activeTokens:"number",revokedTokens:"number",registrations:"number"},auditEntries:"number",lastActivity:"ISO datetime"}}},prepareAuditLogQuery:function(e,t){if(t=t||{},ji.checkArgument(e&&typeof e=="object","Invalid registry config"),!e.enableAuditTrail)return{success:!1,error:"Audit trail is disabled"};var r=[];t.action&&r.push("action="+encodeURIComponent(t.action)),t.actor&&r.push("actor="+encodeURIComponent(t.actor)),t.tokenId&&r.push("tokenId="+encodeURIComponent(t.tokenId)),t.dateFrom&&r.push("dateFrom="+encodeURIComponent(t.dateFrom)),t.dateTo&&r.push("dateTo="+encodeURIComponent(t.dateTo));var i=t.offset||0,n=t.limit||100;r.push("offset="+i),r.push("limit="+n);var o=r.length>0?"?"+r.join("&"):"";return{success:!0,auditOptions:t,externalOperations:{getAuditLog:{endpoint:"GET /registry/"+e.id+"/audit"+o,method:"GET"}},expectedResponse:{success:"boolean",entries:"Array<auditEntry>",totalEntries:"number",offset:"number",limit:"number",hasMore:"boolean"}}},_generateRegistryId:function(){return"reg_"+AH.randomHex(16)},_generateRegistrationId:function(e){var t="reg_"+e+"_"+Date.now();return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_generateRevocationId:function(e){var t="rev_"+e+"_"+Date.now();return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)},_hashToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,dd.sha256(f.Buffer.from(JSON.stringify(t))).toString("hex")},_generateRevocationHash:function(e,t){var r=e+(t.reason||"")+(t.revokedBy||"")+Date.now();return dd.sha256(f.Buffer.from(r)).toString("hex")},_validateTokenForRegistration:function(e,t){var r=[],i=!0;return e.id?r.push({field:"id",valid:!0}):(r.push({field:"id",valid:!1,error:"Missing token ID"}),i=!1),e.type?r.push({field:"type",valid:!0}):(r.push({field:"type",valid:!1,error:"Missing token type"}),i=!1),e.issuanceDate?r.push({field:"issuanceDate",valid:!0}):(r.push({field:"issuanceDate",valid:!1,error:"Missing issuance date"}),i=!1),e.proof?r.push({field:"proof",valid:!0}):(r.push({field:"proof",valid:!1,error:"Missing cryptographic proof"}),i=!1),{valid:i,checks:r}},_calculateComplianceLevel:function(e){var t="BASIC";return e.proof&&e.proof.type&&(t="STANDARD"),e.jurisdiction&&e.legalBasis&&(t="ENHANCED"),e.attestations&&e.attestations.length>0&&(t="PREMIUM"),t},_prepareAuditEntry:function(e){var t={id:this._generateAuditId(),action:e.action,actor:e.actor||"SYSTEM",tokenId:e.tokenId||null,timestamp:e.timestamp||new Date().toISOString(),metadata:e.metadata||{},hash:this._generateAuditHash(e)};return t},_generateAuditId:function(){return"audit_"+AH.randomHex(32)},_generateAuditHash:function(e){var t=(e.action||"")+(e.actor||"")+(e.tokenId||"")+(e.timestamp||"");return dd.sha256(f.Buffer.from(t)).toString("hex").substring(0,16)}};TH.exports=iee});var NH=T((fhe,BH)=>{"use strict";g();var vE=sr(),yE=Le(),RH=dn(),nee=gt(),kH=ei(),Ji=Ie(),oee=fd();function aee(e,t){if(t=t||{},t.issuerPublicKey)return t.issuerPublicKey instanceof vE?t.issuerPublicKey:vE.fromString(t.issuerPublicKey);var r=e&&e.issuer;if(typeof r!="string")return null;try{var i=r.split("#")[0].split(":")[2];return i?vE.fromString(i):null}catch{return null}}var Lv={CORRELATIVE_OBLIGATION:"CorrelativeObligation",CONTRACTUAL_OBLIGATION:"ContractualObligation",PAYMENT_OBLIGATION:"PaymentObligation",DELIVERY_OBLIGATION:"DeliveryObligation",PERFORMANCE_OBLIGATION:"PerformanceObligation",MAINTENANCE_OBLIGATION:"MaintenanceObligation",COMPLIANCE_OBLIGATION:"ComplianceObligation",REPORTING_OBLIGATION:"ReportingObligation",CONFIDENTIALITY_OBLIGATION:"ConfidentialityObligation",NON_COMPETE_OBLIGATION:"NonCompeteObligation",INDEMNIFICATION_OBLIGATION:"IndemnificationObligation",WARRANTY_OBLIGATION:"WarrantyObligation",SUPPORT_OBLIGATION:"SupportObligation",REGULATORY_OBLIGATION:"RegulatoryObligation",FIDUCIARY_OBLIGATION:"FiduciaryObligation"},Mf={CRITICAL:"CRITICAL",HIGH:"HIGH",MEDIUM:"MEDIUM",LOW:"LOW",DEFERRED:"DEFERRED"},zi={PENDING:"PENDING",ACTIVE:"ACTIVE",IN_PROGRESS:"IN_PROGRESS",COMPLETED:"COMPLETED",OVERDUE:"OVERDUE",BREACHED:"BREACHED",WAIVED:"WAIVED",TERMINATED:"TERMINATED"},Mv={prepareObligationToken:function(e,t,r,i,n,o){o=o||{},Ji.checkArgument(typeof e=="string","Obligation type must be string"),Ji.checkArgument(typeof t=="string","Issuer DID must be string"),Ji.checkArgument(typeof r=="string","Obligor DID must be string"),Ji.checkArgument(i&&typeof i=="object","Obligation must be object"),Ji.checkArgument(n instanceof kH,"Invalid issuer private key");var a=Object.values(Lv);Ji.checkArgument(a.includes(e),"Invalid obligation type: "+e);try{var s={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","LegalObligationToken",e],issuer:t,issuanceDate:new Date().toISOString(),credentialSubject:{id:r,obligationType:e,obligation:i,jurisdiction:o.jurisdiction||"US",priority:o.priority||Mf.MEDIUM,status:zi.PENDING,dueDate:o.dueDate||null,effectiveDate:o.effectiveDate||new Date().toISOString(),expirationDate:o.expirationDate||null,correlativeRight:o.correlativeRight||null,rightHolder:o.rightHolder||null,enforceable:o.enforceable!==!1,penalties:o.penalties||null,remedies:o.remedies||null}};o.metadata&&(s.credentialSubject.metadata=o.metadata);var u=this._signToken(s,n);return{success:!0,obligationToken:u,tokenHash:u.tokenHash,metadata:{type:e,issuer:t,obligor:r,priority:s.credentialSubject.priority,status:s.credentialSubject.status,jurisdiction:s.credentialSubject.jurisdiction,dueDate:s.credentialSubject.dueDate,correlativeRight:s.credentialSubject.correlativeRight},externalOperations:{storeToken:{endpoint:"POST /obligations/tokens",data:{token:u,metadata:{type:e,issuer:t,obligor:r,priority:s.credentialSubject.priority,status:s.credentialSubject.status,jurisdiction:s.credentialSubject.jurisdiction,dueDate:s.credentialSubject.dueDate,correlativeRight:s.credentialSubject.correlativeRight}}},indexToken:{endpoint:"POST /obligations/index",data:{tokenId:u.id,tokenHash:u.tokenHash,type:e,issuer:t,obligor:r,issuedAt:u.issuanceDate,dueDate:s.credentialSubject.dueDate,priority:s.credentialSubject.priority}},notifyObligor:{endpoint:"POST /notifications/obligation-issued",data:{tokenId:u.id,issuer:t,obligor:r,obligationType:e,dueDate:s.credentialSubject.dueDate,priority:s.credentialSubject.priority}},scheduleReminders:s.credentialSubject.dueDate?{endpoint:"POST /obligations/schedule-reminders",data:{tokenId:u.id,obligor:r,dueDate:s.credentialSubject.dueDate,reminderSchedule:o.reminderSchedule||["7d","3d","1d"]}}:null}}}catch(c){return{success:!1,error:c.message}}},prepareObligationVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r,t),this._validateTokenTemporal(e,r,i),this._validateObligationType(e,r),this._validateObligationStatus(e,r,i),this._validateObligationPriority(e,i);var n={valid:r.length===0,errors:r,warnings:i,issuerDID:e.issuer,obligorDID:e.credentialSubject?e.credentialSubject.id:null,obligationType:e.credentialSubject?e.credentialSubject.obligationType:null,status:e.credentialSubject?e.credentialSubject.status:null,priority:e.credentialSubject?e.credentialSubject.priority:null,isOverdue:this._checkIfOverdue(e),verifiedAt:new Date().toISOString()};return{success:!0,verification:n,externalOperations:{recordVerification:{endpoint:"POST /obligations/verification-record",data:{tokenId:e.id,result:n.valid,errors:r,warnings:i,verifiedAt:n.verifiedAt,isOverdue:n.isOverdue}},auditVerification:{endpoint:"POST /audit/obligation-verification",data:{tokenId:e.id,obligationType:n.obligationType,issuer:n.issuerDID,obligor:n.obligorDID,result:n.valid,verifiedAt:n.verifiedAt}},updateStatus:n.isOverdue&&e.credentialSubject.status===zi.ACTIVE?{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:zi.OVERDUE,updatedAt:n.verifiedAt,reason:"Due date passed"}}:null}}}catch(o){return{success:!1,error:"Verification preparation failed: "+o.message}}},prepareObligationFulfillment:function(e,t,r,i){i=i||{},Ji.checkArgument(e&&typeof e=="object","Invalid token"),Ji.checkArgument(t&&typeof t=="object","Invalid fulfillment"),Ji.checkArgument(r instanceof kH,"Invalid obligor key");try{var n=this.prepareObligationVerification(e,{});if(!n.success||!n.verification.valid)return{success:!1,error:"Cannot fulfill invalid obligation: "+n.verification.errors.join(", ")};if(e.credentialSubject.status===zi.COMPLETED)return{success:!1,error:"Obligation already fulfilled"};if(e.credentialSubject.status===zi.TERMINATED)return{success:!1,error:"Obligation has been terminated"};var o={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","ObligationFulfillment"],issuer:e.credentialSubject.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:e.id,fulfillmentType:t.type||"FULL_FULFILLMENT",fulfillmentDate:new Date().toISOString(),evidence:t.evidence||null,description:t.description||"",completionPercentage:t.completionPercentage||100,attestations:t.attestations||[],notes:t.notes||null}},a=this._signToken(o,r),s=o.credentialSubject.completionPercentage>=100?zi.COMPLETED:zi.IN_PROGRESS;return{success:!0,fulfillmentRecord:a,newStatus:s,fulfillmentId:a.id,externalOperations:{recordFulfillment:{endpoint:"POST /obligations/fulfillments",data:{obligationId:e.id,fulfillmentRecord:a,obligor:e.credentialSubject.id,fulfillmentDate:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:s,fulfillmentId:a.id,updatedAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},notifyRightHolder:e.credentialSubject.rightHolder?{endpoint:"POST /notifications/obligation-fulfilled",data:{obligationId:e.id,fulfillmentId:a.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,completionPercentage:o.credentialSubject.completionPercentage,newStatus:s}}:null,auditFulfillment:{endpoint:"POST /audit/obligation-fulfillment",data:{obligationId:e.id,fulfillmentId:a.id,obligor:e.credentialSubject.id,fulfilledAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}}}}}catch(u){return{success:!1,error:u.message}}},prepareObligationBreachAssessment:function(e,t,r){Ji.checkArgument(e&&typeof e=="object","Invalid token"),Ji.checkArgument(t&&typeof t=="object","Invalid breach details"),Ji.checkArgument(r&&typeof r=="object","Invalid assessor");try{var i={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","ObligationBreachAssessment"],issuer:r.did||r.id,issuanceDate:new Date().toISOString(),credentialSubject:{id:e.id,breachType:t.type||"MATERIAL_BREACH",breachDate:t.date||new Date().toISOString(),description:t.description||"",severity:t.severity||"MODERATE",evidence:t.evidence||[],assessor:{did:r.did||r.id,name:r.name||"Unknown",authority:r.authority||null,jurisdiction:r.jurisdiction||null},damages:t.damages||null,recommendedRemedies:t.recommendedRemedies||[],assessmentDate:new Date().toISOString()}},n=yE.sha256(f.Buffer.from(JSON.stringify(i))).toString("hex");return i.credentialSubject.assessmentHash=n,{success:!0,breachAssessment:i,breachId:i.id,severity:t.severity||"MODERATE",externalOperations:{recordBreach:{endpoint:"POST /obligations/breaches",data:{obligationId:e.id,breachAssessment:i,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachDate:t.date||new Date().toISOString(),severity:t.severity||"MODERATE"}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:zi.BREACHED,breachId:i.id,breachDate:t.date||new Date().toISOString(),updatedAt:new Date().toISOString()}},notifyParties:{endpoint:"POST /notifications/obligation-breached",data:{obligationId:e.id,breachId:i.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachType:t.type||"MATERIAL_BREACH",severity:t.severity||"MODERATE"}},escalateBreach:t.severity==="CRITICAL"?{endpoint:"POST /legal/escalate-breach",data:{obligationId:e.id,breachId:i.id,severity:t.severity,jurisdiction:e.credentialSubject.jurisdiction}}:null,auditBreach:{endpoint:"POST /audit/obligation-breach",data:{obligationId:e.id,breachId:i.id,obligor:e.credentialSubject.id,assessedAt:i.credentialSubject.assessmentDate,severity:t.severity||"MODERATE"}}}}}catch(o){return{success:!1,error:o.message}}},prepareObligationMonitoringReport:function(e,t){t=t||{},Ji.checkArgument(Array.isArray(e),"Obligations must be array");try{var r={reportId:"rpt_"+this._generateUUID(),generatedAt:new Date().toISOString(),criteria:t,summary:{totalObligations:e.length,byStatus:{},byPriority:{},byType:{},overdue:0,dueSoon:0,completed:0},obligations:[],alerts:[],recommendations:[]},i=new Date,n=new Date(i.getTime()+10080*60*1e3);return e.forEach(function(o){var a={id:o.id,type:o.credentialSubject.obligationType,status:o.credentialSubject.status,priority:o.credentialSubject.priority,obligor:o.credentialSubject.id,dueDate:o.credentialSubject.dueDate,isOverdue:this._checkIfOverdue(o),isDueSoon:!1};if(o.credentialSubject.dueDate){var s=new Date(o.credentialSubject.dueDate);a.isDueSoon=s<=n&&s>i}r.summary.byStatus[a.status]=(r.summary.byStatus[a.status]||0)+1,r.summary.byPriority[a.priority]=(r.summary.byPriority[a.priority]||0)+1,r.summary.byType[a.type]=(r.summary.byType[a.type]||0)+1,a.isOverdue&&r.summary.overdue++,a.isDueSoon&&r.summary.dueSoon++,a.status===zi.COMPLETED&&r.summary.completed++,a.isOverdue&&a.priority===Mf.CRITICAL&&r.alerts.push({type:"CRITICAL_OVERDUE",obligationId:o.id,message:"Critical obligation is overdue",priority:"HIGH"}),a.isDueSoon&&a.priority===Mf.HIGH&&r.alerts.push({type:"HIGH_PRIORITY_DUE_SOON",obligationId:o.id,message:"High priority obligation due soon",priority:"MEDIUM"}),r.obligations.push(a)}.bind(this)),r.summary.overdue>0&&r.recommendations.push({type:"OVERDUE_MANAGEMENT",message:"Consider prioritizing overdue obligations",count:r.summary.overdue}),r.summary.dueSoon>5&&r.recommendations.push({type:"WORKLOAD_MANAGEMENT",message:"High number of obligations due soon - consider workload distribution",count:r.summary.dueSoon}),{success:!0,report:r,externalOperations:{storeReport:{endpoint:"POST /obligations/monitoring-reports",data:{report:r,generatedAt:r.generatedAt}},sendAlerts:r.alerts.length>0?{endpoint:"POST /notifications/obligation-alerts",data:{reportId:r.reportId,alerts:r.alerts,summary:r.summary}}:null,updateDashboard:{endpoint:"PUT /dashboard/obligation-metrics",data:{summary:r.summary,lastUpdated:r.generatedAt}}}}}catch(o){return{success:!1,error:o.message}}},getObligationTypes:function(){return Lv},getObligationPriority:function(){return Mf},getObligationStatus:function(){return zi},_signToken:function(e,t){var r=this._canonicalizeToken(e),i=yE.sha256(f.Buffer.from(r)),n=new RH;n.hashbuf=i,n.privkey=t,n.pubkey=t.toPublicKey(),n.sign();var o=n.sig,a={type:"EcdsaSecp256k1Signature2019",created:new Date().toISOString(),verificationMethod:"did:smartledger:"+t.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(i,o)},s=JSON.parse(JSON.stringify(e));return s.proof=a,s.tokenHash=i.toString("hex"),s},_createJWS:function(e,t){var r={alg:"ES256K",typ:"JWT"},i=f.Buffer.from(JSON.stringify(r)).toString("base64url"),n=e.toString("base64url"),o=t.toDER().toString("base64url");return i+".."+o},_canonicalizeToken:function(e){var t=JSON.parse(JSON.stringify(e));return delete t.proof,delete t.tokenHash,JSON.stringify(this._sortObjectKeys(t))},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(e!==null&&typeof e=="object"){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e},_validateTokenStructure:function(e,t){e["@context"]||t.push("Missing @context"),e.id||t.push("Missing id"),(!e.type||!Array.isArray(e.type))&&t.push("Missing or invalid type"),e.issuer||t.push("Missing issuer"),e.issuanceDate||t.push("Missing issuanceDate"),e.credentialSubject||t.push("Missing credentialSubject"),e.proof||t.push("Missing proof")},_verifyTokenSignature:function(e,t,r){try{if(!e.proof||!e.proof.jws){t.push("Missing signature proof");return}var i=this._canonicalizeToken(e),n=yE.sha256(f.Buffer.from(i));if(e.tokenHash&&e.tokenHash!==n.toString("hex")){t.push("Token hash mismatch");return}var o=aee(e,r);if(!o){t.push("Signature not verified: issuer public key could not be resolved from token.issuer; pass options.issuerPublicKey");return}var a=e.proof.jws.split(".");if(a.length!==3||!a[2]){t.push("Malformed JWS");return}var s=nee.fromDER(f.Buffer.from(a[2],"base64url")),u=new RH;u.hashbuf=n,u.sig=s,u.pubkey=o,u.verify()!==!0&&t.push("Signature verification failed")}catch(c){t.push("Signature verification failed: "+c.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date,n=new Date(e.issuanceDate);if(n>i&&t.push("Token issued in the future"),e.credentialSubject.effectiveDate){var o=new Date(e.credentialSubject.effectiveDate);i<o&&r.push("Obligation not yet effective")}if(e.credentialSubject.expirationDate){var a=new Date(e.credentialSubject.expirationDate);i>a&&t.push("Obligation expired")}},_validateObligationType:function(e,t){if(!e.credentialSubject.obligationType){t.push("Missing obligationType");return}var r=Object.values(Lv);r.includes(e.credentialSubject.obligationType)||t.push("Invalid obligation type: "+e.credentialSubject.obligationType)},_validateObligationStatus:function(e,t,r){if(!e.credentialSubject.status){t.push("Missing status");return}var i=Object.values(zi);i.includes(e.credentialSubject.status)||t.push("Invalid obligation status: "+e.credentialSubject.status),this._checkIfOverdue(e)&&e.credentialSubject.status===zi.ACTIVE&&r.push("Obligation is overdue but status is still ACTIVE")},_validateObligationPriority:function(e,t){if(e.credentialSubject.priority){var r=Object.values(Mf);r.includes(e.credentialSubject.priority)||t.push("Invalid obligation priority: "+e.credentialSubject.priority)}},_checkIfOverdue:function(e){if(!e.credentialSubject.dueDate)return!1;var t=new Date,r=new Date(e.credentialSubject.dueDate);return t>r&&e.credentialSubject.status!==zi.COMPLETED},_generateUUID:function(){return oee.uuid4()}};Mv.ObligationTypes=Lv;Mv.ObligationPriority=Mf;Mv.ObligationStatus=zi;BH.exports=Mv});var LH=T((hhe,CH)=>{"use strict";g();var Du=bH(),Dv=wH(),pd=EH(),bE=IH(),Uo=PH(),see=NH(),_E=ei(),Qi=Ie(),lt=function(e){return this instanceof lt?(this.config=e||{},this.registry=null,this.config.registry&&(this.registry=Uo.createRegistry(this.config.registry)),this):new lt(e)};lt.prototype.createRightToken=function(e,t,r){Qi.checkArgument(e&&typeof e=="object","Invalid right data"),Qi.checkArgument(t instanceof _E,"Invalid private key"),r=r||{};try{var i=Du.create(e.type,e.owner,e.owner,e,t,r);if(!i)return{success:!1,error:"Failed to create token"};if(r.addProof!==!1&&(i=Du._signToken(i,t)),r.anchor){var n=pd.anchorToken(i,r.anchor);n.success&&(i.anchorTx=n.txid,i.anchorBlock=n.blockHeight)}if(this.registry&&r.register!==!1){var o=Uo.registerToken(this.registry,i,{registeredBy:r.registeredBy||"SYSTEM"});o.success&&(i.registrationId=o.registrationId,i.registrationStatus=o.status)}return{success:!0,token:i,type:"LegalRightToken"}}catch(a){return{success:!1,error:a.message}}};lt.prototype.validateClaim=function(e,t){return Dv.validate(e,t)};lt.prototype.createSelectiveDisclosure=function(e,t,r){return bE.prepareSelectiveDisclosure(e,t,r)};lt.prototype.verifyToken=function(e,t){return!e||!e.proof?{valid:!1,error:"No proof found in token"}:Du.verifyToken(e,t)};lt.prototype.transferRight=function(e,t,r,i){Qi.checkArgument(e&&typeof e=="object","Invalid token"),Qi.checkArgument(typeof t=="string","New owner must be string"),Qi.checkArgument(r instanceof _E,"Invalid owner key"),i=i||{};try{var n=this.verifyToken(e,r.toPublicKey().toString());if(!n.valid)return{success:!1,error:"Invalid token or ownership proof"};var o=Du.prepareRightTokenTransfer(e,t,r,i);if(!o.success)return{success:!1,error:o.error};var a=o.newToken,s=o.transferProof;if(i.anchor){var u=pd.anchorToken(a,i.anchor);u.success&&(a.transferAnchorTx=u.txid)}if(this.registry){var c=Uo.registerToken(this.registry,a,{registeredBy:i.registeredBy||t,metadata:{transferFrom:e.owner,transferTo:t,originalTokenId:e.id}});c.success&&(a.registrationId=c.registrationId)}return{success:!0,token:a,transferId:s.id,transferredAt:s.issuanceDate,transferProof:s}}catch(l){return{success:!1,error:l.message}}};lt.prototype.createObligation=function(e,t,r){Qi.checkArgument(e&&typeof e=="object","Invalid right token"),Qi.checkArgument(t&&typeof t=="object","Invalid obligation data"),Qi.checkArgument(r instanceof _E,"Invalid private key");try{var i=Du.prepareObligationToken(e,t.obligor,t,r);return i.success?{success:!0,obligation:i.obligationToken,rightTokenId:e.id}:{success:!1,error:i.error}}catch(n){return{success:!1,error:n.message}}};lt.prototype.revokeToken=function(e,t,r){return Qi.checkArgument(typeof e=="string","Token ID must be string"),Qi.checkArgument(t&&typeof t=="object","Invalid revocation data"),Qi.checkArgument(typeof r=="string","Authority must be string"),this.registry?Uo.revokeToken(this.registry,e,{reason:t.reason,revokedBy:r,legalBasis:t.legalBasis,evidence:t.evidence}):{success:!1,error:"No registry available for revocation"}};lt.prototype.checkTokenStatus=function(e){return Qi.checkArgument(typeof e=="string","Token ID must be string"),this.registry?Uo.checkTokenStatus(this.registry,e):{found:!1,error:"No registry available"}};lt.prototype.searchTokens=function(e){return this.registry?Uo.searchTokens(this.registry,e):{success:!1,error:"No registry available"}};lt.prototype.getRegistryStats=function(){return this.registry?Uo.getStatistics(this.registry):{error:"No registry available"}};lt.prototype.createLegalValidityProof=function(e,t,r){return bE.prepareLegalValidityProof(e,t,r)};lt.prototype.anchorTokenBatch=function(e,t){return pd.anchorBatch(e,t)};lt.prototype.verifyAnchor=function(e,t){return pd.verifyAnchor(e,t)};lt.prototype.getRightTypes=function(){return Du.getRightTypes()};lt.prototype.getClaimSchemas=function(){return Dv.getSchemas()};lt.prototype.createRegistry=function(e){return this.registry=Uo.createRegistry(e),this.registry};lt.prototype.setRegistry=function(e){Qi.checkArgument(e&&typeof e=="object","Invalid registry"),this.registry=e};lt.create=function(e){return new lt(e)};lt.createRightToken=function(e,t,r){var i=new lt;return i.createRightToken(e,t,r)};lt.validateClaim=function(e,t){return Dv.validate(e,t)};lt.verifyToken=function(e,t){var r=new lt;return r.verifyToken(e,t)};lt.createRegistry=function(e){return Uo.createRegistry(e)};lt.Right=Du;lt.Claim=Dv;lt.Anchor=pd;lt.Proof=bE;lt.Registry=Uo;lt.Obligation=see;CH.exports=lt});var Om=T((phe,DH)=>{"use strict";g();var H=DH.exports;H.deps=H.deps||{};H.deps._=at();H.deps.Buffer=typeof f.Buffer<"u"?f.Buffer:null;var MH=pc();H.deps.bs58={encode:MH.encode,decode:MH.decode};if(typeof window>"u")H.deps.bnjs=qp();else try{H.deps.bnjs=qp()}catch{}H.version="v"+eb();H.versionGuard=function(e){if(e!==void 0){var t=`
99
99
  More than one instance of bsv found.
100
100
  Please make sure to require bsv and check that submodules do
101
101
  not also include their own bsv dependency.`;console.warn(t)}};H.versionGuard(globalThis._bsv);globalThis._bsv=H.version;H.isHardened=!0;H.hardenedBy="SmartLedger";H.baseVersion="v1.5.6";H.securityFeatures=["canonical-signatures","malleability-protection","enhanced-validation","audited-noble-curves","fail-closed-verification"];H.crypto={};H.crypto.BN=Ke();H.crypto.ECDSA=dn();H.crypto.Hash=Le();H.crypto.Random=Ki();H.crypto.Point=un();H.crypto.Signature=gt();H.crypto.Shamir=M_();H.crypto.SmartVerify=um();H.crypto.EllipticFixed=cm();H.encoding={};H.encoding.Base58=pc();H.encoding.Base58Check=Pc();H.encoding.BufferReader=lo();H.encoding.BufferWriter=Nn();H.encoding.Varint=Cc();H.util={};H.util.js=ni();H.util.preconditions=Ie();H.util.deprecate=ts();H.errors=pi();H.Address=Ni();H.Block=wN();H.MerkleBlock=V_();H.BlockHeader=zc();H.SPV=mm();H.NotaryHash=aC();H.HDPrivateKey=vh();H.HDPublicKey=hw();H.Networks=ca();H.Opcode=Pr();H.PrivateKey=ei();H.PublicKey=sr();H.Script=ut();H.Transaction=zt();H.Input=zt().Input;H.Output=zt().Output;H.UnspentOutput=zt().UnspentOutput;H.Message=xC();H.Mnemonic=mw();H.ECIES=RL();H.Signature=gt();H.Shamir=M_();H.SmartLedger={version:H.version,hardenedBy:H.hardenedBy,baseVersion:H.baseVersion,securityFeatures:H.securityFeatures,SmartVerify:um(),EllipticFixed:cm()};H.SmartVerify=um();H.EllipticFixed=cm();try{H.SmartContract=sD()}catch(e){typeof window>"u"&&console.warn("SmartContract module not available:",e.message)}try{H.BrowserUTXOManager=uD()}catch(e){typeof window>"u"&&console.warn("[bsv] BrowserUTXOManager failed to load:",e.message)}if(typeof window>"u"&&typeof Wr=="function")try{H.SmartMiner=fD(),H.CustomScriptHelper=pD()}catch{}H.Ordinals=$D();H.GDAF=y6();try{H.DIDWeb=_6()}catch(e){typeof window>"u"&&console.warn("[bsv] DIDWeb module failed to load:",e.message)}try{H.VcJwt=DS()}catch(e){typeof window>"u"&&console.warn("[bsv] VcJwt module failed to load:",e.message)}try{H.StatusList=cH()}catch(e){typeof window>"u"&&console.warn("[bsv] StatusList module failed to load:",e.message)}try{H.Anchor=hH()}catch(e){typeof window>"u"&&console.warn("[bsv] Anchor module failed to load:",e.message)}H.createDID=function(e){var t=new H.GDAF;return t.createDID(e)};H.resolveDID=function(e){var t=new H.GDAF;return t.resolveDID(e)};H.createEmailCredential=function(e,t,r,i){var n=new H.GDAF;return n.createEmailCredential(e,t,r,i)};H.createAgeCredential=function(e,t,r,i,n){var o=new H.GDAF;return o.createAgeCredential(e,t,r,i,n)};H.createKYCCredential=function(e,t,r,i,n){var o=new H.GDAF;return o.createKYCCredential(e,t,r,i,n)};H.verifyCredential=function(e,t){var r=new H.GDAF;return r.verifyCredential(e,t)};H.validateCredential=function(e,t){var r=new H.GDAF;return r.validateCredential(e,t)};H.generateSelectiveProof=function(e,t,r){var i=new H.GDAF;return i.generateSelectiveProof(e,t,r)};H.generateAgeProof=function(e,t,r){var i=new H.GDAF;return i.generateAgeProof(e,t,r)};H.verifyAgeProof=function(e,t,r){var i=new H.GDAF;return i.verifyAgeProof(e,t,r)};H.createPresentation=function(e,t,r,i){var n=new H.GDAF;return n.createPresentation(e,t,r,i)};H.getCredentialSchemas=function(){var e=new H.GDAF;return e.getAllSchemas()};H.createCredentialTemplate=function(e){var t=new H.GDAF;return t.createTemplate(e)};H.LTP=LH();H.JCS=Vc();H.prepareRightToken=function(e,t,r,i,n,o){return H.LTP.Right.prepareRightToken(e,t,r,i,n,o)};H.prepareRightTokenVerification=function(e,t){return H.LTP.Right.prepareRightTokenVerification(e,t)};H.prepareRightTokenTransfer=function(e,t,r,i){return H.LTP.Right.prepareRightTokenTransfer(e,t,r,i)};H.prepareRightTypeValidation=function(e){return H.LTP.Right.prepareRightTypeValidation(e)};H.prepareObligationToken=function(e,t,r,i,n,o){return H.LTP.Obligation.prepareObligationToken(e,t,r,i,n,o)};H.prepareObligationVerification=function(e,t){return H.LTP.Obligation.prepareObligationVerification(e,t)};H.prepareObligationFulfillment=function(e,t,r,i){return H.LTP.Obligation.prepareObligationFulfillment(e,t,r,i)};H.prepareObligationBreachAssessment=function(e,t,r){return H.LTP.Obligation.prepareObligationBreachAssessment(e,t,r)};H.prepareObligationMonitoringReport=function(e,t){return H.LTP.Obligation.prepareObligationMonitoringReport(e,t)};H.prepareClaimValidation=function(e,t){return H.LTP.Claim.prepareClaimValidation(e,t)};H.prepareClaimAttestation=function(e,t,r){return H.LTP.Claim.prepareClaimAttestation(e,t,r)};H.prepareClaimDispute=function(e,t,r){return H.LTP.Claim.prepareClaimDispute(e,t,r)};H.prepareBulkClaimValidation=function(e,t){return H.LTP.Claim.prepareBulkClaimValidation(e,t)};H.prepareClaimTemplate=function(e,t){return H.LTP.Claim.prepareClaimTemplate(e,t)};H.prepareSignatureProof=function(e,t,r){return H.LTP.Proof.prepareSignatureProof(e,t,r)};H.prepareSignatureVerification=function(e,t){return H.LTP.Proof.prepareSignatureVerification(e,t)};H.prepareSelectiveDisclosure=function(e,t,r){return H.LTP.Proof.prepareSelectiveDisclosure(e,t,r)};H.prepareSelectiveDisclosureVerification=function(e,t){return H.LTP.Proof.prepareSelectiveDisclosureVerification(e,t)};H.prepareLegalValidityProof=function(e,t,r){return H.LTP.Proof.prepareLegalValidityProof(e,t,r)};H.prepareZeroKnowledgeProof=function(e,t,r){return H.LTP.Proof.prepareZeroKnowledgeProof(e,t,r)};H.prepareRegistry=function(e){return H.LTP.Registry.prepareRegistry(e)};H.prepareTokenRegistration=function(e,t,r){return H.LTP.Registry.prepareTokenRegistration(e,t,r)};H.prepareTokenApproval=function(e,t,r){return H.LTP.Registry.prepareTokenApproval(e,t,r)};H.prepareTokenRevocation=function(e,t,r){return H.LTP.Registry.prepareTokenRevocation(e,t,r)};H.prepareTokenStatusQuery=function(e,t){return H.LTP.Registry.prepareTokenStatusQuery(e,t)};H.prepareTokenSearch=function(e,t){return H.LTP.Registry.prepareTokenSearch(e,t)};H.prepareStatisticsQuery=function(e){return H.LTP.Registry.prepareStatisticsQuery(e)};H.prepareAuditLogQuery=function(e,t){return H.LTP.Registry.prepareAuditLogQuery(e,t)};H.prepareTokenCommitment=function(e,t){return H.LTP.Anchor.prepareTokenCommitment(e,t)};H.prepareBatchCommitment=function(e,t){return H.LTP.Anchor.prepareBatchCommitment(e,t)};H.verifyTokenAnchor=function(e,t,r){return H.LTP.Anchor.verifyTokenAnchor(e,t,r)};H.formatRevocation=function(e,t){return H.LTP.Anchor.formatRevocation(e,t)};H.createRightToken=function(e,t,r){var i=new H.LTP;return i.createRightToken(e,t,r)};H.verifyLegalToken=function(e,t){var r=new H.LTP;return r.verifyToken(e,t)};H.validateLegalClaim=function(e,t){var r=new H.LTP;return r.validateClaim(e,t)};H.createSelectiveDisclosure=function(e,t,r){var i=new H.LTP;return i.createSelectiveDisclosure(e,t,r)};H.createLegalRegistry=function(e){return H.LTP.Registry.prepareRegistry(e)};H.createLegalValidityProof=function(e,t,r){var i=new H.LTP;return i.createLegalValidityProof(e,t,r)};H.getRightTypes=function(){return H.LTP.Right.getRightTypes()};H.getObligationTypes=function(){return H.LTP.Obligation.getObligationTypes()};H.getObligationPriority=function(){return H.LTP.Obligation.getObligationPriority()};H.getObligationStatus=function(){return H.LTP.Obligation.getObligationStatus()};H.getClaimSchemas=function(){return H.LTP.Claim.getSchemas()};H.getClaimSchemaNames=function(){return H.LTP.Claim.getSchemaNames()};H.getClaimSchema=function(e){return H.LTP.Claim.getSchema(e)};H.createClaimTemplate=function(e){return H.LTP.Claim.createTemplate(e)};H.canonicalizeClaim=function(e,t){return H.LTP.Claim.canonicalize(e,t)};H.hashClaim=function(e,t){return H.LTP.Claim.hash(e,t)};H.addCustomClaimSchema=function(e,t){return H.LTP.Claim.addSchema(e,t)};H.Transaction.sighash=mi()});var uee=T((vhe,HH)=>{g();HH.exports=Om()});return uee();})();