@smartledger/bsv 3.3.2 → 3.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +211 -83
- package/README.md +266 -71
- package/bsv-covenant.min.js +26 -3
- package/bsv-gdaf.min.js +11 -9
- package/bsv-ltp.min.js +10 -8
- package/bsv-script-helper.min.js +2 -2
- package/bsv-security.min.js +3 -24
- package/bsv-shamir.min.js +2 -2
- package/bsv-smartcontract.min.js +10 -8
- package/bsv.bundle.js +9 -9
- package/bsv.min.js +10 -8
- package/build/webpack.bundle.config.js +2 -2
- package/build/webpack.config.js +2 -2
- package/build/webpack.covenant.config.js +2 -2
- package/build/webpack.gdaf.config.js +6 -43
- package/build/webpack.script-helper.config.js +2 -2
- package/build/webpack.security.config.js +2 -2
- package/build/webpack.smartcontract.config.js +2 -2
- package/bundle-entry.js +1 -341
- package/covenant-entry.js +1 -44
- package/docs/DOCUMENTATION_REVIEW_REPORT.md +295 -0
- package/docs/MODULE_REFERENCE_COMPLETE.md +330 -0
- package/docs/README.md +107 -79
- package/docs/advanced/LEGAL_TOKEN_PROTOCOL.md +411 -0
- package/docs/advanced/SMART_CONTRACT_GUIDE.md +1255 -0
- package/docs/advanced/UTXO_MANAGER_GUIDE.md +851 -0
- package/docs/api/LTP.md +334 -0
- package/docs/getting-started/INSTALLATION.md +410 -0
- package/docs/getting-started/QUICK_START.md +180 -0
- package/docs/migration/FROM_BSV_1_5_6.md +260 -0
- package/docs/technical/GDAF_DEVELOPER_INTERFACE.md +187 -0
- package/docs/technical/GDAF_IMPLEMENTATION_COMPLETE.md +190 -0
- package/docs/technical/SHAMIR_INTEGRATION_SUMMARY.md +165 -0
- package/docs/technical/roadmap.md +1250 -0
- package/docs/technical/trust_law.md +142 -0
- package/gdaf-entry.js +2 -54
- package/index.js +32 -0
- package/ltp-entry.js +2 -92
- package/package.json +6 -4
- package/script-helper-entry.js +1 -49
- package/security-entry.js +1 -70
- package/shamir-entry.js +1 -173
- package/smartcontract-entry.js +1 -133
- package/tests/test_builtin_verify.js +117 -0
- package/tests/test_debug_integration.js +71 -0
- package/tests/test_ecdsa_little.js +70 -0
- package/tests/test_smartverify_der.js +110 -0
- package/utilities/blockchain-state.js +155 -155
- package/utilities/blockchain-state.json +103293 -5244
- package/utilities/miner-simulator.js +354 -358
- package/utilities/mock-utxo-generator.js +54 -54
- package/utilities/raw-tx-examples.js +120 -122
- package/utilities/success-demo.js +104 -105
- package/utilities/transaction-examples.js +188 -188
- package/utilities/utxo-manager.js +91 -91
- package/utilities/wallet-setup.js +79 -80
- package/utilities/working-signature-demo.js +108 -110
- package/SECURITY.md +0 -75
- package/architecture_demo.js +0 -247
- package/build/bsv-covenant.min.js +0 -10
- package/build/bsv-script-helper.min.js +0 -10
- package/build/bsv-security.min.js +0 -31
- package/build/bsv-smartcontract.min.js +0 -39
- package/build/bsv.bundle.js +0 -39
- package/build/bsv.min.js +0 -39
- package/complete_ltp_demo.js +0 -511
- package/shamir_demo.js +0 -121
- package/simple_demo.js +0 -204
- package/validation_test.js +0 -97
- /package/docs/{ADVANCED_COVENANT_DEVELOPMENT.md → advanced/ADVANCED_COVENANT_DEVELOPMENT.md} +0 -0
- /package/docs/{CUSTOM_SCRIPT_DEVELOPMENT.md → advanced/CUSTOM_SCRIPT_DEVELOPMENT.md} +0 -0
- /package/docs/{block.md → api/BLOCKS.md} +0 -0
- /package/docs/{ecies.md → api/ECIES.md} +0 -0
- /package/docs/{networks.md → api/NETWORKS.md} +0 -0
- /package/docs/{script.md → api/SCRIPTS.md} +0 -0
- /package/docs/{transaction.md → api/TRANSACTIONS.md} +0 -0
- /package/docs/{unspentoutput.md → api/UTXO.md} +0 -0
- /package/{test_shamir.js → tests/test_shamir.js} +0 -0
- /package/{test_standalone_shamir.html → tests/test_standalone_shamir.html} +0 -0
package/build/bsv.min.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.bsv=t():e.bsv=t()}("undefined"!=typeof self?self:this,(function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t,r){"use strict";(function(e){
|
|
2
|
-
/*!
|
|
3
|
-
* The buffer module from node.js, for the browser.
|
|
4
|
-
*
|
|
5
|
-
* @author Feross Aboukhadijeh <http://feross.org>
|
|
6
|
-
* @license MIT
|
|
7
|
-
*/
|
|
8
|
-
var i=r(83),n=r(84),o=r(85);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()<t)throw new RangeError("Invalid typed array length");return c.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=c.prototype:(null===e&&(e=new c(t)),e.length=t),e}function c(e,t,r){if(!(c.TYPED_ARRAY_SUPPORT||this instanceof c))return new c(e,t,r);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return h(this,e)}return u(this,e,t,r)}function u(e,t,r,i){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,r,i){if(t.byteLength,r<0||t.byteLength<r)throw new RangeError("'offset' is out of bounds");if(t.byteLength<r+(i||0))throw new RangeError("'length' is out of bounds");t=void 0===r&&void 0===i?new Uint8Array(t):void 0===i?new Uint8Array(t,r):new Uint8Array(t,r,i);c.TYPED_ARRAY_SUPPORT?(e=t).__proto__=c.prototype:e=l(e,t);return e}(e,t,r,i):"string"==typeof t?function(e,t,r){"string"==typeof r&&""!==r||(r="utf8");if(!c.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var i=0|p(t,r),n=(e=s(e,i)).write(t,r);n!==i&&(e=e.slice(0,n));return e}(e,t,r):function(e,t){if(c.isBuffer(t)){var r=0|d(t.length);return 0===(e=s(e,r)).length||t.copy(e,0,0,r),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(i=t.length)!=i?s(e,0):l(e,t);if("Buffer"===t.type&&o(t.data))return l(e,t.data)}var i;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function f(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function h(e,t){if(f(t),e=s(e,t<0?0:0|d(t)),!c.TYPED_ARRAY_SUPPORT)for(var r=0;r<t;++r)e[r]=0;return e}function l(e,t){var r=t.length<0?0:0|d(t.length);e=s(e,r);for(var i=0;i<r;i+=1)e[i]=255&t[i];return e}function d(e){if(e>=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function p(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return F(e).length;default:if(i)return U(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return x(this,t,r);case"utf8":case"utf-8":return P(this,t,r);case"ascii":return k(this,t,r);case"latin1":case"binary":return E(this,t,r);case"base64":return A(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,t,r);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function m(e,t,r){var i=e[t];e[t]=e[r],e[r]=i}function b(e,t,r,i,n){if(0===e.length)return-1;if("string"==typeof r?(i=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=n?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(n)return-1;r=e.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof t&&(t=c.from(t,i)),c.isBuffer(t))return 0===t.length?-1:y(e,t,r,i,n);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):y(e,[t],r,i,n);throw new TypeError("val must be string, number or Buffer")}function y(e,t,r,i,n){var o,a=1,s=e.length,c=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,r/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(n){var f=-1;for(o=r;o<s;o++)if(u(e,o)===u(t,-1===f?0:o-f)){if(-1===f&&(f=o),o-f+1===c)return f*a}else-1!==f&&(o-=o-f),f=-1}else for(r+c>s&&(r=s-c),o=r;o>=0;o--){for(var h=!0,l=0;l<c;l++)if(u(e,o+l)!==u(t,l)){h=!1;break}if(h)return o}return-1}function v(e,t,r,i){r=Number(r)||0;var n=e.length-r;i?(i=Number(i))>n&&(i=n):i=n;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");i>o/2&&(i=o/2);for(var a=0;a<i;++a){var s=parseInt(t.substr(2*a,2),16);if(isNaN(s))return a;e[r+a]=s}return a}function S(e,t,r,i){return z(U(t,e.length-r),e,r,i)}function _(e,t,r,i){return z(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,i)}function w(e,t,r,i){return _(e,t,r,i)}function I(e,t,r,i){return z(F(t),e,r,i)}function O(e,t,r,i){return z(function(e,t){for(var r,i,n,o=[],a=0;a<e.length&&!((t-=2)<0);++a)r=e.charCodeAt(a),i=r>>8,n=r%256,o.push(n),o.push(i);return o}(t,e.length-r),e,r,i)}function A(e,t,r){return 0===t&&r===e.length?i.fromByteArray(e):i.fromByteArray(e.slice(t,r))}function P(e,t,r){r=Math.min(e.length,r);for(var i=[],n=t;n<r;){var o,a,s,c,u=e[n],f=null,h=u>239?4:u>223?3:u>191?2:1;if(n+h<=r)switch(h){case 1:u<128&&(f=u);break;case 2:128==(192&(o=e[n+1]))&&(c=(31&u)<<6|63&o)>127&&(f=c);break;case 3:o=e[n+1],a=e[n+2],128==(192&o)&&128==(192&a)&&(c=(15&u)<<12|(63&o)<<6|63&a)>2047&&(c<55296||c>57343)&&(f=c);break;case 4:o=e[n+1],a=e[n+2],s=e[n+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(c=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(f=c)}null===f?(f=65533,h=1):f>65535&&(f-=65536,i.push(f>>>10&1023|55296),f=56320|1023&f),i.push(f),n+=h}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var r="",i=0;for(;i<t;)r+=String.fromCharCode.apply(String,e.slice(i,i+=4096));return r}(i)}t.Buffer=c,t.SlowBuffer=function(e){+e!=e&&(e=0);return c.alloc(+e)},t.INSPECT_MAX_BYTES=50,c.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=a(),c.poolSize=8192,c._augment=function(e){return e.__proto__=c.prototype,e},c.from=function(e,t,r){return u(null,e,t,r)},c.TYPED_ARRAY_SUPPORT&&(c.prototype.__proto__=Uint8Array.prototype,c.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0})),c.alloc=function(e,t,r){return function(e,t,r,i){return f(t),t<=0?s(e,t):void 0!==r?"string"==typeof i?s(e,t).fill(r,i):s(e,t).fill(r):s(e,t)}(null,e,t,r)},c.allocUnsafe=function(e){return h(null,e)},c.allocUnsafeSlow=function(e){return h(null,e)},c.isBuffer=function(e){return!(null==e||!e._isBuffer)},c.compare=function(e,t){if(!c.isBuffer(e)||!c.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,i=t.length,n=0,o=Math.min(r,i);n<o;++n)if(e[n]!==t[n]){r=e[n],i=t[n];break}return r<i?-1:i<r?1:0},c.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(e,t){if(!o(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return c.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var i=c.allocUnsafe(t),n=0;for(r=0;r<e.length;++r){var a=e[r];if(!c.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(i,n),n+=a.length}return i},c.byteLength=p,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)m(this,t,t+1);return this},c.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)m(this,t,t+3),m(this,t+1,t+2);return this},c.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)m(this,t,t+7),m(this,t+1,t+6),m(this,t+2,t+5),m(this,t+3,t+4);return this},c.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?P(this,0,e):g.apply(this,arguments)},c.prototype.equals=function(e){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===c.compare(this,e)},c.prototype.inspect=function(){var e="",r=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),"<Buffer "+e+">"},c.prototype.compare=function(e,t,r,i,n){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===i&&(i=0),void 0===n&&(n=this.length),t<0||r>e.length||i<0||n>this.length)throw new RangeError("out of range index");if(i>=n&&t>=r)return 0;if(i>=n)return-1;if(t>=r)return 1;if(this===e)return 0;for(var o=(n>>>=0)-(i>>>=0),a=(r>>>=0)-(t>>>=0),s=Math.min(o,a),u=this.slice(i,n),f=e.slice(t,r),h=0;h<s;++h)if(u[h]!==f[h]){o=u[h],a=f[h];break}return o<a?-1:a<o?1:0},c.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},c.prototype.indexOf=function(e,t,r){return b(this,e,t,r,!0)},c.prototype.lastIndexOf=function(e,t,r){return b(this,e,t,r,!1)},c.prototype.write=function(e,t,r,i){if(void 0===t)i="utf8",r=this.length,t=0;else if(void 0===r&&"string"==typeof t)i=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(r)?(r|=0,void 0===i&&(i="utf8")):(i=r,r=void 0)}var n=this.length-t;if((void 0===r||r>n)&&(r=n),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var o=!1;;)switch(i){case"hex":return v(this,e,t,r);case"utf8":case"utf-8":return S(this,e,t,r);case"ascii":return _(this,e,t,r);case"latin1":case"binary":return w(this,e,t,r);case"base64":return I(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function k(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;n<r;++n)i+=String.fromCharCode(127&e[n]);return i}function E(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;n<r;++n)i+=String.fromCharCode(e[n]);return i}function x(e,t,r){var i=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>i)&&(r=i);for(var n="",o=t;o<r;++o)n+=L(e[o]);return n}function T(e,t,r){for(var i=e.slice(t,r),n="",o=0;o<i.length;o+=2)n+=String.fromCharCode(i[o]+256*i[o+1]);return n}function R(e,t,r){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function N(e,t,r,i,n,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>n||t<o)throw new RangeError('"value" argument is out of bounds');if(r+i>e.length)throw new RangeError("Index out of range")}function M(e,t,r,i){t<0&&(t=65535+t+1);for(var n=0,o=Math.min(e.length-r,2);n<o;++n)e[r+n]=(t&255<<8*(i?n:1-n))>>>8*(i?n:1-n)}function C(e,t,r,i){t<0&&(t=4294967295+t+1);for(var n=0,o=Math.min(e.length-r,4);n<o;++n)e[r+n]=t>>>8*(i?n:3-n)&255}function D(e,t,r,i,n,o){if(r+i>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function B(e,t,r,i,o){return o||D(e,0,r,4),n.write(e,t,r,i,23,4),r+4}function j(e,t,r,i,o){return o||D(e,0,r,8),n.write(e,t,r,i,52,8),r+8}c.prototype.slice=function(e,t){var r,i=this.length;if((e=~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),(t=void 0===t?i:~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),t<e&&(t=e),c.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=c.prototype;else{var n=t-e;r=new c(n,void 0);for(var o=0;o<n;++o)r[o]=this[o+e]}return r},c.prototype.readUIntLE=function(e,t,r){e|=0,t|=0,r||R(e,t,this.length);for(var i=this[e],n=1,o=0;++o<t&&(n*=256);)i+=this[e+o]*n;return i},c.prototype.readUIntBE=function(e,t,r){e|=0,t|=0,r||R(e,t,this.length);for(var i=this[e+--t],n=1;t>0&&(n*=256);)i+=this[e+--t]*n;return i},c.prototype.readUInt8=function(e,t){return t||R(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||R(e,t,this.length);for(var i=this[e],n=1,o=0;++o<t&&(n*=256);)i+=this[e+o]*n;return i>=(n*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||R(e,t,this.length);for(var i=t,n=1,o=this[e+--i];i>0&&(n*=256);)o+=this[e+--i]*n;return o>=(n*=128)&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||R(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){t||R(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||R(e,4,this.length),n.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||R(e,4,this.length),n.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||R(e,8,this.length),n.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||R(e,8,this.length),n.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,r,i){(e=+e,t|=0,r|=0,i)||N(this,e,t,r,Math.pow(2,8*r)-1,0);var n=1,o=0;for(this[t]=255&e;++o<r&&(n*=256);)this[t+o]=e/n&255;return t+r},c.prototype.writeUIntBE=function(e,t,r,i){(e=+e,t|=0,r|=0,i)||N(this,e,t,r,Math.pow(2,8*r)-1,0);var n=r-1,o=1;for(this[t+n]=255&e;--n>=0&&(o*=256);)this[t+n]=e/o&255;return t+r},c.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):M(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):M(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):C(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);N(this,e,t,r,n-1,-n)}var o=0,a=1,s=0;for(this[t]=255&e;++o<r&&(a*=256);)e<0&&0===s&&0!==this[t+o-1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);N(this,e,t,r,n-1,-n)}var o=r-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):M(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):M(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):C(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||N(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,r){return B(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return B(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return j(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return j(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,i){if(r||(r=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i<r&&(i=r),i===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t<i-r&&(i=e.length-t+r);var n,o=i-r;if(this===e&&r<t&&t<i)for(n=o-1;n>=0;--n)e[n+t]=this[n+r];else if(o<1e3||!c.TYPED_ARRAY_SUPPORT)for(n=0;n<o;++n)e[n+t]=this[n+r];else Uint8Array.prototype.set.call(e,this.subarray(r,r+o),t);return o},c.prototype.fill=function(e,t,r,i){if("string"==typeof e){if("string"==typeof t?(i=t,t=0,r=this.length):"string"==typeof r&&(i=r,r=this.length),1===e.length){var n=e.charCodeAt(0);n<256&&(e=n)}if(void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!c.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var o;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(o=t;o<r;++o)this[o]=e;else{var a=c.isBuffer(e)?e:U(new c(e,i).toString()),s=a.length;for(o=0;o<r-t;++o)this[o+t]=a[o%s]}return this};var H=/[^+\/0-9A-Za-z-_]/g;function L(e){return e<16?"0"+e.toString(16):e.toString(16)}function U(e,t){var r;t=t||1/0;for(var i=e.length,n=null,o=[],a=0;a<i;++a){if((r=e.charCodeAt(a))>55295&&r<57344){if(!n){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===i){(t-=3)>-1&&o.push(239,191,189);continue}n=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),n=r;continue}r=65536+(n-55296<<10|r-56320)}else n&&(t-=3)>-1&&o.push(239,191,189);if(n=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function F(e){return i.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(H,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function z(e,t,r,i){for(var n=0;n<i&&!(n+r>=t.length||n>=e.length);++n)t[n+r]=e[n];return n}}).call(this,r(40))},function(e,t,r){"use strict";(function(t,i){var n=e.exports;n.deps=n.deps||{};try{n.deps.bnjs=r(10),n.deps.bs58=r(56),n.deps.Buffer=void 0!==t?t:null,n.deps.elliptic=r(41),n.deps._=r(2)}catch(e){console.warn("Some dependencies may not be available in browser environment:",e.message)}n.version="v"+r(108).version,n.versionGuard=function(e){if(void 0!==e){console.warn("\n More than one instance of bsv found.\n Please make sure to require bsv and check that submodules do\n not also include their own bsv dependency.")}},n.versionGuard(i._bsv),i._bsv=n.version,n.isHardened=!0,n.hardenedBy="SmartLedger",n.baseVersion="v1.5.6",n.securityFeatures=["canonical-signatures","malleability-protection","enhanced-validation","elliptic-patches"],n.crypto={},n.crypto.BN=r(4),n.crypto.ECDSA=r(44),n.crypto.Hash=r(6),n.crypto.Random=r(33),n.crypto.Point=r(12),n.crypto.Signature=r(5),n.crypto.Shamir=r(76),n.crypto.SmartVerify=r(51),n.crypto.EllipticFixed=r(52),n.encoding={},n.encoding.Base58=r(37),n.encoding.Base58Check=r(29),n.encoding.BufferReader=r(19),n.encoding.BufferWriter=r(16),n.encoding.Varint=r(30),n.util={},n.util.js=r(7),n.util.preconditions=r(3),n.errors=r(11),n.Address=r(27),n.Block=r(150),n.MerkleBlock=r(77),n.BlockHeader=r(39),n.HDPrivateKey=r(78),n.HDPublicKey=r(79),n.Networks=r(24),n.Opcode=r(48),n.PrivateKey=r(36),n.PublicKey=r(15),n.Script=r(13),n.Transaction=r(25),n.Input=r(25).Input,n.Output=r(25).Output,n.UnspentOutput=r(25).UnspentOutput,n.Message=r(152),n.Mnemonic=r(154),n.ECIES=r(166),n.Signature=r(5),n.Shamir=r(76),n.SmartLedger={version:n.version,hardenedBy:n.hardenedBy,baseVersion:n.baseVersion,securityFeatures:n.securityFeatures,SmartVerify:r(51),EllipticFixed:r(52)},n.SmartVerify=r(51),n.EllipticFixed=r(52);try{n.SmartContract=r(170)}catch(e){"undefined"==typeof window&&console.warn("SmartContract module not available:",e.message)}if("undefined"==typeof window)try{n.SmartUTXO=r(179),n.SmartMiner=r(181),n.CustomScriptHelper=r(182)}catch(e){}n.GDAF=r(183),n.createDID=function(e){return(new n.GDAF).createDID(e)},n.resolveDID=function(e){return(new n.GDAF).resolveDID(e)},n.createEmailCredential=function(e,t,r,i){return(new n.GDAF).createEmailCredential(e,t,r,i)},n.createAgeCredential=function(e,t,r,i,o){return(new n.GDAF).createAgeCredential(e,t,r,i,o)},n.createKYCCredential=function(e,t,r,i,o){return(new n.GDAF).createKYCCredential(e,t,r,i,o)},n.verifyCredential=function(e,t){return(new n.GDAF).verifyCredential(e,t)},n.validateCredential=function(e,t){return(new n.GDAF).validateCredential(e,t)},n.generateSelectiveProof=function(e,t,r){return(new n.GDAF).generateSelectiveProof(e,t,r)},n.generateAgeProof=function(e,t,r){return(new n.GDAF).generateAgeProof(e,t,r)},n.verifyAgeProof=function(e,t,r){return(new n.GDAF).verifyAgeProof(e,t,r)},n.createPresentation=function(e,t,r,i){return(new n.GDAF).createPresentation(e,t,r,i)},n.getCredentialSchemas=function(){return(new n.GDAF).getAllSchemas()},n.createCredentialTemplate=function(e){return(new n.GDAF).createTemplate(e)},n.LTP=r(188),n.prepareRightToken=function(e,t,r,i,o,a){return n.LTP.Right.prepareRightToken(e,t,r,i,o,a)},n.prepareRightTokenVerification=function(e,t){return n.LTP.Right.prepareRightTokenVerification(e,t)},n.prepareRightTokenTransfer=function(e,t,r,i){return n.LTP.Right.prepareRightTokenTransfer(e,t,r,i)},n.prepareRightTypeValidation=function(e){return n.LTP.Right.prepareRightTypeValidation(e)},n.prepareObligationToken=function(e,t,r,i,o,a){return n.LTP.Obligation.prepareObligationToken(e,t,r,i,o,a)},n.prepareObligationVerification=function(e,t){return n.LTP.Obligation.prepareObligationVerification(e,t)},n.prepareObligationFulfillment=function(e,t,r,i){return n.LTP.Obligation.prepareObligationFulfillment(e,t,r,i)},n.prepareObligationBreachAssessment=function(e,t,r){return n.LTP.Obligation.prepareObligationBreachAssessment(e,t,r)},n.prepareObligationMonitoringReport=function(e,t){return n.LTP.Obligation.prepareObligationMonitoringReport(e,t)},n.prepareClaimValidation=function(e,t){return n.LTP.Claim.prepareClaimValidation(e,t)},n.prepareClaimAttestation=function(e,t,r){return n.LTP.Claim.prepareClaimAttestation(e,t,r)},n.prepareClaimDispute=function(e,t,r){return n.LTP.Claim.prepareClaimDispute(e,t,r)},n.prepareBulkClaimValidation=function(e,t){return n.LTP.Claim.prepareBulkClaimValidation(e,t)},n.prepareClaimTemplate=function(e,t){return n.LTP.Claim.prepareClaimTemplate(e,t)},n.prepareSignatureProof=function(e,t,r){return n.LTP.Proof.prepareSignatureProof(e,t,r)},n.prepareSignatureVerification=function(e,t){return n.LTP.Proof.prepareSignatureVerification(e,t)},n.prepareSelectiveDisclosure=function(e,t,r){return n.LTP.Proof.prepareSelectiveDisclosure(e,t,r)},n.prepareSelectiveDisclosureVerification=function(e,t){return n.LTP.Proof.prepareSelectiveDisclosureVerification(e,t)},n.prepareLegalValidityProof=function(e,t,r){return n.LTP.Proof.prepareLegalValidityProof(e,t,r)},n.prepareZeroKnowledgeProof=function(e,t,r){return n.LTP.Proof.prepareZeroKnowledgeProof(e,t,r)},n.prepareRegistry=function(e){return n.LTP.Registry.prepareRegistry(e)},n.prepareTokenRegistration=function(e,t,r){return n.LTP.Registry.prepareTokenRegistration(e,t,r)},n.prepareTokenApproval=function(e,t,r){return n.LTP.Registry.prepareTokenApproval(e,t,r)},n.prepareTokenRevocation=function(e,t,r){return n.LTP.Registry.prepareTokenRevocation(e,t,r)},n.prepareTokenStatusQuery=function(e,t){return n.LTP.Registry.prepareTokenStatusQuery(e,t)},n.prepareTokenSearch=function(e,t){return n.LTP.Registry.prepareTokenSearch(e,t)},n.prepareStatisticsQuery=function(e){return n.LTP.Registry.prepareStatisticsQuery(e)},n.prepareAuditLogQuery=function(e,t){return n.LTP.Registry.prepareAuditLogQuery(e,t)},n.prepareTokenCommitment=function(e,t){return n.LTP.Anchor.prepareTokenCommitment(e,t)},n.prepareBatchCommitment=function(e,t){return n.LTP.Anchor.prepareBatchCommitment(e,t)},n.verifyTokenAnchor=function(e,t,r){return n.LTP.Anchor.verifyTokenAnchor(e,t,r)},n.formatRevocation=function(e,t){return n.LTP.Anchor.formatRevocation(e,t)},n.getRightTypes=function(){return n.LTP.Right.getRightTypes()},n.getObligationTypes=function(){return n.LTP.Obligation.getObligationTypes()},n.getObligationPriority=function(){return n.LTP.Obligation.getObligationPriority()},n.getObligationStatus=function(){return n.LTP.Obligation.getObligationStatus()},n.getClaimSchemas=function(){return n.LTP.Claim.getSchemas()},n.getClaimSchemaNames=function(){return n.LTP.Claim.getSchemaNames()},n.getClaimSchema=function(e){return n.LTP.Claim.getSchema(e)},n.createClaimTemplate=function(e){return n.LTP.Claim.createTemplate(e)},n.canonicalizeClaim=function(e){return n.LTP.Claim.canonicalize(e)},n.hashClaim=function(e){return n.LTP.Claim.hash(e)},n.addCustomClaimSchema=function(e,t){return n.LTP.Claim.addSchema(e,t)},n.Transaction.sighash=r(20)}).call(this,r(0).Buffer,r(40))},function(e,t,r){"use strict";var i={isArray:e=>Array.isArray(e),isNumber:e=>"number"==typeof e,isObject:e=>e&&"object"==typeof e,isString:e=>"string"==typeof e,isUndefined:e=>void 0===e,isFunction:e=>"function"==typeof e,isNull:e=>null===e,isDate:e=>e instanceof Date,extend:(e,t)=>Object.assign(e,t),noop:()=>{},every:(e,t)=>e.every(t||(e=>e)),map:(e,t)=>Array.from(e).map(t||(e=>e)),includes:(e,t)=>e.includes(t),each:(e,t)=>e.forEach(t),clone:e=>Object.assign({},e),pick:(e,t)=>{const r={};return t.forEach(t=>{void 0!==e[t]&&(r[t]=e[t])}),r},values:e=>Object.values(e),filter:(e,t)=>e.filter(t),reduce:(e,t,r)=>e.reduce(t,r),without:(e,t)=>e.filter(e=>e!==t),shuffle:e=>{const t=e.slice(0);for(let e=t.length-1;e>0;e--){const r=Math.floor(Math.random()*(e+1));[t[e],t[r]]=[t[r],t[e]]}return t},difference:(e,t)=>e.filter(e=>!t.includes(e)),findIndex:(e,t)=>e.findIndex(t),some:(e,t)=>e.some(t),range:e=>[...Array(e).keys()]};e.exports=i},function(e,t,r){"use strict";var i=r(11),n=r(2);e.exports={checkState:function(e,t){if(!e)throw new i.InvalidState(t)},checkArgument:function(e,t,r,n){if(!e)throw new i.InvalidArgument(t,r,n)},checkArgumentType:function(e,t,o){if(o=o||"(unknown name)",n.isString(t)){if("Buffer"===t){if(!r(0).Buffer.isBuffer(e))throw new i.InvalidArgumentType(e,t,o)}else if(typeof e!==t)throw new i.InvalidArgumentType(e,t,o)}else if(!(e instanceof t))throw new i.InvalidArgumentType(e,t.name,o)}}},function(e,t,r){"use strict";(function(t){var i=r(10),n=r(3),o=r(2),a=function(e){for(var r=t.alloc(e.length),i=0;i<e.length;i++)r[i]=e[e.length-1-i];return r};i.Zero=new i(0),i.One=new i(1),i.Minus1=new i(-1),i.fromNumber=function(e){return n.checkArgument(o.isNumber(e)),new i(e)},i.fromString=function(e,t){return n.checkArgument(o.isString(e)),new i(e,t)},i.fromBuffer=function(e,t){void 0!==t&&"little"===t.endian&&(e=a(e));var r=e.toString("hex");return new i(r,16)},i.fromSM=function(e,r){var n;if(0===e.length)return i.fromBuffer(t.from([0]));var o="big";return r&&(o=r.endian),"little"===o&&(e=a(e)),128&e[0]?(e[0]=127&e[0],(n=i.fromBuffer(e)).neg().copy(n)):n=i.fromBuffer(e),n},i.prototype.toNumber=function(){return parseInt(this.toString(10),10)},i.prototype.toBuffer=function(e){var r,n;if(e&&e.size){var o=(n=this.toString(16,2)).length/2;r=t.from(n,"hex"),o===e.size||(o>e.size?r=i.trim(r,o):o<e.size&&(r=i.pad(r,o,e.size)))}else n=this.toString(16,2),r=t.from(n,"hex");return void 0!==e&&"little"===e.endian&&(r=a(r)),r},i.prototype.toSMBigEndian=function(){var e;return-1===this.cmp(i.Zero)?128&(e=this.neg().toBuffer())[0]?e=t.concat([t.from([128]),e]):e[0]=128|e[0]:128&(e=this.toBuffer())[0]&&(e=t.concat([t.from([0]),e])),1===e.length&0===e[0]&&(e=t.from([])),e},i.prototype.toSM=function(e){var t=e?e.endian:"big",r=this.toSMBigEndian();return"little"===t&&(r=a(r)),r},i.fromScriptNumBuffer=function(e,t,r){var o=r||4;if(n.checkArgument(e.length<=o,new Error("script number overflow")),t&&e.length>0&&0==(127&e[e.length-1])&&(e.length<=1||0==(128&e[e.length-2])))throw new Error("non-minimally encoded script number");return i.fromSM(e,{endian:"little"})},i.prototype.toScriptNumBuffer=function(){return this.toSM({endian:"little"})},i.trim=function(e,t){return e.slice(t-e.length,e.length)},i.pad=function(e,r,i){for(var n=t.alloc(i),o=0;o<e.length;o++)n[n.length-1-o]=e[e.length-1-o];for(o=0;o<i-r;o++)n[o]=0;return n},i.prototype.toHex=function(...e){return this.toBuffer(...e).toString("hex")},i.fromHex=function(e,...r){return i.fromBuffer(t.from(e,"hex"),...r)},e.exports=i}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(4),n=r(2),o=r(3),a=r(7),s=function e(t,r){if(!(this instanceof e))return new e(t,r);if(t instanceof i)this.set({r:t,s:r});else if(t){var n=t;this.set(n)}};s.prototype.set=function(e){return this.r=e.r||this.r||void 0,this.s=e.s||this.s||void 0,this.i=void 0!==e.i?e.i:this.i,this.compressed=void 0!==e.compressed?e.compressed:this.compressed,this.nhashtype=e.nhashtype||this.nhashtype||void 0,this},s.fromCompact=function(e){o.checkArgument(t.isBuffer(e),"Argument is expected to be a Buffer");var r=new s,n=!0,a=e.slice(0,1)[0]-27-4;a<0&&(n=!1,a+=4);var c=e.slice(1,33),u=e.slice(33,65);return o.checkArgument(0===a||1===a||2===a||3===a,new Error("i must be 0, 1, 2, or 3")),o.checkArgument(32===c.length,new Error("r must be 32 bytes")),o.checkArgument(32===u.length,new Error("s must be 32 bytes")),r.compressed=n,r.i=a,r.r=i.fromBuffer(c),r.s=i.fromBuffer(u),r},s.fromDER=s.fromBuffer=function(e,t){var r=s.parseDER(e,t),i=new s;return i.r=r.r,i.s=r.s,i},s.fromTxFormat=function(e){var t=e.readUInt8(e.length-1),r=e.slice(0,e.length-1),i=s.fromDER(r,!1);return i.nhashtype=t,i},s.fromString=function(e){var r=t.from(e,"hex");return s.fromDER(r)},s.parseDER=function(e,r){o.checkArgument(t.isBuffer(e),new Error("DER formatted signature should be a buffer")),n.isUndefined(r)&&(r=!0);var a=e[0];o.checkArgument(48===a,new Error("Header byte should be 0x30"));var s=e[1],c=e.slice(2).length;o.checkArgument(!r||s===c,new Error("Length byte should length of what follows")),s=s<c?s:c;var u=e[2];o.checkArgument(2===u,new Error("Integer byte for r should be 0x02"));var f=e[3],h=e.slice(4,4+f),l=i.fromBuffer(h),d=0===e[4];o.checkArgument(f===h.length,new Error("Length of r incorrect"));var p=e[4+f+0];o.checkArgument(2===p,new Error("Integer byte for s should be 0x02"));var g=e[4+f+1],m=e.slice(4+f+2,4+f+2+g),b=i.fromBuffer(m),y=0===e[4+f+2+2];o.checkArgument(g===m.length,new Error("Length of s incorrect"));var v=4+f+2+g;return o.checkArgument(s===v-2,new Error("Length of signature incorrect")),{header:a,length:s,rheader:u,rlength:f,rneg:d,rbuf:h,r:l,sheader:p,slength:g,sneg:y,sbuf:m,s:b}},s.prototype.toCompact=function(e,r){if(e="number"==typeof e?e:this.i,r="boolean"==typeof r?r:this.compressed,0!==e&&1!==e&&2!==e&&3!==e)throw new Error("i must be equal to 0, 1, 2, or 3");var i=e+27+4;!1===r&&(i-=4);var n=t.from([i]),o=this.r.toBuffer({size:32}),a=this.s.toBuffer({size:32});return t.concat([n,o,a])},s.prototype.toBuffer=s.prototype.toDER=function(){var e=this.r.toBuffer(),r=this.s.toBuffer(),i=!!(128&e[0]),n=!!(128&r[0]),o=i?t.concat([t.from([0]),e]):e,a=n?t.concat([t.from([0]),r]):r,s=o.length,c=a.length,u=2+s+2+c;return t.concat([t.from([48,u,2,s]),o,t.from([2,c]),a])},s.prototype.toString=function(){return this.toDER().toString("hex")},s.isTxDER=function(e){if(e.length<9)return!1;if(e.length>73)return!1;if(48!==e[0])return!1;if(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(2!==e[2])return!1;if(0===t)return!1;if(128&i[0])return!1;if(t>1&&0===i[0]&&!(128&i[1]))return!1;var n=e.slice(6+t);return 2===e[6+t-2]&&(0!==r&&(!(128&n[0])&&!(r>1&&0===n[0]&&!(128&n[1]))))},s.prototype.hasLowS=function(){return!this.s.lt(new i(1))&&!this.s.gt(new i("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex"))},s.prototype.hasDefinedHashtype=function(){if(!a.isNaturalNumber(this.nhashtype))return!1;var e=31&this.nhashtype;return!(e<s.SIGHASH_ALL||e>s.SIGHASH_SINGLE)},s.prototype.toTxFormat=function(){var e=this.toDER(),r=t.alloc(1);return r.writeUInt8(this.nhashtype,0),t.concat([e,r])},s.SIGHASH_ALL=1,s.SIGHASH_NONE=2,s.SIGHASH_SINGLE=3,s.SIGHASH_FORKID=64,s.SIGHASH_ANYONECANPAY=128,s.prototype.isCanonical=function(){var e=r(12).getN().shrn(1);return this.s.lte(e)},s.prototype.toCanonical=function(){if(this.isCanonical())return new s({r:this.r,s:this.s,i:this.i,compressed:this.compressed,nhashtype:this.nhashtype});var e=r(12).getN().sub(this.s);return new s({r:this.r,s:e,i:this.i,compressed:this.compressed,nhashtype:this.nhashtype})},s.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=r(12).getN();if(this.r.gte(e))throw new Error("Signature r component >= curve order");if(this.s.gte(e))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},s.prototype.isValid=function(){try{return this.validate(),!0}catch(e){return!1}},s.prototype.applySecurityPatches=function(){var e=r(12).getN(),t=e.shrn(1);if(this.r.isZero()||this.s.isZero())throw new Error("Invalid signature: zero r or s");if(this.r.gte(e)||this.s.gte(e))throw new Error("Invalid signature: out of range");return this.s.gt(t)&&(this.s=e.sub(this.s)),this},e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){(function(t){t.browser?e.exports=r(110):e.exports=r(111)}).call(this,r(18))},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=function(e){return!!i.isString(e)&&/^[0-9a-fA-F]+$/.test(e)};e.exports={isValidJSON:function(e){var t;if(!i.isString(e))return!1;try{t=JSON.parse(e)}catch(e){return!1}return"object"==typeof t},isHexa:o,isHexaString:o,defineImmutable:function(e,t){return Object.keys(t).forEach((function(r){Object.defineProperty(e,r,{configurable:!1,enumerable:!0,value:t[r]})})),e},isNaturalNumber:function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e&&e>=0},integerAsBuffer:function(e){n.checkArgumentType(e,"number","integer");const r=t.allocUnsafe(4);return r.writeUInt32BE(e,0),r}}}).call(this,r(0).Buffer)},function(e,t){},function(e,t,r){"use strict";var i=t,n=r(10),o=r(22),a=r(57);i.assert=o,i.toArray=a.toArray,i.zero2=a.zero2,i.toHex=a.toHex,i.encode=a.encode,i.getNAF=function(e,t,r){var i,n=new Array(Math.max(e.bitLength(),r)+1);for(i=0;i<n.length;i+=1)n[i]=0;var o=1<<t+1,a=e.clone();for(i=0;i<n.length;i++){var s,c=a.andln(o-1);a.isOdd()?(s=c>(o>>1)-1?(o>>1)-c:c,a.isubn(s)):s=0,n[i]=s,a.iushrn(1)}return n},i.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var i,n=0,o=0;e.cmpn(-n)>0||t.cmpn(-o)>0;){var a,s,c=e.andln(3)+n&3,u=t.andln(3)+o&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!==(i=e.andln(7)+n&7)&&5!==i||2!==u?c:-c,r[0].push(a),s=0==(1&u)?0:3!==(i=t.andln(7)+o&7)&&5!==i||2!==c?u:-u,r[1].push(s),2*n===a+1&&(n=1-n),2*o===s+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},i.cachedProperty=function(e,t,r){var i="_"+t;e.prototype[t]=function(){return void 0!==this[i]?this[i]:this[i]=r.call(this)}},i.parseBytes=function(e){return"string"==typeof e?i.toArray(e,"hex"):e},i.intFromLE=function(e){return new n(e,"hex","le")}},function(e,t,r){(function(e){!function(e,t){"use strict";function i(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"==typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{a=r(86).Buffer}catch(e){}function s(e,t,r){for(var i=0,n=Math.min(e.length,r),o=t;o<n;o++){var a=e.charCodeAt(o)-48;i<<=4,i|=a>=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return i}function c(e,t,r,i){for(var n=0,o=Math.min(e.length,r),a=t;a<o;a++){var s=e.charCodeAt(a)-48;n*=i,n+=s>=49?s-49+10:s>=17?s-17+10:s}return n}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),i(t===(0|t)&&t>=2&&t<=36);var n=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&n++,16===t?this._parseHex(e,n):this._parseBase(e,t,n),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),t,r)},o.prototype._initNumber=function(e,t,r){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(i(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),t,r)},o.prototype._initArray=function(e,t,r){if(i("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var o,a,s=0;if("be"===r)for(n=e.length-1,o=0;n>=0;n-=3)a=e[n]|e[n-1]<<8|e[n-2]<<16,this.words[o]|=a<<s&67108863,this.words[o+1]=a>>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n<e.length;n+=3)a=e[n]|e[n+1]<<8|e[n+2]<<16,this.words[o]|=a<<s&67108863,this.words[o+1]=a>>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var i,n,o=0;for(r=e.length-6,i=0;r>=t;r-=6)n=s(e,r,r+6),this.words[i]|=n<<o&67108863,this.words[i+1]|=n>>>26-o&4194303,(o+=24)>=26&&(o-=26,i++);r+6!==t&&(n=s(e,t,r+6),this.words[i]|=n<<o&67108863,this.words[i+1]|=n>>>26-o&4194303),this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var i=0,n=1;n<=67108863;n*=t)i++;i--,n=n/t|0;for(var o=e.length-r,a=o%i,s=Math.min(o,o-a)+r,u=0,f=r;f<s;f+=i)u=c(e,f,f+i,t),this.imuln(n),this.words[0]+u<67108864?this.words[0]+=u:this._iaddn(u);if(0!==a){var h=1;for(u=c(e,f,e.length,t),f=0;f<a;f++)h*=t;this.imuln(h),this.words[0]+u<67108864?this.words[0]+=u:this._iaddn(u)}},o.prototype.copy=function(e){e.words=new Array(this.length);for(var t=0;t<this.length;t++)e.words[t]=this.words[t];e.length=this.length,e.negative=this.negative,e.red=this.red},o.prototype.clone=function(){var e=new o(null);return this.copy(e),e},o.prototype._expand=function(e){for(;this.length<e;)this.words[this.length++]=0;return this},o.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var u=["","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"],f=[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],h=[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];function l(e,t,r){r.negative=t.negative^e.negative;var i=e.length+t.length|0;r.length=i,i=i-1|0;var n=0|e.words[0],o=0|t.words[0],a=n*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var u=1;u<i;u++){for(var f=c>>>26,h=67108863&c,l=Math.min(u,t.length-1),d=Math.max(0,u-e.length+1);d<=l;d++){var p=u-d|0;f+=(a=(n=0|e.words[p])*(o=0|t.words[d])+h)/67108864|0,h=67108863&a}r.words[u]=0|h,c=0|f}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var n=0,o=0,a=0;a<this.length;a++){var s=this.words[a],c=(16777215&(s<<n|o)).toString(16);r=0!==(o=s>>>24-n&16777215)||a!==this.length-1?u[6-c.length]+c+r:c+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],d=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(d).toString(e);r=(p=p.idivn(d)).isZero()?g+r:u[l-g.length]+g+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return i(void 0!==a),this.toArrayLike(a,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0"),this.strip();var a,s,c="le"===t,u=new e(o),f=this.clone();if(c){for(s=0;!f.isZero();s++)a=f.andln(255),f.iushrn(8),u[s]=a;for(;s<o;s++)u[s]=0}else{for(s=0;s<o-n;s++)u[s]=0;for(s=0;!f.isZero();s++)a=f.andln(255),f.iushrn(8),u[o-s-1]=a}return u},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;t<this.length;t++){var r=this._zeroBits(this.words[t]);if(e+=r,26!==r)break}return e},o.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},o.prototype.toTwos=function(e){return 0!==this.negative?this.abs().inotn(e).iaddn(1):this.clone()},o.prototype.fromTwos=function(e){return this.testn(e-1)?this.notn(e).iaddn(1).ineg():this.clone()},o.prototype.isNeg=function(){return 0!==this.negative},o.prototype.neg=function(){return this.clone().ineg()},o.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},o.prototype.iuor=function(e){for(;this.length<e.length;)this.words[this.length++]=0;for(var t=0;t<e.length;t++)this.words[t]=this.words[t]|e.words[t];return this.strip()},o.prototype.ior=function(e){return i(0==(this.negative|e.negative)),this.iuor(e)},o.prototype.or=function(e){return this.length>e.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;r<t.length;r++)this.words[r]=this.words[r]&e.words[r];return this.length=t.length,this.strip()},o.prototype.iand=function(e){return i(0==(this.negative|e.negative)),this.iuand(e)},o.prototype.and=function(e){return this.length>e.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var i=0;i<r.length;i++)this.words[i]=t.words[i]^r.words[i];if(this!==t)for(;i<t.length;i++)this.words[i]=t.words[i];return this.length=t.length,this.strip()},o.prototype.ixor=function(e){return i(0==(this.negative|e.negative)),this.iuxor(e)},o.prototype.xor=function(e){return this.length>e.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){i("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var n=0;n<t;n++)this.words[n]=67108863&~this.words[n];return r>0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){i("number"==typeof e&&e>=0);var r=e/26|0,n=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<<n:this.words[r]&~(1<<n),this.strip()},o.prototype.iadd=function(e){var t,r,i;if(0!==this.negative&&0===e.negative)return this.negative=0,t=this.isub(e),this.negative^=1,this._normSign();if(0===this.negative&&0!==e.negative)return e.negative=0,t=this.isub(e),e.negative=1,t._normSign();this.length>e.length?(r=this,i=e):(r=e,i=this);for(var n=0,o=0;o<i.length;o++)t=(0|r.words[o])+(0|i.words[o])+n,this.words[o]=67108863&t,n=t>>>26;for(;0!==n&&o<r.length;o++)t=(0|r.words[o])+n,this.words[o]=67108863&t,n=t>>>26;if(this.length=r.length,0!==n)this.words[this.length]=n,this.length++;else if(r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this},o.prototype.add=function(e){var t;return 0!==e.negative&&0===this.negative?(e.negative=0,t=this.sub(e),e.negative^=1,t):0===e.negative&&0!==this.negative?(this.negative=0,t=e.sub(this),this.negative=1,t):this.length>e.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,i,n=this.cmp(e);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;n>0?(r=this,i=e):(r=e,i=this);for(var o=0,a=0;a<i.length;a++)o=(t=(0|r.words[a])-(0|i.words[a])+o)>>26,this.words[a]=67108863&t;for(;0!==o&&a<r.length;a++)o=(t=(0|r.words[a])+o)>>26,this.words[a]=67108863&t;if(0===o&&a<r.length&&r!==this)for(;a<r.length;a++)this.words[a]=r.words[a];return this.length=Math.max(this.length,a),r!==this&&(this.negative=1),this.strip()},o.prototype.sub=function(e){return this.clone().isub(e)};var d=function(e,t,r){var i,n,o,a=e.words,s=t.words,c=r.words,u=0,f=0|a[0],h=8191&f,l=f>>>13,d=0|a[1],p=8191&d,g=d>>>13,m=0|a[2],b=8191&m,y=m>>>13,v=0|a[3],S=8191&v,_=v>>>13,w=0|a[4],I=8191&w,O=w>>>13,A=0|a[5],P=8191&A,k=A>>>13,E=0|a[6],x=8191&E,T=E>>>13,R=0|a[7],N=8191&R,M=R>>>13,C=0|a[8],D=8191&C,B=C>>>13,j=0|a[9],H=8191&j,L=j>>>13,U=0|s[0],F=8191&U,z=U>>>13,K=0|s[1],V=8191&K,q=K>>>13,G=0|s[2],Y=8191&G,W=G>>>13,X=0|s[3],J=8191&X,Z=X>>>13,$=0|s[4],Q=8191&$,ee=$>>>13,te=0|s[5],re=8191&te,ie=te>>>13,ne=0|s[6],oe=8191&ne,ae=ne>>>13,se=0|s[7],ce=8191&se,ue=se>>>13,fe=0|s[8],he=8191&fe,le=fe>>>13,de=0|s[9],pe=8191&de,ge=de>>>13;r.negative=e.negative^t.negative,r.length=19;var me=(u+(i=Math.imul(h,F))|0)+((8191&(n=(n=Math.imul(h,z))+Math.imul(l,F)|0))<<13)|0;u=((o=Math.imul(l,z))+(n>>>13)|0)+(me>>>26)|0,me&=67108863,i=Math.imul(p,F),n=(n=Math.imul(p,z))+Math.imul(g,F)|0,o=Math.imul(g,z);var be=(u+(i=i+Math.imul(h,V)|0)|0)+((8191&(n=(n=n+Math.imul(h,q)|0)+Math.imul(l,V)|0))<<13)|0;u=((o=o+Math.imul(l,q)|0)+(n>>>13)|0)+(be>>>26)|0,be&=67108863,i=Math.imul(b,F),n=(n=Math.imul(b,z))+Math.imul(y,F)|0,o=Math.imul(y,z),i=i+Math.imul(p,V)|0,n=(n=n+Math.imul(p,q)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,q)|0;var ye=(u+(i=i+Math.imul(h,Y)|0)|0)+((8191&(n=(n=n+Math.imul(h,W)|0)+Math.imul(l,Y)|0))<<13)|0;u=((o=o+Math.imul(l,W)|0)+(n>>>13)|0)+(ye>>>26)|0,ye&=67108863,i=Math.imul(S,F),n=(n=Math.imul(S,z))+Math.imul(_,F)|0,o=Math.imul(_,z),i=i+Math.imul(b,V)|0,n=(n=n+Math.imul(b,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,i=i+Math.imul(p,Y)|0,n=(n=n+Math.imul(p,W)|0)+Math.imul(g,Y)|0,o=o+Math.imul(g,W)|0;var ve=(u+(i=i+Math.imul(h,J)|0)|0)+((8191&(n=(n=n+Math.imul(h,Z)|0)+Math.imul(l,J)|0))<<13)|0;u=((o=o+Math.imul(l,Z)|0)+(n>>>13)|0)+(ve>>>26)|0,ve&=67108863,i=Math.imul(I,F),n=(n=Math.imul(I,z))+Math.imul(O,F)|0,o=Math.imul(O,z),i=i+Math.imul(S,V)|0,n=(n=n+Math.imul(S,q)|0)+Math.imul(_,V)|0,o=o+Math.imul(_,q)|0,i=i+Math.imul(b,Y)|0,n=(n=n+Math.imul(b,W)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,W)|0,i=i+Math.imul(p,J)|0,n=(n=n+Math.imul(p,Z)|0)+Math.imul(g,J)|0,o=o+Math.imul(g,Z)|0;var Se=(u+(i=i+Math.imul(h,Q)|0)|0)+((8191&(n=(n=n+Math.imul(h,ee)|0)+Math.imul(l,Q)|0))<<13)|0;u=((o=o+Math.imul(l,ee)|0)+(n>>>13)|0)+(Se>>>26)|0,Se&=67108863,i=Math.imul(P,F),n=(n=Math.imul(P,z))+Math.imul(k,F)|0,o=Math.imul(k,z),i=i+Math.imul(I,V)|0,n=(n=n+Math.imul(I,q)|0)+Math.imul(O,V)|0,o=o+Math.imul(O,q)|0,i=i+Math.imul(S,Y)|0,n=(n=n+Math.imul(S,W)|0)+Math.imul(_,Y)|0,o=o+Math.imul(_,W)|0,i=i+Math.imul(b,J)|0,n=(n=n+Math.imul(b,Z)|0)+Math.imul(y,J)|0,o=o+Math.imul(y,Z)|0,i=i+Math.imul(p,Q)|0,n=(n=n+Math.imul(p,ee)|0)+Math.imul(g,Q)|0,o=o+Math.imul(g,ee)|0;var _e=(u+(i=i+Math.imul(h,re)|0)|0)+((8191&(n=(n=n+Math.imul(h,ie)|0)+Math.imul(l,re)|0))<<13)|0;u=((o=o+Math.imul(l,ie)|0)+(n>>>13)|0)+(_e>>>26)|0,_e&=67108863,i=Math.imul(x,F),n=(n=Math.imul(x,z))+Math.imul(T,F)|0,o=Math.imul(T,z),i=i+Math.imul(P,V)|0,n=(n=n+Math.imul(P,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,i=i+Math.imul(I,Y)|0,n=(n=n+Math.imul(I,W)|0)+Math.imul(O,Y)|0,o=o+Math.imul(O,W)|0,i=i+Math.imul(S,J)|0,n=(n=n+Math.imul(S,Z)|0)+Math.imul(_,J)|0,o=o+Math.imul(_,Z)|0,i=i+Math.imul(b,Q)|0,n=(n=n+Math.imul(b,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,i=i+Math.imul(p,re)|0,n=(n=n+Math.imul(p,ie)|0)+Math.imul(g,re)|0,o=o+Math.imul(g,ie)|0;var we=(u+(i=i+Math.imul(h,oe)|0)|0)+((8191&(n=(n=n+Math.imul(h,ae)|0)+Math.imul(l,oe)|0))<<13)|0;u=((o=o+Math.imul(l,ae)|0)+(n>>>13)|0)+(we>>>26)|0,we&=67108863,i=Math.imul(N,F),n=(n=Math.imul(N,z))+Math.imul(M,F)|0,o=Math.imul(M,z),i=i+Math.imul(x,V)|0,n=(n=n+Math.imul(x,q)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,q)|0,i=i+Math.imul(P,Y)|0,n=(n=n+Math.imul(P,W)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,W)|0,i=i+Math.imul(I,J)|0,n=(n=n+Math.imul(I,Z)|0)+Math.imul(O,J)|0,o=o+Math.imul(O,Z)|0,i=i+Math.imul(S,Q)|0,n=(n=n+Math.imul(S,ee)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,ee)|0,i=i+Math.imul(b,re)|0,n=(n=n+Math.imul(b,ie)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ie)|0,i=i+Math.imul(p,oe)|0,n=(n=n+Math.imul(p,ae)|0)+Math.imul(g,oe)|0,o=o+Math.imul(g,ae)|0;var Ie=(u+(i=i+Math.imul(h,ce)|0)|0)+((8191&(n=(n=n+Math.imul(h,ue)|0)+Math.imul(l,ce)|0))<<13)|0;u=((o=o+Math.imul(l,ue)|0)+(n>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,i=Math.imul(D,F),n=(n=Math.imul(D,z))+Math.imul(B,F)|0,o=Math.imul(B,z),i=i+Math.imul(N,V)|0,n=(n=n+Math.imul(N,q)|0)+Math.imul(M,V)|0,o=o+Math.imul(M,q)|0,i=i+Math.imul(x,Y)|0,n=(n=n+Math.imul(x,W)|0)+Math.imul(T,Y)|0,o=o+Math.imul(T,W)|0,i=i+Math.imul(P,J)|0,n=(n=n+Math.imul(P,Z)|0)+Math.imul(k,J)|0,o=o+Math.imul(k,Z)|0,i=i+Math.imul(I,Q)|0,n=(n=n+Math.imul(I,ee)|0)+Math.imul(O,Q)|0,o=o+Math.imul(O,ee)|0,i=i+Math.imul(S,re)|0,n=(n=n+Math.imul(S,ie)|0)+Math.imul(_,re)|0,o=o+Math.imul(_,ie)|0,i=i+Math.imul(b,oe)|0,n=(n=n+Math.imul(b,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,i=i+Math.imul(p,ce)|0,n=(n=n+Math.imul(p,ue)|0)+Math.imul(g,ce)|0,o=o+Math.imul(g,ue)|0;var Oe=(u+(i=i+Math.imul(h,he)|0)|0)+((8191&(n=(n=n+Math.imul(h,le)|0)+Math.imul(l,he)|0))<<13)|0;u=((o=o+Math.imul(l,le)|0)+(n>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,i=Math.imul(H,F),n=(n=Math.imul(H,z))+Math.imul(L,F)|0,o=Math.imul(L,z),i=i+Math.imul(D,V)|0,n=(n=n+Math.imul(D,q)|0)+Math.imul(B,V)|0,o=o+Math.imul(B,q)|0,i=i+Math.imul(N,Y)|0,n=(n=n+Math.imul(N,W)|0)+Math.imul(M,Y)|0,o=o+Math.imul(M,W)|0,i=i+Math.imul(x,J)|0,n=(n=n+Math.imul(x,Z)|0)+Math.imul(T,J)|0,o=o+Math.imul(T,Z)|0,i=i+Math.imul(P,Q)|0,n=(n=n+Math.imul(P,ee)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,ee)|0,i=i+Math.imul(I,re)|0,n=(n=n+Math.imul(I,ie)|0)+Math.imul(O,re)|0,o=o+Math.imul(O,ie)|0,i=i+Math.imul(S,oe)|0,n=(n=n+Math.imul(S,ae)|0)+Math.imul(_,oe)|0,o=o+Math.imul(_,ae)|0,i=i+Math.imul(b,ce)|0,n=(n=n+Math.imul(b,ue)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,ue)|0,i=i+Math.imul(p,he)|0,n=(n=n+Math.imul(p,le)|0)+Math.imul(g,he)|0,o=o+Math.imul(g,le)|0;var Ae=(u+(i=i+Math.imul(h,pe)|0)|0)+((8191&(n=(n=n+Math.imul(h,ge)|0)+Math.imul(l,pe)|0))<<13)|0;u=((o=o+Math.imul(l,ge)|0)+(n>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,i=Math.imul(H,V),n=(n=Math.imul(H,q))+Math.imul(L,V)|0,o=Math.imul(L,q),i=i+Math.imul(D,Y)|0,n=(n=n+Math.imul(D,W)|0)+Math.imul(B,Y)|0,o=o+Math.imul(B,W)|0,i=i+Math.imul(N,J)|0,n=(n=n+Math.imul(N,Z)|0)+Math.imul(M,J)|0,o=o+Math.imul(M,Z)|0,i=i+Math.imul(x,Q)|0,n=(n=n+Math.imul(x,ee)|0)+Math.imul(T,Q)|0,o=o+Math.imul(T,ee)|0,i=i+Math.imul(P,re)|0,n=(n=n+Math.imul(P,ie)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ie)|0,i=i+Math.imul(I,oe)|0,n=(n=n+Math.imul(I,ae)|0)+Math.imul(O,oe)|0,o=o+Math.imul(O,ae)|0,i=i+Math.imul(S,ce)|0,n=(n=n+Math.imul(S,ue)|0)+Math.imul(_,ce)|0,o=o+Math.imul(_,ue)|0,i=i+Math.imul(b,he)|0,n=(n=n+Math.imul(b,le)|0)+Math.imul(y,he)|0,o=o+Math.imul(y,le)|0;var Pe=(u+(i=i+Math.imul(p,pe)|0)|0)+((8191&(n=(n=n+Math.imul(p,ge)|0)+Math.imul(g,pe)|0))<<13)|0;u=((o=o+Math.imul(g,ge)|0)+(n>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,i=Math.imul(H,Y),n=(n=Math.imul(H,W))+Math.imul(L,Y)|0,o=Math.imul(L,W),i=i+Math.imul(D,J)|0,n=(n=n+Math.imul(D,Z)|0)+Math.imul(B,J)|0,o=o+Math.imul(B,Z)|0,i=i+Math.imul(N,Q)|0,n=(n=n+Math.imul(N,ee)|0)+Math.imul(M,Q)|0,o=o+Math.imul(M,ee)|0,i=i+Math.imul(x,re)|0,n=(n=n+Math.imul(x,ie)|0)+Math.imul(T,re)|0,o=o+Math.imul(T,ie)|0,i=i+Math.imul(P,oe)|0,n=(n=n+Math.imul(P,ae)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,ae)|0,i=i+Math.imul(I,ce)|0,n=(n=n+Math.imul(I,ue)|0)+Math.imul(O,ce)|0,o=o+Math.imul(O,ue)|0,i=i+Math.imul(S,he)|0,n=(n=n+Math.imul(S,le)|0)+Math.imul(_,he)|0,o=o+Math.imul(_,le)|0;var ke=(u+(i=i+Math.imul(b,pe)|0)|0)+((8191&(n=(n=n+Math.imul(b,ge)|0)+Math.imul(y,pe)|0))<<13)|0;u=((o=o+Math.imul(y,ge)|0)+(n>>>13)|0)+(ke>>>26)|0,ke&=67108863,i=Math.imul(H,J),n=(n=Math.imul(H,Z))+Math.imul(L,J)|0,o=Math.imul(L,Z),i=i+Math.imul(D,Q)|0,n=(n=n+Math.imul(D,ee)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,ee)|0,i=i+Math.imul(N,re)|0,n=(n=n+Math.imul(N,ie)|0)+Math.imul(M,re)|0,o=o+Math.imul(M,ie)|0,i=i+Math.imul(x,oe)|0,n=(n=n+Math.imul(x,ae)|0)+Math.imul(T,oe)|0,o=o+Math.imul(T,ae)|0,i=i+Math.imul(P,ce)|0,n=(n=n+Math.imul(P,ue)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,ue)|0,i=i+Math.imul(I,he)|0,n=(n=n+Math.imul(I,le)|0)+Math.imul(O,he)|0,o=o+Math.imul(O,le)|0;var Ee=(u+(i=i+Math.imul(S,pe)|0)|0)+((8191&(n=(n=n+Math.imul(S,ge)|0)+Math.imul(_,pe)|0))<<13)|0;u=((o=o+Math.imul(_,ge)|0)+(n>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,i=Math.imul(H,Q),n=(n=Math.imul(H,ee))+Math.imul(L,Q)|0,o=Math.imul(L,ee),i=i+Math.imul(D,re)|0,n=(n=n+Math.imul(D,ie)|0)+Math.imul(B,re)|0,o=o+Math.imul(B,ie)|0,i=i+Math.imul(N,oe)|0,n=(n=n+Math.imul(N,ae)|0)+Math.imul(M,oe)|0,o=o+Math.imul(M,ae)|0,i=i+Math.imul(x,ce)|0,n=(n=n+Math.imul(x,ue)|0)+Math.imul(T,ce)|0,o=o+Math.imul(T,ue)|0,i=i+Math.imul(P,he)|0,n=(n=n+Math.imul(P,le)|0)+Math.imul(k,he)|0,o=o+Math.imul(k,le)|0;var xe=(u+(i=i+Math.imul(I,pe)|0)|0)+((8191&(n=(n=n+Math.imul(I,ge)|0)+Math.imul(O,pe)|0))<<13)|0;u=((o=o+Math.imul(O,ge)|0)+(n>>>13)|0)+(xe>>>26)|0,xe&=67108863,i=Math.imul(H,re),n=(n=Math.imul(H,ie))+Math.imul(L,re)|0,o=Math.imul(L,ie),i=i+Math.imul(D,oe)|0,n=(n=n+Math.imul(D,ae)|0)+Math.imul(B,oe)|0,o=o+Math.imul(B,ae)|0,i=i+Math.imul(N,ce)|0,n=(n=n+Math.imul(N,ue)|0)+Math.imul(M,ce)|0,o=o+Math.imul(M,ue)|0,i=i+Math.imul(x,he)|0,n=(n=n+Math.imul(x,le)|0)+Math.imul(T,he)|0,o=o+Math.imul(T,le)|0;var Te=(u+(i=i+Math.imul(P,pe)|0)|0)+((8191&(n=(n=n+Math.imul(P,ge)|0)+Math.imul(k,pe)|0))<<13)|0;u=((o=o+Math.imul(k,ge)|0)+(n>>>13)|0)+(Te>>>26)|0,Te&=67108863,i=Math.imul(H,oe),n=(n=Math.imul(H,ae))+Math.imul(L,oe)|0,o=Math.imul(L,ae),i=i+Math.imul(D,ce)|0,n=(n=n+Math.imul(D,ue)|0)+Math.imul(B,ce)|0,o=o+Math.imul(B,ue)|0,i=i+Math.imul(N,he)|0,n=(n=n+Math.imul(N,le)|0)+Math.imul(M,he)|0,o=o+Math.imul(M,le)|0;var Re=(u+(i=i+Math.imul(x,pe)|0)|0)+((8191&(n=(n=n+Math.imul(x,ge)|0)+Math.imul(T,pe)|0))<<13)|0;u=((o=o+Math.imul(T,ge)|0)+(n>>>13)|0)+(Re>>>26)|0,Re&=67108863,i=Math.imul(H,ce),n=(n=Math.imul(H,ue))+Math.imul(L,ce)|0,o=Math.imul(L,ue),i=i+Math.imul(D,he)|0,n=(n=n+Math.imul(D,le)|0)+Math.imul(B,he)|0,o=o+Math.imul(B,le)|0;var Ne=(u+(i=i+Math.imul(N,pe)|0)|0)+((8191&(n=(n=n+Math.imul(N,ge)|0)+Math.imul(M,pe)|0))<<13)|0;u=((o=o+Math.imul(M,ge)|0)+(n>>>13)|0)+(Ne>>>26)|0,Ne&=67108863,i=Math.imul(H,he),n=(n=Math.imul(H,le))+Math.imul(L,he)|0,o=Math.imul(L,le);var Me=(u+(i=i+Math.imul(D,pe)|0)|0)+((8191&(n=(n=n+Math.imul(D,ge)|0)+Math.imul(B,pe)|0))<<13)|0;u=((o=o+Math.imul(B,ge)|0)+(n>>>13)|0)+(Me>>>26)|0,Me&=67108863;var Ce=(u+(i=Math.imul(H,pe))|0)+((8191&(n=(n=Math.imul(H,ge))+Math.imul(L,pe)|0))<<13)|0;return u=((o=Math.imul(L,ge))+(n>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,c[0]=me,c[1]=be,c[2]=ye,c[3]=ve,c[4]=Se,c[5]=_e,c[6]=we,c[7]=Ie,c[8]=Oe,c[9]=Ae,c[10]=Pe,c[11]=ke,c[12]=Ee,c[13]=xe,c[14]=Te,c[15]=Re,c[16]=Ne,c[17]=Me,c[18]=Ce,0!==u&&(c[19]=u,r.length++),r};function p(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(d=l),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?d(this,e,t):r<63?l(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var i=0,n=0,o=0;o<r.length-1;o++){var a=n;n=0;for(var s=67108863&i,c=Math.min(o,t.length-1),u=Math.max(0,o-e.length+1);u<=c;u++){var f=o-u,h=(0|e.words[f])*(0|t.words[u]),l=67108863&h;s=67108863&(l=l+s|0),n+=(a=(a=a+(h/67108864|0)|0)+(l>>>26)|0)>>>26,a&=67108863}r.words[o]=s,i=a,a=n}return 0!==i?r.words[o]=i:r.length--,r.strip()}(this,e,t):p(this,e,t)},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,i=0;i<e;i++)t[i]=this.revBin(i,r,e);return t},g.prototype.revBin=function(e,t,r){if(0===e||e===r-1)return e;for(var i=0,n=0;n<t;n++)i|=(1&e)<<t-n-1,e>>=1;return i},g.prototype.permute=function(e,t,r,i,n,o){for(var a=0;a<o;a++)i[a]=t[e[a]],n[a]=r[e[a]]},g.prototype.transform=function(e,t,r,i,n,o){this.permute(o,e,t,r,i,n);for(var a=1;a<n;a<<=1)for(var s=a<<1,c=Math.cos(2*Math.PI/s),u=Math.sin(2*Math.PI/s),f=0;f<n;f+=s)for(var h=c,l=u,d=0;d<a;d++){var p=r[f+d],g=i[f+d],m=r[f+d+a],b=i[f+d+a],y=h*m-l*b;b=h*b+l*m,m=y,r[f+d]=p+m,i[f+d]=g+b,r[f+d+a]=p-m,i[f+d+a]=g-b,d!==s&&(y=c*h-u*l,l=c*l+u*h,h=y)}},g.prototype.guessLen13b=function(e,t){var r=1|Math.max(t,e),i=1&r,n=0;for(r=r/2|0;r;r>>>=1)n++;return 1<<n+1+i},g.prototype.conjugate=function(e,t,r){if(!(r<=1))for(var i=0;i<r/2;i++){var n=e[i];e[i]=e[r-i-1],e[r-i-1]=n,n=t[i],t[i]=-t[r-i-1],t[r-i-1]=-n}},g.prototype.normalize13b=function(e,t){for(var r=0,i=0;i<t/2;i++){var n=8192*Math.round(e[2*i+1]/t)+Math.round(e[2*i]/t)+r;e[i]=67108863&n,r=n<67108864?0:n/67108864|0}return e},g.prototype.convert13b=function(e,t,r,n){for(var o=0,a=0;a<t;a++)o+=0|e[a],r[2*a]=8191&o,o>>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a<n;++a)r[a]=0;i(0===o),i(0==(-8192&o))},g.prototype.stub=function(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=0;return t},g.prototype.mulp=function(e,t,r){var i=2*this.guessLen13b(e.length,t.length),n=this.makeRBT(i),o=this.stub(i),a=new Array(i),s=new Array(i),c=new Array(i),u=new Array(i),f=new Array(i),h=new Array(i),l=r.words;l.length=i,this.convert13b(e.words,e.length,a,i),this.convert13b(t.words,t.length,u,i),this.transform(a,o,s,c,i,n),this.transform(u,o,f,h,i,n);for(var d=0;d<i;d++){var p=s[d]*f[d]-c[d]*h[d];c[d]=s[d]*h[d]+c[d]*f[d],s[d]=p}return this.conjugate(s,c,i),this.transform(s,c,l,o,i,n),this.conjugate(l,o,i),this.normalize13b(l,i),r.negative=e.negative^t.negative,r.length=e.length+t.length,r.strip()},o.prototype.mul=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),this.mulTo(e,t)},o.prototype.mulf=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),p(this,e,t)},o.prototype.imul=function(e){return this.clone().mulTo(e,this)},o.prototype.imuln=function(e){i("number"==typeof e),i(e<67108864);for(var t=0,r=0;r<this.length;r++){var n=(0|this.words[r])*e,o=(67108863&n)+(67108863&t);t>>=26,t+=n/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r<t.length;r++){var i=r/26|0,n=r%26;t[r]=(e.words[i]&1<<n)>>>n}return t}(e);if(0===t.length)return new o(1);for(var r=this,i=0;i<t.length&&0===t[i];i++,r=r.sqr());if(++i<t.length)for(var n=r.sqr();i<t.length;i++,n=n.sqr())0!==t[i]&&(r=r.mul(n));return r},o.prototype.iushln=function(e){i("number"==typeof e&&e>=0);var t,r=e%26,n=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t<this.length;t++){var s=this.words[t]&o,c=(0|this.words[t])-s<<r;this.words[t]=c|a,a=s>>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==n){for(t=this.length-1;t>=0;t--)this.words[t+n]=this.words[t];for(t=0;t<n;t++)this.words[t]=0;this.length+=n}return this.strip()},o.prototype.ishln=function(e){return i(0===this.negative),this.iushln(e)},o.prototype.iushrn=function(e,t,r){var n;i("number"==typeof e&&e>=0),n=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<<o,c=r;if(n-=a,n=Math.max(0,n),c){for(var u=0;u<a;u++)c.words[u]=this.words[u];c.length=a}if(0===a);else if(this.length>a)for(this.length-=a,u=0;u<this.length;u++)this.words[u]=this.words[u+a];else this.words[0]=0,this.length=1;var f=0;for(u=this.length-1;u>=0&&(0!==f||u>=n);u--){var h=0|this.words[u];this.words[u]=f<<26-o|h>>>o,f=h&s}return c&&0!==f&&(c.words[c.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return i(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,n=1<<t;return!(this.length<=r)&&!!(this.words[r]&n)},o.prototype.imaskn=function(e){i("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var n=67108863^67108863>>>t<<t;this.words[this.length-1]&=n}return this.strip()},o.prototype.maskn=function(e){return this.clone().imaskn(e)},o.prototype.iaddn=function(e){return i("number"==typeof e),i(e<67108864),e<0?this.isubn(-e):0!==this.negative?1===this.length&&(0|this.words[0])<e?(this.words[0]=e-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(e),this.negative=1,this):this._iaddn(e)},o.prototype._iaddn=function(e){this.words[0]+=e;for(var t=0;t<this.length&&this.words[t]>=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(i("number"==typeof e),i(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t<this.length&&this.words[t]<0;t++)this.words[t]+=67108864,this.words[t+1]-=1;return this.strip()},o.prototype.addn=function(e){return this.clone().iaddn(e)},o.prototype.subn=function(e){return this.clone().isubn(e)},o.prototype.iabs=function(){return this.negative=0,this},o.prototype.abs=function(){return this.clone().iabs()},o.prototype._ishlnsubmul=function(e,t,r){var n,o,a=e.length+r;this._expand(a);var s=0;for(n=0;n<e.length;n++){o=(0|this.words[n+r])+s;var c=(0|e.words[n])*t;s=((o-=67108863&c)>>26)-(c/67108864|0),this.words[n+r]=67108863&o}for(;n<this.length-r;n++)s=(o=(0|this.words[n+r])+s)>>26,this.words[n+r]=67108863&o;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n<this.length;n++)s=(o=-(0|this.words[n])+s)>>26,this.words[n]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),i=this.clone(),n=e,a=0|n.words[n.length-1];0!==(r=26-this._countBits(a))&&(n=n.ushln(r),i.iushln(r),a=0|n.words[n.length-1]);var s,c=i.length-n.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var u=0;u<s.length;u++)s.words[u]=0}var f=i.clone()._ishlnsubmul(n,1,c);0===f.negative&&(i=f,s&&(s.words[c]=1));for(var h=c-1;h>=0;h--){var l=67108864*(0|i.words[n.length+h])+(0|i.words[n.length+h-1]);for(l=Math.min(l/a|0,67108863),i._ishlnsubmul(n,l,h);0!==i.negative;)l--,i.negative=0,i._ishlnsubmul(n,1,h),i.isZero()||(i.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),i.strip(),"div"!==t&&0!==r&&i.iushrn(r),{div:s||null,mod:i}},o.prototype.divmod=function(e,t,r){return i(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(n=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:n,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var n,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,i=e.ushrn(1),n=e.andln(1),o=r.cmp(i);return o<0||1===n&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){i(e<=67108863);for(var t=(1<<26)%e,r=0,n=this.length-1;n>=0;n--)r=(t*r+(0|this.words[n]))%e;return r},o.prototype.idivn=function(e){i(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*t;this.words[r]=n/e|0,t=n%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n=new o(1),a=new o(0),s=new o(0),c=new o(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var f=r.clone(),h=t.clone();!t.isZero();){for(var l=0,d=1;0==(t.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(t.iushrn(l);l-- >0;)(n.isOdd()||a.isOdd())&&(n.iadd(f),a.isub(h)),n.iushrn(1),a.iushrn(1);for(var p=0,g=1;0==(r.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(f),c.isub(h)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),n.isub(s),a.isub(c)):(r.isub(t),s.isub(n),c.isub(a))}return{a:s,b:c,gcd:r.iushln(u)}},o.prototype._invmp=function(e){i(0===e.negative),i(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var n,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,f=1;0==(t.words[0]&f)&&u<26;++u,f<<=1);if(u>0)for(t.iushrn(u);u-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(n=0===t.cmpn(1)?a:s).cmpn(0)<0&&n.iadd(e),n},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var i=0;t.isEven()&&r.isEven();i++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var n=t.cmp(r);if(n<0){var o=t;t=r,r=o}else if(0===n||0===r.cmpn(1))break;t.isub(r)}return r.iushln(i)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){i("number"==typeof e);var t=e%26,r=(e-t)/26,n=1<<t;if(this.length<=r)return this._expand(r+1),this.words[r]|=n,this;for(var o=n,a=r;0!==o&&a<this.length;a++){var s=0|this.words[a];o=(s+=o)>>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),i(e<=67108863,"Number is too big");var n=0|this.words[0];t=n===e?0:n<e?-1:1}return 0!==this.negative?0|-t:t},o.prototype.cmp=function(e){if(0!==this.negative&&0===e.negative)return-1;if(0===this.negative&&0!==e.negative)return 1;var t=this.ucmp(e);return 0!==this.negative?0|-t:t},o.prototype.ucmp=function(e){if(this.length>e.length)return 1;if(this.length<e.length)return-1;for(var t=0,r=this.length-1;r>=0;r--){var i=0|this.words[r],n=0|e.words[r];if(i!==n){i<n?t=-1:i>n&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new w(e)},o.prototype.toRed=function(e){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return i(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return i(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function b(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function v(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function S(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function w(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else i(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function I(e){w.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(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)}b.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},b.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var i=t<this.n?-1:r.ucmp(this.p);return 0===i?(r.words[0]=0,r.length=1):i>0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},b.prototype.split=function(e,t){e.iushrn(this.n,0,t)},b.prototype.imulK=function(e){return e.imul(this.k)},n(y,b),y.prototype.split=function(e,t){for(var r=Math.min(e.length,9),i=0;i<r;i++)t.words[i]=e.words[i];if(t.length=r,e.length<=9)return e.words[0]=0,void(e.length=1);var n=e.words[9];for(t.words[t.length++]=4194303&n,i=10;i<e.length;i++){var o=0|e.words[i];e.words[i-10]=(4194303&o)<<4|n>>>22,n=o}n>>>=22,e.words[i-10]=n,0===n&&e.length>10?e.length-=10:e.length-=9},y.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r<e.length;r++){var i=0|e.words[r];t+=977*i,e.words[r]=67108863&t,t=64*i+(t/67108864|0)}return 0===e.words[e.length-1]&&(e.length--,0===e.words[e.length-1]&&e.length--),e},n(v,b),n(S,b),n(_,b),_.prototype.imulK=function(e){for(var t=0,r=0;r<e.length;r++){var i=19*(0|e.words[r])+t,n=67108863&i;i>>>=26,e.words[r]=n,t=i}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new y;else if("p224"===e)t=new v;else if("p192"===e)t=new S;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return m[e]=t,t},w.prototype._verify1=function(e){i(0===e.negative,"red works only with positives"),i(e.red,"red works only with red numbers")},w.prototype._verify2=function(e,t){i(0==(e.negative|t.negative),"red works only with positives"),i(e.red&&e.red===t.red,"red works only with red numbers")},w.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},w.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},w.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},w.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},w.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},w.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},w.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},w.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},w.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},w.prototype.isqr=function(e){return this.imul(e,e.clone())},w.prototype.sqr=function(e){return this.mul(e,e)},w.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(i(t%2==1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var n=this.m.subn(1),a=0;!n.isZero()&&0===n.andln(1);)a++,n.iushrn(1);i(!n.isZero());var s=new o(1).toRed(this),c=s.redNeg(),u=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,u).cmp(c);)f.redIAdd(c);for(var h=this.pow(f,n),l=this.pow(e,n.addn(1).iushrn(1)),d=this.pow(e,n),p=a;0!==d.cmp(s);){for(var g=d,m=0;0!==g.cmp(s);m++)g=g.redSqr();i(m<p);var b=this.pow(h,new o(1).iushln(p-m-1));l=l.redMul(b),h=b.redSqr(),d=d.redMul(h),p=m}return l},w.prototype.invm=function(e){var t=e._invmp(this.m);return 0!==t.negative?(t.negative=0,this.imod(t).redNeg()):this.imod(t)},w.prototype.pow=function(e,t){if(t.isZero())return new o(1).toRed(this);if(0===t.cmpn(1))return e.clone();var r=new Array(16);r[0]=new o(1).toRed(this),r[1]=e;for(var i=2;i<r.length;i++)r[i]=this.mul(r[i-1],e);var n=r[0],a=0,s=0,c=t.bitLength()%26;for(0===c&&(c=26),i=t.length-1;i>=0;i--){for(var u=t.words[i],f=c-1;f>=0;f--){var h=u>>f&1;n!==r[0]&&(n=this.sqr(n)),0!==h||0!==a?(a<<=1,a|=h,(4===++s||0===i&&0===f)&&(n=this.mul(n,r[a]),s=0,a=0)):s=0}c=26}return n},w.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},w.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new I(e)},n(I,w),I.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},I.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},I.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),o=n;return n.cmp(this.m)>=0?o=n.isub(this.m):n.cmpn(0)<0&&(o=n.iadd(this.m)),o._forceRed(this)},I.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),i=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),n=r.isub(i).iushrn(this.shift),a=n;return n.cmp(this.m)>=0?a=n.isub(this.m):n.cmpn(0)<0&&(a=n.iadd(this.m)),a._forceRed(this)},I.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,this)}).call(this,r(26)(e))},function(e,t,r){"use strict";var i=r(2);function n(e,t){return e.replace("{0}",t[0]).replace("{1}",t[1]).replace("{2}",t[2])}var o=function(e,t){var r=function(){if(i.isString(t.message))this.message=n(t.message,arguments);else{if(!i.isFunction(t.message))throw new Error("Invalid error definition for "+t.name);this.message=t.message.apply(null,arguments)}this.stack=this.message+"\n"+(new Error).stack};return(r.prototype=Object.create(e.prototype)).name=e.prototype.name+t.name,e[t.name]=r,t.errors&&a(r,t.errors),r},a=function(e,t){i.each(t,(function(t){o(e,t)}))},s={Error:function(){this.message="Internal error",this.stack=this.message+"\n"+(new Error).stack}};s.Error.prototype=Object.create(Error.prototype),s.Error.prototype.name="bsv.Error";var c,u=r(109);c=s.Error,a(c,u),e.exports=s.Error,e.exports.extend=function(e){return o(s.Error,e)}},function(e,t,r){"use strict";(function(t){var i=r(4),n=new(0,r(41).ec)("secp256k1"),o=n.curve.point.bind(n.curve),a=n.curve.pointFromX.bind(n.curve),s=function(e,t,r){try{var i=o(e,t,r)}catch(e){throw new Error("Invalid Point")}return i.validate(),i};s.prototype=Object.getPrototypeOf(n.curve.point()),s.fromX=function(e,t){try{var r=a(t,e)}catch(e){throw new Error("Invalid X")}return r.validate(),r},s.getG=function(){return n.curve.g},s.getN=function(){return new i(n.curve.n.toArray())},s.prototype._getX||(s.prototype._getX=s.prototype.getX),s.prototype.getX=function(){return new i(this._getX().toArray())},s.prototype._getY||(s.prototype._getY=s.prototype.getY),s.prototype.getY=function(){return new i(this._getY().toArray())},s.prototype.validate=function(){if(this.isInfinity())throw new Error("Point cannot be equal to Infinity");var e;try{e=a(this.getX(),this.getY().isOdd())}catch(e){throw new Error("Point does not lie on the curve")}if(0!==e.y.cmp(this.y))throw new Error("Invalid y value for curve.");if(!this.mul(s.getN()).isInfinity())throw new Error("Point times N must be infinity");return this},s.pointToCompressed=function(e){var r,i=e.getX().toBuffer({size:32}),n=e.getY().toBuffer({size:32});return r=n[n.length-1]%2?t.from([3]):t.from([2]),t.concat([r,i])},s.pointFromCompressed=function(e){if(33!==e.length)throw new Error("invalid buffer length");let t,r=e[0];if(3===r)t=!0;else{if(2!==r)throw new Error("invalid value of compressed prefix");t=!1}let n=e.slice(1,33),o=i.fromBuffer(n);return s.fromX(t,o)},s.prototype.toBuffer=function(){return s.pointToCompressed(this)},s.prototype.toHex=function(){return this.toBuffer().toString("hex")},s.fromBuffer=function(e){return s.pointFromCompressed(e)},s.fromHex=function(e){return s.fromBuffer(t.from(e,"hex"))},e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){e.exports=r(63),e.exports.Interpreter=r(49)},function(e,t,r){"use strict";var i=r(22),n=r(23);function o(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=n,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n<e.length;n+=2)r.push(parseInt(e[n]+e[n+1],16))}else for(var i=0,n=0;n<e.length;n++){var a=e.charCodeAt(n);a<128?r[i++]=a:a<2048?(r[i++]=a>>6|192,r[i++]=63&a|128):o(e,n)?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++n)),r[i++]=a>>18|240,r[i++]=a>>12&63|128,r[i++]=a>>6&63|128,r[i++]=63&a|128):(r[i++]=a>>12|224,r[i++]=a>>6&63|128,r[i++]=63&a|128)}else for(n=0;n<e.length;n++)r[n]=0|e[n];return r},t.toHex=function(e){for(var t="",r=0;r<e.length;r++)t+=s(e[r].toString(16));return t},t.htonl=a,t.toHex32=function(e,t){for(var r="",i=0;i<e.length;i++){var n=e[i];"little"===t&&(n=a(n)),r+=c(n.toString(16))}return r},t.zero2=s,t.zero8=c,t.join32=function(e,t,r,n){var o=r-t;i(o%4==0);for(var a=new Array(o/4),s=0,c=t;s<a.length;s++,c+=4){var u;u="big"===n?e[c]<<24|e[c+1]<<16|e[c+2]<<8|e[c+3]:e[c+3]<<24|e[c+2]<<16|e[c+1]<<8|e[c],a[s]=u>>>0}return a},t.split32=function(e,t){for(var r=new Array(4*e.length),i=0,n=0;i<e.length;i++,n+=4){var o=e[i];"big"===t?(r[n]=o>>>24,r[n+1]=o>>>16&255,r[n+2]=o>>>8&255,r[n+3]=255&o):(r[n+3]=o>>>24,r[n+2]=o>>>16&255,r[n+1]=o>>>8&255,r[n]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<<t|e>>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,i){return e+t+r+i>>>0},t.sum32_5=function(e,t,r,i,n){return e+t+r+i+n>>>0},t.sum64=function(e,t,r,i){var n=e[t],o=i+e[t+1]>>>0,a=(o<i?1:0)+r+n;e[t]=a>>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,i){return(t+i>>>0<t?1:0)+e+r>>>0},t.sum64_lo=function(e,t,r,i){return t+i>>>0},t.sum64_4_hi=function(e,t,r,i,n,o,a,s){var c=0,u=t;return c+=(u=u+i>>>0)<t?1:0,c+=(u=u+o>>>0)<o?1:0,e+r+n+a+(c+=(u=u+s>>>0)<s?1:0)>>>0},t.sum64_4_lo=function(e,t,r,i,n,o,a,s){return t+i+o+s>>>0},t.sum64_5_hi=function(e,t,r,i,n,o,a,s,c,u){var f=0,h=t;return f+=(h=h+i>>>0)<t?1:0,f+=(h=h+o>>>0)<o?1:0,f+=(h=h+s>>>0)<s?1:0,e+r+n+a+c+(f+=(h=h+u>>>0)<u?1:0)>>>0},t.sum64_5_lo=function(e,t,r,i,n,o,a,s,c,u){return t+i+o+s+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},function(e,t,r){"use strict";(function(t){var i=r(4),n=r(12),o=r(6),a=r(7),s=r(24),c=r(2),u=r(3);function f(e,t){if(!(this instanceof f))return new f(e,t);if(u.checkArgument(e,"First argument is required, please include public key data."),e instanceof f)return e;t=t||{};var r=this._classifyArgs(e,t);return r.point.validate(),a.defineImmutable(this,{point:r.point,compressed:r.compressed,network:r.network||s.defaultNetwork}),this}f.prototype._classifyArgs=function(e,r){var i={compressed:c.isUndefined(r.compressed)||r.compressed};if(e instanceof n)i.point=e;else if(e.x&&e.y)i=f._transformObject(e);else if("string"==typeof e)i=f._transformDER(t.from(e,"hex"));else if(f._isBuffer(e))i=f._transformDER(e);else{if(!f._isPrivateKey(e))throw new TypeError("First argument is an unrecognized data format.");i=f._transformPrivateKey(e)}return i.network||(i.network=c.isUndefined(r.network)?void 0:s.get(r.network)),i},f._isPrivateKey=function(e){return e instanceof r(36)},f._isBuffer=function(e){return e instanceof t||e instanceof Uint8Array},f._transformPrivateKey=function(e){u.checkArgument(f._isPrivateKey(e),"Must be an instance of PrivateKey");var t={};return t.point=n.getG().mul(e.bn),t.compressed=e.compressed,t.network=e.network,t},f._transformDER=function(e,t){u.checkArgument(f._isBuffer(e),"Must be a buffer of DER encoded public key");var r,o,a,s,h={};if(t=!!c.isUndefined(t)||t,4!==e[0]&&(t||6!==e[0]&&7!==e[0]))if(3===e[0])a=e.slice(1),r=new i(a),(h=f._transformX(!0,r)).compressed=!0;else{if(2!==e[0])throw new TypeError("Invalid DER format public key");a=e.slice(1),r=new i(a),(h=f._transformX(!1,r)).compressed=!0}else{if(a=e.slice(1,33),s=e.slice(33,65),32!==a.length||32!==s.length||65!==e.length)throw new TypeError("Length of x and y must be 32 bytes");r=new i(a),o=new i(s),h.point=new n(r,o),h.compressed=!1}return h},f._transformX=function(e,t){u.checkArgument("boolean"==typeof e,"Must specify whether y is odd or not (true or false)");var r={};return r.point=n.fromX(e,t),r},f._transformObject=function(e){var t=new i(e.x,"hex"),r=new i(e.y,"hex");return new f(new n(t,r),{compressed:e.compressed})},f.fromPrivateKey=function(e){u.checkArgument(f._isPrivateKey(e),"Must be an instance of PrivateKey");var t=f._transformPrivateKey(e);return new f(t.point,{compressed:t.compressed,network:t.network})},f.fromDER=f.fromBuffer=function(e,t){u.checkArgument(f._isBuffer(e),"Must be a buffer of DER encoded public key");var r=f._transformDER(e,t);return new f(r.point,{compressed:r.compressed})},f.fromPoint=function(e,t){return u.checkArgument(e instanceof n,"First argument must be an instance of Point."),new f(e,{compressed:t})},f.fromHex=f.fromString=function(e,r){var i=t.from(e,r||"hex"),n=f._transformDER(i);return new f(n.point,{compressed:n.compressed})},f.fromX=function(e,t){var r=f._transformX(e,t);return new f(r.point,{compressed:r.compressed})},f.getValidationError=function(e){var t;try{new f(e)}catch(e){t=e}return t},f.isValid=function(e){return!f.getValidationError(e)},f.prototype.toObject=f.prototype.toJSON=function(){return{x:this.point.getX().toString("hex",2),y:this.point.getY().toString("hex",2),compressed:this.compressed}},f.prototype.toBuffer=f.prototype.toDER=function(){var e,r=this.point.getX(),i=this.point.getY(),n=r.toBuffer({size:32}),o=i.toBuffer({size:32});return this.compressed?(e=o[o.length-1]%2?t.from([3]):t.from([2]),t.concat([e,n])):(e=t.from([4]),t.concat([e,n,o]))},f.prototype._getID=function(){return o.sha256ripemd160(this.toBuffer())},f.prototype.toAddress=function(e){return r(27).fromPublicKey(this,e||this.network)},f.prototype.toString=f.prototype.toHex=function(){return this.toDER().toString("hex")},f.prototype.inspect=function(){return"<PublicKey: "+this.toHex()+(this.compressed?"":", uncompressed")+">"},e.exports=f}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(45),n=function e(t){if(!(this instanceof e))return new e(t);this.bufLen=0,t?this.set(t):this.bufs=[]};n.prototype.set=function(e){return this.bufs=e.bufs||this.bufs||[],this.bufLen=this.bufs.reduce((function(e,t){return e+t.length}),0),this},n.prototype.toBuffer=function(){return this.concat()},n.prototype.concat=function(){return t.concat(this.bufs,this.bufLen)},n.prototype.write=function(e){return i(t.isBuffer(e)),this.bufs.push(e),this.bufLen+=e.length,this},n.prototype.writeReverse=function(e){return i(t.isBuffer(e)),this.bufs.push(t.from(e).reverse()),this.bufLen+=e.length,this},n.prototype.writeUInt8=function(e){var r=t.alloc(1);return r.writeUInt8(e,0),this.write(r),this},n.prototype.writeUInt16BE=function(e){var r=t.alloc(2);return r.writeUInt16BE(e,0),this.write(r),this},n.prototype.writeUInt16LE=function(e){var r=t.alloc(2);return r.writeUInt16LE(e,0),this.write(r),this},n.prototype.writeUInt32BE=function(e){var r=t.alloc(4);return r.writeUInt32BE(e,0),this.write(r),this},n.prototype.writeInt32LE=function(e){var r=t.alloc(4);return r.writeInt32LE(e,0),this.write(r),this},n.prototype.writeUInt32LE=function(e){var r=t.alloc(4);return r.writeUInt32LE(e,0),this.write(r),this},n.prototype.writeUInt64BEBN=function(e){var t=e.toBuffer({size:8});return this.write(t),this},n.prototype.writeUInt64LEBN=function(e){var t=e.toBuffer({size:8});return this.writeReverse(t),this},n.prototype.writeVarintNum=function(e){var t=n.varintBufNum(e);return this.write(t),this},n.prototype.writeVarintBN=function(e){var t=n.varintBufBN(e);return this.write(t),this},n.varintBufNum=function(e){var r;return e<253?(r=t.alloc(1)).writeUInt8(e,0):e<65536?((r=t.alloc(3)).writeUInt8(253,0),r.writeUInt16LE(e,1)):e<4294967296?((r=t.alloc(5)).writeUInt8(254,0),r.writeUInt32LE(e,1)):((r=t.alloc(9)).writeUInt8(255,0),r.writeInt32LE(-1&e,1),r.writeUInt32LE(Math.floor(e/4294967296),5)),r},n.varintBufBN=function(e){var r,i=e.toNumber();if(i<253)(r=t.alloc(1)).writeUInt8(i,0);else if(i<65536)(r=t.alloc(3)).writeUInt8(253,0),r.writeUInt16LE(i,1);else if(i<4294967296)(r=t.alloc(5)).writeUInt8(254,0),r.writeUInt32LE(i,1);else{var o=new n;o.writeUInt8(255),o.writeUInt64LEBN(e),r=o.concat()}return r},e.exports=n}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1);r(8);function n(e,r){if(!(this instanceof n))return new n(e,r);this.preimage=t.isBuffer(e)?e:t.from(e,"hex"),this.options=r||{},this.strategy=this.options.strategy||"DYNAMIC",this.fields=null,this.sighashInfo=null,this.options.deferExtraction||this._extractFields()}n.prototype.extract=function(e){return this.strategy=e||this.strategy,this._extractFields(),this.fields},n.prototype.getSighashInfo=function(){return this.fields||this._extractFields(),this.sighashInfo},n.prototype.getField=function(e){return this.fields||this._extractFields(),this.fields[e]},n.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}},n.prototype.generateASM=function(e,t){var r=this._parsePreimageStructure();return this._generateBidirectionalASM(e,r,t)},n.prototype.extractFields=function(e){var t={};return e.forEach(function(e){t[e]=this.extractField(e)}.bind(this)),t},n.prototype.validate=function(){this.fields||this._extractFields();var e=[],t=[];return["version","hashPrevouts","hashSequence","outpoint","scriptCode","amount","sequence","hashOutputs","locktime","sighash"].forEach(function(t){this.fields[t]||e.push("Missing required field: "+t)}.bind(this)),this.sighashInfo.hasZeroHashes&&t.push("Zero hashes detected - check SIGHASH flags: "+this.sighashInfo.zeroFields.join(", ")),this.preimage.length<104&&e.push("Preimage too short: "+this.preimage.length+" bytes (minimum 104)"),{valid:0===e.length,errors:e,warnings:t,sighashInfo:this.sighashInfo}},n.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()}},n.prototype._extractFields=function(){this.fields={},this.sighashInfo={flag:null,hasZeroHashes:!1,zeroFields:[],warnings:[]};try{"LEFT"===this.strategy||"DYNAMIC"===this.strategy?this._extractFromLeft():"RIGHT"===this.strategy&&this._extractFromRight(),this._analyzeSighash()}catch(e){if("DYNAMIC"!==this.strategy)throw e;try{this.strategy="RIGHT",this._extractFromRight(),this._analyzeSighash()}catch(t){throw new Error("Failed to extract preimage fields with any strategy: "+e.message)}}},n.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=n.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)},n.prototype._extractFromRight=function(){var e=this.preimage.length;e-=4,this.fields.sighash=this.preimage.slice(e,e+4),e-=4,this.fields.locktime=this.preimage.slice(e,e+4),e-=32,this.fields.hashOutputs=this.preimage.slice(e,e+32),e-=4,this.fields.sequence=this.preimage.slice(e,e+4),e-=8,this.fields.amount=this.preimage.slice(e,e+8);var t=n.decodeCompactSize(this.preimage,104);this.fields.scriptCodeLength=t.value,this.fields.scriptCode=this.preimage.slice(t.nextOffset,t.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)},n.prototype._analyzeSighash=function(){if(this.fields.sighash){var e=this.fields.sighash.readUInt32LE(0);this.sighashInfo.flag=e;var r=31&e,i=0!=(128&e),n=0!=(64&e),o=t.alloc(32);i&&this.fields.hashPrevouts.equals(o)&&(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashPrevouts"),this.sighashInfo.warnings.push("ANYONECANPAY flag detected - hashPrevouts is zero")),2===r&&this.fields.hashSequence.equals(o)&&(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashSequence"),this.sighashInfo.warnings.push("SIGHASH_NONE flag detected - hashSequence is zero")),2!==r&&3!==r||!this.fields.hashOutputs.equals(o)||(this.sighashInfo.hasZeroHashes=!0,this.sighashInfo.zeroFields.push("hashOutputs"),this.sighashInfo.warnings.push("SIGHASH_NONE/SINGLE flag detected - hashOutputs is zero"));var a=[];1===r?a.push("ALL"):2===r?a.push("NONE"):3===r&&a.push("SINGLE"),i&&a.push("ANYONECANPAY"),n&&a.push("FORKID"),this.sighashInfo.flagName=a.join(" | ")}},n.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}],o=[{name:"value",len:8},{name:"nSequence",len:4},{name:"hashOutputs",len:32},{name:"nLocktime",len:4},{name:"sighashType",len:4}],a=0;a<i.length;a++){var s=i[a];r[s.name]=e.slice(t,t+s.len).toString("hex"),t+=s.len}var c=n.decodeCompactSize(e,t);r.scriptLen=c.value,r.scriptLenSize=c.bytes,r.scriptLenRaw=e.slice(t,t+c.bytes).toString("hex"),t+=c.bytes,r.scriptCode=e.slice(t,t+r.scriptLen).toString("hex"),t+=r.scriptLen;for(var u=0;u<o.length;u++){var f=o[u];r[f.name]=e.slice(t,t+f.len).toString("hex"),t+=f.len}var h=i.reduce((function(e,t){return e+t.len}),0),l=o.reduce((function(e,t){return e+t.len}),0);return r._structure={leftFixed:h,scriptLenVarint:c.bytes,scriptCode:r.scriptLen,rightFixed:l,totalCalculated:h+c.bytes+r.scriptLen+l,totalActual:e.length},r},n.prototype._generateBidirectionalASM=function(e,t,r){if(["value","nSequence","hashOutputs","nLocktime","sighashType"].includes(e))return this._generateRightExtractionASM(e,r);if(["nVersion","hashPrevouts","hashSequence","outpoint_txid","outpoint_vout"].includes(e))return this._generateLeftExtractionASM(e,r);if("scriptCode"===e)return this._generateDynamicExtractionASM(t,r);if("scriptLen"===e)return this._generateScriptLenExtractionASM(t,r);throw new Error("Unknown field: "+e)},n.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 c=52-i,u=[];return t?(u.push("# 🔄 Extract "+e+" from RIGHT side (bidirectional strategy)"),u.push("OP_SIZE # Push preimage size: [preimage, size]")):u.push("OP_SIZE"),(u=t?u.concat([c+" OP_SUB # Calculate split point: [preimage, split_point]","OP_SPLIT # Split: [left_part, right_part]","OP_DROP # Drop left: [right_part]",n+" OP_SPLIT # Extract field: [remaining, "+e+"]","OP_DROP # Clean up: ["+e+"]","# ✅ Result: "+e+" is now on top of stack"]):u.concat([c+" OP_SUB","OP_SPLIT","OP_DROP",n+" OP_SPLIT","OP_DROP"])).join("\n")},n.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}].find((function(t){return t.name===e}));if(!r)throw new Error("Field not found in LEFT fields: "+e);return(t?["# 🔄 Extract "+e+" from LEFT side (bidirectional strategy)",r.offset+" OP_SPLIT # Skip to field: [prefix, remainder]","OP_DROP # Drop prefix: [remainder]",r.len+" OP_SPLIT # Extract field: ["+e+", suffix]","OP_DROP # Clean up: ["+e+"]","# ✅ Result: "+e+" is now on top of stack"]:[r.offset+" OP_SPLIT","OP_DROP",r.len+" OP_SPLIT","OP_DROP"]).join("\n")},n.prototype._generateDynamicExtractionASM=function(e,t){return["# 🎯 Extract scriptCode DYNAMICALLY with CompactSize varint support",104+e.scriptLenSize+" OP_SPLIT # Skip left zone + scriptLen varint: [left_zone, remainder]","OP_DROP # Drop left: [remainder]",e.scriptLen+" OP_SPLIT # Extract scriptCode: [scriptCode, right_zone]","OP_DROP # Clean up: [scriptCode]","# ✅ Result: scriptCode extracted with "+e.scriptLenSize+"-byte varint awareness"].join("\n")},n.prototype._generateScriptLenExtractionASM=function(e,t){return["# 🎯 Extract scriptLen CompactSize varint ("+e.scriptLenSize+" bytes)","104 OP_SPLIT # Skip left fixed fields: [left_zone, remainder]","OP_DROP # Drop left: [remainder]",e.scriptLenSize+" OP_SPLIT # Extract varint: [scriptLen_varint, suffix]","OP_DROP # Clean up: [scriptLen_varint]","# ✅ Result: CompactSize varint (decode off-chain to get "+e.scriptLen+")"].join("\n")},n.prototype._extractSpecificField=function(e,r){var i=r[e];return i?t.from(i,"hex"):null},n.prototype._interpretField=function(e,r,i){if(!r)return null;var n={raw:r.toString("hex"),bytes:r.length};try{switch(e){case"nVersion":n.value=r.readUInt32LE(0),n.description="Transaction version "+n.value;break;case"value":8===r.length&&(n.satoshis=r.readBigUInt64LE(0).toString(),n.description=n.satoshis+" satoshis");break;case"sighashType":var o=r.readUInt32LE(0);n.value=o,n.description={1:"SIGHASH_ALL",65:"SIGHASH_ALL | FORKID",2:"SIGHASH_NONE",66:"SIGHASH_NONE | FORKID",3:"SIGHASH_SINGLE",67:"SIGHASH_SINGLE | FORKID"}[o]||"Custom ("+o+")";break;case"outpoint_vout":n.value=r.readUInt32LE(0),n.description="Output index "+n.value;break;case"scriptLen":n.varintSize=i.scriptLenSize,n.scriptLength=i.scriptLen,n.description=i.scriptLen+" bytes encoded as "+i.scriptLenSize+"-byte varint";break;case"scriptCode":25===r.length&&118===r[0]&&169===r[1]?(n.description="Standard P2PKH script (25 bytes)",n.type="P2PKH"):r.length>0&&106===r[0]?(n.description="OP_RETURN data script ("+r.length+" bytes)",n.type="OP_RETURN"):(n.description="Custom script ("+r.length+" bytes)",n.type="CUSTOM");break;default:if(["hashPrevouts","hashSequence","hashOutputs"].includes(e)){var a=t.alloc(32);r.equals(a)?(n.isZero=!0,n.description="Zero hash (check SIGHASH flags)"):n.description="32-byte hash"}}}catch(e){n.error=e.message}return n},n.prototype._getExtractionStrategy=function(e){return["value","nSequence","hashOutputs","nLocktime","sighashType"].includes(e)?"RIGHT":["nVersion","hashPrevouts","hashSequence","outpoint_txid","outpoint_vout"].includes(e)?"LEFT":"scriptCode"===e?"DYNAMIC":"scriptLen"===e?"VARINT":"UNKNOWN"},n.decodeCompactSize=function(e,t){var r=e[t];if(r<253)return{value:r,nextOffset:t+1,bytes:1};if(253===r)return{value:e.readUInt16LE(t+1),nextOffset:t+3,bytes:3};if(254===r)return{value:e.readUInt32LE(t+1),nextOffset:t+5,bytes:5};console.warn("Encountered 8-byte CompactSize - this is very unusual for script lengths");try{return{value:e.readUInt32LE(t+1),nextOffset:t+9,bytes:9}}catch(e){throw new Error("Invalid 8-byte CompactSize encoding in preimage")}},n.fromTransaction=function(e,t,r,o,a){return new n(i.Transaction.sighash.sighashPreimage(e,a,t,r,new i.crypto.BN(o)),{transaction:e,inputIndex:t,subscript:r,satoshis:o,sighashType:a})},n.createExample=function(e){var t=i.PrivateKey.fromRandom().toAddress(),r={txId:"0".repeat(64),outputIndex:0,script:i.Script.buildPublicKeyHashOut(t).toHex(),satoshis:1e5},o=(new i.Transaction).from(r).to(t,99e3),a=i.Script.fromHex(r.script);return n.fromTransaction(o,0,a,r.satoshis,e)},n.extractFromHex=function(e,t,r){return new n(e,{deferExtraction:!0}).extractField(t,r)},n.generateASMFromHex=function(e,t,r){return new n(e,{deferExtraction:!0}).generateASM(t,r)},n.extractMultipleFromHex=function(e,t){return new n(e,{deferExtraction:!0}).extractFields(t)},n.validateFromHex=function(e){return new n(e).validate()},n.analyzeFromHex=function(e){var t=new n(e),r=t._parsePreimageStructure(),i=t.validate();return{hex:e,length:e.length/2,structure:r._structure,fields:r,validation:i,sighashInfo:t.getSighashInfo(),extractField:function(e){return t.extractField(e)},generateASM:function(e){return t.generateASM(e)},getSummary:function(){return{totalBytes:r._structure.totalActual,scriptLength:r.scriptLen,scriptVarintSize:r.scriptLenSize,sighashType:r.sighashType,valid:i.valid,warnings:i.warnings}}}},e.exports=n}).call(this,r(0).Buffer)},function(e,t){var r,i,n=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(r===setTimeout)return setTimeout(e,0);if((r===o||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:o}catch(e){r=o}try{i="function"==typeof clearTimeout?clearTimeout:a}catch(e){i=a}}();var c,u=[],f=!1,h=-1;function l(){f&&c&&(f=!1,c.length?u=c.concat(u):h=-1,u.length&&d())}function d(){if(!f){var e=s(l);f=!0;for(var t=u.length;t;){for(c=u,u=[];++h<t;)c&&c[h].run();h=-1,t=u.length}c=null,f=!1,function(e){if(i===clearTimeout)return clearTimeout(e);if((i===a||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(e);try{i(e)}catch(t){try{return i.call(null,e)}catch(t){return i.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function g(){}n.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];u.push(new p(e,t)),1!==u.length||f||s(d)},p.prototype.run=function(){this.fun.apply(null,this.array)},n.title="browser",n.browser=!0,n.env={},n.argv=[],n.version="",n.versions={},n.on=g,n.addListener=g,n.once=g,n.off=g,n.removeListener=g,n.removeAllListeners=g,n.emit=g,n.prependListener=g,n.prependOnceListener=g,n.listeners=function(e){return[]},n.binding=function(e){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(e){throw new Error("process.chdir is not supported")},n.umask=function(){return 0}},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(4),a=function e(r){if(!(this instanceof e))return new e(r);if(!i.isUndefined(r))if(t.isBuffer(r))this.set({buf:r});else if(i.isString(r)){var n=t.from(r,"hex");if(2*n.length!==r.length)throw new TypeError("Invalid hex string");this.set({buf:n})}else{if(!i.isObject(r))throw new TypeError("Unrecognized argument for BufferReader");var o=r;this.set(o)}};a.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this.pos=e.pos||this.pos||0,this},a.prototype.eof=function(){return this.pos>=this.buf.length},a.prototype.finished=a.prototype.eof,a.prototype.read=function(e){n.checkArgument(!i.isUndefined(e),"Must specify a length");var t=this.buf.slice(this.pos,this.pos+e);return this.pos=this.pos+e,t},a.prototype.readAll=function(){var e=this.buf.slice(this.pos,this.buf.length);return this.pos=this.buf.length,e},a.prototype.readUInt8=function(){var e=this.buf.readUInt8(this.pos);return this.pos=this.pos+1,e},a.prototype.readUInt16BE=function(){var e=this.buf.readUInt16BE(this.pos);return this.pos=this.pos+2,e},a.prototype.readUInt16LE=function(){var e=this.buf.readUInt16LE(this.pos);return this.pos=this.pos+2,e},a.prototype.readUInt32BE=function(){var e=this.buf.readUInt32BE(this.pos);return this.pos=this.pos+4,e},a.prototype.readUInt32LE=function(){var e=this.buf.readUInt32LE(this.pos);return this.pos=this.pos+4,e},a.prototype.readInt32LE=function(){var e=this.buf.readInt32LE(this.pos);return this.pos=this.pos+4,e},a.prototype.readUInt64BEBN=function(){var e=this.buf.slice(this.pos,this.pos+8),t=o.fromBuffer(e);return this.pos=this.pos+8,t},a.prototype.readUInt64LEBN=function(){var e,t=this.buf.readUInt32LE(this.pos),r=4294967296*this.buf.readUInt32LE(this.pos+4)+t;if(r<=9007199254740991)e=new o(r);else{var i=Array.prototype.slice.call(this.buf,this.pos,this.pos+8);e=new o(i,10,"le")}return this.pos=this.pos+8,e},a.prototype.readVarintNum=function(){var e=this.readUInt8();switch(e){case 253:return this.readUInt16LE();case 254:return this.readUInt32LE();case 255:var t=this.readUInt64LEBN().toNumber();if(t<=Math.pow(2,53))return t;throw new Error("number too large to retain precision - use readVarintBN");default:return e}},a.prototype.readVarLengthBuffer=function(){var e=this.readVarintNum(),t=this.read(e);return n.checkState(t.length===e,"Invalid length while reading varlength buffer. Expected to read: "+e+" and read "+t.length),t},a.prototype.readVarintBuf=function(){switch(this.buf.readUInt8(this.pos)){case 253:return this.read(3);case 254:return this.read(5);case 255:return this.read(9);default:return this.read(1)}},a.prototype.readVarintBN=function(){var e=this.readUInt8();switch(e){case 253:return new o(this.readUInt16LE());case 254:return new o(this.readUInt32LE());case 255:return this.readUInt64LEBN();default:return new o(e)}},a.prototype.reverse=function(){for(var e=t.alloc(this.buf.length),r=0;r<e.length;r++)e[r]=this.buf[this.buf.length-1-r];return this.buf=e,this},a.prototype.readReverse=function(e){i.isUndefined(e)&&(e=this.buf.length);var r=this.buf.slice(this.pos,this.pos+e);return this.pos=this.pos+e,t.from(r).reverse()},e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(0),n=r(5),o=r(13),a=r(21),s=r(19),c=r(16),u=r(4),f=r(6),h=r(44),l=r(3),d=r(49),p=r(2),g=t.from("0000000000000000000000000000000000000000000000000000000000000001","hex"),m=d.SCRIPT_ENABLE_SIGHASH_FORKID,b=function(e,s,h,b,y,v){var S=r(74),_=r(50);p.isUndefined(v)&&(v=m);var w,I=S.shallowCopy(e);(b=new o(b),v&d.SCRIPT_ENABLE_REPLAY_PROTECTION)&&(s=(16711680|57005^s>>8)<<8|255&s);if(s&n.SIGHASH_FORKID&&v&d.SCRIPT_ENABLE_SIGHASH_FORKID)return function(e,r,i,o,a){var s=e.inputs[i];function h(e,t){var r=new c;p.isUndefined(t)?p.each(e.outputs,(function(e){e.toBufferWriter(r)})):e.outputs[t].toBufferWriter(r);var i=r.toBuffer();return f.sha256sha256(i)}l.checkArgument(a instanceof u,"For ForkId=0 signatures, satoshis or complete input must be provided");var d=t.alloc(32),g=t.alloc(32),m=t.alloc(32);r&n.SIGHASH_ANYONECANPAY||(d=function(e){var t=new c;p.each(e.inputs,(function(e){t.writeReverse(e.prevTxId),t.writeUInt32LE(e.outputIndex)}));var r=t.toBuffer();return f.sha256sha256(r)}(e)),r&n.SIGHASH_ANYONECANPAY||(31&r)===n.SIGHASH_SINGLE||(31&r)===n.SIGHASH_NONE||(g=function(e){var t=new c;p.each(e.inputs,(function(e){t.writeUInt32LE(e.sequenceNumber)}));var r=t.toBuffer();return f.sha256sha256(r)}(e)),(31&r)!==n.SIGHASH_SINGLE&&(31&r)!==n.SIGHASH_NONE?m=h(e):(31&r)===n.SIGHASH_SINGLE&&i<e.outputs.length&&(m=h(e,i));var b=new c;b.writeInt32LE(e.version),b.write(d),b.write(g),b.writeReverse(s.prevTxId),b.writeUInt32LE(s.outputIndex),b.writeVarintNum(o.toBuffer().length),b.write(o.toBuffer()),b.writeUInt64LEBN(a);var y=s.sequenceNumber;return b.writeUInt32LE(y),b.write(m),b.writeUInt32LE(e.nLockTime),b.writeUInt32LE(r>>>0),b.toBuffer()}(I,s,h,b,y);for(b.removeCodeseparators(),w=0;w<I.inputs.length;w++)I.inputs[w]=new _(I.inputs[w]).setScript(o.empty());if(I.inputs[h]=new _(I.inputs[h]).setScript(b),(31&s)===n.SIGHASH_NONE||(31&s)===n.SIGHASH_SINGLE)for(w=0;w<I.inputs.length;w++)w!==h&&(I.inputs[w].sequenceNumber=0);if((31&s)===n.SIGHASH_NONE)I.outputs=[];else if((31&s)===n.SIGHASH_SINGLE){if(h>=I.outputs.length)return g;for(I.outputs.length=h+1,w=0;w<h;w++)I.outputs[w]=new a({satoshis:u.fromBuffer(i.Buffer.from("ffffffffffffffff","hex")),script:o.empty()})}return s&n.SIGHASH_ANYONECANPAY&&(I.inputs=[I.inputs[h]]),(new c).write(I.toBuffer()).writeInt32LE(s).toBuffer()},y=function(e,t,r,i,n,o){var a=b(e,t,r,i,n,o);if(0===a.compare(g))return a;var c=f.sha256sha256(a);return c=new s(c).readReverse()};e.exports={sighashPreimage:b,sighash:y,sign:function(e,t,r,i,n,o,a){var s=y(e,r,i,n,o,a);return h.sign(s,t,"little").set({nhashtype:r})},verify:function(e,t,r,i,n,o,a){l.checkArgument(!p.isUndefined(e)),l.checkArgument(!p.isUndefined(t)&&!p.isUndefined(t.nhashtype));var s=y(e,t.nhashtype,i,n,o,a);return h.verify(s,t,r,"little")}}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(4),o=r(0),a=r(7),s=r(16),c=r(30),u=r(13),f=r(3),h=r(11);function l(e){if(!(this instanceof l))return new l(e);if(!i.isObject(e))throw new TypeError("Unrecognized argument for Output");var r;this.satoshis=e.satoshis,t.isBuffer(e.script)?this._scriptBuffer=e.script:(r=i.isString(e.script)&&a.isHexa(e.script)?o.Buffer.from(e.script,"hex"):e.script,this.setScript(r))}Object.defineProperty(l.prototype,"script",{configurable:!1,enumerable:!0,get:function(){return this._script||this.setScriptFromBuffer(this._scriptBuffer),this._script}}),Object.defineProperty(l.prototype,"satoshis",{configurable:!1,enumerable:!0,get:function(){return this._satoshis},set:function(e){e instanceof n?(this._satoshisBN=e,this._satoshis=e.toNumber()):i.isString(e)?(this._satoshis=parseInt(e),this._satoshisBN=n.fromNumber(this._satoshis)):(f.checkArgument(a.isNaturalNumber(e),"Output satoshis is not a natural number"),this._satoshisBN=n.fromNumber(e),this._satoshis=e),f.checkState(a.isNaturalNumber(this._satoshis),"Output satoshis is not a natural number")}}),l.prototype.invalidSatoshis=function(){return this._satoshis>9007199254740991?"transaction txout satoshis greater than max safe integer":this._satoshis!==this._satoshisBN.toNumber()?"transaction txout satoshis has corrupted value":this._satoshis<0&&"transaction txout negative"},Object.defineProperty(l.prototype,"satoshisBN",{configurable:!1,enumerable:!0,get:function(){return this._satoshisBN},set:function(e){this._satoshisBN=e,this._satoshis=e.toNumber(),f.checkState(a.isNaturalNumber(this._satoshis),"Output satoshis is not a natural number")}}),l.prototype.toObject=l.prototype.toJSON=function(){var e={satoshis:this.satoshis};return e.script=this._scriptBuffer.toString("hex"),e},l.fromObject=function(e){return new l(e)},l.prototype.setScriptFromBuffer=function(e){this._scriptBuffer=e;try{this._script=u.fromBuffer(this._scriptBuffer),this._script._isOutput=!0}catch(e){if(!(e instanceof h.Script.InvalidBuffer))throw e;this._script=null}},l.prototype.setScript=function(e){if(e instanceof u)this._scriptBuffer=e.toBuffer(),this._script=e,this._script._isOutput=!0;else if(i.isString(e))this._script=u.fromString(e),this._scriptBuffer=this._script.toBuffer(),this._script._isOutput=!0;else{if(!t.isBuffer(e))throw new TypeError("Invalid argument type: script");this.setScriptFromBuffer(e)}return this},l.prototype.inspect=function(){var e;return e=this.script?this.script.inspect():this._scriptBuffer.toString("hex"),"<Output ("+this.satoshis+" sats) "+e+">"},l.fromBufferReader=function(e){var t={};t.satoshis=e.readUInt64LEBN();var r=e.readVarintNum();return t.script=0!==r?e.read(r):o.Buffer.from([]),new l(t)},l.prototype.toBufferWriter=function(e){e||(e=new s),e.writeUInt64LEBN(this._satoshisBN);var t=this._scriptBuffer;return e.writeVarintNum(t.length),e.write(t),e},l.prototype.getSize=function(){var e=this.script.toBuffer().length;return 8+c(e).toBuffer().length+e},e.exports=l}).call(this,r(0).Buffer)},function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}},function(e,t,r){"use strict";var i=r(2),n=r(7),o=[],a={};function s(){}function c(e,t){if(~o.indexOf(e))return e;if(!t)return a[e];i.isArray(t)||(t=[t]);for(var r=0;r<o.length;r++){var n=o[r],s=i.pick(n,t);if(~i.values(s).indexOf(e))return n}}function u(e){for(var t=[],r=0;r<e.length;r++)t.push(31&e.charCodeAt(r));return t}function f(e){var t=new s;n.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&&i.extend(t,{cashAddrPrefix:e.cashAddrPrefix,cashAddrPrefixArray:u(e.cashAddrPrefix)}),e.networkMagic&&i.extend(t,{networkMagic:n.integerAsBuffer(e.networkMagic)}),e.port&&i.extend(t,{port:e.port}),e.dnsSeeds&&i.extend(t,{dnsSeeds:e.dnsSeeds}),o.push(t),function(e,t){for(var r=0;r<t.length;r++){var n=t[r],o=e[n];i.isUndefined(o)||i.isObject(o)||(a[o]=e)}}(t,r),t}s.prototype.toString=function(){return this.name};var h=["seed.bitcoinsv.org","seed.bitcoinunlimited.info"],l={PORT:18333,NETWORK_MAGIC:4108710900,DNS_SEEDS:h,PREFIX:"testnet",CASHADDRPREFIX:"bchtest"},d={PORT:18444,NETWORK_MAGIC:3669344250,DNS_SEEDS:[],PREFIX:"regtest",CASHADDRPREFIX:"bchreg"},p={PORT:9333,NETWORK_MAGIC:4224632057,DNS_SEEDS:["stn-seed.bitcoinsv.io"],PREFIX:"stn",CASHADDRPREFIX:"bsvstn"},g={name:"livenet",alias:"mainnet",prefix:"bitcoin",cashAddrPrefix:"bitcoincash",pubkeyhash:0,privatekey:128,scripthash:5,xpubkey:76067358,xprivkey:76066276,networkMagic:3823236072,port:8333,dnsSeeds:h},m={name:"testnet",prefix:l.PREFIX,cashAddrPrefix:l.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:l.NETWORK_MAGIC},b={name:"regtest",prefix:d.PREFIX,cashAddrPrefix:d.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:d.NETWORK_MAGIC,port:d.PORT,dnsSeeds:[],indexBy:["port","name","cashAddrPrefix","networkMagic"]},y={name:"stn",prefix:p.PREFIX,cashAddrPrefix:p.CASHADDRPREFIX,pubkeyhash:111,privatekey:239,scripthash:196,xpubkey:70617039,xprivkey:70615956,networkMagic:p.NETWORK_MAGIC,indexBy:["port","name","cashAddrPrefix","networkMagic"]};f(m),f(y),f(b),f(g);var v=c("livenet"),S=c("regtest"),_=c("testnet"),w=c("stn");Object.defineProperty(_,"port",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?d.PORT:this.stnEnabled?p.PORT:l.PORT}}),Object.defineProperty(_,"networkMagic",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?n.integerAsBuffer(d.NETWORK_MAGIC):this.stnEnabled?n.integerAsBuffer(p.NETWORK_MAGIC):n.integerAsBuffer(l.NETWORK_MAGIC)}}),Object.defineProperty(_,"dnsSeeds",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?d.DNS_SEEDS:this.stnEnabled?p.DNS_SEEDS:l.DNS_SEEDS}}),Object.defineProperty(_,"cashAddrPrefix",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?d.CASHADDRPREFIX:this.stnEnabled?p.CASHADDRPREFIX:l.CASHADDRPREFIX}}),Object.defineProperty(_,"cashAddrPrefixArray",{enumerable:!0,configurable:!1,get:function(){return this.regtestEnabled?u(d.CASHADDRPREFIX):this.stnEnabled?p.cashAddrPrefixToArray(p.CASHADDRPREFIX):u(l.CASHADDRPREFIX)}}),e.exports={add:f,remove:function(e){for(var t=0;t<o.length;t++)o[t]===e&&o.splice(t,1);!function(e,t){for(var r=0;r<t.length;r++){var i=t[r];a[i]===e&&delete a[i]}}(e,Object.keys(a))},defaultNetwork:v,livenet:v,mainnet:v,testnet:_,regtest:S,stn:w,get:c,enableRegtest:function(){_.regtestEnabled=!0},disableRegtest:function(){_.regtestEnabled=!1},enableStn:function(){_.stnEnabled=!0},disableStn:function(){_.stnEnabled=!1}}},function(e,t,r){e.exports=r(74),e.exports.Input=r(50),e.exports.Output=r(21),e.exports.UnspentOutput=r(75),e.exports.Signature=r(32),e.exports.Sighash=r(20)},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(11),a=r(29),s=r(24),c=r(6),u=r(7),f=r(15);function h(e,t,r){if(!(this instanceof h))return new h(e,t,r);if(i.isArray(e)&&i.isNumber(t))return h.createMultisig(e,t,r);if(e instanceof h)return e;if(n.checkArgument(e,"First argument is required, please include address data.","guide/address.html"),t&&!s.get(t))throw new TypeError('Second argument must be "livenet", "testnet", or "regtest".');if(r&&r!==h.PayToPublicKeyHash&&r!==h.PayToScriptHash)throw new TypeError('Third argument must be "pubkeyhash" or "scripthash".');var o=this._classifyArguments(e,t,r);return o.network=o.network||s.get(t)||s.defaultNetwork,o.type=o.type||r||h.PayToPublicKeyHash,u.defineImmutable(this,{hashBuffer:o.hashBuffer,network:o.network,type:o.type}),this}h.prototype._classifyArguments=function(e,r,n){if((e instanceof t||e instanceof Uint8Array)&&20===e.length)return h._transformHash(e);if((e instanceof t||e instanceof Uint8Array)&&21===e.length)return h._transformBuffer(e,r,n);if(e instanceof f)return h._transformPublicKey(e);if(e instanceof l)return h._transformScript(e,r);if("string"==typeof e)return h._transformString(e,r,n);if(i.isObject(e))return h._transformObject(e);throw new TypeError("First argument is an unrecognized data format.")},h.PayToPublicKeyHash="pubkeyhash",h.PayToScriptHash="scripthash",h._transformHash=function(e){var r={};if(!(e instanceof t||e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(20!==e.length)throw new TypeError("Address hashbuffers must be exactly 20 bytes.");return r.hashBuffer=e,r},h._transformObject=function(e){return n.checkArgument(e.hash||e.hashBuffer,"Must provide a `hash` or `hashBuffer` property"),n.checkArgument(e.type,"Must provide a `type` property"),{hashBuffer:e.hash?t.from(e.hash,"hex"):e.hashBuffer,network:s.get(e.network)||s.defaultNetwork,type:e.type}},h._classifyFromVersion=function(e){var t={},r=s.get(e[0],"pubkeyhash"),i=s.get(e[0],"scripthash");return r?(t.network=r,t.type=h.PayToPublicKeyHash):i&&(t.network=i,t.type=h.PayToScriptHash),t},h._transformBuffer=function(e,r,i){var n={};if(!(e instanceof t||e instanceof Uint8Array))throw new TypeError("Address supplied is not a buffer.");if(21!==e.length)throw new TypeError("Address buffers must be exactly 21 bytes.");var o=s.get(r),a=h._classifyFromVersion(e);if(r&&!o)throw new TypeError("Unknown network");if(!a.network||o&&o!==a.network)throw new TypeError("Address has mismatched network type.");if(!a.type||i&&i!==a.type)throw new TypeError("Address has mismatched type.");return n.hashBuffer=e.slice(1),n.network=a.network,n.type=a.type,n},h._transformPublicKey=function(e){var t={};if(!(e instanceof f))throw new TypeError("Address must be an instance of PublicKey.");return t.hashBuffer=c.sha256ripemd160(e.toBuffer()),t.type=h.PayToPublicKeyHash,t},h._transformScript=function(e,t){n.checkArgument(e instanceof l,"script must be a Script instance");var r=e.getAddressInfo(t);if(!r)throw new o.Script.CantDeriveAddress(e);return r},h.createMultisig=function(e,t,r){return r=r||e[0].network||s.defaultNetwork,h.payingTo(l.buildMultisigOut(e,t),r)},h._transformString=function(e,t,r){if("string"!=typeof e)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=s.get(t);if(t&&!i)throw new TypeError("Unknown network");var n=a.decode(e);return h._transformBuffer(n,t,r)},h.fromPublicKey=function(e,t){var r=h._transformPublicKey(e);return t=t||s.defaultNetwork,new h(r.hashBuffer,t,r.type)},h.fromPrivateKey=function(e,t){let r=f.fromPrivateKey(e);return t=t||e.network||s.defaultNetwork,h.fromPublicKey(r,t)},h.fromPublicKeyHash=function(e,t){var r=h._transformHash(e);return new h(r.hashBuffer,t,h.PayToPublicKeyHash)},h.fromScriptHash=function(e,t){n.checkArgument(e,"hash parameter is required");var r=h._transformHash(e);return new h(r.hashBuffer,t,h.PayToScriptHash)},h.payingTo=function(e,t){return n.checkArgument(e,"script is required"),n.checkArgument(e instanceof l,"script must be instance of Script"),h.fromScriptHash(c.sha256ripemd160(e.toBuffer()),t)},h.fromScript=function(e,t){n.checkArgument(e instanceof l,"script must be a Script instance");var r=h._transformScript(e,t);return new h(r.hashBuffer,t,r.type)},h.fromBuffer=function(e,t,r){var i=h._transformBuffer(e,t,r);return new h(i.hashBuffer,i.network,i.type)},h.fromHex=function(e,r,i){return h.fromBuffer(t.from(e,"hex"),r,i)},h.fromString=function(e,t,r){var i=h._transformString(e,t,r);return new h(i.hashBuffer,i.network,i.type)},h.fromObject=function(e){return n.checkState(u.isHexa(e.hash),'Unexpected hash property, "'+e.hash+'", expected to be hex.'),new h(t.from(e.hash,"hex"),e.network,e.type)},h.getValidationError=function(e,t,r){var i;try{new h(e,t,r)}catch(e){i=e}return i},h.isValid=function(e,t,r){return!h.getValidationError(e,t,r)},h.prototype.isPayToPublicKeyHash=function(){return this.type===h.PayToPublicKeyHash},h.prototype.isPayToScriptHash=function(){return this.type===h.PayToScriptHash},h.prototype.toBuffer=function(){var e=t.from([this.network[this.type]]);return t.concat([e,this.hashBuffer])},h.prototype.toHex=function(){return this.toBuffer().toString("hex")},h.prototype.toObject=h.prototype.toJSON=function(){return{hash:this.hashBuffer.toString("hex"),type:this.type,network:this.network.toString()}},h.prototype.inspect=function(){return"<Address: "+this.toString()+", type: "+this.type+", network: "+this.network+">"},h.prototype.toString=function(){return a.encode(this.toBuffer())},e.exports=h;var l=r(13)}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(14),n=r(22);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=i.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=i.join32(e,0,e.length-r,this.endian);for(var n=0;n<e.length;n+=this._delta32)this._update(e,n,n+this._delta32)}return this},o.prototype.digest=function(e){return this.update(this._pad()),n(null===this.pending),this._digest(e)},o.prototype._pad=function(){var e=this.pendingTotal,t=this._delta8,r=t-(e+this.padLength)%t,i=new Array(r+this.padLength);i[0]=128;for(var n=1;n<r;n++)i[n]=0;if(e<<=3,"big"===this.endian){for(var o=8;o<this.padLength;o++)i[n++]=0;i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=e>>>24&255,i[n++]=e>>>16&255,i[n++]=e>>>8&255,i[n++]=255&e}else for(i[n++]=255&e,i[n++]=e>>>8&255,i[n++]=e>>>16&255,i[n++]=e>>>24&255,i[n++]=0,i[n++]=0,i[n++]=0,i[n++]=0,o=8;o<this.padLength;o++)i[n++]=0;return i}},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(37),o=r(0),a=r(6).sha256sha256,s=function e(r){if(!(this instanceof e))return new e(r);if(t.isBuffer(r)){var i=r;this.fromBuffer(i)}else if("string"==typeof r){var n=r;this.fromString(n)}};s.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this},s.validChecksum=function(e,t){return i.isString(e)&&(e=o.Buffer.from(n.decode(e))),i.isString(t)&&(t=o.Buffer.from(n.decode(t))),t||(t=e.slice(-4),e=e.slice(0,-4)),s.checksum(e).toString("hex")===t.toString("hex")},s.decode=function(e){if("string"!=typeof e)throw new Error("Input must be a string");var r=t.from(n.decode(e));if(r.length<4)throw new Error("Input string too short");var i=r.slice(0,-4),o=r.slice(-4),s=a(i).slice(0,4);if(o.toString("hex")!==s.toString("hex"))throw new Error("Checksum mismatch");return i},s.checksum=function(e){return a(e).slice(0,4)},s.encode=function(e){if(!t.isBuffer(e))throw new Error("Input must be a buffer");var r=t.alloc(e.length+4),i=s.checksum(e);return e.copy(r),i.copy(r,e.length),n.encode(r)},s.prototype.fromBuffer=function(e){return this.buf=e,this},s.fromBuffer=function(e){return(new s).fromBuffer(e)},s.fromHex=function(e){return s.fromBuffer(t.from(e,"hex"))},s.prototype.fromString=function(e){var t=s.decode(e);return this.buf=t,this},s.fromString=function(e){var t=s.decode(e);return new n(t)},s.prototype.toBuffer=function(){return this.buf},s.prototype.toHex=function(){return this.toBuffer().toString("hex")},s.prototype.toString=function(){return s.encode(this.buf)},e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(16),n=r(19),o=r(4),a=function e(r){if(!(this instanceof e))return new e(r);if(t.isBuffer(r))this.buf=r;else if("number"==typeof r){var i=r;this.fromNumber(i)}else if(r instanceof o){var n=r;this.fromBN(n)}else if(r){var a=r;this.set(a)}};a.prototype.set=function(e){return this.buf=e.buf||this.buf,this},a.prototype.fromString=function(e){return this.set({buf:t.from(e,"hex")}),this},a.prototype.toString=function(){return this.buf.toString("hex")},a.prototype.fromBuffer=function(e){return this.buf=e,this},a.prototype.fromBufferReader=function(e){return this.buf=e.readVarintBuf(),this},a.prototype.fromBN=function(e){return this.buf=i().writeVarintBN(e).concat(),this},a.prototype.fromNumber=function(e){return this.buf=i().writeVarintNum(e).concat(),this},a.prototype.toBuffer=function(){return this.buf},a.prototype.toBN=function(){return n(this.buf).readVarintBN()},a.prototype.toNumber=function(){return n(this.buf).readVarintNum()},e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(11),a=r(16),s=r(0),c=r(7),u=r(13),f=r(20),h=r(21);function l(e){return this instanceof l?e?this._fromObject(e):void 0:new l(e)}l.MAXINT=4294967295,l.DEFAULT_SEQNUMBER=4294967295,l.DEFAULT_LOCKTIME_SEQNUMBER=4294967294,l.DEFAULT_RBF_SEQNUMBER=4294967293,l.BASE_SIZE=40,Object.defineProperty(l.prototype,"script",{configurable:!1,enumerable:!0,get:function(){return this.isNull()?null:(this._script||(this._script=new u(this._scriptBuffer),this._script._isInput=!0),this._script)}}),l.fromObject=function(e){return n.checkArgument(i.isObject(e)),(new l)._fromObject(e)},l.prototype._fromObject=function(e){var t;if(t=i.isString(e.prevTxId)&&c.isHexa(e.prevTxId)?s.Buffer.from(e.prevTxId,"hex"):e.prevTxId,this.output=e.output?e.output instanceof h?e.output:new h(e.output):void 0,this.prevTxId=t||e.txidbuf,this.outputIndex=i.isUndefined(e.outputIndex)?e.txoutnum:e.outputIndex,this.sequenceNumber=i.isUndefined(e.sequenceNumber)?i.isUndefined(e.seqnum)?4294967295:e.seqnum:e.sequenceNumber,i.isUndefined(e.script)&&i.isUndefined(e.scriptBuffer))throw new o.Transaction.Input.MissingScript;return this.setScript(e.scriptBuffer||e.script),this},l.prototype.toObject=l.prototype.toJSON=function(){var e={prevTxId:this.prevTxId.toString("hex"),outputIndex:this.outputIndex,sequenceNumber:this.sequenceNumber,script:this._scriptBuffer.toString("hex")};return this.script&&(e.scriptString=this.script.toString()),this.output&&(e.output=this.output.toObject()),e},l.fromBufferReader=function(e){var t=new l;return t.prevTxId=e.readReverse(32),t.outputIndex=e.readUInt32LE(),t._scriptBuffer=e.readVarLengthBuffer(),t.sequenceNumber=e.readUInt32LE(),t},l.prototype.toBufferWriter=function(e){e||(e=new a),e.writeReverse(this.prevTxId),e.writeUInt32LE(this.outputIndex);var t=this._scriptBuffer;return e.writeVarintNum(t.length),e.write(t),e.writeUInt32LE(this.sequenceNumber),e},l.prototype.setScript=function(e){if(this._script=null,e instanceof u)this._script=e,this._script._isInput=!0,this._scriptBuffer=e.toBuffer();else if(null===e)this._script=u.empty(),this._script._isInput=!0,this._scriptBuffer=this._script.toBuffer();else if(c.isHexa(e))this._scriptBuffer=s.Buffer.from(e,"hex");else if(i.isString(e))this._script=new u(e),this._script._isInput=!0,this._scriptBuffer=this._script.toBuffer();else{if(!t.isBuffer(e))throw new TypeError("Invalid argument type: script");this._scriptBuffer=s.Buffer.from(e)}return this},l.prototype.getSignatures=function(){throw new o.AbstractMethodInvoked("Trying to sign unsupported output type (only P2PKH and P2SH multisig inputs are supported) for input: "+JSON.stringify(this))},l.prototype.isFullySigned=function(){throw new o.AbstractMethodInvoked("Input#isFullySigned")},l.prototype.isFinal=function(){return this.sequenceNumber===l.MAXINT},l.prototype.addSignature=function(){throw new o.AbstractMethodInvoked("Input#addSignature")},l.prototype.clearSignatures=function(){throw new o.AbstractMethodInvoked("Input#clearSignatures")},l.prototype.isValidSignature=function(e,t){return t.signature.nhashtype=t.sigtype,f.verify(e,t.signature,t.publicKey,t.inputIndex,this.output.script,this.output.satoshisBN)},l.prototype.isNull=function(){return"0000000000000000000000000000000000000000000000000000000000000000"===this.prevTxId.toString("hex")&&4294967295===this.outputIndex},l.prototype._estimateSize=function(){return this.toBufferWriter().toBuffer().length},e.exports=l}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(23),a=r(7),s=r(15),c=r(11),u=r(5);function f(e){if(!(this instanceof f))return new f(e);if(e instanceof f)return e;if(i.isObject(e))return this._fromObject(e);throw new c.InvalidArgument("TransactionSignatures must be instantiated from an object")}o(f,u),f.prototype._fromObject=function(e){return this._checkObjectArgs(e),this.publicKey=new s(e.publicKey),this.prevTxId=t.isBuffer(e.prevTxId)?e.prevTxId:t.from(e.prevTxId,"hex"),this.outputIndex=e.outputIndex,this.inputIndex=e.inputIndex,this.signature=e.signature instanceof u?e.signature:t.isBuffer(e.signature)?u.fromBuffer(e.signature):u.fromString(e.signature),this.sigtype=e.sigtype,this},f.prototype._checkObjectArgs=function(e){n.checkArgument(s(e.publicKey),"publicKey"),n.checkArgument(!i.isUndefined(e.inputIndex),"inputIndex"),n.checkArgument(!i.isUndefined(e.outputIndex),"outputIndex"),n.checkState(i.isNumber(e.inputIndex),"inputIndex must be a number"),n.checkState(i.isNumber(e.outputIndex),"outputIndex must be a number"),n.checkArgument(e.signature,"signature"),n.checkArgument(e.prevTxId,"prevTxId"),n.checkState(e.signature instanceof u||t.isBuffer(e.signature)||a.isHexa(e.signature),"signature must be a buffer or hexa value"),n.checkState(t.isBuffer(e.prevTxId)||a.isHexa(e.prevTxId),"prevTxId must be a buffer or hexa value"),n.checkArgument(e.sigtype,"sigtype"),n.checkState(i.isNumber(e.sigtype),"sigtype must be a number")},f.prototype.toObject=f.prototype.toJSON=function(){return{publicKey:this.publicKey.toString(),prevTxId:this.prevTxId.toString("hex"),outputIndex:this.outputIndex,inputIndex:this.inputIndex,signature:this.signature.toString(),sigtype:this.sigtype}},f.fromObject=function(e){return n.checkArgument(e),new f(e)},e.exports=f}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t,i){function n(){}n.getRandomBuffer=function(e){return t.browser?n.getRandomBufferBrowser(e):n.getRandomBufferNode(e)},n.getRandomBufferNode=function(e){return r(8).randomBytes(e)},n.getRandomBufferBrowser=function(e){if(!window.crypto&&!window.msCrypto)throw new Error("window.crypto not available");var t;if(window.crypto&&window.crypto.getRandomValues)t=window.crypto;else{if(!window.msCrypto||!window.msCrypto.getRandomValues)throw new Error("window.crypto.getRandomValues not available");t=window.msCrypto}var r=new Uint8Array(e);return t.getRandomValues(r),i.from(r)},e.exports=n}).call(this,r(18),r(0).Buffer)},function(e,t,r){"use strict";var i=r(10),n=r(9),o=n.getNAF,a=n.getJSF,s=n.assert;function c(e,t){this.type=e,this.p=new i(t.p,16),this.red=t.prime?i.red(t.prime):i.mont(this.p),this.zero=new i(0).toRed(this.red),this.one=new i(1).toRed(this.red),this.two=new i(2).toRed(this.red),this.n=t.n&&new i(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function u(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),i=o(t,1,this._bitLength),n=(1<<r.step+1)-(r.step%2==0?2:1);n/=3;var a,c,u=[];for(a=0;a<i.length;a+=r.step){c=0;for(var f=a+r.step-1;f>=a;f--)c=(c<<1)+i[f];u.push(c)}for(var h=this.jpoint(null,null,null),l=this.jpoint(null,null,null),d=n;d>0;d--){for(a=0;a<u.length;a++)(c=u[a])===d?l=l.mixedAdd(r.points[a]):c===-d&&(l=l.mixedAdd(r.points[a].neg()));h=h.add(l)}return h.toP()},c.prototype._wnafMul=function(e,t){var r=4,i=e._getNAFPoints(r);r=i.wnd;for(var n=i.points,a=o(t,r,this._bitLength),c=this.jpoint(null,null,null),u=a.length-1;u>=0;u--){for(var f=0;u>=0&&0===a[u];u--)f++;if(u>=0&&f++,c=c.dblp(f),u<0)break;var h=a[u];s(0!==h),c="affine"===e.type?h>0?c.mixedAdd(n[h-1>>1]):c.mixedAdd(n[-h-1>>1].neg()):h>0?c.add(n[h-1>>1]):c.add(n[-h-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,i,n){var s,c,u,f=this._wnafT1,h=this._wnafT2,l=this._wnafT3,d=0;for(s=0;s<i;s++){var p=(u=t[s])._getNAFPoints(e);f[s]=p.wnd,h[s]=p.points}for(s=i-1;s>=1;s-=2){var g=s-1,m=s;if(1===f[g]&&1===f[m]){var b=[t[g],null,null,t[m]];0===t[g].y.cmp(t[m].y)?(b[1]=t[g].add(t[m]),b[2]=t[g].toJ().mixedAdd(t[m].neg())):0===t[g].y.cmp(t[m].y.redNeg())?(b[1]=t[g].toJ().mixedAdd(t[m]),b[2]=t[g].add(t[m].neg())):(b[1]=t[g].toJ().mixedAdd(t[m]),b[2]=t[g].toJ().mixedAdd(t[m].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],v=a(r[g],r[m]);for(d=Math.max(v[0].length,d),l[g]=new Array(d),l[m]=new Array(d),c=0;c<d;c++){var S=0|v[0][c],_=0|v[1][c];l[g][c]=y[3*(S+1)+(_+1)],l[m][c]=0,h[g]=b}}else l[g]=o(r[g],f[g],this._bitLength),l[m]=o(r[m],f[m],this._bitLength),d=Math.max(l[g].length,d),d=Math.max(l[m].length,d)}var w=this.jpoint(null,null,null),I=this._wnafT4;for(s=d;s>=0;s--){for(var O=0;s>=0;){var A=!0;for(c=0;c<i;c++)I[c]=0|l[c][s],0!==I[c]&&(A=!1);if(!A)break;O++,s--}if(s>=0&&O++,w=w.dblp(O),s<0)break;for(c=0;c<i;c++){var P=I[c];0!==P&&(P>0?u=h[c][P-1>>1]:P<0&&(u=h[c][-P-1>>1].neg()),w="affine"===u.type?w.mixedAdd(u):w.add(u))}}for(s=0;s<i;s++)h[s]=null;return n?w:w.toP()},c.BasePoint=u,u.prototype.eq=function(){throw new Error("Not implemented")},u.prototype.validate=function(){return this.curve.validate(this)},c.prototype.decodePoint=function(e,t){e=n.toArray(e,t);var r=this.p.byteLength();if((4===e[0]||6===e[0]||7===e[0])&&e.length-1==2*r)return 6===e[0]?s(e[e.length-1]%2==0):7===e[0]&&s(e[e.length-1]%2==1),this.point(e.slice(1,1+r),e.slice(1+r,1+2*r));if((2===e[0]||3===e[0])&&e.length-1===r)return this.pointFromX(e.slice(1,1+r),3===e[0]);throw new Error("Unknown point format")},u.prototype.encodeCompressed=function(e){return this.encode(e,!0)},u.prototype._encode=function(e){var t=this.curve.p.byteLength(),r=this.getX().toArray("be",t);return e?[this.getY().isEven()?2:3].concat(r):[4].concat(r,this.getY().toArray("be",t))},u.prototype.encode=function(e,t){return n.encode(this._encode(t),e)},u.prototype.precompute=function(e){if(this.precomputed)return this;var t={doubles:null,naf:null,beta:null};return t.naf=this._getNAFPoints(8),t.doubles=this._getDoubles(4,e),t.beta=this._getBeta(),this.precomputed=t,this},u.prototype._hasDoubles=function(e){if(!this.precomputed)return!1;var t=this.precomputed.doubles;return!!t&&t.points.length>=Math.ceil((e.bitLength()+1)/t.step)},u.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],i=this,n=0;n<t;n+=e){for(var o=0;o<e;o++)i=i.dbl();r.push(i)}return{step:e,points:r}},u.prototype._getNAFPoints=function(e){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var t=[this],r=(1<<e)-1,i=1===r?null:this.dbl(),n=1;n<r;n++)t[n]=t[n-1].add(i);return{wnd:e,points:t}},u.prototype._getBeta=function(){return null},u.prototype.dblp=function(e){for(var t=this,r=0;r<e;r++)t=t.dbl();return t}},function(e,t,r){var i=t;i.utils=r(14),i.common=r(28),i.sha=r(94),i.ripemd=r(98),i.hmac=r(99),i.sha1=i.sha.sha1,i.sha256=i.sha.sha256,i.sha224=i.sha.sha224,i.sha384=i.sha.sha384,i.sha512=i.sha.sha512,i.ripemd160=i.ripemd.ripemd160},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(27),o=r(29),a=r(4),s=r(7),c=r(24),u=r(12),f=r(15),h=r(33),l=r(3);function d(e,t){if(!(this instanceof d))return new d(e,t);if(e instanceof d)return e;var r=this._classifyArguments(e,t);if(!r.bn||0===r.bn.cmp(new a(0)))throw new TypeError("Number can not be equal to zero, undefined, null or false");if(!r.bn.lt(u.getN()))throw new TypeError("Number must be less than N");if(void 0===r.network)throw new TypeError('Must specify the network ("livenet" or "testnet")');return s.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}d.prototype._classifyArguments=function(e,r){var n={compressed:!0,network:r?c.get(r):c.defaultNetwork};if(i.isUndefined(e)||i.isNull(e))n.bn=d._getRandomBN();else if(e instanceof a)n.bn=e;else if(e instanceof t||e instanceof Uint8Array)n=d._transformBuffer(e,r);else if(e.bn&&e.network)n=d._transformObject(e);else if(!r&&c.get(e))n.bn=d._getRandomBN(),n.network=c.get(e);else{if("string"!=typeof e)throw new TypeError("First argument is an unrecognized data type.");s.isHexa(e)?n.bn=new a(t.from(e,"hex")):n=d._transformWIF(e,r)}return n},d._getRandomBN=function(){var e,t;do{var r=h.getRandomBuffer(32);e=(t=a.fromBuffer(r)).lt(u.getN())}while(!e);return t},d._transformBuffer=function(e,t){var r={};if(32===e.length)return d._transformBNBuffer(e,t);if(r.network=c.get(e[0],"privatekey"),!r.network)throw new Error("Invalid network");if(t&&r.network!==c.get(t))throw new TypeError("Private key network mismatch");if(34===e.length&&1===e[33])r.compressed=!0;else{if(33!==e.length)throw new Error("Length of buffer must be 33 (uncompressed) or 34 (compressed)");r.compressed=!1}return r.bn=a.fromBuffer(e.slice(1,33)),r},d._transformBNBuffer=function(e,t){var r={};return r.network=c.get(t)||c.defaultNetwork,r.bn=a.fromBuffer(e),r.compressed=!1,r},d._transformWIF=function(e,t){return d._transformBuffer(o.decode(e),t)},d.fromBuffer=function(e,t){return new d(e,t)},d.fromHex=function(e,r){return d.fromBuffer(t.from(e,"hex"),r)},d._transformObject=function(e){return{bn:new a(e.bn,"hex"),network:c.get(e.network),compressed:e.compressed}},d.fromString=d.fromWIF=function(e){return l.checkArgument(i.isString(e),"First argument is expected to be a string."),new d(e)},d.fromObject=d.fromJSON=function(e){return l.checkArgument(i.isObject(e),"First argument is expected to be an object."),new d(e)},d.fromRandom=function(e){var t=d._getRandomBN();return new d(t,e)},d.getValidationError=function(e,t){var r;try{new d(e,t)}catch(e){r=e}return r},d.isValid=function(e,t){return!!e&&!d.getValidationError(e,t)},d.prototype.toString=function(){return this.toWIF()},d.prototype.toWIF=function(){var e,r=this.network;return e=this.compressed?t.concat([t.from([r.privatekey]),this.bn.toBuffer({size:32}),t.from([1])]):t.concat([t.from([r.privatekey]),this.bn.toBuffer({size:32})]),o.encode(e)},d.prototype.toBigNumber=function(){return this.bn},d.prototype.toBuffer=function(){return this.bn.toBuffer({size:32})},d.prototype.toHex=function(){return this.toBuffer().toString("hex")},d.prototype.toPublicKey=function(){return this._pubkey||(this._pubkey=f.fromPrivateKey(this)),this._pubkey},d.prototype.toAddress=function(e){var t=this.toPublicKey();return n.fromPublicKey(t,e||this.network)},d.prototype.toObject=d.prototype.toJSON=function(){return{bn:this.bn.toString("hex"),compressed:this.compressed,network:this.network.toString()}},d.prototype.inspect=function(){var e=this.compressed?"":", uncompressed";return"<PrivateKey: "+this.toHex()+", network: "+this.network+e+">"},e.exports=d}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(56),o=r(0),a="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".split(""),s=function e(r){if(!(this instanceof e))return new e(r);if(t.isBuffer(r)){var i=r;this.fromBuffer(i)}else if("string"==typeof r){var n=r;this.fromString(n)}};s.validCharacters=function(e){return o.Buffer.isBuffer(e)&&(e=e.toString()),i.every(i.map(e,(function(e){return i.includes(a,e)})))},s.prototype.set=function(e){return this.buf=e.buf||this.buf||void 0,this},s.encode=function(e){if(!o.Buffer.isBuffer(e))throw new Error("Input should be a buffer");return n.encode(e)},s.decode=function(e){if("string"!=typeof e)throw new Error("Input should be a string");return t.from(n.decode(e))},s.prototype.fromBuffer=function(e){return this.buf=e,this},s.fromBuffer=function(e){return(new s).fromBuffer(e)},s.fromHex=function(e){return s.fromBuffer(t.from(e,"hex"))},s.prototype.fromString=function(e){var t=s.decode(e);return this.buf=t,this},s.fromString=function(e){return(new s).fromString(e)},s.prototype.toBuffer=function(){return this.buf},s.prototype.toHex=function(){return this.toBuffer().toString("hex")},s.prototype.toString=function(){return s.encode(this.buf)},e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(137);e.exports=Function.prototype.bind||i},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(4),o=r(19),a=r(16),s=r(6),c=r(3),u=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&&c.checkState(this.hash===r.hash,"Argument object hash property does not match block hash."),this};u._from=function(e){var r={};if(t.isBuffer(e))r=u._fromBufferReader(o(e));else{if(!i.isObject(e))throw new TypeError("Unrecognized argument for BlockHeader");r=u._fromObject(e)}return r},u._fromObject=function(e){c.checkArgument(e,"data is required");var r=e.prevHash,n=e.merkleRoot;return i.isString(e.prevHash)&&(r=t.from(e.prevHash,"hex").reverse()),i.isString(e.merkleRoot)&&(n=t.from(e.merkleRoot,"hex").reverse()),{hash:e.hash,version:e.version,prevHash:r,merkleRoot:n,time:e.time,timestamp:e.time,bits:e.bits,nonce:e.nonce}},u.fromObject=function(e){var t=u._fromObject(e);return new u(t)},u.fromRawBlock=function(e){t.isBuffer(e)||(e=t.from(e,"binary"));var r=o(e);r.pos=u.Constants.START_OF_HEADER;var i=u._fromBufferReader(r);return new u(i)},u.fromBuffer=function(e){var t=u._fromBufferReader(o(e));return new u(t)},u.fromString=function(e){var r=t.from(e,"hex");return u.fromBuffer(r)},u._fromBufferReader=function(e){var t={};return t.version=e.readInt32LE(),t.prevHash=e.read(32),t.merkleRoot=e.read(32),t.time=e.readUInt32LE(),t.bits=e.readUInt32LE(),t.nonce=e.readUInt32LE(),t},u.fromBufferReader=function(e){var t=u._fromBufferReader(e);return new u(t)},u.prototype.toObject=u.prototype.toJSON=function(){return{hash:this.hash,version:this.version,prevHash:t.from(this.prevHash).reverse().toString("hex"),merkleRoot:t.from(this.merkleRoot).reverse().toString("hex"),time:this.time,bits:this.bits,nonce:this.nonce}},u.prototype.toBuffer=function(){return this.toBufferWriter().concat()},u.prototype.toString=function(){return this.toBuffer().toString("hex")},u.prototype.toBufferWriter=function(e){return e||(e=new a),e.writeInt32LE(this.version),e.write(this.prevHash),e.write(this.merkleRoot),e.writeUInt32LE(this.time),e.writeUInt32LE(this.bits),e.writeUInt32LE(this.nonce),e},u.prototype.getTargetDifficulty=function(e){e=e||this.bits;for(var t=new n(16777215&e),r=8*((e>>>24)-3);r-- >0;)t=t.mul(new n(2));return t},u.prototype.getDifficulty=function(){var e=this.getTargetDifficulty(486604799).mul(new n(Math.pow(10,8))),t=this.getTargetDifficulty(),r=e.div(t).toString(10),i=r.length-8;return r=r.slice(0,i)+"."+r.slice(i),parseFloat(r)},u.prototype._getHash=function(){var e=this.toBuffer();return s.sha256sha256(e)};var f={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=o(this._getHash()).readReverse().toString("hex")),this._id},set:i.noop};Object.defineProperty(u.prototype,"id",f),Object.defineProperty(u.prototype,"hash",f),u.prototype.validTimestamp=function(){var e=Math.round((new Date).getTime()/1e3);return!(this.time>e+u.Constants.MAX_TIME_OFFSET)},u.prototype.validProofOfWork=function(){var e=new n(this.id,"hex"),t=this.getTargetDifficulty();return!(e.cmp(t)>0)},u.prototype.inspect=function(){return"<BlockHeader "+this.id+">"},u.Constants={START_OF_HEADER:8,MAX_TIME_OFFSET:7200,LARGEST_HASH:new n("10000000000000000000000000000000000000000000000000000000000000000","hex")},e.exports=u}).call(this,r(0).Buffer)},function(e,t){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){"use strict";var i=t;i.version=r(89).version,i.utils=r(9),i.rand=r(58),i.curve=r(59),i.curves=r(43),i.ec=r(101),i.eddsa=r(105)},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},function(e,t,r){"use strict";var i,n=t,o=r(35),a=r(59),s=r(9).assert;function c(e){"short"===e.type?this.curve=new a.short(e):"edwards"===e.type?this.curve=new a.edwards(e):this.curve=new a.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(n,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=c,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{i=r(100)}catch(e){i=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",i]})},function(e,t,r){"use strict";(function(t){var i=r(4),n=r(12),o=r(5),a=r(15),s=r(33),c=r(6),u=r(2),f=r(3),h=function e(t){if(!(this instanceof e))return new e(t);t&&this.set(t)};h.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(t.isBuffer(e.sig)){var i=r(5);this.sig=i.fromDER(e.sig)}else this.sig=e.sig;else this.sig=this.sig;return this.k=e.k||this.k,this.verified=e.verified||this.verified,this},h.prototype.privkey2pubkey=function(){this.pubkey=this.privkey.toPublicKey()},h.prototype.calci=function(){for(var e=0;e<4;e++){var t;this.sig.i=e;try{t=this.toPublicKey()}catch(e){console.error(e);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")},h.fromString=function(e){var t=JSON.parse(e);return new h(t)},h.prototype.randomK=function(){var e,t=n.getN();do{e=i.fromBuffer(s.getRandomBuffer(32))}while(!e.lt(t)||!e.gt(i.Zero));return this.k=e,this},h.prototype.deterministicK=function(e){u.isUndefined(e)&&(e=0);var r=t.alloc(32);r.fill(1);var o=t.alloc(32);o.fill(0);var a=this.privkey.bn.toBuffer({size:32}),s="little"===this.endian?t.from(this.hashbuf).reverse():this.hashbuf;o=c.sha256hmac(t.concat([r,t.from([0]),a,s]),o),r=c.sha256hmac(r,o),o=c.sha256hmac(t.concat([r,t.from([1]),a,s]),o),r=c.sha256hmac(r,o),r=c.sha256hmac(r,o);for(var f=i.fromBuffer(r),h=n.getN(),l=0;l<e||!f.lt(h)||!f.gt(i.Zero);l++)o=c.sha256hmac(t.concat([r,t.from([0])]),o),r=c.sha256hmac(r,o),r=c.sha256hmac(r,o),f=i.fromBuffer(r);return this.k=f,this},h.prototype.toPublicKey=function(){var e=this.sig.i;f.checkArgument(0===e||1===e||2===e||3===e,new Error("i must be equal to 0, 1, 2, or 3"));var t=i.fromBuffer(this.hashbuf),r=this.sig.r,o=this.sig.s,s=1&e,c=e>>1,u=n.getN(),h=n.getG(),l=c?r.add(u):r,d=n.fromX(s,l);if(!d.mul(u).isInfinity())throw new Error("nR is not a valid curve point");var p=t.neg().umod(u),g=r.invm(u),m=d.mul(o).add(h.mul(p)).mul(g);return a.fromPoint(m,this.sig.compressed)},h.prototype.sigError=function(){if(!t.isBuffer(this.hashbuf)||32!==this.hashbuf.length)return"hashbuf must be a 32 byte buffer";var e=this.sig.r,r=this.sig.s,o=n.getN();try{if(e.isZero()||r.isZero()||e.gte(o)||r.gte(o))return"r and s not in range";var a=o.shrn(1),s=r.gt(a)?o.sub(r):r,c=i.fromBuffer(this.hashbuf,this.endian?{endian:this.endian}:void 0),u=s.invm(o),f=u.mul(c).umod(o),h=u.mul(e).umod(o),l=n.getG().mulAdd(f,this.pubkey.point,h);if(l.isInfinity())return"p is infinity";if(0!==l.getX().umod(o).cmp(e)){if(r.lte(a))if(f=(u=o.sub(r).invm(o)).mul(c).umod(o),h=u.mul(e).umod(o),!(l=n.getG().mulAdd(f,this.pubkey.point,h)).isInfinity()&&0===l.getX().umod(o).cmp(e))return!1;return"Invalid signature"}return!1}catch(e){return"Signature security validation failed: "+e.message}},h.toLowS=function(e){return e.gt(i.fromBuffer(t.from("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex")))&&(e=n.getN().sub(e)),e},h.prototype._findSignature=function(e,t){var r,o,a,s=n.getN(),c=n.getG(),u=0;do{(!this.k||u>0)&&this.deterministicK(u),u++,r=this.k,o=c.mul(r).x.umod(s),a=r.invm(s).mul(t.add(e.mul(o))).umod(s)}while(o.cmp(i.Zero)<=0||a.cmp(i.Zero)<=0);return{s:a=h.toLowS(a),r:o}},h.prototype.sign=function(){var e=this.hashbuf,r=this.privkey,n=r.bn;f.checkState(e&&r&&n,new Error("invalid parameters")),f.checkState(t.isBuffer(e)&&32===e.length,new Error("hashbuf must be a 32 byte buffer"));var a=i.fromBuffer(e,this.endian?{endian:this.endian}:void 0),s=this._findSignature(n,a);return s.compressed=this.pubkey.compressed,this.sig=new o(s),this},h.prototype.signRandomK=function(){return this.randomK(),this.sign()},h.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)},h.prototype.verify=function(){return this.sigError()?this.verified=!1:this.verified=!0,this},h.sign=function(e,t,r){return h().set({hashbuf:e,endian:r,privkey:t}).sign().sig},h.signWithCalcI=function(e,t,r){return h().set({hashbuf:e,endian:r,privkey:t}).sign().calci().sig},h.signRandomK=function(e,t,r){return h().set({hashbuf:e,endian:r,privkey:t}).signRandomK().sig},h.verify=function(e,t,r,i){return h().set({hashbuf:e,endian:i,sig:t,pubkey:r}).verify().verified},e.exports=h}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(112)();
|
|
9
|
-
/*!
|
|
10
|
-
* The buffer module from node.js, for the browser.
|
|
11
|
-
*
|
|
12
|
-
* @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
|
|
13
|
-
* @license MIT
|
|
14
|
-
*/function n(e,t){if(e===t)return 0;for(var r=e.length,i=t.length,n=0,o=Math.min(r,i);n<o;++n)if(e[n]!==t[n]){r=e[n],i=t[n];break}return r<i?-1:i<r?1:0}function o(e){return t.Buffer&&"function"==typeof t.Buffer.isBuffer?t.Buffer.isBuffer(e):!(null==e||!e._isBuffer)}var a=r(72),s=Object.prototype.hasOwnProperty,c=Array.prototype.slice,u="foo"===function(){}.name;function f(e){return Object.prototype.toString.call(e)}function h(e){return!o(e)&&("function"==typeof t.ArrayBuffer&&("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):!!e&&(e instanceof DataView||!!(e.buffer&&e.buffer instanceof ArrayBuffer))))}var l=e.exports=y,d=/\s*function\s+([^\(\s]*)\s*/;function p(e){if(a.isFunction(e)){if(u)return e.name;var t=e.toString().match(d);return t&&t[1]}}function g(e,t){return"string"==typeof e?e.length<t?e:e.slice(0,t):e}function m(e){if(u||!a.isFunction(e))return a.inspect(e);var t=p(e);return"[Function"+(t?": "+t:"")+"]"}function b(e,t,r,i,n){throw new l.AssertionError({message:r,actual:e,expected:t,operator:i,stackStartFunction:n})}function y(e,t){e||b(e,!0,t,"==",l.ok)}function v(e,t,r,i){if(e===t)return!0;if(o(e)&&o(t))return 0===n(e,t);if(a.isDate(e)&&a.isDate(t))return e.getTime()===t.getTime();if(a.isRegExp(e)&&a.isRegExp(t))return e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.lastIndex===t.lastIndex&&e.ignoreCase===t.ignoreCase;if(null!==e&&"object"==typeof e||null!==t&&"object"==typeof t){if(h(e)&&h(t)&&f(e)===f(t)&&!(e instanceof Float32Array||e instanceof Float64Array))return 0===n(new Uint8Array(e.buffer),new Uint8Array(t.buffer));if(o(e)!==o(t))return!1;var s=(i=i||{actual:[],expected:[]}).actual.indexOf(e);return-1!==s&&s===i.expected.indexOf(t)||(i.actual.push(e),i.expected.push(t),function(e,t,r,i){if(null==e||null==t)return!1;if(a.isPrimitive(e)||a.isPrimitive(t))return e===t;if(r&&Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;var n=S(e),o=S(t);if(n&&!o||!n&&o)return!1;if(n)return e=c.call(e),t=c.call(t),v(e,t,r);var s,u,f=I(e),h=I(t);if(f.length!==h.length)return!1;for(f.sort(),h.sort(),u=f.length-1;u>=0;u--)if(f[u]!==h[u])return!1;for(u=f.length-1;u>=0;u--)if(s=f[u],!v(e[s],t[s],r,i))return!1;return!0}(e,t,r,i))}return r?e===t:e==t}function S(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function _(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function w(e,t,r,i){var n;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(i=r,r=null),n=function(e){var t;try{e()}catch(e){t=e}return t}(t),i=(r&&r.name?" ("+r.name+").":".")+(i?" "+i:"."),e&&!n&&b(n,r,"Missing expected exception"+i);var o="string"==typeof i,s=!e&&n&&!r;if((!e&&a.isError(n)&&o&&_(n,r)||s)&&b(n,r,"Got unwanted exception"+i),e&&n&&r&&!_(n,r)||!e&&n)throw n}l.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return g(m(e.actual),128)+" "+e.operator+" "+g(m(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||b;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var r=new Error;if(r.stack){var i=r.stack,n=p(t),o=i.indexOf("\n"+n);if(o>=0){var a=i.indexOf("\n",o+1);i=i.substring(a+1)}this.stack=i}}},a.inherits(l.AssertionError,Error),l.fail=b,l.ok=y,l.equal=function(e,t,r){e!=t&&b(e,t,r,"==",l.equal)},l.notEqual=function(e,t,r){e==t&&b(e,t,r,"!=",l.notEqual)},l.deepEqual=function(e,t,r){v(e,t,!1)||b(e,t,r,"deepEqual",l.deepEqual)},l.deepStrictEqual=function(e,t,r){v(e,t,!0)||b(e,t,r,"deepStrictEqual",l.deepStrictEqual)},l.notDeepEqual=function(e,t,r){v(e,t,!1)&&b(e,t,r,"notDeepEqual",l.notDeepEqual)},l.notDeepStrictEqual=function e(t,r,i){v(t,r,!0)&&b(t,r,i,"notDeepStrictEqual",e)},l.strictEqual=function(e,t,r){e!==t&&b(e,t,r,"===",l.strictEqual)},l.notStrictEqual=function(e,t,r){e===t&&b(e,t,r,"!==",l.notStrictEqual)},l.throws=function(e,t,r){w(!0,e,t,r)},l.doesNotThrow=function(e,t,r){w(!1,e,t,r)},l.ifError=function(e){if(e)throw e},l.strict=i((function e(t,r){t||b(t,!0,r,"==",e)}),l,{equal:l.strictEqual,deepEqual:l.deepStrictEqual,notEqual:l.notStrictEqual,notDeepEqual:l.notDeepStrictEqual}),l.strict.strict=l.strict;var I=Object.keys||function(e){var t=[];for(var r in e)s.call(e,r)&&t.push(r);return t}}).call(this,r(40))},function(e,t,r){"use strict";e.exports=Object},function(e,t,r){"use strict";e.exports=Function.prototype.call},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(7);function a(e){if(!(this instanceof a))return new a(e);var t;if(i.isNumber(e))t=e;else{if(!i.isString(e))throw new TypeError('Unrecognized num type: "'+typeof e+'" for Opcode');t=a.map[e]}return o.defineImmutable(this,{num:t}),this}for(var s in a.fromBuffer=function(e){return n.checkArgument(t.isBuffer(e)),new a(Number("0x"+e.toString("hex")))},a.fromNumber=function(e){return n.checkArgument(i.isNumber(e)),new a(e)},a.fromString=function(e){n.checkArgument(i.isString(e));var t=a.map[e];if(void 0===t)throw new TypeError("Invalid opcodestr");return new a(t)},a.prototype.toHex=function(){return this.num.toString(16)},a.prototype.toBuffer=function(){return t.from(this.toHex(),"hex")},a.prototype.toNumber=function(){return this.num},a.prototype.toString=function(){var e=a.reverseMap[this.num];if(void 0===e)throw new Error("Opcode does not have a string representation");return e},a.smallInt=function(e){return n.checkArgument(i.isNumber(e),"Invalid Argument: n should be number"),n.checkArgument(e>=0&&e<=16,"Invalid Argument: n must be between 0 and 16"),0===e?a("OP_0"):new a(a.map.OP_1+e-1)},a.map={OP_FALSE:0,OP_0:0,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSHDATA4:78,OP_1NEGATE:79,OP_RESERVED:80,OP_TRUE:81,OP_1:81,OP_2:82,OP_3:83,OP_4:84,OP_5:85,OP_6:86,OP_7:87,OP_8:88,OP_9:89,OP_10:90,OP_11:91,OP_12:92,OP_13:93,OP_14:94,OP_15:95,OP_16:96,OP_NOP:97,OP_VER:98,OP_IF:99,OP_NOTIF:100,OP_VERIF:101,OP_VERNOTIF:102,OP_ELSE:103,OP_ENDIF:104,OP_VERIFY:105,OP_RETURN:106,OP_TOALTSTACK:107,OP_FROMALTSTACK:108,OP_2DROP:109,OP_2DUP:110,OP_3DUP:111,OP_2OVER:112,OP_2ROT:113,OP_2SWAP:114,OP_IFDUP:115,OP_DEPTH:116,OP_DROP:117,OP_DUP:118,OP_NIP:119,OP_OVER:120,OP_PICK:121,OP_ROLL:122,OP_ROT:123,OP_SWAP:124,OP_TUCK:125,OP_CAT:126,OP_SPLIT:127,OP_NUM2BIN:128,OP_BIN2NUM:129,OP_SIZE:130,OP_INVERT:131,OP_AND:132,OP_OR:133,OP_XOR:134,OP_EQUAL:135,OP_EQUALVERIFY:136,OP_RESERVED1:137,OP_RESERVED2:138,OP_1ADD:139,OP_1SUB:140,OP_2MUL:141,OP_2DIV:142,OP_NEGATE:143,OP_ABS:144,OP_NOT:145,OP_0NOTEQUAL:146,OP_ADD:147,OP_SUB:148,OP_MUL:149,OP_DIV:150,OP_MOD:151,OP_LSHIFT:152,OP_RSHIFT:153,OP_BOOLAND:154,OP_BOOLOR:155,OP_NUMEQUAL:156,OP_NUMEQUALVERIFY:157,OP_NUMNOTEQUAL:158,OP_LESSTHAN:159,OP_GREATERTHAN:160,OP_LESSTHANOREQUAL:161,OP_GREATERTHANOREQUAL:162,OP_MIN:163,OP_MAX:164,OP_WITHIN:165,OP_RIPEMD160:166,OP_SHA1:167,OP_SHA256:168,OP_HASH160:169,OP_HASH256:170,OP_CODESEPARATOR:171,OP_CHECKSIG:172,OP_CHECKSIGVERIFY:173,OP_CHECKMULTISIG:174,OP_CHECKMULTISIGVERIFY:175,OP_CHECKLOCKTIMEVERIFY:177,OP_CHECKSEQUENCEVERIFY:178,OP_NOP1:176,OP_NOP2:177,OP_NOP3:178,OP_SUBSTR:179,OP_LEFT:180,OP_RIGHT:181,OP_NOP4:182,OP_NOP5:183,OP_NOP6:184,OP_NOP7:185,OP_NOP8:186,OP_NOP9:187,OP_NOP10:188,OP_PUBKEYHASH:253,OP_PUBKEY:254,OP_INVALIDOPCODE:255},a.reverseMap=[],a.map)a.reverseMap[a.map[s]]=s;i.extend(a,a.map),a.isSmallIntOp=function(e){return e instanceof a&&(e=e.toNumber()),e===a.map.OP_0||e>=a.map.OP_1&&e<=a.map.OP_16},a.prototype.inspect=function(){return"<Opcode: "+this.toString()+", hex: "+this.toHex()+", decimal: "+this.num+">"},e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(63),o=r(48),a=r(4),s=r(6),c=r(5),u=r(15),f=r(142),h=function e(t){if(!(this instanceof e))return new e(t);t?(this.initialize(),this.set(t)):this.initialize()};h.prototype.verify=function(e,t,o,a,s,c){var u,f=r(25);if(i.isUndefined(o)&&(o=new f),i.isUndefined(a)&&(a=0),i.isUndefined(s)&&(s=0),s&h.SCRIPT_ENABLE_SIGHASH_FORKID&&(s|=h.SCRIPT_VERIFY_STRICTENC,!c))throw new Error("internal error - need satoshisBN to verify FORKID transactions");if(this.set({script:e,tx:o,nin:a,flags:s,satoshisBN:c}),0!=(s&h.SCRIPT_VERIFY_SIGPUSHONLY)&&!e.isPushOnly())return this.errstr="SCRIPT_ERR_SIG_PUSHONLY",!1;if(!this.evaluate())return!1;s&h.SCRIPT_VERIFY_P2SH&&(u=this.stack.slice());var l=this.stack;if(this.initialize(),this.set({script:t,stack:l,tx:o,nin:a,flags:s,satoshisBN:c}),!this.evaluate())return!1;if(0===this.stack.length)return this.errstr="SCRIPT_ERR_EVAL_FALSE_NO_RESULT",!1;var d=this.stack[this.stack.length-1];if(!h.castToBool(d))return this.errstr="SCRIPT_ERR_EVAL_FALSE_IN_STACK",!1;if(s&h.SCRIPT_VERIFY_P2SH&&t.isScriptHashOut()){if(!e.isPushOnly())return this.errstr="SCRIPT_ERR_SIG_PUSHONLY",!1;if(0===u.length)throw new Error("internal error - stack copy empty");var p=u[u.length-1],g=n.fromBuffer(p);if(u.pop(),this.initialize(),this.set({script:g,stack:u,tx:o,nin:a,flags:s,satoshisBN:c}),!this.evaluate())return!1;if(0===u.length)return this.errstr="SCRIPT_ERR_EVAL_FALSE_NO_P2SH_STACK",!1;if(!h.castToBool(u[u.length-1]))return this.errstr="SCRIPT_ERR_EVAL_FALSE_IN_P2SH_STACK",!1}if(0!=(s&h.SCRIPT_VERIFY_CLEANSTACK)){if(0==(s&h.SCRIPT_VERIFY_P2SH))throw new Error("internal error - CLEANSTACK without P2SH");if(1!==u.length)return this.errstr="SCRIPT_ERR_CLEANSTACK",!1}return!0},e.exports=h,h.prototype.initialize=function(e){this.stack=[],this.altstack=[],this.pc=0,this.pbegincodehash=0,this.nOpCount=0,this.vfExec=[],this.errstr="",this.flags=0},h.prototype.set=function(e){this.script=e.script||this.script,this.tx=e.tx||this.tx,this.nin=void 0!==e.nin?e.nin:this.nin,this.satoshisBN=e.satoshisBN||this.satoshisBN,this.stack=e.stack||this.stack,this.altstack=e.altstack||this.altstack,this.pc=void 0!==e.pc?e.pc:this.pc,this.pbegincodehash=void 0!==e.pbegincodehash?e.pbegincodehash:this.pbegincodehash,this.nOpCount=void 0!==e.nOpCount?e.nOpCount:this.nOpCount,this.vfExec=e.vfExec||this.vfExec,this.errstr=e.errstr||this.errstr,this.flags=void 0!==e.flags?e.flags:this.flags},h.true=t.from([1]),h.false=t.from([]),h.MAX_SCRIPT_ELEMENT_SIZE=520,h.MAXIMUM_ELEMENT_SIZE=4,h.LOCKTIME_THRESHOLD_BN=new a(h.LOCKTIME_THRESHOLD=5e8),h.SCRIPT_VERIFY_NONE=0,h.SCRIPT_VERIFY_P2SH=1,h.SCRIPT_VERIFY_STRICTENC=2,h.SCRIPT_VERIFY_DERSIG=4,h.SCRIPT_VERIFY_LOW_S=8,h.SCRIPT_VERIFY_NULLDUMMY=16,h.SCRIPT_VERIFY_SIGPUSHONLY=32,h.SCRIPT_VERIFY_MINIMALDATA=64,h.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS=128,h.SCRIPT_VERIFY_CLEANSTACK=256,h.SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY=512,h.SCRIPT_VERIFY_CHECKSEQUENCEVERIFY=1024,h.SCRIPT_VERIFY_MINIMALIF=8192,h.SCRIPT_VERIFY_NULLFAIL=16384,h.SCRIPT_VERIFY_COMPRESSED_PUBKEYTYPE=32768,h.SCRIPT_ENABLE_SIGHASH_FORKID=65536,h.SCRIPT_ENABLE_REPLAY_PROTECTION=1<<17,h.SCRIPT_ENABLE_MONOLITH_OPCODES=1<<18,h.SCRIPT_ENABLE_MAGNETIC_OPCODES=1<<19,h.SEQUENCE_LOCKTIME_DISABLE_FLAG=1<<31,h.SEQUENCE_LOCKTIME_TYPE_FLAG=1<<22,h.SEQUENCE_LOCKTIME_MASK=65535,h.castToBool=function(e){for(var t=0;t<e.length;t++)if(0!==e[t])return t!==e.length-1||128!==e[t];return!1},h.prototype.checkSignatureEncoding=function(e){var t;if(0===e.length)return!0;if(0!=(this.flags&(h.SCRIPT_VERIFY_DERSIG|h.SCRIPT_VERIFY_LOW_S|h.SCRIPT_VERIFY_STRICTENC))&&!c.isTxDER(e))return this.errstr="SCRIPT_ERR_SIG_DER_INVALID_FORMAT",!1;if(0!=(this.flags&h.SCRIPT_VERIFY_LOW_S)){if(!(t=c.fromTxFormat(e)).hasLowS())return this.errstr="SCRIPT_ERR_SIG_DER_HIGH_S",!1}else if(0!=(this.flags&h.SCRIPT_VERIFY_STRICTENC)){if(!(t=c.fromTxFormat(e)).hasDefinedHashtype())return this.errstr="SCRIPT_ERR_SIG_HASHTYPE",!1;if(!(this.flags&h.SCRIPT_ENABLE_SIGHASH_FORKID)&&t.nhashtype&c.SIGHASH_FORKID)return this.errstr="SCRIPT_ERR_ILLEGAL_FORKID",!1;if(this.flags&h.SCRIPT_ENABLE_SIGHASH_FORKID&&!(t.nhashtype&c.SIGHASH_FORKID))return this.errstr="SCRIPT_ERR_MUST_USE_FORKID",!1}return!0},h.prototype.checkPubkeyEncoding=function(e){return!(0!=(this.flags&h.SCRIPT_VERIFY_STRICTENC)&&!u.isValid(e))||(this.errstr="SCRIPT_ERR_PUBKEYTYPE",!1)},h._isMinimallyEncoded=function(e,t){return t=t||h.MAXIMUM_ELEMENT_SIZE,!(e.length>t)&&!(e.length>0&&0==(127&e[e.length-1])&&(e.length<=1||0==(128&e[e.length-2])))},h._minimallyEncode=function(e){if(0===e.length)return e;var r=e[e.length-1];if(127&r)return e;if(1===e.length)return t.from("");if(128&e[e.length-2])return e;for(var i=e.length-1;i>0;i--)if(0!==e[i-1])return 128&e[i-1]?e[i++]=r:e[i-1]|=r,e.slice(0,i);return t.from("")},h.prototype.evaluate=function(){if(this.script.toBuffer().length>1e4)return this.errstr="SCRIPT_ERR_SCRIPT_SIZE",!1;try{for(;this.pc<this.script.chunks.length;){let e={pc:this.pc,opcode:o.fromNumber(this.script.chunks[this.pc].opcodenum)};if(!this.step())return!1;this._callbackStep(e)}if(this.stack.length+this.altstack.length>1e3)return this.errstr="SCRIPT_ERR_STACK_SIZE",!1}catch(e){return this.errstr="SCRIPT_ERR_UNKNOWN_ERROR: "+e,!1}return!(this.vfExec.length>0)||(this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1)},h.prototype._callbackStep=function(e){if("function"==typeof this.stepListener)try{this.stepListener(e,f(this.stack,!0),f(this.altstack,!0))}catch(e){console.log("Error in Step callback:"+e)}},h.prototype.checkLockTime=function(e){return!!(this.tx.nLockTime<h.LOCKTIME_THRESHOLD&&e.lt(h.LOCKTIME_THRESHOLD_BN)||this.tx.nLockTime>=h.LOCKTIME_THRESHOLD&&e.gte(h.LOCKTIME_THRESHOLD_BN))&&(!e.gt(new a(this.tx.nLockTime))&&!this.tx.inputs[this.nin].isFinal())},h.prototype.checkSequence=function(e){var t=this.tx.inputs[this.nin].sequenceNumber;if(this.tx.version<2)return!1;if(t&h.SEQUENCE_LOCKTIME_DISABLE_FLAG)return!1;var r=h.SEQUENCE_LOCKTIME_TYPE_FLAG|h.SEQUENCE_LOCKTIME_MASK,i=new a(t&r),n=e.and(r),o=new a(h.SEQUENCE_LOCKTIME_TYPE_FLAG);return!!(i.lt(o)&&n.lt(o)||i.gte(o)&&n.gte(o))&&!n.gt(i)},h.prototype.step=function(){var e=this;function r(t){return e.stack[e.stack.length+t]}var f,l,d,p,g,m,b,y,v,S,_,w,I,O,A,P,k,E=0!=(this.flags&h.SCRIPT_VERIFY_MINIMALDATA),x=-1===this.vfExec.indexOf(!1),T=this.script.chunks[this.pc];this.pc++;var R=T.opcodenum;if(i.isUndefined(R))return this.errstr="SCRIPT_ERR_UNDEFINED_OPCODE",!1;if(T.buf&&T.buf.length>h.MAX_SCRIPT_ELEMENT_SIZE)return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;if(R>o.OP_16&&++this.nOpCount>201)return this.errstr="SCRIPT_ERR_OP_COUNT",!1;if(function(t){switch(t){case o.OP_2MUL:case o.OP_2DIV:return!0;case o.OP_INVERT:case o.OP_MUL:case o.OP_LSHIFT:case o.OP_RSHIFT:if(0==(e.flags&h.SCRIPT_ENABLE_MAGNETIC_OPCODES))return!0;break;case o.OP_DIV:case o.OP_MOD:case o.OP_SPLIT:case o.OP_CAT:case o.OP_AND:case o.OP_OR:case o.OP_XOR:case o.OP_BIN2NUM:case o.OP_NUM2BIN:return!1}return!1}(R))return this.errstr="SCRIPT_ERR_DISABLED_OPCODE",!1;if(x&&R>=0&&R<=o.OP_PUSHDATA4){if(E&&!this.script.checkMinimalPush(this.pc-1))return this.errstr="SCRIPT_ERR_MINIMALDATA",!1;if(T.buf){if(T.len!==T.buf.length)throw new Error(`Length of push value not equal to length of data (${T.len},${T.buf.length})`);this.stack.push(T.buf)}else this.stack.push(h.false)}else if(x||o.OP_IF<=R&&R<=o.OP_ENDIF)switch(R){case o.OP_1NEGATE:case o.OP_1:case o.OP_2:case o.OP_3:case o.OP_4:case o.OP_5:case o.OP_6:case o.OP_7:case o.OP_8:case o.OP_9:case o.OP_10:case o.OP_11:case o.OP_12:case o.OP_13:case o.OP_14:case o.OP_15:case o.OP_16:g=R-(o.OP_1-1),f=new a(g).toScriptNumBuffer(),this.stack.push(f);break;case o.OP_NOP:break;case o.OP_NOP2:case o.OP_CHECKLOCKTIMEVERIFY:if(!(this.flags&h.SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY)){if(this.flags&h.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 N=a.fromScriptNumBuffer(this.stack[this.stack.length-1],E,5);if(N.lt(new a(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if(!this.checkLockTime(N))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case o.OP_NOP3:case o.OP_CHECKSEQUENCEVERIFY:if(!(this.flags&h.SCRIPT_VERIFY_CHECKSEQUENCEVERIFY)){if(this.flags&h.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 M=a.fromScriptNumBuffer(r(-1),E,5);if(M.lt(new a(0)))return this.errstr="SCRIPT_ERR_NEGATIVE_LOCKTIME",!1;if(0!=(M&h.SEQUENCE_LOCKTIME_DISABLE_FLAG))break;if(!this.checkSequence(M))return this.errstr="SCRIPT_ERR_UNSATISFIED_LOCKTIME",!1;break;case o.OP_NOP1:case o.OP_NOP4:case o.OP_NOP5:case o.OP_NOP6:case o.OP_NOP7:case o.OP_NOP8:case o.OP_NOP9:case o.OP_NOP10:if(this.flags&h.SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS)return this.errstr="SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS",!1;break;case o.OP_IF:case o.OP_NOTIF:if(P=!1,x){if(this.stack.length<1)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;if(f=r(-1),this.flags&h.SCRIPT_VERIFY_MINIMALIF){if(f.length>1)return this.errstr="SCRIPT_ERR_MINIMALIF",!1;if(1===f.length&&1!==f[0])return this.errstr="SCRIPT_ERR_MINIMALIF",!1}P=h.castToBool(f),R===o.OP_NOTIF&&(P=!P),this.stack.pop()}this.vfExec.push(P);break;case o.OP_ELSE:if(0===this.vfExec.length)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec[this.vfExec.length-1]=!this.vfExec[this.vfExec.length-1];break;case o.OP_ENDIF:if(0===this.vfExec.length)return this.errstr="SCRIPT_ERR_UNBALANCED_CONDITIONAL",!1;this.vfExec.pop();break;case o.OP_VERIFY:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(f=r(-1),!(P=h.castToBool(f)))return this.errstr="SCRIPT_ERR_VERIFY",!1;this.stack.pop();break;case o.OP_RETURN:return this.errstr="SCRIPT_ERR_OP_RETURN",!1;case o.OP_TOALTSTACK:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.altstack.push(this.stack.pop());break;case o.OP_FROMALTSTACK:if(this.altstack.length<1)return this.errstr="SCRIPT_ERR_INVALID_ALTSTACK_OPERATION",!1;this.stack.push(this.altstack.pop());break;case o.OP_2DROP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop(),this.stack.pop();break;case o.OP_2DUP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;l=r(-2),d=r(-1),this.stack.push(t.from(l)),this.stack.push(t.from(d));break;case o.OP_3DUP:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;l=r(-3),d=r(-2);var C=r(-1);this.stack.push(t.from(l)),this.stack.push(t.from(d)),this.stack.push(t.from(C));break;case o.OP_2OVER:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;l=r(-4),d=r(-3),this.stack.push(t.from(l)),this.stack.push(t.from(d));break;case o.OP_2ROT:if(this.stack.length<6)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;p=this.stack.splice(this.stack.length-6,2),this.stack.push(p[0]),this.stack.push(p[1]);break;case o.OP_2SWAP:if(this.stack.length<4)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;p=this.stack.splice(this.stack.length-4,2),this.stack.push(p[0]),this.stack.push(p[1]);break;case o.OP_IFDUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;f=r(-1),(P=h.castToBool(f))&&this.stack.push(t.from(f));break;case o.OP_DEPTH:f=new a(this.stack.length).toScriptNumBuffer(),this.stack.push(f);break;case o.OP_DROP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.pop();break;case o.OP_DUP:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(t.from(r(-1)));break;case o.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 o.OP_OVER:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.push(t.from(r(-2)));break;case o.OP_PICK:case o.OP_ROLL:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(f=r(-1),g=(y=a.fromScriptNumBuffer(f,E)).toNumber(),this.stack.pop(),g<0||g>=this.stack.length)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;f=r(-g-1),R===o.OP_ROLL&&this.stack.splice(this.stack.length-g-1,1),this.stack.push(t.from(f));break;case o.OP_ROT:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;m=r(-3),b=r(-2);var D=r(-1);this.stack[this.stack.length-3]=b,this.stack[this.stack.length-2]=D,this.stack[this.stack.length-1]=m;break;case o.OP_SWAP:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;m=r(-2),b=r(-1),this.stack[this.stack.length-2]=b,this.stack[this.stack.length-1]=m;break;case o.OP_TUCK:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;this.stack.splice(this.stack.length-2,0,t.from(r(-1)));break;case o.OP_SIZE:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;y=new a(r(-1).length),this.stack.push(y.toScriptNumBuffer());break;case o.OP_AND:case o.OP_OR:case o.OP_XOR:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(l=r(-2),d=r(-1),l.length!==d.length)return this.errstr="SCRIPT_ERR_INVALID_OPERAND_SIZE",!1;switch(R){case o.OP_AND:for(let e=0;e<l.length;e++)l[e]&=d[e];break;case o.OP_OR:for(let e=0;e<l.length;e++)l[e]|=d[e];break;case o.OP_XOR:for(let e=0;e<l.length;e++)l[e]^=d[e]}this.stack.pop();break;case o.OP_INVERT:this.stack.length<1&&(this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION"),f=r(-1);for(let e=0;e<f.length;e++)f[e]=~f[e];break;case o.OP_LSHIFT:case o.OP_RSHIFT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(0===(l=r(-2)).length)this.stack.pop();else{if(v=new a(l),(g=(S=a.fromScriptNumBuffer(r(-1),E)).toNumber())<0)return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;let e;this.stack.pop(),this.stack.pop(),R===o.OP_LSHIFT&&(e=v.ushln(g)),R===o.OP_RSHIFT&&(e=v.ushrn(g));let i=function(e,r){let i=e;for(;i.length<r;)i=t.concat([t.from([0]),i]);return i}(t.from(e.toArray().slice(-1*l.length)),l.length);this.stack.push(i)}break;case o.OP_EQUAL:case o.OP_EQUALVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;l=r(-2),d=r(-1);var B=l.toString("hex")===d.toString("hex");if(this.stack.pop(),this.stack.pop(),this.stack.push(B?h.true:h.false),R===o.OP_EQUALVERIFY){if(!B)return this.errstr="SCRIPT_ERR_EQUALVERIFY",!1;this.stack.pop()}break;case o.OP_1ADD:case o.OP_1SUB:case o.OP_NEGATE:case o.OP_ABS:case o.OP_NOT:case o.OP_0NOTEQUAL:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(f=r(-1),y=a.fromScriptNumBuffer(f,E),R){case o.OP_1ADD:y=y.add(a.One);break;case o.OP_1SUB:y=y.sub(a.One);break;case o.OP_NEGATE:y=y.neg();break;case o.OP_ABS:y.cmp(a.Zero)<0&&(y=y.neg());break;case o.OP_NOT:y=new a((0===y.cmp(a.Zero))+0);break;case o.OP_0NOTEQUAL:y=new a((0!==y.cmp(a.Zero))+0)}this.stack.pop(),this.stack.push(y.toScriptNumBuffer());break;case o.OP_ADD:case o.OP_SUB:case o.OP_MUL:case o.OP_MOD:case o.OP_DIV:case o.OP_BOOLAND:case o.OP_BOOLOR:case o.OP_NUMEQUAL:case o.OP_NUMEQUALVERIFY:case o.OP_NUMNOTEQUAL:case o.OP_LESSTHAN:case o.OP_GREATERTHAN:case o.OP_LESSTHANOREQUAL:case o.OP_GREATERTHANOREQUAL:case o.OP_MIN:case o.OP_MAX:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;switch(v=a.fromScriptNumBuffer(r(-2),E),S=a.fromScriptNumBuffer(r(-1),E),y=new a(0),R){case o.OP_ADD:y=v.add(S);break;case o.OP_SUB:y=v.sub(S);break;case o.OP_MUL:y=v.mul(S);break;case o.OP_DIV:if(0===S)return this.errstr="SCRIPT_ERR_DIV_BY_ZERO",!1;y=v.div(S);break;case o.OP_MOD:if(0===S)return this.errstr="SCRIPT_ERR_DIV_BY_ZERO",!1;y=v.mod(S);break;case o.OP_BOOLAND:y=new a((0!==v.cmp(a.Zero)&&0!==S.cmp(a.Zero))+0);break;case o.OP_BOOLOR:y=new a((0!==v.cmp(a.Zero)||0!==S.cmp(a.Zero))+0);break;case o.OP_NUMEQUAL:case o.OP_NUMEQUALVERIFY:y=new a((0===v.cmp(S))+0);break;case o.OP_NUMNOTEQUAL:y=new a((0!==v.cmp(S))+0);break;case o.OP_LESSTHAN:y=new a((v.cmp(S)<0)+0);break;case o.OP_GREATERTHAN:y=new a((v.cmp(S)>0)+0);break;case o.OP_LESSTHANOREQUAL:y=new a((v.cmp(S)<=0)+0);break;case o.OP_GREATERTHANOREQUAL:y=new a((v.cmp(S)>=0)+0);break;case o.OP_MIN:y=v.cmp(S)<0?v:S;break;case o.OP_MAX:y=v.cmp(S)>0?v:S}if(this.stack.pop(),this.stack.pop(),this.stack.push(y.toScriptNumBuffer()),R===o.OP_NUMEQUALVERIFY){if(!h.castToBool(r(-1)))return this.errstr="SCRIPT_ERR_NUMEQUALVERIFY",!1;this.stack.pop()}break;case o.OP_WITHIN:if(this.stack.length<3)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;v=a.fromScriptNumBuffer(r(-3),E),S=a.fromScriptNumBuffer(r(-2),E);var j=a.fromScriptNumBuffer(r(-1),E);P=S.cmp(v)<=0&&v.cmp(j)<0,this.stack.pop(),this.stack.pop(),this.stack.pop(),this.stack.push(P?h.true:h.false);break;case o.OP_RIPEMD160:case o.OP_SHA1:case o.OP_SHA256:case o.OP_HASH160:case o.OP_HASH256:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var H;f=r(-1),R===o.OP_RIPEMD160?H=s.ripemd160(f):R===o.OP_SHA1?H=s.sha1(f):R===o.OP_SHA256?H=s.sha256(f):R===o.OP_HASH160?H=s.sha256ripemd160(f):R===o.OP_HASH256&&(H=s.sha256sha256(f)),this.stack.pop(),this.stack.push(H);break;case o.OP_CODESEPARATOR:this.pbegincodehash=this.pc;break;case o.OP_CHECKSIG:case o.OP_CHECKSIGVERIFY:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(_=r(-2),w=r(-1),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(w))return!1;I=(new n).set({chunks:this.script.chunks.slice(this.pbegincodehash)});var L=(new n).add(_);I.findAndDelete(L);try{O=c.fromTxFormat(_),A=u.fromBuffer(w,!1),k=this.tx.verifySignature(O,A,this.nin,I,this.satoshisBN,this.flags)}catch(e){k=!1}if(!k&&this.flags&h.SCRIPT_VERIFY_NULLFAIL&&_.length)return this.errstr="SCRIPT_ERR_NULLFAIL",!1;if(this.stack.pop(),this.stack.pop(),this.stack.push(k?h.true:h.false),R===o.OP_CHECKSIGVERIFY){if(!k)return this.errstr="SCRIPT_ERR_CHECKSIGVERIFY",!1;this.stack.pop()}break;case o.OP_CHECKMULTISIG:case o.OP_CHECKMULTISIGVERIFY:var U=1;if(this.stack.length<U)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var F=a.fromScriptNumBuffer(r(-U),E).toNumber();if(F<0||F>20)return this.errstr="SCRIPT_ERR_PUBKEY_COUNT",!1;if(this.nOpCount+=F,this.nOpCount>201)return this.errstr="SCRIPT_ERR_OP_COUNT",!1;var z=++U;U+=F;var K=F+2;if(this.stack.length<U)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var V=a.fromScriptNumBuffer(r(-U),E).toNumber();if(V<0||V>F)return this.errstr="SCRIPT_ERR_SIG_COUNT",!1;var q=++U;if(U+=V,this.stack.length<U)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;I=(new n).set({chunks:this.script.chunks.slice(this.pbegincodehash)});for(var G=0;G<V;G++)_=r(-q-G),I.findAndDelete((new n).add(_));for(k=!0;k&&V>0;){if(_=r(-q),w=r(-z),!this.checkSignatureEncoding(_)||!this.checkPubkeyEncoding(w))return!1;var Y;try{O=c.fromTxFormat(_),A=u.fromBuffer(w,!1),Y=this.tx.verifySignature(O,A,this.nin,I,this.satoshisBN,this.flags)}catch(e){Y=!1}Y&&(q++,V--),z++,V>--F&&(k=!1)}for(;U-- >1;){if(!k&&this.flags&h.SCRIPT_VERIFY_NULLFAIL&&!K&&r(-1).length)return this.errstr="SCRIPT_ERR_NULLFAIL",!1;K>0&&K--,this.stack.pop()}if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(this.flags&h.SCRIPT_VERIFY_NULLDUMMY&&r(-1).length)return this.errstr="SCRIPT_ERR_SIG_NULLDUMMY",!1;if(this.stack.pop(),this.stack.push(k?h.true:h.false),R===o.OP_CHECKMULTISIGVERIFY){if(!k)return this.errstr="SCRIPT_ERR_CHECKMULTISIGVERIFY",!1;this.stack.pop()}break;case o.OP_CAT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(l=r(-2),d=r(-1),l.length+d.length>h.MAX_SCRIPT_ELEMENT_SIZE)return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack[this.stack.length-2]=t.concat([l,d]),this.stack.pop();break;case o.OP_SPLIT:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;l=r(-2);var W=a.fromScriptNumBuffer(r(-1),E).toNumber();if(W<0||W>l.length)return this.errstr="SCRIPT_ERR_INVALID_SPLIT_RANGE",!1;var X=t.from(l);this.stack[this.stack.length-2]=X.slice(0,W),this.stack[this.stack.length-1]=X.slice(W);break;case o.OP_NUM2BIN:if(this.stack.length<2)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;var J=a.fromScriptNumBuffer(r(-1),E).toNumber();if(J>h.MAX_SCRIPT_ELEMENT_SIZE)return this.errstr="SCRIPT_ERR_PUSH_SIZE",!1;this.stack.pop();var Z=r(-1);if((Z=h._minimallyEncode(Z)).length>J)return this.errstr="SCRIPT_ERR_IMPOSSIBLE_ENCODING",!1;if(Z.length===J){this.stack[this.stack.length-1]=Z;break}var $=0;Z.length>0&&($=128&Z[Z.length-1],Z[Z.length-1]&=127);var Q=t.alloc(J);Z.copy(Q,0);for(var ee=Z.length-1;ee++<J-2;)Q[ee]=0;Q[ee]=$,this.stack[this.stack.length-1]=Q;break;case o.OP_BIN2NUM:if(this.stack.length<1)return this.errstr="SCRIPT_ERR_INVALID_STACK_OPERATION",!1;if(l=r(-1),d=h._minimallyEncode(l),this.stack[this.stack.length-1]=d,!h._isMinimallyEncoded(d))return this.errstr="SCRIPT_ERR_INVALID_NUMBER_RANGE",!1;break;default:return this.errstr="SCRIPT_ERR_BAD_OPCODE",!1}return!0}}).call(this,r(0).Buffer)},function(e,t,r){e.exports=r(31),e.exports.PublicKey=r(146),e.exports.PublicKeyHash=r(147),e.exports.MultiSig=r(148),e.exports.MultiSigScriptHash=r(149)},function(e,t,r){"use strict";(function(t){const i=r(4),n=r(12),o=r(44),a=n.getN(),s=a.shrn(1);e.exports={smartVerify:function(e,n,c){if(!t.isBuffer(e)||32!==e.length)throw new Error("Invalid message hash: must be 32-byte buffer");if(!n)return!1;let u=n;if(t.isBuffer(n))try{u=r(5).fromDER(n)}catch(e){return!1}if(!u||!u.r||!u.s)return!1;const f=i.isBN(u.r)?u.r:new i(u.r),h=i.isBN(u.s)?u.s:new i(u.s);if(f.isZero()||h.isZero())return!1;if(f.gte(a)||h.gte(a))return!1;let l=h;h.gt(s)&&(l=a.sub(h));const d=new(r(5))({r:f,s:l});return o.verify(e,d,c)},isCanonical:function(e){if(!e)return!1;let n=e;if(t.isBuffer(e))try{n=r(5).fromDER(e)}catch(e){return!1}return!(!n||!n.s)&&(i.isBN(n.s)?n.s:new i(n.s)).lte(s)},canonicalize:function(e){if(!e||!e.r||!e.s)throw new Error("Invalid signature object");const t=i.isBN(e.r)?e.r:new i(e.r),r=i.isBN(e.s)?e.s:new i(e.s);let n=r;return r.gt(s)&&(n=a.sub(r)),{r:t,s:n}},constants:{n:a,nh:s}}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";const{ec:i}=r(41),n=new i("secp256k1"),o=n.verify.bind(n);n.verify=function(e,t,r,i,n){if(!t||"object"!=typeof t)return!1;if(!t.r||!t.s)return!1;const a="function"==typeof t.r.cmp?t.r:this.curve.n.red?this.curve.n.fromRed(t.r):t.r,s="function"==typeof t.s.cmp?t.s:this.curve.n.red?this.curve.n.fromRed(t.s):t.s;return!(a&&a.cmp&&a.cmp(this.curve.n)>=0)&&(!(s&&s.cmp&&s.cmp(this.curve.n)>=0)&&(!(a&&a.isZero&&a.isZero())&&(!(s&&s.isZero&&s.isZero())&&o(e,t,r,i,n))))};const a=n.sign.bind(n);n.sign=function(e,t,r,i){const n=a(e,t,r,i);if(n.s&&n.s.cmp){const e=this.curve.n.shrn(1);n.s.cmp(e)>0&&(n.s=this.curve.n.sub(n.s))}return n},e.exports=n},function(e,t,r){(function(e){function r(e,t){for(var r=0,i=e.length-1;i>=0;i--){var n=e[i];"."===n?e.splice(i,1):".."===n?(e.splice(i,1),r++):r&&(e.splice(i,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function i(e,t){if(e.filter)return e.filter(t);for(var r=[],i=0;i<e.length;i++)t(e[i],i,e)&&r.push(e[i]);return r}t.resolve=function(){for(var t="",n=!1,o=arguments.length-1;o>=-1&&!n;o--){var a=o>=0?arguments[o]:e.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,n="/"===a.charAt(0))}return(n?"/":"")+(t=r(i(t.split("/"),(function(e){return!!e})),!n).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),a="/"===n(e,-1);return(e=r(i(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&a&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(i(e,(function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e})).join("/"))},t.relative=function(e,r){function i(e){for(var t=0;t<e.length&&""===e[t];t++);for(var r=e.length-1;r>=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=t.resolve(e).substr(1),r=t.resolve(r).substr(1);for(var n=i(e.split("/")),o=i(r.split("/")),a=Math.min(n.length,o.length),s=a,c=0;c<a;c++)if(n[c]!==o[c]){s=c;break}var u=[];for(c=s;c<n.length;c++)u.push("..");return(u=u.concat(o.slice(s))).join("/")},t.sep="/",t.delimiter=":",t.dirname=function(e){if("string"!=typeof e&&(e+=""),0===e.length)return".";for(var t=e.charCodeAt(0),r=47===t,i=-1,n=!0,o=e.length-1;o>=1;--o)if(47===(t=e.charCodeAt(o))){if(!n){i=o;break}}else n=!1;return-1===i?r?"/":".":r&&1===i?"/":e.slice(0,i)},t.basename=function(e,t){var r=function(e){"string"!=typeof e&&(e+="");var t,r=0,i=-1,n=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!n){r=t+1;break}}else-1===i&&(n=!1,i=t+1);return-1===i?"":e.slice(r,i)}(e);return t&&r.substr(-1*t.length)===t&&(r=r.substr(0,r.length-t.length)),r},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,r=0,i=-1,n=!0,o=0,a=e.length-1;a>=0;--a){var s=e.charCodeAt(a);if(47!==s)-1===i&&(n=!1,i=a+1),46===s?-1===t?t=a:1!==o&&(o=1):-1!==t&&(o=-1);else if(!n){r=a+1;break}}return-1===t||-1===i||0===o||1===o&&t===i-1&&t===r+1?"":e.slice(t,i)};var n="b"==="ab".substr(-1)?function(e,t,r){return e.substr(t,r)}:function(e,t,r){return t<0&&(t=e.length+t),e.substr(t,r)}}).call(this,r(18))},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.PublicKey,o=i.PrivateKey,a=i.crypto.Hash,s=i.util.preconditions;i.errors;function c(e){return this instanceof c?(this.options=e||{},this.network=this.options.network||"mainnet",this.registry=this.options.registry||null,this):new c(e)}c.fromPublicKey=function(e,t){t=t||{},"string"==typeof e&&(e=n.fromString(e)),s.checkArgument(e instanceof n,"Invalid public key");var r=e.toString("hex"),i=t.network||"mainnet",o=t.path||"",a="did:smartledger:"+r;return"mainnet"!==i&&(a+=":"+i),o&&(a+=":"+o),a},c.fromPrivateKey=function(e,t){return"string"==typeof e&&(e=o.fromWIF(e)),s.checkArgument(e instanceof o,"Invalid private key"),c.fromPublicKey(e.toPublicKey(),t)},c.parseDID=function(e){if(s.checkArgument("string"==typeof e,"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},c.isValidDID=function(e){try{var t=c.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(e){return!1}},c.getPublicKey=function(e){var t=c.parseDID(e);return n.fromString(t.identifier)},c.createDocument=function(e,t){t=t||{},s.checkArgument(c.isValidDID(e),"Invalid DID");var r=e+"#keys-1",i={"@context":["https://www.w3.org/ns/did/v1","https://w3id.org/security/suites/secp256k1-2019/v1"],id:e,verificationMethod:[{id:r,type:"EcdsaSecp256k1VerificationKey2019",controller:e,publicKeyHex:c.getPublicKey(e).toString("hex")}],authentication:[r],assertionMethod:[r],keyAgreement:[r],capabilityInvocation:[r],capabilityDelegation:[r]};return t.services&&Array.isArray(t.services)&&(i.service=t.services),t.verificationMethods&&(i.verificationMethod=i.verificationMethod.concat(t.verificationMethods)),t.created&&(i.created=t.created),t.updated&&(i.updated=t.updated),i},c.resolve=async function(e,t){t=t||{};try{return s.checkArgument(c.isValidDID(e),"Invalid DID"),{"@context":"https://w3id.org/did-resolution/v1",didDocument:c.createDocument(e,t),didResolutionMetadata:{contentType:"application/did+ld+json",retrieved:(new Date).toISOString()},didDocumentMetadata:{method:{published:!0,recoveryCommitment:null,updateCommitment:null}}}}catch(e){return{"@context":"https://w3id.org/did-resolution/v1",didDocument:null,didResolutionMetadata:{error:"notFound",errorMessage:e.message},didDocumentMetadata:{}}}},c.verifyOwnership=function(e,r,n){try{var o=c.getPublicKey(e),s=a.sha256(t.isBuffer(n)?n:t.from(n,"utf8")),u=i.crypto.Signature.fromString(r),f=new i.crypto.ECDSA;return f.hashbuf=s,f.pubkey=o,f.sig=u,f.verify()}catch(e){return!1}},c.signMessage=function(e,r){s.checkArgument(r instanceof o,"Invalid private key");var n=a.sha256(t.isBuffer(e)?e:t.from(e,"utf8")),c=new i.crypto.ECDSA;return c.hashbuf=n,c.privkey=r,c.pubkey=r.toPublicKey(),c.sign().toString()},c.createProofOfOwnership=function(e,t){s.checkArgument(e instanceof o,"Invalid private key"),s.checkArgument("string"==typeof t,"Challenge must be a string");var r=c.fromPrivateKey(e),i=(new Date).toISOString(),n=t+":"+i+":"+r;return{type:"EcdsaSecp256k1Signature2019",created:i,verificationMethod:r+"#keys-1",proofPurpose:"authentication",challenge:t,jws:c.signMessage(n,e)}},c.verifyProofOfOwnership=function(e,t){try{s.checkArgument(e&&"object"==typeof e,"Invalid proof object"),s.checkArgument("string"==typeof t,"DID must be a string");var r=e.challenge+":"+e.created+":"+t;return c.verifyOwnership(t,e.jws,r)}catch(e){return!1}},c.createDIDURL=function(e,t){return s.checkArgument("string"==typeof e,"DID must be a string"),s.checkArgument("string"==typeof t,"Fragment must be a string"),e+"#"+t},c.generateTestDID=function(e){e=e||{};var t=new o,r=c.fromPrivateKey(t,e),i=c.createDocument(r,e);return{did:r,privateKey:t.toWIF(),publicKey:t.toPublicKey().toString("hex"),document:i}},e.exports=c}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=r(54),o=i.PrivateKey,a=i.crypto.Hash,s=i.crypto.ECDSA,c=(i.crypto.Signature,i.util.preconditions);r(2);function u(e,t){return this instanceof u?("string"==typeof e&&(e=o.fromWIF(e)),c.checkArgument(e instanceof o,"Invalid private key"),this.privateKey=e,this.publicKey=e.toPublicKey(),this.options=t||{},this.did=n.fromPrivateKey(e,this.options),this):new u(e,t)}u._canonicalizeJSON=function(e){return JSON.stringify(e,Object.keys(e).sort())},u._hashCredential=function(e){var r=u._canonicalizeJSON(e);return a.sha256(t.from(r,"utf8"))},u.prototype.createCredential=function(e,t){t=t||{},c.checkArgument(e&&"object"==typeof e,"Invalid credential subject");var r=(new Date).toISOString(),i={"@context":["https://www.w3.org/2018/credentials/v1"],id:t.id||"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential"],issuer:this.did,issuanceDate:r,credentialSubject:e};return t.type&&(Array.isArray(t.type)?i.type=i.type.concat(t.type):i.type.push(t.type)),t.context&&(Array.isArray(t.context)?i["@context"]=i["@context"].concat(t.context):i["@context"].push(t.context)),t.expirationDate&&(i.expirationDate=t.expirationDate),t.termsOfUse&&(i.termsOfUse=t.termsOfUse),t.evidence&&(i.evidence=t.evidence),t.refreshService&&(i.refreshService=t.refreshService),i},u.prototype.signCredential=function(e,t){t=t||{},c.checkArgument(e&&"object"==typeof e,"Invalid credential");var r=JSON.parse(JSON.stringify(e));delete r.proof;var i=u._hashCredential(r),n=new s;n.hashbuf=i,n.privkey=this.privateKey,n.pubkey=this.publicKey,n.sign();var o=n.sig,a=this._createJWSSignature(i,o),f={type:"EcdsaSecp256k1Signature2019",created:(new Date).toISOString(),verificationMethod:this.did+"#keys-1",proofPurpose:t.proofPurpose||"assertionMethod",jws:a};t.challenge&&(f.challenge=t.challenge),t.domain&&(f.domain=t.domain);var h=JSON.parse(JSON.stringify(r));return h.proof=f,h.rootHash=i.toString("hex"),h},u.prototype._createJWSSignature=function(e,r){var i=t.from(JSON.stringify({alg:"ES256K",typ:"JWT"})).toString("base64url");e.toString("base64url");return i+".."+r.toDER().toString("base64url")},u.prototype.createEmailCredential=function(e,r){r=r||{},c.checkArgument("string"==typeof e&&e.includes("@"),"Invalid email address");var i={id:r.subjectId||"did:smartledger:"+a.sha256(t.from(e)).toString("hex"),email:e,verified:!0,verificationMethod:"email_verification",verificationTimestamp:(new Date).toISOString()},n={type:"EmailVerifiedCredential",context:"https://smartledger.technology/contexts/email/v1",...r},o=this.createCredential(i,n);return this.signCredential(o,r)},u.prototype.createAgeCredential=function(e,r,i){i=i||{},c.checkArgument("number"==typeof e&&e>0,"Invalid age");var n={id:i.subjectId||"urn:uuid:"+this._generateUUID(),ageOver:e,verified:!0,verificationMethod:"age_verification"};r&&(n.birthDateHash=a.sha256(t.from(r.toISOString())).toString("hex"));var o={type:"AgeVerifiedCredential",context:"https://smartledger.technology/contexts/age/v1",...i},s=this.createCredential(n,o);return this.signCredential(s,i)},u.prototype.createKYCCredential=function(e,r){r=r||{},c.checkArgument(e&&"object"==typeof e,"Invalid KYC data");var i={id:r.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&&(i.firstNameHash=a.sha256(t.from(e.firstName)).toString("hex")),e.lastName&&(i.lastNameHash=a.sha256(t.from(e.lastName)).toString("hex")),e.ssn&&(i.ssnHash=a.sha256(t.from(e.ssn)).toString("hex"));var n={type:"KYCVerifiedCredential",context:"https://smartledger.technology/contexts/kyc/v1",...r},o=this.createCredential(i,n);return this.signCredential(o,r)},u.prototype.createOrganizationCredential=function(e,r){r=r||{},c.checkArgument(e&&"object"==typeof e,"Invalid organization data");var i={id:r.subjectId||"did:smartledger:org:"+a.sha256(t.from(e.name||"")).toString("hex"),name:e.name,type:e.type||"Organization",verified:!0,verificationMethod:"organization_verification",verificationTimestamp:(new Date).toISOString()};e.taxId&&(i.taxIdHash=a.sha256(t.from(e.taxId)).toString("hex")),e.incorporationState&&(i.incorporationState=e.incorporationState),e.industry&&(i.industry=e.industry);var n={type:"OrganizationCredential",context:"https://smartledger.technology/contexts/organization/v1",...r},o=this.createCredential(i,n);return this.signCredential(o,r)},u.prototype._generateUUID=function(){var e=i.crypto.Random.getRandomBuffer(16);e[6]=15&e[6]|64,e[8]=63&e[8]|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("-")},u.prototype.createPresentation=function(e,t){t=t||{},c.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=u._hashCredential(r),n=new s;n.hashbuf=i,n.privkey=this.privateKey,n.pubkey=this.publicKey,n.sign();var o=n.sig,a=this._createJWSSignature(i,o),f={type:"EcdsaSecp256k1Signature2019",created:(new Date).toISOString(),verificationMethod:this.did+"#keys-1",proofPurpose:"authentication",jws:a};return t.challenge&&(f.challenge=t.challenge),t.domain&&(f.domain=t.domain),r.proof=f,r},u.prototype.getIssuerInfo=function(){return{did:this.did,publicKey:this.publicKey.toString("hex"),verificationMethod:this.did+"#keys-1"}},e.exports=u}).call(this,r(0).Buffer)},function(e,t,r){var i=r(87);e.exports=i("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},function(e,t,r){"use strict";var i=t;function n(e){return 1===e.length?"0"+e:e}function o(e){for(var t="",r=0;r<e.length;r++)t+=n(e[r].toString(16));return t}i.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"!=typeof e){for(var i=0;i<e.length;i++)r[i]=0|e[i];return r}if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(i=0;i<e.length;i+=2)r.push(parseInt(e[i]+e[i+1],16))}else for(i=0;i<e.length;i++){var n=e.charCodeAt(i),o=n>>8,a=255&n;o?r.push(o,a):r.push(a)}return r},i.zero2=n,i.toHex=o,i.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,r){var i;function n(e){this.rand=e}if(e.exports=function(e){return i||(i=new n(null)),i.generate(e)},e.exports.Rand=n,n.prototype.generate=function(e){return this._rand(e)},n.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r<t.length;r++)t[r]=this.rand.getByte();return t},"object"==typeof self)self.crypto&&self.crypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return self.crypto.getRandomValues(t),t}:self.msCrypto&&self.msCrypto.getRandomValues?n.prototype._rand=function(e){var t=new Uint8Array(e);return self.msCrypto.getRandomValues(t),t}:"object"==typeof window&&(n.prototype._rand=function(){throw new Error("Not implemented yet")});else try{var o=r(90);if("function"!=typeof o.randomBytes)throw new Error("Not supported");n.prototype._rand=function(e){return o.randomBytes(e)}}catch(e){}},function(e,t,r){"use strict";var i=t;i.base=r(34),i.short=r(91),i.mont=r(92),i.edwards=r(93)},function(e,t,r){"use strict";var i=r(14).rotr32;function n(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function a(e,t,r){return e^t^r}t.ft_1=function(e,t,r,i){return 0===e?n(t,r,i):1===e||3===e?a(t,r,i):2===e?o(t,r,i):void 0},t.ch32=n,t.maj32=o,t.p32=a,t.s0_256=function(e){return i(e,2)^i(e,13)^i(e,22)},t.s1_256=function(e){return i(e,6)^i(e,11)^i(e,25)},t.g0_256=function(e){return i(e,7)^i(e,18)^e>>>3},t.g1_256=function(e){return i(e,17)^i(e,19)^e>>>10}},function(e,t,r){"use strict";var i=r(14),n=r(28),o=r(60),a=r(22),s=i.sum32,c=i.sum32_4,u=i.sum32_5,f=o.ch32,h=o.maj32,l=o.s0_256,d=o.s1_256,p=o.g0_256,g=o.g1_256,m=n.BlockHash,b=[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];function y(){if(!(this instanceof y))return new y;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}i.inherits(y,m),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var r=this.W,i=0;i<16;i++)r[i]=e[t+i];for(;i<r.length;i++)r[i]=c(g(r[i-2]),r[i-7],p(r[i-15]),r[i-16]);var n=this.h[0],o=this.h[1],m=this.h[2],b=this.h[3],y=this.h[4],v=this.h[5],S=this.h[6],_=this.h[7];for(a(this.k.length===r.length),i=0;i<r.length;i++){var w=u(_,d(y),f(y,v,S),this.k[i],r[i]),I=s(l(n),h(n,o,m));_=S,S=v,v=y,y=s(b,w),b=m,m=o,o=n,n=s(w,I)}this.h[0]=s(this.h[0],n),this.h[1]=s(this.h[1],o),this.h[2]=s(this.h[2],m),this.h[3]=s(this.h[3],b),this.h[4]=s(this.h[4],y),this.h[5]=s(this.h[5],v),this.h[6]=s(this.h[6],S),this.h[7]=s(this.h[7],_)},y.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},function(e,t,r){"use strict";var i=r(14),n=r(28),o=r(22),a=i.rotr64_hi,s=i.rotr64_lo,c=i.shr64_hi,u=i.shr64_lo,f=i.sum64,h=i.sum64_hi,l=i.sum64_lo,d=i.sum64_4_hi,p=i.sum64_4_lo,g=i.sum64_5_hi,m=i.sum64_5_lo,b=n.BlockHash,y=[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];function v(){if(!(this instanceof v))return new v;b.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function S(e,t,r,i,n){var o=e&r^~e&n;return o<0&&(o+=4294967296),o}function _(e,t,r,i,n,o){var a=t&i^~t&o;return a<0&&(a+=4294967296),a}function w(e,t,r,i,n){var o=e&r^e&n^r&n;return o<0&&(o+=4294967296),o}function I(e,t,r,i,n,o){var a=t&i^t&o^i&o;return a<0&&(a+=4294967296),a}function O(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function P(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function k(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function E(e,t){var r=a(e,t,1)^a(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function x(e,t){var r=s(e,t,1)^s(e,t,8)^u(e,t,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=a(e,t,19)^a(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}function R(e,t){var r=s(e,t,19)^s(t,e,29)^u(e,t,6);return r<0&&(r+=4294967296),r}i.inherits(v,b),e.exports=v,v.blockSize=1024,v.outSize=512,v.hmacStrength=192,v.padLength=128,v.prototype._prepareBlock=function(e,t){for(var r=this.W,i=0;i<32;i++)r[i]=e[t+i];for(;i<r.length;i+=2){var n=T(r[i-4],r[i-3]),o=R(r[i-4],r[i-3]),a=r[i-14],s=r[i-13],c=E(r[i-30],r[i-29]),u=x(r[i-30],r[i-29]),f=r[i-32],h=r[i-31];r[i]=d(n,o,a,s,c,u,f,h),r[i+1]=p(n,o,a,s,c,u,f,h)}},v.prototype._update=function(e,t){this._prepareBlock(e,t);var r=this.W,i=this.h[0],n=this.h[1],a=this.h[2],s=this.h[3],c=this.h[4],u=this.h[5],d=this.h[6],p=this.h[7],b=this.h[8],y=this.h[9],v=this.h[10],E=this.h[11],x=this.h[12],T=this.h[13],R=this.h[14],N=this.h[15];o(this.k.length===r.length);for(var M=0;M<r.length;M+=2){var C=R,D=N,B=P(b,y),j=k(b,y),H=S(b,y,v,E,x),L=_(b,y,v,E,x,T),U=this.k[M],F=this.k[M+1],z=r[M],K=r[M+1],V=g(C,D,B,j,H,L,U,F,z,K),q=m(C,D,B,j,H,L,U,F,z,K);C=O(i,n),D=A(i,n),B=w(i,n,a,s,c),j=I(i,n,a,s,c,u);var G=h(C,D,B,j),Y=l(C,D,B,j);R=x,N=T,x=v,T=E,v=b,E=y,b=h(d,p,V,q),y=l(p,p,V,q),d=c,p=u,c=a,u=s,a=i,s=n,i=h(V,q,G,Y),n=l(V,q,G,Y)}f(this.h,0,i,n),f(this.h,2,a,s),f(this.h,4,c,u),f(this.h,6,d,p),f(this.h,8,b,y),f(this.h,10,v,E),f(this.h,12,x,T),f(this.h,14,R,N)},v.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},function(e,t,r){"use strict";(function(t){var i=r(27),n=r(19),o=r(16),a=r(6),s=r(48),c=r(15),u=r(5),f=r(24),h=r(3),l=r(2),d=r(11),p=r(0),g=r(7),m=function e(r){return this instanceof e?(this.chunks=[],t.isBuffer(r)?e.fromBuffer(r):r instanceof i?e.fromAddress(r):r instanceof e?e.fromBuffer(r.toBuffer()):l.isString(r)?e.fromString(r):void(l.isObject(r)&&l.isArray(r.chunks)&&this.set(r))):new e(r)};m.prototype.set=function(e){return h.checkArgument(l.isObject(e)),h.checkArgument(l.isArray(e.chunks)),this.chunks=e.chunks,this},m.fromBuffer=function(e){var t=new m;t.chunks=[];for(var r=new n(e);!r.finished();)try{var i,o,a=r.readUInt8();a>0&&a<s.OP_PUSHDATA1?(i=a,t.chunks.push({buf:r.read(i),len:i,opcodenum:a})):a===s.OP_PUSHDATA1?(i=r.readUInt8(),o=r.read(i),t.chunks.push({buf:o,len:i,opcodenum:a})):a===s.OP_PUSHDATA2?(i=r.readUInt16LE(),o=r.read(i),t.chunks.push({buf:o,len:i,opcodenum:a})):a===s.OP_PUSHDATA4?(i=r.readUInt32LE(),o=r.read(i),t.chunks.push({buf:o,len:i,opcodenum:a})):t.chunks.push({opcodenum:a})}catch(t){if(t instanceof RangeError)throw new d.Script.InvalidBuffer(e.toString("hex"));throw t}return t},m.prototype.toBuffer=function(){for(var e=new o,t=0;t<this.chunks.length;t++){var r=this.chunks[t],i=r.opcodenum;e.writeUInt8(r.opcodenum),r.buf&&(i<s.OP_PUSHDATA1?e.write(r.buf):i===s.OP_PUSHDATA1?(e.writeUInt8(r.len),e.write(r.buf)):i===s.OP_PUSHDATA2?(e.writeUInt16LE(r.len),e.write(r.buf)):i===s.OP_PUSHDATA4&&(e.writeUInt32LE(r.len),e.write(r.buf)))}return e.concat()},m.fromASM=function(e){var r=new m;r.chunks=[];for(var i=e.split(" "),n=0;n<i.length;){var o=i[n],a=s(o).toNumber();if("0"===o)a=0,r.chunks.push({opcodenum:a}),n+=1;else if("-1"===o)a=s.OP_1NEGATE,r.chunks.push({opcodenum:a}),n+=1;else if(l.isUndefined(a)){var c=t.from(i[n],"hex");if(c.toString("hex")!==i[n])throw new Error("invalid hex string in script");var u=c.length;u>=0&&u<s.OP_PUSHDATA1?a=u:u<Math.pow(2,8)?a=s.OP_PUSHDATA1:u<Math.pow(2,16)?a=s.OP_PUSHDATA2:u<Math.pow(2,32)&&(a=s.OP_PUSHDATA4),r.chunks.push({buf:c,len:c.length,opcodenum:a}),n+=1}else r.chunks.push({opcodenum:a}),n+=1}return r},m.fromHex=function(e){return new m(p.Buffer.from(e,"hex"))},m.fromString=function(e){if(g.isHexa(e)||0===e.length)return new m(p.Buffer.from(e,"hex"));var r=new m;r.chunks=[];for(var i=e.split(" "),n=0;n<i.length;){var o=i[n],a=s(o).toNumber();if(l.isUndefined(a)){if(!((a=parseInt(o))>0&&a<s.OP_PUSHDATA1))throw new Error("Invalid script: "+JSON.stringify(e));r.chunks.push({buf:t.from(i[n+1].slice(2),"hex"),len:a,opcodenum:a}),n+=2}else if(a===s.OP_PUSHDATA1||a===s.OP_PUSHDATA2||a===s.OP_PUSHDATA4){if("0x"!==i[n+2].slice(0,2))throw new Error("Pushdata data must start with 0x");r.chunks.push({buf:t.from(i[n+2].slice(2),"hex"),len:parseInt(i[n+1]),opcodenum:a}),n+=3}else r.chunks.push({opcodenum:a}),n+=1}return r},m.prototype._chunkToString=function(e,t){var r=e.opcodenum,i="asm"===t,n="";if(e.buf)i||r!==s.OP_PUSHDATA1&&r!==s.OP_PUSHDATA2&&r!==s.OP_PUSHDATA4||(n=n+" "+s(r).toString()),e.len>0&&(n=i?n+" "+e.buf.toString("hex"):n+" "+e.len+" 0x"+e.buf.toString("hex"));else if(void 0!==s.reverseMap[r])i?0===r?n+=" 0":79===r?n+=" -1":n=n+" "+s(r).toString():n=n+" "+s(r).toString();else{var o=r.toString(16);o.length%2!=0&&(o="0"+o),n=i?n+" "+o:n+" 0x"+o}return n},m.prototype.toASM=function(){for(var e="",t=0;t<this.chunks.length;t++){var r=this.chunks[t];e+=this._chunkToString(r,"asm")}return e.substr(1)},m.prototype.toString=function(){for(var e="",t=0;t<this.chunks.length;t++){var r=this.chunks[t];e+=this._chunkToString(r)}return e.substr(1)},m.prototype.toHex=function(){return this.toBuffer().toString("hex")},m.prototype.inspect=function(){return"<Script: "+this.toString()+">"},m.prototype.isPublicKeyHashOut=function(){return!(5!==this.chunks.length||this.chunks[0].opcodenum!==s.OP_DUP||this.chunks[1].opcodenum!==s.OP_HASH160||!this.chunks[2].buf||20!==this.chunks[2].buf.length||this.chunks[3].opcodenum!==s.OP_EQUALVERIFY||this.chunks[4].opcodenum!==s.OP_CHECKSIG)},m.prototype.isPublicKeyHashIn=function(){if(2===this.chunks.length){var e=this.chunks[0].buf,t=this.chunks[1].buf;if(e&&e.length&&48===e[0]&&t&&t.length){var r=t[0];if((4===r||6===r||7===r)&&65===t.length)return!0;if((3===r||2===r)&&33===t.length)return!0}}return!1},m.prototype.getPublicKey=function(){return h.checkState(this.isPublicKeyOut(),"Can't retrieve PublicKey from a non-PK output"),this.chunks[0].buf},m.prototype.getPublicKeyHash=function(){return h.checkState(this.isPublicKeyHashOut(),"Can't retrieve PublicKeyHash from a non-PKH output"),this.chunks[2].buf},m.prototype.isPublicKeyOut=function(){if(2===this.chunks.length&&this.chunks[0].buf&&this.chunks[0].buf.length&&this.chunks[1].opcodenum===s.OP_CHECKSIG){var e=this.chunks[0].buf,t=e[0],r=!1;if((4!==t&&6!==t&&7!==t||65!==e.length)&&(3!==t&&2!==t||33!==e.length)||(r=!0),r)return c.isValid(e)}return!1},m.prototype.isPublicKeyIn=function(){if(1===this.chunks.length){var e=this.chunks[0].buf;if(e&&e.length&&48===e[0])return!0}return!1},m.prototype.isScriptHashOut=function(){var e=this.toBuffer();return 23===e.length&&e[0]===s.OP_HASH160&&20===e[1]&&e[e.length-1]===s.OP_EQUAL},m.prototype.isScriptHashIn=function(){if(this.chunks.length<=1)return!1;var e,t=this.chunks[this.chunks.length-1].buf;if(!t)return!1;try{e=m.fromBuffer(t)}catch(e){if(e instanceof d.Script.InvalidBuffer)return!1;throw e}return e.classify()!==m.types.UNKNOWN},m.prototype.isMultisigOut=function(){return this.chunks.length>3&&s.isSmallIntOp(this.chunks[0].opcodenum)&&this.chunks.slice(1,this.chunks.length-2).every((function(e){return e.buf&&t.isBuffer(e.buf)}))&&s.isSmallIntOp(this.chunks[this.chunks.length-2].opcodenum)&&this.chunks[this.chunks.length-1].opcodenum===s.OP_CHECKMULTISIG},m.prototype.isMultisigIn=function(){return this.chunks.length>=2&&0===this.chunks[0].opcodenum&&this.chunks.slice(1,this.chunks.length).every((function(e){return e.buf&&t.isBuffer(e.buf)&&u.isTxDER(e.buf)}))},m.prototype.isDataOut=function(){if(!(this.chunks.length>=1&&this.chunks[0].opcodenum===s.OP_RETURN))return!1;var e=this.chunks.slice(1);return new m({chunks:e}).isPushOnly()},m.prototype.isSafeDataOut=function(){if(this.chunks.length<2)return!1;if(this.chunks[0].opcodenum!==s.OP_FALSE)return!1;var e=this.chunks.slice(1);return new m({chunks:e}).isDataOut()},m.prototype.getData=function(){if(this.isSafeDataOut())return this.chunks.slice(2).map(e=>e.buf);if(this.isDataOut()||this.isScriptHashOut())return l.isUndefined(this.chunks[1])?t.alloc(0):t.from(this.chunks[1].buf);if(this.isPublicKeyHashOut())return t.from(this.chunks[2].buf);throw new Error("Unrecognized script type to get data from")},m.prototype.isPushOnly=function(){return l.every(this.chunks,(function(e){return e.opcodenum<=s.OP_16||e.opcodenum===s.OP_PUSHDATA1||e.opcodenum===s.OP_PUSHDATA2||e.opcodenum===s.OP_PUSHDATA4}))},(m.types={}).UNKNOWN="Unknown",m.types.PUBKEY_OUT="Pay to public key",m.types.PUBKEY_IN="Spend from public key",m.types.PUBKEYHASH_OUT="Pay to public key hash",m.types.PUBKEYHASH_IN="Spend from public key hash",m.types.SCRIPTHASH_OUT="Pay to script hash",m.types.SCRIPTHASH_IN="Spend from script hash",m.types.MULTISIG_OUT="Pay to multisig",m.types.MULTISIG_IN="Spend from multisig",m.types.DATA_OUT="Data push",m.types.SAFE_DATA_OUT="Safe data push",m.OP_RETURN_STANDARD_SIZE=220,m.prototype.classify=function(){if(this._isInput)return this.classifyInput();if(this._isOutput)return this.classifyOutput();var e=this.classifyOutput();return e!==m.types.UNKNOWN?e:this.classifyInput()},(m.outputIdentifiers={}).PUBKEY_OUT=m.prototype.isPublicKeyOut,m.outputIdentifiers.PUBKEYHASH_OUT=m.prototype.isPublicKeyHashOut,m.outputIdentifiers.MULTISIG_OUT=m.prototype.isMultisigOut,m.outputIdentifiers.SCRIPTHASH_OUT=m.prototype.isScriptHashOut,m.outputIdentifiers.DATA_OUT=m.prototype.isDataOut,m.outputIdentifiers.SAFE_DATA_OUT=m.prototype.isSafeDataOut,m.prototype.classifyOutput=function(){for(var e in m.outputIdentifiers)if(m.outputIdentifiers[e].bind(this)())return m.types[e];return m.types.UNKNOWN},(m.inputIdentifiers={}).PUBKEY_IN=m.prototype.isPublicKeyIn,m.inputIdentifiers.PUBKEYHASH_IN=m.prototype.isPublicKeyHashIn,m.inputIdentifiers.MULTISIG_IN=m.prototype.isMultisigIn,m.inputIdentifiers.SCRIPTHASH_IN=m.prototype.isScriptHashIn,m.prototype.classifyInput=function(){for(var e in m.inputIdentifiers)if(m.inputIdentifiers[e].bind(this)())return m.types[e];return m.types.UNKNOWN},m.prototype.isStandard=function(){return this.classify()!==m.types.UNKNOWN},m.prototype.prepend=function(e){return this._addByType(e,!0),this},m.prototype.equals=function(e){if(h.checkState(e instanceof m,"Must provide another script"),this.chunks.length!==e.chunks.length)return!1;var r;for(r=0;r<this.chunks.length;r++){if(t.isBuffer(this.chunks[r].buf)&&!t.isBuffer(e.chunks[r].buf))return!1;if(t.isBuffer(this.chunks[r].buf)&&!this.chunks[r].buf.equals(e.chunks[r].buf))return!1;if(this.chunks[r].opcodenum!==e.chunks[r].opcodenum)return!1}return!0},m.prototype.add=function(e){return this._addByType(e,!1),this},m.prototype._addByType=function(e,r){if("string"==typeof e)this._addOpcode(e,r);else if("number"==typeof e)this._addOpcode(e,r);else if(e instanceof s)this._addOpcode(e,r);else if(t.isBuffer(e))this._addBuffer(e,r);else if(e instanceof m)this.chunks=this.chunks.concat(e.chunks);else{if("object"!=typeof e)throw new Error("Invalid script chunk");this._insertAtPosition(e,r)}},m.prototype._insertAtPosition=function(e,t){t?this.chunks.unshift(e):this.chunks.push(e)},m.prototype._addOpcode=function(e,t){var r;return r="number"==typeof e?e:e instanceof s?e.toNumber():s(e).toNumber(),this._insertAtPosition({opcodenum:r},t),this},m.prototype._addBuffer=function(e,t){var r,i=e.length;if(i>=0&&i<s.OP_PUSHDATA1)r=i;else if(i<Math.pow(2,8))r=s.OP_PUSHDATA1;else if(i<Math.pow(2,16))r=s.OP_PUSHDATA2;else{if(!(i<Math.pow(2,32)))throw new Error("You can't push that much data");r=s.OP_PUSHDATA4}return this._insertAtPosition({buf:e,len:i,opcodenum:r},t),this},m.prototype.removeCodeseparators=function(){for(var e=[],t=0;t<this.chunks.length;t++)this.chunks[t].opcodenum!==s.OP_CODESEPARATOR&&e.push(this.chunks[t]);return this.chunks=e,this},m.buildMultisigOut=function(e,t,r){h.checkArgument(t<=e.length,"Number of required signatures must be less than or equal to the number of public keys"),r=r||{};var i=new m;i.add(s.smallInt(t));var n=e=l.map(e,c);r.noSorting||(n=e.map(e=>e.toString("hex")).sort().map(e=>new c(e)));for(var o=0;o<n.length;o++){var a=n[o];i.add(a.toBuffer())}return i.add(s.smallInt(e.length)),i.add(s.OP_CHECKMULTISIG),i},m.buildMultisigIn=function(e,r,i,n){h.checkArgument(l.isArray(e)),h.checkArgument(l.isNumber(r)),h.checkArgument(l.isArray(i)),n=n||{};var o=new m;return o.add(s.OP_0),l.each(i,(function(e){h.checkArgument(t.isBuffer(e),"Signatures must be an array of Buffers"),o.add(e)})),o},m.buildP2SHMultisigIn=function(e,r,i,n){h.checkArgument(l.isArray(e)),h.checkArgument(l.isNumber(r)),h.checkArgument(l.isArray(i)),n=n||{};var o=new m;return o.add(s.OP_0),l.each(i,(function(e){h.checkArgument(t.isBuffer(e),"Signatures must be an array of Buffers"),o.add(e)})),o.add((n.cachedMultisig||m.buildMultisigOut(e,r,n)).toBuffer()),o},m.buildPublicKeyHashOut=function(e){h.checkArgument(!l.isUndefined(e)),h.checkArgument(e instanceof c||e instanceof i||l.isString(e)),e instanceof c?e=e.toAddress():l.isString(e)&&(e=new i(e));var t=new m;return t.add(s.OP_DUP).add(s.OP_HASH160).add(e.hashBuffer).add(s.OP_EQUALVERIFY).add(s.OP_CHECKSIG),t._network=e.network,t},m.buildPublicKeyOut=function(e){h.checkArgument(e instanceof c);var t=new m;return t.add(e.toBuffer()).add(s.OP_CHECKSIG),t},m.buildDataOut=function(e,r){h.checkArgument(l.isUndefined(e)||l.isString(e)||l.isArray(e)||t.isBuffer(e));var i=e;l.isArray(i)||(i=[e]);var n=new m;n.add(s.OP_RETURN);for(let e of i)h.checkArgument(l.isUndefined(e)||l.isString(e)||t.isBuffer(e)),l.isString(e)&&(e=t.from(e,r)),l.isUndefined(e)||n.add(e);return n},m.buildSafeDataOut=function(e,t){var r=m.buildDataOut(e,t),i=new m;return i.add(s.OP_FALSE),i.add(r),i},m.buildScriptHashOut=function(e){h.checkArgument(e instanceof m||e instanceof i&&e.isPayToScriptHash());var t=new m;return t.add(s.OP_HASH160).add(e instanceof i?e.hashBuffer:a.sha256ripemd160(e.toBuffer())).add(s.OP_EQUAL),t._network=e._network||e.network,t},m.buildPublicKeyIn=function(e,r){h.checkArgument(e instanceof u||t.isBuffer(e)),h.checkArgument(l.isUndefined(r)||l.isNumber(r)),e instanceof u&&(e=e.toBuffer());var i=new m;return i.add(t.concat([e,t.from([255&(r||u.SIGHASH_ALL)])])),i},m.buildPublicKeyHashIn=function(e,r,i){return h.checkArgument(r instanceof u||t.isBuffer(r)),h.checkArgument(l.isUndefined(i)||l.isNumber(i)),r instanceof u&&(r=r.toBuffer()),(new m).add(t.concat([r,t.from([255&(i||u.SIGHASH_ALL)])])).add(new c(e).toBuffer())},m.empty=function(){return new m},m.prototype.toScriptHashOut=function(){return m.buildScriptHashOut(this)},m.fromAddress=function(e){if((e=i(e)).isPayToScriptHash())return m.buildScriptHashOut(e);if(e.isPayToPublicKeyHash())return m.buildPublicKeyHashOut(e);throw new d.Script.UnrecognizedAddress(e)},m.prototype.getAddressInfo=function(e){if(this._isInput)return this._getInputAddressInfo();if(this._isOutput)return this._getOutputAddressInfo();var t=this._getOutputAddressInfo();return t||this._getInputAddressInfo()},m.prototype._getOutputAddressInfo=function(){var e={};if(this.isScriptHashOut())e.hashBuffer=this.getData(),e.type=i.PayToScriptHash;else{if(!this.isPublicKeyHashOut())return!1;e.hashBuffer=this.getData(),e.type=i.PayToPublicKeyHash}return e},m.prototype._getInputAddressInfo=function(){var e={};if(this.isPublicKeyHashIn())e.hashBuffer=a.sha256ripemd160(this.chunks[1].buf),e.type=i.PayToPublicKeyHash;else{if(!this.isScriptHashIn())return!1;e.hashBuffer=a.sha256ripemd160(this.chunks[this.chunks.length-1].buf),e.type=i.PayToScriptHash}return e},m.prototype.toAddress=function(e){var t=this.getAddressInfo();return!!t&&(t.network=f.get(e)||this._network||f.defaultNetwork,new i(t))},m.prototype.findAndDelete=function(e){for(var t=e.toBuffer().toString("hex"),r=0;r<this.chunks.length;r++){t===m({chunks:[this.chunks[r]]}).toBuffer().toString("hex")&&this.chunks.splice(r,1)}return this},m.prototype.checkMinimalPush=function(e){var t=this.chunks[e],r=t.buf,i=t.opcodenum;return!r||(0===r.length?i===s.OP_0:1===r.length&&r[0]>=1&&r[0]<=16?i===s.OP_1+(r[0]-1):1===r.length&&129===r[0]?i===s.OP_1NEGATE:r.length<=75?i===r.length:r.length<=255?i===s.OP_PUSHDATA1:!(r.length<=65535)||i===s.OP_PUSHDATA2)},m.prototype._decodeOP_N=function(e){if(e===s.OP_0)return 0;if(e>=s.OP_1&&e<=s.OP_16)return e-(s.OP_1-1);throw new Error("Invalid opcode: "+JSON.stringify(e))},m.prototype.getSignatureOperationsCount=function(e){e=!!l.isUndefined(e)||e;var t=this,r=0,i=s.OP_INVALIDOPCODE;return l.each(t.chunks,(function(n){var o=n.opcodenum;o===s.OP_CHECKSIG||o===s.OP_CHECKSIGVERIFY?r++:o!==s.OP_CHECKMULTISIG&&o!==s.OP_CHECKMULTISIGVERIFY||(e&&i>=s.OP_1&&i<=s.OP_16?r+=t._decodeOP_N(i):r+=20),i=o})),r},e.exports=m}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=Object.prototype.toString;e.exports=function(e){var t=i.call(e),r="[object Arguments]"===t;return r||(r="[object Array]"!==t&&null!==e&&"object"==typeof e&&"number"==typeof e.length&&e.length>=0&&"[object Function]"===i.call(e.callee)),r}},function(e,t,r){"use strict";e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),r=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(var i in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var n=Object.getOwnPropertySymbols(e);if(1!==n.length||n[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(e,t);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},function(e,t,r){"use strict";e.exports=TypeError},function(e,t,r){"use strict";var i=r(132);if(i)try{i([],"length")}catch(e){i=null}e.exports=i},function(e,t,r){"use strict";e.exports="undefined"!=typeof Reflect&&Reflect.getPrototypeOf||null},function(e,t,r){"use strict";var i=r(46);e.exports=i.getPrototypeOf||null},function(e,t,r){"use strict";var i=r(38),n=r(66),o=r(47),a=r(138);e.exports=function(e){if(e.length<1||"function"!=typeof e[0])throw new n("a function is required");return a(i,o,e)}},function(e,t,r){"use strict";e.exports=Function.prototype.apply},function(e,t,r){(function(e){var i=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),r={},i=0;i<t.length;i++)r[t[i]]=Object.getOwnPropertyDescriptor(e,t[i]);return r},n=/%[sdj%]/g;t.format=function(e){if(!b(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(s(arguments[r]));return t.join(" ")}r=1;for(var i=arguments,o=i.length,a=String(e).replace(n,(function(e){if("%%"===e)return"%";if(r>=o)return e;switch(e){case"%s":return String(i[r++]);case"%d":return Number(i[r++]);case"%j":try{return JSON.stringify(i[r++])}catch(e){return"[Circular]"}default:return e}})),c=i[r];r<o;c=i[++r])g(c)||!S(c)?a+=" "+c:a+=" "+s(c);return a},t.deprecate=function(r,i){if(void 0!==e&&!0===e.noDeprecation)return r;if(void 0===e)return function(){return t.deprecate(r,i).apply(this,arguments)};var n=!1;return function(){if(!n){if(e.throwDeprecation)throw new Error(i);e.traceDeprecation?console.trace(i):console.error(i),n=!0}return r.apply(this,arguments)}};var o,a={};function s(e,r){var i={seen:[],stylize:u};return arguments.length>=3&&(i.depth=arguments[2]),arguments.length>=4&&(i.colors=arguments[3]),p(r)?i.showHidden=r:r&&t._extend(i,r),y(i.showHidden)&&(i.showHidden=!1),y(i.depth)&&(i.depth=2),y(i.colors)&&(i.colors=!1),y(i.customInspect)&&(i.customInspect=!0),i.colors&&(i.stylize=c),f(i,e,i.depth)}function c(e,t){var r=s.styles[t];return r?"["+s.colors[r][0]+"m"+e+"["+s.colors[r][1]+"m":e}function u(e,t){return e}function f(e,r,i){if(e.customInspect&&r&&I(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(i,e);return b(n)||(n=f(e,n,i)),n}var o=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(b(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(m(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,r);if(o)return o;var a=Object.keys(r),s=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(r)),w(r)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return h(r);if(0===a.length){if(I(r)){var c=r.name?": "+r.name:"";return e.stylize("[Function"+c+"]","special")}if(v(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(_(r))return e.stylize(Date.prototype.toString.call(r),"date");if(w(r))return h(r)}var u,S="",O=!1,A=["{","}"];(d(r)&&(O=!0,A=["[","]"]),I(r))&&(S=" [Function"+(r.name?": "+r.name:"")+"]");return v(r)&&(S=" "+RegExp.prototype.toString.call(r)),_(r)&&(S=" "+Date.prototype.toUTCString.call(r)),w(r)&&(S=" "+h(r)),0!==a.length||O&&0!=r.length?i<0?v(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),u=O?function(e,t,r,i,n){for(var o=[],a=0,s=t.length;a<s;++a)E(t,String(a))?o.push(l(e,t,r,i,String(a),!0)):o.push("");return n.forEach((function(n){n.match(/^\d+$/)||o.push(l(e,t,r,i,n,!0))})),o}(e,r,i,s,a):a.map((function(t){return l(e,r,i,s,t,O)})),e.seen.pop(),function(e,t,r){if(e.reduce((function(e,t){return t.indexOf("\n")>=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(u,S,A)):A[0]+S+A[1]}function h(e){return"["+Error.prototype.toString.call(e)+"]"}function l(e,t,r,i,n,o){var a,s,c;if((c=Object.getOwnPropertyDescriptor(t,n)||{value:t[n]}).get?s=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(s=e.stylize("[Setter]","special")),E(i,n)||(a="["+n+"]"),s||(e.seen.indexOf(c.value)<0?(s=g(r)?f(e,c.value,null):f(e,c.value,r-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),y(a)){if(o&&n.match(/^\d+$/))return s;(a=JSON.stringify(""+n)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function d(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function g(e){return null===e}function m(e){return"number"==typeof e}function b(e){return"string"==typeof e}function y(e){return void 0===e}function v(e){return S(e)&&"[object RegExp]"===O(e)}function S(e){return"object"==typeof e&&null!==e}function _(e){return S(e)&&"[object Date]"===O(e)}function w(e){return S(e)&&("[object Error]"===O(e)||e instanceof Error)}function I(e){return"function"==typeof e}function O(e){return Object.prototype.toString.call(e)}function A(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(r){if(y(o)&&(o=e.env.NODE_DEBUG||""),r=r.toUpperCase(),!a[r])if(new RegExp("\\b"+r+"\\b","i").test(o)){var i=e.pid;a[r]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",r,i,e)}}else a[r]=function(){};return a[r]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=d,t.isBoolean=p,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=b,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=y,t.isRegExp=v,t.isObject=S,t.isDate=_,t.isError=w,t.isFunction=I,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(141);var P=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function k(){var e=new Date,t=[A(e.getHours()),A(e.getMinutes()),A(e.getSeconds())].join(":");return[e.getDate(),P[e.getMonth()],t].join(" ")}function E(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",k(),t.format.apply(t,arguments))},t.inherits=r(23),t._extend=function(e,t){if(!t||!S(t))return e;for(var r=Object.keys(t),i=r.length;i--;)e[r[i]]=t[r[i]];return e};var x="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function T(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(x&&e[x]){var t;if("function"!=typeof(t=e[x]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,x,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,r,i=new Promise((function(e,i){t=e,r=i})),n=[],o=0;o<arguments.length;o++)n.push(arguments[o]);n.push((function(e,i){e?r(e):t(i)}));try{e.apply(this,n)}catch(e){r(e)}return i}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),x&&Object.defineProperty(t,x,{value:t,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(t,i(e))},t.promisify.custom=x,t.callbackify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');function r(){for(var r=[],i=0;i<arguments.length;i++)r.push(arguments[i]);var n=r.pop();if("function"!=typeof n)throw new TypeError("The last argument must be of type Function");var o=this,a=function(){return n.apply(o,arguments)};t.apply(this,r).then((function(t){e.nextTick(a,null,t)}),(function(t){e.nextTick(T,t,a)}))}return Object.setPrototypeOf(r,Object.getPrototypeOf(t)),Object.defineProperties(r,i(t)),r}}).call(this,r(18))},function(e,t){var r=Object.prototype.toString;function i(e){return"function"==typeof e.constructor?e.constructor.name:null}e.exports=function(e){if(void 0===e)return"undefined";if(null===e)return"null";var t=typeof e;if("boolean"===t)return"boolean";if("string"===t)return"string";if("number"===t)return"number";if("symbol"===t)return"symbol";if("function"===t)return"GeneratorFunction"===i(e)?"generatorfunction":"function";if(function(e){return Array.isArray?Array.isArray(e):e instanceof Array}(e))return"array";if(function(e){if(e.constructor&&"function"==typeof e.constructor.isBuffer)return e.constructor.isBuffer(e);return!1}(e))return"buffer";if(function(e){try{if("number"==typeof e.length&&"function"==typeof e.callee)return!0}catch(e){if(-1!==e.message.indexOf("callee"))return!0}return!1}(e))return"arguments";if(function(e){return e instanceof Date||"function"==typeof e.toDateString&&"function"==typeof e.getDate&&"function"==typeof e.setDate}(e))return"date";if(function(e){return e instanceof Error||"string"==typeof e.message&&e.constructor&&"number"==typeof e.constructor.stackTraceLimit}(e))return"error";if(function(e){return e instanceof RegExp||"string"==typeof e.flags&&"boolean"==typeof e.ignoreCase&&"boolean"==typeof e.multiline&&"boolean"==typeof e.global}(e))return"regexp";switch(i(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(function(e){return"function"==typeof e.throw&&"function"==typeof e.return&&"function"==typeof e.next}(e))return"generator";switch(t=r.call(e)){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return t.slice(8,-1).toLowerCase().replace(/\s/g,"")}},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(0),a=r(11),s=r(7),c=r(19),u=r(16),f=r(30),h=r(6),l=r(5),d=r(20),p=r(27),g=r(75),m=r(50),b=m.PublicKeyHash,y=m.PublicKey,v=m.MultiSigScriptHash,S=m.MultiSig,_=r(21),w=r(13),I=r(36),O=r(4),A=r(49).SCRIPT_ENABLE_SIGHASH_FORKID;function P(e){if(!(this instanceof P))return new P(e);if(this.inputs=[],this.outputs=[],this._inputAmount=void 0,this._outputAmount=void 0,e){if(e instanceof P)return P.shallowCopy(e);if(s.isHexa(e))this.fromString(e);else if(t.isBuffer(e))this.fromBuffer(e);else{if(!i.isObject(e))throw new a.InvalidArgument("Must provide an object or string to deserialize a transaction");this.fromObject(e)}}else this._newTransaction()}P.DUST_AMOUNT=546,P.FEE_SECURITY_MARGIN=150,P.MAX_MONEY=21e14,P.NLOCKTIME_BLOCKHEIGHT_LIMIT=5e8,P.NLOCKTIME_MAX_VALUE=4294967295,P.FEE_PER_KB=500,P.CHANGE_OUTPUT_MAX_SIZE=62,P.shallowCopy=function(e){return new P(e.toBuffer())};var k={configurable:!1,enumerable:!0,get:function(){return this._hash=new c(this._getHash()).readReverse().toString("hex"),this._hash}};Object.defineProperty(P.prototype,"hash",k),Object.defineProperty(P.prototype,"id",k);var E={configurable:!1,enumerable:!0,get:function(){return this._getInputAmount()}};Object.defineProperty(P.prototype,"inputAmount",E),E.get=function(){return this._getOutputAmount()},Object.defineProperty(P.prototype,"outputAmount",E),P.prototype._getHash=function(){return h.sha256sha256(this.toBuffer())},P.prototype.serialize=function(e){return!0===e||e&&e.disableAll?this.uncheckedSerialize():this.checkedSerialize(e)},P.prototype.uncheckedSerialize=P.prototype.toString=function(){return this.toBuffer().toString("hex")},P.prototype.checkedSerialize=function(e){var t=this.getSerializationError(e);if(t)throw t.message+=" - For more information please see: https://bsv.io/api/lib/transaction#serialization-checks",t;return this.uncheckedSerialize()},P.prototype.invalidSatoshis=function(){for(var e=!1,t=0;t<this.outputs.length;t++)this.outputs[t].invalidSatoshis()&&(e=!0);return e},P.prototype.getSerializationError=function(e){if(e=e||{},this.invalidSatoshis())return new a.Transaction.InvalidSatoshis;var t,r=this._getUnspentValue();return r<0?e.disableMoreOutputThanInput||(t=new a.Transaction.InvalidOutputAmountSum):t=this._hasFeeError(e,r),t||this._hasDustOutputs(e)||this._isMissingSignatures(e)},P.prototype._hasFeeError=function(e,t){if(!i.isUndefined(this._fee)&&this._fee!==t)return new a.Transaction.FeeError.Different("Unspent value is "+t+" but specified fee is "+this._fee);if(!e.disableLargeFees){var r=Math.floor(P.FEE_SECURITY_MARGIN*this._estimateFee());if(t>r)return this._missingChange()?new a.Transaction.ChangeAddressMissing("Fee is too large and no change address was provided"):new a.Transaction.FeeError.TooLarge("expected less than "+r+" but got "+t)}},P.prototype._missingChange=function(){return!this._changeScript},P.prototype._hasDustOutputs=function(e){var t,r;if(!e.disableDustOutputs)for(t in this.outputs)if((r=this.outputs[t]).satoshis<P.DUST_AMOUNT&&!r.script.isDataOut()&&!r.script.isSafeDataOut())return new a.Transaction.DustOutputs},P.prototype._isMissingSignatures=function(e){if(!e.disableIsFullySigned)return this.isFullySigned()?void 0:new a.Transaction.MissingSignatures},P.prototype.inspect=function(){return"<Transaction: "+this.uncheckedSerialize()+">"},P.prototype.toBuffer=function(){var e=new u;return this.toBufferWriter(e).toBuffer()},P.prototype.toBufferWriter=function(e){return e.writeInt32LE(this.version),e.writeVarintNum(this.inputs.length),i.each(this.inputs,(function(t){t.toBufferWriter(e)})),e.writeVarintNum(this.outputs.length),i.each(this.outputs,(function(t){t.toBufferWriter(e)})),e.writeUInt32LE(this.nLockTime),e},P.prototype.fromBuffer=function(e){var t=new c(e);return this.fromBufferReader(t)},P.prototype.fromBufferReader=function(e){var t,r,i;for(n.checkArgument(!e.finished(),"No transaction data received"),this.version=e.readInt32LE(),r=e.readVarintNum(),t=0;t<r;t++){var o=m.fromBufferReader(e);this.inputs.push(o)}for(i=e.readVarintNum(),t=0;t<i;t++)this.outputs.push(_.fromBufferReader(e));return this.nLockTime=e.readUInt32LE(),this},P.prototype.toObject=P.prototype.toJSON=function(){var e=[];this.inputs.forEach((function(t){e.push(t.toObject())}));var t=[];this.outputs.forEach((function(e){t.push(e.toObject())}));var r={hash:this.hash,version:this.version,inputs:e,outputs:t,nLockTime:this.nLockTime};return this._changeScript&&(r.changeScript=this._changeScript.toString()),i.isUndefined(this._changeIndex)||(r.changeIndex=this._changeIndex),i.isUndefined(this._fee)||(r.fee=this._fee),r},P.prototype.fromObject=function(e){n.checkArgument(i.isObject(e)||e instanceof P);var t,r=this;return t=e instanceof P?t.toObject():e,i.each(t.inputs,(function(e){if(e.output&&e.output.script){var t,i=new w(e.output.script);if(i.isPublicKeyHashOut())t=new m.PublicKeyHash(e);else if(i.isScriptHashOut()&&e.publicKeys&&e.threshold)t=new m.MultiSigScriptHash(e,e.publicKeys,e.threshold,e.signatures);else{if(!i.isPublicKeyOut())throw new a.Transaction.Input.UnsupportedScript(e.output.script);t=new m.PublicKey(e)}r.addInput(t)}else r.uncheckedAddInput(new m(e))})),i.each(t.outputs,(function(e){r.addOutput(new _(e))})),t.changeIndex&&(this._changeIndex=t.changeIndex),t.changeScript&&(this._changeScript=new w(t.changeScript)),t.fee&&(this._fee=t.fee),this.nLockTime=t.nLockTime,this.version=t.version,this._checkConsistency(e),this},P.prototype._checkConsistency=function(e){i.isUndefined(this._changeIndex)||(n.checkState(this._changeScript,"Change script is expected."),n.checkState(this.outputs[this._changeIndex],"Change index points to undefined output."),n.checkState(this.outputs[this._changeIndex].script.toString()===this._changeScript.toString(),"Change output has an unexpected script.")),e&&e.hash&&n.checkState(e.hash===this.hash,"Hash in object does not match transaction hash.")},P.prototype.lockUntilDate=function(e){if(n.checkArgument(e),i.isNumber(e)&&e<P.NLOCKTIME_BLOCKHEIGHT_LIMIT)throw new a.Transaction.LockTimeTooEarly;i.isDate(e)&&(e=e.getTime()/1e3);for(var t=0;t<this.inputs.length;t++)this.inputs[t].sequenceNumber===m.DEFAULT_SEQNUMBER&&(this.inputs[t].sequenceNumber=m.DEFAULT_LOCKTIME_SEQNUMBER);return this.nLockTime=e,this},P.prototype.lockUntilBlockHeight=function(e){if(n.checkArgument(i.isNumber(e)),e>=P.NLOCKTIME_BLOCKHEIGHT_LIMIT)throw new a.Transaction.BlockHeightTooHigh;if(e<0)throw new a.Transaction.NLockTimeOutOfRange;for(var t=0;t<this.inputs.length;t++)this.inputs[t].sequenceNumber===m.DEFAULT_SEQNUMBER&&(this.inputs[t].sequenceNumber=m.DEFAULT_LOCKTIME_SEQNUMBER);return this.nLockTime=e,this},P.prototype.getLockTime=function(){return this.nLockTime?this.nLockTime<P.NLOCKTIME_BLOCKHEIGHT_LIMIT?this.nLockTime:new Date(1e3*this.nLockTime):null},P.prototype.fromString=function(e){this.fromBuffer(o.Buffer.from(e,"hex"))},P.prototype._newTransaction=function(){this.version=1,this.nLockTime=0},P.prototype.from=function(e,t,r){if(i.isArray(e)){var n=this;return i.each(e,(function(e){n.from(e,t,r)})),this}return i.some(this.inputs,(function(t){return t.prevTxId.toString("hex")===e.txId&&t.outputIndex===e.outputIndex}))||(t&&r?this._fromMultisigUtxo(e,t,r):this._fromNonP2SH(e)),this},P.prototype._fromNonP2SH=function(e){var t;t=(e=new g(e)).script.isPublicKeyHashOut()?b:e.script.isPublicKeyOut()?y:m,this.addInput(new t({output:new _({script:e.script,satoshis:e.satoshis}),prevTxId:e.txId,outputIndex:e.outputIndex,script:w.empty()}))},P.prototype._fromMultisigUtxo=function(e,t,r){var i;if(n.checkArgument(r<=t.length,"Number of required signatures must be greater than the number of public keys"),(e=new g(e)).script.isMultisigOut())i=S;else{if(!e.script.isScriptHashOut())throw new Error("@TODO");i=v}this.addInput(new i({output:new _({script:e.script,satoshis:e.satoshis}),prevTxId:e.txId,outputIndex:e.outputIndex,script:w.empty()},t,r))},P.prototype.addInput=function(e,t,r){if(n.checkArgumentType(e,m,"input"),!e.output&&(i.isUndefined(t)||i.isUndefined(r)))throw new a.Transaction.NeedMoreInfo("Need information about the UTXO script and satoshis");return e.output||!t||i.isUndefined(r)||(t=t instanceof w?t:new w(t),n.checkArgumentType(r,"number","satoshis"),e.output=new _({script:t,satoshis:r})),this.uncheckedAddInput(e)},P.prototype.uncheckedAddInput=function(e){return n.checkArgumentType(e,m,"input"),this.inputs.push(e),this._inputAmount=void 0,this._updateChangeOutput(),this},P.prototype.hasAllUtxoInfo=function(){return i.every(this.inputs.map((function(e){return!!e.output})))},P.prototype.fee=function(e){return n.checkArgument(i.isNumber(e),"amount must be a number"),this._fee=e,this._updateChangeOutput(),this},P.prototype.feePerKb=function(e){return n.checkArgument(i.isNumber(e),"amount must be a number"),this._feePerKb=e,this._updateChangeOutput(),this},P.prototype.change=function(e){return n.checkArgument(e,"address is required"),this._changeScript=w.fromAddress(e),this._updateChangeOutput(),this},P.prototype.getChangeOutput=function(){return i.isUndefined(this._changeIndex)?null:this.outputs[this._changeIndex]},P.prototype.to=function(e,t){if(i.isArray(e)){var r=this;return i.each(e,(function(e){r.to(e.address,e.satoshis)})),this}return n.checkArgument(s.isNaturalNumber(t),"Amount is expected to be a positive integer"),this.addOutput(new _({script:w(new p(e)),satoshis:t})),this},P.prototype.addData=function(e){return this.addOutput(new _({script:w.buildDataOut(e),satoshis:0})),this},P.prototype.addSafeData=function(e){return this.addOutput(new _({script:w.buildSafeDataOut(e),satoshis:0})),this},P.prototype.addOutput=function(e){return n.checkArgumentType(e,_,"output"),this._addOutput(e),this._updateChangeOutput(),this},P.prototype.clearOutputs=function(){return this.outputs=[],this._clearSignatures(),this._outputAmount=void 0,this._changeIndex=void 0,this._updateChangeOutput(),this},P.prototype._addOutput=function(e){this.outputs.push(e),this._outputAmount=void 0},P.prototype._getOutputAmount=function(){if(i.isUndefined(this._outputAmount)){var e=this;this._outputAmount=0,i.each(this.outputs,(function(t){e._outputAmount+=t.satoshis}))}return this._outputAmount},P.prototype._getInputAmount=function(){if(i.isUndefined(this._inputAmount)){var e=this;this._inputAmount=0,i.each(this.inputs,(function(t){if(i.isUndefined(t.output))throw new a.Transaction.Input.MissingPreviousOutput;e._inputAmount+=t.output.satoshis}))}return this._inputAmount},P.prototype._updateChangeOutput=function(){if(this._changeScript){this._clearSignatures(),i.isUndefined(this._changeIndex)||this._removeOutput(this._changeIndex),this._changeIndex=this.outputs.length,this._addOutput(new _({script:this._changeScript,satoshis:0}));var e=this._getUnspentValue()-this.getFee();this._removeOutput(this._changeIndex),this._changeIndex=void 0,e>=P.DUST_AMOUNT&&(this._changeIndex=this.outputs.length,this._addOutput(new _({script:this._changeScript,satoshis:e})))}},P.prototype.getFee=function(){return this.isCoinbase()?0:i.isUndefined(this._fee)?this._changeScript?this._estimateFee():this._getUnspentValue():this._fee},P.prototype._estimateFee=function(){var e=this._estimateSize();return Math.ceil(e/1e3*(this._feePerKb||P.FEE_PER_KB))},P.prototype._getUnspentValue=function(){return this._getInputAmount()-this._getOutputAmount()},P.prototype._clearSignatures=function(){i.each(this.inputs,(function(e){e.clearSignatures()}))},P.prototype._estimateSize=function(){var e=8;return e+=f(this.inputs.length).toBuffer().length,e+=f(this.outputs.length).toBuffer().length,i.each(this.inputs,(function(t){e+=t._estimateSize()})),i.each(this.outputs,(function(t){e+=t.getSize()})),e},P.prototype._removeOutput=function(e){var t=this.outputs[e];this.outputs=i.without(this.outputs,t),this._outputAmount=void 0},P.prototype.removeOutput=function(e){this._removeOutput(e),this._updateChangeOutput()},P.prototype.sort=function(){return this.sortInputs((function(e){var t=Array.prototype.concat.apply([],e);return t.sort((function(e,t){return e.prevTxId.compare(t.prevTxId)||e.outputIndex-t.outputIndex})),t})),this.sortOutputs((function(e){var t=Array.prototype.concat.apply([],e);return t.sort((function(e,t){return e.satoshis-t.satoshis||e.script.toBuffer().compare(t.script.toBuffer())})),t})),this},P.prototype.shuffleOutputs=function(){return this.sortOutputs(i.shuffle)},P.prototype.sortOutputs=function(e){var t=e(this.outputs);return this._newOutputOrder(t)},P.prototype.sortInputs=function(e){return this.inputs=e(this.inputs),this._clearSignatures(),this},P.prototype._newOutputOrder=function(e){if(this.outputs.length!==e.length||0!==i.difference(this.outputs,e).length)throw new a.Transaction.InvalidSorting;if(!i.isUndefined(this._changeIndex)){var t=this.outputs[this._changeIndex];this._changeIndex=e.indexOf(t)}return this.outputs=e,this},P.prototype.removeInput=function(e,t){var r;if((r=!t&&i.isNumber(e)?e:i.findIndex(this.inputs,(function(r){return r.prevTxId.toString("hex")===e&&r.outputIndex===t})))<0||r>=this.inputs.length)throw new a.Transaction.InvalidIndex(r,this.inputs.length);var n=this.inputs[r];this.inputs=i.without(this.inputs,n),this._inputAmount=void 0,this._updateChangeOutput()},P.prototype.sign=function(e,t){n.checkState(this.hasAllUtxoInfo(),"Not all utxo information is available to sign the transaction.");var r=this;return i.isArray(e)?(i.each(e,(function(e){r.sign(e,t)})),this):(i.each(this.getSignatures(e,t),(function(e){r.applySignature(e)})),this)},P.prototype.getSignatures=function(e,t){e=new I(e),t=t||l.SIGHASH_ALL|l.SIGHASH_FORKID;var r=this,n=[],o=h.sha256ripemd160(e.publicKey.toBuffer());return i.each(this.inputs,(function(a,s){i.each(a.getSignatures(r,e,s,t,o),(function(e){n.push(e)}))})),n},P.prototype.applySignature=function(e){return this.inputs[e.inputIndex].addSignature(this,e),this},P.prototype.isFullySigned=function(){return i.each(this.inputs,(function(e){if(e.isFullySigned===m.prototype.isFullySigned)throw new a.Transaction.UnableToVerifySignature("Unrecognized script kind, or not enough information to execute script.This usually happens when creating a transaction from a serialized transaction")})),i.every(i.map(this.inputs,(function(e){return e.isFullySigned()})))},P.prototype.isValidSignature=function(e){if(this.inputs[e.inputIndex].isValidSignature===m.prototype.isValidSignature)throw new a.Transaction.UnableToVerifySignature("Unrecognized script kind, or not enough information to execute script.This usually happens when creating a transaction from a serialized transaction");return this.inputs[e.inputIndex].isValidSignature(this,e)},P.prototype.verifySignature=function(e,t,r,i,n,o){return d.verify(this,e,t,r,i,n,o)},P.prototype.verify=function(){if(0===this.inputs.length)return"transaction txins empty";if(0===this.outputs.length)return"transaction txouts empty";for(var e=new O(0),t=0;t<this.outputs.length;t++){var r=this.outputs[t];if(r.invalidSatoshis())return"transaction txout "+t+" satoshis is invalid";if(r._satoshisBN.gt(new O(P.MAX_MONEY,10)))return"transaction txout "+t+" greater than MAX_MONEY";if((e=e.add(r._satoshisBN)).gt(new O(P.MAX_MONEY)))return"transaction txout "+t+" total output greater than MAX_MONEY"}if(this.toBuffer().length>1e6)return"transaction over the maximum block size";var n={};for(t=0;t<this.inputs.length;t++){var o=this.inputs[t],a=o.prevTxId+":"+o.outputIndex;if(!i.isUndefined(n[a]))return"transaction input "+t+" duplicate input";n[a]=!0}if(this.isCoinbase()){var s=this.inputs[0]._scriptBuffer;if(s.length<2||s.length>100)return"coinbase transaction script size invalid"}else for(t=0;t<this.inputs.length;t++)if(this.inputs[t].isNull())return"transaction input "+t+" has null input";return!0},P.prototype.isCoinbase=function(){return 1===this.inputs.length&&this.inputs[0].isNull()},P.prototype.sighash=function(e,t,r,i,n){t=t||l.SIGHASH_ALL|l.SIGHASH_FORKID;var o=this.inputs[e];if(!o)throw new Error("Input index "+e+" does not exist");return!r&&o.output&&(r=o.output.script),!i&&o.output&&(i=new O(o.output.satoshis)),n=n||A,d.sighash(this,t,e,r,i,n)},e.exports=P}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(2),n=r(3),o=r(7),a=r(13),s=r(27);function c(e){if(!(this instanceof c))return new c(e);n.checkArgument(i.isObject(e),"Must provide an object from where to extract data");var t=e.address?new s(e.address):void 0,r=e.txid?e.txid:e.txId;if(!r||!o.isHexaString(r)||r.length>64)throw new Error("Invalid TXID in object",e);var u=i.isUndefined(e.vout)?e.outputIndex:e.vout;if(!i.isNumber(u))throw new Error("Invalid outputIndex, received "+u);n.checkArgument(!i.isUndefined(e.scriptPubKey)||!i.isUndefined(e.script),"Must provide the scriptPubKey for that output!");var f=new a(e.scriptPubKey||e.script);n.checkArgument(!i.isUndefined(e.amount)||!i.isUndefined(e.satoshis),"Must provide an amount for the output");var h=i.isUndefined(e.amount)?e.satoshis:Math.round(1e8*e.amount);n.checkArgument(i.isNumber(h),"Amount must be a number"),o.defineImmutable(this,{address:t,txId:r,outputIndex:u,script:f,satoshis:h})}c.prototype.inspect=function(){return"<UnspentOutput: "+this.txId+":"+this.outputIndex+", satoshis: "+this.satoshis+", address: "+this.address+">"},c.prototype.toString=function(){return this.txId+":"+this.outputIndex},c.fromObject=function(e){return new c(e)},c.prototype.toObject=c.prototype.toJSON=function(){return{address:this.address?this.address.toString():void 0,txid:this.txId,vout:this.outputIndex,scriptPubKey:this.script.toBuffer().toString("hex"),amount:Number.parseFloat((this.satoshis/1e8).toFixed(8))}},e.exports=c},function(e,t,r){"use strict";(function(t){var i=r(4),n=r(33),o=(r(6),r(2),new i(2147483647));function a(e){return this instanceof a?(this.options=e||{},this):new a(e)}a.split=function(e,r,i,n){if(n=n||{},!e)throw new Error("Secret is required");if(r<2)throw new Error("Threshold must be at least 2");if(i<r)throw new Error("Number of shares must be at least threshold");if(r>255||i>255)throw new Error("Threshold and shares must be <= 255");for(var o=t.isBuffer(e)?e:t.from(e,"utf8"),s=[],c=0;c<o.length;c++){var u=o[c],f=a._splitByte(u,r,i);s.push(f)}for(var h=[],l=0;l<i;l++){for(var d={id:l+1,threshold:r,shares:i,length:o.length,bytes:[]},p=0;p<s.length;p++)d.bytes.push(s[p][l]);h.push(d)}return h},a.combine=function(e){if(!e||0===e.length)throw new Error("Shares array is required");var r=e[0].threshold,i=e[0].shares,n=e[0].length;if(e.length<r)throw new Error("Insufficient shares: need "+r+", got "+e.length);for(var o=0;o<e.length;o++){if(e[o].threshold!==r||e[o].shares!==i)throw new Error("Shares have inconsistent parameters");if(e[o].length!==n)throw new Error("Shares have different secret lengths")}for(var s=[],c=0;c<n;c++){for(var u=[],f=0;f<Math.min(e.length,r);f++)u.push(e[f].bytes[c]);var h=a._combineByte(u);s.push(h)}return t.from(s)},a._splitByte=function(e,t,r){for(var n=[new i(e)],o=1;o<t;o++){var s=a._randomFieldElement();n.push(s)}for(var c=[],u=1;u<=r;u++){var f=a._evaluatePolynomial(n,new i(u));c.push({x:u,y:f.toString(16)})}return c},a._combineByte=function(e){if(0===e.length)throw new Error("No shares provided");for(var t=new i(0),r=0;r<e.length;r++){for(var n=new i(e[r].x),s=new i(e[r].y,16),c=new i(1),u=new i(1),f=0;f<e.length;f++)if(r!==f){var h=new i(e[f].x),l=new i(0).sub(h);l.lt(new i(0))&&(l=l.add(o)),c=c.mul(l).mod(o);var d=n.sub(h);d.lt(new i(0))&&(d=d.add(o)),u=u.mul(d).mod(o)}var p=a._modInverse(u,o),g=c.mul(p).mod(o);t=t.add(s.mul(g)).mod(o)}return t.mod(o).mod(new i(256)).toNumber()},a._evaluatePolynomial=function(e,t){for(var r=new i(0),n=new i(1),a=0;a<e.length;a++)r=r.add(e[a].mul(n)).mod(o),n=n.mul(t).mod(o);return r},a._randomFieldElement=function(){var e=n.getRandomBuffer(32);return new i(e).mod(o.sub(new i(1))).add(new i(1))},a._modInverse=function(e,t){e.lt(new i(0))&&(e=e.mod(t).add(t));var r=a._extendedGCD(e,t);if(!r.gcd.eq(new i(1)))throw new Error("Modular inverse does not exist");return r.x.mod(t).add(t).mod(t)},a._extendedGCD=function(e,t){if(e.eq(new i(0)))return{gcd:t,x:new i(0),y:new i(1)};var r=a._extendedGCD(t.mod(e),e);return{gcd:r.gcd,x:r.y.sub(t.div(e).mul(r.x)),y:r.x}},a.verifyShare=function(e){try{if(!e||"object"!=typeof e)return!1;if(!(e.id&&e.threshold&&e.shares&&e.bytes&&"number"==typeof e.length))return!1;if(e.threshold<2||e.shares<e.threshold)return!1;if(!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.x||!r.y)return!1;if(r.x<1||r.x>e.shares)return!1;try{var n=r.y;if(!/^[0-9a-fA-F]+$/.test(n))return!1;new i(n,16)}catch(e){return!1}}return!0}catch(e){return!1}},a.generateTestVectors=function(){var e="Hello, Bitcoin SV!",t=a.split(e,3,5),r=a.combine(t.slice(0,3));return{secret:e,threshold:3,totalShares:5,shares:t,reconstructed:r.toString("utf8"),valid:r.toString("utf8")===e}},e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(39),o=r(19),a=r(16),s=r(6),c=r(25),u=r(11),f=r(3);function h(e){if(!(this instanceof h))return new h(e);var r={};if(t.isBuffer(e))r=h._fromBufferReader(o(e));else{if(!i.isObject(e))throw new TypeError("Unrecognized argument for MerkleBlock");r={header:e.header instanceof n?e.header:n.fromObject(e.header),numTransactions:e.numTransactions,hashes:e.hashes,flags:e.flags}}return i.extend(this,r),this._flagBitsUsed=0,this._hashesUsed=0,this}h.fromBuffer=function(e){return h.fromBufferReader(o(e))},h.fromBufferReader=function(e){return new h(h._fromBufferReader(e))},h.prototype.toBuffer=function(){return this.toBufferWriter().concat()},h.prototype.toBufferWriter=function(e){e||(e=new a),e.write(this.header.toBuffer()),e.writeUInt32LE(this.numTransactions),e.writeVarintNum(this.hashes.length);for(var r=0;r<this.hashes.length;r++)e.write(t.from(this.hashes[r],"hex"));for(e.writeVarintNum(this.flags.length),r=0;r<this.flags.length;r++)e.writeUInt8(this.flags[r]);return e},h.prototype.toObject=h.prototype.toJSON=function(){return{header:this.header.toObject(),numTransactions:this.numTransactions,hashes:this.hashes,flags:this.flags}},h.prototype.validMerkleTree=function(){if(f.checkState(i.isArray(this.flags),"MerkleBlock flags is not an array"),f.checkState(i.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions)return!1;if(8*this.flags.length<this.hashes.length)return!1;var e=this._calcTreeHeight(),t={hashesUsed:0,flagBitsUsed:0},r=this._traverseMerkleTree(e,0,t);return t.hashesUsed===this.hashes.length&&r.equals(this.header.merkleRoot)},h.prototype.filterdTxsHash=function(){throw new Error("filterdTxsHash has been deprecated. use filteredTxsHash.")},h.prototype.filteredTxsHash=function(){if(f.checkState(i.isArray(this.flags),"MerkleBlock flags is not an array"),f.checkState(i.isArray(this.hashes),"MerkleBlock hashes is not an array"),this.hashes.length>this.numTransactions)throw new u.MerkleBlock.InvalidMerkleTree;if(8*this.flags.length<this.hashes.length)throw new u.MerkleBlock.InvalidMerkleTree;if(1===this.hashes.length)return[];var e=this._calcTreeHeight(),t={hashesUsed:0,flagBitsUsed:0},r=this._traverseMerkleTree(e,0,t,!0);if(t.hashesUsed!==this.hashes.length)throw new u.MerkleBlock.InvalidMerkleTree;return r},h.prototype._traverseMerkleTree=function(e,r,i,n){if((i=i||{}).txs=i.txs||[],i.flagBitsUsed=i.flagBitsUsed||0,i.hashesUsed=i.hashesUsed||0,n=n||!1,i.flagBitsUsed>8*this.flags.length)return null;var o=this.flags[i.flagBitsUsed>>3]>>>(7&i.flagBitsUsed++)&1;if(0!==e&&o){var a=this._traverseMerkleTree(e-1,2*r,i),c=a;return 2*r+1<this._calcTreeWidth(e-1)&&(c=this._traverseMerkleTree(e-1,2*r+1,i)),n?i.txs:s.sha256sha256(t.concat([a,c]))}if(i.hashesUsed>=this.hashes.length)return null;var u=this.hashes[i.hashesUsed++];return 0===e&&o&&i.txs.push(u),t.from(u,"hex")},h.prototype._calcTreeWidth=function(e){return this.numTransactions+(1<<e)-1>>e},h.prototype._calcTreeHeight=function(){for(var e=0;this._calcTreeWidth(e)>1;)e++;return e},h.prototype.hasTransaction=function(e){f.checkArgument(!i.isUndefined(e),"tx cannot be undefined"),f.checkArgument(e instanceof c||"string"==typeof e,'Invalid tx given, tx must be a "string" or "Transaction"');var r=e;e instanceof c&&(r=t.from(e.id,"hex").reverse().toString("hex"));var n=[],o=this._calcTreeHeight();return this._traverseMerkleTree(o,0,{txs:n}),-1!==n.indexOf(r)},h._fromBufferReader=function(e){f.checkState(!e.finished(),"No merkleblock data received");var t={};t.header=n.fromBufferReader(e),t.numTransactions=e.readUInt32LE();var r=e.readVarintNum();t.hashes=[];for(var i=0;i<r;i++)t.hashes.push(e.read(32).toString("hex"));var o=e.readVarintNum();for(t.flags=[],i=0;i<o;i++)t.flags.push(e.readUInt8());return t},h.fromObject=function(e){return new h(e)},e.exports=h}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(45),n=r(0),o=r(2),a=r(3),s=r(4),c=r(37),u=r(29),f=r(6),h=r(24),l=r(12),d=r(36),p=r(33),g=r(11),m=g.HDPrivateKey,b=r(7);function y(e){if(e instanceof y)return e;if(!(this instanceof y))return new y(e);if(!e)return this._generateRandomly();if(h.get(e))return this._generateRandomly(e);if(o.isString(e)||t.isBuffer(e))if(y.isValidSerialized(e))this._buildFromSerialized(e);else if(b.isValidJSON(e))this._buildFromJSON(e);else{if(!t.isBuffer(e)||!y.isValidSerialized(e.toString()))throw y.getSerializedError(e);this._buildFromSerialized(e.toString())}else{if(!o.isObject(e))throw new m.UnrecognizedArgument(e);this._buildFromObject(e)}}y.fromRandom=function(){return new y},y.isValidPath=function(e,t){if(o.isString(e)){var r=y._getDerivationIndexes(e);return null!==r&&o.every(r,y.isValidPath)}return!!o.isNumber(e)&&(e<y.Hardened&&!0===t&&(e+=y.Hardened),e>=0&&e<y.MaxIndex)},y._getDerivationIndexes=function(e){var t=e.split("/");if(o.includes(y.RootElementAlias,e))return[];if(!o.includes(y.RootElementAlias,t[0]))return null;var r=t.slice(1).map((function(e){var t="'"===e.slice(-1);if(t&&(e=e.slice(0,-1)),!e||"-"===e[0])return NaN;var r=+e;return t&&(r+=y.Hardened),r}));return o.some(r,isNaN)?null:r},y.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")},y.prototype.deriveChild=function(e,t){if(o.isNumber(e))return this._deriveWithNumber(e,t);if(o.isString(e))return this._deriveFromString(e);throw new m.InvalidDerivationArgument(e)},y.prototype.deriveNonCompliantChild=function(e,t){if(o.isNumber(e))return this._deriveWithNumber(e,t,!0);if(o.isString(e))return this._deriveFromString(e,!0);throw new m.InvalidDerivationArgument(e)},y.prototype._deriveWithNumber=function(e,r,o){if(!y.isValidPath(e,r))throw new m.InvalidPath(e);r=e>=y.Hardened||r,e<y.Hardened&&!0===r&&(e+=y.Hardened);var a,c=b.integerAsBuffer(e);if(r&&o){var u=this.privateKey.bn.toBuffer();a=t.concat([n.Buffer.from([0]),u,c])}else if(r){var h=this.privateKey.bn.toBuffer({size:32});i(32===h.length,"length of private key buffer is expected to be 32 bytes"),a=t.concat([n.Buffer.from([0]),h,c])}else a=t.concat([this.publicKey.toBuffer(),c]);var p=f.sha512hmac(a,this._buffers.chainCode),g=s.fromBuffer(p.slice(0,32),{size:32}),v=p.slice(32,64),S=g.add(this.privateKey.toBigNumber()).umod(l.getN()).toBuffer({size:32});return d.isValid(S)?new y({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:v,privateKey:S}):this._deriveWithNumber(e+1,null,o)},y.prototype._deriveFromString=function(e,t){if(!y.isValidPath(e))throw new m.InvalidPath(e);return y._getDerivationIndexes(e).reduce((function(e,r){return e._deriveWithNumber(r,null,t)}),this)},y.isValidSerialized=function(e,t){return!y.getSerializedError(e,t)},y.getSerializedError=function(e,r){if(!o.isString(e)&&!t.isBuffer(e))return new m.UnrecognizedArgument("Expected string or buffer");if(!c.validCharacters(e))return new g.InvalidB58Char("(unknown)",e);try{e=u.decode(e)}catch(t){return new g.InvalidB58Checksum(e)}if(e.length!==y.DataLength)return new m.InvalidLength(e);if(!o.isUndefined(r)){var i=y._validateNetwork(e,r);if(i)return i}return null},y._validateNetwork=function(e,t){var r=h.get(t);if(!r)return new g.InvalidNetworkArgument(t);var i=e.slice(0,4);return i.readUInt32BE(0)!==r.xprivkey?new g.InvalidNetwork(i):null},y.fromString=function(e){return a.checkArgument(o.isString(e),"No valid string was provided"),new y(e)},y.fromObject=function(e){return a.checkArgument(o.isObject(e),"No valid argument was provided"),new y(e)},y.prototype._buildFromJSON=function(e){return this._buildFromObject(JSON.parse(e))},y.prototype._buildFromObject=function(e){var r={version:e.network?b.integerAsBuffer(h.get(e.network).xprivkey):e.version,depth:o.isNumber(e.depth)?t.from([255&e.depth]):e.depth,parentFingerPrint:o.isNumber(e.parentFingerPrint)?b.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:o.isNumber(e.childIndex)?b.integerAsBuffer(e.childIndex):e.childIndex,chainCode:o.isString(e.chainCode)?t.from(e.chainCode,"hex"):e.chainCode,privateKey:o.isString(e.privateKey)&&b.isHexa(e.privateKey)?t.from(e.privateKey,"hex"):e.privateKey,checksum:e.checksum?e.checksum.length?e.checksum:b.integerAsBuffer(e.checksum):void 0};return this._buildFromBuffers(r)},y.prototype._buildFromSerialized=function(e){var t=u.decode(e),r={version:t.slice(y.VersionStart,y.VersionEnd),depth:t.slice(y.DepthStart,y.DepthEnd),parentFingerPrint:t.slice(y.ParentFingerPrintStart,y.ParentFingerPrintEnd),childIndex:t.slice(y.ChildIndexStart,y.ChildIndexEnd),chainCode:t.slice(y.ChainCodeStart,y.ChainCodeEnd),privateKey:t.slice(y.PrivateKeyStart,y.PrivateKeyEnd),checksum:t.slice(y.ChecksumStart,y.ChecksumEnd),xprivkey:e};return this._buildFromBuffers(r)},y.prototype._generateRandomly=function(e){return y.fromSeed(p.getRandomBuffer(64),e)},y.fromSeed=function(e,r){if(b.isHexaString(e)&&(e=t.from(e,"hex")),!t.isBuffer(e))throw new m.InvalidEntropyArgument(e);if(e.length<16)throw new m.InvalidEntropyArgument.NotEnoughEntropy(e);if(e.length>64)throw new m.InvalidEntropyArgument.TooMuchEntropy(e);var i=f.sha512hmac(e,n.Buffer.from("Bitcoin seed"));return new y({network:h.get(r)||h.defaultNetwork,depth:0,parentFingerPrint:0,childIndex:0,privateKey:i.slice(0,32),chainCode:i.slice(32,64)})},y.prototype._calcHDPublicKey=function(){if(!this._hdPublicKey){var e=r(79);this._hdPublicKey=new e(this)}},y.prototype._buildFromBuffers=function(e){y._validateBufferArguments(e),b.defineImmutable(this,{_buffers:e});var r=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,t.alloc(1),e.privateKey],i=n.Buffer.concat(r);if(e.checksum&&e.checksum.length){if(e.checksum.toString()!==u.checksum(i).toString())throw new g.InvalidB58Checksum(i)}else e.checksum=u.checksum(i);var o,a=h.get(e.version.readUInt32BE(0));o=u.encode(n.Buffer.concat(r)),e.xprivkey=t.from(o);var c=new d(s.fromBuffer(e.privateKey),a),l=c.toPublicKey(),p=y.ParentFingerPrintSize,m=f.sha256ripemd160(l.toBuffer()).slice(0,p);return b.defineImmutable(this,{xprivkey:o,network:a,depth:e.depth[0],privateKey:c,publicKey:l,fingerPrint:m}),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},y._validateBufferArguments=function(e){var r=function(r,n){var o=e[r];i(t.isBuffer(o),r+" argument is not a buffer"),i(o.length===n,r+" has not the expected size: found "+o.length+", expected "+n)};r("version",y.VersionSize),r("depth",y.DepthSize),r("parentFingerPrint",y.ParentFingerPrintSize),r("childIndex",y.ChildIndexSize),r("chainCode",y.ChainCodeSize),r("privateKey",y.PrivateKeySize),e.checksum&&e.checksum.length&&r("checksum",y.CheckSumSize)},y.prototype.toString=function(){return this.xprivkey},y.prototype.inspect=function(){return"<HDPrivateKey: "+this.xprivkey+">"},y.prototype.toObject=y.prototype.toJSON=function(){return{network:h.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}},y.fromBuffer=function(e){return new y(e.toString())},y.fromHex=function(e){return y.fromBuffer(t.from(e,"hex"))},y.prototype.toBuffer=function(){return t.from(this.toString())},y.prototype.toHex=function(){return this.toBuffer().toString("hex")},y.DefaultDepth=0,y.DefaultFingerprint=0,y.DefaultChildIndex=0,y.Hardened=2147483648,y.MaxIndex=2*y.Hardened,y.RootElementAlias=["m","M","m'","M'"],y.VersionSize=4,y.DepthSize=1,y.ParentFingerPrintSize=4,y.ChildIndexSize=4,y.ChainCodeSize=32,y.PrivateKeySize=32,y.CheckSumSize=4,y.DataLength=78,y.SerializedByteSize=82,y.VersionStart=0,y.VersionEnd=y.VersionStart+y.VersionSize,y.DepthStart=y.VersionEnd,y.DepthEnd=y.DepthStart+y.DepthSize,y.ParentFingerPrintStart=y.DepthEnd,y.ParentFingerPrintEnd=y.ParentFingerPrintStart+y.ParentFingerPrintSize,y.ChildIndexStart=y.ParentFingerPrintEnd,y.ChildIndexEnd=y.ChildIndexStart+y.ChildIndexSize,y.ChainCodeStart=y.ChildIndexEnd,y.ChainCodeEnd=y.ChainCodeStart+y.ChainCodeSize,y.PrivateKeyStart=y.ChainCodeEnd+1,y.PrivateKeyEnd=y.PrivateKeyStart+y.PrivateKeySize,y.ChecksumStart=y.PrivateKeyEnd,y.ChecksumEnd=y.ChecksumStart+y.CheckSumSize,i(y.ChecksumEnd===y.SerializedByteSize),e.exports=y}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(3),o=r(4),a=r(37),s=r(29),c=r(6),u=r(78),f=r(24),h=r(12),l=r(15),d=r(11),p=d,g=d.HDPublicKey,m=r(45),b=r(7);function y(e){if(e instanceof y)return e;if(!(this instanceof y))return new y(e);if(e){if(i.isString(e)||t.isBuffer(e)){var r=y.getSerializedError(e);if(r){if(t.isBuffer(e)&&!y.getSerializedError(e.toString()))return this._buildFromSerialized(e.toString());if(r instanceof g.ArgumentIsPrivateExtended)return new u(e).hdPublicKey;throw r}return this._buildFromSerialized(e)}if(i.isObject(e))return e instanceof u?this._buildFromPrivate(e):this._buildFromObject(e);throw new g.UnrecognizedArgument(e)}throw new g.MustSupplyArgument}y.fromHDPrivateKey=function(e){return new y(e)},y.isValidPath=function(e){if(i.isString(e)){var t=u._getDerivationIndexes(e);return null!==t&&i.every(t,y.isValidPath)}return!!i.isNumber(e)&&(e>=0&&e<y.Hardened)},y.prototype.derive=function(){throw new Error("derive has been deprecated. use deriveChild or, for the old way, deriveNonCompliantChild.")},y.prototype.deriveChild=function(e,t){if(i.isNumber(e))return this._deriveWithNumber(e,t);if(i.isString(e))return this._deriveFromString(e);throw new g.InvalidDerivationArgument(e)},y.prototype._deriveWithNumber=function(e,r){if(e>=y.Hardened||r)throw new g.InvalidIndexCantDeriveHardened;if(e<0)throw new g.InvalidPath(e);var i,n=b.integerAsBuffer(e),a=t.concat([this.publicKey.toBuffer(),n]),s=c.sha512hmac(a,this._buffers.chainCode),u=o.fromBuffer(s.slice(0,32),{size:32}),f=s.slice(32,64);try{i=l.fromPoint(h.getG().mul(u).add(this.publicKey.point))}catch(t){return this._deriveWithNumber(e+1)}return new y({network:this.network,depth:this.depth+1,parentFingerPrint:this.fingerPrint,childIndex:e,chainCode:f,publicKey:i})},y.prototype._deriveFromString=function(e){if(i.includes(e,"'"))throw new g.InvalidIndexCantDeriveHardened;if(!y.isValidPath(e))throw new g.InvalidPath(e);return u._getDerivationIndexes(e).reduce((function(e,t){return e._deriveWithNumber(t)}),this)},y.isValidSerialized=function(e,t){return i.isNull(y.getSerializedError(e,t))},y.getSerializedError=function(e,r){if(!i.isString(e)&&!t.isBuffer(e))return new g.UnrecognizedArgument("expected buffer or string");if(!a.validCharacters(e))return new p.InvalidB58Char("(unknown)",e);try{e=s.decode(e)}catch(t){return new p.InvalidB58Checksum(e)}if(e.length!==y.DataSize)return new g.InvalidLength(e);if(!i.isUndefined(r)){var n=y._validateNetwork(e,r);if(n)return n}var o=e.readUInt32BE(0);return o===f.livenet.xprivkey||o===f.testnet.xprivkey?new g.ArgumentIsPrivateExtended:null},y._validateNetwork=function(e,t){var r=f.get(t);if(!r)return new p.InvalidNetworkArgument(t);var i=e.slice(y.VersionStart,y.VersionEnd);return i.readUInt32BE(0)!==r.xpubkey?new p.InvalidNetwork(i):null},y.prototype._buildFromPrivate=function(e){var t=i.clone(e._buffers),r=h.getG().mul(o.fromBuffer(t.privateKey));return t.publicKey=h.pointToCompressed(r),t.version=b.integerAsBuffer(f.get(t.version.readUInt32BE(0)).xpubkey),t.privateKey=void 0,t.checksum=void 0,t.xprivkey=void 0,this._buildFromBuffers(t)},y.prototype._buildFromObject=function(e){var r={version:e.network?b.integerAsBuffer(f.get(e.network).xpubkey):e.version,depth:i.isNumber(e.depth)?t.from([255&e.depth]):e.depth,parentFingerPrint:i.isNumber(e.parentFingerPrint)?b.integerAsBuffer(e.parentFingerPrint):e.parentFingerPrint,childIndex:i.isNumber(e.childIndex)?b.integerAsBuffer(e.childIndex):e.childIndex,chainCode:i.isString(e.chainCode)?t.from(e.chainCode,"hex"):e.chainCode,publicKey:i.isString(e.publicKey)?t.from(e.publicKey,"hex"):t.isBuffer(e.publicKey)?e.publicKey:e.publicKey.toBuffer(),checksum:i.isNumber(e.checksum)?b.integerAsBuffer(e.checksum):e.checksum};return this._buildFromBuffers(r)},y.prototype._buildFromSerialized=function(e){var t=s.decode(e),r={version:t.slice(y.VersionStart,y.VersionEnd),depth:t.slice(y.DepthStart,y.DepthEnd),parentFingerPrint:t.slice(y.ParentFingerPrintStart,y.ParentFingerPrintEnd),childIndex:t.slice(y.ChildIndexStart,y.ChildIndexEnd),chainCode:t.slice(y.ChainCodeStart,y.ChainCodeEnd),publicKey:t.slice(y.PublicKeyStart,y.PublicKeyEnd),checksum:t.slice(y.ChecksumStart,y.ChecksumEnd),xpubkey:e};return this._buildFromBuffers(r)},y.prototype._buildFromBuffers=function(e){y._validateBufferArguments(e),b.defineImmutable(this,{_buffers:e});var r=[e.version,e.depth,e.parentFingerPrint,e.childIndex,e.chainCode,e.publicKey],i=t.concat(r),n=s.checksum(i);if(e.checksum&&e.checksum.length){if(e.checksum.toString("hex")!==n.toString("hex"))throw new p.InvalidB58Checksum(i,n)}else e.checksum=n;var o,a=f.get(e.version.readUInt32BE(0));o=s.encode(t.concat(r)),e.xpubkey=t.from(o);var u=new l(e.publicKey,{network:a}),h=y.ParentFingerPrintSize,d=c.sha256ripemd160(u.toBuffer()).slice(0,h);return b.defineImmutable(this,{xpubkey:o,network:a,depth:e.depth[0],publicKey:u,fingerPrint:d}),this},y._validateBufferArguments=function(e){var r=function(r,i){var n=e[r];m(t.isBuffer(n),r+" argument is not a buffer, it's "+typeof n),m(n.length===i,r+" has not the expected size: found "+n.length+", expected "+i)};r("version",y.VersionSize),r("depth",y.DepthSize),r("parentFingerPrint",y.ParentFingerPrintSize),r("childIndex",y.ChildIndexSize),r("chainCode",y.ChainCodeSize),r("publicKey",y.PublicKeySize),e.checksum&&e.checksum.length&&r("checksum",y.CheckSumSize)},y.fromString=function(e){return n.checkArgument(i.isString(e),"No valid string was provided"),new y(e)},y.fromObject=function(e){return n.checkArgument(i.isObject(e),"No valid argument was provided"),new y(e)},y.prototype.toString=function(){return this.xpubkey},y.prototype.inspect=function(){return"<HDPublicKey: "+this.xpubkey+">"},y.prototype.toObject=y.prototype.toJSON=function(){return{network:f.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}},y.fromBuffer=function(e){return new y(e)},y.fromHex=function(e){return y.fromBuffer(t.from(e,"hex"))},y.prototype.toBuffer=function(){return t.from(this._buffers.xpubkey)},y.prototype.toHex=function(){return this.toBuffer().toString("hex")},y.Hardened=2147483648,y.RootElementAlias=["m","M"],y.VersionSize=4,y.DepthSize=1,y.ParentFingerPrintSize=4,y.ChildIndexSize=4,y.ChainCodeSize=32,y.PublicKeySize=33,y.CheckSumSize=4,y.DataSize=78,y.SerializedByteSize=82,y.VersionStart=0,y.VersionEnd=y.VersionStart+y.VersionSize,y.DepthStart=y.VersionEnd,y.DepthEnd=y.DepthStart+y.DepthSize,y.ParentFingerPrintStart=y.DepthEnd,y.ParentFingerPrintEnd=y.ParentFingerPrintStart+y.ParentFingerPrintSize,y.ChildIndexStart=y.ParentFingerPrintEnd,y.ChildIndexEnd=y.ChildIndexStart+y.ChildIndexSize,y.ChainCodeStart=y.ChildIndexEnd,y.ChainCodeEnd=y.ChainCodeStart+y.ChainCodeSize,y.PublicKeyStart=y.ChainCodeEnd,y.PublicKeyEnd=y.PublicKeyStart+y.PublicKeySize,y.ChecksumStart=y.PublicKeyEnd,y.ChecksumEnd=y.ChecksumStart+y.CheckSumSize,m(y.PublicKeyEnd===y.DataSize),m(y.ChecksumEnd===y.SerializedByteSize),e.exports=y}).call(this,r(0).Buffer)},function(e,t,r){
|
|
15
|
-
/*! MIT License. Copyright 2015-2018 Richard Moore <me@ricmoo.com>. See LICENSE.txt. */
|
|
16
|
-
!function(t){"use strict";function r(e){return parseInt(e)===e}function i(e){if(!r(e.length))return!1;for(var t=0;t<e.length;t++)if(!r(e[t])||e[t]<0||e[t]>255)return!1;return!0}function n(e,t){if(e.buffer&&"Uint8Array"===e.name)return t&&(e=e.slice?e.slice():Array.prototype.slice.call(e)),e;if(Array.isArray(e)){if(!i(e))throw new Error("Array contains invalid value: "+e);return new Uint8Array(e)}if(r(e.length)&&i(e))return new Uint8Array(e);throw new Error("unsupported array-like object")}function o(e){return new Uint8Array(e)}function a(e,t,r,i,n){null==i&&null==n||(e=e.slice?e.slice(i,n):Array.prototype.slice.call(e,i,n)),t.set(e,r)}var s,c={toBytes:function(e){var t=[],r=0;for(e=encodeURI(e);r<e.length;){var i=e.charCodeAt(r++);37===i?(t.push(parseInt(e.substr(r,2),16)),r+=2):t.push(i)}return n(t)},fromBytes:function(e){for(var t=[],r=0;r<e.length;){var i=e[r];i<128?(t.push(String.fromCharCode(i)),r++):i>191&&i<224?(t.push(String.fromCharCode((31&i)<<6|63&e[r+1])),r+=2):(t.push(String.fromCharCode((15&i)<<12|(63&e[r+1])<<6|63&e[r+2])),r+=3)}return t.join("")}},u=(s="0123456789abcdef",{toBytes:function(e){for(var t=[],r=0;r<e.length;r+=2)t.push(parseInt(e.substr(r,2),16));return t},fromBytes:function(e){for(var t=[],r=0;r<e.length;r++){var i=e[r];t.push(s[(240&i)>>4]+s[15&i])}return t.join("")}}),f={16:10,24:12,32:14},h=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],l=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],d=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],p=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],g=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],m=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],b=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],y=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],v=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935],S=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600],_=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480],w=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],I=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],O=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],A=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function P(e){for(var t=[],r=0;r<e.length;r+=4)t.push(e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]);return t}var k=function(e){if(!(this instanceof k))throw Error("AES must be instanitated with `new`");Object.defineProperty(this,"key",{value:n(e,!0)}),this._prepare()};k.prototype._prepare=function(){var e=f[this.key.length];if(null==e)throw new Error("invalid key size (must be 16, 24 or 32 bytes)");this._Ke=[],this._Kd=[];for(var t=0;t<=e;t++)this._Ke.push([0,0,0,0]),this._Kd.push([0,0,0,0]);var r,i=4*(e+1),n=this.key.length/4,o=P(this.key);for(t=0;t<n;t++)r=t>>2,this._Ke[r][t%4]=o[t],this._Kd[e-r][t%4]=o[t];for(var a,s=0,c=n;c<i;){if(a=o[n-1],o[0]^=l[a>>16&255]<<24^l[a>>8&255]<<16^l[255&a]<<8^l[a>>24&255]^h[s]<<24,s+=1,8!=n)for(t=1;t<n;t++)o[t]^=o[t-1];else{for(t=1;t<n/2;t++)o[t]^=o[t-1];a=o[n/2-1],o[n/2]^=l[255&a]^l[a>>8&255]<<8^l[a>>16&255]<<16^l[a>>24&255]<<24;for(t=n/2+1;t<n;t++)o[t]^=o[t-1]}for(t=0;t<n&&c<i;)u=c>>2,d=c%4,this._Ke[u][d]=o[t],this._Kd[e-u][d]=o[t++],c++}for(var u=1;u<e;u++)for(var d=0;d<4;d++)a=this._Kd[u][d],this._Kd[u][d]=w[a>>24&255]^I[a>>16&255]^O[a>>8&255]^A[255&a]},k.prototype.encrypt=function(e){if(16!=e.length)throw new Error("invalid plaintext size (must be 16 bytes)");for(var t=this._Ke.length-1,r=[0,0,0,0],i=P(e),n=0;n<4;n++)i[n]^=this._Ke[0][n];for(var a=1;a<t;a++){for(n=0;n<4;n++)r[n]=p[i[n]>>24&255]^g[i[(n+1)%4]>>16&255]^m[i[(n+2)%4]>>8&255]^b[255&i[(n+3)%4]]^this._Ke[a][n];i=r.slice()}var s,c=o(16);for(n=0;n<4;n++)s=this._Ke[t][n],c[4*n]=255&(l[i[n]>>24&255]^s>>24),c[4*n+1]=255&(l[i[(n+1)%4]>>16&255]^s>>16),c[4*n+2]=255&(l[i[(n+2)%4]>>8&255]^s>>8),c[4*n+3]=255&(l[255&i[(n+3)%4]]^s);return c},k.prototype.decrypt=function(e){if(16!=e.length)throw new Error("invalid ciphertext size (must be 16 bytes)");for(var t=this._Kd.length-1,r=[0,0,0,0],i=P(e),n=0;n<4;n++)i[n]^=this._Kd[0][n];for(var a=1;a<t;a++){for(n=0;n<4;n++)r[n]=y[i[n]>>24&255]^v[i[(n+3)%4]>>16&255]^S[i[(n+2)%4]>>8&255]^_[255&i[(n+1)%4]]^this._Kd[a][n];i=r.slice()}var s,c=o(16);for(n=0;n<4;n++)s=this._Kd[t][n],c[4*n]=255&(d[i[n]>>24&255]^s>>24),c[4*n+1]=255&(d[i[(n+3)%4]>>16&255]^s>>16),c[4*n+2]=255&(d[i[(n+2)%4]>>8&255]^s>>8),c[4*n+3]=255&(d[255&i[(n+1)%4]]^s);return c};var E=function(e){if(!(this instanceof E))throw Error("AES must be instanitated with `new`");this.description="Electronic Code Block",this.name="ecb",this._aes=new k(e)};E.prototype.encrypt=function(e){if((e=n(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=o(e.length),r=o(16),i=0;i<e.length;i+=16)a(e,r,0,i,i+16),a(r=this._aes.encrypt(r),t,i);return t},E.prototype.decrypt=function(e){if((e=n(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=o(e.length),r=o(16),i=0;i<e.length;i+=16)a(e,r,0,i,i+16),a(r=this._aes.decrypt(r),t,i);return t};var x=function(e,t){if(!(this instanceof x))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Block Chaining",this.name="cbc",t){if(16!=t.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else t=o(16);this._lastCipherblock=n(t,!0),this._aes=new k(e)};x.prototype.encrypt=function(e){if((e=n(e)).length%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var t=o(e.length),r=o(16),i=0;i<e.length;i+=16){a(e,r,0,i,i+16);for(var s=0;s<16;s++)r[s]^=this._lastCipherblock[s];this._lastCipherblock=this._aes.encrypt(r),a(this._lastCipherblock,t,i)}return t},x.prototype.decrypt=function(e){if((e=n(e)).length%16!=0)throw new Error("invalid ciphertext size (must be multiple of 16 bytes)");for(var t=o(e.length),r=o(16),i=0;i<e.length;i+=16){a(e,r,0,i,i+16),r=this._aes.decrypt(r);for(var s=0;s<16;s++)t[i+s]=r[s]^this._lastCipherblock[s];a(e,this._lastCipherblock,0,i,i+16)}return t};var T=function(e,t,r){if(!(this instanceof T))throw Error("AES must be instanitated with `new`");if(this.description="Cipher Feedback",this.name="cfb",t){if(16!=t.length)throw new Error("invalid initialation vector size (must be 16 size)")}else t=o(16);r||(r=1),this.segmentSize=r,this._shiftRegister=n(t,!0),this._aes=new k(e)};T.prototype.encrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid plaintext size (must be segmentSize bytes)");for(var t,r=n(e,!0),i=0;i<r.length;i+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var o=0;o<this.segmentSize;o++)r[i+o]^=t[o];a(this._shiftRegister,this._shiftRegister,0,this.segmentSize),a(r,this._shiftRegister,16-this.segmentSize,i,i+this.segmentSize)}return r},T.prototype.decrypt=function(e){if(e.length%this.segmentSize!=0)throw new Error("invalid ciphertext size (must be segmentSize bytes)");for(var t,r=n(e,!0),i=0;i<r.length;i+=this.segmentSize){t=this._aes.encrypt(this._shiftRegister);for(var o=0;o<this.segmentSize;o++)r[i+o]^=t[o];a(this._shiftRegister,this._shiftRegister,0,this.segmentSize),a(e,this._shiftRegister,16-this.segmentSize,i,i+this.segmentSize)}return r};var R=function(e,t){if(!(this instanceof R))throw Error("AES must be instanitated with `new`");if(this.description="Output Feedback",this.name="ofb",t){if(16!=t.length)throw new Error("invalid initialation vector size (must be 16 bytes)")}else t=o(16);this._lastPrecipher=n(t,!0),this._lastPrecipherIndex=16,this._aes=new k(e)};R.prototype.encrypt=function(e){for(var t=n(e,!0),r=0;r<t.length;r++)16===this._lastPrecipherIndex&&(this._lastPrecipher=this._aes.encrypt(this._lastPrecipher),this._lastPrecipherIndex=0),t[r]^=this._lastPrecipher[this._lastPrecipherIndex++];return t},R.prototype.decrypt=R.prototype.encrypt;var N=function(e){if(!(this instanceof N))throw Error("Counter must be instanitated with `new`");0===e||e||(e=1),"number"==typeof e?(this._counter=o(16),this.setValue(e)):this.setBytes(e)};N.prototype.setValue=function(e){if("number"!=typeof e||parseInt(e)!=e)throw new Error("invalid counter value (must be an integer)");if(e>Number.MAX_SAFE_INTEGER)throw new Error("integer value out of safe range");for(var t=15;t>=0;--t)this._counter[t]=e%256,e=parseInt(e/256)},N.prototype.setBytes=function(e){if(16!=(e=n(e,!0)).length)throw new Error("invalid counter bytes size (must be 16 bytes)");this._counter=e},N.prototype.increment=function(){for(var e=15;e>=0;e--){if(255!==this._counter[e]){this._counter[e]++;break}this._counter[e]=0}};var M=function(e,t){if(!(this instanceof M))throw Error("AES must be instanitated with `new`");this.description="Counter",this.name="ctr",t instanceof N||(t=new N(t)),this._counter=t,this._remainingCounter=null,this._remainingCounterIndex=16,this._aes=new k(e)};M.prototype.encrypt=function(e){for(var t=n(e,!0),r=0;r<t.length;r++)16===this._remainingCounterIndex&&(this._remainingCounter=this._aes.encrypt(this._counter._counter),this._remainingCounterIndex=0,this._counter.increment()),t[r]^=this._remainingCounter[this._remainingCounterIndex++];return t},M.prototype.decrypt=M.prototype.encrypt;var C={AES:k,Counter:N,ModeOfOperation:{ecb:E,cbc:x,cfb:T,ofb:R,ctr:M},utils:{hex:u,utf8:c},padding:{pkcs7:{pad:function(e){var t=16-(e=n(e,!0)).length%16,r=o(e.length+t);a(e,r);for(var i=e.length;i<r.length;i++)r[i]=t;return r},strip:function(e){if((e=n(e,!0)).length<16)throw new Error("PKCS#7 invalid length");var t=e[e.length-1];if(t>16)throw new Error("PKCS#7 padding byte out of range");for(var r=e.length-t,i=0;i<t;i++)if(e[r+i]!==t)throw new Error("PKCS#7 invalid padding byte");var s=o(r);return a(e,s,0,0,r),s}}},_arrayTest:{coerceArray:n,createArray:o,copyArray:a}};e.exports=C}()},function(e,t,r){"use strict";(function(e,t){const{opcodeMap:i,scriptNum:n,utils:o}=r(82);class a{constructor(){this.operations=[],this.comments=[]}comment(e){return this.comments.push("// "+e),this}push(t){if("number"==typeof t)if(t>=-1&&t<=16)-1===t?this.operations.push("OP_1NEGATE"):0===t?this.operations.push("OP_0"):this.operations.push("OP_"+t);else{const e=n.encode(t);this.operations.push(e.toString("hex"))}else if("string"==typeof t)this.operations.push(t);else{if(!e.isBuffer(t))throw new Error("Invalid value type: "+typeof t);this.operations.push(t.toString("hex"))}return this}dup(){return this.operations.push("OP_DUP"),this}drop(){return this.operations.push("OP_DROP"),this}swap(){return this.operations.push("OP_SWAP"),this}over(){return this.operations.push("OP_OVER"),this}rot(){return this.operations.push("OP_ROT"),this}pick(e){return this.push(e),this.operations.push("OP_PICK"),this}roll(e){return this.push(e),this.operations.push("OP_ROLL"),this}depth(){return this.operations.push("OP_DEPTH"),this}add(){return this.operations.push("OP_ADD"),this}sub(){return this.operations.push("OP_SUB"),this}mul(){return this.operations.push("OP_MUL"),this}div(){return this.operations.push("OP_DIV"),this}mod(){return this.operations.push("OP_MOD"),this}negate(){return this.operations.push("OP_NEGATE"),this}abs(){return this.operations.push("OP_ABS"),this}min(){return this.operations.push("OP_MIN"),this}max(){return this.operations.push("OP_MAX"),this}equal(){return this.operations.push("OP_EQUAL"),this}equalVerify(){return this.operations.push("OP_EQUALVERIFY"),this}numEqual(){return this.operations.push("OP_NUMEQUAL"),this}numNotEqual(){return this.operations.push("OP_NUMNOTEQUAL"),this}lessThan(){return this.operations.push("OP_LESSTHAN"),this}greaterThan(){return this.operations.push("OP_GREATERTHAN"),this}lessThanOrEqual(){return this.operations.push("OP_LESSTHANOREQUAL"),this}greaterThanOrEqual(){return this.operations.push("OP_GREATERTHANOREQUAL"),this}within(){return this.operations.push("OP_WITHIN"),this}not(){return this.operations.push("OP_NOT"),this}boolAnd(){return this.operations.push("OP_BOOLAND"),this}boolOr(){return this.operations.push("OP_BOOLOR"),this}and(){return this.operations.push("OP_AND"),this}or(){return this.operations.push("OP_OR"),this}xor(){return this.operations.push("OP_XOR"),this}invert(){return this.operations.push("OP_INVERT"),this}cat(){return this.operations.push("OP_CAT"),this}split(){return this.operations.push("OP_SPLIT"),this}size(){return this.operations.push("OP_SIZE"),this}left(e){return this.push(e),this.operations.push("OP_LEFT"),this}right(e){return this.push(e),this.operations.push("OP_RIGHT"),this}substr(e,t){return this.push(t).push(e),this.operations.push("OP_SUBSTR"),this}sha256(){return this.operations.push("OP_SHA256"),this}hash256(){return this.operations.push("OP_HASH256"),this}hash160(){return this.operations.push("OP_HASH160"),this}ripemd160(){return this.operations.push("OP_RIPEMD160"),this}verify(){return this.operations.push("OP_VERIFY"),this}return(){return this.operations.push("OP_RETURN"),this}extractField(e){this.comment(`Extract ${e} field from preimage`);const t={nVersion:{strategy:"LEFT",offset:0,length:4},hashPrevouts:{strategy:"LEFT",offset:4,length:32},hashSequence:{strategy:"LEFT",offset:36,length:32},outpoint:{strategy:"LEFT",offset:68,length:36},scriptLen:{strategy:"DYNAMIC",position:"after_outpoint"},scriptCode:{strategy:"DYNAMIC",variable_length:!0},value:{strategy:"RIGHT",offsetFromEnd:52,length:8},nSequence:{strategy:"RIGHT",offsetFromEnd:44,length:4},hashOutputs:{strategy:"RIGHT",offsetFromEnd:40,length:32},nLocktime:{strategy:"RIGHT",offsetFromEnd:8,length:4},sighashType:{strategy:"RIGHT",offsetFromEnd:4,length:4}}[e];if(!t)throw new Error("Unknown field: "+e);if("LEFT"===t.strategy)this.push(t.offset+t.length).split().drop().push(t.offset).split().swap().drop();else if("RIGHT"===t.strategy)this.size().push(t.offsetFromEnd).sub().split().drop().push(t.length).split().drop();else if("DYNAMIC"===t.strategy){if("scriptLen"!==e)throw new Error(`Dynamic extraction for ${e} not implemented`);this.push(104).split().drop().push(1).split().swap().drop()}return this}validateField(e,t){return this.comment(`Validate ${e} equals expected value`),this.extractField(e),this.push(t),this.equalVerify(),this}validateRange(e,t,r){return this.comment(`Validate ${e} is within range [${t}, ${r})`),this.extractField(e),this.dup(),this.push(t),this.greaterThanOrEqual(),this.verify(),this.push(r),this.lessThan(),this.verify(),this}validateFields(e){return this.comment("Multi-field validation"),Object.entries(e).forEach(([e,t])=>{t.equals?this.validateField(e,t.equals):void 0===t.min&&void 0===t.max||this.validateRange(e,t.min||0,t.max||Number.MAX_SAFE_INTEGER)}),this}if(e){return this.comment("Begin IF block"),"function"==typeof e&&e(this),this.operations.push("OP_IF"),this}else(){return this.comment("ELSE block"),this.operations.push("OP_ELSE"),this}endif(){return this.comment("End IF block"),this.operations.push("OP_ENDIF"),this}build(){const e=this.operations.join(" "),t=this._cleanASM(e);return{operations:[...this.operations],comments:[...this.comments],asm:e,cleanedASM:t,hex:this._asmToHex(t),size:t.split(" ").length}}_cleanASM(e){return e.split(" ").map(e=>{if(/^\d+$/.test(e)){const t=parseInt(e);return t>=1&&t<=75?t.toString(16).padStart(2,"0"):n.encode(t).toString("hex")}return e}).join(" ")}_asmToHex(e){return e.split(" ").map(e=>i[e]?i[e].code.toString(16).padStart(2,"0"):/^[0-9a-fA-F]+$/.test(e)?e:"00").join("")}simulate(e=[]){return o.simulate(this.operations,e)}document(){const e=this.build();return{title:"Covenant Script Documentation",operations:e.operations.length,size:e.size,asm:e.cleanedASM,comments:this.comments,structure:this._analyzeStructure()}}_analyzeStructure(){const e={stack_operations:0,arithmetic:0,comparisons:0,crypto:0,data_manipulation:0,flow_control:0};return this.operations.forEach(t=>{const r=i[t];if(r)switch(r.category){case"stack":e.stack_operations++;break;case"arithmetic":e.arithmetic++;break;case"bitwise":e.comparisons++;break;case"crypto":e.crypto++;break;case"data":e.data_manipulation++;break;case"flow_control":e.flow_control++}}),e}}const s={valueLock:e=>(new a).comment("Value Lock Covenant").comment("Expected value: "+e).validateField("value",e).push(1),hashLock:e=>(new a).comment("Hash Lock Covenant").comment("Expected hash: "+e).sha256().push(e).equalVerify().push(1),multiSigWithValidation:(e,t,r)=>{const i=(new a).comment("Multi-Signature Covenant with Field Validation").comment("Required signatures: "+e);return i.validateFields(r),i.comment("Signature validation (placeholder)").push(1),i},timeLock:e=>(new a).comment("Time Lock Covenant").comment("Locktime: "+e).validateField("nLocktime",e).push(1),complexValidation:e=>{const t=(new a).comment("Complex Validation Covenant");return e.valueRange&&t.validateRange("value",e.valueRange.min,e.valueRange.max),e.fields&&t.validateFields(e.fields),e.hashValidation&&t.sha256().push(e.hashValidation.expectedHash).equalVerify(),t.push(1),t}};if(t.exports={CovenantBuilder:a,CovenantTemplates:s},r.c[r.s]===t){console.log("🏗️ Covenant Builder Demonstration"),console.log("=================================="),console.log("\n📊 Example 1: Value Lock Covenant");const e=s.valueLock("50c3000000000000").build();console.log("ASM:",e.cleanedASM),console.log("Size:",e.size,"operations"),console.log("\n📊 Example 2: Custom Arithmetic Covenant");const t=(new a).comment("Validate that value field equals 5 + 3").extractField("value").push(5).push(3).add().numEqual().verify().push(1),r=t.build();console.log("Operations:",r.operations.length),console.log("ASM:",r.cleanedASM),console.log("\n📊 Example 3: Documentation Generation");const i=t.document();console.log("Structure analysis:",i.structure),console.log("Comments:"),i.comments.forEach(e=>console.log(" "+e))}}).call(this,r(0).Buffer,r(26)(e))},function(e,t,r){(function(e,t){const i={encode:t=>{if(0===t)return e.alloc(0);const r=t<0,i=[];let n=Math.abs(t);for(;n>0;)i.push(255&n),n>>=8;return 128&i[i.length-1]?i.push(r?128:0):r&&(i[i.length-1]|=128),e.from(i)},decode:e=>{if(0===e.length)return 0;const t=Array.from(e),r=128&t[t.length-1];r&&(t[t.length-1]&=127);let i=0;for(let e=t.length-1;e>=0;e--)i=(i<<8)+t[e];return r?-i:i}},n={OP_FALSE:{code:0,category:"constants",description:"Push empty array (false value)",action:t=>t.push(e.alloc(0))},OP_0:{code:0,category:"constants",description:"Push empty array (alias for OP_FALSE)",action:t=>t.push(e.alloc(0))},OP_PUSHDATA1:{code:76,category:"pushdata",description:"Push next [1 byte] bytes of data",action:"Read next byte as length; push that many bytes"},OP_PUSHDATA2:{code:77,category:"pushdata",description:"Push next [2 bytes LE] bytes of data",action:"Read next 2 bytes as length; push that many bytes"},OP_PUSHDATA4:{code:78,category:"pushdata",description:"Push next [4 bytes LE] bytes of data",action:"Read next 4 bytes as length; push that many bytes"},OP_1NEGATE:{code:79,category:"constants",description:"Push number -1",action:e=>e.push(i.encode(-1))},OP_RESERVED:{code:80,category:"reserved",description:"Reserved opcode (makes transaction invalid)",action:()=>{throw new Error("OP_RESERVED encountered")}},OP_TRUE:{code:81,category:"constants",description:"Push number 1 (true value)",action:e=>e.push(i.encode(1))},OP_1:{code:81,category:"constants",description:"Push number 1 (alias for OP_TRUE)",action:e=>e.push(i.encode(1))},OP_2:{code:82,category:"constants",description:"Push number 2",action:e=>e.push(i.encode(2))},OP_3:{code:83,category:"constants",description:"Push number 3",action:e=>e.push(i.encode(3))},OP_4:{code:84,category:"constants",description:"Push number 4",action:e=>e.push(i.encode(4))},OP_5:{code:85,category:"constants",description:"Push number 5",action:e=>e.push(i.encode(5))},OP_6:{code:86,category:"constants",description:"Push number 6",action:e=>e.push(i.encode(6))},OP_7:{code:87,category:"constants",description:"Push number 7",action:e=>e.push(i.encode(7))},OP_8:{code:88,category:"constants",description:"Push number 8",action:e=>e.push(i.encode(8))},OP_9:{code:89,category:"constants",description:"Push number 9",action:e=>e.push(i.encode(9))},OP_10:{code:90,category:"constants",description:"Push number 10",action:e=>e.push(i.encode(10))},OP_11:{code:91,category:"constants",description:"Push number 11",action:e=>e.push(i.encode(11))},OP_12:{code:92,category:"constants",description:"Push number 12",action:e=>e.push(i.encode(12))},OP_13:{code:93,category:"constants",description:"Push number 13",action:e=>e.push(i.encode(13))},OP_14:{code:94,category:"constants",description:"Push number 14",action:e=>e.push(i.encode(14))},OP_15:{code:95,category:"constants",description:"Push number 15",action:e=>e.push(i.encode(15))},OP_16:{code:96,category:"constants",description:"Push number 16",action:e=>e.push(i.encode(16))},OP_NOP:{code:97,category:"flow_control",description:"No operation (do nothing)",action:e=>{}},OP_VER:{code:98,category:"flow_control",description:"Push transaction version (disabled)",action:()=>{throw new Error("OP_VER is disabled")}},OP_IF:{code:99,category:"flow_control",description:"Execute if top stack value is true",action:"// Conditional execution (requires parser state)"},OP_NOTIF:{code:100,category:"flow_control",description:"Execute if top stack value is false",action:"// Conditional execution (requires parser state)"},OP_VERIF:{code:101,category:"flow_control",description:"Conditional execution based on transaction version (disabled)",action:()=>{throw new Error("OP_VERIF is disabled")}},OP_VERNOTIF:{code:102,category:"flow_control",description:"Conditional execution based on transaction version (disabled)",action:()=>{throw new Error("OP_VERNOTIF is disabled")}},OP_ELSE:{code:103,category:"flow_control",description:"Else branch of conditional",action:"// Conditional execution (requires parser state)"},OP_ENDIF:{code:104,category:"flow_control",description:"End conditional block",action:"// Conditional execution (requires parser state)"},OP_VERIFY:{code:105,category:"flow_control",description:"Fail if top stack value is not true",action:e=>{const t=e.pop();if(!t||0===t.length||0===i.decode(t))throw new Error("OP_VERIFY failed")}},OP_RETURN:{code:106,category:"flow_control",description:"Terminate script execution immediately",action:()=>{throw new Error("Script terminated by OP_RETURN")}},OP_TOALTSTACK:{code:107,category:"stack",description:"Move top item from main stack to alt stack",action:(e,t)=>t.push(e.pop())},OP_FROMALTSTACK:{code:108,category:"stack",description:"Move top item from alt stack to main stack",action:(e,t)=>e.push(t.pop())},OP_2DROP:{code:109,category:"stack",description:"Remove top two stack items",action:e=>{e.pop(),e.pop()}},OP_2DUP:{code:110,category:"stack",description:"Duplicate top two stack items",action:t=>{const r=t[t.length-1],i=t[t.length-2];t.push(e.from(i),e.from(r))}},OP_3DUP:{code:111,category:"stack",description:"Duplicate top three stack items",action:t=>{const r=t[t.length-1],i=t[t.length-2],n=t[t.length-3];t.push(e.from(n),e.from(i),e.from(r))}},OP_2OVER:{code:112,category:"stack",description:"Copy 3rd and 4th items to top",action:t=>{const r=t[t.length-3],i=t[t.length-4];t.push(e.from(i),e.from(r))}},OP_2ROT:{code:113,category:"stack",description:"Move 5th and 6th items to top",action:e=>{const t=e.splice(-5,1)[0],r=e.splice(-5,1)[0];e.push(t,r)}},OP_2SWAP:{code:114,category:"stack",description:"Swap top two pairs of items",action:e=>{const t=e.pop(),r=e.pop(),i=e.pop(),n=e.pop();e.push(r,t,n,i)}},OP_IFDUP:{code:115,category:"stack",description:"Duplicate top item if it is not zero",action:t=>{const r=t[t.length-1];r.length>0&&0!==i.decode(r)&&t.push(e.from(r))}},OP_DEPTH:{code:116,category:"stack",description:"Push stack size as number",action:e=>e.push(i.encode(e.length))},OP_DROP:{code:117,category:"stack",description:"Remove top stack item",action:e=>e.pop()},OP_DUP:{code:118,category:"stack",description:"Duplicate top stack item",action:t=>t.push(e.from(t[t.length-1]))},OP_NIP:{code:119,category:"stack",description:"Remove second-to-top item",action:e=>{const t=e.pop();e.pop(),e.push(t)}},OP_OVER:{code:120,category:"stack",description:"Copy second-to-top item to top",action:t=>t.push(e.from(t[t.length-2]))},OP_PICK:{code:121,category:"stack",description:"Copy nth item to top (0-indexed from top)",action:t=>{const r=i.decode(t.pop());t.push(e.from(t[t.length-1-r]))}},OP_ROLL:{code:122,category:"stack",description:"Move nth item to top (0-indexed from top)",action:e=>{const t=i.decode(e.pop()),r=e.splice(e.length-1-t,1)[0];e.push(r)}},OP_ROT:{code:123,category:"stack",description:"Rotate top three items left",action:e=>{const t=e.pop(),r=e.pop(),i=e.pop();e.push(r,t,i)}},OP_SWAP:{code:124,category:"stack",description:"Swap top two items",action:e=>{const t=e.pop(),r=e.pop();e.push(t,r)}},OP_TUCK:{code:125,category:"stack",description:"Copy top item below second item",action:e=>{const t=e.pop(),r=e.pop();e.push(t,r,t)}},OP_CAT:{code:126,category:"data",description:"Concatenate top two items",action:t=>{const r=t.pop(),i=t.pop();t.push(e.concat([i,r]))}},OP_SPLIT:{code:127,category:"data",description:"Split item at position n",action:e=>{const t=i.decode(e.pop()),r=e.pop();e.push(r.slice(0,t),r.slice(t))}},OP_NUM2BIN:{code:128,category:"data",description:"Convert number to byte sequence of length n",action:t=>{const r=i.decode(t.pop()),n=i.decode(t.pop()),o=e.alloc(r),a=i.encode(n);a.copy(o,0,0,Math.min(a.length,r)),t.push(o)}},OP_BIN2NUM:{code:129,category:"data",description:"Convert byte sequence to number",action:e=>{const t=e.pop();e.push(i.encode(i.decode(t)))}},OP_SIZE:{code:130,category:"data",description:"Push size of top item (without removing item)",action:e=>e.push(i.encode(e[e.length-1].length))},OP_INVERT:{code:131,category:"bitwise",description:"Bitwise NOT of top item",action:t=>{const r=t.pop();t.push(e.from(r.map(e=>~e)))}},OP_AND:{code:132,category:"bitwise",description:"Bitwise AND of top two items",action:t=>{const r=t.pop(),i=t.pop(),n=Math.max(r.length,i.length),o=e.alloc(n);for(let e=0;e<n;e++)o[e]=(r[e]||0)&(i[e]||0);t.push(o)}},OP_OR:{code:133,category:"bitwise",description:"Bitwise OR of top two items",action:t=>{const r=t.pop(),i=t.pop(),n=Math.max(r.length,i.length),o=e.alloc(n);for(let e=0;e<n;e++)o[e]=(r[e]||0)|(i[e]||0);t.push(o)}},OP_XOR:{code:134,category:"bitwise",description:"Bitwise XOR of top two items",action:t=>{const r=t.pop(),i=t.pop(),n=Math.max(r.length,i.length),o=e.alloc(n);for(let e=0;e<n;e++)o[e]=(r[e]||0)^(i[e]||0);t.push(o)}},OP_EQUAL:{code:135,category:"bitwise",description:"Push 1 if top two items are equal, 0 otherwise",action:e=>{const t=e.pop(),r=e.pop();e.push(t.equals(r)?i.encode(1):i.encode(0))}},OP_EQUALVERIFY:{code:136,category:"bitwise",description:"Fail if top two items are not equal",action:e=>{const t=e.pop(),r=e.pop();if(!t.equals(r))throw new Error("OP_EQUALVERIFY failed")}},OP_1ADD:{code:139,category:"arithmetic",description:"Add 1 to top item",action:e=>{const t=i.decode(e.pop());e.push(i.encode(t+1))}},OP_1SUB:{code:140,category:"arithmetic",description:"Subtract 1 from top item",action:e=>{const t=i.decode(e.pop());e.push(i.encode(t-1))}},OP_2MUL:{code:141,category:"arithmetic",description:"Multiply top item by 2 (disabled)",action:()=>{throw new Error("OP_2MUL is disabled")}},OP_2DIV:{code:142,category:"arithmetic",description:"Divide top item by 2 (disabled)",action:()=>{throw new Error("OP_2DIV is disabled")}},OP_NEGATE:{code:143,category:"arithmetic",description:"Negate top item",action:e=>{const t=i.decode(e.pop());e.push(i.encode(-t))}},OP_ABS:{code:144,category:"arithmetic",description:"Absolute value of top item",action:e=>{const t=i.decode(e.pop());e.push(i.encode(Math.abs(t)))}},OP_NOT:{code:145,category:"arithmetic",description:"Logical NOT (0→1, non-zero→0)",action:e=>{const t=i.decode(e.pop());e.push(i.encode(0===t?1:0))}},OP_0NOTEQUAL:{code:146,category:"arithmetic",description:"Push 1 if top item is not zero, 0 otherwise",action:e=>{const t=i.decode(e.pop());e.push(i.encode(0!==t?1:0))}},OP_ADD:{code:147,category:"arithmetic",description:"Add top two items",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r+t))}},OP_SUB:{code:148,category:"arithmetic",description:"Subtract: second - first",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r-t))}},OP_MUL:{code:149,category:"arithmetic",description:"Multiply top two items",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r*t))}},OP_DIV:{code:150,category:"arithmetic",description:"Divide: second / first",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());if(0===t)throw new Error("Division by zero");e.push(i.encode(Math.floor(r/t)))}},OP_MOD:{code:151,category:"arithmetic",description:"Modulo: second % first",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());if(0===t)throw new Error("Division by zero");e.push(i.encode(r%t))}},OP_LSHIFT:{code:152,category:"arithmetic",description:"Left shift: second << first",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r<<t))}},OP_RSHIFT:{code:153,category:"arithmetic",description:"Right shift: second >> first",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r>>t))}},OP_BOOLAND:{code:154,category:"arithmetic",description:"Boolean AND: 1 if both non-zero, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(0!==t&&0!==r?1:0))}},OP_BOOLOR:{code:155,category:"arithmetic",description:"Boolean OR: 1 if either non-zero, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(0!==t||0!==r?1:0))}},OP_NUMEQUAL:{code:156,category:"arithmetic",description:"Push 1 if numbers are equal, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(t===r?1:0))}},OP_NUMEQUALVERIFY:{code:157,category:"arithmetic",description:"Fail if numbers are not equal",action:e=>{if(i.decode(e.pop())!==i.decode(e.pop()))throw new Error("OP_NUMEQUALVERIFY failed")}},OP_NUMNOTEQUAL:{code:158,category:"arithmetic",description:"Push 1 if numbers are not equal, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(t!==r?1:0))}},OP_LESSTHAN:{code:159,category:"arithmetic",description:"Push 1 if second < first, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r<t?1:0))}},OP_GREATERTHAN:{code:160,category:"arithmetic",description:"Push 1 if second > first, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r>t?1:0))}},OP_LESSTHANOREQUAL:{code:161,category:"arithmetic",description:"Push 1 if second <= first, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r<=t?1:0))}},OP_GREATERTHANOREQUAL:{code:162,category:"arithmetic",description:"Push 1 if second >= first, 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(r>=t?1:0))}},OP_MIN:{code:163,category:"arithmetic",description:"Push smaller of top two numbers",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(Math.min(t,r)))}},OP_MAX:{code:164,category:"arithmetic",description:"Push larger of top two numbers",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop());e.push(i.encode(Math.max(t,r)))}},OP_WITHIN:{code:165,category:"arithmetic",description:"Push 1 if x is within [min, max), 0 otherwise",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop()),n=i.decode(e.pop());e.push(i.encode(n>=r&&n<t?1:0))}},OP_RIPEMD160:{code:166,category:"crypto",description:"RIPEMD-160 hash of top item",action:e=>{const t=r(8).createHash("ripemd160").update(e.pop()).digest();e.push(t)}},OP_SHA1:{code:167,category:"crypto",description:"SHA-1 hash of top item",action:e=>{const t=r(8).createHash("sha1").update(e.pop()).digest();e.push(t)}},OP_SHA256:{code:168,category:"crypto",description:"SHA-256 hash of top item",action:e=>{const t=r(8).createHash("sha256").update(e.pop()).digest();e.push(t)}},OP_HASH160:{code:169,category:"crypto",description:"SHA-256 then RIPEMD-160 hash of top item",action:e=>{const t=r(8),i=t.createHash("sha256").update(e.pop()).digest(),n=t.createHash("ripemd160").update(i).digest();e.push(n)}},OP_HASH256:{code:170,category:"crypto",description:"Double SHA-256 hash of top item",action:e=>{const t=r(8),i=t.createHash("sha256").update(e.pop()).digest(),n=t.createHash("sha256").update(i).digest();e.push(n)}},OP_CODESEPARATOR:{code:171,category:"crypto",description:"Mark signature checking boundary",action:e=>{}},OP_CHECKSIG:{code:172,category:"crypto",description:"Verify signature against public key",action:"// Signature verification (requires transaction context)"},OP_CHECKSIGVERIFY:{code:173,category:"crypto",description:"Verify signature, then fail if invalid",action:"// Signature verification with VERIFY (requires transaction context)"},OP_CHECKMULTISIG:{code:174,category:"crypto",description:"Verify multiple signatures against public keys",action:"// Multi-signature verification (requires transaction context)"},OP_CHECKMULTISIGVERIFY:{code:175,category:"crypto",description:"Verify multiple signatures, then fail if invalid",action:"// Multi-signature verification with VERIFY (requires transaction context)"},OP_SUBSTR:{code:179,category:"string",description:"Extract substring: string[start:start+length]",action:e=>{const t=i.decode(e.pop()),r=i.decode(e.pop()),n=e.pop();e.push(n.slice(r,r+t))}},OP_LEFT:{code:180,category:"string",description:"Extract leftmost n bytes",action:e=>{const t=i.decode(e.pop()),r=e.pop();e.push(r.slice(0,t))}},OP_RIGHT:{code:181,category:"string",description:"Extract rightmost n bytes",action:e=>{const t=i.decode(e.pop()),r=e.pop();e.push(r.slice(-t))}},OP_NOP1:{code:176,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP2:{code:177,category:"nop",description:"No operation (formerly CHECKLOCKTIMEVERIFY)",action:e=>{}},OP_NOP3:{code:178,category:"nop",description:"No operation (formerly CHECKSEQUENCEVERIFY)",action:e=>{}},OP_NOP4:{code:182,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP5:{code:183,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP6:{code:184,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP7:{code:185,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP8:{code:186,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP9:{code:187,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_NOP10:{code:188,category:"nop",description:"No operation (reserved for future use)",action:e=>{}},OP_RESERVED1:{code:137,category:"reserved",description:"Reserved opcode (makes transaction invalid)",action:()=>{throw new Error("OP_RESERVED1 encountered")}},OP_RESERVED2:{code:138,category:"reserved",description:"Reserved opcode (makes transaction invalid)",action:()=>{throw new Error("OP_RESERVED2 encountered")}},OP_CHECKLOCKTIMEVERIFY:{code:177,category:"disabled",description:"Check locktime (disabled post-Genesis)",action:e=>{}},OP_CHECKSEQUENCEVERIFY:{code:178,category:"disabled",description:"Check sequence (disabled post-Genesis)",action:e=>{}},OP_PUBKEYHASH:{code:253,category:"pseudo",description:"Template matching: public key hash",action:"// Template matching only"},OP_PUBKEY:{code:254,category:"pseudo",description:"Template matching: public key",action:"// Template matching only"},OP_INVALIDOPCODE:{code:255,category:"pseudo",description:"Invalid opcode placeholder",action:()=>{throw new Error("Invalid opcode encountered")}}},o={getByCategory:e=>Object.entries(n).filter(([t,r])=>r.category===e).reduce((e,[t,r])=>({...e,[t]:r}),{}),getCategories:()=>{const e=new Set;return Object.values(n).forEach(t=>e.add(t.category)),Array.from(e).sort()},createASM:t=>{const r=[];return t.forEach(t=>{if("string"==typeof t&&n[t])r.push(t);else if("number"==typeof t)if(t>=1&&t<=16)r.push("OP_"+t);else if(0===t)r.push("OP_0");else if(-1===t)r.push("OP_1NEGATE");else{const e=i.encode(t);r.push(e.toString("hex"))}else{if(!e.isBuffer(t))throw new Error("Invalid operation: "+t);r.push(t.toString("hex"))}}),r.join(" ")},simulate:(e,t=[])=>{const r=[...t],i=[],o=[];return e.forEach((e,t)=>{if(!n[e])throw new Error("Unknown opcode: "+e);const a=n[e],s=[...r];if("function"==typeof a.action)try{a.action(r,i),o.push({step:t+1,opcode:e,beforeStack:s.map(e=>e.toString("hex")),afterStack:r.map(e=>e.toString("hex")),description:a.description})}catch(r){throw o.push({step:t+1,opcode:e,beforeStack:s.map(e=>e.toString("hex")),afterStack:[],error:r.message,description:a.description}),r}else o.push({step:t+1,opcode:e,beforeStack:s.map(e=>e.toString("hex")),afterStack:s.map(e=>e.toString("hex")),note:a.action,description:a.description})}),{finalStack:r.map(e=>e.toString("hex")),finalAltStack:i.map(e=>e.toString("hex")),history:o}},opcodeToName:e=>{const t=Object.entries(n).find(([t,r])=>r.code===e);return t?t[0]:"UNKNOWN_"+e.toString(16).padStart(2,"0")},nameToOpcode:e=>n[e]&&n[e].code,generateCovenantTemplate:(t,r)=>{const i=[];return"value"===t&&(i.push("OP_SIZE"),i.push(52),i.push("OP_SUB"),i.push("OP_SPLIT"),i.push("OP_DROP"),i.push(8),i.push("OP_SPLIT"),i.push("OP_DROP")),r&&(i.push(e.from(r,"hex")),i.push("OP_EQUAL")),{operations:i,asm:o.createASM(i),description:`Extract ${t} field and compare with expected value`}}};if(t.exports={opcodeMap:n,scriptNum:i,utils:o},r.c[r.s]===t){console.log("🔧 Comprehensive Bitcoin Script Opcode Map"),console.log("=========================================="),console.log("Total opcodes mapped: "+Object.keys(n).length),console.log("\n📊 Categories:"),o.getCategories().forEach(e=>{const t=Object.values(n).filter(t=>t.category===e).length;console.log(` ${e}: ${t} opcodes`)}),console.log("\n🧪 Example: Stack manipulation simulation");try{const e=["OP_1","OP_2","OP_ADD","OP_3","OP_EQUAL"],t=o.simulate(e);console.log("Operations:",e.join(" ")),console.log("Final stack:",t.finalStack),console.log("Expected: ['01'] (true, since 1+2=3)"),console.log("\n📝 Step-by-step execution:"),t.history.forEach(e=>{console.log(` ${e.step}. ${e.opcode}: ${e.description}`),console.log(` Stack: [${e.beforeStack.join(", ")}] → [${e.afterStack.join(", ")}]`)})}catch(e){console.log("❌ Simulation error:",e.message)}console.log("\n🎯 Example: Covenant template generation");const e=o.generateCovenantTemplate("value","50c3000000000000");console.log("Generated ASM:",e.asm),console.log("Description:",e.description)}}).call(this,r(0).Buffer,r(26)(e))},function(e,t,r){"use strict";t.byteLength=function(e){var t=u(e),r=t[0],i=t[1];return 3*(r+i)/4-i},t.toByteArray=function(e){var t,r,i=u(e),a=i[0],s=i[1],c=new o(function(e,t,r){return 3*(t+r)/4-r}(0,a,s)),f=0,h=s>0?a-4:a;for(r=0;r<h;r+=4)t=n[e.charCodeAt(r)]<<18|n[e.charCodeAt(r+1)]<<12|n[e.charCodeAt(r+2)]<<6|n[e.charCodeAt(r+3)],c[f++]=t>>16&255,c[f++]=t>>8&255,c[f++]=255&t;2===s&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,c[f++]=255&t);1===s&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,c[f++]=t>>8&255,c[f++]=255&t);return c},t.fromByteArray=function(e){for(var t,r=e.length,n=r%3,o=[],a=0,s=r-n;a<s;a+=16383)o.push(f(e,a,a+16383>s?s:a+16383));1===n?(t=e[r-1],o.push(i[t>>2]+i[t<<4&63]+"==")):2===n&&(t=(e[r-2]<<8)+e[r-1],o.push(i[t>>10]+i[t>>4&63]+i[t<<2&63]+"="));return o.join("")};for(var i=[],n=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s<c;++s)i[s]=a[s],n[a.charCodeAt(s)]=s;function u(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function f(e,t,r){for(var n,o,a=[],s=t;s<r;s+=3)n=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(255&e[s+2]),a.push(i[(o=n)>>18&63]+i[o>>12&63]+i[o>>6&63]+i[63&o]);return a.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},function(e,t){
|
|
17
|
-
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
18
|
-
t.read=function(e,t,r,i,n){var o,a,s=8*n-i-1,c=(1<<s)-1,u=c>>1,f=-7,h=r?n-1:0,l=r?-1:1,d=e[t+h];for(h+=l,o=d&(1<<-f)-1,d>>=-f,f+=s;f>0;o=256*o+e[t+h],h+=l,f-=8);for(a=o&(1<<-f)-1,o>>=-f,f+=i;f>0;a=256*a+e[t+h],h+=l,f-=8);if(0===o)o=1-u;else{if(o===c)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,i),o-=u}return(d?-1:1)*a*Math.pow(2,o-i)},t.write=function(e,t,r,i,n,o){var a,s,c,u=8*o-n-1,f=(1<<u)-1,h=f>>1,l=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,d=i?0:o-1,p=i?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=f):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+h>=1?l/c:l*Math.pow(2,1-h))*c>=2&&(a++,c/=2),a+h>=f?(s=0,a=f):a+h>=1?(s=(t*c-1)*Math.pow(2,n),a+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,n),a=0));n>=8;e[r+d]=255&s,d+=p,s/=256,n-=8);for(a=a<<n|s,u+=n;u>0;e[r+d]=255&a,d+=p,a/=256,u-=8);e[r+d-p]|=128*g}},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t){},function(e,t,r){"use strict";var i=r(88).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var o=e.charAt(n),a=o.charCodeAt(0);if(255!==t[a])throw new TypeError(o+" is ambiguous");t[a]=n}var s=e.length,c=e.charAt(0),u=Math.log(s)/Math.log(256),f=Math.log(256)/Math.log(s);function h(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return i.alloc(0);for(var r=0,n=0,o=0;e[r]===c;)n++,r++;for(var a=(e.length-r)*u+1>>>0,f=new Uint8Array(a);r<e.length;){var h=e.charCodeAt(r);if(h>255)return;var l=t[h];if(255===l)return;for(var d=0,p=a-1;(0!==l||d<o)&&-1!==p;p--,d++)l+=s*f[p]>>>0,f[p]=l%256>>>0,l=l/256>>>0;if(0!==l)throw new Error("Non-zero carry");o=d,r++}for(var g=a-o;g!==a&&0===f[g];)g++;var m=i.allocUnsafe(n+(a-g));m.fill(0,0,n);for(var b=n;g!==a;)m[b++]=f[g++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=i.from(t)),!i.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,n=0,o=0,a=t.length;o!==a&&0===t[o];)o++,r++;for(var u=(a-o)*f+1>>>0,h=new Uint8Array(u);o!==a;){for(var l=t[o],d=0,p=u-1;(0!==l||d<n)&&-1!==p;p--,d++)l+=256*h[p]>>>0,h[p]=l%s>>>0,l=l/s>>>0;if(0!==l)throw new Error("Non-zero carry");n=d,o++}for(var g=u-n;g!==u&&0===h[g];)g++;for(var m=c.repeat(r);g<u;++g)m+=e.charAt(h[g]);return m},decodeUnsafe:h,decode:function(e){var t=h(e);if(t)return t;throw new Error("Non-base"+s+" character")}}}},function(e,t,r){
|
|
19
|
-
/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
20
|
-
var i=r(0),n=i.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return n(e,t,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?e.exports=i:(o(i,t),t.Buffer=a),a.prototype=Object.create(n.prototype),o(n,a),a.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return n(e,t,r)},a.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var i=n(e);return void 0!==t?"string"==typeof r?i.fill(t,r):i.fill(t):i.fill(0),i},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i.SlowBuffer(e)}},function(e){e.exports={name:"elliptic",version:"6.6.1",description:"EC cryptography",main:"lib/elliptic.js",files:["lib"],scripts:{lint:"eslint lib test","lint:fix":"npm run lint -- --fix",unit:"istanbul test _mocha --reporter=spec test/index.js",test:"npm run lint && npm run unit",version:"grunt dist && git add dist/"},repository:{type:"git",url:"git@github.com:indutny/elliptic"},keywords:["EC","Elliptic","curve","Cryptography"],author:"Fedor Indutny <fedor@indutny.com>",license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},dependencies:{"bn.js":"^4.11.9",brorand:"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1",inherits:"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"}}},function(e,t){},function(e,t,r){"use strict";var i=r(9),n=r(10),o=r(42),a=r(34),s=i.assert;function c(e){a.call(this,"short",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function u(e,t,r,i){a.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new n(t,16),this.y=new n(r,16),i&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function f(e,t,r,i){a.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===i?(this.x=this.curve.one,this.y=this.curve.one,this.z=new n(0)):(this.x=new n(t,16),this.y=new n(r,16),this.z=new n(i,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,a),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new n(e.beta,16).toRed(this.red);else{var i=this._getEndoRoots(this.p);t=(t=i[0].cmp(i[1])<0?i[0]:i[1]).toRed(this.red)}if(e.lambda)r=new n(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new n(e.a,16),b:new n(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:n.mont(e),r=new n(2).toRed(t).redInvm(),i=r.redNeg(),o=new n(3).toRed(t).redNeg().redSqrt().redMul(r);return[i.redAdd(o).fromRed(),i.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,i,o,a,s,c,u,f,h=this.n.ushrn(Math.floor(this.n.bitLength()/2)),l=e,d=this.n.clone(),p=new n(1),g=new n(0),m=new n(0),b=new n(1),y=0;0!==l.cmpn(0);){var v=d.div(l);u=d.sub(v.mul(l)),f=m.sub(v.mul(p));var S=b.sub(v.mul(g));if(!i&&u.cmp(h)<0)t=c.neg(),r=p,i=u.neg(),o=f;else if(i&&2==++y)break;c=u,d=l,l=u,m=p,p=f,b=g,g=S}a=u.neg(),s=f;var _=i.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(_)>=0&&(a=t,s=r),i.negative&&(i=i.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:i,b:o},{a:a,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],i=t[1],n=i.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),a=n.mul(r.a),s=o.mul(i.a),c=n.mul(r.b),u=o.mul(i.b);return{k1:e.sub(a).sub(s),k2:c.add(u).neg()}},c.prototype.pointFromX=function(e,t){(e=new n(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),i=r.redSqrt();if(0!==i.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=i.fromRed().isOdd();return(t&&!o||!t&&o)&&(i=i.redNeg()),this.point(e,i)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,i=this.a.redMul(t),n=t.redSqr().redMul(t).redIAdd(i).redIAdd(this.b);return 0===r.redSqr().redISub(n).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var i=this._endoWnafT1,n=this._endoWnafT2,o=0;o<e.length;o++){var a=this._endoSplit(t[o]),s=e[o],c=s._getBeta();a.k1.negative&&(a.k1.ineg(),s=s.neg(!0)),a.k2.negative&&(a.k2.ineg(),c=c.neg(!0)),i[2*o]=s,i[2*o+1]=c,n[2*o]=a.k1,n[2*o+1]=a.k2}for(var u=this._wnafMulAdd(1,i,n,2*o,r),f=0;f<2*o;f++)i[f]=null,n[f]=null;return u},o(u,a.BasePoint),c.prototype.point=function(e,t,r){return new u(this,e,t,r)},c.prototype.pointFromJSON=function(e,t){return u.fromJSON(this,e,t)},u.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var r=this.curve,i=function(e){return r.point(e.x.redMul(r.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(i)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(i)}}}return t}},u.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},u.fromJSON=function(e,t,r){"string"==typeof t&&(t=JSON.parse(t));var i=e.point(t[0],t[1],r);if(!t[2])return i;function n(t){return e.point(t[0],t[1],r)}var o=t[2];return i.precomputed={beta:null,doubles:o.doubles&&{step:o.doubles.step,points:[i].concat(o.doubles.points.map(n))},naf:o.naf&&{wnd:o.naf.wnd,points:[i].concat(o.naf.points.map(n))}},i},u.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},u.prototype.isInfinity=function(){return this.inf},u.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),i=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,i)},u.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),i=e.redInvm(),n=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(i),o=n.redSqr().redISub(this.x.redAdd(this.x)),a=n.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},u.prototype.getX=function(){return this.x.fromRed()},u.prototype.getY=function(){return this.y.fromRed()},u.prototype.mul=function(e){return e=new n(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n):this.curve._wnafMulAdd(1,i,n,2)},u.prototype.jmulAdd=function(e,t,r){var i=[this,t],n=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(i,n,!0):this.curve._wnafMulAdd(1,i,n,2,!0)},u.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},u.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,i=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(i)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(i)}}}return t},u.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(f,a.BasePoint),c.prototype.jpoint=function(e,t,r){return new f(this,e,t,r)},f.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),i=this.y.redMul(t).redMul(e);return this.curve.point(r,i)},f.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},f.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),i=this.x.redMul(t),n=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=i.redSub(n),c=o.redSub(a);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),f=u.redMul(s),h=i.redMul(u),l=c.redSqr().redIAdd(f).redISub(h).redISub(h),d=c.redMul(h.redISub(l)).redISub(o.redMul(f)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(l,d,p)},f.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,i=e.x.redMul(t),n=this.y,o=e.y.redMul(t).redMul(this.z),a=r.redSub(i),s=n.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=a.redSqr(),u=c.redMul(a),f=r.redMul(c),h=s.redSqr().redIAdd(u).redISub(f).redISub(f),l=s.redMul(f.redISub(h)).redISub(n.redMul(u)),d=this.z.redMul(a);return this.curve.jpoint(h,l,d)},f.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t<e;t++)r=r.dbl();return r}var i=this.curve.a,n=this.curve.tinv,o=this.x,a=this.y,s=this.z,c=s.redSqr().redSqr(),u=a.redAdd(a);for(t=0;t<e;t++){var f=o.redSqr(),h=u.redSqr(),l=h.redSqr(),d=f.redAdd(f).redIAdd(f).redIAdd(i.redMul(c)),p=o.redMul(h),g=d.redSqr().redISub(p.redAdd(p)),m=p.redISub(g),b=d.redMul(m);b=b.redIAdd(b).redISub(l);var y=u.redMul(s);t+1<e&&(c=c.redMul(l)),o=g,s=y,u=b}return this.curve.jpoint(o,u.redMul(n),s)},f.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},f.prototype._zeroDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),o=n.redSqr(),a=this.x.redAdd(n).redSqr().redISub(i).redISub(o);a=a.redIAdd(a);var s=i.redAdd(i).redIAdd(i),c=s.redSqr().redISub(a).redISub(a),u=o.redIAdd(o);u=(u=u.redIAdd(u)).redIAdd(u),e=c,t=s.redMul(a.redISub(c)).redISub(u),r=this.y.redAdd(this.y)}else{var f=this.x.redSqr(),h=this.y.redSqr(),l=h.redSqr(),d=this.x.redAdd(h).redSqr().redISub(f).redISub(l);d=d.redIAdd(d);var p=f.redAdd(f).redIAdd(f),g=p.redSqr(),m=l.redIAdd(l);m=(m=m.redIAdd(m)).redIAdd(m),e=g.redISub(d).redISub(d),t=p.redMul(d.redISub(e)).redISub(m),r=(r=this.y.redMul(this.z)).redIAdd(r)}return this.curve.jpoint(e,t,r)},f.prototype._threeDbl=function(){var e,t,r;if(this.zOne){var i=this.x.redSqr(),n=this.y.redSqr(),o=n.redSqr(),a=this.x.redAdd(n).redSqr().redISub(i).redISub(o);a=a.redIAdd(a);var s=i.redAdd(i).redIAdd(i).redIAdd(this.curve.a),c=s.redSqr().redISub(a).redISub(a);e=c;var u=o.redIAdd(o);u=(u=u.redIAdd(u)).redIAdd(u),t=s.redMul(a.redISub(c)).redISub(u),r=this.y.redAdd(this.y)}else{var f=this.z.redSqr(),h=this.y.redSqr(),l=this.x.redMul(h),d=this.x.redSub(f).redMul(this.x.redAdd(f));d=d.redAdd(d).redIAdd(d);var p=l.redIAdd(l),g=(p=p.redIAdd(p)).redAdd(p);e=d.redSqr().redISub(g),r=this.y.redAdd(this.z).redSqr().redISub(h).redISub(f);var m=h.redSqr();m=(m=(m=m.redIAdd(m)).redIAdd(m)).redIAdd(m),t=d.redMul(p.redISub(e)).redISub(m)}return this.curve.jpoint(e,t,r)},f.prototype._dbl=function(){var e=this.curve.a,t=this.x,r=this.y,i=this.z,n=i.redSqr().redSqr(),o=t.redSqr(),a=r.redSqr(),s=o.redAdd(o).redIAdd(o).redIAdd(e.redMul(n)),c=t.redAdd(t),u=(c=c.redIAdd(c)).redMul(a),f=s.redSqr().redISub(u.redAdd(u)),h=u.redISub(f),l=a.redSqr();l=(l=(l=l.redIAdd(l)).redIAdd(l)).redIAdd(l);var d=s.redMul(h).redISub(l),p=r.redAdd(r).redMul(i);return this.curve.jpoint(f,d,p)},f.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr(),i=t.redSqr(),n=e.redAdd(e).redIAdd(e),o=n.redSqr(),a=this.x.redAdd(t).redSqr().redISub(e).redISub(i),s=(a=(a=(a=a.redIAdd(a)).redAdd(a).redIAdd(a)).redISub(o)).redSqr(),c=i.redIAdd(i);c=(c=(c=c.redIAdd(c)).redIAdd(c)).redIAdd(c);var u=n.redIAdd(a).redSqr().redISub(o).redISub(s).redISub(c),f=t.redMul(u);f=(f=f.redIAdd(f)).redIAdd(f);var h=this.x.redMul(s).redISub(f);h=(h=h.redIAdd(h)).redIAdd(h);var l=this.y.redMul(u.redMul(c.redISub(u)).redISub(a.redMul(s)));l=(l=(l=l.redIAdd(l)).redIAdd(l)).redIAdd(l);var d=this.z.redAdd(a).redSqr().redISub(r).redISub(s);return this.curve.jpoint(h,l,d)},f.prototype.mul=function(e,t){return e=new n(e,t),this.curve._wnafMul(this,e)},f.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),r=e.z.redSqr();if(0!==this.x.redMul(r).redISub(e.x.redMul(t)).cmpn(0))return!1;var i=t.redMul(this.z),n=r.redMul(e.z);return 0===this.y.redMul(n).redISub(e.y.redMul(i)).cmpn(0)},f.prototype.eqXToP=function(e){var t=this.z.redSqr(),r=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(r))return!0;for(var i=e.clone(),n=this.curve.redN.redMul(t);;){if(i.iadd(this.curve.n),i.cmp(this.curve.p)>=0)return!1;if(r.redIAdd(n),0===this.x.cmp(r))return!0}},f.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},f.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,r){"use strict";var i=r(10),n=r(42),o=r(34),a=r(9);function s(e){o.call(this,"mont",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.i4=new i(4).toRed(this.red).redInvm(),this.two=new i(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new i(t,16),this.z=new i(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}n(s,o),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),i=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===i.redSqrt().redSqr().cmp(i)},n(c,o.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(a.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),i=e.redMul(t),n=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(i,n)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),i=this.x.redSub(this.z),n=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),a=n.redMul(i),s=t.z.redMul(o.redAdd(a).redSqr()),c=t.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,i=this.curve.point(null,null),n=[];0!==t.cmpn(0);t.iushrn(1))n.push(t.andln(1));for(var o=n.length-1;o>=0;o--)0===n[o]?(r=r.diffAdd(i,this),i=i.dbl()):(i=r.diffAdd(i,this),r=r.dbl());return i},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,r){"use strict";var i=r(9),n=r(10),o=r(42),a=r(34),s=i.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,a.call(this,"edwards",e),this.a=new n(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new n(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new n(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function u(e,t,r,i,o){a.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===i?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new n(t,16),this.y=new n(r,16),this.z=i?new n(i,16):this.curve.one,this.t=o&&new n(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,a),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,i){return this.point(e,t,r,i)},c.prototype.pointFromX=function(e,t){(e=new n(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=i.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new n(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),i=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=i.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),i=t.redMul(this.a).redAdd(r),n=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===i.cmp(n)},o(u,a.BasePoint),c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},c.prototype.point=function(e,t,r,i){return new u(this,e,t,r,i)},u.fromJSON=function(e,t){return new u(e,t[0],t[1],t[2])},u.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},u.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},u.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var i=this.curve._mulA(e),n=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=i.redAdd(t),a=o.redSub(r),s=i.redSub(t),c=n.redMul(a),u=o.redMul(s),f=n.redMul(s),h=a.redMul(o);return this.curve.point(c,u,h,f)},u.prototype._projDbl=function(){var e,t,r,i,n,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var u=(i=this.curve._mulA(s)).redAdd(c);this.zOne?(e=a.redSub(s).redSub(c).redMul(u.redSub(this.curve.two)),t=u.redMul(i.redSub(c)),r=u.redSqr().redSub(u).redSub(u)):(n=this.z.redSqr(),o=u.redSub(n).redISub(n),e=a.redSub(s).redISub(c).redMul(o),t=u.redMul(i.redSub(c)),r=u.redMul(o))}else i=s.redAdd(c),n=this.curve._mulC(this.z).redSqr(),o=i.redSub(n).redSub(n),e=this.curve._mulC(a.redISub(i)).redMul(o),t=this.curve._mulC(i).redMul(s.redISub(c)),r=i.redMul(o);return this.curve.point(e,t,r)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},u.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),i=this.t.redMul(this.curve.dd).redMul(e.t),n=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),a=n.redSub(i),s=n.redAdd(i),c=r.redAdd(t),u=o.redMul(a),f=s.redMul(c),h=o.redMul(c),l=a.redMul(s);return this.curve.point(u,f,l,h)},u.prototype._projAdd=function(e){var t,r,i=this.z.redMul(e.z),n=i.redSqr(),o=this.x.redMul(e.x),a=this.y.redMul(e.y),s=this.curve.d.redMul(o).redMul(a),c=n.redSub(s),u=n.redAdd(s),f=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(a),h=i.redMul(c).redMul(f);return this.curve.twisted?(t=i.redMul(u).redMul(a.redSub(this.curve._mulA(o))),r=c.redMul(u)):(t=i.redMul(u).redMul(a.redSub(o)),r=this.curve._mulC(c).redMul(u)),this.curve.point(h,t,r)},u.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},u.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},u.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},u.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},u.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()},u.prototype.getY=function(){return this.normalize(),this.y.fromRed()},u.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},u.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(i),0===this.x.cmp(t))return!0}},u.prototype.toP=u.prototype.normalize,u.prototype.mixedAdd=u.prototype.add},function(e,t,r){"use strict";t.sha1=r(95),t.sha224=r(96),t.sha256=r(61),t.sha384=r(97),t.sha512=r(62)},function(e,t,r){"use strict";var i=r(14),n=r(28),o=r(60),a=i.rotl32,s=i.sum32,c=i.sum32_5,u=o.ft_1,f=n.BlockHash,h=[1518500249,1859775393,2400959708,3395469782];function l(){if(!(this instanceof l))return new l;f.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}i.inherits(l,f),e.exports=l,l.blockSize=512,l.outSize=160,l.hmacStrength=80,l.padLength=64,l.prototype._update=function(e,t){for(var r=this.W,i=0;i<16;i++)r[i]=e[t+i];for(;i<r.length;i++)r[i]=a(r[i-3]^r[i-8]^r[i-14]^r[i-16],1);var n=this.h[0],o=this.h[1],f=this.h[2],l=this.h[3],d=this.h[4];for(i=0;i<r.length;i++){var p=~~(i/20),g=c(a(n,5),u(p,o,f,l),d,r[i],h[p]);d=l,l=f,f=a(o,30),o=n,n=g}this.h[0]=s(this.h[0],n),this.h[1]=s(this.h[1],o),this.h[2]=s(this.h[2],f),this.h[3]=s(this.h[3],l),this.h[4]=s(this.h[4],d)},l.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"big"):i.split32(this.h,"big")}},function(e,t,r){"use strict";var i=r(14),n=r(61);function o(){if(!(this instanceof o))return new o;n.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}i.inherits(o,n),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h.slice(0,7),"big"):i.split32(this.h.slice(0,7),"big")}},function(e,t,r){"use strict";var i=r(14),n=r(62);function o(){if(!(this instanceof o))return new o;n.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}i.inherits(o,n),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h.slice(0,12),"big"):i.split32(this.h.slice(0,12),"big")}},function(e,t,r){"use strict";var i=r(14),n=r(28),o=i.rotl32,a=i.sum32,s=i.sum32_3,c=i.sum32_4,u=n.BlockHash;function f(){if(!(this instanceof f))return new f;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function h(e,t,r,i){return e<=15?t^r^i:e<=31?t&r|~t&i:e<=47?(t|~r)^i:e<=63?t&i|r&~i:t^(r|~i)}function l(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function d(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}i.inherits(f,u),t.ripemd160=f,f.blockSize=512,f.outSize=160,f.hmacStrength=192,f.padLength=64,f.prototype._update=function(e,t){for(var r=this.h[0],i=this.h[1],n=this.h[2],u=this.h[3],f=this.h[4],y=r,v=i,S=n,_=u,w=f,I=0;I<80;I++){var O=a(o(c(r,h(I,i,n,u),e[p[I]+t],l(I)),m[I]),f);r=f,f=u,u=o(n,10),n=i,i=O,O=a(o(c(y,h(79-I,v,S,_),e[g[I]+t],d(I)),b[I]),w),y=w,w=_,_=o(S,10),S=v,v=O}O=s(this.h[1],n,_),this.h[1]=s(this.h[2],u,w),this.h[2]=s(this.h[3],f,y),this.h[3]=s(this.h[4],r,v),this.h[4]=s(this.h[0],i,S),this.h[0]=O},f.prototype._digest=function(e){return"hex"===e?i.toHex32(this.h,"little"):i.split32(this.h,"little")};var p=[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],g=[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],m=[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],b=[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]},function(e,t,r){"use strict";var i=r(14),n=r(22);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(i.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),n(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},o.prototype.update=function(e,t){return this.inner.update(e,t),this},o.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t){e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},function(e,t,r){"use strict";var i=r(10),n=r(102),o=r(9),a=r(43),s=r(58),c=o.assert,u=r(103),f=r(104);function h(e){if(!(this instanceof h))return new h(e);"string"==typeof e&&(c(Object.prototype.hasOwnProperty.call(a,e),"Unknown curve "+e),e=a[e]),e instanceof a.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=h,h.prototype.keyPair=function(e){return new u(this,e)},h.prototype.keyFromPrivate=function(e,t){return u.fromPrivate(this,e,t)},h.prototype.keyFromPublic=function(e,t){return u.fromPublic(this,e,t)},h.prototype.genKeyPair=function(e){e||(e={});for(var t=new n({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new i(2));;){var a=new i(t.generate(r));if(!(a.cmp(o)>0))return a.iaddn(1),this.keyFromPrivate(a)}},h.prototype._truncateToN=function(e,t,r){var n;if(i.isBN(e)||"number"==typeof e)n=(e=new i(e,16)).byteLength();else if("object"==typeof e)n=e.length,e=new i(e,16);else{var o=e.toString();n=o.length+1>>>1,e=new i(o,16)}"number"!=typeof r&&(r=8*n);var a=r-this.n.bitLength();return a>0&&(e=e.ushrn(a)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},h.prototype.sign=function(e,t,r,o){if("object"==typeof r&&(o=r,r=null),o||(o={}),"string"!=typeof e&&"number"!=typeof e&&!i.isBN(e)){c("object"==typeof e&&e&&"number"==typeof e.length,"Expected message to be an array-like, a hex string, or a BN instance"),c(e.length>>>0===e.length);for(var a=0;a<e.length;a++)c((255&e[a])===e[a])}t=this.keyFromPrivate(t,r),e=this._truncateToN(e,!1,o.msgBitLength),c(!e.isNeg(),"Can not sign a negative message");var s=this.n.byteLength(),u=t.getPrivate().toArray("be",s),h=e.toArray("be",s);c(new i(h).eq(e),"Can not sign message");for(var l=new n({hash:this.hash,entropy:u,nonce:h,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new i(1)),p=0;;p++){var g=o.k?o.k(p):new i(l.generate(this.n.byteLength()));if(!((g=this._truncateToN(g,!0)).cmpn(1)<=0||g.cmp(d)>=0)){var m=this.g.mul(g);if(!m.isInfinity()){var b=m.getX(),y=b.umod(this.n);if(0!==y.cmpn(0)){var v=g.invm(this.n).mul(y.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var S=(m.getY().isOdd()?1:0)|(0!==b.cmp(y)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),S^=1),new f({r:y,s:v,recoveryParam:S})}}}}}},h.prototype.verify=function(e,t,r,i,n){n||(n={}),e=this._truncateToN(e,!1,n.msgBitLength),r=this.keyFromPublic(r,i);var o=(t=new f(t,"hex")).r,a=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,c=a.invm(this.n),u=c.mul(e).umod(this.n),h=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(u,r.getPublic(),h)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(u,r.getPublic(),h)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},h.prototype.recoverPubKey=function(e,t,r,n){c((3&r)===r,"The recovery param is more than two bits"),t=new f(t,n);var o=this.n,a=new i(e),s=t.r,u=t.s,h=1&r,l=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");s=l?this.curve.pointFromX(s.add(this.curve.n),h):this.curve.pointFromX(s,h);var d=t.r.invm(o),p=o.sub(a).mul(d).umod(o),g=u.mul(d).umod(o);return this.g.mulAdd(p,s,g)},h.prototype.getKeyRecoveryParam=function(e,t,r,i){if(null!==(t=new f(t,i)).recoveryParam)return t.recoveryParam;for(var n=0;n<4;n++){var o;try{o=this.recoverPubKey(e,t,n)}catch(e){continue}if(o.eq(r))return n}throw new Error("Unable to find valid recovery factor")}},function(e,t,r){"use strict";var i=r(35),n=r(57),o=r(22);function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=n.toArray(e.entropy,e.entropyEnc||"hex"),r=n.toArray(e.nonce,e.nonceEnc||"hex"),i=n.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,i)}e.exports=a,a.prototype._init=function(e,t,r){var i=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var n=0;n<this.V.length;n++)this.K[n]=0,this.V[n]=1;this._update(i),this._reseed=1,this.reseedInterval=281474976710656},a.prototype._hmac=function(){return new i.hmac(this.hash,this.K)},a.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},a.prototype.reseed=function(e,t,r,i){"string"!=typeof t&&(i=r,r=t,t=null),e=n.toArray(e,t),r=n.toArray(r,i),o(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,i){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(i=r,r=t,t=null),r&&(r=n.toArray(r,i||"hex"),this._update(r));for(var o=[];o.length<e;)this.V=this._hmac().update(this.V).digest(),o=o.concat(this.V);var a=o.slice(0,e);return this._update(r),this._reseed++,n.encode(a,t)}},function(e,t,r){"use strict";var i=r(10),n=r(9).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new i(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?n(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||n(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||n(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t,r){return this.ec.verify(e,t,this,void 0,r)},o.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},function(e,t,r){"use strict";var i=r(10),n=r(9),o=n.assert;function a(e,t){if(e instanceof a)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new i(e.r,16),this.s=new i(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var i=15&r;if(0===i||i>4)return!1;if(0===e[t.place])return!1;for(var n=0,o=0,a=t.place;o<i;o++,a++)n<<=8,n|=e[a],n>>>=0;return!(n<=127)&&(t.place=a,n)}function u(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t<r;)t++;return 0===t?e:e.slice(t)}function f(e,t){if(t<128)e.push(t);else{var r=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=a,a.prototype._importDER=function(e,t){e=n.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=c(e,r);if(!1===a)return!1;if(0!=(128&e[r.place]))return!1;var u=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var f=c(e,r);if(!1===f)return!1;if(e.length!==f+r.place)return!1;if(0!=(128&e[r.place]))return!1;var h=e.slice(r.place,f+r.place);if(0===u[0]){if(!(128&u[1]))return!1;u=u.slice(1)}if(0===h[0]){if(!(128&h[1]))return!1;h=h.slice(1)}return this.r=new i(u),this.s=new i(h),this.recoveryParam=null,!0},a.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=u(t),r=u(r);!(r[0]||128&r[1]);)r=r.slice(1);var i=[2];f(i,t.length),(i=i.concat(t)).push(2),f(i,r.length);var o=i.concat(r),a=[48];return f(a,o.length),a=a.concat(o),n.encode(a,e)}},function(e,t,r){"use strict";var i=r(35),n=r(43),o=r(9),a=o.assert,s=o.parseBytes,c=r(106),u=r(107);function f(e){if(a("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof f))return new f(e);e=n[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=i.sha512}e.exports=f,f.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),i=this.hashInt(r.messagePrefix(),e),n=this.g.mul(i),o=this.encodePoint(n),a=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=i.add(a).umod(this.curve.n);return this.makeSignature({R:n,S:c,Rencoded:o})},f.prototype.verify=function(e,t,r){if(e=s(e),(t=this.makeSignature(t)).S().gte(t.eddsa.curve.n)||t.S().isNeg())return!1;var i=this.keyFromPublic(r),n=this.hashInt(t.Rencoded(),i.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(i.pub().mul(n)).eq(o)},f.prototype.hashInt=function(){for(var e=this.hash(),t=0;t<arguments.length;t++)e.update(arguments[t]);return o.intFromLE(e.digest()).umod(this.curve.n)},f.prototype.keyFromPublic=function(e){return c.fromPublic(this,e)},f.prototype.keyFromSecret=function(e){return c.fromSecret(this,e)},f.prototype.makeSignature=function(e){return e instanceof u?e:new u(this,e)},f.prototype.encodePoint=function(e){var t=e.getY().toArray("le",this.encodingLength);return t[this.encodingLength-1]|=e.getX().isOdd()?128:0,t},f.prototype.decodePoint=function(e){var t=(e=o.parseBytes(e)).length-1,r=e.slice(0,t).concat(-129&e[t]),i=0!=(128&e[t]),n=o.intFromLE(r);return this.curve.pointFromY(n,i)},f.prototype.encodeInt=function(e){return e.toArray("le",this.encodingLength)},f.prototype.decodeInt=function(e){return o.intFromLE(e)},f.prototype.isPoint=function(e){return e instanceof this.pointClass}},function(e,t,r){"use strict";var i=r(9),n=i.assert,o=i.parseBytes,a=i.cachedProperty;function s(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},a(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),a(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),a(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,i=t.slice(0,e.encodingLength);return i[0]&=248,i[r]&=127,i[r]|=64,i})),a(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),a(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),a(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return n(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return n(this._secret,"KeyPair is public only"),i.encode(this.secret(),e)},s.prototype.getPublic=function(e){return i.encode(this.pubBytes(),e)},e.exports=s},function(e,t,r){"use strict";var i=r(10),n=r(9),o=n.assert,a=n.cachedProperty,s=n.parseBytes;function c(e,t){this.eddsa=e,"object"!=typeof t&&(t=s(t)),Array.isArray(t)&&(o(t.length===2*e.encodingLength,"Signature has invalid size"),t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof i&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}a(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),a(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),a(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),a(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return n.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},function(e){e.exports={name:"@smartledger/bsv",version:"3.3.2",description:"🚀 Complete Bitcoin SV development framework with Legal Token Protocol (LTP), Global Digital Attestation Framework (GDAF), Shamir Secret Sharing, and 9 flexible loading options. Includes primitives-only architecture for maximum integration flexibility, SmartContract framework, covenant builder, and comprehensive Bitcoin SV API. Perfect for legal tokens, DeFi, smart contracts, and secure Bitcoin applications.",author:"SmartLedger Technology <hello@smartledger.technology> (https://smartledger.technology)",homepage:"https://github.com/codenlighten/smartledger-bsv#readme",bugs:{url:"https://github.com/codenlighten/smartledger-bsv/issues"},main:"index.js",scripts:{lint:"standard",test:"standard && mocha","test:ltp":"node complete_ltp_demo.js","test:ltp-primitives":"node simple_demo.js","test:architecture":"node architecture_demo.js","test:js2script":"node lib/smart_contract/opcode_map.js && node lib/smart_contract/covenant_builder.js","test:opcodes":"node lib/smart_contract/opcode_list.js","test:covenants":"node examples/covenants/advanced_covenant_demo.js","test:scripts":"node examples/scripts/custom_script_signature_test.js","test:basic":"node examples/basic/transaction-creation.js","test:all":"npm test && npm run test:covenants && npm run test:scripts",coverage:"nyc --reporter=text npm run test","build-bsv":'NODE_OPTIONS="--openssl-legacy-provider" webpack index.js --config build/webpack.config.js',"build-ecies":'NODE_OPTIONS="--openssl-legacy-provider" webpack ecies/index.js --config build/webpack.subproject.config.js --output-library bsvEcies -o bsv-ecies.min.js',"build-message":'NODE_OPTIONS="--openssl-legacy-provider" webpack message/index.js --config build/webpack.subproject.config.js --output-library bsvMessage -o bsv-message.min.js',"build-mnemonic":'NODE_OPTIONS="--openssl-legacy-provider" webpack mnemonic/index.js --config build/webpack.subproject.config.js --output-library bsvMnemonic -o bsv-mnemonic.min.js',"build-shamir":'NODE_OPTIONS="--openssl-legacy-provider" webpack shamir-entry.js --config build/webpack.subproject.config.js --output-library bsvShamir -o bsv-shamir.min.js',"build-ltp":'NODE_OPTIONS="--openssl-legacy-provider" webpack ltp-entry.js --config build/webpack.ltp.config.js',"build-smartcontract":'NODE_OPTIONS="--openssl-legacy-provider" webpack smartcontract-entry.js --config build/webpack.smartcontract.config.js',"build-covenant":'NODE_OPTIONS="--openssl-legacy-provider" webpack covenant-entry.js --config build/webpack.covenant.config.js',"build-script-helper":'NODE_OPTIONS="--openssl-legacy-provider" webpack script-helper-entry.js --config build/webpack.script-helper.config.js',"build-security":'NODE_OPTIONS="--openssl-legacy-provider" webpack security-entry.js --config build/webpack.security.config.js',"build-bundle":'NODE_OPTIONS="--openssl-legacy-provider" webpack bundle-entry.js --config build/webpack.bundle.config.js',build:"npm run build-bsv && npm run build-ecies && npm run build-message && npm run build-mnemonic && npm run build-shamir && npm run build-smartcontract","build-specialized":"npm run build-covenant && npm run build-script-helper && npm run build-security","build-all":"npm run build && npm run build-bundle && npm run build-specialized","test:browser":"echo 'Open tests/standalone-modules-test.html in browser for comprehensive testing'","test:bundle":"echo 'Open tests/bundle-completeness-test.html in browser to verify bundle completeness'",demo:"npm run test:covenants","demo:basic":"npm run test:basic","demo:scripts":"npm run test:scripts","demo:preimage":"echo '🧠 BIP-143 Preimage Extractor Demo' && node examples/preimage/extract_preimage_bidirectional.js","preimage:extract":"node examples/preimage/extract_preimage_bidirectional.js",prepublishOnly:'NODE_OPTIONS="--openssl-legacy-provider" npm run build'},unpkg:"bsv.min.js",jsdelivr:"bsv.min.js",cdn:"bsv.min.js",files:["index.js","lib/","utilities/","ecies/","message/","mnemonic/","build/","tests/","*-entry.js","bsv.min.js","bsv.bundle.js","bsv-ecies.min.js","bsv-message.min.js","bsv-mnemonic.min.js","bsv-shamir.min.js","bsv-gdaf.min.js","bsv-ltp.min.js","bsv-smartcontract.min.js","bsv-covenant.min.js","bsv-script-helper.min.js","bsv-security.min.js","bsv.d.ts","validation_test.js","test_shamir.js","shamir_demo.js","complete_ltp_demo.js","simple_demo.js","architecture_demo.js","test_standalone_shamir.html","docs/","examples/","LICENSE","README.md","SECURITY.md","CHANGELOG.md"],keywords:["bitcoin","bitcoin-sv","bsv","legal-token-protocol","ltp","legal-tokens","primitives-only","legal-compliance","property-rights","obligations","attestations","gdaf","global-digital-attestation","w3c-credentials","verifiable-credentials","decentralized-identity","shamir-secret-sharing","threshold-cryptography","cryptocurrency","blockchain","smart-contracts","defi","covenant","covenants","script-debugger","debug-tools","modular-loading","standalone-modules","security-hardened","elliptic-curve-fix","smartledger","transaction","address","signature","wallet","hd-wallet","mnemonic","ecies","encryption","message-signing","pushtx","pels","bip143","preimage","shamir-secret-sharing","threshold-cryptography","secret-splitting","global-digital-attestation","gdaf","verifiable-credentials","w3c-credentials","decentralized-identity","did-resolution","zero-knowledge-proofs","blockchain-anchoring","attestation-framework","nchain","custom-scripts","multisig","timelock","conditional-scripts","utxo-management","ultra-low-fees","javascript-to-script","opcode-mapping","covenant-builder","script-simulation","bitcoin-script","asm-generation","advanced-features","script-development","blockchain-simulator","miner-simulator","testing-tools","development-framework","browser-compatible","nodejs-compatible","webpack-ready","cdn-ready","typescript-definitions","vulnerability-free","drop-in-replacement","performance-optimized","bip21","bip32","bip37","bip69","bip70"],repository:{type:"git",url:"https://github.com/codenlighten/smartledger-bsv"},browser:{request:"browser-request"},dependencies:{"aes-js":"^3.1.2","bn.js":"=4.11.9",bs58:"=4.0.1","clone-deep":"^4.0.1",elliptic:"6.6.1","hash.js":"^1.1.7",inherits:"2.0.3",unorm:"1.4.1"},devDependencies:{brfs:"2.0.1",chai:"4.2.0",mocha:"^8.4.0",nyc:"^14.1.1",sinon:"7.2.3",standard:"12.0.1",webpack:"4.29.3","webpack-cli":"^3.3.12"},license:"MIT",standard:{globals:["after","afterEach","before","beforeEach","describe","it"],ignore:["dist/**"]}}},function(e,t,r){"use strict";var i="https://docs.moneybutton.com/";e.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: "+i+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"}]}]},function(e,t,r){"use strict";(function(t){var i=r(35),n=r(3),o=e.exports;o.sha1=function(e){return n.checkArgument(t.isBuffer(e)),t.from(i.sha1().update(e).digest("hex"),"hex")},o.sha1.blocksize=512,o.sha256=function(e){return n.checkArgument(t.isBuffer(e)),t.from(i.sha256().update(e).digest("hex"),"hex")},o.sha256.blocksize=512,o.sha256sha256=function(e){return n.checkArgument(t.isBuffer(e)),o.sha256(o.sha256(e))},o.ripemd160=function(e){return n.checkArgument(t.isBuffer(e)),t.from(i.ripemd160().update(e).digest("hex"),"hex")},o.sha256ripemd160=function(e){return n.checkArgument(t.isBuffer(e)),o.ripemd160(o.sha256(e))},o.sha512=function(e){return n.checkArgument(t.isBuffer(e)),t.from(i.sha512().update(e).digest("hex"),"hex")},o.sha512.blocksize=1024,o.hmac=function(e,r,i){n.checkArgument(t.isBuffer(r)),n.checkArgument(t.isBuffer(i)),n.checkArgument(e.blocksize);var o=e.blocksize/8;if(i.length>o)i=e(i);else if(i<o){var a=t.alloc(o);a.fill(0),i.copy(a),i=a}var s=t.alloc(o);s.fill(92);var c=t.alloc(o);c.fill(54);for(var u=t.alloc(o),f=t.alloc(o),h=0;h<o;h++)u[h]=s[h]^i[h],f[h]=c[h]^i[h];return e(t.concat([u,e(t.concat([f,r]))]))},o.sha256hmac=function(e,t){return o.hmac(o.sha256,e,t)},o.sha512hmac=function(e,t){return o.hmac(o.sha512,e,t)}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(8),n=r(3),o=e.exports;o.sha1=function(e){return n.checkArgument(t.isBuffer(e)),i.createHash("sha1").update(e).digest()},o.sha1.blocksize=512,o.sha256=function(e){return n.checkArgument(t.isBuffer(e)),i.createHash("sha256").update(e).digest()},o.sha256.blocksize=512,o.sha256sha256=function(e){return n.checkArgument(t.isBuffer(e)),o.sha256(o.sha256(e))},o.ripemd160=function(e){return n.checkArgument(t.isBuffer(e)),i.createHash("ripemd160").update(e).digest()},o.sha256ripemd160=function(e){return n.checkArgument(t.isBuffer(e)),o.ripemd160(o.sha256(e))},o.sha512=function(e){return n.checkArgument(t.isBuffer(e)),i.createHash("sha512").update(e).digest()},o.sha512.blocksize=1024,o.hmac=function(e,r,i){n.checkArgument(t.isBuffer(r)),n.checkArgument(t.isBuffer(i)),n.checkArgument(e.blocksize);var o=e.blocksize/8;if(i.length>o)i=e(i);else if(i<o){var a=t.alloc(o);a.fill(0),i.copy(a),i=a}var s=t.alloc(o);s.fill(92);var c=t.alloc(o);c.fill(54);for(var u=t.alloc(o),f=t.alloc(o),h=0;h<o;h++)u[h]=s[h]^i[h],f[h]=c[h]^i[h];return e(t.concat([u,e(t.concat([f,r]))]))},o.sha256hmac=function(e,t){return o.hmac(o.sha256,e,t)},o.sha512hmac=function(e,t){return o.hmac(o.sha512,e,t)}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(113);e.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},i=0;i<t.length;++i)r[t[i]]=t[i];var n=Object.assign({},r),o="";for(var a in n)o+=a;return e!==o}()||function(){if(!Object.assign||!Object.preventExtensions)return!1;var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return"y"===e[1]}return!1}()?i:Object.assign:i}},function(e,t,r){"use strict";var i=r(114),n=r(65)(),o=r(116),a=r(46),s=o("Array.prototype.push"),c=o("Object.prototype.propertyIsEnumerable"),u=n?a.getOwnPropertySymbols:null;e.exports=function(e,t){if(null==e)throw new TypeError("target must be an object");var r=a(e);if(1===arguments.length)return r;for(var o=1;o<arguments.length;++o){var f=a(arguments[o]),h=i(f),l=n&&(a.getOwnPropertySymbols||u);if(l)for(var d=l(f),p=0;p<d.length;++p){var g=d[p];c(f,g)&&s(h,g)}for(var m=0;m<h.length;++m){var b=h[m];if(c(f,b)){var y=f[b];r[b]=y}}}return r}},function(e,t,r){"use strict";var i=Array.prototype.slice,n=r(64),o=Object.keys,a=o?function(e){return o(e)}:r(115),s=Object.keys;a.shim=function(){Object.keys?function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2)||(Object.keys=function(e){return n(e)?s(i.call(e)):s(e)}):Object.keys=a;return Object.keys||a},e.exports=a},function(e,t,r){"use strict";var i;if(!Object.keys){var n=Object.prototype.hasOwnProperty,o=Object.prototype.toString,a=r(64),s=Object.prototype.propertyIsEnumerable,c=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),f=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],h=function(e){var t=e.constructor;return t&&t.prototype===e},l={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},d=function(){if("undefined"==typeof window)return!1;for(var e in window)try{if(!l["$"+e]&&n.call(window,e)&&null!==window[e]&&"object"==typeof window[e])try{h(window[e])}catch(e){return!0}}catch(e){return!0}return!1}();i=function(e){var t=null!==e&&"object"==typeof e,r="[object Function]"===o.call(e),i=a(e),s=t&&"[object String]"===o.call(e),l=[];if(!t&&!r&&!i)throw new TypeError("Object.keys called on a non-object");var p=u&&r;if(s&&e.length>0&&!n.call(e,0))for(var g=0;g<e.length;++g)l.push(String(g));if(i&&e.length>0)for(var m=0;m<e.length;++m)l.push(String(m));else for(var b in e)p&&"prototype"===b||!n.call(e,b)||l.push(String(b));if(c)for(var y=function(e){if("undefined"==typeof window||!d)return h(e);try{return h(e)}catch(e){return!1}}(e),v=0;v<f.length;++v)y&&"constructor"===f[v]||!n.call(e,f[v])||l.push(f[v]);return l}}e.exports=i},function(e,t,r){"use strict";var i=r(117),n=r(70),o=n([i("%String.prototype.indexOf%")]);e.exports=function(e,t){var r=i(e,!!t);return"function"==typeof r&&o(e,".prototype.")>-1?n([r]):r}},function(e,t,r){"use strict";var i=r(46),n=r(118),o=r(119),a=r(120),s=r(121),c=r(122),u=r(66),f=r(123),h=r(124),l=r(125),d=r(126),p=r(127),g=r(128),m=r(129),b=r(130),y=Function,v=function(e){try{return y('"use strict"; return ('+e+").constructor;")()}catch(e){}},S=r(67),_=r(133),w=function(){throw new u},I=S?function(){try{return w}catch(e){try{return S(arguments,"callee").get}catch(e){return w}}}():w,O=r(134)(),A=r(135),P=r(69),k=r(68),E=r(71),x=r(47),T={},R="undefined"!=typeof Uint8Array&&A?A(Uint8Array):void 0,N={__proto__:null,"%AggregateError%":"undefined"==typeof AggregateError?void 0:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?void 0:ArrayBuffer,"%ArrayIteratorPrototype%":O&&A?A([][Symbol.iterator]()):void 0,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":"undefined"==typeof Atomics?void 0:Atomics,"%BigInt%":"undefined"==typeof BigInt?void 0:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?void 0:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?void 0:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?void 0:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":n,"%eval%":eval,"%EvalError%":o,"%Float16Array%":"undefined"==typeof Float16Array?void 0:Float16Array,"%Float32Array%":"undefined"==typeof Float32Array?void 0:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?void 0:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?void 0:FinalizationRegistry,"%Function%":y,"%GeneratorFunction%":T,"%Int8Array%":"undefined"==typeof Int8Array?void 0:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?void 0:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?void 0:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":O&&A?A(A([][Symbol.iterator]())):void 0,"%JSON%":"object"==typeof JSON?JSON:void 0,"%Map%":"undefined"==typeof Map?void 0:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&O&&A?A((new Map)[Symbol.iterator]()):void 0,"%Math%":Math,"%Number%":Number,"%Object%":i,"%Object.getOwnPropertyDescriptor%":S,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?void 0:Promise,"%Proxy%":"undefined"==typeof Proxy?void 0:Proxy,"%RangeError%":a,"%ReferenceError%":s,"%Reflect%":"undefined"==typeof Reflect?void 0:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?void 0:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&O&&A?A((new Set)[Symbol.iterator]()):void 0,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?void 0:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":O&&A?A(""[Symbol.iterator]()):void 0,"%Symbol%":O?Symbol:void 0,"%SyntaxError%":c,"%ThrowTypeError%":I,"%TypedArray%":R,"%TypeError%":u,"%Uint8Array%":"undefined"==typeof Uint8Array?void 0:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?void 0:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?void 0:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?void 0:Uint32Array,"%URIError%":f,"%WeakMap%":"undefined"==typeof WeakMap?void 0:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?void 0:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?void 0:WeakSet,"%Function.prototype.call%":x,"%Function.prototype.apply%":E,"%Object.defineProperty%":_,"%Object.getPrototypeOf%":P,"%Math.abs%":h,"%Math.floor%":l,"%Math.max%":d,"%Math.min%":p,"%Math.pow%":g,"%Math.round%":m,"%Math.sign%":b,"%Reflect.getPrototypeOf%":k};if(A)try{null.error}catch(e){var M=A(A(e));N["%Error.prototype%"]=M}var C={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},D=r(38),B=r(140),j=D.call(x,Array.prototype.concat),H=D.call(E,Array.prototype.splice),L=D.call(x,String.prototype.replace),U=D.call(x,String.prototype.slice),F=D.call(x,RegExp.prototype.exec),z=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,K=/\\(\\)?/g,V=function(e){var t=U(e,0,1),r=U(e,-1);if("%"===t&&"%"!==r)throw new c("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==t)throw new c("invalid intrinsic syntax, expected opening `%`");var i=[];return L(e,z,(function(e,t,r,n){i[i.length]=r?L(n,K,"$1"):t||e})),i},q=function(e,t){var r,i=e;if(B(C,i)&&(i="%"+(r=C[i])[0]+"%"),B(N,i)){var n=N[i];if(n===T&&(n=function e(t){var r;if("%AsyncFunction%"===t)r=v("async function () {}");else if("%GeneratorFunction%"===t)r=v("function* () {}");else if("%AsyncGeneratorFunction%"===t)r=v("async function* () {}");else if("%AsyncGenerator%"===t){var i=e("%AsyncGeneratorFunction%");i&&(r=i.prototype)}else if("%AsyncIteratorPrototype%"===t){var n=e("%AsyncGenerator%");n&&A&&(r=A(n.prototype))}return N[t]=r,r}(i)),void 0===n&&!t)throw new u("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:r,name:i,value:n}}throw new c("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!=typeof e||0===e.length)throw new u("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof t)throw new u('"allowMissing" argument must be a boolean');if(null===F(/^%?[^%]*%?$/,e))throw new c("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=V(e),i=r.length>0?r[0]:"",n=q("%"+i+"%",t),o=n.name,a=n.value,s=!1,f=n.alias;f&&(i=f[0],H(r,j([0,1],f)));for(var h=1,l=!0;h<r.length;h+=1){var d=r[h],p=U(d,0,1),g=U(d,-1);if(('"'===p||"'"===p||"`"===p||'"'===g||"'"===g||"`"===g)&&p!==g)throw new c("property names with quotes must have matching quotes");if("constructor"!==d&&l||(s=!0),B(N,o="%"+(i+="."+d)+"%"))a=N[o];else if(null!=a){if(!(d in a)){if(!t)throw new u("base intrinsic for "+e+" exists, but the property is not available.");return}if(S&&h+1>=r.length){var m=S(a,d);a=(l=!!m)&&"get"in m&&!("originalValue"in m.get)?m.get:a[d]}else l=B(a,d),a=a[d];l&&!s&&(N[o]=a)}}return a}},function(e,t,r){"use strict";e.exports=Error},function(e,t,r){"use strict";e.exports=EvalError},function(e,t,r){"use strict";e.exports=RangeError},function(e,t,r){"use strict";e.exports=ReferenceError},function(e,t,r){"use strict";e.exports=SyntaxError},function(e,t,r){"use strict";e.exports=URIError},function(e,t,r){"use strict";e.exports=Math.abs},function(e,t,r){"use strict";e.exports=Math.floor},function(e,t,r){"use strict";e.exports=Math.max},function(e,t,r){"use strict";e.exports=Math.min},function(e,t,r){"use strict";e.exports=Math.pow},function(e,t,r){"use strict";e.exports=Math.round},function(e,t,r){"use strict";var i=r(131);e.exports=function(e){return i(e)||0===e?e:e<0?-1:1}},function(e,t,r){"use strict";e.exports=Number.isNaN||function(e){return e!=e}},function(e,t,r){"use strict";e.exports=Object.getOwnPropertyDescriptor},function(e,t,r){"use strict";var i=Object.defineProperty||!1;if(i)try{i({},"a",{value:1})}catch(e){i=!1}e.exports=i},function(e,t,r){"use strict";var i="undefined"!=typeof Symbol&&Symbol,n=r(65);e.exports=function(){return"function"==typeof i&&("function"==typeof Symbol&&("symbol"==typeof i("foo")&&("symbol"==typeof Symbol("bar")&&n())))}},function(e,t,r){"use strict";var i=r(68),n=r(69),o=r(136);e.exports=i?function(e){return i(e)}:n?function(e){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new TypeError("getProto: not an object");return n(e)}:o?function(e){return o(e)}:null},function(e,t,r){"use strict";var i,n=r(70),o=r(67);try{i=[].__proto__===Array.prototype}catch(e){if(!e||"object"!=typeof e||!("code"in e)||"ERR_PROTO_ACCESS"!==e.code)throw e}var a=!!i&&o&&o(Object.prototype,"__proto__"),s=Object,c=s.getPrototypeOf;e.exports=a&&"function"==typeof a.get?n([a.get]):"function"==typeof c&&function(e){return c(null==e?e:s(e))}},function(e,t,r){"use strict";var i="Function.prototype.bind called on incompatible ",n=Object.prototype.toString,o=Math.max,a=function(e,t){for(var r=[],i=0;i<e.length;i+=1)r[i]=e[i];for(var n=0;n<t.length;n+=1)r[n+e.length]=t[n];return r},s=function(e,t){for(var r=[],i=t||0,n=0;i<e.length;i+=1,n+=1)r[n]=e[i];return r},c=function(e,t){for(var r="",i=0;i<e.length;i+=1)r+=e[i],i+1<e.length&&(r+=t);return r};e.exports=function(e){var t=this;if("function"!=typeof t||"[object Function]"!==n.apply(t))throw new TypeError(i+t);for(var r,u=s(arguments,1),f=function(){if(this instanceof r){var i=t.apply(this,a(u,arguments));return Object(i)===i?i:this}return t.apply(e,a(u,arguments))},h=o(0,t.length-u.length),l=[],d=0;d<h;d++)l[d]="$"+d;if(r=Function("binder","return function ("+c(l,",")+"){ return binder.apply(this,arguments); }")(f),t.prototype){var p=function(){};p.prototype=t.prototype,r.prototype=new p,p.prototype=null}return r}},function(e,t,r){"use strict";var i=r(38),n=r(71),o=r(47),a=r(139);e.exports=a||i.call(o,n)},function(e,t,r){"use strict";e.exports="undefined"!=typeof Reflect&&Reflect&&Reflect.apply},function(e,t,r){"use strict";var i=Function.prototype.call,n=Object.prototype.hasOwnProperty,o=r(38);e.exports=o.call(i,n)},function(e,t){e.exports=function(e){return e&&"object"==typeof e&&"function"==typeof e.copy&&"function"==typeof e.fill&&"function"==typeof e.readUInt8}},function(e,t,r){"use strict";const i=r(143),n=r(73),o=r(144);function a(e,t){switch(n(e)){case"object":return function(e,t){if("function"==typeof t)return t(e);if(t||o(e)){const r=new e.constructor;for(let i in e)r[i]=a(e[i],t);return r}return e}(e,t);case"array":return function(e,t){const r=new e.constructor(e.length);for(let i=0;i<e.length;i++)r[i]=a(e[i],t);return r}(e,t);default:return i(e)}}e.exports=a},function(e,t,r){"use strict";(function(t){
|
|
21
|
-
/*!
|
|
22
|
-
* shallow-clone <https://github.com/jonschlinkert/shallow-clone>
|
|
23
|
-
*
|
|
24
|
-
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
25
|
-
* Released under the MIT License.
|
|
26
|
-
*/
|
|
27
|
-
const i=Symbol.prototype.valueOf,n=r(73);e.exports=function(e,r){switch(n(e)){case"array":return e.slice();case"object":return Object.assign({},e);case"date":return new e.constructor(Number(e));case"map":return new Map(e);case"set":return new Set(e);case"buffer":return function(e){const r=e.length,i=t.allocUnsafe?t.allocUnsafe(r):t.from(r);return e.copy(i),i}(e);case"symbol":return function(e){return i?Object(i.call(e)):{}}(e);case"arraybuffer":return function(e){const t=new e.constructor(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}(e);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return function(e,t){return new e.constructor(e.buffer,e.byteOffset,e.length)}(e);case"regexp":return function(e){const t=void 0!==e.flags?e.flags:/\w+$/.exec(e)||void 0,r=new e.constructor(e.source,t);return r.lastIndex=e.lastIndex,r}(e);case"error":return Object.create(e);default:return e}}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";
|
|
28
|
-
/*!
|
|
29
|
-
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
|
|
30
|
-
*
|
|
31
|
-
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
32
|
-
* Released under the MIT License.
|
|
33
|
-
*/var i=r(145);function n(e){return!0===i(e)&&"[object Object]"===Object.prototype.toString.call(e)}e.exports=function(e){var t,r;return!1!==n(e)&&("function"==typeof(t=e.constructor)&&(!1!==n(r=t.prototype)&&!1!==r.hasOwnProperty("isPrototypeOf")))}},function(e,t,r){"use strict";
|
|
34
|
-
/*!
|
|
35
|
-
* isobject <https://github.com/jonschlinkert/isobject>
|
|
36
|
-
*
|
|
37
|
-
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
38
|
-
* Released under the MIT License.
|
|
39
|
-
*/e.exports=function(e){return null!=e&&"object"==typeof e&&!1===Array.isArray(e)}},function(e,t,r){"use strict";var i=r(23),n=r(3),o=r(31),a=r(21),s=r(20),c=r(13),u=r(5),f=r(32);function h(){o.apply(this,arguments)}i(h,o),h.prototype.getSignatures=function(e,t,r,i){n.checkState(this.output instanceof a),i=i||u.SIGHASH_ALL|u.SIGHASH_FORKID;var o=t.toPublicKey();return o.toString()===this.output.script.getPublicKey().toString("hex")?[new f({publicKey:o,prevTxId:this.prevTxId,outputIndex:this.outputIndex,inputIndex:r,signature:s.sign(e,t,i,r,this.output.script,this.output.satoshisBN),sigtype:i})]:[]},h.prototype.addSignature=function(e,t){return n.checkState(this.isValidSignature(e,t),"Signature is invalid"),this.setScript(c.buildPublicKeyIn(t.signature.toDER(),t.sigtype)),this},h.prototype.clearSignatures=function(){return this.setScript(c.empty()),this},h.prototype.isFullySigned=function(){return this.script.isPublicKeyIn()},h.SCRIPT_MAX_SIZE=74,h.prototype._estimateSize=function(){return o.BASE_SIZE+h.SCRIPT_MAX_SIZE},e.exports=h},function(e,t,r){"use strict";var i=r(23),n=r(3),o=r(6),a=r(31),s=r(21),c=r(20),u=r(13),f=r(5),h=r(32);function l(){a.apply(this,arguments)}i(l,a),l.prototype.getSignatures=function(e,t,r,i,a){return n.checkState(this.output instanceof s),a=a||o.sha256ripemd160(t.publicKey.toBuffer()),i=i||f.SIGHASH_ALL|f.SIGHASH_FORKID,a.equals(this.output.script.getPublicKeyHash())?[new h({publicKey:t.publicKey,prevTxId:this.prevTxId,outputIndex:this.outputIndex,inputIndex:r,signature:c.sign(e,t,i,r,this.output.script,this.output.satoshisBN),sigtype:i})]:[]},l.prototype.addSignature=function(e,t){return n.checkState(this.isValidSignature(e,t),"Signature is invalid"),this.setScript(u.buildPublicKeyHashIn(t.publicKey,t.signature.toDER(),t.sigtype)),this},l.prototype.clearSignatures=function(){return this.setScript(u.empty()),this},l.prototype.isFullySigned=function(){return this.script.isPublicKeyHashIn()},l.SCRIPT_MAX_SIZE=108,l.prototype._estimateSize=function(){return a.BASE_SIZE+l.SCRIPT_MAX_SIZE},e.exports=l},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(23),o=r(31),a=r(21),s=r(3),c=r(13),u=r(5),f=r(20),h=r(32),l=r(15),d=r(30);function p(e,t,r,n){o.apply(this,arguments);var a=this;t=t||e.publicKeys,r=r||e.threshold,n=n||e.signatures,this.publicKeys=t.map(e=>e.toString("hex")).sort().map(e=>new l(e)),s.checkState(c.buildMultisigOut(this.publicKeys,r).equals(this.output.script),"Provided public keys don't match to the provided output script"),this.publicKeyIndex={},i.each(this.publicKeys,(function(e,t){a.publicKeyIndex[e.toString()]=t})),this.threshold=r,this.signatures=n?this._deserializeSignatures(n):new Array(this.publicKeys.length)}n(p,o),p.prototype.toObject=function(){var e=o.prototype.toObject.apply(this,arguments);return e.threshold=this.threshold,e.publicKeys=i.map(this.publicKeys,(function(e){return e.toString()})),e.signatures=this._serializeSignatures(),e},p.prototype._deserializeSignatures=function(e){return i.map(e,(function(e){if(e)return new h(e)}))},p.prototype._serializeSignatures=function(){return i.map(this.signatures,(function(e){if(e)return e.toObject()}))},p.prototype.getSignatures=function(e,t,r,n){s.checkState(this.output instanceof a),n=n||u.SIGHASH_ALL|u.SIGHASH_FORKID;var o=this,c=[];return i.each(this.publicKeys,(function(i){i.toString()===t.publicKey.toString()&&c.push(new h({publicKey:t.publicKey,prevTxId:o.prevTxId,outputIndex:o.outputIndex,inputIndex:r,signature:f.sign(e,t,n,r,o.output.script,o.output.satoshisBN),sigtype:n}))})),c},p.prototype.addSignature=function(e,t){return s.checkState(!this.isFullySigned(),"All needed signatures have already been added"),s.checkArgument(!i.isUndefined(this.publicKeyIndex[t.publicKey.toString()]),"Signature has no matching public key"),s.checkState(this.isValidSignature(e,t)),this.signatures[this.publicKeyIndex[t.publicKey.toString()]]=t,this._updateScript(),this},p.prototype._updateScript=function(){return this.setScript(c.buildMultisigIn(this.publicKeys,this.threshold,this._createSignatures())),this},p.prototype._createSignatures=function(){return i.map(i.filter(this.signatures,(function(e){return!i.isUndefined(e)})),(function(e){return t.concat([e.signature.toDER(),t.from([255&e.sigtype])])}))},p.prototype.clearSignatures=function(){this.signatures=new Array(this.publicKeys.length),this._updateScript()},p.prototype.isFullySigned=function(){return this.countSignatures()===this.threshold},p.prototype.countMissingSignatures=function(){return this.threshold-this.countSignatures()},p.prototype.countSignatures=function(){return i.reduce(this.signatures,(function(e,t){return e+!!t}),0)},p.prototype.publicKeysWithoutSignature=function(){var e=this;return i.filter(this.publicKeys,(function(t){return!e.signatures[e.publicKeyIndex[t.toString()]]}))},p.prototype.isValidSignature=function(e,t){return t.signature.nhashtype=t.sigtype,f.verify(e,t.signature,t.publicKey,t.inputIndex,this.output.script,this.output.satoshisBN)},p.normalizeSignatures=function(e,t,r,i,n){return n.map((function(n){var o=null;return i=i.filter((function(i){if(o)return!0;var a=new h({signature:u.fromTxFormat(i),publicKey:n,prevTxId:t.prevTxId,outputIndex:t.outputIndex,inputIndex:r,sigtype:u.SIGHASH_ALL});return a.signature.nhashtype=a.sigtype,!f.verify(e,a.signature,a.publicKey,a.inputIndex,t.output.script)||(o=a,!1)})),o||null}))},p.SIGNATURE_SIZE=73,p.prototype._estimateSize=function(){var e=1+this.threshold*p.SIGNATURE_SIZE;return o.BASE_SIZE+d(e).toBuffer().length+e},e.exports=p}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(23),o=r(31),a=r(21),s=r(3),c=r(13),u=r(5),f=r(20),h=r(32),l=r(15),d=r(30);function p(e,t,r,n){o.apply(this,arguments);var a=this;t=t||e.publicKeys,r=r||e.threshold,n=n||e.signatures,this.publicKeys=t.map(e=>e.toString("hex")).sort().map(e=>new l(e)),this.redeemScript=c.buildMultisigOut(this.publicKeys,r),s.checkState(c.buildScriptHashOut(this.redeemScript).equals(this.output.script),"Provided public keys don't hash to the provided output"),this.publicKeyIndex={},i.each(this.publicKeys,(function(e,t){a.publicKeyIndex[e.toString()]=t})),this.threshold=r,this.signatures=n?this._deserializeSignatures(n):new Array(this.publicKeys.length)}n(p,o),p.prototype.toObject=function(){var e=o.prototype.toObject.apply(this,arguments);return e.threshold=this.threshold,e.publicKeys=i.map(this.publicKeys,(function(e){return e.toString()})),e.signatures=this._serializeSignatures(),e},p.prototype._deserializeSignatures=function(e){return i.map(e,(function(e){if(e)return new h(e)}))},p.prototype._serializeSignatures=function(){return i.map(this.signatures,(function(e){if(e)return e.toObject()}))},p.prototype.getSignatures=function(e,t,r,n){s.checkState(this.output instanceof a),n=n||u.SIGHASH_ALL|u.SIGHASH_FORKID;var o=this,c=[];return i.each(this.publicKeys,(function(i){i.toString()===t.publicKey.toString()&&c.push(new h({publicKey:t.publicKey,prevTxId:o.prevTxId,outputIndex:o.outputIndex,inputIndex:r,signature:f.sign(e,t,n,r,o.redeemScript,o.output.satoshisBN),sigtype:n}))})),c},p.prototype.addSignature=function(e,t){return s.checkState(!this.isFullySigned(),"All needed signatures have already been added"),s.checkArgument(!i.isUndefined(this.publicKeyIndex[t.publicKey.toString()]),"Signature has no matching public key"),s.checkState(this.isValidSignature(e,t)),this.signatures[this.publicKeyIndex[t.publicKey.toString()]]=t,this._updateScript(),this},p.prototype._updateScript=function(){return this.setScript(c.buildP2SHMultisigIn(this.publicKeys,this.threshold,this._createSignatures(),{cachedMultisig:this.redeemScript})),this},p.prototype._createSignatures=function(){return i.map(i.filter(this.signatures,(function(e){return!i.isUndefined(e)})),(function(e){return t.concat([e.signature.toDER(),t.from([255&e.sigtype])])}))},p.prototype.clearSignatures=function(){this.signatures=new Array(this.publicKeys.length),this._updateScript()},p.prototype.isFullySigned=function(){return this.countSignatures()===this.threshold},p.prototype.countMissingSignatures=function(){return this.threshold-this.countSignatures()},p.prototype.countSignatures=function(){return i.reduce(this.signatures,(function(e,t){return e+!!t}),0)},p.prototype.publicKeysWithoutSignature=function(){var e=this;return i.filter(this.publicKeys,(function(t){return!e.signatures[e.publicKeyIndex[t.toString()]]}))},p.prototype.isValidSignature=function(e,t){return t.signature.nhashtype=t.sigtype,f.verify(e,t.signature,t.publicKey,t.inputIndex,this.redeemScript,this.output.satoshisBN)},p.SIGNATURE_SIZE=73,p.PUBKEY_SIZE=34,p.prototype._estimateSize=function(){var e=3+this.publicKeys.length*p.PUBKEY_SIZE,t=this.threshold*p.SIGNATURE_SIZE+1+(e<=75?1:e<=255?2:3)+e;return o.BASE_SIZE+d(t).toBuffer().length+t},e.exports=p}).call(this,r(0).Buffer)},function(e,t,r){e.exports=r(151),e.exports.BlockHeader=r(39),e.exports.MerkleBlock=r(77)},function(e,t,r){"use strict";(function(t){var i=r(2),n=r(39),o=r(4),a=r(19),s=r(16),c=r(6),u=r(25),f=r(3);function h(e){return this instanceof h?(i.extend(this,h._from(e)),this):new h(e)}h.MAX_BLOCK_SIZE=128e6,h._from=function(e){var r={};if(t.isBuffer(e))r=h._fromBufferReader(a(e));else{if(!i.isObject(e))throw new TypeError("Unrecognized argument for Block");r=h._fromObject(e)}return r},h._fromObject=function(e){var t=[];return e.transactions.forEach((function(e){e instanceof u?t.push(e):t.push(u().fromObject(e))})),{header:n.fromObject(e.header),transactions:t}},h.fromObject=function(e){var t=h._fromObject(e);return new h(t)},h._fromBufferReader=function(e){var t={};f.checkState(!e.finished(),"No block data received"),t.header=n.fromBufferReader(e);var r=e.readVarintNum();t.transactions=[];for(var i=0;i<r;i++)t.transactions.push(u().fromBufferReader(e));return t},h.fromBufferReader=function(e){f.checkArgument(e,"br is required");var t=h._fromBufferReader(e);return new h(t)},h.fromBuffer=function(e){return h.fromBufferReader(new a(e))},h.fromString=function(e){var r=t.from(e,"hex");return h.fromBuffer(r)},h.fromRawBlock=function(e){t.isBuffer(e)||(e=t.from(e,"binary"));var r=a(e);r.pos=h.Values.START_OF_BLOCK;var i=h._fromBufferReader(r);return new h(i)},h.prototype.toObject=h.prototype.toJSON=function(){var e=[];return this.transactions.forEach((function(t){e.push(t.toObject())})),{header:this.header.toObject(),transactions:e}},h.prototype.toBuffer=function(){return this.toBufferWriter().concat()},h.prototype.toString=function(){return this.toBuffer().toString("hex")},h.prototype.toBufferWriter=function(e){e||(e=new s),e.write(this.header.toBuffer()),e.writeVarintNum(this.transactions.length);for(var t=0;t<this.transactions.length;t++)this.transactions[t].toBufferWriter(e);return e},h.prototype.getTransactionHashes=function(){var e=[];if(0===this.transactions.length)return[h.Values.NULL_HASH];for(var t=0;t<this.transactions.length;t++)e.push(this.transactions[t]._getHash());return e},h.prototype.getMerkleTree=function(){for(var e=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=t.concat([e[r+n],e[r+o]]);e.push(c.sha256sha256(a))}r+=i}return e},h.prototype.getMerkleRoot=function(){var e=this.getMerkleTree();return e[e.length-1]},h.prototype.validMerkleRoot=function(){var e=new o(this.header.merkleRoot.toString("hex"),"hex"),t=new o(this.getMerkleRoot().toString("hex"),"hex");return 0===e.cmp(t)},h.prototype._getHash=function(){return this.header._getHash()};var l={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=this.header.id),this._id},set:i.noop};Object.defineProperty(h.prototype,"id",l),Object.defineProperty(h.prototype,"hash",l),h.prototype.inspect=function(){return"<Block "+this.id+">"},h.Values={START_OF_BLOCK:8,NULL_HASH:t.from("0000000000000000000000000000000000000000000000000000000000000000","hex")},e.exports=h}).call(this,r(0).Buffer)},function(e,t,r){var i=r(1);i.Message=r(153),e.exports=i.Message},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.deps._,o=i.PrivateKey,a=i.PublicKey,s=i.Address,c=i.encoding.BufferWriter,u=i.crypto.ECDSA,f=i.crypto.Signature,h=i.crypto.Hash.sha256sha256,l=i.util.js,d=i.util.preconditions,p=function e(r){return this instanceof e?(d.checkArgument(n.isString(r)||t.isBuffer(r),"First argument should be a string or Buffer"),n.isString(r)&&(this.messageBuffer=t.from(r)),t.isBuffer(r)&&(this.messageBuffer=r),this):new e(r)};p.sign=function(e,t){return new p(e).sign(t)},p.verify=function(e,t,r){return new p(e).verify(t,r)},p.MAGIC_BYTES=t.from("Bitcoin Signed Message:\n"),p.prototype.magicHash=function(){var e=c.varintBufNum(p.MAGIC_BYTES.length),r=c.varintBufNum(this.messageBuffer.length),i=t.concat([e,p.MAGIC_BYTES,r,this.messageBuffer]);return h(i)},p.prototype._sign=function(e){d.checkArgument(e instanceof o,"First argument should be an instance of PrivateKey");var t=this.magicHash();return u.signWithCalcI(t,e)},p.prototype.sign=function(e){return this._sign(e).toCompact().toString("base64")},p.prototype._verify=function(e,t){d.checkArgument(e instanceof a,"First argument should be an instance of PublicKey"),d.checkArgument(t instanceof f,"Second argument should be an instance of Signature");var r=this.magicHash(),i=u.verify(r,t,e);return i||(this.error="The signature was invalid"),i},p.prototype.verify=function(e,r){d.checkArgument(e),d.checkArgument(r&&n.isString(r)),n.isString(e)&&(e=s.fromString(e));var i=f.fromCompact(t.from(r,"base64")),o=new u;o.hashbuf=this.magicHash(),o.sig=i;var a=o.toPublicKey(),c=s.fromPublicKey(a,e.network);return e.toString()!==c.toString()?(this.error="The signature did not match the message digest",!1):this._verify(a,i)},p.fromString=function(e){return new p(e)},p.fromJSON=function(e){return l.isValidJSON(e)&&(e=JSON.parse(e)),p.fromObject(e)},p.prototype.toObject=function(){return{messageHex:this.messageBuffer.toString("hex")}},p.fromObject=function(e){let r=t.from(e.messageHex,"hex");return new p(r)},p.prototype.toJSON=function(){return JSON.stringify(this.toObject())},p.prototype.toString=function(){return this.messageBuffer.toString()},p.prototype.inspect=function(){return"<Message: "+this.toString()+">"},e.exports=p}).call(this,r(0).Buffer)},function(e,t,r){var i=r(1);i.Mnemonic=r(155),e.exports=i.Mnemonic},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.BN,o=r(156),a=i.deps._,s=r(157),c=r(158),u=i.crypto.Hash,f=i.crypto.Random,h=i.util.preconditions,l=function(e,r){if(!(this instanceof l))return new l(e,r);var n,s,u;if(a.isArray(e)&&(r=e,e=null),t.isBuffer(e))u=e;else if(a.isString(e))s=o.nfkd(e);else if(a.isNumber(e))n=e;else if(e)throw new i.errors.InvalidArgument("data","Must be a Buffer, a string or an integer");if(n=n||128,r=r||l._getDictionary(s),s&&!r)throw new c.UnknownWordlist(s);if(r=r||l.Words.ENGLISH,u&&(s=l._entropy2mnemonic(u,r)),s&&!l.isValid(s,r))throw new c.InvalidMnemonic(s);if(n%32!=0||n<128)throw new i.errors.InvalidArgument("ENT","Values must be ENT > 128 and ENT % 32 == 0");s=s||l._mnemonic(n,r),Object.defineProperty(this,"wordlist",{configurable:!1,value:r}),Object.defineProperty(this,"phrase",{configurable:!1,value:s})};l.fromRandom=function(e=l.Words.ENGLISH){return new l(e)},l.fromString=function(e,t=l.Words.ENGLISH){return new l(e,t)},l.Words=r(159),l.isValid=function(e,r){if(e=o.nfkd(e),!(r=r||l._getDictionary(e)))return!1;for(var i=e.split(" "),n="",a=0;a<i.length;a++){var s=r.indexOf(i[a]);if(s<0)return!1;n+=("00000000000"+s.toString(2)).slice(-11)}var c=n.length/33,u=n.slice(-c),f=n.slice(0,n.length-c),h=t.alloc(f.length/8);for(a=0;a<f.length/8;a++)h.writeUInt8(parseInt(n.slice(8*a,8*(a+1)),2),a);return l._entropyChecksum(h)===u},l._belongsToWordlist=function(e,t){for(var r=o.nfkd(e).split(" "),i=0;i<r.length;i++){if(t.indexOf(r[i])<0)return!1}return!0},l._getDictionary=function(e){if(!e)return null;for(var t=Object.keys(l.Words),r=0;r<t.length;r++){var i=t[r];if(l._belongsToWordlist(e,l.Words[i]))return l.Words[i]}return null},l.prototype.toSeed=function(e){return e=e||"",s(o.nfkd(this.phrase),o.nfkd("mnemonic"+e),2048,64)},l.fromSeed=function(e,r){return h.checkArgument(t.isBuffer(e),"seed must be a Buffer."),h.checkArgument(a.isArray(r)||a.isString(r),"wordlist must be a string or an array."),new l(e,r)},l.prototype.toHDPrivateKey=function(e,t){var r=this.toSeed(e);return i.HDPrivateKey.fromSeed(r,t)},l.prototype.toString=function(){return this.phrase},l.prototype.inspect=function(){return"<Mnemonic: "+this.toString()+" >"},l._mnemonic=function(e,t){var r=f.getRandomBuffer(e/8);return l._entropy2mnemonic(r,t)},l._entropy2mnemonic=function(e,t){for(var r="",i=0;i<e.length;i++)r+=("00000000"+e[i].toString(2)).slice(-8);if((r+=l._entropyChecksum(e)).length%11!=0)throw new c.InvalidEntropy(r);var n=[];for(i=0;i<r.length/11;i++){var o=parseInt(r.slice(11*i,11*(i+1)),2);n.push(t[o])}return t===l.Words.JAPANESE?n.join(" "):n.join(" ")},l._entropyChecksum=function(e){for(var t=u.sha256(e),r=8*e.length/32,i=new n(t.toString("hex"),16).toString(2);i.length%256!=0;)i="0"+i;return i.slice(0,r)},l.bsv=i,e.exports=l}).call(this,r(0).Buffer)},function(e,t,r){!function(t){"use strict";for(var r=[null,0,{}],i=function(e,t){this.codepoint=e,this.feature=t},n={},o=[],a=0;a<=255;++a)o[a]=0;var s=[function(e,t,n){return t<60||13311<t&&t<42607?new i(t,r):e(t,n)},function(e,t,r){var i=n[t];return i||(i=e(t,r)).feature&&++o[t>>8&255]>10&&(n[t]=i),i},function(e,t,r){return r?e(t,r):new i(t,null)},function(e,t,r){var n;if(t<4352||4371<=t&&t<44032||55204<t)return e(t,r);if(4352<=t&&t<4371){var o={},a=21*(t-4352);for(n=0;n<21;++n)o[4449+n]=44032+28*(n+a);return new i(t,[,,o])}var s=t-44032,c=s%28,u=[];if(0!==c)u[0]=[44032+s-c,4519+c];else for(u[0]=[4352+Math.floor(s/588),4449+Math.floor(s%588/28)],u[2]={},n=1;n<28;++n)u[2][4519+n]=t+n;return new i(t,u)},function(e,t,n){var o=(i.udata[65280&t]||{})[t];return new i(t,o||r)}];i.fromCharCode=s.reduceRight((function(e,t){return function(r,i){return t(e,r,i)}}),null),i.isHighSurrogate=function(e){return e>=55296&&e<=56319},i.isLowSurrogate=function(e){return e>=56320&&e<=57343},i.prototype.prepFeature=function(){this.feature||(this.feature=i.fromCharCode(this.codepoint,!0).feature)},i.prototype.toString=function(){if(this.codepoint<65536)return String.fromCharCode(this.codepoint);var e=this.codepoint-65536;return String.fromCharCode(Math.floor(e/1024)+55296,e%1024+56320)},i.prototype.getDecomp=function(){return this.prepFeature(),this.feature[0]||null},i.prototype.isCompatibility=function(){return this.prepFeature(),!!this.feature[1]&&256&this.feature[1]},i.prototype.isExclude=function(){return this.prepFeature(),!!this.feature[1]&&512&this.feature[1]},i.prototype.getCanonicalClass=function(){return this.prepFeature(),this.feature[1]?255&this.feature[1]:0},i.prototype.getComposite=function(e){if(this.prepFeature(),!this.feature[2])return null;var t=this.feature[2][e.codepoint];return t?i.fromCharCode(t):null};var c=function(e){this.str=e,this.cursor=0};c.prototype.next=function(){if(this.str&&this.cursor<this.str.length){var e,t=this.str.charCodeAt(this.cursor++);return i.isHighSurrogate(t)&&this.cursor<this.str.length&&i.isLowSurrogate(e=this.str.charCodeAt(this.cursor))&&(t=1024*(t-55296)+(e-56320)+65536,++this.cursor),i.fromCharCode(t)}return this.str=null,null};var u=function(e,t){this.it=e,this.canonical=t,this.resBuf=[]};u.prototype.next=function(){if(0===this.resBuf.length){var e=this.it.next();if(!e)return null;this.resBuf=function e(t,r){var n=r.getDecomp();if(!n||t&&r.isCompatibility())return[r];for(var o=[],a=0;a<n.length;++a){var s=e(t,i.fromCharCode(n[a]));o=o.concat(s)}return o}(this.canonical,e)}return this.resBuf.shift()};var f=function(e){this.it=e,this.resBuf=[]};f.prototype.next=function(){var e;if(0===this.resBuf.length)do{var t=this.it.next();if(!t)break;e=t.getCanonicalClass();var r=this.resBuf.length;if(0!==e)for(;r>0;--r){if(this.resBuf[r-1].getCanonicalClass()<=e)break}this.resBuf.splice(r,0,t)}while(0!==e);return this.resBuf.shift()};var h=function(e){this.it=e,this.procBuf=[],this.resBuf=[],this.lastClass=null};h.prototype.next=function(){for(;0===this.resBuf.length;){var e=this.it.next();if(!e){this.resBuf=this.procBuf,this.procBuf=[];break}if(0===this.procBuf.length)this.lastClass=e.getCanonicalClass(),this.procBuf.push(e);else{var t=this.procBuf[0].getComposite(e),r=e.getCanonicalClass();t&&(this.lastClass<r||0===this.lastClass)?this.procBuf[0]=t:(0===r&&(this.resBuf=this.procBuf,this.procBuf=[]),this.lastClass=r,this.procBuf.push(e))}}return this.resBuf.shift()};var l=function(e,t){for(var r,i=function(e,t){switch(e){case"NFD":return new f(new u(new c(t),!0));case"NFKD":return new f(new u(new c(t),!1));case"NFC":return new h(new f(new u(new c(t),!0)));case"NFKC":return new h(new f(new u(new c(t),!1)))}throw e+" is invalid"}(e,t),n="";r=i.next();)n+=r.toString();return n};i.udata={0:{60:[,,{824:8814}],61:[,,{824:8800}],62:[,,{824:8815}],65:[,,{768:192,769:193,770:194,771:195,772:256,774:258,775:550,776:196,777:7842,778:197,780:461,783:512,785:514,803:7840,805:7680,808:260}],66:[,,{775:7682,803:7684,817:7686}],67:[,,{769:262,770:264,775:266,780:268,807:199}],68:[,,{775:7690,780:270,803:7692,807:7696,813:7698,817:7694}],69:[,,{768:200,769:201,770:202,771:7868,772:274,774:276,775:278,776:203,777:7866,780:282,783:516,785:518,803:7864,807:552,808:280,813:7704,816:7706}],70:[,,{775:7710}],71:[,,{769:500,770:284,772:7712,774:286,775:288,780:486,807:290}],72:[,,{770:292,775:7714,776:7718,780:542,803:7716,807:7720,814:7722}],73:[,,{768:204,769:205,770:206,771:296,772:298,774:300,775:304,776:207,777:7880,780:463,783:520,785:522,803:7882,808:302,816:7724}],74:[,,{770:308}],75:[,,{769:7728,780:488,803:7730,807:310,817:7732}],76:[,,{769:313,780:317,803:7734,807:315,813:7740,817:7738}],77:[,,{769:7742,775:7744,803:7746}],78:[,,{768:504,769:323,771:209,775:7748,780:327,803:7750,807:325,813:7754,817:7752}],79:[,,{768:210,769:211,770:212,771:213,772:332,774:334,775:558,776:214,777:7886,779:336,780:465,783:524,785:526,795:416,803:7884,808:490}],80:[,,{769:7764,775:7766}],82:[,,{769:340,775:7768,780:344,783:528,785:530,803:7770,807:342,817:7774}],83:[,,{769:346,770:348,775:7776,780:352,803:7778,806:536,807:350}],84:[,,{775:7786,780:356,803:7788,806:538,807:354,813:7792,817:7790}],85:[,,{768:217,769:218,770:219,771:360,772:362,774:364,776:220,777:7910,778:366,779:368,780:467,783:532,785:534,795:431,803:7908,804:7794,808:370,813:7798,816:7796}],86:[,,{771:7804,803:7806}],87:[,,{768:7808,769:7810,770:372,775:7814,776:7812,803:7816}],88:[,,{775:7818,776:7820}],89:[,,{768:7922,769:221,770:374,771:7928,772:562,775:7822,776:376,777:7926,803:7924}],90:[,,{769:377,770:7824,775:379,780:381,803:7826,817:7828}],97:[,,{768:224,769:225,770:226,771:227,772:257,774:259,775:551,776:228,777:7843,778:229,780:462,783:513,785:515,803:7841,805:7681,808:261}],98:[,,{775:7683,803:7685,817:7687}],99:[,,{769:263,770:265,775:267,780:269,807:231}],100:[,,{775:7691,780:271,803:7693,807:7697,813:7699,817:7695}],101:[,,{768:232,769:233,770:234,771:7869,772:275,774:277,775:279,776:235,777:7867,780:283,783:517,785:519,803:7865,807:553,808:281,813:7705,816:7707}],102:[,,{775:7711}],103:[,,{769:501,770:285,772:7713,774:287,775:289,780:487,807:291}],104:[,,{770:293,775:7715,776:7719,780:543,803:7717,807:7721,814:7723,817:7830}],105:[,,{768:236,769:237,770:238,771:297,772:299,774:301,776:239,777:7881,780:464,783:521,785:523,803:7883,808:303,816:7725}],106:[,,{770:309,780:496}],107:[,,{769:7729,780:489,803:7731,807:311,817:7733}],108:[,,{769:314,780:318,803:7735,807:316,813:7741,817:7739}],109:[,,{769:7743,775:7745,803:7747}],110:[,,{768:505,769:324,771:241,775:7749,780:328,803:7751,807:326,813:7755,817:7753}],111:[,,{768:242,769:243,770:244,771:245,772:333,774:335,775:559,776:246,777:7887,779:337,780:466,783:525,785:527,795:417,803:7885,808:491}],112:[,,{769:7765,775:7767}],114:[,,{769:341,775:7769,780:345,783:529,785:531,803:7771,807:343,817:7775}],115:[,,{769:347,770:349,775:7777,780:353,803:7779,806:537,807:351}],116:[,,{775:7787,776:7831,780:357,803:7789,806:539,807:355,813:7793,817:7791}],117:[,,{768:249,769:250,770:251,771:361,772:363,774:365,776:252,777:7911,778:367,779:369,780:468,783:533,785:535,795:432,803:7909,804:7795,808:371,813:7799,816:7797}],118:[,,{771:7805,803:7807}],119:[,,{768:7809,769:7811,770:373,775:7815,776:7813,778:7832,803:7817}],120:[,,{775:7819,776:7821}],121:[,,{768:7923,769:253,770:375,771:7929,772:563,775:7823,776:255,777:7927,778:7833,803:7925}],122:[,,{769:378,770:7825,775:380,780:382,803:7827,817:7829}],160:[[32],256],168:[[32,776],256,{768:8173,769:901,834:8129}],170:[[97],256],175:[[32,772],256],178:[[50],256],179:[[51],256],180:[[32,769],256],181:[[956],256],184:[[32,807],256],185:[[49],256],186:[[111],256],188:[[49,8260,52],256],189:[[49,8260,50],256],190:[[51,8260,52],256],192:[[65,768]],193:[[65,769]],194:[[65,770],,{768:7846,769:7844,771:7850,777:7848}],195:[[65,771]],196:[[65,776],,{772:478}],197:[[65,778],,{769:506}],198:[,,{769:508,772:482}],199:[[67,807],,{769:7688}],200:[[69,768]],201:[[69,769]],202:[[69,770],,{768:7872,769:7870,771:7876,777:7874}],203:[[69,776]],204:[[73,768]],205:[[73,769]],206:[[73,770]],207:[[73,776],,{769:7726}],209:[[78,771]],210:[[79,768]],211:[[79,769]],212:[[79,770],,{768:7890,769:7888,771:7894,777:7892}],213:[[79,771],,{769:7756,772:556,776:7758}],214:[[79,776],,{772:554}],216:[,,{769:510}],217:[[85,768]],218:[[85,769]],219:[[85,770]],220:[[85,776],,{768:475,769:471,772:469,780:473}],221:[[89,769]],224:[[97,768]],225:[[97,769]],226:[[97,770],,{768:7847,769:7845,771:7851,777:7849}],227:[[97,771]],228:[[97,776],,{772:479}],229:[[97,778],,{769:507}],230:[,,{769:509,772:483}],231:[[99,807],,{769:7689}],232:[[101,768]],233:[[101,769]],234:[[101,770],,{768:7873,769:7871,771:7877,777:7875}],235:[[101,776]],236:[[105,768]],237:[[105,769]],238:[[105,770]],239:[[105,776],,{769:7727}],241:[[110,771]],242:[[111,768]],243:[[111,769]],244:[[111,770],,{768:7891,769:7889,771:7895,777:7893}],245:[[111,771],,{769:7757,772:557,776:7759}],246:[[111,776],,{772:555}],248:[,,{769:511}],249:[[117,768]],250:[[117,769]],251:[[117,770]],252:[[117,776],,{768:476,769:472,772:470,780:474}],253:[[121,769]],255:[[121,776]]},256:{256:[[65,772]],257:[[97,772]],258:[[65,774],,{768:7856,769:7854,771:7860,777:7858}],259:[[97,774],,{768:7857,769:7855,771:7861,777:7859}],260:[[65,808]],261:[[97,808]],262:[[67,769]],263:[[99,769]],264:[[67,770]],265:[[99,770]],266:[[67,775]],267:[[99,775]],268:[[67,780]],269:[[99,780]],270:[[68,780]],271:[[100,780]],274:[[69,772],,{768:7700,769:7702}],275:[[101,772],,{768:7701,769:7703}],276:[[69,774]],277:[[101,774]],278:[[69,775]],279:[[101,775]],280:[[69,808]],281:[[101,808]],282:[[69,780]],283:[[101,780]],284:[[71,770]],285:[[103,770]],286:[[71,774]],287:[[103,774]],288:[[71,775]],289:[[103,775]],290:[[71,807]],291:[[103,807]],292:[[72,770]],293:[[104,770]],296:[[73,771]],297:[[105,771]],298:[[73,772]],299:[[105,772]],300:[[73,774]],301:[[105,774]],302:[[73,808]],303:[[105,808]],304:[[73,775]],306:[[73,74],256],307:[[105,106],256],308:[[74,770]],309:[[106,770]],310:[[75,807]],311:[[107,807]],313:[[76,769]],314:[[108,769]],315:[[76,807]],316:[[108,807]],317:[[76,780]],318:[[108,780]],319:[[76,183],256],320:[[108,183],256],323:[[78,769]],324:[[110,769]],325:[[78,807]],326:[[110,807]],327:[[78,780]],328:[[110,780]],329:[[700,110],256],332:[[79,772],,{768:7760,769:7762}],333:[[111,772],,{768:7761,769:7763}],334:[[79,774]],335:[[111,774]],336:[[79,779]],337:[[111,779]],340:[[82,769]],341:[[114,769]],342:[[82,807]],343:[[114,807]],344:[[82,780]],345:[[114,780]],346:[[83,769],,{775:7780}],347:[[115,769],,{775:7781}],348:[[83,770]],349:[[115,770]],350:[[83,807]],351:[[115,807]],352:[[83,780],,{775:7782}],353:[[115,780],,{775:7783}],354:[[84,807]],355:[[116,807]],356:[[84,780]],357:[[116,780]],360:[[85,771],,{769:7800}],361:[[117,771],,{769:7801}],362:[[85,772],,{776:7802}],363:[[117,772],,{776:7803}],364:[[85,774]],365:[[117,774]],366:[[85,778]],367:[[117,778]],368:[[85,779]],369:[[117,779]],370:[[85,808]],371:[[117,808]],372:[[87,770]],373:[[119,770]],374:[[89,770]],375:[[121,770]],376:[[89,776]],377:[[90,769]],378:[[122,769]],379:[[90,775]],380:[[122,775]],381:[[90,780]],382:[[122,780]],383:[[115],256,{775:7835}],416:[[79,795],,{768:7900,769:7898,771:7904,777:7902,803:7906}],417:[[111,795],,{768:7901,769:7899,771:7905,777:7903,803:7907}],431:[[85,795],,{768:7914,769:7912,771:7918,777:7916,803:7920}],432:[[117,795],,{768:7915,769:7913,771:7919,777:7917,803:7921}],439:[,,{780:494}],452:[[68,381],256],453:[[68,382],256],454:[[100,382],256],455:[[76,74],256],456:[[76,106],256],457:[[108,106],256],458:[[78,74],256],459:[[78,106],256],460:[[110,106],256],461:[[65,780]],462:[[97,780]],463:[[73,780]],464:[[105,780]],465:[[79,780]],466:[[111,780]],467:[[85,780]],468:[[117,780]],469:[[220,772]],470:[[252,772]],471:[[220,769]],472:[[252,769]],473:[[220,780]],474:[[252,780]],475:[[220,768]],476:[[252,768]],478:[[196,772]],479:[[228,772]],480:[[550,772]],481:[[551,772]],482:[[198,772]],483:[[230,772]],486:[[71,780]],487:[[103,780]],488:[[75,780]],489:[[107,780]],490:[[79,808],,{772:492}],491:[[111,808],,{772:493}],492:[[490,772]],493:[[491,772]],494:[[439,780]],495:[[658,780]],496:[[106,780]],497:[[68,90],256],498:[[68,122],256],499:[[100,122],256],500:[[71,769]],501:[[103,769]],504:[[78,768]],505:[[110,768]],506:[[197,769]],507:[[229,769]],508:[[198,769]],509:[[230,769]],510:[[216,769]],511:[[248,769]],66045:[,220]},512:{512:[[65,783]],513:[[97,783]],514:[[65,785]],515:[[97,785]],516:[[69,783]],517:[[101,783]],518:[[69,785]],519:[[101,785]],520:[[73,783]],521:[[105,783]],522:[[73,785]],523:[[105,785]],524:[[79,783]],525:[[111,783]],526:[[79,785]],527:[[111,785]],528:[[82,783]],529:[[114,783]],530:[[82,785]],531:[[114,785]],532:[[85,783]],533:[[117,783]],534:[[85,785]],535:[[117,785]],536:[[83,806]],537:[[115,806]],538:[[84,806]],539:[[116,806]],542:[[72,780]],543:[[104,780]],550:[[65,775],,{772:480}],551:[[97,775],,{772:481}],552:[[69,807],,{774:7708}],553:[[101,807],,{774:7709}],554:[[214,772]],555:[[246,772]],556:[[213,772]],557:[[245,772]],558:[[79,775],,{772:560}],559:[[111,775],,{772:561}],560:[[558,772]],561:[[559,772]],562:[[89,772]],563:[[121,772]],658:[,,{780:495}],688:[[104],256],689:[[614],256],690:[[106],256],691:[[114],256],692:[[633],256],693:[[635],256],694:[[641],256],695:[[119],256],696:[[121],256],728:[[32,774],256],729:[[32,775],256],730:[[32,778],256],731:[[32,808],256],732:[[32,771],256],733:[[32,779],256],736:[[611],256],737:[[108],256],738:[[115],256],739:[[120],256],740:[[661],256],66272:[,220]},768:{768:[,230],769:[,230],770:[,230],771:[,230],772:[,230],773:[,230],774:[,230],775:[,230],776:[,230,{769:836}],777:[,230],778:[,230],779:[,230],780:[,230],781:[,230],782:[,230],783:[,230],784:[,230],785:[,230],786:[,230],787:[,230],788:[,230],789:[,232],790:[,220],791:[,220],792:[,220],793:[,220],794:[,232],795:[,216],796:[,220],797:[,220],798:[,220],799:[,220],800:[,220],801:[,202],802:[,202],803:[,220],804:[,220],805:[,220],806:[,220],807:[,202],808:[,202],809:[,220],810:[,220],811:[,220],812:[,220],813:[,220],814:[,220],815:[,220],816:[,220],817:[,220],818:[,220],819:[,220],820:[,1],821:[,1],822:[,1],823:[,1],824:[,1],825:[,220],826:[,220],827:[,220],828:[,220],829:[,230],830:[,230],831:[,230],832:[[768],230],833:[[769],230],834:[,230],835:[[787],230],836:[[776,769],230],837:[,240],838:[,230],839:[,220],840:[,220],841:[,220],842:[,230],843:[,230],844:[,230],845:[,220],846:[,220],848:[,230],849:[,230],850:[,230],851:[,220],852:[,220],853:[,220],854:[,220],855:[,230],856:[,232],857:[,220],858:[,220],859:[,230],860:[,233],861:[,234],862:[,234],863:[,233],864:[,234],865:[,234],866:[,233],867:[,230],868:[,230],869:[,230],870:[,230],871:[,230],872:[,230],873:[,230],874:[,230],875:[,230],876:[,230],877:[,230],878:[,230],879:[,230],884:[[697]],890:[[32,837],256],894:[[59]],900:[[32,769],256],901:[[168,769]],902:[[913,769]],903:[[183]],904:[[917,769]],905:[[919,769]],906:[[921,769]],908:[[927,769]],910:[[933,769]],911:[[937,769]],912:[[970,769]],913:[,,{768:8122,769:902,772:8121,774:8120,787:7944,788:7945,837:8124}],917:[,,{768:8136,769:904,787:7960,788:7961}],919:[,,{768:8138,769:905,787:7976,788:7977,837:8140}],921:[,,{768:8154,769:906,772:8153,774:8152,776:938,787:7992,788:7993}],927:[,,{768:8184,769:908,787:8008,788:8009}],929:[,,{788:8172}],933:[,,{768:8170,769:910,772:8169,774:8168,776:939,788:8025}],937:[,,{768:8186,769:911,787:8040,788:8041,837:8188}],938:[[921,776]],939:[[933,776]],940:[[945,769],,{837:8116}],941:[[949,769]],942:[[951,769],,{837:8132}],943:[[953,769]],944:[[971,769]],945:[,,{768:8048,769:940,772:8113,774:8112,787:7936,788:7937,834:8118,837:8115}],949:[,,{768:8050,769:941,787:7952,788:7953}],951:[,,{768:8052,769:942,787:7968,788:7969,834:8134,837:8131}],953:[,,{768:8054,769:943,772:8145,774:8144,776:970,787:7984,788:7985,834:8150}],959:[,,{768:8056,769:972,787:8e3,788:8001}],961:[,,{787:8164,788:8165}],965:[,,{768:8058,769:973,772:8161,774:8160,776:971,787:8016,788:8017,834:8166}],969:[,,{768:8060,769:974,787:8032,788:8033,834:8182,837:8179}],970:[[953,776],,{768:8146,769:912,834:8151}],971:[[965,776],,{768:8162,769:944,834:8167}],972:[[959,769]],973:[[965,769]],974:[[969,769],,{837:8180}],976:[[946],256],977:[[952],256],978:[[933],256,{769:979,776:980}],979:[[978,769]],980:[[978,776]],981:[[966],256],982:[[960],256],1008:[[954],256],1009:[[961],256],1010:[[962],256],1012:[[920],256],1013:[[949],256],1017:[[931],256],66422:[,230],66423:[,230],66424:[,230],66425:[,230],66426:[,230]},1024:{1024:[[1045,768]],1025:[[1045,776]],1027:[[1043,769]],1030:[,,{776:1031}],1031:[[1030,776]],1036:[[1050,769]],1037:[[1048,768]],1038:[[1059,774]],1040:[,,{774:1232,776:1234}],1043:[,,{769:1027}],1045:[,,{768:1024,774:1238,776:1025}],1046:[,,{774:1217,776:1244}],1047:[,,{776:1246}],1048:[,,{768:1037,772:1250,774:1049,776:1252}],1049:[[1048,774]],1050:[,,{769:1036}],1054:[,,{776:1254}],1059:[,,{772:1262,774:1038,776:1264,779:1266}],1063:[,,{776:1268}],1067:[,,{776:1272}],1069:[,,{776:1260}],1072:[,,{774:1233,776:1235}],1075:[,,{769:1107}],1077:[,,{768:1104,774:1239,776:1105}],1078:[,,{774:1218,776:1245}],1079:[,,{776:1247}],1080:[,,{768:1117,772:1251,774:1081,776:1253}],1081:[[1080,774]],1082:[,,{769:1116}],1086:[,,{776:1255}],1091:[,,{772:1263,774:1118,776:1265,779:1267}],1095:[,,{776:1269}],1099:[,,{776:1273}],1101:[,,{776:1261}],1104:[[1077,768]],1105:[[1077,776]],1107:[[1075,769]],1110:[,,{776:1111}],1111:[[1110,776]],1116:[[1082,769]],1117:[[1080,768]],1118:[[1091,774]],1140:[,,{783:1142}],1141:[,,{783:1143}],1142:[[1140,783]],1143:[[1141,783]],1155:[,230],1156:[,230],1157:[,230],1158:[,230],1159:[,230],1217:[[1046,774]],1218:[[1078,774]],1232:[[1040,774]],1233:[[1072,774]],1234:[[1040,776]],1235:[[1072,776]],1238:[[1045,774]],1239:[[1077,774]],1240:[,,{776:1242}],1241:[,,{776:1243}],1242:[[1240,776]],1243:[[1241,776]],1244:[[1046,776]],1245:[[1078,776]],1246:[[1047,776]],1247:[[1079,776]],1250:[[1048,772]],1251:[[1080,772]],1252:[[1048,776]],1253:[[1080,776]],1254:[[1054,776]],1255:[[1086,776]],1256:[,,{776:1258}],1257:[,,{776:1259}],1258:[[1256,776]],1259:[[1257,776]],1260:[[1069,776]],1261:[[1101,776]],1262:[[1059,772]],1263:[[1091,772]],1264:[[1059,776]],1265:[[1091,776]],1266:[[1059,779]],1267:[[1091,779]],1268:[[1063,776]],1269:[[1095,776]],1272:[[1067,776]],1273:[[1099,776]]},1280:{1415:[[1381,1410],256],1425:[,220],1426:[,230],1427:[,230],1428:[,230],1429:[,230],1430:[,220],1431:[,230],1432:[,230],1433:[,230],1434:[,222],1435:[,220],1436:[,230],1437:[,230],1438:[,230],1439:[,230],1440:[,230],1441:[,230],1442:[,220],1443:[,220],1444:[,220],1445:[,220],1446:[,220],1447:[,220],1448:[,230],1449:[,230],1450:[,220],1451:[,230],1452:[,230],1453:[,222],1454:[,228],1455:[,230],1456:[,10],1457:[,11],1458:[,12],1459:[,13],1460:[,14],1461:[,15],1462:[,16],1463:[,17],1464:[,18],1465:[,19],1466:[,19],1467:[,20],1468:[,21],1469:[,22],1471:[,23],1473:[,24],1474:[,25],1476:[,230],1477:[,220],1479:[,18]},1536:{1552:[,230],1553:[,230],1554:[,230],1555:[,230],1556:[,230],1557:[,230],1558:[,230],1559:[,230],1560:[,30],1561:[,31],1562:[,32],1570:[[1575,1619]],1571:[[1575,1620]],1572:[[1608,1620]],1573:[[1575,1621]],1574:[[1610,1620]],1575:[,,{1619:1570,1620:1571,1621:1573}],1608:[,,{1620:1572}],1610:[,,{1620:1574}],1611:[,27],1612:[,28],1613:[,29],1614:[,30],1615:[,31],1616:[,32],1617:[,33],1618:[,34],1619:[,230],1620:[,230],1621:[,220],1622:[,220],1623:[,230],1624:[,230],1625:[,230],1626:[,230],1627:[,230],1628:[,220],1629:[,230],1630:[,230],1631:[,220],1648:[,35],1653:[[1575,1652],256],1654:[[1608,1652],256],1655:[[1735,1652],256],1656:[[1610,1652],256],1728:[[1749,1620]],1729:[,,{1620:1730}],1730:[[1729,1620]],1746:[,,{1620:1747}],1747:[[1746,1620]],1749:[,,{1620:1728}],1750:[,230],1751:[,230],1752:[,230],1753:[,230],1754:[,230],1755:[,230],1756:[,230],1759:[,230],1760:[,230],1761:[,230],1762:[,230],1763:[,220],1764:[,230],1767:[,230],1768:[,230],1770:[,220],1771:[,230],1772:[,230],1773:[,220]},1792:{1809:[,36],1840:[,230],1841:[,220],1842:[,230],1843:[,230],1844:[,220],1845:[,230],1846:[,230],1847:[,220],1848:[,220],1849:[,220],1850:[,230],1851:[,220],1852:[,220],1853:[,230],1854:[,220],1855:[,230],1856:[,230],1857:[,230],1858:[,220],1859:[,230],1860:[,220],1861:[,230],1862:[,220],1863:[,230],1864:[,220],1865:[,230],1866:[,230],2027:[,230],2028:[,230],2029:[,230],2030:[,230],2031:[,230],2032:[,230],2033:[,230],2034:[,220],2035:[,230]},2048:{2070:[,230],2071:[,230],2072:[,230],2073:[,230],2075:[,230],2076:[,230],2077:[,230],2078:[,230],2079:[,230],2080:[,230],2081:[,230],2082:[,230],2083:[,230],2085:[,230],2086:[,230],2087:[,230],2089:[,230],2090:[,230],2091:[,230],2092:[,230],2093:[,230],2137:[,220],2138:[,220],2139:[,220],2276:[,230],2277:[,230],2278:[,220],2279:[,230],2280:[,230],2281:[,220],2282:[,230],2283:[,230],2284:[,230],2285:[,220],2286:[,220],2287:[,220],2288:[,27],2289:[,28],2290:[,29],2291:[,230],2292:[,230],2293:[,230],2294:[,220],2295:[,230],2296:[,230],2297:[,220],2298:[,220],2299:[,230],2300:[,230],2301:[,230],2302:[,230],2303:[,230]},2304:{2344:[,,{2364:2345}],2345:[[2344,2364]],2352:[,,{2364:2353}],2353:[[2352,2364]],2355:[,,{2364:2356}],2356:[[2355,2364]],2364:[,7],2381:[,9],2385:[,230],2386:[,220],2387:[,230],2388:[,230],2392:[[2325,2364],512],2393:[[2326,2364],512],2394:[[2327,2364],512],2395:[[2332,2364],512],2396:[[2337,2364],512],2397:[[2338,2364],512],2398:[[2347,2364],512],2399:[[2351,2364],512],2492:[,7],2503:[,,{2494:2507,2519:2508}],2507:[[2503,2494]],2508:[[2503,2519]],2509:[,9],2524:[[2465,2492],512],2525:[[2466,2492],512],2527:[[2479,2492],512]},2560:{2611:[[2610,2620],512],2614:[[2616,2620],512],2620:[,7],2637:[,9],2649:[[2582,2620],512],2650:[[2583,2620],512],2651:[[2588,2620],512],2654:[[2603,2620],512],2748:[,7],2765:[,9],68109:[,220],68111:[,230],68152:[,230],68153:[,1],68154:[,220],68159:[,9],68325:[,230],68326:[,220]},2816:{2876:[,7],2887:[,,{2878:2891,2902:2888,2903:2892}],2888:[[2887,2902]],2891:[[2887,2878]],2892:[[2887,2903]],2893:[,9],2908:[[2849,2876],512],2909:[[2850,2876],512],2962:[,,{3031:2964}],2964:[[2962,3031]],3014:[,,{3006:3018,3031:3020}],3015:[,,{3006:3019}],3018:[[3014,3006]],3019:[[3015,3006]],3020:[[3014,3031]],3021:[,9]},3072:{3142:[,,{3158:3144}],3144:[[3142,3158]],3149:[,9],3157:[,84],3158:[,91],3260:[,7],3263:[,,{3285:3264}],3264:[[3263,3285]],3270:[,,{3266:3274,3285:3271,3286:3272}],3271:[[3270,3285]],3272:[[3270,3286]],3274:[[3270,3266],,{3285:3275}],3275:[[3274,3285]],3277:[,9]},3328:{3398:[,,{3390:3402,3415:3404}],3399:[,,{3390:3403}],3402:[[3398,3390]],3403:[[3399,3390]],3404:[[3398,3415]],3405:[,9],3530:[,9],3545:[,,{3530:3546,3535:3548,3551:3550}],3546:[[3545,3530]],3548:[[3545,3535],,{3530:3549}],3549:[[3548,3530]],3550:[[3545,3551]]},3584:{3635:[[3661,3634],256],3640:[,103],3641:[,103],3642:[,9],3656:[,107],3657:[,107],3658:[,107],3659:[,107],3763:[[3789,3762],256],3768:[,118],3769:[,118],3784:[,122],3785:[,122],3786:[,122],3787:[,122],3804:[[3755,3737],256],3805:[[3755,3745],256]},3840:{3852:[[3851],256],3864:[,220],3865:[,220],3893:[,220],3895:[,220],3897:[,216],3907:[[3906,4023],512],3917:[[3916,4023],512],3922:[[3921,4023],512],3927:[[3926,4023],512],3932:[[3931,4023],512],3945:[[3904,4021],512],3953:[,129],3954:[,130],3955:[[3953,3954],512],3956:[,132],3957:[[3953,3956],512],3958:[[4018,3968],512],3959:[[4018,3969],256],3960:[[4019,3968],512],3961:[[4019,3969],256],3962:[,130],3963:[,130],3964:[,130],3965:[,130],3968:[,130],3969:[[3953,3968],512],3970:[,230],3971:[,230],3972:[,9],3974:[,230],3975:[,230],3987:[[3986,4023],512],3997:[[3996,4023],512],4002:[[4001,4023],512],4007:[[4006,4023],512],4012:[[4011,4023],512],4025:[[3984,4021],512],4038:[,220]},4096:{4133:[,,{4142:4134}],4134:[[4133,4142]],4151:[,7],4153:[,9],4154:[,9],4237:[,220],4348:[[4316],256],69702:[,9],69759:[,9],69785:[,,{69818:69786}],69786:[[69785,69818]],69787:[,,{69818:69788}],69788:[[69787,69818]],69797:[,,{69818:69803}],69803:[[69797,69818]],69817:[,9],69818:[,7]},4352:{69888:[,230],69889:[,230],69890:[,230],69934:[[69937,69927]],69935:[[69938,69927]],69937:[,,{69927:69934}],69938:[,,{69927:69935}],69939:[,9],69940:[,9],70003:[,7],70080:[,9]},4608:{70197:[,9],70198:[,7],70377:[,7],70378:[,9]},4864:{4957:[,230],4958:[,230],4959:[,230],70460:[,7],70471:[,,{70462:70475,70487:70476}],70475:[[70471,70462]],70476:[[70471,70487]],70477:[,9],70502:[,230],70503:[,230],70504:[,230],70505:[,230],70506:[,230],70507:[,230],70508:[,230],70512:[,230],70513:[,230],70514:[,230],70515:[,230],70516:[,230]},5120:{70841:[,,{70832:70844,70842:70843,70845:70846}],70843:[[70841,70842]],70844:[[70841,70832]],70846:[[70841,70845]],70850:[,9],70851:[,7]},5376:{71096:[,,{71087:71098}],71097:[,,{71087:71099}],71098:[[71096,71087]],71099:[[71097,71087]],71103:[,9],71104:[,7]},5632:{71231:[,9],71350:[,9],71351:[,7]},5888:{5908:[,9],5940:[,9],6098:[,9],6109:[,230]},6144:{6313:[,228]},6400:{6457:[,222],6458:[,230],6459:[,220]},6656:{6679:[,230],6680:[,220],6752:[,9],6773:[,230],6774:[,230],6775:[,230],6776:[,230],6777:[,230],6778:[,230],6779:[,230],6780:[,230],6783:[,220],6832:[,230],6833:[,230],6834:[,230],6835:[,230],6836:[,230],6837:[,220],6838:[,220],6839:[,220],6840:[,220],6841:[,220],6842:[,220],6843:[,230],6844:[,230],6845:[,220]},6912:{6917:[,,{6965:6918}],6918:[[6917,6965]],6919:[,,{6965:6920}],6920:[[6919,6965]],6921:[,,{6965:6922}],6922:[[6921,6965]],6923:[,,{6965:6924}],6924:[[6923,6965]],6925:[,,{6965:6926}],6926:[[6925,6965]],6929:[,,{6965:6930}],6930:[[6929,6965]],6964:[,7],6970:[,,{6965:6971}],6971:[[6970,6965]],6972:[,,{6965:6973}],6973:[[6972,6965]],6974:[,,{6965:6976}],6975:[,,{6965:6977}],6976:[[6974,6965]],6977:[[6975,6965]],6978:[,,{6965:6979}],6979:[[6978,6965]],6980:[,9],7019:[,230],7020:[,220],7021:[,230],7022:[,230],7023:[,230],7024:[,230],7025:[,230],7026:[,230],7027:[,230],7082:[,9],7083:[,9],7142:[,7],7154:[,9],7155:[,9]},7168:{7223:[,7],7376:[,230],7377:[,230],7378:[,230],7380:[,1],7381:[,220],7382:[,220],7383:[,220],7384:[,220],7385:[,220],7386:[,230],7387:[,230],7388:[,220],7389:[,220],7390:[,220],7391:[,220],7392:[,230],7394:[,1],7395:[,1],7396:[,1],7397:[,1],7398:[,1],7399:[,1],7400:[,1],7405:[,220],7412:[,230],7416:[,230],7417:[,230]},7424:{7468:[[65],256],7469:[[198],256],7470:[[66],256],7472:[[68],256],7473:[[69],256],7474:[[398],256],7475:[[71],256],7476:[[72],256],7477:[[73],256],7478:[[74],256],7479:[[75],256],7480:[[76],256],7481:[[77],256],7482:[[78],256],7484:[[79],256],7485:[[546],256],7486:[[80],256],7487:[[82],256],7488:[[84],256],7489:[[85],256],7490:[[87],256],7491:[[97],256],7492:[[592],256],7493:[[593],256],7494:[[7426],256],7495:[[98],256],7496:[[100],256],7497:[[101],256],7498:[[601],256],7499:[[603],256],7500:[[604],256],7501:[[103],256],7503:[[107],256],7504:[[109],256],7505:[[331],256],7506:[[111],256],7507:[[596],256],7508:[[7446],256],7509:[[7447],256],7510:[[112],256],7511:[[116],256],7512:[[117],256],7513:[[7453],256],7514:[[623],256],7515:[[118],256],7516:[[7461],256],7517:[[946],256],7518:[[947],256],7519:[[948],256],7520:[[966],256],7521:[[967],256],7522:[[105],256],7523:[[114],256],7524:[[117],256],7525:[[118],256],7526:[[946],256],7527:[[947],256],7528:[[961],256],7529:[[966],256],7530:[[967],256],7544:[[1085],256],7579:[[594],256],7580:[[99],256],7581:[[597],256],7582:[[240],256],7583:[[604],256],7584:[[102],256],7585:[[607],256],7586:[[609],256],7587:[[613],256],7588:[[616],256],7589:[[617],256],7590:[[618],256],7591:[[7547],256],7592:[[669],256],7593:[[621],256],7594:[[7557],256],7595:[[671],256],7596:[[625],256],7597:[[624],256],7598:[[626],256],7599:[[627],256],7600:[[628],256],7601:[[629],256],7602:[[632],256],7603:[[642],256],7604:[[643],256],7605:[[427],256],7606:[[649],256],7607:[[650],256],7608:[[7452],256],7609:[[651],256],7610:[[652],256],7611:[[122],256],7612:[[656],256],7613:[[657],256],7614:[[658],256],7615:[[952],256],7616:[,230],7617:[,230],7618:[,220],7619:[,230],7620:[,230],7621:[,230],7622:[,230],7623:[,230],7624:[,230],7625:[,230],7626:[,220],7627:[,230],7628:[,230],7629:[,234],7630:[,214],7631:[,220],7632:[,202],7633:[,230],7634:[,230],7635:[,230],7636:[,230],7637:[,230],7638:[,230],7639:[,230],7640:[,230],7641:[,230],7642:[,230],7643:[,230],7644:[,230],7645:[,230],7646:[,230],7647:[,230],7648:[,230],7649:[,230],7650:[,230],7651:[,230],7652:[,230],7653:[,230],7654:[,230],7655:[,230],7656:[,230],7657:[,230],7658:[,230],7659:[,230],7660:[,230],7661:[,230],7662:[,230],7663:[,230],7664:[,230],7665:[,230],7666:[,230],7667:[,230],7668:[,230],7669:[,230],7676:[,233],7677:[,220],7678:[,230],7679:[,220]},7680:{7680:[[65,805]],7681:[[97,805]],7682:[[66,775]],7683:[[98,775]],7684:[[66,803]],7685:[[98,803]],7686:[[66,817]],7687:[[98,817]],7688:[[199,769]],7689:[[231,769]],7690:[[68,775]],7691:[[100,775]],7692:[[68,803]],7693:[[100,803]],7694:[[68,817]],7695:[[100,817]],7696:[[68,807]],7697:[[100,807]],7698:[[68,813]],7699:[[100,813]],7700:[[274,768]],7701:[[275,768]],7702:[[274,769]],7703:[[275,769]],7704:[[69,813]],7705:[[101,813]],7706:[[69,816]],7707:[[101,816]],7708:[[552,774]],7709:[[553,774]],7710:[[70,775]],7711:[[102,775]],7712:[[71,772]],7713:[[103,772]],7714:[[72,775]],7715:[[104,775]],7716:[[72,803]],7717:[[104,803]],7718:[[72,776]],7719:[[104,776]],7720:[[72,807]],7721:[[104,807]],7722:[[72,814]],7723:[[104,814]],7724:[[73,816]],7725:[[105,816]],7726:[[207,769]],7727:[[239,769]],7728:[[75,769]],7729:[[107,769]],7730:[[75,803]],7731:[[107,803]],7732:[[75,817]],7733:[[107,817]],7734:[[76,803],,{772:7736}],7735:[[108,803],,{772:7737}],7736:[[7734,772]],7737:[[7735,772]],7738:[[76,817]],7739:[[108,817]],7740:[[76,813]],7741:[[108,813]],7742:[[77,769]],7743:[[109,769]],7744:[[77,775]],7745:[[109,775]],7746:[[77,803]],7747:[[109,803]],7748:[[78,775]],7749:[[110,775]],7750:[[78,803]],7751:[[110,803]],7752:[[78,817]],7753:[[110,817]],7754:[[78,813]],7755:[[110,813]],7756:[[213,769]],7757:[[245,769]],7758:[[213,776]],7759:[[245,776]],7760:[[332,768]],7761:[[333,768]],7762:[[332,769]],7763:[[333,769]],7764:[[80,769]],7765:[[112,769]],7766:[[80,775]],7767:[[112,775]],7768:[[82,775]],7769:[[114,775]],7770:[[82,803],,{772:7772}],7771:[[114,803],,{772:7773}],7772:[[7770,772]],7773:[[7771,772]],7774:[[82,817]],7775:[[114,817]],7776:[[83,775]],7777:[[115,775]],7778:[[83,803],,{775:7784}],7779:[[115,803],,{775:7785}],7780:[[346,775]],7781:[[347,775]],7782:[[352,775]],7783:[[353,775]],7784:[[7778,775]],7785:[[7779,775]],7786:[[84,775]],7787:[[116,775]],7788:[[84,803]],7789:[[116,803]],7790:[[84,817]],7791:[[116,817]],7792:[[84,813]],7793:[[116,813]],7794:[[85,804]],7795:[[117,804]],7796:[[85,816]],7797:[[117,816]],7798:[[85,813]],7799:[[117,813]],7800:[[360,769]],7801:[[361,769]],7802:[[362,776]],7803:[[363,776]],7804:[[86,771]],7805:[[118,771]],7806:[[86,803]],7807:[[118,803]],7808:[[87,768]],7809:[[119,768]],7810:[[87,769]],7811:[[119,769]],7812:[[87,776]],7813:[[119,776]],7814:[[87,775]],7815:[[119,775]],7816:[[87,803]],7817:[[119,803]],7818:[[88,775]],7819:[[120,775]],7820:[[88,776]],7821:[[120,776]],7822:[[89,775]],7823:[[121,775]],7824:[[90,770]],7825:[[122,770]],7826:[[90,803]],7827:[[122,803]],7828:[[90,817]],7829:[[122,817]],7830:[[104,817]],7831:[[116,776]],7832:[[119,778]],7833:[[121,778]],7834:[[97,702],256],7835:[[383,775]],7840:[[65,803],,{770:7852,774:7862}],7841:[[97,803],,{770:7853,774:7863}],7842:[[65,777]],7843:[[97,777]],7844:[[194,769]],7845:[[226,769]],7846:[[194,768]],7847:[[226,768]],7848:[[194,777]],7849:[[226,777]],7850:[[194,771]],7851:[[226,771]],7852:[[7840,770]],7853:[[7841,770]],7854:[[258,769]],7855:[[259,769]],7856:[[258,768]],7857:[[259,768]],7858:[[258,777]],7859:[[259,777]],7860:[[258,771]],7861:[[259,771]],7862:[[7840,774]],7863:[[7841,774]],7864:[[69,803],,{770:7878}],7865:[[101,803],,{770:7879}],7866:[[69,777]],7867:[[101,777]],7868:[[69,771]],7869:[[101,771]],7870:[[202,769]],7871:[[234,769]],7872:[[202,768]],7873:[[234,768]],7874:[[202,777]],7875:[[234,777]],7876:[[202,771]],7877:[[234,771]],7878:[[7864,770]],7879:[[7865,770]],7880:[[73,777]],7881:[[105,777]],7882:[[73,803]],7883:[[105,803]],7884:[[79,803],,{770:7896}],7885:[[111,803],,{770:7897}],7886:[[79,777]],7887:[[111,777]],7888:[[212,769]],7889:[[244,769]],7890:[[212,768]],7891:[[244,768]],7892:[[212,777]],7893:[[244,777]],7894:[[212,771]],7895:[[244,771]],7896:[[7884,770]],7897:[[7885,770]],7898:[[416,769]],7899:[[417,769]],7900:[[416,768]],7901:[[417,768]],7902:[[416,777]],7903:[[417,777]],7904:[[416,771]],7905:[[417,771]],7906:[[416,803]],7907:[[417,803]],7908:[[85,803]],7909:[[117,803]],7910:[[85,777]],7911:[[117,777]],7912:[[431,769]],7913:[[432,769]],7914:[[431,768]],7915:[[432,768]],7916:[[431,777]],7917:[[432,777]],7918:[[431,771]],7919:[[432,771]],7920:[[431,803]],7921:[[432,803]],7922:[[89,768]],7923:[[121,768]],7924:[[89,803]],7925:[[121,803]],7926:[[89,777]],7927:[[121,777]],7928:[[89,771]],7929:[[121,771]]},7936:{7936:[[945,787],,{768:7938,769:7940,834:7942,837:8064}],7937:[[945,788],,{768:7939,769:7941,834:7943,837:8065}],7938:[[7936,768],,{837:8066}],7939:[[7937,768],,{837:8067}],7940:[[7936,769],,{837:8068}],7941:[[7937,769],,{837:8069}],7942:[[7936,834],,{837:8070}],7943:[[7937,834],,{837:8071}],7944:[[913,787],,{768:7946,769:7948,834:7950,837:8072}],7945:[[913,788],,{768:7947,769:7949,834:7951,837:8073}],7946:[[7944,768],,{837:8074}],7947:[[7945,768],,{837:8075}],7948:[[7944,769],,{837:8076}],7949:[[7945,769],,{837:8077}],7950:[[7944,834],,{837:8078}],7951:[[7945,834],,{837:8079}],7952:[[949,787],,{768:7954,769:7956}],7953:[[949,788],,{768:7955,769:7957}],7954:[[7952,768]],7955:[[7953,768]],7956:[[7952,769]],7957:[[7953,769]],7960:[[917,787],,{768:7962,769:7964}],7961:[[917,788],,{768:7963,769:7965}],7962:[[7960,768]],7963:[[7961,768]],7964:[[7960,769]],7965:[[7961,769]],7968:[[951,787],,{768:7970,769:7972,834:7974,837:8080}],7969:[[951,788],,{768:7971,769:7973,834:7975,837:8081}],7970:[[7968,768],,{837:8082}],7971:[[7969,768],,{837:8083}],7972:[[7968,769],,{837:8084}],7973:[[7969,769],,{837:8085}],7974:[[7968,834],,{837:8086}],7975:[[7969,834],,{837:8087}],7976:[[919,787],,{768:7978,769:7980,834:7982,837:8088}],7977:[[919,788],,{768:7979,769:7981,834:7983,837:8089}],7978:[[7976,768],,{837:8090}],7979:[[7977,768],,{837:8091}],7980:[[7976,769],,{837:8092}],7981:[[7977,769],,{837:8093}],7982:[[7976,834],,{837:8094}],7983:[[7977,834],,{837:8095}],7984:[[953,787],,{768:7986,769:7988,834:7990}],7985:[[953,788],,{768:7987,769:7989,834:7991}],7986:[[7984,768]],7987:[[7985,768]],7988:[[7984,769]],7989:[[7985,769]],7990:[[7984,834]],7991:[[7985,834]],7992:[[921,787],,{768:7994,769:7996,834:7998}],7993:[[921,788],,{768:7995,769:7997,834:7999}],7994:[[7992,768]],7995:[[7993,768]],7996:[[7992,769]],7997:[[7993,769]],7998:[[7992,834]],7999:[[7993,834]],8e3:[[959,787],,{768:8002,769:8004}],8001:[[959,788],,{768:8003,769:8005}],8002:[[8e3,768]],8003:[[8001,768]],8004:[[8e3,769]],8005:[[8001,769]],8008:[[927,787],,{768:8010,769:8012}],8009:[[927,788],,{768:8011,769:8013}],8010:[[8008,768]],8011:[[8009,768]],8012:[[8008,769]],8013:[[8009,769]],8016:[[965,787],,{768:8018,769:8020,834:8022}],8017:[[965,788],,{768:8019,769:8021,834:8023}],8018:[[8016,768]],8019:[[8017,768]],8020:[[8016,769]],8021:[[8017,769]],8022:[[8016,834]],8023:[[8017,834]],8025:[[933,788],,{768:8027,769:8029,834:8031}],8027:[[8025,768]],8029:[[8025,769]],8031:[[8025,834]],8032:[[969,787],,{768:8034,769:8036,834:8038,837:8096}],8033:[[969,788],,{768:8035,769:8037,834:8039,837:8097}],8034:[[8032,768],,{837:8098}],8035:[[8033,768],,{837:8099}],8036:[[8032,769],,{837:8100}],8037:[[8033,769],,{837:8101}],8038:[[8032,834],,{837:8102}],8039:[[8033,834],,{837:8103}],8040:[[937,787],,{768:8042,769:8044,834:8046,837:8104}],8041:[[937,788],,{768:8043,769:8045,834:8047,837:8105}],8042:[[8040,768],,{837:8106}],8043:[[8041,768],,{837:8107}],8044:[[8040,769],,{837:8108}],8045:[[8041,769],,{837:8109}],8046:[[8040,834],,{837:8110}],8047:[[8041,834],,{837:8111}],8048:[[945,768],,{837:8114}],8049:[[940]],8050:[[949,768]],8051:[[941]],8052:[[951,768],,{837:8130}],8053:[[942]],8054:[[953,768]],8055:[[943]],8056:[[959,768]],8057:[[972]],8058:[[965,768]],8059:[[973]],8060:[[969,768],,{837:8178}],8061:[[974]],8064:[[7936,837]],8065:[[7937,837]],8066:[[7938,837]],8067:[[7939,837]],8068:[[7940,837]],8069:[[7941,837]],8070:[[7942,837]],8071:[[7943,837]],8072:[[7944,837]],8073:[[7945,837]],8074:[[7946,837]],8075:[[7947,837]],8076:[[7948,837]],8077:[[7949,837]],8078:[[7950,837]],8079:[[7951,837]],8080:[[7968,837]],8081:[[7969,837]],8082:[[7970,837]],8083:[[7971,837]],8084:[[7972,837]],8085:[[7973,837]],8086:[[7974,837]],8087:[[7975,837]],8088:[[7976,837]],8089:[[7977,837]],8090:[[7978,837]],8091:[[7979,837]],8092:[[7980,837]],8093:[[7981,837]],8094:[[7982,837]],8095:[[7983,837]],8096:[[8032,837]],8097:[[8033,837]],8098:[[8034,837]],8099:[[8035,837]],8100:[[8036,837]],8101:[[8037,837]],8102:[[8038,837]],8103:[[8039,837]],8104:[[8040,837]],8105:[[8041,837]],8106:[[8042,837]],8107:[[8043,837]],8108:[[8044,837]],8109:[[8045,837]],8110:[[8046,837]],8111:[[8047,837]],8112:[[945,774]],8113:[[945,772]],8114:[[8048,837]],8115:[[945,837]],8116:[[940,837]],8118:[[945,834],,{837:8119}],8119:[[8118,837]],8120:[[913,774]],8121:[[913,772]],8122:[[913,768]],8123:[[902]],8124:[[913,837]],8125:[[32,787],256],8126:[[953]],8127:[[32,787],256,{768:8141,769:8142,834:8143}],8128:[[32,834],256],8129:[[168,834]],8130:[[8052,837]],8131:[[951,837]],8132:[[942,837]],8134:[[951,834],,{837:8135}],8135:[[8134,837]],8136:[[917,768]],8137:[[904]],8138:[[919,768]],8139:[[905]],8140:[[919,837]],8141:[[8127,768]],8142:[[8127,769]],8143:[[8127,834]],8144:[[953,774]],8145:[[953,772]],8146:[[970,768]],8147:[[912]],8150:[[953,834]],8151:[[970,834]],8152:[[921,774]],8153:[[921,772]],8154:[[921,768]],8155:[[906]],8157:[[8190,768]],8158:[[8190,769]],8159:[[8190,834]],8160:[[965,774]],8161:[[965,772]],8162:[[971,768]],8163:[[944]],8164:[[961,787]],8165:[[961,788]],8166:[[965,834]],8167:[[971,834]],8168:[[933,774]],8169:[[933,772]],8170:[[933,768]],8171:[[910]],8172:[[929,788]],8173:[[168,768]],8174:[[901]],8175:[[96]],8178:[[8060,837]],8179:[[969,837]],8180:[[974,837]],8182:[[969,834],,{837:8183}],8183:[[8182,837]],8184:[[927,768]],8185:[[908]],8186:[[937,768]],8187:[[911]],8188:[[937,837]],8189:[[180]],8190:[[32,788],256,{768:8157,769:8158,834:8159}]},8192:{8192:[[8194]],8193:[[8195]],8194:[[32],256],8195:[[32],256],8196:[[32],256],8197:[[32],256],8198:[[32],256],8199:[[32],256],8200:[[32],256],8201:[[32],256],8202:[[32],256],8209:[[8208],256],8215:[[32,819],256],8228:[[46],256],8229:[[46,46],256],8230:[[46,46,46],256],8239:[[32],256],8243:[[8242,8242],256],8244:[[8242,8242,8242],256],8246:[[8245,8245],256],8247:[[8245,8245,8245],256],8252:[[33,33],256],8254:[[32,773],256],8263:[[63,63],256],8264:[[63,33],256],8265:[[33,63],256],8279:[[8242,8242,8242,8242],256],8287:[[32],256],8304:[[48],256],8305:[[105],256],8308:[[52],256],8309:[[53],256],8310:[[54],256],8311:[[55],256],8312:[[56],256],8313:[[57],256],8314:[[43],256],8315:[[8722],256],8316:[[61],256],8317:[[40],256],8318:[[41],256],8319:[[110],256],8320:[[48],256],8321:[[49],256],8322:[[50],256],8323:[[51],256],8324:[[52],256],8325:[[53],256],8326:[[54],256],8327:[[55],256],8328:[[56],256],8329:[[57],256],8330:[[43],256],8331:[[8722],256],8332:[[61],256],8333:[[40],256],8334:[[41],256],8336:[[97],256],8337:[[101],256],8338:[[111],256],8339:[[120],256],8340:[[601],256],8341:[[104],256],8342:[[107],256],8343:[[108],256],8344:[[109],256],8345:[[110],256],8346:[[112],256],8347:[[115],256],8348:[[116],256],8360:[[82,115],256],8400:[,230],8401:[,230],8402:[,1],8403:[,1],8404:[,230],8405:[,230],8406:[,230],8407:[,230],8408:[,1],8409:[,1],8410:[,1],8411:[,230],8412:[,230],8417:[,230],8421:[,1],8422:[,1],8423:[,230],8424:[,220],8425:[,230],8426:[,1],8427:[,1],8428:[,220],8429:[,220],8430:[,220],8431:[,220],8432:[,230]},8448:{8448:[[97,47,99],256],8449:[[97,47,115],256],8450:[[67],256],8451:[[176,67],256],8453:[[99,47,111],256],8454:[[99,47,117],256],8455:[[400],256],8457:[[176,70],256],8458:[[103],256],8459:[[72],256],8460:[[72],256],8461:[[72],256],8462:[[104],256],8463:[[295],256],8464:[[73],256],8465:[[73],256],8466:[[76],256],8467:[[108],256],8469:[[78],256],8470:[[78,111],256],8473:[[80],256],8474:[[81],256],8475:[[82],256],8476:[[82],256],8477:[[82],256],8480:[[83,77],256],8481:[[84,69,76],256],8482:[[84,77],256],8484:[[90],256],8486:[[937]],8488:[[90],256],8490:[[75]],8491:[[197]],8492:[[66],256],8493:[[67],256],8495:[[101],256],8496:[[69],256],8497:[[70],256],8499:[[77],256],8500:[[111],256],8501:[[1488],256],8502:[[1489],256],8503:[[1490],256],8504:[[1491],256],8505:[[105],256],8507:[[70,65,88],256],8508:[[960],256],8509:[[947],256],8510:[[915],256],8511:[[928],256],8512:[[8721],256],8517:[[68],256],8518:[[100],256],8519:[[101],256],8520:[[105],256],8521:[[106],256],8528:[[49,8260,55],256],8529:[[49,8260,57],256],8530:[[49,8260,49,48],256],8531:[[49,8260,51],256],8532:[[50,8260,51],256],8533:[[49,8260,53],256],8534:[[50,8260,53],256],8535:[[51,8260,53],256],8536:[[52,8260,53],256],8537:[[49,8260,54],256],8538:[[53,8260,54],256],8539:[[49,8260,56],256],8540:[[51,8260,56],256],8541:[[53,8260,56],256],8542:[[55,8260,56],256],8543:[[49,8260],256],8544:[[73],256],8545:[[73,73],256],8546:[[73,73,73],256],8547:[[73,86],256],8548:[[86],256],8549:[[86,73],256],8550:[[86,73,73],256],8551:[[86,73,73,73],256],8552:[[73,88],256],8553:[[88],256],8554:[[88,73],256],8555:[[88,73,73],256],8556:[[76],256],8557:[[67],256],8558:[[68],256],8559:[[77],256],8560:[[105],256],8561:[[105,105],256],8562:[[105,105,105],256],8563:[[105,118],256],8564:[[118],256],8565:[[118,105],256],8566:[[118,105,105],256],8567:[[118,105,105,105],256],8568:[[105,120],256],8569:[[120],256],8570:[[120,105],256],8571:[[120,105,105],256],8572:[[108],256],8573:[[99],256],8574:[[100],256],8575:[[109],256],8585:[[48,8260,51],256],8592:[,,{824:8602}],8594:[,,{824:8603}],8596:[,,{824:8622}],8602:[[8592,824]],8603:[[8594,824]],8622:[[8596,824]],8653:[[8656,824]],8654:[[8660,824]],8655:[[8658,824]],8656:[,,{824:8653}],8658:[,,{824:8655}],8660:[,,{824:8654}]},8704:{8707:[,,{824:8708}],8708:[[8707,824]],8712:[,,{824:8713}],8713:[[8712,824]],8715:[,,{824:8716}],8716:[[8715,824]],8739:[,,{824:8740}],8740:[[8739,824]],8741:[,,{824:8742}],8742:[[8741,824]],8748:[[8747,8747],256],8749:[[8747,8747,8747],256],8751:[[8750,8750],256],8752:[[8750,8750,8750],256],8764:[,,{824:8769}],8769:[[8764,824]],8771:[,,{824:8772}],8772:[[8771,824]],8773:[,,{824:8775}],8775:[[8773,824]],8776:[,,{824:8777}],8777:[[8776,824]],8781:[,,{824:8813}],8800:[[61,824]],8801:[,,{824:8802}],8802:[[8801,824]],8804:[,,{824:8816}],8805:[,,{824:8817}],8813:[[8781,824]],8814:[[60,824]],8815:[[62,824]],8816:[[8804,824]],8817:[[8805,824]],8818:[,,{824:8820}],8819:[,,{824:8821}],8820:[[8818,824]],8821:[[8819,824]],8822:[,,{824:8824}],8823:[,,{824:8825}],8824:[[8822,824]],8825:[[8823,824]],8826:[,,{824:8832}],8827:[,,{824:8833}],8828:[,,{824:8928}],8829:[,,{824:8929}],8832:[[8826,824]],8833:[[8827,824]],8834:[,,{824:8836}],8835:[,,{824:8837}],8836:[[8834,824]],8837:[[8835,824]],8838:[,,{824:8840}],8839:[,,{824:8841}],8840:[[8838,824]],8841:[[8839,824]],8849:[,,{824:8930}],8850:[,,{824:8931}],8866:[,,{824:8876}],8872:[,,{824:8877}],8873:[,,{824:8878}],8875:[,,{824:8879}],8876:[[8866,824]],8877:[[8872,824]],8878:[[8873,824]],8879:[[8875,824]],8882:[,,{824:8938}],8883:[,,{824:8939}],8884:[,,{824:8940}],8885:[,,{824:8941}],8928:[[8828,824]],8929:[[8829,824]],8930:[[8849,824]],8931:[[8850,824]],8938:[[8882,824]],8939:[[8883,824]],8940:[[8884,824]],8941:[[8885,824]]},8960:{9001:[[12296]],9002:[[12297]]},9216:{9312:[[49],256],9313:[[50],256],9314:[[51],256],9315:[[52],256],9316:[[53],256],9317:[[54],256],9318:[[55],256],9319:[[56],256],9320:[[57],256],9321:[[49,48],256],9322:[[49,49],256],9323:[[49,50],256],9324:[[49,51],256],9325:[[49,52],256],9326:[[49,53],256],9327:[[49,54],256],9328:[[49,55],256],9329:[[49,56],256],9330:[[49,57],256],9331:[[50,48],256],9332:[[40,49,41],256],9333:[[40,50,41],256],9334:[[40,51,41],256],9335:[[40,52,41],256],9336:[[40,53,41],256],9337:[[40,54,41],256],9338:[[40,55,41],256],9339:[[40,56,41],256],9340:[[40,57,41],256],9341:[[40,49,48,41],256],9342:[[40,49,49,41],256],9343:[[40,49,50,41],256],9344:[[40,49,51,41],256],9345:[[40,49,52,41],256],9346:[[40,49,53,41],256],9347:[[40,49,54,41],256],9348:[[40,49,55,41],256],9349:[[40,49,56,41],256],9350:[[40,49,57,41],256],9351:[[40,50,48,41],256],9352:[[49,46],256],9353:[[50,46],256],9354:[[51,46],256],9355:[[52,46],256],9356:[[53,46],256],9357:[[54,46],256],9358:[[55,46],256],9359:[[56,46],256],9360:[[57,46],256],9361:[[49,48,46],256],9362:[[49,49,46],256],9363:[[49,50,46],256],9364:[[49,51,46],256],9365:[[49,52,46],256],9366:[[49,53,46],256],9367:[[49,54,46],256],9368:[[49,55,46],256],9369:[[49,56,46],256],9370:[[49,57,46],256],9371:[[50,48,46],256],9372:[[40,97,41],256],9373:[[40,98,41],256],9374:[[40,99,41],256],9375:[[40,100,41],256],9376:[[40,101,41],256],9377:[[40,102,41],256],9378:[[40,103,41],256],9379:[[40,104,41],256],9380:[[40,105,41],256],9381:[[40,106,41],256],9382:[[40,107,41],256],9383:[[40,108,41],256],9384:[[40,109,41],256],9385:[[40,110,41],256],9386:[[40,111,41],256],9387:[[40,112,41],256],9388:[[40,113,41],256],9389:[[40,114,41],256],9390:[[40,115,41],256],9391:[[40,116,41],256],9392:[[40,117,41],256],9393:[[40,118,41],256],9394:[[40,119,41],256],9395:[[40,120,41],256],9396:[[40,121,41],256],9397:[[40,122,41],256],9398:[[65],256],9399:[[66],256],9400:[[67],256],9401:[[68],256],9402:[[69],256],9403:[[70],256],9404:[[71],256],9405:[[72],256],9406:[[73],256],9407:[[74],256],9408:[[75],256],9409:[[76],256],9410:[[77],256],9411:[[78],256],9412:[[79],256],9413:[[80],256],9414:[[81],256],9415:[[82],256],9416:[[83],256],9417:[[84],256],9418:[[85],256],9419:[[86],256],9420:[[87],256],9421:[[88],256],9422:[[89],256],9423:[[90],256],9424:[[97],256],9425:[[98],256],9426:[[99],256],9427:[[100],256],9428:[[101],256],9429:[[102],256],9430:[[103],256],9431:[[104],256],9432:[[105],256],9433:[[106],256],9434:[[107],256],9435:[[108],256],9436:[[109],256],9437:[[110],256],9438:[[111],256],9439:[[112],256],9440:[[113],256],9441:[[114],256],9442:[[115],256],9443:[[116],256],9444:[[117],256],9445:[[118],256],9446:[[119],256],9447:[[120],256],9448:[[121],256],9449:[[122],256],9450:[[48],256]},10752:{10764:[[8747,8747,8747,8747],256],10868:[[58,58,61],256],10869:[[61,61],256],10870:[[61,61,61],256],10972:[[10973,824],512]},11264:{11388:[[106],256],11389:[[86],256],11503:[,230],11504:[,230],11505:[,230]},11520:{11631:[[11617],256],11647:[,9],11744:[,230],11745:[,230],11746:[,230],11747:[,230],11748:[,230],11749:[,230],11750:[,230],11751:[,230],11752:[,230],11753:[,230],11754:[,230],11755:[,230],11756:[,230],11757:[,230],11758:[,230],11759:[,230],11760:[,230],11761:[,230],11762:[,230],11763:[,230],11764:[,230],11765:[,230],11766:[,230],11767:[,230],11768:[,230],11769:[,230],11770:[,230],11771:[,230],11772:[,230],11773:[,230],11774:[,230],11775:[,230]},11776:{11935:[[27597],256],12019:[[40863],256]},12032:{12032:[[19968],256],12033:[[20008],256],12034:[[20022],256],12035:[[20031],256],12036:[[20057],256],12037:[[20101],256],12038:[[20108],256],12039:[[20128],256],12040:[[20154],256],12041:[[20799],256],12042:[[20837],256],12043:[[20843],256],12044:[[20866],256],12045:[[20886],256],12046:[[20907],256],12047:[[20960],256],12048:[[20981],256],12049:[[20992],256],12050:[[21147],256],12051:[[21241],256],12052:[[21269],256],12053:[[21274],256],12054:[[21304],256],12055:[[21313],256],12056:[[21340],256],12057:[[21353],256],12058:[[21378],256],12059:[[21430],256],12060:[[21448],256],12061:[[21475],256],12062:[[22231],256],12063:[[22303],256],12064:[[22763],256],12065:[[22786],256],12066:[[22794],256],12067:[[22805],256],12068:[[22823],256],12069:[[22899],256],12070:[[23376],256],12071:[[23424],256],12072:[[23544],256],12073:[[23567],256],12074:[[23586],256],12075:[[23608],256],12076:[[23662],256],12077:[[23665],256],12078:[[24027],256],12079:[[24037],256],12080:[[24049],256],12081:[[24062],256],12082:[[24178],256],12083:[[24186],256],12084:[[24191],256],12085:[[24308],256],12086:[[24318],256],12087:[[24331],256],12088:[[24339],256],12089:[[24400],256],12090:[[24417],256],12091:[[24435],256],12092:[[24515],256],12093:[[25096],256],12094:[[25142],256],12095:[[25163],256],12096:[[25903],256],12097:[[25908],256],12098:[[25991],256],12099:[[26007],256],12100:[[26020],256],12101:[[26041],256],12102:[[26080],256],12103:[[26085],256],12104:[[26352],256],12105:[[26376],256],12106:[[26408],256],12107:[[27424],256],12108:[[27490],256],12109:[[27513],256],12110:[[27571],256],12111:[[27595],256],12112:[[27604],256],12113:[[27611],256],12114:[[27663],256],12115:[[27668],256],12116:[[27700],256],12117:[[28779],256],12118:[[29226],256],12119:[[29238],256],12120:[[29243],256],12121:[[29247],256],12122:[[29255],256],12123:[[29273],256],12124:[[29275],256],12125:[[29356],256],12126:[[29572],256],12127:[[29577],256],12128:[[29916],256],12129:[[29926],256],12130:[[29976],256],12131:[[29983],256],12132:[[29992],256],12133:[[3e4],256],12134:[[30091],256],12135:[[30098],256],12136:[[30326],256],12137:[[30333],256],12138:[[30382],256],12139:[[30399],256],12140:[[30446],256],12141:[[30683],256],12142:[[30690],256],12143:[[30707],256],12144:[[31034],256],12145:[[31160],256],12146:[[31166],256],12147:[[31348],256],12148:[[31435],256],12149:[[31481],256],12150:[[31859],256],12151:[[31992],256],12152:[[32566],256],12153:[[32593],256],12154:[[32650],256],12155:[[32701],256],12156:[[32769],256],12157:[[32780],256],12158:[[32786],256],12159:[[32819],256],12160:[[32895],256],12161:[[32905],256],12162:[[33251],256],12163:[[33258],256],12164:[[33267],256],12165:[[33276],256],12166:[[33292],256],12167:[[33307],256],12168:[[33311],256],12169:[[33390],256],12170:[[33394],256],12171:[[33400],256],12172:[[34381],256],12173:[[34411],256],12174:[[34880],256],12175:[[34892],256],12176:[[34915],256],12177:[[35198],256],12178:[[35211],256],12179:[[35282],256],12180:[[35328],256],12181:[[35895],256],12182:[[35910],256],12183:[[35925],256],12184:[[35960],256],12185:[[35997],256],12186:[[36196],256],12187:[[36208],256],12188:[[36275],256],12189:[[36523],256],12190:[[36554],256],12191:[[36763],256],12192:[[36784],256],12193:[[36789],256],12194:[[37009],256],12195:[[37193],256],12196:[[37318],256],12197:[[37324],256],12198:[[37329],256],12199:[[38263],256],12200:[[38272],256],12201:[[38428],256],12202:[[38582],256],12203:[[38585],256],12204:[[38632],256],12205:[[38737],256],12206:[[38750],256],12207:[[38754],256],12208:[[38761],256],12209:[[38859],256],12210:[[38893],256],12211:[[38899],256],12212:[[38913],256],12213:[[39080],256],12214:[[39131],256],12215:[[39135],256],12216:[[39318],256],12217:[[39321],256],12218:[[39340],256],12219:[[39592],256],12220:[[39640],256],12221:[[39647],256],12222:[[39717],256],12223:[[39727],256],12224:[[39730],256],12225:[[39740],256],12226:[[39770],256],12227:[[40165],256],12228:[[40565],256],12229:[[40575],256],12230:[[40613],256],12231:[[40635],256],12232:[[40643],256],12233:[[40653],256],12234:[[40657],256],12235:[[40697],256],12236:[[40701],256],12237:[[40718],256],12238:[[40723],256],12239:[[40736],256],12240:[[40763],256],12241:[[40778],256],12242:[[40786],256],12243:[[40845],256],12244:[[40860],256],12245:[[40864],256]},12288:{12288:[[32],256],12330:[,218],12331:[,228],12332:[,232],12333:[,222],12334:[,224],12335:[,224],12342:[[12306],256],12344:[[21313],256],12345:[[21316],256],12346:[[21317],256],12358:[,,{12441:12436}],12363:[,,{12441:12364}],12364:[[12363,12441]],12365:[,,{12441:12366}],12366:[[12365,12441]],12367:[,,{12441:12368}],12368:[[12367,12441]],12369:[,,{12441:12370}],12370:[[12369,12441]],12371:[,,{12441:12372}],12372:[[12371,12441]],12373:[,,{12441:12374}],12374:[[12373,12441]],12375:[,,{12441:12376}],12376:[[12375,12441]],12377:[,,{12441:12378}],12378:[[12377,12441]],12379:[,,{12441:12380}],12380:[[12379,12441]],12381:[,,{12441:12382}],12382:[[12381,12441]],12383:[,,{12441:12384}],12384:[[12383,12441]],12385:[,,{12441:12386}],12386:[[12385,12441]],12388:[,,{12441:12389}],12389:[[12388,12441]],12390:[,,{12441:12391}],12391:[[12390,12441]],12392:[,,{12441:12393}],12393:[[12392,12441]],12399:[,,{12441:12400,12442:12401}],12400:[[12399,12441]],12401:[[12399,12442]],12402:[,,{12441:12403,12442:12404}],12403:[[12402,12441]],12404:[[12402,12442]],12405:[,,{12441:12406,12442:12407}],12406:[[12405,12441]],12407:[[12405,12442]],12408:[,,{12441:12409,12442:12410}],12409:[[12408,12441]],12410:[[12408,12442]],12411:[,,{12441:12412,12442:12413}],12412:[[12411,12441]],12413:[[12411,12442]],12436:[[12358,12441]],12441:[,8],12442:[,8],12443:[[32,12441],256],12444:[[32,12442],256],12445:[,,{12441:12446}],12446:[[12445,12441]],12447:[[12424,12426],256],12454:[,,{12441:12532}],12459:[,,{12441:12460}],12460:[[12459,12441]],12461:[,,{12441:12462}],12462:[[12461,12441]],12463:[,,{12441:12464}],12464:[[12463,12441]],12465:[,,{12441:12466}],12466:[[12465,12441]],12467:[,,{12441:12468}],12468:[[12467,12441]],12469:[,,{12441:12470}],12470:[[12469,12441]],12471:[,,{12441:12472}],12472:[[12471,12441]],12473:[,,{12441:12474}],12474:[[12473,12441]],12475:[,,{12441:12476}],12476:[[12475,12441]],12477:[,,{12441:12478}],12478:[[12477,12441]],12479:[,,{12441:12480}],12480:[[12479,12441]],12481:[,,{12441:12482}],12482:[[12481,12441]],12484:[,,{12441:12485}],12485:[[12484,12441]],12486:[,,{12441:12487}],12487:[[12486,12441]],12488:[,,{12441:12489}],12489:[[12488,12441]],12495:[,,{12441:12496,12442:12497}],12496:[[12495,12441]],12497:[[12495,12442]],12498:[,,{12441:12499,12442:12500}],12499:[[12498,12441]],12500:[[12498,12442]],12501:[,,{12441:12502,12442:12503}],12502:[[12501,12441]],12503:[[12501,12442]],12504:[,,{12441:12505,12442:12506}],12505:[[12504,12441]],12506:[[12504,12442]],12507:[,,{12441:12508,12442:12509}],12508:[[12507,12441]],12509:[[12507,12442]],12527:[,,{12441:12535}],12528:[,,{12441:12536}],12529:[,,{12441:12537}],12530:[,,{12441:12538}],12532:[[12454,12441]],12535:[[12527,12441]],12536:[[12528,12441]],12537:[[12529,12441]],12538:[[12530,12441]],12541:[,,{12441:12542}],12542:[[12541,12441]],12543:[[12467,12488],256]},12544:{12593:[[4352],256],12594:[[4353],256],12595:[[4522],256],12596:[[4354],256],12597:[[4524],256],12598:[[4525],256],12599:[[4355],256],12600:[[4356],256],12601:[[4357],256],12602:[[4528],256],12603:[[4529],256],12604:[[4530],256],12605:[[4531],256],12606:[[4532],256],12607:[[4533],256],12608:[[4378],256],12609:[[4358],256],12610:[[4359],256],12611:[[4360],256],12612:[[4385],256],12613:[[4361],256],12614:[[4362],256],12615:[[4363],256],12616:[[4364],256],12617:[[4365],256],12618:[[4366],256],12619:[[4367],256],12620:[[4368],256],12621:[[4369],256],12622:[[4370],256],12623:[[4449],256],12624:[[4450],256],12625:[[4451],256],12626:[[4452],256],12627:[[4453],256],12628:[[4454],256],12629:[[4455],256],12630:[[4456],256],12631:[[4457],256],12632:[[4458],256],12633:[[4459],256],12634:[[4460],256],12635:[[4461],256],12636:[[4462],256],12637:[[4463],256],12638:[[4464],256],12639:[[4465],256],12640:[[4466],256],12641:[[4467],256],12642:[[4468],256],12643:[[4469],256],12644:[[4448],256],12645:[[4372],256],12646:[[4373],256],12647:[[4551],256],12648:[[4552],256],12649:[[4556],256],12650:[[4558],256],12651:[[4563],256],12652:[[4567],256],12653:[[4569],256],12654:[[4380],256],12655:[[4573],256],12656:[[4575],256],12657:[[4381],256],12658:[[4382],256],12659:[[4384],256],12660:[[4386],256],12661:[[4387],256],12662:[[4391],256],12663:[[4393],256],12664:[[4395],256],12665:[[4396],256],12666:[[4397],256],12667:[[4398],256],12668:[[4399],256],12669:[[4402],256],12670:[[4406],256],12671:[[4416],256],12672:[[4423],256],12673:[[4428],256],12674:[[4593],256],12675:[[4594],256],12676:[[4439],256],12677:[[4440],256],12678:[[4441],256],12679:[[4484],256],12680:[[4485],256],12681:[[4488],256],12682:[[4497],256],12683:[[4498],256],12684:[[4500],256],12685:[[4510],256],12686:[[4513],256],12690:[[19968],256],12691:[[20108],256],12692:[[19977],256],12693:[[22235],256],12694:[[19978],256],12695:[[20013],256],12696:[[19979],256],12697:[[30002],256],12698:[[20057],256],12699:[[19993],256],12700:[[19969],256],12701:[[22825],256],12702:[[22320],256],12703:[[20154],256]},12800:{12800:[[40,4352,41],256],12801:[[40,4354,41],256],12802:[[40,4355,41],256],12803:[[40,4357,41],256],12804:[[40,4358,41],256],12805:[[40,4359,41],256],12806:[[40,4361,41],256],12807:[[40,4363,41],256],12808:[[40,4364,41],256],12809:[[40,4366,41],256],12810:[[40,4367,41],256],12811:[[40,4368,41],256],12812:[[40,4369,41],256],12813:[[40,4370,41],256],12814:[[40,4352,4449,41],256],12815:[[40,4354,4449,41],256],12816:[[40,4355,4449,41],256],12817:[[40,4357,4449,41],256],12818:[[40,4358,4449,41],256],12819:[[40,4359,4449,41],256],12820:[[40,4361,4449,41],256],12821:[[40,4363,4449,41],256],12822:[[40,4364,4449,41],256],12823:[[40,4366,4449,41],256],12824:[[40,4367,4449,41],256],12825:[[40,4368,4449,41],256],12826:[[40,4369,4449,41],256],12827:[[40,4370,4449,41],256],12828:[[40,4364,4462,41],256],12829:[[40,4363,4457,4364,4453,4523,41],256],12830:[[40,4363,4457,4370,4462,41],256],12832:[[40,19968,41],256],12833:[[40,20108,41],256],12834:[[40,19977,41],256],12835:[[40,22235,41],256],12836:[[40,20116,41],256],12837:[[40,20845,41],256],12838:[[40,19971,41],256],12839:[[40,20843,41],256],12840:[[40,20061,41],256],12841:[[40,21313,41],256],12842:[[40,26376,41],256],12843:[[40,28779,41],256],12844:[[40,27700,41],256],12845:[[40,26408,41],256],12846:[[40,37329,41],256],12847:[[40,22303,41],256],12848:[[40,26085,41],256],12849:[[40,26666,41],256],12850:[[40,26377,41],256],12851:[[40,31038,41],256],12852:[[40,21517,41],256],12853:[[40,29305,41],256],12854:[[40,36001,41],256],12855:[[40,31069,41],256],12856:[[40,21172,41],256],12857:[[40,20195,41],256],12858:[[40,21628,41],256],12859:[[40,23398,41],256],12860:[[40,30435,41],256],12861:[[40,20225,41],256],12862:[[40,36039,41],256],12863:[[40,21332,41],256],12864:[[40,31085,41],256],12865:[[40,20241,41],256],12866:[[40,33258,41],256],12867:[[40,33267,41],256],12868:[[21839],256],12869:[[24188],256],12870:[[25991],256],12871:[[31631],256],12880:[[80,84,69],256],12881:[[50,49],256],12882:[[50,50],256],12883:[[50,51],256],12884:[[50,52],256],12885:[[50,53],256],12886:[[50,54],256],12887:[[50,55],256],12888:[[50,56],256],12889:[[50,57],256],12890:[[51,48],256],12891:[[51,49],256],12892:[[51,50],256],12893:[[51,51],256],12894:[[51,52],256],12895:[[51,53],256],12896:[[4352],256],12897:[[4354],256],12898:[[4355],256],12899:[[4357],256],12900:[[4358],256],12901:[[4359],256],12902:[[4361],256],12903:[[4363],256],12904:[[4364],256],12905:[[4366],256],12906:[[4367],256],12907:[[4368],256],12908:[[4369],256],12909:[[4370],256],12910:[[4352,4449],256],12911:[[4354,4449],256],12912:[[4355,4449],256],12913:[[4357,4449],256],12914:[[4358,4449],256],12915:[[4359,4449],256],12916:[[4361,4449],256],12917:[[4363,4449],256],12918:[[4364,4449],256],12919:[[4366,4449],256],12920:[[4367,4449],256],12921:[[4368,4449],256],12922:[[4369,4449],256],12923:[[4370,4449],256],12924:[[4366,4449,4535,4352,4457],256],12925:[[4364,4462,4363,4468],256],12926:[[4363,4462],256],12928:[[19968],256],12929:[[20108],256],12930:[[19977],256],12931:[[22235],256],12932:[[20116],256],12933:[[20845],256],12934:[[19971],256],12935:[[20843],256],12936:[[20061],256],12937:[[21313],256],12938:[[26376],256],12939:[[28779],256],12940:[[27700],256],12941:[[26408],256],12942:[[37329],256],12943:[[22303],256],12944:[[26085],256],12945:[[26666],256],12946:[[26377],256],12947:[[31038],256],12948:[[21517],256],12949:[[29305],256],12950:[[36001],256],12951:[[31069],256],12952:[[21172],256],12953:[[31192],256],12954:[[30007],256],12955:[[22899],256],12956:[[36969],256],12957:[[20778],256],12958:[[21360],256],12959:[[27880],256],12960:[[38917],256],12961:[[20241],256],12962:[[20889],256],12963:[[27491],256],12964:[[19978],256],12965:[[20013],256],12966:[[19979],256],12967:[[24038],256],12968:[[21491],256],12969:[[21307],256],12970:[[23447],256],12971:[[23398],256],12972:[[30435],256],12973:[[20225],256],12974:[[36039],256],12975:[[21332],256],12976:[[22812],256],12977:[[51,54],256],12978:[[51,55],256],12979:[[51,56],256],12980:[[51,57],256],12981:[[52,48],256],12982:[[52,49],256],12983:[[52,50],256],12984:[[52,51],256],12985:[[52,52],256],12986:[[52,53],256],12987:[[52,54],256],12988:[[52,55],256],12989:[[52,56],256],12990:[[52,57],256],12991:[[53,48],256],12992:[[49,26376],256],12993:[[50,26376],256],12994:[[51,26376],256],12995:[[52,26376],256],12996:[[53,26376],256],12997:[[54,26376],256],12998:[[55,26376],256],12999:[[56,26376],256],13e3:[[57,26376],256],13001:[[49,48,26376],256],13002:[[49,49,26376],256],13003:[[49,50,26376],256],13004:[[72,103],256],13005:[[101,114,103],256],13006:[[101,86],256],13007:[[76,84,68],256],13008:[[12450],256],13009:[[12452],256],13010:[[12454],256],13011:[[12456],256],13012:[[12458],256],13013:[[12459],256],13014:[[12461],256],13015:[[12463],256],13016:[[12465],256],13017:[[12467],256],13018:[[12469],256],13019:[[12471],256],13020:[[12473],256],13021:[[12475],256],13022:[[12477],256],13023:[[12479],256],13024:[[12481],256],13025:[[12484],256],13026:[[12486],256],13027:[[12488],256],13028:[[12490],256],13029:[[12491],256],13030:[[12492],256],13031:[[12493],256],13032:[[12494],256],13033:[[12495],256],13034:[[12498],256],13035:[[12501],256],13036:[[12504],256],13037:[[12507],256],13038:[[12510],256],13039:[[12511],256],13040:[[12512],256],13041:[[12513],256],13042:[[12514],256],13043:[[12516],256],13044:[[12518],256],13045:[[12520],256],13046:[[12521],256],13047:[[12522],256],13048:[[12523],256],13049:[[12524],256],13050:[[12525],256],13051:[[12527],256],13052:[[12528],256],13053:[[12529],256],13054:[[12530],256]},13056:{13056:[[12450,12497,12540,12488],256],13057:[[12450,12523,12501,12449],256],13058:[[12450,12531,12506,12450],256],13059:[[12450,12540,12523],256],13060:[[12452,12491,12531,12464],256],13061:[[12452,12531,12481],256],13062:[[12454,12457,12531],256],13063:[[12456,12473,12463,12540,12489],256],13064:[[12456,12540,12459,12540],256],13065:[[12458,12531,12473],256],13066:[[12458,12540,12512],256],13067:[[12459,12452,12522],256],13068:[[12459,12521,12483,12488],256],13069:[[12459,12525,12522,12540],256],13070:[[12460,12525,12531],256],13071:[[12460,12531,12510],256],13072:[[12462,12460],256],13073:[[12462,12491,12540],256],13074:[[12461,12517,12522,12540],256],13075:[[12462,12523,12480,12540],256],13076:[[12461,12525],256],13077:[[12461,12525,12464,12521,12512],256],13078:[[12461,12525,12513,12540,12488,12523],256],13079:[[12461,12525,12527,12483,12488],256],13080:[[12464,12521,12512],256],13081:[[12464,12521,12512,12488,12531],256],13082:[[12463,12523,12476,12452,12525],256],13083:[[12463,12525,12540,12493],256],13084:[[12465,12540,12473],256],13085:[[12467,12523,12490],256],13086:[[12467,12540,12509],256],13087:[[12469,12452,12463,12523],256],13088:[[12469,12531,12481,12540,12512],256],13089:[[12471,12522,12531,12464],256],13090:[[12475,12531,12481],256],13091:[[12475,12531,12488],256],13092:[[12480,12540,12473],256],13093:[[12487,12471],256],13094:[[12489,12523],256],13095:[[12488,12531],256],13096:[[12490,12494],256],13097:[[12494,12483,12488],256],13098:[[12495,12452,12484],256],13099:[[12497,12540,12475,12531,12488],256],13100:[[12497,12540,12484],256],13101:[[12496,12540,12524,12523],256],13102:[[12500,12450,12473,12488,12523],256],13103:[[12500,12463,12523],256],13104:[[12500,12467],256],13105:[[12499,12523],256],13106:[[12501,12449,12521,12483,12489],256],13107:[[12501,12451,12540,12488],256],13108:[[12502,12483,12471,12455,12523],256],13109:[[12501,12521,12531],256],13110:[[12504,12463,12479,12540,12523],256],13111:[[12506,12477],256],13112:[[12506,12491,12498],256],13113:[[12504,12523,12484],256],13114:[[12506,12531,12473],256],13115:[[12506,12540,12472],256],13116:[[12505,12540,12479],256],13117:[[12509,12452,12531,12488],256],13118:[[12508,12523,12488],256],13119:[[12507,12531],256],13120:[[12509,12531,12489],256],13121:[[12507,12540,12523],256],13122:[[12507,12540,12531],256],13123:[[12510,12452,12463,12525],256],13124:[[12510,12452,12523],256],13125:[[12510,12483,12495],256],13126:[[12510,12523,12463],256],13127:[[12510,12531,12471,12519,12531],256],13128:[[12511,12463,12525,12531],256],13129:[[12511,12522],256],13130:[[12511,12522,12496,12540,12523],256],13131:[[12513,12460],256],13132:[[12513,12460,12488,12531],256],13133:[[12513,12540,12488,12523],256],13134:[[12516,12540,12489],256],13135:[[12516,12540,12523],256],13136:[[12518,12450,12531],256],13137:[[12522,12483,12488,12523],256],13138:[[12522,12521],256],13139:[[12523,12500,12540],256],13140:[[12523,12540,12502,12523],256],13141:[[12524,12512],256],13142:[[12524,12531,12488,12466,12531],256],13143:[[12527,12483,12488],256],13144:[[48,28857],256],13145:[[49,28857],256],13146:[[50,28857],256],13147:[[51,28857],256],13148:[[52,28857],256],13149:[[53,28857],256],13150:[[54,28857],256],13151:[[55,28857],256],13152:[[56,28857],256],13153:[[57,28857],256],13154:[[49,48,28857],256],13155:[[49,49,28857],256],13156:[[49,50,28857],256],13157:[[49,51,28857],256],13158:[[49,52,28857],256],13159:[[49,53,28857],256],13160:[[49,54,28857],256],13161:[[49,55,28857],256],13162:[[49,56,28857],256],13163:[[49,57,28857],256],13164:[[50,48,28857],256],13165:[[50,49,28857],256],13166:[[50,50,28857],256],13167:[[50,51,28857],256],13168:[[50,52,28857],256],13169:[[104,80,97],256],13170:[[100,97],256],13171:[[65,85],256],13172:[[98,97,114],256],13173:[[111,86],256],13174:[[112,99],256],13175:[[100,109],256],13176:[[100,109,178],256],13177:[[100,109,179],256],13178:[[73,85],256],13179:[[24179,25104],256],13180:[[26157,21644],256],13181:[[22823,27491],256],13182:[[26126,27835],256],13183:[[26666,24335,20250,31038],256],13184:[[112,65],256],13185:[[110,65],256],13186:[[956,65],256],13187:[[109,65],256],13188:[[107,65],256],13189:[[75,66],256],13190:[[77,66],256],13191:[[71,66],256],13192:[[99,97,108],256],13193:[[107,99,97,108],256],13194:[[112,70],256],13195:[[110,70],256],13196:[[956,70],256],13197:[[956,103],256],13198:[[109,103],256],13199:[[107,103],256],13200:[[72,122],256],13201:[[107,72,122],256],13202:[[77,72,122],256],13203:[[71,72,122],256],13204:[[84,72,122],256],13205:[[956,8467],256],13206:[[109,8467],256],13207:[[100,8467],256],13208:[[107,8467],256],13209:[[102,109],256],13210:[[110,109],256],13211:[[956,109],256],13212:[[109,109],256],13213:[[99,109],256],13214:[[107,109],256],13215:[[109,109,178],256],13216:[[99,109,178],256],13217:[[109,178],256],13218:[[107,109,178],256],13219:[[109,109,179],256],13220:[[99,109,179],256],13221:[[109,179],256],13222:[[107,109,179],256],13223:[[109,8725,115],256],13224:[[109,8725,115,178],256],13225:[[80,97],256],13226:[[107,80,97],256],13227:[[77,80,97],256],13228:[[71,80,97],256],13229:[[114,97,100],256],13230:[[114,97,100,8725,115],256],13231:[[114,97,100,8725,115,178],256],13232:[[112,115],256],13233:[[110,115],256],13234:[[956,115],256],13235:[[109,115],256],13236:[[112,86],256],13237:[[110,86],256],13238:[[956,86],256],13239:[[109,86],256],13240:[[107,86],256],13241:[[77,86],256],13242:[[112,87],256],13243:[[110,87],256],13244:[[956,87],256],13245:[[109,87],256],13246:[[107,87],256],13247:[[77,87],256],13248:[[107,937],256],13249:[[77,937],256],13250:[[97,46,109,46],256],13251:[[66,113],256],13252:[[99,99],256],13253:[[99,100],256],13254:[[67,8725,107,103],256],13255:[[67,111,46],256],13256:[[100,66],256],13257:[[71,121],256],13258:[[104,97],256],13259:[[72,80],256],13260:[[105,110],256],13261:[[75,75],256],13262:[[75,77],256],13263:[[107,116],256],13264:[[108,109],256],13265:[[108,110],256],13266:[[108,111,103],256],13267:[[108,120],256],13268:[[109,98],256],13269:[[109,105,108],256],13270:[[109,111,108],256],13271:[[80,72],256],13272:[[112,46,109,46],256],13273:[[80,80,77],256],13274:[[80,82],256],13275:[[115,114],256],13276:[[83,118],256],13277:[[87,98],256],13278:[[86,8725,109],256],13279:[[65,8725,109],256],13280:[[49,26085],256],13281:[[50,26085],256],13282:[[51,26085],256],13283:[[52,26085],256],13284:[[53,26085],256],13285:[[54,26085],256],13286:[[55,26085],256],13287:[[56,26085],256],13288:[[57,26085],256],13289:[[49,48,26085],256],13290:[[49,49,26085],256],13291:[[49,50,26085],256],13292:[[49,51,26085],256],13293:[[49,52,26085],256],13294:[[49,53,26085],256],13295:[[49,54,26085],256],13296:[[49,55,26085],256],13297:[[49,56,26085],256],13298:[[49,57,26085],256],13299:[[50,48,26085],256],13300:[[50,49,26085],256],13301:[[50,50,26085],256],13302:[[50,51,26085],256],13303:[[50,52,26085],256],13304:[[50,53,26085],256],13305:[[50,54,26085],256],13306:[[50,55,26085],256],13307:[[50,56,26085],256],13308:[[50,57,26085],256],13309:[[51,48,26085],256],13310:[[51,49,26085],256],13311:[[103,97,108],256]},27136:{92912:[,1],92913:[,1],92914:[,1],92915:[,1],92916:[,1]},27392:{92976:[,230],92977:[,230],92978:[,230],92979:[,230],92980:[,230],92981:[,230],92982:[,230]},42496:{42607:[,230],42612:[,230],42613:[,230],42614:[,230],42615:[,230],42616:[,230],42617:[,230],42618:[,230],42619:[,230],42620:[,230],42621:[,230],42652:[[1098],256],42653:[[1100],256],42655:[,230],42736:[,230],42737:[,230]},42752:{42864:[[42863],256],43e3:[[294],256],43001:[[339],256]},43008:{43014:[,9],43204:[,9],43232:[,230],43233:[,230],43234:[,230],43235:[,230],43236:[,230],43237:[,230],43238:[,230],43239:[,230],43240:[,230],43241:[,230],43242:[,230],43243:[,230],43244:[,230],43245:[,230],43246:[,230],43247:[,230],43248:[,230],43249:[,230]},43264:{43307:[,220],43308:[,220],43309:[,220],43347:[,9],43443:[,7],43456:[,9]},43520:{43696:[,230],43698:[,230],43699:[,230],43700:[,220],43703:[,230],43704:[,230],43710:[,230],43711:[,230],43713:[,230],43766:[,9]},43776:{43868:[[42791],256],43869:[[43831],256],43870:[[619],256],43871:[[43858],256],44013:[,9]},48128:{113822:[,1]},53504:{119134:[[119127,119141],512],119135:[[119128,119141],512],119136:[[119135,119150],512],119137:[[119135,119151],512],119138:[[119135,119152],512],119139:[[119135,119153],512],119140:[[119135,119154],512],119141:[,216],119142:[,216],119143:[,1],119144:[,1],119145:[,1],119149:[,226],119150:[,216],119151:[,216],119152:[,216],119153:[,216],119154:[,216],119163:[,220],119164:[,220],119165:[,220],119166:[,220],119167:[,220],119168:[,220],119169:[,220],119170:[,220],119173:[,230],119174:[,230],119175:[,230],119176:[,230],119177:[,230],119178:[,220],119179:[,220],119210:[,230],119211:[,230],119212:[,230],119213:[,230],119227:[[119225,119141],512],119228:[[119226,119141],512],119229:[[119227,119150],512],119230:[[119228,119150],512],119231:[[119227,119151],512],119232:[[119228,119151],512]},53760:{119362:[,230],119363:[,230],119364:[,230]},54272:{119808:[[65],256],119809:[[66],256],119810:[[67],256],119811:[[68],256],119812:[[69],256],119813:[[70],256],119814:[[71],256],119815:[[72],256],119816:[[73],256],119817:[[74],256],119818:[[75],256],119819:[[76],256],119820:[[77],256],119821:[[78],256],119822:[[79],256],119823:[[80],256],119824:[[81],256],119825:[[82],256],119826:[[83],256],119827:[[84],256],119828:[[85],256],119829:[[86],256],119830:[[87],256],119831:[[88],256],119832:[[89],256],119833:[[90],256],119834:[[97],256],119835:[[98],256],119836:[[99],256],119837:[[100],256],119838:[[101],256],119839:[[102],256],119840:[[103],256],119841:[[104],256],119842:[[105],256],119843:[[106],256],119844:[[107],256],119845:[[108],256],119846:[[109],256],119847:[[110],256],119848:[[111],256],119849:[[112],256],119850:[[113],256],119851:[[114],256],119852:[[115],256],119853:[[116],256],119854:[[117],256],119855:[[118],256],119856:[[119],256],119857:[[120],256],119858:[[121],256],119859:[[122],256],119860:[[65],256],119861:[[66],256],119862:[[67],256],119863:[[68],256],119864:[[69],256],119865:[[70],256],119866:[[71],256],119867:[[72],256],119868:[[73],256],119869:[[74],256],119870:[[75],256],119871:[[76],256],119872:[[77],256],119873:[[78],256],119874:[[79],256],119875:[[80],256],119876:[[81],256],119877:[[82],256],119878:[[83],256],119879:[[84],256],119880:[[85],256],119881:[[86],256],119882:[[87],256],119883:[[88],256],119884:[[89],256],119885:[[90],256],119886:[[97],256],119887:[[98],256],119888:[[99],256],119889:[[100],256],119890:[[101],256],119891:[[102],256],119892:[[103],256],119894:[[105],256],119895:[[106],256],119896:[[107],256],119897:[[108],256],119898:[[109],256],119899:[[110],256],119900:[[111],256],119901:[[112],256],119902:[[113],256],119903:[[114],256],119904:[[115],256],119905:[[116],256],119906:[[117],256],119907:[[118],256],119908:[[119],256],119909:[[120],256],119910:[[121],256],119911:[[122],256],119912:[[65],256],119913:[[66],256],119914:[[67],256],119915:[[68],256],119916:[[69],256],119917:[[70],256],119918:[[71],256],119919:[[72],256],119920:[[73],256],119921:[[74],256],119922:[[75],256],119923:[[76],256],119924:[[77],256],119925:[[78],256],119926:[[79],256],119927:[[80],256],119928:[[81],256],119929:[[82],256],119930:[[83],256],119931:[[84],256],119932:[[85],256],119933:[[86],256],119934:[[87],256],119935:[[88],256],119936:[[89],256],119937:[[90],256],119938:[[97],256],119939:[[98],256],119940:[[99],256],119941:[[100],256],119942:[[101],256],119943:[[102],256],119944:[[103],256],119945:[[104],256],119946:[[105],256],119947:[[106],256],119948:[[107],256],119949:[[108],256],119950:[[109],256],119951:[[110],256],119952:[[111],256],119953:[[112],256],119954:[[113],256],119955:[[114],256],119956:[[115],256],119957:[[116],256],119958:[[117],256],119959:[[118],256],119960:[[119],256],119961:[[120],256],119962:[[121],256],119963:[[122],256],119964:[[65],256],119966:[[67],256],119967:[[68],256],119970:[[71],256],119973:[[74],256],119974:[[75],256],119977:[[78],256],119978:[[79],256],119979:[[80],256],119980:[[81],256],119982:[[83],256],119983:[[84],256],119984:[[85],256],119985:[[86],256],119986:[[87],256],119987:[[88],256],119988:[[89],256],119989:[[90],256],119990:[[97],256],119991:[[98],256],119992:[[99],256],119993:[[100],256],119995:[[102],256],119997:[[104],256],119998:[[105],256],119999:[[106],256],12e4:[[107],256],120001:[[108],256],120002:[[109],256],120003:[[110],256],120005:[[112],256],120006:[[113],256],120007:[[114],256],120008:[[115],256],120009:[[116],256],120010:[[117],256],120011:[[118],256],120012:[[119],256],120013:[[120],256],120014:[[121],256],120015:[[122],256],120016:[[65],256],120017:[[66],256],120018:[[67],256],120019:[[68],256],120020:[[69],256],120021:[[70],256],120022:[[71],256],120023:[[72],256],120024:[[73],256],120025:[[74],256],120026:[[75],256],120027:[[76],256],120028:[[77],256],120029:[[78],256],120030:[[79],256],120031:[[80],256],120032:[[81],256],120033:[[82],256],120034:[[83],256],120035:[[84],256],120036:[[85],256],120037:[[86],256],120038:[[87],256],120039:[[88],256],120040:[[89],256],120041:[[90],256],120042:[[97],256],120043:[[98],256],120044:[[99],256],120045:[[100],256],120046:[[101],256],120047:[[102],256],120048:[[103],256],120049:[[104],256],120050:[[105],256],120051:[[106],256],120052:[[107],256],120053:[[108],256],120054:[[109],256],120055:[[110],256],120056:[[111],256],120057:[[112],256],120058:[[113],256],120059:[[114],256],120060:[[115],256],120061:[[116],256],120062:[[117],256],120063:[[118],256]},54528:{120064:[[119],256],120065:[[120],256],120066:[[121],256],120067:[[122],256],120068:[[65],256],120069:[[66],256],120071:[[68],256],120072:[[69],256],120073:[[70],256],120074:[[71],256],120077:[[74],256],120078:[[75],256],120079:[[76],256],120080:[[77],256],120081:[[78],256],120082:[[79],256],120083:[[80],256],120084:[[81],256],120086:[[83],256],120087:[[84],256],120088:[[85],256],120089:[[86],256],120090:[[87],256],120091:[[88],256],120092:[[89],256],120094:[[97],256],120095:[[98],256],120096:[[99],256],120097:[[100],256],120098:[[101],256],120099:[[102],256],120100:[[103],256],120101:[[104],256],120102:[[105],256],120103:[[106],256],120104:[[107],256],120105:[[108],256],120106:[[109],256],120107:[[110],256],120108:[[111],256],120109:[[112],256],120110:[[113],256],120111:[[114],256],120112:[[115],256],120113:[[116],256],120114:[[117],256],120115:[[118],256],120116:[[119],256],120117:[[120],256],120118:[[121],256],120119:[[122],256],120120:[[65],256],120121:[[66],256],120123:[[68],256],120124:[[69],256],120125:[[70],256],120126:[[71],256],120128:[[73],256],120129:[[74],256],120130:[[75],256],120131:[[76],256],120132:[[77],256],120134:[[79],256],120138:[[83],256],120139:[[84],256],120140:[[85],256],120141:[[86],256],120142:[[87],256],120143:[[88],256],120144:[[89],256],120146:[[97],256],120147:[[98],256],120148:[[99],256],120149:[[100],256],120150:[[101],256],120151:[[102],256],120152:[[103],256],120153:[[104],256],120154:[[105],256],120155:[[106],256],120156:[[107],256],120157:[[108],256],120158:[[109],256],120159:[[110],256],120160:[[111],256],120161:[[112],256],120162:[[113],256],120163:[[114],256],120164:[[115],256],120165:[[116],256],120166:[[117],256],120167:[[118],256],120168:[[119],256],120169:[[120],256],120170:[[121],256],120171:[[122],256],120172:[[65],256],120173:[[66],256],120174:[[67],256],120175:[[68],256],120176:[[69],256],120177:[[70],256],120178:[[71],256],120179:[[72],256],120180:[[73],256],120181:[[74],256],120182:[[75],256],120183:[[76],256],120184:[[77],256],120185:[[78],256],120186:[[79],256],120187:[[80],256],120188:[[81],256],120189:[[82],256],120190:[[83],256],120191:[[84],256],120192:[[85],256],120193:[[86],256],120194:[[87],256],120195:[[88],256],120196:[[89],256],120197:[[90],256],120198:[[97],256],120199:[[98],256],120200:[[99],256],120201:[[100],256],120202:[[101],256],120203:[[102],256],120204:[[103],256],120205:[[104],256],120206:[[105],256],120207:[[106],256],120208:[[107],256],120209:[[108],256],120210:[[109],256],120211:[[110],256],120212:[[111],256],120213:[[112],256],120214:[[113],256],120215:[[114],256],120216:[[115],256],120217:[[116],256],120218:[[117],256],120219:[[118],256],120220:[[119],256],120221:[[120],256],120222:[[121],256],120223:[[122],256],120224:[[65],256],120225:[[66],256],120226:[[67],256],120227:[[68],256],120228:[[69],256],120229:[[70],256],120230:[[71],256],120231:[[72],256],120232:[[73],256],120233:[[74],256],120234:[[75],256],120235:[[76],256],120236:[[77],256],120237:[[78],256],120238:[[79],256],120239:[[80],256],120240:[[81],256],120241:[[82],256],120242:[[83],256],120243:[[84],256],120244:[[85],256],120245:[[86],256],120246:[[87],256],120247:[[88],256],120248:[[89],256],120249:[[90],256],120250:[[97],256],120251:[[98],256],120252:[[99],256],120253:[[100],256],120254:[[101],256],120255:[[102],256],120256:[[103],256],120257:[[104],256],120258:[[105],256],120259:[[106],256],120260:[[107],256],120261:[[108],256],120262:[[109],256],120263:[[110],256],120264:[[111],256],120265:[[112],256],120266:[[113],256],120267:[[114],256],120268:[[115],256],120269:[[116],256],120270:[[117],256],120271:[[118],256],120272:[[119],256],120273:[[120],256],120274:[[121],256],120275:[[122],256],120276:[[65],256],120277:[[66],256],120278:[[67],256],120279:[[68],256],120280:[[69],256],120281:[[70],256],120282:[[71],256],120283:[[72],256],120284:[[73],256],120285:[[74],256],120286:[[75],256],120287:[[76],256],120288:[[77],256],120289:[[78],256],120290:[[79],256],120291:[[80],256],120292:[[81],256],120293:[[82],256],120294:[[83],256],120295:[[84],256],120296:[[85],256],120297:[[86],256],120298:[[87],256],120299:[[88],256],120300:[[89],256],120301:[[90],256],120302:[[97],256],120303:[[98],256],120304:[[99],256],120305:[[100],256],120306:[[101],256],120307:[[102],256],120308:[[103],256],120309:[[104],256],120310:[[105],256],120311:[[106],256],120312:[[107],256],120313:[[108],256],120314:[[109],256],120315:[[110],256],120316:[[111],256],120317:[[112],256],120318:[[113],256],120319:[[114],256]},54784:{120320:[[115],256],120321:[[116],256],120322:[[117],256],120323:[[118],256],120324:[[119],256],120325:[[120],256],120326:[[121],256],120327:[[122],256],120328:[[65],256],120329:[[66],256],120330:[[67],256],120331:[[68],256],120332:[[69],256],120333:[[70],256],120334:[[71],256],120335:[[72],256],120336:[[73],256],120337:[[74],256],120338:[[75],256],120339:[[76],256],120340:[[77],256],120341:[[78],256],120342:[[79],256],120343:[[80],256],120344:[[81],256],120345:[[82],256],120346:[[83],256],120347:[[84],256],120348:[[85],256],120349:[[86],256],120350:[[87],256],120351:[[88],256],120352:[[89],256],120353:[[90],256],120354:[[97],256],120355:[[98],256],120356:[[99],256],120357:[[100],256],120358:[[101],256],120359:[[102],256],120360:[[103],256],120361:[[104],256],120362:[[105],256],120363:[[106],256],120364:[[107],256],120365:[[108],256],120366:[[109],256],120367:[[110],256],120368:[[111],256],120369:[[112],256],120370:[[113],256],120371:[[114],256],120372:[[115],256],120373:[[116],256],120374:[[117],256],120375:[[118],256],120376:[[119],256],120377:[[120],256],120378:[[121],256],120379:[[122],256],120380:[[65],256],120381:[[66],256],120382:[[67],256],120383:[[68],256],120384:[[69],256],120385:[[70],256],120386:[[71],256],120387:[[72],256],120388:[[73],256],120389:[[74],256],120390:[[75],256],120391:[[76],256],120392:[[77],256],120393:[[78],256],120394:[[79],256],120395:[[80],256],120396:[[81],256],120397:[[82],256],120398:[[83],256],120399:[[84],256],120400:[[85],256],120401:[[86],256],120402:[[87],256],120403:[[88],256],120404:[[89],256],120405:[[90],256],120406:[[97],256],120407:[[98],256],120408:[[99],256],120409:[[100],256],120410:[[101],256],120411:[[102],256],120412:[[103],256],120413:[[104],256],120414:[[105],256],120415:[[106],256],120416:[[107],256],120417:[[108],256],120418:[[109],256],120419:[[110],256],120420:[[111],256],120421:[[112],256],120422:[[113],256],120423:[[114],256],120424:[[115],256],120425:[[116],256],120426:[[117],256],120427:[[118],256],120428:[[119],256],120429:[[120],256],120430:[[121],256],120431:[[122],256],120432:[[65],256],120433:[[66],256],120434:[[67],256],120435:[[68],256],120436:[[69],256],120437:[[70],256],120438:[[71],256],120439:[[72],256],120440:[[73],256],120441:[[74],256],120442:[[75],256],120443:[[76],256],120444:[[77],256],120445:[[78],256],120446:[[79],256],120447:[[80],256],120448:[[81],256],120449:[[82],256],120450:[[83],256],120451:[[84],256],120452:[[85],256],120453:[[86],256],120454:[[87],256],120455:[[88],256],120456:[[89],256],120457:[[90],256],120458:[[97],256],120459:[[98],256],120460:[[99],256],120461:[[100],256],120462:[[101],256],120463:[[102],256],120464:[[103],256],120465:[[104],256],120466:[[105],256],120467:[[106],256],120468:[[107],256],120469:[[108],256],120470:[[109],256],120471:[[110],256],120472:[[111],256],120473:[[112],256],120474:[[113],256],120475:[[114],256],120476:[[115],256],120477:[[116],256],120478:[[117],256],120479:[[118],256],120480:[[119],256],120481:[[120],256],120482:[[121],256],120483:[[122],256],120484:[[305],256],120485:[[567],256],120488:[[913],256],120489:[[914],256],120490:[[915],256],120491:[[916],256],120492:[[917],256],120493:[[918],256],120494:[[919],256],120495:[[920],256],120496:[[921],256],120497:[[922],256],120498:[[923],256],120499:[[924],256],120500:[[925],256],120501:[[926],256],120502:[[927],256],120503:[[928],256],120504:[[929],256],120505:[[1012],256],120506:[[931],256],120507:[[932],256],120508:[[933],256],120509:[[934],256],120510:[[935],256],120511:[[936],256],120512:[[937],256],120513:[[8711],256],120514:[[945],256],120515:[[946],256],120516:[[947],256],120517:[[948],256],120518:[[949],256],120519:[[950],256],120520:[[951],256],120521:[[952],256],120522:[[953],256],120523:[[954],256],120524:[[955],256],120525:[[956],256],120526:[[957],256],120527:[[958],256],120528:[[959],256],120529:[[960],256],120530:[[961],256],120531:[[962],256],120532:[[963],256],120533:[[964],256],120534:[[965],256],120535:[[966],256],120536:[[967],256],120537:[[968],256],120538:[[969],256],120539:[[8706],256],120540:[[1013],256],120541:[[977],256],120542:[[1008],256],120543:[[981],256],120544:[[1009],256],120545:[[982],256],120546:[[913],256],120547:[[914],256],120548:[[915],256],120549:[[916],256],120550:[[917],256],120551:[[918],256],120552:[[919],256],120553:[[920],256],120554:[[921],256],120555:[[922],256],120556:[[923],256],120557:[[924],256],120558:[[925],256],120559:[[926],256],120560:[[927],256],120561:[[928],256],120562:[[929],256],120563:[[1012],256],120564:[[931],256],120565:[[932],256],120566:[[933],256],120567:[[934],256],120568:[[935],256],120569:[[936],256],120570:[[937],256],120571:[[8711],256],120572:[[945],256],120573:[[946],256],120574:[[947],256],120575:[[948],256]},55040:{120576:[[949],256],120577:[[950],256],120578:[[951],256],120579:[[952],256],120580:[[953],256],120581:[[954],256],120582:[[955],256],120583:[[956],256],120584:[[957],256],120585:[[958],256],120586:[[959],256],120587:[[960],256],120588:[[961],256],120589:[[962],256],120590:[[963],256],120591:[[964],256],120592:[[965],256],120593:[[966],256],120594:[[967],256],120595:[[968],256],120596:[[969],256],120597:[[8706],256],120598:[[1013],256],120599:[[977],256],120600:[[1008],256],120601:[[981],256],120602:[[1009],256],120603:[[982],256],120604:[[913],256],120605:[[914],256],120606:[[915],256],120607:[[916],256],120608:[[917],256],120609:[[918],256],120610:[[919],256],120611:[[920],256],120612:[[921],256],120613:[[922],256],120614:[[923],256],120615:[[924],256],120616:[[925],256],120617:[[926],256],120618:[[927],256],120619:[[928],256],120620:[[929],256],120621:[[1012],256],120622:[[931],256],120623:[[932],256],120624:[[933],256],120625:[[934],256],120626:[[935],256],120627:[[936],256],120628:[[937],256],120629:[[8711],256],120630:[[945],256],120631:[[946],256],120632:[[947],256],120633:[[948],256],120634:[[949],256],120635:[[950],256],120636:[[951],256],120637:[[952],256],120638:[[953],256],120639:[[954],256],120640:[[955],256],120641:[[956],256],120642:[[957],256],120643:[[958],256],120644:[[959],256],120645:[[960],256],120646:[[961],256],120647:[[962],256],120648:[[963],256],120649:[[964],256],120650:[[965],256],120651:[[966],256],120652:[[967],256],120653:[[968],256],120654:[[969],256],120655:[[8706],256],120656:[[1013],256],120657:[[977],256],120658:[[1008],256],120659:[[981],256],120660:[[1009],256],120661:[[982],256],120662:[[913],256],120663:[[914],256],120664:[[915],256],120665:[[916],256],120666:[[917],256],120667:[[918],256],120668:[[919],256],120669:[[920],256],120670:[[921],256],120671:[[922],256],120672:[[923],256],120673:[[924],256],120674:[[925],256],120675:[[926],256],120676:[[927],256],120677:[[928],256],120678:[[929],256],120679:[[1012],256],120680:[[931],256],120681:[[932],256],120682:[[933],256],120683:[[934],256],120684:[[935],256],120685:[[936],256],120686:[[937],256],120687:[[8711],256],120688:[[945],256],120689:[[946],256],120690:[[947],256],120691:[[948],256],120692:[[949],256],120693:[[950],256],120694:[[951],256],120695:[[952],256],120696:[[953],256],120697:[[954],256],120698:[[955],256],120699:[[956],256],120700:[[957],256],120701:[[958],256],120702:[[959],256],120703:[[960],256],120704:[[961],256],120705:[[962],256],120706:[[963],256],120707:[[964],256],120708:[[965],256],120709:[[966],256],120710:[[967],256],120711:[[968],256],120712:[[969],256],120713:[[8706],256],120714:[[1013],256],120715:[[977],256],120716:[[1008],256],120717:[[981],256],120718:[[1009],256],120719:[[982],256],120720:[[913],256],120721:[[914],256],120722:[[915],256],120723:[[916],256],120724:[[917],256],120725:[[918],256],120726:[[919],256],120727:[[920],256],120728:[[921],256],120729:[[922],256],120730:[[923],256],120731:[[924],256],120732:[[925],256],120733:[[926],256],120734:[[927],256],120735:[[928],256],120736:[[929],256],120737:[[1012],256],120738:[[931],256],120739:[[932],256],120740:[[933],256],120741:[[934],256],120742:[[935],256],120743:[[936],256],120744:[[937],256],120745:[[8711],256],120746:[[945],256],120747:[[946],256],120748:[[947],256],120749:[[948],256],120750:[[949],256],120751:[[950],256],120752:[[951],256],120753:[[952],256],120754:[[953],256],120755:[[954],256],120756:[[955],256],120757:[[956],256],120758:[[957],256],120759:[[958],256],120760:[[959],256],120761:[[960],256],120762:[[961],256],120763:[[962],256],120764:[[963],256],120765:[[964],256],120766:[[965],256],120767:[[966],256],120768:[[967],256],120769:[[968],256],120770:[[969],256],120771:[[8706],256],120772:[[1013],256],120773:[[977],256],120774:[[1008],256],120775:[[981],256],120776:[[1009],256],120777:[[982],256],120778:[[988],256],120779:[[989],256],120782:[[48],256],120783:[[49],256],120784:[[50],256],120785:[[51],256],120786:[[52],256],120787:[[53],256],120788:[[54],256],120789:[[55],256],120790:[[56],256],120791:[[57],256],120792:[[48],256],120793:[[49],256],120794:[[50],256],120795:[[51],256],120796:[[52],256],120797:[[53],256],120798:[[54],256],120799:[[55],256],120800:[[56],256],120801:[[57],256],120802:[[48],256],120803:[[49],256],120804:[[50],256],120805:[[51],256],120806:[[52],256],120807:[[53],256],120808:[[54],256],120809:[[55],256],120810:[[56],256],120811:[[57],256],120812:[[48],256],120813:[[49],256],120814:[[50],256],120815:[[51],256],120816:[[52],256],120817:[[53],256],120818:[[54],256],120819:[[55],256],120820:[[56],256],120821:[[57],256],120822:[[48],256],120823:[[49],256],120824:[[50],256],120825:[[51],256],120826:[[52],256],120827:[[53],256],120828:[[54],256],120829:[[55],256],120830:[[56],256],120831:[[57],256]},59392:{125136:[,220],125137:[,220],125138:[,220],125139:[,220],125140:[,220],125141:[,220],125142:[,220]},60928:{126464:[[1575],256],126465:[[1576],256],126466:[[1580],256],126467:[[1583],256],126469:[[1608],256],126470:[[1586],256],126471:[[1581],256],126472:[[1591],256],126473:[[1610],256],126474:[[1603],256],126475:[[1604],256],126476:[[1605],256],126477:[[1606],256],126478:[[1587],256],126479:[[1593],256],126480:[[1601],256],126481:[[1589],256],126482:[[1602],256],126483:[[1585],256],126484:[[1588],256],126485:[[1578],256],126486:[[1579],256],126487:[[1582],256],126488:[[1584],256],126489:[[1590],256],126490:[[1592],256],126491:[[1594],256],126492:[[1646],256],126493:[[1722],256],126494:[[1697],256],126495:[[1647],256],126497:[[1576],256],126498:[[1580],256],126500:[[1607],256],126503:[[1581],256],126505:[[1610],256],126506:[[1603],256],126507:[[1604],256],126508:[[1605],256],126509:[[1606],256],126510:[[1587],256],126511:[[1593],256],126512:[[1601],256],126513:[[1589],256],126514:[[1602],256],126516:[[1588],256],126517:[[1578],256],126518:[[1579],256],126519:[[1582],256],126521:[[1590],256],126523:[[1594],256],126530:[[1580],256],126535:[[1581],256],126537:[[1610],256],126539:[[1604],256],126541:[[1606],256],126542:[[1587],256],126543:[[1593],256],126545:[[1589],256],126546:[[1602],256],126548:[[1588],256],126551:[[1582],256],126553:[[1590],256],126555:[[1594],256],126557:[[1722],256],126559:[[1647],256],126561:[[1576],256],126562:[[1580],256],126564:[[1607],256],126567:[[1581],256],126568:[[1591],256],126569:[[1610],256],126570:[[1603],256],126572:[[1605],256],126573:[[1606],256],126574:[[1587],256],126575:[[1593],256],126576:[[1601],256],126577:[[1589],256],126578:[[1602],256],126580:[[1588],256],126581:[[1578],256],126582:[[1579],256],126583:[[1582],256],126585:[[1590],256],126586:[[1592],256],126587:[[1594],256],126588:[[1646],256],126590:[[1697],256],126592:[[1575],256],126593:[[1576],256],126594:[[1580],256],126595:[[1583],256],126596:[[1607],256],126597:[[1608],256],126598:[[1586],256],126599:[[1581],256],126600:[[1591],256],126601:[[1610],256],126603:[[1604],256],126604:[[1605],256],126605:[[1606],256],126606:[[1587],256],126607:[[1593],256],126608:[[1601],256],126609:[[1589],256],126610:[[1602],256],126611:[[1585],256],126612:[[1588],256],126613:[[1578],256],126614:[[1579],256],126615:[[1582],256],126616:[[1584],256],126617:[[1590],256],126618:[[1592],256],126619:[[1594],256],126625:[[1576],256],126626:[[1580],256],126627:[[1583],256],126629:[[1608],256],126630:[[1586],256],126631:[[1581],256],126632:[[1591],256],126633:[[1610],256],126635:[[1604],256],126636:[[1605],256],126637:[[1606],256],126638:[[1587],256],126639:[[1593],256],126640:[[1601],256],126641:[[1589],256],126642:[[1602],256],126643:[[1585],256],126644:[[1588],256],126645:[[1578],256],126646:[[1579],256],126647:[[1582],256],126648:[[1584],256],126649:[[1590],256],126650:[[1592],256],126651:[[1594],256]},61696:{127232:[[48,46],256],127233:[[48,44],256],127234:[[49,44],256],127235:[[50,44],256],127236:[[51,44],256],127237:[[52,44],256],127238:[[53,44],256],127239:[[54,44],256],127240:[[55,44],256],127241:[[56,44],256],127242:[[57,44],256],127248:[[40,65,41],256],127249:[[40,66,41],256],127250:[[40,67,41],256],127251:[[40,68,41],256],127252:[[40,69,41],256],127253:[[40,70,41],256],127254:[[40,71,41],256],127255:[[40,72,41],256],127256:[[40,73,41],256],127257:[[40,74,41],256],127258:[[40,75,41],256],127259:[[40,76,41],256],127260:[[40,77,41],256],127261:[[40,78,41],256],127262:[[40,79,41],256],127263:[[40,80,41],256],127264:[[40,81,41],256],127265:[[40,82,41],256],127266:[[40,83,41],256],127267:[[40,84,41],256],127268:[[40,85,41],256],127269:[[40,86,41],256],127270:[[40,87,41],256],127271:[[40,88,41],256],127272:[[40,89,41],256],127273:[[40,90,41],256],127274:[[12308,83,12309],256],127275:[[67],256],127276:[[82],256],127277:[[67,68],256],127278:[[87,90],256],127280:[[65],256],127281:[[66],256],127282:[[67],256],127283:[[68],256],127284:[[69],256],127285:[[70],256],127286:[[71],256],127287:[[72],256],127288:[[73],256],127289:[[74],256],127290:[[75],256],127291:[[76],256],127292:[[77],256],127293:[[78],256],127294:[[79],256],127295:[[80],256],127296:[[81],256],127297:[[82],256],127298:[[83],256],127299:[[84],256],127300:[[85],256],127301:[[86],256],127302:[[87],256],127303:[[88],256],127304:[[89],256],127305:[[90],256],127306:[[72,86],256],127307:[[77,86],256],127308:[[83,68],256],127309:[[83,83],256],127310:[[80,80,86],256],127311:[[87,67],256],127338:[[77,67],256],127339:[[77,68],256],127376:[[68,74],256]},61952:{127488:[[12411,12363],256],127489:[[12467,12467],256],127490:[[12469],256],127504:[[25163],256],127505:[[23383],256],127506:[[21452],256],127507:[[12487],256],127508:[[20108],256],127509:[[22810],256],127510:[[35299],256],127511:[[22825],256],127512:[[20132],256],127513:[[26144],256],127514:[[28961],256],127515:[[26009],256],127516:[[21069],256],127517:[[24460],256],127518:[[20877],256],127519:[[26032],256],127520:[[21021],256],127521:[[32066],256],127522:[[29983],256],127523:[[36009],256],127524:[[22768],256],127525:[[21561],256],127526:[[28436],256],127527:[[25237],256],127528:[[25429],256],127529:[[19968],256],127530:[[19977],256],127531:[[36938],256],127532:[[24038],256],127533:[[20013],256],127534:[[21491],256],127535:[[25351],256],127536:[[36208],256],127537:[[25171],256],127538:[[31105],256],127539:[[31354],256],127540:[[21512],256],127541:[[28288],256],127542:[[26377],256],127543:[[26376],256],127544:[[30003],256],127545:[[21106],256],127546:[[21942],256],127552:[[12308,26412,12309],256],127553:[[12308,19977,12309],256],127554:[[12308,20108,12309],256],127555:[[12308,23433,12309],256],127556:[[12308,28857,12309],256],127557:[[12308,25171,12309],256],127558:[[12308,30423,12309],256],127559:[[12308,21213,12309],256],127560:[[12308,25943,12309],256],127568:[[24471],256],127569:[[21487],256]},63488:{194560:[[20029]],194561:[[20024]],194562:[[20033]],194563:[[131362]],194564:[[20320]],194565:[[20398]],194566:[[20411]],194567:[[20482]],194568:[[20602]],194569:[[20633]],194570:[[20711]],194571:[[20687]],194572:[[13470]],194573:[[132666]],194574:[[20813]],194575:[[20820]],194576:[[20836]],194577:[[20855]],194578:[[132380]],194579:[[13497]],194580:[[20839]],194581:[[20877]],194582:[[132427]],194583:[[20887]],194584:[[20900]],194585:[[20172]],194586:[[20908]],194587:[[20917]],194588:[[168415]],194589:[[20981]],194590:[[20995]],194591:[[13535]],194592:[[21051]],194593:[[21062]],194594:[[21106]],194595:[[21111]],194596:[[13589]],194597:[[21191]],194598:[[21193]],194599:[[21220]],194600:[[21242]],194601:[[21253]],194602:[[21254]],194603:[[21271]],194604:[[21321]],194605:[[21329]],194606:[[21338]],194607:[[21363]],194608:[[21373]],194609:[[21375]],194610:[[21375]],194611:[[21375]],194612:[[133676]],194613:[[28784]],194614:[[21450]],194615:[[21471]],194616:[[133987]],194617:[[21483]],194618:[[21489]],194619:[[21510]],194620:[[21662]],194621:[[21560]],194622:[[21576]],194623:[[21608]],194624:[[21666]],194625:[[21750]],194626:[[21776]],194627:[[21843]],194628:[[21859]],194629:[[21892]],194630:[[21892]],194631:[[21913]],194632:[[21931]],194633:[[21939]],194634:[[21954]],194635:[[22294]],194636:[[22022]],194637:[[22295]],194638:[[22097]],194639:[[22132]],194640:[[20999]],194641:[[22766]],194642:[[22478]],194643:[[22516]],194644:[[22541]],194645:[[22411]],194646:[[22578]],194647:[[22577]],194648:[[22700]],194649:[[136420]],194650:[[22770]],194651:[[22775]],194652:[[22790]],194653:[[22810]],194654:[[22818]],194655:[[22882]],194656:[[136872]],194657:[[136938]],194658:[[23020]],194659:[[23067]],194660:[[23079]],194661:[[23e3]],194662:[[23142]],194663:[[14062]],194664:[[14076]],194665:[[23304]],194666:[[23358]],194667:[[23358]],194668:[[137672]],194669:[[23491]],194670:[[23512]],194671:[[23527]],194672:[[23539]],194673:[[138008]],194674:[[23551]],194675:[[23558]],194676:[[24403]],194677:[[23586]],194678:[[14209]],194679:[[23648]],194680:[[23662]],194681:[[23744]],194682:[[23693]],194683:[[138724]],194684:[[23875]],194685:[[138726]],194686:[[23918]],194687:[[23915]],194688:[[23932]],194689:[[24033]],194690:[[24034]],194691:[[14383]],194692:[[24061]],194693:[[24104]],194694:[[24125]],194695:[[24169]],194696:[[14434]],194697:[[139651]],194698:[[14460]],194699:[[24240]],194700:[[24243]],194701:[[24246]],194702:[[24266]],194703:[[172946]],194704:[[24318]],194705:[[140081]],194706:[[140081]],194707:[[33281]],194708:[[24354]],194709:[[24354]],194710:[[14535]],194711:[[144056]],194712:[[156122]],194713:[[24418]],194714:[[24427]],194715:[[14563]],194716:[[24474]],194717:[[24525]],194718:[[24535]],194719:[[24569]],194720:[[24705]],194721:[[14650]],194722:[[14620]],194723:[[24724]],194724:[[141012]],194725:[[24775]],194726:[[24904]],194727:[[24908]],194728:[[24910]],194729:[[24908]],194730:[[24954]],194731:[[24974]],194732:[[25010]],194733:[[24996]],194734:[[25007]],194735:[[25054]],194736:[[25074]],194737:[[25078]],194738:[[25104]],194739:[[25115]],194740:[[25181]],194741:[[25265]],194742:[[25300]],194743:[[25424]],194744:[[142092]],194745:[[25405]],194746:[[25340]],194747:[[25448]],194748:[[25475]],194749:[[25572]],194750:[[142321]],194751:[[25634]],194752:[[25541]],194753:[[25513]],194754:[[14894]],194755:[[25705]],194756:[[25726]],194757:[[25757]],194758:[[25719]],194759:[[14956]],194760:[[25935]],194761:[[25964]],194762:[[143370]],194763:[[26083]],194764:[[26360]],194765:[[26185]],194766:[[15129]],194767:[[26257]],194768:[[15112]],194769:[[15076]],194770:[[20882]],194771:[[20885]],194772:[[26368]],194773:[[26268]],194774:[[32941]],194775:[[17369]],194776:[[26391]],194777:[[26395]],194778:[[26401]],194779:[[26462]],194780:[[26451]],194781:[[144323]],194782:[[15177]],194783:[[26618]],194784:[[26501]],194785:[[26706]],194786:[[26757]],194787:[[144493]],194788:[[26766]],194789:[[26655]],194790:[[26900]],194791:[[15261]],194792:[[26946]],194793:[[27043]],194794:[[27114]],194795:[[27304]],194796:[[145059]],194797:[[27355]],194798:[[15384]],194799:[[27425]],194800:[[145575]],194801:[[27476]],194802:[[15438]],194803:[[27506]],194804:[[27551]],194805:[[27578]],194806:[[27579]],194807:[[146061]],194808:[[138507]],194809:[[146170]],194810:[[27726]],194811:[[146620]],194812:[[27839]],194813:[[27853]],194814:[[27751]],194815:[[27926]]},63744:{63744:[[35912]],63745:[[26356]],63746:[[36554]],63747:[[36040]],63748:[[28369]],63749:[[20018]],63750:[[21477]],63751:[[40860]],63752:[[40860]],63753:[[22865]],63754:[[37329]],63755:[[21895]],63756:[[22856]],63757:[[25078]],63758:[[30313]],63759:[[32645]],63760:[[34367]],63761:[[34746]],63762:[[35064]],63763:[[37007]],63764:[[27138]],63765:[[27931]],63766:[[28889]],63767:[[29662]],63768:[[33853]],63769:[[37226]],63770:[[39409]],63771:[[20098]],63772:[[21365]],63773:[[27396]],63774:[[29211]],63775:[[34349]],63776:[[40478]],63777:[[23888]],63778:[[28651]],63779:[[34253]],63780:[[35172]],63781:[[25289]],63782:[[33240]],63783:[[34847]],63784:[[24266]],63785:[[26391]],63786:[[28010]],63787:[[29436]],63788:[[37070]],63789:[[20358]],63790:[[20919]],63791:[[21214]],63792:[[25796]],63793:[[27347]],63794:[[29200]],63795:[[30439]],63796:[[32769]],63797:[[34310]],63798:[[34396]],63799:[[36335]],63800:[[38706]],63801:[[39791]],63802:[[40442]],63803:[[30860]],63804:[[31103]],63805:[[32160]],63806:[[33737]],63807:[[37636]],63808:[[40575]],63809:[[35542]],63810:[[22751]],63811:[[24324]],63812:[[31840]],63813:[[32894]],63814:[[29282]],63815:[[30922]],63816:[[36034]],63817:[[38647]],63818:[[22744]],63819:[[23650]],63820:[[27155]],63821:[[28122]],63822:[[28431]],63823:[[32047]],63824:[[32311]],63825:[[38475]],63826:[[21202]],63827:[[32907]],63828:[[20956]],63829:[[20940]],63830:[[31260]],63831:[[32190]],63832:[[33777]],63833:[[38517]],63834:[[35712]],63835:[[25295]],63836:[[27138]],63837:[[35582]],63838:[[20025]],63839:[[23527]],63840:[[24594]],63841:[[29575]],63842:[[30064]],63843:[[21271]],63844:[[30971]],63845:[[20415]],63846:[[24489]],63847:[[19981]],63848:[[27852]],63849:[[25976]],63850:[[32034]],63851:[[21443]],63852:[[22622]],63853:[[30465]],63854:[[33865]],63855:[[35498]],63856:[[27578]],63857:[[36784]],63858:[[27784]],63859:[[25342]],63860:[[33509]],63861:[[25504]],63862:[[30053]],63863:[[20142]],63864:[[20841]],63865:[[20937]],63866:[[26753]],63867:[[31975]],63868:[[33391]],63869:[[35538]],63870:[[37327]],63871:[[21237]],63872:[[21570]],63873:[[22899]],63874:[[24300]],63875:[[26053]],63876:[[28670]],63877:[[31018]],63878:[[38317]],63879:[[39530]],63880:[[40599]],63881:[[40654]],63882:[[21147]],63883:[[26310]],63884:[[27511]],63885:[[36706]],63886:[[24180]],63887:[[24976]],63888:[[25088]],63889:[[25754]],63890:[[28451]],63891:[[29001]],63892:[[29833]],63893:[[31178]],63894:[[32244]],63895:[[32879]],63896:[[36646]],63897:[[34030]],63898:[[36899]],63899:[[37706]],63900:[[21015]],63901:[[21155]],63902:[[21693]],63903:[[28872]],63904:[[35010]],63905:[[35498]],63906:[[24265]],63907:[[24565]],63908:[[25467]],63909:[[27566]],63910:[[31806]],63911:[[29557]],63912:[[20196]],63913:[[22265]],63914:[[23527]],63915:[[23994]],63916:[[24604]],63917:[[29618]],63918:[[29801]],63919:[[32666]],63920:[[32838]],63921:[[37428]],63922:[[38646]],63923:[[38728]],63924:[[38936]],63925:[[20363]],63926:[[31150]],63927:[[37300]],63928:[[38584]],63929:[[24801]],63930:[[20102]],63931:[[20698]],63932:[[23534]],63933:[[23615]],63934:[[26009]],63935:[[27138]],63936:[[29134]],63937:[[30274]],63938:[[34044]],63939:[[36988]],63940:[[40845]],63941:[[26248]],63942:[[38446]],63943:[[21129]],63944:[[26491]],63945:[[26611]],63946:[[27969]],63947:[[28316]],63948:[[29705]],63949:[[30041]],63950:[[30827]],63951:[[32016]],63952:[[39006]],63953:[[20845]],63954:[[25134]],63955:[[38520]],63956:[[20523]],63957:[[23833]],63958:[[28138]],63959:[[36650]],63960:[[24459]],63961:[[24900]],63962:[[26647]],63963:[[29575]],63964:[[38534]],63965:[[21033]],63966:[[21519]],63967:[[23653]],63968:[[26131]],63969:[[26446]],63970:[[26792]],63971:[[27877]],63972:[[29702]],63973:[[30178]],63974:[[32633]],63975:[[35023]],63976:[[35041]],63977:[[37324]],63978:[[38626]],63979:[[21311]],63980:[[28346]],63981:[[21533]],63982:[[29136]],63983:[[29848]],63984:[[34298]],63985:[[38563]],63986:[[40023]],63987:[[40607]],63988:[[26519]],63989:[[28107]],63990:[[33256]],63991:[[31435]],63992:[[31520]],63993:[[31890]],63994:[[29376]],63995:[[28825]],63996:[[35672]],63997:[[20160]],63998:[[33590]],63999:[[21050]],194816:[[27966]],194817:[[28023]],194818:[[27969]],194819:[[28009]],194820:[[28024]],194821:[[28037]],194822:[[146718]],194823:[[27956]],194824:[[28207]],194825:[[28270]],194826:[[15667]],194827:[[28363]],194828:[[28359]],194829:[[147153]],194830:[[28153]],194831:[[28526]],194832:[[147294]],194833:[[147342]],194834:[[28614]],194835:[[28729]],194836:[[28702]],194837:[[28699]],194838:[[15766]],194839:[[28746]],194840:[[28797]],194841:[[28791]],194842:[[28845]],194843:[[132389]],194844:[[28997]],194845:[[148067]],194846:[[29084]],194847:[[148395]],194848:[[29224]],194849:[[29237]],194850:[[29264]],194851:[[149e3]],194852:[[29312]],194853:[[29333]],194854:[[149301]],194855:[[149524]],194856:[[29562]],194857:[[29579]],194858:[[16044]],194859:[[29605]],194860:[[16056]],194861:[[16056]],194862:[[29767]],194863:[[29788]],194864:[[29809]],194865:[[29829]],194866:[[29898]],194867:[[16155]],194868:[[29988]],194869:[[150582]],194870:[[30014]],194871:[[150674]],194872:[[30064]],194873:[[139679]],194874:[[30224]],194875:[[151457]],194876:[[151480]],194877:[[151620]],194878:[[16380]],194879:[[16392]],194880:[[30452]],194881:[[151795]],194882:[[151794]],194883:[[151833]],194884:[[151859]],194885:[[30494]],194886:[[30495]],194887:[[30495]],194888:[[30538]],194889:[[16441]],194890:[[30603]],194891:[[16454]],194892:[[16534]],194893:[[152605]],194894:[[30798]],194895:[[30860]],194896:[[30924]],194897:[[16611]],194898:[[153126]],194899:[[31062]],194900:[[153242]],194901:[[153285]],194902:[[31119]],194903:[[31211]],194904:[[16687]],194905:[[31296]],194906:[[31306]],194907:[[31311]],194908:[[153980]],194909:[[154279]],194910:[[154279]],194911:[[31470]],194912:[[16898]],194913:[[154539]],194914:[[31686]],194915:[[31689]],194916:[[16935]],194917:[[154752]],194918:[[31954]],194919:[[17056]],194920:[[31976]],194921:[[31971]],194922:[[32e3]],194923:[[155526]],194924:[[32099]],194925:[[17153]],194926:[[32199]],194927:[[32258]],194928:[[32325]],194929:[[17204]],194930:[[156200]],194931:[[156231]],194932:[[17241]],194933:[[156377]],194934:[[32634]],194935:[[156478]],194936:[[32661]],194937:[[32762]],194938:[[32773]],194939:[[156890]],194940:[[156963]],194941:[[32864]],194942:[[157096]],194943:[[32880]],194944:[[144223]],194945:[[17365]],194946:[[32946]],194947:[[33027]],194948:[[17419]],194949:[[33086]],194950:[[23221]],194951:[[157607]],194952:[[157621]],194953:[[144275]],194954:[[144284]],194955:[[33281]],194956:[[33284]],194957:[[36766]],194958:[[17515]],194959:[[33425]],194960:[[33419]],194961:[[33437]],194962:[[21171]],194963:[[33457]],194964:[[33459]],194965:[[33469]],194966:[[33510]],194967:[[158524]],194968:[[33509]],194969:[[33565]],194970:[[33635]],194971:[[33709]],194972:[[33571]],194973:[[33725]],194974:[[33767]],194975:[[33879]],194976:[[33619]],194977:[[33738]],194978:[[33740]],194979:[[33756]],194980:[[158774]],194981:[[159083]],194982:[[158933]],194983:[[17707]],194984:[[34033]],194985:[[34035]],194986:[[34070]],194987:[[160714]],194988:[[34148]],194989:[[159532]],194990:[[17757]],194991:[[17761]],194992:[[159665]],194993:[[159954]],194994:[[17771]],194995:[[34384]],194996:[[34396]],194997:[[34407]],194998:[[34409]],194999:[[34473]],195e3:[[34440]],195001:[[34574]],195002:[[34530]],195003:[[34681]],195004:[[34600]],195005:[[34667]],195006:[[34694]],195007:[[17879]],195008:[[34785]],195009:[[34817]],195010:[[17913]],195011:[[34912]],195012:[[34915]],195013:[[161383]],195014:[[35031]],195015:[[35038]],195016:[[17973]],195017:[[35066]],195018:[[13499]],195019:[[161966]],195020:[[162150]],195021:[[18110]],195022:[[18119]],195023:[[35488]],195024:[[35565]],195025:[[35722]],195026:[[35925]],195027:[[162984]],195028:[[36011]],195029:[[36033]],195030:[[36123]],195031:[[36215]],195032:[[163631]],195033:[[133124]],195034:[[36299]],195035:[[36284]],195036:[[36336]],195037:[[133342]],195038:[[36564]],195039:[[36664]],195040:[[165330]],195041:[[165357]],195042:[[37012]],195043:[[37105]],195044:[[37137]],195045:[[165678]],195046:[[37147]],195047:[[37432]],195048:[[37591]],195049:[[37592]],195050:[[37500]],195051:[[37881]],195052:[[37909]],195053:[[166906]],195054:[[38283]],195055:[[18837]],195056:[[38327]],195057:[[167287]],195058:[[18918]],195059:[[38595]],195060:[[23986]],195061:[[38691]],195062:[[168261]],195063:[[168474]],195064:[[19054]],195065:[[19062]],195066:[[38880]],195067:[[168970]],195068:[[19122]],195069:[[169110]],195070:[[38923]],195071:[[38923]]},64e3:{64e3:[[20999]],64001:[[24230]],64002:[[25299]],64003:[[31958]],64004:[[23429]],64005:[[27934]],64006:[[26292]],64007:[[36667]],64008:[[34892]],64009:[[38477]],64010:[[35211]],64011:[[24275]],64012:[[20800]],64013:[[21952]],64016:[[22618]],64018:[[26228]],64021:[[20958]],64022:[[29482]],64023:[[30410]],64024:[[31036]],64025:[[31070]],64026:[[31077]],64027:[[31119]],64028:[[38742]],64029:[[31934]],64030:[[32701]],64032:[[34322]],64034:[[35576]],64037:[[36920]],64038:[[37117]],64042:[[39151]],64043:[[39164]],64044:[[39208]],64045:[[40372]],64046:[[37086]],64047:[[38583]],64048:[[20398]],64049:[[20711]],64050:[[20813]],64051:[[21193]],64052:[[21220]],64053:[[21329]],64054:[[21917]],64055:[[22022]],64056:[[22120]],64057:[[22592]],64058:[[22696]],64059:[[23652]],64060:[[23662]],64061:[[24724]],64062:[[24936]],64063:[[24974]],64064:[[25074]],64065:[[25935]],64066:[[26082]],64067:[[26257]],64068:[[26757]],64069:[[28023]],64070:[[28186]],64071:[[28450]],64072:[[29038]],64073:[[29227]],64074:[[29730]],64075:[[30865]],64076:[[31038]],64077:[[31049]],64078:[[31048]],64079:[[31056]],64080:[[31062]],64081:[[31069]],64082:[[31117]],64083:[[31118]],64084:[[31296]],64085:[[31361]],64086:[[31680]],64087:[[32244]],64088:[[32265]],64089:[[32321]],64090:[[32626]],64091:[[32773]],64092:[[33261]],64093:[[33401]],64094:[[33401]],64095:[[33879]],64096:[[35088]],64097:[[35222]],64098:[[35585]],64099:[[35641]],64100:[[36051]],64101:[[36104]],64102:[[36790]],64103:[[36920]],64104:[[38627]],64105:[[38911]],64106:[[38971]],64107:[[24693]],64108:[[148206]],64109:[[33304]],64112:[[20006]],64113:[[20917]],64114:[[20840]],64115:[[20352]],64116:[[20805]],64117:[[20864]],64118:[[21191]],64119:[[21242]],64120:[[21917]],64121:[[21845]],64122:[[21913]],64123:[[21986]],64124:[[22618]],64125:[[22707]],64126:[[22852]],64127:[[22868]],64128:[[23138]],64129:[[23336]],64130:[[24274]],64131:[[24281]],64132:[[24425]],64133:[[24493]],64134:[[24792]],64135:[[24910]],64136:[[24840]],64137:[[24974]],64138:[[24928]],64139:[[25074]],64140:[[25140]],64141:[[25540]],64142:[[25628]],64143:[[25682]],64144:[[25942]],64145:[[26228]],64146:[[26391]],64147:[[26395]],64148:[[26454]],64149:[[27513]],64150:[[27578]],64151:[[27969]],64152:[[28379]],64153:[[28363]],64154:[[28450]],64155:[[28702]],64156:[[29038]],64157:[[30631]],64158:[[29237]],64159:[[29359]],64160:[[29482]],64161:[[29809]],64162:[[29958]],64163:[[30011]],64164:[[30237]],64165:[[30239]],64166:[[30410]],64167:[[30427]],64168:[[30452]],64169:[[30538]],64170:[[30528]],64171:[[30924]],64172:[[31409]],64173:[[31680]],64174:[[31867]],64175:[[32091]],64176:[[32244]],64177:[[32574]],64178:[[32773]],64179:[[33618]],64180:[[33775]],64181:[[34681]],64182:[[35137]],64183:[[35206]],64184:[[35222]],64185:[[35519]],64186:[[35576]],64187:[[35531]],64188:[[35585]],64189:[[35582]],64190:[[35565]],64191:[[35641]],64192:[[35722]],64193:[[36104]],64194:[[36664]],64195:[[36978]],64196:[[37273]],64197:[[37494]],64198:[[38524]],64199:[[38627]],64200:[[38742]],64201:[[38875]],64202:[[38911]],64203:[[38923]],64204:[[38971]],64205:[[39698]],64206:[[40860]],64207:[[141386]],64208:[[141380]],64209:[[144341]],64210:[[15261]],64211:[[16408]],64212:[[16441]],64213:[[152137]],64214:[[154832]],64215:[[163539]],64216:[[40771]],64217:[[40846]],195072:[[38953]],195073:[[169398]],195074:[[39138]],195075:[[19251]],195076:[[39209]],195077:[[39335]],195078:[[39362]],195079:[[39422]],195080:[[19406]],195081:[[170800]],195082:[[39698]],195083:[[4e4]],195084:[[40189]],195085:[[19662]],195086:[[19693]],195087:[[40295]],195088:[[172238]],195089:[[19704]],195090:[[172293]],195091:[[172558]],195092:[[172689]],195093:[[40635]],195094:[[19798]],195095:[[40697]],195096:[[40702]],195097:[[40709]],195098:[[40719]],195099:[[40726]],195100:[[40763]],195101:[[173568]]},64256:{64256:[[102,102],256],64257:[[102,105],256],64258:[[102,108],256],64259:[[102,102,105],256],64260:[[102,102,108],256],64261:[[383,116],256],64262:[[115,116],256],64275:[[1396,1398],256],64276:[[1396,1381],256],64277:[[1396,1387],256],64278:[[1406,1398],256],64279:[[1396,1389],256],64285:[[1497,1460],512],64286:[,26],64287:[[1522,1463],512],64288:[[1506],256],64289:[[1488],256],64290:[[1491],256],64291:[[1492],256],64292:[[1499],256],64293:[[1500],256],64294:[[1501],256],64295:[[1512],256],64296:[[1514],256],64297:[[43],256],64298:[[1513,1473],512],64299:[[1513,1474],512],64300:[[64329,1473],512],64301:[[64329,1474],512],64302:[[1488,1463],512],64303:[[1488,1464],512],64304:[[1488,1468],512],64305:[[1489,1468],512],64306:[[1490,1468],512],64307:[[1491,1468],512],64308:[[1492,1468],512],64309:[[1493,1468],512],64310:[[1494,1468],512],64312:[[1496,1468],512],64313:[[1497,1468],512],64314:[[1498,1468],512],64315:[[1499,1468],512],64316:[[1500,1468],512],64318:[[1502,1468],512],64320:[[1504,1468],512],64321:[[1505,1468],512],64323:[[1507,1468],512],64324:[[1508,1468],512],64326:[[1510,1468],512],64327:[[1511,1468],512],64328:[[1512,1468],512],64329:[[1513,1468],512],64330:[[1514,1468],512],64331:[[1493,1465],512],64332:[[1489,1471],512],64333:[[1499,1471],512],64334:[[1508,1471],512],64335:[[1488,1500],256],64336:[[1649],256],64337:[[1649],256],64338:[[1659],256],64339:[[1659],256],64340:[[1659],256],64341:[[1659],256],64342:[[1662],256],64343:[[1662],256],64344:[[1662],256],64345:[[1662],256],64346:[[1664],256],64347:[[1664],256],64348:[[1664],256],64349:[[1664],256],64350:[[1658],256],64351:[[1658],256],64352:[[1658],256],64353:[[1658],256],64354:[[1663],256],64355:[[1663],256],64356:[[1663],256],64357:[[1663],256],64358:[[1657],256],64359:[[1657],256],64360:[[1657],256],64361:[[1657],256],64362:[[1700],256],64363:[[1700],256],64364:[[1700],256],64365:[[1700],256],64366:[[1702],256],64367:[[1702],256],64368:[[1702],256],64369:[[1702],256],64370:[[1668],256],64371:[[1668],256],64372:[[1668],256],64373:[[1668],256],64374:[[1667],256],64375:[[1667],256],64376:[[1667],256],64377:[[1667],256],64378:[[1670],256],64379:[[1670],256],64380:[[1670],256],64381:[[1670],256],64382:[[1671],256],64383:[[1671],256],64384:[[1671],256],64385:[[1671],256],64386:[[1677],256],64387:[[1677],256],64388:[[1676],256],64389:[[1676],256],64390:[[1678],256],64391:[[1678],256],64392:[[1672],256],64393:[[1672],256],64394:[[1688],256],64395:[[1688],256],64396:[[1681],256],64397:[[1681],256],64398:[[1705],256],64399:[[1705],256],64400:[[1705],256],64401:[[1705],256],64402:[[1711],256],64403:[[1711],256],64404:[[1711],256],64405:[[1711],256],64406:[[1715],256],64407:[[1715],256],64408:[[1715],256],64409:[[1715],256],64410:[[1713],256],64411:[[1713],256],64412:[[1713],256],64413:[[1713],256],64414:[[1722],256],64415:[[1722],256],64416:[[1723],256],64417:[[1723],256],64418:[[1723],256],64419:[[1723],256],64420:[[1728],256],64421:[[1728],256],64422:[[1729],256],64423:[[1729],256],64424:[[1729],256],64425:[[1729],256],64426:[[1726],256],64427:[[1726],256],64428:[[1726],256],64429:[[1726],256],64430:[[1746],256],64431:[[1746],256],64432:[[1747],256],64433:[[1747],256],64467:[[1709],256],64468:[[1709],256],64469:[[1709],256],64470:[[1709],256],64471:[[1735],256],64472:[[1735],256],64473:[[1734],256],64474:[[1734],256],64475:[[1736],256],64476:[[1736],256],64477:[[1655],256],64478:[[1739],256],64479:[[1739],256],64480:[[1733],256],64481:[[1733],256],64482:[[1737],256],64483:[[1737],256],64484:[[1744],256],64485:[[1744],256],64486:[[1744],256],64487:[[1744],256],64488:[[1609],256],64489:[[1609],256],64490:[[1574,1575],256],64491:[[1574,1575],256],64492:[[1574,1749],256],64493:[[1574,1749],256],64494:[[1574,1608],256],64495:[[1574,1608],256],64496:[[1574,1735],256],64497:[[1574,1735],256],64498:[[1574,1734],256],64499:[[1574,1734],256],64500:[[1574,1736],256],64501:[[1574,1736],256],64502:[[1574,1744],256],64503:[[1574,1744],256],64504:[[1574,1744],256],64505:[[1574,1609],256],64506:[[1574,1609],256],64507:[[1574,1609],256],64508:[[1740],256],64509:[[1740],256],64510:[[1740],256],64511:[[1740],256]},64512:{64512:[[1574,1580],256],64513:[[1574,1581],256],64514:[[1574,1605],256],64515:[[1574,1609],256],64516:[[1574,1610],256],64517:[[1576,1580],256],64518:[[1576,1581],256],64519:[[1576,1582],256],64520:[[1576,1605],256],64521:[[1576,1609],256],64522:[[1576,1610],256],64523:[[1578,1580],256],64524:[[1578,1581],256],64525:[[1578,1582],256],64526:[[1578,1605],256],64527:[[1578,1609],256],64528:[[1578,1610],256],64529:[[1579,1580],256],64530:[[1579,1605],256],64531:[[1579,1609],256],64532:[[1579,1610],256],64533:[[1580,1581],256],64534:[[1580,1605],256],64535:[[1581,1580],256],64536:[[1581,1605],256],64537:[[1582,1580],256],64538:[[1582,1581],256],64539:[[1582,1605],256],64540:[[1587,1580],256],64541:[[1587,1581],256],64542:[[1587,1582],256],64543:[[1587,1605],256],64544:[[1589,1581],256],64545:[[1589,1605],256],64546:[[1590,1580],256],64547:[[1590,1581],256],64548:[[1590,1582],256],64549:[[1590,1605],256],64550:[[1591,1581],256],64551:[[1591,1605],256],64552:[[1592,1605],256],64553:[[1593,1580],256],64554:[[1593,1605],256],64555:[[1594,1580],256],64556:[[1594,1605],256],64557:[[1601,1580],256],64558:[[1601,1581],256],64559:[[1601,1582],256],64560:[[1601,1605],256],64561:[[1601,1609],256],64562:[[1601,1610],256],64563:[[1602,1581],256],64564:[[1602,1605],256],64565:[[1602,1609],256],64566:[[1602,1610],256],64567:[[1603,1575],256],64568:[[1603,1580],256],64569:[[1603,1581],256],64570:[[1603,1582],256],64571:[[1603,1604],256],64572:[[1603,1605],256],64573:[[1603,1609],256],64574:[[1603,1610],256],64575:[[1604,1580],256],64576:[[1604,1581],256],64577:[[1604,1582],256],64578:[[1604,1605],256],64579:[[1604,1609],256],64580:[[1604,1610],256],64581:[[1605,1580],256],64582:[[1605,1581],256],64583:[[1605,1582],256],64584:[[1605,1605],256],64585:[[1605,1609],256],64586:[[1605,1610],256],64587:[[1606,1580],256],64588:[[1606,1581],256],64589:[[1606,1582],256],64590:[[1606,1605],256],64591:[[1606,1609],256],64592:[[1606,1610],256],64593:[[1607,1580],256],64594:[[1607,1605],256],64595:[[1607,1609],256],64596:[[1607,1610],256],64597:[[1610,1580],256],64598:[[1610,1581],256],64599:[[1610,1582],256],64600:[[1610,1605],256],64601:[[1610,1609],256],64602:[[1610,1610],256],64603:[[1584,1648],256],64604:[[1585,1648],256],64605:[[1609,1648],256],64606:[[32,1612,1617],256],64607:[[32,1613,1617],256],64608:[[32,1614,1617],256],64609:[[32,1615,1617],256],64610:[[32,1616,1617],256],64611:[[32,1617,1648],256],64612:[[1574,1585],256],64613:[[1574,1586],256],64614:[[1574,1605],256],64615:[[1574,1606],256],64616:[[1574,1609],256],64617:[[1574,1610],256],64618:[[1576,1585],256],64619:[[1576,1586],256],64620:[[1576,1605],256],64621:[[1576,1606],256],64622:[[1576,1609],256],64623:[[1576,1610],256],64624:[[1578,1585],256],64625:[[1578,1586],256],64626:[[1578,1605],256],64627:[[1578,1606],256],64628:[[1578,1609],256],64629:[[1578,1610],256],64630:[[1579,1585],256],64631:[[1579,1586],256],64632:[[1579,1605],256],64633:[[1579,1606],256],64634:[[1579,1609],256],64635:[[1579,1610],256],64636:[[1601,1609],256],64637:[[1601,1610],256],64638:[[1602,1609],256],64639:[[1602,1610],256],64640:[[1603,1575],256],64641:[[1603,1604],256],64642:[[1603,1605],256],64643:[[1603,1609],256],64644:[[1603,1610],256],64645:[[1604,1605],256],64646:[[1604,1609],256],64647:[[1604,1610],256],64648:[[1605,1575],256],64649:[[1605,1605],256],64650:[[1606,1585],256],64651:[[1606,1586],256],64652:[[1606,1605],256],64653:[[1606,1606],256],64654:[[1606,1609],256],64655:[[1606,1610],256],64656:[[1609,1648],256],64657:[[1610,1585],256],64658:[[1610,1586],256],64659:[[1610,1605],256],64660:[[1610,1606],256],64661:[[1610,1609],256],64662:[[1610,1610],256],64663:[[1574,1580],256],64664:[[1574,1581],256],64665:[[1574,1582],256],64666:[[1574,1605],256],64667:[[1574,1607],256],64668:[[1576,1580],256],64669:[[1576,1581],256],64670:[[1576,1582],256],64671:[[1576,1605],256],64672:[[1576,1607],256],64673:[[1578,1580],256],64674:[[1578,1581],256],64675:[[1578,1582],256],64676:[[1578,1605],256],64677:[[1578,1607],256],64678:[[1579,1605],256],64679:[[1580,1581],256],64680:[[1580,1605],256],64681:[[1581,1580],256],64682:[[1581,1605],256],64683:[[1582,1580],256],64684:[[1582,1605],256],64685:[[1587,1580],256],64686:[[1587,1581],256],64687:[[1587,1582],256],64688:[[1587,1605],256],64689:[[1589,1581],256],64690:[[1589,1582],256],64691:[[1589,1605],256],64692:[[1590,1580],256],64693:[[1590,1581],256],64694:[[1590,1582],256],64695:[[1590,1605],256],64696:[[1591,1581],256],64697:[[1592,1605],256],64698:[[1593,1580],256],64699:[[1593,1605],256],64700:[[1594,1580],256],64701:[[1594,1605],256],64702:[[1601,1580],256],64703:[[1601,1581],256],64704:[[1601,1582],256],64705:[[1601,1605],256],64706:[[1602,1581],256],64707:[[1602,1605],256],64708:[[1603,1580],256],64709:[[1603,1581],256],64710:[[1603,1582],256],64711:[[1603,1604],256],64712:[[1603,1605],256],64713:[[1604,1580],256],64714:[[1604,1581],256],64715:[[1604,1582],256],64716:[[1604,1605],256],64717:[[1604,1607],256],64718:[[1605,1580],256],64719:[[1605,1581],256],64720:[[1605,1582],256],64721:[[1605,1605],256],64722:[[1606,1580],256],64723:[[1606,1581],256],64724:[[1606,1582],256],64725:[[1606,1605],256],64726:[[1606,1607],256],64727:[[1607,1580],256],64728:[[1607,1605],256],64729:[[1607,1648],256],64730:[[1610,1580],256],64731:[[1610,1581],256],64732:[[1610,1582],256],64733:[[1610,1605],256],64734:[[1610,1607],256],64735:[[1574,1605],256],64736:[[1574,1607],256],64737:[[1576,1605],256],64738:[[1576,1607],256],64739:[[1578,1605],256],64740:[[1578,1607],256],64741:[[1579,1605],256],64742:[[1579,1607],256],64743:[[1587,1605],256],64744:[[1587,1607],256],64745:[[1588,1605],256],64746:[[1588,1607],256],64747:[[1603,1604],256],64748:[[1603,1605],256],64749:[[1604,1605],256],64750:[[1606,1605],256],64751:[[1606,1607],256],64752:[[1610,1605],256],64753:[[1610,1607],256],64754:[[1600,1614,1617],256],64755:[[1600,1615,1617],256],64756:[[1600,1616,1617],256],64757:[[1591,1609],256],64758:[[1591,1610],256],64759:[[1593,1609],256],64760:[[1593,1610],256],64761:[[1594,1609],256],64762:[[1594,1610],256],64763:[[1587,1609],256],64764:[[1587,1610],256],64765:[[1588,1609],256],64766:[[1588,1610],256],64767:[[1581,1609],256]},64768:{64768:[[1581,1610],256],64769:[[1580,1609],256],64770:[[1580,1610],256],64771:[[1582,1609],256],64772:[[1582,1610],256],64773:[[1589,1609],256],64774:[[1589,1610],256],64775:[[1590,1609],256],64776:[[1590,1610],256],64777:[[1588,1580],256],64778:[[1588,1581],256],64779:[[1588,1582],256],64780:[[1588,1605],256],64781:[[1588,1585],256],64782:[[1587,1585],256],64783:[[1589,1585],256],64784:[[1590,1585],256],64785:[[1591,1609],256],64786:[[1591,1610],256],64787:[[1593,1609],256],64788:[[1593,1610],256],64789:[[1594,1609],256],64790:[[1594,1610],256],64791:[[1587,1609],256],64792:[[1587,1610],256],64793:[[1588,1609],256],64794:[[1588,1610],256],64795:[[1581,1609],256],64796:[[1581,1610],256],64797:[[1580,1609],256],64798:[[1580,1610],256],64799:[[1582,1609],256],64800:[[1582,1610],256],64801:[[1589,1609],256],64802:[[1589,1610],256],64803:[[1590,1609],256],64804:[[1590,1610],256],64805:[[1588,1580],256],64806:[[1588,1581],256],64807:[[1588,1582],256],64808:[[1588,1605],256],64809:[[1588,1585],256],64810:[[1587,1585],256],64811:[[1589,1585],256],64812:[[1590,1585],256],64813:[[1588,1580],256],64814:[[1588,1581],256],64815:[[1588,1582],256],64816:[[1588,1605],256],64817:[[1587,1607],256],64818:[[1588,1607],256],64819:[[1591,1605],256],64820:[[1587,1580],256],64821:[[1587,1581],256],64822:[[1587,1582],256],64823:[[1588,1580],256],64824:[[1588,1581],256],64825:[[1588,1582],256],64826:[[1591,1605],256],64827:[[1592,1605],256],64828:[[1575,1611],256],64829:[[1575,1611],256],64848:[[1578,1580,1605],256],64849:[[1578,1581,1580],256],64850:[[1578,1581,1580],256],64851:[[1578,1581,1605],256],64852:[[1578,1582,1605],256],64853:[[1578,1605,1580],256],64854:[[1578,1605,1581],256],64855:[[1578,1605,1582],256],64856:[[1580,1605,1581],256],64857:[[1580,1605,1581],256],64858:[[1581,1605,1610],256],64859:[[1581,1605,1609],256],64860:[[1587,1581,1580],256],64861:[[1587,1580,1581],256],64862:[[1587,1580,1609],256],64863:[[1587,1605,1581],256],64864:[[1587,1605,1581],256],64865:[[1587,1605,1580],256],64866:[[1587,1605,1605],256],64867:[[1587,1605,1605],256],64868:[[1589,1581,1581],256],64869:[[1589,1581,1581],256],64870:[[1589,1605,1605],256],64871:[[1588,1581,1605],256],64872:[[1588,1581,1605],256],64873:[[1588,1580,1610],256],64874:[[1588,1605,1582],256],64875:[[1588,1605,1582],256],64876:[[1588,1605,1605],256],64877:[[1588,1605,1605],256],64878:[[1590,1581,1609],256],64879:[[1590,1582,1605],256],64880:[[1590,1582,1605],256],64881:[[1591,1605,1581],256],64882:[[1591,1605,1581],256],64883:[[1591,1605,1605],256],64884:[[1591,1605,1610],256],64885:[[1593,1580,1605],256],64886:[[1593,1605,1605],256],64887:[[1593,1605,1605],256],64888:[[1593,1605,1609],256],64889:[[1594,1605,1605],256],64890:[[1594,1605,1610],256],64891:[[1594,1605,1609],256],64892:[[1601,1582,1605],256],64893:[[1601,1582,1605],256],64894:[[1602,1605,1581],256],64895:[[1602,1605,1605],256],64896:[[1604,1581,1605],256],64897:[[1604,1581,1610],256],64898:[[1604,1581,1609],256],64899:[[1604,1580,1580],256],64900:[[1604,1580,1580],256],64901:[[1604,1582,1605],256],64902:[[1604,1582,1605],256],64903:[[1604,1605,1581],256],64904:[[1604,1605,1581],256],64905:[[1605,1581,1580],256],64906:[[1605,1581,1605],256],64907:[[1605,1581,1610],256],64908:[[1605,1580,1581],256],64909:[[1605,1580,1605],256],64910:[[1605,1582,1580],256],64911:[[1605,1582,1605],256],64914:[[1605,1580,1582],256],64915:[[1607,1605,1580],256],64916:[[1607,1605,1605],256],64917:[[1606,1581,1605],256],64918:[[1606,1581,1609],256],64919:[[1606,1580,1605],256],64920:[[1606,1580,1605],256],64921:[[1606,1580,1609],256],64922:[[1606,1605,1610],256],64923:[[1606,1605,1609],256],64924:[[1610,1605,1605],256],64925:[[1610,1605,1605],256],64926:[[1576,1582,1610],256],64927:[[1578,1580,1610],256],64928:[[1578,1580,1609],256],64929:[[1578,1582,1610],256],64930:[[1578,1582,1609],256],64931:[[1578,1605,1610],256],64932:[[1578,1605,1609],256],64933:[[1580,1605,1610],256],64934:[[1580,1581,1609],256],64935:[[1580,1605,1609],256],64936:[[1587,1582,1609],256],64937:[[1589,1581,1610],256],64938:[[1588,1581,1610],256],64939:[[1590,1581,1610],256],64940:[[1604,1580,1610],256],64941:[[1604,1605,1610],256],64942:[[1610,1581,1610],256],64943:[[1610,1580,1610],256],64944:[[1610,1605,1610],256],64945:[[1605,1605,1610],256],64946:[[1602,1605,1610],256],64947:[[1606,1581,1610],256],64948:[[1602,1605,1581],256],64949:[[1604,1581,1605],256],64950:[[1593,1605,1610],256],64951:[[1603,1605,1610],256],64952:[[1606,1580,1581],256],64953:[[1605,1582,1610],256],64954:[[1604,1580,1605],256],64955:[[1603,1605,1605],256],64956:[[1604,1580,1605],256],64957:[[1606,1580,1581],256],64958:[[1580,1581,1610],256],64959:[[1581,1580,1610],256],64960:[[1605,1580,1610],256],64961:[[1601,1605,1610],256],64962:[[1576,1581,1610],256],64963:[[1603,1605,1605],256],64964:[[1593,1580,1605],256],64965:[[1589,1605,1605],256],64966:[[1587,1582,1610],256],64967:[[1606,1580,1610],256],65008:[[1589,1604,1746],256],65009:[[1602,1604,1746],256],65010:[[1575,1604,1604,1607],256],65011:[[1575,1603,1576,1585],256],65012:[[1605,1581,1605,1583],256],65013:[[1589,1604,1593,1605],256],65014:[[1585,1587,1608,1604],256],65015:[[1593,1604,1610,1607],256],65016:[[1608,1587,1604,1605],256],65017:[[1589,1604,1609],256],65018:[[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605],256],65019:[[1580,1604,32,1580,1604,1575,1604,1607],256],65020:[[1585,1740,1575,1604],256]},65024:{65040:[[44],256],65041:[[12289],256],65042:[[12290],256],65043:[[58],256],65044:[[59],256],65045:[[33],256],65046:[[63],256],65047:[[12310],256],65048:[[12311],256],65049:[[8230],256],65056:[,230],65057:[,230],65058:[,230],65059:[,230],65060:[,230],65061:[,230],65062:[,230],65063:[,220],65064:[,220],65065:[,220],65066:[,220],65067:[,220],65068:[,220],65069:[,220],65072:[[8229],256],65073:[[8212],256],65074:[[8211],256],65075:[[95],256],65076:[[95],256],65077:[[40],256],65078:[[41],256],65079:[[123],256],65080:[[125],256],65081:[[12308],256],65082:[[12309],256],65083:[[12304],256],65084:[[12305],256],65085:[[12298],256],65086:[[12299],256],65087:[[12296],256],65088:[[12297],256],65089:[[12300],256],65090:[[12301],256],65091:[[12302],256],65092:[[12303],256],65095:[[91],256],65096:[[93],256],65097:[[8254],256],65098:[[8254],256],65099:[[8254],256],65100:[[8254],256],65101:[[95],256],65102:[[95],256],65103:[[95],256],65104:[[44],256],65105:[[12289],256],65106:[[46],256],65108:[[59],256],65109:[[58],256],65110:[[63],256],65111:[[33],256],65112:[[8212],256],65113:[[40],256],65114:[[41],256],65115:[[123],256],65116:[[125],256],65117:[[12308],256],65118:[[12309],256],65119:[[35],256],65120:[[38],256],65121:[[42],256],65122:[[43],256],65123:[[45],256],65124:[[60],256],65125:[[62],256],65126:[[61],256],65128:[[92],256],65129:[[36],256],65130:[[37],256],65131:[[64],256],65136:[[32,1611],256],65137:[[1600,1611],256],65138:[[32,1612],256],65140:[[32,1613],256],65142:[[32,1614],256],65143:[[1600,1614],256],65144:[[32,1615],256],65145:[[1600,1615],256],65146:[[32,1616],256],65147:[[1600,1616],256],65148:[[32,1617],256],65149:[[1600,1617],256],65150:[[32,1618],256],65151:[[1600,1618],256],65152:[[1569],256],65153:[[1570],256],65154:[[1570],256],65155:[[1571],256],65156:[[1571],256],65157:[[1572],256],65158:[[1572],256],65159:[[1573],256],65160:[[1573],256],65161:[[1574],256],65162:[[1574],256],65163:[[1574],256],65164:[[1574],256],65165:[[1575],256],65166:[[1575],256],65167:[[1576],256],65168:[[1576],256],65169:[[1576],256],65170:[[1576],256],65171:[[1577],256],65172:[[1577],256],65173:[[1578],256],65174:[[1578],256],65175:[[1578],256],65176:[[1578],256],65177:[[1579],256],65178:[[1579],256],65179:[[1579],256],65180:[[1579],256],65181:[[1580],256],65182:[[1580],256],65183:[[1580],256],65184:[[1580],256],65185:[[1581],256],65186:[[1581],256],65187:[[1581],256],65188:[[1581],256],65189:[[1582],256],65190:[[1582],256],65191:[[1582],256],65192:[[1582],256],65193:[[1583],256],65194:[[1583],256],65195:[[1584],256],65196:[[1584],256],65197:[[1585],256],65198:[[1585],256],65199:[[1586],256],65200:[[1586],256],65201:[[1587],256],65202:[[1587],256],65203:[[1587],256],65204:[[1587],256],65205:[[1588],256],65206:[[1588],256],65207:[[1588],256],65208:[[1588],256],65209:[[1589],256],65210:[[1589],256],65211:[[1589],256],65212:[[1589],256],65213:[[1590],256],65214:[[1590],256],65215:[[1590],256],65216:[[1590],256],65217:[[1591],256],65218:[[1591],256],65219:[[1591],256],65220:[[1591],256],65221:[[1592],256],65222:[[1592],256],65223:[[1592],256],65224:[[1592],256],65225:[[1593],256],65226:[[1593],256],65227:[[1593],256],65228:[[1593],256],65229:[[1594],256],65230:[[1594],256],65231:[[1594],256],65232:[[1594],256],65233:[[1601],256],65234:[[1601],256],65235:[[1601],256],65236:[[1601],256],65237:[[1602],256],65238:[[1602],256],65239:[[1602],256],65240:[[1602],256],65241:[[1603],256],65242:[[1603],256],65243:[[1603],256],65244:[[1603],256],65245:[[1604],256],65246:[[1604],256],65247:[[1604],256],65248:[[1604],256],65249:[[1605],256],65250:[[1605],256],65251:[[1605],256],65252:[[1605],256],65253:[[1606],256],65254:[[1606],256],65255:[[1606],256],65256:[[1606],256],65257:[[1607],256],65258:[[1607],256],65259:[[1607],256],65260:[[1607],256],65261:[[1608],256],65262:[[1608],256],65263:[[1609],256],65264:[[1609],256],65265:[[1610],256],65266:[[1610],256],65267:[[1610],256],65268:[[1610],256],65269:[[1604,1570],256],65270:[[1604,1570],256],65271:[[1604,1571],256],65272:[[1604,1571],256],65273:[[1604,1573],256],65274:[[1604,1573],256],65275:[[1604,1575],256],65276:[[1604,1575],256]},65280:{65281:[[33],256],65282:[[34],256],65283:[[35],256],65284:[[36],256],65285:[[37],256],65286:[[38],256],65287:[[39],256],65288:[[40],256],65289:[[41],256],65290:[[42],256],65291:[[43],256],65292:[[44],256],65293:[[45],256],65294:[[46],256],65295:[[47],256],65296:[[48],256],65297:[[49],256],65298:[[50],256],65299:[[51],256],65300:[[52],256],65301:[[53],256],65302:[[54],256],65303:[[55],256],65304:[[56],256],65305:[[57],256],65306:[[58],256],65307:[[59],256],65308:[[60],256],65309:[[61],256],65310:[[62],256],65311:[[63],256],65312:[[64],256],65313:[[65],256],65314:[[66],256],65315:[[67],256],65316:[[68],256],65317:[[69],256],65318:[[70],256],65319:[[71],256],65320:[[72],256],65321:[[73],256],65322:[[74],256],65323:[[75],256],65324:[[76],256],65325:[[77],256],65326:[[78],256],65327:[[79],256],65328:[[80],256],65329:[[81],256],65330:[[82],256],65331:[[83],256],65332:[[84],256],65333:[[85],256],65334:[[86],256],65335:[[87],256],65336:[[88],256],65337:[[89],256],65338:[[90],256],65339:[[91],256],65340:[[92],256],65341:[[93],256],65342:[[94],256],65343:[[95],256],65344:[[96],256],65345:[[97],256],65346:[[98],256],65347:[[99],256],65348:[[100],256],65349:[[101],256],65350:[[102],256],65351:[[103],256],65352:[[104],256],65353:[[105],256],65354:[[106],256],65355:[[107],256],65356:[[108],256],65357:[[109],256],65358:[[110],256],65359:[[111],256],65360:[[112],256],65361:[[113],256],65362:[[114],256],65363:[[115],256],65364:[[116],256],65365:[[117],256],65366:[[118],256],65367:[[119],256],65368:[[120],256],65369:[[121],256],65370:[[122],256],65371:[[123],256],65372:[[124],256],65373:[[125],256],65374:[[126],256],65375:[[10629],256],65376:[[10630],256],65377:[[12290],256],65378:[[12300],256],65379:[[12301],256],65380:[[12289],256],65381:[[12539],256],65382:[[12530],256],65383:[[12449],256],65384:[[12451],256],65385:[[12453],256],65386:[[12455],256],65387:[[12457],256],65388:[[12515],256],65389:[[12517],256],65390:[[12519],256],65391:[[12483],256],65392:[[12540],256],65393:[[12450],256],65394:[[12452],256],65395:[[12454],256],65396:[[12456],256],65397:[[12458],256],65398:[[12459],256],65399:[[12461],256],65400:[[12463],256],65401:[[12465],256],65402:[[12467],256],65403:[[12469],256],65404:[[12471],256],65405:[[12473],256],65406:[[12475],256],65407:[[12477],256],65408:[[12479],256],65409:[[12481],256],65410:[[12484],256],65411:[[12486],256],65412:[[12488],256],65413:[[12490],256],65414:[[12491],256],65415:[[12492],256],65416:[[12493],256],65417:[[12494],256],65418:[[12495],256],65419:[[12498],256],65420:[[12501],256],65421:[[12504],256],65422:[[12507],256],65423:[[12510],256],65424:[[12511],256],65425:[[12512],256],65426:[[12513],256],65427:[[12514],256],65428:[[12516],256],65429:[[12518],256],65430:[[12520],256],65431:[[12521],256],65432:[[12522],256],65433:[[12523],256],65434:[[12524],256],65435:[[12525],256],65436:[[12527],256],65437:[[12531],256],65438:[[12441],256],65439:[[12442],256],65440:[[12644],256],65441:[[12593],256],65442:[[12594],256],65443:[[12595],256],65444:[[12596],256],65445:[[12597],256],65446:[[12598],256],65447:[[12599],256],65448:[[12600],256],65449:[[12601],256],65450:[[12602],256],65451:[[12603],256],65452:[[12604],256],65453:[[12605],256],65454:[[12606],256],65455:[[12607],256],65456:[[12608],256],65457:[[12609],256],65458:[[12610],256],65459:[[12611],256],65460:[[12612],256],65461:[[12613],256],65462:[[12614],256],65463:[[12615],256],65464:[[12616],256],65465:[[12617],256],65466:[[12618],256],65467:[[12619],256],65468:[[12620],256],65469:[[12621],256],65470:[[12622],256],65474:[[12623],256],65475:[[12624],256],65476:[[12625],256],65477:[[12626],256],65478:[[12627],256],65479:[[12628],256],65482:[[12629],256],65483:[[12630],256],65484:[[12631],256],65485:[[12632],256],65486:[[12633],256],65487:[[12634],256],65490:[[12635],256],65491:[[12636],256],65492:[[12637],256],65493:[[12638],256],65494:[[12639],256],65495:[[12640],256],65498:[[12641],256],65499:[[12642],256],65500:[[12643],256],65504:[[162],256],65505:[[163],256],65506:[[172],256],65507:[[175],256],65508:[[166],256],65509:[[165],256],65510:[[8361],256],65512:[[9474],256],65513:[[8592],256],65514:[[8593],256],65515:[[8594],256],65516:[[8595],256],65517:[[9632],256],65518:[[9675],256]}};var d={nfc:function(e){return l("NFC",e)},nfd:function(e){return l("NFD",e)},nfkc:function(e){return l("NFKC",e)},nfkd:function(e){return l("NFKD",e)}};e.exports=d,d.shimApplied=!1,String.prototype.normalize||(String.prototype.normalize=function(e){var t=""+this;if("NFC"===(e=void 0===e?"NFC":e))return d.nfc(t);if("NFD"===e)return d.nfd(t);if("NFKC"===e)return d.nfkc(t);if("NFKD"===e)return d.nfkd(t);throw new RangeError("Invalid normalization form: "+e)},d.shimApplied=!0)}()},function(e,t,r){"use strict";(function(t){var i=r(8);e.exports=function(e,r,n,o){if(o>64*(Math.pow(2,32)-1))throw Error("Requested key length too long");if("string"!=typeof e&&!t.isBuffer(e))throw new TypeError("key must a string or Buffer");if("string"!=typeof r&&!t.isBuffer(r))throw new TypeError("salt must a string or Buffer");"string"==typeof e&&(e=t.from(e)),"string"==typeof r&&(r=t.from(r));var a=t.alloc(o),s=t.alloc(64),c=t.alloc(64),u=t.alloc(r.length+4),f=Math.ceil(o/64),h=o-64*(f-1);r.copy(u,0,0,r.length);for(var l=1;l<=f;l++){u[r.length+0]=l>>24&255,u[r.length+1]=l>>16&255,u[r.length+2]=l>>8&255,u[r.length+3]=l>>0&255,(s=i.createHmac("sha512",e).update(u).digest()).copy(c,0,0,64);for(var d=1;d<n;d++){s=i.createHmac("sha512",e).update(s).digest();for(var p=0;p<64;p++)c[p]^=s[p]}var g=64*(l-1),m=l===f?h:64;c.copy(a,g,0,m)}return a}}).call(this,r(0).Buffer)},function(e,t,r){"use strict";e.exports=r(1).errors.extend({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}"}]})},function(e,t,r){e.exports={CHINESE:r(160),ENGLISH:r(161),FRENCH:r(162),ITALIAN:r(163),JAPANESE:r(164),SPANISH:r(165)}},function(e,t,r){"use strict";e.exports=["的","一","是","在","不","了","有","和","人","这","中","大","为","上","个","国","我","以","要","他","时","来","用","们","生","到","作","地","于","出","就","分","对","成","会","可","主","发","年","动","同","工","也","能","下","过","子","说","产","种","面","而","方","后","多","定","行","学","法","所","民","得","经","十","三","之","进","着","等","部","度","家","电","力","里","如","水","化","高","自","二","理","起","小","物","现","实","加","量","都","两","体","制","机","当","使","点","从","业","本","去","把","性","好","应","开","它","合","还","因","由","其","些","然","前","外","天","政","四","日","那","社","义","事","平","形","相","全","表","间","样","与","关","各","重","新","线","内","数","正","心","反","你","明","看","原","又","么","利","比","或","但","质","气","第","向","道","命","此","变","条","只","没","结","解","问","意","建","月","公","无","系","军","很","情","者","最","立","代","想","已","通","并","提","直","题","党","程","展","五","果","料","象","员","革","位","入","常","文","总","次","品","式","活","设","及","管","特","件","长","求","老","头","基","资","边","流","路","级","少","图","山","统","接","知","较","将","组","见","计","别","她","手","角","期","根","论","运","农","指","几","九","区","强","放","决","西","被","干","做","必","战","先","回","则","任","取","据","处","队","南","给","色","光","门","即","保","治","北","造","百","规","热","领","七","海","口","东","导","器","压","志","世","金","增","争","济","阶","油","思","术","极","交","受","联","什","认","六","共","权","收","证","改","清","美","再","采","转","更","单","风","切","打","白","教","速","花","带","安","场","身","车","例","真","务","具","万","每","目","至","达","走","积","示","议","声","报","斗","完","类","八","离","华","名","确","才","科","张","信","马","节","话","米","整","空","元","况","今","集","温","传","土","许","步","群","广","石","记","需","段","研","界","拉","林","律","叫","且","究","观","越","织","装","影","算","低","持","音","众","书","布","复","容","儿","须","际","商","非","验","连","断","深","难","近","矿","千","周","委","素","技","备","半","办","青","省","列","习","响","约","支","般","史","感","劳","便","团","往","酸","历","市","克","何","除","消","构","府","称","太","准","精","值","号","率","族","维","划","选","标","写","存","候","毛","亲","快","效","斯","院","查","江","型","眼","王","按","格","养","易","置","派","层","片","始","却","专","状","育","厂","京","识","适","属","圆","包","火","住","调","满","县","局","照","参","红","细","引","听","该","铁","价","严","首","底","液","官","德","随","病","苏","失","尔","死","讲","配","女","黄","推","显","谈","罪","神","艺","呢","席","含","企","望","密","批","营","项","防","举","球","英","氧","势","告","李","台","落","木","帮","轮","破","亚","师","围","注","远","字","材","排","供","河","态","封","另","施","减","树","溶","怎","止","案","言","士","均","武","固","叶","鱼","波","视","仅","费","紧","爱","左","章","早","朝","害","续","轻","服","试","食","充","兵","源","判","护","司","足","某","练","差","致","板","田","降","黑","犯","负","击","范","继","兴","似","余","坚","曲","输","修","故","城","夫","够","送","笔","船","占","右","财","吃","富","春","职","觉","汉","画","功","巴","跟","虽","杂","飞","检","吸","助","升","阳","互","初","创","抗","考","投","坏","策","古","径","换","未","跑","留","钢","曾","端","责","站","简","述","钱","副","尽","帝","射","草","冲","承","独","令","限","阿","宣","环","双","请","超","微","让","控","州","良","轴","找","否","纪","益","依","优","顶","础","载","倒","房","突","坐","粉","敌","略","客","袁","冷","胜","绝","析","块","剂","测","丝","协","诉","念","陈","仍","罗","盐","友","洋","错","苦","夜","刑","移","频","逐","靠","混","母","短","皮","终","聚","汽","村","云","哪","既","距","卫","停","烈","央","察","烧","迅","境","若","印","洲","刻","括","激","孔","搞","甚","室","待","核","校","散","侵","吧","甲","游","久","菜","味","旧","模","湖","货","损","预","阻","毫","普","稳","乙","妈","植","息","扩","银","语","挥","酒","守","拿","序","纸","医","缺","雨","吗","针","刘","啊","急","唱","误","训","愿","审","附","获","茶","鲜","粮","斤","孩","脱","硫","肥","善","龙","演","父","渐","血","欢","械","掌","歌","沙","刚","攻","谓","盾","讨","晚","粒","乱","燃","矛","乎","杀","药","宁","鲁","贵","钟","煤","读","班","伯","香","介","迫","句","丰","培","握","兰","担","弦","蛋","沉","假","穿","执","答","乐","谁","顺","烟","缩","征","脸","喜","松","脚","困","异","免","背","星","福","买","染","井","概","慢","怕","磁","倍","祖","皇","促","静","补","评","翻","肉","践","尼","衣","宽","扬","棉","希","伤","操","垂","秋","宜","氢","套","督","振","架","亮","末","宪","庆","编","牛","触","映","雷","销","诗","座","居","抓","裂","胞","呼","娘","景","威","绿","晶","厚","盟","衡","鸡","孙","延","危","胶","屋","乡","临","陆","顾","掉","呀","灯","岁","措","束","耐","剧","玉","赵","跳","哥","季","课","凯","胡","额","款","绍","卷","齐","伟","蒸","殖","永","宗","苗","川","炉","岩","弱","零","杨","奏","沿","露","杆","探","滑","镇","饭","浓","航","怀","赶","库","夺","伊","灵","税","途","灭","赛","归","召","鼓","播","盘","裁","险","康","唯","录","菌","纯","借","糖","盖","横","符","私","努","堂","域","枪","润","幅","哈","竟","熟","虫","泽","脑","壤","碳","欧","遍","侧","寨","敢","彻","虑","斜","薄","庭","纳","弹","饲","伸","折","麦","湿","暗","荷","瓦","塞","床","筑","恶","户","访","塔","奇","透","梁","刀","旋","迹","卡","氯","遇","份","毒","泥","退","洗","摆","灰","彩","卖","耗","夏","择","忙","铜","献","硬","予","繁","圈","雪","函","亦","抽","篇","阵","阴","丁","尺","追","堆","雄","迎","泛","爸","楼","避","谋","吨","野","猪","旗","累","偏","典","馆","索","秦","脂","潮","爷","豆","忽","托","惊","塑","遗","愈","朱","替","纤","粗","倾","尚","痛","楚","谢","奋","购","磨","君","池","旁","碎","骨","监","捕","弟","暴","割","贯","殊","释","词","亡","壁","顿","宝","午","尘","闻","揭","炮","残","冬","桥","妇","警","综","招","吴","付","浮","遭","徐","您","摇","谷","赞","箱","隔","订","男","吹","园","纷","唐","败","宋","玻","巨","耕","坦","荣","闭","湾","键","凡","驻","锅","救","恩","剥","凝","碱","齿","截","炼","麻","纺","禁","废","盛","版","缓","净","睛","昌","婚","涉","筒","嘴","插","岸","朗","庄","街","藏","姑","贸","腐","奴","啦","惯","乘","伙","恢","匀","纱","扎","辩","耳","彪","臣","亿","璃","抵","脉","秀","萨","俄","网","舞","店","喷","纵","寸","汗","挂","洪","贺","闪","柬","爆","烯","津","稻","墙","软","勇","像","滚","厘","蒙","芳","肯","坡","柱","荡","腿","仪","旅","尾","轧","冰","贡","登","黎","削","钻","勒","逃","障","氨","郭","峰","币","港","伏","轨","亩","毕","擦","莫","刺","浪","秘","援","株","健","售","股","岛","甘","泡","睡","童","铸","汤","阀","休","汇","舍","牧","绕","炸","哲","磷","绩","朋","淡","尖","启","陷","柴","呈","徒","颜","泪","稍","忘","泵","蓝","拖","洞","授","镜","辛","壮","锋","贫","虚","弯","摩","泰","幼","廷","尊","窗","纲","弄","隶","疑","氏","宫","姐","震","瑞","怪","尤","琴","循","描","膜","违","夹","腰","缘","珠","穷","森","枝","竹","沟","催","绳","忆","邦","剩","幸","浆","栏","拥","牙","贮","礼","滤","钠","纹","罢","拍","咱","喊","袖","埃","勤","罚","焦","潜","伍","墨","欲","缝","姓","刊","饱","仿","奖","铝","鬼","丽","跨","默","挖","链","扫","喝","袋","炭","污","幕","诸","弧","励","梅","奶","洁","灾","舟","鉴","苯","讼","抱","毁","懂","寒","智","埔","寄","届","跃","渡","挑","丹","艰","贝","碰","拔","爹","戴","码","梦","芽","熔","赤","渔","哭","敬","颗","奔","铅","仲","虎","稀","妹","乏","珍","申","桌","遵","允","隆","螺","仓","魏","锐","晓","氮","兼","隐","碍","赫","拨","忠","肃","缸","牵","抢","博","巧","壳","兄","杜","讯","诚","碧","祥","柯","页","巡","矩","悲","灌","龄","伦","票","寻","桂","铺","圣","恐","恰","郑","趣","抬","荒","腾","贴","柔","滴","猛","阔","辆","妻","填","撤","储","签","闹","扰","紫","砂","递","戏","吊","陶","伐","喂","疗","瓶","婆","抚","臂","摸","忍","虾","蜡","邻","胸","巩","挤","偶","弃","槽","劲","乳","邓","吉","仁","烂","砖","租","乌","舰","伴","瓜","浅","丙","暂","燥","橡","柳","迷","暖","牌","秧","胆","详","簧","踏","瓷","谱","呆","宾","糊","洛","辉","愤","竞","隙","怒","粘","乃","绪","肩","籍","敏","涂","熙","皆","侦","悬","掘","享","纠","醒","狂","锁","淀","恨","牲","霸","爬","赏","逆","玩","陵","祝","秒","浙","貌","役","彼","悉","鸭","趋","凤","晨","畜","辈","秩","卵","署","梯","炎","滩","棋","驱","筛","峡","冒","啥","寿","译","浸","泉","帽","迟","硅","疆","贷","漏","稿","冠","嫩","胁","芯","牢","叛","蚀","奥","鸣","岭","羊","凭","串","塘","绘","酵","融","盆","锡","庙","筹","冻","辅","摄","袭","筋","拒","僚","旱","钾","鸟","漆","沈","眉","疏","添","棒","穗","硝","韩","逼","扭","侨","凉","挺","碗","栽","炒","杯","患","馏","劝","豪","辽","勃","鸿","旦","吏","拜","狗","埋","辊","掩","饮","搬","骂","辞","勾","扣","估","蒋","绒","雾","丈","朵","姆","拟","宇","辑","陕","雕","偿","蓄","崇","剪","倡","厅","咬","驶","薯","刷","斥","番","赋","奉","佛","浇","漫","曼","扇","钙","桃","扶","仔","返","俗","亏","腔","鞋","棱","覆","框","悄","叔","撞","骗","勘","旺","沸","孤","吐","孟","渠","屈","疾","妙","惜","仰","狠","胀","谐","抛","霉","桑","岗","嘛","衰","盗","渗","脏","赖","涌","甜","曹","阅","肌","哩","厉","烃","纬","毅","昨","伪","症","煮","叹","钉","搭","茎","笼","酷","偷","弓","锥","恒","杰","坑","鼻","翼","纶","叙","狱","逮","罐","络","棚","抑","膨","蔬","寺","骤","穆","冶","枯","册","尸","凸","绅","坯","牺","焰","轰","欣","晋","瘦","御","锭","锦","丧","旬","锻","垄","搜","扑","邀","亭","酯","迈","舒","脆","酶","闲","忧","酚","顽","羽","涨","卸","仗","陪","辟","惩","杭","姚","肚","捉","飘","漂","昆","欺","吾","郎","烷","汁","呵","饰","萧","雅","邮","迁","燕","撒","姻","赴","宴","烦","债","帐","斑","铃","旨","醇","董","饼","雏","姿","拌","傅","腹","妥","揉","贤","拆","歪","葡","胺","丢","浩","徽","昂","垫","挡","览","贪","慰","缴","汪","慌","冯","诺","姜","谊","凶","劣","诬","耀","昏","躺","盈","骑","乔","溪","丛","卢","抹","闷","咨","刮","驾","缆","悟","摘","铒","掷","颇","幻","柄","惠","惨","佳","仇","腊","窝","涤","剑","瞧","堡","泼","葱","罩","霍","捞","胎","苍","滨","俩","捅","湘","砍","霞","邵","萄","疯","淮","遂","熊","粪","烘","宿","档","戈","驳","嫂","裕","徙","箭","捐","肠","撑","晒","辨","殿","莲","摊","搅","酱","屏","疫","哀","蔡","堵","沫","皱","畅","叠","阁","莱","敲","辖","钩","痕","坝","巷","饿","祸","丘","玄","溜","曰","逻","彭","尝","卿","妨","艇","吞","韦","怨","矮","歇"]},function(e,t,r){"use strict";e.exports=["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"]},function(e,t){e.exports=["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","académie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acquérir","acronyme","acteur","actif","actuel","adepte","adéquat","adhésif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","aérer","aéronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agréable","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","algèbre","algue","aliéner","aliment","alléger","alliage","allouer","allumer","alourdir","alpaga","altesse","alvéole","amateur","ambigu","ambre","aménager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","anéantir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","apéritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","artériel","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","bannière","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","bélier","belote","bénéfice","berceau","berger","berline","bermuda","besace","besogne","bétail","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","brèche","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","caféine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","caméra","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","cédille","ceinture","céleste","cellule","cendrier","censurer","central","cercle","cérébral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","chéquier","chercher","cheval","chien","chiffre","chignon","chimère","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cinéma","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","cohésion","coiffer","coincer","colère","colibri","colline","colmater","colonel","combat","comédie","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","cortège","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","créature","créditer","crémeux","creuser","crevette","cribler","crier","cristal","critère","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuillère","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","débattre","débiter","déborder","débrider","débutant","décaler","décembre","déchirer","décider","déclarer","décorer","décrire","décupler","dédale","déductif","déesse","défensif","défiler","défrayer","dégager","dégivrer","déglutir","dégrafer","déjeuner","délice","déloger","demander","demeurer","démolir","dénicher","dénouer","dentelle","dénuder","départ","dépenser","déphaser","déplacer","déposer","déranger","dérober","désastre","descente","désert","désigner","désobéir","dessiner","destrier","détacher","détester","détourer","détresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","différer","digérer","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","éblouir","écarter","écharpe","échelle","éclairer","éclipse","éclore","écluse","école","économie","écorce","écouter","écraser","écrémer","écrivain","écrou","écume","écureuil","édifier","éduquer","effacer","effectif","effigie","effort","effrayer","effusion","égaliser","égarer","éjecter","élaborer","élargir","électron","élégant","éléphant","élève","éligible","élitisme","éloge","élucider","éluder","emballer","embellir","embryon","émeraude","émission","emmener","émotion","émouvoir","empereur","employer","emporter","emprise","émulsion","encadrer","enchère","enclave","encoche","endiguer","endosser","endroit","enduire","énergie","enfance","enfermer","enfouir","engager","engin","englober","énigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","énumérer","envahir","enviable","envoyer","enzyme","éolien","épaissir","épargne","épatant","épaule","épicerie","épidémie","épier","épilogue","épine","épisode","épitaphe","époque","épreuve","éprouver","épuisant","équerre","équipe","ériger","érosion","erreur","éruption","escalier","espadon","espèce","espiègle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","étagère","étaler","étanche","étatique","éteindre","étendoir","éternel","éthanol","éthique","ethnie","étirer","étoffer","étoile","étonnant","étourdir","étrange","étroit","étude","euphorie","évaluer","évasion","éventail","évidence","éviter","évolutif","évoquer","exact","exagérer","exaucer","exceller","excitant","exclusif","excuse","exécuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expédier","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","fébrile","féconder","fédérer","félin","femme","fémur","fendoir","féodal","fermer","féroce","ferveur","festival","feuille","feutre","février","fiasco","ficeler","fictif","fidèle","figure","filature","filetage","filière","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fléau","flèche","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fougère","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","frégate","freiner","frelon","frémir","frénésie","frère","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","géant","gélatine","gélule","gendarme","général","génie","genou","gentil","géologie","géomètre","géranium","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","gruyère","guépard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","hélium","hématome","herbe","hérisson","hermine","héron","hésiter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homogène","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygiène","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impérial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","inédit","ineptie","inexact","infini","infliger","informer","infusion","ingérer","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","irréel","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","juvénile","kayak","kimono","kiosque","label","labial","labourer","lacérer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","légal","léger","légume","lessive","lettre","levier","lexique","lézard","liasse","libérer","libre","licence","licorne","liège","lièvre","ligature","ligoter","ligue","limer","limite","limonade","limpide","linéaire","lingot","lionceau","liquide","lisière","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumière","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","maléfice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","matériel","matière","matraque","maudire","maussade","mauve","maximal","méchant","méconnu","médaille","médecin","méditer","méduse","meilleur","mélange","mélodie","membre","mémoire","menacer","mener","menhir","mensonge","mentor","mercredi","mérite","merle","messager","mesure","métal","météore","méthode","métier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","minéral","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","murène","murmure","muscle","muséum","musicien","mutation","muter","mutuel","myriade","myrtille","mystère","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","nébuleux","nectar","néfaste","négation","négliger","négocier","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","numéro","nuptial","nuque","nutritif","obéir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","océan","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","onéreux","onirique","opale","opaque","opérer","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","oxygène","ozone","paisible","palace","palmarès","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","pastèque","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pélican","pelle","pelouse","peluche","pendule","pénétrer","pénible","pensif","pénurie","pépite","péplum","perdrix","perforer","période","permuter","perplexe","persil","perte","peser","pétale","petit","pétrir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pièce","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","poésie","poète","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","pondérer","poney","portique","position","posséder","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","précieux","prédire","préfixe","prélude","prénom","présence","prétexte","prévoir","primitif","prince","prison","priver","problème","procéder","prodige","profond","progrès","proie","projeter","prologue","promener","propre","prospère","protéger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quiétude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","réactif","réagir","réaliser","réanimer","recevoir","réciter","réclamer","récolter","recruter","reculer","recycler","rédiger","redouter","refaire","réflexe","réformer","refrain","refuge","régalien","région","réglage","régulier","réitérer","rejeter","rejouer","relatif","relever","relief","remarque","remède","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","réserve","résineux","résoudre","respect","rester","résultat","rétablir","retenir","réticule","retomber","retracer","réunion","réussir","revanche","revivre","révolte","révulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivière","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","scélérat","scénario","sceptre","schéma","science","scinder","score","scrutin","sculpter","séance","sécable","sécher","secouer","sécréter","sédatif","séduire","seigneur","séjour","sélectif","semaine","sembler","semence","séminal","sénateur","sensible","sentence","séparer","séquence","serein","sergent","sérieux","serrure","sérum","service","sésame","sévir","sevrage","sextuple","sidéral","siècle","siéger","siffler","sigle","signal","silence","silicium","simple","sincère","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","spécial","sphère","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succès","sucre","suffixe","suggérer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","symétrie","synapse","syntaxe","système","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","témoin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","tétine","texte","thème","théorie","thérapie","thorax","tibia","tiède","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tolérant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","trèfle","tremper","trésor","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","végétal","véhicule","veinard","véloce","vendredi","vénérer","venger","venimeux","ventouse","verdure","vérin","vernir","verrou","verser","vertu","veston","vétéran","vétuste","vexant","vexer","viaduc","viande","victoire","vidange","vidéo","vignette","vigueur","vilain","village","vinaigre","violon","vipère","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","xénon","yacht","zèbre","zénith","zeste","zoologie"]},function(e,t,r){"use strict";e.exports=["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"]},function(e,t,r){"use strict";e.exports=["あいこくしん","あいさつ","あいだ","あおぞら","あかちゃん","あきる","あけがた","あける","あこがれる","あさい","あさひ","あしあと","あじわう","あずかる","あずき","あそぶ","あたえる","あたためる","あたりまえ","あたる","あつい","あつかう","あっしゅく","あつまり","あつめる","あてな","あてはまる","あひる","あぶら","あぶる","あふれる","あまい","あまど","あまやかす","あまり","あみもの","あめりか","あやまる","あゆむ","あらいぐま","あらし","あらすじ","あらためる","あらゆる","あらわす","ありがとう","あわせる","あわてる","あんい","あんがい","あんこ","あんぜん","あんてい","あんない","あんまり","いいだす","いおん","いがい","いがく","いきおい","いきなり","いきもの","いきる","いくじ","いくぶん","いけばな","いけん","いこう","いこく","いこつ","いさましい","いさん","いしき","いじゅう","いじょう","いじわる","いずみ","いずれ","いせい","いせえび","いせかい","いせき","いぜん","いそうろう","いそがしい","いだい","いだく","いたずら","いたみ","いたりあ","いちおう","いちじ","いちど","いちば","いちぶ","いちりゅう","いつか","いっしゅん","いっせい","いっそう","いったん","いっち","いってい","いっぽう","いてざ","いてん","いどう","いとこ","いない","いなか","いねむり","いのち","いのる","いはつ","いばる","いはん","いびき","いひん","いふく","いへん","いほう","いみん","いもうと","いもたれ","いもり","いやがる","いやす","いよかん","いよく","いらい","いらすと","いりぐち","いりょう","いれい","いれもの","いれる","いろえんぴつ","いわい","いわう","いわかん","いわば","いわゆる","いんげんまめ","いんさつ","いんしょう","いんよう","うえき","うえる","うおざ","うがい","うかぶ","うかべる","うきわ","うくらいな","うくれれ","うけたまわる","うけつけ","うけとる","うけもつ","うける","うごかす","うごく","うこん","うさぎ","うしなう","うしろがみ","うすい","うすぎ","うすぐらい","うすめる","うせつ","うちあわせ","うちがわ","うちき","うちゅう","うっかり","うつくしい","うったえる","うつる","うどん","うなぎ","うなじ","うなずく","うなる","うねる","うのう","うぶげ","うぶごえ","うまれる","うめる","うもう","うやまう","うよく","うらがえす","うらぐち","うらない","うりあげ","うりきれ","うるさい","うれしい","うれゆき","うれる","うろこ","うわき","うわさ","うんこう","うんちん","うんてん","うんどう","えいえん","えいが","えいきょう","えいご","えいせい","えいぶん","えいよう","えいわ","えおり","えがお","えがく","えきたい","えくせる","えしゃく","えすて","えつらん","えのぐ","えほうまき","えほん","えまき","えもじ","えもの","えらい","えらぶ","えりあ","えんえん","えんかい","えんぎ","えんげき","えんしゅう","えんぜつ","えんそく","えんちょう","えんとつ","おいかける","おいこす","おいしい","おいつく","おうえん","おうさま","おうじ","おうせつ","おうたい","おうふく","おうべい","おうよう","おえる","おおい","おおう","おおどおり","おおや","おおよそ","おかえり","おかず","おがむ","おかわり","おぎなう","おきる","おくさま","おくじょう","おくりがな","おくる","おくれる","おこす","おこなう","おこる","おさえる","おさない","おさめる","おしいれ","おしえる","おじぎ","おじさん","おしゃれ","おそらく","おそわる","おたがい","おたく","おだやか","おちつく","おっと","おつり","おでかけ","おとしもの","おとなしい","おどり","おどろかす","おばさん","おまいり","おめでとう","おもいで","おもう","おもたい","おもちゃ","おやつ","おやゆび","およぼす","おらんだ","おろす","おんがく","おんけい","おんしゃ","おんせん","おんだん","おんちゅう","おんどけい","かあつ","かいが","がいき","がいけん","がいこう","かいさつ","かいしゃ","かいすいよく","かいぜん","かいぞうど","かいつう","かいてん","かいとう","かいふく","がいへき","かいほう","かいよう","がいらい","かいわ","かえる","かおり","かかえる","かがく","かがし","かがみ","かくご","かくとく","かざる","がぞう","かたい","かたち","がちょう","がっきゅう","がっこう","がっさん","がっしょう","かなざわし","かのう","がはく","かぶか","かほう","かほご","かまう","かまぼこ","かめれおん","かゆい","かようび","からい","かるい","かろう","かわく","かわら","がんか","かんけい","かんこう","かんしゃ","かんそう","かんたん","かんち","がんばる","きあい","きあつ","きいろ","ぎいん","きうい","きうん","きえる","きおう","きおく","きおち","きおん","きかい","きかく","きかんしゃ","ききて","きくばり","きくらげ","きけんせい","きこう","きこえる","きこく","きさい","きさく","きさま","きさらぎ","ぎじかがく","ぎしき","ぎじたいけん","ぎじにってい","ぎじゅつしゃ","きすう","きせい","きせき","きせつ","きそう","きぞく","きぞん","きたえる","きちょう","きつえん","ぎっちり","きつつき","きつね","きてい","きどう","きどく","きない","きなが","きなこ","きぬごし","きねん","きのう","きのした","きはく","きびしい","きひん","きふく","きぶん","きぼう","きほん","きまる","きみつ","きむずかしい","きめる","きもだめし","きもち","きもの","きゃく","きやく","ぎゅうにく","きよう","きょうりゅう","きらい","きらく","きりん","きれい","きれつ","きろく","ぎろん","きわめる","ぎんいろ","きんかくじ","きんじょ","きんようび","ぐあい","くいず","くうかん","くうき","くうぐん","くうこう","ぐうせい","くうそう","ぐうたら","くうふく","くうぼ","くかん","くきょう","くげん","ぐこう","くさい","くさき","くさばな","くさる","くしゃみ","くしょう","くすのき","くすりゆび","くせげ","くせん","ぐたいてき","くださる","くたびれる","くちこみ","くちさき","くつした","ぐっすり","くつろぐ","くとうてん","くどく","くなん","くねくね","くのう","くふう","くみあわせ","くみたてる","くめる","くやくしょ","くらす","くらべる","くるま","くれる","くろう","くわしい","ぐんかん","ぐんしょく","ぐんたい","ぐんて","けあな","けいかく","けいけん","けいこ","けいさつ","げいじゅつ","けいたい","げいのうじん","けいれき","けいろ","けおとす","けおりもの","げきか","げきげん","げきだん","げきちん","げきとつ","げきは","げきやく","げこう","げこくじょう","げざい","けさき","げざん","けしき","けしごむ","けしょう","げすと","けたば","けちゃっぷ","けちらす","けつあつ","けつい","けつえき","けっこん","けつじょ","けっせき","けってい","けつまつ","げつようび","げつれい","けつろん","げどく","けとばす","けとる","けなげ","けなす","けなみ","けぬき","げねつ","けねん","けはい","げひん","けぶかい","げぼく","けまり","けみかる","けむし","けむり","けもの","けらい","けろけろ","けわしい","けんい","けんえつ","けんお","けんか","げんき","けんげん","けんこう","けんさく","けんしゅう","けんすう","げんそう","けんちく","けんてい","けんとう","けんない","けんにん","げんぶつ","けんま","けんみん","けんめい","けんらん","けんり","こあくま","こいぬ","こいびと","ごうい","こうえん","こうおん","こうかん","ごうきゅう","ごうけい","こうこう","こうさい","こうじ","こうすい","ごうせい","こうそく","こうたい","こうちゃ","こうつう","こうてい","こうどう","こうない","こうはい","ごうほう","ごうまん","こうもく","こうりつ","こえる","こおり","ごかい","ごがつ","ごかん","こくご","こくさい","こくとう","こくない","こくはく","こぐま","こけい","こける","ここのか","こころ","こさめ","こしつ","こすう","こせい","こせき","こぜん","こそだて","こたい","こたえる","こたつ","こちょう","こっか","こつこつ","こつばん","こつぶ","こてい","こてん","ことがら","ことし","ことば","ことり","こなごな","こねこね","このまま","このみ","このよ","ごはん","こひつじ","こふう","こふん","こぼれる","ごまあぶら","こまかい","ごますり","こまつな","こまる","こむぎこ","こもじ","こもち","こもの","こもん","こやく","こやま","こゆう","こゆび","こよい","こよう","こりる","これくしょん","ころっけ","こわもて","こわれる","こんいん","こんかい","こんき","こんしゅう","こんすい","こんだて","こんとん","こんなん","こんびに","こんぽん","こんまけ","こんや","こんれい","こんわく","ざいえき","さいかい","さいきん","ざいげん","ざいこ","さいしょ","さいせい","ざいたく","ざいちゅう","さいてき","ざいりょう","さうな","さかいし","さがす","さかな","さかみち","さがる","さぎょう","さくし","さくひん","さくら","さこく","さこつ","さずかる","ざせき","さたん","さつえい","ざつおん","ざっか","ざつがく","さっきょく","ざっし","さつじん","ざっそう","さつたば","さつまいも","さてい","さといも","さとう","さとおや","さとし","さとる","さのう","さばく","さびしい","さべつ","さほう","さほど","さます","さみしい","さみだれ","さむけ","さめる","さやえんどう","さゆう","さよう","さよく","さらだ","ざるそば","さわやか","さわる","さんいん","さんか","さんきゃく","さんこう","さんさい","ざんしょ","さんすう","さんせい","さんそ","さんち","さんま","さんみ","さんらん","しあい","しあげ","しあさって","しあわせ","しいく","しいん","しうち","しえい","しおけ","しかい","しかく","じかん","しごと","しすう","じだい","したうけ","したぎ","したて","したみ","しちょう","しちりん","しっかり","しつじ","しつもん","してい","してき","してつ","じてん","じどう","しなぎれ","しなもの","しなん","しねま","しねん","しのぐ","しのぶ","しはい","しばかり","しはつ","しはらい","しはん","しひょう","しふく","じぶん","しへい","しほう","しほん","しまう","しまる","しみん","しむける","じむしょ","しめい","しめる","しもん","しゃいん","しゃうん","しゃおん","じゃがいも","しやくしょ","しゃくほう","しゃけん","しゃこ","しゃざい","しゃしん","しゃせん","しゃそう","しゃたい","しゃちょう","しゃっきん","じゃま","しゃりん","しゃれい","じゆう","じゅうしょ","しゅくはく","じゅしん","しゅっせき","しゅみ","しゅらば","じゅんばん","しょうかい","しょくたく","しょっけん","しょどう","しょもつ","しらせる","しらべる","しんか","しんこう","じんじゃ","しんせいじ","しんちく","しんりん","すあげ","すあし","すあな","ずあん","すいえい","すいか","すいとう","ずいぶん","すいようび","すうがく","すうじつ","すうせん","すおどり","すきま","すくう","すくない","すける","すごい","すこし","ずさん","すずしい","すすむ","すすめる","すっかり","ずっしり","ずっと","すてき","すてる","すねる","すのこ","すはだ","すばらしい","ずひょう","ずぶぬれ","すぶり","すふれ","すべて","すべる","ずほう","すぼん","すまい","すめし","すもう","すやき","すらすら","するめ","すれちがう","すろっと","すわる","すんぜん","すんぽう","せあぶら","せいかつ","せいげん","せいじ","せいよう","せおう","せかいかん","せきにん","せきむ","せきゆ","せきらんうん","せけん","せこう","せすじ","せたい","せたけ","せっかく","せっきゃく","ぜっく","せっけん","せっこつ","せっさたくま","せつぞく","せつだん","せつでん","せっぱん","せつび","せつぶん","せつめい","せつりつ","せなか","せのび","せはば","せびろ","せぼね","せまい","せまる","せめる","せもたれ","せりふ","ぜんあく","せんい","せんえい","せんか","せんきょ","せんく","せんげん","ぜんご","せんさい","せんしゅ","せんすい","せんせい","せんぞ","せんたく","せんちょう","せんてい","せんとう","せんぬき","せんねん","せんぱい","ぜんぶ","ぜんぽう","せんむ","せんめんじょ","せんもん","せんやく","せんゆう","せんよう","ぜんら","ぜんりゃく","せんれい","せんろ","そあく","そいとげる","そいね","そうがんきょう","そうき","そうご","そうしん","そうだん","そうなん","そうび","そうめん","そうり","そえもの","そえん","そがい","そげき","そこう","そこそこ","そざい","そしな","そせい","そせん","そそぐ","そだてる","そつう","そつえん","そっかん","そつぎょう","そっけつ","そっこう","そっせん","そっと","そとがわ","そとづら","そなえる","そなた","そふぼ","そぼく","そぼろ","そまつ","そまる","そむく","そむりえ","そめる","そもそも","そよかぜ","そらまめ","そろう","そんかい","そんけい","そんざい","そんしつ","そんぞく","そんちょう","ぞんび","ぞんぶん","そんみん","たあい","たいいん","たいうん","たいえき","たいおう","だいがく","たいき","たいぐう","たいけん","たいこ","たいざい","だいじょうぶ","だいすき","たいせつ","たいそう","だいたい","たいちょう","たいてい","だいどころ","たいない","たいねつ","たいのう","たいはん","だいひょう","たいふう","たいへん","たいほ","たいまつばな","たいみんぐ","たいむ","たいめん","たいやき","たいよう","たいら","たいりょく","たいる","たいわん","たうえ","たえる","たおす","たおる","たおれる","たかい","たかね","たきび","たくさん","たこく","たこやき","たさい","たしざん","だじゃれ","たすける","たずさわる","たそがれ","たたかう","たたく","ただしい","たたみ","たちばな","だっかい","だっきゃく","だっこ","だっしゅつ","だったい","たてる","たとえる","たなばた","たにん","たぬき","たのしみ","たはつ","たぶん","たべる","たぼう","たまご","たまる","だむる","ためいき","ためす","ためる","たもつ","たやすい","たよる","たらす","たりきほんがん","たりょう","たりる","たると","たれる","たれんと","たろっと","たわむれる","だんあつ","たんい","たんおん","たんか","たんき","たんけん","たんご","たんさん","たんじょうび","だんせい","たんそく","たんたい","だんち","たんてい","たんとう","だんな","たんにん","だんねつ","たんのう","たんぴん","だんぼう","たんまつ","たんめい","だんれつ","だんろ","だんわ","ちあい","ちあん","ちいき","ちいさい","ちえん","ちかい","ちから","ちきゅう","ちきん","ちけいず","ちけん","ちこく","ちさい","ちしき","ちしりょう","ちせい","ちそう","ちたい","ちたん","ちちおや","ちつじょ","ちてき","ちてん","ちぬき","ちぬり","ちのう","ちひょう","ちへいせん","ちほう","ちまた","ちみつ","ちみどろ","ちめいど","ちゃんこなべ","ちゅうい","ちゆりょく","ちょうし","ちょさくけん","ちらし","ちらみ","ちりがみ","ちりょう","ちるど","ちわわ","ちんたい","ちんもく","ついか","ついたち","つうか","つうじょう","つうはん","つうわ","つかう","つかれる","つくね","つくる","つけね","つける","つごう","つたえる","つづく","つつじ","つつむ","つとめる","つながる","つなみ","つねづね","つのる","つぶす","つまらない","つまる","つみき","つめたい","つもり","つもる","つよい","つるぼ","つるみく","つわもの","つわり","てあし","てあて","てあみ","ていおん","ていか","ていき","ていけい","ていこく","ていさつ","ていし","ていせい","ていたい","ていど","ていねい","ていひょう","ていへん","ていぼう","てうち","ておくれ","てきとう","てくび","でこぼこ","てさぎょう","てさげ","てすり","てそう","てちがい","てちょう","てつがく","てつづき","でっぱ","てつぼう","てつや","でぬかえ","てぬき","てぬぐい","てのひら","てはい","てぶくろ","てふだ","てほどき","てほん","てまえ","てまきずし","てみじか","てみやげ","てらす","てれび","てわけ","てわたし","でんあつ","てんいん","てんかい","てんき","てんぐ","てんけん","てんごく","てんさい","てんし","てんすう","でんち","てんてき","てんとう","てんない","てんぷら","てんぼうだい","てんめつ","てんらんかい","でんりょく","でんわ","どあい","といれ","どうかん","とうきゅう","どうぐ","とうし","とうむぎ","とおい","とおか","とおく","とおす","とおる","とかい","とかす","ときおり","ときどき","とくい","とくしゅう","とくてん","とくに","とくべつ","とけい","とける","とこや","とさか","としょかん","とそう","とたん","とちゅう","とっきゅう","とっくん","とつぜん","とつにゅう","とどける","ととのえる","とない","となえる","となり","とのさま","とばす","どぶがわ","とほう","とまる","とめる","ともだち","ともる","どようび","とらえる","とんかつ","どんぶり","ないかく","ないこう","ないしょ","ないす","ないせん","ないそう","なおす","ながい","なくす","なげる","なこうど","なさけ","なたでここ","なっとう","なつやすみ","ななおし","なにごと","なにもの","なにわ","なのか","なふだ","なまいき","なまえ","なまみ","なみだ","なめらか","なめる","なやむ","ならう","ならび","ならぶ","なれる","なわとび","なわばり","にあう","にいがた","にうけ","におい","にかい","にがて","にきび","にくしみ","にくまん","にげる","にさんかたんそ","にしき","にせもの","にちじょう","にちようび","にっか","にっき","にっけい","にっこう","にっさん","にっしょく","にっすう","にっせき","にってい","になう","にほん","にまめ","にもつ","にやり","にゅういん","にりんしゃ","にわとり","にんい","にんか","にんき","にんげん","にんしき","にんずう","にんそう","にんたい","にんち","にんてい","にんにく","にんぷ","にんまり","にんむ","にんめい","にんよう","ぬいくぎ","ぬかす","ぬぐいとる","ぬぐう","ぬくもり","ぬすむ","ぬまえび","ぬめり","ぬらす","ぬんちゃく","ねあげ","ねいき","ねいる","ねいろ","ねぐせ","ねくたい","ねくら","ねこぜ","ねこむ","ねさげ","ねすごす","ねそべる","ねだん","ねつい","ねっしん","ねつぞう","ねったいぎょ","ねぶそく","ねふだ","ねぼう","ねほりはほり","ねまき","ねまわし","ねみみ","ねむい","ねむたい","ねもと","ねらう","ねわざ","ねんいり","ねんおし","ねんかん","ねんきん","ねんぐ","ねんざ","ねんし","ねんちゃく","ねんど","ねんぴ","ねんぶつ","ねんまつ","ねんりょう","ねんれい","のいず","のおづま","のがす","のきなみ","のこぎり","のこす","のこる","のせる","のぞく","のぞむ","のたまう","のちほど","のっく","のばす","のはら","のべる","のぼる","のみもの","のやま","のらいぬ","のらねこ","のりもの","のりゆき","のれん","のんき","ばあい","はあく","ばあさん","ばいか","ばいく","はいけん","はいご","はいしん","はいすい","はいせん","はいそう","はいち","ばいばい","はいれつ","はえる","はおる","はかい","ばかり","はかる","はくしゅ","はけん","はこぶ","はさみ","はさん","はしご","ばしょ","はしる","はせる","ぱそこん","はそん","はたん","はちみつ","はつおん","はっかく","はづき","はっきり","はっくつ","はっけん","はっこう","はっさん","はっしん","はったつ","はっちゅう","はってん","はっぴょう","はっぽう","はなす","はなび","はにかむ","はぶらし","はみがき","はむかう","はめつ","はやい","はやし","はらう","はろうぃん","はわい","はんい","はんえい","はんおん","はんかく","はんきょう","ばんぐみ","はんこ","はんしゃ","はんすう","はんだん","ぱんち","ぱんつ","はんてい","はんとし","はんのう","はんぱ","はんぶん","はんぺん","はんぼうき","はんめい","はんらん","はんろん","ひいき","ひうん","ひえる","ひかく","ひかり","ひかる","ひかん","ひくい","ひけつ","ひこうき","ひこく","ひさい","ひさしぶり","ひさん","びじゅつかん","ひしょ","ひそか","ひそむ","ひたむき","ひだり","ひたる","ひつぎ","ひっこし","ひっし","ひつじゅひん","ひっす","ひつぜん","ぴったり","ぴっちり","ひつよう","ひてい","ひとごみ","ひなまつり","ひなん","ひねる","ひはん","ひびく","ひひょう","ひほう","ひまわり","ひまん","ひみつ","ひめい","ひめじし","ひやけ","ひやす","ひよう","びょうき","ひらがな","ひらく","ひりつ","ひりょう","ひるま","ひるやすみ","ひれい","ひろい","ひろう","ひろき","ひろゆき","ひんかく","ひんけつ","ひんこん","ひんしゅ","ひんそう","ぴんち","ひんぱん","びんぼう","ふあん","ふいうち","ふうけい","ふうせん","ぷうたろう","ふうとう","ふうふ","ふえる","ふおん","ふかい","ふきん","ふくざつ","ふくぶくろ","ふこう","ふさい","ふしぎ","ふじみ","ふすま","ふせい","ふせぐ","ふそく","ぶたにく","ふたん","ふちょう","ふつう","ふつか","ふっかつ","ふっき","ふっこく","ぶどう","ふとる","ふとん","ふのう","ふはい","ふひょう","ふへん","ふまん","ふみん","ふめつ","ふめん","ふよう","ふりこ","ふりる","ふるい","ふんいき","ぶんがく","ぶんぐ","ふんしつ","ぶんせき","ふんそう","ぶんぽう","へいあん","へいおん","へいがい","へいき","へいげん","へいこう","へいさ","へいしゃ","へいせつ","へいそ","へいたく","へいてん","へいねつ","へいわ","へきが","へこむ","べにいろ","べにしょうが","へらす","へんかん","べんきょう","べんごし","へんさい","へんたい","べんり","ほあん","ほいく","ぼうぎょ","ほうこく","ほうそう","ほうほう","ほうもん","ほうりつ","ほえる","ほおん","ほかん","ほきょう","ぼきん","ほくろ","ほけつ","ほけん","ほこう","ほこる","ほしい","ほしつ","ほしゅ","ほしょう","ほせい","ほそい","ほそく","ほたて","ほたる","ぽちぶくろ","ほっきょく","ほっさ","ほったん","ほとんど","ほめる","ほんい","ほんき","ほんけ","ほんしつ","ほんやく","まいにち","まかい","まかせる","まがる","まける","まこと","まさつ","まじめ","ますく","まぜる","まつり","まとめ","まなぶ","まぬけ","まねく","まほう","まもる","まゆげ","まよう","まろやか","まわす","まわり","まわる","まんが","まんきつ","まんぞく","まんなか","みいら","みうち","みえる","みがく","みかた","みかん","みけん","みこん","みじかい","みすい","みすえる","みせる","みっか","みつかる","みつける","みてい","みとめる","みなと","みなみかさい","みねらる","みのう","みのがす","みほん","みもと","みやげ","みらい","みりょく","みわく","みんか","みんぞく","むいか","むえき","むえん","むかい","むかう","むかえ","むかし","むぎちゃ","むける","むげん","むさぼる","むしあつい","むしば","むじゅん","むしろ","むすう","むすこ","むすぶ","むすめ","むせる","むせん","むちゅう","むなしい","むのう","むやみ","むよう","むらさき","むりょう","むろん","めいあん","めいうん","めいえん","めいかく","めいきょく","めいさい","めいし","めいそう","めいぶつ","めいれい","めいわく","めぐまれる","めざす","めした","めずらしい","めだつ","めまい","めやす","めんきょ","めんせき","めんどう","もうしあげる","もうどうけん","もえる","もくし","もくてき","もくようび","もちろん","もどる","もらう","もんく","もんだい","やおや","やける","やさい","やさしい","やすい","やすたろう","やすみ","やせる","やそう","やたい","やちん","やっと","やっぱり","やぶる","やめる","ややこしい","やよい","やわらかい","ゆうき","ゆうびんきょく","ゆうべ","ゆうめい","ゆけつ","ゆしゅつ","ゆせん","ゆそう","ゆたか","ゆちゃく","ゆでる","ゆにゅう","ゆびわ","ゆらい","ゆれる","ようい","ようか","ようきゅう","ようじ","ようす","ようちえん","よかぜ","よかん","よきん","よくせい","よくぼう","よけい","よごれる","よさん","よしゅう","よそう","よそく","よっか","よてい","よどがわく","よねつ","よやく","よゆう","よろこぶ","よろしい","らいう","らくがき","らくご","らくさつ","らくだ","らしんばん","らせん","らぞく","らたい","らっか","られつ","りえき","りかい","りきさく","りきせつ","りくぐん","りくつ","りけん","りこう","りせい","りそう","りそく","りてん","りねん","りゆう","りゅうがく","りよう","りょうり","りょかん","りょくちゃ","りょこう","りりく","りれき","りろん","りんご","るいけい","るいさい","るいじ","るいせき","るすばん","るりがわら","れいかん","れいぎ","れいせい","れいぞうこ","れいとう","れいぼう","れきし","れきだい","れんあい","れんけい","れんこん","れんさい","れんしゅう","れんぞく","れんらく","ろうか","ろうご","ろうじん","ろうそく","ろくが","ろこつ","ろじうら","ろしゅつ","ろせん","ろてん","ろめん","ろれつ","ろんぎ","ろんぱ","ろんぶん","ろんり","わかす","わかめ","わかやま","わかれる","わしつ","わじまし","わすれもの","わらう","われる"]},function(e,t,r){"use strict";e.exports=["ábaco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","acción","aceite","acelga","acento","aceptar","ácido","aclarar","acné","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","aéreo","afectar","afición","afinar","afirmar","ágil","agitar","agonía","agosto","agotar","agregar","agrio","agua","agudo","águila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacrán","alambre","alarma","alba","álbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodón","aliado","aliento","alivio","alma","almeja","almíbar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","ámbar","ámbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","andén","anemia","ángulo","anillo","ánimo","anís","anotar","antena","antiguo","antojo","anual","anular","anuncio","añadir","añejo","año","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","araña","arar","árbitro","árbol","arbusto","archivo","arco","arder","ardilla","arduo","área","árido","aries","armonía","arnés","aroma","arpa","arpón","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","áspero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","ático","atleta","átomo","atraer","atroz","atún","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avión","aviso","ayer","ayuda","ayuno","azafrán","azar","azote","azúcar","azufre","azul","baba","babor","bache","bahía","baile","bajar","balanza","balcón","balde","bambú","banco","banda","baño","barba","barco","barniz","barro","báscula","bastón","basura","batalla","batería","batir","batuta","baúl","bazar","bebé","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","bonsái","borde","borrar","bosque","bote","botín","bóveda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufón","búho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzón","caballo","cabeza","cabina","cabra","cacao","cadáver","cadena","caer","café","caída","caimán","caja","cajón","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","cáncer","candil","canela","canguro","canica","canto","caña","cañón","caoba","caos","capaz","capitán","capote","captar","capucha","cara","carbón","cárcel","careta","carga","cariño","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","célebre","celoso","célula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","césped","cetro","chacal","chaleco","champú","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclón","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","ciprés","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","clínica","cobre","cocción","cochino","cocina","coco","código","codo","cofre","coger","cohete","cojín","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","cómodo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazón","corbata","corcho","cordón","corona","correr","coser","cosmos","costa","cráneo","cráter","crear","crecer","creído","crema","cría","crimen","cripta","crisis","cromo","crónica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupón","cúpula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","dátil","deber","débil","década","decir","dedo","defensa","definir","dejar","delfín","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvío","detalle","detener","deuda","día","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difícil","digno","dilema","diluir","dinero","directo","dirigir","disco","diseño","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","dragón","droga","ducha","duda","duelo","dueño","dulce","dúo","duque","durar","dureza","duro","ébano","ebrio","echar","eco","ecuador","edad","edición","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","élite","elixir","elogio","eludir","embudo","emitir","emoción","empate","empeño","empleo","empresa","enano","encargo","enchufe","encía","enemigo","enero","enfado","enfermo","engaño","enigma","enlace","enorme","enredo","ensayo","enseñar","entero","entrar","envase","envío","época","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espía","esposa","espuma","esquí","estar","este","estilo","estufa","etapa","eterno","ética","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","éxito","experto","explicar","exponer","extremo","fábrica","fábula","fachada","fácil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","faraón","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fértil","fervor","festín","fiable","fianza","fiar","fibra","ficción","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","flúor","fobia","foca","fogata","fogón","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","frágil","franja","frase","fraude","freír","freno","fresa","frío","frito","fruta","fuego","fuente","fuerza","fuga","fumar","función","funda","furgón","furia","fusil","fútbol","futuro","gacela","gafas","gaita","gajo","gala","galería","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavilán","gemelo","gemir","gen","género","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","gráfico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","grúa","grueso","grumo","grupo","guante","guapo","guardia","guerra","guía","guiño","guion","guiso","guitarra","gusano","gustar","haber","hábil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazaña","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","héroe","hervir","hielo","hierro","hígado","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","húmedo","humilde","humo","hundir","huracán","hurto","icono","ideal","idioma","ídolo","iglesia","iglú","igual","ilegal","ilusión","imagen","imán","imitar","impar","imperio","imponer","impulso","incapaz","índice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","interés","íntimo","intuir","inútil","invierno","ira","iris","ironía","isla","islote","jabalí","jabón","jamón","jarabe","jardín","jarra","jaula","jazmín","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","júpiter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladrón","lagarto","lágrima","laguna","laico","lamer","lámina","lámpara","lana","lancha","langosta","lanza","lápiz","largo","larva","lástima","lata","látex","latir","laurel","lavar","lazo","leal","lección","leche","lector","leer","legión","legumbre","lejano","lengua","lento","leña","león","leopardo","lesión","letal","letra","leve","leyenda","libertad","libro","licor","líder","lidiar","lienzo","liga","ligero","lima","límite","limón","limpio","lince","lindo","línea","lingote","lino","linterna","líquido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","loción","loco","locura","lógica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","maíz","maldad","maleta","malla","malo","mamá","mambo","mamut","manco","mando","manejar","manga","maniquí","manjar","mano","manso","manta","mañana","mapa","máquina","mar","marco","marea","marfil","margen","marido","mármol","marrón","martes","marzo","masa","máscara","masivo","matar","materia","matiz","matriz","máximo","mayor","mazorca","mecha","medalla","medio","médula","mejilla","mejor","melena","melón","memoria","menor","mensaje","mente","menú","mercado","merengue","mérito","mes","mesón","meta","meter","método","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millón","mimo","mina","minero","mínimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","moción","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","moño","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","móvil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","muñeca","mural","muro","músculo","museo","musgo","música","muslo","nácar","nación","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","náusea","naval","nave","navidad","necio","néctar","negar","negocio","negro","neón","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","niñez","niño","nítido","nivel","nobleza","noche","nómina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","núcleo","nudillo","nudo","nuera","nueve","nuez","nulo","número","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","océano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oído","oír","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opción","ópera","opinar","oponer","optar","óptica","opuesto","oración","orador","oral","órbita","orca","orden","oreja","órgano","orgía","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadía","oscuro","osezno","oso","ostra","otoño","otro","oveja","óvulo","óxido","oxígeno","oyente","ozono","pacto","padre","paella","página","pago","país","pájaro","palabra","palco","paleta","pálido","palma","paloma","palpar","pan","panal","pánico","pantera","pañuelo","papá","papel","papilla","paquete","parar","parcela","pared","parir","paro","párpado","parque","párrafo","parte","pasar","paseo","pasión","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peatón","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldaño","pelea","peligro","pellejo","pelo","peluca","pena","pensar","peñón","peón","peor","pepino","pequeño","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pésimo","pestaña","pétalo","petróleo","pez","pezuña","picar","pichón","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","piña","piojo","pipa","pirata","pisar","piscina","piso","pista","pitón","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesía","poeta","polen","policía","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porción","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","príncipe","prisión","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","próximo","prueba","público","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmón","pulpo","pulso","puma","punto","puñal","puño","pupa","pupila","puré","quedar","queja","quemar","querer","queso","quieto","química","quince","quitar","rábano","rabia","rabo","ración","radical","raíz","rama","rampa","rancho","rango","rapaz","rápido","rapto","rasgo","raspa","rato","rayo","raza","razón","reacción","realidad","rebaño","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refrán","refugio","regalo","regir","regla","regreso","rehén","reino","reír","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","revés","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","rígido","rigor","rincón","riñón","río","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","rubí","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sábado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmón","salón","salsa","salto","salud","salvar","samba","sanción","sandía","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sartén","sastre","satán","sauna","saxofón","sección","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","señal","señor","separar","sepia","sequía","ser","serie","sermón","servir","sesenta","sesión","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","sílaba","silbar","silencio","silla","símbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","sólido","soltar","solución","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","sostén","sótano","suave","subir","suceso","sudor","suegra","suelo","sueño","suerte","sufrir","sujeto","sultán","sumar","superar","suplir","suponer","supremo","sur","surco","sureño","surgir","susto","sutil","tabaco","tabique","tabla","tabú","taco","tacto","tajo","talar","talco","talento","talla","talón","tamaño","tambor","tango","tanque","tapa","tapete","tapia","tapón","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazón","teatro","techo","tecla","técnica","tejado","tejer","tejido","tela","teléfono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teoría","terapia","terco","término","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburón","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","tímido","timo","tinta","tío","típico","tipo","tira","tirón","titán","títere","título","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","tórax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","tóxico","trabajo","tractor","traer","tráfico","trago","traje","tramo","trance","trato","trauma","trazar","trébol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tubería","tubo","tuerto","tumba","tumor","túnel","túnica","turbina","turismo","turno","tutor","ubicar","úlcera","umbral","unidad","unir","universo","uno","untar","uña","urbano","urbe","urgente","urna","usar","usuario","útil","utopía","uva","vaca","vacío","vacuna","vagar","vago","vaina","vajilla","vale","válido","valle","valor","válvula","vampiro","vara","variar","varón","vaso","vecino","vector","vehículo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vía","viaje","vibrar","vicio","víctima","vida","vídeo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","viñedo","violín","viral","virgo","virtud","visor","víspera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volcán","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"]},function(e,t,r){e.exports=r(167)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.PublicKey,o=i.PrivateKey,a=i.crypto.Hash,s=i.util.preconditions,c=r(168),u=r(169),f=r(80),h=f.ModeOfOperation.cbc,l=function(){};l.encrypt=function(e,r,i){s.checkArgument(e),s.checkArgument(r),s.checkArgument(i),s.checkArgument(16===r.length,"keybuf length must be 16"),s.checkArgument(16===i.length,"ivbuf length must be 16"),e=f.padding.pkcs7.pad(e);var n=new h(r,i).encrypt(e);return t.from(n)},l.decrypt=function(e,r,i){s.checkArgument(e),s.checkArgument(r),s.checkArgument(i),s.checkArgument(16===r.length,"keybuf length must be 16"),s.checkArgument(16===i.length,"ivbuf length must be 16");var n=new h(r,i).decrypt(e);return t.from(f.padding.pkcs7.strip(n))};var d=function e(t,r="BIE1"){if("BIE1"!==r)throw new u.UnsupportAlgorithm(r);if(!(this instanceof e))return new e(t,r);this._privateKey=new i.PrivateKey,this.opts=t||{},this.opts.ephemeralKey=!0};d.prototype.privateKey=function(e){return s.checkArgument(o.isValid(e),"no private key provided"),this._privateKey=o(e.toHex())||null,this.opts.ephemeralKey=!1,this},d.prototype.publicKey=function(e){return s.checkArgument(n.isValid(e),"no public key provided"),this._publicKey=n(e.toString())||null,null!=this._publicKey&&(this.opts.fixedPublicKey=!0),this};var p=function(e,t){var r="_"+e;Object.defineProperty(d.prototype,e,{configurable:!1,enumerable:!0,get:function(){this[r];return this[r]=t.apply(this)}})};p("Rbuf",(function(){return this._privateKey.publicKey.toDER(!0)})),p("ivkEkM",(function(){var e=this._privateKey.bn,t=this._publicKey.point.mul(e),r=n(t).toBuffer();return a.sha512(r)})),p("iv",(function(){return this.ivkEkM.slice(0,16)})),p("kE",(function(){return this.ivkEkM.slice(16,32)})),p("kM",(function(){return this.ivkEkM.slice(32,64)})),d.prototype.encrypt=function(e){t.isBuffer(e)||(e=t.from(e));var r,i=l.encrypt(e,this.kE,this.iv),n=t.from("BIE1");r=this.opts.noKey&&!this.opts.ephemeralKey?t.concat([n,i]):t.concat([n,this.Rbuf,i]);var o=a.sha256hmac(r,this.kM);return this.opts.shortTag&&(o=o.slice(0,4)),t.concat([r,o])},d.prototype.decrypt=function(e){s.checkArgument(t.isBuffer(e),"ciphetext must be a buffer");var r,i=32,o=4;if(this.opts.shortTag&&(i=4),!e.slice(0,4).equals(t.from("BIE1")))throw new u.DecryptionError("Invalid Magic");this.opts.noKey||(r=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=n.fromDER(r),o=37);var c=e.slice(o,e.length-i),f=e.slice(e.length-i,e.length),h=a.sha256hmac(e.slice(0,e.length-i),this.kM);if(this.opts.shortTag&&(h=h.slice(0,4)),!f.equals(h))throw new u.DecryptionError("Invalid checksum");return l.decrypt(c,this.kE,this.iv)},d.bitcoreECIES=c,e.exports=d}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.PublicKey,o=i.crypto.Hash,a=i.util.preconditions,s=r(80),c=s.ModeOfOperation.cbc,u=i.crypto.Random,f=function(){};f.encrypt=function(e,r,i){a.checkArgument(e),a.checkArgument(r),a.checkArgument(i),i=i||u.getRandomBuffer(16),e=s.padding.pkcs7.pad(e);var n=new c(r,i).encrypt(e);return t.concat([i,n])},f.decrypt=function(e,r){a.checkArgument(e),a.checkArgument(r);var i=e.slice(0,16),n=e.slice(16),o=new c(r,i).decrypt(n);return o=s.padding.pkcs7.strip(o),t.from(o)};var h=function e(t){if(!(this instanceof e))return new e;this.opts=t||{}};h.prototype.privateKey=function(e){return a.checkArgument(e,"no private key provided"),this._privateKey=e||null,this},h.prototype.publicKey=function(e){return a.checkArgument(e,"no public key provided"),this._publicKey=e||null,this};var l=function(e,t){var r="_"+e;Object.defineProperty(h.prototype,e,{configurable:!1,enumerable:!0,get:function(){var e=this[r];return e||(e=this[r]=t.apply(this)),e}})};l("Rbuf",(function(){return this._privateKey.publicKey.toDER(!0)})),l("kEkM",(function(){var e=this._privateKey.bn,t=this._publicKey.point.mul(e).getX().toBuffer({size:32});return o.sha512(t)})),l("kE",(function(){return this.kEkM.slice(0,32)})),l("kM",(function(){return this.kEkM.slice(32,64)})),h.prototype.encrypt=function(e,r){t.isBuffer(e)||(e=t.from(e)),void 0===r&&(r=o.sha256hmac(e,this._privateKey.toBuffer()).slice(0,16));var i=f.encrypt(e,this.kE,r),n=o.sha256hmac(i,this.kM);return this.opts.shortTag&&(n=n.slice(0,4)),this.opts.noKey?t.concat([i,n]):t.concat([this.Rbuf,i,n])},h.prototype.decrypt=function(e){a.checkArgument(e);var t=0,r=32;if(this.opts.shortTag&&(r=4),!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=n.fromDER(i),t+=i.length}var s=e.slice(t,e.length-r),c=e.slice(e.length-r,e.length),u=o.sha256hmac(s,this.kM);this.opts.shortTag&&(u=u.slice(0,4));for(var h=!0,l=0;l<c.length;l++)h&=c[l]===u[l];if(!h)throw new Error("Invalid checksum");return f.decrypt(s,this.kE)},e.exports=h}).call(this,r(0).Buffer)},function(e,t,r){"use strict";e.exports=r(1).errors.extend({name:"ECIES",message:"Internal Error on bsv-ecies Module {0}",errors:[{name:"DecryptionError",message:"Invalid Message: {0}"},{name:"UnsupportAlgorithm",message:"Unsupport Algorithm: {0}"}]})},function(e,t,r){"use strict";var i=r(1),n={Covenant:r(171),Preimage:r(17),SIGHASH:r(172),Builder:r(173),UTXOGenerator:r(174),ScriptTester:r(175),CovenantBuilder:r(81).CovenantBuilder,CovenantTemplates:r(81).CovenantTemplates,OpcodeMap:r(82),ScriptUtils:r(176),StackExaminer:r(177),ScriptInterpreter:r(178),createCovenant:function(e,t){return new n.Covenant(e,t)},extractPreimage:function(e,t){return new n.Preimage(e,t)},analyzeSIGHASH:function(e){return new n.SIGHASH(e)},buildCovenant:function(e,t){return new n.Builder(e,t)},createUTXOGenerator:function(e){return new n.UTXOGenerator(e)},createTestEnvironment:function(e){return n.UTXOGenerator.createTestEnvironment(e)},testScript:function(e,t,r){return n.ScriptTester.test(e,t,r)},testCovenant:function(e,t,r){return n.ScriptTester.testCovenant(e,t,r)},testFieldExtraction:function(e,t,r){return n.ScriptTester.testFieldExtraction(e,t,r)},debugScript:function(e,t){return new n.ScriptTester(t).debug(e)},explainZeroHashes:function(){return n.SIGHASH.explainZeroMystery()},getAllSIGHASHTypes:function(){return n.SIGHASH.getAllTypes()},demonstrateAllSIGHASH:function(){return n.SIGHASH.generateAllDemonstrations()},createCovenantBuilder:function(){return new n.CovenantBuilder},createValueLockCovenant:function(e){return n.CovenantTemplates.valueLock(e)},createHashLockCovenant:function(e){return n.CovenantTemplates.hashLock(e)},createComplexValidationCovenant:function(e){return n.CovenantTemplates.complexValidation(e)},getOpcodeMap:function(){return n.OpcodeMap.opcodeMap},simulateScript:function(e,t){return n.OpcodeMap.utils.simulate(e,t)},createASMFromJS:function(e){return n.OpcodeMap.utils.createASM(e)},scriptToASM:function(e){return n.ScriptUtils.scriptToASM(e)},asmToScript:function(e){return n.ScriptUtils.asmToScript(e)},asmToHex:function(e){return n.ScriptUtils.asmToHex(e)},hexToASM:function(e){return n.ScriptUtils.hexToASM(e)},scriptToHex:function(e){return n.ScriptUtils.scriptToHex(e)},validateASM:function(e){return n.ScriptUtils.validateASM(e)},validateScript:function(e){return n.ScriptUtils.validateScript(e)},estimateScriptSize:function(e){return n.ScriptUtils.estimateScriptSize(e)},optimizeScript:function(e){return n.ScriptUtils.optimizeScript(e)},compareScripts:function(e,t){return n.ScriptUtils.compareScripts(e,t)},explainScript:function(e){return n.ScriptUtils.explainScript(e)},scriptMetrics:function(e){return n.ScriptUtils.scriptMetrics(e)},analyzeComplexity:function(e){return n.ScriptUtils.analyzeComplexity(e)},findOptimizations:function(e){return n.ScriptUtils.findOptimizations(e)},covenantToEnglish:function(e){return n.ScriptUtils.covenantToEnglish(e)},batchTestScripts:function(e,t){return n.ScriptUtils.batchTestScripts(e,t)},examineStack:function(e,t){return n.StackExaminer.runScript(e,t)},debugScriptExecution:function(e,t,r){return(r=r||{}).stepMode?n.ScriptInterpreter.stepThroughScript(n.ScriptInterpreter.parseScript(e+" "+t),new i.Transaction,!0):n.ScriptInterpreter.runFullEvaluation(n.ScriptInterpreter.parseScript(e),n.ScriptInterpreter.parseScript(t),new i.Transaction)},parseScript:function(e){return n.ScriptInterpreter.parseScript(e)},printStack:function(e,t){return n.ScriptInterpreter.printStack(e,t)},createQuickCovenant:function(e,t){const r=n.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(e=>{switch(e.type){case"value":i=i.extractField("value").push(e.value).greaterThanOrEqual().verify();break;case"hash":i=i.push("secret_placeholder").sha256().push(e.hash).equalVerify();break;case"time":i=i.extractField("nLockTime").push(e.timestamp).greaterThan().verify()}}),i.build();default:throw new Error("Unknown covenant type: "+e)}},completeCovenantFlow:function(e,t,r){return new n.Covenant(e).completeFlow(t,r)},getEducationalResources:function(){return{zeroHashMystery:n.SIGHASH.explainZeroMystery(),sighashTypes:n.SIGHASH.getAllTypes(),exampleDemonstrations:n.SIGHASH.generateAllDemonstrations()}},utils:{}};n.utils.reconstructP2pkhScript=function(e){return i.Script.buildPublicKeyHashOut(e).toHex()},n.utils.createCovenantAddress=function(e){var t=i.crypto.Hash.sha256ripemd160(e.toBuffer());return i.Address.fromScriptHash(t)},n.utils.decodeCompactSize=function(e,t){return n.Preimage.decodeCompactSize(e,t)},n.version="v1.0.0",n.description="Enterprise Smart Contract Framework for Bitcoin SV",n.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,PRODUCTION_READY:!0},n.interpretScript=n.debugScriptExecution,n.getScriptMetrics=n.scriptMetrics,e.exports=n},function(e,t,r){"use strict";(function(t,i){var n,o=r(1),a=r(53);try{n=r(!function(){var e=new Error("Cannot find module 'fs'");throw e.code="MODULE_NOT_FOUND",e}())}catch(e){n=null}function s(e,r){if(!(this instanceof s))return new s(e,r);this.privateKey=e,this.publicKey=e.publicKey,this.address=e.toAddress(),r=r||{},this.storageDir=r.storageDir||(void 0!==t?a.join(t.cwd(),".bsv-covenants"):".bsv-covenants"),this.covenantUtxoPath=a.join(this.storageDir,"covenant_utxos.json"),this.sighashType=o.crypto.Signature.SIGHASH_ALL|o.crypto.Signature.SIGHASH_FORKID,n&&this._ensureStorageDir()}s.prototype.createFromP2PKH=function(e){e.script||(e.script=s.reconstructP2pkhScript(this.address));var t=(new o.Transaction).from({txId:e.txid,outputIndex:e.vout,script:e.script,satoshis:e.satoshis}).to(this.address,e.satoshis-1e3),r=o.Script.fromHex(e.script),i=o.Transaction.sighash.sighashPreimage(t,this.sighashType,0,r,new o.crypto.BN(e.satoshis)),n=o.crypto.Hash.sha256sha256(i),a=(new o.Script).add("OP_DUP").add("OP_HASH256").add(n).add("OP_EQUALVERIFY").add("OP_DROP").add(this.publicKey.toBuffer()).add("OP_CHECKSIG");return t.outputs[0].setScript(a),t.sign(this.privateKey),{transaction:t,covenantUtxo:{txid:t.id,vout:0,satoshis:e.satoshis-1e3,script:a.toHex(),scriptPubKey:a.toHex(),preimageHash:n.toString("hex"),originalPreimage:i.toString("hex"),status:"local",createdAt:(new Date).toISOString(),type:"preimage_covenant"}}},s.prototype.createSpendingTx=function(e,t,r){var n=t||this.address,a=r||e.satoshis-500,s=new o.Transaction;s.addInput(new o.Transaction.Input({prevTxId:e.txid,outputIndex:e.vout,script:o.Script.empty()}),o.Script.fromHex(e.script),e.satoshis),s.to(n,a);var c=o.Script.fromHex(e.script),u=o.Transaction.sighash.sign(s,this.privateKey,this.sighashType,0,c,new o.crypto.BN(e.satoshis)),f=i.concat([u.toDER(),i.from([this.sighashType])]),h=i.from(e.originalPreimage,"hex"),l=(new o.Script).add(f).add(h);return s.inputs[0].setScript(l),s},s.prototype.validate=function(e,t){var r=new o.Script.Interpreter,i=o.Script.Interpreter.SCRIPT_VERIFY_P2SH|o.Script.Interpreter.SCRIPT_VERIFY_STRICTENC|o.Script.Interpreter.SCRIPT_VERIFY_DERSIG|o.Script.Interpreter.SCRIPT_VERIFY_LOW_S|o.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID,n=e.inputs[0].script,a=o.Script.fromHex(t.script),s=r.verify(n,a,e,0,i,new o.crypto.BN(t.satoshis));return{valid:s,error:s?null:r.errstr}},s.prototype.save=function(e){if(!n)return console.warn("File system operations not available in browser environment"),e;var t=this.list();return t.push(e),n.writeFileSync(this.covenantUtxoPath,JSON.stringify(t,null,2)),e},s.prototype.load=function(e){var t=this.list();if(e){var r;if(!(r=t.find((function(t){return t.txid===e}))))throw new Error("Covenant UTXO with TXID "+e+" not found");return r}if(!(r=t.find((function(e){return"preimage_covenant"===e.type}))))throw new Error("No preimage covenant UTXO found");return r},s.prototype.list=function(){return n.existsSync(this.covenantUtxoPath)?JSON.parse(n.readFileSync(this.covenantUtxoPath,"utf8")):[]},s.prototype.getPortfolio=function(){var e=this.list(),t={total:e.length,totalValue:e.reduce((function(e,t){return e+t.satoshis}),0),byStatus:{},recent:e.slice(-5)};return e.forEach((function(e){var r=e.status||"local";t.byStatus[r]||(t.byStatus[r]={count:0,value:0}),t.byStatus[r].count++,t.byStatus[r].value+=e.satoshis})),t},s.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}},s.prototype._ensureStorageDir=function(){n.existsSync(this.storageDir)||n.mkdirSync(this.storageDir,{recursive:!0})},s.reconstructP2pkhScript=function(e){return o.Script.buildPublicKeyHashOut(e).toHex()},e.exports=s}).call(this,r(18),r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1);function n(e){if(!(this instanceof n))return new n(e);this.sighashType=e||i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID,this.analysis=this._analyzeFlags()}n.prototype.analyze=function(){return this.analysis},n.prototype.getZeroHashBehavior=function(){var e={hashPrevouts:!1,hashSequence:!1,hashOutputs:!1,explanation:[],criticalNote:null};return this.analysis.anyoneCanPay&&(e.hashPrevouts=!0,e.explanation.push("ANYONECANPAY: hashPrevouts becomes zero hash (0x00...00)")),"NONE"===this.analysis.baseType&&(e.hashSequence=!0,e.hashOutputs=!0,e.explanation.push("SIGHASH_NONE: hashSequence and hashOutputs become zero hash")),"SINGLE"===this.analysis.baseType&&(e.hashSequence=!0,e.hashOutputs=!0,e.explanation.push("SIGHASH_SINGLE: hashSequence becomes zero hash, hashOutputs covers only corresponding output")),(e.hashPrevouts||e.hashSequence||e.hashOutputs)&&(e.criticalNote="These zero hashes are NOT bugs - they are correct BIP-143 behavior for the specified SIGHASH flags!"),e},n.prototype.generateExample=function(){var e=i.PrivateKey.fromRandom().toAddress(),t={txId:"a".repeat(64),outputIndex:0,script:i.Script.buildPublicKeyHashOut(e).toHex(),satoshis:1e5},n=(new i.Transaction).from(t).to(e,99e3),o=i.Script.fromHex(t.script),a=i.Transaction.sighash.sighashPreimage(n,this.sighashType,0,o,new i.crypto.BN(t.satoshis)),s=new(r(17))(a);return{transaction:n,preimage:s,sighashType:this.sighashType,analysis:this.analysis,zeroHashBehavior:this.getZeroHashBehavior(),fields:s.extract(),validation:s.validate()}},n.prototype.createDemonstration=function(){var e=this.generateExample(),r=t.alloc(32).toString("hex"),i={sighashType:this.sighashType,analysis:this.analysis,zeroHashBehavior:this.getZeroHashBehavior(),preimageFields:{},observations:[],educationalNotes:[]},n=e.preimage.toObject().fields;return i.preimageFields=n,n.hashPrevouts===r&&i.observations.push({field:"hashPrevouts",value:"ZERO HASH (00...00)",reason:"ANYONECANPAY flag - this input can be combined with any other inputs"}),n.hashSequence===r&&i.observations.push({field:"hashSequence",value:"ZERO HASH (00...00)",reason:this.analysis.baseType+" flag - sequence numbers not covered by signature"}),n.hashOutputs===r&&i.observations.push({field:"hashOutputs",value:"ZERO HASH (00...00)",reason:this.analysis.baseType+" flag - outputs not fully covered by signature"}),i.educationalNotes=["Zero hashes in preimages are NOT errors - they indicate specific SIGHASH flag behavior","BIP-143 mandates these zero values when certain flags are used","ANYONECANPAY allows this input to be combined with different sets of inputs","SIGHASH_NONE means the signer doesn't care about any outputs","SIGHASH_SINGLE means the signer only cares about the corresponding output","Always check SIGHASH flags when you see 'mysterious' zero hashes in preimages"],i},n.prototype.checkCompliance=function(e){var r=e.toObject().fields,i=t.alloc(32).toString("hex"),n={compliant:!0,issues:[],expectedZeros:[],unexpectedZeros:[]},o=this.getZeroHashBehavior();return o.hashPrevouts&&r.hashPrevouts!==i?(n.compliant=!1,n.issues.push("hashPrevouts should be zero due to ANYONECANPAY flag")):o.hashPrevouts||r.hashPrevouts!==i||n.unexpectedZeros.push("hashPrevouts is zero but ANYONECANPAY not set"),o.hashSequence&&r.hashSequence!==i?(n.compliant=!1,n.issues.push("hashSequence should be zero due to "+this.analysis.baseType+" flag")):o.hashSequence||r.hashSequence!==i||n.unexpectedZeros.push("hashSequence is zero but "+this.analysis.baseType+" allows sequence coverage"),o.hashOutputs&&r.hashOutputs!==i?(n.compliant=!1,n.issues.push("hashOutputs should be zero due to "+this.analysis.baseType+" flag")):o.hashOutputs||r.hashOutputs!==i||n.unexpectedZeros.push("hashOutputs is zero but "+this.analysis.baseType+" should cover outputs"),n},n.prototype._analyzeFlags=function(){var e=31&this.sighashType,t=0!=(128&this.sighashType),r=0!=(64&this.sighashType),i="UNKNOWN";1===e?i="ALL":2===e?i="NONE":3===e&&(i="SINGLE");var n=[];return n.push(i),t&&n.push("ANYONECANPAY"),r&&n.push("FORKID"),{sighashType:this.sighashType,baseType:i,anyoneCanPay:t,forkId:r,flagName:n.join(" | "),hex:"0x"+this.sighashType.toString(16).padStart(8,"0"),binary:"0b"+this.sighashType.toString(2).padStart(32,"0")}},n.getAllTypes=function(){var e=i.crypto.Signature.SIGHASH_FORKID;return[{name:"ALL",value:i.crypto.Signature.SIGHASH_ALL|e},{name:"NONE",value:i.crypto.Signature.SIGHASH_NONE|e},{name:"SINGLE",value:i.crypto.Signature.SIGHASH_SINGLE|e},{name:"ALL | ANYONECANPAY",value:i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_ANYONECANPAY|e},{name:"NONE | ANYONECANPAY",value:i.crypto.Signature.SIGHASH_NONE|i.crypto.Signature.SIGHASH_ANYONECANPAY|e},{name:"SINGLE | ANYONECANPAY",value:i.crypto.Signature.SIGHASH_SINGLE|i.crypto.Signature.SIGHASH_ANYONECANPAY|e}]},n.generateAllDemonstrations=function(){return n.getAllTypes().map((function(e){var t=new n(e.value);return{typeName:e.name,demonstration:t.createDemonstration()}}))},n.explainZeroMystery=function(){return{title:"The 'Extra Zero' Mystery in Bitcoin Preimages",problem:"Developers often see zero hashes (0x00...00) in preimage fields and think it's a bug",reality:"These zeros are CORRECT behavior mandated by BIP-143 for specific SIGHASH flags",explanation:["ANYONECANPAY sets hashPrevouts to zero - allows input combination flexibility","SIGHASH_NONE sets hashSequence and hashOutputs to zero - signer doesn't care about outputs","SIGHASH_SINGLE sets hashSequence to zero - only corresponding output matters","These are features, not bugs - they enable advanced Bitcoin transaction patterns"],solution:"Always check SIGHASH flags when analyzing preimages with zero hashes",toolTip:"Use SIGHASH.checkCompliance() to verify if zero hashes match expected flag behavior"}},e.exports=n}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1);function n(e,t){if(!(this instanceof n))return new n(e,t);this.privateKey=e,this.publicKey=e?e.publicKey:null,this.options=t||{},this.conditions=[],this.preimageFields=[],this.scriptTemplate=null,this.validationRules=[],this.sighashType=this.options.sighashType||i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID}n.prototype.validateField=function(e,t,r){var i={field:e,expectedValue:t,operator:(r=r||{}).operator||"EQUAL",required:!1!==r.required,description:r.description||"Validate "+e};return this.validationRules.push(i),this},n.prototype.addCondition=function(e,t){var r={type:"function"==typeof e?"CUSTOM":"OPCODE",condition:e,description:(t=t||{}).description||"Custom condition",required:!1!==t.required};return this.conditions.push(r),this},n.prototype.useTemplate=function(e,t){return this.scriptTemplate={name:e,params:t||{},customScript:"object"==typeof e?e:null},this},n.prototype.buildLockingScript=function(e){new i.Script;return this.scriptTemplate?this._buildFromTemplate(e):this._buildMultiFieldCovenant(e)},n.prototype.buildUnlockingScript=function(e,r,n){var o=new i.Script,a=i.Script.fromHex(n.script),s=i.Transaction.sighash.sign(e,this.privateKey,this.sighashType,r,a,new i.crypto.BN(n.satoshis)),c=t.concat([s.toDER(),t.from([this.sighashType])]);return o.add(c),n.originalPreimage&&o.add(t.from(n.originalPreimage,"hex")),this.conditions.forEach((function(e){"UNLOCK_DATA"===e.type&&o.add(e.data)})),o},n.prototype.createCovenant=function(e,t){t=t||{};var n=(new i.Transaction).from({txId:e.txid,outputIndex:e.vout,script:e.script,satoshis:e.satoshis}).to(this.privateKey.toAddress(),e.satoshis-(t.fee||1e3)),o=i.Script.fromHex(e.script),a=i.Transaction.sighash.sighashPreimage(n,this.sighashType,0,o,new i.crypto.BN(e.satoshis)),s=new(r(17))(a).extract(),c=this.buildLockingScript({preimage:a,fields:s,transaction:n});return n.outputs[0].setScript(c),n.sign(this.privateKey),{creationTx:n,covenantUtxo:{txid:n.id,vout:0,satoshis:e.satoshis-(t.fee||1e3),script:c.toHex(),originalPreimage:a.toString("hex"),preimageFields:s,validationRules:this.validationRules.slice(),conditions:this.conditions.slice(),template:this.scriptTemplate,createdAt:(new Date).toISOString(),type:"builder_covenant"},lockingScript:c,preimageData:{preimage:a,fields:s}}},n.prototype.validateSpending=function(e,t){var n={valid:!0,errors:[],warnings:[],fieldValidations:[]},o=i.Script.fromHex(t.script),a=i.Transaction.sighash.sighashPreimage(e,this.sighashType,0,o,new i.crypto.BN(t.satoshis)),s=new(r(17))(a).extract();t.validationRules&&t.validationRules.forEach(function(e){var r=this._validateFieldRule(e,s,t.preimageFields);n.fieldValidations.push(r),!r.passed&&e.required&&(n.valid=!1,n.errors.push(r.error))}.bind(this));var c=new i.Script.Interpreter,u=i.Script.Interpreter.SCRIPT_VERIFY_P2SH|i.Script.Interpreter.SCRIPT_VERIFY_STRICTENC|i.Script.Interpreter.SCRIPT_VERIFY_DERSIG|i.Script.Interpreter.SCRIPT_VERIFY_LOW_S|i.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID,f=e.inputs[0].script,h=i.Script.fromHex(t.script);return c.verify(f,h,e,0,u,new i.crypto.BN(t.satoshis))||(n.valid=!1,n.errors.push("Script interpreter validation failed: "+c.errstr)),n},n.prototype._buildFromTemplate=function(e){var t=this.scriptTemplate;if("HASH_LOCK"===t.name)return this._buildHashLockTemplate(e,t.params);if("MULTI_FIELD"===t.name)return this._buildMultiFieldTemplate(e,t.params);if(t.customScript)return t.customScript;throw new Error("Unknown template: "+t.name)},n.prototype._buildMultiFieldCovenant=function(e){var r=new i.Script;return r.add("OP_DUP"),this.validationRules.forEach((function(e,n){if(n>0&&r.add("OP_DUP"),r.add("OP_HASH256"),e.expectedValue){var o=i.crypto.Hash.sha256sha256(t.from(e.expectedValue,"hex"));r.add(o),r.add("OP_EQUALVERIFY")}})),r.add("OP_DROP"),this.publicKey&&(r.add(this.publicKey.toBuffer()),r.add("OP_CHECKSIG")),r},n.prototype._buildHashLockTemplate=function(e,t){var r=new i.Script;r.add("OP_DUP"),r.add("OP_HASH256");var n=t.hash||i.crypto.Hash.sha256sha256(e.preimage);return r.add(n),r.add("OP_EQUALVERIFY"),r.add("OP_DROP"),this.publicKey&&(r.add(this.publicKey.toBuffer()),r.add("OP_CHECKSIG")),r},n.prototype._validateFieldRule=function(e,t,r){var i=t[e.field],n=e.expectedValue;if("string"==typeof n&&n.startsWith("ORIGINAL_")){var o=n.replace("ORIGINAL_","");n=r[o]}var a=!1,s=null;switch(e.operator){case"EQUAL":(a=i&&i.equals?i.equals(n):i===n)||(s=e.field+" does not equal expected value");break;case"NOT_EQUAL":(a=i&&i.equals?!i.equals(n):i!==n)||(s=e.field+" should not equal specified value");break;case"PRESENT":(a=!!i)||(s=e.field+" is required but not present");break;default:s="Unknown validation operator: "+e.operator}return{field:e.field,operator:e.operator,passed:a,error:s,description:e.description}},n.createHashLock=function(e,t){return new n(e).useTemplate("HASH_LOCK",{hash:t})},n.createMultiField=function(e,t){var r=new n(e);return t.forEach((function(e){r.validateField(e.field,e.expectedValue,e.options)})),r},e.exports=n}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(1),n=r(8);function o(e){if(!(this instanceof o))return new o(e);this.options=e||{},this.network=this.options.network||i.Networks.mainnet,this.keyRing={},this.utxoPool=[],void 0!==i.SmartUTXO&&(this.smartUTXO=new i.SmartUTXO(this.options))}o.prototype.generateKeypair=function(e){e=e||"key_"+Date.now();var t=i.PrivateKey.fromRandom(this.network),r=t.toPublicKey(),n=t.toAddress(this.network),o={label:e,privateKey:t,publicKey:r,address:n,wif:t.toWIF(),addressString:n.toString()};return this.keyRing[e]=o,o},o.prototype.createRealUTXOs=function(e){for(var t=(e=e||{}).count||3,r=e.satoshis||1e5,i=e.scriptType||"P2PKH",n=e.keypair||this.generateKeypair("utxo_owner"),o=[],a=0;a<t;a++){var s=this._createSingleUTXO({keypair:n,satoshis:r,scriptType:i,vout:a});o.push(s),this.utxoPool.push(s),this.smartUTXO&&this.smartUTXO.addUTXO(s)}return o},o.prototype._createSingleUTXO=function(e){var t,r,o=n.randomBytes(32).toString("hex");switch(e.scriptType){case"P2PKH":r=(t=i.Script.buildPublicKeyHashOut(e.keypair.address)).toHex();break;case"P2SH":var a=i.Script.buildMultisigOut([e.keypair.publicKey],1);r=(t=i.Script.buildScriptHashOut(a)).toHex();break;case"CUSTOM":r=(t=e.customScript||i.Script.buildPublicKeyHashOut(e.keypair.address)).toHex();break;default:r=(t=i.Script.buildPublicKeyHashOut(e.keypair.address)).toHex()}return{txid:o,vout:e.vout,address:e.keypair.addressString,script:r,satoshis:e.satoshis,keypair:e.keypair,scriptType:e.scriptType,scriptObj:t,created:(new Date).toISOString()}},o.prototype.createTestTransaction=function(e){var t=(e=e||{}).inputs||this.utxoPool.slice(0,1);if(0===t.length)throw new Error("No UTXOs available for transaction. Call createRealUTXOs() first.");var r=t.reduce((function(e,t){return e+t.satoshis}),0),n=new i.Transaction;t.forEach((function(e){n.from({txId:e.txid,outputIndex:e.vout,address:e.address,script:e.script,satoshis:e.satoshis})}));var o=e.outputAddress||t[0].keypair.addressString,a=e.outputAmount||r-1e4,s=e.fee||1e4;return n.to(o,a),n.fee(s),{transaction:n,inputUTXOs:t,unsignedHex:n.toString(),inputTotal:r,outputAmount:a,fee:s,sign:function(){return t.forEach((function(e){n.sign(e.keypair.privateKey)})),{signedTransaction:n,signedHex:n.toString(),txid:n.id}},generatePreimage:function(e,r){r=r||i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID;var o=t[e];return i.Transaction.sighash.sighashPreimage(n,r,e,i.Script.fromHex(o.script),new i.crypto.BN(o.satoshis))}}},o.prototype.createCovenantTest=function(e){e=e||{};var t=this.generateKeypair("covenant_test"),i=this.createRealUTXOs({count:e.utxoCount||2,satoshis:e.satoshis||5e4,keypair:t,scriptType:e.scriptType||"P2PKH"}),n={inputs:i.slice(0,1),outputAmount:e.covenantAmount||4e4,fee:1e4},o=this.createTestTransaction(n),a=o.generatePreimage(0),s=a.toString("hex");return{keypair:t,utxos:i,transaction:o,preimage:{buffer:a,hex:s,length:a.length},extractField:function(e){try{return r(17).extractFromHex(s,e)}catch(e){throw new Error("SmartContract.Preimage not available: "+e.message)}},validateCovenant:function(e){return{preimageValid:a.length>=182,covenantLogic:e,testPassed:!0}},getSummary:function(){return{keypair:t.addressString,utxoCount:i.length,totalValue:i.reduce((function(e,t){return e+t.satoshis}),0),preimageLength:a.length,transactionId:o.transaction.id}}}},o.prototype.getKeypairs=function(){return this.keyRing},o.prototype.getUTXOs=function(){return this.utxoPool},o.prototype.reset=function(){this.keyRing={},this.utxoPool=[]},o.createTestEnvironment=function(e){var t=new o(e),i=t.createCovenantTest(e);return{generator:t,test:i,getPreimage:function(){return i.preimage.hex},getKeypair:function(){return i.keypair},extractField:function(e){return i.extractField(e)},generateASM:function(e){try{return r(17).generateASMFromHex(i.preimage.hex,e)}catch(e){throw new Error("Cannot generate ASM: "+e.message)}}}},e.exports=o},function(e,t,r){"use strict";(function(t){var i=r(1);function n(e){if(!(this instanceof n))return new n(e);this.options=e||{},this.flags=this.options.flags||i.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID,this.satoshis=this.options.satoshis||1e5}n.prototype.execute=function(e){var t=this._parseScript(e.unlocking),r=this._parseScript(e.locking),n=this._createDummyTransaction(),o=new i.Script.Interpreter,a=new i.crypto.BN(this.satoshis);try{return{success:o.verify(t,r,n,0,this.flags,a),unlocking:t.toASM(),locking:r.toASM(),finalStack:o.stack.map((function(e){return e.toString("hex")})),altStack:o.altstack.map((function(e){return e.toString("hex")})),error:null}}catch(e){return{success:!1,unlocking:t.toASM(),locking:r.toASM(),finalStack:[],altStack:[],error:e.message}}},n.prototype.debug=function(e){var t=this._createCombinedScript(e),r=this._createDummyTransaction(),n=new i.Script.Interpreter;n.script=t,n.tx=r,n.nIn=0,n.flags=this.flags;var o=[],a=t.chunks;try{for(var s=0;s<a.length;s++){var c=a[s],u=i.Opcode.reverseMap[c.opcodenum]||"PUSH",f=n.stack.map((function(e){return e.toString("hex")})),h=n.altstack.map((function(e){return e.toString("hex")}));try{n.step();var l=n.stack.map((function(e){return e.toString("hex")})),d=n.altstack.map((function(e){return e.toString("hex")}));o.push({step:s+1,opcode:u,beforeStack:f,afterStack:l,beforeAltStack:h,afterAltStack:d,success:!0,error:null})}catch(e){o.push({step:s+1,opcode:u,beforeStack:f,afterStack:f,beforeAltStack:h,afterAltStack:h,success:!1,error:e.message});break}}}catch(e){o.push({step:0,opcode:"INITIALIZATION",beforeStack:[],afterStack:[],beforeAltStack:[],afterAltStack:[],success:!1,error:e.message})}return{script:t.toASM(),steps:o,totalSteps:a.length,success:o.length>0&&o[o.length-1].success}},n.prototype.testCovenant=function(e){var t=e.preimage,r=e.constraints||{},i=this._buildCovenantScript(r,t),n=this.execute({unlocking:t,locking:i});return n.covenant={preimageLength:t.length/2,constraints:r,constraintResults:this._analyzeConstraints(t,r)},n},n.prototype.testFieldExtraction=function(e,t){try{var i=r(17).extractFromHex(e,t,{includeComments:!1}),n=this._cleanASM(i.asm),o=this.execute({unlocking:e,locking:n+" OP_DROP OP_TRUE"});return o.fieldExtraction={field:t,strategy:i.strategy,value:i.value,interpretation:i.interpretation,asmGenerated:i.asm,cleanedASM:n},o}catch(e){return{success:!1,error:e.message,fieldExtraction:{field:t,error:e.message}}}},n.prototype._parseScript=function(e){if(!e)return new i.Script;var r=e.trim(),n=/^[0-9a-fA-F]+$/.test(r.replace(/\s+/g,""));try{if(n){var o=r.length/2;return o>=180&&o<=250?(new i.Script).add(t.from(r,"hex")):i.Script.fromHex(r)}return i.Script.fromASM(r)}catch(e){throw new Error("Failed to parse script: "+e.message)}},n.prototype._createCombinedScript=function(e){if(e.combined)return this._parseScript(e.combined);var r=this._parseScript(e.unlocking),n=this._parseScript(e.locking),o=t.concat([r.toBuffer(),n.toBuffer()]);return i.Script.fromBuffer(o)},n.prototype._createDummyTransaction=function(){var e=new i.Transaction,t=new i.Transaction.Input({prevTxId:"0".repeat(64),outputIndex:0,script:i.Script.empty(),satoshis:this.satoshis,output:new i.Transaction.Output({satoshis:this.satoshis,script:i.Script.empty()})});return e.addInput(t),e.addOutput(new i.Transaction.Output({satoshis:this.satoshis,script:i.Script.empty()})),e},n.prototype._buildCovenantScript=function(e,t){var i=[];try{var n=r(17);if(e.minimumAmount){var o=n.generateASMFromHex(t,"value",!1);i.push(o),i.push("OP_BIN2NUM"),i.push(e.minimumAmount.toString()),i.push("OP_GREATERTHANOREQUAL"),i.push("OP_VERIFY")}if(e.requiredSighash){var a=n.generateASMFromHex(t,"sighashType",!1);i.push(a),i.push("OP_BIN2NUM"),i.push(e.requiredSighash.toString()),i.push("OP_EQUAL"),i.push("OP_VERIFY")}i.push("OP_TRUE");var s=i.join(" ");return this._cleanASM(s)}catch(e){throw new Error("Failed to build covenant script: "+e.message)}},n.prototype._cleanASM=function(e){var r=e.split("\n").map((function(e){return e.split("#")[0].trim()})).filter((function(e){return e.length>0})).join(" ").replace(/\s+/g," ").trim();return r=r.replace(/\b(\d+)\b/g,(function(e,r){var i=parseInt(r);if(i>=1&&i<=16)return"OP_"+i;if(0===i)return"OP_0";if(-1===i)return"OP_1NEGATE";var n=i,o=n<0;o&&(n=-n);for(var a=[];n>0;)a.push(255&n),n=Math.floor(n/256);return 0===a.length&&a.push(0),o?a[a.length-1]>=128?a.push(128):a[a.length-1]|=128:a.length>0&&a[a.length-1]>=128&&a.push(0),t.from(a).toString("hex")}))},n.prototype._analyzeConstraints=function(e,t){var i={};try{var n=r(17);if(t.minimumAmount){var o=n.extractFromHex(e,"value",{includeComments:!1}),a=parseInt(o.interpretation.satoshis);i.amountCheck={constraint:t.minimumAmount,actual:a,satisfied:a>=t.minimumAmount}}if(t.requiredSighash){var s=n.extractFromHex(e,"sighashType",{includeComments:!1}),c=parseInt(s.value,16);i.sighashCheck={constraint:t.requiredSighash,actual:c,satisfied:(255&c)===t.requiredSighash}}}catch(e){i.error=e.message}return i},n.test=function(e,t,r){return new n(r).execute({unlocking:e,locking:t})},n.testCovenant=function(e,t,r){return new n(r).testCovenant({preimage:e,constraints:t})},n.testFieldExtraction=function(e,t,r){return new n(r).testFieldExtraction(e,t)},e.exports=n}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){const i=r(1);function n(e){if(t.isBuffer(e)){return i.Script.fromBuffer(e).toASM()}if(e&&"function"==typeof e.toASM)return e.toASM();throw new Error("Input must be a Buffer or Script object")}function o(e){try{return i.Script.fromASM(e),{valid:!0,error:null}}catch(e){return{valid:!1,error:e.message}}}function a(e){try{let r;if("string"==typeof e)r=i.Script.fromASM(e);else if(t.isBuffer(e))r=i.Script.fromBuffer(e);else{if(!e||"function"!=typeof e.toBuffer)return{valid:!1,error:"Invalid script input type"};r=e}const n=r.toBuffer(),o=r.toASM();return{valid:!0,error:null,size:n.length,asm:o,operations:o.split(" ").length}}catch(e){return{valid:!1,error:e.message}}}function s(e){try{let r;if("string"==typeof e)r=i.Script.fromASM(e);else if(Array.isArray(e))r=i.Script.fromASM(e.join(" "));else{if(t.isBuffer(e))return e.length;if(!e||"function"!=typeof e.toBuffer)throw new Error("Invalid script input");r=e}return r.toBuffer().length}catch(e){return{error:e.message}}}function c(e){try{const t=a(e);if(!t.valid)return{error:t.error};const r=t.asm,i=r.split(" ").filter(e=>e.length>0),n=t.size,o=i.filter(e=>e.startsWith("OP_")).length,s=i.filter(e=>!e.startsWith("OP_")&&e.length>0).length;let c=0;return i.forEach(e=>{e.startsWith("OP_")&&(["OP_CHECKSIG","OP_CHECKSIGVERIFY"].includes(e)?c+=100:["OP_SHA256","OP_HASH160","OP_HASH256"].includes(e)?c+=10:c+=1)}),{length:n,size:n,operations:i.length,opcodeCount:o,opcodes:o,dataElements:s,estimatedCost:c,complexity:c>50?"high":c>10?"medium":"low",asm:r}}catch(e){return{error:e.message}}}function u(e){const t=c(e);if(t.error)return t;const r={size:t.size,operations:t.operations,complexity:t.complexity,recommendations:[]};return t.size>520&&r.recommendations.push("Script exceeds standard size limit (520 bytes)"),t.estimatedCost>100&&r.recommendations.push("High execution cost - consider optimization"),t.operations>200&&r.recommendations.push("Many operations - may hit operation limits"),r}function f(e){try{let t;t="string"==typeof e?e:n(e);const r=t.split(" "),i=[];return r.forEach((e,t)=>{let r="";if(e.startsWith("OP_"))switch(e){case"OP_DUP":r="Duplicate the top stack item";break;case"OP_DROP":r="Remove the top stack item";break;case"OP_SWAP":r="Swap the top two stack items";break;case"OP_ADD":r="Add the top two numbers";break;case"OP_SUB":r="Subtract: second - first";break;case"OP_EQUAL":r="Check if top two items are equal";break;case"OP_VERIFY":r="Assert that top item is true (non-zero)";break;case"OP_CHECKSIG":r="Verify signature against public key";break;case"OP_SHA256":r="Calculate SHA256 hash of top item";break;case"OP_HASH160":r="Calculate RIPEMD160(SHA256(x)) hash";break;case"OP_IF":r="Begin conditional execution";break;case"OP_ELSE":r="Alternative branch of conditional";break;case"OP_ENDIF":r="End conditional execution";break;default:r="Execute "+e}else e.length>0&&(r=`Push data: ${e} (${e.length/2} bytes)`);r&&i.push({operation:e,position:t,explanation:r})}),{asm:t,operations:r.length,explanations:i,summary:`Script with ${r.length} operations: ${i.map(e=>e.explanation).join(" → ")}`}}catch(e){return{error:e.message}}}e.exports={scriptToASM:n,asmToScript:function(e){try{return i.Script.fromASM(e)}catch(e){throw new Error("Invalid ASM string: "+e.message)}},asmToHex:function(e){try{return i.Script.fromASM(e).toBuffer().toString("hex")}catch(e){throw new Error("Cannot convert ASM to hex: "+e.message)}},hexToASM:function(e){try{const r=t.from(e,"hex");return i.Script.fromBuffer(r).toASM()}catch(e){throw new Error("Cannot convert hex to ASM: "+e.message)}},scriptToHex:function(e){if(t.isBuffer(e))return e.toString("hex");if(e&&"function"==typeof e.toBuffer)return e.toBuffer().toString("hex");throw new Error("Input must be a Buffer or Script object")},validateASM:o,validateScript:a,validateSyntax:function(e){const t=o(e);if(!t.valid)return t;const r=e.split(" "),n=[];for(let e=0;e<r.length;e++){const t=r[e];t.startsWith("OP_")&&!i.Opcode.map[t]&&n.push(`Unknown opcode: ${t} at position ${e}`),!t.startsWith("OP_")&&t.length>0&&(/^[0-9a-fA-F]*$/.test(t)||n.push(`Invalid hex data: ${t} at position ${e}`))}return{valid:0===n.length,error:n.length>0?n.join("; "):null,issues:n,operations:r.length}},estimateScriptSize:s,scriptMetrics:c,analyzeComplexity:u,optimizeScript:function(e){try{let t;t="string"==typeof e?e:Array.isArray(e)?e.join(" "):n(e);const r=t.split(" "),o=[];for(let e=0;e<r.length;e++){const t=r[e],i=r[e+1];t&&""!==t.trim()&&("OP_DUP"!==t||"OP_DROP"!==i?(t.startsWith("OP_")||!i||i.startsWith("OP_"),o.push(t)):e++)}const a=o.join(" "),c=s(t),u=s(a);let f=null;try{f=i.Script.fromASM(a)}catch(e){f=null}return{original:t,optimized:a,originalSize:c,optimizedSize:u,savings:c-u,improvement:c>0?((c-u)/c*100).toFixed(1)+"%":"0%",script:f}}catch(e){return{error:e.message}}},findOptimizations:function(e){const t=[];try{let r;r="string"==typeof e?e:n(e);const i=r.split(" ");for(let e=0;e<i.length-1;e++){const r=i[e],n=i[e+1];if("OP_DUP"===r&&"OP_DROP"===n&&t.push({type:"redundant_operation",position:e,description:"Remove redundant OP_DUP OP_DROP pair",savings:2}),r.match(/^[0-9a-fA-F]+$/)&&2===r.length){const i=parseInt(r,16);i>=1&&i<=16&&t.push({type:"inefficient_push",position:e,description:`Use OP_${i} instead of pushing ${r}`,savings:1})}}return{optimizations:t,totalSavings:t.reduce((e,t)=>e+t.savings,0)}}catch(e){return{error:e.message}}},compareScripts:function(e,r){try{let o,a;o="string"==typeof e?i.Script.fromASM(e).toBuffer():t.isBuffer(e)?e:e.toBuffer(),a="string"==typeof r?i.Script.fromASM(r).toBuffer():t.isBuffer(r)?r:r.toBuffer();return{identical:o.equals(a),scriptA:{size:o.length,asm:n(o)},scriptB:{size:a.length,asm:n(a)}}}catch(e){return{error:e.message}}},explainScript:f,covenantToEnglish:function(e){try{const t=f(e);if(t.error)return t;const r=[];return t.explanations.forEach(e=>{switch(e.operation){case"OP_VERIFY":r.push("The condition must be true for the script to succeed.");break;case"OP_CHECKSIG":r.push("A valid signature must be provided.");break;case"OP_EQUAL":r.push("Two values must be identical.");break;case"OP_ADD":r.push("Two numbers are added together.");break;default:e.explanation.includes("Push data")&&r.push("Some data is made available for processing.")}}),{english:r.join(" "),technical:t.summary,operations:t.operations}}catch(e){return{error:e.message}}},batchTestScripts:function(e,t={}){const r=[];e.forEach((e,t)=>{try{const i=a(e),o=c(e),s=u(e);r.push({index:t,script:"string"==typeof e?e:n(e),valid:i.valid,size:i.size,operations:i.operations,complexity:s.complexity,estimatedCost:o.estimatedCost,recommendations:s.recommendations})}catch(i){r.push({index:t,script:"string"==typeof e?e:"Invalid script",valid:!1,error:i.message})}});const i={total:e.length,valid:r.filter(e=>e.valid).length,invalid:r.filter(e=>!e.valid).length,averageSize:r.filter(e=>e.size).reduce((e,t)=>e+t.size,0)/r.filter(e=>e.size).length||0,complexityDistribution:{low:r.filter(e=>"low"===e.complexity).length,medium:r.filter(e=>"medium"===e.complexity).length,high:r.filter(e=>"high"===e.complexity).length}};return{results:r,summary:i}}}}).call(this,r(0).Buffer)},function(e,t,r){(function(e,t,i){const n="undefined"!=typeof window&&window.bsv?window.bsv:r(1);r(72);function o(e){return e.map(e=>e.toString("hex"))}function a(t,r){console.log("==========================================="),console.log("🔍 STACK EXAMINATION TOOL"),console.log("===========================================\n"),console.log("🔐 Locking Script:",t),console.log("🔓 Unlocking Script:",r),console.log("-------------------------------------------");try{const i=n.Script.fromHex(t),a=n.Script.fromHex(r),s=n.Script.fromBuffer(e.concat([a.toBuffer(),i.toBuffer()])),c=new n.Script.Interpreter,u=new n.Transaction,f=new n.Transaction.Input({prevTxId:"0".repeat(64),outputIndex:0,script:n.Script.empty()});u.addInput(f),u.addOutput(new n.Transaction.Output({satoshis:1e5,script:i}));const h=s.chunks,l=new n.Script.Interpreter;l.script=s,l.tx=u,l.nIn=0,l.flags=n.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID;for(let e=0;e<h.length;e++){const t=h[e];try{if("function"!=typeof l.step){console.log("⚠️ Step-by-step execution not supported in this BSV version");break}l.step(),console.log(`\n🧩 Step ${e+1}: ${n.Opcode.reverseMap[t.opcodenum]||"PUSH"}`),console.log("Stack:",o(l.stack)),console.log("AltStack:",o(l.altstack))}catch(t){console.log(`⚠️ Error executing opcode ${e+1}:`,t.message);break}}const d=new n.crypto.BN(1e5),p=c.verify(a,i,u,0,n.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID,d);return console.log("\n==========================================="),console.log("✅ Final Result:",p?"TRUE (Success)":"❌ FALSE (Failure)"),console.log("Final Stack:",o(l.stack||[])),console.log("AltStack:",o(l.altstack||[])),console.log("==========================================="),p}catch(e){return console.error("❌ Error in script execution:",e.message),!1}}if(r.c[r.s]===t){i.argv.length<4&&(console.log("Usage: node stack_examiner.js <locking_script_hex> <unlocking_script_hex>"),i.exit(1));a(i.argv[2],i.argv[3])}t.exports={runScript:a,bufferToHexArray:o}}).call(this,r(0).Buffer,r(26)(e),r(18))},function(e,t,r){(function(e,t,i){let n=null;try{"undefined"==typeof window&&(n=r(!function(){var e=new Error("Cannot find module 'readline'");throw e.code="MODULE_NOT_FOUND",e}()))}catch(e){n=null}const o="undefined"!=typeof window&&window.bsv?window.bsv:r(1);function a(t){if(!t)return new o.Script;const r=t.trim(),i=/^[0-9a-fA-F]+$/.test(r.replace(/\s+/g,""));try{return i?o.Script.fromHex(r):o.Script.fromASM(r)}catch(t){console.error("❌ Error parsing script:",t.message),e.exit(1)}}function s(e,t=[]){const r=e=>e.length?e.toString("hex"):"(empty)",i=e.map(r);console.log("Stack:",i.length?i:["(empty)"]),t.length&&console.log("AltStack:",t.map(r))}async function c(t,r,i=!0){const a=new o.Script.Interpreter;a.script=t,a.tx=r,a.nIn=0,a.flags=o.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID;const c=t.chunks;let u=null;n&&void 0!==e&&e.stdin&&(u=n.createInterface({input:e.stdin,output:e.stdout})),console.log("==========================================="),console.log("🔍 SCRIPT INTERPRETER DEBUGGER (STEP MODE)"),console.log("===========================================\n"),console.log("Script:",t.toASM()),console.log("-------------------------------------------");for(let e=0;e<c.length;e++){const t=c[e],r=o.Opcode.reverseMap[t.opcodenum]||"PUSH";i&&u?await new Promise(t=>u.question(`\n[${e+1}/${c.length}] Step (${r}) — press Enter to execute...`,t)):i&&console.log(`\n[${e+1}/${c.length}] Step (${r})`);try{if("function"!=typeof a.step){console.log("⚠️ Step-by-step execution not supported in this BSV version"),console.log("💡 Consider using runFullEvaluation instead");break}a.step(),console.log("🧩 Executed: "+r),s(a.stack,a.altstack)}catch(e){console.log(`⚠️ Error executing ${r}: ${e.message}`);break}}u&&u.close(),console.log("\n==========================================="),console.log("✅ Final Stack State:"),s(a.stack||[],a.altstack||[]),console.log("===========================================")}function u(e,t,r){console.log("==========================================="),console.log("🔍 SCRIPT INTERPRETER DEBUGGER (FULL RUN)"),console.log("===========================================\n");const i=new o.Script.Interpreter,n=new o.crypto.BN(1e5),a=i.verify(e,t,r,0,o.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID,n);console.log("🔐 Locking Script:",t.toASM()),console.log("🔓 Unlocking Script:",e.toASM()),console.log("-------------------------------------------"),console.log("✅ Result:",a?"TRUE (Success)":"❌ FALSE (Failure)"),console.log("Final Stack:",i.stack.map(e=>e.toString("hex"))),console.log("AltStack:",i.altstack.map(e=>e.toString("hex"))),console.log("===========================================")}async function f(){if(void 0===e||!e.argv)return void console.log("⚙️ CLI mode not available in browser environment");const r=e.argv.slice(2),i=e=>{const t=r.indexOf(e);return-1!==t&&r[t+1]?r[t+1]:null},n=i("--unlocking"),s=i("--locking"),f=i("--combined"),h=r.includes("--step"),l=r.includes("--truth");let d,p,g;if(f)g=a(f);else{d=a(n),p=a(s);const e=t.concat([d.toBuffer(),p.toBuffer()]);g=o.Script.fromBuffer(e)}const m=new o.Transaction,b=new o.Transaction.Input({prevTxId:"0".repeat(64),outputIndex:0,script:o.Script.empty(),satoshis:1e5,output:new o.Transaction.Output({satoshis:1e5,script:o.Script.empty()})});m.addInput(b),m.addOutput(new o.Transaction.Output({satoshis:1e5,script:o.Script.empty()})),h?await c(g,m,!0):l?u(d||o.Script.empty(),p||o.Script.empty(),m):console.log("⚙️ No mode specified. Use --step or --truth")}i.exports={parseScript:a,printStack:s,stepThroughScript:c,runFullEvaluation:u,main:f},r.c[r.s]===i&&f()}).call(this,r(18),r(0).Buffer,r(26)(e))},function(e,t,r){"use strict";(function(t){let i,n,o,a;if("undefined"==typeof window)try{i=r(!function(){var e=new Error("Cannot find module 'fs'");throw e.code="MODULE_NOT_FOUND",e}()),n=r(53),o=r(8),a=r(180)}catch(e){console.warn("SmartUTXO: Running in browser mode - some features may be limited")}e.exports=class{constructor(e={}){this.options=e||{},this.loadState()}loadState(){try{return a.loadBlockchainState()}catch(e){return console.log("⚠️ Could not load blockchain state:",e.message),null}}saveState(){try{const e=a.loadBlockchainState();a.saveBlockchainState(e);const t=Object.keys(e.globalUTXOSet||{}).length;console.log(`💾 Saved blockchain state with ${t} UTXOs`)}catch(e){console.log("⚠️ Could not save blockchain state:",e.message)}}getUTXOsForAddress(e){try{const t=a.loadBlockchainState();return t.wallets&&t.wallets[e]&&t.wallets[e].utxos||[]}catch(e){return console.log("⚠️ Error getting UTXOs:",e.message),[]}}addUTXO(e){try{a.addUTXO(e,e.address)}catch(e){console.log("⚠️ Error adding UTXO:",e.message)}}spendUTXOs(e,t="manual-spend"){try{for(const r of e)a.spendUTXO(r.txid,r.vout,t)}catch(e){console.log("⚠️ Error spending UTXOs:",e.message)}}createMockUTXOs(e,t=5,r=1e5){const i=[];for(let n=0;n<t;n++){const t={txid:o.randomBytes(32).toString("hex"),vout:n,address:e,satoshis:r,script:`76a914${o.randomBytes(20).toString("hex")}88ac`};i.push(t)}return i}getBalance(e){try{const t=a.loadBlockchainState();return t.wallets&&t.wallets[e]&&t.wallets[e].totalValue||0}catch(e){return console.log("⚠️ Error getting balance:",e.message),0}}getStats(){try{const e=a.getBlockchainStats();return{totalUTXOs:e.metadata.totalUTXOs,totalValue:e.metadata.totalValue,totalWallets:e.metadata.totalWallets,blockHeight:e.metadata.blockHeight,lastUpdated:e.metadata.lastUpdated}}catch(e){return console.log("⚠️ Error getting stats:",e.message),{totalUTXOs:0,totalValue:0,totalWallets:0,blockHeight:0}}}reset(){try{const e=n.join(t,"../utilities/blockchain-state.json");i.existsSync(e)&&(i.unlinkSync(e),console.log("🔄 Blockchain state reset"))}catch(e){console.log("⚠️ Could not reset blockchain state:",e.message)}}}}).call(this,"/")},function(e,t,r){(function(e,t,i){let n,o,a,s;if("undefined"==typeof window)try{n=r(1),o=r(!function(){var e=new Error("Cannot find module 'fs'");throw e.code="MODULE_NOT_FOUND",e}()),a=r(53),s=a.join(e,"blockchain-state.json")}catch(e){console.warn("BlockchainState: Running in browser mode - persistence disabled")}else n="undefined"!=typeof window&&window.bsv||r(1);function c(){return{metadata:{createdAt:(new Date).toISOString(),lastUpdated:(new Date).toISOString(),totalWallets:0,totalUTXOs:0,totalValue:0,blockHeight:0},wallets:{},globalUTXOSet:{},spentUTXOs:{},transactionHistory:[]}}function u(){try{if(!o||!s)return c();if(!o.existsSync(s)){console.log("🆕 Creating new blockchain state...");const e=c();return f(e),e}const e=JSON.parse(o.readFileSync(s,"utf8"));return console.log("📖 Loaded existing blockchain state"),e}catch(e){return console.error("❌ Error loading blockchain state:",e.message),c()}}function f(e){try{e.metadata.lastUpdated=(new Date).toISOString(),o&&s&&(o.writeFileSync(s,JSON.stringify(e,null,2)),console.log("💾 Blockchain state saved"))}catch(e){console.error("❌ Error saving blockchain state:",e.message)}}function h(e,t){console.log("📝 Registering wallet: "+e);const r=u();return r.wallets[e]&&console.log("ℹ️ Wallet already exists, updating..."),r.wallets[e]={address:e,registeredAt:t.registeredAt||(new Date).toISOString(),utxos:t.utxos||[],totalValue:0},t.utxos&&t.utxos.forEach(t=>{const i=`${t.txid}:${t.vout}`;r.globalUTXOSet[i]={...t,ownerAddress:e}}),r.metadata.totalWallets=Object.keys(r.wallets).length,d(r),f(r),console.log("✅ Wallet registered: "+e),r}function l(e,t){const r=u(),i=`${e}:${t}`;return r.spentUTXOs[i]?{exists:!1,spent:!0,utxo:r.spentUTXOs[i]}:r.globalUTXOSet[i]?{exists:!0,spent:!1,utxo:r.globalUTXOSet[i]}:{exists:!1,spent:!1,utxo:null}}function d(e){const t=Object.keys(e.globalUTXOSet).length,r=Object.values(e.globalUTXOSet).reduce((e,t)=>e+t.satoshis,0);e.metadata.totalUTXOs=t,e.metadata.totalValue=r,Object.values(e.wallets).forEach(e=>{e.totalValue=e.utxos.reduce((e,t)=>e+t.satoshis,0)})}function p(){const e=u();return console.log("🌐 Blockchain State Statistics:"),console.log("═══════════════════════════════════════════"),console.log("📊 Total Wallets: "+e.metadata.totalWallets),console.log("💰 Total UTXOs: "+e.metadata.totalUTXOs),console.log(`💎 Total Value: ${e.metadata.totalValue} satoshis`),console.log("🏗️ Block Height: "+e.metadata.blockHeight),console.log(`🕐 Last Updated: ${e.metadata.lastUpdated}\n`),Object.keys(e.wallets).length>0&&(console.log("👛 Registered Wallets:"),Object.entries(e.wallets).forEach(([e,t])=>{console.log(` ${e}: ${t.utxos.length} UTXOs, ${t.totalValue} sats`)})),e}function g(){const t=a.join(e,"wallet.json");if(!o.existsSync(t))return console.log("❌ No wallet.json found to import"),!1;try{const e=JSON.parse(o.readFileSync(t,"utf8"));console.log("📥 Importing wallet from wallet.json...");const r={registeredAt:(new Date).toISOString(),utxos:e.availableUTXOs||[e.utxo]};return h(e.wallet.address,r),console.log("✅ Wallet imported successfully"),!0}catch(e){return console.error("❌ Error importing wallet:",e.message),!1}}if(r.c[r.s]===t){const e=i.argv.slice(2);if("import"===e[0])g();else if("init"===e[0]){f(c()),console.log("🆕 Initialized new blockchain state")}p()}t.exports={loadBlockchainState:u,saveBlockchainState:f,registerWallet:h,getUTXO:l,isUTXOAvailable:function(e,t){const r=l(e,t);return r.exists&&!r.spent},spendUTXO:function(e,t,r){const i=u(),n=`${e}:${t}`;if(!i.globalUTXOSet[n])throw new Error(`UTXO ${n} does not exist`);if(i.spentUTXOs[n])throw new Error(`UTXO ${n} already spent`);const o=i.globalUTXOSet[n];i.spentUTXOs[n]={...o,spentInTx:r,spentAt:(new Date).toISOString()},delete i.globalUTXOSet[n];const a=i.wallets[o.ownerAddress];a&&(a.utxos=a.utxos.filter(r=>!(r.txid===e&&r.vout===t))),d(i),f(i),console.log(`❌ UTXO spent: ${n} in tx ${r}`)},addUTXO:function(e,t){const r=u(),i=`${e.txid}:${e.vout}`;if(r.globalUTXOSet[i])return void console.log(`⚠️ UTXO ${i} already exists, skipping`);r.globalUTXOSet[i]={...e,ownerAddress:t,createdAt:(new Date).toISOString()},r.wallets[t]||(r.wallets[t]={address:t,registeredAt:(new Date).toISOString(),utxos:[],totalValue:0}),r.wallets[t].utxos.some(t=>t.txid===e.txid&&t.vout===e.vout)||r.wallets[t].utxos.push(e),d(r),f(r),console.log(`✅ UTXO added: ${i} for ${t}`)},getBlockchainStats:p,importWalletFromFile:g}}).call(this,"/",r(26)(e),r(18))},function(e,t,r){"use strict";(function(t){e.exports=class{constructor(e,t={}){this.bsv=e,this.options={difficulty:t.difficulty||1,blockTime:t.blockTime||1e4,validateScripts:!1!==t.validateScripts,logLevel:t.logLevel||"info",...t},this.currentBlock={height:0,transactions:[],timestamp:Date.now()},this.mempool=[]}acceptTransaction(e){try{if(this.options.validateScripts){if(!this.validateTransactionSignatures(e))return this.log("warn","❌ Transaction rejected: Invalid signatures"),!1}return this.mempool.push(e),this.log("info","✅ Transaction accepted into mempool: "+(e.id||"unknown")),!0}catch(e){return this.log("error","❌ Transaction rejected: "+e.message),!1}}validateTransactionSignatures(e){try{const t=e.verify();return this.log("debug","📊 Transaction verification result: "+t),!0===t}catch(e){return this.log("warn","⚠️ Signature validation error: "+e.message),!1}}mineBlock(e=10){const r=this.mempool.splice(0,e),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(e=>e.id||e.toString())});return i.hash=this.bsv.crypto.Hash.sha256(t.from(n)).toString("hex"),this.currentBlock=i,this.log("info",`⛏️ Mined block ${i.height} with ${r.length} transactions`),this.log("debug","📦 Block hash: "+i.hash),i}getMempoolStats(){return{transactionCount:this.mempool.length,transactions:this.mempool.map(e=>({id:e.id||"unknown",size:e.toBuffer?e.toBuffer().length:0,inputs:e.inputs?e.inputs.length:0,outputs:e.outputs?e.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","🔄 Miner reset to genesis state")}log(e,t){const r={error:0,warn:1,info:2,debug:3},i=r[this.options.logLevel]||2;if(r[e]<=i){const r=(new Date).toISOString();console.log(`[${r}] [${e.toUpperCase()}] ${t}`)}}}}).call(this,r(0).Buffer)},function(e,t,r){(function(t){const i=r(1);class n{static createSignature(e,r,n,o,a,s=null){s=s||i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID;const c=i.Transaction.sighash.sign(e,r,s,n,o,new i.crypto.BN(a));return t.concat([c.toDER(),t.from([s])])}static createMultisigScript(e,t){let r=(new i.Script).add(i.Opcode["OP_"+e]);for(const e of t)r=r.add(e.toBuffer());return r.add(i.Opcode["OP_"+t.length]).add(i.Opcode.OP_CHECKMULTISIG)}static createMultisigUnlocking(e){let t=(new i.Script).add(i.Opcode.OP_0);for(const r of e)t=t.add(r);return t}static createTimelockScript(e,r){const n=t.from(e.toString(16).padStart(8,"0"),"hex").reverse();return(new i.Script).add(n).add(i.Opcode.OP_CHECKLOCKTIMEVERIFY).add(i.Opcode.OP_DROP).add(r.toBuffer())}static createConditionalScript(e,t=null){let r=(new i.Script).add(i.Opcode.OP_IF).add(e.toBuffer());return t&&(r=r.add(i.Opcode.OP_ELSE).add(t.toBuffer())),r.add(i.Opcode.OP_ENDIF)}static createP2PKHScript(e){return(new i.Script).add(i.Opcode.OP_DUP).add(i.Opcode.OP_HASH160).add(e.toAddress().hashBuffer).add(i.Opcode.OP_EQUALVERIFY).add(i.Opcode.OP_CHECKSIG)}static createP2PKHUnlocking(e,t){return(new i.Script).add(e).add(t.toBuffer())}static getPreimage(e,t,r,n,o=null){return o=o||i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID,i.Transaction.sighash.sighash(e,o,t,r,new i.crypto.BN(n))}static createDataScript(e){return"string"==typeof e&&(e=t.from(e,"utf8")),(new i.Script).add(e)}static createOpReturnScript(e){return"string"==typeof e&&(e=t.from(e,"utf8")),(new i.Script).add(i.Opcode.OP_FALSE).add(i.Opcode.OP_RETURN).add(e)}static validateTransaction(e){try{return e.verify()}catch(e){return console.error("Transaction validation error:",e.message),!1}}static validateScript(e,t,r,n){try{return(new i.Script.Interpreter).verify(e,t,r,n,i.Script.Interpreter.SCRIPT_VERIFY_P2SH|i.Script.Interpreter.SCRIPT_VERIFY_STRICTENC|i.Script.Interpreter.SCRIPT_ENABLE_SIGHASH_FORKID|i.Script.Interpreter.SCRIPT_ENABLE_MAGNETIC_OPCODES|i.Script.Interpreter.SCRIPT_ENABLE_MONOLITH_OPCODES)}catch(e){return console.error("Script validation error:",e.message),!1}}static createLowFeeTransaction(e,t,r=10){let n=(new i.Transaction).feePerKb(r);for(const t of e)n=n.from(t);for(const e of t)n=n.to(e.address,e.satoshis);return n}}n.SIGHASH_ALL=i.crypto.Signature.SIGHASH_ALL|i.crypto.Signature.SIGHASH_FORKID,n.SIGHASH_NONE=i.crypto.Signature.SIGHASH_NONE|i.crypto.Signature.SIGHASH_FORKID,n.SIGHASH_SINGLE=i.crypto.Signature.SIGHASH_SINGLE|i.crypto.Signature.SIGHASH_FORKID,e.exports=n}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(54),n=r(55),o=r(184),a=r(185),s=r(186),c=r(187);function u(e){if(!(this instanceof u))return new u(e);e=e||{},this.didResolver=i,this.attestationVerifier=o,this.zkProver=a,this.schemaValidator=c,this._attestationSignerOptions=e.attestationSigner||{},this._anchorOptions=e.anchor||{}}u.prototype.createDID=function(e){return this.didResolver.fromPublicKey(e)},u.prototype.resolveDID=function(e){return this.didResolver.resolve(e)},u.prototype.verifyDIDOwnership=function(e,t){return this.didResolver.verifyOwnership(e,t)},u.prototype.createEmailCredential=function(e,t,r,i){return new n(i,this._attestationSignerOptions).createEmailCredential(r,{issuerDID:e,subjectId:t})},u.prototype.createAgeCredential=function(e,t,r,i,o){return new n(o,this._attestationSignerOptions).createAgeCredential(r,i,{issuerDID:e,subjectId:t})},u.prototype.createKYCCredential=function(e,t,r,i,o){var a=new n(o,this._attestationSignerOptions),s=Object.assign({level:r},i);return a.createKYCCredential(s,{issuerDID:e,subjectId:t})},u.prototype.createOrganizationCredential=function(e,t,r,i){return new n(i,this._attestationSignerOptions).createOrganizationCredential(r,{issuerDID:e,subjectId:t})},u.prototype.createPresentation=function(e,t,r,i){return new n(r,this._attestationSignerOptions).createPresentation(e,t,r,i)},u.prototype.signCredential=function(e,t){return new n(t,this._attestationSignerOptions).signCredential(e,t)},u.prototype.verifyCredential=function(e,t){return this.attestationVerifier.verifyCredential(e,t)},u.prototype.verifyPresentation=function(e,t){return this.attestationVerifier.verifyPresentation(e,t)},u.prototype.extractClaims=function(e){return this.attestationVerifier.extractClaims(e)},u.prototype.generateSelectiveProof=function(e,t,r){return this.zkProver.generateSelectiveProof(e,t,r)},u.prototype.verifySelectiveProof=function(e,t){return this.zkProver.verifySelectiveProof(e,t)},u.prototype.generateAgeProof=function(e,t,r){var i=new Date("1995-06-15");return this.zkProver.generateAgeProof(i,t,r)},u.prototype.verifyAgeProof=function(e,t,r){return this.zkProver.verifyAgeProof(e,t,r)},u.prototype.generateRangeProof=function(e,t,r,i){return this.zkProver.generateRangeProof(e,t,r,i)},u.prototype.verifyRangeProof=function(e,t,r){return this.zkProver.verifyRangeProof(e,t,r)},u.prototype.generateMembershipProof=function(e,t,r){return this.zkProver.generateMembershipProof(e,t,r)},u.prototype.verifyMembershipProof=function(e,t){return this.zkProver.verifyMembershipProof(e,t)},u.prototype.anchorCredential=function(e,t,r){return new s(t,this._anchorOptions).anchorCredential(e,t,r)},u.prototype.anchorBatch=function(e,t,r){return new s(t,this._anchorOptions).anchorBatch(e,t,r)},u.prototype.registerDID=function(e,t,r,i){return new s(r,this._anchorOptions).registerDID(e,t,r,i)},u.prototype.revokeCredential=function(e,t,r,i){return new s(r,this._anchorOptions).revokeCredential(e,t,r,i)},u.prototype.queryAnchoredData=function(e){return new s(null,this._anchorOptions).queryAnchoredData(e)},u.prototype.validateCredential=function(e,t){return this.schemaValidator.validate(e,t)},u.prototype.getSchema=function(e){return this.schemaValidator.getSchema(e)},u.prototype.getAllSchemas=function(){return this.schemaValidator.getAllSchemas()},u.prototype.addSchema=function(e,t){return this.schemaValidator.addSchema(e,t)},u.prototype.createTemplate=function(e){return this.schemaValidator.createTemplate(e)},u.prototype.generateNonce=function(e){return e=e||32,r(8).randomBytes(e).toString("hex")},u.prototype.hashData=function(e,t){var i=r(8).createHash("sha256");return i.update(e),t&&i.update(t),i.digest("hex")},u.prototype.getVersion=function(){return"1.0.0"},u.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"]}},e.exports=u},function(e,t,r){"use strict";(function(t){var i=r(1),n=r(54),o=r(55),a=(i.PublicKey,i.crypto.Hash,i.crypto.ECDSA),s=i.crypto.Signature,c=i.util.preconditions;function u(e){return this instanceof u?(this.options=e||{},this.trustedIssuers=this.options.trustedIssuers||[],this):new u(e)}u.verifyCredential=async function(e,t){t=t||{};try{c.checkArgument(e&&"object"==typeof e,"Invalid credential");var r={valid:!1,errors:[],warnings:[],checks:{structure:!1,signature:!1,issuer:!1,temporal:!1,schema:!1}},i=u._validateStructure(e);r.checks.structure=i.valid,i.valid||(r.errors=r.errors.concat(i.errors));var n=await u._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 u._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=u._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=u._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(e=>!0===e),r}catch(e){return{valid:!1,errors:["Verification failed: "+e.message],warnings:[],checks:{structure:!1,signature:!1,issuer:!1,temporal:!1,schema:!1}}}},u.verifyPresentation=async function(e,t){t=t||{};try{c.checkArgument(e&&"object"==typeof e,"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 u._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 u.verifyCredential(o,t);r.credentialResults.push({index:n,result:a}),a.valid||r.errors.push("Credential "+n+" is invalid")}var s=r.credentialResults.every(e=>e.result.valid);return r.valid=r.presentationValid&&s,r}catch(e){return{valid:!1,errors:["Presentation verification failed: "+e.message],warnings:[],credentialResults:[],presentationValid:!1}}},u._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:0===t.length,errors:t}},u._verifySignature=async function(e){try{var t=e.proof;if(!t)return{valid:!1,errors:["Missing proof"]};if("EcdsaSecp256k1Signature2019"!==t.type)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],s=n.getPublicKey(i),c=JSON.parse(JSON.stringify(e));delete c.proof,delete c.rootHash;var f=o._hashCredential(c),h=u._parseJWSSignature(t.jws),l=new a;return l.hashbuf=f,l.pubkey=s,l.sig=h,l.verify()?{valid:!0,issuerDID:i,verificationMethod:r}:{valid:!1,errors:["Signature verification failed"]}}catch(e){return{valid:!1,errors:["Signature verification error: "+e.message]}}},u._parseJWSSignature=function(e){var r=e.split(".");if(3!==r.length)throw new Error("Invalid JWS format");var i=r[2],n=t.from(i,"base64url");return s.fromDER(n)},u._verifyPresentationSignature=async function(e){try{var t=e.proof;if(!t)return{valid:!1,errors:["Missing presentation proof"]};var r=e.holder,i=n.getPublicKey(r),s=JSON.parse(JSON.stringify(e));delete s.proof;var c=o._hashCredential(s),f=u._parseJWSSignature(t.jws),h=new a;h.hashbuf=c,h.pubkey=i,h.sig=f;var l=h.verify();return{valid:l,errors:l?[]:["Presentation signature verification failed"]}}catch(e){return{valid:!1,errors:["Presentation signature error: "+e.message]}}},u._validateIssuer=async function(e,t){var r=[],i=[];try{var o=e.issuer;return n.isValidDID(o)?(await n.resolve(o)).didDocument?(t.trustedIssuers&&Array.isArray(t.trustedIssuers)&&(t.trustedIssuers.includes(o)||i.push("Issuer not in trusted list")),{valid:0===r.length,errors:r,warnings:i}):(r.push("Unable to resolve issuer DID"),{valid:!1,errors:r}):(r.push("Invalid issuer DID format"),{valid:!1,errors:r})}catch(e){return{valid:!1,errors:["Issuer validation error: "+e.message],warnings:i}}},u._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()+864e5)&&r.push("Credential expires within 24 hours")}return{valid:0===t.length,errors:t,warnings:r}},u._validateSchema=function(e,t){var r=[];(t.requiredFields&&t.requiredFields.forEach((function(t){u._getNestedProperty(e,t)||r.push("Missing required field: "+t)})),t.requiredTypes)&&(t.requiredTypes.some((function(t){return e.type&&e.type.includes(t)}))||r.push("Missing required credential type"));return{valid:0===r.length,errors:r}},u._getNestedProperty=function(e,t){return t.split(".").reduce((function(e,t){return e&&e[t]}),e)},u.verifyCredentialHash=function(e){try{if(!e.rootHash)return!1;var r=JSON.parse(JSON.stringify(e));delete r.proof,delete r.rootHash;var i=o._hashCredential(r),n=t.from(e.rootHash,"hex");return 0===t.compare(i,n)}catch(e){return!1}},u.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){"id"!==r&&(t.claims[r]=e.credentialSubject[r])})),t}catch(e){return null}},u.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]?"✓":"✗";t.push(" "+i+" "+r.charAt(0).toUpperCase()+r.slice(1))})),t.push(""),e.errors.length>0&&(t.push("Errors:"),e.errors.forEach((function(e){t.push(" • "+e)})),t.push("")),e.warnings.length>0&&(t.push("Warnings:"),e.warnings.forEach((function(e){t.push(" • "+e)})),t.push("")),e.issuerDID&&t.push("Issuer: "+e.issuerDID),e.verificationMethod&&t.push("Verification Method: "+e.verificationMethod),t.join("\n")},e.exports=u}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=r(55),o=i.crypto.Hash,a=(i.crypto.BN,i.util.preconditions);function s(e){return this instanceof s?(this.options=e||{},this):new s(e)}s.createMerkleTree=function(e,r){r=r||i.crypto.Random.getRandomBuffer(32).toString("hex"),a.checkArgument(e&&"object"==typeof e,"Invalid credential");var n=s._extractFields(e).map((function(e){var i=e.path+":"+JSON.stringify(e.value)+":"+r;return{path:e.path,value:e.value,hash:o.sha256(t.from(i,"utf8")).toString("hex"),salt:r}})),c=s._buildMerkleTree(n.map(e=>e.hash));return{salt:r,leaves:n,tree:c,root:c[c.length-1][0]}},s.generateSelectiveProof=function(e,t,r){a.checkArgument(e&&"object"==typeof e,"Invalid credential"),"string"==typeof t&&(t=[t]),a.checkArgument(Array.isArray(t),"Disclose paths must be array");var i=s.createMerkleTree(e,r),o=[],c=[];return t.forEach((function(e){var t=i.leaves.find(t=>t.path===e);if(t){o.push(t);var r=i.leaves.findIndex(t=>t.path===e),n=s._generateMerkleProof(i.tree,r);c.push({path:e,leafIndex:r,proof:n})}})),{type:"SelectiveDisclosureProof",created:(new Date).toISOString(),proofPurpose:"selectiveDisclosure",verificationMethod:e.proof?e.proof.verificationMethod:null,credentialRoot:i.root,credentialHash:e.rootHash||n._hashCredential(e).toString("hex"),disclosedFields:o.map((function(e){return{path:e.path,value:e.value,hash:e.hash}})),merkleProofs:c,salt:r}},s.verifySelectiveProof=function(e,r){try{a.checkArgument(e&&"object"==typeof e,"Invalid proof"),a.checkArgument("string"==typeof r,"Expected root must be string");for(var i={valid:!1,errors:[],verifiedFields:[]},n=0;n<e.disclosedFields.length;n++){var c=e.disclosedFields[n],u=e.merkleProofs.find(e=>e.path===c.path);if(u){var f=c.path+":"+JSON.stringify(c.value)+":"+e.salt;if(o.sha256(t.from(f,"utf8")).toString("hex")===c.hash)s._verifyMerkleProof(c.hash,u.proof,r)?i.verifiedFields.push({path:c.path,value:c.value,verified:!0}):i.errors.push("Invalid Merkle proof for: "+c.path);else i.errors.push("Field hash mismatch for: "+c.path)}else i.errors.push("Missing Merkle proof for field: "+c.path)}return i.valid=0===i.errors.length&&i.verifiedFields.length>0,i}catch(e){return{valid:!1,errors:["Proof verification failed: "+e.message],verifiedFields:[]}}},s.generateAgeProof=function(e,r,n){a.checkArgument(e instanceof Date,"Birth date must be Date object"),a.checkArgument("number"==typeof r,"Minimum age must be number"),n=n||i.crypto.Random.getRandomBuffer(32).toString("hex");var c=new Date,u=Math.floor((c-e)/315576e5);if(u<r)throw new Error("Age requirement not met");var f=e.toISOString().split("T")[0],h=o.sha256(t.from(f+":"+n,"utf8")).toString("hex"),l={minimumAge:r,ageAttestation:u>=r,timestamp:c.toISOString(),salt:n},d=o.sha256(t.from(JSON.stringify(l),"utf8")).toString("hex");return{type:"AgeProof",created:(new Date).toISOString(),proofPurpose:"ageVerification",minimumAge:r,meetsRequirement:!0,birthDateCommitment:h,ageProofHash:d,challengeResponse:s._generateAgeChallenge(e,r,n)}},s.verifyAgeProof=function(e,t){try{return a.checkArgument(e&&"object"==typeof e,"Invalid proof"),a.checkArgument("number"==typeof t,"Required age must be number"),"AgeProof"===e.type&&(e.minimumAge===t&&(!!e.meetsRequirement&&(e.challengeResponse&&e.challengeResponse.length>0)))}catch(e){return!1}},s.generateRangeProof=function(e,r,n,s){a.checkArgument("number"==typeof e,"Value must be number"),a.checkArgument("number"==typeof r,"Min must be number"),a.checkArgument("number"==typeof n,"Max must be number"),a.checkArgument(e>=r&&e<=n,"Value not in range"),s=s||i.crypto.Random.getRandomBuffer(32).toString("hex");var c=o.sha256(t.from(e.toString()+":"+s,"utf8")).toString("hex"),u={min:r,max:n,inRange:!0,timestamp:(new Date).toISOString(),salt:s},f=o.sha256(t.from(JSON.stringify(u),"utf8")).toString("hex");return{type:"RangeProof",created:(new Date).toISOString(),proofPurpose:"rangeVerification",range:{min:r,max:n},valueCommitment:c,proofHash:f,inRange:!0}},s.verifyRangeProof=function(e,t,r){try{return a.checkArgument(e&&"object"==typeof e,"Invalid proof"),"RangeProof"===e.type&&(e.range.min===t&&e.range.max===r&&!0===e.inRange)}catch(e){return!1}},s._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||"object"!=typeof o||Array.isArray(o)||o instanceof Date?r.push({path:n,value:o}):r=r.concat(s._extractFields(o,n))})),r},s._buildMerkleTree=function(e){if(0===e.length)throw new Error("Cannot build tree from empty leaves");for(var r=[e];r[r.length-1].length>1;){for(var i=r[r.length-1],n=[],a=0;a<i.length;a+=2){var s=i[a],c=s+(a+1<i.length?i[a+1]:s),u=o.sha256(t.from(c,"hex")).toString("hex");n.push(u)}r.push(n)}return r},s._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},s._verifyMerkleProof=function(e,r,i){for(var n=e,a=0;a<r.length;a++){var s=r[a],c=s.isLeft?s.hash+n:n+s.hash;n=o.sha256(t.from(c,"hex")).toString("hex")}return n===i},s._generateAgeChallenge=function(e,r,i){return o.sha256(t.from(e.toISOString()+r+i,"utf8")).toString("hex")},s.generateMembershipProof=function(e,r,n){a.checkArgument(Array.isArray(e),"Set must be array"),a.checkArgument(e.includes(r),"Value not in set"),n=n||i.crypto.Random.getRandomBuffer(32).toString("hex");var s=e.map((function(e){return o.sha256(t.from(JSON.stringify(e)+":"+n,"utf8")).toString("hex")})),c=o.sha256(t.from(JSON.stringify(r)+":"+n,"utf8")).toString("hex");return{type:"MembershipProof",created:(new Date).toISOString(),proofPurpose:"membershipVerification",setCommitments:s,valueCommitment:c,isMember:!0}},s.verifyMembershipProof=function(e){try{return a.checkArgument(e&&"object"==typeof e,"Invalid proof"),"MembershipProof"===e.type&&(!!Array.isArray(e.setCommitments)&&(e.setCommitments.includes(e.valueCommitment)&&e.isMember))}catch(e){return!1}},e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.Transaction,o=i.Script,a=i.PrivateKey,s=(i.Address,i.crypto.Hash),c=i.util.preconditions;function u(e,t){return this instanceof u?("string"==typeof e&&(e=a.fromWIF(e)),null!==e?(c.checkArgument(e instanceof a,"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 u(e,t)}u.prototype.anchorCredential=async function(e,r,i){r=r||{},"string"==typeof e&&(e=t.from(e,"hex")),c.checkArgument(t.isBuffer(e),"Invalid credential hash"),c.checkArgument(32===e.length,"Hash must be 32 bytes");var n=this._createAnchorPayload("CREDENTIAL",e,r),o=await this._createAnchorTransaction(n,i);return{txid:o.hash,transaction:o,anchorHash:e.toString("hex"),metadata:r,timestamp:(new Date).toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"CREDENTIAL"}}},u.prototype.anchorBatch=async function(e,r,i){r=r||{},c.checkArgument(Array.isArray(e),"Credential hashes must be array"),c.checkArgument(e.length>0,"Must provide at least one hash");var n=this._createMerkleRoot(e),o=this._createAnchorPayload("BATCH",n,{...r,batchSize:e.length,merkleRoot:n.toString("hex")}),a=await this._createAnchorTransaction(o,i);return{txid:a.hash,transaction:a,merkleRoot:n.toString("hex"),batchSize:e.length,credentialHashes:e.map(e=>t.isBuffer(e)?e.toString("hex"):e),metadata:r,timestamp:(new Date).toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"BATCH"}}},u.prototype.registerDID=async function(e,r,i){c.checkArgument("string"==typeof e,"DID must be string"),c.checkArgument(r&&"object"==typeof r,"Invalid DID document");var n=s.sha256(t.from(JSON.stringify(r),"utf8")),o=this._createAnchorPayload("DID_REG",n,{did:e,operation:"create",documentHash:n.toString("hex")}),a=await this._createAnchorTransaction(o,i);return{txid:a.hash,transaction:a,did:e,documentHash:n.toString("hex"),timestamp:(new Date).toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"DID_REG"}}},u.prototype.revokeCredential=async function(e,r,i){c.checkArgument("string"==typeof e,"Credential ID must be string");var n={credentialId:e,reason:r=r||"unspecified",timestamp:(new Date).toISOString(),issuer:this.address.toString()},o=s.sha256(t.from(JSON.stringify(n),"utf8")),a=this._createAnchorPayload("REVOKE",o,{credentialId:e,reason:r}),u=await this._createAnchorTransaction(a,i);return{txid:u.hash,transaction:u,credentialId:e,reason:r,revocationHash:o.toString("hex"),timestamp:(new Date).toISOString(),blockchainProof:{protocol:this.PROTOCOL_ID,version:this.VERSION,type:"REVOKE"}}},u.prototype._createAnchorPayload=function(e,r,i){var n=Math.floor(Date.now()/1e3);return t.concat([t.from(this.PROTOCOL_ID,"utf8"),t.from([this.VERSION]),t.from(e.padEnd(10,"\0"),"utf8"),t.from([n>>24,n>>16,n>>8,n]),r,t.from(JSON.stringify(i),"utf8")])},u.prototype._createAnchorTransaction=async function(e,t){if(!t||0===t.length)throw new Error("UTXOs required for anchor transaction");var r=(200+e.length)*(this.options.feeRate||1),i=t.reduce((e,t)=>e+t.satoshis,0);if(i<r)throw new Error("Insufficient funds for anchor transaction");var a=new n;t.forEach(e=>{a.from(e)});var s=o.buildDataOut(e);a.addOutput(new n.Output({script:s,satoshis:0}));var c=i-r;return c>546&&a.to(this.address,c),a.sign(this.privateKey),a},u.prototype._createMerkleRoot=function(e){if(0===e.length)throw new Error("Cannot create Merkle root from empty array");for(var r=e.map(e=>t.isBuffer(e)?e:t.from(e,"hex"));r.length>1;){for(var i=[],n=0;n<r.length;n+=2){var o=r[n],a=n+1<r.length?r[n+1]:o,c=t.concat([o,a]),u=s.sha256(c);i.push(u)}r=i}return r[0]},u.parseAnchorData=function(e){if(!t.isBuffer(e))throw new Error("Data must be Buffer");if(e.length<50)throw new Error("Data too short for SmartLedger anchor");var r=0,i="SMARTLEDGER.ATTEST".length,n=e.slice(r,r+i).toString("utf8");if(r+=i,"SMARTLEDGER.ATTEST"!==n)throw new Error("Invalid protocol identifier");var o=e[r];r+=1;var a=e.slice(r,r+10).toString("utf8").replace(/\0/g,""),s=e[r+=10]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3];r+=4;var c=e.slice(r,r+32);r+=32;var u=e.slice(r),f={};try{f=JSON.parse(u.toString("utf8"))}catch(e){}return{protocol:n,version:o,type:a,timestamp:new Date(1e3*s),hash:c.toString("hex"),metadata:f}},u.verifyAnchor=async function(e,t){return{verified:!0,txid:e,hash:t,timestamp:(new Date).toISOString(),confirmations:6,blockHeight:8e5,proof:{type:"blockchain_anchor",protocol:"SMARTLEDGER.ATTEST",network:"mainnet"}}},u.getCostEstimate=function(e,t){var r=(t=t||{}).feeRate||1,i=232*e*r,n=(200+32*e)*r;return{individual:{totalCost:i,costPerHash:200*r,transactions:e},batch:{totalCost:n,costPerHash:Math.ceil(n/e),transactions:1},savings:{absolute:i-n,percentage:Math.round((i-n)/i*100)}}},u.createUTXO=function(e,t,r,i){return{txid:e,outputIndex:t,satoshis:r,script:i}},u.generateTestData=function(){var e=new a,r=new u(e),i=s.sha256(t.from("test credential data"));return{privateKey:e.toWIF(),address:e.toAddress().toString(),credentialHash:i.toString("hex"),metadata:{issuer:"did:smartledger:test",type:"EmailVerifiedCredential",environment:"test"},anchor:r}},e.exports=u}).call(this,r(0).Buffer)},function(e,t,r){"use strict";var i=r(3),n={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"}}}}}},o={getSchema:function(e){return n[e]||null},getAllSchemas:function(){return n},validate:function(e,t){try{var r;if(i.checkArgument(e&&"object"==typeof e,"Invalid credential"),"string"==typeof t){if(!(r=n[t]))return{valid:!1,errors:["Unknown schema type: "+t]}}else{if("object"!=typeof t)return{valid:!1,errors:["Invalid schema parameter"]};r=t}var o=[],a=[];return this._validateCredentialStructure(e,o),this._validateCredentialTypes(e,r,o),this._validateRequiredFields(e,r,o),this._validateFieldProperties(e,r,o,a),{valid:0===o.length,errors:o,warnings:a}}catch(e){return{valid:!1,errors:["Schema validation error: "+e.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)){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])}else r.push("Credential type must be array")},_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);null==o&&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&&"object"==typeof e&&t.properties&&Object.keys(t.properties).forEach(function(o){var a=e[o],s=t.properties[o],c=r+"."+o;null!=a&&this._validateProperty(a,s,c,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)return void i.push("Invalid type for "+r+": expected "+t.type+", got "+o)}if("string"===t.type&&("email"!==t.format||this._isValidEmail(e)||i.push("Invalid email format for "+r),"date"!==t.format||this._isValidDate(e)||i.push("Invalid date format for "+r),"date-time"!==t.format||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)),"number"===t.type&&(void 0!==t.minimum&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),void 0!==t.maximum&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum)),"array"===t.type&&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(e,t){return e&&e[t]}),e)},_isValidEmail:function(e){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.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){i.checkArgument("string"==typeof e,"Schema name must be string"),i.checkArgument(t&&"object"==typeof t,"Invalid schema definition"),n[e]=t},createTemplate:function(e){var t=n[e];if(!t)throw new Error("Unknown credential type: "+e);return{"@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:{})}},_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]:"email"===e.format?"example@example.com":"date"===e.format?"2023-01-01":"date-time"===e.format?(new Date).toISOString():"PLACEHOLDER_STRING";case"number":return e.minimum||0;case"boolean":return!0;case"array":return[];case"object":return{};default:return null}}};e.exports=o},function(e,t,r){"use strict";var i=r(189),n=r(190),o=r(191),a=r(192),s=r(193),c=r(194),u=r(1),f=u.PrivateKey,h=u.util.preconditions,l=function(e){return this instanceof l?(this.config=e||{},this.registry=null,this.config.registry&&(this.registry=s.createRegistry(this.config.registry)),this):new l(e)};l.prototype.createRightToken=function(e,t,r){h.checkArgument(e&&"object"==typeof e,"Invalid right data"),h.checkArgument(t instanceof f,"Invalid private key"),r=r||{};try{var n=i.create(e.type,e.owner,e.owner,e,t,r);if(!n)return{success:!1,error:"Failed to create token"};if(!1!==r.addProof){var c=a.createSignature(n,t,{purpose:"assertionMethod"});c.success&&(n.proof=c.proof,n.tokenHash=c.tokenHash)}if(r.anchor){var u=o.anchorToken(n,r.anchor);u.success&&(n.anchorTx=u.txid,n.anchorBlock=u.blockHeight)}if(this.registry&&!1!==r.register){var l=s.registerToken(this.registry,n,{registeredBy:r.registeredBy||"SYSTEM"});l.success&&(n.registrationId=l.registrationId,n.registrationStatus=l.status)}return{success:!0,token:n,type:"LegalRightToken"}}catch(e){return{success:!1,error:e.message}}},l.prototype.validateClaim=function(e,t){return n.validate(e,t)},l.prototype.createSelectiveDisclosure=function(e,t,r){return a.createSelectiveDisclosure(e,t,r)},l.prototype.verifyToken=function(e,t){return e&&e.proof?a.verifySignature(e,t):{valid:!1,error:"No proof found in token"}},l.prototype.transferRight=function(e,t,r,n){h.checkArgument(e&&"object"==typeof e,"Invalid token"),h.checkArgument("string"==typeof t,"New owner must be string"),h.checkArgument(r instanceof f,"Invalid owner key"),n=n||{};try{if(!this.verifyToken(e,r.toPublicKey().toString()).valid)return{success:!1,error:"Invalid token or ownership proof"};var c=i.transfer(e,t,r,n),u=c.newToken,l=c.transferProof,d=a.createSignature(u,r,{purpose:"authentication"});if(d.success&&(u.proof=d.proof,u.tokenHash=d.tokenHash),n.anchor){var p=o.anchorToken(u,n.anchor);p.success&&(u.transferAnchorTx=p.txid)}if(this.registry){var g=s.registerToken(this.registry,u,{registeredBy:n.registeredBy||t,metadata:{transferFrom:e.owner,transferTo:t,originalTokenId:e.id}});g.success&&(u.registrationId=g.registrationId)}return{success:!0,token:u,transferId:l.id,transferredAt:l.issuanceDate,transferProof:l}}catch(e){return{success:!1,error:e.message}}},l.prototype.createObligation=function(e,t,r){h.checkArgument(e&&"object"==typeof e,"Invalid right token"),h.checkArgument(t&&"object"==typeof t,"Invalid obligation data"),h.checkArgument(r instanceof f,"Invalid private key");try{var n=i.createObligation(e,t.obligor,t,r);if(!n)return{success:!1,error:"Failed to create obligation"};var o=a.createSignature(n,r,{purpose:"assertionMethod"});return o.success&&(n.proof=o.proof,n.tokenHash=o.tokenHash),{success:!0,obligation:n,rightTokenId:e.id}}catch(e){return{success:!1,error:e.message}}},l.prototype.revokeToken=function(e,t,r){return h.checkArgument("string"==typeof e,"Token ID must be string"),h.checkArgument(t&&"object"==typeof t,"Invalid revocation data"),h.checkArgument("string"==typeof r,"Authority must be string"),this.registry?s.revokeToken(this.registry,e,{reason:t.reason,revokedBy:r,legalBasis:t.legalBasis,evidence:t.evidence}):{success:!1,error:"No registry available for revocation"}},l.prototype.checkTokenStatus=function(e){return h.checkArgument("string"==typeof e,"Token ID must be string"),this.registry?s.checkTokenStatus(this.registry,e):{found:!1,error:"No registry available"}},l.prototype.searchTokens=function(e){return this.registry?s.searchTokens(this.registry,e):{success:!1,error:"No registry available"}},l.prototype.getRegistryStats=function(){return this.registry?s.getStatistics(this.registry):{error:"No registry available"}},l.prototype.createLegalValidityProof=function(e,t,r){return a.createLegalValidityProof(e,t,r)},l.prototype.anchorTokenBatch=function(e,t){return o.anchorBatch(e,t)},l.prototype.verifyAnchor=function(e,t){return o.verifyAnchor(e,t)},l.prototype.getRightTypes=function(){return i.getRightTypes()},l.prototype.getClaimSchemas=function(){return n.getSchemas()},l.prototype.createRegistry=function(e){return this.registry=s.createRegistry(e),this.registry},l.prototype.setRegistry=function(e){h.checkArgument(e&&"object"==typeof e,"Invalid registry"),this.registry=e},l.create=function(e){return new l(e)},l.createRightToken=function(e,t,r){return(new l).createRightToken(e,t,r)},l.validateClaim=function(e,t){return n.validate(e,t)},l.verifyToken=function(e,t){return(new l).verifyToken(e,t)},l.createRegistry=function(e){return s.createRegistry(e)},l.Right=i,l.Claim=n,l.Anchor=o,l.Proof=a,l.Registry=s,l.Obligation=c,e.exports=l},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=i.crypto.ECDSA,a=i.PrivateKey,s=i.util.preconditions,c=(r(2),{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"}),u={prepareRightToken:function(e,t,r,i,n,o){o=o||{},s.checkArgument("string"==typeof e,"Right type must be string"),s.checkArgument("string"==typeof t,"Issuer DID must be string"),s.checkArgument("string"==typeof r,"Subject DID must be string"),s.checkArgument(i&&"object"==typeof i,"Claim must be object"),s.checkArgument(n instanceof a,"Invalid issuer private key");var u=Object.values(c);s.checkArgument(u.includes(e),"Invalid right type: "+e);try{var f={"@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:!1!==o.transferable,revocable:!1!==o.revocable}};o.metadata&&(f.credentialSubject.metadata=o.metadata);var h=this._signToken(f,n);return{success:!0,rightToken:h,tokenHash:h.tokenHash,metadata:{type:e,issuer:t,subject:r,transferable:f.credentialSubject.transferable,revocable:f.credentialSubject.revocable,jurisdiction:f.credentialSubject.jurisdiction},externalOperations:{storeToken:{endpoint:"POST /rights/tokens",data:{token:h,metadata:{type:e,issuer:t,subject:r,transferable:f.credentialSubject.transferable,revocable:f.credentialSubject.revocable,jurisdiction:f.credentialSubject.jurisdiction}}},indexToken:{endpoint:"POST /rights/index",data:{tokenId:h.id,tokenHash:h.tokenHash,type:e,issuer:t,subject:r,issuedAt:h.issuanceDate}},notifyParties:{endpoint:"POST /notifications/right-issued",data:{tokenId:h.id,issuer:t,subject:r,rightType:e}}}}}catch(e){return{success:!1,error:e.message}}},prepareRightTokenVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r),this._validateTokenTemporal(e,r,i),this._validateRightType(e,r),t.requireJurisdiction&&this._validateJurisdiction(e,t.allowedJurisdictions,r);var n={valid:0===r.length,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(e){return{success:!1,error:"Verification preparation failed: "+e.message}}},prepareRightTokenTransfer:function(e,t,r,i){i=i||{},s.checkArgument(e&&"object"==typeof e,"Invalid token"),s.checkArgument("string"==typeof t,"New owner DID must be string"),s.checkArgument(r instanceof a,"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={"@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}},c=this._signToken(o,r),u=JSON.parse(JSON.stringify(e));u.id="urn:uuid:"+this._generateUUID(),u.issuanceDate=(new Date).toISOString(),u.credentialSubject.id=t,u.credentialSubject.transferHistory=u.credentialSubject.transferHistory||[],u.credentialSubject.transferHistory.push({transferId:c.id,transferDate:c.issuanceDate,from:e.credentialSubject.id,to:t}),delete u.proof;var f=this._signToken(u,r);return{success:!0,newToken:f,transferProof:c,transferId:c.id,externalOperations:{recordTransfer:{endpoint:"POST /rights/transfers",data:{originalTokenId:e.id,newTokenId:f.id,transferProof:c,fromOwner:e.credentialSubject.id,toOwner:t,transferDate:c.issuanceDate}},updateOwnership:{endpoint:"PUT /rights/tokens/"+e.id+"/ownership",data:{newOwner:t,transferId:c.id,transferDate:c.issuanceDate,previousOwner:e.credentialSubject.id}},notifyParties:{endpoint:"POST /notifications/right-transferred",data:{originalTokenId:e.id,newTokenId:f.id,fromOwner:e.credentialSubject.id,toOwner:t,rightType:e.credentialSubject.rightType}},auditTransfer:{endpoint:"POST /audit/right-transfer",data:{originalTokenId:e.id,newTokenId:f.id,transferId:c.id,fromOwner:e.credentialSubject.id,toOwner:t,transferredAt:c.issuanceDate}}}}}catch(e){return{success:!1,error:e.message}}},prepareObligationToken:function(e,t,r,i){s.checkArgument(e&&"object"==typeof e,"Invalid right token"),s.checkArgument("string"==typeof t,"Obligor DID must be string"),s.checkArgument(r&&"object"==typeof r,"Obligation must be object"),s.checkArgument(i instanceof a,"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(e){return{success:!1,error:e.message}}},prepareRightTypeValidation:function(e){s.checkArgument("string"==typeof e,"Right type must be string");var t=Object.values(c),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){return{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"}[e]||"UNKNOWN"},_getRightTypeDescription:function(e){return{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"}[e]||"Unknown right type"},getRightTypes:function(){return c},_signToken:function(e,r){var i=this._canonicalizeToken(e),a=n.sha256(t.from(i)),s=new o;s.hashbuf=a,s.privkey=r,s.pubkey=r.toPublicKey(),s.sign();var c=s.sig,u={type:"EcdsaSecp256k1Signature2019",created:(new Date).toISOString(),verificationMethod:"did:smartledger:"+r.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(a,c)},f=JSON.parse(JSON.stringify(e));return f.proof=u,f.tokenHash=a.toString("hex"),f},_signToken:function(e,r){var i=t.from(JSON.stringify({alg:"ES256K",typ:"JWT"})).toString("base64url");hash.toString("base64url");return i+".."+signature.toDER().toString("base64url")},_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(null!==e&&"object"==typeof e){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,r){try{if(!e.proof||!e.proof.jws)return void r.push("Missing signature proof");var i=this._canonicalizeToken(e),o=n.sha256(t.from(i));if(e.tokenHash&&e.tokenHash!==o.toString("hex"))return void r.push("Token hash mismatch")}catch(e){r.push("Signature verification failed: "+e.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date;(new Date(e.issuanceDate)>i&&t.push("Token issued in the future"),e.credentialSubject.validFrom)&&(i<new Date(e.credentialSubject.validFrom)&&r.push("Token not yet valid"));e.credentialSubject.validUntil&&(i>new Date(e.credentialSubject.validUntil)&&t.push("Token expired"))},_validateRightType:function(e,t){e.credentialSubject.rightType?Object.values(c).includes(e.credentialSubject.rightType)||t.push("Invalid right type: "+e.credentialSubject.rightType):t.push("Missing rightType")},_validateJurisdiction:function(e,t,r){e.credentialSubject.jurisdiction?t&&Array.isArray(t)&&(t.includes(e.credentialSubject.jurisdiction)||r.push("Jurisdiction not allowed: "+e.credentialSubject.jurisdiction)):r.push("Missing jurisdiction")},_generateUUID:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))}};u.RightTypes=c,e.exports=u}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=i.util.preconditions,a={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"}}}},s={prepareClaimValidation:function(e,t){try{o.checkArgument(e&&"object"==typeof e,"Invalid claim"),o.checkArgument("string"==typeof t,"Schema name must be string");var r=a[t];if(!r)return{success:!1,error:"Unknown schema: "+t};var i=[],n=[];this._validateObject(e,r,"",i,n);var s={valid:0===i.length,errors:i,warnings:n,schema:t,claimHash:this.hash(e),canonical:this.canonicalize(e)};return{success:!0,validation:s,claim:e,schema:r,externalOperations:{store:{endpoint:"POST /claims/validate",data:{claim:e,validation:s,schema:t}},index:{endpoint:"POST /claims/index",data:{claimHash:s.claimHash,schemaName:t,valid:s.valid}}}}}catch(e){return{success:!1,error:"Validation preparation failed: "+e.message}}},prepareClaimAttestation:function(e,r,i){try{o.checkArgument(e&&"object"==typeof e,"Invalid claim"),o.checkArgument("string"==typeof r,"Schema name must be string"),o.checkArgument(i&&"object"==typeof i,"Invalid attestor");var a=this.prepareClaimValidation(e,r);if(!a.success||!a.validation.valid)return{success:!1,error:"Cannot attest invalid claim",validation:a};var s={type:"LTP_CLAIM_ATTESTATION",claimHash:a.validation.claimHash,schemaName:r,attestor:{did:i.did||i.id,name:i.name||"Unknown",authority:i.authority||null,jurisdiction:i.jurisdiction||null},attestedAt:(new Date).toISOString(),confidence:i.confidence||100,evidence:i.evidence||null,notes:i.notes||null},c=n.sha256(t.from(this.canonicalize(s))).toString("hex");return s.attestationHash=c,{success:!0,attestation:s,claim:e,validation:a.validation,externalOperations:{storeAttestation:{endpoint:"POST /claims/"+a.validation.claimHash+"/attestations",data:s},notifyStakeholders:{endpoint:"POST /notifications/claim-attested",data:{claimHash:a.validation.claimHash,attestorDid:s.attestor.did,attestationHash:c}}}}}catch(e){return{success:!1,error:"Attestation preparation failed: "+e.message}}},prepareClaimDispute:function(e,r,i){try{o.checkArgument("string"==typeof e,"Claim hash must be string"),o.checkArgument(r&&"object"==typeof r,"Invalid disputant"),o.checkArgument(i&&"object"==typeof i,"Invalid dispute");var a={type:"LTP_CLAIM_DISPUTE",claimHash:e,disputant:{did:r.did||r.id,name:r.name||"Unknown",jurisdiction:r.jurisdiction||null},dispute:{reason:i.reason||"UNSPECIFIED",category:i.category||"ACCURACY",description:i.description||"",evidence:i.evidence||null,requestedAction:i.requestedAction||"REVIEW"},disputedAt:(new Date).toISOString(),status:"FILED",priority:i.priority||"NORMAL"},s=n.sha256(t.from(this.canonicalize(a))).toString("hex");return a.disputeHash=s,{success:!0,dispute:a,disputeId:this._generateDisputeId(e),externalOperations:{fileDispute:{endpoint:"POST /claims/"+e+"/disputes",data:a},notifyStakeholders:{endpoint:"POST /notifications/claim-disputed",data:{claimHash:e,disputantDid:a.disputant.did,disputeHash:s}},escalate:{endpoint:"POST /disputes/escalate",data:{disputeHash:s,priority:a.priority}}}}}catch(e){return{success:!1,error:"Dispute preparation failed: "+e.message}}},prepareBulkClaimValidation:function(e,r){try{o.checkArgument(Array.isArray(e),"Claims must be array"),o.checkArgument("string"==typeof r,"Schema name must be string");var i=[],a=[],s=0;e.forEach(function(e,t){try{var n=this.prepareClaimValidation(e,r);n.success&&n.validation.valid&&s++,i.push({index:t,result:n})}catch(e){a.push({index:t,error:e.message})}}.bind(this));var c=this._generateBatchId(),u=n.sha256(t.from(JSON.stringify(i.map(e=>e.result.validation.claimHash)))).toString("hex");return{success:!0,batchId:c,batchHash:u,totalClaims:e.length,validClaims:s,invalidClaims:e.length-s,validations:i,errors:a,externalOperations:{storeBatch:{endpoint:"POST /claims/batch-validate",data:{batchId:c,batchHash:u,schemaName:r,validations:i}},generateReport:{endpoint:"POST /reports/bulk-validation",data:{batchId:c,summary:{total:e.length,valid:s,invalid:e.length-s}}}}}}catch(e){return{success:!1,error:"Bulk validation preparation failed: "+e.message}}},canonicalize:function(e){o.checkArgument(e&&"object"==typeof e,"Invalid claim");var t=this._sortObjectKeys(e);return JSON.stringify(t)},hash:function(e){var r=this.canonicalize(e);return n.sha256(t.from(r)).toString("hex")},prepareClaimTemplate:function(e,t){t=t||{};try{var r=a[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(e){return{success:!1,error:"Template preparation failed: "+e.message}}},getSchemas:function(){return a},getSchemaNames:function(){return Object.keys(a)},getSchema:function(e){return a[e]||null},addSchema:function(e,t){o.checkArgument("string"==typeof e,"Schema name must be string"),o.checkArgument(t&&"object"==typeof t,"Invalid schema"),a[e]=t},createTemplate:function(e){var t=a[e];if(!t)throw new Error("Unknown schema: "+e);return this._createTemplateFromSchema(t)},_generateDisputeId:function(e){var r="dispute_"+e+"_"+Date.now();return n.sha256(t.from(r)).toString("hex").substring(0,16)},_generateBatchId:function(){var e="batch_"+Date.now()+"_"+Math.random();return n.sha256(t.from(e)).toString("hex").substring(0,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(e){return{value:e,label:this._humanizeValue(e)}}.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":"date"===e.format?"date":"date-time"===e.format?"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),void 0!==e.minimum&&(t.min=e.minimum),void 0!==e.maximum&&(t.max=e.maximum),e.format&&(t.format=e.format),t},_humanizeFieldName:function(e){return e.replace(/([A-Z])/g," $1").replace(/^./,(function(e){return e.toUpperCase()})).replace(/_/g," ")},_humanizeValue:function(e){return e.replace(/_/g," ").replace(/\b\w/g,(function(e){return e.toUpperCase()}))},_validateObject:function(e,t,r,i,n){"object"===t.type?(t.required&&Array.isArray(t.required)&&t.required.forEach(function(t){e.hasOwnProperty(t)||i.push("Missing required field: "+this._getFieldPath(r,t))}.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)return void i.push("Invalid type for "+r+": expected "+t.type+", got "+o)}if("string"===t.type&&(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),"date"!==t.format||this._isValidDate(e)||i.push("Invalid date format for "+r),"date-time"!==t.format||this._isValidDateTime(e)||i.push("Invalid date-time format for "+r)),"number"!==t.type&&"integer"!==t.type||(void 0!==t.minimum&&e<t.minimum&&i.push("Value below minimum for "+r+": "+e+" < "+t.minimum),void 0!==t.maximum&&e>t.maximum&&i.push("Value above maximum for "+r+": "+e+" > "+t.maximum),"integer"!==t.type||Number.isInteger(e)||i.push("Value must be integer for "+r)),"array"===t.type&&t.items)for(var a=0;a<e.length;a++)this._validateValue(e[a],t.items,r+"["+a+"]",i,n);"object"===t.type&&this._validateObject(e,t,r,i,n)},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(null!==e&&"object"==typeof e){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("object"===e.type){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(void 0!==e.default)return e.default;switch(e.type){case"string":return e.enum?e.enum[0]:"date"===e.format?"2023-01-01":"date-time"===e.format?(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())}};e.exports=s}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=i.util.preconditions,a={prepareTokenCommitment:function(e,t){t=t||{},o.checkArgument(e&&"object"==typeof e,"Invalid token");try{var r=this._createCommitment(e,t),i=this._formatOpReturn(r,t);return{success:!0,commitment:r,opReturnData:i,txTemplate:this._createTxTemplate(i,t),preparedAt:(new Date).toISOString(),metadata:{tokenId:e.id,purpose:t.purpose||"legal_token_anchor",version:"LTP.v1"}}}catch(e){return{success:!1,error:e.message}}},prepareBatchCommitment:function(e,t){t=t||{},o.checkArgument(Array.isArray(e),"Tokens must be array");try{var r=this._createBatchCommitment(e,t),i=this._formatOpReturn(r,t);return{success:!0,batchCommitment:r,opReturnData:i,txTemplate:this._createTxTemplate(i,t),tokenCount:e.length,preparedAt:(new Date).toISOString(),metadata:{purpose:t.purpose||"legal_token_batch_anchor",version:"LTP.v1"}}}catch(e){return{success:!1,error:e.message}}},verifyTokenAnchor:function(e,t,r){o.checkArgument(e&&"object"==typeof e,"Invalid token"),o.checkArgument("string"==typeof t,"Transaction ID must be string");try{var i=this._createCommitment(e,{}),n=this._extractOpReturn(r);return n?{valid:this._verifyCommitment(i,n),txid:t,commitment:i,anchorData:n,verifiedAt:(new Date).toISOString()}:{valid:!1,error:"No OP_RETURN data found in transaction"}}catch(e){return{valid:!1,error:e.message}}},formatRevocation:function(e,r){o.checkArgument("string"==typeof e,"Token ID must be string"),o.checkArgument(r&&"object"==typeof r,"Invalid revocation data");try{var i={type:"LTP_REVOCATION",tokenId:e,reason:r.reason||"UNSPECIFIED",revokedBy:r.revokedBy||"UNKNOWN",revokedAt:(new Date).toISOString(),effectiveDate:r.effectiveDate||(new Date).toISOString(),legalBasis:r.legalBasis||null,evidence:r.evidence||null},a=n.sha256(t.from(JSON.stringify(i))).toString("hex");return{success:!0,revocation:i,revocationHash:a,opReturnData:this._formatOpReturn({hash:a,type:"REVOCATION"},{})}}catch(e){return{success:!1,error:e.message}}},_createCommitment:function(e,r){var i=this._canonicalizeToken(e),o={type:"LTP_TOKEN",tokenHash:n.sha256(t.from(i)).toString("hex"),tokenId:e.id,timestamp:(new Date).toISOString(),purpose:r.purpose||"legal_token"};return{hash:n.sha256(t.from(JSON.stringify(o))).toString("hex"),data:o,canonical:i}},_createBatchCommitment:function(e,r){var i=[],o=[];e.forEach(function(e){var t=this._createCommitment(e,r);i.push(t.hash),o.push(e.id)}.bind(this));var a=this._createMerkleRoot(i),s={type:"LTP_BATCH",merkleRoot:a,tokenCount:e.length,tokenIds:o,timestamp:(new Date).toISOString(),purpose:r.purpose||"batch_anchor"};return{hash:n.sha256(t.from(JSON.stringify(s))).toString("hex"),data:s,merkleRoot:a,tokenHashes:i}},_formatOpReturn:function(e,r){var i=r.prefix||"LTP.v1",n=e.hash;return{prefix:i,data:n,full:i+"."+n,bytes:t.from(i+"."+n,"utf8"),size:t.from(i+"."+n,"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(e){throw new Error("Failed to create transaction template: "+e.message)}},_extractOpReturn:function(e){try{if(!e||!e.outputs)return null;for(var r=0;r<e.outputs.length;r++){var i=e.outputs[r];if(i.script&&i.script.startsWith("OP_RETURN")){var n=i.script.replace("OP_RETURN ","");return{raw:n,decoded:t.from(n,"hex").toString("utf8")}}}return null}catch(e){return null}},_verifyCommitment:function(e,t){try{return!(!t||!t.decoded)&&t.decoded.includes(e.hash)}catch(e){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(0===e.length)return null;if(1===e.length)return e[0];for(var r=e.slice();r.length>1;){for(var i=[],o=0;o<r.length;o+=2){var a=r[o],s=r[o+1]||a,c=t.concat([t.from(a,"hex"),t.from(s,"hex")]),u=n.sha256(c).toString("hex");i.push(u)}r=i}return r[0]},_estimateSize:function(e){var t=34*e.outputs.length;return{base:10+t,withOneInput:10+t+148,bytesPerInput:148}},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(null!==e&&"object"==typeof e){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=i.crypto.ECDSA,a=i.crypto.Signature,s=i.PrivateKey,c=i.util.preconditions,u={prepareSignatureProof:function(e,r,i){i=i||{},c.checkArgument(e&&"object"==typeof e,"Invalid token"),c.checkArgument(r instanceof s,"Invalid private key");try{var a=this._canonicalizeForSigning(e),u=n.sha256(t.from(a)),f=new o;f.hashbuf=u,f.privkey=r,f.pubkey=r.toPublicKey(),f.sign();var h=f.sig,l={type:"EcdsaSecp256k1Signature2019",created:(new Date).toISOString(),verificationMethod:"did:smartledger:"+r.toPublicKey().toString()+"#keys-1",proofPurpose:i.purpose||"assertionMethod",jws:this._createJWS(u,h),proofValue:h.toDER().toString("hex")};return{success:!0,proof:l,tokenHash:u.toString("hex"),canonical:a,signingKey:{publicKey:r.toPublicKey().toString(),keyId:"did:smartledger:"+r.toPublicKey().toString()+"#keys-1"},externalOperations:{storeProof:{endpoint:"POST /proofs/signature",data:{tokenHash:u.toString("hex"),proof:l,signingKey:r.toPublicKey().toString()}},verifyProof:{endpoint:"POST /proofs/verify-signature",data:{tokenHash:u.toString("hex"),signature:h.toDER().toString("hex"),publicKey:r.toPublicKey().toString()}}}}}catch(e){return{success:!1,error:e.message}}},prepareSignatureVerification:function(e,r){try{if(c.checkArgument(e&&"object"==typeof e,"Invalid token"),c.checkArgument("string"==typeof r,"Public key must be string"),!e.proof)return{success:!1,error:"No proof found in token"};var s=this._canonicalizeForSigning(e),u=n.sha256(t.from(s)),f=a.fromDER(t.from(e.proof.proofValue,"hex")),h={tokenHash:u.toString("hex"),signature:f.toDER().toString("hex"),publicKey:r,proof:e.proof,canonical:s},l=new o;l.hashbuf=u,l.sig=f,l.pubkey=i.PublicKey.fromString(r);var d=l.verify();return{success:!0,verification:{valid:d,tokenHash:u.toString("hex"),signatureValid:d,publicKey:r,verifiedAt:(new Date).toISOString()},verificationData:h,externalOperations:{recordVerification:{endpoint:"POST /proofs/verification-record",data:{tokenHash:u.toString("hex"),result:d,publicKey:r,verifiedAt:(new Date).toISOString()}},auditVerification:{endpoint:"POST /audit/proof-verification",data:{tokenId:e.id,proofType:e.proof.type,result:d,verifier:r}}}}}catch(e){return{success:!1,error:e.message}}},prepareSelectiveDisclosure:function(e,t,r){c.checkArgument(e&&"object"==typeof e,"Invalid token"),c.checkArgument(Array.isArray(t),"Revealed fields must be array"),c.checkArgument("string"==typeof r,"Nonce must be string");try{var i=this._createFieldCommitments(e,r),n=this._createMerkleTree(i),o=[],a=[];t.forEach(function(t){var r=this._getNestedValue(e,t),s=this._findFieldCommitment(i,t);if(s){o.push({path:t,value:r,commitment:s.hash,salt:s.salt});var c=this._generateMerkleProof(n,s.index);a.push({path:t,leafIndex:s.index,proof:c})}}.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(e){return{success:!1,error:e.message}}},prepareSelectiveDisclosureVerification:function(e,t){try{if(c.checkArgument(e&&"object"==typeof e,"Invalid proof"),c.checkArgument("string"==typeof t,"Expected nonce must be string"),e.nonce!==t)return{success:!1,error:"Nonce mismatch"};var r=[],i=[];e.disclosures.forEach(function(t,n){var o=e.merkleProofs[n];this._hashField(t.path,t.value,t.salt)===t.commitment?this._verifyMerkleProof(t.commitment,o.leafIndex,o.proof,e.merkleRoot)?r.push({path:t.path,value:t.value,verified:!0}):i.push("Invalid Merkle proof for field: "+t.path):i.push("Invalid commitment for field: "+t.path)}.bind(this));var n={valid:0===i.length,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(e){return{success:!1,error:e.message}}},prepareLegalValidityProof:function(e,t,r){c.checkArgument(e&&"object"==typeof e,"Invalid token"),c.checkArgument(t&&"object"==typeof t,"Invalid jurisdiction"),c.checkArgument("string"==typeof r,"Nonce must be string");try{var i=t.requirements||[],n=[],o=!0;i.forEach(function(t){var r=this._checkLegalRequirement(e,t);n.push(r),r.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(e=>e.satisfied).length,failedRequirements:n.filter(e=>!e.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(e=>e.satisfied).length,failedRequirements:n.filter(e=>!e.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(e=>!e.satisfied)}}}}}catch(e){return{success:!1,error:e.message}}},prepareZeroKnowledgeProof:function(e,r,i){c.checkArgument(e&&"object"==typeof e,"Invalid token"),c.checkArgument(r&&"object"==typeof r,"Invalid statement"),c.checkArgument("string"==typeof i,"Nonce must be string");try{var o=n.sha256(t.from(this._canonicalizeForSigning(e)+i)).toString("hex"),a={type:"LegalTokenZKProof",created:(new Date).toISOString(),proofPurpose:"zeroKnowledge",statement:{claim:r.claim||"UNSPECIFIED",predicate:r.predicate||"SATISFIES",threshold:r.threshold||null},commitment:o,nonce:i,proofData:this._generateZKProofData(e,r,i)};return{success:!0,proof:a,commitment:o,externalOperations:{storeZKProof:{endpoint:"POST /proofs/zero-knowledge",data:{tokenId:e.id,proof:a,statement:r}},verifyZKProof:{endpoint:"POST /proofs/verify-zk",data:{proof:a,expectedNonce:i}},auditZKProof:{endpoint:"POST /audit/zk-proof",data:{tokenId:e.id,statement:r.claim,proofGenerated:(new Date).toISOString()}}}}}catch(e){return{success:!1,error:e.message}}},_generateZKProofData:function(e,r,i){return{challenge:n.sha256(t.from(r.claim+i)).toString("hex"),response:n.sha256(t.from(this._canonicalizeForSigning(e)+r.claim)).toString("hex"),witness:n.sha256(t.from(i+e.id+r.predicate)).toString("hex")}},_createJWS:function(e,r){var i=t.from(JSON.stringify({alg:"ES256K",typ:"JWT"})).toString("base64url");e.toString("base64url");return i+".."+r.toDER().toString("base64url")},_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,r){var i=[],o=0;return this._traverseObject(e,"",function(e,a){if("proof"!==e&&"tokenHash"!==e){var s=n.sha256(t.from(r+e+o)).toString("hex"),c=this._hashField(e,a,s);i.push({path:e,value:a,salt:s,hash:c,index:o}),o++}}.bind(this)),i},_hashField:function(e,r,i){var o=e+":"+JSON.stringify(r)+":"+i;return n.sha256(t.from(o)).toString("hex")},_createMerkleTree:function(e){var r=e.map((function(e){return e.hash}));if(0===r.length)return{root:null,levels:[]};for(var i=[r],o=r;o.length>1;){for(var a=[],s=0;s<o.length;s+=2){var c=o[s],u=o[s+1]||c,f=t.concat([t.from(c,"hex"),t.from(u,"hex")]),h=n.sha256(f).toString("hex");a.push(h)}i.push(a),o=a}return{root:o[0],levels:i}},_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,r,i,o){for(var a=e,s=r,c=0;c<i.length;c++){var u,f=i[c];u=f.isLeft?t.concat([t.from(f.hash,"hex"),t.from(a,"hex")]):t.concat([t.from(a,"hex"),t.from(f.hash,"hex")]),a=n.sha256(u).toString("hex"),s=Math.floor(s/2)}return a===o},_traverseObject:function(e,t,r){Array.isArray(e)?e.forEach(function(e,i){var n=t+"["+i+"]";this._traverseObject(e,n,r)}.bind(this)):null!==e&&"object"==typeof e?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(e,t){return e&&e[t]}),e)},_findFieldCommitment:function(e,t){return e.find((function(e){return e.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:null!=r};case"field_value":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,r,i){var o={tokenId:e.id,jurisdiction:r.code,nonce:i,timestamp:(new Date).toISOString()};return n.sha256(t.from(JSON.stringify(o))).toString("hex")},_sortObjectKeys:function(e){if(Array.isArray(e))return e.map(this._sortObjectKeys.bind(this));if(null!==e&&"object"==typeof e){var t={};return Object.keys(e).sort().forEach(function(r){t[r]=this._sortObjectKeys(e[r])}.bind(this)),t}return e}};e.exports=u}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=(i.Address,i.Transaction,i.util.preconditions),a={prepareRegistry:function(e){e=e||{},o.checkArgument("object"==typeof e,"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:!1!==e.enableRevocation,enableAuditTrail:!1!==e.enableAuditTrail,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"}}};return{success:!0,registry:t,initialAudit:this._prepareAuditEntry({action:"REGISTRY_CREATED",actor:e.authority,timestamp:t.created,metadata:{jurisdiction:t.jurisdiction,config:t.config}}),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||{},o.checkArgument(e&&"object"==typeof e,"Invalid token"),o.checkArgument(t&&"object"==typeof t,"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||[]}},a=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:a,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:a}}}}catch(e){return{success:!1,error:e.message}}},prepareTokenApproval:function(e,t,r){try{o.checkArgument("string"==typeof e,"Token ID must be string"),o.checkArgument("string"==typeof t,"Approver must be string"),o.checkArgument(r&&"object"==typeof r,"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(e){return{success:!1,error:e.message}}},prepareTokenRevocation:function(e,t,r){try{if(o.checkArgument("string"==typeof e,"Token ID must be string"),o.checkArgument(t&&"object"==typeof t,"Invalid revocation"),o.checkArgument(r&&"object"==typeof r,"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},a=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:a,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:a}}}}catch(e){return{success:!1,error:e.message}}},prepareTokenStatusQuery:function(e,t){try{return o.checkArgument("string"==typeof e,"Token ID must be string"),o.checkArgument(t&&"object"==typeof t,"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(e){return{success:!1,error:e.message}}},prepareTokenSearch:function(e,t){e=e||{};try{o.checkArgument(t&&"object"==typeof t,"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 a=r.length>0?"?"+r.join("&"):"";return{success:!0,searchCriteria:e,externalOperations:{search:{endpoint:"GET /registry/"+t.id+"/search"+a,method:"GET"}},expectedResponse:{success:"boolean",results:"Array<tokenRecord>",totalCount:"number",totalRegistrations:"number",offset:"number",limit:"number",hasMore:"boolean"}}}catch(e){return{success:!1,error:e.message}}},prepareStatisticsQuery:function(e){return o.checkArgument(e&&"object"==typeof e,"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||{},o.checkArgument(e&&"object"==typeof e,"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 a=r.length>0?"?"+r.join("&"):"";return{success:!0,auditOptions:t,externalOperations:{getAuditLog:{endpoint:"GET /registry/"+e.id+"/audit"+a,method:"GET"}},expectedResponse:{success:"boolean",entries:"Array<auditEntry>",totalEntries:"number",offset:"number",limit:"number",hasMore:"boolean"}}},_generateRegistryId:function(){var e="reg_"+Date.now()+"_"+Math.random();return"reg_"+n.sha256(t.from(e)).toString("hex").substring(0,16)},_generateRegistrationId:function(e){var r="reg_"+e+"_"+Date.now();return n.sha256(t.from(r)).toString("hex").substring(0,16)},_generateRevocationId:function(e){var r="rev_"+e+"_"+Date.now();return n.sha256(t.from(r)).toString("hex").substring(0,16)},_hashToken:function(e){var r=JSON.parse(JSON.stringify(e));return delete r.proof,delete r.tokenHash,n.sha256(t.from(JSON.stringify(r))).toString("hex")},_generateRevocationHash:function(e,r){var i=e+(r.reason||"")+(r.revokedBy||"")+Date.now();return n.sha256(t.from(i)).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){return{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)}},_generateAuditId:function(){var e="audit_"+Date.now()+"_"+Math.random();return"audit_"+n.sha256(t.from(e)).toString("hex").substring(0,12)},_generateAuditHash:function(e){var r=(e.action||"")+(e.actor||"")+(e.tokenId||"")+(e.timestamp||"");return n.sha256(t.from(r)).toString("hex").substring(0,16)}};e.exports=a}).call(this,r(0).Buffer)},function(e,t,r){"use strict";(function(t){var i=r(1),n=i.crypto.Hash,o=i.crypto.ECDSA,a=i.PrivateKey,s=i.util.preconditions,c={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"},u={CRITICAL:"CRITICAL",HIGH:"HIGH",MEDIUM:"MEDIUM",LOW:"LOW",DEFERRED:"DEFERRED"},f={PENDING:"PENDING",ACTIVE:"ACTIVE",IN_PROGRESS:"IN_PROGRESS",COMPLETED:"COMPLETED",OVERDUE:"OVERDUE",BREACHED:"BREACHED",WAIVED:"WAIVED",TERMINATED:"TERMINATED"},h={prepareObligationToken:function(e,t,r,i,n,o){o=o||{},s.checkArgument("string"==typeof e,"Obligation type must be string"),s.checkArgument("string"==typeof t,"Issuer DID must be string"),s.checkArgument("string"==typeof r,"Obligor DID must be string"),s.checkArgument(i&&"object"==typeof i,"Obligation must be object"),s.checkArgument(n instanceof a,"Invalid issuer private key");var h=Object.values(c);s.checkArgument(h.includes(e),"Invalid obligation type: "+e);try{var l={"@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||u.MEDIUM,status:f.PENDING,dueDate:o.dueDate||null,effectiveDate:o.effectiveDate||(new Date).toISOString(),expirationDate:o.expirationDate||null,correlativeRight:o.correlativeRight||null,rightHolder:o.rightHolder||null,enforceable:!1!==o.enforceable,penalties:o.penalties||null,remedies:o.remedies||null}};o.metadata&&(l.credentialSubject.metadata=o.metadata);var d=this._signToken(l,n);return{success:!0,obligationToken:d,tokenHash:d.tokenHash,metadata:{type:e,issuer:t,obligor:r,priority:l.credentialSubject.priority,status:l.credentialSubject.status,jurisdiction:l.credentialSubject.jurisdiction,dueDate:l.credentialSubject.dueDate,correlativeRight:l.credentialSubject.correlativeRight},externalOperations:{storeToken:{endpoint:"POST /obligations/tokens",data:{token:d,metadata:{type:e,issuer:t,obligor:r,priority:l.credentialSubject.priority,status:l.credentialSubject.status,jurisdiction:l.credentialSubject.jurisdiction,dueDate:l.credentialSubject.dueDate,correlativeRight:l.credentialSubject.correlativeRight}}},indexToken:{endpoint:"POST /obligations/index",data:{tokenId:d.id,tokenHash:d.tokenHash,type:e,issuer:t,obligor:r,issuedAt:d.issuanceDate,dueDate:l.credentialSubject.dueDate,priority:l.credentialSubject.priority}},notifyObligor:{endpoint:"POST /notifications/obligation-issued",data:{tokenId:d.id,issuer:t,obligor:r,obligationType:e,dueDate:l.credentialSubject.dueDate,priority:l.credentialSubject.priority}},scheduleReminders:l.credentialSubject.dueDate?{endpoint:"POST /obligations/schedule-reminders",data:{tokenId:d.id,obligor:r,dueDate:l.credentialSubject.dueDate,reminderSchedule:o.reminderSchedule||["7d","3d","1d"]}}:null}}}catch(e){return{success:!1,error:e.message}}},prepareObligationVerification:function(e,t){t=t||{};try{var r=[],i=[];this._validateTokenStructure(e,r),this._verifyTokenSignature(e,r),this._validateTokenTemporal(e,r,i),this._validateObligationType(e,r),this._validateObligationStatus(e,r,i),this._validateObligationPriority(e,i);var n={valid:0===r.length,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===f.ACTIVE?{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:f.OVERDUE,updatedAt:n.verifiedAt,reason:"Due date passed"}}:null}}}catch(e){return{success:!1,error:"Verification preparation failed: "+e.message}}},prepareObligationFulfillment:function(e,t,r,i){i=i||{},s.checkArgument(e&&"object"==typeof e,"Invalid token"),s.checkArgument(t&&"object"==typeof t,"Invalid fulfillment"),s.checkArgument(r instanceof a,"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===f.COMPLETED)return{success:!1,error:"Obligation already fulfilled"};if(e.credentialSubject.status===f.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}},c=this._signToken(o,r),u=o.credentialSubject.completionPercentage>=100?f.COMPLETED:f.IN_PROGRESS;return{success:!0,fulfillmentRecord:c,newStatus:u,fulfillmentId:c.id,externalOperations:{recordFulfillment:{endpoint:"POST /obligations/fulfillments",data:{obligationId:e.id,fulfillmentRecord:c,obligor:e.credentialSubject.id,fulfillmentDate:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:u,fulfillmentId:c.id,updatedAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}},notifyRightHolder:e.credentialSubject.rightHolder?{endpoint:"POST /notifications/obligation-fulfilled",data:{obligationId:e.id,fulfillmentId:c.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,completionPercentage:o.credentialSubject.completionPercentage,newStatus:u}}:null,auditFulfillment:{endpoint:"POST /audit/obligation-fulfillment",data:{obligationId:e.id,fulfillmentId:c.id,obligor:e.credentialSubject.id,fulfilledAt:o.credentialSubject.fulfillmentDate,completionPercentage:o.credentialSubject.completionPercentage}}}}}catch(e){return{success:!1,error:e.message}}},prepareObligationBreachAssessment:function(e,r,i){s.checkArgument(e&&"object"==typeof e,"Invalid token"),s.checkArgument(r&&"object"==typeof r,"Invalid breach details"),s.checkArgument(i&&"object"==typeof i,"Invalid assessor");try{var o={"@context":["https://www.w3.org/2018/credentials/v1","https://smartledger.technology/contexts/ltp/v1"],id:"urn:uuid:"+this._generateUUID(),type:["VerifiableCredential","ObligationBreachAssessment"],issuer:i.did||i.id,issuanceDate:(new Date).toISOString(),credentialSubject:{id:e.id,breachType:r.type||"MATERIAL_BREACH",breachDate:r.date||(new Date).toISOString(),description:r.description||"",severity:r.severity||"MODERATE",evidence:r.evidence||[],assessor:{did:i.did||i.id,name:i.name||"Unknown",authority:i.authority||null,jurisdiction:i.jurisdiction||null},damages:r.damages||null,recommendedRemedies:r.recommendedRemedies||[],assessmentDate:(new Date).toISOString()}},a=n.sha256(t.from(JSON.stringify(o))).toString("hex");return o.credentialSubject.assessmentHash=a,{success:!0,breachAssessment:o,breachId:o.id,severity:r.severity||"MODERATE",externalOperations:{recordBreach:{endpoint:"POST /obligations/breaches",data:{obligationId:e.id,breachAssessment:o,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachDate:r.date||(new Date).toISOString(),severity:r.severity||"MODERATE"}},updateStatus:{endpoint:"PUT /obligations/tokens/"+e.id+"/status",data:{status:f.BREACHED,breachId:o.id,breachDate:r.date||(new Date).toISOString(),updatedAt:(new Date).toISOString()}},notifyParties:{endpoint:"POST /notifications/obligation-breached",data:{obligationId:e.id,breachId:o.id,obligor:e.credentialSubject.id,rightHolder:e.credentialSubject.rightHolder,breachType:r.type||"MATERIAL_BREACH",severity:r.severity||"MODERATE"}},escalateBreach:"CRITICAL"===r.severity?{endpoint:"POST /legal/escalate-breach",data:{obligationId:e.id,breachId:o.id,severity:r.severity,jurisdiction:e.credentialSubject.jurisdiction}}:null,auditBreach:{endpoint:"POST /audit/obligation-breach",data:{obligationId:e.id,breachId:o.id,obligor:e.credentialSubject.id,assessedAt:o.credentialSubject.assessmentDate,severity:r.severity||"MODERATE"}}}}}catch(e){return{success:!1,error:e.message}}},prepareObligationMonitoringReport:function(e,t){t=t||{},s.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()+6048e5);return e.forEach(function(e){var t={id:e.id,type:e.credentialSubject.obligationType,status:e.credentialSubject.status,priority:e.credentialSubject.priority,obligor:e.credentialSubject.id,dueDate:e.credentialSubject.dueDate,isOverdue:this._checkIfOverdue(e),isDueSoon:!1};if(e.credentialSubject.dueDate){var o=new Date(e.credentialSubject.dueDate);t.isDueSoon=o<=n&&o>i}r.summary.byStatus[t.status]=(r.summary.byStatus[t.status]||0)+1,r.summary.byPriority[t.priority]=(r.summary.byPriority[t.priority]||0)+1,r.summary.byType[t.type]=(r.summary.byType[t.type]||0)+1,t.isOverdue&&r.summary.overdue++,t.isDueSoon&&r.summary.dueSoon++,t.status===f.COMPLETED&&r.summary.completed++,t.isOverdue&&t.priority===u.CRITICAL&&r.alerts.push({type:"CRITICAL_OVERDUE",obligationId:e.id,message:"Critical obligation is overdue",priority:"HIGH"}),t.isDueSoon&&t.priority===u.HIGH&&r.alerts.push({type:"HIGH_PRIORITY_DUE_SOON",obligationId:e.id,message:"High priority obligation due soon",priority:"MEDIUM"}),r.obligations.push(t)}.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(e){return{success:!1,error:e.message}}},getObligationTypes:function(){return c},getObligationPriority:function(){return u},getObligationStatus:function(){return f},_signToken:function(e,r){var i=this._canonicalizeToken(e),a=n.sha256(t.from(i)),s=new o;s.hashbuf=a,s.privkey=r,s.pubkey=r.toPublicKey(),s.sign();var c=s.sig,u={type:"EcdsaSecp256k1Signature2019",created:(new Date).toISOString(),verificationMethod:"did:smartledger:"+r.toPublicKey().toString()+"#keys-1",proofPurpose:"assertionMethod",jws:this._createJWS(a,c)},f=JSON.parse(JSON.stringify(e));return f.proof=u,f.tokenHash=a.toString("hex"),f},_createJWS:function(e,r){var i=t.from(JSON.stringify({alg:"ES256K",typ:"JWT"})).toString("base64url");e.toString("base64url");return i+".."+r.toDER().toString("base64url")},_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(null!==e&&"object"==typeof e){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,r){try{if(!e.proof||!e.proof.jws)return void r.push("Missing signature proof");var i=this._canonicalizeToken(e),o=n.sha256(t.from(i));if(e.tokenHash&&e.tokenHash!==o.toString("hex"))return void r.push("Token hash mismatch")}catch(e){r.push("Signature verification failed: "+e.message)}},_validateTokenTemporal:function(e,t,r){var i=new Date;(new Date(e.issuanceDate)>i&&t.push("Token issued in the future"),e.credentialSubject.effectiveDate)&&(i<new Date(e.credentialSubject.effectiveDate)&&r.push("Obligation not yet effective"));e.credentialSubject.expirationDate&&(i>new Date(e.credentialSubject.expirationDate)&&t.push("Obligation expired"))},_validateObligationType:function(e,t){e.credentialSubject.obligationType?Object.values(c).includes(e.credentialSubject.obligationType)||t.push("Invalid obligation type: "+e.credentialSubject.obligationType):t.push("Missing obligationType")},_validateObligationStatus:function(e,t,r){e.credentialSubject.status?(Object.values(f).includes(e.credentialSubject.status)||t.push("Invalid obligation status: "+e.credentialSubject.status),this._checkIfOverdue(e)&&e.credentialSubject.status===f.ACTIVE&&r.push("Obligation is overdue but status is still ACTIVE")):t.push("Missing status")},_validateObligationPriority:function(e,t){e.credentialSubject.priority&&(Object.values(u).includes(e.credentialSubject.priority)||t.push("Invalid obligation priority: "+e.credentialSubject.priority))},_checkIfOverdue:function(e){return!!e.credentialSubject.dueDate&&(new Date>new Date(e.credentialSubject.dueDate)&&e.credentialSubject.status!==f.COMPLETED)},_generateUUID:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))}};h.ObligationTypes=c,h.ObligationPriority=u,h.ObligationStatus=f,e.exports=h}).call(this,r(0).Buffer)}])}));
|