diff --git a/app/assets/v2/images/chains/tezos.svg b/app/assets/v2/images/chains/tezos.svg new file mode 100644 index 00000000000..99cdfee020d --- /dev/null +++ b/app/assets/v2/images/chains/tezos.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/assets/v2/js/lib/tezos/taquito-beacon-wallet.min.js b/app/assets/v2/js/lib/tezos/taquito-beacon-wallet.min.js new file mode 100644 index 00000000000..e89aba18793 --- /dev/null +++ b/app/assets/v2/js/lib/tezos/taquito-beacon-wallet.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,beacon,taquito):"function"==typeof define&&define.amd?define(["exports",beacon,taquito],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).taquitoBeaconWallet={},e.beacon,e.taquito)}(this,function(e,t,n){"use strict";function r(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})}function i(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),s=o.next();!s.done;s=o.next()){var c=s.value;i.has(c)&&i.delete(c)}}catch(e){n={error:e}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}if(i.size>0)throw new a(Array.from(i))},e.prototype.requestPermissions=function(e){return r(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:return[4,this.client.requestPermissions(e)];case 1:return t.sent(),[2]}})})},e.prototype.getPKH=function(){return r(this,void 0,void 0,function(){var e;return i(this,function(t){switch(t.label){case 0:return[4,this.client.getActiveAccount()];case 1:if(!(e=t.sent()))throw new o;return[2,e.address]}})})},e.prototype.mapTransferParamsToWalletParams=function(e){return r(this,void 0,void 0,function(){var t,r;return i(this,function(i){switch(i.label){case 0:return t=this.removeDefaultParams,r=[e],[4,n.createTransferOperation(this.formatParameters(e))];case 1:return[2,t.apply(this,r.concat([i.sent()]))]}})})},e.prototype.mapOriginateParamsToWalletParams=function(e){return r(this,void 0,void 0,function(){var t,r;return i(this,function(i){switch(i.label){case 0:return t=this.removeDefaultParams,r=[e],[4,n.createOriginationOperation(this.formatParameters(e))];case 1:return[2,t.apply(this,r.concat([i.sent()]))]}})})},e.prototype.mapDelegateParamsToWalletParams=function(e){return r(this,void 0,void 0,function(){var t,r;return i(this,function(i){switch(i.label){case 0:return t=this.removeDefaultParams,r=[e],[4,n.createSetDelegateOperation(this.formatParameters(e))];case 1:return[2,t.apply(this,r.concat([i.sent()]))]}})})},e.prototype.formatParameters=function(e){return e.fee&&(e.fee=e.fee.toString()),e.storageLimit&&(e.storageLimit=e.storageLimit.toString()),e.gasLimit&&(e.gasLimit=e.gasLimit.toString()),e},e.prototype.removeDefaultParams=function(e,t){return e.fee||delete t.fee,e.storageLimit||delete t.storage_limit,e.gasLimit||delete t.gas_limit,t},e.prototype.sendOperations=function(e){return r(this,void 0,void 0,function(){var n,r;return i(this,function(i){switch(i.label){case 0:return[4,this.client.getActiveAccount()];case 1:if(!(n=i.sent()))throw new o;return r=n.scopes,this.validateRequiredScopesOrFail(r,[t.PermissionScope.OPERATION_REQUEST]),[4,this.client.requestOperation({operationDetails:e})];case 2:return[2,i.sent().transactionHash]}})})},e.prototype.disconnect=function(){return r(this,void 0,void 0,function(){return i(this,function(e){switch(e.label){case 0:return[4,this.client.destroy()];case 1:return e.sent(),[2]}})})},e.prototype.clearActiveAccount=function(){return r(this,void 0,void 0,function(){return i(this,function(e){switch(e.label){case 0:return[4,this.client.setActiveAccount()];case 1:return e.sent(),[2]}})})},e}();e.BeaconWallet=s,e.BeaconWalletNotInitialized=o,e.MissingRequiredScopes=a,e.VERSION={commitHash:"672d0dd2a20104bf148e55a78550ca2abda4e652",version:"9.1.1"},Object.defineProperty(e,"__esModule",{value:!0})}); \ No newline at end of file diff --git a/app/assets/v2/js/lib/tezos/taquito.min.js b/app/assets/v2/js/lib/tezos/taquito.min.js new file mode 100644 index 00000000000..3219cc21722 --- /dev/null +++ b/app/assets/v2/js/lib/tezos/taquito.min.js @@ -0,0 +1,2 @@ +/*! For license information please see taquito.min.js.LICENSE.txt */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.taquito=e():t.taquito=e()}(window,(function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=157)}([function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function i(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}},function(t,e,r){"use strict";r.d(e,"a",(function(){return l}));var n=r(0),i=r(32),o=r(69),s=r(4),a=r(51),u=r(16),c=r(43),l=function(t){function e(r,n,i){var s=t.call(this)||this;switch(s.syncErrorValue=null,s.syncErrorThrown=!1,s.syncErrorThrowable=!1,s.isStopped=!1,arguments.length){case 0:s.destination=o.a;break;case 1:if(!r){s.destination=o.a;break}if("object"==typeof r){r instanceof e?(s.syncErrorThrowable=r.syncErrorThrowable,s.destination=r,r.add(s)):(s.syncErrorThrowable=!0,s.destination=new f(s,r));break}default:s.syncErrorThrowable=!0,s.destination=new f(s,r,n,i)}return s}return n.a(e,t),e.prototype[a.a]=function(){return this},e.create=function(t,r,n){var i=new e(t,r,n);return i.syncErrorThrowable=!1,i},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this))},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},e.prototype._unsubscribeAndRecycle=function(){var t=this._parentOrParents;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this},e}(s.a),f=function(t){function e(e,r,n,s){var a,u=t.call(this)||this;u._parentSubscriber=e;var c=u;return Object(i.a)(r)?a=r:r&&(a=r.next,n=r.error,s=r.complete,r!==o.a&&(c=Object.create(r),Object(i.a)(c.unsubscribe)&&u.add(c.unsubscribe.bind(c)),c.unsubscribe=u.unsubscribe.bind(u))),u._context=c,u._next=a,u._error=n,u._complete=s,u}return n.a(e,t),e.prototype.next=function(t){if(!this.isStopped&&this._next){var e=this._parentSubscriber;u.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}},e.prototype.error=function(t){if(!this.isStopped){var e=this._parentSubscriber,r=u.a.useDeprecatedSynchronousErrorHandling;if(this._error)r&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)r?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(c.a)(t),this.unsubscribe();else{if(this.unsubscribe(),r)throw t;Object(c.a)(t)}}},e.prototype.complete=function(){var t=this;if(!this.isStopped){var e=this._parentSubscriber;if(this._complete){var r=function(){return t._complete.call(t._context)};u.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,r),this.unsubscribe()):(this.__tryOrUnsub(r),this.unsubscribe())}else this.unsubscribe()}},e.prototype.__tryOrUnsub=function(t,e){try{t.call(this._context,e)}catch(t){if(this.unsubscribe(),u.a.useDeprecatedSynchronousErrorHandling)throw t;Object(c.a)(t)}},e.prototype.__tryOrSetError=function(t,e,r){if(!u.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,r)}catch(e){return u.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=e,t.syncErrorThrown=!0,!0):(Object(c.a)(e),!0)}return!1},e.prototype._unsubscribe=function(){var t=this._parentSubscriber;this._context=null,this._parentSubscriber=null,t.unsubscribe()},e}(l)},function(t,e,r){"use strict";r.d(e,"a",(function(){return a})),r.d(e,"b",(function(){return u})),r.d(e,"c",(function(){return c}));var n=r(0),i=r(1),o=r(3),s=r(42),a=function(t){function e(e){var r=t.call(this)||this;return r.parent=e,r}return n.a(e,t),e.prototype._next=function(t){this.parent.notifyNext(t)},e.prototype._error=function(t){this.parent.notifyError(t),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(),this.unsubscribe()},e}(i.a),u=(i.a,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.a(e,t),e.prototype.notifyNext=function(t){this.destination.next(t)},e.prototype.notifyError=function(t){this.destination.error(t)},e.prototype.notifyComplete=function(){this.destination.complete()},e}(i.a));i.a;function c(t,e){if(!e.closed)return t instanceof o.a?t.subscribe(e):Object(s.a)(t)(e)}},function(t,e,r){"use strict";r.d(e,"a",(function(){return l}));var n=r(67),i=r(1),o=r(51),s=r(69);var a=r(28),u=r(49),c=r(16),l=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var r=new t;return r.source=this,r.operator=e,r},t.prototype.subscribe=function(t,e,r){var n=this.operator,a=function(t,e,r){if(t){if(t instanceof i.a)return t;if(t[o.a])return t[o.a]()}return t||e||r?new i.a(t,e,r):new i.a(s.a)}(t,e,r);if(n?a.add(n.call(a,this.source)):a.add(this.source||c.a.useDeprecatedSynchronousErrorHandling&&!a.syncErrorThrowable?this._subscribe(a):this._trySubscribe(a)),c.a.useDeprecatedSynchronousErrorHandling&&a.syncErrorThrowable&&(a.syncErrorThrowable=!1,a.syncErrorThrown))throw a.syncErrorValue;return a},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){c.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),Object(n.a)(t)?t.error(e):console.warn(e)}},t.prototype.forEach=function(t,e){var r=this;return new(e=f(e))((function(e,n){var i;i=r.subscribe((function(e){try{t(e)}catch(t){n(t),i&&i.unsubscribe()}}),n,e)}))},t.prototype._subscribe=function(t){var e=this.source;return e&&e.subscribe(t)},t.prototype[a.a]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s}var l,f=r(134);function h(t){return"string"==typeof t&&t in a}function p(t,e){var r=new RegExp("^("+e.join("|")+")").exec(t);if(!r||0===r.length)return l.NO_PREFIX_MATCHED;var n=r[0];if(!h(n))return l.NO_PREFIX_MATCHED;var i=/^(KT1\w{33})(\%(.*))?/.exec(t);i&&(t=i[1]);var o=f.decodeUnsafe(t);return o?(o=o.slice(a[n].length)).length!==u[n]?l.INVALID_LENGTH:l.VALID:l.INVALID_CHECKSUM}!function(t){t[t.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",t[t.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",t[t.INVALID_LENGTH=2]="INVALID_LENGTH",t[t.VALID=3]="VALID"}(l||(l={}));var d=[o.TZ1,o.TZ2,o.TZ3],y=[o.KT1],v=[o.EDSIG,o.P2SIG,o.SPSIG,o.SIG],b=[o.EDPK,o.SPPK,o.P2PK];function g(t){return p(t,function(){for(var t=[],e=0;e=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return V(t).length;default:if(n)return H(t).length;e=(""+e).toLowerCase(),n=!0}}function y(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return k(this,e,r);case"utf8":case"utf-8":return T(this,e,r);case"ascii":return P(this,e,r);case"latin1":case"binary":return R(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function v(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function b(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:g(t,e,r,n,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):g(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function g(t,e,r,n,i){var o,s=1,a=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(i){var l=-1;for(o=r;oa&&(r=a-u),o=r;o>=0;o--){for(var f=!0,h=0;hi&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function x(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function T(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+f<=r)switch(f){case 1:c<128&&(l=c);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:o=t[i+1],s=t[i+2],128==(192&o)&&128==(192&s)&&(u=(15&c)<<12|(63&o)<<6|63&s)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:o=t[i+1],s=t[i+2],a=t[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(u=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&u<1114112&&(l=u)}null===l?(l=65533,f=1):l>65535&&(l-=65536,n.push(l>>>10&1023|55296),l=56320|1023&l),n.push(l),i+=f}return function(t){var e=t.length;if(e<=A)return String.fromCharCode.apply(String,t);var r="",n=0;for(;n0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},u.prototype.compare=function(t,e,r,n,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),a=Math.min(o,s),c=this.slice(n,i),l=t.slice(e,r),f=0;fi)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return m(this,t,e,r);case"utf8":case"utf-8":return w(this,t,e,r);case"ascii":return _(this,t,e,r);case"latin1":case"binary":return E(this,t,e,r);case"base64":return O(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function P(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function C(t,e,r,n,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function j(t,e,r,n){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-r,2);i>>8*(n?i:1-i)}function L(t,e,r,n){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-r,4);i>>8*(n?i:3-i)&255}function M(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(t,e,r,n,o){return o||M(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function U(t,e,r,n,o){return o||M(t,0,r,8),i.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e0&&(i*=256);)n+=this[t+--e]*i;return n},u.prototype.readUInt8=function(t,e){return e||N(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||N(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||N(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||N(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||N(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||N(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||N(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||N(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||N(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){e||N(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return e||N(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||N(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||N(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||N(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||N(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||N(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e|=0,r|=0,n)||C(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+r},u.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):j(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):j(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):L(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);C(this,t,e,r,i-1,-i)}var o=0,s=1,a=0;for(this[e]=255&t;++o>0)-a&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);C(this,t,e,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[e+o]=255&t;--o>=0&&(s*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/s>>0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):j(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):j(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):L(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||C(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,r){return D(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return D(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return U(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return U(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=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((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function V(t){return n.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(B,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function K(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}}).call(this,r(17))},function(t,e){"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}}},function(t,e,r){"use strict";r.d(e,"a",(function(){return a}));var n=r(0),i=function(t){function e(e,r,n){var i=t.call(this)||this;return i.parent=e,i.outerValue=r,i.outerIndex=n,i.index=0,i}return n.a(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(r(1).a),o=r(42),s=r(3);function a(t,e,r,n,a){if(void 0===a&&(a=new i(t,r,n)),!a.closed)return e instanceof s.a?e.subscribe(a):Object(o.a)(e)(a)}},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=!1,i={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){t&&(new Error).stack;n=t},get useDeprecatedSynchronousErrorHandling(){return n}}},function(t,e){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,e,r){"use strict";function n(t){return t}r.d(e,"a",(function(){return n}))},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(0),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.a(e,t),e.prototype.notifyNext=function(t,e,r,n,i){this.destination.next(e)},e.prototype.notifyError=function(t,e){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.destination.complete()},e}(r(1).a)},function(t,e,r){"use strict";r.d(e,"a",(function(){return o}));var n=r(0),i=r(1);function o(t,e){return function(r){return r.lift(new s(t,e))}}var s=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.thisArg))},t}(),a=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.predicate=r,i.thisArg=n,i.count=0,i}return n.a(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(t){return void this.destination.error(t)}e&&this.destination.next(t)},e}(i.a)},function(t,e,r){"use strict";r.d(e,"b",(function(){return n})),r.d(e,"a",(function(){return a}));var n,i=r(10),o=r(46),s=r(60);n||(n={});var a=function(){function t(t,e,r){this.kind=t,this.value=e,this.error=r,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,r){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return r&&r()}},t.prototype.accept=function(t,e,r){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,r)},t.prototype.toObservable=function(){switch(this.kind){case"N":return Object(o.a)(this.value);case"E":return Object(s.a)(this.error);case"C":return Object(i.b)()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}()},function(t,e){var r,n,i=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(t){if(r===setTimeout)return setTimeout(t,0);if((r===o||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(e){try{return r.call(null,t,0)}catch(e){return r.call(this,t,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:o}catch(t){r=o}try{n="function"==typeof clearTimeout?clearTimeout:s}catch(t){n=s}}();var u,c=[],l=!1,f=-1;function h(){l&&u&&(l=!1,u.length?c=u.concat(c):f=-1,c.length&&p())}function p(){if(!l){var t=a(h);l=!0;for(var e=c.length;e;){for(u=c,c=[];++f1)for(var r=1;r0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0||t===e?e:e-1}function g(t){for(var e,r,n=1,i=t.length,o=t[0]+"";nc^r?1:-1;for(a=(u=i.length)<(c=o.length)?u:c,s=0;so[s]^r?1:-1;return u==c?0:u>c^r?1:-1}function w(t,e,r,n){if(tr||t!==u(t))throw Error(c+(n||"Argument")+("number"==typeof t?tr?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function _(t){var e=t.c.length-1;return b(t.e/h)==e&&t.c[e]%2!=0}function E(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function O(t,e,r){var n,i;if(e<0){for(i=r+".";++e;i+=r);t=i+t}else if(++e>(n=t.length)){for(i=r,e-=n;--e;i+=r);t+=i}else eD?b.c=b.e=null:t.e=10;f/=10,c++);return void(c>D?b.c=b.e=null:(b.e=c,b.c=[t]))}v=String(t)}else{if(!s.test(v=String(t)))return i(b,v,d);b.s=45==v.charCodeAt(0)?(v=v.slice(1),-1):1}(c=v.indexOf("."))>-1&&(v=v.replace(".","")),(f=v.search(/e/i))>0?(c<0&&(c=f),c+=+v.slice(f+1),v=v.substring(0,f)):c<0&&(c=v.length)}else{if(w(e,2,V.length,"Base"),10==e)return W(b=new K(t),N+b.e+1,C);if(v=String(t),d="number"==typeof t){if(0*t!=0)return i(b,v,d,e);if(b.s=1/t<0?(v=v.slice(1),-1):1,K.DEBUG&&v.replace(/^0\.0*|\./,"").length>15)throw Error(l+t)}else b.s=45===v.charCodeAt(0)?(v=v.slice(1),-1):1;for(r=V.slice(0,e),c=f=0,y=v.length;fc){c=y;continue}}else if(!a&&(v==v.toUpperCase()&&(v=v.toLowerCase())||v==v.toLowerCase()&&(v=v.toUpperCase()))){a=!0,f=-1,c=0;continue}return i(b,String(t),d,e)}d=!1,(c=(v=n(v,e,10,b.s)).indexOf("."))>-1?v=v.replace(".",""):c=v.length}for(f=0;48===v.charCodeAt(f);f++);for(y=v.length;48===v.charCodeAt(--y););if(v=v.slice(f,++y)){if(y-=f,d&&K.DEBUG&&y>15&&(t>p||t!==u(t)))throw Error(l+b.s*t);if((c=c-f-1)>D)b.c=b.e=null;else if(c=L)?E(u,s):O(u,s,"0");else if(o=(t=W(new K(t),e,r)).e,a=(u=g(t.c)).length,1==n||2==n&&(e<=o||o<=j)){for(;aa){if(--e>0)for(u+=".";e--;u+="0");}else if((e+=o-a)>0)for(o+1==a&&(u+=".");e--;u+="0");return t.s<0&&i?"-"+u:u}function q(t,e){for(var r,n=1,i=new K(t[0]);n=10;i/=10,n++);return(r=n+r*h-1)>D?t.c=t.e=null:r=10;c/=10,i++);if((o=e-i)<0)o+=h,s=e,y=(l=v[p=0])/b[i-s-1]%10|0;else if((p=a((o+1)/h))>=v.length){if(!n)break t;for(;v.length<=p;v.push(0));l=y=0,i=1,s=(o%=h)-h+1}else{for(l=c=v[p],i=1;c>=10;c/=10,i++);y=(s=(o%=h)-h+i)<0?0:l/b[i-s-1]%10|0}if(n=n||e<0||null!=v[p+1]||(s<0?l:l%b[i-s-1]),n=r<4?(y||n)&&(0==r||r==(t.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(o>0?s>0?l/b[i-s]:0:v[p-1])%10&1||r==(t.s<0?8:7)),e<1||!v[0])return v.length=0,n?(e-=t.e+1,v[0]=b[(h-e%h)%h],t.e=-e||0):v[0]=t.e=0,t;if(0==o?(v.length=p,c=1,p--):(v.length=p+1,c=b[h-o],v[p]=s>0?u(l/b[i-s]%b[s])*c:0),n)for(;;){if(0==p){for(o=1,s=v[0];s>=10;s/=10,o++);for(s=v[0]+=c,c=1;s>=10;s/=10,c++);o!=c&&(t.e++,v[0]==f&&(v[0]=1));break}if(v[p]+=c,v[p]!=f)break;v[p--]=0,c=1}for(o=v.length;0===v[--o];v.pop());}t.e>D?t.c=t.e=null:t.e=L?E(e,r):O(e,r,"0"),t.s<0?"-"+e:e)}return K.clone=t,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(t){var e,r;if(null!=t){if("object"!=typeof t)throw Error(c+"Object expected: "+t);if(t.hasOwnProperty(e="DECIMAL_PLACES")&&(w(r=t[e],0,v,e),N=r),t.hasOwnProperty(e="ROUNDING_MODE")&&(w(r=t[e],0,8,e),C=r),t.hasOwnProperty(e="EXPONENTIAL_AT")&&((r=t[e])&&r.pop?(w(r[0],-v,0,e),w(r[1],0,v,e),j=r[0],L=r[1]):(w(r,-v,v,e),j=-(L=r<0?-r:r))),t.hasOwnProperty(e="RANGE"))if((r=t[e])&&r.pop)w(r[0],-v,-1,e),w(r[1],1,v,e),M=r[0],D=r[1];else{if(w(r,-v,v,e),!r)throw Error(c+e+" cannot be zero: "+r);M=-(D=r<0?-r:r)}if(t.hasOwnProperty(e="CRYPTO")){if((r=t[e])!==!!r)throw Error(c+e+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw U=!r,Error(c+"crypto unavailable");U=r}else U=r}if(t.hasOwnProperty(e="MODULO_MODE")&&(w(r=t[e],0,9,e),B=r),t.hasOwnProperty(e="POW_PRECISION")&&(w(r=t[e],0,v,e),F=r),t.hasOwnProperty(e="FORMAT")){if("object"!=typeof(r=t[e]))throw Error(c+e+" not an object: "+r);H=r}if(t.hasOwnProperty(e="ALPHABET")){if("string"!=typeof(r=t[e])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(c+e+" invalid: "+r);V=r}}return{DECIMAL_PLACES:N,ROUNDING_MODE:C,EXPONENTIAL_AT:[j,L],RANGE:[M,D],CRYPTO:U,MODULO_MODE:B,POW_PRECISION:F,FORMAT:H,ALPHABET:V}},K.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!K.DEBUG)return!0;var e,r,n=t.c,i=t.e,o=t.s;t:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-v&&i<=v&&i===u(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break t}if((e=(i+1)%h)<1&&(e+=h),String(n[0]).length==e){for(e=0;e=f||r!==u(r))break t;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(c+"Invalid BigNumber: "+t)},K.maximum=K.max=function(){return q(arguments,k.lt)},K.minimum=K.min=function(){return q(arguments,k.gt)},K.random=(o=9007199254740992,S=Math.random()*o&2097151?function(){return u(Math.random()*o)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(t){var e,r,n,i,o,s=0,l=[],f=new K(I);if(null==t?t=N:w(t,0,v),i=a(t/h),U)if(crypto.getRandomValues){for(e=crypto.getRandomValues(new Uint32Array(i*=2));s>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),e[s]=r[0],e[s+1]=r[1]):(l.push(o%1e14),s+=2);s=i/2}else{if(!crypto.randomBytes)throw U=!1,Error(c+"crypto unavailable");for(e=crypto.randomBytes(i*=7);s=9e15?crypto.randomBytes(7).copy(e,s):(l.push(o%1e14),s+=7);s=i/7}if(!U)for(;s=10;o/=10,s++);sr-1&&(null==s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/r|0,s[i]%=r)}return s.reverse()}return function(n,i,o,s,a){var u,c,l,f,h,p,d,y,v=n.indexOf("."),b=N,m=C;for(v>=0&&(f=F,F=0,n=n.replace(".",""),p=(y=new K(i)).pow(n.length-v),F=f,y.c=e(O(g(p.c),p.e,"0"),10,o,t),y.e=y.c.length),l=f=(d=e(n,i,o,a?(u=V,t):(u=t,V))).length;0==d[--f];d.pop());if(!d[0])return u.charAt(0);if(v<0?--l:(p.c=d,p.e=l,p.s=s,d=(p=r(p,y,b,m,o)).c,h=p.r,l=p.e),v=d[c=l+b+1],f=o/2,h=h||c<0||null!=d[c+1],h=m<4?(null!=v||h)&&(0==m||m==(p.s<0?3:2)):v>f||v==f&&(4==m||h||6==m&&1&d[c-1]||m==(p.s<0?8:7)),c<1||!d[0])n=h?O(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(d.length=c,h)for(--o;++d[--c]>o;)d[c]=0,c||(++l,d=[1].concat(d));for(f=d.length;!d[--f];);for(v=0,n="";v<=f;n+=u.charAt(d[v++]));n=O(n,l,u.charAt(0))}return n}}(),r=function(){function t(t,e,r){var n,i,o,s,a=0,u=t.length,c=e%y,l=e/y|0;for(t=t.slice();u--;)a=((i=c*(o=t[u]%y)+(n=l*o+(s=t[u]/y|0)*c)%y*y+a)/r|0)+(n/y|0)+l*s,t[u]=i%r;return a&&(t=[a].concat(t)),t}function e(t,e,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;ie[i]?1:-1;break}return o}function r(t,e,r,n){for(var i=0;r--;)t[r]-=i,i=t[r]1;t.splice(0,1));}return function(n,i,o,s,a){var c,l,p,d,y,v,g,m,w,_,E,O,S,x,T,A,P,R=n.s==i.s?1:-1,k=n.c,I=i.c;if(!(k&&k[0]&&I&&I[0]))return new K(n.s&&i.s&&(k?!I||k[0]!=I[0]:I)?k&&0==k[0]||!I?0*R:R/0:NaN);for(w=(m=new K(R)).c=[],R=o+(l=n.e-i.e)+1,a||(a=f,l=b(n.e/h)-b(i.e/h),R=R/h|0),p=0;I[p]==(k[p]||0);p++);if(I[p]>(k[p]||0)&&l--,R<0)w.push(1),d=!0;else{for(x=k.length,A=I.length,p=0,R+=2,(y=u(a/(I[0]+1)))>1&&(I=t(I,y,a),k=t(k,y,a),A=I.length,x=k.length),S=A,E=(_=k.slice(0,A)).length;E=a/2&&T++;do{if(y=0,(c=e(I,_,A,E))<0){if(O=_[0],A!=E&&(O=O*a+(_[1]||0)),(y=u(O/T))>1)for(y>=a&&(y=a-1),g=(v=t(I,y,a)).length,E=_.length;1==e(v,_,g,E);)y--,r(v,A=10;R/=10,p++);W(m,o+(m.e=p+l*h-1)+1,s,d)}else m.e=l,m.r=+d;return m}}(),x=/^(-?)0([xbo])(?=\w[\w.]*$)/i,T=/^([^.]+)\.$/,A=/^\.([^.]+)$/,P=/^-?(Infinity|NaN)$/,R=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(t,e,r,n){var i,o=r?e:e.replace(R,"");if(P.test(o))t.s=isNaN(o)?null:o<0?-1:1;else{if(!r&&(o=o.replace(x,(function(t,e,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?t:e})),n&&(i=n,o=o.replace(T,"$1").replace(A,"0.$1")),e!=o))return new K(o,i);if(K.DEBUG)throw Error(c+"Not a"+(n?" base "+n:"")+" number: "+e);t.s=null}t.c=t.e=null},k.absoluteValue=k.abs=function(){var t=new K(this);return t.s<0&&(t.s=1),t},k.comparedTo=function(t,e){return m(this,new K(t,e))},k.decimalPlaces=k.dp=function(t,e){var r,n,i,o=this;if(null!=t)return w(t,0,v),null==e?e=C:w(e,0,8),W(new K(o),t+o.e+1,e);if(!(r=o.c))return null;if(n=((i=r.length-1)-b(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},k.dividedBy=k.div=function(t,e){return r(this,new K(t,e),N,C)},k.dividedToIntegerBy=k.idiv=function(t,e){return r(this,new K(t,e),0,1)},k.exponentiatedBy=k.pow=function(t,e){var r,n,i,o,s,l,f,p,d=this;if((t=new K(t)).c&&!t.isInteger())throw Error(c+"Exponent not an integer: "+Y(t));if(null!=e&&(e=new K(e)),s=t.e>14,!d.c||!d.c[0]||1==d.c[0]&&!d.e&&1==d.c.length||!t.c||!t.c[0])return p=new K(Math.pow(+Y(d),s?2-_(t):+Y(t))),e?p.mod(e):p;if(l=t.s<0,e){if(e.c?!e.c[0]:!e.s)return new K(NaN);(n=!l&&d.isInteger()&&e.isInteger())&&(d=d.mod(e))}else{if(t.e>9&&(d.e>0||d.e<-1||(0==d.e?d.c[0]>1||s&&d.c[1]>=24e7:d.c[0]<8e13||s&&d.c[0]<=9999975e7)))return o=d.s<0&&_(t)?-0:0,d.e>-1&&(o=1/o),new K(l?1/o:o);F&&(o=a(F/h+2))}for(s?(r=new K(.5),l&&(t.s=1),f=_(t)):f=(i=Math.abs(+Y(t)))%2,p=new K(I);;){if(f){if(!(p=p.times(d)).c)break;o?p.c.length>o&&(p.c.length=o):n&&(p=p.mod(e))}if(i){if(0===(i=u(i/2)))break;f=i%2}else if(W(t=t.times(r),t.e+1,1),t.e>14)f=_(t);else{if(0===(i=+Y(t)))break;f=i%2}d=d.times(d),o?d.c&&d.c.length>o&&(d.c.length=o):n&&(d=d.mod(e))}return n?p:(l&&(p=I.div(p)),e?p.mod(e):o?W(p,F,C,undefined):p)},k.integerValue=function(t){var e=new K(this);return null==t?t=C:w(t,0,8),W(e,e.e+1,t)},k.isEqualTo=k.eq=function(t,e){return 0===m(this,new K(t,e))},k.isFinite=function(){return!!this.c},k.isGreaterThan=k.gt=function(t,e){return m(this,new K(t,e))>0},k.isGreaterThanOrEqualTo=k.gte=function(t,e){return 1===(e=m(this,new K(t,e)))||0===e},k.isInteger=function(){return!!this.c&&b(this.e/h)>this.c.length-2},k.isLessThan=k.lt=function(t,e){return m(this,new K(t,e))<0},k.isLessThanOrEqualTo=k.lte=function(t,e){return-1===(e=m(this,new K(t,e)))||0===e},k.isNaN=function(){return!this.s},k.isNegative=function(){return this.s<0},k.isPositive=function(){return this.s>0},k.isZero=function(){return!!this.c&&0==this.c[0]},k.minus=function(t,e){var r,n,i,o,s=this,a=s.s;if(e=(t=new K(t,e)).s,!a||!e)return new K(NaN);if(a!=e)return t.s=-e,s.plus(t);var u=s.e/h,c=t.e/h,l=s.c,p=t.c;if(!u||!c){if(!l||!p)return l?(t.s=-e,t):new K(p?s:NaN);if(!l[0]||!p[0])return p[0]?(t.s=-e,t):new K(l[0]?s:3==C?-0:0)}if(u=b(u),c=b(c),l=l.slice(),a=u-c){for((o=a<0)?(a=-a,i=l):(c=u,i=p),i.reverse(),e=a;e--;i.push(0));i.reverse()}else for(n=(o=(a=l.length)<(e=p.length))?a:e,a=e=0;e0)for(;e--;l[r++]=0);for(e=f-1;n>a;){if(l[--n]=0;){for(r=0,d=O[i]%w,v=O[i]/w|0,o=i+(s=u);o>i;)r=((c=d*(c=E[--s]%w)+(a=v*c+(l=E[s]/w|0)*d)%w*w+g[o]+r)/m|0)+(a/w|0)+v*l,g[o--]=c%m;g[o]=r}return r?++n:g.splice(0,1),z(t,g,n)},k.negated=function(){var t=new K(this);return t.s=-t.s||null,t},k.plus=function(t,e){var r,n=this,i=n.s;if(e=(t=new K(t,e)).s,!i||!e)return new K(NaN);if(i!=e)return t.s=-e,n.minus(t);var o=n.e/h,s=t.e/h,a=n.c,u=t.c;if(!o||!s){if(!a||!u)return new K(i/0);if(!a[0]||!u[0])return u[0]?t:new K(a[0]?n:0*i)}if(o=b(o),s=b(s),a=a.slice(),i=o-s){for(i>0?(s=o,r=u):(i=-i,r=a),r.reverse();i--;r.push(0));r.reverse()}for((i=a.length)-(e=u.length)<0&&(r=u,u=a,a=r,e=i),i=0;e;)i=(a[--e]=a[e]+u[e]+i)/f|0,a[e]=f===a[e]?0:a[e]%f;return i&&(a=[i].concat(a),++s),z(t,a,s)},k.precision=k.sd=function(t,e){var r,n,i,o=this;if(null!=t&&t!==!!t)return w(t,1,v),null==e?e=C:w(e,0,8),W(new K(o),t,e);if(!(r=o.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return t&&o.e+1>n&&(n=o.e+1),n},k.shiftedBy=function(t){return w(t,-9007199254740991,p),this.times("1e"+t)},k.squareRoot=k.sqrt=function(){var t,e,n,i,o,s=this,a=s.c,u=s.s,c=s.e,l=N+4,f=new K("0.5");if(1!==u||!a||!a[0])return new K(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);if(0==(u=Math.sqrt(+Y(s)))||u==1/0?(((e=g(a)).length+c)%2==0&&(e+="0"),u=Math.sqrt(+e),c=b((c+1)/2)-(c<0||c%2),n=new K(e=u==1/0?"5e"+c:(e=u.toExponential()).slice(0,e.indexOf("e")+1)+c)):n=new K(u+""),n.c[0])for((u=(c=n.e)+l)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(s,o,l,1))),g(o.c).slice(0,u)===(e=g(n.c)).slice(0,u)){if(n.e0&&y>0){for(o=y%a||a,f=d.substr(0,o);o0&&(f+=l+d.slice(o)),p&&(f="-"+f)}n=h?f+(r.decimalSeparator||"")+((u=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+u+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):f}return(r.prefix||"")+n+(r.suffix||"")},k.toFraction=function(t){var e,n,i,o,s,a,u,l,f,p,y,v,b=this,m=b.c;if(null!=t&&(!(u=new K(t)).isInteger()&&(u.c||1!==u.s)||u.lt(I)))throw Error(c+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+Y(u));if(!m)return new K(b);for(e=new K(I),f=n=new K(I),i=l=new K(I),v=g(m),s=e.e=v.length-b.e-1,e.c[0]=d[(a=s%h)<0?h+a:a],t=!t||u.comparedTo(e)>0?s>0?e:f:u,a=D,D=1/0,u=new K(v),l.c[0]=0;p=r(u,e,0,1),1!=(o=n.plus(p.times(i))).comparedTo(t);)n=i,i=o,f=l.plus(p.times(o=f)),l=o,e=u.minus(p.times(o=e)),u=o;return o=r(t.minus(n),i,0,1),l=l.plus(o.times(f)),n=n.plus(o.times(i)),l.s=f.s=b.s,y=r(f,i,s*=2,C).minus(b).abs().comparedTo(r(l,n,s,C).minus(b).abs())<1?[f,i]:[l,n],D=a,y},k.toNumber=function(){return+Y(this)},k.toPrecision=function(t,e){return null!=t&&w(t,1,v),G(this,t,e,2)},k.toString=function(t){var e,r=this,i=r.s,o=r.e;return null===o?i?(e="Infinity",i<0&&(e="-"+e)):e="NaN":(null==t?e=o<=j||o>=L?E(g(r.c),o):O(g(r.c),o,"0"):10===t?e=O(g((r=W(new K(r),N+o+1,C)).c),r.e,"0"):(w(t,2,V.length,"Base"),e=n(O(g(r.c),o,"0"),10,t,i,!0)),i<0&&r.c[0]&&(e="-"+e)),e},k.valueOf=k.toJSON=function(){return Y(this)},k._isBigNumber=!0,null!=e&&K.set(e),K}()).default=o.BigNumber=o,void 0===(n=function(){return o}.call(e,r,e,t))||(t.exports=n)}()},function(t,e,r){"use strict";r.d(e,"a",(function(){return n}));var n=function(){function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,r){"use strict";function n(t){return"function"==typeof t}r.d(e,"a",(function(){return n}))},function(t,e,r){var n;!function(i){"use strict";var o,s=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,a=Math.ceil,u=Math.floor,c="[BigNumber Error] ",l=c+"Number primitive has more than 15 significant digits: ",f=1e14,h=14,p=9007199254740991,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],y=1e7,v=1e9;function b(t){var e=0|t;return t>0||t===e?e:e-1}function g(t){for(var e,r,n=1,i=t.length,o=t[0]+"";nc^r?1:-1;for(a=(u=i.length)<(c=o.length)?u:c,s=0;so[s]^r?1:-1;return u==c?0:u>c^r?1:-1}function w(t,e,r,n){if(tr||t!==u(t))throw Error(c+(n||"Argument")+("number"==typeof t?tr?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function _(t){var e=t.c.length-1;return b(t.e/h)==e&&t.c[e]%2!=0}function E(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function O(t,e,r){var n,i;if(e<0){for(i=r+".";++e;i+=r);t=i+t}else if(++e>(n=t.length)){for(i=r,e-=n;--e;i+=r);t+=i}else eD?b.c=b.e=null:t.e=10;f/=10,c++);return void(c>D?b.c=b.e=null:(b.e=c,b.c=[t]))}v=String(t)}else{if(!s.test(v=String(t)))return i(b,v,d);b.s=45==v.charCodeAt(0)?(v=v.slice(1),-1):1}(c=v.indexOf("."))>-1&&(v=v.replace(".","")),(f=v.search(/e/i))>0?(c<0&&(c=f),c+=+v.slice(f+1),v=v.substring(0,f)):c<0&&(c=v.length)}else{if(w(e,2,V.length,"Base"),10==e)return W(b=new K(t),N+b.e+1,C);if(v=String(t),d="number"==typeof t){if(0*t!=0)return i(b,v,d,e);if(b.s=1/t<0?(v=v.slice(1),-1):1,K.DEBUG&&v.replace(/^0\.0*|\./,"").length>15)throw Error(l+t)}else b.s=45===v.charCodeAt(0)?(v=v.slice(1),-1):1;for(r=V.slice(0,e),c=f=0,y=v.length;fc){c=y;continue}}else if(!a&&(v==v.toUpperCase()&&(v=v.toLowerCase())||v==v.toLowerCase()&&(v=v.toUpperCase()))){a=!0,f=-1,c=0;continue}return i(b,String(t),d,e)}d=!1,(c=(v=n(v,e,10,b.s)).indexOf("."))>-1?v=v.replace(".",""):c=v.length}for(f=0;48===v.charCodeAt(f);f++);for(y=v.length;48===v.charCodeAt(--y););if(v=v.slice(f,++y)){if(y-=f,d&&K.DEBUG&&y>15&&(t>p||t!==u(t)))throw Error(l+b.s*t);if((c=c-f-1)>D)b.c=b.e=null;else if(c=L)?E(u,s):O(u,s,"0");else if(o=(t=W(new K(t),e,r)).e,a=(u=g(t.c)).length,1==n||2==n&&(e<=o||o<=j)){for(;aa){if(--e>0)for(u+=".";e--;u+="0");}else if((e+=o-a)>0)for(o+1==a&&(u+=".");e--;u+="0");return t.s<0&&i?"-"+u:u}function q(t,e){for(var r,n=1,i=new K(t[0]);n=10;i/=10,n++);return(r=n+r*h-1)>D?t.c=t.e=null:r=10;c/=10,i++);if((o=e-i)<0)o+=h,s=e,y=(l=v[p=0])/b[i-s-1]%10|0;else if((p=a((o+1)/h))>=v.length){if(!n)break t;for(;v.length<=p;v.push(0));l=y=0,i=1,s=(o%=h)-h+1}else{for(l=c=v[p],i=1;c>=10;c/=10,i++);y=(s=(o%=h)-h+i)<0?0:l/b[i-s-1]%10|0}if(n=n||e<0||null!=v[p+1]||(s<0?l:l%b[i-s-1]),n=r<4?(y||n)&&(0==r||r==(t.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(o>0?s>0?l/b[i-s]:0:v[p-1])%10&1||r==(t.s<0?8:7)),e<1||!v[0])return v.length=0,n?(e-=t.e+1,v[0]=b[(h-e%h)%h],t.e=-e||0):v[0]=t.e=0,t;if(0==o?(v.length=p,c=1,p--):(v.length=p+1,c=b[h-o],v[p]=s>0?u(l/b[i-s]%b[s])*c:0),n)for(;;){if(0==p){for(o=1,s=v[0];s>=10;s/=10,o++);for(s=v[0]+=c,c=1;s>=10;s/=10,c++);o!=c&&(t.e++,v[0]==f&&(v[0]=1));break}if(v[p]+=c,v[p]!=f)break;v[p--]=0,c=1}for(o=v.length;0===v[--o];v.pop());}t.e>D?t.c=t.e=null:t.e=L?E(e,r):O(e,r,"0"),t.s<0?"-"+e:e)}return K.clone=t,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(t){var e,r;if(null!=t){if("object"!=typeof t)throw Error(c+"Object expected: "+t);if(t.hasOwnProperty(e="DECIMAL_PLACES")&&(w(r=t[e],0,v,e),N=r),t.hasOwnProperty(e="ROUNDING_MODE")&&(w(r=t[e],0,8,e),C=r),t.hasOwnProperty(e="EXPONENTIAL_AT")&&((r=t[e])&&r.pop?(w(r[0],-v,0,e),w(r[1],0,v,e),j=r[0],L=r[1]):(w(r,-v,v,e),j=-(L=r<0?-r:r))),t.hasOwnProperty(e="RANGE"))if((r=t[e])&&r.pop)w(r[0],-v,-1,e),w(r[1],1,v,e),M=r[0],D=r[1];else{if(w(r,-v,v,e),!r)throw Error(c+e+" cannot be zero: "+r);M=-(D=r<0?-r:r)}if(t.hasOwnProperty(e="CRYPTO")){if((r=t[e])!==!!r)throw Error(c+e+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw U=!r,Error(c+"crypto unavailable");U=r}else U=r}if(t.hasOwnProperty(e="MODULO_MODE")&&(w(r=t[e],0,9,e),B=r),t.hasOwnProperty(e="POW_PRECISION")&&(w(r=t[e],0,v,e),F=r),t.hasOwnProperty(e="FORMAT")){if("object"!=typeof(r=t[e]))throw Error(c+e+" not an object: "+r);H=r}if(t.hasOwnProperty(e="ALPHABET")){if("string"!=typeof(r=t[e])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(c+e+" invalid: "+r);V=r}}return{DECIMAL_PLACES:N,ROUNDING_MODE:C,EXPONENTIAL_AT:[j,L],RANGE:[M,D],CRYPTO:U,MODULO_MODE:B,POW_PRECISION:F,FORMAT:H,ALPHABET:V}},K.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!K.DEBUG)return!0;var e,r,n=t.c,i=t.e,o=t.s;t:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-v&&i<=v&&i===u(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break t}if((e=(i+1)%h)<1&&(e+=h),String(n[0]).length==e){for(e=0;e=f||r!==u(r))break t;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(c+"Invalid BigNumber: "+t)},K.maximum=K.max=function(){return q(arguments,k.lt)},K.minimum=K.min=function(){return q(arguments,k.gt)},K.random=(o=9007199254740992,S=Math.random()*o&2097151?function(){return u(Math.random()*o)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(t){var e,r,n,i,o,s=0,l=[],f=new K(I);if(null==t?t=N:w(t,0,v),i=a(t/h),U)if(crypto.getRandomValues){for(e=crypto.getRandomValues(new Uint32Array(i*=2));s>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),e[s]=r[0],e[s+1]=r[1]):(l.push(o%1e14),s+=2);s=i/2}else{if(!crypto.randomBytes)throw U=!1,Error(c+"crypto unavailable");for(e=crypto.randomBytes(i*=7);s=9e15?crypto.randomBytes(7).copy(e,s):(l.push(o%1e14),s+=7);s=i/7}if(!U)for(;s=10;o/=10,s++);sr-1&&(null==s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/r|0,s[i]%=r)}return s.reverse()}return function(n,i,o,s,a){var u,c,l,f,h,p,d,y,v=n.indexOf("."),b=N,m=C;for(v>=0&&(f=F,F=0,n=n.replace(".",""),p=(y=new K(i)).pow(n.length-v),F=f,y.c=e(O(g(p.c),p.e,"0"),10,o,t),y.e=y.c.length),l=f=(d=e(n,i,o,a?(u=V,t):(u=t,V))).length;0==d[--f];d.pop());if(!d[0])return u.charAt(0);if(v<0?--l:(p.c=d,p.e=l,p.s=s,d=(p=r(p,y,b,m,o)).c,h=p.r,l=p.e),v=d[c=l+b+1],f=o/2,h=h||c<0||null!=d[c+1],h=m<4?(null!=v||h)&&(0==m||m==(p.s<0?3:2)):v>f||v==f&&(4==m||h||6==m&&1&d[c-1]||m==(p.s<0?8:7)),c<1||!d[0])n=h?O(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(d.length=c,h)for(--o;++d[--c]>o;)d[c]=0,c||(++l,d=[1].concat(d));for(f=d.length;!d[--f];);for(v=0,n="";v<=f;n+=u.charAt(d[v++]));n=O(n,l,u.charAt(0))}return n}}(),r=function(){function t(t,e,r){var n,i,o,s,a=0,u=t.length,c=e%y,l=e/y|0;for(t=t.slice();u--;)a=((i=c*(o=t[u]%y)+(n=l*o+(s=t[u]/y|0)*c)%y*y+a)/r|0)+(n/y|0)+l*s,t[u]=i%r;return a&&(t=[a].concat(t)),t}function e(t,e,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;ie[i]?1:-1;break}return o}function r(t,e,r,n){for(var i=0;r--;)t[r]-=i,i=t[r]1;t.splice(0,1));}return function(n,i,o,s,a){var c,l,p,d,y,v,g,m,w,_,E,O,S,x,T,A,P,R=n.s==i.s?1:-1,k=n.c,I=i.c;if(!(k&&k[0]&&I&&I[0]))return new K(n.s&&i.s&&(k?!I||k[0]!=I[0]:I)?k&&0==k[0]||!I?0*R:R/0:NaN);for(w=(m=new K(R)).c=[],R=o+(l=n.e-i.e)+1,a||(a=f,l=b(n.e/h)-b(i.e/h),R=R/h|0),p=0;I[p]==(k[p]||0);p++);if(I[p]>(k[p]||0)&&l--,R<0)w.push(1),d=!0;else{for(x=k.length,A=I.length,p=0,R+=2,(y=u(a/(I[0]+1)))>1&&(I=t(I,y,a),k=t(k,y,a),A=I.length,x=k.length),S=A,E=(_=k.slice(0,A)).length;E=a/2&&T++;do{if(y=0,(c=e(I,_,A,E))<0){if(O=_[0],A!=E&&(O=O*a+(_[1]||0)),(y=u(O/T))>1)for(y>=a&&(y=a-1),g=(v=t(I,y,a)).length,E=_.length;1==e(v,_,g,E);)y--,r(v,A=10;R/=10,p++);W(m,o+(m.e=p+l*h-1)+1,s,d)}else m.e=l,m.r=+d;return m}}(),x=/^(-?)0([xbo])(?=\w[\w.]*$)/i,T=/^([^.]+)\.$/,A=/^\.([^.]+)$/,P=/^-?(Infinity|NaN)$/,R=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(t,e,r,n){var i,o=r?e:e.replace(R,"");if(P.test(o))t.s=isNaN(o)?null:o<0?-1:1;else{if(!r&&(o=o.replace(x,(function(t,e,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?t:e})),n&&(i=n,o=o.replace(T,"$1").replace(A,"0.$1")),e!=o))return new K(o,i);if(K.DEBUG)throw Error(c+"Not a"+(n?" base "+n:"")+" number: "+e);t.s=null}t.c=t.e=null},k.absoluteValue=k.abs=function(){var t=new K(this);return t.s<0&&(t.s=1),t},k.comparedTo=function(t,e){return m(this,new K(t,e))},k.decimalPlaces=k.dp=function(t,e){var r,n,i,o=this;if(null!=t)return w(t,0,v),null==e?e=C:w(e,0,8),W(new K(o),t+o.e+1,e);if(!(r=o.c))return null;if(n=((i=r.length-1)-b(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},k.dividedBy=k.div=function(t,e){return r(this,new K(t,e),N,C)},k.dividedToIntegerBy=k.idiv=function(t,e){return r(this,new K(t,e),0,1)},k.exponentiatedBy=k.pow=function(t,e){var r,n,i,o,s,l,f,p,d=this;if((t=new K(t)).c&&!t.isInteger())throw Error(c+"Exponent not an integer: "+Y(t));if(null!=e&&(e=new K(e)),s=t.e>14,!d.c||!d.c[0]||1==d.c[0]&&!d.e&&1==d.c.length||!t.c||!t.c[0])return p=new K(Math.pow(+Y(d),s?2-_(t):+Y(t))),e?p.mod(e):p;if(l=t.s<0,e){if(e.c?!e.c[0]:!e.s)return new K(NaN);(n=!l&&d.isInteger()&&e.isInteger())&&(d=d.mod(e))}else{if(t.e>9&&(d.e>0||d.e<-1||(0==d.e?d.c[0]>1||s&&d.c[1]>=24e7:d.c[0]<8e13||s&&d.c[0]<=9999975e7)))return o=d.s<0&&_(t)?-0:0,d.e>-1&&(o=1/o),new K(l?1/o:o);F&&(o=a(F/h+2))}for(s?(r=new K(.5),l&&(t.s=1),f=_(t)):f=(i=Math.abs(+Y(t)))%2,p=new K(I);;){if(f){if(!(p=p.times(d)).c)break;o?p.c.length>o&&(p.c.length=o):n&&(p=p.mod(e))}if(i){if(0===(i=u(i/2)))break;f=i%2}else if(W(t=t.times(r),t.e+1,1),t.e>14)f=_(t);else{if(0===(i=+Y(t)))break;f=i%2}d=d.times(d),o?d.c&&d.c.length>o&&(d.c.length=o):n&&(d=d.mod(e))}return n?p:(l&&(p=I.div(p)),e?p.mod(e):o?W(p,F,C,undefined):p)},k.integerValue=function(t){var e=new K(this);return null==t?t=C:w(t,0,8),W(e,e.e+1,t)},k.isEqualTo=k.eq=function(t,e){return 0===m(this,new K(t,e))},k.isFinite=function(){return!!this.c},k.isGreaterThan=k.gt=function(t,e){return m(this,new K(t,e))>0},k.isGreaterThanOrEqualTo=k.gte=function(t,e){return 1===(e=m(this,new K(t,e)))||0===e},k.isInteger=function(){return!!this.c&&b(this.e/h)>this.c.length-2},k.isLessThan=k.lt=function(t,e){return m(this,new K(t,e))<0},k.isLessThanOrEqualTo=k.lte=function(t,e){return-1===(e=m(this,new K(t,e)))||0===e},k.isNaN=function(){return!this.s},k.isNegative=function(){return this.s<0},k.isPositive=function(){return this.s>0},k.isZero=function(){return!!this.c&&0==this.c[0]},k.minus=function(t,e){var r,n,i,o,s=this,a=s.s;if(e=(t=new K(t,e)).s,!a||!e)return new K(NaN);if(a!=e)return t.s=-e,s.plus(t);var u=s.e/h,c=t.e/h,l=s.c,p=t.c;if(!u||!c){if(!l||!p)return l?(t.s=-e,t):new K(p?s:NaN);if(!l[0]||!p[0])return p[0]?(t.s=-e,t):new K(l[0]?s:3==C?-0:0)}if(u=b(u),c=b(c),l=l.slice(),a=u-c){for((o=a<0)?(a=-a,i=l):(c=u,i=p),i.reverse(),e=a;e--;i.push(0));i.reverse()}else for(n=(o=(a=l.length)<(e=p.length))?a:e,a=e=0;e0)for(;e--;l[r++]=0);for(e=f-1;n>a;){if(l[--n]=0;){for(r=0,d=O[i]%w,v=O[i]/w|0,o=i+(s=u);o>i;)r=((c=d*(c=E[--s]%w)+(a=v*c+(l=E[s]/w|0)*d)%w*w+g[o]+r)/m|0)+(a/w|0)+v*l,g[o--]=c%m;g[o]=r}return r?++n:g.splice(0,1),z(t,g,n)},k.negated=function(){var t=new K(this);return t.s=-t.s||null,t},k.plus=function(t,e){var r,n=this,i=n.s;if(e=(t=new K(t,e)).s,!i||!e)return new K(NaN);if(i!=e)return t.s=-e,n.minus(t);var o=n.e/h,s=t.e/h,a=n.c,u=t.c;if(!o||!s){if(!a||!u)return new K(i/0);if(!a[0]||!u[0])return u[0]?t:new K(a[0]?n:0*i)}if(o=b(o),s=b(s),a=a.slice(),i=o-s){for(i>0?(s=o,r=u):(i=-i,r=a),r.reverse();i--;r.push(0));r.reverse()}for((i=a.length)-(e=u.length)<0&&(r=u,u=a,a=r,e=i),i=0;e;)i=(a[--e]=a[e]+u[e]+i)/f|0,a[e]=f===a[e]?0:a[e]%f;return i&&(a=[i].concat(a),++s),z(t,a,s)},k.precision=k.sd=function(t,e){var r,n,i,o=this;if(null!=t&&t!==!!t)return w(t,1,v),null==e?e=C:w(e,0,8),W(new K(o),t,e);if(!(r=o.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return t&&o.e+1>n&&(n=o.e+1),n},k.shiftedBy=function(t){return w(t,-9007199254740991,p),this.times("1e"+t)},k.squareRoot=k.sqrt=function(){var t,e,n,i,o,s=this,a=s.c,u=s.s,c=s.e,l=N+4,f=new K("0.5");if(1!==u||!a||!a[0])return new K(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);if(0==(u=Math.sqrt(+Y(s)))||u==1/0?(((e=g(a)).length+c)%2==0&&(e+="0"),u=Math.sqrt(+e),c=b((c+1)/2)-(c<0||c%2),n=new K(e=u==1/0?"5e"+c:(e=u.toExponential()).slice(0,e.indexOf("e")+1)+c)):n=new K(u+""),n.c[0])for((u=(c=n.e)+l)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(s,o,l,1))),g(o.c).slice(0,u)===(e=g(n.c)).slice(0,u)){if(n.e0&&y>0){for(o=y%a||a,f=d.substr(0,o);o0&&(f+=l+d.slice(o)),p&&(f="-"+f)}n=h?f+(r.decimalSeparator||"")+((u=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+u+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):f}return(r.prefix||"")+n+(r.suffix||"")},k.toFraction=function(t){var e,n,i,o,s,a,u,l,f,p,y,v,b=this,m=b.c;if(null!=t&&(!(u=new K(t)).isInteger()&&(u.c||1!==u.s)||u.lt(I)))throw Error(c+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+Y(u));if(!m)return new K(b);for(e=new K(I),f=n=new K(I),i=l=new K(I),v=g(m),s=e.e=v.length-b.e-1,e.c[0]=d[(a=s%h)<0?h+a:a],t=!t||u.comparedTo(e)>0?s>0?e:f:u,a=D,D=1/0,u=new K(v),l.c[0]=0;p=r(u,e,0,1),1!=(o=n.plus(p.times(i))).comparedTo(t);)n=i,i=o,f=l.plus(p.times(o=f)),l=o,e=u.minus(p.times(o=e)),u=o;return o=r(t.minus(n),i,0,1),l=l.plus(o.times(f)),n=n.plus(o.times(i)),l.s=f.s=b.s,y=r(f,i,s*=2,C).minus(b).abs().comparedTo(r(l,n,s,C).minus(b).abs())<1?[f,i]:[l,n],D=a,y},k.toNumber=function(){return+Y(this)},k.toPrecision=function(t,e){return null!=t&&w(t,1,v),G(this,t,e,2)},k.toString=function(t){var e,r=this,i=r.s,o=r.e;return null===o?i?(e="Infinity",i<0&&(e="-"+e)):e="NaN":(null==t?e=o<=j||o>=L?E(g(r.c),o):O(g(r.c),o,"0"):10===t?e=O(g((r=W(new K(r),N+o+1,C)).c),r.e,"0"):(w(t,2,V.length,"Base"),e=n(O(g(r.c),o,"0"),10,t,i,!0)),i<0&&r.c[0]&&(e="-"+e)),e},k.valueOf=k.toJSON=function(){return Y(this)},k._isBigNumber=!0,null!=e&&K.set(e),K}()).default=o.BigNumber=o,void 0===(n=function(){return o}.call(e,r,e,t))||(t.exports=n)}()},function(t,e,r){"use strict";r.d(e,"a",(function(){return n}));var n=function(){function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,r){"use strict";r.d(e,"b",(function(){return a})),r.d(e,"a",(function(){return l}));var n=r(0),i=r(8),o=r(12),s=r(2);function a(t,e,r){return void 0===r&&(r=Number.POSITIVE_INFINITY),"function"==typeof e?function(n){return n.pipe(a((function(r,n){return Object(o.a)(t(r,n)).pipe(Object(i.a)((function(t,i){return e(r,t,n,i)})))}),r))}:("number"==typeof e&&(r=e),function(e){return e.lift(new u(t,r))})}var u=function(){function t(t,e){void 0===e&&(e=Number.POSITIVE_INFINITY),this.project=t,this.concurrent=e}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.project,this.concurrent))},t}(),c=function(t){function e(e,r,n){void 0===n&&(n=Number.POSITIVE_INFINITY);var i=t.call(this,e)||this;return i.project=r,i.concurrent=n,i.hasCompleted=!1,i.buffer=[],i.active=0,i.index=0,i}return n.a(e,t),e.prototype._next=function(t){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(s.b),l=a},function(t,e,r){"use strict";r.d(e,"a",(function(){return s}));var n=r(3),i=r(100),o=r(68);function s(t,e){return e?Object(o.a)(t,e):new n.a(Object(i.a)(t))}},function(t,e,r){"use strict";r.d(e,"a",(function(){return o}));var n=r(0),i=r(80),o=function(t){function e(r,n){void 0===n&&(n=i.a.now);var o=t.call(this,r,(function(){return e.delegate&&e.delegate!==o?e.delegate.now():n()}))||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return n.a(e,t),e.prototype.schedule=function(r,n,i){return void 0===n&&(n=0),e.delegate&&e.delegate!==this?e.delegate.schedule(r,n,i):t.prototype.schedule.call(this,r,n,i)},e.prototype.flush=function(t){var e=this.actions;if(this.active)e.push(t);else{var r;this.active=!0;do{if(r=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,r){for(;t=e.shift();)t.unsubscribe();throw r}}},e}(i.a)},function(t,e,r){"use strict";r.d(e,"a",(function(){return s}));var n=r(0),i=r(5),o=r(4),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.value=null,e.hasNext=!1,e.hasCompleted=!1,e}return n.a(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),o.a.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),o.a.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(i.a)},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(0),i=function(t){function e(e,r){var n=t.call(this,e,r)||this;return n.scheduler=e,n.work=r,n.pending=!1,n}return n.a(e,t),e.prototype.schedule=function(t,e){if(void 0===e&&(e=0),this.closed)return this;this.state=t;var r=this.id,n=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(n,r,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(n,this.id,e),this},e.prototype.requestAsyncId=function(t,e,r){return void 0===r&&(r=0),setInterval(t.flush.bind(t,this),r)},e.prototype.recycleAsyncId=function(t,e,r){if(void 0===r&&(r=0),null!==r&&this.delay===r&&!1===this.pending)return e;clearInterval(e)},e.prototype.execute=function(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var r=this._execute(t,e);if(r)return r;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,e){var r=!1,n=void 0;try{this.work(t)}catch(t){r=!0,n=!!t&&t||new Error(t)}if(r)return this.unsubscribe(),n},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,r=e.actions,n=r.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==n&&r.splice(n,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null},e}(function(t){function e(e,r){return t.call(this)||this}return n.a(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(r(4).a))},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(7);function i(t){return!Object(n.a)(t)&&t-parseFloat(t)+1>=0}},function(t,e,r){"use strict";r.d(e,"a",(function(){return o}));var n=r(46),i=r(94);function o(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.flattenErrors=e.flattenOperationResult=e.TezosPreapplyFailureError=e.TezosOperationError=void 0;var o=r(26),s=function(t){this.errors=t,this.name="TezosOperationError";var e=t[t.length-1];this.id=e.id,this.kind=e.kind,this.message="("+this.kind+") "+this.id,"with"in e&&e.with.string&&(this.message=e.with.string)};e.TezosOperationError=s;var a=function(t){this.result=t,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"};e.TezosPreapplyFailureError=a;e.flattenOperationResult=function(t){for(var e=Array.isArray(t)?t:[t],r=[],i=0;i0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]t.timeoutAt)throw new Error("Confirmation polling timed out")})))})),this.confirmed$=this.polling$.pipe(a.switchMapTo(this.currentHead$),a.map((function(t){for(var e=3;e>=0;e--)t.operations[e].forEach((function(e){e.hash===o.hash&&(o._foundAt=t.header.level)}));if(t.header.level-o._foundAt>=0)return o._foundAt})),a.filter((function(t){return void 0!==t})),a.first(),a.shareReplay()),this._foundAt=Number.POSITIVE_INFINITY,this.confirmed$.pipe(a.first()).subscribe()}return Object.defineProperty(t.prototype,"includedInBlock",{get:function(){return this._foundAt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"revealOperation",{get:function(){return Array.isArray(this.results)&&this.results.find((function(t){return"reveal"===t.kind}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"revealStatus",{get:function(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"status",{get:function(){return this.results.map((function(t){return u.hasMetadataWithResult(t)?t.metadata.operation_result.status:"unknown"}))[0]||"unknown"},enumerable:!1,configurable:!0}),t.prototype.confirmation=function(t,e,r){return i(this,void 0,void 0,(function(){var n,i,s,u,c,l,f=this;return o(this,(function(o){switch(o.label){case 0:if(void 0!==t&&t<1)throw new Error("Confirmation count must be at least 1");return void 0===this.context.config.confirmationPollingIntervalSecond?[3,1]:(i=this.context.config.confirmationPollingIntervalSecond,[3,3]);case 1:return[4,this.context.getConfirmationPollingInterval()];case 2:i=o.sent(),o.label=3;case 3:if(n=i,s=this.context.config,u=s.defaultConfirmationCount,c=s.confirmationPollingTimeoutSecond,this._pollingConfig$.next({interval:e||n,timeout:r||c}),void 0===(l=void 0!==t?t:u))throw new Error("Default confirmation count can not be undefined!");return[2,new Promise((function(t,e){f.confirmed$.pipe(a.switchMap((function(){return f.polling$})),a.switchMap((function(){return f.currentHead$})),a.filter((function(t){return t.header.level-f._foundAt>=l-1})),a.first()).subscribe((function(e){t(f._foundAt+(l-1))}),e)}))]}}))}))},t}();e.Operation=c},function(t,e,r){"use strict";r.d(e,"a",(function(){return i})),r.d(e,"b",(function(){return o}));var n=r(18);function i(){for(var t=[],e=0;e0?t.prototype.requestAsyncId.call(this,e,r,n):(e.actions.push(this),e.scheduled||(e.scheduled=u(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,r,n){if(void 0===n&&(n=0),null!==n&&n>0||null===n&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,r,n);0===e.actions.length&&(c(r),e.scheduled=void 0)},e}(r(39).a),f=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.a(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,r=this.actions,n=-1,i=r.length;t=t||r.shift();do{if(e=t.execute(t.state,t.delay))break}while(++n0||t===e?e:e-1}function g(t){for(var e,r,n=1,i=t.length,o=t[0]+"";nc^r?1:-1;for(a=(u=i.length)<(c=o.length)?u:c,s=0;so[s]^r?1:-1;return u==c?0:u>c^r?1:-1}function w(t,e,r,n){if(tr||t!==u(t))throw Error(c+(n||"Argument")+("number"==typeof t?tr?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function _(t){var e=t.c.length-1;return b(t.e/h)==e&&t.c[e]%2!=0}function E(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function O(t,e,r){var n,i;if(e<0){for(i=r+".";++e;i+=r);t=i+t}else if(++e>(n=t.length)){for(i=r,e-=n;--e;i+=r);t+=i}else eD?b.c=b.e=null:t.e=10;f/=10,c++);return void(c>D?b.c=b.e=null:(b.e=c,b.c=[t]))}v=String(t)}else{if(!s.test(v=String(t)))return i(b,v,d);b.s=45==v.charCodeAt(0)?(v=v.slice(1),-1):1}(c=v.indexOf("."))>-1&&(v=v.replace(".","")),(f=v.search(/e/i))>0?(c<0&&(c=f),c+=+v.slice(f+1),v=v.substring(0,f)):c<0&&(c=v.length)}else{if(w(e,2,V.length,"Base"),10==e)return W(b=new K(t),N+b.e+1,C);if(v=String(t),d="number"==typeof t){if(0*t!=0)return i(b,v,d,e);if(b.s=1/t<0?(v=v.slice(1),-1):1,K.DEBUG&&v.replace(/^0\.0*|\./,"").length>15)throw Error(l+t)}else b.s=45===v.charCodeAt(0)?(v=v.slice(1),-1):1;for(r=V.slice(0,e),c=f=0,y=v.length;fc){c=y;continue}}else if(!a&&(v==v.toUpperCase()&&(v=v.toLowerCase())||v==v.toLowerCase()&&(v=v.toUpperCase()))){a=!0,f=-1,c=0;continue}return i(b,String(t),d,e)}d=!1,(c=(v=n(v,e,10,b.s)).indexOf("."))>-1?v=v.replace(".",""):c=v.length}for(f=0;48===v.charCodeAt(f);f++);for(y=v.length;48===v.charCodeAt(--y););if(v=v.slice(f,++y)){if(y-=f,d&&K.DEBUG&&y>15&&(t>p||t!==u(t)))throw Error(l+b.s*t);if((c=c-f-1)>D)b.c=b.e=null;else if(c=L)?E(u,s):O(u,s,"0");else if(o=(t=W(new K(t),e,r)).e,a=(u=g(t.c)).length,1==n||2==n&&(e<=o||o<=j)){for(;aa){if(--e>0)for(u+=".";e--;u+="0");}else if((e+=o-a)>0)for(o+1==a&&(u+=".");e--;u+="0");return t.s<0&&i?"-"+u:u}function q(t,e){for(var r,n=1,i=new K(t[0]);n=10;i/=10,n++);return(r=n+r*h-1)>D?t.c=t.e=null:r=10;c/=10,i++);if((o=e-i)<0)o+=h,s=e,y=(l=v[p=0])/b[i-s-1]%10|0;else if((p=a((o+1)/h))>=v.length){if(!n)break t;for(;v.length<=p;v.push(0));l=y=0,i=1,s=(o%=h)-h+1}else{for(l=c=v[p],i=1;c>=10;c/=10,i++);y=(s=(o%=h)-h+i)<0?0:l/b[i-s-1]%10|0}if(n=n||e<0||null!=v[p+1]||(s<0?l:l%b[i-s-1]),n=r<4?(y||n)&&(0==r||r==(t.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(o>0?s>0?l/b[i-s]:0:v[p-1])%10&1||r==(t.s<0?8:7)),e<1||!v[0])return v.length=0,n?(e-=t.e+1,v[0]=b[(h-e%h)%h],t.e=-e||0):v[0]=t.e=0,t;if(0==o?(v.length=p,c=1,p--):(v.length=p+1,c=b[h-o],v[p]=s>0?u(l/b[i-s]%b[s])*c:0),n)for(;;){if(0==p){for(o=1,s=v[0];s>=10;s/=10,o++);for(s=v[0]+=c,c=1;s>=10;s/=10,c++);o!=c&&(t.e++,v[0]==f&&(v[0]=1));break}if(v[p]+=c,v[p]!=f)break;v[p--]=0,c=1}for(o=v.length;0===v[--o];v.pop());}t.e>D?t.c=t.e=null:t.e=L?E(e,r):O(e,r,"0"),t.s<0?"-"+e:e)}return K.clone=t,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(t){var e,r;if(null!=t){if("object"!=typeof t)throw Error(c+"Object expected: "+t);if(t.hasOwnProperty(e="DECIMAL_PLACES")&&(w(r=t[e],0,v,e),N=r),t.hasOwnProperty(e="ROUNDING_MODE")&&(w(r=t[e],0,8,e),C=r),t.hasOwnProperty(e="EXPONENTIAL_AT")&&((r=t[e])&&r.pop?(w(r[0],-v,0,e),w(r[1],0,v,e),j=r[0],L=r[1]):(w(r,-v,v,e),j=-(L=r<0?-r:r))),t.hasOwnProperty(e="RANGE"))if((r=t[e])&&r.pop)w(r[0],-v,-1,e),w(r[1],1,v,e),M=r[0],D=r[1];else{if(w(r,-v,v,e),!r)throw Error(c+e+" cannot be zero: "+r);M=-(D=r<0?-r:r)}if(t.hasOwnProperty(e="CRYPTO")){if((r=t[e])!==!!r)throw Error(c+e+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw U=!r,Error(c+"crypto unavailable");U=r}else U=r}if(t.hasOwnProperty(e="MODULO_MODE")&&(w(r=t[e],0,9,e),B=r),t.hasOwnProperty(e="POW_PRECISION")&&(w(r=t[e],0,v,e),F=r),t.hasOwnProperty(e="FORMAT")){if("object"!=typeof(r=t[e]))throw Error(c+e+" not an object: "+r);H=r}if(t.hasOwnProperty(e="ALPHABET")){if("string"!=typeof(r=t[e])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(c+e+" invalid: "+r);V=r}}return{DECIMAL_PLACES:N,ROUNDING_MODE:C,EXPONENTIAL_AT:[j,L],RANGE:[M,D],CRYPTO:U,MODULO_MODE:B,POW_PRECISION:F,FORMAT:H,ALPHABET:V}},K.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!K.DEBUG)return!0;var e,r,n=t.c,i=t.e,o=t.s;t:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-v&&i<=v&&i===u(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break t}if((e=(i+1)%h)<1&&(e+=h),String(n[0]).length==e){for(e=0;e=f||r!==u(r))break t;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(c+"Invalid BigNumber: "+t)},K.maximum=K.max=function(){return q(arguments,k.lt)},K.minimum=K.min=function(){return q(arguments,k.gt)},K.random=(o=9007199254740992,S=Math.random()*o&2097151?function(){return u(Math.random()*o)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(t){var e,r,n,i,o,s=0,l=[],f=new K(I);if(null==t?t=N:w(t,0,v),i=a(t/h),U)if(crypto.getRandomValues){for(e=crypto.getRandomValues(new Uint32Array(i*=2));s>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),e[s]=r[0],e[s+1]=r[1]):(l.push(o%1e14),s+=2);s=i/2}else{if(!crypto.randomBytes)throw U=!1,Error(c+"crypto unavailable");for(e=crypto.randomBytes(i*=7);s=9e15?crypto.randomBytes(7).copy(e,s):(l.push(o%1e14),s+=7);s=i/7}if(!U)for(;s=10;o/=10,s++);sr-1&&(null==s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/r|0,s[i]%=r)}return s.reverse()}return function(n,i,o,s,a){var u,c,l,f,h,p,d,y,v=n.indexOf("."),b=N,m=C;for(v>=0&&(f=F,F=0,n=n.replace(".",""),p=(y=new K(i)).pow(n.length-v),F=f,y.c=e(O(g(p.c),p.e,"0"),10,o,t),y.e=y.c.length),l=f=(d=e(n,i,o,a?(u=V,t):(u=t,V))).length;0==d[--f];d.pop());if(!d[0])return u.charAt(0);if(v<0?--l:(p.c=d,p.e=l,p.s=s,d=(p=r(p,y,b,m,o)).c,h=p.r,l=p.e),v=d[c=l+b+1],f=o/2,h=h||c<0||null!=d[c+1],h=m<4?(null!=v||h)&&(0==m||m==(p.s<0?3:2)):v>f||v==f&&(4==m||h||6==m&&1&d[c-1]||m==(p.s<0?8:7)),c<1||!d[0])n=h?O(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(d.length=c,h)for(--o;++d[--c]>o;)d[c]=0,c||(++l,d=[1].concat(d));for(f=d.length;!d[--f];);for(v=0,n="";v<=f;n+=u.charAt(d[v++]));n=O(n,l,u.charAt(0))}return n}}(),r=function(){function t(t,e,r){var n,i,o,s,a=0,u=t.length,c=e%y,l=e/y|0;for(t=t.slice();u--;)a=((i=c*(o=t[u]%y)+(n=l*o+(s=t[u]/y|0)*c)%y*y+a)/r|0)+(n/y|0)+l*s,t[u]=i%r;return a&&(t=[a].concat(t)),t}function e(t,e,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;ie[i]?1:-1;break}return o}function r(t,e,r,n){for(var i=0;r--;)t[r]-=i,i=t[r]1;t.splice(0,1));}return function(n,i,o,s,a){var c,l,p,d,y,v,g,m,w,_,E,O,S,x,T,A,P,R=n.s==i.s?1:-1,k=n.c,I=i.c;if(!(k&&k[0]&&I&&I[0]))return new K(n.s&&i.s&&(k?!I||k[0]!=I[0]:I)?k&&0==k[0]||!I?0*R:R/0:NaN);for(w=(m=new K(R)).c=[],R=o+(l=n.e-i.e)+1,a||(a=f,l=b(n.e/h)-b(i.e/h),R=R/h|0),p=0;I[p]==(k[p]||0);p++);if(I[p]>(k[p]||0)&&l--,R<0)w.push(1),d=!0;else{for(x=k.length,A=I.length,p=0,R+=2,(y=u(a/(I[0]+1)))>1&&(I=t(I,y,a),k=t(k,y,a),A=I.length,x=k.length),S=A,E=(_=k.slice(0,A)).length;E=a/2&&T++;do{if(y=0,(c=e(I,_,A,E))<0){if(O=_[0],A!=E&&(O=O*a+(_[1]||0)),(y=u(O/T))>1)for(y>=a&&(y=a-1),g=(v=t(I,y,a)).length,E=_.length;1==e(v,_,g,E);)y--,r(v,A=10;R/=10,p++);W(m,o+(m.e=p+l*h-1)+1,s,d)}else m.e=l,m.r=+d;return m}}(),x=/^(-?)0([xbo])(?=\w[\w.]*$)/i,T=/^([^.]+)\.$/,A=/^\.([^.]+)$/,P=/^-?(Infinity|NaN)$/,R=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(t,e,r,n){var i,o=r?e:e.replace(R,"");if(P.test(o))t.s=isNaN(o)?null:o<0?-1:1;else{if(!r&&(o=o.replace(x,(function(t,e,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?t:e})),n&&(i=n,o=o.replace(T,"$1").replace(A,"0.$1")),e!=o))return new K(o,i);if(K.DEBUG)throw Error(c+"Not a"+(n?" base "+n:"")+" number: "+e);t.s=null}t.c=t.e=null},k.absoluteValue=k.abs=function(){var t=new K(this);return t.s<0&&(t.s=1),t},k.comparedTo=function(t,e){return m(this,new K(t,e))},k.decimalPlaces=k.dp=function(t,e){var r,n,i,o=this;if(null!=t)return w(t,0,v),null==e?e=C:w(e,0,8),W(new K(o),t+o.e+1,e);if(!(r=o.c))return null;if(n=((i=r.length-1)-b(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},k.dividedBy=k.div=function(t,e){return r(this,new K(t,e),N,C)},k.dividedToIntegerBy=k.idiv=function(t,e){return r(this,new K(t,e),0,1)},k.exponentiatedBy=k.pow=function(t,e){var r,n,i,o,s,l,f,p,d=this;if((t=new K(t)).c&&!t.isInteger())throw Error(c+"Exponent not an integer: "+Y(t));if(null!=e&&(e=new K(e)),s=t.e>14,!d.c||!d.c[0]||1==d.c[0]&&!d.e&&1==d.c.length||!t.c||!t.c[0])return p=new K(Math.pow(+Y(d),s?2-_(t):+Y(t))),e?p.mod(e):p;if(l=t.s<0,e){if(e.c?!e.c[0]:!e.s)return new K(NaN);(n=!l&&d.isInteger()&&e.isInteger())&&(d=d.mod(e))}else{if(t.e>9&&(d.e>0||d.e<-1||(0==d.e?d.c[0]>1||s&&d.c[1]>=24e7:d.c[0]<8e13||s&&d.c[0]<=9999975e7)))return o=d.s<0&&_(t)?-0:0,d.e>-1&&(o=1/o),new K(l?1/o:o);F&&(o=a(F/h+2))}for(s?(r=new K(.5),l&&(t.s=1),f=_(t)):f=(i=Math.abs(+Y(t)))%2,p=new K(I);;){if(f){if(!(p=p.times(d)).c)break;o?p.c.length>o&&(p.c.length=o):n&&(p=p.mod(e))}if(i){if(0===(i=u(i/2)))break;f=i%2}else if(W(t=t.times(r),t.e+1,1),t.e>14)f=_(t);else{if(0===(i=+Y(t)))break;f=i%2}d=d.times(d),o?d.c&&d.c.length>o&&(d.c.length=o):n&&(d=d.mod(e))}return n?p:(l&&(p=I.div(p)),e?p.mod(e):o?W(p,F,C,undefined):p)},k.integerValue=function(t){var e=new K(this);return null==t?t=C:w(t,0,8),W(e,e.e+1,t)},k.isEqualTo=k.eq=function(t,e){return 0===m(this,new K(t,e))},k.isFinite=function(){return!!this.c},k.isGreaterThan=k.gt=function(t,e){return m(this,new K(t,e))>0},k.isGreaterThanOrEqualTo=k.gte=function(t,e){return 1===(e=m(this,new K(t,e)))||0===e},k.isInteger=function(){return!!this.c&&b(this.e/h)>this.c.length-2},k.isLessThan=k.lt=function(t,e){return m(this,new K(t,e))<0},k.isLessThanOrEqualTo=k.lte=function(t,e){return-1===(e=m(this,new K(t,e)))||0===e},k.isNaN=function(){return!this.s},k.isNegative=function(){return this.s<0},k.isPositive=function(){return this.s>0},k.isZero=function(){return!!this.c&&0==this.c[0]},k.minus=function(t,e){var r,n,i,o,s=this,a=s.s;if(e=(t=new K(t,e)).s,!a||!e)return new K(NaN);if(a!=e)return t.s=-e,s.plus(t);var u=s.e/h,c=t.e/h,l=s.c,p=t.c;if(!u||!c){if(!l||!p)return l?(t.s=-e,t):new K(p?s:NaN);if(!l[0]||!p[0])return p[0]?(t.s=-e,t):new K(l[0]?s:3==C?-0:0)}if(u=b(u),c=b(c),l=l.slice(),a=u-c){for((o=a<0)?(a=-a,i=l):(c=u,i=p),i.reverse(),e=a;e--;i.push(0));i.reverse()}else for(n=(o=(a=l.length)<(e=p.length))?a:e,a=e=0;e0)for(;e--;l[r++]=0);for(e=f-1;n>a;){if(l[--n]=0;){for(r=0,d=O[i]%w,v=O[i]/w|0,o=i+(s=u);o>i;)r=((c=d*(c=E[--s]%w)+(a=v*c+(l=E[s]/w|0)*d)%w*w+g[o]+r)/m|0)+(a/w|0)+v*l,g[o--]=c%m;g[o]=r}return r?++n:g.splice(0,1),z(t,g,n)},k.negated=function(){var t=new K(this);return t.s=-t.s||null,t},k.plus=function(t,e){var r,n=this,i=n.s;if(e=(t=new K(t,e)).s,!i||!e)return new K(NaN);if(i!=e)return t.s=-e,n.minus(t);var o=n.e/h,s=t.e/h,a=n.c,u=t.c;if(!o||!s){if(!a||!u)return new K(i/0);if(!a[0]||!u[0])return u[0]?t:new K(a[0]?n:0*i)}if(o=b(o),s=b(s),a=a.slice(),i=o-s){for(i>0?(s=o,r=u):(i=-i,r=a),r.reverse();i--;r.push(0));r.reverse()}for((i=a.length)-(e=u.length)<0&&(r=u,u=a,a=r,e=i),i=0;e;)i=(a[--e]=a[e]+u[e]+i)/f|0,a[e]=f===a[e]?0:a[e]%f;return i&&(a=[i].concat(a),++s),z(t,a,s)},k.precision=k.sd=function(t,e){var r,n,i,o=this;if(null!=t&&t!==!!t)return w(t,1,v),null==e?e=C:w(e,0,8),W(new K(o),t,e);if(!(r=o.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return t&&o.e+1>n&&(n=o.e+1),n},k.shiftedBy=function(t){return w(t,-9007199254740991,p),this.times("1e"+t)},k.squareRoot=k.sqrt=function(){var t,e,n,i,o,s=this,a=s.c,u=s.s,c=s.e,l=N+4,f=new K("0.5");if(1!==u||!a||!a[0])return new K(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);if(0==(u=Math.sqrt(+Y(s)))||u==1/0?(((e=g(a)).length+c)%2==0&&(e+="0"),u=Math.sqrt(+e),c=b((c+1)/2)-(c<0||c%2),n=new K(e=u==1/0?"5e"+c:(e=u.toExponential()).slice(0,e.indexOf("e")+1)+c)):n=new K(u+""),n.c[0])for((u=(c=n.e)+l)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(s,o,l,1))),g(o.c).slice(0,u)===(e=g(n.c)).slice(0,u)){if(n.e0&&y>0){for(o=y%a||a,f=d.substr(0,o);o0&&(f+=l+d.slice(o)),p&&(f="-"+f)}n=h?f+(r.decimalSeparator||"")+((u=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+u+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):f}return(r.prefix||"")+n+(r.suffix||"")},k.toFraction=function(t){var e,n,i,o,s,a,u,l,f,p,y,v,b=this,m=b.c;if(null!=t&&(!(u=new K(t)).isInteger()&&(u.c||1!==u.s)||u.lt(I)))throw Error(c+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+Y(u));if(!m)return new K(b);for(e=new K(I),f=n=new K(I),i=l=new K(I),v=g(m),s=e.e=v.length-b.e-1,e.c[0]=d[(a=s%h)<0?h+a:a],t=!t||u.comparedTo(e)>0?s>0?e:f:u,a=D,D=1/0,u=new K(v),l.c[0]=0;p=r(u,e,0,1),1!=(o=n.plus(p.times(i))).comparedTo(t);)n=i,i=o,f=l.plus(p.times(o=f)),l=o,e=u.minus(p.times(o=e)),u=o;return o=r(t.minus(n),i,0,1),l=l.plus(o.times(f)),n=n.plus(o.times(i)),l.s=f.s=b.s,y=r(f,i,s*=2,C).minus(b).abs().comparedTo(r(l,n,s,C).minus(b).abs())<1?[f,i]:[l,n],D=a,y},k.toNumber=function(){return+Y(this)},k.toPrecision=function(t,e){return null!=t&&w(t,1,v),G(this,t,e,2)},k.toString=function(t){var e,r=this,i=r.s,o=r.e;return null===o?i?(e="Infinity",i<0&&(e="-"+e)):e="NaN":(null==t?e=o<=j||o>=L?E(g(r.c),o):O(g(r.c),o,"0"):10===t?e=O(g((r=W(new K(r),N+o+1,C)).c),r.e,"0"):(w(t,2,V.length,"Base"),e=n(O(g(r.c),o,"0"),10,t,i,!0)),i<0&&r.c[0]&&(e="-"+e)),e},k.valueOf=k.toJSON=function(){return Y(this)},k._isBigNumber=!0,null!=e&&K.set(e),K}()).default=o.BigNumber=o,void 0===(n=function(){return o}.call(e,r,e,t))||(t.exports=n)}()},function(t,e,r){"use strict";var n={};function i(t,e,r){r||(r=Error);var i=function(t){var r,n;function i(r,n,i){return t.call(this,function(t,r,n){return"string"==typeof e?e:e(t,r,n)}(r,n,i))||this}return n=t,(r=i).prototype=Object.create(n.prototype),r.prototype.constructor=r,r.__proto__=n,i}(r);i.prototype.name=r.name,i.prototype.code=t,n[t]=i}function o(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map((function(t){return String(t)})),r>2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:2===r?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}i("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),i("ERR_INVALID_ARG_TYPE",(function(t,e,r){var n,i,s,a;if("string"==typeof e&&(i="not ",e.substr(!s||s<0?0:+s,i.length)===i)?(n="must not be",e=e.replace(/^not /,"")):n="must be",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}(t," argument"))a="The ".concat(t," ").concat(n," ").concat(o(e,"type"));else{var u=function(t,e,r){return"number"!=typeof r&&(r=0),!(r+e.length>t.length)&&-1!==t.indexOf(e,r)}(t,".")?"property":"argument";a='The "'.concat(t,'" ').concat(u," ").concat(n," ").concat(o(e,"type"))}return a+=". Received type ".concat(typeof r)}),TypeError),i("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),i("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),i("ERR_STREAM_PREMATURE_CLOSE","Premature close"),i("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),i("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),i("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),i("ERR_STREAM_WRITE_AFTER_END","write after end"),i("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),i("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),i("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=n},function(t,e,r){"use strict";(function(e){var n=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=c;var i=r(136),o=r(140);r(14)(c,i);for(var s=n(o.prototype),a=0;a=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return t?o.toString(t):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},function(t,e,r){"use strict";r.r(e),r.d(e,"audit",(function(){return o})),r.d(e,"auditTime",(function(){return l})),r.d(e,"buffer",(function(){return f})),r.d(e,"bufferCount",(function(){return y})),r.d(e,"bufferTime",(function(){return w})),r.d(e,"bufferToggle",(function(){return k})),r.d(e,"bufferWhen",(function(){return C})),r.d(e,"catchError",(function(){return M})),r.d(e,"combineAll",(function(){return F})),r.d(e,"combineLatest",(function(){return K})),r.d(e,"concat",(function(){return q})),r.d(e,"concatAll",(function(){return z.a})),r.d(e,"concatMap",(function(){return Y})),r.d(e,"concatMapTo",(function(){return J})),r.d(e,"count",(function(){return $})),r.d(e,"debounce",(function(){return Q})),r.d(e,"debounceTime",(function(){return rt})),r.d(e,"defaultIfEmpty",(function(){return st})),r.d(e,"delay",(function(){return ft})),r.d(e,"delayWhen",(function(){return vt})),r.d(e,"dematerialize",(function(){return _t})),r.d(e,"distinct",(function(){return St})),r.d(e,"distinctUntilChanged",(function(){return At})),r.d(e,"distinctUntilKeyChanged",(function(){return kt})),r.d(e,"elementAt",(function(){return Vt})),r.d(e,"endWith",(function(){return Gt})),r.d(e,"every",(function(){return qt})),r.d(e,"exhaust",(function(){return Yt})),r.d(e,"exhaustMap",(function(){return Zt})),r.d(e,"expand",(function(){return ee})),r.d(e,"filter",(function(){return Nt.a})),r.d(e,"finalize",(function(){return ie})),r.d(e,"find",(function(){return ae})),r.d(e,"findIndex",(function(){return le})),r.d(e,"first",(function(){return he})),r.d(e,"groupBy",(function(){return pe.b})),r.d(e,"ignoreElements",(function(){return de})),r.d(e,"isEmpty",(function(){return be})),r.d(e,"last",(function(){return Oe})),r.d(e,"map",(function(){return Xt.a})),r.d(e,"mapTo",(function(){return Se})),r.d(e,"materialize",(function(){return Ae})),r.d(e,"max",(function(){return Le})),r.d(e,"merge",(function(){return De})),r.d(e,"mergeAll",(function(){return Ue.a})),r.d(e,"mergeMap",(function(){return W.b})),r.d(e,"flatMap",(function(){return W.a})),r.d(e,"mergeMapTo",(function(){return Be})),r.d(e,"mergeScan",(function(){return Fe})),r.d(e,"min",(function(){return Ke})),r.d(e,"multicast",(function(){return qe})),r.d(e,"observeOn",(function(){return We.b})),r.d(e,"onErrorResumeNext",(function(){return Ye})),r.d(e,"pairwise",(function(){return Xe})),r.d(e,"partition",(function(){return er})),r.d(e,"pluck",(function(){return rr})),r.d(e,"publish",(function(){return or})),r.d(e,"publishBehavior",(function(){return ar})),r.d(e,"publishLast",(function(){return cr})),r.d(e,"publishReplay",(function(){return fr})),r.d(e,"race",(function(){return pr})),r.d(e,"reduce",(function(){return je})),r.d(e,"repeat",(function(){return dr})),r.d(e,"repeatWhen",(function(){return br})),r.d(e,"retry",(function(){return wr})),r.d(e,"retryWhen",(function(){return Or})),r.d(e,"refCount",(function(){return Tr.a})),r.d(e,"sample",(function(){return Ar})),r.d(e,"sampleTime",(function(){return kr})),r.d(e,"scan",(function(){return ke})),r.d(e,"sequenceEqual",(function(){return jr})),r.d(e,"share",(function(){return Br})),r.d(e,"shareReplay",(function(){return Fr})),r.d(e,"single",(function(){return Hr})),r.d(e,"skip",(function(){return Gr})),r.d(e,"skipLast",(function(){return Wr})),r.d(e,"skipUntil",(function(){return $r})),r.d(e,"skipWhile",(function(){return Qr})),r.d(e,"startWith",(function(){return rn})),r.d(e,"subscribeOn",(function(){return an})),r.d(e,"switchAll",(function(){return hn})),r.d(e,"switchMap",(function(){return cn})),r.d(e,"switchMapTo",(function(){return pn})),r.d(e,"take",(function(){return Bt})),r.d(e,"takeLast",(function(){return we})),r.d(e,"takeUntil",(function(){return dn})),r.d(e,"takeWhile",(function(){return bn})),r.d(e,"tap",(function(){return En})),r.d(e,"throttle",(function(){return Tn})),r.d(e,"throttleTime",(function(){return Rn})),r.d(e,"throwIfEmpty",(function(){return jt})),r.d(e,"timeInterval",(function(){return jn})),r.d(e,"timeout",(function(){return Hn})),r.d(e,"timeoutWith",(function(){return Dn})),r.d(e,"timestamp",(function(){return Vn})),r.d(e,"toArray",(function(){return qn})),r.d(e,"window",(function(){return zn})),r.d(e,"windowCount",(function(){return Jn})),r.d(e,"windowTime",(function(){return Zn})),r.d(e,"windowToggle",(function(){return oi})),r.d(e,"windowWhen",(function(){return ui})),r.d(e,"withLatestFrom",(function(){return fi})),r.d(e,"zip",(function(){return yi})),r.d(e,"zipAll",(function(){return vi}));var n=r(0),i=r(2);function o(t){return function(e){return e.lift(new s(t))}}var s=function(){function t(t){this.durationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.durationSelector))},t}(),a=function(t){function e(e,r){var n=t.call(this,e)||this;return n.durationSelector=r,n.hasValue=!1,n}return n.a(e,t),e.prototype._next=function(t){if(this.value=t,this.hasValue=!0,!this.throttled){var e=void 0;try{e=(0,this.durationSelector)(t)}catch(t){return this.destination.error(t)}var r=Object(i.c)(e,new i.a(this));!r||r.closed?this.clearThrottle():this.add(this.throttled=r)}},e.prototype.clearThrottle=function(){var t=this,e=t.value,r=t.hasValue,n=t.throttled;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),r&&(this.value=void 0,this.hasValue=!1,this.destination.next(e))},e.prototype.notifyNext=function(){this.clearThrottle()},e.prototype.notifyComplete=function(){this.clearThrottle()},e}(i.b),u=r(6),c=r(97);function l(t,e){return void 0===e&&(e=u.a),o((function(){return Object(c.a)(t,e)}))}function f(t){return function(e){return e.lift(new h(t))}}var h=function(){function t(t){this.closingNotifier=t}return t.prototype.call=function(t,e){return e.subscribe(new p(t,this.closingNotifier))},t}(),p=function(t){function e(e,r){var n=t.call(this,e)||this;return n.buffer=[],n.add(Object(i.c)(r,new i.a(n))),n}return n.a(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype.notifyNext=function(){var t=this.buffer;this.buffer=[],this.destination.next(t)},e}(i.b),d=r(1);function y(t,e){return void 0===e&&(e=null),function(r){return r.lift(new v(t,e))}}var v=function(){function t(t,e){this.bufferSize=t,this.startBufferEvery=e,this.subscriberClass=e&&t!==e?g:b}return t.prototype.call=function(t,e){return e.subscribe(new this.subscriberClass(t,this.bufferSize,this.startBufferEvery))},t}(),b=function(t){function e(e,r){var n=t.call(this,e)||this;return n.bufferSize=r,n.buffer=[],n}return n.a(e,t),e.prototype._next=function(t){var e=this.buffer;e.push(t),e.length==this.bufferSize&&(this.destination.next(e),this.buffer=[])},e.prototype._complete=function(){var e=this.buffer;e.length>0&&this.destination.next(e),t.prototype._complete.call(this)},e}(d.a),g=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.bufferSize=r,i.startBufferEvery=n,i.buffers=[],i.count=0,i}return n.a(e,t),e.prototype._next=function(t){var e=this,r=e.bufferSize,n=e.startBufferEvery,i=e.buffers,o=e.count;this.count++,o%n==0&&i.push([]);for(var s=i.length;s--;){var a=i[s];a.push(t),a.length===r&&(i.splice(s,1),this.destination.next(a))}},e.prototype._complete=function(){for(var e=this.buffers,r=this.destination;e.length>0;){var n=e.shift();n.length>0&&r.next(n)}t.prototype._complete.call(this)},e}(d.a),m=r(9);function w(t){var e=arguments.length,r=u.a;Object(m.a)(arguments[arguments.length-1])&&(r=arguments[arguments.length-1],e--);var n=null;e>=2&&(n=arguments[1]);var i=Number.POSITIVE_INFINITY;return e>=3&&(i=arguments[2]),function(e){return e.lift(new _(t,n,i,r))}}var _=function(){function t(t,e,r,n){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=r,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new O(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},t}(),E=function(){return function(){this.buffer=[]}}(),O=function(t){function e(e,r,n,i,o){var s=t.call(this,e)||this;s.bufferTimeSpan=r,s.bufferCreationInterval=n,s.maxBufferSize=i,s.scheduler=o,s.contexts=[];var a=s.openContext();if(s.timespanOnly=null==n||n<0,s.timespanOnly){var u={subscriber:s,context:a,bufferTimeSpan:r};s.add(a.closeAction=o.schedule(S,r,u))}else{var c={subscriber:s,context:a},l={bufferTimeSpan:r,bufferCreationInterval:n,subscriber:s,scheduler:o};s.add(a.closeAction=o.schedule(T,r,c)),s.add(o.schedule(x,n,l))}return s}return n.a(e,t),e.prototype._next=function(t){for(var e,r=this.contexts,n=r.length,i=0;i0;){var n=e.shift();r.next(n.buffer)}t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.contexts=null},e.prototype.onBufferFull=function(t){this.closeContext(t);var e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();var r=this.bufferTimeSpan,n={subscriber:this,context:t,bufferTimeSpan:r};this.add(t.closeAction=this.scheduler.schedule(S,r,n))}},e.prototype.openContext=function(){var t=new E;return this.contexts.push(t),t},e.prototype.closeContext=function(t){this.destination.next(t.buffer);var e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)},e}(d.a);function S(t){var e=t.subscriber,r=t.context;r&&e.closeContext(r),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function x(t){var e=t.bufferCreationInterval,r=t.bufferTimeSpan,n=t.subscriber,i=t.scheduler,o=n.openContext();n.closed||(n.add(o.closeAction=i.schedule(T,r,{subscriber:n,context:o})),this.schedule(t,e))}function T(t){var e=t.subscriber,r=t.context;e.closeContext(r)}var A=r(4),P=r(15),R=r(19);function k(t,e){return function(r){return r.lift(new I(t,e))}}var I=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new N(t,this.openings,this.closingSelector))},t}(),N=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.closingSelector=n,i.contexts=[],i.add(Object(P.a)(i,r)),i}return n.a(e,t),e.prototype._next=function(t){for(var e=this.contexts,r=e.length,n=0;n0;){var n=r.shift();n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,t.prototype._error.call(this,e)},e.prototype._complete=function(){for(var e=this.contexts;e.length>0;){var r=e.shift();this.destination.next(r.buffer),r.subscription.unsubscribe(),r.buffer=null,r.subscription=null}this.contexts=null,t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e){t?this.closeBuffer(t):this.openBuffer(e)},e.prototype.notifyComplete=function(t){this.closeBuffer(t.context)},e.prototype.openBuffer=function(t){try{var e=this.closingSelector.call(this,t);e&&this.trySubscribe(e)}catch(t){this._error(t)}},e.prototype.closeBuffer=function(t){var e=this.contexts;if(e&&t){var r=t.buffer,n=t.subscription;this.destination.next(r),e.splice(e.indexOf(t),1),this.remove(n),n.unsubscribe()}},e.prototype.trySubscribe=function(t){var e=this.contexts,r=new A.a,n={buffer:[],subscription:r};e.push(n);var i=Object(P.a)(this,t,n);!i||i.closed?this.closeBuffer(n):(i.context=n,this.add(i),r.add(i))},e}(R.a);function C(t){return function(e){return e.lift(new j(t))}}var j=function(){function t(t){this.closingSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new L(t,this.closingSelector))},t}(),L=function(t){function e(e,r){var n=t.call(this,e)||this;return n.closingSelector=r,n.subscribing=!1,n.openBuffer(),n}return n.a(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype._complete=function(){var e=this.buffer;e&&this.destination.next(e),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.buffer=void 0,this.subscribing=!1},e.prototype.notifyNext=function(){this.openBuffer()},e.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},e.prototype.openBuffer=function(){var t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe());var e,r=this.buffer;this.buffer&&this.destination.next(r),this.buffer=[];try{e=(0,this.closingSelector)()}catch(t){return this.error(t)}t=new A.a,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add(Object(i.c)(e,new i.a(this))),this.subscribing=!1},e}(i.b);function M(t){return function(e){var r=new D(t),n=e.lift(r);return r.caught=n}}var D=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new U(t,this.selector,this.caught))},t}(),U=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.selector=r,i.caught=n,i}return n.a(e,t),e.prototype.error=function(e){if(!this.isStopped){var r=void 0;try{r=this.selector(e,this.caught)}catch(e){return void t.prototype.error.call(this,e)}this._unsubscribeAndRecycle();var n=new i.a(this);this.add(n);var o=Object(i.c)(r,n);o!==n&&this.add(o)}},e}(i.b),B=r(61);function F(t){return function(e){return e.lift(new B.a(t))}}var H=r(7),V=r(12);function K(){for(var t=[],e=0;e0&&r[0].time-n.now()<=0;)r.shift().notification.observe(i);if(r.length>0){var o=Math.max(0,r[0].time-n.now());this.schedule(t,o)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,r=new dt(e.now()+this.delay,t);this.queue.push(r),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(lt.a.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(lt.a.createComplete()),this.unsubscribe()},e}(d.a),dt=function(){return function(t,e){this.time=t,this.notification=e}}(),yt=r(3);function vt(t,e){return e?function(r){return new mt(r,e).lift(new bt(t))}:function(e){return e.lift(new bt(t))}}var bt=function(){function t(t){this.delayDurationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new gt(t,this.delayDurationSelector))},t}(),gt=function(t){function e(e,r){var n=t.call(this,e)||this;return n.delayDurationSelector=r,n.completed=!1,n.delayNotifierSubscriptions=[],n.index=0,n}return n.a(e,t),e.prototype.notifyNext=function(t,e,r,n,i){this.destination.next(t),this.removeSubscription(i),this.tryComplete()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype.notifyComplete=function(t){var e=this.removeSubscription(t);e&&this.destination.next(e),this.tryComplete()},e.prototype._next=function(t){var e=this.index++;try{var r=this.delayDurationSelector(t,e);r&&this.tryDelay(r,t)}catch(t){this.destination.error(t)}},e.prototype._complete=function(){this.completed=!0,this.tryComplete(),this.unsubscribe()},e.prototype.removeSubscription=function(t){t.unsubscribe();var e=this.delayNotifierSubscriptions.indexOf(t);return-1!==e&&this.delayNotifierSubscriptions.splice(e,1),t.outerValue},e.prototype.tryDelay=function(t,e){var r=Object(P.a)(this,t,e);r&&!r.closed&&(this.destination.add(r),this.delayNotifierSubscriptions.push(r))},e.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},e}(R.a),mt=function(t){function e(e,r){var n=t.call(this)||this;return n.source=e,n.subscriptionDelay=r,n}return n.a(e,t),e.prototype._subscribe=function(t){this.subscriptionDelay.subscribe(new wt(t,this.source))},e}(yt.a),wt=function(t){function e(e,r){var n=t.call(this)||this;return n.parent=e,n.source=r,n.sourceSubscribed=!1,n}return n.a(e,t),e.prototype._next=function(t){this.subscribeToSource()},e.prototype._error=function(t){this.unsubscribe(),this.parent.error(t)},e.prototype._complete=function(){this.unsubscribe(),this.subscribeToSource()},e.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},e}(d.a);function _t(){return function(t){return t.lift(new Et)}}var Et=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Ot(t))},t}(),Ot=function(t){function e(e){return t.call(this,e)||this}return n.a(e,t),e.prototype._next=function(t){t.observe(this.destination)},e}(d.a);function St(t,e){return function(r){return r.lift(new xt(t,e))}}var xt=function(){function t(t,e){this.keySelector=t,this.flushes=e}return t.prototype.call=function(t,e){return e.subscribe(new Tt(t,this.keySelector,this.flushes))},t}(),Tt=function(t){function e(e,r,n){var o=t.call(this,e)||this;return o.keySelector=r,o.values=new Set,n&&o.add(Object(i.c)(n,new i.a(o))),o}return n.a(e,t),e.prototype.notifyNext=function(){this.values.clear()},e.prototype.notifyError=function(t){this._error(t)},e.prototype._next=function(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)},e.prototype._useKeySelector=function(t){var e,r=this.destination;try{e=this.keySelector(t)}catch(t){return void r.error(t)}this._finalizeNext(e,t)},e.prototype._finalizeNext=function(t,e){var r=this.values;r.has(t)||(r.add(t),this.destination.next(e))},e}(i.b);function At(t,e){return function(r){return r.lift(new Pt(t,e))}}var Pt=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new Rt(t,this.compare,this.keySelector))},t}(),Rt=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.keySelector=n,i.hasKey=!1,"function"==typeof r&&(i.compare=r),i}return n.a(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e;try{var r=this.keySelector;e=r?r(t):t}catch(t){return this.destination.error(t)}var n=!1;if(this.hasKey)try{n=(0,this.compare)(this.key,e)}catch(t){return this.destination.error(t)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))},e}(d.a);function kt(t,e){return At((function(r,n){return e?e(r[t],n[t]):r[t]===n[t]}))}var It=r(31),Nt=r(20),Ct=r(34);function jt(t){return void 0===t&&(t=Dt),function(e){return e.lift(new Lt(t))}}var Lt=function(){function t(t){this.errorFactory=t}return t.prototype.call=function(t,e){return e.subscribe(new Mt(t,this.errorFactory))},t}(),Mt=function(t){function e(e,r){var n=t.call(this,e)||this;return n.errorFactory=r,n.hasValue=!1,n}return n.a(e,t),e.prototype._next=function(t){this.hasValue=!0,this.destination.next(t)},e.prototype._complete=function(){if(this.hasValue)return this.destination.complete();var t=void 0;try{t=this.errorFactory()}catch(e){t=e}this.destination.error(t)},e}(d.a);function Dt(){return new Ct.a}var Ut=r(10);function Bt(t){return function(e){return 0===t?Object(Ut.b)():e.lift(new Ft(t))}}var Ft=function(){function t(t){if(this.total=t,this.total<0)throw new It.a}return t.prototype.call=function(t,e){return e.subscribe(new Ht(t,this.total))},t}(),Ht=function(t){function e(e,r){var n=t.call(this,e)||this;return n.total=r,n.count=0,n}return n.a(e,t),e.prototype._next=function(t){var e=this.total,r=++this.count;r<=e&&(this.destination.next(t),r===e&&(this.destination.complete(),this.unsubscribe()))},e}(d.a);function Vt(t,e){if(t<0)throw new It.a;var r=arguments.length>=2;return function(n){return n.pipe(Object(Nt.a)((function(e,r){return r===t})),Bt(1),r?st(e):jt((function(){return new It.a})))}}var Kt=r(46);function Gt(){for(var t=[],e=0;e0&&this._next(t.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},e}(i.b);function ie(t){return function(e){return e.lift(new oe(t))}}var oe=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new se(t,this.callback))},t}(),se=function(t){function e(e,r){var n=t.call(this,e)||this;return n.add(new A.a(r)),n}return n.a(e,t),e}(d.a);function ae(t,e){if("function"!=typeof t)throw new TypeError("predicate is not a function");return function(r){return r.lift(new ue(t,r,!1,e))}}var ue=function(){function t(t,e,r,n){this.predicate=t,this.source=e,this.yieldIndex=r,this.thisArg=n}return t.prototype.call=function(t,e){return e.subscribe(new ce(t,this.predicate,this.source,this.yieldIndex,this.thisArg))},t}(),ce=function(t){function e(e,r,n,i,o){var s=t.call(this,e)||this;return s.predicate=r,s.source=n,s.yieldIndex=i,s.thisArg=o,s.index=0,s}return n.a(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete(),this.unsubscribe()},e.prototype._next=function(t){var e=this.predicate,r=this.thisArg,n=this.index++;try{e.call(r||this,t,n,this.source)&&this.notifyComplete(this.yieldIndex?n:t)}catch(t){this.destination.error(t)}},e.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},e}(d.a);function le(t,e){return function(r){return r.lift(new ue(t,r,!0,e))}}var fe=r(18);function he(t,e){var r=arguments.length>=2;return function(n){return n.pipe(t?Object(Nt.a)((function(e,r){return t(e,r,n)})):fe.a,Bt(1),r?st(e):jt((function(){return new Ct.a})))}}var pe=r(85);function de(){return function(t){return t.lift(new ye)}}var ye=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new ve(t))},t}(),ve=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.a(e,t),e.prototype._next=function(t){},e}(d.a);function be(){return function(t){return t.lift(new ge)}}var ge=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new me(t))},t}(),me=function(t){function e(e){return t.call(this,e)||this}return n.a(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(d.a);function we(t){return function(e){return 0===t?Object(Ut.b)():e.lift(new _e(t))}}var _e=function(){function t(t){if(this.total=t,this.total<0)throw new It.a}return t.prototype.call=function(t,e){return e.subscribe(new Ee(t,this.total))},t}(),Ee=function(t){function e(e,r){var n=t.call(this,e)||this;return n.total=r,n.ring=new Array,n.count=0,n}return n.a(e,t),e.prototype._next=function(t){var e=this.ring,r=this.total,n=this.count++;e.length0)for(var r=this.count>=this.total?this.total:this.count,n=this.ring,i=0;i=2;return function(n){return n.pipe(t?Object(Nt.a)((function(e,r){return t(e,r,n)})):fe.a,we(1),r?st(e):jt((function(){return new Ct.a})))}}function Se(t){return function(e){return e.lift(new xe(t))}}var xe=function(){function t(t){this.value=t}return t.prototype.call=function(t,e){return e.subscribe(new Te(t,this.value))},t}(),Te=function(t){function e(e,r){var n=t.call(this,e)||this;return n.value=r,n}return n.a(e,t),e.prototype._next=function(t){this.destination.next(this.value)},e}(d.a);function Ae(){return function(t){return t.lift(new Pe)}}var Pe=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Re(t))},t}(),Re=function(t){function e(e){return t.call(this,e)||this}return n.a(e,t),e.prototype._next=function(t){this.destination.next(lt.a.createNext(t))},e.prototype._error=function(t){var e=this.destination;e.next(lt.a.createError(t)),e.complete()},e.prototype._complete=function(){var t=this.destination;t.next(lt.a.createComplete()),t.complete()},e}(d.a);function ke(t,e){var r=!1;return arguments.length>=2&&(r=!0),function(n){return n.lift(new Ie(t,e,r))}}var Ie=function(){function t(t,e,r){void 0===r&&(r=!1),this.accumulator=t,this.seed=e,this.hasSeed=r}return t.prototype.call=function(t,e){return e.subscribe(new Ne(t,this.accumulator,this.seed,this.hasSeed))},t}(),Ne=function(t){function e(e,r,n,i){var o=t.call(this,e)||this;return o.accumulator=r,o._seed=n,o.hasSeed=i,o.index=0,o}return n.a(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,r=this.index++;try{e=this.accumulator(this.seed,t,r)}catch(t){this.destination.error(t)}this.seed=e,this.destination.next(e)},e}(d.a),Ce=r(49);function je(t,e){return arguments.length>=2?function(r){return Object(Ce.a)(ke(t,e),we(1),st(e))(r)}:function(e){return Object(Ce.a)(ke((function(e,r,n){return t(e,r,n+1)})),we(1))(e)}}function Le(t){return je("function"==typeof t?function(e,r){return t(e,r)>0?e:r}:function(t,e){return t>e?t:e})}var Me=r(95);function De(){for(var t=[],e=0;e0?this._next(t.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},e}(i.b);function Ke(t){return je("function"==typeof t?function(e,r){return t(e,r)<0?e:r}:function(t,e){return t-1&&(this.count=r-1),e.subscribe(this._unsubscribeAndRecycle())}},e}(d.a);function br(t){return function(e){return e.lift(new gr(t))}}var gr=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){return e.subscribe(new mr(t,this.notifier,e))},t}(),mr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.notifier=r,i.source=n,i.sourceIsBeingSubscribedTo=!0,i}return n.a(e,t),e.prototype.notifyNext=function(){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},e.prototype.notifyComplete=function(){if(!1===this.sourceIsBeingSubscribedTo)return t.prototype.complete.call(this)},e.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return t.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next(void 0)}},e.prototype._unsubscribe=function(){var t=this.notifications,e=this.retriesSubscription;t&&(t.unsubscribe(),this.notifications=void 0),e&&(e.unsubscribe(),this.retriesSubscription=void 0),this.retries=void 0},e.prototype._unsubscribeAndRecycle=function(){var e=this._unsubscribe;return this._unsubscribe=null,t.prototype._unsubscribeAndRecycle.call(this),this._unsubscribe=e,this},e.prototype.subscribeToRetries=function(){var e;this.notifications=new ir.a;try{e=(0,this.notifier)(this.notifications)}catch(e){return t.prototype.complete.call(this)}this.retries=e,this.retriesSubscription=Object(i.c)(e,new i.a(this))},e}(i.b);function wr(t){return void 0===t&&(t=-1),function(e){return e.lift(new _r(t,e))}}var _r=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new Er(t,this.count,this.source))},t}(),Er=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.count=r,i.source=n,i}return n.a(e,t),e.prototype.error=function(e){if(!this.isStopped){var r=this.source,n=this.count;if(0===n)return t.prototype.error.call(this,e);n>-1&&(this.count=n-1),r.subscribe(this._unsubscribeAndRecycle())}},e}(d.a);function Or(t){return function(e){return e.lift(new Sr(t,e))}}var Sr=function(){function t(t,e){this.notifier=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new xr(t,this.notifier,this.source))},t}(),xr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.notifier=r,i.source=n,i}return n.a(e,t),e.prototype.error=function(e){if(!this.isStopped){var r=this.errors,n=this.retries,o=this.retriesSubscription;if(n)this.errors=void 0,this.retriesSubscription=void 0;else{r=new ir.a;try{n=(0,this.notifier)(r)}catch(e){return t.prototype.error.call(this,e)}o=Object(i.c)(n,new i.a(this))}this._unsubscribeAndRecycle(),this.errors=r,this.retries=n,this.retriesSubscription=o,r.next(e)}},e.prototype._unsubscribe=function(){var t=this.errors,e=this.retriesSubscription;t&&(t.unsubscribe(),this.errors=void 0),e&&(e.unsubscribe(),this.retriesSubscription=void 0),this.retries=void 0},e.prototype.notifyNext=function(){var t=this._unsubscribe;this._unsubscribe=null,this._unsubscribeAndRecycle(),this._unsubscribe=t,this.source.subscribe(this)},e}(i.b),Tr=r(58);function Ar(t){return function(e){return e.lift(new Pr(t))}}var Pr=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var r=new Rr(t),n=e.subscribe(r);return n.add(Object(i.c)(this.notifier,new i.a(r))),n},t}(),Rr=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.hasValue=!1,e}return n.a(e,t),e.prototype._next=function(t){this.value=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.emitValue()},e.prototype.notifyComplete=function(){this.emitValue()},e.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},e}(i.b);function kr(t,e){return void 0===e&&(e=u.a),function(r){return r.lift(new Ir(t,e))}}var Ir=function(){function t(t,e){this.period=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new Nr(t,this.period,this.scheduler))},t}(),Nr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.period=r,i.scheduler=n,i.hasValue=!1,i.add(n.schedule(Cr,r,{subscriber:i,period:r})),i}return n.a(e,t),e.prototype._next=function(t){this.lastValue=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},e}(d.a);function Cr(t){var e=t.subscriber,r=t.period;e.notifyNext(),this.schedule(t,r)}function jr(t,e){return function(r){return r.lift(new Lr(t,e))}}var Lr=function(){function t(t,e){this.compareTo=t,this.comparator=e}return t.prototype.call=function(t,e){return e.subscribe(new Mr(t,this.compareTo,this.comparator))},t}(),Mr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.compareTo=r,i.comparator=n,i._a=[],i._b=[],i._oneComplete=!1,i.destination.add(r.subscribe(new Dr(e,i))),i}return n.a(e,t),e.prototype._next=function(t){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(t),this.checkValues())},e.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0,this.unsubscribe()},e.prototype.checkValues=function(){for(var t=this,e=t._a,r=t._b,n=t.comparator;e.length>0&&r.length>0;){var i=e.shift(),o=r.shift(),s=!1;try{s=n?n(i,o):i===o}catch(t){this.destination.error(t)}s||this.emit(!1)}},e.prototype.emit=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype.nextB=function(t){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(t),this.checkValues())},e.prototype.completeB=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},e}(d.a),Dr=function(t){function e(e,r){var n=t.call(this,e)||this;return n.parent=r,n}return n.a(e,t),e.prototype._next=function(t){this.parent.nextB(t)},e.prototype._error=function(t){this.parent.error(t),this.unsubscribe()},e.prototype._complete=function(){this.parent.completeB(),this.unsubscribe()},e}(d.a);function Ur(){return new ir.a}function Br(){return function(t){return Object(Tr.a)()(qe(Ur)(t))}}function Fr(t,e,r){var n;return n=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:r},function(t){return t.lift(function(t){var e,r,n=t.bufferSize,i=void 0===n?Number.POSITIVE_INFINITY:n,o=t.windowTime,s=void 0===o?Number.POSITIVE_INFINITY:o,a=t.refCount,u=t.scheduler,c=0,l=!1,f=!1;return function(t){var n;c++,!e||l?(l=!1,e=new lr.a(i,s,u),n=e.subscribe(this),r=t.subscribe({next:function(t){e.next(t)},error:function(t){l=!0,e.error(t)},complete:function(){f=!0,r=void 0,e.complete()}})):n=e.subscribe(this),this.add((function(){c--,n.unsubscribe(),r&&!f&&a&&0===c&&(r.unsubscribe(),r=void 0,e=void 0)}))}}(n))}}function Hr(t){return function(e){return e.lift(new Vr(t,e))}}var Vr=function(){function t(t,e){this.predicate=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new Kr(t,this.predicate,this.source))},t}(),Kr=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.predicate=r,i.source=n,i.seenValue=!1,i.index=0,i}return n.a(e,t),e.prototype.applySingleValue=function(t){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=t)},e.prototype._next=function(t){var e=this.index++;this.predicate?this.tryNext(t,e):this.applySingleValue(t)},e.prototype.tryNext=function(t,e){try{this.predicate(t,e,this.source)&&this.applySingleValue(t)}catch(t){this.destination.error(t)}},e.prototype._complete=function(){var t=this.destination;this.index>0?(t.next(this.seenValue?this.singleValue:void 0),t.complete()):t.error(new Ct.a)},e}(d.a);function Gr(t){return function(e){return e.lift(new qr(t))}}var qr=function(){function t(t){this.total=t}return t.prototype.call=function(t,e){return e.subscribe(new zr(t,this.total))},t}(),zr=function(t){function e(e,r){var n=t.call(this,e)||this;return n.total=r,n.count=0,n}return n.a(e,t),e.prototype._next=function(t){++this.count>this.total&&this.destination.next(t)},e}(d.a);function Wr(t){return function(e){return e.lift(new Yr(t))}}var Yr=function(){function t(t){if(this._skipCount=t,this._skipCount<0)throw new It.a}return t.prototype.call=function(t,e){return 0===this._skipCount?e.subscribe(new d.a(t)):e.subscribe(new Jr(t,this._skipCount))},t}(),Jr=function(t){function e(e,r){var n=t.call(this,e)||this;return n._skipCount=r,n._count=0,n._ring=new Array(r),n}return n.a(e,t),e.prototype._next=function(t){var e=this._skipCount,r=this._count++;if(r0?this.startWindowEvery:this.windowSize,r=this.destination,n=this.windowSize,i=this.windows,o=i.length,s=0;s=0&&a%e==0&&!this.closed&&i.shift().complete(),++this.count%e==0&&!this.closed){var u=new ir.a;i.push(u),r.next(u)}},e.prototype._error=function(t){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().complete();this.destination.complete()},e.prototype._unsubscribe=function(){this.count=0,this.windows=null},e}(d.a);function Zn(t){var e=u.a,r=null,n=Number.POSITIVE_INFINITY;return Object(m.a)(arguments[3])&&(e=arguments[3]),Object(m.a)(arguments[2])?e=arguments[2]:Object(on.a)(arguments[2])&&(n=Number(arguments[2])),Object(m.a)(arguments[1])?e=arguments[1]:Object(on.a)(arguments[1])&&(r=Number(arguments[1])),function(i){return i.lift(new Qn(t,r,n,e))}}var Qn=function(){function t(t,e,r,n){this.windowTimeSpan=t,this.windowCreationInterval=e,this.maxWindowSize=r,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new ei(t,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},t}(),ti=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._numberOfNextedValues=0,e}return n.a(e,t),e.prototype.next=function(e){this._numberOfNextedValues++,t.prototype.next.call(this,e)},Object.defineProperty(e.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),e}(ir.a),ei=function(t){function e(e,r,n,i,o){var s=t.call(this,e)||this;s.destination=e,s.windowTimeSpan=r,s.windowCreationInterval=n,s.maxWindowSize=i,s.scheduler=o,s.windows=[];var a=s.openWindow();if(null!==n&&n>=0){var u={subscriber:s,window:a,context:null},c={windowTimeSpan:r,windowCreationInterval:n,subscriber:s,scheduler:o};s.add(o.schedule(ii,r,u)),s.add(o.schedule(ni,n,c))}else{var l={subscriber:s,window:a,windowTimeSpan:r};s.add(o.schedule(ri,r,l))}return s}return n.a(e,t),e.prototype._next=function(t){for(var e=this.windows,r=e.length,n=0;n=this.maxWindowSize&&this.closeWindow(i))}},e.prototype._error=function(t){for(var e=this.windows;e.length>0;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){for(var t=this.windows;t.length>0;){var e=t.shift();e.closed||e.complete()}this.destination.complete()},e.prototype.openWindow=function(){var t=new ti;return this.windows.push(t),this.destination.next(t),t},e.prototype.closeWindow=function(t){t.complete();var e=this.windows;e.splice(e.indexOf(t),1)},e}(d.a);function ri(t){var e=t.subscriber,r=t.windowTimeSpan,n=t.window;n&&e.closeWindow(n),t.window=e.openWindow(),this.schedule(t,r)}function ni(t){var e=t.windowTimeSpan,r=t.subscriber,n=t.scheduler,i=t.windowCreationInterval,o=r.openWindow(),s=this,a={action:s,subscription:null},u={subscriber:r,window:o,context:a};a.subscription=n.schedule(ii,e,u),s.add(a.subscription),s.schedule(t,i)}function ii(t){var e=t.subscriber,r=t.window,n=t.context;n&&n.action&&n.subscription&&n.action.remove(n.subscription),e.closeWindow(r)}function oi(t,e){return function(r){return r.lift(new si(t,e))}}var si=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new ai(t,this.openings,this.closingSelector))},t}(),ai=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.openings=r,i.closingSelector=n,i.contexts=[],i.add(i.openSubscription=Object(P.a)(i,r,r)),i}return n.a(e,t),e.prototype._next=function(t){var e=this.contexts;if(e)for(var r=e.length,n=0;n0){var i=n.indexOf(r);-1!==i&&n.splice(i,1)}},e.prototype.notifyComplete=function(){},e.prototype._next=function(t){if(0===this.toRespond.length){var e=[t].concat(this.values);this.project?this._tryProject(e):this.destination.next(e)}},e.prototype._tryProject=function(t){var e;try{e=this.project.apply(this,t)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(R.a),di=r(64);function yi(){for(var t=[],e=0;e1)this.connection=null;else{var r=this.connection,n=t._connection;this.connection=null,!n||r&&n!==r||n.unsubscribe()}}else this.connection=null},e}(i.a)},function(t,e,r){"use strict";r.d(e,"a",(function(){return l}));var n=r(0),i=r(5),o=r(79),s=r(4),a=r(92),u=r(29),c=r(99),l=function(t){function e(e,r,n){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===r&&(r=Number.POSITIVE_INFINITY);var i=t.call(this)||this;return i.scheduler=n,i._events=[],i._infiniteTimeWindow=!1,i._bufferSize=e<1?1:e,i._windowTime=r<1?1:r,r===Number.POSITIVE_INFINITY?(i._infiniteTimeWindow=!0,i.next=i.nextInfiniteTimeWindow):i.next=i.nextTimeWindow,i}return n.a(e,t),e.prototype.nextInfiniteTimeWindow=function(e){if(!this.isStopped){var r=this._events;r.push(e),r.length>this._bufferSize&&r.shift()}t.prototype.next.call(this,e)},e.prototype.nextTimeWindow=function(e){this.isStopped||(this._events.push(new f(this._getNow(),e)),this._trimBufferThenGetEvents()),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,r=this._infiniteTimeWindow,n=r?this._events:this._trimBufferThenGetEvents(),i=this.scheduler,o=n.length;if(this.closed)throw new u.a;if(this.isStopped||this.hasError?e=s.a.EMPTY:(this.observers.push(t),e=new c.a(this,t)),i&&t.add(t=new a.a(t,i)),r)for(var l=0;le&&(o=Math.max(o,i-e)),o>0&&n.splice(0,o),n},e}(i.a),f=function(){return function(t,e){this.time=t,this.value=e}}()},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(3);function i(t,e){return e?new n.a((function(r){return e.schedule(o,0,{error:t,subscriber:r})})):new n.a((function(e){return e.error(t)}))}function o(t){var e=t.error;t.subscriber.error(e)}},function(t,e,r){"use strict";r.d(e,"b",(function(){return l})),r.d(e,"a",(function(){return f}));var n=r(0),i=r(9),o=r(7),s=r(19),a=r(15),u=r(36),c={};function l(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),d=function(t){function e(e,r,n){var i=t.call(this,e)||this;return i.parent=r,i.observable=n,i.stillUnsubscribed=!0,i.buffer=[],i.isComplete=!1,i}return n.a(e,t),e.prototype[a.a]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t){this.buffer.push(t),this.parent.checkIterators()},e.prototype.subscribe=function(){return Object(u.c)(this.observable,new u.a(this))},e}(u.b)},function(t,e,r){"use strict";r.r(e),function(t){var n;r.d(e,"HttpBackend",(function(){return u})),r.d(e,"HttpRequestFailed",(function(){return a})),r.d(e,"HttpResponseError",(function(){return s})),r.d(e,"STATUS_CODE",(function(){return n})),r.d(e,"VERSION",(function(){return i})),function(t){t[t.CONTINUE=100]="CONTINUE",t[t.SWITCHING_PROTOCOLS=101]="SWITCHING_PROTOCOLS",t[t.PROCESSING=102]="PROCESSING",t[t.OK=200]="OK",t[t.CREATED=201]="CREATED",t[t.ACCEPTED=202]="ACCEPTED",t[t.NON_AUTHORITATIVE_INFORMATION=203]="NON_AUTHORITATIVE_INFORMATION",t[t.NO_CONTENT=204]="NO_CONTENT",t[t.RESET_CONTENT=205]="RESET_CONTENT",t[t.PARTIAL_CONTENT=206]="PARTIAL_CONTENT",t[t.MULTI_STATUS=207]="MULTI_STATUS",t[t.ALREADY_REPORTED=208]="ALREADY_REPORTED",t[t.IM_USED=226]="IM_USED",t[t.MULTIPLE_CHOICES=300]="MULTIPLE_CHOICES",t[t.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",t[t.FOUND=302]="FOUND",t[t.SEE_OTHER=303]="SEE_OTHER",t[t.NOT_MODIFIED=304]="NOT_MODIFIED",t[t.USE_PROXY=305]="USE_PROXY",t[t.SWITCH_PROXY=306]="SWITCH_PROXY",t[t.TEMPORARY_REDIRECT=307]="TEMPORARY_REDIRECT",t[t.PERMANENT_REDIRECT=308]="PERMANENT_REDIRECT",t[t.BAD_REQUEST=400]="BAD_REQUEST",t[t.UNAUTHORIZED=401]="UNAUTHORIZED",t[t.PAYMENT_REQUIRED=402]="PAYMENT_REQUIRED",t[t.FORBIDDEN=403]="FORBIDDEN",t[t.NOT_FOUND=404]="NOT_FOUND",t[t.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",t[t.NOT_ACCEPTABLE=406]="NOT_ACCEPTABLE",t[t.PROXY_AUTHENTICATION_REQUIRED=407]="PROXY_AUTHENTICATION_REQUIRED",t[t.REQUEST_TIMEOUT=408]="REQUEST_TIMEOUT",t[t.CONFLICT=409]="CONFLICT",t[t.GONE=410]="GONE",t[t.LENGTH_REQUIRED=411]="LENGTH_REQUIRED",t[t.PRECONDITION_FAILED=412]="PRECONDITION_FAILED",t[t.PAYLOAD_TOO_LARGE=413]="PAYLOAD_TOO_LARGE",t[t.URI_TOO_LONG=414]="URI_TOO_LONG",t[t.UNSUPPORTED_MEDIA_TYPE=415]="UNSUPPORTED_MEDIA_TYPE",t[t.RANGE_NOT_SATISFIABLE=416]="RANGE_NOT_SATISFIABLE",t[t.EXPECTATION_FAILED=417]="EXPECTATION_FAILED",t[t.I_AM_A_TEAPOT=418]="I_AM_A_TEAPOT",t[t.MISDIRECTED_REQUEST=421]="MISDIRECTED_REQUEST",t[t.UNPROCESSABLE_ENTITY=422]="UNPROCESSABLE_ENTITY",t[t.LOCKED=423]="LOCKED",t[t.FAILED_DEPENDENCY=424]="FAILED_DEPENDENCY",t[t.UPGRADE_REQUIRED=426]="UPGRADE_REQUIRED",t[t.PRECONDITION_REQUIRED=428]="PRECONDITION_REQUIRED",t[t.TOO_MANY_REQUESTS=429]="TOO_MANY_REQUESTS",t[t.REQUEST_HEADER_FIELDS_TOO_LARGE=431]="REQUEST_HEADER_FIELDS_TOO_LARGE",t[t.UNAVAILABLE_FOR_LEGAL_REASONS=451]="UNAVAILABLE_FOR_LEGAL_REASONS",t[t.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",t[t.NOT_IMPLEMENTED=501]="NOT_IMPLEMENTED",t[t.BAD_GATEWAY=502]="BAD_GATEWAY",t[t.SERVICE_UNAVAILABLE=503]="SERVICE_UNAVAILABLE",t[t.GATEWAY_TIMEOUT=504]="GATEWAY_TIMEOUT",t[t.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP_VERSION_NOT_SUPPORTED",t[t.VARIANT_ALSO_NEGOTIATES=506]="VARIANT_ALSO_NEGOTIATES",t[t.INSUFFICIENT_STORAGE=507]="INSUFFICIENT_STORAGE",t[t.LOOP_DETECTED=508]="LOOP_DETECTED",t[t.NOT_EXTENDED=510]="NOT_EXTENDED",t[t.NETWORK_AUTHENTICATION_REQUIRED=511]="NETWORK_AUTHENTICATION_REQUIRED"}(n||(n={}));var i={commitHash:"672d0dd2a20104bf148e55a78550ca2abda4e652",version:"9.1.1"},o=void 0!==t&&null!=t.versions&&null!=t.versions.node?r(158).XMLHttpRequest:XMLHttpRequest,s=function(t,e,r,n,i){this.message=t,this.status=e,this.statusText=r,this.body=n,this.url=i,this.name="HttpResponse"},a=function(t,e){this.url=t,this.innerEvent=e,this.name="HttpRequestFailed",this.message="Request to "+t+" failed"},u=function(){function t(){}return t.prototype.serialize=function(t){if(!t)return"";var e=[],r=function(r){if(t.hasOwnProperty(r)&&void 0!==t[r]){var n="function"==typeof t[r].toJSON?t[r].toJSON():t[r];if(null===n)return e.push(encodeURIComponent(r)),"continue";if(Array.isArray(n))return n.forEach((function(t){e.push(encodeURIComponent(r)+"="+encodeURIComponent(t))})),"continue";e.push(encodeURIComponent(r)+"="+encodeURIComponent(n))}};for(var n in t)r(n);var i=e.join("&");return i?"?"+i:""},t.prototype.createXHR=function(){return new o},t.prototype.createRequest=function(t,e){var r=this,n=t.url,i=t.method,o=t.timeout,u=t.query,c=t.headers,l=void 0===c?{}:c,f=t.json,h=void 0===f||f,p=t.mimeType,d=void 0===p?void 0:p;return new Promise((function(t,c){var f=r.createXHR();for(var p in f.open(i||"GET",""+n+r.serialize(u)),l["Content-Type"]||f.setRequestHeader("Content-Type","application/json"),d&&f.overrideMimeType(""+d),l)f.setRequestHeader(p,l[p]);if(f.timeout=o||3e4,f.onload=function(){if(this.status>=200&&this.status<300)if(h)try{t(JSON.parse(f.response))}catch(t){c(new Error("Unable to parse response: "+f.response))}else t(f.response);else c(new s("Http error response: ("+this.status+") "+f.response,this.status,f.statusText,f.response,n))},f.ontimeout=function(){c(new Error("Request timed out after: "+f.timeout+"ms"))},f.onerror=function(t){c(new a(n,t))},e){var y=JSON.stringify(e);f.send(y)}else f.send()}))},t}()}.call(this,r(22))},function(t,e,r){"use strict";function n(t){return null!==t&&"object"==typeof t}r.d(e,"a",(function(){return n}))},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(1);function i(t){for(;t;){var e=t,r=e.closed,i=e.destination,o=e.isStopped;if(r||o)return!1;t=i&&i instanceof n.a?i:null}return!0}},function(t,e,r){"use strict";r.d(e,"a",(function(){return o}));var n=r(3),i=r(4);function o(t,e){return new n.a((function(r){var n=new i.a,o=0;return n.add(e.schedule((function(){o!==t.length?(r.next(t[o++]),r.closed||n.add(this.schedule())):r.complete()}))),n}))}},function(t,e,r){"use strict";r.d(e,"a",(function(){return o}));var n=r(16),i=r(43),o={closed:!0,next:function(t){},error:function(t){if(n.a.useDeprecatedSynchronousErrorHandling)throw t;Object(i.a)(t)},complete:function(){}}},function(t,e,r){(e=t.exports=r(121)).Stream=e,e.Readable=e,e.Writable=r(105),e.Duplex=r(47),e.Transform=r(124),e.PassThrough=r(170)},function(t,e,r){"use strict";var n,i="object"==typeof Reflect?Reflect:null,o=i&&"function"==typeof i.apply?i.apply:function(t,e,r){return Function.prototype.apply.call(t,e,r)};n=i&&"function"==typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var s=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}t.exports=a,t.exports.once=function(t,e){return new Promise((function(r,n){function i(){void 0!==o&&t.removeListener("error",o),r([].slice.call(arguments))}var o;"error"!==e&&(o=function(r){t.removeListener(e,i),n(r)},t.once("error",o)),t.once(e,i)}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var u=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function l(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function f(t,e,r,n){var i,o,s,a;if(c(r),void 0===(o=t._events)?(o=t._events=Object.create(null),t._eventsCount=0):(void 0!==o.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),o=t._events),s=o[e]),void 0===s)s=o[e]=r,++t._eventsCount;else if("function"==typeof s?s=o[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),(i=l(t))>0&&s.length>i&&!s.warned){s.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=s.length,a=u,console&&console.warn&&console.warn(a)}return t}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=h.bind(n);return i.listener=r,n.wrapFn=i,i}function d(t,e,r){var n=t._events;if(void 0===n)return[];var i=n[e];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(t){for(var e=new Array(t.length),r=0;r0&&(s=e[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=i[t];if(void 0===u)return!1;if("function"==typeof u)o(u,this,e);else{var c=u.length,l=v(u,c);for(r=0;r=0;o--)if(r[o]===e||r[o].listener===e){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(t,e){for(;e+1=0;n--)this.removeListener(t,e[n]);return this},a.prototype.listeners=function(t){return d(this,t,!0)},a.prototype.rawListeners=function(t){return d(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):y.call(t,e)},a.prototype.listenerCount=y,a.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]}},function(t,e,r){(function(t){function r(t){return Object.prototype.toString.call(t)}e.isArray=function(t){return Array.isArray?Array.isArray(t):"[object Array]"===r(t)},e.isBoolean=function(t){return"boolean"==typeof t},e.isNull=function(t){return null===t},e.isNullOrUndefined=function(t){return null==t},e.isNumber=function(t){return"number"==typeof t},e.isString=function(t){return"string"==typeof t},e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=function(t){return void 0===t},e.isRegExp=function(t){return"[object RegExp]"===r(t)},e.isObject=function(t){return"object"==typeof t&&null!==t},e.isDate=function(t){return"[object Date]"===r(t)},e.isError=function(t){return"[object Error]"===r(t)||t instanceof Error},e.isFunction=function(t){return"function"==typeof t},e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=t.isBuffer}).call(this,r(13).Buffer)},function(t,e,r){"use strict";var n=r(169).Buffer,i=n.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(n.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=u,this.end=c,e=4;break;case"utf8":this.fillLast=a,e=4;break;case"base64":this.text=l,this.end=f,e=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(e)}function s(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function l(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}e.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(t.lastNeed=i-1),i;if(--n=0)return i>0&&(t.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,r){"use strict";var n=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},i=this&&this.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s};Object.defineProperty(e,"__esModule",{value:!0}),e.WalletOperation=e.MissedBlockDuringConfirmationError=void 0;var a=r(78),u=r(57),c=r(233),l=function(){this.name="MissedBlockDuringConfirmationError",this.message="Taquito missed a block while waiting for operation confirmation and was not able to find the operation"};e.MissedBlockDuringConfirmationError=l;var f=function(){function t(t,e,r){var n=this;this.opHash=t,this.context=e,this._newHead$=r,this._operationResult=new a.ReplaySubject(1),this._includedInBlock=new a.ReplaySubject(1),this._included=!1,this.newHead$=this._newHead$.pipe(u.tap((function(t){if(!n._included&&n.lastHead&&t.header.level-n.lastHead.header.level>1)throw new l;n.lastHead=t})),u.shareReplay({bufferSize:1,refCount:!0})),this.confirmed$=this.newHead$.pipe(u.map((function(t){var e,r,i,s;try{for(var a=o(t.operations),u=a.next();!u.done;u=a.next()){var c=u.value;try{for(var l=(i=void 0,o(c)),f=l.next();!f.done;f=l.next()){var h=f.value;if(h.hash===n.opHash)return n._included=!0,n._includedInBlock.next(t),n._operationResult.next(h.contents),t}}catch(t){i={error:t}}finally{try{f&&!f.done&&(s=l.return)&&s.call(l)}finally{if(i)throw i.error}}}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}})),u.filter((function(t){return void 0!==t})),u.first(),u.shareReplay({bufferSize:1,refCount:!0})),this.confirmed$.pipe(u.first()).subscribe()}return t.prototype.operationResults=function(){return n(this,void 0,void 0,(function(){return i(this,(function(t){return[2,this._operationResult.pipe(u.first()).toPromise()]}))}))},t.prototype.receipt=function(){return n(this,void 0,void 0,(function(){var t;return i(this,(function(e){switch(e.label){case 0:return t=c.receiptFromOperation,[4,this.operationResults()];case 1:return[2,t.apply(void 0,[e.sent()])]}}))}))},t.prototype.getCurrentConfirmation=function(){return n(this,void 0,void 0,(function(){return i(this,(function(t){return this._included?[2,a.combineLatest([this._includedInBlock,a.from(this.context.rpc.getBlock())]).pipe(u.map((function(t){var e=s(t,2),r=e[0];return e[1].header.level-r.header.level+1})),u.first()).toPromise()]:[2,0]}))}))},t.prototype.isInCurrentBranch=function(t){return void 0===t&&(t="head"),n(this,void 0,void 0,(function(){var e,r,n,o,s;return i(this,(function(i){switch(i.label){case 0:return this._included?[4,this.context.rpc.getBlockHeader({block:t})]:[2,!0];case 1:return e=i.sent(),[4,this._includedInBlock.pipe(u.first()).toPromise()];case 2:return r=i.sent(),(n=e.level-r.header.level)<=0?[2,!0]:(o=Math.min(r.header.level+n,r.header.level+60),s=Set.bind,[4,this.context.rpc.getLiveBlocks({block:String(o)})]);case 3:return[2,(new(s.apply(Set,[void 0,i.sent()]))).has(r.hash)]}}))}))},t.prototype.confirmationObservable=function(t){var e=this;if(void 0!==t&&t<1)throw new Error("Confirmation count must be at least 1");var r=this.context.config.defaultConfirmationCount,n=void 0!==t?t:r;if(void 0===n)throw new Error("Default confirmation count can not be undefined!");return a.combineLatest([this._includedInBlock,this.newHead$]).pipe(u.distinctUntilChanged((function(t,e){var r=s(t,2)[1],n=s(e,2)[1];return r.hash===n.hash})),u.map((function(t){var r=s(t,2),i=r[0],o=r[1];return{block:o,expectedConfirmation:n,currentConfirmation:o.header.level-i.header.level+1,completed:o.header.level-i.header.level>=n-1,isInCurrentBranch:function(){return e.isInCurrentBranch(o.hash)}}})),u.takeWhile((function(t){return!t.completed}),!0))},t.prototype.confirmation=function(t){return this.confirmationObservable(t).toPromise()},t}();e.WalletOperation=f},function(t,e,r){"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.ChainIds=e.DefaultLambdaAddresses=e.protocols=e.Protocols=e.DEFAULT_STORAGE_LIMIT=e.DEFAULT_FEE=e.DEFAULT_GAS_LIMIT=void 0,function(t){t[t.DELEGATION=10600]="DELEGATION",t[t.ORIGINATION=10600]="ORIGINATION",t[t.TRANSFER=10600]="TRANSFER",t[t.REVEAL=10600]="REVEAL"}(e.DEFAULT_GAS_LIMIT||(e.DEFAULT_GAS_LIMIT={})),function(t){t[t.DELEGATION=1257]="DELEGATION",t[t.ORIGINATION=1e4]="ORIGINATION",t[t.TRANSFER=1e4]="TRANSFER",t[t.REVEAL=1420]="REVEAL"}(e.DEFAULT_FEE||(e.DEFAULT_FEE={})),function(t){t[t.DELEGATION=0]="DELEGATION",t[t.ORIGINATION=257]="ORIGINATION",t[t.TRANSFER=257]="TRANSFER",t[t.REVEAL=0]="REVEAL"}(e.DEFAULT_STORAGE_LIMIT||(e.DEFAULT_STORAGE_LIMIT={})),function(t){t.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",t.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",t.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",t.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",t.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",t.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",t.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i"}(n=e.Protocols||(e.Protocols={})),e.protocols={"004":[n.Pt24m4xi],"005":[n.PsBABY5H,n.PsBabyM1],"006":[n.PsCARTHA],"007":[n.PsDELPH1],"008":[n.PtEdo2Zk],"009":[n.PsFLorena]},function(t){t.MAINNET="KT1CPuTzwC7h7uLXd5WQmpMFso1HxrLBUtpE",t.CARTHAGENET="KT1VAy1o1FGiXYfD3YT7x7k5eF5HSHhmc1u6",t.DELPHINET="KT19abMFs3haqyKYwqdLjK9GbtofryZLvpiK",t.EDONET="KT1A64nVZDccAHGAsf1ZyVajXZcbiwjV3SnN",t.FLORENCENET="KT1KCe3YqGnudsiCWb5twbe2DH5T3EMdLpSE"}(e.DefaultLambdaAddresses||(e.DefaultLambdaAddresses={})),function(t){t.MAINNET="NetXdQprcVkpaWU",t.CARTHAGENET="NetXjD3HPJJjmcd",t.DELPHINET="NetXm8tYqnMWky1",t.EDONET="NetXSgo1ZT2DRUG",t.FLORENCENET="NetXxkAx4woPLyu"}(e.ChainIds||(e.ChainIds={}))},function(t,e,r){"use strict";r.r(e),r.d(e,"AddressValidationError",(function(){return I})),r.d(e,"BigMapValidationError",(function(){return E})),r.d(e,"BytesValidationError",(function(){return V})),r.d(e,"ChainIDValidationError",(function(){return ot})),r.d(e,"ContractValidationError",(function(){return M})),r.d(e,"EncodeTicketError",(function(){return at})),r.d(e,"IntValidationError",(function(){return z})),r.d(e,"KeyHashValidationError",(function(){return X})),r.d(e,"KeyValidationError",(function(){return J})),r.d(e,"ListValidationError",(function(){return U})),r.d(e,"MapTypecheckError",(function(){return b})),r.d(e,"MapValidationError",(function(){return C})),r.d(e,"MichelsonMap",(function(){return g})),r.d(e,"MutezValidationError",(function(){return F})),r.d(e,"NatValidationError",(function(){return P})),r.d(e,"ParameterSchema",(function(){return wt})),r.d(e,"Schema",(function(){return mt})),r.d(e,"SetValidationError",(function(){return nt})),r.d(e,"SignatureValidationError",(function(){return Q})),r.d(e,"UnitValue",(function(){return Et})),r.d(e,"VERSION",(function(){return _t}));var n=r(156),i=r.n(n),o=r(33),s=r.n(o),a=r(11),u=function(t,e){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,e)};function c(t,e){function r(){this.constructor=t}u(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var l,f=function(){return(f=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function d(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s}function y(){for(var t=[],e=0;e0?this.val.annots[0]:String(this.idx)).replace(/(%|\:)(_Liq_entry_)?/,"")},t.prototype.hasAnnotations=function(){return Array.isArray(this.val.annots)&&this.val.annots.length},t.prototype.ExtractSignature=function(){return[[this.ExtractSchema()]]},t}(),_=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return c(e,t),e.prototype.compare=function(t,e){return t===e?0:t2?[t.args[0],{prim:e,args:t.args.slice(1)}]:[t.args[0],t.args[1]]}var T,A=function(t){function e(r,n,i){return t.call(this,Array.isArray(r)?{prim:e.prim,args:r}:r,n,i)||this}return c(e,t),e.prototype.args=function(){return x(this.val)},e.prototype.tokens=function(){var t=this,r=0;return this.args().map((function(n){var i=t.createToken(n,t.idx+r);return i instanceof e?r+=Object.keys(i.ExtractSchema()).length:r++,i}))},e.prototype.Encode=function(t){return{prim:"Pair",args:this.tokens().map((function(e){return e.Encode(t)}))}},e.prototype.ExtractSignature=function(){var t,e,r,n,i=this.args(),o=this.createToken(i[0],this.idx),s=1;o instanceof S&&(s=Object.keys(o.ExtractSchema()).length);var a=this.createToken(i[1],this.idx+s),u=[];try{for(var c=p(o.ExtractSignature()),l=c.next();!l.done;l=c.next()){var f=l.value;try{for(var h=(r=void 0,p(a.ExtractSignature())),d=h.next();!d.done;d=h.next()){var v=d.value;u.push(y(f,v))}}catch(t){r={error:t}}finally{try{d&&!d.done&&(n=h.return)&&n.call(h)}finally{if(r)throw r.error}}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(e=c.return)&&e.call(c)}finally{if(t)throw t.error}}return u},e.prototype.ToBigMapKey=function(t){return{key:this.EncodeObject(t),type:this.typeWithoutAnnotations()}},e.prototype.ToKey=function(t){return this.Execute(t)},e.prototype.EncodeObject=function(t){var r,n,i=d(this.tokens(),2),o=i[0],s=i[1];return r=o instanceof e&&!o.hasAnnotations()?t:t[o.annot()],n=s instanceof e&&!s.hasAnnotations()?t:t[s.annot()],{prim:"Pair",args:[o.EncodeObject(r),s.EncodeObject(n)]}},e.prototype.traversal=function(t,r){var n,i,o,s=this.args(),a=this.createToken(s[0],this.idx),u=1;a instanceof e&&!a.hasAnnotations()?(o=t(a),u=Object.keys(a.ExtractSchema()).length):((n={})[a.annot()]=t(a),o=n);var c,l=this.createToken(s[1],this.idx+u);return l instanceof e&&!l.hasAnnotations()?c=r(l):((i={})[l.annot()]=r(l),c=i),f(f({},o),c)},e.prototype.Execute=function(t,e){var r=x(t,"Pair");return this.traversal((function(t){return t.Execute(r[0],e)}),(function(t){return t.Execute(r[1],e)}))},e.prototype.ExtractSchema=function(){return this.traversal((function(t){return t.ExtractSchema()}),(function(t){return t.ExtractSchema()}))},e.prototype.compare=function(t,r){var n=d(this.tokens(),2),i=n[0],o=n[1],s=function(t,r){return t instanceof e&&!t.hasAnnotations()?r:r[t.annot()]};if(i instanceof _&&o instanceof _){var a=i.compare(s(i,t),s(i,r));return 0===a?o.compare(s(o,t),s(o,r)):a}throw new Error("Not a comparable pair")},e.prim="pair",e}(_),P=function(t){function e(e,r,n){var i=t.call(this,e,r,n)||this;return i.value=e,i.token=r,i.name="NatValidationError",i}return c(e,t),e}(m),R=function(t){function e(e,r,n){var i=t.call(this,e,r,n)||this;return i.val=e,i.idx=r,i.fac=n,i}return c(e,t),e.prototype.Execute=function(t){return new s.a(t[Object.keys(t)[0]])},e.prototype.Encode=function(t){var e=t.pop(),r=this.isValid(e);if(r)throw r;return{int:new s.a(e).toFixed()}},e.prototype.isValid=function(t){var e=new s.a(t);return e.isNaN()?new P(t,this,"Value is not a number: "+t):e.isNegative()?new P(t,this,"Value cannot be negative: "+t):null},e.prototype.EncodeObject=function(t){var e=this.isValid(t);if(e)throw e;return{int:new s.a(t).toFixed()}},e.prototype.ExtractSchema=function(){return e.prim},e.prototype.ToBigMapKey=function(t){return{key:{int:String(t)},type:{prim:e.prim}}},e.prototype.ToKey=function(t){return t.int},e.prototype.compare=function(t,e){var r=Number(t),n=Number(e);return r===n?0:r2?f(f({},t),{args:[t.args[0],{prim:e,args:null===(n=t.args)||void 0===n?void 0:n.slice(1)}]}):t}function gt(t,e){var r=bt(t),n=bt(e);return r.prim===n.prim&&(void 0===r.args&&void 0===n.args||void 0!==r.args&&void 0!==n.args&&r.args.length===n.args.length&&r.args.every((function(t,e){var r;return gt(t,null===(r=n.args)||void 0===r?void 0:r[e])})))&&(void 0===r.annots&&void 0===n.annots||void 0!==r.annots&&void 0!==n.annots&&r.annots.length===n.annots.length&&r.annots.every((function(t,e){var r;return t===(null===(r=n.annots)||void 0===r?void 0:r[e])})))}var mt=function(){function t(t){if(this[T]=!0,this.root=yt(t,0),this.root instanceof O)this.bigMap=this.root;else if(this.isExpressionExtended(t)&&"pair"===t.prim){var e=t.args[0];this.isExpressionExtended(e)&&"big_map"===e.prim&&(this.bigMap=new O(e,0,yt))}}return t.isSchema=function(t){return t&&!0===t[vt]},t.fromRPCResponse=function(e){var r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.find((function(t){return"storage"===t.prim}));if(!r||!Array.isArray(r.args))throw new Error("Invalid rpc response passed as arguments");return new t(r.args[0])},t.prototype.isExpressionExtended=function(t){return"prim"in t&&Array.isArray(t.args)},t.prototype.removeTopLevelAnnotation=function(t){return(this.root instanceof A||this.root instanceof S)&&this.root.hasAnnotations()&&"object"==typeof t&&1===Object.keys(t).length?t[Object.keys(t)[0]]:t},t.prototype.Execute=function(t,e){var r=this.root.Execute(t,e);return this.removeTopLevelAnnotation(r)},t.prototype.Typecheck=function(t){if(this.root instanceof O&&Number.isInteger(Number(t)))return!0;try{return this.root.EncodeObject(t),!0}catch(t){return!1}},t.prototype.ExecuteOnBigMapDiff=function(t,e){if(!this.bigMap)throw new Error("No big map schema");if(!Array.isArray(t))throw new Error("Invalid big map diff. It must be an array");var r=t.map((function(t){return{args:[t.key,t.value]}}));return this.bigMap.Execute(r,e)},t.prototype.ExecuteOnBigMapValue=function(t,e){if(!this.bigMap)throw new Error("No big map schema");return this.bigMap.ValueSchema.Execute(t,e)},t.prototype.EncodeBigMapKey=function(t){if(!this.bigMap)throw new Error("No big map schema");try{return this.bigMap.KeySchema.ToBigMapKey(t)}catch(t){throw new Error("Unable to encode big map key: "+t)}},t.prototype.Encode=function(t){try{return this.root.EncodeObject(t)}catch(t){if(t instanceof m)throw t;throw new Error("Unable to encode storage object. "+t)}},t.prototype.ExtractSchema=function(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())},t.prototype.ComputeState=function(t,e){var r,n=this;if(!this.bigMap)throw new Error("No big map schema");var i=t.reduce((function(t,e){return f(f({},t),n.ExecuteOnBigMapDiff(e.contents[0].metadata.operation_result.big_map_diff))}),{});return f(f({},this.Execute(e)),((r={})[this.bigMap.annot()]=i,r))},t.prototype.FindFirstInTopLevelPair=function(t,e){return this.findValue(this.root.val,t,e)},t.prototype.findValue=function(t,e,r){if(gt(r,t))return e;if(Array.isArray(t)||"pair"===t.prim){var n=bt(t),i=bt(e,"Pair");if(void 0===n.args||void 0===i.args)throw new Error("Tokens have no arguments");return this.findValue(n.args[0],i.args[0],r)||this.findValue(n.args[1],i.args[1],r)}},t}();T=vt;var wt=function(){function t(t){this.root=yt(t,0)}return t.fromRPCResponse=function(e){var r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.find((function(t){return"parameter"===t.prim}));if(!r||!Array.isArray(r.args))throw new Error("Invalid rpc response passed as arguments");return new t(r.args[0])},Object.defineProperty(t.prototype,"isMultipleEntryPoint",{get:function(){return this.root instanceof S||this.root instanceof G&&this.root.subToken()instanceof S},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasAnnotation",{get:function(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]},enumerable:!1,configurable:!0}),t.prototype.Execute=function(t,e){return this.root.Execute(t,e)},t.prototype.Encode=function(){for(var t=[],e=0;e0?t.prototype.requestAsyncId.call(this,e,r,n):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame((function(){return e.flush(null)}))))},e.prototype.recycleAsyncId=function(e,r,n){if(void 0===n&&(n=0),null!==n&&n>0||null===n&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,r,n);0===e.actions.length&&(cancelAnimationFrame(r),e.scheduled=void 0)},e}(y.a),b=r(37),g=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return d.a(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,r=this.actions,n=-1,i=r.length;t=t||r.shift();do{if(e=t.execute(t.state,t.delay))break}while(++ne.index?1:-1:t.delay>e.delay?1:-1},e}(y.a),E=r(80),O=r(4),S=r(1),x=r(21),T=r(49),A=r(24),P=r(18);function R(t){return!!t&&(t instanceof n.a||"function"==typeof t.lift&&"function"==typeof t.subscribe)}var k=r(31),I=r(34),N=r(29),C=r(52),j=r(93),L=r(8),M=r(67),D=r(7),U=r(9);function B(t,e,r){if(e){if(!Object(U.a)(e))return function(){for(var n=[],i=0;i1?n.next(Array.prototype.slice.call(arguments)):n.next(t)}),n,r)}))}function rt(t,e,r,n,i){var o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){var s=t;t.addEventListener(e,r,i),o=function(){return s.removeEventListener(e,r,i)}}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){var a=t;t.on(e,r),o=function(){return a.off(e,r)}}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){var u=t;t.addListener(e,r),o=function(){return u.removeListener(e,r)}}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(var c=0,l=t.length;c=e){n.complete();break}if(n.next(o++),n.closed)break}}))}function Ot(t){var e=t.start,r=t.index,n=t.count,i=t.subscriber;r>=n?i.complete():(i.next(e),i.closed||(t.index=r+1,t.start=e+1,this.schedule(t)))}var St=r(60),xt=r(97);function Tt(t,e){return new n.a((function(r){var n,i;try{n=t()}catch(t){return void r.error(t)}try{i=e(n)}catch(t){return void r.error(t)}var o=(i?Object(X.a)(i):J.a).subscribe(r);return function(){o.unsubscribe(),n&&n.unsubscribe()}}))}var At=r(64),Pt=r(98),Rt=r(16)},function(t,e,r){"use strict";r.d(e,"b",(function(){return o})),r.d(e,"a",(function(){return s}));var n=r(0),i=function(t){function e(e,r){var n=t.call(this,e,r)||this;return n.scheduler=e,n.work=r,n}return n.a(e,t),e.prototype.schedule=function(e,r){return void 0===r&&(r=0),r>0?t.prototype.schedule.call(this,e,r):(this.delay=r,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,r){return r>0||this.closed?t.prototype.execute.call(this,e,r):this._execute(e,r)},e.prototype.requestAsyncId=function(e,r,n){return void 0===n&&(n=0),null!==n&&n>0||null===n&&this.delay>0?t.prototype.requestAsyncId.call(this,e,r,n):e.flush(this)},e}(r(39).a),o=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.a(e,t),e}(r(37).a))(i),s=o},function(t,e,r){"use strict";r.d(e,"a",(function(){return n}));var n=function(){function t(e,r){void 0===r&&(r=t.now),this.SchedulerAction=e,this.now=r}return t.prototype.schedule=function(t,e,r){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(r,e)},t.now=function(){return Date.now()},t}()},function(t,e,r){"use strict";(function(e){void 0===e||!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports={nextTick:function(t,r,n,i){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var o,s,a=arguments.length;switch(a){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick((function(){t.call(null,r)}));case 3:return e.nextTick((function(){t.call(null,r,n)}));case 4:return e.nextTick((function(){t.call(null,r,n,i)}));default:for(o=new Array(a-1),s=0;s0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},u=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},c=this&&this.__spread||function(){for(var t=[],e=0;e0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.RPCBatchProvider=e.OperationBatch=e.BATCH_KINDS=void 0;var c=r(87),l=r(146),f=r(86),h=r(26),p=r(25);e.BATCH_KINDS=[p.OpKind.ACTIVATION,p.OpKind.ORIGINATION,p.OpKind.TRANSACTION,p.OpKind.DELEGATION];var d=function(t){function e(e,r){var n=t.call(this,e)||this;return n.estimator=r,n.operations=[],n}return i(e,t),e.prototype.withTransfer=function(t){return this.operations.push(o({kind:p.OpKind.TRANSACTION},t)),this},e.prototype.withContractCall=function(t){return this.withTransfer(t.toTransferParams())},e.prototype.withDelegation=function(t){return this.operations.push(o({kind:p.OpKind.DELEGATION},t)),this},e.prototype.withActivation=function(t){var e=t.pkh,r=t.secret;return this.operations.push({kind:p.OpKind.ACTIVATION,pkh:e,secret:r}),this},e.prototype.withOrigination=function(t){return this.operations.push(o({kind:p.OpKind.ORIGINATION},t)),this},e.prototype.getRPCOp=function(t){return s(this,void 0,void 0,(function(){var e;return a(this,(function(r){switch(r.label){case 0:switch(t.kind){case p.OpKind.TRANSACTION:return[3,1];case p.OpKind.ORIGINATION:return[3,2];case p.OpKind.DELEGATION:return[3,4];case p.OpKind.ACTIVATION:return[3,5]}return[3,6];case 1:return[2,c.createTransferOperation(o({},t))];case 2:return e=c.createOriginationOperation,[4,this.context.parser.prepareCodeOrigination(o({},t))];case 3:return[2,e.apply(void 0,[r.sent()])];case 4:return[2,c.createSetDelegateOperation(o({},t))];case 5:return[2,o({},t)];case 6:throw new Error("Unsupported operation kind: "+t.kind)}}))}))},e.prototype.with=function(t){var e,r;try{for(var n=u(t),i=n.next();!i.done;i=n.next()){var o=i.value;switch(o.kind){case p.OpKind.TRANSACTION:this.withTransfer(o);break;case p.OpKind.ORIGINATION:this.withOrigination(o);break;case p.OpKind.DELEGATION:this.withDelegation(o);break;case p.OpKind.ACTIVATION:this.withActivation(o);break;default:throw new Error("Unsupported operation kind: "+o.kind)}}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return this},e.prototype.send=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,f,d,y,v,b,g,m,w,_,E,O,S,x,T,A,P,R,k,I,N,C,j,L,M=this;return a(this,(function(D){switch(D.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return e=D.sent(),[4,this.signer.publicKey()];case 2:return r=D.sent(),[4,this.estimator.batch(this.operations)];case 3:return n=D.sent(),[4,this.isRevealOpNeeded(this.operations,e)];case 4:i=D.sent(),f=i?1:0,d=[],D.label=5;case 5:D.trys.push([5,13,14,15]),y=u(this.operations),v=y.next(),D.label=6;case 6:return v.done?[3,12]:(b=v.value,h.isOpWithFee(b)?[4,this.estimate(b,(function(){return s(M,void 0,void 0,(function(){return a(this,(function(t){return[2,n[f]]}))}))}))]:[3,9]);case 7:return g=D.sent(),w=(m=d).push,[4,this.getRPCOp(o(o({},b),g))];case 8:return w.apply(m,[D.sent()]),[3,10];case 9:d.push(o({},b)),D.label=10;case 10:f++,D.label=11;case 11:return v=y.next(),[3,6];case 12:return[3,15];case 13:return _=D.sent(),j={error:_},[3,15];case 14:try{v&&!v.done&&(L=y.return)&&L.call(y)}finally{if(j)throw j.error}return[7];case 15:return i?(E={kind:p.OpKind.REVEAL},[4,this.estimate(E,(function(){return s(M,void 0,void 0,(function(){return a(this,(function(t){return[2,n[0]]}))}))}))]):[3,18];case 16:return O=D.sent(),x=(S=d).unshift,[4,c.createRevealOperation(o({},O),e,r)];case 17:x.apply(S,[D.sent()]),D.label=18;case 18:return T=t&&t.source||e,[4,this.prepareOperation({operation:d,source:T})];case 19:return A=D.sent(),[4,this.forge(A)];case 20:return P=D.sent(),[4,this.signAndInject(P)];case 21:return R=D.sent(),k=R.hash,I=R.context,N=R.forgedBytes,C=R.opResponse,[2,new l.BatchOperation(k,d,T,N,C,I)]}}))}))},e}(f.OperationEmitter);e.OperationBatch=d;var y=function(){function t(t,e){this.context=t,this.estimator=e}return t.prototype.batch=function(t){var e=new d(this.context,this.estimator);return Array.isArray(t)&&e.with(t),e},t}();e.RPCBatchProvider=y},function(t,e,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),i=this&&this.__exportStar||function(t,e){for(var r in t)"default"===r||Object.prototype.hasOwnProperty.call(e,r)||n(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0}),i(r(268),e),i(r(74),e),i(r(133),e),i(r(132),e),i(r(131),e),i(r(273),e),i(r(274),e)},function(t,e,r){"use strict";r.d(e,"a",(function(){return c})),r.d(e,"b",(function(){return l}));var n=r(0),i=r(5),o=r(3),s=r(1),a=r(4),u=r(58),c=function(t){function e(e,r){var n=t.call(this)||this;return n.source=e,n.subjectFactory=r,n._refCount=0,n._isComplete=!1,n}return n.a(e,t),e.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},e.prototype.getSubject=function(){var t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject},e.prototype.connect=function(){var t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new a.a).add(this.source.subscribe(new f(this.getSubject(),this))),t.closed&&(this._connection=null,t=a.a.EMPTY)),t},e.prototype.refCount=function(){return Object(u.a)()(this)},e}(o.a),l=function(){var t=c.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}}(),f=function(t){function e(e,r){var n=t.call(this,e)||this;return n.connectable=r,n}return n.a(e,t),e.prototype._error=function(e){this._unsubscribe(),t.prototype._error.call(this,e)},e.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}},e}(i.b);s.a},function(t,e,r){"use strict";r.d(e,"a",(function(){return s}));var n=r(0),i=r(5),o=r(29),s=function(t){function e(e){var r=t.call(this)||this;return r._value=e,r}return n.a(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var r=t.prototype._subscribe.call(this,e);return r&&!r.closed&&e.next(this._value),r},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new o.a;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(i.a)},function(t,e,r){"use strict";r.d(e,"b",(function(){return s})),r.d(e,"a",(function(){return u}));var n=r(0),i=r(1),o=r(21);function s(t,e){return void 0===e&&(e=0),function(r){return r.lift(new a(t,e))}}var a=function(){function t(t,e){void 0===e&&(e=0),this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.scheduler,this.delay))},t}(),u=function(t){function e(e,r,n){void 0===n&&(n=0);var i=t.call(this,e)||this;return i.scheduler=r,i.delay=n,i}return n.a(e,t),e.dispatch=function(t){var e=t.notification,r=t.destination;e.observe(r),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new c(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(o.a.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(o.a.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(o.a.createComplete()),this.unsubscribe()},e}(i.a),c=function(){return function(t,e){this.notification=t,this.destination=e}}()},function(t,e,r){"use strict";r.d(e,"a",(function(){return n}));var n=function(){function t(){return Error.call(this),this.message="Timeout has occurred",this.name="TimeoutError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,r){"use strict";r.d(e,"a",(function(){return i}));var n=r(62);function i(){return Object(n.a)(1)}},function(t,e,r){"use strict";r.d(e,"a",(function(){return a}));var n=r(3),i=r(9),o=r(62),s=r(36);function a(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(r=t.pop())):"number"==typeof u&&(r=t.pop()),null===a&&1===t.length&&t[0]instanceof n.a?t[0]:Object(o.a)(r)(Object(s.a)(t,a))}},function(t,e,r){"use strict";r.d(e,"a",(function(){return u}));var n=r(0),i=r(7),o=r(36),s=r(19),a=r(15);function u(){for(var t=[],e=0;e-1?n:o.nextTick;g.WritableState=b;var c=Object.create(r(72));c.inherits=r(44);var l={deprecate:r(168)},f=r(122),h=r(104).Buffer,p=i.Uint8Array||function(){};var d,y=r(123);function v(){}function b(t,e){a=a||r(47),t=t||{};var n=e instanceof a;this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,c=t.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(c||0===c)?c:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===t.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,i=r.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,i){--e.pendingcb,r?(o.nextTick(i,n),o.nextTick(S,t,e),t._writableState.errorEmitted=!0,t.emit("error",n)):(i(n),t._writableState.errorEmitted=!0,t.emit("error",n),S(t,e))}(t,r,n,e,i);else{var s=E(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||_(t,r),n?u(w,t,r,s,i):w(t,r,s,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new s(this)}function g(t){if(a=a||r(47),!(d.call(g,this)||this instanceof a))return new g(t);this._writableState=new b(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),f.call(this)}function m(t,e,r,n,i,o,s){e.writelen=n,e.writecb=s,e.writing=!0,e.sync=!0,r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function w(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),S(t,e)}function _(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,i=new Array(n),o=e.corkedRequestsFree;o.entry=r;for(var a=0,u=!0;r;)i[a]=r,r.isBuf||(u=!1),r=r.next,a+=1;i.allBuffers=u,m(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new s(e),e.bufferedRequestCount=0}else{for(;r;){var c=r.chunk,l=r.encoding,f=r.callback;if(m(t,e,!1,e.objectMode?1:c.length,c,l,f),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function E(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function O(t,e){t._final((function(r){e.pendingcb--,r&&t.emit("error",r),e.prefinished=!0,t.emit("prefinish"),S(t,e)}))}function S(t,e){var r=E(e);return r&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(O,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),r}c.inherits(g,f),b.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(b.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(g,Symbol.hasInstance,{value:function(t){return!!d.call(this,t)||this===g&&(t&&t._writableState instanceof b)}})):d=function(t){return t instanceof this},g.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},g.prototype.write=function(t,e,r){var n,i=this._writableState,s=!1,a=!i.objectMode&&(n=t,h.isBuffer(n)||n instanceof p);return a&&!h.isBuffer(t)&&(t=function(t){return h.from(t)}(t)),"function"==typeof e&&(r=e,e=null),a?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof r&&(r=v),i.ended?function(t,e){var r=new Error("write after end");t.emit("error",r),o.nextTick(e,r)}(this,r):(a||function(t,e,r,n){var i=!0,s=!1;return null===r?s=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||e.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(t.emit("error",s),o.nextTick(n,s),i=!1),i}(this,i,t,r))&&(i.pendingcb++,s=function(t,e,r,n,i,o){if(!r){var s=function(t,e,r){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=h.from(e,r));return e}(e,n,i);n!==s&&(r=!0,i="buffer",n=s)}var a=e.objectMode?1:n.length;e.length+=a;var u=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(g.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),g.prototype._write=function(t,e,r){r(new Error("_write() is not implemented"))},g.prototype._writev=null,g.prototype.end=function(t,e,r){var n=this._writableState;"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(t,e,r){e.ending=!0,S(t,e),r&&(e.finished?o.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,n,r)},Object.defineProperty(g.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),g.prototype.destroy=y.destroy,g.prototype._undestroy=y.undestroy,g.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,r(22),r(166).setImmediate,r(17))},function(t,e,r){"use strict";var n=r(174),i=r(176);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}e.parse=m,e.resolve=function(t,e){return m(t,!1,!0).resolve(e)},e.resolveObject=function(t,e){return t?m(t,!1,!0).resolveObject(e):e},e.format=function(t){i.isString(t)&&(t=m(t));return t instanceof o?t.format():o.prototype.format.call(t)},e.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,u=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,c=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(c),f=["%","/","?",";","#"].concat(l),h=["/","?","#"],p=/^[+a-z0-9A-Z_-]{0,63}$/,d=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,y={javascript:!0,"javascript:":!0},v={javascript:!0,"javascript:":!0},b={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},g=r(177);function m(t,e,r){if(t&&i.isObject(t)&&t instanceof o)return t;var n=new o;return n.parse(t,e,r),n}o.prototype.parse=function(t,e,r){if(!i.isString(t))throw new TypeError("Parameter 'url' must be a string, not "+typeof t);var o=t.indexOf("?"),a=-1!==o&&o127?C+="x":C+=N[j];if(!C.match(p)){var M=k.slice(0,A),D=k.slice(A+1),U=N.match(d);U&&(M.push(U[1]),D.unshift(U[2])),D.length&&(m="/"+D.join(".")+m),this.hostname=M.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=n.toASCII(this.hostname));var B=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+B,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==m[0]&&(m="/"+m))}if(!y[E])for(A=0,I=l.length;A0)&&r.host.split("@"))&&(r.auth=R.shift(),r.host=r.hostname=R.shift());return r.search=t.search,r.query=t.query,i.isNull(r.pathname)&&i.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.href=r.format(),r}if(!O.length)return r.pathname=null,r.search?r.path="/"+r.search:r.path=null,r.href=r.format(),r;for(var x=O.slice(-1)[0],T=(r.host||t.host||O.length>1)&&("."===x||".."===x)||""===x,A=0,P=O.length;P>=0;P--)"."===(x=O[P])?O.splice(P,1):".."===x?(O.splice(P,1),A++):A&&(O.splice(P,1),A--);if(!_&&!E)for(;A--;A)O.unshift("..");!_||""===O[0]||O[0]&&"/"===O[0].charAt(0)||O.unshift(""),T&&"/"!==O.join("/").substr(-1)&&O.push("");var R,k=""===O[0]||O[0]&&"/"===O[0].charAt(0);S&&(r.hostname=r.host=k?"":O.length?O.shift():"",(R=!!(r.host&&r.host.indexOf("@")>0)&&r.host.split("@"))&&(r.auth=R.shift(),r.host=r.hostname=R.shift()));return(_=_||r.host&&O.length)&&!k&&O.unshift(""),O.length?r.pathname=O.join("/"):(r.pathname=null,r.path=null),i.isNull(r.pathname)&&i.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.auth=t.auth||r.auth,r.slashes=r.slashes||t.slashes,r.href=r.format(),r},o.prototype.parseHost=function(){var t=this.host,e=a.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(){this.listeners={}}return t.prototype.addEventListener=function(t,e){t=t.toLowerCase(),this.listeners[t]=this.listeners[t]||[],this.listeners[t].push(e.handleEvent||e)},t.prototype.removeEventListener=function(t,e){if(t=t.toLowerCase(),this.listeners[t]){var r=this.listeners[t].indexOf(e.handleEvent||e);r<0||this.listeners[t].splice(r,1)}},t.prototype.dispatchEvent=function(t){var e=t.type.toLowerCase();if(t.target=this,this.listeners[e])for(var r=0,n=this.listeners[e];r0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]t._pos){var o=r.substr(t._pos);if("x-user-defined"===t._charset){for(var s=new n(o.length),a=0;at._pos&&(t.push(new n(new Uint8Array(c.result.slice(t._pos)))),t._pos=c.result.byteLength)},c.onload=function(){t.push(null)},c.readAsArrayBuffer(r)}t._xhr.readyState===u.DONE&&"ms-stream"!==t._mode&&t.push(null)}}).call(this,r(22),r(13).Buffer,r(17))},function(t,e,r){"use strict";(function(e,n){var i=r(81);t.exports=m;var o,s=r(117);m.ReadableState=g;r(71).EventEmitter;var a=function(t,e){return t.listeners(e).length},u=r(122),c=r(104).Buffer,l=e.Uint8Array||function(){};var f=Object.create(r(72));f.inherits=r(44);var h=r(163),p=void 0;p=h&&h.debuglog?h.debuglog("stream"):function(){};var d,y=r(164),v=r(123);f.inherits(m,u);var b=["error","close","destroy","pause","resume"];function g(t,e){t=t||{};var n=e instanceof(o=o||r(47));this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var i=t.highWaterMark,s=t.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new y,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(d||(d=r(73).StringDecoder),this.decoder=new d(t.encoding),this.encoding=t.encoding)}function m(t){if(o=o||r(47),!(this instanceof m))return new m(t);this._readableState=new g(t,this),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),u.call(this)}function w(t,e,r,n,i){var o,s=t._readableState;null===e?(s.reading=!1,function(t,e){if(e.ended)return;if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,S(t)}(t,s)):(i||(o=function(t,e){var r;n=e,c.isBuffer(n)||n instanceof l||"string"==typeof e||void 0===e||t.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(s,e)),o?t.emit("error",o):s.objectMode||e&&e.length>0?("string"==typeof e||s.objectMode||Object.getPrototypeOf(e)===c.prototype||(e=function(t){return c.from(t)}(e)),n?s.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):_(t,s,e,!0):s.ended?t.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||0!==e.length?_(t,s,e,!1):T(t,s)):_(t,s,e,!1))):n||(s.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=E?t=E:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function S(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(p("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(x,t):x(t))}function x(t){p("emit readable"),t.emit("readable"),k(t)}function T(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(A,t,e))}function A(t,e){for(var r=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):r=function(t,e,r){var n;to.length?o.length:t;if(s===o.length?i+=o:i+=o.slice(0,t),0===(t-=s)){s===o.length?(++n,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(s));break}++n}return e.length-=n,i}(t,e):function(t,e){var r=c.allocUnsafe(t),n=e.head,i=1;n.data.copy(r),t-=n.data.length;for(;n=n.next;){var o=n.data,s=t>o.length?o.length:t;if(o.copy(r,r.length-t,0,s),0===(t-=s)){s===o.length?(++i,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(s));break}++i}return e.length-=i,r}(t,e);return n}(t,e.buffer,e.decoder),r);var r}function N(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(C,e,t))}function C(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function j(t,e){for(var r=0,n=t.length;r=e.highWaterMark||e.ended))return p("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?N(this):S(this),null;if(0===(t=O(t,e))&&e.ended)return 0===e.length&&N(this),null;var n,i=e.needReadable;return p("need readable",i),(0===e.length||e.length-t0?I(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&N(this)),null!==n&&this.emit("data",n),n},m.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(t,e){var r=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,p("pipe count=%d opts=%j",o.pipesCount,e);var u=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?l:m;function c(e,n){p("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),t.removeListener("close",b),t.removeListener("finish",g),t.removeListener("drain",f),t.removeListener("error",v),t.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",m),r.removeListener("data",y),h=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||f())}function l(){p("onend"),t.end()}o.endEmitted?i.nextTick(u):r.once("end",u),t.on("unpipe",c);var f=function(t){return function(){var e=t._readableState;p("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&a(t,"data")&&(e.flowing=!0,k(t))}}(r);t.on("drain",f);var h=!1;var d=!1;function y(e){p("ondata"),d=!1,!1!==t.write(e)||d||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==j(o.pipes,t))&&!h&&(p("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,d=!0),r.pause())}function v(e){p("onerror",e),m(),t.removeListener("error",v),0===a(t,"error")&&t.emit("error",e)}function b(){t.removeListener("finish",g),m()}function g(){p("onfinish"),t.removeListener("close",b),m()}function m(){p("unpipe"),r.unpipe(t)}return r.on("data",y),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?s(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",v),t.once("close",b),t.once("finish",g),t.emit("pipe",r),o.flowing||(p("pipe resume"),r.resume()),t},m.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var e=this._digest();void 0!==t&&(e=e.toString(t)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return e},o.prototype._digest=function(){throw new Error("_digest is not implemented")},t.exports=o},function(t,e,r){"use strict";(function(e,n){var i;t.exports=x,x.ReadableState=S;r(71).EventEmitter;var o=function(t,e){return t.listeners(e).length},s=r(137),a=r(13).Buffer,u=e.Uint8Array||function(){};var c,l=r(240);c=l&&l.debuglog?l.debuglog("stream"):function(){};var f,h,p,d=r(241),y=r(138),v=r(139).getHighWaterMark,b=r(54).codes,g=b.ERR_INVALID_ARG_TYPE,m=b.ERR_STREAM_PUSH_AFTER_EOF,w=b.ERR_METHOD_NOT_IMPLEMENTED,_=b.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(14)(x,s);var E=y.errorOrDestroy,O=["error","close","destroy","pause","resume"];function S(t,e,n){i=i||r(55),t=t||{},"boolean"!=typeof n&&(n=e instanceof i),this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=v(this,t,"readableHighWaterMark",n),this.buffer=new d,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(f||(f=r(73).StringDecoder),this.decoder=new f(t.encoding),this.encoding=t.encoding)}function x(t){if(i=i||r(55),!(this instanceof x))return new x(t);var e=this instanceof i;this._readableState=new S(t,this,e),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),s.call(this)}function T(t,e,r,n,i){c("readableAddChunk",e);var o,s=t._readableState;if(null===e)s.reading=!1,function(t,e){if(c("onEofChunk"),e.ended)return;if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?k(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,I(t)))}(t,s);else if(i||(o=function(t,e){var r;n=e,a.isBuffer(n)||n instanceof u||"string"==typeof e||void 0===e||t.objectMode||(r=new g("chunk",["string","Buffer","Uint8Array"],e));var n;return r}(s,e)),o)E(t,o);else if(s.objectMode||e&&e.length>0)if("string"==typeof e||s.objectMode||Object.getPrototypeOf(e)===a.prototype||(e=function(t){return a.from(t)}(e)),n)s.endEmitted?E(t,new _):A(t,s,e,!0);else if(s.ended)E(t,new m);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||0!==e.length?A(t,s,e,!1):N(t,s)):A(t,s,e,!1)}else n||(s.reading=!1,N(t,s));return!s.ended&&(s.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=P?t=P:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function k(t){var e=t._readableState;c("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(c("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(I,t))}function I(t){var e=t._readableState;c("emitReadable_",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,D(t)}function N(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(C,t,e))}function C(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function L(t){c("readable nexttick read 0"),t.read(0)}function M(t,e){c("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),D(t),e.flowing&&!e.reading&&t.read(0)}function D(t){var e=t._readableState;for(c("flow",e.flowing);e.flowing&&null!==t.read(););}function U(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r);var r}function B(t){var e=t._readableState;c("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(F,e,t))}function F(t,e){if(c("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}function H(t,e){for(var r=0,n=t.length;r=e.highWaterMark:e.length>0)||e.ended))return c("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):k(this),null;if(0===(t=R(t,e))&&e.ended)return 0===e.length&&B(this),null;var n,i=e.needReadable;return c("need readable",i),(0===e.length||e.length-t0?U(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&B(this)),null!==n&&this.emit("data",n),n},x.prototype._read=function(t){E(this,new w("_read()"))},x.prototype.pipe=function(t,e){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=t;break;case 1:i.pipes=[i.pipes,t];break;default:i.pipes.push(t)}i.pipesCount+=1,c("pipe count=%d opts=%j",i.pipesCount,e);var s=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?u:v;function a(e,n){c("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),t.removeListener("close",d),t.removeListener("finish",y),t.removeListener("drain",l),t.removeListener("error",p),t.removeListener("unpipe",a),r.removeListener("end",u),r.removeListener("end",v),r.removeListener("data",h),f=!0,!i.awaitDrain||t._writableState&&!t._writableState.needDrain||l())}function u(){c("onend"),t.end()}i.endEmitted?n.nextTick(s):r.once("end",s),t.on("unpipe",a);var l=function(t){return function(){var e=t._readableState;c("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,"data")&&(e.flowing=!0,D(t))}}(r);t.on("drain",l);var f=!1;function h(e){c("ondata");var n=t.write(e);c("dest.write",n),!1===n&&((1===i.pipesCount&&i.pipes===t||i.pipesCount>1&&-1!==H(i.pipes,t))&&!f&&(c("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function p(e){c("onerror",e),v(),t.removeListener("error",p),0===o(t,"error")&&E(t,e)}function d(){t.removeListener("finish",y),v()}function y(){c("onfinish"),t.removeListener("close",d),v()}function v(){c("unpipe"),r.unpipe(t)}return r.on("data",h),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",p),t.once("close",d),t.once("finish",y),t.emit("pipe",r),i.flowing||(c("pipe resume"),r.resume()),t},x.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o0,!1!==i.flowing&&this.resume()):"readable"===t&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,c("on readable",i.length,i.reading),i.length?k(this):i.reading||n.nextTick(L,this))),r},x.prototype.addListener=x.prototype.on,x.prototype.removeListener=function(t,e){var r=s.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(j,this),r},x.prototype.removeAllListeners=function(t){var e=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==t&&void 0!==t||n.nextTick(j,this),e},x.prototype.resume=function(){var t=this._readableState;return t.flowing||(c("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(M,t,e))}(this,t)),t.paused=!1,this},x.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},x.prototype.wrap=function(t){var e=this,r=this._readableState,n=!1;for(var i in t.on("end",(function(){if(c("wrapped end"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(i){(c("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(e.push(i)||(n=!0,t.pause()))})),t)void 0===this[i]&&"function"==typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o-1))throw new _(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(x.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(x.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),x.prototype._write=function(t,e,r){r(new y("_write()"))},x.prototype._writev=null,x.prototype.end=function(t,e,r){var i=this._writableState;return"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),i.corked&&(i.corked=1,this.uncork()),i.ending||function(t,e,r){e.ending=!0,I(t,e),r&&(e.finished?n.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,i,r),this},Object.defineProperty(x.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(x.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),x.prototype.destroy=f.destroy,x.prototype._undestroy=f.undestroy,x.prototype._destroy=function(t,e){e(t)}}).call(this,r(17),r(22))},function(t,e,r){"use strict";t.exports=l;var n=r(54).codes,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,s=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,a=n.ERR_TRANSFORM_WITH_LENGTH_0,u=r(55);function c(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var i=this._readableState;i.reading=!1,(i.needReadable||i.length>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function h(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function p(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}n(u,i),u.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,u=0|this._e,d=0|this._f,y=0|this._g,v=0|this._h,b=0;b<16;++b)r[b]=t.readInt32BE(4*b);for(;b<64;++b)r[b]=0|(((e=r[b-2])>>>17|e<<15)^(e>>>19|e<<13)^e>>>10)+r[b-7]+p(r[b-15])+r[b-16];for(var g=0;g<64;++g){var m=v+h(u)+c(u,d,y)+s[g]+r[g]|0,w=f(n)+l(n,i,o)|0;v=y,y=d,d=u,u=a+m|0,a=o,o=i,i=n,n=m+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=u+this._e|0,this._f=d+this._f|0,this._g=y+this._g|0,this._h=v+this._h|0},u.prototype._hash=function(){var t=o.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t},t.exports=u},function(t,e,r){var n=r(14),i=r(56),o=r(27).Buffer,s=[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],a=new Array(160);function u(){this.init(),this._w=a,i.call(this,128,112)}function c(t,e,r){return r^t&(e^r)}function l(t,e,r){return t&e|r&(t|e)}function f(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function h(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function p(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function d(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function y(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function v(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function b(t,e){return t>>>0>>0?1:0}n(u,i),u.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},u.prototype._update=function(t){for(var e=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,u=0|this._fh,g=0|this._gh,m=0|this._hh,w=0|this._al,_=0|this._bl,E=0|this._cl,O=0|this._dl,S=0|this._el,x=0|this._fl,T=0|this._gl,A=0|this._hl,P=0;P<32;P+=2)e[P]=t.readInt32BE(4*P),e[P+1]=t.readInt32BE(4*P+4);for(;P<160;P+=2){var R=e[P-30],k=e[P-30+1],I=p(R,k),N=d(k,R),C=y(R=e[P-4],k=e[P-4+1]),j=v(k,R),L=e[P-14],M=e[P-14+1],D=e[P-32],U=e[P-32+1],B=N+M|0,F=I+L+b(B,N)|0;F=(F=F+C+b(B=B+j|0,j)|0)+D+b(B=B+U|0,U)|0,e[P]=F,e[P+1]=B}for(var H=0;H<160;H+=2){F=e[H],B=e[H+1];var V=l(r,n,i),K=l(w,_,E),G=f(r,w),q=f(w,r),z=h(a,S),W=h(S,a),Y=s[H],J=s[H+1],$=c(a,u,g),X=c(S,x,T),Z=A+W|0,Q=m+z+b(Z,A)|0;Q=(Q=(Q=Q+$+b(Z=Z+X|0,X)|0)+Y+b(Z=Z+J|0,J)|0)+F+b(Z=Z+B|0,B)|0;var tt=q+K|0,et=G+V+b(tt,q)|0;m=g,A=T,g=u,T=x,u=a,x=S,a=o+Q+b(S=O+Z|0,O)|0,o=i,O=E,i=n,E=_,n=r,_=w,r=Q+et+b(w=Z+tt|0,Z)|0}this._al=this._al+w|0,this._bl=this._bl+_|0,this._cl=this._cl+E|0,this._dl=this._dl+O|0,this._el=this._el+S|0,this._fl=this._fl+x|0,this._gl=this._gl+T|0,this._hl=this._hl+A|0,this._ah=this._ah+r+b(this._al,w)|0,this._bh=this._bh+n+b(this._bl,_)|0,this._ch=this._ch+i+b(this._cl,E)|0,this._dh=this._dh+o+b(this._dl,O)|0,this._eh=this._eh+a+b(this._el,S)|0,this._fh=this._fh+u+b(this._fl,x)|0,this._gh=this._gh+g+b(this._gl,T)|0,this._hh=this._hh+m+b(this._hl,A)|0},u.prototype._hash=function(){var t=o.allocUnsafe(64);function e(e,r,n){t.writeInt32BE(e,n),t.writeInt32BE(r,n+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t},t.exports=u},function(t,e,r){(function(e){function r(t){return(4294967296+t).toString(16).substring(1)}t.exports={normalizeInput:function(t){var r;if(t instanceof Uint8Array)r=t;else if(t instanceof e)r=new Uint8Array(t);else{if("string"!=typeof t)throw new Error("Input must be an string, Buffer or Uint8Array");r=new Uint8Array(e.from(t,"utf8"))}return r},toHex:function(t){return Array.prototype.map.call(t,(function(t){return(t<16?"0":"")+t.toString(16)})).join("")},debugPrint:function(t,e,n){for(var i="\n"+t+" = ",o=0;o0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},s=this&&this.__spread||function(){for(var t=[],e=0;e0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function c(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s}function l(){for(var t=[],e=0;e1&&"0x"===t.substr(r,2)))return[3,5];for(r+=2;r1&&"/*"===t.substr(r,2)))return[3,15];for(r+=2;r1&&"*/"===t.substr(r,2));)r++;if(r===t.length)throw new h(t,r,"Unterminated C style comment");return r+=2,e?[4,{t:f.Comment,v:t.slice(i,r),first:i,last:r}]:[3,14];case 13:a.sent(),a.label=14;case 14:return[3,18];case 15:return"("!==n&&")"!==n&&"{"!==n&&"}"!==n&&";"!==n?[3,17]:(r++,[4,{t:n,v:n,first:i,last:r}]);case 16:return a.sent(),[3,18];case 17:throw new h(t,r,"Invalid character at offset "+r+": `"+n+"'");case 18:return[3,1];case 19:return[2]}}))}var m,w=Symbol("ref_contract");!function(t){t.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",t.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",t.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",t.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",t.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",t.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",t.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i"}(m||(m={}));var _=m.PsDELPH1,E=function(t){function e(r,n){var i=t.call(this,n)||this;return i.prim=r,Object.setPrototypeOf(i,e.prototype),i}return o(e,t),e}(Error);function O(t,e){var r,n;if(0===e&&void 0===t.args||(null===(r=t.args)||void 0===r?void 0:r.length)===e)return!0;throw new E(t,"macro "+t.prim+" expects "+e+" arguments, was given "+(null===(n=t.args)||void 0===n?void 0:n.length))}function S(t){if(void 0===t.annots)return!0;throw new E(t,"unexpected annotation on macro "+t.prim+": "+t.annots)}function x(t,e){if("int"in e)return!0;throw new E(t,"macro "+t.prim+" expects int argument")}function T(t,e,r,n){var i,o=0,s=0,a=[null,null];if(o===e.length)throw new E(t,"unexpected end: "+t.prim);var u,l=e[o++];switch(l){case"P":var f=T(t,e.slice(o),r.slice(s),n);i=p=f.r,o+=d=f.n,s+=y=f.an;break;case"A":s!==r.length&&(a[0]=r[s++]);break;default:throw new E(t,t.prim+": unexpected character: "+l)}if(o===e.length)throw new E(t,"unexpected end: "+t.prim);switch(l=e[o++]){case"P":var h=T(t,e.slice(o),r.slice(s),n),p=h.r,d=h.n,y=h.an;u=p.map((function(t){var e=c(t,2);return[e[0]+1,e[1]]})),o+=d,s+=y;break;case"I":s!==r.length&&(a[1]=r[s++]);break;default:throw new E(t,t.prim+": unexpected character: "+l)}return{r:n(i,u,[0,a]),n:o,an:s}}function A(t,e,r,n){var i=e[0];switch(i){case"A":return e.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},A(t,e.slice(1),[],n)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:l(["%@","%@"],r)}]:n.a;case"D":return e.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},A(t,e.slice(1),[],n)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:l(["%@","%@"],r)}]:n.d;default:throw new E(t,t.prim+": unexpected character: "+i)}}function P(t){var e,r,n=[],i=[];if(void 0!==t)try{for(var o=u(t),s=o.next();!s.done;s=o.next()){var a=s.value;(0!==a.length&&"%"===a[0]?n:i).push(a)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return{fields:n,rest:i}}function R(t){var e=t.prim,r=t.annots,n=t.args;return s(s({prim:e},r&&{annots:r}),n&&{args:n})}var k=/^P[PAI]{3,}R$/,I=/^UNP[PAI]{2,}R$/,N=/^C[AD]{2,}R$/,C=/^SET_C[AD]+R$/,j=/^MAP_C[AD]+R$/,L=/^DI{2,}P$/,M=/^DU+P$/;var D=function(t){function e(r,n){var i=t.call(this,n)||this;return i.token=r,Object.setPrototypeOf(i,e.prototype),i}return o(e,t),e}(Error),U=function(t){function e(r,n){var i=t.call(this,n)||this;return i.node=r,Object.setPrototypeOf(i,e.prototype),i}return o(e,t),e}(Error),B=new D(null,"Unexpected EOF");function F(t){return t.t===f.Ident&&("@"===t.v[0]||"%"===t.v[0]||":"===t.v[0])}var H=new RegExp("^-?[0-9]+$"),V=new RegExp("^([0-9a-fA-F]{2})*$"),K=function(){function t(t){this.opt=t}return t.prototype.expand=function(t){var e,r;if(void 0===(null===(e=this.opt)||void 0===e?void 0:e.expandMacros)||(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)){var i=function(t,e){var r=(null==e?void 0:e.protocol)||_;function n(t){return void 0!==t?[{prim:"RENAME",annots:t}]:[]}switch(t.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(O(t,0))return[{prim:"COMPARE"},R({prim:t.prim.slice(3),annots:t.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(O(t,2))return[{prim:t.prim.slice(2)},R({prim:"IF",annots:t.annots,args:t.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(O(t,2))return[{prim:"COMPARE"},{prim:t.prim.slice(5)},R({prim:"IF",annots:t.annots,args:t.args})];break;case"FAIL":if(O(t,0)&&S(t))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(O(t,0)&&S(t))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(O(t,0)&&S(t))return[{prim:t.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(O(t,0)&&S(t))return[[{prim:"COMPARE"},{prim:t.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(O(t,0)&&S(t))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(O(t,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(t.annots)]}];break;case"ASSERT_LEFT":if(O(t,0))return[{prim:"IF_LEFT",args:[n(t.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(O(t,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(t.annots)]}];break;case"IF_SOME":if(O(t,2))return[R({prim:"IF_NONE",annots:t.annots,args:[t.args[1],t.args[0]]})];break;case"IF_RIGHT":if(O(t,2))return[R({prim:"IF_LEFT",annots:t.annots,args:[t.args[1],t.args[0]]})];break;case"CAR":case"CDR":if(void 0===t.args)return t;if(O(t,1)&&x(t,t.args[0])){var i=parseInt(t.args[0].int,10);return R({prim:"GET",args:[{int:"CAR"===t.prim?String(2*i+1):String(2*i)}],annots:t.annots})}}if(k.test(t.prim)&&O(t,0)){var o=P(t.annots),s=o.fields,a=o.rest,u=T(t,t.prim.slice(1),s,(function(t,e,r){return l(t||[],e||[],[r])})).r;return u.map((function(t,e){var r=c(t,2),n=r[0],i=l(function(t,e){for(var r=t.length;r>0&&t[r-1]===e;)r--;return t.slice(0,r)}(r[1],null).map((function(t){return null===t?"%":t})),0===n&&e===u.length-1?a:[]),o=R({prim:"PAIR",annots:0!==i.length?i:void 0});return 0===n?o:{prim:"DIP",args:1===n?[[o]]:[{int:String(n)},[o]]}}))}if(I.test(t.prim))if(r===m.PtEdo2Zk||r===m.PsFLorena){if("UNPAIR"===t.prim)return t;if(O(t,0))return T(t,t.prim.slice(3),[],(function(t,e,r){return l([r],e||[],t||[])})).r.map((function(t){var e=c(t,1)[0],r=R({prim:"UNPAIR"});return 0===e?r:{prim:"DIP",args:1===e?[[r]]:[{int:String(e)},[r]]}}))}else if(O(t,0))return T(t,t.prim.slice(3),t.annots||[],(function(t,e,r){return l([r],e||[],t||[])})).r.map((function(t){var e=c(t,2),r=e[0],n=e[1],i=[{prim:"DUP"},R({prim:"CAR",annots:null!==n[0]?[n[0]]:void 0}),{prim:"DIP",args:[[R({prim:"CDR",annots:null!==n[1]?[n[1]]:void 0})]]}];return 0===r?i:{prim:"DIP",args:1===r?[[i]]:[{int:String(r)},[i]]}}));if(N.test(t.prim)&&O(t,0)){var f=l(t.prim.slice(1,t.prim.length-1));return f.map((function(e,r){var n=r===f.length-1?t.annots:void 0;switch(e){case"A":return R({prim:"CAR",annots:n});case"D":return R({prim:"CDR",annots:n});default:throw new E(t,"unexpected character: "+e)}}))}if(C.test(t.prim)&&O(t,0)){var h=P(t.annots),p=(s=h.fields,h.rest);if(s.length>1)throw new E(t,"unexpected annotation on macro "+t.prim+": "+s);var d=0!==s.length?{a:[{prim:"DUP"},{prim:"CAR",annots:s},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[s[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:s},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",s[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return A(t,t.prim.slice(5,t.prim.length-1),p,d)}if(j.test(t.prim)&&O(t,1)){if((s=P(t.annots).fields).length>1)throw new E(t,"unexpected annotation on macro "+t.prim+": "+s);return d={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[R({prim:"CAR",annots:0!==s.length?["@"+s[0].slice(1)]:void 0}),t.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==s.length?s[0]:"%","%@"]}],d:[{prim:"DUP"},R({prim:"CDR",annots:0!==s.length?["@"+s[0].slice(1)]:void 0}),t.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==s.length?s[0]:"%"]}]},A(t,t.prim.slice(5,t.prim.length-1),[],d)}if(L.test(t.prim)&&O(t,1)){for(i=0;"I"===t.prim[1+i];)i++;return R({prim:"DIP",args:[{int:String(i)},t.args[0]]})}if(M.test(t.prim)){for(i=0;"U"===t.prim[1+i];)i++;if(r!==m.PtEdo2Zk&&r!==m.PsFLorena){if(1===i){if(void 0===t.args)return t;O(t,1)&&x(t,t.args[0])&&(i=parseInt(t.args[0].int,10))}else O(t,0);return 1===i?[R({prim:"DUP",annots:t.annots})]:2===i?[{prim:"DIP",args:[[R({prim:"DUP",annots:t.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(i-1)},[R({prim:"DUP",annots:t.annots})]]},{prim:"DIG",args:[{int:String(i)}]}]}if(1===i)return t;if(O(t,0))return R({prim:"DUP",args:[{int:String(i)}],annots:t.annots})}return t}(t,this.opt);return i!==t&&(i[n]=s(s({},t[n]||{first:0,last:0}),{macro:t})),i}return t},t.prototype.parseListExpr=function(t,e){var r,i,o,s={first:e.first,last:e.last},a="("===e.t;if(a){if((o=t.next()).done)throw B;s.last=o.value.last}else o={value:e};if(o.value.t!==f.Ident)throw new D(o.value,"not an identifier: "+o.value.v);for(var u=((r={prim:o.value.v})[n]=s,r);;){var c=t.next();if(c.done){if(a)throw B;break}if(")"===c.value.t){if(!a)throw new D(c.value,"unexpected closing bracket");s.last=c.value.last;break}if(F(c.value))u.annots=u.annots||[],u.annots.push(c.value.v),s.last=c.value.last;else{u.args=u.args||[];var l=this.parseExpr(t,c.value);s.last=(null===(i=l[n])||void 0===i?void 0:i.last)||s.last,u.args.push(l)}}return this.expand(u)},t.prototype.parseArgs=function(t,e){for(var r,i,o={first:e.first,last:e.last},s=((r={prim:e.v})[n]=o,r);;){var a=t.next();if(a.done||"}"===a.value.t||";"===a.value.t)return[s,a];if(F(a.value))o.last=a.value.last,s.annots=s.annots||[],s.annots.push(a.value.v);else{var u=this.parseExpr(t,a.value);o.last=(null===(i=u[n])||void 0===i?void 0:i.last)||o.last,s.args=s.args||[],s.args.push(u)}}},t.prototype.parseSequenceExpr=function(t,e){var r,i,o={first:e.first,last:e.last},s=[];s[n]=o;for(var a="{"===e.t,u="{"===e.t?null:{value:e};;){if(null===u&&((u=t.next()).done||(o.last=u.value.last)),u.done){if(a)throw B;return s}if("}"===u.value.t){if(a)return s;throw new D(u.value,"unexpected closing bracket")}if(u.value.t===f.Ident){var l=c(this.parseArgs(t,u.value),2),h=l[0],p=l[1];o.last=(null===(r=h[n])||void 0===r?void 0:r.last)||o.last,s.push(this.expand(h)),u=p}else{var d=this.parseExpr(t,u.value);o.last=(null===(i=d[n])||void 0===i?void 0:i.last)||o.last,s.push(d),u=null}null===u&&((u=t.next()).done||(o.last=u.value.last)),u.done||";"!==u.value.t||(u=null)}},t.prototype.parseExpr=function(t,e){var r,i,o,s;switch(e.t){case f.Ident:return this.expand(((r={prim:e.v})[n]={first:e.first,last:e.last},r));case f.Number:return(i={int:e.v})[n]={first:e.first,last:e.last},i;case f.String:return(o={string:JSON.parse(e.v)})[n]={first:e.first,last:e.last},o;case f.Bytes:return(s={bytes:e.v.slice(2)})[n]={first:e.first,last:e.last},s;case"{":return this.parseSequenceExpr(t,e);default:return this.parseListExpr(t,e)}},t.prototype.parseSequence=function(t){if("string"!=typeof t)throw new TypeError("string type was expected, got "+typeof t+" instead");var e=g(t),r=e.next();return r.done?null:this.parseSequenceExpr(e,r.value)},t.prototype.parseList=function(t){if("string"!=typeof t)throw new TypeError("string type was expected, got "+typeof t+" instead");var e=g(t),r=e.next();return r.done?null:this.parseListExpr(e,r.value)},t.prototype.parseMichelineExpression=function(t){if("string"!=typeof t)throw new TypeError("string type was expected, got "+typeof t+" instead");var e=g(t),r=e.next();return r.done?null:this.parseExpr(e,r.value)},t.prototype.parseScript=function(t){return this.parseSequence(t)},t.prototype.parseData=function(t){return this.parseList(t)},t.prototype.parseJSON=function(t){var e,r,n,i,o,s;if("object"!=typeof t)throw new TypeError("object type was expected, got "+typeof t+" instead");if(Array.isArray(t)){var a=[];try{for(var c=u(t),l=c.next();!l.done;l=c.next()){var f=l.value;if(null===f||"object"!=typeof f)throw new U(f,"unexpected sequence element: "+f);a.push(this.parseJSON(f))}}catch(t){e={error:t}}finally{try{l&&!l.done&&(r=c.return)&&r.call(c)}finally{if(e)throw e.error}}return a}if("prim"in t){var h=t;if("string"==typeof h.prim&&(void 0===h.annots||Array.isArray(h.annots))&&(void 0===h.args||Array.isArray(h.args))){a={prim:h.prim};if(void 0!==h.annots){try{for(var p=u(h.annots),d=p.next();!d.done;d=p.next()){if("string"!=typeof(b=d.value))throw new U(b,"string expected: "+b)}}catch(t){n={error:t}}finally{try{d&&!d.done&&(i=p.return)&&i.call(p)}finally{if(n)throw n.error}}a.annots=h.annots}if(void 0!==h.args){a.args=[];try{for(var y=u(h.args),v=y.next();!v.done;v=y.next()){var b;if(null===(b=v.value)||"object"!=typeof b)throw new U(b,"unexpected argument: "+b);a.args.push(this.parseJSON(b))}}catch(t){o={error:t}}finally{try{v&&!v.done&&(s=y.return)&&s.call(y)}finally{if(o)throw o.error}}}return this.expand(a)}throw new U(t,"malformed prim expression: "+t)}if("string"in t){if("string"==typeof t.string)return{string:t.string};throw new U(t,"malformed string literal: "+t)}if("int"in t){if("string"==typeof t.int&&H.test(t.int))return{int:t.int};throw new U(t,"malformed int literal: "+t)}if("bytes"in t){if("string"==typeof t.bytes&&V.test(t.bytes))return{bytes:t.bytes};throw new U(t,"malformed bytes literal: "+t)}throw new U(t,"unexpected object: "+t)},t}(),G=function(){function t(t,e){void 0===e&&(e=0),this.opt=t,this.lev=e}return t.prototype.indent=function(t){var e;void 0===t&&(t=0);var r="";if(void 0!==(null===(e=this.opt)||void 0===e?void 0:e.indent))for(var n=this.lev+t;n>0;n--)r+=this.opt.indent;return r},Object.defineProperty(t.prototype,"lf",{get:function(){var t;return(null===(t=this.opt)||void 0===t?void 0:t.newline)||""},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"lfsp",{get:function(){var t;return(null===(t=this.opt)||void 0===t?void 0:t.newline)||" "},enumerable:!1,configurable:!0}),t.prototype.down=function(e){return new t(this.opt,this.lev+e)},t}();function q(t){return"prim"in t&&(void 0!==t.annots&&0!==t.annots.length||void 0!==t.args&&0!==t.args.length)}function z(t){var e,r;if(void 0!==t.args)try{for(var n=u(t.args),i=n.next();!i.done;i=n.next()){var o=i.value;if(Array.isArray(o)||q(o))return!0}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!1}function W(t,e,r){var i,o,s,a,c,l=null===(c=t[n])||void 0===c?void 0:c.macro;if(r&&l)return W(l,e,r);if(Array.isArray(t))return function(t,e,r){var n,i,o,s,a,c,l="{"+e.lf,f=t.length;try{for(var h=u(t),p=h.next();!p.done;p=h.next()){var d=p.value;if(l+=e.indent(1),"prim"in d){if(l+=d.prim,void 0!==d.annots)try{for(var y=(o=void 0,u(d.annots)),v=y.next();!v.done;v=y.next()){l+=" "+(w=v.value)}}catch(t){o={error:t}}finally{try{v&&!v.done&&(s=y.return)&&s.call(y)}finally{if(o)throw o.error}}if(void 0!==d.args){var b=z(d);try{for(var g=(a=void 0,u(d.args)),m=g.next();!m.done;m=g.next()){var w=m.value;l+=b?e.lfsp+e.indent(2)+W(w,e.down(2),r):" "+W(w,e,r)}}catch(t){a={error:t}}finally{try{m&&!m.done&&(c=g.return)&&c.call(g)}finally{if(a)throw a.error}}}}else l+=W(d,e.down(1),r);l+=f>1?";"+e.lfsp:e.lf,f--}}catch(t){n={error:t}}finally{try{p&&!p.done&&(i=h.return)&&i.call(h)}finally{if(n)throw n.error}}return l+e.indent()+"}"}(t,e,r);if("string"in t)return JSON.stringify(t.string);if("int"in t)return t.int;if("bytes"in t)return"0x"+t.bytes;if(!(void 0!==t.annots&&0!==t.annots.length||void 0!==t.args&&0!==t.args.length))return t.prim;var f="("+t.prim;if(void 0!==t.annots)try{for(var h=u(t.annots),p=h.next();!p.done;p=h.next()){f+=" "+(b=p.value)}}catch(t){i={error:t}}finally{try{p&&!p.done&&(o=h.return)&&o.call(h)}finally{if(i)throw i.error}}if(void 0!==t.args){var d=z(t);try{for(var y=u(t.args),v=y.next();!v.done;v=y.next()){var b=v.value;f+=d?e.lfsp+e.indent(1)+W(b,e.down(1),r):" "+W(b,e,r)}}catch(t){s={error:t}}finally{try{v&&!v.done&&(a=y.return)&&a.call(y)}finally{if(s)throw s.error}}}return f+")"}function Y(t,e,r){if(void 0===r&&(r=!1),"object"!=typeof t)throw new TypeError("object type was expected, got "+typeof t+" instead");return W(t,new G(e),r)}var J=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],$=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];function X(t){var e,r,n=(t.length+9)%64,i=0===n?0:64-n;if(t.length>268435455)throw new Error("sha256: message length is too big: "+t.length);var o=t.length<<3,s=l(t,[128],new Array(i).fill(0),[0,0,0,0,o>>24&255,o>>16&255,o>>8&255,255&o]);function a(t,e){return t>>>e|t<<32-e}for(var c=l(J),f=new Array(64),h=new Array(8),p=0;p>>3,b=a(f[y-2],17)^a(f[y-2],19)^f[y-2]>>>10;f[y]=(0|b)+f[y-7]+v+f[y-16]|0,y++}for(var g=0;g<8;g++)h[g]=c[g];for(var m=0;m<64;m++){var w=a(h[0],2)^a(h[0],13)^a(h[0],22),_=a(h[4],6)^a(h[4],11)^a(h[4],25),E=h[7]+_+(h[4]&h[5]^~h[4]&h[6])+$[m]+f[m]|0,O=w+(h[0]&h[1]^h[0]&h[2]^h[1]&h[2])|0;h[7]=h[6],h[6]=h[5],h[5]=h[4],h[4]=h[3]+E|0,h[3]=h[2],h[2]=h[1],h[1]=h[0],h[0]=E+O|0}for(var S=0;S<8;S++)c[S]=c[S]+h[S]|0}var x=[];try{for(var T=u(c),A=T.next();!A.done;A=T.next()){var P=A.value;x.push(P>>24&255),x.push(P>>16&255),x.push(P>>8&255),x.push(255&P)}}catch(t){e={error:t}}finally{try{A&&!A.done&&(r=T.return)&&r.call(T)}finally{if(e)throw e.error}}return x}var Z=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57],Q=[0,1,2,3,4,5,6,7,8,16,17,18,19,20,21,22,23,25,26,27,28,29,31,32,33,34,35,36,37,38,39,40,41,48,49,50,51,52,53,54,55,56,57,58,60,61,62,63,64,65,66,67,68,69,70,71,72,73];function tt(t,e){var r=t.charCodeAt(e)-49;if(r>=Z.length||-1===Z[r])throw new Error("Base58 decoding error: unexpected character at position "+e+": "+t[e]);return Z[r]}function et(t){var e=function(t){for(var e=[],r=0;r0;)e.push(0);return e.reverse()}(t);if(e.length<4)throw new Error("Base58Check decoding error: data is too short "+e.length);var r=e.slice(0,e.length-4),n=e.slice(e.length-4),i=X(X(r));if(n[0]!==i[0]||n[1]!==i[1]||n[2]!==i[2]||n[3]!==i[3])throw new Error("Base58Check decoding error: invalid checksum");return r}function rt(t){return function(t){for(var e=[],r=0;r0;)e.push(0);return e.reverse(),String.fromCharCode.apply(String,l(e.map((function(t){return Q[t]+49}))))}(l(t,X(X(t)).slice(0,4)))}var nt=function(t){function e(r,n){var i=t.call(this,n)||this;return i.val=r,Object.setPrototypeOf(i,e.prototype),i}return o(e,t),e}(Error);function it(t){return t instanceof nt}var ot=function(t){function e(r,n,i){var o=t.call(this,r,i)||this;return void 0!==n&&(o.data=n),Object.setPrototypeOf(o,e.prototype),o}return o(e,t),e}(nt),st=function(){function t(t){if(this.neg=!1,this.buf=[],void 0!==t)if("string"==typeof t)for(var e=0;e57)throw new Error("unexpected character in integer constant: "+t[e]);this.append(r-48)}}else t<0?(this.neg=!0,this.append(-t)):this.append(t)}return t.prototype.append=function(t){for(var e=0;0!==t||e=0&&this.buf[r]===t.buf[r];)r--;e=r<0?0:this.buf[r]=0}catch(t){return!1}}var ft=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z\.%@]*)?)$/;function ht(t,e){var r,n,i,o,s;if(Array.isArray(t))return{};if(void 0!==t.annots)try{for(var a=u(t.annots),c=a.next();!c.done;c=a.next()){var l=c.value;if(0!==l.length){if(!ft.test(l)||!(null==e?void 0:e.specialVar)&&("@%"===l||"@%%"===l)||!(null==e?void 0:e.specialFields)&&"%@"===l)throw new nt(t,t.prim+": unexpected annotation: "+l);switch(l[0]){case"%":((null==e?void 0:e.emptyFields)||l.length>1)&&(i=i||[]).push(l);break;case":":l.length>1&&(o=o||[]).push(l);break;case"@":((null==e?void 0:e.emptyVar)||l.length>1)&&(s=s||[]).push(l)}}}}catch(t){r={error:t}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}return{f:i,t:o,v:s}}var pt={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]]};function dt(t){for(var e,r,n=[],i=1;i>4&15).toString(16)+(15&t).toString(16)})).join("")}var Et={ABS:!0,ADD:!0,ADDRESS:!0,AMOUNT:!0,AND:!0,APPLY:!0,BALANCE:!0,BLAKE2B:!0,CAR:!0,CDR:!0,CHAIN_ID:!0,CHECK_SIGNATURE:!0,COMPARE:!0,CONCAT:!0,CONS:!0,EDIV:!0,EQ:!0,EXEC:!0,FAILWITH:!0,GE:!0,GET_AND_UPDATE:!0,GT:!0,HASH_KEY:!0,IMPLICIT_ACCOUNT:!0,INT:!0,ISNAT:!0,JOIN_TICKETS:!0,KECCAK:!0,LE:!0,LEVEL:!0,LSL:!0,LSR:!0,LT:!0,MEM:!0,MUL:!0,NEG:!0,NEQ:!0,NEVER:!0,NOT:!0,NOW:!0,OR:!0,PACK:!0,PAIRING_CHECK:!0,READ_TICKET:!0,SAPLING_VERIFY_UPDATE:!0,SELF:!0,SELF_ADDRESS:!0,SENDER:!0,SET_DELEGATE:!0,SHA256:!0,SHA3:!0,SHA512:!0,SIZE:!0,SLICE:!0,SOME:!0,SOURCE:!0,SPLIT_TICKET:!0,SUB:!0,SWAP:!0,TICKET:!0,TOTAL_VOTING_POWER:!0,TRANSFER_TOKENS:!0,UNIT:!0,VOTING_POWER:!0,XOR:!0,RENAME:!0},Ot=Object.assign({},Et,{CONTRACT:!0,CREATE_CONTRACT:!0,DIG:!0,DIP:!0,DROP:!0,DUG:!0,DUP:!0,EMPTY_BIG_MAP:!0,EMPTY_MAP:!0,EMPTY_SET:!0,GET:!0,IF:!0,IF_CONS:!0,IF_LEFT:!0,IF_NONE:!0,ITER:!0,LAMBDA:!0,LEFT:!0,LOOP:!0,LOOP_LEFT:!0,MAP:!0,NIL:!0,NONE:!0,PAIR:!0,PUSH:!0,RIGHT:!0,SAPLING_EMPTY_STATE:!0,UNPACK:!0,UNPAIR:!0,UPDATE:!0,CAST:!0}),St={unit:!0,never:!0,bool:!0,int:!0,nat:!0,string:!0,chain_id:!0,bytes:!0,mutez:!0,key_hash:!0,key:!0,signature:!0,timestamp:!0,address:!0},xt=Object.assign({},St,{or:!0,pair:!0,set:!0,big_map:!0,contract:!0,lambda:!0,list:!0,map:!0,operation:!0,option:!0,bls12_381_g1:!0,bls12_381_g2:!0,bls12_381_fr:!0,sapling_transaction:!0,sapling_state:!0,ticket:!0}),Tt=function(t){function e(r,n){var i=t.call(this,r,n)||this;return i.val=r,Object.setPrototypeOf(i,e.prototype),i}return o(e,t),e}(nt);function At(t){return"prim"in t}function Pt(t){if(At(t))return!0;throw new Tt(t,"prim expression expected")}function Rt(t){if(Array.isArray(t))return!0;throw new Tt(t,"sequence expression expected")}function kt(t){if(function(t){return Array.isArray(t)||"prim"in t}(t))return!0;throw new Tt(t,"prim or sequence expression expected")}function It(t){if("-"===t.int[0])throw new Tt(t,"natural number expected")}function Nt(t){if("int"in t)return!0;throw new Tt(t,"int literal expected")}function Ct(t,e){var r;if(0===e&&void 0===t.args||(null===(r=t.args)||void 0===r?void 0:r.length)===e)return!0;throw new Tt(t,e+" arguments expected")}function jt(t){var e,r,n,i;if(Array.isArray(t)){try{for(var o=u(t),s=o.next();!s.done;s=o.next()){var a=s.value;if(!Array.isArray(a)&&!At(a))throw new Tt(t,"sequence or prim expected");jt(a)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return!0}if(Pt(t)){if(Object.prototype.hasOwnProperty.call(Et,t.prim))return Ct(t,0),!0;switch(t.prim){case"DROP":case"PAIR":case"UNPAIR":case"DUP":case"UPDATE":case"GET":void 0!==t.args&&Ct(t,1)&&Nt(t.args[0])&&It(t.args[0]);break;case"DIG":case"DUG":case"SAPLING_EMPTY_STATE":Ct(t,1)&&Nt(t.args[0])&&It(t.args[0]);break;case"NONE":case"LEFT":case"RIGHT":case"NIL":case"CAST":Ct(t,1)&&Ht(t.args[0]);break;case"UNPACK":Ct(t,1)&&Mt(t.args[0]);break;case"CONTRACT":Ct(t,1)&&Bt(t.args[0]);break;case"IF_NONE":case"IF_LEFT":case"IF_CONS":case"IF":Ct(t,2)&&(Rt(t.args[0])&&jt(t.args[0]),Rt(t.args[1])&&jt(t.args[1]));break;case"MAP":case"ITER":case"LOOP":case"LOOP_LEFT":Ct(t,1)&&jt(t.args[0]);break;case"CREATE_CONTRACT":Ct(t,1)&&Gt(t.args[0]);break;case"DIP":if(2===(null===(n=t.args)||void 0===n?void 0:n.length))Nt(t.args[0])&&It(t.args[0]),Rt(t.args[1])&&jt(t.args[1]);else{if(1!==(null===(i=t.args)||void 0===i?void 0:i.length))throw new Tt(t,"1 or 2 arguments expected");Rt(t.args[0])&&jt(t.args[0])}break;case"PUSH":Ct(t,2)&&(Dt(t.args[0]),Kt(t.args[1]));break;case"EMPTY_SET":Ct(t,1)&&Lt(t.args[0]);break;case"EMPTY_MAP":Ct(t,2)&&(Lt(t.args[0]),Ht(t.args[1]));break;case"EMPTY_BIG_MAP":Ct(t,2)&&(Lt(t.args[0]),Ft(t.args[1]));break;case"LAMBDA":Ct(t,3)&&(Ht(t.args[0]),Ht(t.args[1]),Rt(t.args[2])&&jt(t.args[2]));break;default:throw new Tt(t,"instruction expected")}}return!0}function Lt(t){if(kt(t))if(Array.isArray(t)||"pair"===t.prim||"or"===t.prim||"option"===t.prim)Vt(t,(function(t){return Lt(t)}));else if(!Object.prototype.hasOwnProperty.call(St,t.prim))throw new Tt(t,t.prim+": type is not comparable");return!0}function Mt(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim)||"big_map"===t.prim||"operation"===t.prim||"sapling_state"===t.prim||"ticket"===t.prim)throw new Tt(t,t.prim+": type can't be used inside PACK/UNPACK instructions");Vt(t,(function(t){return Mt(t)}))}return!0}function Dt(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim)||"big_map"===t.prim||"operation"===t.prim||"sapling_state"===t.prim||"ticket"===t.prim||"contract"===t.prim)throw new Tt(t,t.prim+": type can't be pushed");Vt(t,(function(t){return Dt(t)}))}return!0}function Ut(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim)||"operation"===t.prim||"contract"===t.prim)throw new Tt(t,t.prim+": type can't be used as part of a storage");Vt(t,(function(t){return Ut(t)}))}return!0}function Bt(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim)||"operation"===t.prim)throw new Tt(t,t.prim+": type can't be used as part of a parameter");Vt(t,(function(t){return Bt(t)}))}return!0}function Ft(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim)||"big_map"===t.prim||"operation"===t.prim||"sapling_state"===t.prim)throw new Tt(t,t.prim+": type can't be used inside a big_map");Vt(t,(function(t){return Ft(t)}))}return!0}function Ht(t){if(kt(t)&&At(t)){if(!Object.prototype.hasOwnProperty.call(xt,t.prim))throw new Tt(t,"type expected");Vt(t,(function(t){return Ht(t)}))}return!0}function Vt(t,e){if(Array.isArray(t)||"pair"===t.prim){var r=Array.isArray(t)?t:t.args;if(void 0===r||r.length<2)throw new Tt(t,"at least 2 arguments expected");return r.forEach((function(t){kt(t)&&e(t)})),!0}switch(t.prim){case"option":case"list":Ct(t,1)&&kt(t.args[0])&&e(t.args[0]);break;case"contract":Ct(t,1)&&Bt(t.args[0]);break;case"or":Ct(t,2)&&kt(t.args[0])&&kt(t.args[1])&&(e(t.args[0]),e(t.args[1]));break;case"lambda":Ct(t,2)&&(Ht(t.args[0]),Ht(t.args[1]));break;case"set":Ct(t,1)&&Lt(t.args[0]);break;case"map":Ct(t,2)&&kt(t.args[0])&&kt(t.args[1])&&(Lt(t.args[0]),e(t.args[1]));break;case"big_map":Ct(t,2)&&kt(t.args[0])&&kt(t.args[1])&&(Lt(t.args[0]),Ft(t.args[1]),e(t.args[1]));break;case"ticket":Ct(t,1)&&kt(t.args[0])&&Lt(t.args[0]);break;case"sapling_state":case"sapling_transaction":Ct(t,1)&&Nt(t.args[0]);break;default:Ct(t,0)}return!0}function Kt(t){var e,r,n,i;if("int"in t||"string"in t||"bytes"in t)return!0;if(Array.isArray(t)){var o=0;try{for(var s=u(t),a=s.next();!a.done;a=s.next()){var c=a.value;At(c)&&"Elt"===c.prim?(Ct(c,2)&&(Kt(c.args[0]),Kt(c.args[1])),o++):Kt(c)}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=s.return)&&r.call(s)}finally{if(e)throw e.error}}if(0!==o&&o!==t.length)throw new Tt(t,"data entries and map elements can't be intermixed");return!0}if(!At(t))throw new Tt(t,"data entry expected");switch(t.prim){case"Unit":case"True":case"False":case"None":Ct(t,0);break;case"Pair":if(void 0===t.args||t.args.length<2)throw new Tt(t,"at least 2 arguments expected");try{for(var l=u(t.args),f=l.next();!f.done;f=l.next()){Kt(f.value)}}catch(t){n={error:t}}finally{try{f&&!f.done&&(i=l.return)&&i.call(l)}finally{if(n)throw n.error}}break;case"Left":case"Right":case"Some":Ct(t,1)&&Kt(t.args[0]);break;default:if(!Object.prototype.hasOwnProperty.call(Ot,t.prim))throw new Tt(t,"data entry or instruction expected");jt(t)}return!0}function Gt(t){var e,r;if(Rt(t)){var n={};try{for(var i=u(t),o=i.next();!o.done;o=i.next()){var s=o.value;if(Pt(s)){if("code"!==s.prim&&"parameter"!==s.prim&&"storage"!==s.prim)throw new Tt(t,"unexpected contract section: "+s.prim);if(s.prim in n)throw new Tt(t,"duplicate contract section: "+s.prim);if(n[s.prim]=!0,Ct(s,1))switch(s.prim){case"code":Rt(s.args[0])&&jt(s.args[0]);break;case"parameter":Bt(s.args[0]);break;case"storage":Ut(s.args[0])}}}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}}return!0}function qt(t){try{return Gt(t),!0}catch(t){return!1}}function zt(t){try{return Kt(t),!0}catch(t){return!1}}function Wt(t){try{return jt(t),!0}catch(t){return!1}}function Yt(t){try{return Ht(t),!0}catch(t){return!1}}function Jt(t){return Object.prototype.hasOwnProperty.call(Ot,t.prim)}function $t(t){var e,r;if(!Array.isArray(t))return!1;try{for(var n=u(t),i=n.next();!i.done;i=n.next()){var o=i.value;if("prim"in o){if(Jt(o))throw new nt(t,"Instruction outside of a lambda: "+JSON.stringify(t));if("Elt"===o.prim)throw new nt(t,"Elt item outside of a map literal: "+JSON.stringify(t))}}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!0}var Xt,Zt=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE"],Qt=Object.assign.apply(Object,l([{}],Zt.map((function(t,e){var r;return(r={})[t]=e,r}))));!function(t){t[t.Int=0]="Int",t[t.String=1]="String",t[t.Sequence=2]="Sequence",t[t.Prim0=3]="Prim0",t[t.Prim0Annot=4]="Prim0Annot",t[t.Prim1=5]="Prim1",t[t.Prim1Annot=6]="Prim1Annot",t[t.Prim2=7]="Prim2",t[t.Prim2Annot=8]="Prim2Annot",t[t.Prim=9]="Prim",t[t.Bytes=10]="Bytes"}(Xt||(Xt={}));var te,ee,re,ne=function(){function t(){this.buffer=[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.buffer.length},enumerable:!1,configurable:!0}),t.prototype.writeBytes=function(t){var e;(e=this.buffer).push.apply(e,l(t.map((function(t){return 255&t}))))},t.prototype.writeUint8=function(t){var e=0|t;this.buffer.push(255&e)},t.prototype.writeUint16=function(t){var e=0|t;this.buffer.push(e>>8&255),this.buffer.push(255&e)},t.prototype.writeUint32=function(t){var e=0|t;this.buffer.push(e>>24&255),this.buffer.push(e>>16&255),this.buffer.push(e>>8&255),this.buffer.push(255&e)},t.prototype.writeInt8=function(t){this.writeUint8(t)},t.prototype.writeInt16=function(t){this.writeUint16(t)},t.prototype.writeInt32=function(t){this.writeUint32(t)},t}(),ie=new Error("bounds out of range"),oe=function(){function t(t,e,r){void 0===e&&(e=0),void 0===r&&(r=t.length),this.buffer=t,this.idx=e,this.cap=r}return Object.defineProperty(t.prototype,"length",{get:function(){return this.cap-this.idx},enumerable:!1,configurable:!0}),t.prototype.readBytes=function(t){if(this.cap-this.idx>>0},t.prototype.readUint16=function(){if(this.cap-this.idx<2)throw ie;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0},t.prototype.readUint32=function(){if(this.cap-this.idx<4)throw ie;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0},t.prototype.readInt8=function(){if(this.cap-this.idx<1)throw ie;return this.buffer[this.idx++]<<24>>24},t.prototype.readInt16=function(){if(this.cap-this.idx<2)throw ie;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16},t.prototype.readInt32=function(){if(this.cap-this.idx<4)throw ie;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]},t}();function se(t){var e,r=t.readUint8();switch(r){case ee.ED25519:e="ED25519PublicKeyHash";break;case ee.SECP256K1:e="SECP256K1PublicKeyHash";break;case ee.P256:e="P256PublicKeyHash";break;default:throw new Error("unknown public key hash tag: "+r)}return{type:e,hash:t.readBytes(20)}}function ae(t){var e,r=t.readUint8();switch(r){case te.Implicit:e=se(t);break;case te.Originated:e={type:"ContractHash",hash:t.readBytes(20)},t.readBytes(1);break;default:throw new Error("unknown address tag: "+r)}if(0!==t.length){var n=new TextDecoder;e.entryPoint=n.decode(new Uint8Array(t.readBytes(t.length)))}return e}function ue(t,e){var r;switch(t.type){case"ED25519PublicKeyHash":r=ee.ED25519;break;case"SECP256K1PublicKeyHash":r=ee.SECP256K1;break;case"P256PublicKeyHash":r=ee.P256;break;default:throw new Error("unexpected address type: "+t.type)}e.writeUint8(r),e.writeBytes(Array.from(t.hash))}function ce(t){var e,r,n=t.readUint8();switch(n){case re.ED25519:r="ED25519PublicKey",e=32;break;case re.SECP256K1:r="SECP256K1PublicKey",e=33;break;case re.P256:r="P256PublicKey",e=33;break;default:throw new Error("unknown public key tag: "+n)}return{type:r,publicKey:t.readBytes(e)}}function le(t,e,r){var n,i,o,s,a,l,f,h,p=c(r(t),2),d=p[0],y=p[1];if(Array.isArray(d)){var v=new ne;try{for(var b=u(d),g=b.next();!g.done;g=b.next()){var m=g.value;if((N=y.next()).done)throw new Error("REPORT ME: iterator is done");le(m,v,N.value)}}catch(t){n={error:t}}finally{try{g&&!g.done&&(i=b.return)&&i.call(b)}finally{if(n)throw n.error}}return e.writeUint8(Xt.Sequence),e.writeUint32(v.length),void e.writeBytes(v.buffer)}if("string"in d){var w=(new TextEncoder).encode(d.string);return e.writeUint8(Xt.String),e.writeUint32(w.length),void e.writeBytes(Array.from(w))}if("int"in d){e.writeUint8(Xt.Int);var _=BigInt(d.int),E=_<0;E&&(_=-_);var O=0;do{var S=0===O?BigInt(6):BigInt(7),x=_&(BigInt(1)<>=S)&&(x|=BigInt(128)),0===O&&E&&(x|=BigInt(64)),e.writeUint8(Number(x)),O++}while(_)}else{if("bytes"in d){w=function(t){for(var e=[],r=0;r=3&&e.writeUint32(0)}}function fe(t,e){function r(){return a(this,(function(t){switch(t.label){case 0:return[4,we];case 1:return t.sent(),[3,0];case 2:return[2]}}))}var n=c(e,2),i=n[0],o=n[1],s=t.readUint8();switch(s){case Xt.Int:var u=[],l=void 0;do{l=t.readInt8(),u.push(l)}while(0!=(128&l));for(var f=BigInt(0),h=!1,p=u.length-1;p>=0;p--){var d=0===p?BigInt(6):BigInt(7),y=BigInt(u[p]);f<<=d,f|=y&(BigInt(1)<0;){if((k=E.next()).done)throw new Error("REPORT ME: iterator is done");w.push(fe(S,k.value))}E=i(w),_=t}return o(w);default:if(s>9)throw new Error("Unknown tag: "+s);var x=t.readUint8();if(x>=Zt.length)throw new Error("Unknown primitive tag: "+x);var T=Zt[x],A=s-3>>1,P=(w={prim:T},r());for(_=t.copy(),O=0;O<2;O++){if(w={prim:T},A<3)for(p=0;p0;){var k;if((k=P.next()).done)throw new Error("REPORT ME: iterator is done");w.args.push(fe(S,k.value))}}P=i(w),_=t}if(1==(s-3&1)||3===A){var I=t.readUint32();if(0!==I){b=t.readBytes(I);var N=new TextDecoder;w.annots=N.decode(new Uint8Array(b)).split(" ")}}return o(w)}}!function(t){t[t.Implicit=0]="Implicit",t[t.Originated=1]="Originated"}(te||(te={})),function(t){t[t.ED25519=0]="ED25519",t[t.SECP256K1=1]="SECP256K1",t[t.P256=2]="P256"}(ee||(ee={})),function(t){t[t.ED25519=0]="ED25519",t[t.SECP256K1=1]="SECP256K1",t[t.P256=2]="P256"}(re||(re={}));var he=function(t){return"prim"in t&&("Left"===t.prim||"Right"===t.prim)},pe=function(t){return"prim"in t&&("Some"===t.prim||"None"===t.prim)},de=function(t){if(bt(t))return function(e){if(!gt(e))throw new ot(t,e,"pair expected: "+JSON.stringify(e));$t(e);var r=vt("pair",t);return[vt("Pair",e),function(){var t,e,n,i,o,s;return a(this,(function(a){switch(a.label){case 0:a.trys.push([0,5,6,7]),t=u(r.args),e=t.next(),a.label=1;case 1:return e.done?[3,4]:(n=e.value,[4,de(n)]);case 2:a.sent(),a.label=3;case 3:return e=t.next(),[3,1];case 4:return[3,7];case 5:return i=a.sent(),o={error:i},[3,7];case 6:try{e&&!e.done&&(s=t.return)&&s.call(t)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()]};switch(t.prim){case"or":return function(e){if(!he(e))throw new ot(t,e,"or expected: "+JSON.stringify(e));return[e,function(){return a(this,(function(r){switch(r.label){case 0:return[4,de(t.args["Left"===e.prim?0:1])];case 1:return r.sent(),[2]}}))}()]};case"option":return function(e){if(!pe(e))throw new ot(t,e,"option expected: "+JSON.stringify(e));return[e,function(){return a(this,(function(r){switch(r.label){case 0:return"Some"!==e.prim?[3,2]:[4,de(t.args[0])];case 1:r.sent(),r.label=2;case 2:return[2]}}))}()]};case"list":case"set":return function(e){if(!Array.isArray(e))throw new ot(t,e,t.prim+" expected: "+JSON.stringify(e));return[e,function(){var r,n,i,o,s;return a(this,(function(a){switch(a.label){case 0:a.trys.push([0,5,6,7]),r=u(e),n=r.next(),a.label=1;case 1:return n.done?[3,4]:(n.value,[4,de(t.args[0])]);case 2:a.sent(),a.label=3;case 3:return n=r.next(),[3,1];case 4:return[3,7];case 5:return i=a.sent(),o={error:i},[3,7];case 6:try{n&&!n.done&&(s=r.return)&&s.call(r)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()]};case"map":return function(e){if(!Array.isArray(e))throw new ot(t,e,"map expected: "+JSON.stringify(e));return[e,function(){var r,n,i,o,s;return a(this,(function(c){switch(c.label){case 0:c.trys.push([0,5,6,7]),r=u(e),n=r.next(),c.label=1;case 1:return n.done?[3,4]:(n.value,[4,function(e){if(!("prim"in e)||"Elt"!==e.prim)throw new ot(t,e,"map element expected: "+JSON.stringify(e));return[e,function(){var e,r,n,i,o,s;return a(this,(function(a){switch(a.label){case 0:a.trys.push([0,5,6,7]),e=u(t.args),r=e.next(),a.label=1;case 1:return r.done?[3,4]:(n=r.value,[4,de(n)]);case 2:a.sent(),a.label=3;case 3:return r=e.next(),[3,1];case 4:return[3,7];case 5:return i=a.sent(),o={error:i},[3,7];case 6:try{r&&!r.done&&(s=e.return)&&s.call(e)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()]}]);case 2:c.sent(),c.label=3;case 3:return n=r.next(),[3,1];case 4:return[3,7];case 5:return i=c.sent(),o={error:i},[3,7];case 6:try{n&&!n.done&&(s=r.return)&&s.call(r)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()]};case"chain_id":return function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"chain id expected: "+JSON.stringify(e));var r;if("string"in e){var n=dt(e.string,"ChainID");if(null===n)throw new ot(t,e,"chain id base58 expected: "+e.string);r={bytes:_t(n[1])}}else r=e;return[r,[][Symbol.iterator]()]};case"signature":return function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"signature expected: "+JSON.stringify(e));var r;if("string"in e){var n=dt(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature");if(null===n)throw new ot(t,e,"signature base58 expected: "+e.string);r={bytes:_t(n[1])}}else r=e;return[r,[][Symbol.iterator]()]};case"key_hash":return function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"key hash expected: "+JSON.stringify(e));var r;if("string"in e){var n=dt(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash");if(null===n)throw new ot(t,e,"key hash base58 expected: "+e.string);var i=new ne;ue({type:n[0],hash:n[1]},i),r={bytes:_t(i.buffer)}}else r=e;return[r,[][Symbol.iterator]()]};case"key":return function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"public key expected: "+JSON.stringify(e));var r;if("string"in e){var n=dt(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey");if(null===n)throw new ot(t,e,"public key base58 expected: "+e.string);var i=new ne;!function(t,e){var r;switch(t.type){case"ED25519PublicKey":r=re.ED25519;break;case"SECP256K1PublicKey":r=re.SECP256K1;break;case"P256PublicKey":r=re.P256;break;default:throw new Error("unexpected public key type: "+t.type)}e.writeUint8(r),e.writeBytes(Array.from(t.publicKey))}({type:n[0],publicKey:n[1]},i),r={bytes:_t(i.buffer)}}else r=e;return[r,[][Symbol.iterator]()]};case"address":return function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"address expected: "+JSON.stringify(e));var r;if("string"in e){var n=e.string.split("%"),i=dt(n[0],"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash");if(null===i)throw new ot(t,e,"address base58 expected: "+e.string);var o=new ne;!function(t,e){if("ContractHash"===t.type?(e.writeUint8(te.Originated),e.writeBytes(Array.from(t.hash)),e.writeUint8(0)):(e.writeUint8(te.Implicit),ue(t,e)),void 0!==t.entryPoint&&""!==t.entryPoint&&"default"!==t.entryPoint){var r=(new TextEncoder).encode(t.entryPoint);e.writeBytes(Array.from(r))}}({type:i[0],hash:i[1],entryPoint:n.length>1?n[1]:void 0},o),r={bytes:_t(o.buffer)}}else r=e;return[r,[][Symbol.iterator]()]};case"timestamp":return function(e){if(!("string"in e)&&!("int"in e))throw new ot(t,e,"timestamp expected: "+JSON.stringify(e));var r;if("string"in e){var n=wt(e);if(null===n)throw new ot(t,e,"can't parse date: "+e.string);r={int:String(Math.floor(n.getTime()/1e3))}}else r=e;return[r,[][Symbol.iterator]()]};default:return ve}},ye=function(t){return"prim"in t&&"PUSH"===t.prim},ve=function(t){return ye(t)?(jt(t),[t,function(){return a(this,(function(e){switch(e.label){case 0:return[4,ve];case 1:return e.sent(),[4,de(t.args[0])];case 2:return e.sent(),[2]}}))}()]):[t,function(){return a(this,(function(t){switch(t.label){case 0:return[4,ve];case 1:return t.sent(),[3,0];case 2:return[2]}}))}()]};function be(t,e){var r=new ne;return r.writeUint8(5),le(t,r,void 0!==e?de(e):ve),r.buffer}function ge(t,e){return{bytes:_t(be(t,e))}}var me=function(t){if(bt(t)){var e=Array.isArray(t)?t:t.args;return[function(r){if(!gt(r))throw new ot(t,r,"pair expected: "+JSON.stringify(r));return function(){var t,r,n,i,o,s;return a(this,(function(a){switch(a.label){case 0:a.trys.push([0,5,6,7]),t=u(e),r=t.next(),a.label=1;case 1:return r.done?[3,4]:(n=r.value,[4,me(n)]);case 2:a.sent(),a.label=3;case 3:return r=t.next(),[3,1];case 4:return[3,7];case 5:return i=a.sent(),o={error:i},[3,7];case 6:try{r&&!r.done&&(s=t.return)&&s.call(t)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()},function(t){return t}]}switch(t.prim){case"or":return[function(e){if(!he(e))throw new ot(t,e,"or expected: "+JSON.stringify(e));return function(){return a(this,(function(r){switch(r.label){case 0:return[4,me(t.args["Left"===e.prim?0:1])];case 1:return r.sent(),[2]}}))}()},function(t){return t}];case"option":return[function(e){if(!pe(e))throw new ot(t,e,"option expected: "+JSON.stringify(e));return function(){return a(this,(function(r){switch(r.label){case 0:return"Some"!==e.prim?[3,2]:[4,me(t.args[0])];case 1:r.sent(),r.label=2;case 2:return[2]}}))}()},function(t){return t}];case"list":case"set":return[function(e){if(!Array.isArray(e))throw new ot(t,e,t.prim+" expected: "+JSON.stringify(e));return function(){return a(this,(function(e){switch(e.label){case 0:return[4,me(t.args[0])];case 1:return e.sent(),[3,0];case 2:return[2]}}))}()},function(t){return t}];case"map":return[function(e){if(!Array.isArray(e))throw new ot(t,e,"map expected: "+JSON.stringify(e));return function(){return a(this,(function(e){switch(e.label){case 0:return[4,[function(e){if(!("prim"in e)||"Elt"!==e.prim)throw new ot(t,e,"map element expected: "+JSON.stringify(e));return function(){var e,r,n,i,o,s;return a(this,(function(a){switch(a.label){case 0:a.trys.push([0,5,6,7]),e=u(t.args),r=e.next(),a.label=1;case 1:return r.done?[3,4]:(n=r.value,[4,me(n)]);case 2:a.sent(),a.label=3;case 3:return r=e.next(),[3,1];case 4:return[3,7];case 5:return i=a.sent(),o={error:i},[3,7];case 6:try{r&&!r.done&&(s=e.return)&&s.call(e)}finally{if(o)throw o.error}return[7];case 7:return[2]}}))}()},function(t){return t}]];case 1:return e.sent(),[3,0];case 2:return[2]}}))}()},function(t){return t}];case"chain_id":return[function(){return[][Symbol.iterator]()},function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"chain id expected: "+JSON.stringify(e));if("string"in e)return e;var r=at(e.bytes);if(null===r)throw new ot(t,e,"can't parse bytes: "+e.bytes);return{string:yt("ChainID",r)}}];case"signature":return[function(){return[][Symbol.iterator]()},function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"signature expected: "+JSON.stringify(e));if("string"in e)return e;var r=at(e.bytes);if(null===r)throw new ot(t,e,"can't parse bytes: "+e.bytes);return{string:yt("GenericSignature",r)}}];case"key_hash":return[function(){return[][Symbol.iterator]()},function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"key hash expected: "+JSON.stringify(e));if("string"in e)return e;var r=at(e.bytes);if(null===r)throw new ot(t,e,"can't parse bytes: "+e.bytes);var n=se(new oe(new Uint8Array(r)));return{string:yt(n.type,n.hash)+(n.entryPoint?"%"+n.entryPoint:"")}}];case"key":return[function(){return[][Symbol.iterator]()},function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"public key expected: "+JSON.stringify(e));if("string"in e)return e;var r=at(e.bytes);if(null===r)throw new ot(t,e,"can't parse bytes: "+e.bytes);var n=ce(new oe(new Uint8Array(r)));return{string:yt(n.type,n.publicKey)}}];case"address":return[function(){return[][Symbol.iterator]()},function(e){if(!("bytes"in e)&&!("string"in e))throw new ot(t,e,"address expected: "+JSON.stringify(e));if("string"in e)return e;var r=at(e.bytes);if(null===r)throw new ot(t,e,"can't parse bytes: "+e.bytes);var n=ae(new oe(new Uint8Array(r)));return{string:yt(n.type,n.hash)+(n.entryPoint?"%"+n.entryPoint:"")}}];case"timestamp":return[function(){return[][Symbol.iterator]()},function(e){if(!("int"in e)&&!("string"in e))throw new ot(t,e,"address expected: "+JSON.stringify(e));return"string"in e?e:{string:new Date(1e3*parseInt(e.int,10)).toISOString().slice(0,19)+"Z"}}];default:return we}},we=[function(t){return ye(t)?(jt(t),function(){return a(this,(function(e){switch(e.label){case 0:return[4,we];case 1:return e.sent(),[4,me(t.args[0])];case 2:return e.sent(),[2]}}))}()):function(){return a(this,(function(t){switch(t.label){case 0:return[4,we];case 1:return t.sent(),[3,0];case 2:return[2]}}))}()},function(t){return t}];function _e(t,e){var r=new oe(t);if(5!==r.readUint8())throw new Error("incorrect packed data magic number");var n=fe(r,void 0!==e?me(e):we);if(Kt(n))return n;throw new Error}function Ee(t,e){var r=at(t.bytes);if(null===r)throw new Error("can't parse bytes: \""+t.bytes+'"');return _e(r,e)}function Oe(t){var e=at(t.bytes);if(null===e)throw new Error("can't parse bytes: \""+t.bytes+'"');return ae(new oe(new Uint8Array(e)))}function Se(t){var e=at(t.bytes);if(null===e)throw new Error("can't parse bytes: \""+t.bytes+'"');return se(new oe(new Uint8Array(e)))}function xe(t){var e=at(t.bytes);if(null===e)throw new Error("can't parse bytes: \""+t.bytes+'"');return ce(new oe(new Uint8Array(e)))}var Te=function(t){function e(r,n,i){var o=t.call(this,r,i)||this;return o.stackState=n,Object.setPrototypeOf(o,e.prototype),o}return o(e,t),e}(nt);function Ae(t){return Array.isArray(t)?"pair":t.prim}function Pe(t){return"prim"in t?t.args:t}function Re(t,e,r){if(void 0===r&&(r=!1),Ae(t)!==Ae(e))throw new ot(t,void 0,"types mismatch: "+Ae(t)+" != "+Ae(e));var n=[ht(t),ht(e)];if(n[0].t&&n[1].t&&n[0].t[0]!==n[1].t[0])throw new ot(t,void 0,Ae(t)+": type names mismatch: "+n[0].t[0]+" != "+n[1].t[0]);if(r&&n[0].f&&n[1].f&&n[0].f[0]!==n[1].f[0])throw new ot(t,void 0,Ae(t)+": field names mismatch: "+n[0].f[0]+" != "+n[1].f);if(bt(t)){var i=vt("pair",t),o=vt("pair",e);return Re(i.args[0],o.args[0],!0),void Re(i.args[1],o.args[1],!0)}switch(t.prim){case"option":case"list":case"contract":case"set":case"ticket":Re(t.args[0],e.args[0]);break;case"or":Re(t.args[0],e.args[0],!0),Re(t.args[1],e.args[1],!0);break;case"lambda":case"map":case"big_map":Re(t.args[0],e.args[0]),Re(t.args[1],e.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(t.args[0].int,10)!==parseInt(e.args[0].int,10))throw new ot(t,void 0,Ae(t)+": type argument mismatch: "+t.args[0].int+" != "+e.args[0].int)}}function ke(t,e){if(t.length!==e.length)throw new ot(t,void 0,"stack length mismatch: "+t.length+" != "+e.length);for(var r=0;r1)throw new ot(t,void 0,t.prim+": at most one type annotation allowed: "+t.annots);if(e){if(((null===(a=l.f)||void 0===a?void 0:a.length)||0)>1)throw new ot(t,void 0,t.prim+": at most one field annotation allowed: "+t.annots)}else if(((null===(c=l.f)||void 0===c?void 0:c.length)||0)>0)throw new ot(t,void 0,t.prim+": field annotations aren't allowed: "+t.annots)}if(bt(t)){var f=Pe(t);try{for(var h=u(f),p=h.next();!p.done;p=h.next()){Ie(p.value,!0)}}catch(t){r={error:t}}finally{try{p&&!p.done&&(n=h.return)&&n.call(h)}finally{if(r)throw r.error}}}else switch(t.prim){case"option":case"list":case"contract":case"set":Ie(t.args[0]);break;case"or":try{for(var d=u(t.args),y=d.next();!y.done;y=d.next()){Ie(y.value,!0)}}catch(t){i={error:t}}finally{try{y&&!y.done&&(o=d.return)&&o.call(d)}finally{if(i)throw i.error}}break;case"lambda":case"map":case"big_map":Ie(t.args[0]),Ie(t.args[1])}}function Ne(t,e,r){if(bt(t)){if(gt(e)&>(r)){$t(e),$t(r);var n=vt("pair",t),i=vt("Pair",e),o=vt("Pair",r);return 0!==(u=Ne(n.args[0],i.args[0],o.args[0]))?u:Ne(n.args[0],i.args[1],o.args[1])}}else switch(t.prim){case"int":case"nat":case"mutez":if("int"in e&&"int"in r)return new st(e.int).cmp(new st(r.int));break;case"string":if("string"in e&&"string"in r)return(u=e.string.localeCompare(r.string))<0?-1:u>0?1:0;break;case"bytes":if("bytes"in e&&"bytes"in r){var s=at(e.bytes),a=at(r.bytes);if(null!==s&&null!==a)return ut(s,a)}break;case"bool":if("prim"in e&&"prim"in r&&("True"===e.prim||"False"===e.prim)&&("True"===r.prim||"False"===r.prim))return e.prim===r.prim?0:"False"===e.prim?-1:1;break;case"key":case"key_hash":case"address":case"signature":case"chain_id":if(("string"in e||"bytes"in e)&&("string"in r||"bytes"in r))return ut("string"in e?et(e.string):at(e.bytes)||[],"string"in r?et(r.string):at(r.bytes)||[]);break;case"timestamp":if(("string"in e||"int"in e)&&("string"in r||"int"in r)){var u;s=wt(e),a=wt(r);if(null!==s&&null!==a)return(u=s.valueOf()-a.valueOf())<0?-1:u>0?1:0}break;case"unit":if("prim"in e&&"prim"in r&&"Unit"===e.prim&&"Unit"===r.prim)return 0}throw new ot(t,void 0,Ae(t)+": not comparable values: "+JSON.stringify(e)+", "+JSON.stringify(r))}function Ce(t){var e,r;if(!Array.isArray(t))return!1;try{for(var n=u(t),i=n.next();!i.done;i=n.next()){var o=i.value;if(!(Array.isArray(o)&&Ce(o)||"prim"in o&&Jt(o)))return!1}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!0}function je(t,e,r){var n,i,o,s;if(bt(e)){if(gt(t)){$t(t);var a=vt("Pair",t),c=vt("pair",e);return je(a.args[0],c.args[0],r),void je(a.args[1],c.args[1],r)}throw new ot(e,t,"pair expected: "+JSON.stringify(t))}switch(e.prim){case"int":if("int"in t&&ct(t.int))return;throw new ot(e,t,"integer value expected: "+JSON.stringify(t));case"nat":case"mutez":if("int"in t&<(t.int))return;throw new ot(e,t,"natural value expected: "+JSON.stringify(t));case"string":if("string"in t)return;throw new ot(e,t,"string value expected: "+JSON.stringify(t));case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in t&&null!==at(t.bytes))return;throw new ot(e,t,"bytes value expected: "+JSON.stringify(t));case"bool":if("prim"in t&&("True"===t.prim||"False"===t.prim))return;throw new ot(e,t,"boolean value expected: "+JSON.stringify(t));case"key_hash":if("string"in t&&null!==dt(t.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in t)try{return void Se(t)}catch(t){}throw new ot(e,t,"key hash expected: "+JSON.stringify(t));case"timestamp":if(("string"in t||"int"in t)&&null!==wt(t))return;throw new ot(e,t,"timestamp expected: "+JSON.stringify(t));case"address":if("string"in t){var l=t.string,f=t.string.indexOf("%");if(f>=0&&(l=t.string.slice(0,f)),null!==dt(l,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash"))return}else if("bytes"in t)try{return void Oe(t)}catch(t){}throw new ot(e,t,"address expected: "+JSON.stringify(t));case"key":if("string"in t&&null!==dt(t.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in t)try{return void xe(t)}catch(t){}throw new ot(e,t,"public key expected: "+JSON.stringify(t));case"unit":if("prim"in t&&"Unit"===t.prim)return;throw new ot(e,t,"unit value expected: "+JSON.stringify(t));case"signature":if("bytes"in t||"string"in t&&null!==dt(t.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new ot(e,t,"signature expected: "+JSON.stringify(t));case"chain_id":if("bytes"in t||"string"in t)if(null!==("string"in t?et(t.string):at(t.bytes)))return;throw new ot(e,t,"chain id expected: "+JSON.stringify(t));case"operation":throw new ot(e,t,"operation type can't be represented as a literal value");case"contract":throw new ot(e,t,"contract type can't be represented as a literal value");case"option":if("prim"in t){if("None"===t.prim)return;if("Some"===t.prim)return void je(t.args[0],e.args[0],r)}throw new ot(e,t,"option expected: "+JSON.stringify(t));case"list":case"set":if($t(t)){var h=void 0;try{for(var p=u(t),d=p.next();!d.done;d=p.next()){if(je(g=d.value,e.args[0],r),"set"===e.prim)if(void 0===h)h=g;else if(Ne(e.args[0],h,g)>0)throw new ot(e,t,"set elements must be ordered: "+JSON.stringify(t))}}catch(t){n={error:t}}finally{try{d&&!d.done&&(i=p.return)&&i.call(p)}finally{if(n)throw n.error}}return}throw new ot(e,t,e.prim+" expected: "+JSON.stringify(t));case"or":if("prim"in t){if("Left"===t.prim)return void je(t.args[0],e.args[0],r);if("Right"===t.prim)return void je(t.args[0],e.args[1],r)}throw new ot(e,t,"union (or) expected: "+JSON.stringify(t));case"lambda":if(Ce(t)){var y=Le(t,[e.args[0]],r);if("failed"in y)throw new ot(e,t,"function is failed with error type: "+y.failed);if(1!==y.length)throw new ot(e,t,"function must return a value");return void Re(e.args[1],y[0])}throw new ot(e,t,"function expected: "+JSON.stringify(t));case"map":case"big_map":if(Array.isArray(t)){h=void 0;try{for(var v=u(t),b=v.next();!b.done;b=v.next()){var g;if(!("prim"in(g=b.value))||"Elt"!==g.prim)throw new ot(e,t,"map elements expected: "+JSON.stringify(t));if(je(g.args[0],e.args[0],r),je(g.args[1],e.args[1],r),void 0===h)h=g;else if(Ne(e.args[0],h.args[0],g.args[0])>0)throw new ot(e,t,"map elements must be ordered: "+JSON.stringify(t))}}catch(t){o={error:t}}finally{try{b&&!b.done&&(s=v.return)&&s.call(v)}finally{if(o)throw o.error}}return}throw new ot(e,t,e.prim+" expected: "+JSON.stringify(t));case"bls12_381_fr":if("int"in t&&ct(t.int)||"bytes"in t&&null!==at(t.bytes))return;throw new ot(e,t,"BLS12-381 element expected: "+JSON.stringify(t));case"sapling_state":if(Array.isArray(t))return;throw new ot(e,t,"sapling state expected: "+JSON.stringify(t));case"ticket":return void je(t,{prim:"pair",args:[{prim:"address"},e.args[0],{prim:"nat"}]},r);default:throw new ot(e,t,"unexpected type: "+Ae(e))}}function Le(t,e,r){var n=(null==r?void 0:r.protocol)||_;if(Array.isArray(t))return function(t,e,r){var n,i,o=e,s=e,a=0;try{for(var c=u(t),l=c.next();!l.done;l=c.next()){var f=Le(l.value,s,r);if(o=f,"failed"in f)break;s=f,a++}}catch(t){n={error:t}}finally{try{l&&!l.done&&(i=c.return)&&i.call(c)}finally{if(n)throw n.error}}if("failed"in o&&a!==t.length-1)throw new Te(t,o,"FAIL must appear in a tail position");if(void 0!==(null==r?void 0:r.traceCallback)){var h={op:t,in:e,out:o};r.traceCallback(h)}return o}(t,e,r);var i=t;function o(t){for(var r,n,o=[],s=1;s1,emptyVar:void 0!==t.v&&t.v>1})),o=function(t,r,n){if(t&&t.length>(r||0))throw new Te(i,e,i.prim+": at most "+(r||0)+" "+n+" annotations allowed")};return o(n.f,t.f,"field"),o(n.t,t.t,"type"),o(n.v,t.v,"variable"),n}function O(t,e){var r=t,n=Array.isArray(r)?{prim:"pair",args:r}:r,i=f(n),o=void 0!==e.v||void 0!==e.t||void 0!==e.f?l((null===e.v?i.v:e.v)||[],(null===e.t?i.t:e.t)||[],(null===e.f?i.f:e.f)||[]):void 0;n.annots;var a=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i0?e+1:1)},U=L.map((function(t,e){var r,n=f(t);return O(t,{v:null,t:null,f:M.f&&M.f.length>e&&"%"!==M.f[e]?"%@"===M.f[e]?n.v?["%"+D((null===(r=n.v)||void 0===r?void 0:r[0])||"")]:void 0:[M.f[e]]:void 0})}));return l([O({prim:"pair",args:U},{t:M.t,v:M.v})],e.slice(G));case"UNPAIR":if((G=t.args?parseInt(t.args[0].int,10):2)<2)throw new Te(t,e,"UNPAIR "+G+" is forbidden");var B=o(0,["pair"])[0],F=E({f:2,v:2},{specialVar:!0});return l(T(B,G).map((function(t,e){return x(B,t,F,e,0===e?"car":"cdr")})),e.slice(1));case"CAR":case"CDR":var H=vt("pair",o(0,["pair"])[0]);return l([x(H,H.args["CAR"===t.prim?0:1],$=E({f:1,v:1},{specialVar:!0}),0,t.prim.toLocaleLowerCase())],e.slice(1));case"CONS":var V=o(0,null,["list"]);return p(V[0],V[1].args[0]),l([S({prim:"list",args:[V[1].args[0]]})],e.slice(2));case"SIZE":return o(0,["string","list","set","map","bytes"]),l([S({prim:"nat"})],e.slice(1));case"MEM":var K=o(0,null,["set","map","big_map"]);return d(K[0]),p(K[0],K[1].args[0]),l([S({prim:"bool"})],e.slice(2));case"GET":if(t.args){var G=parseInt(t.args[0].int,10);return l([S(A(o(0,["pair"])[0],G))],e.slice(1))}var q=o(0,null,["map","big_map"]);return d(q[0]),p(q[0],q[1].args[0]),l([S({prim:"option",args:[q[1].args[1]]})],e.slice(2));case"UPDATE":if(t.args){G=parseInt(t.args[0].int,10);var z=o(0,null,["pair"]);return l([S(P(z[1],z[0],G))],e.slice(2))}var W=o(0,null,["bool","option"]);if(d(W[0]),"bool"===W[1].prim){var Y=o(2,["set"]);return p(W[0],Y[0].args[0]),l([S({prim:"set",args:[O(W[0],{t:null})]})],e.slice(3))}var J=o(2,["map","big_map"]);return p(W[0],J[0].args[0]),"map"===J[0].prim?l([S({prim:"map",args:[O(W[0],{t:null}),O(W[1].args[0],{t:null})]})],e.slice(3)):(g(W[1].args[0]),l([S({prim:"big_map",args:[O(W[0],{t:null}),O(W[1].args[0],{t:null})]})],e.slice(3)));case"GET_AND_UPDATE":var $=E({v:2}),X=o(0,null,["option"],["map","big_map"]);d(X[0]),p(X[0],X[2].args[0]),p(X[1].args[0],X[2].args[1]);var Z=null===(u=$.v)||void 0===u?void 0:u.map((function(t){return"@"!==t?[t]:void 0}));return"map"===X[2].prim?l([O({prim:"option",args:[X[2].args[1]]},{v:null==Z?void 0:Z[0]}),O({prim:"map",args:[O(X[0],{t:null}),O(X[1].args[0],{t:null})]},{v:null==Z?void 0:Z[1]})],e.slice(3)):(g(X[1].args[0]),l([O({prim:"option",args:[X[2].args[1]]},{v:null==Z?void 0:Z[0]}),O({prim:"big_map",args:[O(X[0],{t:null}),O(X[1].args[0],{t:null})]},{v:null==Z?void 0:Z[1]})],e.slice(3)));case"EXEC":var Q=o(0,null,["lambda"]);return p(Q[0],Q[1].args[0]),l([S(Q[1].args[1])],e.slice(2));case"APPLY":var tt=o(0,null,["lambda"]);if(v(tt[0]),b(tt[0]),!bt(tt[1].args[0]))throw new Te(t,e,t.prim+": function's argument must be a pair: "+Ae(tt[1].args[0]));var et=tt[1].args[0];return p(tt[0],Pe(et)[0]),l([S({prim:"lambda",args:[Pe(et)[1],tt[1].args[1]]})],e.slice(2));case"FAILWITH":var rt=o(0,null)[0];return n!==m.PtEdo2Zk&&n!==m.PsFLorena||y(rt),{failed:rt};case"NEVER":return o(0,["never"]),{failed:{prim:"never"}};case"RENAME":return l([S(o(0,null)[0])],e.slice(1));case"CONCAT":if("list"===(W=o(0,["string","list","bytes"]))[0].prim){if("string"!==Ae(W[0].args[0])&&"bytes"!==Ae(W[0].args[0]))throw new Te(t,e,t.prim+": can't concatenate list of "+Ae(W[0].args[0])+"'s");return l([S(W[0].args[0])],e.slice(1))}J=o(1,["string","bytes"]);if(W[0].prim!==J[0].prim)throw new Te(t,e,t.prim+": can't concatenate "+W[0].prim+" with "+J[0].prim);return l([S(J[0])],e.slice(2));case"SLICE":return l([S({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice")],e.slice(3));case"PACK":var it=o(0,null)[0];return y(it),l([S({prim:"bytes"},"@packed")],e.slice(1));case"ADD":var ot=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===ot[0].prim&&"int"===ot[1].prim||"int"===ot[0].prim&&"nat"===ot[1].prim)return l([S({prim:"int"})],e.slice(2));if("int"===ot[0].prim&&"timestamp"===ot[1].prim||"timestamp"===ot[0].prim&&"int"===ot[1].prim)return l([S({prim:"timestamp"})],e.slice(2));if(("int"===ot[0].prim||"nat"===ot[0].prim||"mutez"===ot[0].prim||"bls12_381_g1"===ot[0].prim||"bls12_381_g2"===ot[0].prim||"bls12_381_fr"===ot[0].prim)&&ot[0].prim===ot[1].prim)return l([S(ot[0])],e.slice(2));throw new Te(t,e,t.prim+": can't add "+ot[0].prim+" to "+ot[1].prim);case"SUB":var st=o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]);if(("nat"===st[0].prim||"int"===st[0].prim)&&("nat"===st[1].prim||"int"===st[1].prim)||"timestamp"===st[0].prim&&"timestamp"===st[1].prim)return l([S({prim:"int"})],e.slice(2));if("timestamp"===st[0].prim&&"int"===st[1].prim)return l([S({prim:"timestamp"})],e.slice(2));if("mutez"===st[0].prim&&"mutez"===st[1].prim)return l([S({prim:"mutez"})],e.slice(2));throw new Te(t,e,t.prim+": can't subtract "+st[0].prim+" from "+st[1].prim);case"MUL":var at=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===at[0].prim&&"int"===at[1].prim||"int"===at[0].prim&&"nat"===at[1].prim)return l([S({prim:"int"})],e.slice(2));if("nat"===at[0].prim&&"mutez"===at[1].prim||"mutez"===at[0].prim&&"nat"===at[1].prim)return l([S({prim:"mutez"})],e.slice(2));if(("bls12_381_g1"===at[0].prim||"bls12_381_g2"===at[0].prim||"bls12_381_fr"===at[0].prim)&&"bls12_381_fr"===at[1].prim||("nat"===at[0].prim||"int"===at[0].prim)&&at[0].prim===at[1].prim)return l([S(at[0])],e.slice(2));if(("nat"===at[0].prim||"int"===at[0].prim)&&"bls12_381_fr"===at[1].prim||("nat"===at[1].prim||"int"===at[1].prim)&&"bls12_381_fr"===at[0].prim)return l([S({prim:"bls12_381_fr"})],e.slice(2));throw new Te(t,e,t.prim+": can't multiply "+at[0].prim+" by "+at[1].prim);case"EDIV":var ut=function(t,e){return{prim:"option",args:[{prim:"pair",args:[{prim:t},{prim:e}]}]}},ct=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===ct[0].prim&&"nat"===ct[1].prim)return l([S(ut("nat","nat"))],e.slice(2));if(!("nat"!==ct[0].prim&&"int"!==ct[0].prim||"nat"!==ct[1].prim&&"int"!==ct[1].prim))return l([S(ut("int","nat"))],e.slice(2));if("mutez"===ct[0].prim&&"nat"===ct[1].prim)return l([S(ut("mutez","mutez"))],e.slice(2));if("mutez"===ct[0].prim&&"mutez"===ct[1].prim)return l([S(ut("nat","mutez"))],e.slice(2));throw new Te(t,e,t.prim+": can't euclideally divide "+ct[0].prim+" by "+ct[1].prim);case"ABS":return o(0,["int"]),l([S({prim:"nat"})],e.slice(1));case"ISNAT":return o(0,["int"]),l([S({prim:"option",args:[{prim:"nat"}]})],e.slice(1));case"INT":return o(0,["nat","bls12_381_fr"]),l([S({prim:"int"})],e.slice(1));case"NEG":var lt=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===lt.prim||"int"===lt.prim?l([S({prim:"int"})],e.slice(1)):l([S(lt)],e.slice(1));case"LSL":case"LSR":return o(0,["nat"],["nat"]),l([S({prim:"nat"})],e.slice(2));case"OR":case"XOR":var ft=o(0,["nat","bool"],["nat","bool"]);if(ft[0].prim!==ft[1].prim)throw new Te(t,e,t.prim+": both arguments must be of the same type: "+ft[0].prim+", "+ft[1].prim);return l([S(ft[1])],e.slice(2));case"AND":var ht=o(0,["nat","bool","int"],["nat","bool"]);if(("int"!==ht[0].prim||"nat"!==ht[1].prim)&&ht[0].prim!==ht[1].prim)throw new Te(t,e,t.prim+": both arguments must be of the same type: "+ht[0].prim+", "+ht[1].prim);return l([S(ht[1])],e.slice(2));case"NOT":return"bool"===o(0,["nat","bool","int"])[0].prim?l([S({prim:"bool"})],e.slice(1)):l([S({prim:"int"})],e.slice(1));case"COMPARE":var pt=o(0,null,null);return d(pt[0]),d(pt[1]),l([S({prim:"int"})],e.slice(2));case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),l([S({prim:"bool"})],e.slice(1));case"SELF":if(void 0===(null==r?void 0:r.contract))throw new Te(t,e,t.prim+": contract required");$=E({f:1,v:1});if(null===(St=Ue(r.contract,null===(c=$.f)||void 0===c?void 0:c[0])))throw new Te(t,e,t.prim+": contract has no entrypoint "+St);return l([O({prim:"contract",args:[St]},{v:$.v?$.v:["@self"]})],e);case"TRANSFER_TOKENS":var dt=o(0,null,["mutez"],["contract"]);return p(dt[0],dt[2].args[0]),l([S({prim:"operation"})],e.slice(3));case"SET_DELEGATE":var yt=o(0,["option"])[0];if("key_hash"!==Ae(yt.args[0]))throw new Te(t,e,t.prim+": key hash expected: "+Ae(yt.args[0]));return l([S({prim:"operation"})],e.slice(1));case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),l([S({prim:"contract",args:[{prim:"unit"}]})],e.slice(1));case"NOW":return l([S({prim:"timestamp"},"@now")],e);case"AMOUNT":return l([S({prim:"mutez"},"@amount")],e);case"BALANCE":return l([S({prim:"mutez"},"@balance")],e);case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),l([S({prim:"bool"})],e.slice(3));case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),l([S({prim:"bytes"})],e.slice(1));case"HASH_KEY":return o(0,["key"]),l([S({prim:"key_hash"})],e.slice(1));case"SOURCE":return l([S({prim:"address"},"@source")],e);case"SENDER":return l([S({prim:"address"},"@sender")],e);case"ADDRESS":var gt=o(0,["contract"])[0];$=E({v:1});return l([O((i={prim:"address"},i[w]=gt,i),{v:$.v?$.v:R(f(gt),"address")})],e.slice(1));case"SELF_ADDRESS":var mt={prim:"address"};return void 0!==(null==r?void 0:r.contract)&&(mt[w]={prim:"contract",args:[Me(r.contract,"parameter").args[0]]}),l([S(mt,"@address")],e);case"CHAIN_ID":return l([S({prim:"chain_id"})],e);case"DROP":return E({}),o((G=void 0!==t.args?parseInt(t.args[0].int,10):1)-1,null),e.slice(G);case"DIG":return E({}),l([o(G=parseInt(t.args[0].int,10),null)[0]],e.slice(0,G),e.slice(G+1));case"DUG":E({});G=parseInt(t.args[0].int,10);return l(e.slice(1,G+1),[o(0,null)[0]],e.slice(G+1));case"NONE":return Ie(t.args[0]),l([O({prim:"option",args:[t.args[0]]},E({t:1,v:1}))],e);case"LEFT":case"RIGHT":var wt=o(0,null)[0],_t=($=E({f:2,t:1,v:1},{specialFields:!0}),Z=f(wt),[O(wt,{t:null,v:null,f:$.f&&$.f.length>0&&"%"!==$.f[0]?"%@"===$.f[0]?Z.v?["%"+Z.v[0].slice(1)]:void 0:$.f:void 0}),O(t.args[0],{t:null,f:$.f&&$.f.length>1&&"%"!==$.f[1]?$.f:void 0})]);return l([O({prim:"or",args:"LEFT"===t.prim?_t:[_t[1],_t[0]]},{t:$.t,v:$.v})],e.slice(1));case"NIL":return Ie(t.args[0]),l([O({prim:"list",args:[t.args[0]]},E({t:1,v:1}))],e);case"UNPACK":return o(0,["bytes"]),Ie(t.args[0]),l([S({prim:"option",args:[t.args[0]]},"@unpacked")],e.slice(1));case"CONTRACT":var Et=o(0,["address"])[0];Ie(t.args[0]);$=E({v:1,f:1});var Ot=Et[w];if(void 0!==Ot){var St;if(null===(St=Ue(Ot,null===(_=$.f)||void 0===_?void 0:_[0])))throw new Te(t,e,t.prim+": contract has no entrypoint "+St);p(St,t.args[0])}return l([O({prim:"option",args:[{prim:"contract",args:[t.args[0]]}]},{v:$.v?$.v:R(f(Et),"contract")})],e.slice(1));case"CAST":E({});var xt=o(0,null)[0];return Ie(t.args[0]),p(t.args[0],xt),l([t.args[0]],e.slice(1));case"IF_NONE":E({});var Tt=o(0,["option"])[0],At=e.slice(1);return k(Le(t.args[0],At,r),Le(t.args[1],l([O(Tt.args[0],{t:null,v:R(f(Tt),"some")})],At),r));case"IF_LEFT":E({});var Pt=o(0,["or"])[0],Rt=(Z=f(Pt),f(Pt.args[0])),kt=f(Pt.args[1]);At=e.slice(1);return k(Le(t.args[0],l([O(Pt.args[0],{t:null,v:R(Z,Rt.f?Rt.f[0].slice(1):"left")})],At),r),Le(t.args[1],l([O(Pt.args[1],{t:null,v:R(Z,kt.f?kt.f[0].slice(1):"right")})],At),r));case"IF_CONS":E({});var It=o(0,["list"])[0];Z=f(It),At=e.slice(1);return k(Le(t.args[0],l([O(It.args[0],{t:null,v:R(Z,"hd")}),O(It,{t:null,v:R(Z,"tl")})],At),r),Le(t.args[1],At,r));case"IF":E({}),o(0,["bool"]);At=e.slice(1);return k(Le(t.args[0],At,r),Le(t.args[1],At,r));case"MAP":var Nt=o(0,["list","map"])[0],Ct=(At=e.slice(1),"map"===Nt.prim?{prim:"pair",args:Nt.args}:Nt.args[0]);if("failed"in(Ut=Le(t.args[0],l([O(Ct,{t:null,v:R(f(Nt),"elt")})],At),r)))return Ut;if(Ut.length<1)throw new Te(t,e,t.prim+": function must return a value");return h(Ut.slice(1),At),"list"===Nt.prim?l([S({prim:"list",args:[Ut[0]]})],At):l([S({prim:"map",args:[Nt.args[0],Ut[0]]})],At);case"ITER":E({});var jt=o(0,["set","list","map"])[0];At=e.slice(1),Ct="map"===jt.prim?{prim:"pair",args:jt.args}:jt.args[0];return"failed"in(Ut=Le(t.args[0],l([O(Ct,{t:null,v:R(f(jt),"elt")})],At),r))?Ut:(h(Ut,At),At);case"LOOP":E({}),o(0,["bool"]);At=e.slice(1);return"failed"in(Ut=Le(t.args[0],At,r))?Ut:(h(Ut,l([{prim:"bool"}],At)),At);case"LOOP_LEFT":E({});var Lt=o(0,["or"])[0];At=e.slice(1);return"failed"in(Ut=Le(t.args[0],l([O(Lt.args[0],{t:null,v:R(f(Lt),"left")})],At),r))?Ut:(h(Ut,l([Lt],At)),l([O(Lt.args[1],{t:null,v:E({v:1}).v})],At));case"DIP":E({}),o((G=2===t.args.length?parseInt(t.args[0].int,10):1)-1,null);var Mt=e.slice(0,G);At=e.slice(G);return"failed"in(Ut=2===t.args.length?Le(t.args[1],At,r):Le(t.args[0],At,r))?Ut:l(Mt,Ut);case"CREATE_CONTRACT":$=E({v:2});var Dt=o(0,["option"],["mutez"],null);if("key_hash"!==Ae(Dt[0].args[0]))throw new Te(t,e,t.prim+": key hash expected: "+Ae(Dt[0].args[0]));return v(Dt[2])&&(Fe(t.args[0]),Re(Me(t.args[0],"storage").args[0],Dt[2])),l([O({prim:"operation"},{v:null==(Z=null===(I=$.v)||void 0===I?void 0:I.map((function(t){return"@"!==t?[t]:void 0})))?void 0:Z[0]}),O((a={prim:"address"},a[w]={prim:"contract",args:[Me(t.args[0],"parameter").args[0]]},a),{v:null==Z?void 0:Z[1]})],e.slice(3));case"PUSH":return Ie(t.args[0]),je(t.args[1],t.args[0],s(s({},r),{contract:void 0})),l([S(t.args[0])],e);case"EMPTY_SET":return Ie(t.args[0]),d(t.args[0]),l([O({prim:"set",args:t.args},E({t:1,v:1}))],e);case"EMPTY_MAP":return Ie(t.args[0]),d(t.args[0]),Ie(t.args[1]),l([O({prim:"map",args:t.args},E({t:1,v:1}))],e);case"EMPTY_BIG_MAP":return Ie(t.args[0]),d(t.args[0]),Ie(t.args[1]),g(t.args[0]),l([O({prim:"big_map",args:t.args},E({t:1,v:1}))],e);case"LAMBDA":var Ut;if(Ie(t.args[0]),Ie(t.args[1]),"failed"in(Ut=Le(t.args[2],[t.args[0]],s(s({},r),{contract:void 0}))))return Ut;if(1!==Ut.length)throw new Te(t,e,t.prim+": function must return a value");return p(t.args[1],Ut[0]),l([S({prim:"lambda",args:[t.args[0],t.args[1]]})],e);case"LEVEL":return l([S({prim:"nat"},"@level")],e);case"TOTAL_VOTING_POWER":return l([S({prim:"nat"})],e);case"VOTING_POWER":return o(0,["key_hash"]),l([S({prim:"nat"})],e.slice(1));case"TICKET":var Bt=o(0,null,["nat"])[0];return d(Bt),l([O({prim:"ticket",args:[Bt]},E({t:1,v:1}))],e.slice(2));case"JOIN_TICKETS":var Ft=vt("pair",o(0,["pair"])[0]);if("ticket"!==Ae(Ft.args[0]))throw new Te(t,e,t.prim+": ticket expected: "+Ae(Ft.args[0]));return p(Ft.args[0],Ft.args[1]),l([S({prim:"option",args:[O(Ft.args[0],{t:null})]})],e.slice(1));case"SPLIT_TICKET":var Ht=o(0,["ticket"],["pair"]);if("nat"!==Ae((Kt=vt("pair",Ht[1])).args[0]))throw new Te(t,e,t.prim+": nat expected: "+Ae(Kt.args[0]));return p(Kt.args[0],Kt.args[1]),l([S({prim:"option",args:[{prim:"pair",args:[O(Ht[0],{t:null}),O(Ht[0],{t:null})]}]})],e.slice(2));case"READ_TICKET":$=E({v:2});var Vt=o(0,["ticket"])[0];Z=null===(N=$.v)||void 0===N?void 0:N.map((function(t){return"@"!==t?[t]:void 0}));return l([O({prim:"pair",args:[{prim:"address"},O(Vt.args[0],{t:null}),{prim:"nat"}]},{v:null==Z?void 0:Z[0]}),O(Vt,{v:null==Z?void 0:Z[1],t:null})],e.slice(1));case"PAIRING_CHECK":var Kt;if(!bt(Kt=o(0,["list"])[0].args[0]))throw new Te(t,e,t.prim+": pair expected: "+Ae(Kt));var Gt=vt("pair",Kt);if("bls12_381_g1"!==Ae(Gt.args[0]))throw new Te(t,e,t.prim+": bls12_381_g1 expected: "+Ae(Gt.args[0]));if("bls12_381_g2"!==Ae(Gt.args[1]))throw new Te(t,e,t.prim+": bls12_381_g2 expected: "+Ae(Gt.args[1]));return l([S({prim:"bool"})],e.slice(1));case"SAPLING_EMPTY_STATE":return l([O({prim:"sapling_state",args:[t.args[0]]},E({v:1,t:1}))],e);case"SAPLING_VERIFY_UPDATE":var qt=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(qt[0].args[0].int,10)!==parseInt(qt[1].args[0].int,10))throw new Te(t,e,t.prim+": sapling memo size mismatch: "+qt[0].args[0].int+" != "+qt[1].args[0].int);return l([S({prim:"option",args:[{prim:"pair",args:[{prim:"int"},O(qt[1],{t:null})]}]})],e.slice(2));default:throw new nt(t,"unexpected instruction: "+t.prim)}}(i);if(void 0!==(null==r?void 0:r.traceCallback)){var N={op:i,in:e,out:I};r.traceCallback(N)}return I}function Me(t,e){var r,n;try{for(var i=u(t),o=i.next();!o.done;o=i.next()){var s=o.value;if(s.prim===e)return s}}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}throw new nt(t,"missing contract section: "+e)}function De(t){var e,r;if(Array.isArray(t))try{for(var n=u(t),i=n.next();!i.done;i=n.next()){var o=i.value;if("prim"in o&&("parameter"===o.prim||"storage"===o.prim||"code"===o.prim))return!0}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!1}function Ue(t,e){e=e||"%default";var r=Be(t).find((function(t){return t[0]===e}));return void 0!==r?r[1]:"%default"===e?De(t)?Me(t,"parameter").args[0]:t:null}function Be(t){if(De(t)){var e=Me(t,"parameter"),r=Be(e.args[0]),n=ht(e);return n.f?l([[n.f[0],e.args[0]]],r):r}if(s=t,Array.isArray(s)||"or"===s.prim){var i=Pe(t),o=function(t){var e=ht(i[t]);if("or"===Ae(i[t])){var r=Be(i[t]);return e.f?l([[e.f[0],i[t]]],r):r}return e.f?[[e.f[0],i[t]]]:[]};return l(o(0),o(1))}var s;return[]}function Fe(t,e){var r=Me(t,"parameter").args[0];Ie(r,!0);var n=Me(t,"storage").args[0];Ie(n);var i={prim:"pair",args:[s(s({},r),{annots:["@parameter"]}),s(s({},n),{annots:["@storage"]})]},o=Me(t,"code").args[0],a=Le(o,[i],s(s({},e),{contract:t}));if("failed"in a)return a;var u={prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},n]};try{ke(a,[u])}catch(t){throw t instanceof nt?new Te(o,a,t.message):t}return a}function He(t,e,r){Ie(e),je(t,e,r||null)}function Ve(t,e,r){var n,i,o,s;try{for(var a=u(e),c=a.next();!c.done;c=a.next()){Ie(c.value)}}catch(t){n={error:t}}finally{try{c&&!c.done&&(i=a.return)&&i.call(a)}finally{if(n)throw n.error}}if(void 0!==(null==r?void 0:r.contract))try{for(var l=u(["parameter","storage"]),f=l.next();!f.done;f=l.next()){var h=f.value;Ie(Me(r.contract,h).args[0])}}catch(t){o={error:t}}finally{try{f&&!f.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return Le(t,e,r||null)}function Ke(t,e,r){var n,i,o,s;if(void 0===r&&(r=!1),Array.isArray(t)){try{for(var a=u(t),c=a.next();!c.done;c=a.next()){Ie(c.value)}}catch(t){n={error:t}}finally{try{c&&!c.done&&(i=a.return)&&i.call(a)}finally{if(n)throw n.error}}try{for(var l=u(e),f=l.next();!f.done;f=l.next()){Ie(f.value)}}catch(t){o={error:t}}finally{try{f&&!f.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}}else Ie(t),Ie(e);Re(t,e,r)}function Ge(t,e){void 0===e&&(e=!1);try{return Ie(t,e),!0}catch(t){return!1}}function qe(t,e){try{return Fe(t,e)}catch(t){return null}}function ze(t,e,r){try{return He(t,e,r),!0}catch(t){return!1}}function We(t,e,r){void 0===r&&(r=!1);try{return Ke(t,e,r),!0}catch(t){return!1}}var Ye=function(){function t(t,e){this.contract=t,this.ctx=s({contract:t},e),this.output=Fe(t,this.ctx)}return t.parse=function(e,r){var n=new K(r),i="string"==typeof e?n.parseScript(e):n.parseJSON(e);if(null===i)throw new Error("empty contract");if(Gt(i))return new t(i,r)},t.parseTypeExpression=function(t,e){var r=new K(e),n="string"==typeof t?r.parseScript(t):r.parseJSON(t);if(null===n)throw new Error("empty type expression");if(Ht(n)&&Ie(n))return n;throw void 0},t.parseDataExpression=function(t,e){var r=new K(e),n="string"==typeof t?r.parseScript(t):r.parseJSON(t);if(null===n)throw new Error("empty data expression");if(Kt(n))return n;throw void 0},t.prototype.section=function(t){return Me(this.contract,t)},t.prototype.entryPoints=function(){return Be(this.contract)},t.prototype.entryPoint=function(t){return Ue(this.contract,t)},t.prototype.assertDataValid=function(t,e){He(t,e,this.ctx)},t.prototype.isDataValid=function(t,e){return ze(t,e,this.ctx)},t.prototype.assertParameterValid=function(t,e){var r=this.entryPoint(t||void 0);if(null===r)throw new Error("contract has no entrypoint named "+t);this.assertDataValid(e,r)},t.prototype.isParameterValid=function(t,e){try{return this.assertParameterValid(t,e),!0}catch(t){return!1}},t.prototype.functionType=function(t,e){return Ve(t,e,this.ctx)},t}(),Je=new Ye([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);function $e(t){return"failed"in t?"[FAILED: "+Y(t.failed)+"]":t.map((function(t,e){var r=ht(t);return"["+e+(r.v?"/"+r.v[0]:"")+"]: "+Y(t)})).join("\n")}function Xe(t,e){return function(r){var i;if(!Array.isArray(r)||t){var o=null===(i=r.op[n])||void 0===i?void 0:i.macro,s=(o?"Macro":"Op")+": "+(o?Y(o,void 0,!0)+" / ":"")+Y(r.op)+"\nInput:\n"+$e(r.in)+"\nOutput:\n"+$e(r.out)+"\n";e(s)}}}function Ze(t){var e;if(t instanceof Te){var r=null===(e=t.val[n])||void 0===e?void 0:e.macro;return(r?"Macro":"Op")+": "+(r?Y(r,void 0,!0)+" / ":"")+Y(t.val)+"\nStack:\n"+$e(t.stackState)+"\n"}return t instanceof ot?"Type: "+(Array.isArray(t.val)?"["+t.val.map((function(t,e){return"["+e+"]: "+Y(t)})).join("; ")+"]":Y(t.val))+"\n"+(t.data?"Data: "+Y(t.data)+"\n":"")+"\n":"Value: "+Y(t.val)}var Qe={commitHash:"672d0dd2a20104bf148e55a78550ca2abda4e652",version:"9.1.1"}},function(t,e,r){"use strict";var n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.PollingSubscribeProvider=void 0;var o=r(78),s=r(57),a=r(277),u=r(278),c=function(t){return o.from(t.rpc.getBlock()).pipe(s.first())},l=function(){function t(t,e){var r=this;void 0===e&&(e=2e4),this.context=t,this.POLL_INTERVAL=e,this.newBlock$=o.timer(0,this.POLL_INTERVAL).pipe(s.map((function(){return r.context})),s.switchMap(c),s.distinctUntilKeyChanged("hash"),s.publishReplay(),s.refCount())}return t.prototype.subscribe=function(t){return new u.ObservableSubscription(this.newBlock$.pipe(s.pluck("hash")),this.context.config.shouldObservableSubscriptionRetry,this.context.config.observableSubscriptionRetryFunction)},t.prototype.subscribeOperation=function(t){return new u.ObservableSubscription(this.newBlock$.pipe(function(t){return s.concatMap((function(e){return new o.Observable((function(r){var o,s,u,c,l,f;try{for(var h=i(e.operations),p=h.next();!p.done;p=h.next()){var d=p.value;try{for(var y=(u=void 0,i(d)),v=y.next();!v.done;v=y.next()){var b=v.value;try{for(var g=(l=void 0,i(b.contents)),m=g.next();!m.done;m=g.next()){var w=m.value;a.evaluateFilter(n({hash:b.hash},w),t)&&r.next(n({hash:b.hash},w))}}catch(t){l={error:t}}finally{try{m&&!m.done&&(f=g.return)&&f.call(g)}finally{if(l)throw l.error}}}}catch(t){u={error:t}}finally{try{v&&!v.done&&(c=y.return)&&c.call(y)}finally{if(u)throw u.error}}}}catch(t){o={error:t}}finally{try{p&&!p.done&&(s=h.return)&&s.call(h)}finally{if(o)throw o.error}}r.complete()}))}))}(t)),this.context.config.shouldObservableSubscriptionRetry,this.context.config.observableSubscriptionRetryFunction)},t}();e.PollingSubscribeProvider=l},function(t,e,r){"use strict";t.exports=function(t,e){e||(e={}),"function"==typeof e&&(e={cmp:e});var r,n="boolean"==typeof e.cycles&&e.cycles,i=e.cmp&&(r=e.cmp,function(t){return function(e,n){var i={key:e,value:t[e]},o={key:n,value:t[n]};return r(i,o)}}),o=[];return function t(e){if(e&&e.toJSON&&"function"==typeof e.toJSON&&(e=e.toJSON()),void 0!==e){if("number"==typeof e)return isFinite(e)?""+e:"null";if("object"!=typeof e)return JSON.stringify(e);var r,s;if(Array.isArray(e)){for(s="[",r=0;r0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},s=this&&this.__spread||function(){for(var t=[],e=0;e=0)return this._url=this._parseUrl(e.headers.location),this._method="GET",this._loweredHeaders["content-type"]&&(delete this._headers[this._loweredHeaders["content-type"]],delete this._loweredHeaders["content-type"]),null!=this._headers["Content-Type"]&&delete this._headers["Content-Type"],delete this._headers["Content-Length"],this.upload._reset(),this._finalizeHeaders(),void this._sendHxxpRequest();this._response=e,this._response.on("data",(function(t){return n._onHttpResponseData(e,t)})),this._response.on("end",(function(){return n._onHttpResponseEnd(e)})),this._response.on("close",(function(){return n._onHttpResponseClose(e)})),this.responseUrl=this._url.href.split("#")[0],this.status=e.statusCode,this.statusText=a.STATUS_CODES[this.status],this._parseResponseHeaders(e);var i=this._responseHeaders["content-length"]||"";this._totalBytes=+i,this._lengthComputable=!!i,this._setReadyState(r.HEADERS_RECEIVED)}},r.prototype._onHttpResponseData=function(t,e){this._response===t&&(this._responseParts.push(new n(e)),this._loadedBytes+=e.length,this.readyState!==r.LOADING&&this._setReadyState(r.LOADING),this._dispatchProgress("progress"))},r.prototype._onHttpResponseEnd=function(t){this._response===t&&(this._parseResponse(),this._request=null,this._response=null,this._setReadyState(r.DONE),this._dispatchProgress("load"),this._dispatchProgress("loadend"))},r.prototype._onHttpResponseClose=function(t){if(this._response===t){var e=this._request;this._setError(),e.abort(),this._setReadyState(r.DONE),this._dispatchProgress("error"),this._dispatchProgress("loadend")}},r.prototype._onHttpTimeout=function(t){this._request===t&&(this._setError(),t.abort(),this._setReadyState(r.DONE),this._dispatchProgress("timeout"),this._dispatchProgress("loadend"))},r.prototype._onHttpRequestError=function(t,e){this._request===t&&(this._setError(),t.abort(),this._setReadyState(r.DONE),this._dispatchProgress("error"),this._dispatchProgress("loadend"))},r.prototype._dispatchProgress=function(t){var e=new r.ProgressEvent(t);e.lengthComputable=this._lengthComputable,e.loaded=this._loadedBytes,e.total=this._totalBytes,this.dispatchEvent(e)},r.prototype._setError=function(){this._request=null,this._response=null,this._responseHeaders=null,this._responseParts=null},r.prototype._parseUrl=function(t,e,r){var n=null==this.nodejsBaseUrl?t:l.resolve(this.nodejsBaseUrl,t),i=l.parse(n,!1,!0);i.hash=null;var o=(i.auth||"").split(":"),s=o[0],a=o[1];return(s||a||e||r)&&(i.auth=(e||s||"")+":"+(r||a||"")),i},r.prototype._parseResponseHeaders=function(t){for(var e in this._responseHeaders={},t.headers){var r=e.toLowerCase();this._privateHeaders[r]||(this._responseHeaders[r]=t.headers[e])}null!=this._mimeOverride&&(this._responseHeaders["content-type"]=this._mimeOverride)},r.prototype._parseResponse=function(){var t=n.concat(this._responseParts);switch(this._responseParts=null,this.responseType){case"json":this.responseText=null;try{this.response=JSON.parse(t.toString("utf-8"))}catch(t){this.response=null}return;case"buffer":return this.responseText=null,void(this.response=t);case"arraybuffer":this.responseText=null;for(var e=new ArrayBuffer(t.length),r=new Uint8Array(e),i=0;i0?s-4:s;for(r=0;r>16&255,u[l++]=e>>8&255,u[l++]=255&e;2===a&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,u[l++]=255&e);1===a&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,u[l++]=e>>8&255,u[l++]=255&e);return u},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],s=16383,a=0,u=r-i;au?u:a+s));1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,u=s.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function l(t,e,r){for(var i,o,s=[],a=e;a>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e){e.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,u=(1<>1,l=-7,f=r?i-1:0,h=r?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-l)-1,p>>=-l,l+=a;l>0;o=256*o+t[e+f],f+=h,l-=8);for(s=o&(1<<-l)-1,o>>=-l,l+=n;l>0;s=256*s+t[e+f],f+=h,l-=8);if(0===o)o=1-c;else{if(o===u)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,n),o-=c}return(p?-1:1)*s*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var s,a,u,c=8*o-i-1,l=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,d=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=l):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+f>=1?h/u:h*Math.pow(2,1-f))*u>=2&&(s++,u/=2),s+f>=l?(a=0,s=l):s+f>=1?(a=(e*u-1)*Math.pow(2,i),s+=f):(a=e*Math.pow(2,f-1)*Math.pow(2,i),s=0));i>=8;t[r+p]=255&a,p+=d,a/=256,i-=8);for(s=s<0;t[r+p]=255&s,p+=d,s/=256,c-=8);t[r+p-d]|=128*y}},function(t,e,r){(function(e,n,i){var o=r(119),s=r(44),a=r(120),u=r(70),c=r(171),l=a.IncomingMessage,f=a.readyStates;var h=t.exports=function(t){var r,n=this;u.Writable.call(n),n._opts=t,n._body=[],n._headers={},t.auth&&n.setHeader("Authorization","Basic "+new e(t.auth).toString("base64")),Object.keys(t.headers).forEach((function(e){n.setHeader(e,t.headers[e])}));var i=!0;if("disable-fetch"===t.mode||"requestTimeout"in t&&!o.abortController)i=!1,r=!0;else if("prefer-streaming"===t.mode)r=!1;else if("allow-wrong-content-type"===t.mode)r=!o.overrideMimeType;else{if(t.mode&&"default"!==t.mode&&"prefer-fast"!==t.mode)throw new Error("Invalid value for opts.mode");r=!0}n._mode=function(t,e){return o.fetch&&e?"fetch":o.mozchunkedarraybuffer?"moz-chunked-arraybuffer":o.msstream?"ms-stream":o.arraybuffer&&t?"arraybuffer":o.vbArray&&t?"text:vbarray":"text"}(r,i),n._fetchTimer=null,n.on("finish",(function(){n._onFinish()}))};s(h,u.Writable),h.prototype.setHeader=function(t,e){var r=t.toLowerCase();-1===p.indexOf(r)&&(this._headers[r]={name:t,value:e})},h.prototype.getHeader=function(t){var e=this._headers[t.toLowerCase()];return e?e.value:null},h.prototype.removeHeader=function(t){delete this._headers[t.toLowerCase()]},h.prototype._onFinish=function(){var t=this;if(!t._destroyed){var r=t._opts,s=t._headers,a=null;"GET"!==r.method&&"HEAD"!==r.method&&(a=o.arraybuffer?c(e.concat(t._body)):o.blobConstructor?new n.Blob(t._body.map((function(t){return c(t)})),{type:(s["content-type"]||{}).value||""}):e.concat(t._body).toString());var u=[];if(Object.keys(s).forEach((function(t){var e=s[t].name,r=s[t].value;Array.isArray(r)?r.forEach((function(t){u.push([e,t])})):u.push([e,r])})),"fetch"===t._mode){var l=null;if(o.abortController){var h=new AbortController;l=h.signal,t._fetchAbortController=h,"requestTimeout"in r&&0!==r.requestTimeout&&(t._fetchTimer=n.setTimeout((function(){t.emit("requestTimeout"),t._fetchAbortController&&t._fetchAbortController.abort()}),r.requestTimeout))}n.fetch(t._opts.url,{method:t._opts.method,headers:u,body:a||void 0,mode:"cors",credentials:r.withCredentials?"include":"same-origin",signal:l}).then((function(e){t._fetchResponse=e,t._connect()}),(function(e){n.clearTimeout(t._fetchTimer),t._destroyed||t.emit("error",e)}))}else{var p=t._xhr=new n.XMLHttpRequest;try{p.open(t._opts.method,t._opts.url,!0)}catch(e){return void i.nextTick((function(){t.emit("error",e)}))}"responseType"in p&&(p.responseType=t._mode.split(":")[0]),"withCredentials"in p&&(p.withCredentials=!!r.withCredentials),"text"===t._mode&&"overrideMimeType"in p&&p.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in r&&(p.timeout=r.requestTimeout,p.ontimeout=function(){t.emit("requestTimeout")}),u.forEach((function(t){p.setRequestHeader(t[0],t[1])})),t._response=null,p.onreadystatechange=function(){switch(p.readyState){case f.LOADING:case f.DONE:t._onXHRProgress()}},"moz-chunked-arraybuffer"===t._mode&&(p.onprogress=function(){t._onXHRProgress()}),p.onerror=function(){t._destroyed||t.emit("error",new Error("XHR error"))};try{p.send(a)}catch(e){return void i.nextTick((function(){t.emit("error",e)}))}}}},h.prototype._onXHRProgress=function(){var t=this;(function(t){try{var e=t.status;return null!==e&&0!==e}catch(t){return!1}})(t._xhr)&&!t._destroyed&&(t._response||t._connect(),t._response._onXHRProgress())},h.prototype._connect=function(){var t=this;t._destroyed||(t._response=new l(t._xhr,t._fetchResponse,t._mode,t._fetchTimer),t._response.on("error",(function(e){t.emit("error",e)})),t.emit("response",t._response))},h.prototype._write=function(t,e,r){this._body.push(t),r()},h.prototype.abort=h.prototype.destroy=function(){var t=this;t._destroyed=!0,n.clearTimeout(t._fetchTimer),t._response&&(t._response._destroyed=!0),t._xhr?t._xhr.abort():t._fetchAbortController&&t._fetchAbortController.abort()},h.prototype.end=function(t,e,r){"function"==typeof t&&(r=t,t=void 0),u.Writable.prototype.end.call(this,t,e,r)},h.prototype.flushHeaders=function(){},h.prototype.setTimeout=function(){},h.prototype.setNoDelay=function(){},h.prototype.setSocketKeepAlive=function(){};var p=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]}).call(this,r(13).Buffer,r(17),r(22))},function(t,e){},function(t,e,r){"use strict";var n=r(104).Buffer,i=r(165);t.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r},t.prototype.concat=function(t){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var e,r,i,o=n.allocUnsafe(t>>>0),s=this.head,a=0;s;)e=s.data,r=o,i=a,e.copy(r,i),a+=s.data.length,s=s.next;return o},t}(),i&&i.inspect&&i.inspect.custom&&(t.exports.prototype[i.inspect.custom]=function(){var t=i.inspect({length:this.length});return this.constructor.name+" "+t})},function(t,e){},function(t,e,r){(function(t){var n=void 0!==t&&t||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new o(i.call(setTimeout,n,arguments),clearTimeout)},e.setInterval=function(){return new o(i.call(setInterval,n,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(n,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},r(167),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,r(17))},function(t,e,r){(function(t,e){!function(t,r){"use strict";if(!t.setImmediate){var n,i,o,s,a,u=1,c={},l=!1,f=t.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(t);h=h&&h.setTimeout?h:t,"[object process]"==={}.toString.call(t.process)?n=function(t){e.nextTick((function(){d(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,r=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=r,e}}()?t.MessageChannel?((o=new MessageChannel).port1.onmessage=function(t){d(t.data)},n=function(t){o.port2.postMessage(t)}):f&&"onreadystatechange"in f.createElement("script")?(i=f.documentElement,n=function(t){var e=f.createElement("script");e.onreadystatechange=function(){d(t),e.onreadystatechange=null,i.removeChild(e),e=null},i.appendChild(e)}):n=function(t){setTimeout(d,0,t)}:(s="setImmediate$"+Math.random()+"$",a=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(s)&&d(+e.data.slice(s.length))},t.addEventListener?t.addEventListener("message",a,!1):t.attachEvent("onmessage",a),n=function(e){t.postMessage(s+e,"*")}),h.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),r=0;r= 0x80 (not a basic code point)","invalid-input":"Invalid input"},d=Math.floor,y=String.fromCharCode;function v(t){throw new RangeError(p[t])}function b(t,e){for(var r=t.length,n=[];r--;)n[r]=e(t[r]);return n}function g(t,e){var r=t.split("@"),n="";return r.length>1&&(n=r[0]+"@",t=r[1]),n+b((t=t.replace(h,".")).split("."),e).join(".")}function m(t){for(var e,r,n=[],i=0,o=t.length;i=55296&&e<=56319&&i65535&&(e+=y((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+=y(t)})).join("")}function _(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function E(t,e,r){var n=0;for(t=r?d(t/700):t>>1,t+=d(t/e);t>455;n+=c)t=d(t/35);return d(n+36*t/(t+38))}function O(t){var e,r,n,i,o,s,a,l,f,h,p,y=[],b=t.length,g=0,m=128,_=72;for((r=t.lastIndexOf("-"))<0&&(r=0),n=0;n=128&&v("not-basic"),y.push(t.charCodeAt(n));for(i=r>0?r+1:0;i=b&&v("invalid-input"),((l=(p=t.charCodeAt(i++))-48<10?p-22:p-65<26?p-65:p-97<26?p-97:c)>=c||l>d((u-g)/s))&&v("overflow"),g+=l*s,!(l<(f=a<=_?1:a>=_+26?26:a-_));a+=c)s>d(u/(h=c-f))&&v("overflow"),s*=h;_=E(g-o,e=y.length+1,0==o),d(g/e)>u-m&&v("overflow"),m+=d(g/e),g%=e,y.splice(g++,0,m)}return w(y)}function S(t){var e,r,n,i,o,s,a,l,f,h,p,b,g,w,O,S=[];for(b=(t=m(t)).length,e=128,r=0,o=72,s=0;s=e&&pd((u-r)/(g=n+1))&&v("overflow"),r+=(a-e)*g,e=a,s=0;su&&v("overflow"),p==e){for(l=r,f=c;!(l<(h=f<=o?1:f>=o+26?26:f-o));f+=c)O=l-h,w=c-h,S.push(y(_(h+O%w,0))),l=d(O/w);S.push(y(_(l,0))),o=E(r,g,n==i),r=0,++n}++r,++e}return S.join("")}a={version:"1.4.1",ucs2:{decode:m,encode:w},decode:O,encode:S,toASCII:function(t){return g(t,(function(t){return f.test(t)?"xn--"+S(t):t}))},toUnicode:function(t){return g(t,(function(t){return l.test(t)?O(t.slice(4).toLowerCase()):t}))}},void 0===(i=function(){return a}.call(e,r,e,t))||(t.exports=i)}()}).call(this,r(175)(t),r(17))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,r){"use strict";t.exports={isString:function(t){return"string"==typeof t},isObject:function(t){return"object"==typeof t&&null!==t},isNull:function(t){return null===t},isNullOrUndefined:function(t){return null==t}}},function(t,e,r){"use strict";e.decode=e.parse=r(178),e.encode=e.stringify=r(179)},function(t,e,r){"use strict";function n(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,e,r,o){e=e||"&",r=r||"=";var s={};if("string"!=typeof t||0===t.length)return s;var a=/\+/g;t=t.split(e);var u=1e3;o&&"number"==typeof o.maxKeys&&(u=o.maxKeys);var c=t.length;u>0&&c>u&&(c=u);for(var l=0;l=0?(f=y.substr(0,v),h=y.substr(v+1)):(f=y,h=""),p=decodeURIComponent(f),d=decodeURIComponent(h),n(s,p)?i(s[p])?s[p].push(d):s[p]=[s[p],d]:s[p]=d}return s};var i=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)}},function(t,e,r){"use strict";var n=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,e,r,a){return e=e||"&",r=r||"=",null===t&&(t=void 0),"object"==typeof t?o(s(t),(function(s){var a=encodeURIComponent(n(s))+r;return i(t[s])?o(t[s],(function(t){return a+encodeURIComponent(n(t))})).join(e):a+encodeURIComponent(n(t[s]))})).join(e):a?encodeURIComponent(n(a))+r+encodeURIComponent(n(t)):""};var i=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function o(t,e){if(t.map)return t.map(e);for(var r=[],n=0;n-1}},function(t,e,r){var n=r(83);t.exports=function(t,e){var r=this.__data__,i=n(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this}},function(t,e,r){var n=r(112)(r(111),"Map");t.exports=n},function(t,e,r){var n=r(84);t.exports=function(t){var e=n(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,r){var n=r(84);t.exports=function(t){return n(this,t).get(t)}},function(t,e,r){var n=r(84);t.exports=function(t){return n(this,t).has(t)}},function(t,e,r){var n=r(84);t.exports=function(t,e){var r=n(this,t),i=r.size;return r.set(t,e),this.size+=r.size==i?0:1,this}},function(t,e,r){var n=r(223);t.exports=function(t){return null==t?"":n(t)}},function(t,e,r){var n=r(110),i=r(224),o=r(108),s=r(109),a=n?n.prototype:void 0,u=a?a.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(o(e))return i(e,t)+"";if(s(e))return u?u.call(e):"";var r=e+"";return"0"==r&&1/e==-Infinity?"-0":r}},function(t,e){t.exports=function(t,e){for(var r=-1,n=null==t?0:t.length,i=Array(n);++r-1&&t%1==0&&t0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},s=this&&this.__spread||function(){for(var t=[],e=0;e0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},l=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.RPCEstimateProvider=void 0;var h=r(25),p=r(53),d=r(75),y=r(86),v=r(45),b=r(26),g=r(236),m=r(87),w=function(t,e){return{fee:void 0===t.fee?e.fee:t.fee,gasLimit:void 0===t.gasLimit?e.gasLimit:t.gasLimit,storageLimit:void 0===t.storageLimit?e.storageLimit:t.storageLimit}},_=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ALLOCATION_STORAGE=257,e.ORIGINATION_STORAGE=257,e.OP_SIZE_REVEAL=128,e}return i(e,t),e.prototype.getAccountLimits=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,o;return a(this,(function(s){switch(s.label){case 0:return[4,this.rpc.getBalance(t)];case 1:return e=s.sent(),[4,this.rpc.getConstants()];case 2:return r=s.sent(),n=r.hard_gas_limit_per_operation,i=r.hard_storage_limit_per_operation,o=r.cost_per_byte,[2,{fee:0,gasLimit:n.toNumber(),storageLimit:Math.floor(p.default.min(e.dividedBy(o),i).toNumber())}]}}))}))},e.prototype.getEstimationPropertiesFromOperationContent=function(t,e,r){var n=this,i=v.flattenOperationResult({contents:[t]}),o=0,s=0,a=0;return i.forEach((function(t){a+="originated_contracts"in t&&void 0!==t.originated_contracts?t.originated_contracts.length*n.ORIGINATION_STORAGE:0,a+="allocated_destination_contract"in t?n.ALLOCATION_STORAGE:0,o+=Number(t.consumed_gas)||0,s+=Number(t.consumed_milligas)||0,a+="paid_storage_size_diff"in t&&Number(t.paid_storage_size_diff)||0})),0!==o&&0===s&&(s=1e3*o),b.isOpWithFee(t)?{milligasLimit:s||0,storageLimit:Number(a||0),opSize:e,minimalFeePerStorageByteMutez:r.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:e,minimalFeePerStorageByteMutez:r.toNumber(),baseFeeMutez:0}},e.prototype.prepareEstimate=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,o,s,u,c,f,h,p,d,y=this;return a(this,(function(a){switch(a.label){case 0:return[4,this.prepareOperation(t)];case 1:return e=a.sent(),[4,this.forge(e)];case 2:return r=a.sent(),n=r.opbytes,i=r.opOb,o=i.branch,s=i.contents,d={operation:{branch:o,contents:s,signature:"edsigtkpiSSschcaCt9pUVrpNPf7TTcgvgDEDD6NCEHMy8NNQJCGnMfLZzYoQj74yLjo9wx6MPVV29CvVzgi7qEcEUok3k7AuMg"}},[4,this.rpc.getChainId()];case 3:return d.chain_id=a.sent(),u=d,[4,this.simulate(u)];case 4:return c=a.sent().opResponse,[4,this.rpc.getConstants()];case 5:if(f=a.sent().cost_per_byte,(h=l(v.flattenErrors(c,"backtracked"),v.flattenErrors(c))).length)throw new v.TezosOperationError(h);return p=1,Array.isArray(t.operation)&&t.operation.length>1&&(p="reveal"===c.contents[0].kind?t.operation.length-1:t.operation.length),[2,c.contents.map((function(t){return y.getEstimationPropertiesFromOperationContent(t,"reveal"===t.kind?y.OP_SIZE_REVEAL/2:n.length/2/p,f)}))]}}))}))},e.prototype.originate=function(t){var e=t.fee,r=t.storageLimit,n=t.gasLimit,i=u(t,["fee","storageLimit","gasLimit"]);return s(this,void 0,void 0,(function(){var t,s,u,c,l,f,h,p;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return t=a.sent(),[4,this.getAccountLimits(t)];case 2:return s=a.sent(),c=m.createOriginationOperation,[4,this.context.parser.prepareCodeOrigination(o(o({},i),w({fee:e,storageLimit:r,gasLimit:n},s)))];case 3:return[4,c.apply(void 0,[a.sent()])];case 4:return u=a.sent(),[4,this.isRevealOpNeeded([u],t)];case 5:return(l=a.sent())?[4,this.addRevealOp([u],t)]:[3,7];case 6:return h=a.sent(),[3,8];case 7:h=u,a.label=8;case 8:return f=h,[4,this.prepareEstimate({operation:f,source:t})];case 9:return p=a.sent(),l&&p.shift(),[2,g.Estimate.createEstimateInstanceFromProperties(p)]}}))}))},e.prototype.transfer=function(t){var e=t.fee,r=t.storageLimit,n=t.gasLimit,i=u(t,["fee","storageLimit","gasLimit"]);return s(this,void 0,void 0,(function(){var t,s,u,c,l,f,h;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return t=a.sent(),[4,this.getAccountLimits(t)];case 2:return s=a.sent(),[4,m.createTransferOperation(o(o({},i),w({fee:e,storageLimit:r,gasLimit:n},s)))];case 3:return u=a.sent(),[4,this.isRevealOpNeeded([u],t)];case 4:return(c=a.sent())?[4,this.addRevealOp([u],t)]:[3,6];case 5:return f=a.sent(),[3,7];case 6:f=u,a.label=7;case 7:return l=f,[4,this.prepareEstimate({operation:l,source:t})];case 8:return h=a.sent(),c&&h.shift(),[2,g.Estimate.createEstimateInstanceFromProperties(h)]}}))}))},e.prototype.setDelegate=function(t){var e=t.fee,r=t.gasLimit,n=t.storageLimit,i=u(t,["fee","gasLimit","storageLimit"]);return s(this,void 0,void 0,(function(){var t,s,u,c,l,f,h,p;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return t=a.sent(),s=i.source||t,[4,this.getAccountLimits(s)];case 2:return u=a.sent(),[4,m.createSetDelegateOperation(o(o({},i),w({fee:e,storageLimit:n,gasLimit:r},u)))];case 3:return c=a.sent(),[4,this.isRevealOpNeeded([c],t)];case 4:return(l=a.sent())?[4,this.addRevealOp([c],t)]:[3,6];case 5:return h=a.sent(),[3,7];case 6:h=c,a.label=7;case 7:return f=h,[4,this.prepareEstimate({operation:f,source:t})];case 8:return p=a.sent(),l&&p.shift(),[2,g.Estimate.createEstimateInstanceFromProperties(p)]}}))}))},e.prototype.batch=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,s,u,c,l,p,d,y,v,b,_,E,O,S,x;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return e=a.sent(),r=[],[4,this.getAccountLimits(e)];case 2:n=a.sent(),a.label=3;case 3:a.trys.push([3,16,17,18]),i=f(t),s=i.next(),a.label=4;case 4:if(s.done)return[3,15];switch(u=s.value,u.kind){case h.OpKind.TRANSACTION:return[3,5];case h.OpKind.ORIGINATION:return[3,7];case h.OpKind.DELEGATION:return[3,10];case h.OpKind.ACTIVATION:return[3,12]}return[3,13];case 5:return l=(c=r).push,[4,m.createTransferOperation(o(o({},u),w(u,n)))];case 6:return l.apply(c,[a.sent()]),[3,14];case 7:return d=(p=r).push,y=m.createOriginationOperation,[4,this.context.parser.prepareCodeOrigination(o(o({},u),w(u,n)))];case 8:return[4,y.apply(void 0,[a.sent()])];case 9:return d.apply(p,[a.sent()]),[3,14];case 10:return b=(v=r).push,[4,m.createSetDelegateOperation(o(o({},u),w(u,n)))];case 11:return b.apply(v,[a.sent()]),[3,14];case 12:return r.push(o(o({},u),n)),[3,14];case 13:throw new Error("Unsupported operation kind: "+u.kind);case 14:return s=i.next(),[3,4];case 15:return[3,18];case 16:return _=a.sent(),S={error:_},[3,18];case 17:try{s&&!s.done&&(x=i.return)&&x.call(i)}finally{if(S)throw S.error}return[7];case 18:return[4,this.isRevealOpNeeded(r,e)];case 19:return a.sent()?[4,this.addRevealOp(r,e)]:[3,21];case 20:return E=a.sent(),[3,22];case 21:E=r,a.label=22;case 22:return r=E,[4,this.prepareEstimate({operation:r,source:e})];case 23:return O=a.sent(),[2,g.Estimate.createArrayEstimateInstancesFromProperties(O)]}}))}))},e.prototype.registerDelegate=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,s,u,c;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return e=a.sent(),[4,this.getAccountLimits(e)];case 2:return r=a.sent(),[4,m.createRegisterDelegateOperation(o(o({},t),r),e)];case 3:return n=a.sent(),[4,this.isRevealOpNeeded([n],e)];case 4:return(i=a.sent())?[4,this.addRevealOp([n],e)]:[3,6];case 5:return u=a.sent(),[3,7];case 6:u=n,a.label=7;case 7:return s=u,[4,this.prepareEstimate({operation:s,source:e})];case 8:return c=a.sent(),i&&c.shift(),[2,g.Estimate.createEstimateInstanceFromProperties(c)]}}))}))},e.prototype.reveal=function(t){return s(this,void 0,void 0,(function(){var e,r,n,i,s,u;return a(this,(function(a){switch(a.label){case 0:return[4,this.signer.publicKeyHash()];case 1:return e=a.sent(),[4,this.isAccountRevealRequired(e)];case 2:return a.sent()?[4,this.getAccountLimits(e)]:[3,7];case 3:return r=a.sent(),i=m.createRevealOperation,s=[o(o({},t),r),e],[4,this.signer.publicKey()];case 4:return[4,i.apply(void 0,s.concat([a.sent()]))];case 5:return n=a.sent(),[4,this.prepareEstimate({operation:n,source:e})];case 6:return u=a.sent(),[2,g.Estimate.createEstimateInstanceFromProperties(u)];case 7:return[2]}}))}))},e.prototype.addRevealOp=function(t,e){return s(this,void 0,void 0,(function(){var r,n,i,s;return a(this,(function(a){switch(a.label){case 0:return n=(r=t).unshift,i=m.createRevealOperation,s=[o({fee:d.DEFAULT_FEE.REVEAL,gasLimit:d.DEFAULT_GAS_LIMIT.REVEAL,storageLimit:d.DEFAULT_STORAGE_LIMIT.REVEAL}),e],[4,this.signer.publicKey()];case 1:return[4,i.apply(void 0,s.concat([a.sent()]))];case 2:return n.apply(r,[a.sent()]),[2,t]}}))}))},e}(y.OperationEmitter);e.RPCEstimateProvider=_},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Estimate=void 0;var n=100,i=function(){function t(t,e,r,i,o){void 0===o&&(o=n),this._milligasLimit=t,this._storageLimit=e,this.opSize=r,this.minimalFeePerStorageByteMutez=i,this.baseFeeMutez=o}return Object.defineProperty(t.prototype,"burnFeeMutez",{get:function(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"storageLimit",{get:function(){var t=Math.max(Number(this._storageLimit),0);return t>0?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"gasLimit",{get:function(){return this.roundUp(Number(this._milligasLimit)/1e3+100)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"operationFeeMutez",{get:function(){return.1*(Number(this._milligasLimit)/1e3+100)+1*Number(this.opSize)},enumerable:!1,configurable:!0}),t.prototype.roundUp=function(t){return Math.ceil(Number(t))},Object.defineProperty(t.prototype,"minimalFeeMutez",{get:function(){return this.roundUp(n+this.operationFeeMutez)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"suggestedFeeMutez",{get:function(){return this.roundUp(this.operationFeeMutez+200)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"usingBaseFeeMutez",{get:function(){return Math.max(Number(this.baseFeeMutez),n)+this.roundUp(this.operationFeeMutez)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"totalCost",{get:function(){return this.minimalFeeMutez+this.burnFeeMutez},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"consumedMilligas",{get:function(){return Number(this._milligasLimit)},enumerable:!1,configurable:!0}),t.createEstimateInstanceFromProperties=function(e){var r,n=0,i=0,o=0,s=0;return e.forEach((function(t){n+=t.milligasLimit,i+=t.storageLimit,o+=t.opSize,s=Math.max(t.minimalFeePerStorageByteMutez,s),t.baseFeeMutez&&(r=r?r+t.baseFeeMutez:t.baseFeeMutez)})),new t(n,i,o,s,r)},t.createArrayEstimateInstancesFromProperties=function(e){return e.map((function(e){return new t(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)}))},t}();e.Estimate=i},function(t,e,r){"use strict";var n=r(14),i=r(238),o=r(248),s=r(249),a=r(254);function u(t){a.call(this,"digest"),this._hash=t}n(u,a),u.prototype._update=function(t){this._hash.update(t)},u.prototype._final=function(){return this._hash.digest()},t.exports=function(t){return"md5"===(t=t.toLowerCase())?new i:"rmd160"===t||"ripemd160"===t?new o:new u(s(t))}},function(t,e,r){"use strict";var n=r(14),i=r(135),o=r(27).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function u(t,e){return t<>>32-e}function c(t,e,r,n,i,o,s){return u(t+(e&r|~e&n)+i+o|0,s)+e|0}function l(t,e,r,n,i,o,s){return u(t+(e&n|r&~n)+i+o|0,s)+e|0}function f(t,e,r,n,i,o,s){return u(t+(e^r^n)+i+o|0,s)+e|0}function h(t,e,r,n,i,o,s){return u(t+(r^(e|~n))+i+o|0,s)+e|0}n(a,i),a.prototype._update=function(){for(var t=s,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);var r=this._a,n=this._b,i=this._c,o=this._d;r=c(r,n,i,o,t[0],3614090360,7),o=c(o,r,n,i,t[1],3905402710,12),i=c(i,o,r,n,t[2],606105819,17),n=c(n,i,o,r,t[3],3250441966,22),r=c(r,n,i,o,t[4],4118548399,7),o=c(o,r,n,i,t[5],1200080426,12),i=c(i,o,r,n,t[6],2821735955,17),n=c(n,i,o,r,t[7],4249261313,22),r=c(r,n,i,o,t[8],1770035416,7),o=c(o,r,n,i,t[9],2336552879,12),i=c(i,o,r,n,t[10],4294925233,17),n=c(n,i,o,r,t[11],2304563134,22),r=c(r,n,i,o,t[12],1804603682,7),o=c(o,r,n,i,t[13],4254626195,12),i=c(i,o,r,n,t[14],2792965006,17),r=l(r,n=c(n,i,o,r,t[15],1236535329,22),i,o,t[1],4129170786,5),o=l(o,r,n,i,t[6],3225465664,9),i=l(i,o,r,n,t[11],643717713,14),n=l(n,i,o,r,t[0],3921069994,20),r=l(r,n,i,o,t[5],3593408605,5),o=l(o,r,n,i,t[10],38016083,9),i=l(i,o,r,n,t[15],3634488961,14),n=l(n,i,o,r,t[4],3889429448,20),r=l(r,n,i,o,t[9],568446438,5),o=l(o,r,n,i,t[14],3275163606,9),i=l(i,o,r,n,t[3],4107603335,14),n=l(n,i,o,r,t[8],1163531501,20),r=l(r,n,i,o,t[13],2850285829,5),o=l(o,r,n,i,t[2],4243563512,9),i=l(i,o,r,n,t[7],1735328473,14),r=f(r,n=l(n,i,o,r,t[12],2368359562,20),i,o,t[5],4294588738,4),o=f(o,r,n,i,t[8],2272392833,11),i=f(i,o,r,n,t[11],1839030562,16),n=f(n,i,o,r,t[14],4259657740,23),r=f(r,n,i,o,t[1],2763975236,4),o=f(o,r,n,i,t[4],1272893353,11),i=f(i,o,r,n,t[7],4139469664,16),n=f(n,i,o,r,t[10],3200236656,23),r=f(r,n,i,o,t[13],681279174,4),o=f(o,r,n,i,t[0],3936430074,11),i=f(i,o,r,n,t[3],3572445317,16),n=f(n,i,o,r,t[6],76029189,23),r=f(r,n,i,o,t[9],3654602809,4),o=f(o,r,n,i,t[12],3873151461,11),i=f(i,o,r,n,t[15],530742520,16),r=h(r,n=f(n,i,o,r,t[2],3299628645,23),i,o,t[0],4096336452,6),o=h(o,r,n,i,t[7],1126891415,10),i=h(i,o,r,n,t[14],2878612391,15),n=h(n,i,o,r,t[5],4237533241,21),r=h(r,n,i,o,t[12],1700485571,6),o=h(o,r,n,i,t[3],2399980690,10),i=h(i,o,r,n,t[10],4293915773,15),n=h(n,i,o,r,t[1],2240044497,21),r=h(r,n,i,o,t[8],1873313359,6),o=h(o,r,n,i,t[15],4264355552,10),i=h(i,o,r,n,t[6],2734768916,15),n=h(n,i,o,r,t[13],1309151649,21),r=h(r,n,i,o,t[4],4149444226,6),o=h(o,r,n,i,t[11],3174756917,10),i=h(i,o,r,n,t[2],718787259,15),n=h(n,i,o,r,t[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=o.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t},t.exports=a},function(t,e,r){(e=t.exports=r(136)).Stream=e,e.Readable=e,e.Writable=r(140),e.Duplex=r(55),e.Transform=r(141),e.PassThrough=r(246),e.finished=r(115),e.pipeline=r(247)},function(t,e){},function(t,e,r){"use strict";function n(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){for(var r=0;r0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r}},{key:"concat",value:function(t){if(0===this.length)return s.alloc(0);for(var e,r,n,i=s.allocUnsafe(t>>>0),o=this.head,a=0;o;)e=o.data,r=i,n=a,s.prototype.copy.call(e,r,n),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(t,e){var r;return ti.length?i.length:t;if(o===i.length?n+=i:n+=i.slice(0,t),0==(t-=o)){o===i.length?(++r,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(t){var e=s.allocUnsafe(t),r=this.head,n=1;for(r.data.copy(e),t-=r.data.length;r=r.next;){var i=r.data,o=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,o),0==(t-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,e}},{key:u,value:function(t,e){return a(this,function(t){for(var e=1;e0,(function(t){n||(n=t),t&&s.forEach(c),o||(s.forEach(c),i(n))}))}));return e.reduce(l)}},function(t,e,r){"use strict";var n=r(13).Buffer,i=r(14),o=r(135),s=new Array(16),a=[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],u=[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],c=[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],l=[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],f=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function p(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function d(t,e){return t<>>32-e}function y(t,e,r,n,i,o,s,a){return d(t+(e^r^n)+o+s|0,a)+i|0}function v(t,e,r,n,i,o,s,a){return d(t+(e&r|~e&n)+o+s|0,a)+i|0}function b(t,e,r,n,i,o,s,a){return d(t+((e|~r)^n)+o+s|0,a)+i|0}function g(t,e,r,n,i,o,s,a){return d(t+(e&n|r&~n)+o+s|0,a)+i|0}function m(t,e,r,n,i,o,s,a){return d(t+(e^(r|~n))+o+s|0,a)+i|0}i(p,o),p.prototype._update=function(){for(var t=s,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,p=0|this._e,w=0|this._a,_=0|this._b,E=0|this._c,O=0|this._d,S=0|this._e,x=0;x<80;x+=1){var T,A;x<16?(T=y(r,n,i,o,p,t[a[x]],f[0],c[x]),A=m(w,_,E,O,S,t[u[x]],h[0],l[x])):x<32?(T=v(r,n,i,o,p,t[a[x]],f[1],c[x]),A=g(w,_,E,O,S,t[u[x]],h[1],l[x])):x<48?(T=b(r,n,i,o,p,t[a[x]],f[2],c[x]),A=b(w,_,E,O,S,t[u[x]],h[2],l[x])):x<64?(T=g(r,n,i,o,p,t[a[x]],f[3],c[x]),A=v(w,_,E,O,S,t[u[x]],h[3],l[x])):(T=m(r,n,i,o,p,t[a[x]],f[4],c[x]),A=y(w,_,E,O,S,t[u[x]],h[4],l[x])),r=p,p=o,o=d(i,10),i=n,n=T,w=S,S=O,O=d(E,10),E=_,_=A}var P=this._b+i+O|0;this._b=this._c+o+S|0,this._c=this._d+p+w|0,this._d=this._e+r+_|0,this._e=this._a+n+E|0,this._a=P},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=n.alloc?n.alloc(20):new n(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t},t.exports=p},function(t,e,r){(e=t.exports=function(t){t=t.toLowerCase();var r=e[t];if(!r)throw new Error(t+" is not supported (we accept pull requests)");return new r}).sha=r(250),e.sha1=r(251),e.sha224=r(252),e.sha256=r(142),e.sha384=r(253),e.sha512=r(143)},function(t,e,r){var n=r(14),i=r(56),o=r(27).Buffer,s=[1518500249,1859775393,-1894007588,-899497514],a=new Array(80);function u(){this.init(),this._w=a,i.call(this,64,56)}function c(t){return t<<30|t>>>2}function l(t,e,r,n){return 0===t?e&r|~e&n:2===t?e&r|e&n|r&n:e^r^n}n(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,u=0|this._e,f=0;f<16;++f)r[f]=t.readInt32BE(4*f);for(;f<80;++f)r[f]=r[f-3]^r[f-8]^r[f-14]^r[f-16];for(var h=0;h<80;++h){var p=~~(h/20),d=0|((e=n)<<5|e>>>27)+l(p,i,o,a)+u+r[h]+s[p];u=a,a=o,o=c(i),i=n,n=d}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,r){var n=r(14),i=r(56),o=r(27).Buffer,s=[1518500249,1859775393,-1894007588,-899497514],a=new Array(80);function u(){this.init(),this._w=a,i.call(this,64,56)}function c(t){return t<<5|t>>>27}function l(t){return t<<30|t>>>2}function f(t,e,r,n){return 0===t?e&r|~e&n:2===t?e&r|e&n|r&n:e^r^n}n(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,u=0|this._e,h=0;h<16;++h)r[h]=t.readInt32BE(4*h);for(;h<80;++h)r[h]=(e=r[h-3]^r[h-8]^r[h-14]^r[h-16])<<1|e>>>31;for(var p=0;p<80;++p){var d=~~(p/20),y=c(n)+f(d,i,o,a)+u+r[p]+s[d]|0;u=a,a=o,o=l(i),i=n,n=y}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,r){var n=r(14),i=r(142),o=r(56),s=r(27).Buffer,a=new Array(64);function u(){this.init(),this._w=a,o.call(this,64,56)}n(u,i),u.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},u.prototype._hash=function(){var t=s.allocUnsafe(28);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t},t.exports=u},function(t,e,r){var n=r(14),i=r(143),o=r(56),s=r(27).Buffer,a=new Array(160);function u(){this.init(),this._w=a,o.call(this,128,112)}n(u,i),u.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},u.prototype._hash=function(){var t=s.allocUnsafe(48);function e(e,r,n){t.writeInt32BE(e,n),t.writeInt32BE(r,n+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),t},t.exports=u},function(t,e,r){var n=r(27).Buffer,i=r(255).Transform,o=r(73).StringDecoder;function s(t){i.call(this),this.hashMode="string"==typeof t,this.hashMode?this[t]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(14)(s,i),s.prototype.update=function(t,e,r){"string"==typeof t&&(t=n.from(t,e));var i=this._update(t);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},s.prototype.setAutoPadding=function(){},s.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},s.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},s.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},s.prototype._transform=function(t,e,r){var n;try{this.hashMode?this._update(t):this.push(this._update(t))}catch(t){n=t}finally{r(n)}},s.prototype._flush=function(t){var e;try{this.push(this.__final())}catch(t){e=t}t(e)},s.prototype._finalOrDigest=function(t){var e=this.__final()||n.alloc(0);return t&&(e=this._toString(e,t,!0)),e},s.prototype._toString=function(t,e,r){if(this._decoder||(this._decoder=new o(e),this._encoding=e),this._encoding!==e)throw new Error("can't switch encodings");var n=this._decoder.write(t);return r&&(n+=this._decoder.end()),n},t.exports=s},function(t,e,r){t.exports=i;var n=r(71).EventEmitter;function i(){n.call(this)}r(44)(i,n),i.Readable=r(70),i.Writable=r(256),i.Duplex=r(257),i.Transform=r(258),i.PassThrough=r(259),i.Stream=i,i.prototype.pipe=function(t,e){var r=this;function i(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),t.on("drain",o),t._isStdio||e&&!1===e.end||(r.on("end",a),r.on("close",u));var s=!1;function a(){s||(s=!0,t.end())}function u(){s||(s=!0,"function"==typeof t.destroy&&t.destroy())}function c(t){if(l(),0===n.listenerCount(this,"error"))throw t}function l(){r.removeListener("data",i),t.removeListener("drain",o),r.removeListener("end",a),r.removeListener("close",u),r.removeListener("error",c),t.removeListener("error",c),r.removeListener("end",l),r.removeListener("close",l),t.removeListener("close",l)}return r.on("error",c),t.on("error",c),r.on("end",l),r.on("close",l),t.on("close",l),t.emit("pipe",r),t}},function(t,e,r){t.exports=r(105)},function(t,e,r){t.exports=r(47)},function(t,e,r){t.exports=r(70).Transform},function(t,e,r){t.exports=r(70).PassThrough},function(t,e,r){"use strict";var n=r(261),i=r(27).Buffer;t.exports=function(t){function e(e){var r=e.slice(0,-4),n=e.slice(-4),i=t(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(e){var r=t(e);return n.encode(i.concat([e,r],e.length+4))},decode:function(t){var r=e(n.decode(t));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(t){var r=n.decodeUnsafe(t);if(r)return e(r)}}}},function(t,e,r){var n=r(262);t.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},function(t,e,r){"use strict";var n=r(27).Buffer;t.exports=function(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,l=new Uint8Array(s);t[r];){var f=e[t.charCodeAt(r)];if(255===f)return;for(var h=0,p=s-1;(0!==f||h>>0,l[p]=f%256>>>0,f=f/256>>>0;if(0!==f)throw new Error("Non-zero carry");o=h,r++}if(" "!==t[r]){for(var d=s-o;d!==s&&0===l[d];)d++;var y=n.allocUnsafe(i+(s-d));y.fill(0,0,i);for(var v=i;d!==s;)y[v++]=l[d++];return y}}}return{encode:function(e){if((Array.isArray(e)||e instanceof Uint8Array)&&(e=n.from(e)),!n.isBuffer(e))throw new TypeError("Expected Buffer");if(0===e.length)return"";for(var r=0,i=0,o=0,s=e.length;o!==s&&0===e[o];)o++,r++;for(var c=(s-o)*l+1>>>0,f=new Uint8Array(c);o!==s;){for(var h=e[o],p=0,d=c-1;(0!==h||p>>0,f[d]=h%a>>>0,h=h/a>>>0;if(0!==h)throw new Error("Non-zero carry");i=p,o++}for(var y=c-i;y!==c&&0===f[y];)y++;for(var v=u.repeat(r);y=4294967296&&i++,t[e]=n,t[e+1]=i}function o(t,e,r,n){var i=t[e]+r;r<0&&(i+=4294967296);var o=t[e+1]+n;i>=4294967296&&o++,t[e]=i,t[e+1]=o}function s(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function a(t,e,r,n,s,a){var u=f[s],c=f[s+1],h=f[a],p=f[a+1];i(l,t,e),o(l,t,u,c);var d=l[n]^l[t],y=l[n+1]^l[t+1];l[n]=y,l[n+1]=d,i(l,r,n),d=l[e]^l[r],y=l[e+1]^l[r+1],l[e]=d>>>24^y<<8,l[e+1]=y>>>24^d<<8,i(l,t,e),o(l,t,h,p),d=l[n]^l[t],y=l[n+1]^l[t+1],l[n]=d>>>16^y<<16,l[n+1]=y>>>16^d<<16,i(l,r,n),d=l[e]^l[r],y=l[e+1]^l[r+1],l[e]=y>>>31^d<<1,l[e+1]=d>>>31^y<<1}var u=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),c=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map((function(t){return 2*t}))),l=new Uint32Array(32),f=new Uint32Array(32);function h(t,e){var r=0;for(r=0;r<16;r++)l[r]=t.h[r],l[r+16]=u[r];for(l[24]=l[24]^t.t,l[25]=l[25]^t.t/4294967296,e&&(l[28]=~l[28],l[29]=~l[29]),r=0;r<32;r++)f[r]=s(t.b,4*r);for(r=0;r<12;r++)a(0,8,16,24,c[16*r+0],c[16*r+1]),a(2,10,18,26,c[16*r+2],c[16*r+3]),a(4,12,20,28,c[16*r+4],c[16*r+5]),a(6,14,22,30,c[16*r+6],c[16*r+7]),a(0,10,20,30,c[16*r+8],c[16*r+9]),a(2,12,22,24,c[16*r+10],c[16*r+11]),a(4,14,16,26,c[16*r+12],c[16*r+13]),a(6,8,18,28,c[16*r+14],c[16*r+15]);for(r=0;r<16;r++)t.h[r]=t.h[r]^l[r]^l[r+16]}function p(t,e){if(0===t||t>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(e&&e.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");for(var r={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:t},n=0;n<16;n++)r.h[n]=u[n];var i=e?e.length:0;return r.h[0]^=16842752^i<<8^t,e&&(d(r,e),r.c=128),r}function d(t,e){for(var r=0;r>2]>>8*(3&r);return e}function v(t,e,r){r=r||64,t=n.normalizeInput(t);var i=p(r,e);return d(i,t),y(i)}t.exports={blake2b:v,blake2bHex:function(t,e,r){var i=v(t,e,r);return n.toHex(i)},blake2bInit:p,blake2bUpdate:d,blake2bFinal:y}},function(t,e,r){var n=r(144);function i(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function o(t,e,r,n,i,o){c[t]=c[t]+c[e]+i,c[n]=s(c[n]^c[t],16),c[r]=c[r]+c[n],c[e]=s(c[e]^c[r],12),c[t]=c[t]+c[e]+o,c[n]=s(c[n]^c[t],8),c[r]=c[r]+c[n],c[e]=s(c[e]^c[r],7)}function s(t,e){return t>>>e^t<<32-e}var a=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),u=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),c=new Uint32Array(16),l=new Uint32Array(16);function f(t,e){var r=0;for(r=0;r<8;r++)c[r]=t.h[r],c[r+8]=a[r];for(c[12]^=t.t,c[13]^=t.t/4294967296,e&&(c[14]=~c[14]),r=0;r<16;r++)l[r]=i(t.b,4*r);for(r=0;r<10;r++)o(0,4,8,12,l[u[16*r+0]],l[u[16*r+1]]),o(1,5,9,13,l[u[16*r+2]],l[u[16*r+3]]),o(2,6,10,14,l[u[16*r+4]],l[u[16*r+5]]),o(3,7,11,15,l[u[16*r+6]],l[u[16*r+7]]),o(0,5,10,15,l[u[16*r+8]],l[u[16*r+9]]),o(1,6,11,12,l[u[16*r+10]],l[u[16*r+11]]),o(2,7,8,13,l[u[16*r+12]],l[u[16*r+13]]),o(3,4,9,14,l[u[16*r+14]],l[u[16*r+15]]);for(r=0;r<8;r++)t.h[r]^=c[r]^c[r+8]}function h(t,e){if(!(t>0&&t<=32))throw new Error("Incorrect output length, should be in [1, 32]");var r=e?e.length:0;if(e&&!(r>0&&r<=32))throw new Error("Incorrect key length, should be in [1, 32]");var n={h:new Uint32Array(a),b:new Uint32Array(64),c:0,t:0,outlen:t};return n.h[0]^=16842752^r<<8^t,r>0&&(p(n,e),n.c=64),n}function p(t,e){for(var r=0;r>2]>>8*(3&r)&255;return e}function y(t,e,r){r=r||32,t=n.normalizeInput(t);var i=h(r,e);return p(i,t),d(i)}t.exports={blake2s:y,blake2sHex:function(t,e,r){var i=y(t,e,r);return n.toHex(i)},blake2sInit:h,blake2sUpdate:p,blake2sFinal:d}},function(t,e,r){"use strict";var n,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},c=this&&this.__spread||function(){for(var t=[],e=0;e0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Wallet=e.WalletOperationBatch=void 0;var a=r(151),u=r(26),c=function(){function t(t,e){this.walletProvider=t,this.context=e,this.operations=[]}return t.prototype.withTransfer=function(t){return this.operations.push(n({kind:u.OpKind.TRANSACTION},t)),this},t.prototype.withContractCall=function(t){return this.withTransfer(t.toTransferParams())},t.prototype.withDelegation=function(t){return this.operations.push(n({kind:u.OpKind.DELEGATION},t)),this},t.prototype.withOrigination=function(t){return this.operations.push(n({kind:u.OpKind.ORIGINATION},t)),this},t.prototype.mapOperation=function(t){return i(this,void 0,void 0,(function(){var e,r;return o(this,(function(i){switch(i.label){case 0:switch(t.kind){case u.OpKind.TRANSACTION:return[3,1];case u.OpKind.ORIGINATION:return[3,2];case u.OpKind.DELEGATION:return[3,4]}return[3,5];case 1:return[2,this.walletProvider.mapTransferParamsToWalletParams(n({},t))];case 2:return r=(e=this.walletProvider).mapOriginateParamsToWalletParams,[4,this.context.parser.prepareCodeOrigination(n({},t))];case 3:return[2,r.apply(e,[i.sent()])];case 4:return[2,this.walletProvider.mapDelegateParamsToWalletParams(n({},t))];case 5:throw new Error("Unsupported operation kind: "+t.kind)}}))}))},t.prototype.with=function(t){var e,r;try{for(var n=s(t),i=n.next();!i.done;i=n.next()){var o=i.value;switch(o.kind){case u.OpKind.TRANSACTION:this.withTransfer(o);break;case u.OpKind.ORIGINATION:this.withOrigination(o);break;case u.OpKind.DELEGATION:this.withDelegation(o);break;default:throw new Error("Unsupported operation kind: "+o.kind)}}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return this},t.prototype.send=function(){return i(this,void 0,void 0,(function(){var t,e,r,n,i,a,u,c,l,f;return o(this,(function(o){switch(o.label){case 0:t=[],o.label=1;case 1:o.trys.push([1,6,7,8]),e=s(this.operations),r=e.next(),o.label=2;case 2:return r.done?[3,5]:(n=r.value,a=(i=t).push,[4,this.mapOperation(n)]);case 3:a.apply(i,[o.sent()]),o.label=4;case 4:return r=e.next(),[3,2];case 5:return[3,8];case 6:return u=o.sent(),l={error:u},[3,8];case 7:try{r&&!r.done&&(f=e.return)&&f.call(e)}finally{if(l)throw l.error}return[7];case 8:return[4,this.walletProvider.sendOperations(t)];case 9:return c=o.sent(),[2,this.context.operationFactory.createOperation(c)]}}))}))},t}();e.WalletOperationBatch=c;var l=function(){function t(t){this.context=t,this.walletCommand=function(t){return{send:t}}}return Object.defineProperty(t.prototype,"walletProvider",{get:function(){return this.context.walletProvider},enumerable:!1,configurable:!0}),t.prototype.pkh=function(t){var e=(void 0===t?{}:t).forceRefetch;return i(this,void 0,void 0,(function(){var t;return o(this,(function(r){switch(r.label){case 0:return this._pkh&&!e?[3,2]:(t=this,[4,this.walletProvider.getPKH()]);case 1:t._pkh=r.sent(),r.label=2;case 2:return[2,this._pkh]}}))}))},t.prototype.originate=function(t){var e=this;return this.walletCommand((function(){return i(e,void 0,void 0,(function(){var e,r,i,s,a;return o(this,(function(o){switch(o.label){case 0:return i=(r=this.walletProvider).mapOriginateParamsToWalletParams,[4,this.context.parser.prepareCodeOrigination(n({},t))];case 1:return[4,i.apply(r,[o.sent()])];case 2:return e=o.sent(),[4,this.walletProvider.sendOperations([e])];case 3:return s=o.sent(),this.context.proto?[3,5]:(a=this.context,[4,this.context.rpc.getBlock()]);case 4:a.proto=o.sent().protocol,o.label=5;case 5:return[2,this.context.operationFactory.createOriginationOperation(s)]}}))}))}))},t.prototype.setDelegate=function(t){var e=this;return this.walletCommand((function(){return i(e,void 0,void 0,(function(){var e,r;return o(this,(function(i){switch(i.label){case 0:return[4,this.walletProvider.mapDelegateParamsToWalletParams(n({},t))];case 1:return e=i.sent(),[4,this.walletProvider.sendOperations([e])];case 2:return r=i.sent(),[2,this.context.operationFactory.createDelegationOperation(r)]}}))}))}))},t.prototype.registerDelegate=function(){var t=this;return this.walletCommand((function(){return i(t,void 0,void 0,(function(){var t,e,r,n,i;return o(this,(function(o){switch(o.label){case 0:return r=(e=this.walletProvider).mapDelegateParamsToWalletParams,i={},[4,this.pkh()];case 1:return[4,r.apply(e,[(i.delegate=o.sent(),i)])];case 2:return t=o.sent(),[4,this.walletProvider.sendOperations([t])];case 3:return n=o.sent(),[2,this.context.operationFactory.createDelegationOperation(n)]}}))}))}))},t.prototype.transfer=function(t){var e=this;return this.walletCommand((function(){return i(e,void 0,void 0,(function(){var e,r;return o(this,(function(n){switch(n.label){case 0:return[4,this.walletProvider.mapTransferParamsToWalletParams(t)];case 1:return e=n.sent(),[4,this.walletProvider.sendOperations([e])];case 2:return r=n.sent(),[2,this.context.operationFactory.createTransactionOperation(r)]}}))}))}))},t.prototype.batch=function(t){var e=new c(this.walletProvider,this.context);return Array.isArray(t)&&e.with(t),e},t.prototype.at=function(t,e){return void 0===e&&(e=function(t){return t}),i(this,void 0,void 0,(function(){var r,n,i,s,u;return o(this,(function(o){switch(o.label){case 0:return[4,this.context.rpc.getScript(t)];case 1:return r=o.sent(),[4,this.context.rpc.getEntrypoints(t)];case 2:return n=o.sent(),[4,this.context.rpc.getBlockHeader()];case 3:return i=o.sent(),s=i.chain_id,u=new a.ContractAbstraction(t,r,this,this.context.contract,n,s),[2,e(u,this.context)]}}))}))},t}();e.Wallet=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MANAGER_LAMBDA=void 0;e.MANAGER_LAMBDA={setDelegate:function(t){return[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:t}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}]},removeDelegate:function(){return[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}]},transferImplicit:function(t,e){return[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:t}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:""+e}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}]},transferToContract:function(t,e){return[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:t}]},{prim:"CONTRACT",args:[{prim:"unit"}]},[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],[]]}],{prim:"PUSH",args:[{prim:"mutez"},{int:""+e}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}]}}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.VIEW_LAMBDA=void 0;e.VIEW_LAMBDA={code:[{prim:"parameter",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},{prim:"unit"}]}]}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"UNIT"},{prim:"EXEC"}]]}],storage:"Unit"}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.compose=void 0,e.compose=function(t,e){return function(r,n){return e(t(r,n),n)}}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},function(t,e,r){"use strict";var n=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},i=this&&this.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s};Object.defineProperty(e,"__esModule",{value:!0});var s=r(45),a=function(){function t(t,e,r,n){void 0===r&&(r="default"),void 0===n&&(n={prim:"Unit"}),this.lambdaContract=t,this.viewContract=e,this.viewMethod=r,this.contractParameter=n,this.voidLambda=this.createVoidLambda()}return t.prototype.execute=function(){return n(this,void 0,void 0,(function(){var t,e;return i(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,this.lambdaContract.methods.default(this.voidLambda).send()];case 1:return r.sent(),[3,3];case 2:if((t=r.sent())instanceof s.TezosOperationError)return e=t.errors[t.errors.length-1],[2,e.with];throw t;case 3:return[2]}}))}))},t.prototype.createVoidLambda=function(){var t=o(this.getView(),2),e=t[0],r=t[1],n=[{prim:"pair",args:[e,{prim:"contract",args:[r]}]}];return"default"===this.viewMethod&&(n=[{string:"%default"}].concat(n)),[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"CREATE_CONTRACT",args:[[{prim:"parameter",args:[r]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"FAILWITH"}]]}]]},{prim:"DIP",args:[[{prim:"DIP",args:[[{prim:"LAMBDA",args:[{prim:"pair",args:[{prim:"address"},{prim:"unit"}]},{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},{prim:"unit"}]},[{prim:"CAR"},{prim:"CONTRACT",args:[r]},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"Callback type unmatched"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[e,this.contractParameter]},{prim:"PAIR"},{prim:"DIP",args:[[{prim:"PUSH",args:[{prim:"address"},{string:this.viewContract.address+"%"+this.viewMethod}]},{prim:"DUP"},{prim:"CONTRACT",args:n},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"Contract does not exist"}]},{prim:"FAILWITH"}],[{prim:"DIP",args:[[{prim:"DROP"}]]}]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]]},{prim:"TRANSFER_TOKENS"},{prim:"DIP",args:[[{prim:"NIL",args:[{prim:"operation"}]}]]},{prim:"CONS"},{prim:"DIP",args:[[{prim:"UNIT"}]]},{prim:"PAIR"}]]}]]},{prim:"APPLY"},{prim:"DIP",args:[[{prim:"PUSH",args:[{prim:"address"},{string:this.lambdaContract.address}]},{prim:"DUP"},{prim:"CONTRACT",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},{prim:"unit"}]}]}]},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"Contract does not exists"}]},{prim:"FAILWITH"}],[{prim:"DIP",args:[[{prim:"DROP"}]]}]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]]},{prim:"TRANSFER_TOKENS"},{prim:"DIP",args:[[{prim:"NIL",args:[{prim:"operation"}]}]]},{prim:"CONS"}]]},{prim:"CONS"},{prim:"DIP",args:[[{prim:"UNIT"}]]},{prim:"PAIR"}]},t.prototype.getView=function(){var t=this.viewContract.entrypoints.entrypoints[this.viewMethod];if(!t)throw Error("Contract at "+this.viewContract.address+" does not have entrypoint: "+this.viewMethod);if(!("prim"in t)||!t.args)throw Error("Entrypoint args undefined");var e,r=Array.from(t.args),n=o(r,2),i=n[0],s=n[1];if("annots"in i&&delete i.annots,!("prim"in s)||!s.args)throw Error("Callback contract args undefined");if("pair"!==t.prim?e="Expected {'prim': 'pair', ..} but found {'prim': "+t.prim+", ..}":2!==r.length?e="Expected an Array of length 2, but found: "+r:"contract"!==s.prim?e="Expected a {prim: 'contract', ...}, but found: "+s.prim:s.args&&1!==s.args.length&&(e="Expected a single argument to 'contract', but found: "+s.args),e)throw Error(e);return[i,s.args[0]]},t}();e.default=a},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.smartContractAbstractionSemantic=void 0;var n=r(76),i=r(152),o=r(53);e.smartContractAbstractionSemantic=function(t){return{big_map:function(e,r){if(e&&"int"in e&&void 0!==e.int){var s=new n.Schema(r);return new i.BigMapAbstraction(new o.default(e.int),s,t)}return{}}}}},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ObservableSubscription=void 0;var i=r(78),o=r(57),s=function(){function t(t,e,r){var n=this;void 0===e&&(e=!1),void 0===r&&(r=o.retry()),this.shouldRetry=e,this.operatorFunction=r,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new i.Subject,t.pipe(o.takeUntil(this.completed$),o.tap((function(t){n.call(n.messageListeners,t)}),(function(t){n.call(n.errorListeners,t)}),(function(){n.call(n.closeListeners)})),this.shouldRetry?r:o.tap(),o.catchError((function(){return i.NEVER}))).subscribe()}return t.prototype.call=function(t,e){var r,i;try{for(var o=n(t),s=o.next();!s.done;s=o.next()){var a=s.value;try{a(e)}catch(t){console.error(t)}}}catch(t){r={error:t}}finally{try{s&&!s.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}},t.prototype.remove=function(t,e){var r=t.indexOf(e);-1!==r&&t.splice(r,1)},t.prototype.on=function(t,e){switch(t){case"data":this.messageListeners.push(e);break;case"error":this.errorListeners.push(e);break;case"close":this.closeListeners.push(e);break;default:throw new Error("Trying to register on an unsupported event: "+t)}},t.prototype.off=function(t,e){switch(t){case"data":this.remove(this.messageListeners,e);break;case"error":this.remove(this.errorListeners,e);break;case"close":this.remove(this.closeListeners,e);break;default:throw new Error("Trying to unregister on an unsupported event: "+t)}},t.prototype.close=function(){this.completed$.next()},t}();e.ObservableSubscription=s},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.VERSION=void 0,e.VERSION={commitHash:"672d0dd2a20104bf148e55a78550ca2abda4e652",version:"9.1.1"}},function(t,e,r){"use strict";var n=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},i=this&&this.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]now});this.requestCounter.push(now);return[2,this.requestCounter.length>this.rateLimit]})})};Client.prototype.init=function(transport){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(!(this._transport.status===exposed_promise_1.ExposedPromiseStatus.RESOLVED))return[3,2];return[4,this.transport];case 1:return[2,_a.sent().type];case 2:return[4,this.setTransport(transport)];case 3:_a.sent();return[2,transport.type]}})})};Client.prototype.getOwnAppMetadata=function(){return __awaiter(this,void 0,void 0,function(){var _a,_b;return __generator(this,function(_c){switch(_c.label){case 0:_a={};_b=get_sender_id_1.getSenderId;return[4,this.beaconId];case 1:return[4,_b.apply(void 0,[_c.sent()])];case 2:return[2,(_a.senderId=_c.sent(),_a.name=this.name,_a.icon=this.iconUrl,_a)]}})})};Client.prototype.getPeers=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.transport];case 1:return[2,_a.sent().getPeers()]}})})};Client.prototype.addPeer=function(peer){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.transport];case 1:return[2,_a.sent().addPeer(peer)]}})})};Client.prototype.destroy=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(!(this._transport.status===exposed_promise_1.ExposedPromiseStatus.RESOLVED))return[3,3];return[4,this.transport];case 1:return[4,_a.sent().disconnect()];case 2:_a.sent();_a.label=3;case 3:return[4,_super.prototype.destroy.call(this)];case 4:_a.sent();return[2]}})})};Client.prototype.setTransport=function(transport){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(transport){if(this._transport.isSettled()){this._transport=exposed_promise_1.ExposedPromise.resolve(transport)}else{this._transport.resolve(transport)}}else{if(this._transport.isSettled()){this._transport=new exposed_promise_1.ExposedPromise}}return[4,this.events.emit(events_1.BeaconEvent.ACTIVE_TRANSPORT_SET,transport)];case 1:_a.sent();return[2]}})})};Client.prototype.addListener=function(transport){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){transport.addListener(function(message,connectionInfo){return __awaiter(_this,void 0,void 0,function(){var deserializedMessage;return __generator(this,function(_a){switch(_a.label){case 0:if(!(typeof message==="string"))return[3,2];return[4,(new __1.Serializer).deserialize(message)];case 1:deserializedMessage=_a.sent();this.handleResponse(deserializedMessage,connectionInfo);_a.label=2;case 2:return[2]}})})}).catch(function(error){return logger.error("addListener",error)});return[2]})})};Client.prototype.sendDisconnectToPeer=function(peer,transport){return __awaiter(this,void 0,void 0,function(){var request,_a,_b,payload,selectedTransport,_c;return __generator(this,function(_d){switch(_d.label){case 0:_a={};return[4,generate_uuid_1.generateGUID()];case 1:_a.id=_d.sent(),_a.version=constants_1.BEACON_VERSION;_b=get_sender_id_1.getSenderId;return[4,this.beaconId];case 2:return[4,_b.apply(void 0,[_d.sent()])];case 3:request=(_a.senderId=_d.sent(),_a.type=__1.BeaconMessageType.Disconnect,_a);return[4,(new __1.Serializer).serialize(request)];case 4:payload=_d.sent();if(!(transport!==null&&transport!==void 0))return[3,5];_c=transport;return[3,7];case 5:return[4,this.transport];case 6:_c=_d.sent();_d.label=7;case 7:selectedTransport=_c;return[4,selectedTransport.send(payload,peer)];case 8:_d.sent();return[2]}})})};return Client}(BeaconClient_1.BeaconClient);exports.Client=Client},{"../..":24,"../../constants":9,"../../events":23,"../../managers/AccountManager":27,"../../utils/Logger":79,"../../utils/exposed-promise":84,"../../utils/generate-uuid":85,"../../utils/get-sender-id":87,"../beacon-client/BeaconClient":4}],6:[function(require,module,exports){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __assign=this&&this.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]
'+JSON.stringify(this.data,undefined,2)+"
"},enumerable:false,configurable:true});return TransactionInvalidBeaconError}(__1.BeaconError);exports.TransactionInvalidBeaconError=TransactionInvalidBeaconError},{"..":24}],22:[function(require,module,exports){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();Object.defineProperty(exports,"__esModule",{value:true});exports.UnknownBeaconError=void 0;var __1=require("..");var UnknownBeaconError=function(_super){__extends(UnknownBeaconError,_super);function UnknownBeaconError(){var _this=_super.call(this,__1.BeaconErrorType.UNKNOWN_ERROR,"An unknown error occured. Please try again or report it to a developer.")||this;_this.name="UnknownBeaconError";_this.title="Error";return _this}return UnknownBeaconError}(__1.BeaconError);exports.UnknownBeaconError=UnknownBeaconError},{"..":24}],23:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]"+error.title+""},{text:error.description}];if(response.errorResponse.errorType===BeaconErrorType_1.BeaconErrorType.TRANSACTION_INVALID_ERROR&&response.errorResponse.errorData){actions.push({text:"",actionText:"Show Details",actionCallback:function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,Toast_1.closeToast()];case 1:_a.sent();return[4,Alert_1.openAlert({title:error.title,body:error.fullDescription,buttons:buttons})];case 2:_a.sent();return[2]}})})}})}return[4,Toast_1.openToast({body:"{{wallet}} has returned an error",timer:response.errorResponse.errorType===BeaconErrorType_1.BeaconErrorType.ABORTED_ERROR?SUCCESS_TIMER:undefined,state:"finished",walletInfo:response.walletInfo,actions:actions})];case 1:_a.sent();return[2]}})})};var showRateLimitReached=function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){Alert_1.openAlert({title:"Error",body:"Rate limit reached. Please slow down",buttons:[{text:"Done",style:"outline"}],timer:3e3}).catch(function(toastError){return console.error(toastError)});return[2]})})};var showExtensionConnectedAlert=function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,Alert_1.closeAlerts()];case 1:_a.sent();return[2]}})})};var showChannelClosedAlert=function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,Alert_1.openAlert({title:"Channel closed",body:"Your peer has closed the connection.",buttons:[{text:"Done",style:"outline"}],timer:1500})];case 1:_a.sent();return[2]}})})};var showInternalErrorAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var alertConfig;return __generator(this,function(_a){switch(_a.label){case 0:alertConfig={title:"Internal Error",body:""+data,buttons:[{text:"Done",style:"outline"}]};return[4,Alert_1.openAlert(alertConfig)];case 1:_a.sent();return[2]}})})};var showPairAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var p2pBase58encoded,postmessageBase58encoded,alertConfig;return __generator(this,function(_a){switch(_a.label){case 0:return[4,serializer.serialize(data.p2pPeerInfo)];case 1:p2pBase58encoded=_a.sent();return[4,serializer.serialize(data.postmessagePeerInfo)];case 2:postmessageBase58encoded=_a.sent();alertConfig={title:"Choose your preferred wallet",body:"

",pairingPayload:{p2pSyncCode:p2pBase58encoded,postmessageSyncCode:postmessageBase58encoded,preferredNetwork:data.preferredNetwork},closeButtonCallback:data.abortedHandler};return[4,Alert_1.openAlert(alertConfig)];case 3:_a.sent();return[2]}})})};var showPermissionSuccessAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var output;return __generator(this,function(_a){switch(_a.label){case 0:output=data.output;return[4,Toast_1.openToast({body:"{{wallet}} has granted permission",timer:SUCCESS_TIMER,walletInfo:data.walletInfo,state:"finished",actions:[{text:"Address",actionText:""+shorten_string_1.shortenString(output.address)+""},{text:"Network",actionText:""+output.network.type},{text:"Permissions",actionText:output.scopes.join(", ")}]})];case 1:_a.sent();return[2]}})})};var showOperationSuccessAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var account,output,blockExplorer;return __generator(this,function(_a){switch(_a.label){case 0:account=data.account,output=data.output,blockExplorer=data.blockExplorer;return[4,Toast_1.openToast({body:"{{wallet}} successfully submitted operation",timer:SUCCESS_TIMER,state:"finished",walletInfo:data.walletInfo,actions:[{text:""+shorten_string_1.shortenString(output.transactionHash)+"",actionText:"Open Blockexplorer "+SVG_EXTERNAL,actionCallback:function(){return __awaiter(void 0,void 0,void 0,function(){var link;return __generator(this,function(_a){switch(_a.label){case 0:return[4,blockExplorer.getTransactionLink(output.transactionHash,account.network)];case 1:link=_a.sent();window.open(link,"_blank");return[4,Toast_1.closeToast()];case 2:_a.sent();return[2]}})})}}]})];case 1:_a.sent();return[2]}})})};var showSignSuccessAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var output;return __generator(this,function(_a){switch(_a.label){case 0:output=data.output;return[4,Toast_1.openToast({body:"{{wallet}} successfully signed payload",timer:SUCCESS_TIMER,state:"finished",walletInfo:data.walletInfo,actions:[{text:"Signature: "+shorten_string_1.shortenString(output.signature)+"",actionText:"Copy to clipboard",actionCallback:function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:navigator.clipboard.writeText(output.signature).then(function(){logger.log("showSignSuccessAlert","Copying to clipboard was successful!")},function(err){logger.error("showSignSuccessAlert","Could not copy text to clipboard: ",err)});return[4,Toast_1.closeToast()];case 1:_a.sent();return[2]}})})}}]})];case 1:_a.sent();return[2]}})})};var showBroadcastSuccessAlert=function(data){return __awaiter(void 0,void 0,void 0,function(){var network,output,blockExplorer;return __generator(this,function(_a){switch(_a.label){case 0:network=data.network,output=data.output,blockExplorer=data.blockExplorer;return[4,Toast_1.openToast({body:"{{wallet}} successfully injected operation",timer:SUCCESS_TIMER,state:"finished",walletInfo:data.walletInfo,actions:[{text:""+shorten_string_1.shortenString(output.transactionHash)+"",actionText:"Open Blockexplorer "+SVG_EXTERNAL,actionCallback:function(){return __awaiter(void 0,void 0,void 0,function(){var link;return __generator(this,function(_a){switch(_a.label){case 0:return[4,blockExplorer.getTransactionLink(output.transactionHash,network)];case 1:link=_a.sent();window.open(link,"_blank");return[4,Toast_1.closeToast()];case 2:_a.sent();return[2]}})})}}]})];case 1:_a.sent();return[2]}})})};var emptyHandler=function(){return function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){return[2]})})}};exports.defaultEventCallbacks=(_a={},_a[BeaconEvent.PERMISSION_REQUEST_SENT]=showSentToast,_a[BeaconEvent.PERMISSION_REQUEST_SUCCESS]=showPermissionSuccessAlert,_a[BeaconEvent.PERMISSION_REQUEST_ERROR]=showErrorToast,_a[BeaconEvent.OPERATION_REQUEST_SENT]=showSentToast,_a[BeaconEvent.OPERATION_REQUEST_SUCCESS]=showOperationSuccessAlert,_a[BeaconEvent.OPERATION_REQUEST_ERROR]=showErrorToast,_a[BeaconEvent.SIGN_REQUEST_SENT]=showSentToast,_a[BeaconEvent.SIGN_REQUEST_SUCCESS]=showSignSuccessAlert,_a[BeaconEvent.SIGN_REQUEST_ERROR]=showErrorToast,_a[BeaconEvent.BROADCAST_REQUEST_SENT]=showSentToast,_a[BeaconEvent.BROADCAST_REQUEST_SUCCESS]=showBroadcastSuccessAlert,_a[BeaconEvent.BROADCAST_REQUEST_ERROR]=showErrorToast,_a[BeaconEvent.ACKNOWLEDGE_RECEIVED]=showAcknowledgedToast,_a[BeaconEvent.LOCAL_RATE_LIMIT_REACHED]=showRateLimitReached,_a[BeaconEvent.NO_PERMISSIONS]=showNoPermissionAlert,_a[BeaconEvent.ACTIVE_ACCOUNT_SET]=emptyHandler(),_a[BeaconEvent.ACTIVE_TRANSPORT_SET]=emptyHandler(),_a[BeaconEvent.PAIR_INIT]=showPairAlert,_a[BeaconEvent.PAIR_SUCCESS]=showExtensionConnectedAlert,_a[BeaconEvent.CHANNEL_CLOSED]=showChannelClosedAlert,_a[BeaconEvent.INTERNAL_ERROR]=showInternalErrorAlert,_a[BeaconEvent.UNKNOWN]=emptyHandler(),_a);var BeaconEventHandler=function(){function BeaconEventHandler(eventsToOverride,overrideAll){var _a;if(eventsToOverride===void 0){eventsToOverride={}}this.callbackMap=(_a={},_a[BeaconEvent.PERMISSION_REQUEST_SENT]=[exports.defaultEventCallbacks.PERMISSION_REQUEST_SENT],_a[BeaconEvent.PERMISSION_REQUEST_SUCCESS]=[exports.defaultEventCallbacks.PERMISSION_REQUEST_SUCCESS],_a[BeaconEvent.PERMISSION_REQUEST_ERROR]=[exports.defaultEventCallbacks.PERMISSION_REQUEST_ERROR],_a[BeaconEvent.OPERATION_REQUEST_SENT]=[exports.defaultEventCallbacks.OPERATION_REQUEST_SENT],_a[BeaconEvent.OPERATION_REQUEST_SUCCESS]=[exports.defaultEventCallbacks.OPERATION_REQUEST_SUCCESS],_a[BeaconEvent.OPERATION_REQUEST_ERROR]=[exports.defaultEventCallbacks.OPERATION_REQUEST_ERROR],_a[BeaconEvent.SIGN_REQUEST_SENT]=[exports.defaultEventCallbacks.SIGN_REQUEST_SENT],_a[BeaconEvent.SIGN_REQUEST_SUCCESS]=[exports.defaultEventCallbacks.SIGN_REQUEST_SUCCESS],_a[BeaconEvent.SIGN_REQUEST_ERROR]=[exports.defaultEventCallbacks.SIGN_REQUEST_ERROR],_a[BeaconEvent.BROADCAST_REQUEST_SENT]=[exports.defaultEventCallbacks.BROADCAST_REQUEST_SENT],_a[BeaconEvent.BROADCAST_REQUEST_SUCCESS]=[exports.defaultEventCallbacks.BROADCAST_REQUEST_SUCCESS],_a[BeaconEvent.BROADCAST_REQUEST_ERROR]=[exports.defaultEventCallbacks.BROADCAST_REQUEST_ERROR],_a[BeaconEvent.ACKNOWLEDGE_RECEIVED]=[exports.defaultEventCallbacks.ACKNOWLEDGE_RECEIVED],_a[BeaconEvent.LOCAL_RATE_LIMIT_REACHED]=[exports.defaultEventCallbacks.LOCAL_RATE_LIMIT_REACHED],_a[BeaconEvent.NO_PERMISSIONS]=[exports.defaultEventCallbacks.NO_PERMISSIONS],_a[BeaconEvent.ACTIVE_ACCOUNT_SET]=[exports.defaultEventCallbacks.ACTIVE_ACCOUNT_SET],_a[BeaconEvent.ACTIVE_TRANSPORT_SET]=[exports.defaultEventCallbacks.ACTIVE_TRANSPORT_SET],_a[BeaconEvent.PAIR_INIT]=[exports.defaultEventCallbacks.PAIR_INIT],_a[BeaconEvent.PAIR_SUCCESS]=[exports.defaultEventCallbacks.PAIR_SUCCESS],_a[BeaconEvent.CHANNEL_CLOSED]=[exports.defaultEventCallbacks.CHANNEL_CLOSED],_a[BeaconEvent.INTERNAL_ERROR]=[exports.defaultEventCallbacks.INTERNAL_ERROR],_a[BeaconEvent.UNKNOWN]=[exports.defaultEventCallbacks.UNKNOWN],_a);if(overrideAll){this.setAllHandlers()}this.overrideDefaults(eventsToOverride)}BeaconEventHandler.prototype.on=function(event,eventCallback){return __awaiter(this,void 0,void 0,function(){var listeners;return __generator(this,function(_a){listeners=this.callbackMap[event]||[];listeners.push(eventCallback);this.callbackMap[event]=listeners;return[2]})})};BeaconEventHandler.prototype.emit=function(event,data,eventCallback){return __awaiter(this,void 0,void 0,function(){var listeners;var _this=this;return __generator(this,function(_a){listeners=this.callbackMap[event];if(listeners&&listeners.length>0){listeners.forEach(function(listener){return __awaiter(_this,void 0,void 0,function(){var listenerError_1;return __generator(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,listener(data,eventCallback)];case 1:_a.sent();return[3,3];case 2:listenerError_1=_a.sent();logger.error("error handling event "+event,listenerError_1);return[3,3];case 3:return[2]}})})})}return[2]})})};BeaconEventHandler.prototype.overrideDefaults=function(eventsToOverride){var _this=this;Object.keys(eventsToOverride).forEach(function(untypedEvent){var eventType=untypedEvent;var event=eventsToOverride[eventType];if(event){_this.callbackMap[eventType]=[event.handler]}})};BeaconEventHandler.prototype.setAllHandlers=function(handler){var _this=this;Object.keys(this.callbackMap).forEach(function(untypedEvent){var eventType=untypedEvent;_this.callbackMap[eventType]=[];if(handler){_this.callbackMap[eventType].push(handler)}else{_this.callbackMap[eventType].push(function(){var data=[];for(var _i=0;_i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]IMMEDIATE_POLLING_RETRIES?RETRY_INTERVAL+interval:interval)}else{reject(new Error("Syncing stopped manually."))}return[7];case 5:return[2]}})})};return[2,new Promise(pollSync)]})})};MatrixClient.prototype.sync=function(){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){return[2,this.requiresAuthorization("sync",function(accessToken){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.eventService.sync(accessToken,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})]})})})]})})};MatrixClient.prototype.requiresAuthorization=function(name,action){return __awaiter(this,void 0,void 0,function(){var storedToken;return __generator(this,function(_a){storedToken=this.store.get("accessToken");if(!storedToken){return[2,Promise.reject(name+" requires authorization but no access token has been provided.")]}return[2,action(storedToken)]})})};MatrixClient.prototype.createTxnId=function(){return __awaiter(this,void 0,void 0,function(){var timestamp,counter;return __generator(this,function(_a){switch(_a.label){case 0:timestamp=(new Date).getTime();counter=this.store.get("txnNo");return[4,this.store.update({txnNo:counter+1})];case 1:_a.sent();return[2,"m"+timestamp+"."+counter]}})})};return MatrixClient}();exports.MatrixClient=MatrixClient},{"../utils/Logger":79,"../utils/exposed-promise":84,"./MatrixClientEventEmitter":34,"./MatrixClientStore":35,"./MatrixHttpClient":36,"./models/MatrixRoom":39,"./services/MatrixEventService":40,"./services/MatrixRoomService":41,"./services/MatrixUserService":42}],34:[function(require,module,exports){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();Object.defineProperty(exports,"__esModule",{value:true});exports.MatrixClientEventEmitter=void 0;var events_1=require("events");var utils_1=require("../utils/utils");var MatrixRoom_1=require("./models/MatrixRoom");var MatrixClientEvent_1=require("./models/MatrixClientEvent");var MatrixClientEventEmitter=function(_super){__extends(MatrixClientEventEmitter,_super);function MatrixClientEventEmitter(){var _this=_super!==null&&_super.apply(this,arguments)||this;_this.eventEmitProviders=new Map([[MatrixClientEvent_1.MatrixClientEventType.INVITE,function(){return[_this.isInvite,_this.emitInvite.bind(_this)]}],[MatrixClientEvent_1.MatrixClientEventType.MESSAGE,function(){return[_this.isMessage,_this.emitMessage.bind(_this)]}]]);return _this}MatrixClientEventEmitter.prototype.onStateChanged=function(_oldState,_newState,stateChange){for(var _i=0,_a=utils_1.keys(MatrixClientEvent_1.MatrixClientEventType);_i<_a.length;_i++){var event_1=_a[_i];this.emitIfEvent(MatrixClientEvent_1.MatrixClientEventType[event_1],stateChange)}};MatrixClientEventEmitter.prototype.emitIfEvent=function(eventType,object){var provider=this.eventEmitProviders.get(eventType);if(provider){var _a=provider(),predicate=_a[0],emitter=_a[1];if(predicate(object)){emitter(eventType,object)}}};MatrixClientEventEmitter.prototype.emitClientEvent=function(eventType,content,timestamp){this.emit(eventType,{type:eventType,content:content,timestamp:timestamp})};MatrixClientEventEmitter.prototype.isInvite=function(stateChange){return stateChange.rooms?stateChange.rooms.some(function(room){return room.status===MatrixRoom_1.MatrixRoomStatus.INVITED}):false};MatrixClientEventEmitter.prototype.emitInvite=function(eventType,stateChange){var _this=this;stateChange.rooms.filter(function(room){return room.status===MatrixRoom_1.MatrixRoomStatus.INVITED}).map(function(room){return[room.id,room.members]}).forEach(function(_a){var id=_a[0],members=_a[1];_this.emitClientEvent(eventType,{roomId:id,members:members})})};MatrixClientEventEmitter.prototype.isMessage=function(stateChange){return stateChange.rooms?stateChange.rooms.some(function(room){return room.messages.length>0}):false};MatrixClientEventEmitter.prototype.emitMessage=function(eventType,stateChange){var _this=this;stateChange.rooms.filter(function(room){return room.messages.length>0}).map(function(room){return room.messages.map(function(message){return[room.id,message,message.timestamp]})}).reduce(function(flatten,toFlatten){return flatten.concat(toFlatten)},[]).forEach(function(_a){var roomId=_a[0],message=_a[1],timestamp=_a[2];_this.emitClientEvent(eventType,{roomId:roomId,message:message},timestamp)})};return MatrixClientEventEmitter}(events_1.EventEmitter);exports.MatrixClientEventEmitter=MatrixClientEventEmitter},{"../utils/utils":94,"./models/MatrixClientEvent":37,"./models/MatrixRoom":39,events:186}],35:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0){subscribed.forEach(function(key){_this.onStateChangedListeners.set(key,listener)})}else{this.onStateChangedListeners.set("all",listener)}};MatrixClientStore.prototype.waitReady=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.waitReadyPromise]})})};MatrixClientStore.prototype.initFromStorage=function(){return __awaiter(this,void 0,void 0,function(){var preserved;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.storage.get(__1.StorageKey.MATRIX_PRESERVED_STATE)];case 1:preserved=_a.sent();this.setState(preserved);return[2]}})})};MatrixClientStore.prototype.prepareData=function(toStore){var requiresPreparation=["rooms"];var toStoreCopy=requiresPreparation.some(function(key){return toStore[key]!==undefined})?JSON.parse(JSON.stringify(toStore)):toStore;Object.values(toStoreCopy.rooms||{}).forEach(function(room){room.messages=[]});return toStoreCopy};MatrixClientStore.prototype.updateStorage=function(stateUpdate){var _this=this;var updatedCachedFields=Object.entries(stateUpdate).filter(function(_a){var key=_a[0],value=_a[1];return PRESERVED_FIELDS.includes(key)&&Boolean(value)});if(updatedCachedFields.length>0){var filteredState_1={};PRESERVED_FIELDS.forEach(function(key){filteredState_1[key]=_this.state[key]});this.storage.set(__1.StorageKey.MATRIX_PRESERVED_STATE,this.prepareData(filteredState_1))}};MatrixClientStore.prototype.setState=function(partialState){this.state={isRunning:partialState.isRunning||this.state.isRunning,userId:partialState.userId||this.state.userId,deviceId:partialState.deviceId||this.state.deviceId,txnNo:partialState.txnNo||this.state.txnNo,accessToken:partialState.accessToken||this.state.accessToken,syncToken:partialState.syncToken||this.state.syncToken,pollingTimeout:partialState.pollingTimeout||this.state.pollingTimeout,pollingRetries:partialState.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,partialState.rooms)}};MatrixClientStore.prototype.mergeRooms=function(oldRooms,_newRooms){if(!_newRooms){return oldRooms}var newRooms=Array.isArray(_newRooms)?_newRooms:Object.values(_newRooms);var merged=Object.assign({},oldRooms);newRooms.forEach(function(newRoom){merged[newRoom.id]=MatrixRoom_1.MatrixRoom.merge(newRoom,oldRooms[newRoom.id])});return merged};MatrixClientStore.prototype.notifyListeners=function(oldState,newState,stateChange){var _this=this;var listenForAll=this.onStateChangedListeners.get("all");if(listenForAll){listenForAll(oldState,newState,stateChange)}utils_1.keys(stateChange).filter(function(key){return stateChange[key]!==undefined}).forEach(function(key){var listener=_this.onStateChangedListeners.get(key);if(listener){listener(oldState,newState,stateChange)}})};return MatrixClientStore}();exports.MatrixClientStore=MatrixClientStore},{"..":24,"../utils/utils":94,"./models/MatrixRoom":39}],36:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0){logger.log("connect","connecting to "+knownPeers.length+" peers");connectionPromises=knownPeers.map(function(peer){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.listen(peer.publicKey)]})})});Promise.all(connectionPromises).catch(function(error){return logger.error("connect",error)})}return[4,this.startOpenChannelListener()];case 3:_a.sent();return[2,_super.prototype.connect.call(this)]}})})};P2PTransport.prototype.disconnect=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.client.stop()];case 1:_a.sent();return[2,_super.prototype.disconnect.call(this)]}})})};P2PTransport.prototype.startOpenChannelListener=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2]})})};P2PTransport.prototype.getPairingRequestInfo=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.client.getPairingRequestInfo()]})})};P2PTransport.prototype.listen=function(publicKey){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.client.listenForEncryptedMessage(publicKey,function(message){var connectionContext={origin:__1.Origin.P2P,id:publicKey};_this.notifyListeners(message,connectionContext).catch(function(error){throw error})}).catch(function(error){throw error})];case 1:_a.sent();return[2]}})})};return P2PTransport}(__1.Transport);exports.P2PTransport=P2PTransport},{"..":24,"../managers/PeerManager":29,"../utils/Logger":79}],51:[function(require,module,exports){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0){logger.log("connect","connecting to "+knownPeers.length+" peers");connectionPromises=knownPeers.map(function(peer){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.listen(peer.publicKey)]})})});Promise.all(connectionPromises).catch(function(error){return logger.error("connect",error)})}return[4,this.startOpenChannelListener()];case 2:_a.sent();return[4,_super.prototype.connect.call(this)];case 3:_a.sent();return[2]}})})};PostMessageTransport.prototype.startOpenChannelListener=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2]})})};PostMessageTransport.prototype.getPairingRequestInfo=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2,this.client.getPairingRequestInfo()]})})};PostMessageTransport.prototype.listen=function(publicKey){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:logger.log("listen",publicKey);return[4,this.client.listenForEncryptedMessage(publicKey,function(message,context){var connectionContext={origin:Origin_1.Origin.EXTENSION,id:context.id};_this.notifyListeners(message,connectionContext).catch(function(error){throw error})}).catch(function(error){throw error})];case 1:_a.sent();return[2]}})})};return PostMessageTransport}(Transport_1.Transport);exports.PostMessageTransport=PostMessageTransport},{"../MockWindow":1,"../managers/PeerManager":29,"../types/ExtensionMessageTarget":61,"../types/Origin":62,"../types/transport/TransportStatus":70,"../types/transport/TransportType":71,"../utils/Logger":79,"../utils/exposed-promise":84,"./Transport":52,"./clients/PostMessageClient":58}],52:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]=sodium.crypto_secretbox_NONCEBYTES+sodium.crypto_secretbox_MACBYTES))return[3,5];_a.label=2;case 2:_a.trys.push([2,4,,5]);return[4,crypto_1.decryptCryptoboxPayload(hexPayload,sharedRx)];case 3:return[2,_a.sent()];case 4:decryptionError_1=_a.sent();return[3,5];case 5:throw new Error("Could not decrypt message")}})})};MessageBasedClient.prototype.encryptMessage=function(recipientPublicKey,message){return __awaiter(this,void 0,void 0,function(){var sharedTx;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.createCryptoBoxClient(recipientPublicKey,this.keyPair.privateKey)];case 1:sharedTx=_a.sent().sharedTx;return[2,crypto_1.encryptCryptoboxPayload(message,sharedTx)]}})})};return MessageBasedClient}(CommunicationClient_1.CommunicationClient);exports.MessageBasedClient=MessageBasedClient}).call(this,require("buffer").Buffer)},{"../../constants":9,"../../utils/crypto":83,"../../utils/generate-uuid":85,"./CommunicationClient":55,buffer:185,"libsodium-wrappers":248}],57:[function(require,module,exports){(function(Buffer){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __assign=this&&this.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0?matrixNodes:KNOWN_RELAY_SERVERS;return _this}P2PCommunicationClient.prototype.getPairingRequestInfo=function(){return __awaiter(this,void 0,void 0,function(){var info,_a;return __generator(this,function(_b){switch(_b.label){case 0:_a={};return[4,generate_uuid_1.generateGUID()];case 1:_a.id=_b.sent(),_a.type="p2p-pairing-request",_a.name=this.name,_a.version=constants_1.BEACON_VERSION;return[4,this.getPublicKey()];case 2:_a.publicKey=_b.sent();return[4,this.getRelayServer()];case 3:info=(_a.relayServer=_b.sent(),_a);if(this.iconUrl){info.icon=this.iconUrl}if(this.appUrl){info.appUrl=this.appUrl}return[2,info]}})})};P2PCommunicationClient.prototype.getPairingResponseInfo=function(request){return __awaiter(this,void 0,void 0,function(){var info,_a;return __generator(this,function(_b){switch(_b.label){case 0:_a={id:request.id,type:"p2p-pairing-response",name:this.name,version:constants_1.BEACON_VERSION};return[4,this.getPublicKey()];case 1:_a.publicKey=_b.sent();return[4,this.getRelayServer()];case 2:info=(_a.relayServer=_b.sent(),_a);if(this.iconUrl){info.icon=this.iconUrl}if(this.appUrl){info.appUrl=this.appUrl}return[2,info]}})})};P2PCommunicationClient.prototype.getRelayServer=function(){return __awaiter(this,void 0,void 0,function(){var node,hasDoneMigration,preservedState,node_1,startIndex,offset,serverIndex,server,relayError_1;return __generator(this,function(_a){switch(_a.label){case 0:if(this.relayServer){return[2,this.relayServer.promise]}else{this.relayServer=new exposed_promise_1.ExposedPromise}return[4,this.storage.get(__1.StorageKey.MATRIX_SELECTED_NODE)];case 1:node=_a.sent();if(!(node&&node.length>0))return[3,2];this.relayServer.resolve(node);return[2,node];case 2:if(!(KNOWN_RELAY_SERVERS===this.KNOWN_RELAY_SERVERS))return[3,5];return[4,this.storage.get(__1.StorageKey.MULTI_NODE_SETUP_DONE)];case 3:hasDoneMigration=_a.sent();if(!!hasDoneMigration)return[3,5];return[4,this.storage.get(__1.StorageKey.MATRIX_PRESERVED_STATE)];case 4:preservedState=_a.sent();console.log("PRESERVED STATE",preservedState);if(preservedState.syncToken||preservedState.rooms){node_1="matrix.papers.tech";this.storage.set(__1.StorageKey.MATRIX_SELECTED_NODE,node_1).catch(function(error){return logger.log(error)});this.relayServer.resolve(node_1);return[2,node_1]}this.storage.set(__1.StorageKey.MULTI_NODE_SETUP_DONE,true).catch(function(error){return logger.log(error)});_a.label=5;case 5:console.log("GET RELAY SERVER");startIndex=publicKeyToNumber(this.keyPair.publicKey,this.KNOWN_RELAY_SERVERS.length);offset=0;_a.label=6;case 6:if(!(offset=sodium.crypto_secretbox_NONCEBYTES+sodium.crypto_secretbox_MACBYTES))return[3,8];_b.label=5;case 5:_b.trys.push([5,7,,8]);return[4,crypto_1.decryptCryptoboxPayload(payload,sharedRx)];case 6:decryptedMessage=_b.sent();messageCallback(decryptedMessage);return[3,8];case 7:decryptionError_1=_b.sent();return[3,8];case 8:return[2]}})})};this.activeListeners.set(senderPublicKey,callbackFunction);return[4,this.client.promise];case 2:_a.sent().subscribe(MatrixClientEvent_1.MatrixClientEventType.MESSAGE,callbackFunction);lastEvent=this.initialEvent;if(!(lastEvent&&lastEvent.timestamp&&(new Date).getTime()-lastEvent.timestamp<5*60*1e3))return[3,4];logger.log("listenForEncryptedMessage","Handling previous event");return[4,callbackFunction(lastEvent)];case 3:_a.sent();return[3,5];case 4:logger.log("listenForEncryptedMessage","No previous event found");_a.label=5;case 5:initialListener=this.initialListener;if(!initialListener)return[3,7];return[4,this.client.promise];case 6:_a.sent().unsubscribe(MatrixClientEvent_1.MatrixClientEventType.MESSAGE,initialListener);_a.label=7;case 7:this.initialListener=undefined;this.initialEvent=undefined;return[2]}})})};P2PCommunicationClient.prototype.unsubscribeFromEncryptedMessage=function(senderPublicKey){return __awaiter(this,void 0,void 0,function(){var listener;return __generator(this,function(_a){switch(_a.label){case 0:listener=this.activeListeners.get(senderPublicKey);if(!listener){return[2]};return[4,this.client.promise];case 1:_a.sent().unsubscribe(MatrixClientEvent_1.MatrixClientEventType.MESSAGE,listener);this.activeListeners.delete(senderPublicKey);return[2]}})})};P2PCommunicationClient.prototype.unsubscribeFromEncryptedMessages=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:;return[4,this.client.promise];case 1:_a.sent().unsubscribeAll(MatrixClientEvent_1.MatrixClientEventType.MESSAGE);this.activeListeners.clear();return[2]}})})};P2PCommunicationClient.prototype.sendMessage=function(message,peer){return __awaiter(this,void 0,void 0,function(){var sharedTx,recipientHash,recipient,roomId,encryptedMessage;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.createCryptoBoxClient(peer.publicKey,this.keyPair.privateKey)];case 1:sharedTx=_a.sent().sharedTx;return[4,crypto_1.getHexHash(Buffer.from(peer.publicKey,"hex"))];case 2:recipientHash=_a.sent();recipient=crypto_1.recipientString(recipientHash,peer.relayServer);return[4,this.getRelevantRoom(recipient)];case 3:roomId=_a.sent();return[4,this.waitForJoin(roomId)];case 4:_a.sent();return[4,crypto_1.encryptCryptoboxPayload(message,sharedTx)];case 5:encryptedMessage=_a.sent();return[4,this.client.promise];case 6:_a.sent().sendTextMessage(roomId,encryptedMessage).catch(function(error){return __awaiter(_this,void 0,void 0,function(){var newRoomId;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:if(!(error.errcode==="M_FORBIDDEN"))return[3,4];logger.log("sendMessage","M_FORBIDDEN",error);return[4,this.deleteRoomIdFromRooms(roomId)];case 1:_a.sent();return[4,this.getRelevantRoom(recipient)];case 2:newRoomId=_a.sent();return[4,this.client.promise];case 3:_a.sent().sendTextMessage(newRoomId,encryptedMessage).catch(function(error2){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){logger.log("sendMessage","inner error",error2);return[2]})})});return[3,5];case 4:logger.log("sendMessage","not forbidden",error);_a.label=5;case 5:return[2]}})})});return[2]}})})};P2PCommunicationClient.prototype.updatePeerRoom=function(sender,roomId){return __awaiter(this,void 0,void 0,function(){var split,roomIds,room;return __generator(this,function(_a){switch(_a.label){case 0:split=sender.split(":");if(split.length<2||!split[0].startsWith("@")){throw new Error("Invalid sender")}return[4,this.storage.get(__1.StorageKey.MATRIX_PEER_ROOM_IDS)];case 1:roomIds=_a.sent();room=roomIds[sender];if(room&&room[1]){this.ignoredRooms.push(room[1])}roomIds[sender]=roomId;return[4,this.storage.set(__1.StorageKey.MATRIX_PEER_ROOM_IDS,roomIds)];case 2:_a.sent();return[2]}})})};P2PCommunicationClient.prototype.deleteRoomIdFromRooms=function(roomId){return __awaiter(this,void 0,void 0,function(){var roomIds,newRoomIds;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.storage.get(__1.StorageKey.MATRIX_PEER_ROOM_IDS)];case 1:roomIds=_a.sent();newRoomIds=Object.entries(roomIds).filter(function(entry){return entry[1]!==roomId}).reduce(function(pv,cv){var _a;return __assign(__assign({},pv),(_a={},_a[cv[0]]=cv[1],_a))},{});return[4,this.storage.set(__1.StorageKey.MATRIX_PEER_ROOM_IDS,newRoomIds)];case 2:_a.sent();this.ignoredRooms.push(roomId);return[2]}})})};P2PCommunicationClient.prototype.listenForChannelOpening=function(messageCallback){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:;return[4,this.client.promise];case 1:_a.sent().subscribe(MatrixClientEvent_1.MatrixClientEventType.MESSAGE,function(event){return __awaiter(_this,void 0,void 0,function(){var _a,splits,payload,pairingResponse,_b,_c,_d,_e,_f,decryptionError_2;return __generator(this,function(_g){switch(_g.label){case 0:_a=this.isTextMessage(event.content);if(!_a)return[3,2];return[4,this.isChannelOpenMessage(event.content)];case 1:_a=_g.sent();_g.label=2;case 2:if(!_a)return[3,9];logger.log("listenForChannelOpening","channel opening",JSON.stringify(event));return[4,this.updateRelayServer(event.content.message.sender)];case 3:_g.sent();return[4,this.updatePeerRoom(event.content.message.sender,event.content.roomId)];case 4:_g.sent();splits=event.content.message.content.split(":");payload=Buffer.from(splits[splits.length-1],"hex");if(!(payload.length>=sodium.crypto_secretbox_NONCEBYTES+sodium.crypto_secretbox_MACBYTES))return[3,9];_g.label=5;case 5:_g.trys.push([5,8,,9]);_c=(_b=JSON).parse;return[4,crypto_1.openCryptobox(payload,this.keyPair.publicKey,this.keyPair.privateKey)];case 6:pairingResponse=_c.apply(_b,[_g.sent()]);_d=messageCallback;_e=[__assign({},pairingResponse)];_f={};return[4,get_sender_id_1.getSenderId(pairingResponse.publicKey)];case 7:_d.apply(void 0,[__assign.apply(void 0,_e.concat([(_f.senderId=_g.sent(),_f)]))]);return[3,9];case 8:decryptionError_2=_g.sent();return[3,9];case 9:return[2]}})})});return[2]}})})};P2PCommunicationClient.prototype.waitForJoin=function(roomId,retry){if(retry===void 0){retry=0}return __awaiter(this,void 0,void 0,function(){var room;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.client.promise];case 1:return[4,_a.sent().getRoomById(roomId)];case 2:room=_a.sent();logger.log("waitForJoin","Currently "+room.members.length+" members, we need at least 2");if(room.members.length>=2||room.members.length===0){return[2]}else{if(retry<=200){logger.log("Waiting for join... Try: "+retry);return[2,new Promise(function(resolve){setTimeout(function(){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){resolve(this.waitForJoin(roomId,retry+1));return[2]})})},100*(retry>50?10:1))})]}else{throw new Error("No one joined after "+retry+" tries.")}}return[2]}})})};P2PCommunicationClient.prototype.sendPairingResponse=function(pairingRequest){return __awaiter(this,void 0,void 0,function(){var recipientHash,recipient,roomId,message,_a,_b,_c,encryptedMessage,msg;var _this=this;return __generator(this,function(_d){switch(_d.label){case 0:logger.log("sendPairingResponse");return[4,crypto_1.getHexHash(Buffer.from(pairingRequest.publicKey,"hex"))];case 1:recipientHash=_d.sent();recipient=crypto_1.recipientString(recipientHash,pairingRequest.relayServer);return[4,this.client.promise];case 2:return[4,_d.sent().createTrustedPrivateRoom(recipient)];case 3:roomId=_d.sent();return[4,this.updatePeerRoom(recipient,roomId)];case 4:_d.sent();return[4,this.waitForJoin(roomId)];case 5:_d.sent();if(!(typeof pairingRequest.version==="undefined"))return[3,7];return[4,this.getPublicKey()];case 6:_a=_d.sent();return[3,9];case 7:_c=(_b=JSON).stringify;return[4,this.getPairingResponseInfo(pairingRequest)];case 8:_a=_c.apply(_b,[_d.sent()]);_d.label=9;case 9:message=_a;return[4,this.encryptMessageAsymmetric(pairingRequest.publicKey,message)];case 10:encryptedMessage=_d.sent();msg=["@channel-open",recipient,encryptedMessage].join(":");return[4,this.client.promise];case 11:_d.sent().sendTextMessage(roomId,msg).catch(function(error){return __awaiter(_this,void 0,void 0,function(){var newRoomId;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:if(!(error.errcode==="M_FORBIDDEN"))return[3,4];logger.log("sendMessage","M_FORBIDDEN",error);return[4,this.deleteRoomIdFromRooms(roomId)];case 1:_a.sent();return[4,this.getRelevantRoom(recipient)];case 2:newRoomId=_a.sent();return[4,this.client.promise];case 3:_a.sent().sendTextMessage(newRoomId,msg).catch(function(error2){return __awaiter(_this,void 0,void 0,function(){return __generator(this,function(_a){logger.log("sendMessage","inner error",error2);return[2]})})});return[3,5];case 4:logger.log("sendMessage","not forbidden",error);_a.label=5;case 5:return[2]}})})});return[2]}})})};P2PCommunicationClient.prototype.isTextMessage=function(content){return content.message.type===MatrixMessage_1.MatrixMessageType.TEXT};P2PCommunicationClient.prototype.updateRelayServer=function(sender){return __awaiter(this,void 0,void 0,function(){var split,senderHash,relayServer,manager,peers,promiseArray;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:split=sender.split(":");if(split.length<2||!split[0].startsWith("@")){throw new Error("Invalid sender")}senderHash=split.shift();relayServer=split.join(":");manager=localStorage.getItem("beacon:communication-peers-dapp")?new __1.PeerManager(this.storage,__1.StorageKey.TRANSPORT_P2P_PEERS_DAPP):new __1.PeerManager(this.storage,__1.StorageKey.TRANSPORT_P2P_PEERS_WALLET);return[4,manager.getPeers()];case 1:peers=_a.sent();promiseArray=peers.map(function(peer){return __awaiter(_this,void 0,void 0,function(){var hash,_a;return __generator(this,function(_b){switch(_b.label){case 0:_a="@";return[4,crypto_1.getHexHash(Buffer.from(peer.publicKey,"hex"))];case 1:hash=_a+_b.sent();if(!(hash===senderHash))return[3,3];if(!(peer.relayServer!==relayServer))return[3,3];peer.relayServer=relayServer;return[4,manager.addPeer(peer)];case 2:_b.sent();_b.label=3;case 3:return[2]}})})});return[4,Promise.all(promiseArray)];case 2:_a.sent();return[2]}})})};P2PCommunicationClient.prototype.isChannelOpenMessage=function(content){return __awaiter(this,void 0,void 0,function(){var _a,_b,_c,_d,_e,_f;return __generator(this,function(_g){switch(_g.label){case 0:_b=(_a=content.message.content).startsWith;_c="@channel-open:@";_d=crypto_1.getHexHash;_f=(_e=Buffer).from;return[4,this.getPublicKey()];case 1:return[4,_d.apply(void 0,[_f.apply(_e,[_g.sent(),"hex"])])];case 2:return[2,_b.apply(_a,[_c+_g.sent()])]}})})};P2PCommunicationClient.prototype.isSender=function(event,senderPublicKey){return __awaiter(this,void 0,void 0,function(){var _a,_b,_c;return __generator(this,function(_d){switch(_d.label){case 0:_b=(_a=event.content.message.sender).startsWith;_c="@";return[4,crypto_1.getHexHash(Buffer.from(senderPublicKey,"hex"))];case 1:return[2,_b.apply(_a,[_c+_d.sent()])]}})})};P2PCommunicationClient.prototype.getRelevantRoom=function(recipient){return __awaiter(this,void 0,void 0,function(){var roomIds,roomId,room;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.storage.get(__1.StorageKey.MATRIX_PEER_ROOM_IDS)];case 1:roomIds=_a.sent();roomId=roomIds[recipient];if(!!roomId)return[3,4];logger.log("getRelevantRoom","No room found for peer "+recipient+", checking joined ones.");return[4,this.getRelevantJoinedRoom(recipient)];case 2:room=_a.sent();roomId=room.id;roomIds[recipient]=room.id;return[4,this.storage.set(__1.StorageKey.MATRIX_PEER_ROOM_IDS,roomIds)];case 3:_a.sent();_a.label=4;case 4:logger.log("getRelevantRoom","Using room "+roomId);return[2,roomId]}})})};P2PCommunicationClient.prototype.getRelevantJoinedRoom=function(recipient){return __awaiter(this,void 0,void 0,function(){var joinedRooms,relevantRooms,room,roomId;var _this=this;return __generator(this,function(_a){switch(_a.label){case 0:return[4,this.client.promise];case 1:return[4,_a.sent().joinedRooms];case 2:joinedRooms=_a.sent();logger.log("checking joined rooms",joinedRooms,recipient);relevantRooms=joinedRooms.filter(function(roomElement){return!_this.ignoredRooms.some(function(id){return roomElement.id===id})}).filter(function(roomElement){return roomElement.members.some(function(member){return member===recipient})});if(!(relevantRooms.length===0||this.ignoredRooms.length>0))return[3,8];logger.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");return[4,this.client.promise];case 3:return[4,_a.sent().createTrustedPrivateRoom(recipient)];case 4:roomId=_a.sent();return[4,this.client.promise];case 5:return[4,_a.sent().getRoomById(roomId)];case 6:room=_a.sent();logger.log("getRelevantJoinedRoom","waiting for other party to join room: "+room.id);return[4,this.waitForJoin(roomId)];case 7:_a.sent();logger.log("getRelevantJoinedRoom","new room created and peer invited: "+room.id);return[3,9];case 8:room=relevantRooms[0];logger.log("getRelevantJoinedRoom","channel already open, reusing room "+room.id);_a.label=9;case 9:return[2,room]}})})};return P2PCommunicationClient}(CommunicationClient_1.CommunicationClient);exports.P2PCommunicationClient=P2PCommunicationClient}).call(this,require("buffer").Buffer)},{"../..":24,"../../constants":9,"../../matrix-client/MatrixClient":33,"../../matrix-client/models/MatrixClientEvent":37,"../../matrix-client/models/MatrixMessage":38,"../../utils/Logger":79,"../../utils/crypto":83,"../../utils/exposed-promise":84,"../../utils/generate-uuid":85,"../../utils/get-sender-id":87,"./CommunicationClient":55,axios:110,buffer:185,"libsodium-wrappers":248}],58:[function(require,module,exports){(function(Buffer){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __assign=this&&this.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]=sodium.crypto_secretbox_NONCEBYTES+sodium.crypto_secretbox_MACBYTES))return[3,7];_j.label=3;case 3:_j.trys.push([3,6,,7]);_c=(_b=JSON).parse;return[4,crypto_1.openCryptobox(payload,this.keyPair.publicKey,this.keyPair.privateKey)];case 4:pairingResponse=_c.apply(_b,[_j.sent()]);_d=messageCallback;_e=[__assign({},pairingResponse)];_f={};return[4,get_sender_id_1.getSenderId(pairingResponse.publicKey)];case 5:_d.apply(void 0,[__assign.apply(void 0,_e.concat([(_f.senderId=_j.sent(),_f.extensionId=(_h=event===null||event===void 0?void 0:event.data)===null||_h===void 0?void 0:_h.sender.id,_f)]))]);return[3,7];case 6:decryptionError_2=_j.sent();return[3,7];case 7:return[2]}})})};MockWindow_1.windowRef.addEventListener("message",fn);return[2]})})};PostMessageClient.prototype.sendPairingRequest=function(id){return __awaiter(this,void 0,void 0,function(){var message,_a,_b,_c;return __generator(this,function(_d){switch(_d.label){case 0:_a={target:__1.ExtensionMessageTarget.EXTENSION};_c=(_b=new __1.Serializer).serialize;return[4,this.getPairingRequestInfo()];case 1:return[4,_c.apply(_b,[_d.sent()])];case 2:message=(_a.payload=_d.sent(),_a.targetId=id,_a);MockWindow_1.windowRef.postMessage(message,MockWindow_1.windowRef.location.origin);return[2]}})})};PostMessageClient.prototype.isChannelOpenMessage=function(message){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2,typeof message==="object"&&message.hasOwnProperty("payload")]})})};PostMessageClient.prototype.subscribeToMessages=function(){return __awaiter(this,void 0,void 0,function(){var _this=this;return __generator(this,function(_a){MockWindow_1.windowRef.addEventListener("message",function(message){if(typeof message==="object"&&message){var data_1=message.data;if(data_1.message&&data_1.message.target===__1.ExtensionMessageTarget.PAGE){_this.activeListeners.forEach(function(listener){listener(data_1.message,{origin:__1.Origin.EXTENSION,id:data_1.sender.id||""})})}}});return[2]})})};return PostMessageClient}(MessageBasedClient_1.MessageBasedClient);exports.PostMessageClient=PostMessageClient}).call(this,require("buffer").Buffer)},{"../..":24,"../../MockWindow":1,"../../utils/crypto":83,"../../utils/get-sender-id":87,"./MessageBasedClient":56,buffer:185,"libsodium-wrappers":248}],59:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.BeaconErrorType=void 0;var BeaconErrorType;(function(BeaconErrorType){BeaconErrorType["BROADCAST_ERROR"]="BROADCAST_ERROR";BeaconErrorType["NETWORK_NOT_SUPPORTED"]="NETWORK_NOT_SUPPORTED";BeaconErrorType["NO_ADDRESS_ERROR"]="NO_ADDRESS_ERROR";BeaconErrorType["NO_PRIVATE_KEY_FOUND_ERROR"]="NO_PRIVATE_KEY_FOUND_ERROR";BeaconErrorType["NOT_GRANTED_ERROR"]="NOT_GRANTED_ERROR";BeaconErrorType["PARAMETERS_INVALID_ERROR"]="PARAMETERS_INVALID_ERROR";BeaconErrorType["TOO_MANY_OPERATIONS"]="TOO_MANY_OPERATIONS";BeaconErrorType["TRANSACTION_INVALID_ERROR"]="TRANSACTION_INVALID_ERROR";BeaconErrorType["SIGNATURE_TYPE_NOT_SUPPORTED"]="SIGNATURE_TYPE_NOT_SUPPORTED";BeaconErrorType["ABORTED_ERROR"]="ABORTED_ERROR";BeaconErrorType["UNKNOWN_ERROR"]="UNKNOWN_ERROR"})(BeaconErrorType=exports.BeaconErrorType||(exports.BeaconErrorType={}))},{}],60:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ColorMode=void 0;var ColorMode;(function(ColorMode){ColorMode["LIGHT"]="light";ColorMode["DARK"]="dark"})(ColorMode=exports.ColorMode||(exports.ColorMode={}))},{}],61:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ExtensionMessageTarget=void 0;var ExtensionMessageTarget;(function(ExtensionMessageTarget){ExtensionMessageTarget["BACKGROUND"]="toBackground";ExtensionMessageTarget["PAGE"]="toPage";ExtensionMessageTarget["EXTENSION"]="toExtension"})(ExtensionMessageTarget=exports.ExtensionMessageTarget||(exports.ExtensionMessageTarget={}))},{}],62:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Origin=void 0;var Origin;(function(Origin){Origin["WEBSITE"]="website";Origin["EXTENSION"]="extension";Origin["P2P"]="p2p"})(Origin=exports.Origin||(exports.Origin={}))},{}],63:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.BeaconMessageType=void 0;var BeaconMessageType;(function(BeaconMessageType){BeaconMessageType["PermissionRequest"]="permission_request";BeaconMessageType["SignPayloadRequest"]="sign_payload_request";BeaconMessageType["OperationRequest"]="operation_request";BeaconMessageType["BroadcastRequest"]="broadcast_request";BeaconMessageType["PermissionResponse"]="permission_response";BeaconMessageType["SignPayloadResponse"]="sign_payload_response";BeaconMessageType["OperationResponse"]="operation_response";BeaconMessageType["BroadcastResponse"]="broadcast_response";BeaconMessageType["Acknowledge"]="acknowledge";BeaconMessageType["Disconnect"]="disconnect";BeaconMessageType["Error"]="error"})(BeaconMessageType=exports.BeaconMessageType||(exports.BeaconMessageType={}))},{}],64:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.NetworkType=void 0;var NetworkType;(function(NetworkType){NetworkType["MAINNET"]="mainnet";NetworkType["DELPHINET"]="delphinet";NetworkType["EDONET"]="edonet";NetworkType["FLORENCENET"]="florencenet";NetworkType["GRANADANET"]="granadanet";NetworkType["CUSTOM"]="custom"})(NetworkType=exports.NetworkType||(exports.NetworkType={}))},{}],65:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.PermissionScope=void 0;var PermissionScope;(function(PermissionScope){PermissionScope["SIGN"]="sign";PermissionScope["OPERATION_REQUEST"]="operation_request";PermissionScope["THRESHOLD"]="threshold"})(PermissionScope=exports.PermissionScope||(exports.PermissionScope={}))},{}],66:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.SigningType=void 0;var SigningType;(function(SigningType){SigningType["RAW"]="raw";SigningType["OPERATION"]="operation";SigningType["MICHELINE"]="micheline"})(SigningType=exports.SigningType||(exports.SigningType={}))},{}],67:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.StorageKey=void 0;var StorageKey;(function(StorageKey){StorageKey["TRANSPORT_P2P_PEERS_DAPP"]="beacon:communication-peers-dapp";StorageKey["TRANSPORT_P2P_PEERS_WALLET"]="beacon:communication-peers-wallet";StorageKey["TRANSPORT_POSTMESSAGE_PEERS_DAPP"]="beacon:postmessage-peers-dapp";StorageKey["TRANSPORT_POSTMESSAGE_PEERS_WALLET"]="beacon:postmessage-peers-wallet";StorageKey["ACCOUNTS"]="beacon:accounts";StorageKey["ACTIVE_ACCOUNT"]="beacon:active-account";StorageKey["ACTIVE_PEER"]="beacon:active-peer";StorageKey["BEACON_SDK_SECRET_SEED"]="beacon:sdk-secret-seed";StorageKey["APP_METADATA_LIST"]="beacon:app-metadata-list";StorageKey["PERMISSION_LIST"]="beacon:permissions";StorageKey["BEACON_SDK_VERSION"]="beacon:sdk_version";StorageKey["MATRIX_PRESERVED_STATE"]="beacon:sdk-matrix-preserved-state";StorageKey["MATRIX_PEER_ROOM_IDS"]="beacon:matrix-peer-rooms";StorageKey["MATRIX_SELECTED_NODE"]="beacon:matrix-selected-node";StorageKey["MULTI_NODE_SETUP_DONE"]="beacon:multi-node-setup"})(StorageKey=exports.StorageKey||(exports.StorageKey={}))},{}],68:[function(require,module,exports){"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:true});exports.defaultValues=void 0;var __1=require("../..");exports.defaultValues=(_a={},_a[__1.StorageKey.TRANSPORT_P2P_PEERS_DAPP]=[],_a[__1.StorageKey.TRANSPORT_P2P_PEERS_WALLET]=[],_a[__1.StorageKey.TRANSPORT_POSTMESSAGE_PEERS_DAPP]=[],_a[__1.StorageKey.TRANSPORT_POSTMESSAGE_PEERS_WALLET]=[],_a[__1.StorageKey.ACCOUNTS]=[],_a[__1.StorageKey.ACTIVE_ACCOUNT]=undefined,_a[__1.StorageKey.ACTIVE_PEER]=undefined,_a[__1.StorageKey.BEACON_SDK_SECRET_SEED]=undefined,_a[__1.StorageKey.APP_METADATA_LIST]=[],_a[__1.StorageKey.PERMISSION_LIST]=[],_a[__1.StorageKey.BEACON_SDK_VERSION]=undefined,_a[__1.StorageKey.MATRIX_PRESERVED_STATE]={},_a[__1.StorageKey.MATRIX_PEER_ROOM_IDS]={},_a[__1.StorageKey.MATRIX_SELECTED_NODE]=undefined,_a[__1.StorageKey.MULTI_NODE_SETUP_DONE]=undefined,_a)},{"../..":24}],69:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.TezosOperationType=void 0;var TezosOperationType;(function(TezosOperationType){TezosOperationType["ENDORSEMENT"]="endorsement";TezosOperationType["SEED_NONCE_REVELATION"]="seed_nonce_revelation";TezosOperationType["DOUBLE_ENDORSEMENT_EVIDENCE"]="double_endorsement_evidence";TezosOperationType["DOUBLE_BAKING_EVIDENCE"]="double_baking_evidence";TezosOperationType["ACTIVATE_ACCOUNT"]="activate_account";TezosOperationType["PROPOSALS"]="proposals";TezosOperationType["BALLOT"]="ballot";TezosOperationType["REVEAL"]="reveal";TezosOperationType["TRANSACTION"]="transaction";TezosOperationType["ORIGINATION"]="origination";TezosOperationType["DELEGATION"]="delegation"})(TezosOperationType=exports.TezosOperationType||(exports.TezosOperationType={}))},{}],70:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.TransportStatus=void 0;var TransportStatus;(function(TransportStatus){TransportStatus["NOT_CONNECTED"]="NOT_CONNECTED";TransportStatus["CONNECTING"]="CONNECTING";TransportStatus["CONNECTED"]="CONNECTED"})(TransportStatus=exports.TransportStatus||(exports.TransportStatus={}))},{}],71:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.TransportType=void 0;var TransportType;(function(TransportType){TransportType["CHROME_MESSAGE"]="chrome_message";TransportType["POST_MESSAGE"]="post_message";TransportType["LEDGER"]="ledger";TransportType["P2P"]="p2p"})(TransportType=exports.TransportType||(exports.TransportType={}))},{}],72:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]'+qrString+'
'+dataString}return dataString};var formatAlert=function(id,body,title,buttons,pairingPayload){var callToAction=title;var buttonsHtml=buttons.map(function(button,index){return'"});var allStyles=alert_templates_1.alertTemplates.default.css;if(pairingPayload){allStyles+=alert_templates_1.alertTemplates.pair.css}var alertContainer=alert_templates_1.alertTemplates.container;alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"main",pairingPayload?alert_templates_1.alertTemplates.pair.html:alert_templates_1.alertTemplates.default.html);alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"callToAction",callToAction);alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"buttons",buttonsHtml.join(" "));alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"body",body);alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"id",id);alertContainer=replace_in_template_1.replaceInTemplate(alertContainer,"payload",pairingPayload!==null&&pairingPayload!==void 0?pairingPayload:"");if(alertContainer.indexOf("{{")>=0){var start=alertContainer.indexOf("{{");var end=alertContainer.indexOf("}}");console.error("Not all placeholders replaced!",alertContainer.substr(start,end-start));throw new Error("Not all placeholders replaced!")}return{style:allStyles,html:alertContainer}};var closeAlert=function(id){return new Promise(function(resolve){var _a;var wrapper=document.getElementById("beacon-alert-wrapper-"+id);if(!wrapper){return resolve()}var elm=(_a=wrapper.shadowRoot)===null||_a===void 0?void 0:_a.getElementById("beacon-alert-modal-"+id);if(elm){var animationDuration=300;var localTimeout=timeout[id];if(localTimeout){clearTimeout(localTimeout);timeout[id]=undefined}elm.className=elm.className.replace("fadeIn","fadeOut");window.setTimeout(function(){var parent=wrapper.parentNode;if(parent){parent.removeChild(wrapper)}if(lastFocusedElement){lastFocusedElement.focus()}resolve()},animationDuration)}else{resolve()}})};exports.closeAlert=closeAlert;var closeAlerts=function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){return[2,new Promise(function(resolve){return __awaiter(void 0,void 0,void 0,function(){var openAlertElements,alertIds_1;return __generator(this,function(_a){switch(_a.label){case 0:openAlertElements=document.querySelectorAll('[id^="beacon-alert-wrapper-"]');if(!(openAlertElements.length>0))return[3,2];alertIds_1=[];openAlertElements.forEach(function(element){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){alertIds_1.push(element.id.split("-")[3]);return[2]})})});return[4,Promise.all(alertIds_1.map(closeAlert))];case 1:_a.sent();resolve();return[3,3];case 2:resolve();_a.label=3;case 3:return[2]}})})})]})})};exports.closeAlerts=closeAlerts;var openAlert=function(alertConfig){return __awaiter(void 0,void 0,void 0,function(){var body,title,timer,pairingPayload,closeButtonCallback,id,shadowRootEl,shadowRoot,wrapper,buttons,formattedBody,_a,style,html,styleEl,closeButton,closeButtonClick,colorMode,elm,modal;var _b,_c;return __generator(this,function(_d){switch(_d.label){case 0:body=alertConfig.body;title=alertConfig.title;timer=alertConfig.timer;pairingPayload=alertConfig.pairingPayload;closeButtonCallback=alertConfig.closeButtonCallback;return[4,closeAlerts()];case 1:_d.sent();return[4,generate_uuid_1.generateGUID()];case 2:id=_d.sent().split("-").join("");shadowRootEl=document.createElement("div");shadowRootEl.setAttribute("id","beacon-alert-wrapper-"+id);shadowRoot=shadowRootEl.attachShadow({mode:"open"});wrapper=document.createElement("div");wrapper.setAttribute("tabindex","0");shadowRoot.appendChild(wrapper);buttons=__spreadArrays((_c=(_b=alertConfig.buttons)===null||_b===void 0?void 0:_b.map(function(button){var _a,_b;return{text:button.text,actionCallback:(_a=button.actionCallback)!==null&&_a!==void 0?_a:function(){return Promise.resolve()},style:(_b=button.style)!==null&&_b!==void 0?_b:"outline"}}))!==null&&_c!==void 0?_c:[]);formattedBody=body&&pairingPayload?formatQR(body,pairingPayload===null||pairingPayload===void 0?void 0:pairingPayload.p2pSyncCode):body!==null&&body!==void 0?body:"";_a=formatAlert(id,formattedBody,title,buttons,pairingPayload===null||pairingPayload===void 0?void 0:pairingPayload.p2pSyncCode),style=_a.style,html=_a.html;wrapper.innerHTML=html;styleEl=document.createElement("style");styleEl.textContent=style;shadowRoot.appendChild(styleEl);if(timer){timeout[id]=window.setTimeout(function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeAlert(id)];case 1:_a.sent();return[2]}})})},timer)}document.body.prepend(shadowRootEl);closeButton=shadowRoot.getElementById("beacon-alert-"+id+"-close");closeButtonClick=function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(closeButtonCallback){closeButtonCallback()}return[4,closeAlert(id)];case 1:_a.sent();return[2]}})})};colorMode=colorMode_1.getColorMode();elm=shadowRoot.getElementById("beacon-alert-modal-"+id);if(elm){elm.classList.add("theme__"+colorMode);elm.addEventListener("click",closeButtonClick)}modal=shadowRoot.querySelectorAll(".beacon-modal__wrapper");if(modal.length>0){modal[0].addEventListener("click",function(event){event.stopPropagation()})}lastFocusedElement=document.activeElement;wrapper.focus();buttons.forEach(function(button,index){var buttonElement=shadowRoot.getElementById("beacon-alert-"+id+"-"+index);if(buttonElement){buttonElement.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeAlert(id)];case 1:_a.sent();if(!button.actionCallback)return[3,3];return[4,button.actionCallback()];case 2:_a.sent();_a.label=3;case 3:return[2]}})})})}});if(closeButton){closeButton.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeButtonClick()];case 1:_a.sent();return[2]}})})})}window.addEventListener("keydown",function(event){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:if(!(event.key==="Escape"))return[3,2];return[4,closeButtonClick()];case 1:_a.sent();_a.label=2;case 2:return[2]}})})});if(!pairingPayload)return[3,4];return[4,PairingAlert_1.preparePairingAlert(shadowRoot,pairingPayload)];case 3:_d.sent();_d.label=4;case 4:return[2,id]}})})};exports.openAlert=openAlert},{"../../colorMode":8,"../../utils/generate-uuid":85,"../../utils/get-tzip10-link":88,"../../utils/qr":90,"../../utils/replace-in-template":91,"./PairingAlert":74,"./alert-templates":75}],73:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]=0){defaultExtensions.splice(index,1)}});_a={};_b=[{title:"Browser Extensions",type:WalletType.EXTENSION,wallets:__spreadArrays(availableExtensions.map(function(app){var _a,_b,_c,_d;var ext=wallet_lists_1.extensionList.find(function(extEl){return extEl.id===app.id});return{name:(_a=app.name)!==null&&_a!==void 0?_a:ext===null||ext===void 0?void 0:ext.name,logo:(_b=app.iconUrl)!==null&&_b!==void 0?_b:ext===null||ext===void 0?void 0:ext.logo,shortName:(_c=app.shortName)!==null&&_c!==void 0?_c:ext===null||ext===void 0?void 0:ext.shortName,color:(_d=app.color)!==null&&_d!==void 0?_d:ext===null||ext===void 0?void 0:ext.color,enabled:true,clickHandler:function(){if(postmessageSyncCode){var message={target:__1.ExtensionMessageTarget.EXTENSION,payload:postmessageSyncCode,targetId:app.id};MockWindow_1.windowRef.postMessage(message,MockWindow_1.windowRef.location.origin)}statusUpdateHandler(WalletType.EXTENSION,this)}}}),wallet_lists_1.extensionList.filter(function(app){return defaultExtensions.some(function(extId){return extId===app.id})}).map(function(app){return{name:app.name,shortName:app.shortName,color:app.color,logo:app.logo,enabled:false,clickHandler:function(){}}}))}];_c={title:"Desktop & Web Wallets",type:WalletType.DESKTOP};_d=[wallet_lists_1.desktopList.map(function(app){return{name:app.name,shortName:app.shortName,color:app.color,logo:app.logo,enabled:true,clickHandler:function(){var link=get_tzip10_link_1.getTzip10Link(app.deepLink,pairingCode);window.open(link,"_blank");statusUpdateHandler(WalletType.DESKTOP,this)}}})];return[4,Pairing.getWebList(pairingCode,statusUpdateHandler,network)];case 2:return[2,(_a.walletLists=_b.concat([(_c.wallets=__spreadArrays.apply(void 0,_d.concat([_e.sent()])),_c)]),_a.buttons=[],_a.qrData=qrLink,_a)]}})})};Pairing.getIOSPairingAlert=function(pairingCode,statusUpdateHandler,network){return __awaiter(this,void 0,void 0,function(){var qrLink,_a,_b,_c;return __generator(this,function(_d){switch(_d.label){case 0:qrLink=get_tzip10_link_1.getTzip10Link("tezos://",pairingCode);_a={};_b=[{title:"Mobile Wallets",type:WalletType.IOS,wallets:wallet_lists_1.iOSList.map(function(app){return{name:app.name,shortName:app.shortName,color:app.color,logo:app.logo,enabled:true,clickHandler:function(){var _a;var link=get_tzip10_link_1.getTzip10Link((_a=app.deepLink)!==null&&_a!==void 0?_a:app.universalLink,pairingCode);var a=document.createElement("a");a.setAttribute("href",link);a.dispatchEvent(new MouseEvent("click",{view:window,bubbles:true,cancelable:true}));statusUpdateHandler(WalletType.IOS,this)}}})}];_c={title:"Web Wallets",type:WalletType.WEB};return[4,Pairing.getWebList(pairingCode,statusUpdateHandler,network)];case 1:return[2,(_a.walletLists=_b.concat([(_c.wallets=__spreadArrays.apply(void 0,[_d.sent()]),_c)]),_a.buttons=[],_a.qrData=qrLink,_a)]}})})};Pairing.getAndroidPairingAlert=function(pairingCode,statusUpdateHandler,network){return __awaiter(this,void 0,void 0,function(){var qrLink,_a,_b;return __generator(this,function(_c){switch(_c.label){case 0:qrLink=get_tzip10_link_1.getTzip10Link("tezos://",pairingCode);_a={};_b={title:"Web Wallets",type:WalletType.WEB};return[4,Pairing.getWebList(pairingCode,statusUpdateHandler,network)];case 1:return[2,(_a.walletLists=[(_b.wallets=__spreadArrays.apply(void 0,[_c.sent()]),_b)],_a.buttons=[{title:"Mobile Wallets",text:"Connect Wallet",clickHandler:function(){window.open(qrLink,"_blank");statusUpdateHandler(WalletType.ANDROID)}}],_a.qrData=qrLink,_a)]}})})};Pairing.getWebList=function(pairingCode,statusUpdateHandler,network){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(_a){return[2,wallet_lists_1.webList.map(function(app){return{name:app.name,shortName:app.shortName,color:app.color,logo:app.logo,enabled:true,clickHandler:function(){var _a;var link=get_tzip10_link_1.getTzip10Link((_a=app.links[network])!==null&&_a!==void 0?_a:app.links[__1.NetworkType.MAINNET],pairingCode);window.open(link,"_blank");statusUpdateHandler(WalletType.WEB,this)}}})]})})};return Pairing}();exports.Pairing=Pairing},{"../..":24,"../../MockWindow":1,"../../utils/get-tzip10-link":88,"../../utils/platform":89,"./wallet-lists":76}],74:[function(require,module,exports){"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]'+button.title+'\n\t\t\n\t\t ";el=document.createElement("a");el.id="button_"+randomId;el.innerHTML=x;buttonListWrapper.appendChild(el);buttonEl=shadowRoot.getElementById(el.id);if(buttonEl){buttonEl.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){button.clickHandler();return[2]})})})}return[2]}})})});info.walletLists.forEach(function(list){var listWrapperEl=document.createElement("div");container.appendChild(listWrapperEl);var listTitleEl=document.createElement("div");listTitleEl.classList.add("beacon-list__title");listTitleEl.innerHTML=list.title;listWrapperEl.appendChild(listTitleEl);var listEl=document.createElement("span");listWrapperEl.appendChild(listEl);list.wallets.forEach(function(wallet){return __awaiter(void 0,void 0,void 0,function(){var altTag,randomId,x,el,walletEl;return __generator(this,function(_a){switch(_a.label){case 0:altTag="Open in "+wallet.name;return[4,generate_uuid_1.generateGUID()];case 1:randomId=_a.sent();x='\n\t\t\t\n\t\t\t
'+wallet.name+"\n\t\t\t "+(wallet.enabled?"":"

Not installed

")+"\n\t\t\t
\n\t\t\t "+(wallet.logo?'
\n\t\t\t \n\t\t\t
':'')+"\n\t\t\t
\n\t\t\t ";el=document.createElement("span");el.innerHTML=x;listEl.appendChild(el);walletEl=shadowRoot.getElementById("wallet_"+randomId);if(walletEl){walletEl.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){wallet.clickHandler();return[2]})})});walletEl.addEventListener("keydown",function(event){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){if(event.key==="Enter"){wallet.clickHandler()}return[2]})})})}return[2]}})})})});qr=shadowRoot.getElementById("beacon--qr__container");copyButton=shadowRoot.getElementById("beacon--qr__copy");titleEl=shadowRoot.getElementById("beacon-title");platform=platform_1.isAndroid(window)?"android":platform_1.isIOS(window)?"ios":"desktop";mainText=shadowRoot.getElementById("beacon-main-text");walletList=shadowRoot.getElementById("pairing-container");switchButton=shadowRoot.getElementById("beacon--switch__container");if(mainText&&walletList&&switchButton&©Button&&qr&&titleEl){fn=function(){navigator.clipboard.writeText(pairingPayload?pairingPayload.p2pSyncCode:"").then(function(){copyButton.innerText="Copied";logger.log("Copying to clipboard was successful!")},function(err){logger.error("Could not copy text to clipboard: ",err)})};copyButton.addEventListener("click",fn);qr.addEventListener("click",fn);showPlatform_1=function(type){var platformSwitch=shadowRoot.getElementById("beacon-switch");if(platformSwitch){platformSwitch.innerHTML=type==="none"?"Pair Wallet on same device":"Pair Wallet on different device"}mainText.style.display="none";titleEl.style.textAlign="center";walletList.style.display="none";switchButton.style.display="initial";switch(type){case"ios":walletList.style.display="initial";break;case"android":walletList.style.display="initial";break;case"desktop":walletList.style.display="initial";titleEl.style.textAlign="left";mainText.style.display="initial";switchButton.style.display="none";break;default:mainText.style.display="initial"}};showQr_1=false;switchPlatform=function(){showPlatform_1(showQr_1?"none":platform);showQr_1=!showQr_1};switchPlatform();{platformSwitch=shadowRoot.getElementById("beacon-switch");if(platformSwitch){platformSwitch.addEventListener("click",switchPlatform)}}}return[2]}})})}},{"../../utils/Logger":79,"../../utils/generate-uuid":85,"../../utils/platform":89,"./Alert":72,"./Pairing":73}],75:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.alertTemplates=void 0;exports.alertTemplates={container:'
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n

\n {{callToAction}}\n

\n\n {{main}}\n\n
\n {{buttons}}\n
\n
\n
\n
\n
\n
\n',default:{html:'
\n {{body}}\n
\n',css:":host {\n --animation-duration: 300ms;\n all: initial;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n\n.animated {\n animation-duration: var(--animation-duration);\n animation-fill-mode: both;\n}\n\n.fadeIn {\n animation-name: fadeIn;\n}\n\n.fadeOut {\n animation-name: fadeOut;\n}\n\n.beacon-modal__wrapper {\n position: relative;\n top: 0;\n display: inline-block;\n z-index: 2147483000;\n max-width: 500px;\n width: 80%;\n padding: 24px;\n}\n\n@media (min-height: 700px) {\n .beacon-modal__wrapper {\n top: 50%;\n transform: translateY(-50%);\n }\n}\n\n.theme__light .beacon-modal__base,\n.theme__light .beacon-modal__close__wrapper {\n background: #fff;\n}\n\n.theme__dark .beacon-modal__base,\n.theme__dark .beacon-modal__close__wrapper {\n background: #27334c;\n}\n\n.beacon-modal__base,\n.beacon-modal__close__wrapper {\n box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.1);\n}\n\n.beacon-modal__base {\n margin: 0 auto;\n border-radius: 32px;\n overflow: hidden;\n}\n\n.beacon-modal__header {\n padding: 16px 0;\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.beacon-modal__headerLogo {\n width: 100%;\n max-width: 320px;\n margin: 20px auto;\n height: 100%;\n}\n\n.beacon-alert__text,\n.beacon-alert__title,\n.beacon-selection__name,\n.beacon-list__title,\np,\nbutton {\n font-family: Roboto, Helvetica, sans-serif;\n}\n\na,\nbutton {\n cursor: pointer;\n}\n\n.beacon-modal__close__wrapper {\n position: absolute;\n top: 44px;\n right: 24px;\n z-index: 10000;\n cursor: pointer;\n border-radius: 100%;\n}\n\n.beacon-modal__close__icon {\n width: 16px;\n height: 16px;\n position: relative;\n top: 0;\n right: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n transform: rotate(45deg);\n margin: 8px;\n}\n\n.beacon-modal__close__line1 {\n position: absolute;\n width: 90%;\n}\n\n.beacon-modal__close__line2 {\n position: absolute;\n width: 90%;\n transform: rotate(90deg);\n}\n\n.theme__light .beacon-modal__close__line2,\n.theme__light .beacon-modal__close__line1 {\n border: 1px solid #000;\n}\n\n.theme__dark .beacon-modal__close__line2,\n.theme__dark .beacon-modal__close__line1 {\n border: 1px solid #fff;\n}\n\n.beacon-alert__base {\n position: fixed;\n overflow-y: scroll;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147482999;\n background-color: rgb(17 17 17 / 0.84);\n text-align: center;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n\n.beacon-alert__base::-webkit-scrollbar {\n display: none;\n}\n\n.beacon-alert__title {\n text-align: center;\n}\n\n.beacon-alert__text,\n.beacon-alert__title {\n margin: 0 auto;\n padding: 0 0 24px;\n}\n\n.margin__bottom {\n margin-bottom: 16px;\n}\n\n.beacon-alert__title {\n font-size: 18px;\n}\n\n.theme__light .beacon-alert__title {\n color: #7c828b;\n}\n\n.theme__dark .beacon-alert__title,\n.theme__dark .beacon-alert__text {\n color: #7c99d6;\n}\n\n.beacon-alert__text {\n color: #000;\n font-size: 14px;\n}\n\n.beacon-modal__button,\n.beacon-modal__button--outline {\n height: 36px;\n font-size: 14px;\n letter-spacing: 0.84px;\n margin-bottom: 4px;\n margin-inline-end: 2px;\n margin-inline-start: 2px;\n margin-left: 2px;\n margin-right: 2px;\n margin-top: 4px;\n padding-inline-end: 15.4px;\n padding-inline-start: 15.4px;\n padding-left: 15.4px;\n padding-right: 15.4px;\n overflow-wrap: break-word;\n pointer-events: auto;\n text-align: center;\n border: 2px solid #3880ff;\n border-radius: 4px;\n}\n\n.beacon-modal__button {\n background: #3880ff;\n color: #fff;\n}\n\n.beacon-modal__button--outline {\n background: #fff;\n color: #3880ff;\n}\n\n.beacon-alert__image {\n width: 200px;\n height: 200px;\n box-sizing: border-box;\n box-shadow: 0 10px 20px 0 rgba(17, 17, 17, 0.12);\n border: 1px solid rgba(17, 17, 17, 0.04);\n border-radius: 16px;\n}\n.connect__btn {\n margin: 24px 0;\n width: 100%;\n}\n\n.beacon-modal__content {\n padding: 24px;\n}\n\n#beacon-switch {\n margin-top: 24px;\n}\n\n#beacon-title {\n margin: 0 0 24px;\n}\n\na {\n text-decoration: none;\n}\n\npre {\n white-space: pre-wrap; /* css-3 */\n white-space: -moz-pre-wrap; /* Mozilla, since 1999 */\n white-space: -pre-wrap; /* Opera 4-6 */\n white-space: -o-pre-wrap; /* Opera 7 */\n word-wrap: break-word; /* Internet Explorer 5.5+ */\n padding: 16px;\n background: #ececec;\n line-height: 1.25rem;\n}\n"},pair:{html:'\n\n
\n

\n Scan QR code with Beacon-compatible wallet.\n Learn more\n

\n {{body}}\n
\n\n
\n \n
\n',css:"#beacon-main-text {\n display: initial;\n}\n.beacon-selection__container {\n padding: 16px 16px 0;\n}\n.beacon-selection__list {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n text-decoration: none;\n padding-bottom: 12px;\n align-items: center;\n}\n\n.beacon-list__title {\n text-align: left;\n font-size: 12px;\n}\n\n.theme__light .beacon-list__title {\n color: #7c828b;\n}\n.theme__dark .beacon-list__title {\n color: #7c99d6;\n}\n\n.beacon-selection__name {\n font-size: 1rem;\n font-weight: 600;\n text-align: left;\n}\n.theme__light .beacon-selection__name {\n color: #3b3d40;\n}\n.theme__dark .beacon-selection__name {\n color: #6183ff;\n}\n.beacon-selection__img {\n width: 48px;\n height: 48px;\n box-shadow: 0 4px 12px 0 rgba(17, 17, 17, 0.24);\n border-radius: 16px;\n background-color: #fff;\n}\n#beacon--qr__copy__container {\n height: 0;\n}\n#beacon--qr__copy {\n display: none;\n position: relative;\n top: -190px;\n left: 138px;\n margin: 0;\n}\n#beacon--qr__container {\n margin-left: auto;\n margin-right: auto;\n}\n#beacon--qr__container:hover #beacon--qr__copy {\n display: block;\n}\n.disabled {\n cursor: initial;\n}\n.disabled span,\n.disabled img {\n opacity: 0.48;\n}\n.disabled p {\n text-align: left;\n margin: 0;\n font-size: 10px;\n font-weight: 300;\n}\n.disabled img {\n -webkit-filter: grayscale(100%);\n -moz-filter: grayscale(100%);\n -ms-filter: grayscale(100%);\n -o-filter: grayscale(100%);\n filter: grayscale(100%);\n filter: gray;\n}\n"}}},{}],76:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.iOSList=exports.webList=exports.desktopList=exports.extensionList=void 0;exports.extensionList=[{id:"ookjlbkiijinhpmnjffcofjonbfbgaoc",name:"Temple Wallet",shortName:"Temple",color:"",logo:"data:image/png;base64,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",link:"https://templewallet.com/"},{id:"gpfndedineagiepkpinficbcbbgjoenn",name:"Spire",shortName:"Spire",color:"",logo:"data:image/png;base64,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",link:"https://spirewallet.com/"}];exports.desktopList=[{name:"Galleon",shortName:"Galleon",color:"",logo:"data:image/png;base64,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",deepLink:"galleon://"}];exports.webList=[{name:"Kukai",shortName:"Kukai",color:"",logo:"data:image/png;base64,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",links:{mainnet:"https://wallet.kukai.app",delphinet:"https://testnet.kukai.app",edonet:"https://edonet.kukai.app",florencenet:"https://florencenet.kukai.app",granadanet:"https://granadanet.kukai.app"}}];exports.iOSList=[{name:"AirGap Wallet",shortName:"AirGap",color:"rgb(4, 235, 204)",logo:"data:image/png;base64,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",universalLink:"https://wallet.airgap.it",deepLink:"airgap-wallet://"}]},{}],77:[function(require,module,exports){"use strict";var __assign=this&&this.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0?"

"+text+"

":"";wrapper.innerHTML+='

'+actionText+"

"}else if(actionText){wrapper.innerHTML=text.length>0?'

'+text+"

":"";wrapper.innerHTML+="

"+actionText+"

"}else{wrapper.innerHTML="

"+text+"

"}if(actionCallback){wrapper.addEventListener("click",actionCallback)}return[2,wrapper]}})})};var removeAllChildNodes=function(parent){while(parent.firstChild){parent.removeChild(parent.firstChild)}};var formatToastText=function(html){var _a,_b;var walletIcon=(_a=globalToastConfig===null||globalToastConfig===void 0?void 0:globalToastConfig.walletInfo)===null||_a===void 0?void 0:_a.icon;var walletName=(_b=globalToastConfig===null||globalToastConfig===void 0?void 0:globalToastConfig.walletInfo)===null||_b===void 0?void 0:_b.name;var wallet="";if(walletIcon){wallet+=''}if(walletName){wallet+=""+walletName+""}else{wallet+="Wallet"}return replace_in_template_1.replaceInTemplate(html,"wallet",wallet)};var getToastHTML=function(config){var text=config.body;var html=replace_in_template_1.replaceInTemplate(toast_templates_1.toastTemplates.default.html,"text",text);html=formatToastText(html);return{style:toast_templates_1.toastTemplates.default.css,html:html}};var closeToast=function(){return new Promise(function(resolve){var _a;globalToastConfig=undefined;var wrapper=document.getElementById("beacon-toast-wrapper");if(!wrapper){return resolve()}var elm=(_a=wrapper.shadowRoot)===null||_a===void 0?void 0:_a.getElementById("beacon-toast");if(elm){var animationDuration=300;if(timeout){clearTimeout(timeout);timeout=undefined}elm.className=elm.className.replace("fadeIn","fadeOut");window.setTimeout(function(){var parent=wrapper.parentNode;if(parent){parent.removeChild(wrapper)}resolve()},animationDuration)}else{resolve()}})};exports.closeToast=closeToast;var registerClick=function(shadowRoot,id,callback){var button=shadowRoot.getElementById(id);if(button){button.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,callback(button)];case 1:_a.sent();return[2]}})})})}return button};var showElement=function(shadowRoot,id){var el=shadowRoot.getElementById(id);if(el){el.classList.remove("hide");el.classList.add("show")}};var hideElement=function(shadowRoot,id){var el=shadowRoot.getElementById(id);if(el){el.classList.add("hide");el.classList.remove("show")}};var hideLoader=function(shadowRoot){hideElement(shadowRoot,"beacon-toast-loader");showElement(shadowRoot,"beacon-toast-loader-placeholder")};var showClose=function(shadowRoot){showElement(shadowRoot,"beacon-toast-button-close");hideElement(shadowRoot,"beacon-toast-button-expand")};var collapseList=function(shadowRoot){var expandButton=shadowRoot.getElementById("beacon-toast-button-expand");var list=shadowRoot.getElementById("beacon-toast-list");if(expandButton&&list){expandButton.classList.remove("beacon-toast__upside_down");list.classList.add("hide");list.classList.remove("show")}};var expandList=function(shadowRoot){var expandButton=shadowRoot.getElementById("beacon-toast-button-expand");var list=shadowRoot.getElementById("beacon-toast-list");if(expandButton&&list){expandButton.classList.add("beacon-toast__upside_down");list.classList.remove("hide");list.classList.add("show")}};var expandOrCollapseList=function(shadowRoot){var expandButton=shadowRoot.getElementById("beacon-toast-button-expand");var list=shadowRoot.getElementById("beacon-toast-list");if(expandButton&&list){if(expandButton.classList.contains("beacon-toast__upside_down")){collapseList(shadowRoot)}else{expandList(shadowRoot)}}};var addActionsToToast=function(shadowRoot,toastConfig,list){return __awaiter(void 0,void 0,void 0,function(){var actions,actionPromises,actionItems,poweredByBeacon;return __generator(this,function(_a){switch(_a.label){case 0:actions=toastConfig.actions;if(!(actions&&actions.length>0))return[3,2];actionPromises=actions.map(function(action){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){return[2,createActionItem(action)]})})});return[4,Promise.all(actionPromises)];case 1:actionItems=_a.sent();actionItems.forEach(function(item){return list.appendChild(item)});poweredByBeacon=document.createElement("small");poweredByBeacon.classList.add("beacon-toast__powered");poweredByBeacon.innerHTML=toast_templates_1.toastTemplates.default.poweredByBeacon;list.appendChild(poweredByBeacon);return[3,3];case 2:showClose(shadowRoot);collapseList(shadowRoot);_a.label=3;case 3:return[2]}})})};var createNewToast=function(toastConfig){return __awaiter(void 0,void 0,void 0,function(){var timer,shadowRootEl,shadowRoot,wrapper,_a,style,html,styleEl,colorMode,elm,list,closeButton;return __generator(this,function(_b){switch(_b.label){case 0:globalToastConfig=toastConfig;timer=toastConfig.timer;shadowRootEl=document.createElement("div");shadowRootEl.setAttribute("id","beacon-toast-wrapper");shadowRoot=shadowRootEl.attachShadow({mode:"open"});wrapper=document.createElement("div");_a=getToastHTML(toastConfig),style=_a.style,html=_a.html;wrapper.innerHTML=html;styleEl=document.createElement("style");styleEl.textContent=style;shadowRoot.appendChild(wrapper);shadowRoot.appendChild(styleEl);if(timer){timeout=window.setTimeout(function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeToast()];case 1:_a.sent();return[2]}})})},timer)}document.body.prepend(shadowRootEl);colorMode=colorMode_1.getColorMode();elm=shadowRoot.getElementById("beacon-toast");if(elm){elm.classList.add("theme__"+colorMode)}list=shadowRoot.getElementById("beacon-toast-list");if(!list)return[3,2];return[4,addActionsToToast(shadowRoot,toastConfig,list)];case 1:_b.sent();_b.label=2;case 2:if(globalToastConfig.state==="loading"){expandTimeout=window.setTimeout(function(){return __awaiter(void 0,void 0,void 0,function(){var expandButton;return __generator(this,function(_a){expandButton=shadowRoot.getElementById("beacon-toast-button-expand");if(expandButton&&!expandButton.classList.contains("beacon-toast__upside_down")){expandOrCollapseList(shadowRoot)}return[2]})})},EXPAND_AFTER)}registerClick(shadowRoot,"beacon-toast-button-done",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeToast()];case 1:_a.sent();return[2]}})})});closeButton=registerClick(shadowRoot,"beacon-toast-button-close",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeToast()];case 1:_a.sent();return[2]}})})});if(closeButton&&globalToastConfig.state==="loading"){closeButton.classList.add("hide")}registerClick(shadowRoot,"beacon-toast-button-expand",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){expandOrCollapseList(shadowRoot);return[2]})})});return[2]}})})};var updateToast=function(toastConfig){return __awaiter(void 0,void 0,void 0,function(){var timer,wrapper,shadowRoot,list,toastTextEl,doneButton;return __generator(this,function(_a){switch(_a.label){case 0:globalToastConfig=__assign(__assign({},globalToastConfig),toastConfig);timer=toastConfig.timer;wrapper=document.getElementById("beacon-toast-wrapper");if(!wrapper){return[2]}shadowRoot=wrapper.shadowRoot;if(!shadowRoot){return[2]}list=shadowRoot.getElementById("beacon-toast-list");if(!list)return[3,2];removeAllChildNodes(list);return[4,addActionsToToast(shadowRoot,toastConfig,list)];case 1:_a.sent();_a.label=2;case 2:toastTextEl=shadowRoot.getElementById("beacon-text");if(toastTextEl){toastTextEl.innerHTML=formatToastText(toastConfig.body)}if(timer){timeout=window.setTimeout(function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeToast()];case 1:_a.sent();return[2]}})})},timer)}doneButton=shadowRoot.getElementById("beacon-toast-button-done");if(doneButton){doneButton.addEventListener("click",function(){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4,closeToast()];case 1:_a.sent();return[2]}})})})}return[2]}})})};var openToast=function(toastConfig){return __awaiter(void 0,void 0,void 0,function(){var wrapper,shadowRoot;var _a;return __generator(this,function(_b){switch(_b.label){case 0:if(expandTimeout){clearTimeout(expandTimeout)}wrapper=document.getElementById("beacon-toast-wrapper");if(!wrapper)return[3,6];if(!toastConfig.forceNew)return[3,3];return[4,closeToast()];case 1:_b.sent();return[4,createNewToast(toastConfig)];case 2:_b.sent();return[3,5];case 3:return[4,updateToast(toastConfig)];case 4:_b.sent();_b.label=5;case 5:return[3,8];case 6:return[4,createNewToast(toastConfig)];case 7:_b.sent();_b.label=8;case 8:if(globalToastConfig&&globalToastConfig.state==="finished"){shadowRoot=(_a=document.getElementById("beacon-toast-wrapper"))===null||_a===void 0?void 0:_a.shadowRoot;if(shadowRoot){hideLoader(shadowRoot);showClose(shadowRoot);expandList(shadowRoot)}}return[2]}})})};exports.openToast=openToast},{"../../colorMode":8,"../../utils/generate-uuid":85,"../../utils/replace-in-template":91,"./toast-templates":78}],78:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.toastTemplates=void 0;exports.toastTemplates={default:{html:'
\n
\n

{{text}}

\n
\n
\n
\n
\n
\n',css:":host {\n --animation-duration: 300ms;\n all: initial;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n\n.animated {\n animation-duration: var(--animation-duration);\n animation-fill-mode: both;\n}\n\n.fadeIn {\n animation-name: fadeIn;\n}\n\n.fadeOut {\n animation-name: fadeOut;\n}\n\n.beacon-toast__base {\n position: fixed;\n top: 16px;\n right: 16px;\n z-index: 2147483000;\n margin: 0 auto;\n border-radius: 8px;\n overflow: hidden;\n box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.1);\n flex-direction: column;\n}\n@media (max-width: 576px) {\n .beacon-toast__base {\n top: 8px;\n right: 8px;\n left: 8px;\n }\n}\n\n.theme__light.beacon-toast__base {\n background: #fff;\n}\n\n.theme__dark.beacon-toast__base {\n background: #27334c;\n}\n\n.theme__dark p {\n color: #6183ff;\n}\n\na {\n text-decoration: none;\n color: #3880ff;\n}\n\na svg {\n width: 12px;\n margin-left: 2px;\n}\n\na:visited {\n color: #3880ff;\n}\n\nhr {\n height: 1px;\n color: rgba(0, 0, 0, 0.12);\n background-color: rgba(0, 0, 0, 0.12);\n border: none;\n width: 100%;\n margin: 0;\n display: none;\n}\n\n.show {\n display: block !important;\n}\n\n.hide {\n display: none !important;\n}\n\n#beacon-toast-list {\n display: none;\n}\n\n.beacon-toast__upside_down {\n transform: rotate(180deg);\n}\n\n.beacon-toast__content {\n justify-content: space-between;\n max-height: 56px;\n}\n\n.beacon-toast__action__item,\n.beacon-toast__powered a,\n.beacon-toast__wallet__container,\n#beacon-text,\n.beacon-toast__action__item p {\n align-items: center;\n}\n\n.beacon-toast__content,\n.beacon-toast__base,\n.beacon-toast__action__item,\n.beacon-toast__powered a,\n#beacon-text,\n.beacon-toast__wallet__container {\n display: flex;\n}\n\n.beacon-toast__content,\n.beacon-toast__action__item,\n.beacon-toast__powered a {\n padding: 0 16px;\n font-family: Roboto, Helvetica, sans-serif;\n}\n\n#beacon-text strong {\n display: contents;\n}\n\n.beacon-toast__powered a {\n margin: 4px 0 12px;\n font-size: 12px;\n opacity: 0.64;\n}\n\n.beacon-toast__powered svg {\n width: 20px;\n height: 20px;\n margin: 0 2px 0 4px;\n}\n\n.beacon-toast__action__item {\n font-size: 14px;\n max-width: 40ch;\n}\n\n.beacon-toast__action__item p {\n margin-right: 8px;\n}\n\n.beacon-toast__action__item__subtitle,\n.beacon-toast__powered a {\n min-width: 88px;\n color: rgba(0, 0, 0, 0.54);\n}\n\n.theme__dark .beacon-toast__powered a {\n color: #7c99d6;\n}\n\n.beacon-toast__content__img {\n width: 24px;\n height: 24px;\n margin-right: 4px;\n}\n\n.beacon-toast__more {\n width: 14px;\n transition: transform 0.5s;\n}\n\na,\n.beacon-toast__more {\n cursor: pointer;\n}\n\na:hover {\n opacity: 0.64;\n}\n\n.theme__dark .beacon-toast__more {\n color: #7c99d6;\n}\n\n.beacon-toast__more--action {\n margin: 8px 0;\n}\n\n#beacon-text {\n padding-right: 24px;\n}\n\n.progress-line,\n.progress-line:before {\n height: 3px;\n width: 100%;\n margin: 0;\n}\n.progress-line {\n background-color: #a7c4f7;\n display: -webkit-flex;\n display: flex;\n}\n.progress-line:before {\n background-color: #3880ff;\n content: '';\n -webkit-animation: running-progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n animation: running-progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n}\n@-webkit-keyframes running-progress {\n 0% {\n margin-left: 0px;\n margin-right: 100%;\n }\n 50% {\n margin-left: 25%;\n margin-right: 0%;\n }\n 100% {\n margin-left: 100%;\n margin-right: 0;\n }\n}\n@keyframes running-progress {\n 0% {\n margin-left: 0px;\n margin-right: 100%;\n }\n 50% {\n margin-left: 25%;\n margin-right: 0%;\n }\n 100% {\n margin-left: 100%;\n margin-right: 0;\n }\n}\n",poweredByBeacon:'\n powered by\n \n beacon_logo\n \n \n \n \n Beacon\n\n'}}},{}],79:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Logger=void 0;var debug_1=require("../debug");var Logger=function(){function Logger(service){this.name=service}Logger.prototype.debug=function(method){var args=[];for(var _i=1;_i0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]500){logger.warn("getQrData",'The size of the payload in the QR code is quite long and some devices might not be able to scan it anymore. To reduce the QR size, try using a shorter "name", "appUrl" and "iconUrl"')}try{qr.addData(payload);qr.make();if(type==="svg"){return qr.createSvgTag()}else if(type==="ascii"){var length_1=qr.getModuleCount();var black=" ";var white=" ";var whiteLine=new Array(length_1+3).join(white);var blackLine=new Array(length_1+3).join(black);var ascii="";ascii+=blackLine+"\n";ascii+=whiteLine+"\n";for(var x=0;x=12){return text.substr(0,5)+"..."+text.substr(-5)}return text}},{}],93:[function(require,module,exports){"use strict";var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]>6];var primitive=(tag&32)===0;if((tag&31)===31){var oct=tag;tag=0;while((oct&128)===128){oct=buf.readUInt8(fail);if(buf.isError(oct))return oct;tag<<=7;tag|=oct&127}}else{tag&=31}var tagStr=der.tag[tag];return{cls:cls,primitive:primitive,tag:tag,tagStr:tagStr}}function derDecodeLen(buf,primitive,fail){var len=buf.readUInt8(fail);if(buf.isError(len))return len;if(!primitive&&len===128)return null;if((len&128)===0){return len}var num=len&127;if(num>4)return buf.error("length octect is too long");len=0;for(var i=0;i=256;i>>=8)lenOctets++;var header=new Buffer(1+1+lenOctets);header[0]=encodedTag;header[1]=128|lenOctets;for(var i=1+lenOctets,j=content.length;j>0;i--,j>>=8)header[i]=j&255;return this._createEncoderBuffer([header,content])};DERNode.prototype._encodeStr=function encodeStr(str,tag){if(tag==="bitstr"){return this._createEncoderBuffer([str.unused|0,str.data])}else if(tag==="bmpstr"){var buf=new Buffer(str.length*2);for(var i=0;i=40)return this.reporter.error("Second objid identifier OOB");id.splice(0,2,id[0]*40+id[1])}var size=0;for(var i=0;i=128;ident>>=7)size++}var objid=new Buffer(size);var offset=objid.length-1;for(var i=id.length-1;i>=0;i--){var ident=id[i];objid[offset--]=ident&127;while((ident>>=7)>0)objid[offset--]=128|ident&127}return this._createEncoderBuffer(objid)};function two(num){if(num<10)return"0"+num;else return num}DERNode.prototype._encodeTime=function encodeTime(time,tag){var str;var date=new Date(time);if(tag==="gentime"){str=[two(date.getFullYear()),two(date.getUTCMonth()+1),two(date.getUTCDate()),two(date.getUTCHours()),two(date.getUTCMinutes()),two(date.getUTCSeconds()),"Z"].join("")}else if(tag==="utctime"){str=[two(date.getFullYear()%100),two(date.getUTCMonth()+1),two(date.getUTCDate()),two(date.getUTCHours()),two(date.getUTCMinutes()),two(date.getUTCSeconds()),"Z"].join("")}else{this.reporter.error("Encoding "+tag+" time is not supported yet")}return this._encodeStr(str,"octstr")};DERNode.prototype._encodeNull=function encodeNull(){return this._createEncoderBuffer("")};DERNode.prototype._encodeInt=function encodeInt(num,values){if(typeof num==="string"){if(!values)return this.reporter.error("String int or enum given, but no values map");if(!values.hasOwnProperty(num)){return this.reporter.error("Values map doesn't contain: "+JSON.stringify(num))}num=values[num]}if(typeof num!=="number"&&!Buffer.isBuffer(num)){var numArray=num.toArray();if(!num.sign&&numArray[0]&128){numArray.unshift(0)}num=new Buffer(numArray)}if(Buffer.isBuffer(num)){var size=num.length;if(num.length===0)size++;var out=new Buffer(size);num.copy(out);if(num.length===0)out[0]=0;return this._createEncoderBuffer(out)}if(num<128)return this._createEncoderBuffer(num);if(num<256)return this._createEncoderBuffer([0,num]);var size=1;for(var i=num;i>=256;i>>=8)size++;var out=new Array(size);for(var i=out.length-1;i>=0;i--){out[i]=num&255;num>>=8}if(out[0]&128){out.unshift(0)}return this._createEncoderBuffer(new Buffer(out))};DERNode.prototype._encodeBool=function encodeBool(value){return this._createEncoderBuffer(value?255:0)};DERNode.prototype._use=function use(entity,obj){if(typeof entity==="function")entity=entity(obj);return entity._getEncoder("der").tree};DERNode.prototype._skipDefault=function skipDefault(dataBuffer,reporter,parent){var state=this._baseState;var i;if(state["default"]===null)return false;var data=dataBuffer.join();if(state.defaultBuffer===undefined)state.defaultBuffer=this._encodeValue(state["default"],reporter,parent).join();if(data.length!==state.defaultBuffer.length)return false;for(i=0;i=31)return reporter.error("Multi-octet tag encoding unsupported");if(!primitive)res|=32;res|=der.tagClassByName[cls||"universal"]<<6;return res}},{"../../asn1":95,buffer:185,inherits:245}],107:[function(require,module,exports){var encoders=exports;encoders.der=require("./der");encoders.pem=require("./pem")},{"./der":106,"./pem":108}],108:[function(require,module,exports){var inherits=require("inherits");var DEREncoder=require("./der");function PEMEncoder(entity){DEREncoder.call(this,entity);this.enc="pem"}inherits(PEMEncoder,DEREncoder);module.exports=PEMEncoder;PEMEncoder.prototype.encode=function encode(data,options){var buf=DEREncoder.prototype.encode.call(this,data);var p=buf.toString("base64");var out=["-----BEGIN "+options.label+"-----"];for(var i=0;i0)return left;return right};BN.min=function min(left,right){if(left.cmp(right)<0)return left;return right};BN.prototype._init=function init(number,base,endian){if(typeof number==="number"){return this._initNumber(number,base,endian)}if(typeof number==="object"){return this._initArray(number,base,endian)}if(base==="hex"){base=16}assert(base===(base|0)&&base>=2&&base<=36);number=number.toString().replace(/\s+/g,"");var start=0;if(number[0]==="-"){start++}if(base===16){this._parseHex(number,start)}else{this._parseBase(number,base,start)}if(number[0]==="-"){this.negative=1}this.strip();if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initNumber=function _initNumber(number,base,endian){if(number<0){this.negative=1;number=-number}if(number<67108864){this.words=[number&67108863];this.length=1}else if(number<4503599627370496){this.words=[number&67108863,number/67108864&67108863];this.length=2}else{assert(number<9007199254740992);this.words=[number&67108863,number/67108864&67108863,1];this.length=3}if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initArray=function _initArray(number,base,endian){assert(typeof number.length==="number");if(number.length<=0){this.words=[0];this.length=1;return this}this.length=Math.ceil(number.length/3);this.words=new Array(this.length);for(var i=0;i=0;i-=3){w=number[i]|number[i-1]<<8|number[i-2]<<16;this.words[j]|=w<>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}else if(endian==="le"){for(i=0,j=0;i>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}return this.strip()};function parseHex(str,start,end){var r=0;var len=Math.min(str.length,end);for(var i=start;i=49&&c<=54){r|=c-49+10}else if(c>=17&&c<=22){r|=c-17+10}else{r|=c&15}}return r}BN.prototype._parseHex=function _parseHex(number,start){this.length=Math.ceil((number.length-start)/6);this.words=new Array(this.length);for(var i=0;i=start;i-=6){w=parseHex(number,i,i+6);this.words[j]|=w<>>26-off&4194303;off+=24;if(off>=26){off-=26;j++}}if(i+6!==start){w=parseHex(number,start,i+6);this.words[j]|=w<>>26-off&4194303}this.strip()};function parseBase(str,start,end,mul){var r=0;var len=Math.min(str.length,end);for(var i=start;i=49){r+=c-49+10}else if(c>=17){r+=c-17+10}else{r+=c}}return r}BN.prototype._parseBase=function _parseBase(number,base,start){this.words=[0];this.length=1;for(var limbLen=0,limbPow=1;limbPow<=67108863;limbPow*=base){limbLen++}limbLen--;limbPow=limbPow/base|0;var total=number.length-start;var mod=total%limbLen;var end=Math.min(total,total-mod)+start;var word=0;for(var i=start;i1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};BN.prototype.inspect=function inspect(){return(this.red?""};var zeros=["","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"];var groupSizes=[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];var groupBases=[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];BN.prototype.toString=function toString(base,padding){base=base||10;padding=padding|0||1;var out;if(base===16||base==="hex"){out="";var off=0;var carry=0;for(var i=0;i>>24-off&16777215;if(carry!==0||i!==this.length-1){out=zeros[6-word.length]+word+out}else{out=word+out}off+=2;if(off>=26){off-=26;i--}}if(carry!==0){out=carry.toString(16)+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}if(base===(base|0)&&base>=2&&base<=36){var groupSize=groupSizes[base];var groupBase=groupBases[base];out="";var c=this.clone();c.negative=0;while(!c.isZero()){var r=c.modn(groupBase).toString(base);c=c.idivn(groupBase);if(!c.isZero()){out=zeros[groupSize-r.length]+r+out}else{out=r+out}}if(this.isZero()){out="0"+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var ret=this.words[0];if(this.length===2){ret+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){ret+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-ret:ret};BN.prototype.toJSON=function toJSON(){return this.toString(16)};BN.prototype.toBuffer=function toBuffer(endian,length){assert(typeof Buffer!=="undefined");return this.toArrayLike(Buffer,endian,length)};BN.prototype.toArray=function toArray(endian,length){return this.toArrayLike(Array,endian,length)};BN.prototype.toArrayLike=function toArrayLike(ArrayType,endian,length){var byteLength=this.byteLength();var reqLength=length||Math.max(1,byteLength);assert(byteLength<=reqLength,"byte array longer than desired length");assert(reqLength>0,"Requested array length <= 0");this.strip();var littleEndian=endian==="le";var res=new ArrayType(reqLength);var b,i;var q=this.clone();if(!littleEndian){for(i=0;i=4096){r+=13;t>>>=13}if(t>=64){r+=7;t>>>=7}if(t>=8){r+=4;t>>>=4}if(t>=2){r+=2;t>>>=2}return r+t}}BN.prototype._zeroBits=function _zeroBits(w){if(w===0)return 26;var t=w;var r=0;if((t&8191)===0){r+=13;t>>>=13}if((t&127)===0){r+=7;t>>>=7}if((t&15)===0){r+=4;t>>>=4}if((t&3)===0){r+=2;t>>>=2}if((t&1)===0){r++}return r};BN.prototype.bitLength=function bitLength(){var w=this.words[this.length-1];var hi=this._countBits(w);return(this.length-1)*26+hi};function toBitArray(num){var w=new Array(num.bitLength());for(var bit=0;bit>>wbit}return w}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var r=0;for(var i=0;inum.length)return this.clone().ior(num);return num.clone().ior(this)};BN.prototype.uor=function uor(num){if(this.length>num.length)return this.clone().iuor(num);return num.clone().iuor(this)};BN.prototype.iuand=function iuand(num){var b;if(this.length>num.length){b=num}else{b=this}for(var i=0;inum.length)return this.clone().iand(num);return num.clone().iand(this)};BN.prototype.uand=function uand(num){if(this.length>num.length)return this.clone().iuand(num);return num.clone().iuand(this)};BN.prototype.iuxor=function iuxor(num){var a;var b;if(this.length>num.length){a=this;b=num}else{a=num;b=this}for(var i=0;inum.length)return this.clone().ixor(num);return num.clone().ixor(this)};BN.prototype.uxor=function uxor(num){if(this.length>num.length)return this.clone().iuxor(num);return num.clone().iuxor(this)};BN.prototype.inotn=function inotn(width){assert(typeof width==="number"&&width>=0);var bytesNeeded=Math.ceil(width/26)|0;var bitsLeft=width%26;this._expand(bytesNeeded);if(bitsLeft>0){bytesNeeded--}for(var i=0;i0){this.words[i]=~this.words[i]&67108863>>26-bitsLeft}return this.strip()};BN.prototype.notn=function notn(width){return this.clone().inotn(width)};BN.prototype.setn=function setn(bit,val){assert(typeof bit==="number"&&bit>=0);var off=bit/26|0;var wbit=bit%26;this._expand(off+1);if(val){this.words[off]=this.words[off]|1<num.length){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>>26}for(;carry!==0&&i>>26}this.length=a.length;if(carry!==0){this.words[this.length]=carry;this.length++}else if(a!==this){for(;inum.length)return this.clone().iadd(num);return num.clone().iadd(this)};BN.prototype.isub=function isub(num){if(num.negative!==0){num.negative=0;var r=this.iadd(num);num.negative=1;return r._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(num);this.negative=1;return this._normSign()}var cmp=this.cmp(num);if(cmp===0){this.negative=0;this.length=1;this.words[0]=0;return this}var a,b;if(cmp>0){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>26;this.words[i]=r&67108863}for(;carry!==0&&i>26;this.words[i]=r&67108863}if(carry===0&&i>>26;var rword=carry&67108863;var maxJ=Math.min(k,num.length-1);for(var j=Math.max(0,k-self.length+1);j<=maxJ;j++){var i=k-j|0;a=self.words[i]|0;b=num.words[j]|0;r=a*b+rword;ncarry+=r/67108864|0;rword=r&67108863}out.words[k]=rword|0;carry=ncarry|0}if(carry!==0){out.words[k]=carry|0}else{out.length--}return out.strip()}var comb10MulTo=function comb10MulTo(self,num,out){var a=self.words;var b=num.words;var o=out.words;var c=0;var lo;var mid;var hi;var a0=a[0]|0;var al0=a0&8191;var ah0=a0>>>13;var a1=a[1]|0;var al1=a1&8191;var ah1=a1>>>13;var a2=a[2]|0;var al2=a2&8191;var ah2=a2>>>13;var a3=a[3]|0;var al3=a3&8191;var ah3=a3>>>13;var a4=a[4]|0;var al4=a4&8191;var ah4=a4>>>13;var a5=a[5]|0;var al5=a5&8191;var ah5=a5>>>13;var a6=a[6]|0;var al6=a6&8191;var ah6=a6>>>13;var a7=a[7]|0;var al7=a7&8191;var ah7=a7>>>13;var a8=a[8]|0;var al8=a8&8191;var ah8=a8>>>13;var a9=a[9]|0;var al9=a9&8191;var ah9=a9>>>13;var b0=b[0]|0;var bl0=b0&8191;var bh0=b0>>>13;var b1=b[1]|0;var bl1=b1&8191;var bh1=b1>>>13;var b2=b[2]|0;var bl2=b2&8191;var bh2=b2>>>13;var b3=b[3]|0;var bl3=b3&8191;var bh3=b3>>>13;var b4=b[4]|0;var bl4=b4&8191;var bh4=b4>>>13;var b5=b[5]|0;var bl5=b5&8191;var bh5=b5>>>13;var b6=b[6]|0;var bl6=b6&8191;var bh6=b6>>>13;var b7=b[7]|0;var bl7=b7&8191;var bh7=b7>>>13;var b8=b[8]|0;var bl8=b8&8191;var bh8=b8>>>13;var b9=b[9]|0;var bl9=b9&8191;var bh9=b9>>>13;out.negative=self.negative^num.negative;out.length=19;lo=Math.imul(al0,bl0);mid=Math.imul(al0,bh0);mid=mid+Math.imul(ah0,bl0)|0;hi=Math.imul(ah0,bh0);var w0=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w0>>>26)|0;w0&=67108863;lo=Math.imul(al1,bl0);mid=Math.imul(al1,bh0);mid=mid+Math.imul(ah1,bl0)|0;hi=Math.imul(ah1,bh0);lo=lo+Math.imul(al0,bl1)|0;mid=mid+Math.imul(al0,bh1)|0;mid=mid+Math.imul(ah0,bl1)|0;hi=hi+Math.imul(ah0,bh1)|0;var w1=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w1>>>26)|0;w1&=67108863;lo=Math.imul(al2,bl0);mid=Math.imul(al2,bh0);mid=mid+Math.imul(ah2,bl0)|0;hi=Math.imul(ah2,bh0);lo=lo+Math.imul(al1,bl1)|0;mid=mid+Math.imul(al1,bh1)|0;mid=mid+Math.imul(ah1,bl1)|0;hi=hi+Math.imul(ah1,bh1)|0;lo=lo+Math.imul(al0,bl2)|0;mid=mid+Math.imul(al0,bh2)|0;mid=mid+Math.imul(ah0,bl2)|0;hi=hi+Math.imul(ah0,bh2)|0;var w2=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w2>>>26)|0;w2&=67108863;lo=Math.imul(al3,bl0);mid=Math.imul(al3,bh0);mid=mid+Math.imul(ah3,bl0)|0;hi=Math.imul(ah3,bh0);lo=lo+Math.imul(al2,bl1)|0;mid=mid+Math.imul(al2,bh1)|0;mid=mid+Math.imul(ah2,bl1)|0;hi=hi+Math.imul(ah2,bh1)|0;lo=lo+Math.imul(al1,bl2)|0;mid=mid+Math.imul(al1,bh2)|0;mid=mid+Math.imul(ah1,bl2)|0;hi=hi+Math.imul(ah1,bh2)|0;lo=lo+Math.imul(al0,bl3)|0;mid=mid+Math.imul(al0,bh3)|0;mid=mid+Math.imul(ah0,bl3)|0;hi=hi+Math.imul(ah0,bh3)|0;var w3=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w3>>>26)|0;w3&=67108863;lo=Math.imul(al4,bl0);mid=Math.imul(al4,bh0);mid=mid+Math.imul(ah4,bl0)|0;hi=Math.imul(ah4,bh0);lo=lo+Math.imul(al3,bl1)|0;mid=mid+Math.imul(al3,bh1)|0;mid=mid+Math.imul(ah3,bl1)|0;hi=hi+Math.imul(ah3,bh1)|0;lo=lo+Math.imul(al2,bl2)|0;mid=mid+Math.imul(al2,bh2)|0;mid=mid+Math.imul(ah2,bl2)|0;hi=hi+Math.imul(ah2,bh2)|0;lo=lo+Math.imul(al1,bl3)|0;mid=mid+Math.imul(al1,bh3)|0;mid=mid+Math.imul(ah1,bl3)|0;hi=hi+Math.imul(ah1,bh3)|0;lo=lo+Math.imul(al0,bl4)|0;mid=mid+Math.imul(al0,bh4)|0;mid=mid+Math.imul(ah0,bl4)|0;hi=hi+Math.imul(ah0,bh4)|0;var w4=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w4>>>26)|0;w4&=67108863;lo=Math.imul(al5,bl0);mid=Math.imul(al5,bh0);mid=mid+Math.imul(ah5,bl0)|0;hi=Math.imul(ah5,bh0);lo=lo+Math.imul(al4,bl1)|0;mid=mid+Math.imul(al4,bh1)|0;mid=mid+Math.imul(ah4,bl1)|0;hi=hi+Math.imul(ah4,bh1)|0;lo=lo+Math.imul(al3,bl2)|0;mid=mid+Math.imul(al3,bh2)|0;mid=mid+Math.imul(ah3,bl2)|0;hi=hi+Math.imul(ah3,bh2)|0;lo=lo+Math.imul(al2,bl3)|0;mid=mid+Math.imul(al2,bh3)|0;mid=mid+Math.imul(ah2,bl3)|0;hi=hi+Math.imul(ah2,bh3)|0;lo=lo+Math.imul(al1,bl4)|0;mid=mid+Math.imul(al1,bh4)|0;mid=mid+Math.imul(ah1,bl4)|0;hi=hi+Math.imul(ah1,bh4)|0;lo=lo+Math.imul(al0,bl5)|0;mid=mid+Math.imul(al0,bh5)|0;mid=mid+Math.imul(ah0,bl5)|0;hi=hi+Math.imul(ah0,bh5)|0;var w5=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w5>>>26)|0;w5&=67108863;lo=Math.imul(al6,bl0);mid=Math.imul(al6,bh0);mid=mid+Math.imul(ah6,bl0)|0;hi=Math.imul(ah6,bh0);lo=lo+Math.imul(al5,bl1)|0;mid=mid+Math.imul(al5,bh1)|0;mid=mid+Math.imul(ah5,bl1)|0;hi=hi+Math.imul(ah5,bh1)|0;lo=lo+Math.imul(al4,bl2)|0;mid=mid+Math.imul(al4,bh2)|0;mid=mid+Math.imul(ah4,bl2)|0;hi=hi+Math.imul(ah4,bh2)|0;lo=lo+Math.imul(al3,bl3)|0;mid=mid+Math.imul(al3,bh3)|0;mid=mid+Math.imul(ah3,bl3)|0;hi=hi+Math.imul(ah3,bh3)|0;lo=lo+Math.imul(al2,bl4)|0;mid=mid+Math.imul(al2,bh4)|0;mid=mid+Math.imul(ah2,bl4)|0;hi=hi+Math.imul(ah2,bh4)|0;lo=lo+Math.imul(al1,bl5)|0;mid=mid+Math.imul(al1,bh5)|0;mid=mid+Math.imul(ah1,bl5)|0;hi=hi+Math.imul(ah1,bh5)|0;lo=lo+Math.imul(al0,bl6)|0;mid=mid+Math.imul(al0,bh6)|0;mid=mid+Math.imul(ah0,bl6)|0;hi=hi+Math.imul(ah0,bh6)|0;var w6=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w6>>>26)|0;w6&=67108863;lo=Math.imul(al7,bl0);mid=Math.imul(al7,bh0);mid=mid+Math.imul(ah7,bl0)|0;hi=Math.imul(ah7,bh0);lo=lo+Math.imul(al6,bl1)|0;mid=mid+Math.imul(al6,bh1)|0;mid=mid+Math.imul(ah6,bl1)|0;hi=hi+Math.imul(ah6,bh1)|0;lo=lo+Math.imul(al5,bl2)|0;mid=mid+Math.imul(al5,bh2)|0;mid=mid+Math.imul(ah5,bl2)|0;hi=hi+Math.imul(ah5,bh2)|0;lo=lo+Math.imul(al4,bl3)|0;mid=mid+Math.imul(al4,bh3)|0;mid=mid+Math.imul(ah4,bl3)|0;hi=hi+Math.imul(ah4,bh3)|0;lo=lo+Math.imul(al3,bl4)|0;mid=mid+Math.imul(al3,bh4)|0;mid=mid+Math.imul(ah3,bl4)|0;hi=hi+Math.imul(ah3,bh4)|0;lo=lo+Math.imul(al2,bl5)|0;mid=mid+Math.imul(al2,bh5)|0;mid=mid+Math.imul(ah2,bl5)|0;hi=hi+Math.imul(ah2,bh5)|0;lo=lo+Math.imul(al1,bl6)|0;mid=mid+Math.imul(al1,bh6)|0;mid=mid+Math.imul(ah1,bl6)|0;hi=hi+Math.imul(ah1,bh6)|0;lo=lo+Math.imul(al0,bl7)|0;mid=mid+Math.imul(al0,bh7)|0;mid=mid+Math.imul(ah0,bl7)|0;hi=hi+Math.imul(ah0,bh7)|0;var w7=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w7>>>26)|0;w7&=67108863;lo=Math.imul(al8,bl0);mid=Math.imul(al8,bh0);mid=mid+Math.imul(ah8,bl0)|0;hi=Math.imul(ah8,bh0);lo=lo+Math.imul(al7,bl1)|0;mid=mid+Math.imul(al7,bh1)|0;mid=mid+Math.imul(ah7,bl1)|0;hi=hi+Math.imul(ah7,bh1)|0;lo=lo+Math.imul(al6,bl2)|0;mid=mid+Math.imul(al6,bh2)|0;mid=mid+Math.imul(ah6,bl2)|0;hi=hi+Math.imul(ah6,bh2)|0;lo=lo+Math.imul(al5,bl3)|0;mid=mid+Math.imul(al5,bh3)|0;mid=mid+Math.imul(ah5,bl3)|0;hi=hi+Math.imul(ah5,bh3)|0;lo=lo+Math.imul(al4,bl4)|0;mid=mid+Math.imul(al4,bh4)|0;mid=mid+Math.imul(ah4,bl4)|0;hi=hi+Math.imul(ah4,bh4)|0;lo=lo+Math.imul(al3,bl5)|0;mid=mid+Math.imul(al3,bh5)|0;mid=mid+Math.imul(ah3,bl5)|0;hi=hi+Math.imul(ah3,bh5)|0;lo=lo+Math.imul(al2,bl6)|0;mid=mid+Math.imul(al2,bh6)|0;mid=mid+Math.imul(ah2,bl6)|0;hi=hi+Math.imul(ah2,bh6)|0;lo=lo+Math.imul(al1,bl7)|0;mid=mid+Math.imul(al1,bh7)|0;mid=mid+Math.imul(ah1,bl7)|0;hi=hi+Math.imul(ah1,bh7)|0;lo=lo+Math.imul(al0,bl8)|0;mid=mid+Math.imul(al0,bh8)|0;mid=mid+Math.imul(ah0,bl8)|0;hi=hi+Math.imul(ah0,bh8)|0;var w8=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w8>>>26)|0;w8&=67108863;lo=Math.imul(al9,bl0);mid=Math.imul(al9,bh0);mid=mid+Math.imul(ah9,bl0)|0;hi=Math.imul(ah9,bh0);lo=lo+Math.imul(al8,bl1)|0;mid=mid+Math.imul(al8,bh1)|0;mid=mid+Math.imul(ah8,bl1)|0;hi=hi+Math.imul(ah8,bh1)|0;lo=lo+Math.imul(al7,bl2)|0;mid=mid+Math.imul(al7,bh2)|0;mid=mid+Math.imul(ah7,bl2)|0;hi=hi+Math.imul(ah7,bh2)|0;lo=lo+Math.imul(al6,bl3)|0;mid=mid+Math.imul(al6,bh3)|0;mid=mid+Math.imul(ah6,bl3)|0;hi=hi+Math.imul(ah6,bh3)|0;lo=lo+Math.imul(al5,bl4)|0;mid=mid+Math.imul(al5,bh4)|0;mid=mid+Math.imul(ah5,bl4)|0;hi=hi+Math.imul(ah5,bh4)|0;lo=lo+Math.imul(al4,bl5)|0;mid=mid+Math.imul(al4,bh5)|0;mid=mid+Math.imul(ah4,bl5)|0;hi=hi+Math.imul(ah4,bh5)|0;lo=lo+Math.imul(al3,bl6)|0;mid=mid+Math.imul(al3,bh6)|0;mid=mid+Math.imul(ah3,bl6)|0;hi=hi+Math.imul(ah3,bh6)|0;lo=lo+Math.imul(al2,bl7)|0;mid=mid+Math.imul(al2,bh7)|0;mid=mid+Math.imul(ah2,bl7)|0;hi=hi+Math.imul(ah2,bh7)|0;lo=lo+Math.imul(al1,bl8)|0;mid=mid+Math.imul(al1,bh8)|0;mid=mid+Math.imul(ah1,bl8)|0;hi=hi+Math.imul(ah1,bh8)|0;lo=lo+Math.imul(al0,bl9)|0;mid=mid+Math.imul(al0,bh9)|0;mid=mid+Math.imul(ah0,bl9)|0;hi=hi+Math.imul(ah0,bh9)|0;var w9=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w9>>>26)|0;w9&=67108863;lo=Math.imul(al9,bl1);mid=Math.imul(al9,bh1);mid=mid+Math.imul(ah9,bl1)|0;hi=Math.imul(ah9,bh1);lo=lo+Math.imul(al8,bl2)|0;mid=mid+Math.imul(al8,bh2)|0;mid=mid+Math.imul(ah8,bl2)|0;hi=hi+Math.imul(ah8,bh2)|0;lo=lo+Math.imul(al7,bl3)|0;mid=mid+Math.imul(al7,bh3)|0;mid=mid+Math.imul(ah7,bl3)|0;hi=hi+Math.imul(ah7,bh3)|0;lo=lo+Math.imul(al6,bl4)|0;mid=mid+Math.imul(al6,bh4)|0;mid=mid+Math.imul(ah6,bl4)|0;hi=hi+Math.imul(ah6,bh4)|0;lo=lo+Math.imul(al5,bl5)|0;mid=mid+Math.imul(al5,bh5)|0;mid=mid+Math.imul(ah5,bl5)|0;hi=hi+Math.imul(ah5,bh5)|0;lo=lo+Math.imul(al4,bl6)|0;mid=mid+Math.imul(al4,bh6)|0;mid=mid+Math.imul(ah4,bl6)|0;hi=hi+Math.imul(ah4,bh6)|0;lo=lo+Math.imul(al3,bl7)|0;mid=mid+Math.imul(al3,bh7)|0;mid=mid+Math.imul(ah3,bl7)|0;hi=hi+Math.imul(ah3,bh7)|0;lo=lo+Math.imul(al2,bl8)|0;mid=mid+Math.imul(al2,bh8)|0;mid=mid+Math.imul(ah2,bl8)|0;hi=hi+Math.imul(ah2,bh8)|0;lo=lo+Math.imul(al1,bl9)|0;mid=mid+Math.imul(al1,bh9)|0;mid=mid+Math.imul(ah1,bl9)|0;hi=hi+Math.imul(ah1,bh9)|0;var w10=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w10>>>26)|0;w10&=67108863;lo=Math.imul(al9,bl2);mid=Math.imul(al9,bh2);mid=mid+Math.imul(ah9,bl2)|0;hi=Math.imul(ah9,bh2);lo=lo+Math.imul(al8,bl3)|0;mid=mid+Math.imul(al8,bh3)|0;mid=mid+Math.imul(ah8,bl3)|0;hi=hi+Math.imul(ah8,bh3)|0;lo=lo+Math.imul(al7,bl4)|0;mid=mid+Math.imul(al7,bh4)|0;mid=mid+Math.imul(ah7,bl4)|0;hi=hi+Math.imul(ah7,bh4)|0;lo=lo+Math.imul(al6,bl5)|0;mid=mid+Math.imul(al6,bh5)|0;mid=mid+Math.imul(ah6,bl5)|0;hi=hi+Math.imul(ah6,bh5)|0;lo=lo+Math.imul(al5,bl6)|0;mid=mid+Math.imul(al5,bh6)|0;mid=mid+Math.imul(ah5,bl6)|0;hi=hi+Math.imul(ah5,bh6)|0;lo=lo+Math.imul(al4,bl7)|0;mid=mid+Math.imul(al4,bh7)|0;mid=mid+Math.imul(ah4,bl7)|0;hi=hi+Math.imul(ah4,bh7)|0;lo=lo+Math.imul(al3,bl8)|0;mid=mid+Math.imul(al3,bh8)|0;mid=mid+Math.imul(ah3,bl8)|0;hi=hi+Math.imul(ah3,bh8)|0;lo=lo+Math.imul(al2,bl9)|0;mid=mid+Math.imul(al2,bh9)|0;mid=mid+Math.imul(ah2,bl9)|0;hi=hi+Math.imul(ah2,bh9)|0;var w11=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w11>>>26)|0;w11&=67108863;lo=Math.imul(al9,bl3);mid=Math.imul(al9,bh3);mid=mid+Math.imul(ah9,bl3)|0;hi=Math.imul(ah9,bh3);lo=lo+Math.imul(al8,bl4)|0;mid=mid+Math.imul(al8,bh4)|0;mid=mid+Math.imul(ah8,bl4)|0;hi=hi+Math.imul(ah8,bh4)|0;lo=lo+Math.imul(al7,bl5)|0;mid=mid+Math.imul(al7,bh5)|0;mid=mid+Math.imul(ah7,bl5)|0;hi=hi+Math.imul(ah7,bh5)|0;lo=lo+Math.imul(al6,bl6)|0;mid=mid+Math.imul(al6,bh6)|0;mid=mid+Math.imul(ah6,bl6)|0;hi=hi+Math.imul(ah6,bh6)|0;lo=lo+Math.imul(al5,bl7)|0;mid=mid+Math.imul(al5,bh7)|0;mid=mid+Math.imul(ah5,bl7)|0;hi=hi+Math.imul(ah5,bh7)|0;lo=lo+Math.imul(al4,bl8)|0;mid=mid+Math.imul(al4,bh8)|0;mid=mid+Math.imul(ah4,bl8)|0;hi=hi+Math.imul(ah4,bh8)|0;lo=lo+Math.imul(al3,bl9)|0;mid=mid+Math.imul(al3,bh9)|0;mid=mid+Math.imul(ah3,bl9)|0;hi=hi+Math.imul(ah3,bh9)|0;var w12=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w12>>>26)|0;w12&=67108863;lo=Math.imul(al9,bl4);mid=Math.imul(al9,bh4);mid=mid+Math.imul(ah9,bl4)|0;hi=Math.imul(ah9,bh4);lo=lo+Math.imul(al8,bl5)|0;mid=mid+Math.imul(al8,bh5)|0;mid=mid+Math.imul(ah8,bl5)|0;hi=hi+Math.imul(ah8,bh5)|0;lo=lo+Math.imul(al7,bl6)|0;mid=mid+Math.imul(al7,bh6)|0;mid=mid+Math.imul(ah7,bl6)|0;hi=hi+Math.imul(ah7,bh6)|0;lo=lo+Math.imul(al6,bl7)|0;mid=mid+Math.imul(al6,bh7)|0;mid=mid+Math.imul(ah6,bl7)|0;hi=hi+Math.imul(ah6,bh7)|0;lo=lo+Math.imul(al5,bl8)|0;mid=mid+Math.imul(al5,bh8)|0;mid=mid+Math.imul(ah5,bl8)|0;hi=hi+Math.imul(ah5,bh8)|0;lo=lo+Math.imul(al4,bl9)|0;mid=mid+Math.imul(al4,bh9)|0;mid=mid+Math.imul(ah4,bl9)|0;hi=hi+Math.imul(ah4,bh9)|0;var w13=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w13>>>26)|0;w13&=67108863;lo=Math.imul(al9,bl5);mid=Math.imul(al9,bh5);mid=mid+Math.imul(ah9,bl5)|0;hi=Math.imul(ah9,bh5);lo=lo+Math.imul(al8,bl6)|0;mid=mid+Math.imul(al8,bh6)|0;mid=mid+Math.imul(ah8,bl6)|0;hi=hi+Math.imul(ah8,bh6)|0;lo=lo+Math.imul(al7,bl7)|0;mid=mid+Math.imul(al7,bh7)|0;mid=mid+Math.imul(ah7,bl7)|0;hi=hi+Math.imul(ah7,bh7)|0;lo=lo+Math.imul(al6,bl8)|0;mid=mid+Math.imul(al6,bh8)|0;mid=mid+Math.imul(ah6,bl8)|0;hi=hi+Math.imul(ah6,bh8)|0;lo=lo+Math.imul(al5,bl9)|0;mid=mid+Math.imul(al5,bh9)|0;mid=mid+Math.imul(ah5,bl9)|0;hi=hi+Math.imul(ah5,bh9)|0;var w14=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w14>>>26)|0;w14&=67108863;lo=Math.imul(al9,bl6);mid=Math.imul(al9,bh6);mid=mid+Math.imul(ah9,bl6)|0;hi=Math.imul(ah9,bh6);lo=lo+Math.imul(al8,bl7)|0;mid=mid+Math.imul(al8,bh7)|0;mid=mid+Math.imul(ah8,bl7)|0;hi=hi+Math.imul(ah8,bh7)|0;lo=lo+Math.imul(al7,bl8)|0;mid=mid+Math.imul(al7,bh8)|0;mid=mid+Math.imul(ah7,bl8)|0;hi=hi+Math.imul(ah7,bh8)|0;lo=lo+Math.imul(al6,bl9)|0;mid=mid+Math.imul(al6,bh9)|0;mid=mid+Math.imul(ah6,bl9)|0;hi=hi+Math.imul(ah6,bh9)|0;var w15=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w15>>>26)|0;w15&=67108863;lo=Math.imul(al9,bl7);mid=Math.imul(al9,bh7);mid=mid+Math.imul(ah9,bl7)|0;hi=Math.imul(ah9,bh7);lo=lo+Math.imul(al8,bl8)|0;mid=mid+Math.imul(al8,bh8)|0;mid=mid+Math.imul(ah8,bl8)|0;hi=hi+Math.imul(ah8,bh8)|0;lo=lo+Math.imul(al7,bl9)|0;mid=mid+Math.imul(al7,bh9)|0;mid=mid+Math.imul(ah7,bl9)|0;hi=hi+Math.imul(ah7,bh9)|0;var w16=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w16>>>26)|0;w16&=67108863;lo=Math.imul(al9,bl8);mid=Math.imul(al9,bh8);mid=mid+Math.imul(ah9,bl8)|0;hi=Math.imul(ah9,bh8);lo=lo+Math.imul(al8,bl9)|0;mid=mid+Math.imul(al8,bh9)|0;mid=mid+Math.imul(ah8,bl9)|0;hi=hi+Math.imul(ah8,bh9)|0;var w17=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w17>>>26)|0;w17&=67108863;lo=Math.imul(al9,bl9);mid=Math.imul(al9,bh9);mid=mid+Math.imul(ah9,bl9)|0;hi=Math.imul(ah9,bh9);var w18=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w18>>>26)|0;w18&=67108863;o[0]=w0;o[1]=w1;o[2]=w2;o[3]=w3;o[4]=w4;o[5]=w5;o[6]=w6;o[7]=w7;o[8]=w8;o[9]=w9;o[10]=w10;o[11]=w11;o[12]=w12;o[13]=w13;o[14]=w14;o[15]=w15;o[16]=w16;o[17]=w17;o[18]=w18;if(c!==0){o[19]=c;out.length++}return out};if(!Math.imul){comb10MulTo=smallMulTo}function bigMulTo(self,num,out){out.negative=num.negative^self.negative;out.length=self.length+num.length;var carry=0;var hncarry=0;for(var k=0;k>>26)|0;hncarry+=ncarry>>>26;ncarry&=67108863}out.words[k]=rword;carry=ncarry;ncarry=hncarry}if(carry!==0){out.words[k]=carry}else{out.length--}return out.strip()}function jumboMulTo(self,num,out){var fftm=new FFTM;return fftm.mulp(self,num,out)}BN.prototype.mulTo=function mulTo(num,out){var res;var len=this.length+num.length;if(this.length===10&&num.length===10){res=comb10MulTo(this,num,out)}else if(len<63){res=smallMulTo(this,num,out)}else if(len<1024){res=bigMulTo(this,num,out)}else{res=jumboMulTo(this,num,out)}return res};function FFTM(x,y){this.x=x;this.y=y}FFTM.prototype.makeRBT=function makeRBT(N){var t=new Array(N);var l=BN.prototype._countBits(N)-1;for(var i=0;i>=1}return rb};FFTM.prototype.permute=function permute(rbt,rws,iws,rtws,itws,N){for(var i=0;i>>1){i++}return 1<>>13;rws[2*i+1]=carry&8191;carry=carry>>>13}for(i=2*len;i>=26;carry+=w/67108864|0;carry+=lo>>>26;this.words[i]=lo&67108863}if(carry!==0){this.words[i]=carry;this.length++}return this};BN.prototype.muln=function muln(num){return this.clone().imuln(num)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(num){var w=toBitArray(num);if(w.length===0)return new BN(1);var res=this;for(var i=0;i=0);var r=bits%26;var s=(bits-r)/26;var carryMask=67108863>>>26-r<<26-r;var i;if(r!==0){var carry=0;for(i=0;i>>26-r}if(carry){this.words[i]=carry;this.length++}}if(s!==0){for(i=this.length-1;i>=0;i--){this.words[i+s]=this.words[i]}for(i=0;i=0);var h;if(hint){h=(hint-hint%26)/26}else{h=0}var r=bits%26;var s=Math.min((bits-r)/26,this.length);var mask=67108863^67108863>>>r<s){this.length-=s;for(i=0;i=0&&(carry!==0||i>=h);i--){var word=this.words[i]|0;this.words[i]=carry<<26-r|word>>>r;carry=word&mask}if(maskedWords&&carry!==0){maskedWords.words[maskedWords.length++]=carry}if(this.length===0){this.words[0]=0;this.length=1}return this.strip()};BN.prototype.ishrn=function ishrn(bits,hint,extended){assert(this.negative===0);return this.iushrn(bits,hint,extended)};BN.prototype.shln=function shln(bits){return this.clone().ishln(bits)};BN.prototype.ushln=function ushln(bits){return this.clone().iushln(bits)};BN.prototype.shrn=function shrn(bits){return this.clone().ishrn(bits)};BN.prototype.ushrn=function ushrn(bits){return this.clone().iushrn(bits)};BN.prototype.testn=function testn(bit){assert(typeof bit==="number"&&bit>=0);var r=bit%26;var s=(bit-r)/26;var q=1<=0);var r=bits%26;var s=(bits-r)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=s){return this}if(r!==0){s++}this.length=Math.min(s,this.length);if(r!==0){var mask=67108863^67108863>>>r<=67108864;i++){this.words[i]-=67108864;if(i===this.length-1){this.words[i+1]=1}else{this.words[i+1]++}}this.length=Math.max(this.length,i+1);return this};BN.prototype.isubn=function isubn(num){assert(typeof num==="number");assert(num<67108864);if(num<0)return this.iaddn(-num);if(this.negative!==0){this.negative=0;this.iaddn(num);this.negative=1;return this}this.words[0]-=num;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var i=0;i>26)-(right/67108864|0);this.words[i+shift]=w&67108863}for(;i>26;this.words[i+shift]=w&67108863}if(carry===0)return this.strip();assert(carry===-1);carry=0;for(i=0;i>26;this.words[i]=w&67108863}this.negative=1;return this.strip()};BN.prototype._wordDiv=function _wordDiv(num,mode){var shift=this.length-num.length;var a=this.clone();var b=num;var bhi=b.words[b.length-1]|0;var bhiBits=this._countBits(bhi);shift=26-bhiBits;if(shift!==0){b=b.ushln(shift);a.iushln(shift);bhi=b.words[b.length-1]|0}var m=a.length-b.length;var q;if(mode!=="mod"){q=new BN(null);q.length=m+1;q.words=new Array(q.length);for(var i=0;i=0;j--){var qj=(a.words[b.length+j]|0)*67108864+(a.words[b.length+j-1]|0);qj=Math.min(qj/bhi|0,67108863);a._ishlnsubmul(b,qj,j);while(a.negative!==0){qj--;a.negative=0;a._ishlnsubmul(b,1,j);if(!a.isZero()){a.negative^=1}}if(q){q.words[j]=qj}}if(q){q.strip()}a.strip();if(mode!=="div"&&shift!==0){a.iushrn(shift)}return{div:q||null,mod:a}};BN.prototype.divmod=function divmod(num,mode,positive){assert(!num.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var div,mod,res;if(this.negative!==0&&num.negative===0){res=this.neg().divmod(num,mode);if(mode!=="mod"){div=res.div.neg()}if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.iadd(num)}}return{div:div,mod:mod}}if(this.negative===0&&num.negative!==0){res=this.divmod(num.neg(),mode);if(mode!=="mod"){div=res.div.neg()}return{div:div,mod:res.mod}}if((this.negative&num.negative)!==0){res=this.neg().divmod(num.neg(),mode);if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.isub(num)}}return{div:res.div,mod:mod}}if(num.length>this.length||this.cmp(num)<0){return{div:new BN(0),mod:this}}if(num.length===1){if(mode==="div"){return{div:this.divn(num.words[0]),mod:null}}if(mode==="mod"){return{div:null,mod:new BN(this.modn(num.words[0]))}}return{div:this.divn(num.words[0]),mod:new BN(this.modn(num.words[0]))}}return this._wordDiv(num,mode)};BN.prototype.div=function div(num){return this.divmod(num,"div",false).div};BN.prototype.mod=function mod(num){return this.divmod(num,"mod",false).mod};BN.prototype.umod=function umod(num){return this.divmod(num,"mod",true).mod};BN.prototype.divRound=function divRound(num){var dm=this.divmod(num);if(dm.mod.isZero())return dm.div;var mod=dm.div.negative!==0?dm.mod.isub(num):dm.mod;var half=num.ushrn(1);var r2=num.andln(1);var cmp=mod.cmp(half);if(cmp<0||r2===1&&cmp===0)return dm.div;return dm.div.negative!==0?dm.div.isubn(1):dm.div.iaddn(1)};BN.prototype.modn=function modn(num){assert(num<=67108863);var p=(1<<26)%num;var acc=0;for(var i=this.length-1;i>=0;i--){acc=(p*acc+(this.words[i]|0))%num}return acc};BN.prototype.idivn=function idivn(num){assert(num<=67108863);var carry=0;for(var i=this.length-1;i>=0;i--){var w=(this.words[i]|0)+carry*67108864;this.words[i]=w/num|0;carry=w%num}return this.strip()};BN.prototype.divn=function divn(num){return this.clone().idivn(num)};BN.prototype.egcd=function egcd(p){assert(p.negative===0);assert(!p.isZero());var x=this;var y=p.clone();if(x.negative!==0){x=x.umod(p)}else{x=x.clone()}var A=new BN(1);var B=new BN(0);var C=new BN(0);var D=new BN(1);var g=0;while(x.isEven()&&y.isEven()){x.iushrn(1);y.iushrn(1);++g}var yp=y.clone();var xp=x.clone();while(!x.isZero()){for(var i=0,im=1;(x.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){x.iushrn(i);while(i-- >0){if(A.isOdd()||B.isOdd()){A.iadd(yp);B.isub(xp)}A.iushrn(1);B.iushrn(1)}}for(var j=0,jm=1;(y.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){y.iushrn(j);while(j-- >0){if(C.isOdd()||D.isOdd()){C.iadd(yp);D.isub(xp)}C.iushrn(1);D.iushrn(1)}}if(x.cmp(y)>=0){x.isub(y);A.isub(C);B.isub(D)}else{y.isub(x);C.isub(A);D.isub(B)}}return{a:C,b:D,gcd:y.iushln(g)}};BN.prototype._invmp=function _invmp(p){assert(p.negative===0);assert(!p.isZero());var a=this;var b=p.clone();if(a.negative!==0){a=a.umod(p)}else{a=a.clone()}var x1=new BN(1);var x2=new BN(0);var delta=b.clone();while(a.cmpn(1)>0&&b.cmpn(1)>0){for(var i=0,im=1;(a.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){a.iushrn(i);while(i-- >0){if(x1.isOdd()){x1.iadd(delta)}x1.iushrn(1)}}for(var j=0,jm=1;(b.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){b.iushrn(j);while(j-- >0){if(x2.isOdd()){x2.iadd(delta)}x2.iushrn(1)}}if(a.cmp(b)>=0){a.isub(b);x1.isub(x2)}else{b.isub(a);x2.isub(x1)}}var res;if(a.cmpn(1)===0){res=x1}else{res=x2}if(res.cmpn(0)<0){res.iadd(p)}return res};BN.prototype.gcd=function gcd(num){if(this.isZero())return num.abs();if(num.isZero())return this.abs();var a=this.clone();var b=num.clone();a.negative=0;b.negative=0;for(var shift=0;a.isEven()&&b.isEven();shift++){a.iushrn(1);b.iushrn(1)}do{while(a.isEven()){a.iushrn(1)}while(b.isEven()){b.iushrn(1)}var r=a.cmp(b);if(r<0){var t=a;a=b;b=t}else if(r===0||b.cmpn(1)===0){break}a.isub(b)}while(true);return b.iushln(shift)};BN.prototype.invm=function invm(num){return this.egcd(num).a.umod(num)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(num){return this.words[0]&num};BN.prototype.bincn=function bincn(bit){assert(typeof bit==="number");var r=bit%26;var s=(bit-r)/26;var q=1<>>26;w&=67108863;this.words[i]=w}if(carry!==0){this.words[i]=carry;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(num){var negative=num<0;if(this.negative!==0&&!negative)return-1;if(this.negative===0&&negative)return 1;this.strip();var res;if(this.length>1){res=1}else{if(negative){num=-num}assert(num<=67108863,"Number is too big");var w=this.words[0]|0;res=w===num?0:wnum.length)return 1;if(this.length=0;i--){var a=this.words[i]|0;var b=num.words[i]|0;if(a===b)continue;if(ab){res=1}break}return res};BN.prototype.gtn=function gtn(num){return this.cmpn(num)===1};BN.prototype.gt=function gt(num){return this.cmp(num)===1};BN.prototype.gten=function gten(num){return this.cmpn(num)>=0};BN.prototype.gte=function gte(num){return this.cmp(num)>=0};BN.prototype.ltn=function ltn(num){return this.cmpn(num)===-1};BN.prototype.lt=function lt(num){return this.cmp(num)===-1};BN.prototype.lten=function lten(num){return this.cmpn(num)<=0};BN.prototype.lte=function lte(num){return this.cmp(num)<=0};BN.prototype.eqn=function eqn(num){return this.cmpn(num)===0};BN.prototype.eq=function eq(num){return this.cmp(num)===0};BN.red=function red(num){return new Red(num)};BN.prototype.toRed=function toRed(ctx){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return ctx.convertTo(this)._forceRed(ctx)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(ctx){this.red=ctx;return this};BN.prototype.forceRed=function forceRed(ctx){assert(!this.red,"Already a number in reduction context");return this._forceRed(ctx)};BN.prototype.redAdd=function redAdd(num){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,num)};BN.prototype.redIAdd=function redIAdd(num){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,num)};BN.prototype.redSub=function redSub(num){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,num)};BN.prototype.redISub=function redISub(num){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,num)};BN.prototype.redShl=function redShl(num){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,num)};BN.prototype.redMul=function redMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.mul(this,num)};BN.prototype.redIMul=function redIMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.imul(this,num)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(num){assert(this.red&&!num.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,num)};var primes={k256:null,p224:null,p192:null,p25519:null};function MPrime(name,p){this.name=name;this.p=new BN(p,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var tmp=new BN(null);tmp.words=new Array(Math.ceil(this.n/13));return tmp};MPrime.prototype.ireduce=function ireduce(num){var r=num;var rlen;do{this.split(r,this.tmp);r=this.imulK(r);r=r.iadd(this.tmp);rlen=r.bitLength()}while(rlen>this.n);var cmp=rlen0){r.isub(this.p)}else{r.strip()}return r};MPrime.prototype.split=function split(input,out){input.iushrn(this.n,0,out)};MPrime.prototype.imulK=function imulK(num){return num.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits(K256,MPrime);K256.prototype.split=function split(input,output){var mask=4194303;var outLen=Math.min(input.length,9);for(var i=0;i>>22;prev=next}prev>>>=22;input.words[i-10]=prev;if(prev===0&&input.length>10){input.length-=10}else{input.length-=9}};K256.prototype.imulK=function imulK(num){num.words[num.length]=0;num.words[num.length+1]=0;num.length+=2;var lo=0;for(var i=0;i>>=26;num.words[i]=lo;carry=hi}if(carry!==0){num.words[num.length++]=carry}return num};BN._prime=function prime(name){if(primes[name])return primes[name];var prime;if(name==="k256"){prime=new K256}else if(name==="p224"){prime=new P224}else if(name==="p192"){prime=new P192}else if(name==="p25519"){prime=new P25519}else{throw new Error("Unknown prime "+name)}primes[name]=prime;return prime};function Red(m){if(typeof m==="string"){var prime=BN._prime(m);this.m=prime.p;this.prime=prime}else{assert(m.gtn(1),"modulus must be greater than 1");this.m=m;this.prime=null}}Red.prototype._verify1=function _verify1(a){assert(a.negative===0,"red works only with positives");assert(a.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(a,b){assert((a.negative|b.negative)===0,"red works only with positives");assert(a.red&&a.red===b.red,"red works only with red numbers")};Red.prototype.imod=function imod(a){if(this.prime)return this.prime.ireduce(a)._forceRed(this);return a.umod(this.m)._forceRed(this)};Red.prototype.neg=function neg(a){if(a.isZero()){return a.clone()}return this.m.sub(a)._forceRed(this)};Red.prototype.add=function add(a,b){this._verify2(a,b);var res=a.add(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res._forceRed(this)};Red.prototype.iadd=function iadd(a,b){this._verify2(a,b);var res=a.iadd(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res};Red.prototype.sub=function sub(a,b){this._verify2(a,b);var res=a.sub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res._forceRed(this)};Red.prototype.isub=function isub(a,b){this._verify2(a,b);var res=a.isub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res};Red.prototype.shl=function shl(a,num){this._verify1(a);return this.imod(a.ushln(num))};Red.prototype.imul=function imul(a,b){this._verify2(a,b);return this.imod(a.imul(b))};Red.prototype.mul=function mul(a,b){this._verify2(a,b);return this.imod(a.mul(b))};Red.prototype.isqr=function isqr(a){return this.imul(a,a.clone())};Red.prototype.sqr=function sqr(a){return this.mul(a,a)};Red.prototype.sqrt=function sqrt(a){if(a.isZero())return a.clone();var mod3=this.m.andln(3);assert(mod3%2===1);if(mod3===3){var pow=this.m.add(new BN(1)).iushrn(2);return this.pow(a,pow)}var q=this.m.subn(1);var s=0;while(!q.isZero()&&q.andln(1)===0){s++;q.iushrn(1)}assert(!q.isZero());var one=new BN(1).toRed(this);var nOne=one.redNeg();var lpow=this.m.subn(1).iushrn(1);var z=this.m.bitLength();z=new BN(2*z*z).toRed(this);while(this.pow(z,lpow).cmp(nOne)!==0){z.redIAdd(nOne)}var c=this.pow(z,q);var r=this.pow(a,q.addn(1).iushrn(1));var t=this.pow(a,q);var m=s;while(t.cmp(one)!==0){var tmp=t;for(var i=0;tmp.cmp(one)!==0;i++){tmp=tmp.redSqr()}assert(i=0;i--){var word=num.words[i];for(var j=start-1;j>=0;j--){var bit=word>>j&1;if(res!==wnd[0]){res=this.sqr(res)}if(bit===0&¤t===0){currentLen=0;continue}current<<=1;current|=bit;currentLen++;if(currentLen!==windowSize&&(i!==0||j!==0))continue;res=this.mul(res,wnd[current]);currentLen=0;current=0}start=26}return res};Red.prototype.convertTo=function convertTo(num){var r=num.umod(this.m);return r===num?r.clone():r};Red.prototype.convertFrom=function convertFrom(num){var res=num.clone();res.red=null;return res};BN.mont=function mont(num){return new Mont(num)};function Mont(m){Red.call(this,m);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits(Mont,Red);Mont.prototype.convertTo=function convertTo(num){return this.imod(num.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(num){var r=this.imod(num.mul(this.rinv));r.red=null;return r};Mont.prototype.imul=function imul(a,b){if(a.isZero()||b.isZero()){a.words[0]=0;a.length=1;return a}var t=a.imul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.mul=function mul(a,b){if(a.isZero()||b.isZero())return new BN(0)._forceRed(this);var t=a.mul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.invm=function invm(a){var res=this.imod(a._invmp(this.m).mul(this.r2));return res._forceRed(this)}})(typeof module==="undefined"||module,this)},{buffer:141}],110:[function(require,module,exports){module.exports=require("./lib/axios")},{"./lib/axios":112}],111:[function(require,module,exports){"use strict";var utils=require("./../utils");var settle=require("./../core/settle");var cookies=require("./../helpers/cookies");var buildURL=require("./../helpers/buildURL");var buildFullPath=require("../core/buildFullPath");var parseHeaders=require("./../helpers/parseHeaders");var isURLSameOrigin=require("./../helpers/isURLSameOrigin");var createError=require("../core/createError");module.exports=function xhrAdapter(config){return new Promise(function dispatchXhrRequest(resolve,reject){var requestData=config.data;var requestHeaders=config.headers;if(utils.isFormData(requestData)){delete requestHeaders["Content-Type"]}var request=new XMLHttpRequest;if(config.auth){var username=config.auth.username||"";var password=config.auth.password?unescape(encodeURIComponent(config.auth.password)):"";requestHeaders.Authorization="Basic "+btoa(username+":"+password)}var fullPath=buildFullPath(config.baseURL,config.url);request.open(config.method.toUpperCase(),buildURL(fullPath,config.params,config.paramsSerializer),true);request.timeout=config.timeout;request.onreadystatechange=function handleLoad(){if(!request||request.readyState!==4){return}if(request.status===0&&!(request.responseURL&&request.responseURL.indexOf("file:")===0)){return}var responseHeaders="getAllResponseHeaders"in request?parseHeaders(request.getAllResponseHeaders()):null;var responseData=!config.responseType||config.responseType==="text"?request.responseText:request.response;var response={data:responseData,status:request.status,statusText:request.statusText,headers:responseHeaders,config:config,request:request};settle(resolve,reject,response);request=null};request.onabort=function handleAbort(){if(!request){return}reject(createError("Request aborted",config,"ECONNABORTED",request));request=null};request.onerror=function handleError(){reject(createError("Network Error",config,null,request));request=null};request.ontimeout=function handleTimeout(){var timeoutErrorMessage="timeout of "+config.timeout+"ms exceeded";if(config.timeoutErrorMessage){timeoutErrorMessage=config.timeoutErrorMessage}reject(createError(timeoutErrorMessage,config,"ECONNABORTED",request));request=null};if(utils.isStandardBrowserEnv()){var xsrfValue=(config.withCredentials||isURLSameOrigin(fullPath))&&config.xsrfCookieName?cookies.read(config.xsrfCookieName):undefined;if(xsrfValue){requestHeaders[config.xsrfHeaderName]=xsrfValue}}if("setRequestHeader"in request){utils.forEach(requestHeaders,function setRequestHeader(val,key){if(typeof requestData==="undefined"&&key.toLowerCase()==="content-type"){delete requestHeaders[key]}else{request.setRequestHeader(key,val)}})}if(!utils.isUndefined(config.withCredentials)){request.withCredentials=!!config.withCredentials}if(config.responseType){try{request.responseType=config.responseType}catch(e){if(config.responseType!=="json"){throw e}}}if(typeof config.onDownloadProgress==="function"){request.addEventListener("progress",config.onDownloadProgress)}if(typeof config.onUploadProgress==="function"&&request.upload){request.upload.addEventListener("progress",config.onUploadProgress)}if(config.cancelToken){config.cancelToken.promise.then(function onCanceled(cancel){if(!request){return}request.abort();reject(cancel);request=null})}if(!requestData){requestData=null}request.send(requestData)})}},{"../core/buildFullPath":118,"../core/createError":119,"./../core/settle":123,"./../helpers/buildURL":127,"./../helpers/cookies":129,"./../helpers/isURLSameOrigin":132,"./../helpers/parseHeaders":134,"./../utils":136}],112:[function(require,module,exports){"use strict";var utils=require("./utils");var bind=require("./helpers/bind");var Axios=require("./core/Axios");var mergeConfig=require("./core/mergeConfig");var defaults=require("./defaults");function createInstance(defaultConfig){var context=new Axios(defaultConfig);var instance=bind(Axios.prototype.request,context);utils.extend(instance,Axios.prototype,context);utils.extend(instance,context);return instance}var axios=createInstance(defaults);axios.Axios=Axios;axios.create=function create(instanceConfig){return createInstance(mergeConfig(axios.defaults,instanceConfig))};axios.Cancel=require("./cancel/Cancel");axios.CancelToken=require("./cancel/CancelToken");axios.isCancel=require("./cancel/isCancel");axios.all=function all(promises){return Promise.all(promises)};axios.spread=require("./helpers/spread");axios.isAxiosError=require("./helpers/isAxiosError");module.exports=axios;module.exports.default=axios},{"./cancel/Cancel":113,"./cancel/CancelToken":114,"./cancel/isCancel":115,"./core/Axios":116,"./core/mergeConfig":122,"./defaults":125,"./helpers/bind":126,"./helpers/isAxiosError":131,"./helpers/spread":135,"./utils":136}],113:[function(require,module,exports){"use strict";function Cancel(message){this.message=message}Cancel.prototype.toString=function toString(){return"Cancel"+(this.message?": "+this.message:"")};Cancel.prototype.__CANCEL__=true;module.exports=Cancel},{}],114:[function(require,module,exports){"use strict";var Cancel=require("./Cancel");function CancelToken(executor){if(typeof executor!=="function"){throw new TypeError("executor must be a function.")}var resolvePromise;this.promise=new Promise(function promiseExecutor(resolve){resolvePromise=resolve});var token=this;executor(function cancel(message){if(token.reason){return}token.reason=new Cancel(message);resolvePromise(token.reason)})}CancelToken.prototype.throwIfRequested=function throwIfRequested(){if(this.reason){throw this.reason}};CancelToken.source=function source(){var cancel;var token=new CancelToken(function executor(c){cancel=c});return{token:token,cancel:cancel}};module.exports=CancelToken},{"./Cancel":113}],115:[function(require,module,exports){"use strict";module.exports=function isCancel(value){return!!(value&&value.__CANCEL__)}},{}],116:[function(require,module,exports){"use strict";var utils=require("./../utils");var buildURL=require("../helpers/buildURL");var InterceptorManager=require("./InterceptorManager");var dispatchRequest=require("./dispatchRequest");var mergeConfig=require("./mergeConfig");function Axios(instanceConfig){this.defaults=instanceConfig;this.interceptors={request:new InterceptorManager,response:new InterceptorManager}}Axios.prototype.request=function request(config){if(typeof config==="string"){config=arguments[1]||{};config.url=arguments[0]}else{config=config||{}}config=mergeConfig(this.defaults,config);if(config.method){config.method=config.method.toLowerCase()}else if(this.defaults.method){config.method=this.defaults.method.toLowerCase()}else{config.method="get"}var chain=[dispatchRequest,undefined];var promise=Promise.resolve(config);this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor){chain.unshift(interceptor.fulfilled,interceptor.rejected)});this.interceptors.response.forEach(function pushResponseInterceptors(interceptor){chain.push(interceptor.fulfilled,interceptor.rejected)});while(chain.length){promise=promise.then(chain.shift(),chain.shift())}return promise};Axios.prototype.getUri=function getUri(config){config=mergeConfig(this.defaults,config);return buildURL(config.url,config.params,config.paramsSerializer).replace(/^\?/,"")};utils.forEach(["delete","get","head","options"],function forEachMethodNoData(method){Axios.prototype[method]=function(url,config){return this.request(mergeConfig(config||{},{method:method,url:url,data:(config||{}).data}))}});utils.forEach(["post","put","patch"],function forEachMethodWithData(method){Axios.prototype[method]=function(url,data,config){return this.request(mergeConfig(config||{},{method:method,url:url,data:data}))}});module.exports=Axios},{"../helpers/buildURL":127,"./../utils":136,"./InterceptorManager":117,"./dispatchRequest":120,"./mergeConfig":122}],117:[function(require,module,exports){"use strict";var utils=require("./../utils");function InterceptorManager(){this.handlers=[]}InterceptorManager.prototype.use=function use(fulfilled,rejected){this.handlers.push({fulfilled:fulfilled,rejected:rejected});return this.handlers.length-1};InterceptorManager.prototype.eject=function eject(id){if(this.handlers[id]){this.handlers[id]=null}};InterceptorManager.prototype.forEach=function forEach(fn){utils.forEach(this.handlers,function forEachHandler(h){if(h!==null){fn(h)}})};module.exports=InterceptorManager},{"./../utils":136}],118:[function(require,module,exports){"use strict";var isAbsoluteURL=require("../helpers/isAbsoluteURL");var combineURLs=require("../helpers/combineURLs");module.exports=function buildFullPath(baseURL,requestedURL){if(baseURL&&!isAbsoluteURL(requestedURL)){return combineURLs(baseURL,requestedURL)}return requestedURL}},{"../helpers/combineURLs":128,"../helpers/isAbsoluteURL":130}],119:[function(require,module,exports){"use strict";var enhanceError=require("./enhanceError");module.exports=function createError(message,config,code,request,response){var error=new Error(message);return enhanceError(error,config,code,request,response)}},{"./enhanceError":121}],120:[function(require,module,exports){"use strict";var utils=require("./../utils");var transformData=require("./transformData");var isCancel=require("../cancel/isCancel");var defaults=require("../defaults");function throwIfCancellationRequested(config){if(config.cancelToken){config.cancelToken.throwIfRequested()}}module.exports=function dispatchRequest(config){throwIfCancellationRequested(config);config.headers=config.headers||{};config.data=transformData(config.data,config.headers,config.transformRequest);config.headers=utils.merge(config.headers.common||{},config.headers[config.method]||{},config.headers);utils.forEach(["delete","get","head","post","put","patch","common"],function cleanHeaderConfig(method){delete config.headers[method]});var adapter=config.adapter||defaults.adapter;return adapter(config).then(function onAdapterResolution(response){throwIfCancellationRequested(config);response.data=transformData(response.data,response.headers,config.transformResponse);return response},function onAdapterRejection(reason){if(!isCancel(reason)){throwIfCancellationRequested(config);if(reason&&reason.response){reason.response.data=transformData(reason.response.data,reason.response.headers,config.transformResponse)}}return Promise.reject(reason)})}},{"../cancel/isCancel":115,"../defaults":125,"./../utils":136,"./transformData":124}],121:[function(require,module,exports){"use strict";module.exports=function enhanceError(error,config,code,request,response){error.config=config;if(code){error.code=code}error.request=request;error.response=response;error.isAxiosError=true;error.toJSON=function toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}};return error}},{}],122:[function(require,module,exports){"use strict";var utils=require("../utils");module.exports=function mergeConfig(config1,config2){config2=config2||{};var config={};var valueFromConfig2Keys=["url","method","data"];var mergeDeepPropertiesKeys=["headers","auth","proxy","params"];var defaultToConfig2Keys=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"];var directMergeKeys=["validateStatus"];function getMergedValue(target,source){if(utils.isPlainObject(target)&&utils.isPlainObject(source)){return utils.merge(target,source)}else if(utils.isPlainObject(source)){return utils.merge({},source)}else if(utils.isArray(source)){return source.slice()}return source}function mergeDeepProperties(prop){if(!utils.isUndefined(config2[prop])){config[prop]=getMergedValue(config1[prop],config2[prop])}else if(!utils.isUndefined(config1[prop])){config[prop]=getMergedValue(undefined,config1[prop])}}utils.forEach(valueFromConfig2Keys,function valueFromConfig2(prop){if(!utils.isUndefined(config2[prop])){config[prop]=getMergedValue(undefined,config2[prop])}});utils.forEach(mergeDeepPropertiesKeys,mergeDeepProperties);utils.forEach(defaultToConfig2Keys,function defaultToConfig2(prop){if(!utils.isUndefined(config2[prop])){config[prop]=getMergedValue(undefined,config2[prop])}else if(!utils.isUndefined(config1[prop])){config[prop]=getMergedValue(undefined,config1[prop])}});utils.forEach(directMergeKeys,function merge(prop){if(prop in config2){config[prop]=getMergedValue(config1[prop],config2[prop])}else if(prop in config1){config[prop]=getMergedValue(undefined,config1[prop])}});var axiosKeys=valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys);var otherKeys=Object.keys(config1).concat(Object.keys(config2)).filter(function filterAxiosKeys(key){return axiosKeys.indexOf(key)===-1});utils.forEach(otherKeys,mergeDeepProperties);return config}},{"../utils":136}],123:[function(require,module,exports){"use strict";var createError=require("./createError");module.exports=function settle(resolve,reject,response){var validateStatus=response.config.validateStatus;if(!response.status||!validateStatus||validateStatus(response.status)){resolve(response)}else{reject(createError("Request failed with status code "+response.status,response.config,null,response.request,response))}}},{"./createError":119}],124:[function(require,module,exports){"use strict";var utils=require("./../utils");module.exports=function transformData(data,headers,fns){utils.forEach(fns,function transform(fn){data=fn(data,headers)});return data}},{"./../utils":136}],125:[function(require,module,exports){(function(process){"use strict";var utils=require("./utils");var normalizeHeaderName=require("./helpers/normalizeHeaderName");var DEFAULT_CONTENT_TYPE={"Content-Type":"application/x-www-form-urlencoded"};function setContentTypeIfUnset(headers,value){if(!utils.isUndefined(headers)&&utils.isUndefined(headers["Content-Type"])){headers["Content-Type"]=value}}function getDefaultAdapter(){var adapter;if(typeof XMLHttpRequest!=="undefined"){adapter=require("./adapters/xhr")}else if(typeof process!=="undefined"&&Object.prototype.toString.call(process)==="[object process]"){adapter=require("./adapters/http")}return adapter}var defaults={adapter:getDefaultAdapter(),transformRequest:[function transformRequest(data,headers){normalizeHeaderName(headers,"Accept");normalizeHeaderName(headers,"Content-Type");if(utils.isFormData(data)||utils.isArrayBuffer(data)||utils.isBuffer(data)||utils.isStream(data)||utils.isFile(data)||utils.isBlob(data)){return data}if(utils.isArrayBufferView(data)){return data.buffer}if(utils.isURLSearchParams(data)){setContentTypeIfUnset(headers,"application/x-www-form-urlencoded;charset=utf-8");return data.toString()}if(utils.isObject(data)){setContentTypeIfUnset(headers,"application/json;charset=utf-8");return JSON.stringify(data)}return data}],transformResponse:[function transformResponse(data){if(typeof data==="string"){try{data=JSON.parse(data)}catch(e){}}return data}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function validateStatus(status){return status>=200&&status<300}};defaults.headers={common:{Accept:"application/json, text/plain, */*"}};utils.forEach(["delete","get","head"],function forEachMethodNoData(method){defaults.headers[method]={}});utils.forEach(["post","put","patch"],function forEachMethodWithData(method){defaults.headers[method]=utils.merge(DEFAULT_CONTENT_TYPE)});module.exports=defaults}).call(this,require("_process"))},{"./adapters/http":111,"./adapters/xhr":111,"./helpers/normalizeHeaderName":133,"./utils":136,_process:267}],126:[function(require,module,exports){"use strict";module.exports=function bind(fn,thisArg){return function wrap(){var args=new Array(arguments.length);for(var i=0;i=0){return}if(key==="set-cookie"){parsed[key]=(parsed[key]?parsed[key]:[]).concat([val])}else{parsed[key]=parsed[key]?parsed[key]+", "+val:val}}});return parsed}},{"./../utils":136}],135:[function(require,module,exports){"use strict";module.exports=function spread(callback){return function wrap(arr){return callback.apply(null,arr)}}},{}],136:[function(require,module,exports){"use strict";var bind=require("./helpers/bind");var toString=Object.prototype.toString;function isArray(val){return toString.call(val)==="[object Array]"}function isUndefined(val){return typeof val==="undefined"}function isBuffer(val){return val!==null&&!isUndefined(val)&&val.constructor!==null&&!isUndefined(val.constructor)&&typeof val.constructor.isBuffer==="function"&&val.constructor.isBuffer(val)}function isArrayBuffer(val){return toString.call(val)==="[object ArrayBuffer]"}function isFormData(val){return typeof FormData!=="undefined"&&val instanceof FormData}function isArrayBufferView(val){var result;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){result=ArrayBuffer.isView(val)}else{result=val&&val.buffer&&val.buffer instanceof ArrayBuffer}return result}function isString(val){return typeof val==="string"}function isNumber(val){return typeof val==="number"}function isObject(val){return val!==null&&typeof val==="object"}function isPlainObject(val){if(toString.call(val)!=="[object Object]"){return false}var prototype=Object.getPrototypeOf(val);return prototype===null||prototype===Object.prototype}function isDate(val){return toString.call(val)==="[object Date]"}function isFile(val){return toString.call(val)==="[object File]"}function isBlob(val){return toString.call(val)==="[object Blob]"}function isFunction(val){return toString.call(val)==="[object Function]"}function isStream(val){return isObject(val)&&isFunction(val.pipe)}function isURLSearchParams(val){return typeof URLSearchParams!=="undefined"&&val instanceof URLSearchParams}function trim(str){return str.replace(/^\s*/,"").replace(/\s*$/,"")}function isStandardBrowserEnv(){if(typeof navigator!=="undefined"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")){return false}return typeof window!=="undefined"&&typeof document!=="undefined"}function forEach(obj,fn){if(obj===null||typeof obj==="undefined"){return}if(typeof obj!=="object"){obj=[obj]}if(isArray(obj)){for(var i=0,l=obj.length;i=255){throw new TypeError("Alphabet too long")}var BASE_MAP=new Uint8Array(256);BASE_MAP.fill(255);for(var i=0;i>>0;var b58=new Uint8Array(size);while(pbegin!==pend){var carry=source[pbegin];var i=0;for(var it1=size-1;(carry!==0||i>>0;b58[it1]=carry%BASE>>>0;carry=carry/BASE>>>0}if(carry!==0){throw new Error("Non-zero carry")}length=i;pbegin++}var it2=size-length;while(it2!==size&&b58[it2]===0){it2++}var str=LEADER.repeat(zeroes);for(;it2>>0;var b256=new Uint8Array(size);while(source[psz]){var carry=BASE_MAP[source.charCodeAt(psz)];if(carry===255){return}var i=0;for(var it3=size-1;(carry!==0||i>>0;b256[it3]=carry%256>>>0;carry=carry/256>>>0}if(carry!==0){throw new Error("Non-zero carry")}length=i;psz++}if(source[psz]===" "){return}var it4=size-length;while(it4!==size&&b256[it4]===0){it4++}var vch=_Buffer.allocUnsafe(zeroes+(size-it4));vch.fill(0,0,zeroes);var j=zeroes;while(it4!==size){vch[j++]=b256[it4++]}return vch}function decode(string){var buffer=decodeUnsafe(string);if(buffer){return buffer}throw new Error("Non-base"+BASE+" character")}return{encode:encode,decodeUnsafe:decodeUnsafe,decode:decode}}module.exports=base},{"safe-buffer":293}],138:[function(require,module,exports){"use strict";exports.byteLength=byteLength;exports.toByteArray=toByteArray;exports.fromByteArray=fromByteArray;var lookup=[];var revLookup=[];var Arr=typeof Uint8Array!=="undefined"?Uint8Array:Array;var code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var i=0,len=code.length;i0){throw new Error("Invalid string. Length must be a multiple of 4")}var validLen=b64.indexOf("=");if(validLen===-1)validLen=len;var placeHoldersLen=validLen===len?0:4-validLen%4;return[validLen,placeHoldersLen]}function byteLength(b64){var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function _byteLength(b64,validLen,placeHoldersLen){return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function toByteArray(b64){var tmp;var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];var arr=new Arr(_byteLength(b64,validLen,placeHoldersLen));var curByte=0;var len=placeHoldersLen>0?validLen-4:validLen;var i;for(i=0;i>16&255;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}if(placeHoldersLen===2){tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4;arr[curByte++]=tmp&255}if(placeHoldersLen===1){tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}return arr}function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[num&63]}function encodeChunk(uint8,start,end){var tmp;var output=[];for(var i=start;ilen2?len2:i+maxChunkLength))}if(extraBytes===1){tmp=uint8[len-1];parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")}else if(extraBytes===2){tmp=(uint8[len-2]<<8)+uint8[len-1];parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"=")}return parts.join("")}},{}],139:[function(require,module,exports){(function(module,exports){"use strict";function assert(val,msg){if(!val)throw new Error(msg||"Assertion failed")}function inherits(ctor,superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}function BN(number,base,endian){if(BN.isBN(number)){return number}this.negative=0;this.words=null;this.length=0;this.red=null;if(number!==null){if(base==="le"||base==="be"){endian=base;base=10}this._init(number||0,base||10,endian||"be")}}if(typeof module==="object"){module.exports=BN}else{exports.BN=BN}BN.BN=BN;BN.wordSize=26;var Buffer;try{Buffer=require("buffer").Buffer}catch(e){}BN.isBN=function isBN(num){if(num instanceof BN){return true}return num!==null&&typeof num==="object"&&num.constructor.wordSize===BN.wordSize&&Array.isArray(num.words)};BN.max=function max(left,right){if(left.cmp(right)>0)return left;return right};BN.min=function min(left,right){if(left.cmp(right)<0)return left;return right};BN.prototype._init=function init(number,base,endian){if(typeof number==="number"){return this._initNumber(number,base,endian)}if(typeof number==="object"){return this._initArray(number,base,endian)}if(base==="hex"){base=16}assert(base===(base|0)&&base>=2&&base<=36);number=number.toString().replace(/\s+/g,"");var start=0;if(number[0]==="-"){start++}if(base===16){this._parseHex(number,start)}else{this._parseBase(number,base,start)}if(number[0]==="-"){this.negative=1}this._strip();if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initNumber=function _initNumber(number,base,endian){if(number<0){this.negative=1;number=-number}if(number<67108864){this.words=[number&67108863];this.length=1}else if(number<4503599627370496){this.words=[number&67108863,number/67108864&67108863];this.length=2}else{assert(number<9007199254740992);this.words=[number&67108863,number/67108864&67108863,1];this.length=3}if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initArray=function _initArray(number,base,endian){assert(typeof number.length==="number");if(number.length<=0){this.words=[0];this.length=1;return this}this.length=Math.ceil(number.length/3);this.words=new Array(this.length);for(var i=0;i=0;i-=3){w=number[i]|number[i-1]<<8|number[i-2]<<16;this.words[j]|=w<>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}else if(endian==="le"){for(i=0,j=0;i>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}return this._strip()};function parseHex(str,start,end){var r=0;var len=Math.min(str.length,end);var z=0;for(var i=start;i=49&&c<=54){b=c-49+10}else if(c>=17&&c<=22){b=c-17+10}else{b=c}r|=b;z|=b}assert(!(z&240),"Invalid character in "+str);return r}BN.prototype._parseHex=function _parseHex(number,start){this.length=Math.ceil((number.length-start)/6);this.words=new Array(this.length);for(var i=0;i=start;i-=6){w=parseHex(number,i,i+6);this.words[j]|=w<>>26-off&4194303;off+=24;if(off>=26){off-=26;j++}}if(i+6!==start){w=parseHex(number,start,i+6);this.words[j]|=w<>>26-off&4194303}this._strip()};function parseBase(str,start,end,mul){var r=0;var b=0;var len=Math.min(str.length,end);for(var i=start;i=49){b=c-49+10}else if(c>=17){b=c-17+10}else{b=c}assert(c>=0&&b1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};if(typeof Symbol!=="undefined"&&typeof Symbol.for==="function"){BN.prototype[Symbol.for("nodejs.util.inspect.custom")]=inspect}else{BN.prototype.inspect=inspect}function inspect(){return(this.red?""}var zeros=["","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"];var groupSizes=[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];var groupBases=[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];BN.prototype.toString=function toString(base,padding){base=base||10;padding=padding|0||1;var out;if(base===16||base==="hex"){out="";var off=0;var carry=0;for(var i=0;i>>24-off&16777215;if(carry!==0||i!==this.length-1){out=zeros[6-word.length]+word+out}else{out=word+out}off+=2;if(off>=26){off-=26;i--}}if(carry!==0){out=carry.toString(16)+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}if(base===(base|0)&&base>=2&&base<=36){var groupSize=groupSizes[base];var groupBase=groupBases[base];out="";var c=this.clone();c.negative=0;while(!c.isZero()){var r=c.modrn(groupBase).toString(base);c=c.idivn(groupBase);if(!c.isZero()){out=zeros[groupSize-r.length]+r+out}else{out=r+out}}if(this.isZero()){out="0"+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var ret=this.words[0];if(this.length===2){ret+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){ret+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-ret:ret};BN.prototype.toJSON=function toJSON(){return this.toString(16,2)};if(Buffer){BN.prototype.toBuffer=function toBuffer(endian,length){return this.toArrayLike(Buffer,endian,length)}}BN.prototype.toArray=function toArray(endian,length){return this.toArrayLike(Array,endian,length)};var allocate=function allocate(ArrayType,size){if(ArrayType.allocUnsafe){return ArrayType.allocUnsafe(size)}return new ArrayType(size)};BN.prototype.toArrayLike=function toArrayLike(ArrayType,endian,length){this._strip();var byteLength=this.byteLength();var reqLength=length||Math.max(1,byteLength);assert(byteLength<=reqLength,"byte array longer than desired length");assert(reqLength>0,"Requested array length <= 0");var res=allocate(ArrayType,reqLength);var postfix=endian==="le"?"LE":"BE";this["_toArrayLike"+postfix](res,byteLength);return res};BN.prototype._toArrayLikeLE=function _toArrayLikeLE(res,byteLength){var position=0;var carry=0;for(var i=0,shift=0;i>8&255}if(position>16&255}if(shift===6){if(position>24&255}carry=0;shift=0}else{carry=word>>>24;shift+=2}}if(position=0){res[position--]=word>>8&255}if(position>=0){res[position--]=word>>16&255}if(shift===6){if(position>=0){res[position--]=word>>24&255}carry=0;shift=0}else{carry=word>>>24;shift+=2}}if(position>=0){res[position--]=carry;while(position>=0){res[position--]=0}}};if(Math.clz32){BN.prototype._countBits=function _countBits(w){return 32-Math.clz32(w)}}else{BN.prototype._countBits=function _countBits(w){var t=w;var r=0;if(t>=4096){r+=13;t>>>=13}if(t>=64){r+=7;t>>>=7}if(t>=8){r+=4;t>>>=4}if(t>=2){r+=2;t>>>=2}return r+t}}BN.prototype._zeroBits=function _zeroBits(w){if(w===0)return 26;var t=w;var r=0;if((t&8191)===0){r+=13;t>>>=13}if((t&127)===0){r+=7;t>>>=7}if((t&15)===0){r+=4;t>>>=4}if((t&3)===0){r+=2;t>>>=2}if((t&1)===0){r++}return r};BN.prototype.bitLength=function bitLength(){var w=this.words[this.length-1];var hi=this._countBits(w);return(this.length-1)*26+hi};function toBitArray(num){var w=new Array(num.bitLength());for(var bit=0;bit>>wbit&1}return w}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var r=0;for(var i=0;inum.length)return this.clone().ior(num);return num.clone().ior(this)};BN.prototype.uor=function uor(num){if(this.length>num.length)return this.clone().iuor(num);return num.clone().iuor(this)};BN.prototype.iuand=function iuand(num){var b;if(this.length>num.length){b=num}else{b=this}for(var i=0;inum.length)return this.clone().iand(num);return num.clone().iand(this)};BN.prototype.uand=function uand(num){if(this.length>num.length)return this.clone().iuand(num);return num.clone().iuand(this)};BN.prototype.iuxor=function iuxor(num){var a;var b;if(this.length>num.length){a=this;b=num}else{a=num;b=this}for(var i=0;inum.length)return this.clone().ixor(num);return num.clone().ixor(this)};BN.prototype.uxor=function uxor(num){if(this.length>num.length)return this.clone().iuxor(num);return num.clone().iuxor(this)};BN.prototype.inotn=function inotn(width){assert(typeof width==="number"&&width>=0);var bytesNeeded=Math.ceil(width/26)|0;var bitsLeft=width%26;this._expand(bytesNeeded);if(bitsLeft>0){bytesNeeded--}for(var i=0;i0){this.words[i]=~this.words[i]&67108863>>26-bitsLeft}return this._strip()};BN.prototype.notn=function notn(width){return this.clone().inotn(width)};BN.prototype.setn=function setn(bit,val){assert(typeof bit==="number"&&bit>=0);var off=bit/26|0;var wbit=bit%26;this._expand(off+1);if(val){this.words[off]=this.words[off]|1<num.length){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>>26}for(;carry!==0&&i>>26}this.length=a.length;if(carry!==0){this.words[this.length]=carry;this.length++}else if(a!==this){for(;inum.length)return this.clone().iadd(num);return num.clone().iadd(this)};BN.prototype.isub=function isub(num){if(num.negative!==0){num.negative=0;var r=this.iadd(num);num.negative=1;return r._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(num);this.negative=1;return this._normSign()}var cmp=this.cmp(num);if(cmp===0){this.negative=0;this.length=1;this.words[0]=0;return this}var a,b;if(cmp>0){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>26;this.words[i]=r&67108863}for(;carry!==0&&i>26;this.words[i]=r&67108863}if(carry===0&&i>>26;var rword=carry&67108863;var maxJ=Math.min(k,num.length-1);for(var j=Math.max(0,k-self.length+1);j<=maxJ;j++){var i=k-j|0;a=self.words[i]|0;b=num.words[j]|0;r=a*b+rword;ncarry+=r/67108864|0;rword=r&67108863}out.words[k]=rword|0;carry=ncarry|0}if(carry!==0){out.words[k]=carry|0}else{out.length--}return out._strip()}var comb10MulTo=function comb10MulTo(self,num,out){var a=self.words;var b=num.words;var o=out.words;var c=0;var lo;var mid;var hi;var a0=a[0]|0;var al0=a0&8191;var ah0=a0>>>13;var a1=a[1]|0;var al1=a1&8191;var ah1=a1>>>13;var a2=a[2]|0;var al2=a2&8191;var ah2=a2>>>13;var a3=a[3]|0;var al3=a3&8191;var ah3=a3>>>13;var a4=a[4]|0;var al4=a4&8191;var ah4=a4>>>13;var a5=a[5]|0;var al5=a5&8191;var ah5=a5>>>13;var a6=a[6]|0;var al6=a6&8191;var ah6=a6>>>13;var a7=a[7]|0;var al7=a7&8191;var ah7=a7>>>13;var a8=a[8]|0;var al8=a8&8191;var ah8=a8>>>13;var a9=a[9]|0;var al9=a9&8191;var ah9=a9>>>13;var b0=b[0]|0;var bl0=b0&8191;var bh0=b0>>>13;var b1=b[1]|0;var bl1=b1&8191;var bh1=b1>>>13;var b2=b[2]|0;var bl2=b2&8191;var bh2=b2>>>13;var b3=b[3]|0;var bl3=b3&8191;var bh3=b3>>>13;var b4=b[4]|0;var bl4=b4&8191;var bh4=b4>>>13;var b5=b[5]|0;var bl5=b5&8191;var bh5=b5>>>13;var b6=b[6]|0;var bl6=b6&8191;var bh6=b6>>>13;var b7=b[7]|0;var bl7=b7&8191;var bh7=b7>>>13;var b8=b[8]|0;var bl8=b8&8191;var bh8=b8>>>13;var b9=b[9]|0;var bl9=b9&8191;var bh9=b9>>>13;out.negative=self.negative^num.negative;out.length=19;lo=Math.imul(al0,bl0);mid=Math.imul(al0,bh0);mid=mid+Math.imul(ah0,bl0)|0;hi=Math.imul(ah0,bh0);var w0=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w0>>>26)|0;w0&=67108863;lo=Math.imul(al1,bl0);mid=Math.imul(al1,bh0);mid=mid+Math.imul(ah1,bl0)|0;hi=Math.imul(ah1,bh0);lo=lo+Math.imul(al0,bl1)|0;mid=mid+Math.imul(al0,bh1)|0;mid=mid+Math.imul(ah0,bl1)|0;hi=hi+Math.imul(ah0,bh1)|0;var w1=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w1>>>26)|0;w1&=67108863;lo=Math.imul(al2,bl0);mid=Math.imul(al2,bh0);mid=mid+Math.imul(ah2,bl0)|0;hi=Math.imul(ah2,bh0);lo=lo+Math.imul(al1,bl1)|0;mid=mid+Math.imul(al1,bh1)|0;mid=mid+Math.imul(ah1,bl1)|0;hi=hi+Math.imul(ah1,bh1)|0;lo=lo+Math.imul(al0,bl2)|0;mid=mid+Math.imul(al0,bh2)|0;mid=mid+Math.imul(ah0,bl2)|0;hi=hi+Math.imul(ah0,bh2)|0;var w2=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w2>>>26)|0;w2&=67108863;lo=Math.imul(al3,bl0);mid=Math.imul(al3,bh0);mid=mid+Math.imul(ah3,bl0)|0;hi=Math.imul(ah3,bh0);lo=lo+Math.imul(al2,bl1)|0;mid=mid+Math.imul(al2,bh1)|0;mid=mid+Math.imul(ah2,bl1)|0;hi=hi+Math.imul(ah2,bh1)|0;lo=lo+Math.imul(al1,bl2)|0;mid=mid+Math.imul(al1,bh2)|0;mid=mid+Math.imul(ah1,bl2)|0;hi=hi+Math.imul(ah1,bh2)|0;lo=lo+Math.imul(al0,bl3)|0;mid=mid+Math.imul(al0,bh3)|0;mid=mid+Math.imul(ah0,bl3)|0;hi=hi+Math.imul(ah0,bh3)|0;var w3=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w3>>>26)|0;w3&=67108863;lo=Math.imul(al4,bl0);mid=Math.imul(al4,bh0);mid=mid+Math.imul(ah4,bl0)|0;hi=Math.imul(ah4,bh0);lo=lo+Math.imul(al3,bl1)|0;mid=mid+Math.imul(al3,bh1)|0;mid=mid+Math.imul(ah3,bl1)|0;hi=hi+Math.imul(ah3,bh1)|0;lo=lo+Math.imul(al2,bl2)|0;mid=mid+Math.imul(al2,bh2)|0;mid=mid+Math.imul(ah2,bl2)|0;hi=hi+Math.imul(ah2,bh2)|0;lo=lo+Math.imul(al1,bl3)|0;mid=mid+Math.imul(al1,bh3)|0;mid=mid+Math.imul(ah1,bl3)|0;hi=hi+Math.imul(ah1,bh3)|0;lo=lo+Math.imul(al0,bl4)|0;mid=mid+Math.imul(al0,bh4)|0;mid=mid+Math.imul(ah0,bl4)|0;hi=hi+Math.imul(ah0,bh4)|0;var w4=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w4>>>26)|0;w4&=67108863;lo=Math.imul(al5,bl0);mid=Math.imul(al5,bh0);mid=mid+Math.imul(ah5,bl0)|0;hi=Math.imul(ah5,bh0);lo=lo+Math.imul(al4,bl1)|0;mid=mid+Math.imul(al4,bh1)|0;mid=mid+Math.imul(ah4,bl1)|0;hi=hi+Math.imul(ah4,bh1)|0;lo=lo+Math.imul(al3,bl2)|0;mid=mid+Math.imul(al3,bh2)|0;mid=mid+Math.imul(ah3,bl2)|0;hi=hi+Math.imul(ah3,bh2)|0;lo=lo+Math.imul(al2,bl3)|0;mid=mid+Math.imul(al2,bh3)|0;mid=mid+Math.imul(ah2,bl3)|0;hi=hi+Math.imul(ah2,bh3)|0;lo=lo+Math.imul(al1,bl4)|0;mid=mid+Math.imul(al1,bh4)|0;mid=mid+Math.imul(ah1,bl4)|0;hi=hi+Math.imul(ah1,bh4)|0;lo=lo+Math.imul(al0,bl5)|0;mid=mid+Math.imul(al0,bh5)|0;mid=mid+Math.imul(ah0,bl5)|0;hi=hi+Math.imul(ah0,bh5)|0;var w5=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w5>>>26)|0;w5&=67108863;lo=Math.imul(al6,bl0);mid=Math.imul(al6,bh0);mid=mid+Math.imul(ah6,bl0)|0;hi=Math.imul(ah6,bh0);lo=lo+Math.imul(al5,bl1)|0;mid=mid+Math.imul(al5,bh1)|0;mid=mid+Math.imul(ah5,bl1)|0;hi=hi+Math.imul(ah5,bh1)|0;lo=lo+Math.imul(al4,bl2)|0;mid=mid+Math.imul(al4,bh2)|0;mid=mid+Math.imul(ah4,bl2)|0;hi=hi+Math.imul(ah4,bh2)|0;lo=lo+Math.imul(al3,bl3)|0;mid=mid+Math.imul(al3,bh3)|0;mid=mid+Math.imul(ah3,bl3)|0;hi=hi+Math.imul(ah3,bh3)|0;lo=lo+Math.imul(al2,bl4)|0;mid=mid+Math.imul(al2,bh4)|0;mid=mid+Math.imul(ah2,bl4)|0;hi=hi+Math.imul(ah2,bh4)|0;lo=lo+Math.imul(al1,bl5)|0;mid=mid+Math.imul(al1,bh5)|0;mid=mid+Math.imul(ah1,bl5)|0;hi=hi+Math.imul(ah1,bh5)|0;lo=lo+Math.imul(al0,bl6)|0;mid=mid+Math.imul(al0,bh6)|0;mid=mid+Math.imul(ah0,bl6)|0;hi=hi+Math.imul(ah0,bh6)|0;var w6=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w6>>>26)|0;w6&=67108863;lo=Math.imul(al7,bl0);mid=Math.imul(al7,bh0);mid=mid+Math.imul(ah7,bl0)|0;hi=Math.imul(ah7,bh0);lo=lo+Math.imul(al6,bl1)|0;mid=mid+Math.imul(al6,bh1)|0;mid=mid+Math.imul(ah6,bl1)|0;hi=hi+Math.imul(ah6,bh1)|0;lo=lo+Math.imul(al5,bl2)|0;mid=mid+Math.imul(al5,bh2)|0;mid=mid+Math.imul(ah5,bl2)|0;hi=hi+Math.imul(ah5,bh2)|0;lo=lo+Math.imul(al4,bl3)|0;mid=mid+Math.imul(al4,bh3)|0;mid=mid+Math.imul(ah4,bl3)|0;hi=hi+Math.imul(ah4,bh3)|0;lo=lo+Math.imul(al3,bl4)|0;mid=mid+Math.imul(al3,bh4)|0;mid=mid+Math.imul(ah3,bl4)|0;hi=hi+Math.imul(ah3,bh4)|0;lo=lo+Math.imul(al2,bl5)|0;mid=mid+Math.imul(al2,bh5)|0;mid=mid+Math.imul(ah2,bl5)|0;hi=hi+Math.imul(ah2,bh5)|0;lo=lo+Math.imul(al1,bl6)|0;mid=mid+Math.imul(al1,bh6)|0;mid=mid+Math.imul(ah1,bl6)|0;hi=hi+Math.imul(ah1,bh6)|0;lo=lo+Math.imul(al0,bl7)|0;mid=mid+Math.imul(al0,bh7)|0;mid=mid+Math.imul(ah0,bl7)|0;hi=hi+Math.imul(ah0,bh7)|0;var w7=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w7>>>26)|0;w7&=67108863;lo=Math.imul(al8,bl0);mid=Math.imul(al8,bh0);mid=mid+Math.imul(ah8,bl0)|0;hi=Math.imul(ah8,bh0);lo=lo+Math.imul(al7,bl1)|0;mid=mid+Math.imul(al7,bh1)|0;mid=mid+Math.imul(ah7,bl1)|0;hi=hi+Math.imul(ah7,bh1)|0;lo=lo+Math.imul(al6,bl2)|0;mid=mid+Math.imul(al6,bh2)|0;mid=mid+Math.imul(ah6,bl2)|0;hi=hi+Math.imul(ah6,bh2)|0;lo=lo+Math.imul(al5,bl3)|0;mid=mid+Math.imul(al5,bh3)|0;mid=mid+Math.imul(ah5,bl3)|0;hi=hi+Math.imul(ah5,bh3)|0;lo=lo+Math.imul(al4,bl4)|0;mid=mid+Math.imul(al4,bh4)|0;mid=mid+Math.imul(ah4,bl4)|0;hi=hi+Math.imul(ah4,bh4)|0;lo=lo+Math.imul(al3,bl5)|0;mid=mid+Math.imul(al3,bh5)|0;mid=mid+Math.imul(ah3,bl5)|0;hi=hi+Math.imul(ah3,bh5)|0;lo=lo+Math.imul(al2,bl6)|0;mid=mid+Math.imul(al2,bh6)|0;mid=mid+Math.imul(ah2,bl6)|0;hi=hi+Math.imul(ah2,bh6)|0;lo=lo+Math.imul(al1,bl7)|0;mid=mid+Math.imul(al1,bh7)|0;mid=mid+Math.imul(ah1,bl7)|0;hi=hi+Math.imul(ah1,bh7)|0;lo=lo+Math.imul(al0,bl8)|0;mid=mid+Math.imul(al0,bh8)|0;mid=mid+Math.imul(ah0,bl8)|0;hi=hi+Math.imul(ah0,bh8)|0;var w8=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w8>>>26)|0;w8&=67108863;lo=Math.imul(al9,bl0);mid=Math.imul(al9,bh0);mid=mid+Math.imul(ah9,bl0)|0;hi=Math.imul(ah9,bh0);lo=lo+Math.imul(al8,bl1)|0;mid=mid+Math.imul(al8,bh1)|0;mid=mid+Math.imul(ah8,bl1)|0;hi=hi+Math.imul(ah8,bh1)|0;lo=lo+Math.imul(al7,bl2)|0;mid=mid+Math.imul(al7,bh2)|0;mid=mid+Math.imul(ah7,bl2)|0;hi=hi+Math.imul(ah7,bh2)|0;lo=lo+Math.imul(al6,bl3)|0;mid=mid+Math.imul(al6,bh3)|0;mid=mid+Math.imul(ah6,bl3)|0;hi=hi+Math.imul(ah6,bh3)|0;lo=lo+Math.imul(al5,bl4)|0;mid=mid+Math.imul(al5,bh4)|0;mid=mid+Math.imul(ah5,bl4)|0;hi=hi+Math.imul(ah5,bh4)|0;lo=lo+Math.imul(al4,bl5)|0;mid=mid+Math.imul(al4,bh5)|0;mid=mid+Math.imul(ah4,bl5)|0;hi=hi+Math.imul(ah4,bh5)|0;lo=lo+Math.imul(al3,bl6)|0;mid=mid+Math.imul(al3,bh6)|0;mid=mid+Math.imul(ah3,bl6)|0;hi=hi+Math.imul(ah3,bh6)|0;lo=lo+Math.imul(al2,bl7)|0;mid=mid+Math.imul(al2,bh7)|0;mid=mid+Math.imul(ah2,bl7)|0;hi=hi+Math.imul(ah2,bh7)|0;lo=lo+Math.imul(al1,bl8)|0;mid=mid+Math.imul(al1,bh8)|0;mid=mid+Math.imul(ah1,bl8)|0;hi=hi+Math.imul(ah1,bh8)|0;lo=lo+Math.imul(al0,bl9)|0;mid=mid+Math.imul(al0,bh9)|0;mid=mid+Math.imul(ah0,bl9)|0;hi=hi+Math.imul(ah0,bh9)|0;var w9=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w9>>>26)|0;w9&=67108863;lo=Math.imul(al9,bl1);mid=Math.imul(al9,bh1);mid=mid+Math.imul(ah9,bl1)|0;hi=Math.imul(ah9,bh1);lo=lo+Math.imul(al8,bl2)|0;mid=mid+Math.imul(al8,bh2)|0;mid=mid+Math.imul(ah8,bl2)|0;hi=hi+Math.imul(ah8,bh2)|0;lo=lo+Math.imul(al7,bl3)|0;mid=mid+Math.imul(al7,bh3)|0;mid=mid+Math.imul(ah7,bl3)|0;hi=hi+Math.imul(ah7,bh3)|0;lo=lo+Math.imul(al6,bl4)|0;mid=mid+Math.imul(al6,bh4)|0;mid=mid+Math.imul(ah6,bl4)|0;hi=hi+Math.imul(ah6,bh4)|0;lo=lo+Math.imul(al5,bl5)|0;mid=mid+Math.imul(al5,bh5)|0;mid=mid+Math.imul(ah5,bl5)|0;hi=hi+Math.imul(ah5,bh5)|0;lo=lo+Math.imul(al4,bl6)|0;mid=mid+Math.imul(al4,bh6)|0;mid=mid+Math.imul(ah4,bl6)|0;hi=hi+Math.imul(ah4,bh6)|0;lo=lo+Math.imul(al3,bl7)|0;mid=mid+Math.imul(al3,bh7)|0;mid=mid+Math.imul(ah3,bl7)|0;hi=hi+Math.imul(ah3,bh7)|0;lo=lo+Math.imul(al2,bl8)|0;mid=mid+Math.imul(al2,bh8)|0;mid=mid+Math.imul(ah2,bl8)|0;hi=hi+Math.imul(ah2,bh8)|0;lo=lo+Math.imul(al1,bl9)|0;mid=mid+Math.imul(al1,bh9)|0;mid=mid+Math.imul(ah1,bl9)|0;hi=hi+Math.imul(ah1,bh9)|0;var w10=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w10>>>26)|0;w10&=67108863;lo=Math.imul(al9,bl2);mid=Math.imul(al9,bh2);mid=mid+Math.imul(ah9,bl2)|0;hi=Math.imul(ah9,bh2);lo=lo+Math.imul(al8,bl3)|0;mid=mid+Math.imul(al8,bh3)|0;mid=mid+Math.imul(ah8,bl3)|0;hi=hi+Math.imul(ah8,bh3)|0;lo=lo+Math.imul(al7,bl4)|0;mid=mid+Math.imul(al7,bh4)|0;mid=mid+Math.imul(ah7,bl4)|0;hi=hi+Math.imul(ah7,bh4)|0;lo=lo+Math.imul(al6,bl5)|0;mid=mid+Math.imul(al6,bh5)|0;mid=mid+Math.imul(ah6,bl5)|0;hi=hi+Math.imul(ah6,bh5)|0;lo=lo+Math.imul(al5,bl6)|0;mid=mid+Math.imul(al5,bh6)|0;mid=mid+Math.imul(ah5,bl6)|0;hi=hi+Math.imul(ah5,bh6)|0;lo=lo+Math.imul(al4,bl7)|0;mid=mid+Math.imul(al4,bh7)|0;mid=mid+Math.imul(ah4,bl7)|0;hi=hi+Math.imul(ah4,bh7)|0;lo=lo+Math.imul(al3,bl8)|0;mid=mid+Math.imul(al3,bh8)|0;mid=mid+Math.imul(ah3,bl8)|0;hi=hi+Math.imul(ah3,bh8)|0;lo=lo+Math.imul(al2,bl9)|0;mid=mid+Math.imul(al2,bh9)|0;mid=mid+Math.imul(ah2,bl9)|0;hi=hi+Math.imul(ah2,bh9)|0;var w11=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w11>>>26)|0;w11&=67108863;lo=Math.imul(al9,bl3);mid=Math.imul(al9,bh3);mid=mid+Math.imul(ah9,bl3)|0;hi=Math.imul(ah9,bh3);lo=lo+Math.imul(al8,bl4)|0;mid=mid+Math.imul(al8,bh4)|0;mid=mid+Math.imul(ah8,bl4)|0;hi=hi+Math.imul(ah8,bh4)|0;lo=lo+Math.imul(al7,bl5)|0;mid=mid+Math.imul(al7,bh5)|0;mid=mid+Math.imul(ah7,bl5)|0;hi=hi+Math.imul(ah7,bh5)|0;lo=lo+Math.imul(al6,bl6)|0;mid=mid+Math.imul(al6,bh6)|0;mid=mid+Math.imul(ah6,bl6)|0;hi=hi+Math.imul(ah6,bh6)|0;lo=lo+Math.imul(al5,bl7)|0;mid=mid+Math.imul(al5,bh7)|0;mid=mid+Math.imul(ah5,bl7)|0;hi=hi+Math.imul(ah5,bh7)|0;lo=lo+Math.imul(al4,bl8)|0;mid=mid+Math.imul(al4,bh8)|0;mid=mid+Math.imul(ah4,bl8)|0;hi=hi+Math.imul(ah4,bh8)|0;lo=lo+Math.imul(al3,bl9)|0;mid=mid+Math.imul(al3,bh9)|0;mid=mid+Math.imul(ah3,bl9)|0;hi=hi+Math.imul(ah3,bh9)|0;var w12=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w12>>>26)|0;w12&=67108863;lo=Math.imul(al9,bl4);mid=Math.imul(al9,bh4);mid=mid+Math.imul(ah9,bl4)|0;hi=Math.imul(ah9,bh4);lo=lo+Math.imul(al8,bl5)|0;mid=mid+Math.imul(al8,bh5)|0;mid=mid+Math.imul(ah8,bl5)|0;hi=hi+Math.imul(ah8,bh5)|0;lo=lo+Math.imul(al7,bl6)|0;mid=mid+Math.imul(al7,bh6)|0;mid=mid+Math.imul(ah7,bl6)|0;hi=hi+Math.imul(ah7,bh6)|0;lo=lo+Math.imul(al6,bl7)|0;mid=mid+Math.imul(al6,bh7)|0;mid=mid+Math.imul(ah6,bl7)|0;hi=hi+Math.imul(ah6,bh7)|0;lo=lo+Math.imul(al5,bl8)|0;mid=mid+Math.imul(al5,bh8)|0;mid=mid+Math.imul(ah5,bl8)|0;hi=hi+Math.imul(ah5,bh8)|0;lo=lo+Math.imul(al4,bl9)|0;mid=mid+Math.imul(al4,bh9)|0;mid=mid+Math.imul(ah4,bl9)|0;hi=hi+Math.imul(ah4,bh9)|0;var w13=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w13>>>26)|0;w13&=67108863;lo=Math.imul(al9,bl5);mid=Math.imul(al9,bh5);mid=mid+Math.imul(ah9,bl5)|0;hi=Math.imul(ah9,bh5);lo=lo+Math.imul(al8,bl6)|0;mid=mid+Math.imul(al8,bh6)|0;mid=mid+Math.imul(ah8,bl6)|0;hi=hi+Math.imul(ah8,bh6)|0;lo=lo+Math.imul(al7,bl7)|0;mid=mid+Math.imul(al7,bh7)|0;mid=mid+Math.imul(ah7,bl7)|0;hi=hi+Math.imul(ah7,bh7)|0;lo=lo+Math.imul(al6,bl8)|0;mid=mid+Math.imul(al6,bh8)|0;mid=mid+Math.imul(ah6,bl8)|0;hi=hi+Math.imul(ah6,bh8)|0;lo=lo+Math.imul(al5,bl9)|0;mid=mid+Math.imul(al5,bh9)|0;mid=mid+Math.imul(ah5,bl9)|0;hi=hi+Math.imul(ah5,bh9)|0;var w14=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w14>>>26)|0;w14&=67108863;lo=Math.imul(al9,bl6);mid=Math.imul(al9,bh6);mid=mid+Math.imul(ah9,bl6)|0;hi=Math.imul(ah9,bh6);lo=lo+Math.imul(al8,bl7)|0;mid=mid+Math.imul(al8,bh7)|0;mid=mid+Math.imul(ah8,bl7)|0;hi=hi+Math.imul(ah8,bh7)|0;lo=lo+Math.imul(al7,bl8)|0;mid=mid+Math.imul(al7,bh8)|0;mid=mid+Math.imul(ah7,bl8)|0;hi=hi+Math.imul(ah7,bh8)|0;lo=lo+Math.imul(al6,bl9)|0;mid=mid+Math.imul(al6,bh9)|0;mid=mid+Math.imul(ah6,bl9)|0;hi=hi+Math.imul(ah6,bh9)|0;var w15=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w15>>>26)|0;w15&=67108863;lo=Math.imul(al9,bl7);mid=Math.imul(al9,bh7);mid=mid+Math.imul(ah9,bl7)|0;hi=Math.imul(ah9,bh7);lo=lo+Math.imul(al8,bl8)|0;mid=mid+Math.imul(al8,bh8)|0;mid=mid+Math.imul(ah8,bl8)|0;hi=hi+Math.imul(ah8,bh8)|0;lo=lo+Math.imul(al7,bl9)|0;mid=mid+Math.imul(al7,bh9)|0;mid=mid+Math.imul(ah7,bl9)|0;hi=hi+Math.imul(ah7,bh9)|0;var w16=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w16>>>26)|0;w16&=67108863;lo=Math.imul(al9,bl8);mid=Math.imul(al9,bh8);mid=mid+Math.imul(ah9,bl8)|0;hi=Math.imul(ah9,bh8);lo=lo+Math.imul(al8,bl9)|0;mid=mid+Math.imul(al8,bh9)|0;mid=mid+Math.imul(ah8,bl9)|0;hi=hi+Math.imul(ah8,bh9)|0;var w17=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w17>>>26)|0;w17&=67108863;lo=Math.imul(al9,bl9);mid=Math.imul(al9,bh9);mid=mid+Math.imul(ah9,bl9)|0;hi=Math.imul(ah9,bh9);var w18=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w18>>>26)|0;w18&=67108863;o[0]=w0;o[1]=w1;o[2]=w2;o[3]=w3;o[4]=w4;o[5]=w5;o[6]=w6;o[7]=w7;o[8]=w8;o[9]=w9;o[10]=w10;o[11]=w11;o[12]=w12;o[13]=w13;o[14]=w14;o[15]=w15;o[16]=w16;o[17]=w17;o[18]=w18;if(c!==0){o[19]=c;out.length++}return out};if(!Math.imul){comb10MulTo=smallMulTo}function bigMulTo(self,num,out){out.negative=num.negative^self.negative;out.length=self.length+num.length;var carry=0;var hncarry=0;for(var k=0;k>>26)|0;hncarry+=ncarry>>>26;ncarry&=67108863}out.words[k]=rword;carry=ncarry;ncarry=hncarry}if(carry!==0){out.words[k]=carry}else{out.length--}return out._strip()}function jumboMulTo(self,num,out){return bigMulTo(self,num,out)}BN.prototype.mulTo=function mulTo(num,out){var res;var len=this.length+num.length;if(this.length===10&&num.length===10){res=comb10MulTo(this,num,out)}else if(len<63){res=smallMulTo(this,num,out)}else if(len<1024){res=bigMulTo(this,num,out)}else{res=jumboMulTo(this,num,out)}return res};function FFTM(x,y){this.x=x;this.y=y}FFTM.prototype.makeRBT=function makeRBT(N){var t=new Array(N);var l=BN.prototype._countBits(N)-1;for(var i=0;i>=1}return rb};FFTM.prototype.permute=function permute(rbt,rws,iws,rtws,itws,N){for(var i=0;i>>1){i++}return 1<>>13;rws[2*i+1]=carry&8191;carry=carry>>>13}for(i=2*len;i>=26;carry+=w/67108864|0;carry+=lo>>>26;this.words[i]=lo&67108863}if(carry!==0){this.words[i]=carry;this.length++}return isNegNum?this.ineg():this};BN.prototype.muln=function muln(num){return this.clone().imuln(num)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(num){var w=toBitArray(num);if(w.length===0)return new BN(1);var res=this;for(var i=0;i=0);var r=bits%26;var s=(bits-r)/26;var carryMask=67108863>>>26-r<<26-r;var i;if(r!==0){var carry=0;for(i=0;i>>26-r}if(carry){this.words[i]=carry;this.length++}}if(s!==0){for(i=this.length-1;i>=0;i--){this.words[i+s]=this.words[i]}for(i=0;i=0);var h;if(hint){h=(hint-hint%26)/26}else{h=0}var r=bits%26;var s=Math.min((bits-r)/26,this.length);var mask=67108863^67108863>>>r<s){this.length-=s;for(i=0;i=0&&(carry!==0||i>=h);i--){var word=this.words[i]|0;this.words[i]=carry<<26-r|word>>>r;carry=word&mask}if(maskedWords&&carry!==0){maskedWords.words[maskedWords.length++]=carry}if(this.length===0){this.words[0]=0;this.length=1}return this._strip()};BN.prototype.ishrn=function ishrn(bits,hint,extended){assert(this.negative===0);return this.iushrn(bits,hint,extended)};BN.prototype.shln=function shln(bits){return this.clone().ishln(bits)};BN.prototype.ushln=function ushln(bits){return this.clone().iushln(bits)};BN.prototype.shrn=function shrn(bits){return this.clone().ishrn(bits)};BN.prototype.ushrn=function ushrn(bits){return this.clone().iushrn(bits)};BN.prototype.testn=function testn(bit){assert(typeof bit==="number"&&bit>=0);var r=bit%26;var s=(bit-r)/26;var q=1<=0);var r=bits%26;var s=(bits-r)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=s){return this}if(r!==0){s++}this.length=Math.min(s,this.length);if(r!==0){var mask=67108863^67108863>>>r<=67108864;i++){this.words[i]-=67108864;if(i===this.length-1){this.words[i+1]=1}else{this.words[i+1]++}}this.length=Math.max(this.length,i+1);return this};BN.prototype.isubn=function isubn(num){assert(typeof num==="number");assert(num<67108864);if(num<0)return this.iaddn(-num);if(this.negative!==0){this.negative=0;this.iaddn(num);this.negative=1;return this}this.words[0]-=num;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var i=0;i>26)-(right/67108864|0);this.words[i+shift]=w&67108863}for(;i>26;this.words[i+shift]=w&67108863}if(carry===0)return this._strip();assert(carry===-1);carry=0;for(i=0;i>26;this.words[i]=w&67108863}this.negative=1;return this._strip()};BN.prototype._wordDiv=function _wordDiv(num,mode){var shift=this.length-num.length;var a=this.clone();var b=num;var bhi=b.words[b.length-1]|0;var bhiBits=this._countBits(bhi);shift=26-bhiBits;if(shift!==0){b=b.ushln(shift);a.iushln(shift);bhi=b.words[b.length-1]|0}var m=a.length-b.length;var q;if(mode!=="mod"){q=new BN(null);q.length=m+1;q.words=new Array(q.length);for(var i=0;i=0;j--){var qj=(a.words[b.length+j]|0)*67108864+(a.words[b.length+j-1]|0);qj=Math.min(qj/bhi|0,67108863);a._ishlnsubmul(b,qj,j);while(a.negative!==0){qj--;a.negative=0;a._ishlnsubmul(b,1,j);if(!a.isZero()){a.negative^=1}}if(q){q.words[j]=qj}}if(q){q._strip()}a._strip();if(mode!=="div"&&shift!==0){a.iushrn(shift)}return{div:q||null,mod:a}};BN.prototype.divmod=function divmod(num,mode,positive){assert(!num.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var div,mod,res;if(this.negative!==0&&num.negative===0){res=this.neg().divmod(num,mode);if(mode!=="mod"){div=res.div.neg()}if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.iadd(num)}}return{div:div,mod:mod}}if(this.negative===0&&num.negative!==0){res=this.divmod(num.neg(),mode);if(mode!=="mod"){div=res.div.neg()}return{div:div,mod:res.mod}}if((this.negative&num.negative)!==0){res=this.neg().divmod(num.neg(),mode);if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.isub(num)}}return{div:res.div,mod:mod}}if(num.length>this.length||this.cmp(num)<0){return{div:new BN(0),mod:this}}if(num.length===1){if(mode==="div"){return{div:this.divn(num.words[0]),mod:null}}if(mode==="mod"){return{div:null,mod:new BN(this.modrn(num.words[0]))}}return{div:this.divn(num.words[0]),mod:new BN(this.modrn(num.words[0]))}}return this._wordDiv(num,mode)};BN.prototype.div=function div(num){return this.divmod(num,"div",false).div};BN.prototype.mod=function mod(num){return this.divmod(num,"mod",false).mod};BN.prototype.umod=function umod(num){return this.divmod(num,"mod",true).mod};BN.prototype.divRound=function divRound(num){var dm=this.divmod(num);if(dm.mod.isZero())return dm.div;var mod=dm.div.negative!==0?dm.mod.isub(num):dm.mod;var half=num.ushrn(1);var r2=num.andln(1);var cmp=mod.cmp(half);if(cmp<0||r2===1&&cmp===0)return dm.div;return dm.div.negative!==0?dm.div.isubn(1):dm.div.iaddn(1)};BN.prototype.modrn=function modrn(num){var isNegNum=num<0;if(isNegNum)num=-num;assert(num<=67108863);var p=(1<<26)%num;var acc=0;for(var i=this.length-1;i>=0;i--){acc=(p*acc+(this.words[i]|0))%num}return isNegNum?-acc:acc};BN.prototype.modn=function modn(num){return this.modrn(num)};BN.prototype.idivn=function idivn(num){var isNegNum=num<0;if(isNegNum)num=-num;assert(num<=67108863);var carry=0;for(var i=this.length-1;i>=0;i--){var w=(this.words[i]|0)+carry*67108864;this.words[i]=w/num|0;carry=w%num}this._strip();return isNegNum?this.ineg():this};BN.prototype.divn=function divn(num){return this.clone().idivn(num)};BN.prototype.egcd=function egcd(p){assert(p.negative===0);assert(!p.isZero());var x=this;var y=p.clone();if(x.negative!==0){x=x.umod(p)}else{x=x.clone()}var A=new BN(1);var B=new BN(0);var C=new BN(0);var D=new BN(1);var g=0;while(x.isEven()&&y.isEven()){x.iushrn(1);y.iushrn(1);++g}var yp=y.clone();var xp=x.clone();while(!x.isZero()){for(var i=0,im=1;(x.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){x.iushrn(i);while(i-- >0){if(A.isOdd()||B.isOdd()){A.iadd(yp);B.isub(xp)}A.iushrn(1);B.iushrn(1)}}for(var j=0,jm=1;(y.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){y.iushrn(j);while(j-- >0){if(C.isOdd()||D.isOdd()){C.iadd(yp);D.isub(xp)}C.iushrn(1);D.iushrn(1)}}if(x.cmp(y)>=0){x.isub(y);A.isub(C);B.isub(D)}else{y.isub(x);C.isub(A);D.isub(B)}}return{a:C,b:D,gcd:y.iushln(g)}};BN.prototype._invmp=function _invmp(p){assert(p.negative===0);assert(!p.isZero());var a=this;var b=p.clone();if(a.negative!==0){a=a.umod(p)}else{a=a.clone()}var x1=new BN(1);var x2=new BN(0);var delta=b.clone();while(a.cmpn(1)>0&&b.cmpn(1)>0){for(var i=0,im=1;(a.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){a.iushrn(i);while(i-- >0){if(x1.isOdd()){x1.iadd(delta)}x1.iushrn(1)}}for(var j=0,jm=1;(b.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){b.iushrn(j);while(j-- >0){if(x2.isOdd()){x2.iadd(delta)}x2.iushrn(1)}}if(a.cmp(b)>=0){a.isub(b);x1.isub(x2)}else{b.isub(a);x2.isub(x1)}}var res;if(a.cmpn(1)===0){res=x1}else{res=x2}if(res.cmpn(0)<0){res.iadd(p)}return res};BN.prototype.gcd=function gcd(num){if(this.isZero())return num.abs();if(num.isZero())return this.abs();var a=this.clone();var b=num.clone();a.negative=0;b.negative=0;for(var shift=0;a.isEven()&&b.isEven();shift++){a.iushrn(1);b.iushrn(1)}do{while(a.isEven()){a.iushrn(1)}while(b.isEven()){b.iushrn(1)}var r=a.cmp(b);if(r<0){var t=a;a=b;b=t}else if(r===0||b.cmpn(1)===0){break}a.isub(b)}while(true);return b.iushln(shift)};BN.prototype.invm=function invm(num){return this.egcd(num).a.umod(num)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(num){return this.words[0]&num};BN.prototype.bincn=function bincn(bit){assert(typeof bit==="number");var r=bit%26;var s=(bit-r)/26;var q=1<>>26;w&=67108863;this.words[i]=w}if(carry!==0){this.words[i]=carry;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(num){var negative=num<0;if(this.negative!==0&&!negative)return-1;if(this.negative===0&&negative)return 1;this._strip();var res;if(this.length>1){res=1}else{if(negative){num=-num}assert(num<=67108863,"Number is too big");var w=this.words[0]|0;res=w===num?0:wnum.length)return 1;if(this.length=0;i--){var a=this.words[i]|0;var b=num.words[i]|0;if(a===b)continue;if(ab){res=1}break}return res};BN.prototype.gtn=function gtn(num){return this.cmpn(num)===1};BN.prototype.gt=function gt(num){return this.cmp(num)===1};BN.prototype.gten=function gten(num){return this.cmpn(num)>=0};BN.prototype.gte=function gte(num){return this.cmp(num)>=0};BN.prototype.ltn=function ltn(num){return this.cmpn(num)===-1};BN.prototype.lt=function lt(num){return this.cmp(num)===-1};BN.prototype.lten=function lten(num){return this.cmpn(num)<=0};BN.prototype.lte=function lte(num){return this.cmp(num)<=0};BN.prototype.eqn=function eqn(num){return this.cmpn(num)===0};BN.prototype.eq=function eq(num){return this.cmp(num)===0};BN.red=function red(num){return new Red(num)};BN.prototype.toRed=function toRed(ctx){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return ctx.convertTo(this)._forceRed(ctx)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(ctx){this.red=ctx;return this};BN.prototype.forceRed=function forceRed(ctx){assert(!this.red,"Already a number in reduction context");return this._forceRed(ctx)};BN.prototype.redAdd=function redAdd(num){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,num)};BN.prototype.redIAdd=function redIAdd(num){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,num)};BN.prototype.redSub=function redSub(num){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,num)};BN.prototype.redISub=function redISub(num){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,num)};BN.prototype.redShl=function redShl(num){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,num)};BN.prototype.redMul=function redMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.mul(this,num)};BN.prototype.redIMul=function redIMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.imul(this,num)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(num){assert(this.red&&!num.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,num)};var primes={k256:null,p224:null,p192:null,p25519:null};function MPrime(name,p){this.name=name;this.p=new BN(p,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var tmp=new BN(null);tmp.words=new Array(Math.ceil(this.n/13));return tmp};MPrime.prototype.ireduce=function ireduce(num){var r=num;var rlen;do{this.split(r,this.tmp);r=this.imulK(r);r=r.iadd(this.tmp);rlen=r.bitLength()}while(rlen>this.n);var cmp=rlen0){r.isub(this.p)}else{r._strip()}return r};MPrime.prototype.split=function split(input,out){input.iushrn(this.n,0,out)};MPrime.prototype.imulK=function imulK(num){return num.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits(K256,MPrime);K256.prototype.split=function split(input,output){var mask=4194303;var outLen=Math.min(input.length,9);for(var i=0;i>>22;prev=next}prev>>>=22;input.words[i-10]=prev;if(prev===0&&input.length>10){input.length-=10}else{input.length-=9}};K256.prototype.imulK=function imulK(num){num.words[num.length]=0;num.words[num.length+1]=0;num.length+=2;var lo=0;for(var i=0;i>>=26;num.words[i]=lo;carry=hi}if(carry!==0){num.words[num.length++]=carry}return num};BN._prime=function prime(name){if(primes[name])return primes[name];var prime;if(name==="k256"){prime=new K256}else if(name==="p224"){prime=new P224}else if(name==="p192"){prime=new P192}else if(name==="p25519"){prime=new P25519}else{throw new Error("Unknown prime "+name)}primes[name]=prime;return prime};function Red(m){if(typeof m==="string"){var prime=BN._prime(m);this.m=prime.p;this.prime=prime}else{assert(m.gtn(1),"modulus must be greater than 1");this.m=m;this.prime=null}}Red.prototype._verify1=function _verify1(a){assert(a.negative===0,"red works only with positives");assert(a.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(a,b){assert((a.negative|b.negative)===0,"red works only with positives");assert(a.red&&a.red===b.red,"red works only with red numbers")};Red.prototype.imod=function imod(a){if(this.prime)return this.prime.ireduce(a)._forceRed(this);move(a,a.umod(this.m)._forceRed(this));return a};Red.prototype.neg=function neg(a){if(a.isZero()){return a.clone()}return this.m.sub(a)._forceRed(this)};Red.prototype.add=function add(a,b){this._verify2(a,b);var res=a.add(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res._forceRed(this)};Red.prototype.iadd=function iadd(a,b){this._verify2(a,b);var res=a.iadd(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res};Red.prototype.sub=function sub(a,b){this._verify2(a,b);var res=a.sub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res._forceRed(this)};Red.prototype.isub=function isub(a,b){this._verify2(a,b);var res=a.isub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res};Red.prototype.shl=function shl(a,num){this._verify1(a);return this.imod(a.ushln(num))};Red.prototype.imul=function imul(a,b){this._verify2(a,b);return this.imod(a.imul(b))};Red.prototype.mul=function mul(a,b){this._verify2(a,b);return this.imod(a.mul(b))};Red.prototype.isqr=function isqr(a){return this.imul(a,a.clone())};Red.prototype.sqr=function sqr(a){return this.mul(a,a)};Red.prototype.sqrt=function sqrt(a){if(a.isZero())return a.clone();var mod3=this.m.andln(3);assert(mod3%2===1);if(mod3===3){var pow=this.m.add(new BN(1)).iushrn(2);return this.pow(a,pow)}var q=this.m.subn(1);var s=0;while(!q.isZero()&&q.andln(1)===0){s++;q.iushrn(1)}assert(!q.isZero());var one=new BN(1).toRed(this);var nOne=one.redNeg();var lpow=this.m.subn(1).iushrn(1);var z=this.m.bitLength();z=new BN(2*z*z).toRed(this);while(this.pow(z,lpow).cmp(nOne)!==0){z.redIAdd(nOne)}var c=this.pow(z,q);var r=this.pow(a,q.addn(1).iushrn(1));var t=this.pow(a,q);var m=s;while(t.cmp(one)!==0){var tmp=t;for(var i=0;tmp.cmp(one)!==0;i++){tmp=tmp.redSqr()}assert(i=0;i--){var word=num.words[i];for(var j=start-1;j>=0;j--){var bit=word>>j&1;if(res!==wnd[0]){res=this.sqr(res)}if(bit===0&¤t===0){currentLen=0;continue}current<<=1;current|=bit;currentLen++;if(currentLen!==windowSize&&(i!==0||j!==0))continue;res=this.mul(res,wnd[current]);currentLen=0;current=0}start=26}return res};Red.prototype.convertTo=function convertTo(num){var r=num.umod(this.m);return r===num?r.clone():r};Red.prototype.convertFrom=function convertFrom(num){var res=num.clone();res.red=null;return res};BN.mont=function mont(num){return new Mont(num)};function Mont(m){Red.call(this,m);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits(Mont,Red);Mont.prototype.convertTo=function convertTo(num){return this.imod(num.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(num){var r=this.imod(num.mul(this.rinv));r.red=null;return r};Mont.prototype.imul=function imul(a,b){if(a.isZero()||b.isZero()){a.words[0]=0;a.length=1;return a}var t=a.imul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.mul=function mul(a,b){if(a.isZero()||b.isZero())return new BN(0)._forceRed(this);var t=a.mul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.invm=function invm(a){var res=this.imod(a._invmp(this.m).mul(this.r2));return res._forceRed(this)}})(typeof module==="undefined"||module,this)},{buffer:141}],140:[function(require,module,exports){var r;module.exports=function rand(len){if(!r)r=new Rand(null);return r.generate(len)};function Rand(rand){this.rand=rand}module.exports.Rand=Rand;Rand.prototype.generate=function generate(len){return this._rand(len)};Rand.prototype._rand=function _rand(n){if(this.rand.getBytes)return this.rand.getBytes(n);var res=new Uint8Array(n);for(var i=0;i>>24]^SUB_MIX1[s1>>>16&255]^SUB_MIX2[s2>>>8&255]^SUB_MIX3[s3&255]^keySchedule[ksRow++];t1=SUB_MIX0[s1>>>24]^SUB_MIX1[s2>>>16&255]^SUB_MIX2[s3>>>8&255]^SUB_MIX3[s0&255]^keySchedule[ksRow++];t2=SUB_MIX0[s2>>>24]^SUB_MIX1[s3>>>16&255]^SUB_MIX2[s0>>>8&255]^SUB_MIX3[s1&255]^keySchedule[ksRow++];t3=SUB_MIX0[s3>>>24]^SUB_MIX1[s0>>>16&255]^SUB_MIX2[s1>>>8&255]^SUB_MIX3[s2&255]^keySchedule[ksRow++];s0=t0;s1=t1;s2=t2;s3=t3}t0=(SBOX[s0>>>24]<<24|SBOX[s1>>>16&255]<<16|SBOX[s2>>>8&255]<<8|SBOX[s3&255])^keySchedule[ksRow++];t1=(SBOX[s1>>>24]<<24|SBOX[s2>>>16&255]<<16|SBOX[s3>>>8&255]<<8|SBOX[s0&255])^keySchedule[ksRow++];t2=(SBOX[s2>>>24]<<24|SBOX[s3>>>16&255]<<16|SBOX[s0>>>8&255]<<8|SBOX[s1&255])^keySchedule[ksRow++];t3=(SBOX[s3>>>24]<<24|SBOX[s0>>>16&255]<<16|SBOX[s1>>>8&255]<<8|SBOX[s2&255])^keySchedule[ksRow++];t0=t0>>>0;t1=t1>>>0;t2=t2>>>0;t3=t3>>>0;return[t0,t1,t2,t3]}var RCON=[0,1,2,4,8,16,32,64,128,27,54];var G=function(){var d=new Array(256);for(var j=0;j<256;j++){if(j<128){d[j]=j<<1}else{d[j]=j<<1^283}}var SBOX=[];var INV_SBOX=[];var SUB_MIX=[[],[],[],[]];var INV_SUB_MIX=[[],[],[],[]];var x=0;var xi=0;for(var i=0;i<256;++i){var sx=xi^xi<<1^xi<<2^xi<<3^xi<<4;sx=sx>>>8^sx&255^99;SBOX[x]=sx;INV_SBOX[sx]=x;var x2=d[x];var x4=d[x2];var x8=d[x4];var t=d[sx]*257^sx*16843008;SUB_MIX[0][x]=t<<24|t>>>8;SUB_MIX[1][x]=t<<16|t>>>16;SUB_MIX[2][x]=t<<8|t>>>24;SUB_MIX[3][x]=t;t=x8*16843009^x4*65537^x2*257^x*16843008;INV_SUB_MIX[0][sx]=t<<24|t>>>8;INV_SUB_MIX[1][sx]=t<<16|t>>>16;INV_SUB_MIX[2][sx]=t<<8|t>>>24;INV_SUB_MIX[3][sx]=t;if(x===0){x=xi=1}else{x=x2^d[d[d[x8^x2]]];xi^=d[d[xi]]}}return{SBOX:SBOX,INV_SBOX:INV_SBOX,SUB_MIX:SUB_MIX,INV_SUB_MIX:INV_SUB_MIX}}();function AES(key){this._key=asUInt32Array(key);this._reset()}AES.blockSize=4*4;AES.keySize=256/8;AES.prototype.blockSize=AES.blockSize;AES.prototype.keySize=AES.keySize;AES.prototype._reset=function(){var keyWords=this._key;var keySize=keyWords.length;var nRounds=keySize+6;var ksRows=(nRounds+1)*4;var keySchedule=[];for(var k=0;k>>24;t=G.SBOX[t>>>24]<<24|G.SBOX[t>>>16&255]<<16|G.SBOX[t>>>8&255]<<8|G.SBOX[t&255];t^=RCON[k/keySize|0]<<24}else if(keySize>6&&k%keySize===4){t=G.SBOX[t>>>24]<<24|G.SBOX[t>>>16&255]<<16|G.SBOX[t>>>8&255]<<8|G.SBOX[t&255]}keySchedule[k]=keySchedule[k-keySize]^t}var invKeySchedule=[];for(var ik=0;ik>>24]]^G.INV_SUB_MIX[1][G.SBOX[tt>>>16&255]]^G.INV_SUB_MIX[2][G.SBOX[tt>>>8&255]]^G.INV_SUB_MIX[3][G.SBOX[tt&255]]}}this._nRounds=nRounds;this._keySchedule=keySchedule;this._invKeySchedule=invKeySchedule};AES.prototype.encryptBlockRaw=function(M){M=asUInt32Array(M);return cryptBlock(M,this._keySchedule,G.SUB_MIX,G.SBOX,this._nRounds)};AES.prototype.encryptBlock=function(M){var out=this.encryptBlockRaw(M);var buf=Buffer.allocUnsafe(16);buf.writeUInt32BE(out[0],0);buf.writeUInt32BE(out[1],4);buf.writeUInt32BE(out[2],8);buf.writeUInt32BE(out[3],12);return buf};AES.prototype.decryptBlock=function(M){M=asUInt32Array(M);var m1=M[1];M[1]=M[3];M[3]=m1;var out=cryptBlock(M,this._invKeySchedule,G.INV_SUB_MIX,G.INV_SBOX,this._nRounds);var buf=Buffer.allocUnsafe(16);buf.writeUInt32BE(out[0],0);buf.writeUInt32BE(out[3],4);buf.writeUInt32BE(out[2],8);buf.writeUInt32BE(out[1],12);return buf};AES.prototype.scrub=function(){scrubVec(this._keySchedule);scrubVec(this._invKeySchedule);scrubVec(this._key)};module.exports.AES=AES},{"safe-buffer":293}],143:[function(require,module,exports){var aes=require("./aes");var Buffer=require("safe-buffer").Buffer;var Transform=require("cipher-base");var inherits=require("inherits");var GHASH=require("./ghash");var xor=require("buffer-xor");var incr32=require("./incr32");function xorTest(a,b){var out=0;if(a.length!==b.length)out++;var len=Math.min(a.length,b.length);for(var i=0;i16){out=this.cache.slice(0,16);this.cache=this.cache.slice(16);return out}}else{if(this.cache.length>=16){out=this.cache.slice(0,16);this.cache=this.cache.slice(16);return out}}return null};Splitter.prototype.flush=function(){if(this.cache.length)return this.cache};function unpad(last){var padded=last[15];if(padded<1||padded>16){throw new Error("unable to decrypt data")}var i=-1;while(++i15){var out=this.cache.slice(0,16);this.cache=this.cache.slice(16);return out}return null};Splitter.prototype.flush=function(){var len=16-this.cache.length;var padBuff=Buffer.allocUnsafe(len);var i=-1;while(++i>>0,0);buf.writeUInt32BE(out[1]>>>0,4);buf.writeUInt32BE(out[2]>>>0,8);buf.writeUInt32BE(out[3]>>>0,12);return buf}function GHASH(key){this.h=key;this.state=Buffer.alloc(16,0);this.cache=Buffer.allocUnsafe(0)}GHASH.prototype.ghash=function(block){var i=-1;while(++i0;j--){Vi[j]=Vi[j]>>>1|(Vi[j-1]&1)<<31}Vi[0]=Vi[0]>>>1;if(lsbVi){Vi[0]=Vi[0]^225<<24}}this.state=fromArray(Zi)};GHASH.prototype.update=function(buf){this.cache=Buffer.concat([this.cache,buf]);var chunk;while(this.cache.length>=16){chunk=this.cache.slice(0,16);this.cache=this.cache.slice(16);this.ghash(chunk)}};GHASH.prototype.final=function(abl,bl){if(this.cache.length){this.ghash(Buffer.concat([this.cache,ZEROES],16))}this.ghash(fromArray([0,abl,0,bl]));return this.state};module.exports=GHASH},{"safe-buffer":293}],148:[function(require,module,exports){function incr32(iv){var len=iv.length;var item;while(len--){item=iv.readUInt8(len);if(item===255){iv.writeUInt8(0,len)}else{item++;iv.writeUInt8(item,len);break}}}module.exports=incr32},{}],149:[function(require,module,exports){var xor=require("buffer-xor");exports.encrypt=function(self,block){var data=xor(block,self._prev);self._prev=self._cipher.encryptBlock(data);return self._prev};exports.decrypt=function(self,block){var pad=self._prev;self._prev=block;var out=self._cipher.decryptBlock(block);return xor(out,pad)}},{"buffer-xor":191}],150:[function(require,module,exports){var Buffer=require("safe-buffer").Buffer;var xor=require("buffer-xor");function encryptStart(self,data,decrypt){var len=data.length;var out=xor(data,self._cache);self._cache=self._cache.slice(len);self._prev=Buffer.concat([self._prev,decrypt?data:out]);return out}exports.encrypt=function(self,data,decrypt){var out=Buffer.allocUnsafe(0);var len;while(data.length){if(self._cache.length===0){self._cache=self._cipher.encryptBlock(self._prev);self._prev=Buffer.allocUnsafe(0)}if(self._cache.length<=data.length){len=self._cache.length;out=Buffer.concat([out,encryptStart(self,data.slice(0,len),decrypt)]);data=data.slice(len)}else{out=Buffer.concat([out,encryptStart(self,data,decrypt)]);break}}return out}},{"buffer-xor":191,"safe-buffer":293}],151:[function(require,module,exports){var Buffer=require("safe-buffer").Buffer;function encryptByte(self,byteParam,decrypt){var pad;var i=-1;var len=8;var out=0;var bit,value;while(++i>i%8;self._prev=shiftIn(self._prev,decrypt?bit:value)}return out}function shiftIn(buffer,value){var len=buffer.length;var i=-1;var out=Buffer.allocUnsafe(buffer.length);buffer=Buffer.concat([buffer,Buffer.from([value])]);while(++i>7}return out}exports.encrypt=function(self,chunk,decrypt){var len=chunk.length;var out=Buffer.allocUnsafe(len);var i=-1;while(++i=0||!r.umod(priv.prime1)||!r.umod(priv.prime2)){r=new bn(randomBytes(len))}return r}}).call(this,require("buffer").Buffer)},{"bn.js":163,buffer:185,randombytes:276}],163:[function(require,module,exports){arguments[4][109][0].apply(exports,arguments)},{buffer:141,dup:109}],164:[function(require,module,exports){module.exports=require("./browser/algorithms.json")},{"./browser/algorithms.json":165}],165:[function(require,module,exports){module.exports={sha224WithRSAEncryption:{sign:"rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},"RSA-SHA224":{sign:"ecdsa/rsa",hash:"sha224",id:"302d300d06096086480165030402040500041c"},sha256WithRSAEncryption:{sign:"rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},"RSA-SHA256":{sign:"ecdsa/rsa",hash:"sha256",id:"3031300d060960864801650304020105000420"},sha384WithRSAEncryption:{sign:"rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},"RSA-SHA384":{sign:"ecdsa/rsa",hash:"sha384",id:"3041300d060960864801650304020205000430"},sha512WithRSAEncryption:{sign:"rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA512":{sign:"ecdsa/rsa",hash:"sha512",id:"3051300d060960864801650304020305000440"},"RSA-SHA1":{sign:"rsa",hash:"sha1",id:"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{sign:"ecdsa",hash:"sha1",id:""},sha256:{sign:"ecdsa",hash:"sha256",id:""},sha224:{sign:"ecdsa",hash:"sha224",id:""},sha384:{sign:"ecdsa",hash:"sha384",id:""},sha512:{sign:"ecdsa",hash:"sha512",id:""},"DSA-SHA":{sign:"dsa",hash:"sha1",id:""},"DSA-SHA1":{sign:"dsa",hash:"sha1",id:""},DSA:{sign:"dsa",hash:"sha1",id:""},"DSA-WITH-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-SHA224":{sign:"dsa",hash:"sha224",id:""},"DSA-WITH-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-SHA256":{sign:"dsa",hash:"sha256",id:""},"DSA-WITH-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-SHA384":{sign:"dsa",hash:"sha384",id:""},"DSA-WITH-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-SHA512":{sign:"dsa",hash:"sha512",id:""},"DSA-RIPEMD160":{sign:"dsa",hash:"rmd160",id:""},ripemd160WithRSA:{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},"RSA-RIPEMD160":{sign:"rsa",hash:"rmd160",id:"3021300906052b2403020105000414"},md5WithRSAEncryption:{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"},"RSA-MD5":{sign:"rsa",hash:"md5",id:"3020300c06082a864886f70d020505000410"}}},{}],166:[function(require,module,exports){module.exports={"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}},{}],167:[function(require,module,exports){var Buffer=require("buffer").Buffer;var createHash=require("create-hash");var stream=require("readable-stream");var inherits=require("inherits");var sign=require("./sign");var verify=require("./verify");var algorithms=require("./algorithms.json");Object.keys(algorithms).forEach(function(key){algorithms[key].id=Buffer.from(algorithms[key].id,"hex");algorithms[key.toLowerCase()]=algorithms[key]});function Sign(algorithm){stream.Writable.call(this);var data=algorithms[algorithm];if(!data)throw new Error("Unknown message digest");this._hashType=data.hash;this._hash=createHash(data.hash);this._tag=data.id;this._signType=data.sign}inherits(Sign,stream.Writable);Sign.prototype._write=function _write(data,_,done){this._hash.update(data);done()};Sign.prototype.update=function update(data,enc){if(typeof data==="string")data=Buffer.from(data,enc);this._hash.update(data);return this};Sign.prototype.sign=function signMethod(key,enc){this.end();var hash=this._hash.digest();var sig=sign(hash,key,this._hashType,this._signType,this._tag);return enc?sig.toString(enc):sig};function Verify(algorithm){stream.Writable.call(this);var data=algorithms[algorithm];if(!data)throw new Error("Unknown message digest");this._hash=createHash(data.hash);this._tag=data.id;this._signType=data.sign}inherits(Verify,stream.Writable);Verify.prototype._write=function _write(data,_,done){this._hash.update(data);done()};Verify.prototype.update=function update(data,enc){if(typeof data==="string")data=Buffer.from(data,enc);this._hash.update(data);return this};Verify.prototype.verify=function verifyMethod(key,sig,enc){if(typeof sig==="string")sig=Buffer.from(sig,enc);this.end();var hash=this._hash.digest();return verify(sig,hash,key,this._signType,this._tag)};function createSign(algorithm){return new Sign(algorithm)}function createVerify(algorithm){return new Verify(algorithm)}module.exports={Sign:createSign,Verify:createVerify,createSign:createSign,createVerify:createVerify}},{"./algorithms.json":165,"./sign":168,"./verify":169,buffer:185,"create-hash":196,inherits:245,"readable-stream":184}],168:[function(require,module,exports){var Buffer=require("buffer").Buffer;var createHmac=require("create-hmac");var crt=require("browserify-rsa");var EC=require("elliptic").ec;var BN=require("bn.js");var parseKeys=require("parse-asn1");var curves=require("./curves.json");function sign(hash,key,hashType,signType,tag){var priv=parseKeys(key);if(priv.curve){if(signType!=="ecdsa"&&signType!=="ecdsa/rsa")throw new Error("wrong private key type");return ecSign(hash,priv)}else if(priv.type==="dsa"){if(signType!=="dsa")throw new Error("wrong private key type");return dsaSign(hash,priv,hashType)}else{if(signType!=="rsa"&&signType!=="ecdsa/rsa")throw new Error("wrong private key type")}hash=Buffer.concat([tag,hash]);var len=priv.modulus.byteLength();var pad=[0,1];while(hash.length+pad.length+10)bits.ishrn(shift);return bits}function bits2octets(bits,q){bits=bits2int(bits,q);bits=bits.mod(q);var out=Buffer.from(bits.toArray());if(out.length=q)throw new Error("invalid sig")}module.exports=verify},{"./curves.json":166,"bn.js":139,buffer:185,elliptic:212,"parse-asn1":259}],170:[function(require,module,exports){"use strict";function _inheritsLoose(subClass,superClass){subClass.prototype=Object.create(superClass.prototype);subClass.prototype.constructor=subClass;subClass.__proto__=superClass}var codes={};function createErrorType(code,message,Base){if(!Base){Base=Error}function getMessage(arg1,arg2,arg3){if(typeof message==="string"){return message}else{return message(arg1,arg2,arg3)}}var NodeError=function(_Base){_inheritsLoose(NodeError,_Base);function NodeError(arg1,arg2,arg3){return _Base.call(this,getMessage(arg1,arg2,arg3))||this}return NodeError}(Base);NodeError.prototype.name=Base.name;NodeError.prototype.code=code;codes[code]=NodeError}function oneOf(expected,thing){if(Array.isArray(expected)){var len=expected.length;expected=expected.map(function(i){return String(i)});if(len>2){return"one of ".concat(thing," ").concat(expected.slice(0,len-1).join(", "),", or ")+expected[len-1]}else if(len===2){return"one of ".concat(thing," ").concat(expected[0]," or ").concat(expected[1])}else{return"of ".concat(thing," ").concat(expected[0])}}else{return"of ".concat(thing," ").concat(String(expected))}}function startsWith(str,search,pos){return str.substr(!pos||pos<0?0:+pos,search.length)===search}function endsWith(str,search,this_len){if(this_len===undefined||this_len>str.length){this_len=str.length}return str.substring(this_len-search.length,this_len)===search}function includes(str,search,start){if(typeof start!=="number"){start=0}if(start+search.length>str.length){return false}else{return str.indexOf(search,start)!==-1}}createErrorType("ERR_INVALID_OPT_VALUE",function(name,value){return'The value "'+value+'" is invalid for option "'+name+'"'},TypeError);createErrorType("ERR_INVALID_ARG_TYPE",function(name,expected,actual){var determiner;if(typeof expected==="string"&&startsWith(expected,"not ")){determiner="must not be";expected=expected.replace(/^not /,"")}else{determiner="must be"}var msg;if(endsWith(name," argument")){msg="The ".concat(name," ").concat(determiner," ").concat(oneOf(expected,"type"))}else{var type=includes(name,".")?"property":"argument";msg='The "'.concat(name,'" ').concat(type," ").concat(determiner," ").concat(oneOf(expected,"type"))}msg+=". Received type ".concat(typeof actual);return msg},TypeError);createErrorType("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");createErrorType("ERR_METHOD_NOT_IMPLEMENTED",function(name){return"The "+name+" method is not implemented"});createErrorType("ERR_STREAM_PREMATURE_CLOSE","Premature close");createErrorType("ERR_STREAM_DESTROYED",function(name){return"Cannot call "+name+" after a stream was destroyed"});createErrorType("ERR_MULTIPLE_CALLBACK","Callback called multiple times");createErrorType("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");createErrorType("ERR_STREAM_WRITE_AFTER_END","write after end");createErrorType("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);createErrorType("ERR_UNKNOWN_ENCODING",function(arg){return"Unknown encoding: "+arg},TypeError);createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");module.exports.codes=codes},{}],171:[function(require,module,exports){(function(process){"use strict";var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){keys.push(key)}return keys};module.exports=Duplex;var Readable=require("./_stream_readable");var Writable=require("./_stream_writable");require("inherits")(Duplex,Readable);{var keys=objectKeys(Writable.prototype);for(var v=0;v0){if(typeof chunk!=="string"&&!state.objectMode&&Object.getPrototypeOf(chunk)!==Buffer.prototype){chunk=_uint8ArrayToBuffer(chunk)}if(addToFront){if(state.endEmitted)errorOrDestroy(stream,new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);else addChunk(stream,state,chunk,true)}else if(state.ended){errorOrDestroy(stream,new ERR_STREAM_PUSH_AFTER_EOF)}else if(state.destroyed){return false}else{state.reading=false;if(state.decoder&&!encoding){chunk=state.decoder.write(chunk);if(state.objectMode||chunk.length!==0)addChunk(stream,state,chunk,false);else maybeReadMore(stream,state)}else{addChunk(stream,state,chunk,false)}}}else if(!addToFront){state.reading=false;maybeReadMore(stream,state)}}return!state.ended&&(state.length=MAX_HWM){n=MAX_HWM}else{n--;n|=n>>>1;n|=n>>>2;n|=n>>>4;n|=n>>>8;n|=n>>>16;n++}return n}function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)return 0;if(state.objectMode)return 1;if(n!==n){if(state.flowing&&state.length)return state.buffer.head.data.length;else return state.length}if(n>state.highWaterMark)state.highWaterMark=computeNewHighWaterMark(n);if(n<=state.length)return n;if(!state.ended){state.needReadable=true;return 0}return state.length}Readable.prototype.read=function(n){debug("read",n);n=parseInt(n,10);var state=this._readableState;var nOrig=n;if(n!==0)state.emittedReadable=false;if(n===0&&state.needReadable&&((state.highWaterMark!==0?state.length>=state.highWaterMark:state.length>0)||state.ended)){debug("read: emitReadable",state.length,state.ended);if(state.length===0&&state.ended)endReadable(this);else emitReadable(this);return null}n=howMuchToRead(n,state);if(n===0&&state.ended){if(state.length===0)endReadable(this);return null}var doRead=state.needReadable;debug("need readable",doRead);if(state.length===0||state.length-n0)ret=fromList(n,state);else ret=null;if(ret===null){state.needReadable=state.length<=state.highWaterMark;n=0}else{state.length-=n;state.awaitDrain=0}if(state.length===0){if(!state.ended)state.needReadable=true;if(nOrig!==n&&state.ended)endReadable(this)}if(ret!==null)this.emit("data",ret);return ret};function onEofChunk(stream,state){debug("onEofChunk");if(state.ended)return;if(state.decoder){var chunk=state.decoder.end();if(chunk&&chunk.length){state.buffer.push(chunk);state.length+=state.objectMode?1:chunk.length}}state.ended=true;if(state.sync){emitReadable(stream)}else{state.needReadable=false;if(!state.emittedReadable){state.emittedReadable=true;emitReadable_(stream)}}}function emitReadable(stream){var state=stream._readableState;debug("emitReadable",state.needReadable,state.emittedReadable);state.needReadable=false;if(!state.emittedReadable){debug("emitReadable",state.flowing);state.emittedReadable=true;process.nextTick(emitReadable_,stream)}}function emitReadable_(stream){var state=stream._readableState;debug("emitReadable_",state.destroyed,state.length,state.ended);if(!state.destroyed&&(state.length||state.ended)){stream.emit("readable");state.emittedReadable=false}state.needReadable=!state.flowing&&!state.ended&&state.length<=state.highWaterMark;flow(stream)}function maybeReadMore(stream,state){if(!state.readingMore){state.readingMore=true;process.nextTick(maybeReadMore_,stream,state)}}function maybeReadMore_(stream,state){while(!state.reading&&!state.ended&&(state.length1&&indexOf(state.pipes,dest)!==-1)&&!cleanedUp){debug("false write response, pause",state.awaitDrain);state.awaitDrain++}src.pause()}}function onerror(er){debug("onerror",er);unpipe();dest.removeListener("error",onerror);if(EElistenerCount(dest,"error")===0)errorOrDestroy(dest,er)}prependListener(dest,"error",onerror);function onclose(){dest.removeListener("finish",onfinish);unpipe()}dest.once("close",onclose);function onfinish(){debug("onfinish");dest.removeListener("close",onclose);unpipe()}dest.once("finish",onfinish);function unpipe(){debug("unpipe");src.unpipe(dest)}dest.emit("pipe",src);if(!state.flowing){debug("pipe resume");src.resume()}return dest};function pipeOnDrain(src){return function pipeOnDrainFunctionResult(){var state=src._readableState;debug("pipeOnDrain",state.awaitDrain);if(state.awaitDrain)state.awaitDrain--;if(state.awaitDrain===0&&EElistenerCount(src,"data")){state.flowing=true;flow(src)}}}Readable.prototype.unpipe=function(dest){var state=this._readableState;var unpipeInfo={hasUnpiped:false};if(state.pipesCount===0)return this;if(state.pipesCount===1){if(dest&&dest!==state.pipes)return this;if(!dest)dest=state.pipes;state.pipes=null;state.pipesCount=0;state.flowing=false;if(dest)dest.emit("unpipe",this,unpipeInfo);return this}if(!dest){var dests=state.pipes;var len=state.pipesCount;state.pipes=null;state.pipesCount=0;state.flowing=false;for(var i=0;i0;if(state.flowing!==false)this.resume()}else if(ev==="readable"){if(!state.endEmitted&&!state.readableListening){state.readableListening=state.needReadable=true;state.flowing=false;state.emittedReadable=false;debug("on readable",state.length,state.reading);if(state.length){emitReadable(this)}else if(!state.reading){process.nextTick(nReadingNextTick,this)}}}return res};Readable.prototype.addListener=Readable.prototype.on;Readable.prototype.removeListener=function(ev,fn){var res=Stream.prototype.removeListener.call(this,ev,fn);if(ev==="readable"){process.nextTick(updateReadableListening,this)}return res};Readable.prototype.removeAllListeners=function(ev){var res=Stream.prototype.removeAllListeners.apply(this,arguments);if(ev==="readable"||ev===undefined){process.nextTick(updateReadableListening,this)}return res};function updateReadableListening(self){var state=self._readableState;state.readableListening=self.listenerCount("readable")>0;if(state.resumeScheduled&&!state.paused){state.flowing=true}else if(self.listenerCount("data")>0){self.resume()}}function nReadingNextTick(self){debug("readable nexttick read 0");self.read(0)}Readable.prototype.resume=function(){var state=this._readableState;if(!state.flowing){debug("resume");state.flowing=!state.readableListening;resume(this,state)}state.paused=false;return this};function resume(stream,state){if(!state.resumeScheduled){state.resumeScheduled=true;process.nextTick(resume_,stream,state)}}function resume_(stream,state){debug("resume",state.reading);if(!state.reading){stream.read(0)}state.resumeScheduled=false;stream.emit("resume");flow(stream);if(state.flowing&&!state.reading)stream.read(0)}Readable.prototype.pause=function(){debug("call pause flowing=%j",this._readableState.flowing);if(this._readableState.flowing!==false){debug("pause");this._readableState.flowing=false;this.emit("pause")}this._readableState.paused=true;return this};function flow(stream){var state=stream._readableState;debug("flow",state.flowing);while(state.flowing&&stream.read()!==null){}}Readable.prototype.wrap=function(stream){var _this=this;var state=this._readableState;var paused=false;stream.on("end",function(){debug("wrapped end");if(state.decoder&&!state.ended){var chunk=state.decoder.end();if(chunk&&chunk.length)_this.push(chunk)}_this.push(null)});stream.on("data",function(chunk){debug("wrapped data");if(state.decoder)chunk=state.decoder.write(chunk);if(state.objectMode&&(chunk===null||chunk===undefined))return;else if(!state.objectMode&&(!chunk||!chunk.length))return;var ret=_this.push(chunk);if(!ret){paused=true;stream.pause()}});for(var i in stream){if(this[i]===undefined&&typeof stream[i]==="function"){this[i]=function methodWrap(method){return function methodWrapReturnFunction(){return stream[method].apply(stream,arguments)}}(i)}}for(var n=0;n=state.length){if(state.decoder)ret=state.buffer.join("");else if(state.buffer.length===1)ret=state.buffer.first();else ret=state.buffer.concat(state.length);state.buffer.clear()}else{ret=state.buffer.consume(n,state.decoder)}return ret}function endReadable(stream){var state=stream._readableState;debug("endReadable",state.endEmitted);if(!state.endEmitted){state.ended=true;process.nextTick(endReadableNT,state,stream)}}function endReadableNT(state,stream){debug("endReadableNT",state.endEmitted,state.length);if(!state.endEmitted&&state.length===0){state.endEmitted=true;stream.readable=false;stream.emit("end");if(state.autoDestroy){var wState=stream._writableState;if(!wState||wState.autoDestroy&&wState.finished){stream.destroy()}}}}if(typeof Symbol==="function"){Readable.from=function(iterable,opts){if(from===undefined){from=require("./internal/streams/from")}return from(Readable,iterable,opts)}}function indexOf(xs,x){for(var i=0,l=xs.length;i-1))throw new ERR_UNKNOWN_ENCODING(encoding);this._writableState.defaultEncoding=encoding;return this};Object.defineProperty(Writable.prototype,"writableBuffer",{enumerable:false,get:function get(){return this._writableState&&this._writableState.getBuffer()}});function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.decodeStrings!==false&&typeof chunk==="string"){chunk=Buffer.from(chunk,encoding)}return chunk}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function get(){return this._writableState.highWaterMark}});function writeOrBuffer(stream,state,isBuf,chunk,encoding,cb){if(!isBuf){var newChunk=decodeChunk(state,chunk,encoding);if(chunk!==newChunk){isBuf=true;encoding="buffer";chunk=newChunk}}var len=state.objectMode?1:chunk.length;state.length+=len;var ret=state.length0)this.tail.next=entry;else this.head=entry;this.tail=entry;++this.length}},{key:"unshift",value:function unshift(v){var entry={data:v,next:this.head};if(this.length===0)this.tail=entry;this.head=entry;++this.length}},{key:"shift",value:function shift(){if(this.length===0)return;var ret=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return ret}},{key:"clear",value:function clear(){this.head=this.tail=null;this.length=0}},{key:"join",value:function join(s){if(this.length===0)return"";var p=this.head;var ret=""+p.data;while(p=p.next){ret+=s+p.data}return ret}},{key:"concat",value:function concat(n){if(this.length===0)return Buffer.alloc(0);var ret=Buffer.allocUnsafe(n>>>0);var p=this.head;var i=0;while(p){copyBuffer(p.data,ret,i);i+=p.data.length;p=p.next}return ret}},{key:"consume",value:function consume(n,hasStrings){var ret;if(nstr.length?str.length:n;if(nb===str.length)ret+=str;else ret+=str.slice(0,n);n-=nb;if(n===0){if(nb===str.length){++c;if(p.next)this.head=p.next;else this.head=this.tail=null}else{this.head=p;p.data=str.slice(nb)}break}++c}this.length-=c;return ret}},{key:"_getBuffer",value:function _getBuffer(n){var ret=Buffer.allocUnsafe(n);var p=this.head;var c=1;p.data.copy(ret);n-=p.data.length;while(p=p.next){var buf=p.data;var nb=n>buf.length?buf.length:n;buf.copy(ret,ret.length-n,0,nb);n-=nb;if(n===0){if(nb===buf.length){++c;if(p.next)this.head=p.next;else this.head=this.tail=null}else{this.head=p;p.data=buf.slice(nb)}break}++c}this.length-=c;return ret}},{key:custom,value:function value(_,options){return inspect(this,_objectSpread({},options,{depth:0,customInspect:false}))}}]);return BufferList}()},{buffer:185,util:141}],178:[function(require,module,exports){(function(process){"use strict";function destroy(err,cb){var _this=this;var readableDestroyed=this._readableState&&this._readableState.destroyed;var writableDestroyed=this._writableState&&this._writableState.destroyed;if(readableDestroyed||writableDestroyed){if(cb){cb(err)}else if(err){if(!this._writableState){process.nextTick(emitErrorNT,this,err)}else if(!this._writableState.errorEmitted){this._writableState.errorEmitted=true;process.nextTick(emitErrorNT,this,err)}}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(err||null,function(err){if(!cb&&err){if(!_this._writableState){process.nextTick(emitErrorAndCloseNT,_this,err)}else if(!_this._writableState.errorEmitted){_this._writableState.errorEmitted=true;process.nextTick(emitErrorAndCloseNT,_this,err)}else{process.nextTick(emitCloseNT,_this)}}else if(cb){process.nextTick(emitCloseNT,_this);cb(err)}else{process.nextTick(emitCloseNT,_this)}});return this}function emitErrorAndCloseNT(self,err){emitErrorNT(self,err);emitCloseNT(self)}function emitCloseNT(self){if(self._writableState&&!self._writableState.emitClose)return;if(self._readableState&&!self._readableState.emitClose)return;self.emit("close")}function undestroy(){if(this._readableState){this._readableState.destroyed=false;this._readableState.reading=false;this._readableState.ended=false;this._readableState.endEmitted=false}if(this._writableState){this._writableState.destroyed=false;this._writableState.ended=false;this._writableState.ending=false;this._writableState.finalCalled=false;this._writableState.prefinished=false;this._writableState.finished=false;this._writableState.errorEmitted=false}}function emitErrorNT(self,err){self.emit("error",err)}function errorOrDestroy(stream,err){var rState=stream._readableState;var wState=stream._writableState;if(rState&&rState.autoDestroy||wState&&wState.autoDestroy)stream.destroy(err);else stream.emit("error",err)}module.exports={destroy:destroy,undestroy:undestroy,errorOrDestroy:errorOrDestroy}}).call(this,require("_process"))},{_process:267}],179:[function(require,module,exports){"use strict";var ERR_STREAM_PREMATURE_CLOSE=require("../../../errors").codes.ERR_STREAM_PREMATURE_CLOSE;function once(callback){var called=false;return function(){if(called)return;called=true;for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key]}callback.apply(this,args)}}function noop(){}function isRequest(stream){return stream.setHeader&&typeof stream.abort==="function"}function eos(stream,opts,callback){if(typeof opts==="function")return eos(stream,null,opts);if(!opts)opts={};callback=once(callback||noop);var readable=opts.readable||opts.readable!==false&&stream.readable;var writable=opts.writable||opts.writable!==false&&stream.writable;var onlegacyfinish=function onlegacyfinish(){if(!stream.writable)onfinish()};var writableEnded=stream._writableState&&stream._writableState.finished;var onfinish=function onfinish(){writable=false;writableEnded=true;if(!readable)callback.call(stream)};var readableEnded=stream._readableState&&stream._readableState.endEmitted;var onend=function onend(){readable=false;readableEnded=true;if(!writable)callback.call(stream)};var onerror=function onerror(err){callback.call(stream,err)};var onclose=function onclose(){var err;if(readable&&!readableEnded){if(!stream._readableState||!stream._readableState.ended)err=new ERR_STREAM_PREMATURE_CLOSE;return callback.call(stream,err)}if(writable&&!writableEnded){if(!stream._writableState||!stream._writableState.ended)err=new ERR_STREAM_PREMATURE_CLOSE;return callback.call(stream,err)}};var onrequest=function onrequest(){stream.req.on("finish",onfinish)};if(isRequest(stream)){stream.on("complete",onfinish);stream.on("abort",onclose);if(stream.req)onrequest();else stream.on("request",onrequest)}else if(writable&&!stream._writableState){stream.on("end",onlegacyfinish);stream.on("close",onlegacyfinish)}stream.on("end",onend);stream.on("finish",onfinish);if(opts.error!==false)stream.on("error",onerror);stream.on("close",onclose);return function(){stream.removeListener("complete",onfinish);stream.removeListener("abort",onclose);stream.removeListener("request",onrequest);if(stream.req)stream.req.removeListener("finish",onfinish);stream.removeListener("end",onlegacyfinish);stream.removeListener("close",onlegacyfinish);stream.removeListener("finish",onfinish);stream.removeListener("end",onend);stream.removeListener("error",onerror);stream.removeListener("close",onclose)}}module.exports=eos},{"../../../errors":170}],180:[function(require,module,exports){module.exports=function(){throw new Error("Readable.from is not available in the browser")}},{}],181:[function(require,module,exports){"use strict";var eos;function once(callback){var called=false;return function(){if(called)return;called=true;callback.apply(void 0,arguments)}}var _require$codes=require("../../../errors").codes,ERR_MISSING_ARGS=_require$codes.ERR_MISSING_ARGS,ERR_STREAM_DESTROYED=_require$codes.ERR_STREAM_DESTROYED;function noop(err){if(err)throw err}function isRequest(stream){return stream.setHeader&&typeof stream.abort==="function"}function destroyer(stream,reading,writing,callback){callback=once(callback);var closed=false;stream.on("close",function(){closed=true});if(eos===undefined)eos=require("./end-of-stream");eos(stream,{readable:reading,writable:writing},function(err){if(err)return callback(err);closed=true;callback()});var destroyed=false;return function(err){if(closed)return;if(destroyed)return;destroyed=true;if(isRequest(stream))return stream.abort();if(typeof stream.destroy==="function")return stream.destroy();callback(err||new ERR_STREAM_DESTROYED("pipe"))}}function call(fn){fn()}function pipe(from,to){return from.pipe(to)}function popCallback(streams){if(!streams.length)return noop;if(typeof streams[streams.length-1]!=="function")return noop;return streams.pop()}function pipeline(){for(var _len=arguments.length,streams=new Array(_len),_key=0;_key<_len;_key++){streams[_key]=arguments[_key]}var callback=popCallback(streams);if(Array.isArray(streams[0]))streams=streams[0];if(streams.length<2){throw new ERR_MISSING_ARGS("streams")}var error;var destroys=streams.map(function(stream,i){var reading=i0;return destroyer(stream,reading,writing,function(err){if(!error)error=err;if(err)destroys.forEach(call);if(reading)return;destroys.forEach(call);callback(error)})});return streams.reduce(pipe)}module.exports=pipeline},{"../../../errors":170,"./end-of-stream":179}],182:[function(require,module,exports){"use strict";var ERR_INVALID_OPT_VALUE=require("../../../errors").codes.ERR_INVALID_OPT_VALUE;function highWaterMarkFrom(options,isDuplex,duplexKey){return options.highWaterMark!=null?options.highWaterMark:isDuplex?options[duplexKey]:null}function getHighWaterMark(state,options,duplexKey,isDuplex){var hwm=highWaterMarkFrom(options,isDuplex,duplexKey);if(hwm!=null){if(!(isFinite(hwm)&&Math.floor(hwm)===hwm)||hwm<0){var name=isDuplex?duplexKey:"highWaterMark";throw new ERR_INVALID_OPT_VALUE(name,hwm)}return Math.floor(hwm)}return state.objectMode?16:16*1024}module.exports={getHighWaterMark:getHighWaterMark}},{"../../../errors":170}],183:[function(require,module,exports){module.exports=require("events").EventEmitter},{events:186}],184:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js");exports.Stream=exports;exports.Readable=exports;exports.Writable=require("./lib/_stream_writable.js");exports.Duplex=require("./lib/_stream_duplex.js");exports.Transform=require("./lib/_stream_transform.js");exports.PassThrough=require("./lib/_stream_passthrough.js");exports.finished=require("./lib/internal/streams/end-of-stream.js");exports.pipeline=require("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":171,"./lib/_stream_passthrough.js":172,"./lib/_stream_readable.js":173,"./lib/_stream_transform.js":174,"./lib/_stream_writable.js":175,"./lib/internal/streams/end-of-stream.js":179,"./lib/internal/streams/pipeline.js":181}],185:[function(require,module,exports){(function(Buffer){"use strict";var base64=require("base64-js");var ieee754=require("ieee754");exports.Buffer=Buffer;exports.SlowBuffer=SlowBuffer;exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;exports.kMaxLength=K_MAX_LENGTH;Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport();if(!Buffer.TYPED_ARRAY_SUPPORT&&typeof console!=="undefined"&&typeof console.error==="function"){console.error("This browser lacks typed array (Uint8Array) support which is required by "+"`buffer` v5.x. Use `buffer` v4.x if you require old browser support.")}function typedArraySupport(){try{var arr=new Uint8Array(1);arr.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}};return arr.foo()===42}catch(e){return false}}Object.defineProperty(Buffer.prototype,"parent",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.buffer}});Object.defineProperty(Buffer.prototype,"offset",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.byteOffset}});function createBuffer(length){if(length>K_MAX_LENGTH){throw new RangeError('The value "'+length+'" is invalid for option "size"')}var buf=new Uint8Array(length);buf.__proto__=Buffer.prototype;return buf}function Buffer(arg,encodingOrOffset,length){if(typeof arg==="number"){if(typeof encodingOrOffset==="string"){throw new TypeError('The "string" argument must be of type string. Received type number')}return allocUnsafe(arg)}return from(arg,encodingOrOffset,length)}if(typeof Symbol!=="undefined"&&Symbol.species!=null&&Buffer[Symbol.species]===Buffer){Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:true,enumerable:false,writable:false})}Buffer.poolSize=8192;function from(value,encodingOrOffset,length){if(typeof value==="string"){return fromString(value,encodingOrOffset)}if(ArrayBuffer.isView(value)){return fromArrayLike(value)}if(value==null){throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}if(isInstance(value,ArrayBuffer)||value&&isInstance(value.buffer,ArrayBuffer)){return fromArrayBuffer(value,encodingOrOffset,length)}if(typeof value==="number"){throw new TypeError('The "value" argument must not be of type number. Received type number')}var valueOf=value.valueOf&&value.valueOf();if(valueOf!=null&&valueOf!==value){return Buffer.from(valueOf,encodingOrOffset,length)}var b=fromObject(value);if(b)return b;if(typeof Symbol!=="undefined"&&Symbol.toPrimitive!=null&&typeof value[Symbol.toPrimitive]==="function"){return Buffer.from(value[Symbol.toPrimitive]("string"),encodingOrOffset,length)}throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}Buffer.from=function(value,encodingOrOffset,length){return from(value,encodingOrOffset,length)};Buffer.prototype.__proto__=Uint8Array.prototype;Buffer.__proto__=Uint8Array;function assertSize(size){if(typeof size!=="number"){throw new TypeError('"size" argument must be of type number')}else if(size<0){throw new RangeError('The value "'+size+'" is invalid for option "size"')}}function alloc(size,fill,encoding){assertSize(size);if(size<=0){return createBuffer(size)}if(fill!==undefined){return typeof encoding==="string"?createBuffer(size).fill(fill,encoding):createBuffer(size).fill(fill)}return createBuffer(size)}Buffer.alloc=function(size,fill,encoding){return alloc(size,fill,encoding)};function allocUnsafe(size){assertSize(size);return createBuffer(size<0?0:checked(size)|0)}Buffer.allocUnsafe=function(size){return allocUnsafe(size)};Buffer.allocUnsafeSlow=function(size){return allocUnsafe(size)};function fromString(string,encoding){if(typeof encoding!=="string"||encoding===""){encoding="utf8"}if(!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}var length=byteLength(string,encoding)|0;var buf=createBuffer(length);var actual=buf.write(string,encoding);if(actual!==length){buf=buf.slice(0,actual)}return buf}function fromArrayLike(array){var length=array.length<0?0:checked(array.length)|0;var buf=createBuffer(length);for(var i=0;i=K_MAX_LENGTH){throw new RangeError("Attempt to allocate Buffer larger than maximum "+"size: 0x"+K_MAX_LENGTH.toString(16)+" bytes")}return length|0}function SlowBuffer(length){if(+length!=length){length=0}return Buffer.alloc(+length)}Buffer.isBuffer=function isBuffer(b){return b!=null&&b._isBuffer===true&&b!==Buffer.prototype};Buffer.compare=function compare(a,b){if(isInstance(a,Uint8Array))a=Buffer.from(a,a.offset,a.byteLength);if(isInstance(b,Uint8Array))b=Buffer.from(b,b.offset,b.byteLength);if(!Buffer.isBuffer(a)||!Buffer.isBuffer(b)){throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array')}if(a===b)return 0;var x=a.length;var y=b.length;for(var i=0,len=Math.min(x,y);i2&&arguments[2]===true;if(!mustMatch&&len===0)return 0;var loweredCase=false;for(;;){switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return len*2;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase){return mustMatch?-1:utf8ToBytes(string).length}encoding=(""+encoding).toLowerCase();loweredCase=true}}}Buffer.byteLength=byteLength;function slowToString(encoding,start,end){var loweredCase=false;if(start===undefined||start<0){start=0}if(start>this.length){return""}if(end===undefined||end>this.length){end=this.length}if(end<=0){return""}end>>>=0;start>>>=0;if(end<=start){return""}if(!encoding)encoding="utf8";while(true){switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase();loweredCase=true}}}Buffer.prototype._isBuffer=true;function swap(b,n,m){var i=b[n];b[n]=b[m];b[m]=i}Buffer.prototype.swap16=function swap16(){var len=this.length;if(len%2!==0){throw new RangeError("Buffer size must be a multiple of 16-bits")}for(var i=0;imax)str+=" ... ";return""};Buffer.prototype.compare=function compare(target,start,end,thisStart,thisEnd){if(isInstance(target,Uint8Array)){target=Buffer.from(target,target.offset,target.byteLength)}if(!Buffer.isBuffer(target)){throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. '+"Received type "+typeof target)}if(start===undefined){start=0}if(end===undefined){end=target?target.length:0}if(thisStart===undefined){thisStart=0}if(thisEnd===undefined){thisEnd=this.length}if(start<0||end>target.length||thisStart<0||thisEnd>this.length){throw new RangeError("out of range index")}if(thisStart>=thisEnd&&start>=end){return 0}if(thisStart>=thisEnd){return-1}if(start>=end){return 1}start>>>=0;end>>>=0;thisStart>>>=0;thisEnd>>>=0;if(this===target)return 0;var x=thisEnd-thisStart;var y=end-start;var len=Math.min(x,y);var thisCopy=this.slice(thisStart,thisEnd);var targetCopy=target.slice(start,end);for(var i=0;i2147483647){byteOffset=2147483647}else if(byteOffset<-2147483648){byteOffset=-2147483648}byteOffset=+byteOffset;if(numberIsNaN(byteOffset)){byteOffset=dir?0:buffer.length-1}if(byteOffset<0)byteOffset=buffer.length+byteOffset;if(byteOffset>=buffer.length){if(dir)return-1;else byteOffset=buffer.length-1}else if(byteOffset<0){if(dir)byteOffset=0;else return-1}if(typeof val==="string"){val=Buffer.from(val,encoding)}if(Buffer.isBuffer(val)){if(val.length===0){return-1}return arrayIndexOf(buffer,val,byteOffset,encoding,dir)}else if(typeof val==="number"){val=val&255;if(typeof Uint8Array.prototype.indexOf==="function"){if(dir){return Uint8Array.prototype.indexOf.call(buffer,val,byteOffset)}else{return Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset)}}return arrayIndexOf(buffer,[val],byteOffset,encoding,dir)}throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var indexSize=1;var arrLength=arr.length;var valLength=val.length;if(encoding!==undefined){encoding=String(encoding).toLowerCase();if(encoding==="ucs2"||encoding==="ucs-2"||encoding==="utf16le"||encoding==="utf-16le"){if(arr.length<2||val.length<2){return-1}indexSize=2;arrLength/=2;valLength/=2;byteOffset/=2}}function read(buf,i){if(indexSize===1){return buf[i]}else{return buf.readUInt16BE(i*indexSize)}}var i;if(dir){var foundIndex=-1;for(i=byteOffset;iarrLength)byteOffset=arrLength-valLength;for(i=byteOffset;i>=0;i--){var found=true;for(var j=0;jremaining){length=remaining}}var strLen=string.length;if(length>strLen/2){length=strLen/2}for(var i=0;i>>0;if(isFinite(length)){length=length>>>0;if(encoding===undefined)encoding="utf8"}else{encoding=length;length=undefined}}else{throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported")}var remaining=this.length-offset;if(length===undefined||length>remaining)length=remaining;if(string.length>0&&(length<0||offset<0)||offset>this.length){throw new RangeError("Attempt to write outside buffer bounds")}if(!encoding)encoding="utf8";var loweredCase=false;for(;;){switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase();loweredCase=true}}};Buffer.prototype.toJSON=function toJSON(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(buf,start,end){if(start===0&&end===buf.length){return base64.fromByteArray(buf)}else{return base64.fromByteArray(buf.slice(start,end))}}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);var res=[];var i=start;while(i239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end){var secondByte,thirdByte,fourthByte,tempCodePoint;switch(bytesPerSequence){case 1:if(firstByte<128){codePoint=firstByte}break;case 2:secondByte=buf[i+1];if((secondByte&192)===128){tempCodePoint=(firstByte&31)<<6|secondByte&63;if(tempCodePoint>127){codePoint=tempCodePoint}}break;case 3:secondByte=buf[i+1];thirdByte=buf[i+2];if((secondByte&192)===128&&(thirdByte&192)===128){tempCodePoint=(firstByte&15)<<12|(secondByte&63)<<6|thirdByte&63;if(tempCodePoint>2047&&(tempCodePoint<55296||tempCodePoint>57343)){codePoint=tempCodePoint}}break;case 4:secondByte=buf[i+1];thirdByte=buf[i+2];fourthByte=buf[i+3];if((secondByte&192)===128&&(thirdByte&192)===128&&(fourthByte&192)===128){tempCodePoint=(firstByte&15)<<18|(secondByte&63)<<12|(thirdByte&63)<<6|fourthByte&63;if(tempCodePoint>65535&&tempCodePoint<1114112){codePoint=tempCodePoint}}}}if(codePoint===null){codePoint=65533;bytesPerSequence=1}else if(codePoint>65535){codePoint-=65536;res.push(codePoint>>>10&1023|55296);codePoint=56320|codePoint&1023}res.push(codePoint);i+=bytesPerSequence}return decodeCodePointsArray(res)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH){return String.fromCharCode.apply(String,codePoints)}var res="";var i=0;while(ilen)end=len;var out="";for(var i=start;ilen){start=len}if(end<0){end+=len;if(end<0)end=0}else if(end>len){end=len}if(endlength)throw new RangeError("Trying to access beyond buffer length")}Buffer.prototype.readUIntLE=function readUIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i>>0;byteLength=byteLength>>>0;if(!noAssert){checkOffset(offset,byteLength,this.length)}var val=this[offset+--byteLength];var mul=1;while(byteLength>0&&(mul*=256)){val+=this[offset+--byteLength]*mul}return val};Buffer.prototype.readUInt8=function readUInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);return this[offset]};Buffer.prototype.readUInt16LE=function readUInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]|this[offset+1]<<8};Buffer.prototype.readUInt16BE=function readUInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]<<8|this[offset+1]};Buffer.prototype.readUInt32LE=function readUInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+this[offset+3]*16777216};Buffer.prototype.readUInt32BE=function readUInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]*16777216+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])};Buffer.prototype.readIntLE=function readIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readIntBE=function readIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var i=byteLength;var mul=1;var val=this[offset+--i];while(i>0&&(mul*=256)){val+=this[offset+--i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readInt8=function readInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);if(!(this[offset]&128))return this[offset];return(255-this[offset]+1)*-1};Buffer.prototype.readInt16LE=function readInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt16BE=function readInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt32LE=function readInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24};Buffer.prototype.readInt32BE=function readInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]};Buffer.prototype.readFloatLE=function readFloatLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,true,23,4)};Buffer.prototype.readFloatBE=function readFloatBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,false,23,4)};Buffer.prototype.readDoubleLE=function readDoubleLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,true,52,8)};Buffer.prototype.readDoubleBE=function readDoubleBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,false,52,8)};function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||valuebuf.length)throw new RangeError("Index out of range")}Buffer.prototype.writeUIntLE=function writeUIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var mul=1;var i=0;this[offset]=value&255;while(++i>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var i=byteLength-1;var mul=1;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUInt8=function writeUInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,255,0);this[offset]=value&255;return offset+1};Buffer.prototype.writeUInt16LE=function writeUInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeUInt16BE=function writeUInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeUInt32LE=function writeUInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset+3]=value>>>24;this[offset+2]=value>>>16;this[offset+1]=value>>>8;this[offset]=value&255;return offset+4};Buffer.prototype.writeUInt32BE=function writeUInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};Buffer.prototype.writeIntLE=function writeIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0;var mul=1;var sub=0;this[offset]=value&255;while(++i>0)-sub&255}return offset+byteLength};Buffer.prototype.writeIntBE=function writeIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1;var mul=1;var sub=0;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){if(value<0&&sub===0&&this[offset+i+1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeInt8=function writeInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,127,-128);if(value<0)value=255+value+1;this[offset]=value&255;return offset+1};Buffer.prototype.writeInt16LE=function writeInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeInt16BE=function writeInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeInt32LE=function writeInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);this[offset]=value&255;this[offset+1]=value>>>8;this[offset+2]=value>>>16;this[offset+3]=value>>>24;return offset+4};Buffer.prototype.writeInt32BE=function writeInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);if(value<0)value=4294967295+value+1;this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,4,34028234663852886e22,-34028234663852886e22)}ieee754.write(buf,value,offset,littleEndian,23,4);return offset+4}Buffer.prototype.writeFloatLE=function writeFloatLE(value,offset,noAssert){return writeFloat(this,value,offset,true,noAssert)};Buffer.prototype.writeFloatBE=function writeFloatBE(value,offset,noAssert){return writeFloat(this,value,offset,false,noAssert)};function writeDouble(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,8,17976931348623157e292,-17976931348623157e292)}ieee754.write(buf,value,offset,littleEndian,52,8);return offset+8}Buffer.prototype.writeDoubleLE=function writeDoubleLE(value,offset,noAssert){return writeDouble(this,value,offset,true,noAssert)};Buffer.prototype.writeDoubleBE=function writeDoubleBE(value,offset,noAssert){return writeDouble(this,value,offset,false,noAssert)};Buffer.prototype.copy=function copy(target,targetStart,start,end){if(!Buffer.isBuffer(target))throw new TypeError("argument should be a Buffer");if(!start)start=0;if(!end&&end!==0)end=this.length;if(targetStart>=target.length)targetStart=target.length;if(!targetStart)targetStart=0;if(end>0&&end=this.length)throw new RangeError("Index out of range");if(end<0)throw new RangeError("sourceEnd out of bounds");if(end>this.length)end=this.length;if(target.length-targetStart=0;--i){target[i+targetStart]=this[i+start]}}else{Uint8Array.prototype.set.call(target,this.subarray(start,end),targetStart)}return len};Buffer.prototype.fill=function fill(val,start,end,encoding){if(typeof val==="string"){if(typeof start==="string"){encoding=start;start=0;end=this.length}else if(typeof end==="string"){encoding=end;end=this.length}if(encoding!==undefined&&typeof encoding!=="string"){throw new TypeError("encoding must be a string")}if(typeof encoding==="string"&&!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}if(val.length===1){var code=val.charCodeAt(0);if(encoding==="utf8"&&code<128||encoding==="latin1"){val=code}}}else if(typeof val==="number"){val=val&255}if(start<0||this.length>>0;end=end===undefined?this.length:end>>>0;if(!val)val=0;var i;if(typeof val==="number"){for(i=start;i55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){if((units-=3)>-1)bytes.push(239,191,189);continue}else if(i+1===length){if((units-=3)>-1)bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){if((units-=3)>-1)bytes.push(239,191,189);leadSurrogate=codePoint;continue}codePoint=(leadSurrogate-55296<<10|codePoint-56320)+65536}else if(leadSurrogate){if((units-=3)>-1)bytes.push(239,191,189)}leadSurrogate=null;if(codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,codePoint&63|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,codePoint&63|128)}else if(codePoint<1114112){if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,codePoint&63|128)}else{throw new Error("Invalid code point")}}return bytes}function asciiToBytes(str){var byteArray=[];for(var i=0;i>8;lo=c%256;byteArray.push(lo);byteArray.push(hi)}return byteArray}function base64ToBytes(str){return base64.toByteArray(base64clean(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i=dst.length||i>=src.length)break;dst[i+offset]=src[i]}return i}function isInstance(obj,type){return obj instanceof type||obj!=null&&obj.constructor!=null&&obj.constructor.name!=null&&obj.constructor.name===type.name}function numberIsNaN(obj){return obj!==obj}}).call(this,require("buffer").Buffer)},{"base64-js":138,buffer:185,ieee754:244}],186:[function(require,module,exports){var objectCreate=Object.create||objectCreatePolyfill;var objectKeys=Object.keys||objectKeysPolyfill;var bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){if(!this._events||!Object.prototype.hasOwnProperty.call(this,"_events")){this._events=objectCreate(null);this._eventsCount=0}this._maxListeners=this._maxListeners||undefined}module.exports=EventEmitter;EventEmitter.EventEmitter=EventEmitter;EventEmitter.prototype._events=undefined;EventEmitter.prototype._maxListeners=undefined;var defaultMaxListeners=10;var hasDefineProperty;try{var o={};if(Object.defineProperty)Object.defineProperty(o,"x",{value:0});hasDefineProperty=o.x===0}catch(err){hasDefineProperty=false}if(hasDefineProperty){Object.defineProperty(EventEmitter,"defaultMaxListeners",{enumerable:true,get:function(){return defaultMaxListeners},set:function(arg){if(typeof arg!=="number"||arg<0||arg!==arg)throw new TypeError('"defaultMaxListeners" must be a positive number');defaultMaxListeners=arg}})}else{EventEmitter.defaultMaxListeners=defaultMaxListeners}EventEmitter.prototype.setMaxListeners=function setMaxListeners(n){if(typeof n!=="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');this._maxListeners=n;return this};function $getMaxListeners(that){if(that._maxListeners===undefined)return EventEmitter.defaultMaxListeners;return that._maxListeners}EventEmitter.prototype.getMaxListeners=function getMaxListeners(){return $getMaxListeners(this)};function emitNone(handler,isFn,self){if(isFn)handler.call(self);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i1)er=arguments[1];if(er instanceof Error){throw er}else{var err=new Error('Unhandled "error" event. ('+er+")");err.context=er;throw err}return false}handler=events[type];if(!handler)return false;var isFn=typeof handler==="function";len=arguments.length;switch(len){case 1:emitNone(handler,isFn,this);break;case 2:emitOne(handler,isFn,this,arguments[1]);break;case 3:emitTwo(handler,isFn,this,arguments[1],arguments[2]);break;case 4:emitThree(handler,isFn,this,arguments[1],arguments[2],arguments[3]);break;default:args=new Array(len-1);for(i=1;i0&&existing.length>m){existing.warned=true;var w=new Error("Possible EventEmitter memory leak detected. "+existing.length+' "'+String(type)+'" listeners '+"added. Use emitter.setMaxListeners() to "+"increase limit.");w.name="MaxListenersExceededWarning";w.emitter=target;w.type=type;w.count=existing.length;if(typeof console==="object"&&console.warn){console.warn("%s: %s",w.name,w.message)}}}}return target}EventEmitter.prototype.addListener=function addListener(type,listener){return _addListener(this,type,listener,false)};EventEmitter.prototype.on=EventEmitter.prototype.addListener;EventEmitter.prototype.prependListener=function prependListener(type,listener){return _addListener(this,type,listener,true)};function onceWrapper(){if(!this.fired){this.target.removeListener(this.type,this.wrapFn);this.fired=true;switch(arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:var args=new Array(arguments.length);for(var i=0;i=0;i--){if(list[i]===listener||list[i].listener===listener){originalListener=list[i].listener;position=i;break}}if(position<0)return this;if(position===0)list.shift();else spliceOne(list,position);if(list.length===1)events[type]=list[0];if(events.removeListener)this.emit("removeListener",type,originalListener||listener)}return this};EventEmitter.prototype.removeAllListeners=function removeAllListeners(type){var listeners,events,i;events=this._events;if(!events)return this;if(!events.removeListener){if(arguments.length===0){this._events=objectCreate(null);this._eventsCount=0}else if(events[type]){if(--this._eventsCount===0)this._events=objectCreate(null);else delete events[type]}return this}if(arguments.length===0){var keys=objectKeys(events);var key;for(i=0;i=0;i--){this.removeListener(type,listeners[i])}}return this};function _listeners(target,type,unwrap){var events=target._events;if(!events)return[];var evlistener=events[type];if(!evlistener)return[];if(typeof evlistener==="function")return unwrap?[evlistener.listener||evlistener]:[evlistener];return unwrap?unwrapListeners(evlistener):arrayClone(evlistener,evlistener.length)}EventEmitter.prototype.listeners=function listeners(type){return _listeners(this,type,true)};EventEmitter.prototype.rawListeners=function rawListeners(type){return _listeners(this,type,false)};EventEmitter.listenerCount=function(emitter,type){if(typeof emitter.listenerCount==="function"){return emitter.listenerCount(type)}else{return listenerCount.call(emitter,type)}};EventEmitter.prototype.listenerCount=listenerCount;function listenerCount(type){var events=this._events;if(events){var evlistener=events[type];if(typeof evlistener==="function"){return 1}else if(evlistener){return evlistener.length}}return 0}EventEmitter.prototype.eventNames=function eventNames(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(list,index){for(var i=index,k=i+1,n=list.length;k=0){item._idleTimeoutId=setTimeout(function onTimeout(){if(item._onTimeout)item._onTimeout()},msecs)}};exports.setImmediate=typeof setImmediate==="function"?setImmediate:function(fn){var id=nextImmediateId++;var args=arguments.length<2?false:slice.call(arguments,1);immediateIds[id]=true;nextTick(function onNextTick(){if(immediateIds[id]){if(args){fn.apply(null,args)}else{fn.call(null)}exports.clearImmediate(id)}});return id};exports.clearImmediate=typeof clearImmediate==="function"?clearImmediate:function(id){delete immediateIds[id]}}).call(this,require("timers").setImmediate,require("timers").clearImmediate)},{"process/browser.js":267,timers:187}],188:[function(require,module,exports){var basex=require("base-x");var ALPHABET="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";module.exports=basex(ALPHABET)},{"base-x":137}],189:[function(require,module,exports){"use strict";var base58=require("bs58");var Buffer=require("safe-buffer").Buffer;module.exports=function(checksumFn){function encode(payload){var checksum=checksumFn(payload);return base58.encode(Buffer.concat([payload,checksum],payload.length+4))}function decodeRaw(buffer){var payload=buffer.slice(0,-4);var checksum=buffer.slice(-4);var newChecksum=checksumFn(payload);if(checksum[0]^newChecksum[0]|checksum[1]^newChecksum[1]|checksum[2]^newChecksum[2]|checksum[3]^newChecksum[3])return;return payload}function decodeUnsafe(string){var buffer=base58.decodeUnsafe(string);if(!buffer)return;return decodeRaw(buffer)}function decode(string){var buffer=base58.decode(string);var payload=decodeRaw(buffer,checksumFn);if(!payload)throw new Error("Invalid checksum");return payload}return{encode:encode,decode:decode,decodeUnsafe:decodeUnsafe}}},{bs58:188,"safe-buffer":293}],190:[function(require,module,exports){"use strict";var createHash=require("create-hash");var bs58checkBase=require("./base");function sha256x2(buffer){var tmp=createHash("sha256").update(buffer).digest();return createHash("sha256").update(tmp).digest()}module.exports=bs58checkBase(sha256x2)},{"./base":189,"create-hash":196}],191:[function(require,module,exports){(function(Buffer){module.exports=function xor(a,b){var length=Math.min(a.length,b.length);var buffer=new Buffer(length);for(var i=0;iblocksize){var hash=alg==="rmd160"?new RIPEMD160:sha(alg);key=hash.update(key).digest()}else if(key.lengthblocksize){key=alg(key)}else if(key.length0;count--){inputOff+=this._buffer(data,inputOff);outputOff+=this._flushBuffer(out,outputOff)}inputOff+=this._buffer(data,inputOff);return out};Cipher.prototype.final=function final(buffer){var first;if(buffer)first=this.update(buffer);var last;if(this.type==="encrypt")last=this._finalEncrypt();else last=this._finalDecrypt();if(first)return first.concat(last);else return last};Cipher.prototype._pad=function _pad(buffer,off){if(off===0)return false;while(off>>1];kL=utils.r28shl(kL,shift);kR=utils.r28shl(kR,shift);utils.pc2(kL,kR,state.keys,i)}};DES.prototype._update=function _update(inp,inOff,out,outOff){var state=this._desState;var l=utils.readUInt32BE(inp,inOff);var r=utils.readUInt32BE(inp,inOff+4);utils.ip(l,r,state.tmp,0);l=state.tmp[0];r=state.tmp[1];if(this.type==="encrypt")this._encrypt(state,l,r,state.tmp,0);else this._decrypt(state,l,r,state.tmp,0);l=state.tmp[0];r=state.tmp[1];utils.writeUInt32BE(out,l,outOff);utils.writeUInt32BE(out,r,outOff+4)};DES.prototype._pad=function _pad(buffer,off){var value=buffer.length-off;for(var i=off;i>>0;l=t}utils.rip(r,l,out,off)};DES.prototype._decrypt=function _decrypt(state,lStart,rStart,out,off){var l=rStart;var r=lStart;for(var i=state.keys.length-2;i>=0;i-=2){var keyL=state.keys[i];var keyR=state.keys[i+1];utils.expand(l,state.tmp,0);keyL^=state.tmp[0];keyR^=state.tmp[1];var s=utils.substitute(keyL,keyR);var f=utils.permute(s);var t=l;l=(r^f)>>>0;r=t}utils.rip(l,r,out,off)}},{"./cipher":203,"./utils":206,inherits:245,"minimalistic-assert":253}],205:[function(require,module,exports){"use strict";var assert=require("minimalistic-assert");var inherits=require("inherits");var Cipher=require("./cipher");var DES=require("./des");function EDEState(type,key){assert.equal(key.length,24,"Invalid key length");var k1=key.slice(0,8);var k2=key.slice(8,16);var k3=key.slice(16,24);if(type==="encrypt"){this.ciphers=[DES.create({type:"encrypt",key:k1}),DES.create({type:"decrypt",key:k2}),DES.create({type:"encrypt",key:k3})]}else{this.ciphers=[DES.create({type:"decrypt",key:k3}),DES.create({type:"encrypt",key:k2}),DES.create({type:"decrypt",key:k1})]}}function EDE(options){Cipher.call(this,options);var state=new EDEState(this.type,this.options.key);this._edeState=state}inherits(EDE,Cipher);module.exports=EDE;EDE.create=function create(options){return new EDE(options)};EDE.prototype._update=function _update(inp,inOff,out,outOff){var state=this._edeState;state.ciphers[0]._update(inp,inOff,out,outOff);state.ciphers[1]._update(out,outOff,out,outOff);state.ciphers[2]._update(out,outOff,out,outOff)};EDE.prototype._pad=DES.prototype._pad;EDE.prototype._unpad=DES.prototype._unpad},{"./cipher":203,"./des":204,inherits:245,"minimalistic-assert":253}],206:[function(require,module,exports){"use strict";exports.readUInt32BE=function readUInt32BE(bytes,off){var res=bytes[0+off]<<24|bytes[1+off]<<16|bytes[2+off]<<8|bytes[3+off];return res>>>0};exports.writeUInt32BE=function writeUInt32BE(bytes,value,off){bytes[0+off]=value>>>24;bytes[1+off]=value>>>16&255;bytes[2+off]=value>>>8&255;bytes[3+off]=value&255};exports.ip=function ip(inL,inR,out,off){var outL=0;var outR=0;for(var i=6;i>=0;i-=2){for(var j=0;j<=24;j+=8){outL<<=1;outL|=inR>>>j+i&1}for(var j=0;j<=24;j+=8){outL<<=1;outL|=inL>>>j+i&1}}for(var i=6;i>=0;i-=2){for(var j=1;j<=25;j+=8){outR<<=1;outR|=inR>>>j+i&1}for(var j=1;j<=25;j+=8){outR<<=1;outR|=inL>>>j+i&1}}out[off+0]=outL>>>0;out[off+1]=outR>>>0};exports.rip=function rip(inL,inR,out,off){var outL=0;var outR=0;for(var i=0;i<4;i++){for(var j=24;j>=0;j-=8){outL<<=1;outL|=inR>>>j+i&1;outL<<=1;outL|=inL>>>j+i&1}}for(var i=4;i<8;i++){for(var j=24;j>=0;j-=8){outR<<=1;outR|=inR>>>j+i&1;outR<<=1;outR|=inL>>>j+i&1}}out[off+0]=outL>>>0;out[off+1]=outR>>>0};exports.pc1=function pc1(inL,inR,out,off){var outL=0;var outR=0;for(var i=7;i>=5;i--){for(var j=0;j<=24;j+=8){outL<<=1;outL|=inR>>j+i&1}for(var j=0;j<=24;j+=8){outL<<=1;outL|=inL>>j+i&1}}for(var j=0;j<=24;j+=8){outL<<=1;outL|=inR>>j+i&1}for(var i=1;i<=3;i++){for(var j=0;j<=24;j+=8){outR<<=1;outR|=inR>>j+i&1}for(var j=0;j<=24;j+=8){outR<<=1;outR|=inL>>j+i&1}}for(var j=0;j<=24;j+=8){outR<<=1;outR|=inL>>j+i&1}out[off+0]=outL>>>0;out[off+1]=outR>>>0};exports.r28shl=function r28shl(num,shift){return num<>>28-shift};var pc2table=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];exports.pc2=function pc2(inL,inR,out,off){var outL=0;var outR=0;var len=pc2table.length>>>1;for(var i=0;i>>pc2table[i]&1}for(var i=len;i>>pc2table[i]&1}out[off+0]=outL>>>0;out[off+1]=outR>>>0};exports.expand=function expand(r,out,off){var outL=0;var outR=0;outL=(r&1)<<5|r>>>27;for(var i=23;i>=15;i-=4){outL<<=6;outL|=r>>>i&63}for(var i=11;i>=3;i-=4){outR|=r>>>i&63;outR<<=6}outR|=(r&31)<<1|r>>>31;out[off+0]=outL>>>0;out[off+1]=outR>>>0};var sTable=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];exports.substitute=function substitute(inL,inR){var out=0;for(var i=0;i<4;i++){var b=inL>>>18-i*6&63;var sb=sTable[i*64+b];out<<=4;out|=sb}for(var i=0;i<4;i++){var b=inR>>>18-i*6&63;var sb=sTable[4*64+i*64+b];out<<=4;out|=sb}return out>>>0};var permuteTable=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];exports.permute=function permute(num){var out=0;for(var i=0;i>>permuteTable[i]&1}return out>>>0};exports.padSplit=function padSplit(num,size,group){var str=num.toString(2);while(str.lengthbits){num.ishrn(1)}if(num.isEven()){num.iadd(ONE)}if(!num.testn(1)){num.iadd(TWO)}if(!gen.cmp(TWO)){while(num.mod(TWENTYFOUR).cmp(ELEVEN)){num.iadd(FOUR)}}else if(!gen.cmp(FIVE)){while(num.mod(TEN).cmp(THREE)){num.iadd(FOUR)}}n2=num.shrn(1);if(simpleSieve(n2)&&simpleSieve(num)&&fermatTest(n2)&&fermatTest(num)&&millerRabin.test(n2)&&millerRabin.test(num)){return num}}}},{"bn.js":211,"miller-rabin":251,randombytes:276}],210:[function(require,module,exports){module.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}},{}],211:[function(require,module,exports){arguments[4][109][0].apply(exports,arguments)},{buffer:141,dup:109}],212:[function(require,module,exports){"use strict";var elliptic=exports;elliptic.version=require("../package.json").version;elliptic.utils=require("./elliptic/utils");elliptic.rand=require("brorand");elliptic.curve=require("./elliptic/curve");elliptic.curves=require("./elliptic/curves");elliptic.ec=require("./elliptic/ec");elliptic.eddsa=require("./elliptic/eddsa")},{"../package.json":228,"./elliptic/curve":215,"./elliptic/curves":218,"./elliptic/ec":219,"./elliptic/eddsa":222,"./elliptic/utils":226,brorand:140}],213:[function(require,module,exports){"use strict";var BN=require("bn.js");var utils=require("../utils");var getNAF=utils.getNAF;var getJSF=utils.getJSF;var assert=utils.assert;function BaseCurve(type,conf){this.type=type;this.p=new BN(conf.p,16);this.red=conf.prime?BN.red(conf.prime):BN.mont(this.p);this.zero=new BN(0).toRed(this.red);this.one=new BN(1).toRed(this.red);this.two=new BN(2).toRed(this.red);this.n=conf.n&&new BN(conf.n,16);this.g=conf.g&&this.pointFromJSON(conf.g,conf.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 adjustCount=this.n&&this.p.div(this.n);if(!adjustCount||adjustCount.cmpn(100)>0){this.redN=null}else{this._maxwellTrick=true;this.redN=this.n.toRed(this.red)}}module.exports=BaseCurve;BaseCurve.prototype.point=function point(){throw new Error("Not implemented")};BaseCurve.prototype.validate=function validate(){throw new Error("Not implemented")};BaseCurve.prototype._fixedNafMul=function _fixedNafMul(p,k){assert(p.precomputed);var doubles=p._getDoubles();var naf=getNAF(k,1,this._bitLength);var I=(1<=j;k--)nafW=(nafW<<1)+naf[k];repr.push(nafW)}var a=this.jpoint(null,null,null);var b=this.jpoint(null,null,null);for(var i=I;i>0;i--){for(var j=0;j=0;i--){for(var k=0;i>=0&&naf[i]===0;i--)k++;if(i>=0)k++;acc=acc.dblp(k);if(i<0)break;var z=naf[i];assert(z!==0);if(p.type==="affine"){if(z>0)acc=acc.mixedAdd(wnd[z-1>>1]);else acc=acc.mixedAdd(wnd[-z-1>>1].neg())}else{if(z>0)acc=acc.add(wnd[z-1>>1]);else acc=acc.add(wnd[-z-1>>1].neg())}}return p.type==="affine"?acc.toP():acc};BaseCurve.prototype._wnafMulAdd=function _wnafMulAdd(defW,points,coeffs,len,jacobianResult){var wndWidth=this._wnafT1;var wnd=this._wnafT2;var naf=this._wnafT3;var max=0;for(var i=0;i=1;i-=2){var a=i-1;var b=i;if(wndWidth[a]!==1||wndWidth[b]!==1){naf[a]=getNAF(coeffs[a],wndWidth[a],this._bitLength);naf[b]=getNAF(coeffs[b],wndWidth[b],this._bitLength);max=Math.max(naf[a].length,max);max=Math.max(naf[b].length,max);continue}var comb=[points[a],null,null,points[b]];if(points[a].y.cmp(points[b].y)===0){comb[1]=points[a].add(points[b]);comb[2]=points[a].toJ().mixedAdd(points[b].neg())}else if(points[a].y.cmp(points[b].y.redNeg())===0){comb[1]=points[a].toJ().mixedAdd(points[b]);comb[2]=points[a].add(points[b].neg())}else{comb[1]=points[a].toJ().mixedAdd(points[b]);comb[2]=points[a].toJ().mixedAdd(points[b].neg())}var index=[-3,-1,-5,-7,0,7,5,1,3];var jsf=getJSF(coeffs[a],coeffs[b]);max=Math.max(jsf[0].length,max);naf[a]=new Array(max);naf[b]=new Array(max);for(var j=0;j=0;i--){var k=0;while(i>=0){var zero=true;for(var j=0;j=0)k++;acc=acc.dblp(k);if(i<0)break;for(var j=0;j0)p=wnd[j][z-1>>1];else if(z<0)p=wnd[j][-z-1>>1].neg();if(p.type==="affine")acc=acc.mixedAdd(p);else acc=acc.add(p)}}for(var i=0;i=Math.ceil((k.bitLength()+1)/doubles.step)};BasePoint.prototype._getDoubles=function _getDoubles(step,power){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;var doubles=[this];var acc=this;for(var i=0;i";return""};Point.prototype.isInfinity=function isInfinity(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)};Point.prototype._extDbl=function _extDbl(){var a=this.x.redSqr();var b=this.y.redSqr();var c=this.z.redSqr();c=c.redIAdd(c);var d=this.curve._mulA(a);var e=this.x.redAdd(this.y).redSqr().redISub(a).redISub(b);var g=d.redAdd(b);var f=g.redSub(c);var h=d.redSub(b);var nx=e.redMul(f);var ny=g.redMul(h);var nt=e.redMul(h);var nz=f.redMul(g);return this.curve.point(nx,ny,nz,nt)};Point.prototype._projDbl=function _projDbl(){var b=this.x.redAdd(this.y).redSqr();var c=this.x.redSqr();var d=this.y.redSqr();var nx;var ny;var nz;if(this.curve.twisted){var e=this.curve._mulA(c);var f=e.redAdd(d);if(this.zOne){nx=b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two));ny=f.redMul(e.redSub(d));nz=f.redSqr().redSub(f).redSub(f)}else{var h=this.z.redSqr();var j=f.redSub(h).redISub(h);nx=b.redSub(c).redISub(d).redMul(j);ny=f.redMul(e.redSub(d));nz=f.redMul(j)}}else{var e=c.redAdd(d);var h=this.curve._mulC(this.z).redSqr();var j=e.redSub(h).redSub(h);nx=this.curve._mulC(b.redISub(e)).redMul(j);ny=this.curve._mulC(e).redMul(c.redISub(d));nz=e.redMul(j)}return this.curve.point(nx,ny,nz)};Point.prototype.dbl=function dbl(){if(this.isInfinity())return this;if(this.curve.extended)return this._extDbl();else return this._projDbl()};Point.prototype._extAdd=function _extAdd(p){var a=this.y.redSub(this.x).redMul(p.y.redSub(p.x));var b=this.y.redAdd(this.x).redMul(p.y.redAdd(p.x));var c=this.t.redMul(this.curve.dd).redMul(p.t);var d=this.z.redMul(p.z.redAdd(p.z));var e=b.redSub(a);var f=d.redSub(c);var g=d.redAdd(c);var h=b.redAdd(a);var nx=e.redMul(f);var ny=g.redMul(h);var nt=e.redMul(h);var nz=f.redMul(g);return this.curve.point(nx,ny,nz,nt)};Point.prototype._projAdd=function _projAdd(p){var a=this.z.redMul(p.z);var b=a.redSqr();var c=this.x.redMul(p.x);var d=this.y.redMul(p.y);var e=this.curve.d.redMul(c).redMul(d);var f=b.redSub(e);var g=b.redAdd(e);var tmp=this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d);var nx=a.redMul(f).redMul(tmp);var ny;var nz;if(this.curve.twisted){ny=a.redMul(g).redMul(d.redSub(this.curve._mulA(c)));nz=f.redMul(g)}else{ny=a.redMul(g).redMul(d.redSub(c));nz=this.curve._mulC(f).redMul(g)}return this.curve.point(nx,ny,nz)};Point.prototype.add=function add(p){if(this.isInfinity())return p;if(p.isInfinity())return this;if(this.curve.extended)return this._extAdd(p);else return this._projAdd(p)};Point.prototype.mul=function mul(k){if(this._hasDoubles(k))return this.curve._fixedNafMul(this,k);else return this.curve._wnafMul(this,k)};Point.prototype.mulAdd=function mulAdd(k1,p,k2){return this.curve._wnafMulAdd(1,[this,p],[k1,k2],2,false)};Point.prototype.jmulAdd=function jmulAdd(k1,p,k2){return this.curve._wnafMulAdd(1,[this,p],[k1,k2],2,true)};Point.prototype.normalize=function normalize(){if(this.zOne)return this;var zi=this.z.redInvm();this.x=this.x.redMul(zi);this.y=this.y.redMul(zi);if(this.t)this.t=this.t.redMul(zi);this.z=this.curve.one;this.zOne=true;return this};Point.prototype.neg=function neg(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()};Point.prototype.getY=function getY(){this.normalize();return this.y.fromRed()};Point.prototype.eq=function eq(other){return this===other||this.getX().cmp(other.getX())===0&&this.getY().cmp(other.getY())===0};Point.prototype.eqXToP=function eqXToP(x){var rx=x.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(rx)===0)return true;var xc=x.clone();var t=this.curve.redN.redMul(this.z);for(;;){xc.iadd(this.curve.n);if(xc.cmp(this.curve.p)>=0)return false;rx.redIAdd(t);if(this.x.cmp(rx)===0)return true}};Point.prototype.toP=Point.prototype.normalize;Point.prototype.mixedAdd=Point.prototype.add},{"../utils":226,"./base":213,"bn.js":227,inherits:245}],215:[function(require,module,exports){"use strict";var curve=exports;curve.base=require("./base");curve.short=require("./short");curve.mont=require("./mont");curve.edwards=require("./edwards")},{"./base":213,"./edwards":214,"./mont":216,"./short":217}],216:[function(require,module,exports){"use strict";var BN=require("bn.js");var inherits=require("inherits");var Base=require("./base");var utils=require("../utils");function MontCurve(conf){Base.call(this,"mont",conf);this.a=new BN(conf.a,16).toRed(this.red);this.b=new BN(conf.b,16).toRed(this.red);this.i4=new BN(4).toRed(this.red).redInvm();this.two=new BN(2).toRed(this.red);this.a24=this.i4.redMul(this.a.redAdd(this.two))}inherits(MontCurve,Base);module.exports=MontCurve;MontCurve.prototype.validate=function validate(point){var x=point.normalize().x;var x2=x.redSqr();var rhs=x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x);var y=rhs.redSqrt();return y.redSqr().cmp(rhs)===0};function Point(curve,x,z){Base.BasePoint.call(this,curve,"projective");if(x===null&&z===null){this.x=this.curve.one;this.z=this.curve.zero}else{this.x=new BN(x,16);this.z=new BN(z,16);if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red)}}inherits(Point,Base.BasePoint);MontCurve.prototype.decodePoint=function decodePoint(bytes,enc){return this.point(utils.toArray(bytes,enc),1)};MontCurve.prototype.point=function point(x,z){return new Point(this,x,z)};MontCurve.prototype.pointFromJSON=function pointFromJSON(obj){return Point.fromJSON(this,obj)};Point.prototype.precompute=function precompute(){};Point.prototype._encode=function _encode(){return this.getX().toArray("be",this.curve.p.byteLength())};Point.fromJSON=function fromJSON(curve,obj){return new Point(curve,obj[0],obj[1]||curve.one)};Point.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};Point.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0};Point.prototype.dbl=function dbl(){var a=this.x.redAdd(this.z);var aa=a.redSqr();var b=this.x.redSub(this.z);var bb=b.redSqr();var c=aa.redSub(bb);var nx=aa.redMul(bb);var nz=c.redMul(bb.redAdd(this.curve.a24.redMul(c)));return this.curve.point(nx,nz)};Point.prototype.add=function add(){throw new Error("Not supported on Montgomery curve")};Point.prototype.diffAdd=function diffAdd(p,diff){var a=this.x.redAdd(this.z);var b=this.x.redSub(this.z);var c=p.x.redAdd(p.z);var d=p.x.redSub(p.z);var da=d.redMul(a);var cb=c.redMul(b);var nx=diff.z.redMul(da.redAdd(cb).redSqr());var nz=diff.x.redMul(da.redISub(cb).redSqr());return this.curve.point(nx,nz)};Point.prototype.mul=function mul(k){var t=k.clone();var a=this;var b=this.curve.point(null,null);var c=this;for(var bits=[];t.cmpn(0)!==0;t.iushrn(1))bits.push(t.andln(1));for(var i=bits.length-1;i>=0;i--){if(bits[i]===0){a=a.diffAdd(b,c);b=b.dbl()}else{b=a.diffAdd(b,c);a=a.dbl()}}return b};Point.prototype.mulAdd=function mulAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.jumlAdd=function jumlAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.eq=function eq(other){return this.getX().cmp(other.getX())===0};Point.prototype.normalize=function normalize(){this.x=this.x.redMul(this.z.redInvm());this.z=this.curve.one;return this};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()}},{"../utils":226,"./base":213,"bn.js":227,inherits:245}],217:[function(require,module,exports){"use strict";var utils=require("../utils");var BN=require("bn.js");var inherits=require("inherits");var Base=require("./base");var assert=utils.assert;function ShortCurve(conf){Base.call(this,"short",conf);this.a=new BN(conf.a,16).toRed(this.red);this.b=new BN(conf.b,16).toRed(this.red);this.tinv=this.two.redInvm();this.zeroA=this.a.fromRed().cmpn(0)===0;this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0;this.endo=this._getEndomorphism(conf);this._endoWnafT1=new Array(4);this._endoWnafT2=new Array(4)}inherits(ShortCurve,Base);module.exports=ShortCurve;ShortCurve.prototype._getEndomorphism=function _getEndomorphism(conf){if(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)return;var beta;var lambda;if(conf.beta){beta=new BN(conf.beta,16).toRed(this.red)}else{var betas=this._getEndoRoots(this.p);beta=betas[0].cmp(betas[1])<0?betas[0]:betas[1];beta=beta.toRed(this.red)}if(conf.lambda){lambda=new BN(conf.lambda,16)}else{var lambdas=this._getEndoRoots(this.n);if(this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta))===0){lambda=lambdas[0]}else{lambda=lambdas[1];assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta))===0)}}var basis;if(conf.basis){basis=conf.basis.map(function(vec){return{a:new BN(vec.a,16),b:new BN(vec.b,16)}})}else{basis=this._getEndoBasis(lambda)}return{beta:beta,lambda:lambda,basis:basis}};ShortCurve.prototype._getEndoRoots=function _getEndoRoots(num){var red=num===this.p?this.red:BN.mont(num);var tinv=new BN(2).toRed(red).redInvm();var ntinv=tinv.redNeg();var s=new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv);var l1=ntinv.redAdd(s).fromRed();var l2=ntinv.redSub(s).fromRed();return[l1,l2]};ShortCurve.prototype._getEndoBasis=function _getEndoBasis(lambda){var aprxSqrt=this.n.ushrn(Math.floor(this.n.bitLength()/2));var u=lambda;var v=this.n.clone();var x1=new BN(1);var y1=new BN(0);var x2=new BN(0);var y2=new BN(1);var a0;var b0;var a1;var b1;var a2;var b2;var prevR;var i=0;var r;var x;while(u.cmpn(0)!==0){var q=v.div(u);r=v.sub(q.mul(u));x=x2.sub(q.mul(x1));var y=y2.sub(q.mul(y1));if(!a1&&r.cmp(aprxSqrt)<0){a0=prevR.neg();b0=x1;a1=r.neg();b1=x}else if(a1&&++i===2){break}prevR=r;v=u;u=r;x2=x1;x1=x;y2=y1;y1=y}a2=r.neg();b2=x;var len1=a1.sqr().add(b1.sqr());var len2=a2.sqr().add(b2.sqr());if(len2.cmp(len1)>=0){a2=a0;b2=b0}if(a1.negative){a1=a1.neg();b1=b1.neg()}if(a2.negative){a2=a2.neg();b2=b2.neg()}return[{a:a1,b:b1},{a:a2,b:b2}]};ShortCurve.prototype._endoSplit=function _endoSplit(k){var basis=this.endo.basis;var v1=basis[0];var v2=basis[1];var c1=v2.b.mul(k).divRound(this.n);var c2=v1.b.neg().mul(k).divRound(this.n);var p1=c1.mul(v1.a);var p2=c2.mul(v2.a);var q1=c1.mul(v1.b);var q2=c2.mul(v2.b);var k1=k.sub(p1).sub(p2);var k2=q1.add(q2).neg();return{k1:k1,k2:k2}};ShortCurve.prototype.pointFromX=function pointFromX(x,odd){x=new BN(x,16);if(!x.red)x=x.toRed(this.red);var y2=x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b);var y=y2.redSqrt();if(y.redSqr().redSub(y2).cmp(this.zero)!==0)throw new Error("invalid point");var isOdd=y.fromRed().isOdd();if(odd&&!isOdd||!odd&&isOdd)y=y.redNeg();return this.point(x,y)};ShortCurve.prototype.validate=function validate(point){if(point.inf)return true;var x=point.x;var y=point.y;var ax=this.a.redMul(x);var rhs=x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b);return y.redSqr().redISub(rhs).cmpn(0)===0};ShortCurve.prototype._endoWnafMulAdd=function _endoWnafMulAdd(points,coeffs,jacobianResult){var npoints=this._endoWnafT1;var ncoeffs=this._endoWnafT2;for(var i=0;i";return""};Point.prototype.isInfinity=function isInfinity(){return this.inf};Point.prototype.add=function add(p){if(this.inf)return p;if(p.inf)return this;if(this.eq(p))return this.dbl();if(this.neg().eq(p))return this.curve.point(null,null);if(this.x.cmp(p.x)===0)return this.curve.point(null,null);var c=this.y.redSub(p.y);if(c.cmpn(0)!==0)c=c.redMul(this.x.redSub(p.x).redInvm());var nx=c.redSqr().redISub(this.x).redISub(p.x);var ny=c.redMul(this.x.redSub(nx)).redISub(this.y);return this.curve.point(nx,ny)};Point.prototype.dbl=function dbl(){if(this.inf)return this;var ys1=this.y.redAdd(this.y);if(ys1.cmpn(0)===0)return this.curve.point(null,null);var a=this.curve.a;var x2=this.x.redSqr();var dyinv=ys1.redInvm();var c=x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv);var nx=c.redSqr().redISub(this.x.redAdd(this.x));var ny=c.redMul(this.x.redSub(nx)).redISub(this.y);return this.curve.point(nx,ny)};Point.prototype.getX=function getX(){return this.x.fromRed()};Point.prototype.getY=function getY(){return this.y.fromRed()};Point.prototype.mul=function mul(k){k=new BN(k,16);if(this.isInfinity())return this;else if(this._hasDoubles(k))return this.curve._fixedNafMul(this,k);else if(this.curve.endo)return this.curve._endoWnafMulAdd([this],[k]);else return this.curve._wnafMul(this,k)};Point.prototype.mulAdd=function mulAdd(k1,p2,k2){var points=[this,p2];var coeffs=[k1,k2];if(this.curve.endo)return this.curve._endoWnafMulAdd(points,coeffs);else return this.curve._wnafMulAdd(1,points,coeffs,2)};Point.prototype.jmulAdd=function jmulAdd(k1,p2,k2){var points=[this,p2];var coeffs=[k1,k2];if(this.curve.endo)return this.curve._endoWnafMulAdd(points,coeffs,true);else return this.curve._wnafMulAdd(1,points,coeffs,2,true)};Point.prototype.eq=function eq(p){return this===p||this.inf===p.inf&&(this.inf||this.x.cmp(p.x)===0&&this.y.cmp(p.y)===0)};Point.prototype.neg=function neg(_precompute){if(this.inf)return this;var res=this.curve.point(this.x,this.y.redNeg());if(_precompute&&this.precomputed){var pre=this.precomputed;var negate=function(p){return p.neg()};res.precomputed={naf:pre.naf&&{wnd:pre.naf.wnd,points:pre.naf.points.map(negate)},doubles:pre.doubles&&{step:pre.doubles.step,points:pre.doubles.points.map(negate)}}}return res};Point.prototype.toJ=function toJ(){if(this.inf)return this.curve.jpoint(null,null,null);var res=this.curve.jpoint(this.x,this.y,this.curve.one);return res};function JPoint(curve,x,y,z){Base.BasePoint.call(this,curve,"jacobian");if(x===null&&y===null&&z===null){this.x=this.curve.one;this.y=this.curve.one;this.z=new BN(0)}else{this.x=new BN(x,16);this.y=new BN(y,16);this.z=new BN(z,16)}if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.y.red)this.y=this.y.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red);this.zOne=this.z===this.curve.one}inherits(JPoint,Base.BasePoint);ShortCurve.prototype.jpoint=function jpoint(x,y,z){return new JPoint(this,x,y,z)};JPoint.prototype.toP=function toP(){if(this.isInfinity())return this.curve.point(null,null);var zinv=this.z.redInvm();var zinv2=zinv.redSqr();var ax=this.x.redMul(zinv2);var ay=this.y.redMul(zinv2).redMul(zinv);return this.curve.point(ax,ay)};JPoint.prototype.neg=function neg(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};JPoint.prototype.add=function add(p){if(this.isInfinity())return p;if(p.isInfinity())return this;var pz2=p.z.redSqr();var z2=this.z.redSqr();var u1=this.x.redMul(pz2);var u2=p.x.redMul(z2);var s1=this.y.redMul(pz2.redMul(p.z));var s2=p.y.redMul(z2.redMul(this.z));var h=u1.redSub(u2);var r=s1.redSub(s2);if(h.cmpn(0)===0){if(r.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var h2=h.redSqr();var h3=h2.redMul(h);var v=u1.redMul(h2);var nx=r.redSqr().redIAdd(h3).redISub(v).redISub(v);var ny=r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));var nz=this.z.redMul(p.z).redMul(h);return this.curve.jpoint(nx,ny,nz)};JPoint.prototype.mixedAdd=function mixedAdd(p){if(this.isInfinity())return p.toJ();if(p.isInfinity())return this;var z2=this.z.redSqr();var u1=this.x;var u2=p.x.redMul(z2);var s1=this.y;var s2=p.y.redMul(z2).redMul(this.z);var h=u1.redSub(u2);var r=s1.redSub(s2);if(h.cmpn(0)===0){if(r.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var h2=h.redSqr();var h3=h2.redMul(h);var v=u1.redMul(h2);var nx=r.redSqr().redIAdd(h3).redISub(v).redISub(v);var ny=r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));var nz=this.z.redMul(h);return this.curve.jpoint(nx,ny,nz)};JPoint.prototype.dblp=function dblp(pow){if(pow===0)return this;if(this.isInfinity())return this;if(!pow)return this.dbl();if(this.curve.zeroA||this.curve.threeA){var r=this;for(var i=0;i=0)return false;rx.redIAdd(t);if(this.x.cmp(rx)===0)return true}};JPoint.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};JPoint.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0}},{"../utils":226,"./base":213,"bn.js":227,inherits:245}],218:[function(require,module,exports){"use strict";var curves=exports;var hash=require("hash.js");var curve=require("./curve");var utils=require("./utils");var assert=utils.assert;function PresetCurve(options){if(options.type==="short")this.curve=new curve.short(options);else if(options.type==="edwards")this.curve=new curve.edwards(options);else this.curve=new curve.mont(options);this.g=this.curve.g;this.n=this.curve.n;this.hash=options.hash;assert(this.g.validate(),"Invalid curve");assert(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}curves.PresetCurve=PresetCurve;function defineCurve(name,options){Object.defineProperty(curves,name,{configurable:true,enumerable:true,get:function(){var curve=new PresetCurve(options);Object.defineProperty(curves,name,{configurable:true,enumerable:true,value:curve});return curve}})}defineCurve("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:hash.sha256,gRed:false,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]});defineCurve("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:hash.sha256,gRed:false,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]});defineCurve("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:hash.sha256,gRed:false,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]});defineCurve("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:hash.sha384,gRed:false,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"]});defineCurve("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:hash.sha512,gRed:false,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"]});defineCurve("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:hash.sha256,gRed:false,g:["9"]});defineCurve("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:hash.sha256,gRed:false,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var pre;try{pre=require("./precomputed/secp256k1")}catch(e){pre=undefined}defineCurve("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:hash.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:false,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",pre]})},{"./curve":215,"./precomputed/secp256k1":225,"./utils":226,"hash.js":231}],219:[function(require,module,exports){"use strict";var BN=require("bn.js");var HmacDRBG=require("hmac-drbg");var utils=require("../utils");var curves=require("../curves");var rand=require("brorand");var assert=utils.assert;var KeyPair=require("./key");var Signature=require("./signature");function EC(options){if(!(this instanceof EC))return new EC(options);if(typeof options==="string"){assert(curves.hasOwnProperty(options),"Unknown curve "+options);options=curves[options]}if(options instanceof curves.PresetCurve)options={curve:options};this.curve=options.curve.curve;this.n=this.curve.n;this.nh=this.n.ushrn(1);this.g=this.curve.g;this.g=options.curve.g;this.g.precompute(options.curve.n.bitLength()+1);this.hash=options.hash||options.curve.hash}module.exports=EC;EC.prototype.keyPair=function keyPair(options){return new KeyPair(this,options)};EC.prototype.keyFromPrivate=function keyFromPrivate(priv,enc){return KeyPair.fromPrivate(this,priv,enc)};EC.prototype.keyFromPublic=function keyFromPublic(pub,enc){return KeyPair.fromPublic(this,pub,enc)};EC.prototype.genKeyPair=function genKeyPair(options){if(!options)options={};var drbg=new HmacDRBG({hash:this.hash,pers:options.pers,persEnc:options.persEnc||"utf8",entropy:options.entropy||rand(this.hash.hmacStrength),entropyEnc:options.entropy&&options.entropyEnc||"utf8",nonce:this.n.toArray()});var bytes=this.n.byteLength();var ns2=this.n.sub(new BN(2));do{var priv=new BN(drbg.generate(bytes));if(priv.cmp(ns2)>0)continue;priv.iaddn(1);return this.keyFromPrivate(priv)}while(true)};EC.prototype._truncateToN=function truncateToN(msg,truncOnly){var delta=msg.byteLength()*8-this.n.bitLength();if(delta>0)msg=msg.ushrn(delta);if(!truncOnly&&msg.cmp(this.n)>=0)return msg.sub(this.n);else return msg};EC.prototype.sign=function sign(msg,key,enc,options){if(typeof enc==="object"){options=enc;enc=null}if(!options)options={};key=this.keyFromPrivate(key,enc);msg=this._truncateToN(new BN(msg,16));var bytes=this.n.byteLength();var bkey=key.getPrivate().toArray("be",bytes);var nonce=msg.toArray("be",bytes);var drbg=new HmacDRBG({hash:this.hash,entropy:bkey,nonce:nonce,pers:options.pers,persEnc:options.persEnc||"utf8"});var ns1=this.n.sub(new BN(1));for(var iter=0;true;iter++){var k=options.k?options.k(iter):new BN(drbg.generate(this.n.byteLength()));k=this._truncateToN(k,true);if(k.cmpn(1)<=0||k.cmp(ns1)>=0)continue;var kp=this.g.mul(k);if(kp.isInfinity())continue;var kpX=kp.getX();var r=kpX.umod(this.n);if(r.cmpn(0)===0)continue;var s=k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg));s=s.umod(this.n);if(s.cmpn(0)===0)continue;var recoveryParam=(kp.getY().isOdd()?1:0)|(kpX.cmp(r)!==0?2:0);if(options.canonical&&s.cmp(this.nh)>0){s=this.n.sub(s);recoveryParam^=1}return new Signature({r:r,s:s,recoveryParam:recoveryParam})}};EC.prototype.verify=function verify(msg,signature,key,enc){msg=this._truncateToN(new BN(msg,16));key=this.keyFromPublic(key,enc);signature=new Signature(signature,"hex");var r=signature.r;var s=signature.s;if(r.cmpn(1)<0||r.cmp(this.n)>=0)return false;if(s.cmpn(1)<0||s.cmp(this.n)>=0)return false;var sinv=s.invm(this.n);var u1=sinv.mul(msg).umod(this.n);var u2=sinv.mul(r).umod(this.n);if(!this.curve._maxwellTrick){var p=this.g.mulAdd(u1,key.getPublic(),u2);if(p.isInfinity())return false;return p.getX().umod(this.n).cmp(r)===0}var p=this.g.jmulAdd(u1,key.getPublic(),u2);if(p.isInfinity())return false;return p.eqXToP(r)};EC.prototype.recoverPubKey=function(msg,signature,j,enc){assert((3&j)===j,"The recovery param is more than two bits");signature=new Signature(signature,enc);var n=this.n;var e=new BN(msg);var r=signature.r;var s=signature.s;var isYOdd=j&1;var isSecondKey=j>>1;if(r.cmp(this.curve.p.umod(this.curve.n))>=0&&isSecondKey)throw new Error("Unable to find sencond key candinate");if(isSecondKey)r=this.curve.pointFromX(r.add(this.curve.n),isYOdd);else r=this.curve.pointFromX(r,isYOdd);var rInv=signature.r.invm(n);var s1=n.sub(e).mul(rInv).umod(n);var s2=s.mul(rInv).umod(n);return this.g.mulAdd(s1,r,s2)};EC.prototype.getKeyRecoveryParam=function(e,signature,Q,enc){signature=new Signature(signature,enc);if(signature.recoveryParam!==null)return signature.recoveryParam;for(var i=0;i<4;i++){var Qprime;try{Qprime=this.recoverPubKey(e,signature,i)}catch(e){continue}if(Qprime.eq(Q))return i}throw new Error("Unable to find valid recovery factor")}},{"../curves":218,"../utils":226,"./key":220,"./signature":221,"bn.js":227,brorand:140,"hmac-drbg":243}],220:[function(require,module,exports){"use strict";var BN=require("bn.js");var utils=require("../utils");var assert=utils.assert;function KeyPair(ec,options){this.ec=ec;this.priv=null;this.pub=null;if(options.priv)this._importPrivate(options.priv,options.privEnc);if(options.pub)this._importPublic(options.pub,options.pubEnc)}module.exports=KeyPair;KeyPair.fromPublic=function fromPublic(ec,pub,enc){if(pub instanceof KeyPair)return pub;return new KeyPair(ec,{pub:pub,pubEnc:enc})};KeyPair.fromPrivate=function fromPrivate(ec,priv,enc){if(priv instanceof KeyPair)return priv;return new KeyPair(ec,{priv:priv,privEnc:enc})};KeyPair.prototype.validate=function validate(){var pub=this.getPublic();if(pub.isInfinity())return{result:false,reason:"Invalid public key"};if(!pub.validate())return{result:false,reason:"Public key is not a point"};if(!pub.mul(this.ec.curve.n).isInfinity())return{result:false,reason:"Public key * N != O"};return{result:true,reason:null}};KeyPair.prototype.getPublic=function getPublic(compact,enc){if(typeof compact==="string"){enc=compact;compact=null}if(!this.pub)this.pub=this.ec.g.mul(this.priv);if(!enc)return this.pub;return this.pub.encode(enc,compact)};KeyPair.prototype.getPrivate=function getPrivate(enc){if(enc==="hex")return this.priv.toString(16,2);else return this.priv};KeyPair.prototype._importPrivate=function _importPrivate(key,enc){this.priv=new BN(key,enc||16);this.priv=this.priv.umod(this.ec.curve.n)};KeyPair.prototype._importPublic=function _importPublic(key,enc){if(key.x||key.y){if(this.ec.curve.type==="mont"){assert(key.x,"Need x coordinate")}else if(this.ec.curve.type==="short"||this.ec.curve.type==="edwards"){assert(key.x&&key.y,"Need both x and y coordinate")}this.pub=this.ec.curve.point(key.x,key.y);return}this.pub=this.ec.curve.decodePoint(key,enc)};KeyPair.prototype.derive=function derive(pub){return pub.mul(this.priv).getX()};KeyPair.prototype.sign=function sign(msg,enc,options){return this.ec.sign(msg,this,enc,options)};KeyPair.prototype.verify=function verify(msg,signature){return this.ec.verify(msg,signature,this)};KeyPair.prototype.inspect=function inspect(){return""}},{"../utils":226,"bn.js":227}],221:[function(require,module,exports){"use strict";var BN=require("bn.js");var utils=require("../utils");var assert=utils.assert;function Signature(options,enc){if(options instanceof Signature)return options;if(this._importDER(options,enc))return;assert(options.r&&options.s,"Signature without r or s");this.r=new BN(options.r,16);this.s=new BN(options.s,16);if(options.recoveryParam===undefined)this.recoveryParam=null;else this.recoveryParam=options.recoveryParam}module.exports=Signature;function Position(){this.place=0}function getLength(buf,p){var initial=buf[p.place++];if(!(initial&128)){return initial}var octetLen=initial&15;if(octetLen===0||octetLen>4){return false}var val=0;for(var i=0,off=p.place;i>>=0}if(val<=127){return false}p.place=off;return val}function rmPadding(buf){var i=0;var len=buf.length-1;while(!buf[i]&&!(buf[i+1]&128)&&i>>3);arr.push(octets|128);while(--octets){arr.push(len>>>(octets<<3)&255)}arr.push(len)}Signature.prototype.toDER=function toDER(enc){var r=this.r.toArray();var s=this.s.toArray();if(r[0]&128)r=[0].concat(r);if(s[0]&128)s=[0].concat(s);r=rmPadding(r);s=rmPadding(s);while(!s[0]&&!(s[1]&128)){s=s.slice(1)}var arr=[2];constructLength(arr,r.length);arr=arr.concat(r);arr.push(2);constructLength(arr,s.length);var backHalf=arr.concat(s);var res=[48];constructLength(res,backHalf.length);res=res.concat(backHalf);return utils.encode(res,enc)}},{"../utils":226,"bn.js":227}],222:[function(require,module,exports){"use strict";var hash=require("hash.js");var curves=require("../curves");var utils=require("../utils");var assert=utils.assert;var parseBytes=utils.parseBytes;var KeyPair=require("./key");var Signature=require("./signature");function EDDSA(curve){assert(curve==="ed25519","only tested with ed25519 so far");if(!(this instanceof EDDSA))return new EDDSA(curve);var curve=curves[curve].curve;this.curve=curve;this.g=curve.g;this.g.precompute(curve.n.bitLength()+1);this.pointClass=curve.point().constructor;this.encodingLength=Math.ceil(curve.n.bitLength()/8);this.hash=hash.sha512}module.exports=EDDSA;EDDSA.prototype.sign=function sign(message,secret){message=parseBytes(message);var key=this.keyFromSecret(secret);var r=this.hashInt(key.messagePrefix(),message);var R=this.g.mul(r);var Rencoded=this.encodePoint(R);var s_=this.hashInt(Rencoded,key.pubBytes(),message).mul(key.priv());var S=r.add(s_).umod(this.curve.n);return this.makeSignature({R:R,S:S,Rencoded:Rencoded})};EDDSA.prototype.verify=function verify(message,sig,pub){message=parseBytes(message);sig=this.makeSignature(sig);var key=this.keyFromPublic(pub);var h=this.hashInt(sig.Rencoded(),key.pubBytes(),message);var SG=this.g.mul(sig.S());var RplusAh=sig.R().add(key.pub().mul(h));return RplusAh.eq(SG)};EDDSA.prototype.hashInt=function hashInt(){var hash=this.hash();for(var i=0;i(ws>>1)-1)z=(ws>>1)-mod;else z=mod;k.isubn(z)}else{z=0}naf[i]=z;k.iushrn(1)}return naf}utils.getNAF=getNAF;function getJSF(k1,k2){var jsf=[[],[]];k1=k1.clone();k2=k2.clone();var d1=0;var d2=0;while(k1.cmpn(-d1)>0||k2.cmpn(-d2)>0){var m14=k1.andln(3)+d1&3;var m24=k2.andln(3)+d2&3;if(m14===3)m14=-1;if(m24===3)m24=-1;var u1;if((m14&1)===0){u1=0}else{var m8=k1.andln(7)+d1&7;if((m8===3||m8===5)&&m24===2)u1=-m14;else u1=m14}jsf[0].push(u1);var u2;if((m24&1)===0){u2=0}else{var m8=k2.andln(7)+d2&7;if((m8===3||m8===5)&&m14===2)u2=-m24;else u2=m24}jsf[1].push(u2);if(2*d1===u1+1)d1=1-d1;if(2*d2===u2+1)d2=1-d2;k1.iushrn(1);k2.iushrn(1)}return jsf}utils.getJSF=getJSF;function cachedProperty(obj,name,computer){var key="_"+name;obj.prototype[name]=function cachedProperty(){return this[key]!==undefined?this[key]:this[key]=computer.call(this)}}utils.cachedProperty=cachedProperty;function parseBytes(bytes){return typeof bytes==="string"?utils.toArray(bytes,"hex"):bytes}utils.parseBytes=parseBytes;function intFromLE(bytes){return new BN(bytes,"hex","le")}utils.intFromLE=intFromLE},{"bn.js":227,"minimalistic-assert":253,"minimalistic-crypto-utils":254}],227:[function(require,module,exports){(function(module,exports){"use strict";function assert(val,msg){if(!val)throw new Error(msg||"Assertion failed")}function inherits(ctor,superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}function BN(number,base,endian){if(BN.isBN(number)){return number}this.negative=0;this.words=null;this.length=0;this.red=null;if(number!==null){if(base==="le"||base==="be"){endian=base;base=10}this._init(number||0,base||10,endian||"be")}}if(typeof module==="object"){module.exports=BN}else{exports.BN=BN}BN.BN=BN;BN.wordSize=26;var Buffer;try{Buffer=require("buffer").Buffer}catch(e){}BN.isBN=function isBN(num){if(num instanceof BN){return true}return num!==null&&typeof num==="object"&&num.constructor.wordSize===BN.wordSize&&Array.isArray(num.words)};BN.max=function max(left,right){if(left.cmp(right)>0)return left;return right};BN.min=function min(left,right){if(left.cmp(right)<0)return left;return right};BN.prototype._init=function init(number,base,endian){if(typeof number==="number"){return this._initNumber(number,base,endian)}if(typeof number==="object"){return this._initArray(number,base,endian)}if(base==="hex"){base=16}assert(base===(base|0)&&base>=2&&base<=36);number=number.toString().replace(/\s+/g,"");var start=0;if(number[0]==="-"){start++}if(base===16){this._parseHex(number,start)}else{this._parseBase(number,base,start)}if(number[0]==="-"){this.negative=1}this.strip();if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initNumber=function _initNumber(number,base,endian){if(number<0){this.negative=1;number=-number}if(number<67108864){this.words=[number&67108863];this.length=1}else if(number<4503599627370496){this.words=[number&67108863,number/67108864&67108863];this.length=2}else{assert(number<9007199254740992);this.words=[number&67108863,number/67108864&67108863,1];this.length=3}if(endian!=="le")return;this._initArray(this.toArray(),base,endian)};BN.prototype._initArray=function _initArray(number,base,endian){assert(typeof number.length==="number");if(number.length<=0){this.words=[0];this.length=1;return this}this.length=Math.ceil(number.length/3);this.words=new Array(this.length);for(var i=0;i=0;i-=3){w=number[i]|number[i-1]<<8|number[i-2]<<16;this.words[j]|=w<>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}else if(endian==="le"){for(i=0,j=0;i>>26-off&67108863;off+=24;if(off>=26){off-=26;j++}}}return this.strip()};function parseHex(str,start,end){var r=0;var len=Math.min(str.length,end);for(var i=start;i=49&&c<=54){r|=c-49+10}else if(c>=17&&c<=22){r|=c-17+10}else{r|=c&15}}return r}BN.prototype._parseHex=function _parseHex(number,start){this.length=Math.ceil((number.length-start)/6);this.words=new Array(this.length);for(var i=0;i=start;i-=6){w=parseHex(number,i,i+6);this.words[j]|=w<>>26-off&4194303;off+=24;if(off>=26){off-=26;j++}}if(i+6!==start){w=parseHex(number,start,i+6);this.words[j]|=w<>>26-off&4194303}this.strip()};function parseBase(str,start,end,mul){var r=0;var len=Math.min(str.length,end);for(var i=start;i=49){r+=c-49+10}else if(c>=17){r+=c-17+10}else{r+=c}}return r}BN.prototype._parseBase=function _parseBase(number,base,start){this.words=[0];this.length=1;for(var limbLen=0,limbPow=1;limbPow<=67108863;limbPow*=base){limbLen++}limbLen--;limbPow=limbPow/base|0;var total=number.length-start;var mod=total%limbLen;var end=Math.min(total,total-mod)+start;var word=0;for(var i=start;i1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};BN.prototype.inspect=function inspect(){return(this.red?""};var zeros=["","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"];var groupSizes=[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];var groupBases=[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];BN.prototype.toString=function toString(base,padding){base=base||10;padding=padding|0||1;var out;if(base===16||base==="hex"){out="";var off=0;var carry=0;for(var i=0;i>>24-off&16777215;if(carry!==0||i!==this.length-1){out=zeros[6-word.length]+word+out}else{out=word+out}off+=2;if(off>=26){off-=26;i--}}if(carry!==0){out=carry.toString(16)+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}if(base===(base|0)&&base>=2&&base<=36){var groupSize=groupSizes[base];var groupBase=groupBases[base];out="";var c=this.clone();c.negative=0;while(!c.isZero()){var r=c.modn(groupBase).toString(base);c=c.idivn(groupBase);if(!c.isZero()){out=zeros[groupSize-r.length]+r+out}else{out=r+out}}if(this.isZero()){out="0"+out}while(out.length%padding!==0){out="0"+out}if(this.negative!==0){out="-"+out}return out}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var ret=this.words[0];if(this.length===2){ret+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){ret+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-ret:ret};BN.prototype.toJSON=function toJSON(){return this.toString(16)};BN.prototype.toBuffer=function toBuffer(endian,length){assert(typeof Buffer!=="undefined");return this.toArrayLike(Buffer,endian,length)};BN.prototype.toArray=function toArray(endian,length){return this.toArrayLike(Array,endian,length)};BN.prototype.toArrayLike=function toArrayLike(ArrayType,endian,length){var byteLength=this.byteLength();var reqLength=length||Math.max(1,byteLength);assert(byteLength<=reqLength,"byte array longer than desired length");assert(reqLength>0,"Requested array length <= 0");this.strip();var littleEndian=endian==="le";var res=new ArrayType(reqLength);var b,i;var q=this.clone();if(!littleEndian){for(i=0;i=4096){r+=13;t>>>=13}if(t>=64){r+=7;t>>>=7}if(t>=8){r+=4;t>>>=4}if(t>=2){r+=2;t>>>=2}return r+t}}BN.prototype._zeroBits=function _zeroBits(w){if(w===0)return 26;var t=w;var r=0;if((t&8191)===0){r+=13;t>>>=13}if((t&127)===0){r+=7;t>>>=7}if((t&15)===0){r+=4;t>>>=4}if((t&3)===0){r+=2;t>>>=2}if((t&1)===0){r++}return r};BN.prototype.bitLength=function bitLength(){var w=this.words[this.length-1];var hi=this._countBits(w);return(this.length-1)*26+hi};function toBitArray(num){var w=new Array(num.bitLength());for(var bit=0;bit>>wbit}return w}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var r=0;for(var i=0;inum.length)return this.clone().ior(num);return num.clone().ior(this)};BN.prototype.uor=function uor(num){if(this.length>num.length)return this.clone().iuor(num);return num.clone().iuor(this)};BN.prototype.iuand=function iuand(num){var b;if(this.length>num.length){b=num}else{b=this}for(var i=0;inum.length)return this.clone().iand(num);return num.clone().iand(this)};BN.prototype.uand=function uand(num){if(this.length>num.length)return this.clone().iuand(num);return num.clone().iuand(this)};BN.prototype.iuxor=function iuxor(num){var a;var b;if(this.length>num.length){a=this;b=num}else{a=num;b=this}for(var i=0;inum.length)return this.clone().ixor(num);return num.clone().ixor(this)};BN.prototype.uxor=function uxor(num){if(this.length>num.length)return this.clone().iuxor(num);return num.clone().iuxor(this)};BN.prototype.inotn=function inotn(width){assert(typeof width==="number"&&width>=0);var bytesNeeded=Math.ceil(width/26)|0;var bitsLeft=width%26;this._expand(bytesNeeded);if(bitsLeft>0){bytesNeeded--}for(var i=0;i0){this.words[i]=~this.words[i]&67108863>>26-bitsLeft}return this.strip()};BN.prototype.notn=function notn(width){return this.clone().inotn(width)};BN.prototype.setn=function setn(bit,val){assert(typeof bit==="number"&&bit>=0);var off=bit/26|0;var wbit=bit%26;this._expand(off+1);if(val){this.words[off]=this.words[off]|1<num.length){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>>26}for(;carry!==0&&i>>26}this.length=a.length;if(carry!==0){this.words[this.length]=carry;this.length++}else if(a!==this){for(;inum.length)return this.clone().iadd(num);return num.clone().iadd(this)};BN.prototype.isub=function isub(num){if(num.negative!==0){num.negative=0;var r=this.iadd(num);num.negative=1;return r._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(num);this.negative=1;return this._normSign()}var cmp=this.cmp(num);if(cmp===0){this.negative=0;this.length=1;this.words[0]=0;return this}var a,b;if(cmp>0){a=this;b=num}else{a=num;b=this}var carry=0;for(var i=0;i>26;this.words[i]=r&67108863}for(;carry!==0&&i>26;this.words[i]=r&67108863}if(carry===0&&i>>26;var rword=carry&67108863;var maxJ=Math.min(k,num.length-1);for(var j=Math.max(0,k-self.length+1);j<=maxJ;j++){var i=k-j|0;a=self.words[i]|0;b=num.words[j]|0;r=a*b+rword;ncarry+=r/67108864|0;rword=r&67108863}out.words[k]=rword|0;carry=ncarry|0}if(carry!==0){out.words[k]=carry|0}else{out.length--}return out.strip()}var comb10MulTo=function comb10MulTo(self,num,out){var a=self.words;var b=num.words;var o=out.words;var c=0;var lo;var mid;var hi;var a0=a[0]|0;var al0=a0&8191;var ah0=a0>>>13;var a1=a[1]|0;var al1=a1&8191;var ah1=a1>>>13;var a2=a[2]|0;var al2=a2&8191;var ah2=a2>>>13;var a3=a[3]|0;var al3=a3&8191;var ah3=a3>>>13;var a4=a[4]|0;var al4=a4&8191;var ah4=a4>>>13;var a5=a[5]|0;var al5=a5&8191;var ah5=a5>>>13;var a6=a[6]|0;var al6=a6&8191;var ah6=a6>>>13;var a7=a[7]|0;var al7=a7&8191;var ah7=a7>>>13;var a8=a[8]|0;var al8=a8&8191;var ah8=a8>>>13;var a9=a[9]|0;var al9=a9&8191;var ah9=a9>>>13;var b0=b[0]|0;var bl0=b0&8191;var bh0=b0>>>13;var b1=b[1]|0;var bl1=b1&8191;var bh1=b1>>>13;var b2=b[2]|0;var bl2=b2&8191;var bh2=b2>>>13;var b3=b[3]|0;var bl3=b3&8191;var bh3=b3>>>13;var b4=b[4]|0;var bl4=b4&8191;var bh4=b4>>>13;var b5=b[5]|0;var bl5=b5&8191;var bh5=b5>>>13;var b6=b[6]|0;var bl6=b6&8191;var bh6=b6>>>13;var b7=b[7]|0;var bl7=b7&8191;var bh7=b7>>>13;var b8=b[8]|0;var bl8=b8&8191;var bh8=b8>>>13;var b9=b[9]|0;var bl9=b9&8191;var bh9=b9>>>13;out.negative=self.negative^num.negative;out.length=19;lo=Math.imul(al0,bl0);mid=Math.imul(al0,bh0);mid=mid+Math.imul(ah0,bl0)|0;hi=Math.imul(ah0,bh0);var w0=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w0>>>26)|0;w0&=67108863;lo=Math.imul(al1,bl0);mid=Math.imul(al1,bh0);mid=mid+Math.imul(ah1,bl0)|0;hi=Math.imul(ah1,bh0);lo=lo+Math.imul(al0,bl1)|0;mid=mid+Math.imul(al0,bh1)|0;mid=mid+Math.imul(ah0,bl1)|0;hi=hi+Math.imul(ah0,bh1)|0;var w1=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w1>>>26)|0;w1&=67108863;lo=Math.imul(al2,bl0);mid=Math.imul(al2,bh0);mid=mid+Math.imul(ah2,bl0)|0;hi=Math.imul(ah2,bh0);lo=lo+Math.imul(al1,bl1)|0;mid=mid+Math.imul(al1,bh1)|0;mid=mid+Math.imul(ah1,bl1)|0;hi=hi+Math.imul(ah1,bh1)|0;lo=lo+Math.imul(al0,bl2)|0;mid=mid+Math.imul(al0,bh2)|0;mid=mid+Math.imul(ah0,bl2)|0;hi=hi+Math.imul(ah0,bh2)|0;var w2=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w2>>>26)|0;w2&=67108863;lo=Math.imul(al3,bl0);mid=Math.imul(al3,bh0);mid=mid+Math.imul(ah3,bl0)|0;hi=Math.imul(ah3,bh0);lo=lo+Math.imul(al2,bl1)|0;mid=mid+Math.imul(al2,bh1)|0;mid=mid+Math.imul(ah2,bl1)|0;hi=hi+Math.imul(ah2,bh1)|0;lo=lo+Math.imul(al1,bl2)|0;mid=mid+Math.imul(al1,bh2)|0;mid=mid+Math.imul(ah1,bl2)|0;hi=hi+Math.imul(ah1,bh2)|0;lo=lo+Math.imul(al0,bl3)|0;mid=mid+Math.imul(al0,bh3)|0;mid=mid+Math.imul(ah0,bl3)|0;hi=hi+Math.imul(ah0,bh3)|0;var w3=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w3>>>26)|0;w3&=67108863;lo=Math.imul(al4,bl0);mid=Math.imul(al4,bh0);mid=mid+Math.imul(ah4,bl0)|0;hi=Math.imul(ah4,bh0);lo=lo+Math.imul(al3,bl1)|0;mid=mid+Math.imul(al3,bh1)|0;mid=mid+Math.imul(ah3,bl1)|0;hi=hi+Math.imul(ah3,bh1)|0;lo=lo+Math.imul(al2,bl2)|0;mid=mid+Math.imul(al2,bh2)|0;mid=mid+Math.imul(ah2,bl2)|0;hi=hi+Math.imul(ah2,bh2)|0;lo=lo+Math.imul(al1,bl3)|0;mid=mid+Math.imul(al1,bh3)|0;mid=mid+Math.imul(ah1,bl3)|0;hi=hi+Math.imul(ah1,bh3)|0;lo=lo+Math.imul(al0,bl4)|0;mid=mid+Math.imul(al0,bh4)|0;mid=mid+Math.imul(ah0,bl4)|0;hi=hi+Math.imul(ah0,bh4)|0;var w4=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w4>>>26)|0;w4&=67108863;lo=Math.imul(al5,bl0);mid=Math.imul(al5,bh0);mid=mid+Math.imul(ah5,bl0)|0;hi=Math.imul(ah5,bh0);lo=lo+Math.imul(al4,bl1)|0;mid=mid+Math.imul(al4,bh1)|0;mid=mid+Math.imul(ah4,bl1)|0;hi=hi+Math.imul(ah4,bh1)|0;lo=lo+Math.imul(al3,bl2)|0;mid=mid+Math.imul(al3,bh2)|0;mid=mid+Math.imul(ah3,bl2)|0;hi=hi+Math.imul(ah3,bh2)|0;lo=lo+Math.imul(al2,bl3)|0;mid=mid+Math.imul(al2,bh3)|0;mid=mid+Math.imul(ah2,bl3)|0;hi=hi+Math.imul(ah2,bh3)|0;lo=lo+Math.imul(al1,bl4)|0;mid=mid+Math.imul(al1,bh4)|0;mid=mid+Math.imul(ah1,bl4)|0;hi=hi+Math.imul(ah1,bh4)|0;lo=lo+Math.imul(al0,bl5)|0;mid=mid+Math.imul(al0,bh5)|0;mid=mid+Math.imul(ah0,bl5)|0;hi=hi+Math.imul(ah0,bh5)|0;var w5=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w5>>>26)|0;w5&=67108863;lo=Math.imul(al6,bl0);mid=Math.imul(al6,bh0);mid=mid+Math.imul(ah6,bl0)|0;hi=Math.imul(ah6,bh0);lo=lo+Math.imul(al5,bl1)|0;mid=mid+Math.imul(al5,bh1)|0;mid=mid+Math.imul(ah5,bl1)|0;hi=hi+Math.imul(ah5,bh1)|0;lo=lo+Math.imul(al4,bl2)|0;mid=mid+Math.imul(al4,bh2)|0;mid=mid+Math.imul(ah4,bl2)|0;hi=hi+Math.imul(ah4,bh2)|0;lo=lo+Math.imul(al3,bl3)|0;mid=mid+Math.imul(al3,bh3)|0;mid=mid+Math.imul(ah3,bl3)|0;hi=hi+Math.imul(ah3,bh3)|0;lo=lo+Math.imul(al2,bl4)|0;mid=mid+Math.imul(al2,bh4)|0;mid=mid+Math.imul(ah2,bl4)|0;hi=hi+Math.imul(ah2,bh4)|0;lo=lo+Math.imul(al1,bl5)|0;mid=mid+Math.imul(al1,bh5)|0;mid=mid+Math.imul(ah1,bl5)|0;hi=hi+Math.imul(ah1,bh5)|0;lo=lo+Math.imul(al0,bl6)|0;mid=mid+Math.imul(al0,bh6)|0;mid=mid+Math.imul(ah0,bl6)|0;hi=hi+Math.imul(ah0,bh6)|0;var w6=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w6>>>26)|0;w6&=67108863;lo=Math.imul(al7,bl0);mid=Math.imul(al7,bh0);mid=mid+Math.imul(ah7,bl0)|0;hi=Math.imul(ah7,bh0);lo=lo+Math.imul(al6,bl1)|0;mid=mid+Math.imul(al6,bh1)|0;mid=mid+Math.imul(ah6,bl1)|0;hi=hi+Math.imul(ah6,bh1)|0;lo=lo+Math.imul(al5,bl2)|0;mid=mid+Math.imul(al5,bh2)|0;mid=mid+Math.imul(ah5,bl2)|0;hi=hi+Math.imul(ah5,bh2)|0;lo=lo+Math.imul(al4,bl3)|0;mid=mid+Math.imul(al4,bh3)|0;mid=mid+Math.imul(ah4,bl3)|0;hi=hi+Math.imul(ah4,bh3)|0;lo=lo+Math.imul(al3,bl4)|0;mid=mid+Math.imul(al3,bh4)|0;mid=mid+Math.imul(ah3,bl4)|0;hi=hi+Math.imul(ah3,bh4)|0;lo=lo+Math.imul(al2,bl5)|0;mid=mid+Math.imul(al2,bh5)|0;mid=mid+Math.imul(ah2,bl5)|0;hi=hi+Math.imul(ah2,bh5)|0;lo=lo+Math.imul(al1,bl6)|0;mid=mid+Math.imul(al1,bh6)|0;mid=mid+Math.imul(ah1,bl6)|0;hi=hi+Math.imul(ah1,bh6)|0;lo=lo+Math.imul(al0,bl7)|0;mid=mid+Math.imul(al0,bh7)|0;mid=mid+Math.imul(ah0,bl7)|0;hi=hi+Math.imul(ah0,bh7)|0;var w7=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w7>>>26)|0;w7&=67108863;lo=Math.imul(al8,bl0);mid=Math.imul(al8,bh0);mid=mid+Math.imul(ah8,bl0)|0;hi=Math.imul(ah8,bh0);lo=lo+Math.imul(al7,bl1)|0;mid=mid+Math.imul(al7,bh1)|0;mid=mid+Math.imul(ah7,bl1)|0;hi=hi+Math.imul(ah7,bh1)|0;lo=lo+Math.imul(al6,bl2)|0;mid=mid+Math.imul(al6,bh2)|0;mid=mid+Math.imul(ah6,bl2)|0;hi=hi+Math.imul(ah6,bh2)|0;lo=lo+Math.imul(al5,bl3)|0;mid=mid+Math.imul(al5,bh3)|0;mid=mid+Math.imul(ah5,bl3)|0;hi=hi+Math.imul(ah5,bh3)|0;lo=lo+Math.imul(al4,bl4)|0;mid=mid+Math.imul(al4,bh4)|0;mid=mid+Math.imul(ah4,bl4)|0;hi=hi+Math.imul(ah4,bh4)|0;lo=lo+Math.imul(al3,bl5)|0;mid=mid+Math.imul(al3,bh5)|0;mid=mid+Math.imul(ah3,bl5)|0;hi=hi+Math.imul(ah3,bh5)|0;lo=lo+Math.imul(al2,bl6)|0;mid=mid+Math.imul(al2,bh6)|0;mid=mid+Math.imul(ah2,bl6)|0;hi=hi+Math.imul(ah2,bh6)|0;lo=lo+Math.imul(al1,bl7)|0;mid=mid+Math.imul(al1,bh7)|0;mid=mid+Math.imul(ah1,bl7)|0;hi=hi+Math.imul(ah1,bh7)|0;lo=lo+Math.imul(al0,bl8)|0;mid=mid+Math.imul(al0,bh8)|0;mid=mid+Math.imul(ah0,bl8)|0;hi=hi+Math.imul(ah0,bh8)|0;var w8=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w8>>>26)|0;w8&=67108863;lo=Math.imul(al9,bl0);mid=Math.imul(al9,bh0);mid=mid+Math.imul(ah9,bl0)|0;hi=Math.imul(ah9,bh0);lo=lo+Math.imul(al8,bl1)|0;mid=mid+Math.imul(al8,bh1)|0;mid=mid+Math.imul(ah8,bl1)|0;hi=hi+Math.imul(ah8,bh1)|0;lo=lo+Math.imul(al7,bl2)|0;mid=mid+Math.imul(al7,bh2)|0;mid=mid+Math.imul(ah7,bl2)|0;hi=hi+Math.imul(ah7,bh2)|0;lo=lo+Math.imul(al6,bl3)|0;mid=mid+Math.imul(al6,bh3)|0;mid=mid+Math.imul(ah6,bl3)|0;hi=hi+Math.imul(ah6,bh3)|0;lo=lo+Math.imul(al5,bl4)|0;mid=mid+Math.imul(al5,bh4)|0;mid=mid+Math.imul(ah5,bl4)|0;hi=hi+Math.imul(ah5,bh4)|0;lo=lo+Math.imul(al4,bl5)|0;mid=mid+Math.imul(al4,bh5)|0;mid=mid+Math.imul(ah4,bl5)|0;hi=hi+Math.imul(ah4,bh5)|0;lo=lo+Math.imul(al3,bl6)|0;mid=mid+Math.imul(al3,bh6)|0;mid=mid+Math.imul(ah3,bl6)|0;hi=hi+Math.imul(ah3,bh6)|0;lo=lo+Math.imul(al2,bl7)|0;mid=mid+Math.imul(al2,bh7)|0;mid=mid+Math.imul(ah2,bl7)|0;hi=hi+Math.imul(ah2,bh7)|0;lo=lo+Math.imul(al1,bl8)|0;mid=mid+Math.imul(al1,bh8)|0;mid=mid+Math.imul(ah1,bl8)|0;hi=hi+Math.imul(ah1,bh8)|0;lo=lo+Math.imul(al0,bl9)|0;mid=mid+Math.imul(al0,bh9)|0;mid=mid+Math.imul(ah0,bl9)|0;hi=hi+Math.imul(ah0,bh9)|0;var w9=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w9>>>26)|0;w9&=67108863;lo=Math.imul(al9,bl1);mid=Math.imul(al9,bh1);mid=mid+Math.imul(ah9,bl1)|0;hi=Math.imul(ah9,bh1);lo=lo+Math.imul(al8,bl2)|0;mid=mid+Math.imul(al8,bh2)|0;mid=mid+Math.imul(ah8,bl2)|0;hi=hi+Math.imul(ah8,bh2)|0;lo=lo+Math.imul(al7,bl3)|0;mid=mid+Math.imul(al7,bh3)|0;mid=mid+Math.imul(ah7,bl3)|0;hi=hi+Math.imul(ah7,bh3)|0;lo=lo+Math.imul(al6,bl4)|0;mid=mid+Math.imul(al6,bh4)|0;mid=mid+Math.imul(ah6,bl4)|0;hi=hi+Math.imul(ah6,bh4)|0;lo=lo+Math.imul(al5,bl5)|0;mid=mid+Math.imul(al5,bh5)|0;mid=mid+Math.imul(ah5,bl5)|0;hi=hi+Math.imul(ah5,bh5)|0;lo=lo+Math.imul(al4,bl6)|0;mid=mid+Math.imul(al4,bh6)|0;mid=mid+Math.imul(ah4,bl6)|0;hi=hi+Math.imul(ah4,bh6)|0;lo=lo+Math.imul(al3,bl7)|0;mid=mid+Math.imul(al3,bh7)|0;mid=mid+Math.imul(ah3,bl7)|0;hi=hi+Math.imul(ah3,bh7)|0;lo=lo+Math.imul(al2,bl8)|0;mid=mid+Math.imul(al2,bh8)|0;mid=mid+Math.imul(ah2,bl8)|0;hi=hi+Math.imul(ah2,bh8)|0;lo=lo+Math.imul(al1,bl9)|0;mid=mid+Math.imul(al1,bh9)|0;mid=mid+Math.imul(ah1,bl9)|0;hi=hi+Math.imul(ah1,bh9)|0;var w10=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w10>>>26)|0;w10&=67108863;lo=Math.imul(al9,bl2);mid=Math.imul(al9,bh2);mid=mid+Math.imul(ah9,bl2)|0;hi=Math.imul(ah9,bh2);lo=lo+Math.imul(al8,bl3)|0;mid=mid+Math.imul(al8,bh3)|0;mid=mid+Math.imul(ah8,bl3)|0;hi=hi+Math.imul(ah8,bh3)|0;lo=lo+Math.imul(al7,bl4)|0;mid=mid+Math.imul(al7,bh4)|0;mid=mid+Math.imul(ah7,bl4)|0;hi=hi+Math.imul(ah7,bh4)|0;lo=lo+Math.imul(al6,bl5)|0;mid=mid+Math.imul(al6,bh5)|0;mid=mid+Math.imul(ah6,bl5)|0;hi=hi+Math.imul(ah6,bh5)|0;lo=lo+Math.imul(al5,bl6)|0;mid=mid+Math.imul(al5,bh6)|0;mid=mid+Math.imul(ah5,bl6)|0;hi=hi+Math.imul(ah5,bh6)|0;lo=lo+Math.imul(al4,bl7)|0;mid=mid+Math.imul(al4,bh7)|0;mid=mid+Math.imul(ah4,bl7)|0;hi=hi+Math.imul(ah4,bh7)|0;lo=lo+Math.imul(al3,bl8)|0;mid=mid+Math.imul(al3,bh8)|0;mid=mid+Math.imul(ah3,bl8)|0;hi=hi+Math.imul(ah3,bh8)|0;lo=lo+Math.imul(al2,bl9)|0;mid=mid+Math.imul(al2,bh9)|0;mid=mid+Math.imul(ah2,bl9)|0;hi=hi+Math.imul(ah2,bh9)|0;var w11=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w11>>>26)|0;w11&=67108863;lo=Math.imul(al9,bl3);mid=Math.imul(al9,bh3);mid=mid+Math.imul(ah9,bl3)|0;hi=Math.imul(ah9,bh3);lo=lo+Math.imul(al8,bl4)|0;mid=mid+Math.imul(al8,bh4)|0;mid=mid+Math.imul(ah8,bl4)|0;hi=hi+Math.imul(ah8,bh4)|0;lo=lo+Math.imul(al7,bl5)|0;mid=mid+Math.imul(al7,bh5)|0;mid=mid+Math.imul(ah7,bl5)|0;hi=hi+Math.imul(ah7,bh5)|0;lo=lo+Math.imul(al6,bl6)|0;mid=mid+Math.imul(al6,bh6)|0;mid=mid+Math.imul(ah6,bl6)|0;hi=hi+Math.imul(ah6,bh6)|0;lo=lo+Math.imul(al5,bl7)|0;mid=mid+Math.imul(al5,bh7)|0;mid=mid+Math.imul(ah5,bl7)|0;hi=hi+Math.imul(ah5,bh7)|0;lo=lo+Math.imul(al4,bl8)|0;mid=mid+Math.imul(al4,bh8)|0;mid=mid+Math.imul(ah4,bl8)|0;hi=hi+Math.imul(ah4,bh8)|0;lo=lo+Math.imul(al3,bl9)|0;mid=mid+Math.imul(al3,bh9)|0;mid=mid+Math.imul(ah3,bl9)|0;hi=hi+Math.imul(ah3,bh9)|0;var w12=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w12>>>26)|0;w12&=67108863;lo=Math.imul(al9,bl4);mid=Math.imul(al9,bh4);mid=mid+Math.imul(ah9,bl4)|0;hi=Math.imul(ah9,bh4);lo=lo+Math.imul(al8,bl5)|0;mid=mid+Math.imul(al8,bh5)|0;mid=mid+Math.imul(ah8,bl5)|0;hi=hi+Math.imul(ah8,bh5)|0;lo=lo+Math.imul(al7,bl6)|0;mid=mid+Math.imul(al7,bh6)|0;mid=mid+Math.imul(ah7,bl6)|0;hi=hi+Math.imul(ah7,bh6)|0;lo=lo+Math.imul(al6,bl7)|0;mid=mid+Math.imul(al6,bh7)|0;mid=mid+Math.imul(ah6,bl7)|0;hi=hi+Math.imul(ah6,bh7)|0;lo=lo+Math.imul(al5,bl8)|0;mid=mid+Math.imul(al5,bh8)|0;mid=mid+Math.imul(ah5,bl8)|0;hi=hi+Math.imul(ah5,bh8)|0;lo=lo+Math.imul(al4,bl9)|0;mid=mid+Math.imul(al4,bh9)|0;mid=mid+Math.imul(ah4,bl9)|0;hi=hi+Math.imul(ah4,bh9)|0;var w13=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w13>>>26)|0;w13&=67108863;lo=Math.imul(al9,bl5);mid=Math.imul(al9,bh5);mid=mid+Math.imul(ah9,bl5)|0;hi=Math.imul(ah9,bh5);lo=lo+Math.imul(al8,bl6)|0;mid=mid+Math.imul(al8,bh6)|0;mid=mid+Math.imul(ah8,bl6)|0;hi=hi+Math.imul(ah8,bh6)|0;lo=lo+Math.imul(al7,bl7)|0;mid=mid+Math.imul(al7,bh7)|0;mid=mid+Math.imul(ah7,bl7)|0;hi=hi+Math.imul(ah7,bh7)|0;lo=lo+Math.imul(al6,bl8)|0;mid=mid+Math.imul(al6,bh8)|0;mid=mid+Math.imul(ah6,bl8)|0;hi=hi+Math.imul(ah6,bh8)|0;lo=lo+Math.imul(al5,bl9)|0;mid=mid+Math.imul(al5,bh9)|0;mid=mid+Math.imul(ah5,bl9)|0;hi=hi+Math.imul(ah5,bh9)|0;var w14=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w14>>>26)|0;w14&=67108863;lo=Math.imul(al9,bl6);mid=Math.imul(al9,bh6);mid=mid+Math.imul(ah9,bl6)|0;hi=Math.imul(ah9,bh6);lo=lo+Math.imul(al8,bl7)|0;mid=mid+Math.imul(al8,bh7)|0;mid=mid+Math.imul(ah8,bl7)|0;hi=hi+Math.imul(ah8,bh7)|0;lo=lo+Math.imul(al7,bl8)|0;mid=mid+Math.imul(al7,bh8)|0;mid=mid+Math.imul(ah7,bl8)|0;hi=hi+Math.imul(ah7,bh8)|0;lo=lo+Math.imul(al6,bl9)|0;mid=mid+Math.imul(al6,bh9)|0;mid=mid+Math.imul(ah6,bl9)|0;hi=hi+Math.imul(ah6,bh9)|0;var w15=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w15>>>26)|0;w15&=67108863;lo=Math.imul(al9,bl7);mid=Math.imul(al9,bh7);mid=mid+Math.imul(ah9,bl7)|0;hi=Math.imul(ah9,bh7);lo=lo+Math.imul(al8,bl8)|0;mid=mid+Math.imul(al8,bh8)|0;mid=mid+Math.imul(ah8,bl8)|0;hi=hi+Math.imul(ah8,bh8)|0;lo=lo+Math.imul(al7,bl9)|0;mid=mid+Math.imul(al7,bh9)|0;mid=mid+Math.imul(ah7,bl9)|0;hi=hi+Math.imul(ah7,bh9)|0;var w16=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w16>>>26)|0;w16&=67108863;lo=Math.imul(al9,bl8);mid=Math.imul(al9,bh8);mid=mid+Math.imul(ah9,bl8)|0;hi=Math.imul(ah9,bh8);lo=lo+Math.imul(al8,bl9)|0;mid=mid+Math.imul(al8,bh9)|0;mid=mid+Math.imul(ah8,bl9)|0;hi=hi+Math.imul(ah8,bh9)|0;var w17=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w17>>>26)|0;w17&=67108863;lo=Math.imul(al9,bl9);mid=Math.imul(al9,bh9);mid=mid+Math.imul(ah9,bl9)|0;hi=Math.imul(ah9,bh9);var w18=(c+lo|0)+((mid&8191)<<13)|0;c=(hi+(mid>>>13)|0)+(w18>>>26)|0;w18&=67108863;o[0]=w0;o[1]=w1;o[2]=w2;o[3]=w3;o[4]=w4;o[5]=w5;o[6]=w6;o[7]=w7;o[8]=w8;o[9]=w9;o[10]=w10;o[11]=w11;o[12]=w12;o[13]=w13;o[14]=w14;o[15]=w15;o[16]=w16;o[17]=w17;o[18]=w18;if(c!==0){o[19]=c;out.length++}return out};if(!Math.imul){comb10MulTo=smallMulTo}function bigMulTo(self,num,out){out.negative=num.negative^self.negative;out.length=self.length+num.length;var carry=0;var hncarry=0;for(var k=0;k>>26)|0;hncarry+=ncarry>>>26;ncarry&=67108863}out.words[k]=rword;carry=ncarry;ncarry=hncarry}if(carry!==0){out.words[k]=carry}else{out.length--}return out.strip()}function jumboMulTo(self,num,out){var fftm=new FFTM;return fftm.mulp(self,num,out)}BN.prototype.mulTo=function mulTo(num,out){var res;var len=this.length+num.length;if(this.length===10&&num.length===10){res=comb10MulTo(this,num,out)}else if(len<63){res=smallMulTo(this,num,out)}else if(len<1024){res=bigMulTo(this,num,out)}else{res=jumboMulTo(this,num,out)}return res};function FFTM(x,y){this.x=x;this.y=y}FFTM.prototype.makeRBT=function makeRBT(N){var t=new Array(N);var l=BN.prototype._countBits(N)-1;for(var i=0;i>=1}return rb};FFTM.prototype.permute=function permute(rbt,rws,iws,rtws,itws,N){for(var i=0;i>>1){i++}return 1<>>13;rws[2*i+1]=carry&8191;carry=carry>>>13}for(i=2*len;i>=26;carry+=w/67108864|0;carry+=lo>>>26;this.words[i]=lo&67108863}if(carry!==0){this.words[i]=carry;this.length++}return this};BN.prototype.muln=function muln(num){return this.clone().imuln(num)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(num){var w=toBitArray(num);if(w.length===0)return new BN(1);var res=this;for(var i=0;i=0);var r=bits%26;var s=(bits-r)/26;var carryMask=67108863>>>26-r<<26-r;var i;if(r!==0){var carry=0;for(i=0;i>>26-r}if(carry){this.words[i]=carry;this.length++}}if(s!==0){for(i=this.length-1;i>=0;i--){this.words[i+s]=this.words[i]}for(i=0;i=0);var h;if(hint){h=(hint-hint%26)/26}else{h=0}var r=bits%26;var s=Math.min((bits-r)/26,this.length);var mask=67108863^67108863>>>r<s){this.length-=s;for(i=0;i=0&&(carry!==0||i>=h);i--){var word=this.words[i]|0;this.words[i]=carry<<26-r|word>>>r;carry=word&mask}if(maskedWords&&carry!==0){maskedWords.words[maskedWords.length++]=carry}if(this.length===0){this.words[0]=0;this.length=1}return this.strip()};BN.prototype.ishrn=function ishrn(bits,hint,extended){assert(this.negative===0);return this.iushrn(bits,hint,extended)};BN.prototype.shln=function shln(bits){return this.clone().ishln(bits)};BN.prototype.ushln=function ushln(bits){return this.clone().iushln(bits)};BN.prototype.shrn=function shrn(bits){return this.clone().ishrn(bits)};BN.prototype.ushrn=function ushrn(bits){return this.clone().iushrn(bits)};BN.prototype.testn=function testn(bit){assert(typeof bit==="number"&&bit>=0);var r=bit%26;var s=(bit-r)/26;var q=1<=0);var r=bits%26;var s=(bits-r)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=s){return this}if(r!==0){s++}this.length=Math.min(s,this.length);if(r!==0){var mask=67108863^67108863>>>r<=67108864;i++){this.words[i]-=67108864;if(i===this.length-1){this.words[i+1]=1}else{this.words[i+1]++}}this.length=Math.max(this.length,i+1);return this};BN.prototype.isubn=function isubn(num){assert(typeof num==="number");assert(num<67108864);if(num<0)return this.iaddn(-num);if(this.negative!==0){this.negative=0;this.iaddn(num);this.negative=1;return this}this.words[0]-=num;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var i=0;i>26)-(right/67108864|0);this.words[i+shift]=w&67108863}for(;i>26;this.words[i+shift]=w&67108863}if(carry===0)return this.strip();assert(carry===-1);carry=0;for(i=0;i>26;this.words[i]=w&67108863}this.negative=1;return this.strip()};BN.prototype._wordDiv=function _wordDiv(num,mode){var shift=this.length-num.length;var a=this.clone();var b=num;var bhi=b.words[b.length-1]|0;var bhiBits=this._countBits(bhi);shift=26-bhiBits;if(shift!==0){b=b.ushln(shift);a.iushln(shift);bhi=b.words[b.length-1]|0}var m=a.length-b.length;var q;if(mode!=="mod"){q=new BN(null);q.length=m+1;q.words=new Array(q.length);for(var i=0;i=0;j--){var qj=(a.words[b.length+j]|0)*67108864+(a.words[b.length+j-1]|0);qj=Math.min(qj/bhi|0,67108863);a._ishlnsubmul(b,qj,j);while(a.negative!==0){qj--;a.negative=0;a._ishlnsubmul(b,1,j);if(!a.isZero()){a.negative^=1}}if(q){q.words[j]=qj}}if(q){q.strip()}a.strip();if(mode!=="div"&&shift!==0){a.iushrn(shift)}return{div:q||null,mod:a}};BN.prototype.divmod=function divmod(num,mode,positive){assert(!num.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var div,mod,res;if(this.negative!==0&&num.negative===0){res=this.neg().divmod(num,mode);if(mode!=="mod"){div=res.div.neg()}if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.iadd(num)}}return{div:div,mod:mod}}if(this.negative===0&&num.negative!==0){res=this.divmod(num.neg(),mode);if(mode!=="mod"){div=res.div.neg()}return{div:div,mod:res.mod}}if((this.negative&num.negative)!==0){res=this.neg().divmod(num.neg(),mode);if(mode!=="div"){mod=res.mod.neg();if(positive&&mod.negative!==0){mod.isub(num)}}return{div:res.div,mod:mod}}if(num.length>this.length||this.cmp(num)<0){return{div:new BN(0),mod:this}}if(num.length===1){if(mode==="div"){return{div:this.divn(num.words[0]),mod:null}}if(mode==="mod"){return{div:null,mod:new BN(this.modn(num.words[0]))}}return{div:this.divn(num.words[0]),mod:new BN(this.modn(num.words[0]))}}return this._wordDiv(num,mode)};BN.prototype.div=function div(num){return this.divmod(num,"div",false).div};BN.prototype.mod=function mod(num){return this.divmod(num,"mod",false).mod};BN.prototype.umod=function umod(num){return this.divmod(num,"mod",true).mod};BN.prototype.divRound=function divRound(num){var dm=this.divmod(num);if(dm.mod.isZero())return dm.div;var mod=dm.div.negative!==0?dm.mod.isub(num):dm.mod;var half=num.ushrn(1);var r2=num.andln(1);var cmp=mod.cmp(half);if(cmp<0||r2===1&&cmp===0)return dm.div;return dm.div.negative!==0?dm.div.isubn(1):dm.div.iaddn(1)};BN.prototype.modn=function modn(num){assert(num<=67108863);var p=(1<<26)%num;var acc=0;for(var i=this.length-1;i>=0;i--){acc=(p*acc+(this.words[i]|0))%num}return acc};BN.prototype.idivn=function idivn(num){assert(num<=67108863);var carry=0;for(var i=this.length-1;i>=0;i--){var w=(this.words[i]|0)+carry*67108864;this.words[i]=w/num|0;carry=w%num}return this.strip()};BN.prototype.divn=function divn(num){return this.clone().idivn(num)};BN.prototype.egcd=function egcd(p){assert(p.negative===0);assert(!p.isZero());var x=this;var y=p.clone();if(x.negative!==0){x=x.umod(p)}else{x=x.clone()}var A=new BN(1);var B=new BN(0);var C=new BN(0);var D=new BN(1);var g=0;while(x.isEven()&&y.isEven()){x.iushrn(1);y.iushrn(1);++g}var yp=y.clone();var xp=x.clone();while(!x.isZero()){for(var i=0,im=1;(x.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){x.iushrn(i);while(i-- >0){if(A.isOdd()||B.isOdd()){A.iadd(yp);B.isub(xp)}A.iushrn(1);B.iushrn(1)}}for(var j=0,jm=1;(y.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){y.iushrn(j);while(j-- >0){if(C.isOdd()||D.isOdd()){C.iadd(yp);D.isub(xp)}C.iushrn(1);D.iushrn(1)}}if(x.cmp(y)>=0){x.isub(y);A.isub(C);B.isub(D)}else{y.isub(x);C.isub(A);D.isub(B)}}return{a:C,b:D,gcd:y.iushln(g)}};BN.prototype._invmp=function _invmp(p){assert(p.negative===0);assert(!p.isZero());var a=this;var b=p.clone();if(a.negative!==0){a=a.umod(p)}else{a=a.clone()}var x1=new BN(1);var x2=new BN(0);var delta=b.clone();while(a.cmpn(1)>0&&b.cmpn(1)>0){for(var i=0,im=1;(a.words[0]&im)===0&&i<26;++i,im<<=1);if(i>0){a.iushrn(i);while(i-- >0){if(x1.isOdd()){x1.iadd(delta)}x1.iushrn(1)}}for(var j=0,jm=1;(b.words[0]&jm)===0&&j<26;++j,jm<<=1);if(j>0){b.iushrn(j);while(j-- >0){if(x2.isOdd()){x2.iadd(delta)}x2.iushrn(1)}}if(a.cmp(b)>=0){a.isub(b);x1.isub(x2)}else{b.isub(a);x2.isub(x1)}}var res;if(a.cmpn(1)===0){res=x1}else{res=x2}if(res.cmpn(0)<0){res.iadd(p)}return res};BN.prototype.gcd=function gcd(num){if(this.isZero())return num.abs();if(num.isZero())return this.abs();var a=this.clone();var b=num.clone();a.negative=0;b.negative=0;for(var shift=0;a.isEven()&&b.isEven();shift++){a.iushrn(1);b.iushrn(1)}do{while(a.isEven()){a.iushrn(1)}while(b.isEven()){b.iushrn(1)}var r=a.cmp(b);if(r<0){var t=a;a=b;b=t}else if(r===0||b.cmpn(1)===0){break}a.isub(b)}while(true);return b.iushln(shift)};BN.prototype.invm=function invm(num){return this.egcd(num).a.umod(num)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(num){return this.words[0]&num};BN.prototype.bincn=function bincn(bit){assert(typeof bit==="number");var r=bit%26;var s=(bit-r)/26;var q=1<>>26;w&=67108863;this.words[i]=w}if(carry!==0){this.words[i]=carry;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(num){var negative=num<0;if(this.negative!==0&&!negative)return-1;if(this.negative===0&&negative)return 1;this.strip();var res;if(this.length>1){res=1}else{if(negative){num=-num}assert(num<=67108863,"Number is too big");var w=this.words[0]|0;res=w===num?0:wnum.length)return 1;if(this.length=0;i--){var a=this.words[i]|0;var b=num.words[i]|0;if(a===b)continue;if(ab){res=1}break}return res};BN.prototype.gtn=function gtn(num){return this.cmpn(num)===1};BN.prototype.gt=function gt(num){return this.cmp(num)===1};BN.prototype.gten=function gten(num){return this.cmpn(num)>=0};BN.prototype.gte=function gte(num){return this.cmp(num)>=0};BN.prototype.ltn=function ltn(num){return this.cmpn(num)===-1};BN.prototype.lt=function lt(num){return this.cmp(num)===-1};BN.prototype.lten=function lten(num){return this.cmpn(num)<=0};BN.prototype.lte=function lte(num){return this.cmp(num)<=0};BN.prototype.eqn=function eqn(num){return this.cmpn(num)===0};BN.prototype.eq=function eq(num){return this.cmp(num)===0};BN.red=function red(num){return new Red(num)};BN.prototype.toRed=function toRed(ctx){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return ctx.convertTo(this)._forceRed(ctx)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(ctx){this.red=ctx;return this};BN.prototype.forceRed=function forceRed(ctx){assert(!this.red,"Already a number in reduction context");return this._forceRed(ctx)};BN.prototype.redAdd=function redAdd(num){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,num)};BN.prototype.redIAdd=function redIAdd(num){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,num)};BN.prototype.redSub=function redSub(num){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,num)};BN.prototype.redISub=function redISub(num){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,num)};BN.prototype.redShl=function redShl(num){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,num)};BN.prototype.redMul=function redMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.mul(this,num)};BN.prototype.redIMul=function redIMul(num){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,num);return this.red.imul(this,num)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(num){assert(this.red&&!num.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,num)};var primes={k256:null,p224:null,p192:null,p25519:null};function MPrime(name,p){this.name=name;this.p=new BN(p,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var tmp=new BN(null);tmp.words=new Array(Math.ceil(this.n/13));return tmp};MPrime.prototype.ireduce=function ireduce(num){var r=num;var rlen;do{this.split(r,this.tmp);r=this.imulK(r);r=r.iadd(this.tmp);rlen=r.bitLength()}while(rlen>this.n);var cmp=rlen0){r.isub(this.p)}else{if(r.strip!==undefined){r.strip()}else{r._strip()}}return r};MPrime.prototype.split=function split(input,out){input.iushrn(this.n,0,out)};MPrime.prototype.imulK=function imulK(num){return num.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits(K256,MPrime);K256.prototype.split=function split(input,output){var mask=4194303;var outLen=Math.min(input.length,9);for(var i=0;i>>22;prev=next}prev>>>=22;input.words[i-10]=prev;if(prev===0&&input.length>10){input.length-=10}else{input.length-=9}};K256.prototype.imulK=function imulK(num){num.words[num.length]=0;num.words[num.length+1]=0;num.length+=2;var lo=0;for(var i=0;i>>=26;num.words[i]=lo;carry=hi}if(carry!==0){num.words[num.length++]=carry}return num};BN._prime=function prime(name){if(primes[name])return primes[name];var prime;if(name==="k256"){prime=new K256}else if(name==="p224"){prime=new P224}else if(name==="p192"){prime=new P192}else if(name==="p25519"){prime=new P25519}else{throw new Error("Unknown prime "+name)}primes[name]=prime;return prime};function Red(m){if(typeof m==="string"){var prime=BN._prime(m);this.m=prime.p;this.prime=prime}else{assert(m.gtn(1),"modulus must be greater than 1");this.m=m;this.prime=null}}Red.prototype._verify1=function _verify1(a){assert(a.negative===0,"red works only with positives");assert(a.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(a,b){assert((a.negative|b.negative)===0,"red works only with positives");assert(a.red&&a.red===b.red,"red works only with red numbers")};Red.prototype.imod=function imod(a){if(this.prime)return this.prime.ireduce(a)._forceRed(this);return a.umod(this.m)._forceRed(this)};Red.prototype.neg=function neg(a){if(a.isZero()){return a.clone()}return this.m.sub(a)._forceRed(this)};Red.prototype.add=function add(a,b){this._verify2(a,b);var res=a.add(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res._forceRed(this)};Red.prototype.iadd=function iadd(a,b){this._verify2(a,b);var res=a.iadd(b);if(res.cmp(this.m)>=0){res.isub(this.m)}return res};Red.prototype.sub=function sub(a,b){this._verify2(a,b);var res=a.sub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res._forceRed(this)};Red.prototype.isub=function isub(a,b){this._verify2(a,b);var res=a.isub(b);if(res.cmpn(0)<0){res.iadd(this.m)}return res};Red.prototype.shl=function shl(a,num){this._verify1(a);return this.imod(a.ushln(num))};Red.prototype.imul=function imul(a,b){this._verify2(a,b);return this.imod(a.imul(b))};Red.prototype.mul=function mul(a,b){this._verify2(a,b);return this.imod(a.mul(b))};Red.prototype.isqr=function isqr(a){return this.imul(a,a.clone())};Red.prototype.sqr=function sqr(a){return this.mul(a,a)};Red.prototype.sqrt=function sqrt(a){if(a.isZero())return a.clone();var mod3=this.m.andln(3);assert(mod3%2===1);if(mod3===3){var pow=this.m.add(new BN(1)).iushrn(2);return this.pow(a,pow)}var q=this.m.subn(1);var s=0;while(!q.isZero()&&q.andln(1)===0){s++;q.iushrn(1)}assert(!q.isZero());var one=new BN(1).toRed(this);var nOne=one.redNeg();var lpow=this.m.subn(1).iushrn(1);var z=this.m.bitLength();z=new BN(2*z*z).toRed(this);while(this.pow(z,lpow).cmp(nOne)!==0){z.redIAdd(nOne)}var c=this.pow(z,q);var r=this.pow(a,q.addn(1).iushrn(1));var t=this.pow(a,q);var m=s;while(t.cmp(one)!==0){var tmp=t;for(var i=0;tmp.cmp(one)!==0;i++){tmp=tmp.redSqr()}assert(i=0;i--){var word=num.words[i];for(var j=start-1;j>=0;j--){var bit=word>>j&1;if(res!==wnd[0]){res=this.sqr(res)}if(bit===0&¤t===0){currentLen=0;continue}current<<=1;current|=bit;currentLen++;if(currentLen!==windowSize&&(i!==0||j!==0))continue;res=this.mul(res,wnd[current]);currentLen=0;current=0}start=26}return res};Red.prototype.convertTo=function convertTo(num){var r=num.umod(this.m);return r===num?r.clone():r};Red.prototype.convertFrom=function convertFrom(num){var res=num.clone();res.red=null;return res};BN.mont=function mont(num){return new Mont(num)};function Mont(m){Red.call(this,m);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits(Mont,Red);Mont.prototype.convertTo=function convertTo(num){return this.imod(num.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(num){var r=this.imod(num.mul(this.rinv));r.red=null;return r};Mont.prototype.imul=function imul(a,b){if(a.isZero()||b.isZero()){a.words[0]=0;a.length=1;return a}var t=a.imul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.mul=function mul(a,b){if(a.isZero()||b.isZero())return new BN(0)._forceRed(this);var t=a.mul(b);var c=t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var u=t.isub(c).iushrn(this.shift);var res=u;if(u.cmp(this.m)>=0){res=u.isub(this.m)}else if(u.cmpn(0)<0){res=u.iadd(this.m)}return res._forceRed(this)};Mont.prototype.invm=function invm(a){var res=this.imod(a._invmp(this.m).mul(this.r2));return res._forceRed(this)}})(typeof module==="undefined"||module,this)},{buffer:141}],228:[function(require,module,exports){module.exports={_args:[["elliptic@6.5.3","/Users/apple/Downloads/beacon"]],_development:true,_from:"elliptic@6.5.3",_id:"elliptic@6.5.3",_inBundle:false,_integrity:"sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==",_location:"/elliptic",_phantomChildren:{},_requested:{type:"version",registry:true,raw:"elliptic@6.5.3",name:"elliptic",escapedName:"elliptic",rawSpec:"6.5.3",saveSpec:null,fetchSpec:"6.5.3"},_requiredBy:["/browserify-sign","/create-ecdh"],_resolved:"https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",_spec:"6.5.3",_where:"/Users/apple/Downloads/beacon",author:{name:"Fedor Indutny",email:"fedor@indutny.com"},bugs:{url:"https://github.com/indutny/elliptic/issues"},dependencies:{"bn.js":"^4.4.0",brorand:"^1.0.1","hash.js":"^1.0.0","hmac-drbg":"^1.0.0",inherits:"^2.0.1","minimalistic-assert":"^1.0.0","minimalistic-crypto-utils":"^1.0.0"},description:"EC cryptography",devDependencies:{brfs:"^1.4.3",coveralls:"^3.0.8",grunt:"^1.0.4","grunt-browserify":"^5.0.0","grunt-cli":"^1.2.0","grunt-contrib-connect":"^1.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^1.0.1","grunt-mocha-istanbul":"^3.0.1","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.2",jscs:"^3.0.7",jshint:"^2.10.3",mocha:"^6.2.2"},files:["lib"],homepage:"https://github.com/indutny/elliptic",keywords:["EC","Elliptic","curve","Cryptography"],license:"MIT",main:"lib/elliptic.js",name:"elliptic",repository:{type:"git",url:"git+ssh://git@github.com/indutny/elliptic.git"},scripts:{jscs:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",jshint:"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js",lint:"npm run jscs && npm run jshint",test:"npm run lint && npm run unit",unit:"istanbul test _mocha --reporter=spec test/index.js",version:"grunt dist && git add dist/"},version:"6.5.3"}},{}],229:[function(require,module,exports){var Buffer=require("safe-buffer").Buffer;var MD5=require("md5.js");function EVP_BytesToKey(password,salt,keyBits,ivLen){if(!Buffer.isBuffer(password))password=Buffer.from(password,"binary");if(salt){if(!Buffer.isBuffer(salt))salt=Buffer.from(salt,"binary");if(salt.length!==8)throw new RangeError("salt should be Buffer with 8 byte length")}var keyLen=keyBits/8;var key=Buffer.alloc(keyLen);var iv=Buffer.alloc(ivLen||0);var tmp=Buffer.alloc(0);while(keyLen>0||ivLen>0){var hash=new MD5;hash.update(tmp);hash.update(password);if(salt)hash.update(salt);tmp=hash.digest();var used=0;if(keyLen>0){var keyStart=key.length-keyLen;used=Math.min(keyLen,tmp.length);tmp.copy(key,keyStart,0,used);keyLen-=used}if(used0){var ivStart=iv.length-ivLen;var length=Math.min(ivLen,tmp.length-used);tmp.copy(iv,ivStart,used,used+length);ivLen-=length}}tmp.fill(0);return{key:key,iv:iv}}module.exports=EVP_BytesToKey},{"md5.js":250,"safe-buffer":293}],230:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer;var Transform=require("stream").Transform;var inherits=require("inherits");function throwIfNotStringOrBuffer(val,prefix){if(!Buffer.isBuffer(val)&&typeof val!=="string"){throw new TypeError(prefix+" must be a string or a buffer")}}function HashBase(blockSize){Transform.call(this);this._block=Buffer.allocUnsafe(blockSize);this._blockSize=blockSize;this._blockOffset=0;this._length=[0,0,0,0];this._finalized=false}inherits(HashBase,Transform);HashBase.prototype._transform=function(chunk,encoding,callback){var error=null;try{this.update(chunk,encoding)}catch(err){error=err}callback(error)};HashBase.prototype._flush=function(callback){var error=null;try{this.push(this.digest())}catch(err){error=err}callback(error)};HashBase.prototype.update=function(data,encoding){throwIfNotStringOrBuffer(data,"Data");if(this._finalized)throw new Error("Digest already called");if(!Buffer.isBuffer(data))data=Buffer.from(data,encoding);var block=this._block;var offset=0;while(this._blockOffset+data.length-offset>=this._blockSize){for(var i=this._blockOffset;i0;++j){this._length[j]+=carry;carry=this._length[j]/4294967296|0;if(carry>0)this._length[j]-=4294967296*carry}return this};HashBase.prototype._update=function(){throw new Error("_update is not implemented")};HashBase.prototype.digest=function(encoding){if(this._finalized)throw new Error("Digest already called");this._finalized=true;var digest=this._digest();if(encoding!==undefined)digest=digest.toString(encoding);this._block.fill(0);this._blockOffset=0;for(var i=0;i<4;++i)this._length[i]=0;return digest};HashBase.prototype._digest=function(){throw new Error("_digest is not implemented")};module.exports=HashBase},{inherits:245,"safe-buffer":293,stream:302}],231:[function(require,module,exports){var hash=exports;hash.utils=require("./hash/utils");hash.common=require("./hash/common");hash.sha=require("./hash/sha");hash.ripemd=require("./hash/ripemd");hash.hmac=require("./hash/hmac");hash.sha1=hash.sha.sha1;hash.sha256=hash.sha.sha256;hash.sha224=hash.sha.sha224;hash.sha384=hash.sha.sha384;hash.sha512=hash.sha.sha512;hash.ripemd160=hash.ripemd.ripemd160},{"./hash/common":232,"./hash/hmac":233,"./hash/ripemd":234,"./hash/sha":235,"./hash/utils":242}],232:[function(require,module,exports){"use strict";var utils=require("./utils");var assert=require("minimalistic-assert");function BlockHash(){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}exports.BlockHash=BlockHash;BlockHash.prototype.update=function update(msg,enc){msg=utils.toArray(msg,enc);if(!this.pending)this.pending=msg;else this.pending=this.pending.concat(msg);this.pendingTotal+=msg.length;if(this.pending.length>=this._delta8){msg=this.pending;var r=msg.length%this._delta8;this.pending=msg.slice(msg.length-r,msg.length);if(this.pending.length===0)this.pending=null;msg=utils.join32(msg,0,msg.length-r,this.endian);for(var i=0;i>>24&255;res[i++]=len>>>16&255;res[i++]=len>>>8&255;res[i++]=len&255}else{res[i++]=len&255;res[i++]=len>>>8&255;res[i++]=len>>>16&255;res[i++]=len>>>24&255;res[i++]=0;res[i++]=0;res[i++]=0;res[i++]=0;for(t=8;tthis.blockSize)key=(new this.Hash).update(key).digest();assert(key.length<=this.blockSize);for(var i=key.length;i>>3}exports.g0_256=g0_256;function g1_256(x){return rotr32(x,17)^rotr32(x,19)^x>>>10}exports.g1_256=g1_256},{"../utils":242}],242:[function(require,module,exports){"use strict";var assert=require("minimalistic-assert");var inherits=require("inherits");exports.inherits=inherits;function isSurrogatePair(msg,i){if((msg.charCodeAt(i)&64512)!==55296){return false}if(i<0||i+1>=msg.length){return false}return(msg.charCodeAt(i+1)&64512)===56320}function toArray(msg,enc){if(Array.isArray(msg))return msg.slice();if(!msg)return[];var res=[];if(typeof msg==="string"){if(!enc){var p=0;for(var i=0;i>6|192;res[p++]=c&63|128}else if(isSurrogatePair(msg,i)){c=65536+((c&1023)<<10)+(msg.charCodeAt(++i)&1023);res[p++]=c>>18|240;res[p++]=c>>12&63|128;res[p++]=c>>6&63|128;res[p++]=c&63|128}else{res[p++]=c>>12|224;res[p++]=c>>6&63|128;res[p++]=c&63|128}}}else if(enc==="hex"){msg=msg.replace(/[^a-z0-9]+/gi,"");if(msg.length%2!==0)msg="0"+msg;for(i=0;i>>24|w>>>8&65280|w<<8&16711680|(w&255)<<24;return res>>>0}exports.htonl=htonl;function toHex32(msg,endian){var res="";for(var i=0;i>>0}return res}exports.join32=join32;function split32(msg,endian){var res=new Array(msg.length*4);for(var i=0,k=0;i>>24;res[k+1]=m>>>16&255;res[k+2]=m>>>8&255;res[k+3]=m&255}else{res[k+3]=m>>>24;res[k+2]=m>>>16&255;res[k+1]=m>>>8&255;res[k]=m&255}}return res}exports.split32=split32;function rotr32(w,b){return w>>>b|w<<32-b}exports.rotr32=rotr32;function rotl32(w,b){return w<>>32-b}exports.rotl32=rotl32;function sum32(a,b){return a+b>>>0}exports.sum32=sum32;function sum32_3(a,b,c){return a+b+c>>>0}exports.sum32_3=sum32_3;function sum32_4(a,b,c,d){return a+b+c+d>>>0}exports.sum32_4=sum32_4;function sum32_5(a,b,c,d,e){return a+b+c+d+e>>>0}exports.sum32_5=sum32_5;function sum64(buf,pos,ah,al){var bh=buf[pos];var bl=buf[pos+1];var lo=al+bl>>>0;var hi=(lo>>0;buf[pos+1]=lo}exports.sum64=sum64;function sum64_hi(ah,al,bh,bl){var lo=al+bl>>>0;var hi=(lo>>0}exports.sum64_hi=sum64_hi;function sum64_lo(ah,al,bh,bl){var lo=al+bl;return lo>>>0}exports.sum64_lo=sum64_lo;function sum64_4_hi(ah,al,bh,bl,ch,cl,dh,dl){var carry=0;var lo=al;lo=lo+bl>>>0;carry+=lo>>0;carry+=lo>>0;carry+=lo>>0}exports.sum64_4_hi=sum64_4_hi;function sum64_4_lo(ah,al,bh,bl,ch,cl,dh,dl){var lo=al+bl+cl+dl;return lo>>>0}exports.sum64_4_lo=sum64_4_lo;function sum64_5_hi(ah,al,bh,bl,ch,cl,dh,dl,eh,el){var carry=0;var lo=al;lo=lo+bl>>>0;carry+=lo>>0;carry+=lo>>0;carry+=lo>>0;carry+=lo>>0}exports.sum64_5_hi=sum64_5_hi;function sum64_5_lo(ah,al,bh,bl,ch,cl,dh,dl,eh,el){var lo=al+bl+cl+dl+el;return lo>>>0}exports.sum64_5_lo=sum64_5_lo;function rotr64_hi(ah,al,num){var r=al<<32-num|ah>>>num;return r>>>0}exports.rotr64_hi=rotr64_hi;function rotr64_lo(ah,al,num){var r=ah<<32-num|al>>>num;return r>>>0}exports.rotr64_lo=rotr64_lo;function shr64_hi(ah,al,num){return ah>>>num}exports.shr64_hi=shr64_hi;function shr64_lo(ah,al,num){var r=ah<<32-num|al>>>num;return r>>>0}exports.shr64_lo=shr64_lo},{inherits:245,"minimalistic-assert":253}],243:[function(require,module,exports){"use strict";var hash=require("hash.js");var utils=require("minimalistic-crypto-utils");var assert=require("minimalistic-assert");function HmacDRBG(options){if(!(this instanceof HmacDRBG))return new HmacDRBG(options);this.hash=options.hash;this.predResist=!!options.predResist;this.outLen=this.hash.outSize;this.minEntropy=options.minEntropy||this.hash.hmacStrength;this._reseed=null;this.reseedInterval=null;this.K=null;this.V=null;var entropy=utils.toArray(options.entropy,options.entropyEnc||"hex");var nonce=utils.toArray(options.nonce,options.nonceEnc||"hex");var pers=utils.toArray(options.pers,options.persEnc||"hex");assert(entropy.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._init(entropy,nonce,pers)}module.exports=HmacDRBG;HmacDRBG.prototype._init=function init(entropy,nonce,pers){var seed=entropy.concat(nonce).concat(pers);this.K=new Array(this.outLen/8);this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._update(entropy.concat(add||[]));this._reseed=1};HmacDRBG.prototype.generate=function generate(len,enc,add,addEnc){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");if(typeof enc!=="string"){addEnc=add;add=enc;enc=null}if(add){add=utils.toArray(add,addEnc||"hex");this._update(add)}var temp=[];while(temp.length>1;var nBits=-7;var i=isLE?nBytes-1:0;var d=isLE?-1:1;var s=buffer[offset+i];i+=d;e=s&(1<<-nBits)-1;s>>=-nBits;nBits+=eLen;for(;nBits>0;e=e*256+buffer[offset+i],i+=d,nBits-=8){}m=e&(1<<-nBits)-1;e>>=-nBits;nBits+=mLen;for(;nBits>0;m=m*256+buffer[offset+i],i+=d,nBits-=8){}if(e===0){e=1-eBias}else if(e===eMax){return m?NaN:(s?-1:1)*Infinity}else{m=m+Math.pow(2,mLen);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)};exports.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c;var eLen=nBytes*8-mLen-1;var eMax=(1<>1;var rt=mLen===23?Math.pow(2,-24)-Math.pow(2,-77):0;var i=isLE?0:nBytes-1;var d=isLE?1:-1;var s=value<0||value===0&&1/value<0?1:0;value=Math.abs(value);if(isNaN(value)||value===Infinity){m=isNaN(value)?1:0;e=eMax}else{e=Math.floor(Math.log(value)/Math.LN2);if(value*(c=Math.pow(2,-e))<1){e--;c*=2}if(e+eBias>=1){value+=rt/c}else{value+=rt*Math.pow(2,1-eBias)}if(value*c>=2){e++;c/=2}if(e+eBias>=eMax){m=0;e=eMax}else if(e+eBias>=1){m=(value*c-1)*Math.pow(2,mLen);e=e+eBias}else{m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen);e=0}}for(;mLen>=8;buffer[offset+i]=m&255,i+=d,m/=256,mLen-=8){}e=e<0;buffer[offset+i]=e&255,i+=d,e/=256,eLen-=8){}buffer[offset+i-d]|=s*128}},{}],245:[function(require,module,exports){if(typeof Object.create==="function"){module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})}}}else{module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}}}},{}],246:[function(require,module,exports){module.exports=function(obj){return obj!=null&&(isBuffer(obj)||isSlowBuffer(obj)||!!obj._isBuffer)};function isBuffer(obj){return!!obj.constructor&&typeof obj.constructor.isBuffer==="function"&&obj.constructor.isBuffer(obj)}function isSlowBuffer(obj){return typeof obj.readFloatLE==="function"&&typeof obj.slice==="function"&&isBuffer(obj.slice(0,0))}},{}],247:[function(require,module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return toString.call(arr)=="[object Array]"}},{}],248:[function(require,module,exports){!function(e){function t(e,t){"use strict";var r,a=t.ready.then(function(){function a(){if(0!==r._sodium_init())throw new Error("libsodium was not correctly initialized.");for(var t=["crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_version_string"],a=[E,x,k,S,T,w,Y,B,A,K,M,I,N,L,U,O,C,R,P,G,X,D,F,V,H,z,j,q,W,J,Q,Z,$,ee,te,re,ae,_e,ne,se,ce,oe,he,pe,ye,ie,le,ue,de,ve,ge,be,fe,me,Ee,xe,ke,Se,Te,we,Ye,Be,Ae,Ke,Me,Ie,Ne,Le,Ue,Oe,Ce,Re,Pe,Ge,Xe,De,Fe,Ve,He,ze,je,qe,We,Je,Qe,Ze,$e,et,tt,rt,at,_t,nt,st,ct,ot,ht,pt,yt,it,lt,ut,dt,vt,gt,bt,ft,mt,Et,xt,kt,St,Tt,wt,Yt,Bt,At,Kt,Mt,It,Nt,Lt,Ut,Ot,Ct,Rt,Pt,Gt,Xt,Dt,Ft,Vt,Ht,zt,jt,qt],_=0;_=240?(h=4,c=!0):p>=224?(h=3,c=!0):p>=192?(h=2,c=!0):p<128&&(h=1,c=!0)}while(!c);for(var y=h-(s.length-o),i=0;i>8&-39)<<8|87+(t=e[n]>>>4)+(t-10>>8&-39),_+=String.fromCharCode(255&a)+String.fromCharCode(a>>>8);return _}var c={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function o(e){if(null==e)return c.URLSAFE_NO_PADDING;if(e!==c.ORIGINAL&&e!==c.ORIGINAL_NO_PADDING&&e!==c.URLSAFE&&e!=c.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function h(e,t){t=o(t),e=m(_,e,"input");var a,_=[],s=0|Math.floor(e.length/3),c=e.length-3*s,h=4*s+(0!==c?0==(2&t)?4:2+(c>>>1):0),p=new l(h+1),y=u(e);return _.push(y),_.push(p.address),0===r._sodium_bin2base64(p.address,p.length,y,e.length,t)&&g(_,"conversion failed"),p.length=h,a=n(p.to_Uint8Array()),v(_),a}function p(e,t){var r=t||"uint8array";if(!y(r))throw new Error(r+" output format is not available");if(e instanceof l){if("uint8array"===r)return e.to_Uint8Array();if("text"===r)return n(e.to_Uint8Array());if("hex"===r)return s(e.to_Uint8Array());if("base64"===r)return h(e.to_Uint8Array(),c.URLSAFE_NO_PADDING);throw new Error('What is output format "'+r+'"?')}if("object"==typeof e){for(var a=Object.keys(e),_={},o=0;o>>24>>>8,o,y);var x=p(g,s);return v(c),x}function Le(e){var t=[];i(e);var a=new l(0|r._crypto_kdf_keybytes()),_=a.address;t.push(_),r._crypto_kdf_keygen(_);var n=p(a,e);return v(t),n}function Ue(e,t,a,_){var n=[];i(_),e=m(n,e,"clientPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&b(n,"invalid clientPublicKey length"),s=u(e),n.push(s),t=m(n,t,"clientSecretKey");var o,h=0|r._crypto_kx_secretkeybytes();t.length!==h&&b(n,"invalid clientSecretKey length"),o=u(t),n.push(o),a=m(n,a,"serverPublicKey");var y,d=0|r._crypto_kx_publickeybytes();a.length!==d&&b(n,"invalid serverPublicKey length"),y=u(a),n.push(y);var f=new l(0|r._crypto_kx_sessionkeybytes()),E=f.address;n.push(E);var x=new l(0|r._crypto_kx_sessionkeybytes()),k=x.address;if(n.push(k),0==(0|r._crypto_kx_client_session_keys(E,k,s,o,y))){var S=p({sharedRx:f,sharedTx:x},_);return v(n),S}g(n,"invalid usage")}function Oe(e){var t=[];i(e);var a=new l(0|r._crypto_kx_publickeybytes()),_=a.address;t.push(_);var n=new l(0|r._crypto_kx_secretkeybytes()),s=n.address;if(t.push(s),0==(0|r._crypto_kx_keypair(_,s))){var c={publicKey:p(a,e),privateKey:p(n,e),keyType:"x25519"};return v(t),c}g(t,"internal error")}function Ce(e,t){var a=[];i(t),e=m(a,e,"seed");var _,n=0|r._crypto_kx_seedbytes();e.length!==n&&b(a,"invalid seed length"),_=u(e),a.push(_);var s=new l(0|r._crypto_kx_publickeybytes()),c=s.address;a.push(c);var o=new l(0|r._crypto_kx_secretkeybytes()),h=o.address;if(a.push(h),0==(0|r._crypto_kx_seed_keypair(c,h,_))){var y={publicKey:p(s,t),privateKey:p(o,t),keyType:"x25519"};return v(a),y}g(a,"internal error")}function Re(e,t,a,_){var n=[];i(_),e=m(n,e,"serverPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&b(n,"invalid serverPublicKey length"),s=u(e),n.push(s),t=m(n,t,"serverSecretKey");var o,h=0|r._crypto_kx_secretkeybytes();t.length!==h&&b(n,"invalid serverSecretKey length"),o=u(t),n.push(o),a=m(n,a,"clientPublicKey");var y,d=0|r._crypto_kx_publickeybytes();a.length!==d&&b(n,"invalid clientPublicKey length"),y=u(a),n.push(y);var f=new l(0|r._crypto_kx_sessionkeybytes()),E=f.address;n.push(E);var x=new l(0|r._crypto_kx_sessionkeybytes()),k=x.address;if(n.push(k),0==(0|r._crypto_kx_server_session_keys(E,k,s,o,y))){var S=p({sharedRx:f,sharedTx:x},_);return v(n),S}g(n,"invalid usage")}function Pe(e,t,a){var _=[];i(a);var n=u(e=m(_,e,"message")),s=e.length;_.push(n),t=m(_,t,"key");var c,o=0|r._crypto_onetimeauth_keybytes();t.length!==o&&b(_,"invalid key length"),c=u(t),_.push(c);var h=new l(0|r._crypto_onetimeauth_bytes()),y=h.address;if(_.push(y),0==(0|r._crypto_onetimeauth(y,n,s,0,c))){var d=p(h,a);return v(_),d}g(_,"invalid usage")}function Ge(e,t){var a=[];i(t),f(a,e,"state_address");var _=new l(0|r._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),0==(0|r._crypto_onetimeauth_final(e,n))){var s=(r._free(e),p(_,t));return v(a),s}g(a,"invalid usage")}function Xe(e,t){var a=[];i(t);var _=null;null!=e&&(_=u(e=m(a,e,"key")),e.length,a.push(_));var n=new l(144).address;if(0==(0|r._crypto_onetimeauth_init(n,_))){var s=n;return v(a),s}g(a,"invalid usage")}function De(e){var t=[];i(e);var a=new l(0|r._crypto_onetimeauth_keybytes()),_=a.address;t.push(_),r._crypto_onetimeauth_keygen(_);var n=p(a,e);return v(t),n}function Fe(e,t,a){var _=[];i(a),f(_,e,"state_address");var n=u(t=m(_,t,"message_chunk")),s=t.length;_.push(n),0!=(0|r._crypto_onetimeauth_update(e,n,s))&&g(_,"invalid usage"),v(_)}function Ve(e,t,a){var _=[];e=m(_,e,"hash");var n,s=0|r._crypto_onetimeauth_bytes();e.length!==s&&b(_,"invalid hash length"),n=u(e),_.push(n);var c=u(t=m(_,t,"message")),o=t.length;_.push(c),a=m(_,a,"key");var h,p=0|r._crypto_onetimeauth_keybytes();a.length!==p&&b(_,"invalid key length"),h=u(a),_.push(h);var y=0==(0|r._crypto_onetimeauth_verify(n,c,o,0,h));return v(_),y}function He(e,t,a,_,n,s,c){var o=[];i(c),f(o,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&b(o,"keyLength must be an unsigned integer");var h=u(t=m(o,t,"password")),y=t.length;o.push(h),a=m(o,a,"salt");var d,E=0|r._crypto_pwhash_saltbytes();a.length!==E&&b(o,"invalid salt length"),d=u(a),o.push(d),f(o,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&b(o,"opsLimit must be an unsigned integer"),f(o,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&b(o,"memLimit must be an unsigned integer"),f(o,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&b(o,"algorithm must be an unsigned integer");var x=new l(0|e),k=x.address;if(o.push(k),0==(0|r._crypto_pwhash(k,e,0,h,y,0,d,_,0,n,s))){var S=p(x,c);return v(o),S}g(o,"invalid usage")}function ze(e,t,a,_,n,s){var c=[];i(s),f(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&b(c,"keyLength must be an unsigned integer");var o=u(t=m(c,t,"password")),h=t.length;c.push(o),a=m(c,a,"salt");var y,d=0|r._crypto_pwhash_scryptsalsa208sha256_saltbytes();a.length!==d&&b(c,"invalid salt length"),y=u(a),c.push(y),f(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&b(c,"opsLimit must be an unsigned integer"),f(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&b(c,"memLimit must be an unsigned integer");var E=new l(0|e),x=E.address;if(c.push(x),0==(0|r._crypto_pwhash_scryptsalsa208sha256(x,e,0,o,h,0,y,_,0,n))){var k=p(E,s);return v(c),k}g(c,"invalid usage")}function je(e,t,a,_,n,s,c){var o=[];i(c);var h=u(e=m(o,e,"password")),y=e.length;o.push(h);var d=u(t=m(o,t,"salt")),E=t.length;o.push(d),f(o,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&b(o,"opsLimit must be an unsigned integer"),f(o,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&b(o,"r must be an unsigned integer"),f(o,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&b(o,"p must be an unsigned integer"),f(o,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&b(o,"keyLength must be an unsigned integer");var x=new l(0|s),k=x.address;if(o.push(k),0==(0|r._crypto_pwhash_scryptsalsa208sha256_ll(h,y,d,E,a,0,_,n,k,s))){var S=p(x,c);return v(o),S}g(o,"invalid usage")}function qe(e,t,a,_){var n=[];i(_);var s=u(e=m(n,e,"password")),c=e.length;n.push(s),f(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&b(n,"opsLimit must be an unsigned integer"),f(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&b(n,"memLimit must be an unsigned integer");var o=new l(0|r._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(o),0==(0|r._crypto_pwhash_scryptsalsa208sha256_str(o,s,c,0,t,0,a))){var h=r.UTF8ToString(o);return v(n),h}g(n,"invalid usage")}function We(e,t,a){var n=[];i(a),"string"!=typeof e&&b(n,"hashed_password must be a string"),e=_(e+"\0"),null!=c&&e.length-1!==c&&b(n,"invalid hashed_password length");var s=u(e),c=e.length-1;n.push(s);var o=u(t=m(n,t,"password")),h=t.length;n.push(o);var p=0==(0|r._crypto_pwhash_scryptsalsa208sha256_str_verify(s,o,h,0));return v(n),p}function Je(e,t,a,_){var n=[];i(_);var s=u(e=m(n,e,"password")),c=e.length;n.push(s),f(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&b(n,"opsLimit must be an unsigned integer"),f(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&b(n,"memLimit must be an unsigned integer");var o=new l(0|r._crypto_pwhash_strbytes()).address;if(n.push(o),0==(0|r._crypto_pwhash_str(o,s,c,0,t,0,a))){var h=r.UTF8ToString(o);return v(n),h}g(n,"invalid usage")}function Qe(e,t,a,n){var s=[];i(n),"string"!=typeof e&&b(s,"hashed_password must be a string"),e=_(e+"\0"),null!=o&&e.length-1!==o&&b(s,"invalid hashed_password length");var c=u(e),o=e.length-1;s.push(c),f(s,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&b(s,"opsLimit must be an unsigned integer"),f(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&b(s,"memLimit must be an unsigned integer");var h=0!=(0|r._crypto_pwhash_str_needs_rehash(c,t,0,a));return v(s),h}function Ze(e,t,a){var n=[];i(a),"string"!=typeof e&&b(n,"hashed_password must be a string"),e=_(e+"\0"),null!=c&&e.length-1!==c&&b(n,"invalid hashed_password length");var s=u(e),c=e.length-1;n.push(s);var o=u(t=m(n,t,"password")),h=t.length;n.push(o);var p=0==(0|r._crypto_pwhash_str_verify(s,o,h,0));return v(n),p}function $e(e,t,a){var _=[];i(a),e=m(_,e,"privateKey");var n,s=0|r._crypto_scalarmult_scalarbytes();e.length!==s&&b(_,"invalid privateKey length"),n=u(e),_.push(n),t=m(_,t,"publicKey");var c,o=0|r._crypto_scalarmult_scalarbytes();t.length!==o&&b(_,"invalid publicKey length"),c=u(t),_.push(c);var h=new l(0|r._crypto_scalarmult_bytes()),y=h.address;if(_.push(y),0==(0|r._crypto_scalarmult(y,n,c))){var d=p(h,a);return v(_),d}g(_,"weak public key")}function et(e,t){var a=[];i(t),e=m(a,e,"privateKey");var _,n=0|r._crypto_scalarmult_scalarbytes();e.length!==n&&b(a,"invalid privateKey length"),_=u(e),a.push(_);var s=new l(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),0==(0|r._crypto_scalarmult_base(c,_))){var o=p(s,t);return v(a),o}g(a,"insecure scalar")}function tt(e,t,a){var _=[];i(a),e=m(_,e,"scalar");var n,s=0|r._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&b(_,"invalid scalar length"),n=u(e),_.push(n),t=m(_,t,"privateKey");var c,o=0|r._crypto_scalarmult_ristretto255_bytes();t.length!==o&&b(_,"invalid privateKey length"),c=u(t),_.push(c);var h=new l(0|r._crypto_scalarmult_ristretto255_bytes()),y=h.address;if(_.push(y),0==(0|r._crypto_scalarmult_ristretto255(y,n,c))){var d=p(h,a);return v(_),d}g(_,"input is zero element")}function rt(e,t){var a=[];i(t);var _=u(e=m(a,e,"scalar"));e.length,a.push(_);var n=new l(0|r._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),0==(0|r._crypto_scalarmult_ristretto255_base(s,_))){var c=p(n,t);return v(a),c}g(a,"scalar is 0")}function at(e,t,a,_){var n=[];i(_);var s=u(e=m(n,e,"message")),c=e.length;n.push(s),t=m(n,t,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();t.length!==h&&b(n,"invalid nonce length"),o=u(t),n.push(o),a=m(n,a,"key");var y,d=0|r._crypto_secretbox_keybytes();a.length!==d&&b(n,"invalid key length"),y=u(a),n.push(y);var f=new l(0|c),E=f.address;n.push(E);var x=new l(0|r._crypto_secretbox_macbytes()),k=x.address;if(n.push(k),0==(0|r._crypto_secretbox_detached(E,k,s,c,0,o,y))){var S=p({mac:x,cipher:f},_);return v(n),S}g(n,"invalid usage")}function _t(e,t,a,_){var n=[];i(_);var s=u(e=m(n,e,"message")),c=e.length;n.push(s),t=m(n,t,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();t.length!==h&&b(n,"invalid nonce length"),o=u(t),n.push(o),a=m(n,a,"key");var y,d=0|r._crypto_secretbox_keybytes();a.length!==d&&b(n,"invalid key length"),y=u(a),n.push(y);var f=new l(c+r._crypto_secretbox_macbytes()|0),E=f.address;if(n.push(E),0==(0|r._crypto_secretbox_easy(E,s,c,0,o,y))){var x=p(f,_);return v(n),x}g(n,"invalid usage")}function nt(e){var t=[];i(e);var a=new l(0|r._crypto_secretbox_keybytes()),_=a.address;t.push(_),r._crypto_secretbox_keygen(_);var n=p(a,e);return v(t),n}function st(e,t,a,_,n){var s=[];i(n);var c=u(e=m(s,e,"ciphertext")),o=e.length;s.push(c),t=m(s,t,"mac");var h,y=0|r._crypto_secretbox_macbytes();t.length!==y&&b(s,"invalid mac length"),h=u(t),s.push(h),a=m(s,a,"nonce");var d,f=0|r._crypto_secretbox_noncebytes();a.length!==f&&b(s,"invalid nonce length"),d=u(a),s.push(d),_=m(s,_,"key");var E,x=0|r._crypto_secretbox_keybytes();_.length!==x&&b(s,"invalid key length"),E=u(_),s.push(E);var k=new l(0|o),S=k.address;if(s.push(S),0==(0|r._crypto_secretbox_open_detached(S,c,h,o,0,d,E))){var T=p(k,n);return v(s),T}g(s,"wrong secret key for the given ciphertext")}function ct(e,t,a,_){var n=[];i(_),e=m(n,e,"ciphertext");var s,c=r._crypto_secretbox_macbytes(),o=e.length;o>>0;return v([]),t}function Ht(e,t){var a=[];i(t);for(var _=r._malloc(24),n=0;n<6;n++)r.setValue(_+4*n,r.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][n]]),"i32");0!=(0|r._randombytes_set_implementation(_))&&g(a,"unsupported implementation"),v(a)}function zt(e){i(e),r._randombytes_stir()}function jt(e,t){var a=[];i(t),f(a,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&b(a,"upper_bound must be an unsigned integer");var _=r._randombytes_uniform(e)>>>0;return v(a),_}function qt(){var e=r._sodium_version_string(),t=r.UTF8ToString(e);return v([]),t}return l.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(r.HEAPU8.subarray(this.address,this.address+this.length)),e},e.add=function(e,t){if(!(e instanceof Uint8Array&&t instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can added");var r=e.length,a=0,_=0;if(t.length!=e.length)throw new TypeError("Arguments must have the same length");for(_=0;_>=8,a+=e[_]+t[_],e[_]=255&a},e.base64_variants=c,e.compare=function(e,t){if(!(e instanceof Uint8Array&&t instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==t.length)throw new TypeError("Only instances of identical length can be compared");for(var r=0,a=1,_=e.length;_-- >0;)r|=t[_]-e[_]>>8&a,a&=(t[_]^e[_])-1>>8;return r+r+a-1},e.from_base64=function(e,t){t=o(t);var a,_=[],n=new l(3*(e=m(_,e,"input")).length/4),s=u(e),c=d(4),h=d(4);return _.push(s),_.push(n.address),_.push(n.result_bin_len_p),_.push(n.b64_end_p),0!==r._sodium_base642bin(n.address,n.length,s,e.length,0,c,h,t)&&g(_,"invalid input"),r.getValue(h,"i32")-s!==e.length&&g(_,"incomplete input"),n.length=r.getValue(c,"i32"),a=n.to_Uint8Array(),v(_),a},e.from_hex=function(e){var t,a=[],_=new l((e=m(a,e,"input")).length/2),n=u(e),s=d(4);return a.push(n),a.push(_.address),a.push(_.hex_end_p),0!==r._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&g(a,"invalid input"),r.getValue(s,"i32")-n!==e.length&&g(a,"incomplete input"),t=_.to_Uint8Array(),v(a),t},e.from_string=_,e.increment=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var t=256,r=0,a=e.length;r>=8,t+=e[r],e[r]=255&t},e.is_zero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var t=0,r=0,a=e.length;r 0");var a,_=[],n=d(4),s=1,c=0,o=0|e.length,h=new l(o+t);_.push(n),_.push(h.address);for(var p=h.address,y=h.address+o+t;p>>48|o>>>32|o>>>16|o))-1>>16);return 0!==r._sodium_pad(n,h.address,e.length,t,h.length)&&g(_,"internal error"),h.length=r.getValue(n,"i32"),a=h.to_Uint8Array(),v(_),a},e.unpad=function(e,t){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((t|=0)<=0)throw new Error("block size must be > 0");var a=[],_=u(e),n=d(4);return a.push(_),a.push(n),0!==r._sodium_unpad(n,_,e.length,t)&&g(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,r.getValue(n,"i32")),v(a),e},e.ready=a,e.symbols=function(){return Object.keys(e).sort()},e.to_base64=h,e.to_hex=s,e.to_string=n,e}var r="object"==typeof e.sodium&&"function"==typeof e.sodium.onload?e.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium"],t):"object"==typeof exports&&"string"!=typeof exports.nodeName?t(exports,require("libsodium")):e.sodium=t(e.commonJsStrict={},e.libsodium),r&&e.sodium.ready.then(function(){r(e.sodium)})}(this)},{libsodium:249}],249:[function(require,module,exports){(function(process,global,Buffer,__argument0,__argument1,__argument2,__argument3,__dirname){!function(A){function I(A){"use strict";var I;void 0===(I=A)&&(I={});var g=I;"object"!=typeof g.sodium&&("object"==typeof global?g=global:"object"==typeof window&&(g=window)),"object"==typeof g.sodium&&"number"==typeof g.sodium.totalMemory&&(I.TOTAL_MEMORY=g.sodium.totalMemory);var B=I;return I.ready=new Promise(function(A,I){(C=B).onAbort=I,C.print=function(A){},C.printErr=function(A){},C.onRuntimeInitialized=function(){try{C._crypto_secretbox_keybytes(),A()}catch(A){I(A)}},C.useBackupModule=function(){var A,I=void 0!==(I={})?I:{},g={};for(A in I)I.hasOwnProperty(A)&&(g[A]=I[A]);var C=[],Q=!1,E=!1,i=!1,n=!1;Q="object"==typeof window,E="function"==typeof importScripts,i="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,n=!Q&&!i&&!E;var a,r,o,e,t="";function c(A){return I.locateFile?I.locateFile(A,t):t+A}i?(t=E?require("path").dirname(t)+"/":__dirname+"/",a=function(A,I){var g=SA(A);return g?I?g:g.toString():(o||(o=require("fs")),e||(e=require("path")),A=e.normalize(A),o.readFileSync(A,I?null:"utf8"))},r=function(A){var I=a(A,!0);return I.buffer||(I=new Uint8Array(I)),l(I.buffer),I},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),C=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=I),process.on("unhandledRejection",EA),I.inspect=function(){return"[Emscripten Module object]"}):n?("undefined"!=typeof read&&(a=function(A){var I=SA(A);return I?mA(I):read(A)}),r=function(A){var I;return(I=SA(A))?I:"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(l("object"==typeof(I=read(A,"binary"))),I)},"undefined"!=typeof scriptArgs?C=scriptArgs:void 0!==arguments&&(C=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(Q||E)&&(E?t=self.location.href:document.currentScript&&(t=document.currentScript.src),t=0!==t.indexOf("blob:")?t.substr(0,t.lastIndexOf("/")+1):"",a=function(A){try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.send(null),I.responseText}catch(I){var g=SA(A);if(g)return mA(g);throw I}},E&&(r=function(A){try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.responseType="arraybuffer",I.send(null),new Uint8Array(I.response)}catch(I){var g=SA(A);if(g)return g;throw I}})),I.print;var f,y=I.printErr||void 0;for(A in g)g.hasOwnProperty(A)&&(I[A]=g[A]);g=null,I.arguments&&(C=I.arguments),I.thisProgram&&I.thisProgram,I.quit&&I.quit,I.wasmBinary&&(f=I.wasmBinary),I.noExitRuntime&&I.noExitRuntime;var s,w={Memory:function(A){this.buffer=new ArrayBuffer(65536*A.initial),this.grow=function(A){return PA(A)}},Table:function(A){var I=new Array(A.initial);return I.grow=function(A){I.length>=22&&EA("Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH."),I.push(null)},I.set=function(A,g){I[A]=g},I.get=function(A){return I[A]},I},Module:function(A){},Instance:function(A,I){this.exports=function(A,I,g){for(var B=new Uint8Array(I.buffer),C=new Uint8Array(123),Q=25;Q>=0;--Q)C[48+Q]=52+Q,C[65+Q]=Q,C[97+Q]=26+Q;function E(A,I,g){for(var B,Q,E=0,i=I,n=g.length,a=I+(3*n>>2)-("="==g[n-2])-("="==g[n-1]);E>4,i>2),i>2]=a[0|F]|a[F+1|0]<<8|a[F+2|0]<<16|a[F+3|0]<<24,n[aA+4>>2]=O,16!=(0|(BA=BA+1|0)););for(F=j($,A,64),n[(I=F)+88>>2]=1595750129,n[I+92>>2]=-1521486534,G=a[(I=A)+88|0]|a[I+89|0]<<8|a[I+90|0]<<16|a[I+91|0]<<24,aA=a[I+92|0]|a[I+93|0]<<8|a[I+94|0]<<16|a[I+95|0]<<24,s=a[I+72|0]|a[I+73|0]<<8|a[I+74|0]<<16|a[I+75|0]<<24,O=a[I+76|0]|a[I+77|0]<<8|a[I+78|0]<<16|a[I+79|0]<<24,rA=a[I+80|0]|a[I+81|0]<<8|a[I+82|0]<<16|a[I+83|0]<<24,eA=a[I+84|0]|a[I+85|0]<<8|a[I+86|0]<<16|a[I+87|0]<<24,CA=n[F+4>>2],$=F,I=(t=n[F+36>>2])+n[F+132>>2]|0,(nA=(f=n[F+32>>2])+(BA=n[F+128>>2])|0)>>>0>>0&&(I=I+1|0),I=I+CA|0,nA=I=(BA=nA+n[F>>2]|0)>>>0>>0?I+1|0:I,BA=jg((CA=BA)^(a[(BA=A)+64|0]|a[BA+65|0]<<8|a[BA+66|0]<<16|a[BA+67|0]<<24)^-1377402159,I^(a[BA+68|0]|a[BA+69|0]<<8|a[BA+70|0]<<16|a[BA+71|0]<<24)^1359893119,32),u=I=l,I=I+1779033703|0,(BA=(y=BA)+-205731576|0)>>>0<4089235720&&(I=I+1|0),c=f^(R=BA),f=I,c=jg(c,t^I,24),BA=n[(t=F)+136>>2],I=nA+(w=l)|0,(nA=c+CA|0)>>>0>>0&&(I=I+1|0),nA=BA+nA|0,I=(g=n[t+140>>2])+I|0,q=jg((_=nA)^y,(L=_>>>0>>0?I+1|0:I)^u,16),nA=I=l,n[$+96>>2]=q,n[$+100>>2]=I,I=f+I|0,(CA=R+q|0)>>>0>>0&&(I=I+1|0),y=CA,n[F+64>>2]=y,n[$+68>>2]=I,m=I,CA=jg(c^y,w^I,63),u=I=l,n[F+32>>2]=CA,n[F+36>>2]=I,t=n[F+12>>2],H=s,I=(cA=n[F+148>>2])+(s=n[F+44>>2])|0,(w=(f=n[F+144>>2])+(c=n[F+40>>2])|0)>>>0>>0&&(I=I+1|0),I=I+t|0,t=O,O=I=(R=w+n[F+8>>2]|0)>>>0>>0?I+1|0:I,w=t=jg(H^R^725511199,t^I^-1694144372,32),EA=I=l,I=I+-1150833019|0,(t=t+-2067093701|0)>>>0<2227873595&&(I=I+1|0),H=c^t,c=I,s=jg(H,s^I,24),I=O+(h=l)|0,(O=s+R|0)>>>0>>0&&(I=I+1|0),O=(R=n[F+152>>2])+O|0,I=n[F+156>>2]+I|0,AA=jg((v=O)^w,(d=v>>>0>>0?I+1|0:I)^EA,16),w=I=l,n[$+104>>2]=AA,n[$+108>>2]=I,I=c+I|0,(O=t+AA|0)>>>0>>0&&(I=I+1|0),p=O,n[F+72>>2]=p,n[$+76>>2]=I,P=I,R=jg(s^p,h^I,63),t=l,O=n[F+20>>2],H=rA,I=(tA=n[F+164>>2])+(rA=n[F+52>>2])|0,(c=(K=n[F+160>>2])+(s=n[F+48>>2])|0)>>>0>>0&&(I=I+1|0),I=I+O|0,Y=jg(H^(U=$=c+n[F+16>>2]|0)^-79577749,(O=U>>>0>>0?I+1|0:I)^eA^528734635,32),eA=I=l,I=I+1013904242|0,($=Y+-23791573|0)>>>0<4271175723&&(I=I+1|0),H=s^(c=$),s=I,rA=$=jg(H,rA^I,24),EA=I=l,h=eA,I=I+O|0,(O=U+$|0)>>>0<$>>>0&&(I=I+1|0),I=I+(k=B=n[F+172>>2])|0,V=jg((x=$=(eA=n[F+168>>2])+O|0)^Y,(M=x>>>0>>0?I+1|0:I)^h,16),I=s+(Z=l)|0,($=c+V|0)>>>0>>0&&(I=I+1|0),H=I,c=jg((U=$)^rA,I^EA,63),s=l,rA=n[F+28>>2],k=G,I=(C=n[F+180>>2])+(Y=n[F+60>>2])|0,(EA=($=n[F+176>>2])+(G=n[F+56>>2])|0)>>>0>>0&&(I=I+1|0),I=I+rA|0,I=(O=EA+n[F+24>>2]|0)>>>0>>0?I+1|0:I,EA=O,h=I,J=jg(k^O^327033209,I^aA^1541459225,32),aA=I=l,I=I+-1521486534|0,(O=J+1595750129|0)>>>0<1595750129&&(I=I+1|0),rA=O,G=O=jg(G^O,I^Y,24),k=rA,b=I,N=aA,rA=n[F+188>>2],I=h+(Y=l)|0,(O=G+EA|0)>>>0>>0&&(I=I+1|0),EA=O,I=I+(S=rA)|0,T=O=(aA=n[F+184>>2])+O|0,EA=jg(O^J,(h=N)^(N=O>>>0>>0?I+1|0:I),16),S=G,I=(G=l)+b|0,(h=(O=EA)+k|0)>>>0>>0&&(I=I+1|0),J=h,O=I,h=jg(S^h,I^Y,63),Y=l,I=t+L|0,(L=_+R|0)>>>0>>0&&(I=I+1|0),I=I+(k=fA=n[F+196>>2])|0,EA=jg((b=EA)^(k=EA=(wA=n[F+192>>2])+L|0),(_=G)^(G=k>>>0>>0?I+1|0:I),32),L=F,_=I=l,S=R,I=H+I|0,(R=U+(b=EA)|0)>>>0>>0&&(I=I+1|0),H=t,t=I,X=jg(S^R,H^I,24),EA=F,U=n[F+200>>2],S=b,I=G+(b=l)|0,(H=k+X|0)>>>0>>0&&(I=I+1|0),G=U+H|0,I=(yA=n[EA+204>>2])+I|0,sA=G,gA=jg(S^G,(H=_)^(_=G>>>0>>0?I+1|0:I),16),H=I=l,n[L+120>>2]=gA,n[L+124>>2]=I,I=t+I|0,(t=R+gA|0)>>>0>>0&&(I=I+1|0),G=t,n[F+80>>2]=t,n[EA+84>>2]=I,t^=X,X=I,k=jg(t,b^I,63),b=l,EA=s,I=s+d|0,(c=v+(t=c)|0)>>>0>>0&&(I=I+1|0),s=c,I=I+(L=i=n[F+212>>2])|0,nA=jg((S=q)^(q=c=(R=n[F+208>>2])+c|0),(c=c>>>0>>0?I+1|0:I)^nA,32),v=t,I=(t=l)+O|0,(s=(O=nA)+J|0)>>>0>>0&&(I=I+1|0),v=O=jg(v^s,I^EA,24),d=I,r=n[F+220>>2],z=nA,I=(EA=l)+c|0,(nA=q+v|0)>>>0>>0&&(I=I+1|0),I=I+(S=r)|0,t=jg(z^(J=O=(L=n[F+216>>2])+nA|0),(q=J>>>0>>0?I+1|0:I)^t,16),I=(I=d)+(d=l)|0,(nA=t+s|0)>>>0>>0&&(I=I+1|0),s=I,c=jg((S=nA)^v,I^EA,63),v=l,O=h,z=Y,I=Y+M|0,(h=h+x|0)>>>0>>0&&(I=I+1|0),Y=h,I=I+(W=EA=n[F+228>>2])|0,W=h=(nA=n[F+224>>2])+h|0,AA=jg(h^AA,(M=w)^(w=h>>>0>>0?I+1|0:I),32),Y=O,I=m+(h=l)|0,(O=y+AA|0)>>>0>>0&&(I=I+1|0),m=O=jg(Y^(y=O),I^z,24),x=I,M=h,QA=n[F+236>>2],I=(Y=l)+w|0,(w=m+W|0)>>>0>>0&&(I=I+1|0),I=I+(IA=QA)|0,z=O=(h=n[F+232>>2])+w|0,w=jg(O^AA,(W=M)^(M=O>>>0>>0?I+1|0:I),16),I=(I=x)+(x=l)|0,(y=y+w|0)>>>0>>0&&(I=I+1|0),AA=y,y=I,Y=jg(AA^m,I^Y,63),m=l,IA=u,I=u+N|0,(u=(W=CA)+T|0)>>>0>>0&&(I=I+1|0),I=I+(Q=n[F+244>>2])|0,N=Z,Z=I=(CA=(O=n[F+240>>2])+u|0)>>>0>>0?I+1|0:I,V=jg((u=CA)^V,N^I,32),N=y,y=t,I=P+(CA=l)|0,(t=p+V|0)>>>0

>>0&&(I=I+1|0),p=I,W=jg(t^W,I^IA,24),T=I=l,P=CA,I=I+Z|0,(Z=u+(IA=W)|0)>>>0>>0&&(I=I+1|0),I=I+(oA=e=n[F+252>>2])|0,I=(u=(CA=n[F+248>>2])+Z|0)>>>0>>0?I+1|0:I,Z=u,W=P,P=I,oA=jg(u^V,W^I,16),V=IA,I=p+(W=l)|0,(u=t+oA|0)>>>0>>0&&(I=I+1|0),IA=u,t=I,V=jg(V^u,I^T,63),T=I=l,u=I,iA=y,I=_+Q|0,(p=(y=O)+sA|0)>>>0>>0&&(I=I+1|0),I=I+u|0,u=y=p+V|0,y=jg(iA^y,(_=d)^(d=y>>>0

>>0?I+1|0:I),32),p=F,I=(I=N)+(N=l)|0,(AA=y+AA|0)>>>0>>0&&(I=I+1|0),_=AA,AA=I,iA=T=jg(V^_,T^I,24),hA=I=l,V=I,sA=y,I=d+i|0,(y=u+R|0)>>>0>>0&&(I=I+1|0),u=y,I=I+V|0,o=y=y+T|0,sA=jg(sA^y,(d=N)^(N=y>>>0>>0?I+1|0:I),16),I=AA+(V=l)|0,(y=_+sA|0)>>>0<_>>>0&&(I=I+1|0),_=y,AA=I,u=jg(y^iA,I^hA,63),d=I=l,n[p+32>>2]=u,n[p+36>>2]=I,T=t,iA=w,I=tA+(p=b)|0,(t=K+(y=k)|0)>>>0>>0&&(I=I+1|0),I=I+q|0,w=t=t+J|0,t=jg(iA^t,(k=t>>>0>>0?I+1|0:I)^x,32),q=y,I=(y=l)+T|0,(K=t+IA|0)>>>0>>0&&(I=I+1|0),J=p,p=I,J=x=jg(q^(b=K),J^I,24),q=I=l,K=I,T=t,I=k+fA|0,(t=w+wA|0)>>>0>>0&&(I=I+1|0),w=t,I=I+K|0,k=t=t+x|0,T=jg(T^t,(K=t>>>0>>0?I+1|0:I)^y,16),y=J,I=p+(x=l)|0,(t=b+T|0)>>>0>>0&&(I=I+1|0),J=t,w=q,q=I,w=jg(y^t,w^I,63),t=l,y=c,I=(p=v)+yA|0,(U=c+U|0)>>>0>>0&&(I=I+1|0),I=I+M|0,b=jg((v=c=U+z|0)^oA,(c=c>>>0>>0?I+1|0:I)^W,32),M=y,I=X+(y=l)|0,(U=G+b|0)>>>0>>0&&(I=I+1|0),G=p,p=I,X=M=jg(M^U,G^I,24),z=I=l,G=I,W=b,I=c+e|0,(b=(c=CA)+v|0)>>>0>>0&&(I=I+1|0),I=I+G|0,I=(c=b+M|0)>>>0>>0?I+1|0:I,b=c,v=I,tA=jg(W^c,I^y,16),G=X,I=p+(M=l)|0,(c=U+tA|0)>>>0>>0&&(I=I+1|0),X=c,y=I,p=jg(G^c,I^z,63),U=l,z=m,I=m+QA|0,(Y=(G=Y)+(c=h)|0)>>>0>>0&&(I=I+1|0),I=I+P|0,P=c=Y+Z|0,c=jg(c^gA,(Y=c>>>0>>0?I+1|0:I)^H,32),m=G,I=(I=s)+(s=l)|0,(G=c+S|0)>>>0>>0&&(I=I+1|0),H=G,S=Z=jg(m^G,I^z,24),z=G=l,m=I,W=c,I=Y+C|0,(Y=(c=$)+P|0)>>>0>>0&&(I=I+1|0),I=I+G|0,P=c=Y+Z|0,Y=jg(W^c,(Z=c>>>0>>0?I+1|0:I)^s,16),G=S,I=(I=m)+(m=l)|0,(s=(c=Y)+H|0)>>>0>>0&&(I=I+1|0),S=s,s=I,H=jg(G^S,I^z,63),c=l,G=F,z=w,W=t,gA=Y,IA=w,I=N+g|0,(Y=(w=BA)+o|0)>>>0>>0&&(I=I+1|0),I=I+t|0,t=jg(gA^(IA=w=IA+Y|0),(w=w>>>0>>0?I+1|0:I)^m,32),I=(gA=l)+y|0,(Y=t+X|0)>>>0>>0&&(I=I+1|0),y=Y,Y=I,z=jg(y^z,I^W,24),m=I=l,N=I,I=w+EA|0,(X=(w=nA)+IA|0)>>>0>>0&&(I=I+1|0),I=I+N|0,N=w=X+z|0,oA=jg(t^w,gA^(X=w>>>0>>0?I+1|0:I),16),w=I=l,n[G+120>>2]=oA,n[G+124>>2]=I,G=z,I=I+Y|0,(t=y+oA|0)>>>0>>0&&(I=I+1|0),z=t,y=I,Y=jg(G^t,I^m,63),G=l,m=p,W=U,I=U+K|0,(t=p+k|0)>>>0>>0&&(I=I+1|0),p=t,I=I+(gA=yA=n[F+132>>2])|0,I=(t=(IA=n[F+128>>2])+t|0)>>>0

>>0?I+1|0:I,p=t,U=I,t=jg(t^sA,I^V,32),K=m,I=(I=s)+(s=l)|0,(m=t+S|0)>>>0>>0&&(I=I+1|0),V=S=jg(K^(k=m),I^W,24),gA=m=l,K=I,iA=t,I=U+cA|0,(t=f+p|0)>>>0

>>0&&(I=I+1|0),p=t,I=I+m|0,S=t=t+S|0,t=jg(iA^t,(W=t>>>0

>>0?I+1|0:I)^s,16),I=(p=l)+K|0,(U=t+k|0)>>>0>>0&&(I=I+1|0),K=U,s=U^V,V=I,s=jg(s,I^gA,63),U=l,m=c,gA=T,k=H,I=v+r|0,(H=b+L|0)>>>0>>0&&(I=I+1|0),I=I+c|0,T=H=(T=k)+(b=H)|0,x=jg(gA^H,(c=H>>>0>>0?I+1|0:I)^x,32),v=k,I=AA+(H=l)|0,(k=_+x|0)>>>0<_>>>0&&(I=I+1|0),AA=m=jg(v^k,I^m,24),gA=b=l,v=I,iA=x,_=m,I=c+rA|0,(m=(c=aA)+T|0)>>>0>>0&&(I=I+1|0),I=I+b|0,x=c=_+m|0,H=jg(iA^c,(_=c>>>0>>0?I+1|0:I)^H,16),m=AA,I=(AA=l)+v|0,(k=(c=H)+k|0)>>>0>>0&&(I=I+1|0),v=k,c=I,k=jg(m^k,I^gA,63),b=l,T=d,I=d+B|0,(d=(m=u)+(u=eA)|0)>>>0>>0&&(I=I+1|0),I=I+Z|0,d=I=(u=d+P|0)>>>0

>>0?I+1|0:I,gA=jg(u^tA,I^M,32),P=v,M=c,v=t,I=q+(t=l)|0,(c=J+gA|0)>>>0>>0&&(I=I+1|0),q=J=jg(c^m,I^T,24),tA=T=l,m=I,Z=t,I=d+T|0,(d=u+J|0)>>>0>>0&&(I=I+1|0),I=I+(iA=sA=n[F+156>>2])|0,I=(u=(t=n[F+152>>2])+d|0)>>>0>>0?I+1|0:I,d=u,J=Z,Z=I,u=jg(u^gA,J^I,16),T=q,I=(J=l)+m|0,(m=(m=c)+(c=u)|0)>>>0>>0&&(I=I+1|0),q=m,c=I,T=jg(T^m,I^tA,63),gA=I=l,m=I,iA=v,I=X+r|0,(v=N+L|0)>>>0>>0&&(I=I+1|0),N=v,I=I+m|0,m=v=v+T|0,p=jg(iA^v,(N=v>>>0>>0?I+1|0:I)^p,32),v=F,I=(I=M)+(M=l)|0,(X=p+P|0)>>>0

>>0&&(I=I+1|0),P=X,X=I,tA=gA=jg(T^P,gA^I,24),iA=I=l,T=I,hA=p,I=N+fA|0,(p=m+wA|0)>>>0>>0&&(I=I+1|0),m=p,I=I+T|0,wA=p=p+gA|0,fA=jg(hA^p,(N=M)^(M=p>>>0>>0?I+1|0:I),16),I=X+(N=l)|0,(p=P+fA|0)>>>0

>>0&&(I=I+1|0),P=p,X=I,p=jg(p^tA,I^iA,63),m=I=l,n[v+32>>2]=p,n[v+36>>2]=I,v=Y,T=G,gA=c,I=G+EA|0,(Y=(c=nA)+Y|0)>>>0>>0&&(I=I+1|0),I=I+W|0,I=(c=Y+S|0)>>>0>>0?I+1|0:I,S=c,Y=I,c=jg(c^H,I^AA,32),W=v,I=(H=l)+gA|0,(v=c+q|0)>>>0>>0&&(I=I+1|0),G=v,v=I,W=AA=jg(W^G,I^T,24),gA=I=l,q=I,T=c,I=Y+yA|0,(c=S+IA|0)>>>0>>0&&(I=I+1|0),Y=c,I=I+q|0,tA=c=c+AA|0,T=jg(T^c,(q=c>>>0>>0?I+1|0:I)^H,16),I=v+(S=l)|0,(c=G+T|0)>>>0>>0&&(I=I+1|0),AA=c,c^=W,W=I,Y=jg(c,I^gA,63),c=l,v=u,I=B+(G=U)|0,(u=(H=s)+(s=eA)|0)>>>0>>0&&(I=I+1|0),I=I+_|0,u=s=u+x|0,s=jg(v^s,(U=s>>>0>>0?I+1|0:I)^J,32),I=(I=y)+(y=l)|0,(v=s+z|0)>>>0>>0&&(I=I+1|0),J=x=jg((_=H)^(H=v),I^G,24),_=G=l,v=I,z=s,I=U+cA|0,(s=f+u|0)>>>0>>0&&(I=I+1|0),u=s,I=I+G|0,gA=s=s+x|0,U=jg(z^s,(x=s>>>0>>0?I+1|0:I)^y,16),G=J,I=(J=l)+v|0,(y=(s=U)+H|0)>>>0>>0&&(I=I+1|0),v=y,u=I,H=jg(G^y,I^_,63),s=l,I=e+(G=b)|0,(b=(y=k)+(k=CA)|0)>>>0>>0&&(I=I+1|0),k=b+d|0,I=I+Z|0,b=w,w=I=k>>>0>>0?I+1|0:I,Z=jg(k^oA,b^I,32),_=y,I=V+(y=l)|0,(b=K+Z|0)>>>0>>0&&(I=I+1|0),d=G,G=I,_=K=jg(_^b,d^I,24),z=I=l,d=I,I=w+QA|0,(w=h+k|0)>>>0>>0&&(I=I+1|0),k=w,I=I+d|0,K=w=w+K|0,IA=jg(d=w^Z,(Z=w>>>0>>0?I+1|0:I)^y,16),k=_,I=G+(d=l)|0,(y=b+IA|0)>>>0>>0&&(I=I+1|0),_=y,w=I,G=jg(k^y,I^z,63),y=l,k=F,b=Y,z=c,I=M+i|0,(M=(Y=R)+wA|0)>>>0>>0&&(I=I+1|0),I=I+c|0,I=(Y=(V=b)+M|0)>>>0>>0?I+1|0:I,M=Y,Y=I,c=jg(M^IA,I^d,32),d=b,I=(IA=l)+u|0,(b=c+v|0)>>>0>>0&&(I=I+1|0),u=b,b=I,z=jg(d^u,I^z,24),v=I=l,d=I,I=Y+Q|0,(M=(Y=O)+M|0)>>>0>>0&&(I=I+1|0),I=I+d|0,yA=Y=M+z|0,oA=jg(c^Y,IA^(M=Y>>>0>>0?I+1|0:I),16),Y=I=l,n[k+120>>2]=oA,n[k+124>>2]=I,k=z,I=I+b|0,(c=u+oA|0)>>>0>>0&&(I=I+1|0),z=c,u=I,k=jg(k^c,I^v,63),b=l,v=H,d=s,c=H,I=q+sA|0,(H=t+tA|0)>>>0>>0&&(I=I+1|0),I=I+s|0,q=c=c+H|0,c=jg(c^fA,(s=c>>>0>>0?I+1|0:I)^N,32),N=v,I=(I=w)+(w=l)|0,(v=c+_|0)>>>0>>0&&(I=I+1|0),IA=N=jg(N^(H=v),I^d,24),V=v=l,d=I,iA=c,I=s+C|0,(s=(c=$)+q|0)>>>0>>0&&(I=I+1|0),I=I+v|0,N=c=s+N|0,c=jg(iA^c,(_=c>>>0>>0?I+1|0:I)^w,16),I=(w=l)+d|0,(H=c+H|0)>>>0>>0&&(I=I+1|0),q=H,s=H^IA,IA=I,s=jg(s,I^V,63),H=l,v=G,d=y,V=G,I=x+rA|0,(x=(G=aA)+gA|0)>>>0>>0&&(I=I+1|0),I=I+y|0,V=G=V+x|0,x=jg(G^T,(y=G>>>0>>0?I+1|0:I)^S,32),S=v,I=X+(G=l)|0,(v=P+x|0)>>>0

>>0&&(I=I+1|0),S=X=jg(S^v,I^d,24),T=d=l,P=I,gA=x,I=y+g|0,(x=(y=BA)+V|0)>>>0>>0&&(I=I+1|0),I=I+d|0,I=(y=x+X|0)>>>0>>0?I+1|0:I,x=y,X=I,G=jg(gA^y,I^G,16),d=S,I=(S=l)+P|0,(v=(y=G)+v|0)>>>0>>0&&(I=I+1|0),P=v,y=I,v=jg(d^v,I^T,63),d=l,V=p,T=m,iA=U,I=m+Z|0,(p=p+K|0)>>>0>>0&&(I=I+1|0),U=p,I=I+(gA=fA=n[F+204>>2])|0,I=(p=(wA=n[F+200>>2])+p|0)>>>0>>0?I+1|0:I,U=p,m=I,gA=jg(iA^p,I^J,32),K=y,y=c,I=W+(c=l)|0,(p=AA+gA|0)>>>0>>0&&(I=I+1|0),V=AA=jg(p^V,I^T,24),T=W=l,Z=p,J=I,I=m+W|0,(m=U+AA|0)>>>0>>0&&(I=I+1|0),I=I+(iA=tA=n[F+164>>2])|0,AA=U=(p=n[F+160>>2])+m|0,U=jg(U^gA,(W=U>>>0>>0?I+1|0:I)^c,16),I=(I=J)+(J=l)|0,(m=(c=U)+Z|0)>>>0>>0&&(I=I+1|0),Z=m,c=I,V=jg(m^V,I^T,63),T=I=l,m=I,gA=y,I=M+rA|0,(M=(y=aA)+yA|0)>>>0>>0&&(I=I+1|0),I=I+m|0,I=(y=M+V|0)>>>0>>0?I+1|0:I,M=y,m=w,w=I,y=jg(gA^y,m^I,32),m=F,I=(I=K)+(K=l)|0,(gA=y+P|0)>>>0>>0&&(I=I+1|0),iA=yA=jg(V^(P=gA),I^T,24),hA=V=l,T=P,gA=I,P=y,I=w+fA|0,(y=M+wA|0)>>>0>>0&&(I=I+1|0),w=y,I=I+V|0,yA=y=y+yA|0,P=jg(P^y,(M=y>>>0>>0?I+1|0:I)^K,16),I=(V=l)+gA|0,(w=(y=P)+T|0)>>>0>>0&&(I=I+1|0),T=w,y=I,w=jg(w^iA,I^hA,63),K=I=l,n[m+32>>2]=w,n[m+36>>2]=I,m=k,gA=b,iA=G,I=b+sA|0,(G=t+k|0)>>>0>>0&&(I=I+1|0),I=I+_|0,I=(t=G+N|0)>>>0>>0?I+1|0:I,N=t,G=I,t=jg(iA^t,I^S,32),I=(I=c)+(c=l)|0,(b=t+Z|0)>>>0>>0&&(I=I+1|0),_=Z=jg((k=b)^m,I^gA,24),S=b=l,m=I,iA=t,I=G+g|0,(G=(t=BA)+N|0)>>>0>>0&&(I=I+1|0),I=I+b|0,gA=t=G+Z|0,G=jg(iA^t,(b=t>>>0>>0?I+1|0:I)^c,16),I=(I=m)+(m=l)|0,(c=(t=G)+k|0)>>>0>>0&&(I=I+1|0),Z=c,N=I,k=jg(c^_,I^S,63),t=l,_=s,S=H,I=H+QA|0,(c=s+h|0)>>>0>>0&&(I=I+1|0),I=I+X|0,s=c=c+x|0,c=jg(c^U,(h=c>>>0>>0?I+1|0:I)^J,32),I=(I=u)+(u=l)|0,(H=c+z|0)>>>0>>0&&(I=I+1|0),U=H,H=I,_=J=jg(U^_,I^S,24),X=I=l,x=I,S=c,I=h+EA|0,(c=s+nA|0)>>>0>>0&&(I=I+1|0),s=c,I=I+x|0,sA=c=c+J|0,QA=jg(S^c,(x=c>>>0>>0?I+1|0:I)^u,16),I=H+(J=l)|0,(c=U+QA|0)>>>0>>0&&(I=I+1|0),H=c,u=I,h=jg(c^_,I^X,63),c=l,I=r+(U=d)|0,(d=(s=v)+(v=L)|0)>>>0>>0&&(I=I+1|0),I=I+W|0,X=v=d+AA|0,_=jg(v^oA,(_=Y)^(Y=v>>>0>>0?I+1|0:I),32),S=s,I=IA+(s=l)|0,(v=_+q|0)>>>0>>0&&(I=I+1|0),q=U,U=I,S=q=jg(S^v,q^I,24),z=I=l,d=I,W=_,I=Y+Q|0,(_=(Y=O)+X|0)>>>0>>0&&(I=I+1|0),I=I+d|0,d=Y=_+q|0,AA=jg(W^Y,(_=Y>>>0<_>>>0?I+1|0:I)^s,16),I=U+(X=l)|0,(s=v+AA|0)>>>0>>0&&(I=I+1|0),v=s,q=I,Y=jg(s^S,I^z,63),s=l,U=F,S=k,z=t,I=M+cA|0,(M=f+yA|0)>>>0>>0&&(I=I+1|0),I=I+t|0,t=jg((W=k=M+k|0)^AA,(k=k>>>0>>0?I+1|0:I)^X,32),I=(IA=l)+u|0,(H=t+H|0)>>>0>>0&&(I=I+1|0),M=I,AA=jg((u=H)^S,I^z,24),X=I=l,H=I,I=k+C|0,(S=(k=$)+W|0)>>>0>>0&&(I=I+1|0),I=I+H|0,I=(k=S+AA|0)>>>0>>0?I+1|0:I,S=k,z=I,oA=jg(t^k,IA^I,16),H=I=l,n[U+120>>2]=oA,n[U+124>>2]=I,I=I+M|0,(t=u+oA|0)>>>0>>0&&(I=I+1|0),M=t,u=I,U=jg(t^AA,I^X,63),k=l,X=c,t=h,I=b+B|0,(b=(h=eA)+gA|0)>>>0>>0&&(I=I+1|0),I=I+c|0,AA=h=(W=t)+b|0,P=jg(h^P,(c=h>>>0>>0?I+1|0:I)^V,32),b=t,I=q+(t=l)|0,(h=v+P|0)>>>0>>0&&(I=I+1|0),W=X=jg(b^h,I^X,24),IA=b=l,v=I,V=P,I=c+i|0,(P=(c=R)+AA|0)>>>0>>0&&(I=I+1|0),I=I+b|0,X=c=P+X|0,t=jg(V^c,(q=c>>>0

>>0?I+1|0:I)^t,16),I=(P=l)+v|0,(h=t+h|0)>>>0>>0&&(I=I+1|0),AA=h,c=h^W,W=I,b=jg(c,I^IA,63),v=l,IA=s,V=G,h=Y,I=x+tA|0,(Y=(c=p)+sA|0)>>>0>>0&&(I=I+1|0),I=I+s|0,G=c=(G=h)+Y|0,c=jg(V^c,(s=m)^(m=c>>>0>>0?I+1|0:I),32),s=h,I=(I=y)+(y=l)|0,(h=c+T|0)>>>0>>0&&(I=I+1|0),x=s=jg(s^h,I^IA,24),IA=Y=l,V=I,iA=c,I=m+Y|0,(c=s+G|0)>>>0>>0&&(I=I+1|0),s=c,I=I+(gA=sA=n[F+132>>2])|0,T=c=(Y=n[F+128>>2])+c|0,s=jg(iA^c,(gA=c>>>0>>0?I+1|0:I)^y,16),G=x,I=(x=l)+V|0,(y=(c=s)+h|0)>>>0>>0&&(I=I+1|0),c=I,G=jg(G^y,I^IA,63),m=l,IA=K,I=K+e|0,(K=(h=w)+(w=CA)|0)>>>0>>0&&(I=I+1|0),I=I+_|0,K=I=(w=d+K|0)>>>0>>0?I+1|0:I,d=jg(w^QA,I^J,32),J=y,_=c,y=t,I=N+(t=l)|0,(c=d+Z|0)>>>0>>0&&(I=I+1|0),V=N=jg(c^h,I^IA,24),QA=IA=l,h=c,Z=I,hA=d,I=K+IA|0,(c=w+N|0)>>>0>>0&&(I=I+1|0),w=c,I=I+(iA=yA=n[F+196>>2])|0,N=c=(d=n[F+192>>2])+c|0,c=jg(hA^c,(IA=c>>>0>>0?I+1|0:I)^t,16),K=V,I=(I=Z)+(Z=l)|0,(w=(t=c)+h|0)>>>0>>0&&(I=I+1|0),V=w,t=I,QA=jg(K^w,I^QA,63),iA=I=l,w=I,K=y,I=z+fA|0,(y=S+wA|0)>>>0>>0&&(I=I+1|0),h=y,I=I+w|0,I=(y=y+QA|0)>>>0>>0?I+1|0:I,h=y,w=P,P=I,y=jg(K^y,w^I,32),w=F,I=(K=l)+_|0,(_=y+J|0)>>>0>>0&&(I=I+1|0),J=_,QA=z=jg(QA^_,I^iA,24),fA=_=l,S=I,iA=y,I=P+sA|0,(y=h+Y|0)>>>0>>0&&(I=I+1|0),h=y,I=I+_|0,wA=y=y+z|0,P=jg(iA^y,(_=y>>>0>>0?I+1|0:I)^K,16),I=(I=S)+(S=l)|0,(h=(y=P)+J|0)>>>0>>0&&(I=I+1|0),J=h,y=I,h=jg(h^QA,I^fA,63),K=I=l,n[w+32>>2]=h,n[w+36>>2]=I,z=k,QA=t,iA=s,I=k+B|0,(s=(w=U)+(t=eA)|0)>>>0>>0&&(I=I+1|0),I=I+q|0,q=t=s+X|0,t=jg(iA^t,(s=t>>>0>>0?I+1|0:I)^x,32),x=w,I=(w=l)+QA|0,(k=t+V|0)>>>0>>0&&(I=I+1|0),U=k,V=z=jg(x^k,I^z,24),QA=k=l,x=U,X=I,U=t,I=s+rA|0,(s=(t=aA)+q|0)>>>0>>0&&(I=I+1|0),I=I+k|0,q=t=s+z|0,U=jg(U^t,(z=t>>>0>>0?I+1|0:I)^w,16),I=(I=X)+(X=l)|0,(s=(t=U)+x|0)>>>0>>0&&(I=I+1|0),x=s,w=I,k=jg(s^V,I^QA,63),t=l,V=v,QA=c,I=v+cA|0,(b=(s=b)+(c=f)|0)>>>0>>0&&(I=I+1|0),I=I+gA|0,b=c=b+T|0,c=jg(QA^c,(v=c>>>0>>0?I+1|0:I)^Z,32),Z=s,I=(s=l)+u|0,(M=c+M|0)>>>0>>0&&(I=I+1|0),u=M,M=I,T=V=jg(Z^u,I^V,24),QA=I=l,Z=I,gA=c,I=v+tA|0,(c=p+b|0)>>>0>>0&&(I=I+1|0),p=c,I=I+Z|0,fA=c=c+V|0,gA=jg(gA^c,(v=c>>>0

>>0?I+1|0:I)^s,16),I=M+(Z=l)|0,(c=u+gA|0)>>>0>>0&&(I=I+1|0),b=c,u=I,p=jg(c^T,I^QA,63),c=l,M=m,I=m+i|0,(m=(s=G)+(G=R)|0)>>>0>>0&&(I=I+1|0),I=I+IA|0,IA=G=m+N|0,N=jg(G^oA,(m=H)^(H=G>>>0>>0?I+1|0:I),32),V=s,I=W+(s=l)|0,(G=N+AA|0)>>>0>>0&&(I=I+1|0),m=I,W=AA=jg(V^G,I^M,24),V=I=l,M=I,T=N,I=H+e|0,(N=(H=CA)+IA|0)>>>0>>0&&(I=I+1|0),I=I+M|0,M=H=N+AA|0,T=jg(T^H,(N=H>>>0>>0?I+1|0:I)^s,16),I=m+(AA=l)|0,(s=G+T|0)>>>0>>0&&(I=I+1|0),m=s,s^=W,W=I,H=jg(s,I^V,63),s=l,G=F,IA=k,V=t,QA=T,T=k,I=_+Q|0,(_=(k=O)+wA|0)>>>0>>0&&(I=I+1|0),I=I+t|0,t=jg(QA^(T=k=T+_|0),(k=k>>>0<_>>>0?I+1|0:I)^AA,32),I=(QA=l)+u|0,(b=t+b|0)>>>0>>0&&(I=I+1|0),_=I,V=jg(b^IA,I^V,24),AA=I=l,u=I,I=k+g|0,(IA=(k=BA)+T|0)>>>0>>0&&(I=I+1|0),I=I+u|0,wA=k=IA+V|0,oA=jg(t^k,QA^(IA=k>>>0>>0?I+1|0:I),16),u=I=l,n[G+120>>2]=oA,n[G+124>>2]=I,I=I+_|0,(t=b+oA|0)>>>0>>0&&(I=I+1|0),_=t,G=AA,AA=I,G=jg(t^V,G^I,63),k=l,b=c,V=P,t=p,I=z+r|0,(p=L+q|0)>>>0>>0&&(I=I+1|0),P=p,I=I+c|0,q=p=(T=t)+p|0,P=jg(V^p,(c=p>>>0

>>0?I+1|0:I)^S,32),S=t,I=W+(t=l)|0,(p=m+P|0)>>>0>>0&&(I=I+1|0),m=b,b=I,z=S=jg(S^p,m^I,24),W=I=l,m=I,V=P,I=c+EA|0,(P=(c=nA)+q|0)>>>0>>0&&(I=I+1|0),I=I+m|0,m=c=P+S|0,c=jg(V^c,(P=c>>>0

>>0?I+1|0:I)^t,16),I=b+(q=l)|0,(t=c+p|0)>>>0

>>0&&(I=I+1|0),S=t,t^=z,z=I,p=jg(t,I^W,63),b=l,W=H,V=s,T=U,I=v+C|0,(U=(t=$)+fA|0)>>>0>>0&&(I=I+1|0),I=I+s|0,s=t=U+H|0,t=jg(T^t,(U=t>>>0>>0?I+1|0:I)^X,32),I=(I=y)+(y=l)|0,(v=t+J|0)>>>0>>0&&(I=I+1|0),W=X=jg((H=v)^W,I^V,24),V=v=l,J=I,T=t,I=U+yA|0,(t=s+d|0)>>>0>>0&&(I=I+1|0),s=t,I=I+v|0,v=t=t+X|0,s=jg(T^t,(X=t>>>0>>0?I+1|0:I)^y,16),U=W,I=(I=J)+(J=l)|0,(y=(t=s)+H|0)>>>0>>0&&(I=I+1|0),W=y,t=I,U=jg(U^y,I^V,63),H=l,V=h,T=K,iA=gA,I=N+K|0,(y=h+M|0)>>>0>>0&&(I=I+1|0),h=y,I=I+(QA=fA=n[F+156>>2])|0,I=(y=(gA=n[F+152>>2])+y|0)>>>0>>0?I+1|0:I,h=y,K=I,y=jg(iA^y,I^Z,32),M=t,I=(t=l)+w|0,(x=y+x|0)>>>0>>0&&(I=I+1|0),V=N=jg((w=x)^V,I^T,24),QA=T=l,x=I,hA=y,I=K+T|0,(y=h+N|0)>>>0>>0&&(I=I+1|0),h=y,I=I+(iA=tA=n[F+236>>2])|0,K=y=(Z=n[F+232>>2])+y|0,t=jg(hA^y,(N=y>>>0>>0?I+1|0:I)^t,16),y=V,I=(I=x)+(x=l)|0,(w=t+w|0)>>>0>>0&&(I=I+1|0),V=w,T=I,QA=jg(y^w,I^QA,63),iA=I=l,y=I,w=c,I=IA+cA|0,(c=f+wA|0)>>>0>>0&&(I=I+1|0),I=I+y|0,IA=f=c+QA|0,f=jg(w^f,(y=f>>>0>>0?I+1|0:I)^q,32),c=F,I=(w=l)+M|0,(M=f+W|0)>>>0>>0&&(I=I+1|0),QA=W=jg(QA^(h=M),I^iA,24),cA=M=l,q=I,iA=f,I=y+EA|0,(y=(f=nA)+IA|0)>>>0>>0&&(I=I+1|0),I=I+M|0,M=f=y+W|0,w=jg(iA^f,(W=f>>>0>>0?I+1|0:I)^w,16),I=(I=q)+(q=l)|0,(y=(f=w)+h|0)>>>0>>0&&(I=I+1|0),IA=y,f=y^QA,QA=I,y=jg(f,I^cA,63),h=I=l,n[c+32>>2]=y,n[c+36>>2]=I,iA=s,I=C+(c=k)|0,(G=(f=G)+(s=$)|0)>>>0>>0&&(I=I+1|0),I=I+P|0,m=jg(iA^(P=s=G+m|0),(s=s>>>0>>0?I+1|0:I)^J,32),k=f,I=T+(f=l)|0,(G=m+V|0)>>>0>>0&&(I=I+1|0),J=c,c=I,V=J=jg(k^G,J^I,24),cA=I=l,k=I,T=m,I=s+i|0,(m=(s=R)+P|0)>>>0>>0&&(I=I+1|0),I=I+k|0,wA=s=m+J|0,T=jg(T^s,(m=s>>>0>>0?I+1|0:I)^f,16),I=c+(P=l)|0,(f=G+T|0)>>>0>>0&&(I=I+1|0),J=f,c=f^V,V=I,G=jg(c,I^cA,63),k=l,iA=t,I=sA+(c=b)|0,(t=Y+(f=p)|0)>>>0>>0&&(I=I+1|0),I=I+X|0,s=I=(t=t+v|0)>>>0>>0?I+1|0:I,b=jg(iA^t,I^x,32),v=f,I=AA+(f=l)|0,(p=b+_|0)>>>0<_>>>0&&(I=I+1|0),_=c,c=I,x=v=jg(v^p,_^I,24),_=I=l,Y=I,I=s+r|0,(s=t+L|0)>>>0>>0&&(I=I+1|0),I=I+Y|0,cA=t=s+v|0,AA=jg(v=t^b,(b=t>>>0>>0?I+1|0:I)^f,16),I=c+(v=l)|0,(f=p+AA|0)>>>0

>>0&&(I=I+1|0),Y=f,c=I,L=jg(f^x,I^_,63),f=l,I=yA+(s=H)|0,(p=d+(t=U)|0)>>>0>>0&&(I=I+1|0),I=I+N|0,d=p=p+K|0,H=jg(p^oA,(H=u)^(u=p>>>0>>0?I+1|0:I),32),U=t,I=z+(t=l)|0,(p=H+S|0)>>>0>>0&&(I=I+1|0),_=s,s=I,x=K=jg(U^p,_^I,24),N=I=l,U=I,_=H,I=u+fA|0,(u=d+gA|0)>>>0>>0&&(I=I+1|0),H=u,I=I+U|0,I=(u=u+K|0)>>>0>>0?I+1|0:I,H=u,d=I,X=jg(_^u,I^t,16),I=s+(U=l)|0,(t=p+X|0)>>>0

>>0&&(I=I+1|0),K=t,s=I,u=jg(t^x,I^N,63),t=l,p=F,x=G,N=k,_=c,I=k+W|0,(c=G+M|0)>>>0>>0&&(I=I+1|0),G=c,I=I+(S=n[F+164>>2])|0,M=c=c+n[F+160>>2]|0,c=jg(c^X,(k=U)^(U=c>>>0>>0?I+1|0:I),32),I=(I=_)+(_=l)|0,(G=c+Y|0)>>>0>>0&&(I=I+1|0),k=I,N=jg(G^x,I^N,24),x=I=l,Y=I,I=U+tA|0,(U=M+Z|0)>>>0>>0&&(I=I+1|0),M=U,I=I+Y|0,gA=U=U+N|0,z=jg(c^U,_^(M=U>>>0>>0?I+1|0:I),16),Y=I=l,n[p+120>>2]=z,n[p+124>>2]=I,I=I+k|0,(c=G+z|0)>>>0>>0&&(I=I+1|0),G=c,k=I,p=jg(c^N,I^x,63),U=l,x=f,_=w,c=L,I=m+rA|0,(L=(w=aA)+wA|0)>>>0>>0&&(I=I+1|0),I=I+f|0,f=jg(_^(Z=w=(S=c)+L|0),(w=w>>>0>>0?I+1|0:I)^q,32),m=c,I=(c=l)+s|0,(L=f+K|0)>>>0>>0&&(I=I+1|0),N=K=jg(m^(s=L),I^x,24),_=L=l,m=I,S=f,I=w+B|0,(w=(f=eA)+Z|0)>>>0>>0&&(I=I+1|0),I=I+L|0,K=f=w+K|0,f=jg(S^f,(x=f>>>0>>0?I+1|0:I)^c,16),I=(I=m)+(m=l)|0,(s=(c=f)+s|0)>>>0>>0&&(I=I+1|0),Z=s,c=I,s=jg(s^N,I^_,63),w=l,L=u,N=t,_=u,I=b+e|0,(b=(u=CA)+cA|0)>>>0>>0&&(I=I+1|0),I=I+t|0,X=u=_+b|0,_=jg(u^T,(t=u>>>0>>0?I+1|0:I)^P,32),S=L,I=QA+(u=l)|0,(L=_+IA|0)>>>0>>0&&(I=I+1|0),b=I,q=N=jg(S^L,I^N,24),S=I=l,P=I,T=N,I=t+Q|0,(N=(t=O)+X|0)>>>0>>0&&(I=I+1|0),I=I+P|0,P=t=T+N|0,W=jg(t^_,(N=t>>>0>>0?I+1|0:I)^u,16),I=b+(_=l)|0,(t=L+W|0)>>>0>>0&&(I=I+1|0),b=t,t=I,u=jg(b^q,I^S,63),L=l,q=h,I=h+g|0,(h=(X=y)+(y=BA)|0)>>>0>>0&&(I=I+1|0),I=I+d|0,h=I=(y=h+H|0)>>>0>>0?I+1|0:I,S=jg(y^AA,I^v,32),H=t,I=V+(t=l)|0,(v=J+S|0)>>>0>>0&&(I=I+1|0),d=I,q=J=jg(v^X,I^q,24),IA=I=l,I=I+h|0,(h=y+J|0)>>>0>>0&&(I=I+1|0),I=I+(X=n[F+204>>2])|0,J=y=h+n[F+200>>2]|0,AA=jg(y^S,(X=y>>>0>>0?I+1|0:I)^t,16),y=q,I=d+(q=l)|0,(t=v+AA|0)>>>0>>0&&(I=I+1|0),h=t,v=I,d=jg(y^t,I^IA,63),S=I=l,t=I,V=f,I=M+EA|0,(y=(f=nA)+gA|0)>>>0>>0&&(I=I+1|0),I=I+t|0,M=f=y+d|0,f=jg(V^f,(y=f>>>0>>0?I+1|0:I)^m,32),t=F,I=(I=H)+(H=l)|0,(m=f+b|0)>>>0>>0&&(I=I+1|0),b=m,m=I,V=S=jg(d^b,S^I,24),T=I=l,d=I,IA=f,I=y+B|0,(y=(f=eA)+M|0)>>>0>>0&&(I=I+1|0),I=I+d|0,d=f=y+S|0,IA=jg(IA^f,(S=H)^(H=f>>>0>>0?I+1|0:I),16),I=m+(M=l)|0,(f=b+IA|0)>>>0>>0&&(I=I+1|0),b=f,m=I,f=jg(f^V,I^T,63),y=I=l,n[t+32>>2]=f,n[t+36>>2]=I,S=U,I=U+g|0,(U=(t=p)+(p=BA)|0)>>>0

>>0&&(I=I+1|0),I=I+x|0,K=jg((x=p=U+K|0)^W,(p=p>>>0>>0?I+1|0:I)^_,32),_=t,I=v+(t=l)|0,(U=h+K|0)>>>0>>0&&(I=I+1|0),h=U,U=I,S=_=jg(_^h,I^S,24),V=I=l,v=I,W=K,I=p+e|0,(K=(p=CA)+x|0)>>>0

>>0&&(I=I+1|0),I=I+v|0,T=p=K+_|0,W=jg(W^p,(v=p>>>0>>0?I+1|0:I)^t,16),I=U+(K=l)|0,(t=h+W|0)>>>0>>0&&(I=I+1|0),U=t,x=I,h=jg(t^S,I^V,63),p=l,_=w,I=w+Q|0,(w=(t=s)+(s=O)|0)>>>0>>0&&(I=I+1|0),I=I+N|0,w=I=(s=w+P|0)>>>0

>>0?I+1|0:I,q=jg(s^AA,I^q,32),S=t,I=k+(P=l)|0,(t=G+q|0)>>>0>>0&&(I=I+1|0),G=t,k=I,N=t=jg(S^t,I^_,24),_=I=l,S=q,I=w+I|0,(t=t+s|0)>>>0>>0&&(I=I+1|0),s=t,I=I+(AA=n[F+236>>2])|0,q=t=t+n[F+232>>2]|0,V=jg(S^t,(w=P)^(P=t>>>0>>0?I+1|0:I),16),w=N,I=k+(N=l)|0,(t=G+V|0)>>>0>>0&&(I=I+1|0),G=t,s=I,w=jg(w^t,I^_,63),t=l,k=u,S=c,I=X+(_=L)|0,(c=u+J|0)>>>0>>0&&(I=I+1|0),u=c,I=I+(AA=n[F+164>>2])|0,J=c=c+n[F+160>>2]|0,c=jg(c^z,(u=c>>>0>>0?I+1|0:I)^Y,32),X=k,I=(L=l)+S|0,(k=c+Z|0)>>>0>>0&&(I=I+1|0),Y=k,k=I,X=_=jg(X^Y,I^_,24),S=I=l,Z=I,z=c,I=u+i|0,(u=(c=R)+J|0)>>>0>>0&&(I=I+1|0),I=I+Z|0,gA=c=u+_|0,z=jg(z^c,(Z=c>>>0>>0?I+1|0:I)^L,16),I=k+(J=l)|0,(c=Y+z|0)>>>0>>0&&(I=I+1|0),k=c,c=I,u=jg(k^X,I^S,63),L=l,Y=F,_=h,X=p,S=s,QA=z,I=p+H|0,(s=h+d|0)>>>0>>0&&(I=I+1|0),h=s,I=I+(AA=n[F+132>>2])|0,z=s=s+n[F+128>>2]|0,s=jg(QA^s,(h=s>>>0>>0?I+1|0:I)^J,32),d=_,I=(_=l)+S|0,(H=s+G|0)>>>0>>0&&(I=I+1|0),p=H,H=I,J=jg(d^p,I^X,24),G=I=l,d=I,I=h+rA|0,(X=(h=aA)+z|0)>>>0>>0&&(I=I+1|0),I=I+d|0,QA=h=X+J|0,AA=jg(s^h,_^(d=h>>>0>>0?I+1|0:I),16),s=I=l,n[Y+120>>2]=AA,n[Y+124>>2]=I,I=I+H|0,(h=p+AA|0)>>>0

>>0&&(I=I+1|0),H=h,p=G,G=I,h=jg(h^J,p^I,63),p=l,Y=w,J=t,_=c,S=w,I=v+C|0,(w=(c=$)+T|0)>>>0>>0&&(I=I+1|0),I=I+t|0,X=c=S+w|0,c=jg(c^IA,(w=c>>>0>>0?I+1|0:I)^M,32),S=Y,I=(Y=l)+_|0,(k=(t=c)+k|0)>>>0>>0&&(I=I+1|0),v=I,M=t=jg(S^k,I^J,24),J=I=l,z=c,I=w+I|0,(c=t+X|0)>>>0>>0&&(I=I+1|0),I=I+(S=n[F+156>>2])|0,_=t=c+n[F+152>>2]|0,z=jg(z^t,(X=t>>>0>>0?I+1|0:I)^Y,16),I=v+(Y=l)|0,(t=k+z|0)>>>0>>0&&(I=I+1|0),k=t,v=I,c=jg(t^M,I^J,63),w=l,I=P+(M=L)|0,(u=q+(t=u)|0)>>>0>>0&&(I=I+1|0),L=u,I=I+(J=n[F+204>>2])|0,L=I=(u=u+n[F+200>>2]|0)>>>0>>0?I+1|0:I,J=jg(u^W,I^K,32),S=t,I=m+(P=l)|0,(t=b+J|0)>>>0>>0&&(I=I+1|0),b=t,m=I,K=t=jg(S^t,I^M,24),M=I=l,q=J,I=L+I|0,(t=t+u|0)>>>0>>0&&(I=I+1|0),u=t,I=I+(S=n[F+148>>2])|0,J=t=t+n[F+144>>2]|0,W=jg(q^t,(S=P)^(P=t>>>0>>0?I+1|0:I),16),u=K,I=m+(K=l)|0,(t=b+W|0)>>>0>>0&&(I=I+1|0),b=I,u=jg(u^t,I^M,63),L=l,m=f,M=y,I=y+Z|0,(y=f+gA|0)>>>0>>0&&(I=I+1|0),I=I+(q=n[F+196>>2])|0,q=f=y+n[F+192>>2]|0,N=jg(f^V,(y=f>>>0>>0?I+1|0:I)^N,32),S=m,I=x+(m=l)|0,(f=U+N|0)>>>0>>0&&(I=I+1|0),U=f,M=f=jg(S^f,I^M,24),Z=I,V=n[F+220>>2],S=N,I=(x=l)+y|0,(y=f+q|0)>>>0>>0&&(I=I+1|0),I=I+(IA=V)|0,q=f=(N=n[F+216>>2])+y|0,y=jg(S^f,(T=m)^(m=f>>>0>>0?I+1|0:I),16),S=M,I=(M=l)+Z|0,(U=(f=y)+U|0)>>>0>>0&&(I=I+1|0),f=x,x=I,Z=f=jg(S^U,f^I,63),S=I=l,I=d+I|0,(d=f+QA|0)>>>0>>0&&(I=I+1|0),I=I+(T=n[F+236>>2])|0,T=f=d+n[F+232>>2]|0,IA=jg(f^z,(IA=Y)^(Y=f>>>0>>0?I+1|0:I),32),I=b+(d=l)|0,(f=t+IA|0)>>>0>>0&&(I=I+1|0),b=f,t=f^Z,Z=I,f=jg(t,I^S,24),t=F,S=f,z=I=l,I=Y+I|0,(Y=f+T|0)>>>0>>0&&(I=I+1|0),I=I+V|0,V=f=Y+N|0,IA=jg(f^IA,(Y=d)^(d=f>>>0>>0?I+1|0:I),16),I=Z+(N=l)|0,(f=b+IA|0)>>>0>>0&&(I=I+1|0),b=f,Z=I,f=jg(f^S,I^z,63),Y=I=l,n[t+32>>2]=f,n[t+36>>2]=I,S=p,I=p+rA|0,(p=(t=h)+(h=aA)|0)>>>0>>0&&(I=I+1|0),I=I+X|0,_=jg((X=h=p+_|0)^W,(h=h>>>0<_>>>0?I+1|0:I)^K,32),K=t,I=x+(t=l)|0,(p=U+_|0)>>>0>>0&&(I=I+1|0),U=I,z=x=jg(K^p,I^S,24),W=I=l,K=I,S=x,I=h+Q|0,(x=(h=O)+X|0)>>>0>>0&&(I=I+1|0),I=I+K|0,T=h=S+x|0,S=jg(h^_,(K=h>>>0>>0?I+1|0:I)^t,16),I=U+(x=l)|0,(t=p+S|0)>>>0

>>0&&(I=I+1|0),_=t,X=I,h=jg(t^z,I^W,63),t=l,U=w,z=y,I=w+EA|0,(y=(p=c)+(c=nA)|0)>>>0>>0&&(I=I+1|0),I=I+P|0,I=(c=y+J|0)>>>0>>0?I+1|0:I,J=c,c=I,P=jg(z^J,I^M,32),I=G+(y=l)|0,(w=H+P|0)>>>0>>0&&(I=I+1|0),H=w^p,p=I,M=H=jg(H,I^U,24),W=I=l,U=I,G=H,I=c+g|0,(H=(c=BA)+J|0)>>>0>>0&&(I=I+1|0),I=I+U|0,I=(c=G+H|0)>>>0>>0?I+1|0:I,H=c,G=I,z=jg(c^P,I^y,16),I=p+(P=l)|0,(c=w+z|0)>>>0>>0&&(I=I+1|0),p=c,U=I,y=jg(c^M,I^W,63),c=l,I=m+(M=L)|0,(u=q+(w=u)|0)>>>0>>0&&(I=I+1|0),L=u,I=I+(J=n[F+156>>2])|0,L=I=(u=u+n[F+152>>2]|0)>>>0>>0?I+1|0:I,J=jg(u^AA,I^s,32),m=w,I=v+(w=l)|0,(s=k+J|0)>>>0>>0&&(I=I+1|0),k=s,v=I,m=s=jg(m^s,I^M,24),M=I=l,I=L+I|0,(s=s+u|0)>>>0>>0&&(I=I+1|0),u=s,I=I+(AA=n[F+204>>2])|0,gA=s=s+n[F+200>>2]|0,q=jg(q=s^J,(J=s>>>0>>0?I+1|0:I)^w,16),I=v+(L=l)|0,(s=k+q|0)>>>0>>0&&(I=I+1|0),k=s,v=I,s=jg(s^m,I^M,63),u=l,w=F,m=h,M=t,W=h,I=d+B|0,(d=(h=eA)+V|0)>>>0>>0&&(I=I+1|0),I=I+t|0,d=jg((t=h=W+d|0)^q,(h=L)^(L=t>>>0>>0?I+1|0:I),32),I=U+(q=l)|0,(h=p+d|0)>>>0

>>0&&(I=I+1|0),p=I,M=jg(h^m,I^M,24),I=L+(U=l)|0,(L=t+M|0)>>>0>>0&&(I=I+1|0),t=(t=L)+(L=n[F+128>>2])|0,I=n[F+132>>2]+I|0,V=t,AA=jg(d^t,q^(m=t>>>0>>0?I+1|0:I),16),L=I=l,n[w+120>>2]=AA,n[w+124>>2]=I,I=p+I|0,(t=h+AA|0)>>>0>>0&&(I=I+1|0),d=t,t^=M,M=I,w=jg(t,I^U,63),h=l,p=c,t=y,I=K+e|0,(U=(y=CA)+T|0)>>>0>>0&&(I=I+1|0),I=I+c|0,q=y=(q=t)+U|0,K=jg(y^IA,(c=y>>>0>>0?I+1|0:I)^N,32),N=t,I=v+(y=l)|0,(t=k+K|0)>>>0>>0&&(I=I+1|0),U=t,k=p,p=I,k=t=jg(N^t,k^I,24),v=I=l,T=K,I=c+I|0,(c=t+q|0)>>>0>>0&&(I=I+1|0),I=I+(W=n[F+164>>2])|0,K=t=c+n[F+160>>2]|0,c=jg(T^t,(N=t>>>0>>0?I+1|0:I)^y,16),q=k,I=p+(y=l)|0,(t=c+U|0)>>>0>>0&&(I=I+1|0),k=t,p=v,v=I,p=jg(q^t,p^I,63),U=l,q=u,I=u+G|0,(s=H+(t=s)|0)>>>0>>0&&(I=I+1|0),u=s,I=I+(W=n[F+196>>2])|0,x=jg((T=S)^(S=s=s+n[F+192>>2]|0),(s=s>>>0>>0?I+1|0:I)^x,32),G=t,I=Z+(t=l)|0,(u=b+x|0)>>>0>>0&&(I=I+1|0),H=I,Z=b=jg(G^u,I^q,24),q=I=l,G=I,T=b,I=s+C|0,(b=(s=$)+S|0)>>>0>>0&&(I=I+1|0),I=I+G|0,G=s=T+b|0,W=jg(s^x,(b=s>>>0>>0?I+1|0:I)^t,16),I=H+(x=l)|0,(t=u+W|0)>>>0>>0&&(I=I+1|0),H=t,t=I,s=jg(H^Z,I^q,63),u=l,Z=f,q=Y,I=Y+J|0,(Y=f+gA|0)>>>0>>0&&(I=I+1|0),I=I+(S=n[F+148>>2])|0,S=jg((T=z)^(z=f=Y+n[F+144>>2]|0),(f=f>>>0>>0?I+1|0:I)^P,32),Y=t,I=X+(t=l)|0,(P=_+S|0)>>>0<_>>>0&&(I=I+1|0),_=P^Z,Z=I,X=_=jg(_,I^q,24),q=I=l,J=I,T=_,I=f+i|0,(_=(f=R)+z|0)>>>0>>0&&(I=I+1|0),I=I+J|0,J=f=T+_|0,IA=jg(f^S,(_=f>>>0<_>>>0?I+1|0:I)^t,16),t=X,I=Z+(X=l)|0,(f=P+IA|0)>>>0

>>0&&(I=I+1|0),P=f,Z=I,q=jg(t^f,I^q,63),S=I=l,f=I,T=c,I=m+C|0,(c=(t=$)+V|0)>>>0>>0&&(I=I+1|0),I=I+f|0,z=t=c+q|0,f=jg(T^t,(c=t>>>0>>0?I+1|0:I)^y,32),t=F,I=(y=l)+Y|0,(H=f+H|0)>>>0>>0&&(I=I+1|0),Y=H,H=I,S=q=jg(q^Y,S^I,24),T=I=l,m=I,V=f,I=c+e|0,(c=(f=CA)+z|0)>>>0>>0&&(I=I+1|0),I=I+m|0,cA=f=c+q|0,V=jg(V^f,(m=f>>>0>>0?I+1|0:I)^y,16),c=S,I=H+(q=l)|0,(f=Y+V|0)>>>0>>0&&(I=I+1|0),S=f,z=I,y=jg(c^f,I^T,63),Y=I=l,n[t+32>>2]=y,n[t+36>>2]=I,I=Q+(t=h)|0,(w=(f=w)+(c=O)|0)>>>0>>0&&(I=I+1|0),I=I+N|0,w=I=(c=w+K|0)>>>0>>0?I+1|0:I,x=jg(c^W,I^x,32),N=f,I=Z+(h=l)|0,(f=P+x|0)>>>0

>>0&&(I=I+1|0),H=f,P=t,t=I,P=f=jg(N^f,P^I,24),K=I=l,I=w+I|0,(f=c+f|0)>>>0>>0&&(I=I+1|0),I=I+(N=n[F+204>>2])|0,W=f=(c=f)+n[F+200>>2]|0,gA=jg(w=f^x,(x=f>>>0>>0?I+1|0:I)^h,16),c=P,I=t+(P=l)|0,(f=H+gA|0)>>>0>>0&&(I=I+1|0),Z=f,t=K,K=I,w=jg(c^f,t^I,63),f=l,I=b+(c=U)|0,(h=G+(t=p)|0)>>>0>>0&&(I=I+1|0),p=h,I=I+(H=n[F+220>>2])|0,p=I=(h=h+n[F+216>>2]|0)>>>0

>>0?I+1|0:I,N=jg(h^IA,I^X,32),G=t,I=M+(U=l)|0,(t=N+d|0)>>>0>>0&&(I=I+1|0),H=t,b=c,c=I,G=t=jg(G^t,b^I,24),b=I=l,I=p+I|0,(t=t+h|0)>>>0>>0&&(I=I+1|0),h=t,I=I+(M=n[F+156>>2])|0,IA=t=t+n[F+152>>2]|0,QA=jg(t^N,(d=t>>>0>>0?I+1|0:I)^U,16),I=c+(M=l)|0,(t=H+QA|0)>>>0>>0&&(I=I+1|0),p=t,U=I,t=jg(t^G,I^b,63),h=l,H=u,I=u+_|0,(s=J+(c=s)|0)>>>0>>0&&(I=I+1|0),u=s,I=I+(G=n[F+132>>2])|0,u=I=(s=s+n[F+128>>2]|0)>>>0>>0?I+1|0:I,N=jg(s^AA,I^L,32),b=c,I=v+(L=l)|0,(c=k+N|0)>>>0>>0&&(I=I+1|0),G=c,k=H,H=I,k=c=jg(b^c,k^I,24),b=I=l,I=u+I|0,(c=c+s|0)>>>0>>0&&(I=I+1|0),s=c,I=I+(J=n[F+196>>2])|0,v=c=c+n[F+192>>2]|0,J=jg(u=c^N,(N=c>>>0>>0?I+1|0:I)^L,16),I=H+(L=l)|0,(c=G+J|0)>>>0>>0&&(I=I+1|0),H=c,G=I,u=jg(c^k,I^b,63),c=l,s=F,k=w,b=f,_=w,I=m+EA|0,(m=(w=nA)+cA|0)>>>0>>0&&(I=I+1|0),I=I+f|0,_=jg((f=w=_+m|0)^J,(w=L)^(L=f>>>0>>0?I+1|0:I),32),I=U+(AA=l)|0,(w=p+_|0)>>>0

>>0&&(I=I+1|0),p=w,U=I,X=jg(w^k,I^b,24),k=F,w=n[F+144>>2],I=L+(b=l)|0,(L=f+X|0)>>>0>>0&&(I=I+1|0),L=(f=w)+L|0,I=(m=n[k+148>>2])+I|0,T=jg(k=_^(J=L),AA^(_=J>>>0>>0?I+1|0:I),16),L=I=l,n[s+120>>2]=T,n[s+124>>2]=I,k=X,I=U+I|0,(f=p+T|0)>>>0

>>0&&(I=I+1|0),X=f,s=I,p=jg(k^f,I^b,63),U=l,f=t,k=h,I=h+x|0,(h=t+W|0)>>>0>>0&&(I=I+1|0),I=I+(b=n[F+236>>2])|0,b=jg((x=t=h+n[F+232>>2]|0)^V,(t=t>>>0>>0?I+1|0:I)^q,32),q=f,I=G+(f=l)|0,(h=b+H|0)>>>0>>0&&(I=I+1|0),H=I,q=k=jg(q^h,I^k,24),W=I=l,G=I,V=b,b=k,I=t+rA|0,(k=(t=aA)+x|0)>>>0>>0&&(I=I+1|0),I=I+G|0,b=t=b+k|0,t=jg(V^t,(x=t>>>0>>0?I+1|0:I)^f,16),G=q,I=H+(q=l)|0,(f=t+h|0)>>>0>>0&&(I=I+1|0),AA=f,H=W,W=I,h=jg(G^f,H^I,63),H=l,G=c,f=u,I=d+g|0,(k=(u=BA)+IA|0)>>>0>>0&&(I=I+1|0),I=I+c|0,V=jg((c=u=(V=f)+k|0)^gA,(u=c>>>0>>0?I+1|0:I)^P,32),P=f,I=z+(k=l)|0,(f=S+V|0)>>>0>>0&&(I=I+1|0),d=f,P=f=jg(P^f,I^G,24),S=I,z=I=n[F+164>>2],IA=I,I=u+(G=l)|0,(f=c+f|0)>>>0>>0&&(I=I+1|0),I=I+IA|0,IA=f=(cA=n[F+160>>2])+(c=f)|0,u=jg(u=f^V,(V=f>>>0>>0?I+1|0:I)^k,16),k=P,I=(P=l)+S|0,(c=(f=u)+d|0)>>>0>>0&&(I=I+1|0),f=I,G=jg(k^c,I^G,63),k=l,S=Y,I=Y+i|0,(Y=(d=y)+(y=R)|0)>>>0>>0&&(I=I+1|0),I=I+N|0,M=jg((N=y=Y+v|0)^QA,(y=y>>>0>>0?I+1|0:I)^M,32),I=K+(Y=l)|0,(v=M+Z|0)>>>0>>0&&(I=I+1|0),K=v^d,d=I,gA=Z=jg(K,I^S,24),QA=I=l,K=I,S=M,I=y+B|0,(M=(y=eA)+N|0)>>>0>>0&&(I=I+1|0),I=I+K|0,K=y=M+Z|0,S=jg(S^y,(N=Y)^(Y=y>>>0>>0?I+1|0:I),16),I=d+(M=l)|0,(y=v+S|0)>>>0>>0&&(I=I+1|0),v=I,gA=jg(y^gA,I^QA,63),QA=I=l,d=I,N=t,I=_+i|0,(R=R+J|0)>>>0>>0&&(I=I+1|0),I=I+d|0,d=R=(t=R)+gA|0,R=jg(N^R,(Z=R>>>0>>0?I+1|0:I)^q,32),I=(N=l)+f|0,(t=(f=R)+c|0)>>>0>>0&&(I=I+1|0),c=t,J=I,f=jg(gA^t,QA^I,24),t=F,_=f,q=I=l,gA=R,I=Z+I|0,(R=f+d|0)>>>0>>0&&(I=I+1|0),I=I+m|0,QA=R=(f=R)+w|0,gA=jg(gA^R,(m=R>>>0>>0?I+1|0:I)^N,16),I=J+(d=l)|0,(R=c+gA|0)>>>0>>0&&(I=I+1|0),Z=R,c=I,R=jg(R^_,I^q,63),w=I=l,n[t+32>>2]=R,n[t+36>>2]=I,_=u,I=x+(t=U)|0,(u=b+(f=p)|0)>>>0>>0&&(I=I+1|0),p=u,I=I+(N=n[F+196>>2])|0,P=jg(_^(x=u=u+n[F+192>>2]|0),(u=u>>>0

>>0?I+1|0:I)^P,32),U=f,I=v+(p=l)|0,(f=y+P|0)>>>0>>0&&(I=I+1|0),y=f,v=t,t=I,U=f=jg(U^f,v^I,24),b=I=l,I=u+I|0,(u=f+x|0)>>>0>>0&&(I=I+1|0),I=I+z|0,q=f=u+cA|0,z=jg(f^P,(v=f>>>0>>0?I+1|0:I)^p,16),I=t+(P=l)|0,(f=y+z|0)>>>0>>0&&(I=I+1|0),x=f,y=I,u=jg(f^U,I^b,63),f=l,p=h,I=rA+(U=H)|0,(h=(t=aA)+h|0)>>>0>>0&&(I=I+1|0),I=I+V|0,b=t=h+IA|0,t=jg(t^S,(h=t>>>0>>0?I+1|0:I)^M,32),_=p,I=(I=s)+(s=l)|0,(H=t+X|0)>>>0>>0&&(I=I+1|0),p=H,H=U,U=I,N=M=jg(_^p,H^I,24),J=I=l,H=I,_=t,I=h+C|0,(h=(t=$)+b|0)>>>0>>0&&(I=I+1|0),I=I+H|0,H=t=h+M|0,S=jg(_^t,(b=t>>>0>>0?I+1|0:I)^s,16),I=U+(M=l)|0,(t=p+S|0)>>>0

>>0&&(I=I+1|0),U=t,s=I,t=jg(t^N,I^J,63),h=l,N=k,I=k+g|0,(k=(p=G)+(G=BA)|0)>>>0>>0&&(I=I+1|0),I=I+Y|0,J=G=k+K|0,K=jg(G^T,(k=L)^(L=G>>>0>>0?I+1|0:I),32),k=p,I=W+(p=l)|0,(Y=K+AA|0)>>>0>>0&&(I=I+1|0),G=I,_=N=jg(k^Y,I^N,24),AA=I=l,k=I,X=K,I=L+B|0,(K=(L=eA)+J|0)>>>0>>0&&(I=I+1|0),I=I+k|0,IA=L=K+N|0,X=jg(X^L,(k=L>>>0>>0?I+1|0:I)^p,16),I=G+(K=l)|0,(L=Y+X|0)>>>0>>0&&(I=I+1|0),N=I,L=jg((G=L)^_,I^AA,63),p=l,Y=F,J=u,_=f,V=u,I=m+e|0,(m=(u=CA)+QA|0)>>>0>>0&&(I=I+1|0),I=I+f|0,m=I=(u=V+m|0)>>>0>>0?I+1|0:I,f=jg(u^X,I^K,32),I=(X=l)+s|0,(U=f+U|0)>>>0>>0&&(I=I+1|0),AA=U,U=I,J=jg(AA^J,I^_,24),I=m+(K=l)|0,(s=u+J|0)>>>0>>0&&(I=I+1|0),s=(u=n[F+216>>2])+s|0,I=n[F+220>>2]+I|0,V=s,s=jg(f^s,X^(m=s>>>0>>0?I+1|0:I),16),u=I=l,n[Y+120>>2]=s,n[Y+124>>2]=I,_=J,I=I+U|0,(Y=(f=s)+AA|0)>>>0>>0&&(I=I+1|0),J=Y,f=K,K=I,f=jg(_^Y,f^I,63),Y=l,U=t,_=h,I=h+v|0,(h=t+q|0)>>>0>>0&&(I=I+1|0),I=I+(X=n[F+204>>2])|0,d=jg((X=t=h+n[F+200>>2]|0)^gA,(t=t>>>0>>0?I+1|0:I)^d,32),v=U,I=N+(h=l)|0,(U=G+d|0)>>>0>>0&&(I=I+1|0),G=I,_=N=jg(v^U,I^_,24),q=I=l,v=I,W=d,I=t+Q|0,(d=(t=O)+X|0)>>>0>>0&&(I=I+1|0),I=I+v|0,T=t=d+N|0,AA=jg(W^t,(v=t>>>0>>0?I+1|0:I)^h,16),I=G+(d=l)|0,(t=U+AA|0)>>>0>>0&&(I=I+1|0),G=t,t=I,h=jg(G^_,I^q,63),U=l,_=p,X=c,q=I=n[F+156>>2],c=I,I=p+b|0,(L=H+(N=L)|0)>>>0>>0&&(I=I+1|0),I=I+c|0,c=jg((W=z)^(z=L=(gA=n[F+152>>2])+(p=L)|0),(L=L>>>0

>>0?I+1|0:I)^P,32),I=(p=l)+X|0,(b=c+Z|0)>>>0>>0&&(I=I+1|0),H=b,b=I,N=Z=jg(H^N,I^_,24),_=I=l,P=I,X=c,I=L+EA|0,(L=(c=nA)+z|0)>>>0>>0&&(I=I+1|0),I=I+P|0,P=c=L+Z|0,W=jg(X^c,(Z=c>>>0>>0?I+1|0:I)^p,16),X=N,I=b+(N=l)|0,(c=H+W|0)>>>0>>0&&(I=I+1|0),p=c,H=I,c=jg(X^c,I^_,63),L=l,_=w,X=y,z=S,I=w+k|0,(w=(b=R)+IA|0)>>>0>>0&&(I=I+1|0),I=I+(y=n[F+236>>2])|0,S=R=w+n[F+232>>2]|0,y=jg(z^R,(w=R>>>0>>0?I+1|0:I)^M,32),R=b,I=(k=l)+X|0,(b=y+x|0)>>>0>>0&&(I=I+1|0),M=R=jg(R^b,I^_,24),_=I,z=n[F+132>>2],QA=y,I=(x=l)+w|0,(w=R+S|0)>>>0>>0&&(I=I+1|0),I=I+(IA=z)|0,X=R=(y=n[F+128>>2])+w|0,w=jg(QA^R,(S=k)^(k=R>>>0>>0?I+1|0:I),16),R=M,I=(M=l)+_|0,(b=w+b|0)>>>0>>0&&(I=I+1|0),_=x,x=I,_=R=jg(R^b,_^I,63),S=I=l,IA=AA,I=m+I|0,(m=R+V|0)>>>0>>0&&(I=I+1|0),I=I+z|0,AA=R=y+m|0,z=jg(IA^R,(y=R>>>0>>0?I+1|0:I)^d,32),R=F,I=H+(m=l)|0,(H=p+z|0)>>>0

>>0&&(I=I+1|0),p=H,H=I,S=_=jg(p^_,I^S,24),V=I=l,d=I,IA=_,I=y+g|0,(_=(y=BA)+AA|0)>>>0>>0&&(I=I+1|0),I=I+d|0,d=y=IA+_|0,IA=jg(y^z,(IA=m)^(m=y>>>0<_>>>0?I+1|0:I),16),AA=S,I=H+(_=l)|0,(y=p+IA|0)>>>0

>>0&&(I=I+1|0),S=y,z=I,y=jg(AA^y,I^V,63),p=I=l,n[R+32>>2]=y,n[R+36>>2]=I,R=f,H=Y,I=Y+v|0,(Y=f+T|0)>>>0>>0&&(I=I+1|0),I=I+(AA=n[F+148>>2])|0,N=jg((AA=f=Y+n[F+144>>2]|0)^W,(f=f>>>0>>0?I+1|0:I)^N,32),v=R,I=x+(Y=l)|0,(R=b+N|0)>>>0>>0&&(I=I+1|0),b=R,R=H,H=I,R=jg(v^b,R^I,24),x=I=l,I=f+I|0,(f=(v=R)+AA|0)>>>0>>0&&(I=I+1|0),I=I+q|0,V=R=f+gA|0,q=jg(q=R^N,(N=R>>>0>>0?I+1|0:I)^Y,16),f=v,I=H+(v=l)|0,(R=b+q|0)>>>0>>0&&(I=I+1|0),H=x,x=I,Y=jg(f^(b=R),H^I,63),H=l,R=h,T=w,I=Z+(f=U)|0,(w=h+P|0)>>>0

>>0&&(I=I+1|0),I=I+(AA=n[F+164>>2])|0,P=jg(T^(Z=w=(h=w)+n[F+160>>2]|0),(w=w>>>0>>0?I+1|0:I)^M,32),U=R,I=K+(R=l)|0,(h=P+J|0)>>>0>>0&&(I=I+1|0),M=f,f=I,M=K=jg(U^h,M^I,24),J=I=l,U=I,W=P,I=w+B|0,(P=(w=eA)+Z|0)>>>0>>0&&(I=I+1|0),I=I+U|0,T=w=P+K|0,W=jg(W^w,(U=w>>>0

>>0?I+1|0:I)^R,16),I=f+(P=l)|0,(R=h+W|0)>>>0>>0&&(I=I+1|0),K=I,R=jg((h=R)^M,I^J,63),w=l,M=c,Z=L,I=L+C|0,(c=(f=$)+c|0)>>>0>>0&&(I=I+1|0),I=I+k|0,k=f=c+X|0,f=jg(f^s,(c=f>>>0>>0?I+1|0:I)^u,32),I=(I=t)+(t=l)|0,(u=f+G|0)>>>0>>0&&(I=I+1|0),s=u,u=I,M=G=jg(s^M,I^Z,24),Z=I=l,L=I,J=f,I=c+rA|0,(c=(f=aA)+k|0)>>>0>>0&&(I=I+1|0),I=I+L|0,G=f=c+G|0,J=jg(J^f,(k=f>>>0>>0?I+1|0:I)^t,16),t=M,I=u+(L=l)|0,(f=s+J|0)>>>0>>0&&(I=I+1|0),M=f,c=I,s=jg(t^f,I^Z,63),f=l,Z=H,I=H+m|0,(Y=d+(u=Y)|0)>>>0>>0&&(I=I+1|0),H=Y,I=I+(X=n[(t=F)+196>>2])|0,I=(Y=Y+n[t+192>>2]|0)>>>0>>0?I+1|0:I,H=L,L=I,d=jg(Y^J,H^I,32),m=u,I=K+(J=l)|0,(u=h+d|0)>>>0>>0&&(I=I+1|0),H=I,K=jg(m^(h=u),I^Z,24),I=L+(m=l)|0,(u=Y+K|0)>>>0>>0&&(I=I+1|0),u=(L=n[F+200>>2])+u|0,I=n[F+204>>2]+I|0,gA=u,AA=jg(d^u,J^(Y=u>>>0>>0?I+1|0:I),16),u=I=l,n[t+120>>2]=AA,n[t+124>>2]=I,I=I+H|0,(t=h+AA|0)>>>0>>0&&(I=I+1|0),H=t,h=m,m=I,t=jg(t^K,h^I,63),L=l,d=w,K=c,I=w+N|0,(w=(h=R)+V|0)>>>0>>0&&(I=I+1|0),I=I+(c=QA=n[F+212>>2])|0,J=R=(Z=n[F+208>>2])+w|0,c=jg(R^IA,(w=R>>>0>>0?I+1|0:I)^_,32),_=h,I=(h=l)+K|0,(K=c+M|0)>>>0>>0&&(I=I+1|0),R=d,d=I,M=R=jg(_^K,R^I,24),N=I=l,_=c,I=w+I|0,(c=R+J|0)>>>0>>0&&(I=I+1|0),I=I+(X=n[F+220>>2])|0,IA=R=c+n[F+216>>2]|0,c=jg(_^R,(J=R>>>0>>0?I+1|0:I)^h,16),w=M,I=d+(M=l)|0,(R=c+K|0)>>>0>>0&&(I=I+1|0),d=R,K=I,w=jg(w^R,I^N,63),h=l,R=s,N=f,_=q,q=s,I=U+EA|0,(U=(s=nA)+T|0)>>>0>>0&&(I=I+1|0),I=I+f|0,q=s=q+U|0,X=jg(_^s,(f=s>>>0>>0?I+1|0:I)^v,32),_=R,I=z+(s=l)|0,(R=S+X|0)>>>0>>0&&(I=I+1|0),v=I,N=R=jg(_^(U=R),I^N,24),_=I=l,S=X,I=f+I|0,(f=R+q|0)>>>0>>0&&(I=I+1|0),I=I+(z=n[F+236>>2])|0,X=R=f+n[F+232>>2]|0,S=jg(S^R,(q=R>>>0>>0?I+1|0:I)^s,16),s=N,I=v+(N=l)|0,(R=U+S|0)>>>0>>0&&(I=I+1|0),U=I,R=jg(s^(f=R),I^_,63),s=l,_=p,I=p+Q|0,(p=(v=y)+(y=O)|0)>>>0>>0&&(I=I+1|0),I=I+k|0,P=jg((z=y=p+G|0)^W,(y=y>>>0>>0?I+1|0:I)^P,32),I=x+(p=l)|0,(G=b+P|0)>>>0>>0&&(I=I+1|0),k=I,x=v=jg(G^v,I^_,24),W=I=l,b=I,_=v,I=y+e|0,(v=(y=CA)+z|0)>>>0>>0&&(I=I+1|0),I=I+b|0,_=jg((z=y=_+v|0)^P,(y=y>>>0>>0?I+1|0:I)^p,16),I=k+(p=l)|0,(k=G+_|0)>>>0>>0&&(I=I+1|0),G=k,k=I,v=jg(G^x,I^W,63),P=I=l,b=I,x=c,I=Y+Q|0,(c=O+gA|0)>>>0>>0&&(I=I+1|0),I=I+b|0,W=O=c+v|0,x=jg(x^O,(c=O>>>0>>0?I+1|0:I)^M,32),I=U+(Y=l)|0,(O=f+x|0)>>>0>>0&&(I=I+1|0),b=I,O=jg(v^(U=O),P^I,24),f=F,P=I=l,I=c+I|0,(c=(v=O)+W|0)>>>0>>0&&(I=I+1|0),I=I+QA|0,W=O=c+Z|0,M=jg(O^x,(c=Y)^(Y=O>>>0>>0?I+1|0:I),16),c=v,I=b+(v=l)|0,(O=U+M|0)>>>0>>0&&(I=I+1|0),b=I,O=jg(c^(U=O),I^P,63),c=I=l,n[f+32>>2]=O,n[f+36>>2]=I,f=t,I=(P=L)+J|0,(L=t+IA|0)>>>0>>0&&(I=I+1|0),I=I+(x=n[F+164>>2])|0,Z=jg((J=t=L+n[F+160>>2]|0)^S,(t=t>>>0>>0?I+1|0:I)^N,32),S=f,I=k+(L=l)|0,(f=G+Z|0)>>>0>>0&&(I=I+1|0),G=f,k=I,P=f=jg(S^f,I^P,24),x=I=l,I=t+I|0,(t=f+J|0)>>>0>>0&&(I=I+1|0),I=I+(S=n[F+196>>2])|0,S=f=t+n[F+192>>2]|0,Z=jg(f^Z,(N=L)^(L=f>>>0>>0?I+1|0:I),16),I=k+(IA=l)|0,(f=G+Z|0)>>>0>>0&&(I=I+1|0),G=f,k=I,x=jg(f^P,I^x,63),f=l,P=h,I=h+q|0,(w=X+(t=w)|0)>>>0>>0&&(I=I+1|0),I=I+(N=n[F+204>>2])|0,N=jg((J=w=(h=w)+n[F+200>>2]|0)^_,(w=w>>>0>>0?I+1|0:I)^p,32),_=t,I=m+(t=l)|0,(h=H+N|0)>>>0>>0&&(I=I+1|0),p=I,P=m=jg(_^h,I^P,24),_=I=l,H=I,I=w+e|0,(w=J+CA|0)>>>0>>0&&(I=I+1|0),I=I+H|0,N=jg((X=CA=w+m|0)^N,(w=X>>>0>>0?I+1|0:I)^t,16),I=p+(H=l)|0,(CA=h+N|0)>>>0>>0&&(I=I+1|0),p=I,CA=jg((h=CA)^P,I^_,63),t=l,m=R,P=s,I=y+s|0,(s=R+z|0)>>>0>>0&&(I=I+1|0),I=I+(J=n[F+236>>2])|0,J=jg((_=R=s+n[F+232>>2]|0)^AA,(R=R>>>0>>0?I+1|0:I)^u,32),I=K+(s=l)|0,(y=d+J|0)>>>0>>0&&(I=I+1|0),u=I,P=d=jg(y^m,I^P,24),q=I=l,m=I,I=R+C|0,(R=_+$|0)>>>0<$>>>0&&(I=I+1|0),I=I+m|0,K=jg((m=$=R+d|0)^J,(d=m>>>0>>0?I+1|0:I)^s,16),I=u+(J=l)|0,($=y+K|0)>>>0>>0&&(I=I+1|0),u=I,R=jg((y=$)^P,I^q,63),s=l,$=F,I=Y+g|0,(Y=W+BA|0)>>>0>>0&&(I=I+1|0),I=I+(P=f)|0,_=EA,EA=I=(BA=Y+x|0)>>>0>>0?I+1|0:I,I=_+I|0,(Y=BA+nA|0)>>>0>>0&&(I=I+1|0),nA=I,EA=jg(K^BA,J^EA,32),I=p+(P=l)|0,(BA=h+EA|0)>>>0>>0&&(I=I+1|0),h=f,f=I,BA=jg((p=BA)^x,h^I,24),I=(K=l)+nA|0,(h=Y+BA|0)>>>0>>0&&(I=I+1|0),n[$>>2]=h,n[$+4>>2]=I,nA=I,$=jg(h^EA,I^P,16),I=l,n[F+120>>2]=$,n[F+124>>2]=I,I=f+I|0,(f=p+$|0)>>>0<$>>>0&&(I=I+1|0),n[F+80>>2]=f,n[F+84>>2]=I,DA=F,uA=jg(f^BA,I^K,63),n[DA+40>>2]=uA,n[F+44>>2]=l,BA=F,f=t,I=t+L|0,(t=($=CA)+S|0)>>>0<$>>>0&&(I=I+1|0),I=I+(EA=n[F+132>>2])|0,t=I=(CA=t+n[F+128>>2]|0)>>>0>>0?I+1|0:I,EA=jg(CA^M,I^v,32),p=$,I=u+(L=l)|0,($=y+EA|0)>>>0>>0&&(I=I+1|0),y=$,$=I,f=jg(p^y,I^f,24),I=t+(u=l)|0,(t=f+CA|0)>>>0>>0&&(I=I+1|0),CA=(p=t)+(t=n[F+144>>2])|0,I=n[F+148>>2]+I|0,I=CA>>>0>>0?I+1|0:I,n[BA+8>>2]=CA,n[BA+12>>2]=I,BA=jg(CA^EA,I^L,16),I=l,n[F+96>>2]=BA,n[F+100>>2]=I,I=I+$|0,($=y+BA|0)>>>0>>0&&(I=I+1|0),n[F+88>>2]=$,n[F+92>>2]=I,DA=F,uA=jg(f^$,I^u,63),n[DA+48>>2]=uA,n[F+52>>2]=l,BA=F,I=s+w|0,(f=R+X|0)>>>0>>0&&(I=I+1|0),I=I+(CA=n[F+220>>2])|0,CA=I=($=f+n[F+216>>2]|0)>>>0>>0?I+1|0:I,I=I+rA|0,(f=$+aA|0)>>>0<$>>>0&&(I=I+1|0),t=f,aA=I,f=jg($^Z,IA^CA,32),u=R,I=b+(R=l)|0,($=f+U|0)>>>0>>0&&(I=I+1|0),CA=I,$=jg(u^(y=$),I^s,24),I=(s=l)+aA|0,(t=t+$|0)>>>0<$>>>0&&(I=I+1|0),n[BA+16>>2]=t,n[BA+20>>2]=I,BA=jg(f^t,I^R,16),I=l,n[F+104>>2]=BA,n[F+108>>2]=I,I=I+CA|0,(CA=y+BA|0)>>>0>>0&&(I=I+1|0),BA=CA,n[F+64>>2]=BA,n[F+68>>2]=I,DA=F,uA=jg($^BA,I^s,63),n[DA+56>>2]=uA,n[F+60>>2]=l,BA=F,aA=c,I=c+B|0,(CA=($=O)+eA|0)>>>0<$>>>0&&(I=I+1|0),I=I+d|0,CA=I=(O=m+CA|0)>>>0>>0?I+1|0:I,eA=jg(O^N,I^H,32),t=$,I=k+(f=l)|0,($=G+eA|0)>>>0>>0&&(I=I+1|0),c=aA,aA=I,R=jg(t^$,c^I,24),I=CA+(t=l)|0,(CA=R+O|0)>>>0>>0&&(I=I+1|0),O=(c=CA)+(CA=n[F+152>>2])|0,I=n[F+156>>2]+I|0,I=O>>>0>>0?I+1|0:I,n[BA+24>>2]=O,n[BA+28>>2]=I,O=jg(O^eA,I^f,16),n[F+112>>2]=O,I=l,n[F+116>>2]=I,I=I+aA|0,(aA=$+O|0)>>>0<$>>>0&&(I=I+1|0),$=aA,n[F+72>>2]=$,n[BA+76>>2]=I,DA=F,uA=jg(R^$,I^t,63),n[DA+32>>2]=uA,n[F+36>>2]=l,I=A,BA=n[F+68>>2]^(a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24)^nA,$=n[F+64>>2]^(a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24)^h,E[0|I]=$,E[I+1|0]=$>>>8,E[I+2|0]=$>>>16,E[I+3|0]=$>>>24,E[I+4|0]=BA,E[I+5|0]=BA>>>8,E[I+6|0]=BA>>>16,E[I+7|0]=BA>>>24,BA=1;I=($=BA<<3)+A|0,aA=$=F+$|0,O=n[$>>2]^(a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24),CA=n[($=$- -64|0)>>2],$=n[$+4>>2]^n[aA+4>>2]^(a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24),aA=O^CA,E[0|I]=aA,E[I+1|0]=aA>>>8,E[I+2|0]=aA>>>16,E[I+3|0]=aA>>>24,E[I+4|0]=$,E[I+5|0]=$>>>8,E[I+6|0]=$>>>16,E[I+7|0]=$>>>24,8!=(0|(BA=BA+1|0)););D=F+256|0}function G(A,I,g,B){var C=0,Q=0,E=0,i=0,a=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0,v=0,S=0,N=0,R=0,M=0,d=0,P=0,J=0,x=0;for(function(A,I){for(var g=0,B=0,C=0,Q=0,E=0;Q=C=(B=g<<3)+A|0,E=zA(I+B|0),n[Q>>2]=E,n[C+4>>2]=l,16!=(0|(g=g+1|0)););}(g,I),I=j(B,A,64),E=n[g>>2],a=n[g+4>>2],B=0;;){if(C=jg(k=n[(Q=I)+32>>2],c=n[Q+36>>2],14),o=l,C=jg(k,c,18)^C,t=l^o,i=E,E=jg(k,c,41)^C,C=(l^t)+a|0,C=(o=i+E|0)>>>0>>0?C+1|0:C,E=o,h=n[Q+48>>2],E=(t=n[(a=34784+(J=B<<3)|0)>>2])+E|0,C=n[a+4>>2]+C|0,C=E>>>0>>0?C+1|0:C,E=(a=h^((_=n[Q+40>>2])^h)&k)+E|0,C=(((y=n[Q+52>>2])^(G=n[Q+44>>2]))&c^y)+C|0,C=E>>>0>>0?C+1|0:C,o=(a=E)+(E=n[Q+56>>2])|0,C=n[Q+60>>2]+C|0,C=o>>>0>>0?C+1|0:C,a=o+(t=n[Q+24>>2])|0,E=C,C=C+n[Q+28>>2]|0,D=C=(i=a)>>>0>>0?C+1|0:C,n[Q+24>>2]=i,n[Q+28>>2]=C,C=jg(f=n[Q>>2],a=n[Q+4>>2],28),t=l,C=jg(f,a,34)^C,s=l^t,t=o+(jg(f,a,39)^C)|0,C=E+(l^s)|0,C=t>>>0>>0?C+1|0:C,o=(r=t)+(t=f&((s=n[Q+16>>2])|(E=n[Q+8>>2]))|E&s)|0,C=(a&((e=n[Q+20>>2])|(w=n[Q+12>>2]))|e&w)+C|0,C=o>>>0>>0?C+1|0:C,t=o,o=C,n[Q+56>>2]=t,n[Q+60>>2]=C,r=s,C=jg(i,D,14),s=l,u=jg(i,D,18)^C,m=l^s,C=((c^G)&D^G)+y|0,(h=(s=(k^_)&i^_)+h|0)>>>0>>0&&(C=C+1|0),s=h,h=jg(i,D,41)^u,C=(l^m)+C|0,C=(s=s+h|0)>>>0>>0?C+1|0:C,s=(u=n[(y=m=(h=(1|B)<<3)+g|0)>>2])+s|0,C=n[y+4>>2]+C|0,C=s>>>0>>0?C+1|0:C,s=(y=n[(h=h+34784|0)>>2])+s|0,C=n[h+4>>2]+C|0,y=C=s>>>0>>0?C+1|0:C,C=C+e|0,(r=(e=s)+r|0)>>>0>>0&&(C=C+1|0),e=r,h=C,n[Q+16>>2]=r,n[Q+20>>2]=C,r=I,C=jg(t,o,28),Q=l,u=jg(t,o,34)^C,p=l^Q,C=((a|w)&o|a&w)+y|0,(s=(Q=(E|f)&t|E&f)+s|0)>>>0>>0&&(C=C+1|0),Q=s,s=jg(t,o,39)^u,C=(l^p)+C|0,C=(Q=Q+s|0)>>>0>>0?C+1|0:C,s=Q,Q=C,n[r+48>>2]=s,n[r+52>>2]=C,u=I,r=E,C=jg(e,h,14),E=l,y=jg(e,h,18)^C,p=l^E,C=((c^D)&h^c)+G|0,(_=(E=(i^k)&e^k)+_|0)>>>0>>0&&(C=C+1|0),y=jg(e,h,41)^y,C=(l^p)+C|0,C=(E=y+_|0)>>>0>>0?C+1|0:C,E=(G=n[(_=S=(y=(2|B)<<3)+g|0)>>2])+E|0,C=n[_+4>>2]+C|0,C=E>>>0>>0?C+1|0:C,E=(_=n[(y=y+34784|0)>>2])+E|0,C=n[y+4>>2]+C|0,y=w,w=C=E>>>0<_>>>0?C+1|0:C,C=y+C|0,(y=E+r|0)>>>0>>0&&(C=C+1|0),r=y,y=C,n[u+8>>2]=r,n[u+12>>2]=C,C=jg(s,Q,28),_=l,G=jg(s,Q,34)^C,_^=l,C=((a|o)&Q|a&o)+w|0,(w=(w=E)+(E=(t|f)&s|t&f)|0)>>>0>>0&&(C=C+1|0),E=w,w=jg(s,Q,39)^G,C=(l^_)+C|0,C=(E=E+w|0)>>>0>>0?C+1|0:C,w=E,E=C,n[u+40>>2]=w,n[u+44>>2]=C,_=I,u=a,C=jg(r,y,14),a=l,G=jg(r,y,18)^C,p=l^a,C=(D^(h^D)&y)+c|0,(c=(a=i^(i^e)&r)+k|0)>>>0>>0&&(C=C+1|0),a=c,c=jg(r,y,41)^G,C=(l^p)+C|0,C=(a=a+c|0)>>>0>>0?C+1|0:C,a=(p=n[(G=k=(c=(3|B)<<3)+g|0)>>2])+a|0,C=n[G+4>>2]+C|0,C=a>>>0

>>0?C+1|0:C,a=(G=n[(c=c+34784|0)>>2])+a|0,C=n[c+4>>2]+C|0,G=C=a>>>0>>0?C+1|0:C,C=C+u|0,(c=a+f|0)>>>0>>0&&(C=C+1|0),u=C,n[_>>2]=c,n[_+4>>2]=C,C=jg(w,E,28),f=l,p=jg(w,E,34)^C,f^=l,C=((Q|o)&E|Q&o)+G|0,(G=(F=a)+(a=(t|s)&w|t&s)|0)>>>0>>0&&(C=C+1|0),a=G,G=jg(w,E,39)^p,C=(l^f)+C|0,f=a=a+G|0,a=C=a>>>0>>0?C+1|0:C,n[_+32>>2]=f,n[_+36>>2]=C,G=o,C=jg(c,u,14),o=l,p=jg(c,u,18)^C,F=l^o,C=D+(h^(y^h)&u)|0,(o=i+(e^(r^e)&c)|0)>>>0>>0&&(C=C+1|0),i=jg(c,u,41)^p,C=(l^F)+C|0,C=(o=i+o|0)>>>0>>0?C+1|0:C,o=(p=n[(D=d=(i=(4|B)<<3)+g|0)>>2])+o|0,C=n[D+4>>2]+C|0,C=o>>>0

>>0?C+1|0:C,o=(D=n[(i=i+34784|0)>>2])+o|0,C=n[i+4>>2]+C|0,i=G,G=C=o>>>0>>0?C+1|0:C,C=i+C|0,(i=o+t|0)>>>0>>0&&(C=C+1|0),D=C,n[_+56>>2]=i,n[_+60>>2]=C,C=jg(f,a,28),t=l,p=jg(f,a,34)^C,t^=l,C=((Q|E)&a|Q&E)+G|0,(G=(F=o)+(o=(s|w)&f|s&w)|0)>>>0>>0&&(C=C+1|0),o=G,G=jg(f,a,39)^p,C=(l^t)+C|0,t=o=o+G|0,o=C=o>>>0>>0?C+1|0:C,n[_+24>>2]=t,n[_+28>>2]=C,G=I,p=Q,C=jg(i,D,14),Q=l,_=jg(i,D,18)^C,F=l^Q,C=h+(y^(y^u)&D)|0,(Q=e+(r^(r^c)&i)|0)>>>0>>0&&(C=C+1|0),e=jg(i,D,41)^_,C=(l^F)+C|0,C=(Q=e+Q|0)>>>0>>0?C+1|0:C,Q=(F=n[(h=_=(e=(5|B)<<3)+g|0)>>2])+Q|0,C=n[h+4>>2]+C|0,C=Q>>>0>>0?C+1|0:C,Q=(h=n[(e=e+34784|0)>>2])+Q|0,C=n[e+4>>2]+C|0,e=p,p=C=Q>>>0>>0?C+1|0:C,C=e+C|0,(e=Q+s|0)>>>0>>0&&(C=C+1|0),h=C,n[G+48>>2]=e,n[G+52>>2]=C,C=jg(t,o,28),s=l,F=jg(t,o,34)^C,s^=l,C=((E|a)&o|E&a)+p|0,(p=(p=Q)+(Q=(f|w)&t|f&w)|0)>>>0>>0&&(C=C+1|0),Q=p,p=jg(t,o,39)^F,C=(l^s)+C|0,s=Q=Q+p|0,Q=C=Q>>>0

>>0?C+1|0:C,n[G+16>>2]=s,n[G+20>>2]=C,p=E,C=jg(e,h,14),E=l,F=jg(e,h,18)^C,N=l^E,C=y+(u^(D^u)&h)|0,(E=r+(c^(i^c)&e)|0)>>>0>>0&&(C=C+1|0),r=jg(e,h,41)^F,C=(l^N)+C|0,C=(E=r+E|0)>>>0>>0?C+1|0:C,E=(F=n[(y=x=(r=(6|B)<<3)+g|0)>>2])+E|0,C=n[y+4>>2]+C|0,C=E>>>0>>0?C+1|0:C,E=(y=n[(r=r+34784|0)>>2])+E|0,C=n[r+4>>2]+C|0,r=p,p=C=E>>>0>>0?C+1|0:C,C=r+C|0,(r=E+w|0)>>>0>>0&&(C=C+1|0),y=C,n[G+40>>2]=r,n[G+44>>2]=C,C=jg(s,Q,28),w=l,F=jg(s,Q,34)^C,w^=l,C=((a|o)&Q|a&o)+p|0,(p=(p=E)+(E=(t|f)&s|t&f)|0)>>>0>>0&&(C=C+1|0),E=p,p=jg(s,Q,39)^F,C=(l^w)+C|0,w=E=E+p|0,E=C=E>>>0

>>0?C+1|0:C,n[G+8>>2]=w,n[G+12>>2]=C,p=I,F=a,C=jg(r,y,14),a=l,G=jg(r,y,18)^C,N=l^a,C=u+(D^(h^D)&y)|0,(a=c+(i^(i^e)&r)|0)>>>0>>0&&(C=C+1|0),c=jg(r,y,41)^G,C=(l^N)+C|0,C=(a=c+a|0)>>>0>>0?C+1|0:C,a=(N=n[(u=G=(c=(7|B)<<3)+g|0)>>2])+a|0,C=n[u+4>>2]+C|0,C=a>>>0>>0?C+1|0:C,a=(u=n[(c=c+34784|0)>>2])+a|0,C=n[c+4>>2]+C|0,c=F,F=C=a>>>0>>0?C+1|0:C,C=c+C|0,(c=a+f|0)>>>0>>0&&(C=C+1|0),u=C,n[p+32>>2]=c,n[p+36>>2]=C,C=jg(w,E,28),f=l,N=jg(w,E,34)^C,f^=l,C=((Q|o)&E|Q&o)+F|0,(F=(F=a)+(a=(t|s)&w|t&s)|0)>>>0>>0&&(C=C+1|0),a=F,F=jg(w,E,39)^N,C=(l^f)+C|0,f=a=a+F|0,a=C=a>>>0>>0?C+1|0:C,n[p>>2]=f,n[p+4>>2]=C,F=o,C=jg(c,u,14),o=l,N=jg(c,u,18)^C,U=l^o,C=D+(h^(y^h)&u)|0,(o=i+(e^(r^e)&c)|0)>>>0>>0&&(C=C+1|0),i=jg(c,u,41)^N,C=(l^U)+C|0,C=(o=i+o|0)>>>0>>0?C+1|0:C,o=(U=n[(D=N=(i=(8|B)<<3)+g|0)>>2])+o|0,C=n[D+4>>2]+C|0,C=o>>>0>>0?C+1|0:C,o=(D=n[(i=i+34784|0)>>2])+o|0,C=n[i+4>>2]+C|0,i=F,F=C=o>>>0>>0?C+1|0:C,C=i+C|0,(i=o+t|0)>>>0>>0&&(C=C+1|0),D=C,n[p+24>>2]=i,n[p+28>>2]=C,C=jg(f,a,28),t=l,U=jg(f,a,34)^C,t^=l,C=((Q|E)&a|Q&E)+F|0,(F=(F=o)+(o=(s|w)&f|s&w)|0)>>>0>>0&&(C=C+1|0),o=F,F=jg(f,a,39)^U,C=(l^t)+C|0,t=o=o+F|0,o=C=o>>>0>>0?C+1|0:C,n[p+56>>2]=t,n[p+60>>2]=C,F=I,U=Q,C=jg(i,D,14),Q=l,p=jg(i,D,18)^C,v=l^Q,C=h+(y^(y^u)&D)|0,(Q=e+(r^(r^c)&i)|0)>>>0>>0&&(C=C+1|0),e=jg(i,D,41)^p,C=(l^v)+C|0,C=(Q=e+Q|0)>>>0>>0?C+1|0:C,Q=(v=n[(h=p=(e=(9|B)<<3)+g|0)>>2])+Q|0,C=n[h+4>>2]+C|0,C=Q>>>0>>0?C+1|0:C,Q=(h=n[(e=e+34784|0)>>2])+Q|0,C=n[e+4>>2]+C|0,e=U,U=C=Q>>>0>>0?C+1|0:C,C=e+C|0,(e=Q+s|0)>>>0>>0&&(C=C+1|0),h=C,n[F+16>>2]=e,n[F+20>>2]=C,C=jg(t,o,28),s=l,v=jg(t,o,34)^C,s^=l,C=((E|a)&o|E&a)+U|0,(U=(U=Q)+(Q=(f|w)&t|f&w)|0)>>>0>>0&&(C=C+1|0),Q=U,U=jg(t,o,39)^v,C=(l^s)+C|0,s=Q=Q+U|0,Q=C=Q>>>0>>0?C+1|0:C,n[F+48>>2]=s,n[F+52>>2]=C,v=E,C=jg(e,h,14),E=l,U=jg(e,h,18)^C,Y=l^E,C=y+(u^(D^u)&h)|0,(E=r+(c^(i^c)&e)|0)>>>0>>0&&(C=C+1|0),r=jg(e,h,41)^U,C=(l^Y)+C|0,C=(E=r+E|0)>>>0>>0?C+1|0:C,E=(Y=n[(y=U=(r=(10|B)<<3)+g|0)>>2])+E|0,C=n[y+4>>2]+C|0,C=E>>>0>>0?C+1|0:C,E=(y=n[(r=r+34784|0)>>2])+E|0,C=n[r+4>>2]+C|0,r=C=E>>>0>>0?C+1|0:C,C=C+v|0,(y=E+w|0)>>>0>>0&&(C=C+1|0),w=y,y=C,n[F+8>>2]=w,n[F+12>>2]=C,C=jg(s,Q,28),v=l,Y=jg(s,Q,34)^C,v^=l,C=((a|o)&Q|a&o)+r|0,(r=(r=E)+(E=(t|f)&s|t&f)|0)>>>0>>0&&(C=C+1|0),E=r,r=jg(s,Q,39)^Y,C=(l^v)+C|0,r=C=(E=E+r|0)>>>0>>0?C+1|0:C,n[F+40>>2]=E,n[F+44>>2]=C,v=I,Y=a,C=jg(w,y,14),a=l,F=jg(w,y,18)^C,b=l^a,C=u+(D^(h^D)&y)|0,(a=c+(i^(i^e)&w)|0)>>>0>>0&&(C=C+1|0),c=jg(w,y,41)^F,C=(l^b)+C|0,C=(a=c+a|0)>>>0>>0?C+1|0:C,a=(b=n[(u=F=(c=(11|B)<<3)+g|0)>>2])+a|0,C=n[u+4>>2]+C|0,C=a>>>0>>0?C+1|0:C,a=(u=n[(c=c+34784|0)>>2])+a|0,C=n[c+4>>2]+C|0,c=C=a>>>0>>0?C+1|0:C,C=C+Y|0,(u=a+f|0)>>>0>>0&&(C=C+1|0),f=u,u=C,n[v>>2]=f,n[v+4>>2]=C,C=jg(E,r,28),Y=l,b=jg(E,r,34)^C,Y^=l,C=((Q|o)&r|Q&o)+c|0,(c=(c=a)+(a=(t|s)&E|t&s)|0)>>>0>>0&&(C=C+1|0),a=c,c=jg(E,r,39)^b,C=(l^Y)+C|0,c=C=(a=a+c|0)>>>0>>0?C+1|0:C,n[v+32>>2]=a,n[v+36>>2]=C,Y=I,b=o,C=jg(f,u,14),o=l,v=jg(f,u,18)^C,R=l^o,C=D+(h^(y^h)&u)|0,(o=i+(e^(e^w)&f)|0)>>>0>>0&&(C=C+1|0),i=jg(f,u,41)^v,C=(l^R)+C|0,C=(o=i+o|0)>>>0>>0?C+1|0:C,o=(R=n[(D=v=(i=(12|B)<<3)+g|0)>>2])+o|0,C=n[D+4>>2]+C|0,C=o>>>0>>0?C+1|0:C,o=(D=n[(i=i+34784|0)>>2])+o|0,C=n[i+4>>2]+C|0,i=b,b=C=o>>>0>>0?C+1|0:C,C=i+C|0,(i=o+t|0)>>>0>>0&&(C=C+1|0),R=i,i=C,n[Y+56>>2]=R,n[Y+60>>2]=C,D=I,C=jg(a,c,28),t=l,Y=jg(a,c,34)^C,t^=l,C=((Q|r)&c|Q&r)+b|0,(b=(b=o)+(o=(E|s)&a|E&s)|0)>>>0>>0&&(C=C+1|0),Y=jg(a,c,39)^Y,C=(l^t)+C|0,b=o=Y+b|0,t=C=o>>>0>>0?C+1|0:C,n[D+24>>2]=o,n[D+28>>2]=C,o=I,D=s,Y=Q,C=jg(R,i,14),Q=l,s=jg(R,i,18)^C,H=l^Q,C=h+(y^(y^u)&i)|0,(Q=e+(w^(f^w)&R)|0)>>>0>>0&&(C=C+1|0),s=jg(R,i,41)^s,C=(l^H)+C|0,C=(Q=s+Q|0)>>>0>>0?C+1|0:C,Q=(H=n[(s=(e=(13|B)<<3)+g|0)>>2])+Q|0,C=n[s+4>>2]+C|0,C=Q>>>0>>0?C+1|0:C,Q=(h=n[(e=e+34784|0)>>2])+Q|0,C=n[e+4>>2]+C|0,h=C=Q>>>0>>0?C+1|0:C,C=C+Y|0,(D=Q+D|0)>>>0>>0&&(C=C+1|0),Y=D,e=C,n[o+48>>2]=D,n[o+52>>2]=C,C=jg(b,t,28),D=l,H=jg(b,t,34)^C,D^=l,C=((r|c)&t|r&c)+h|0,(h=(h=Q)+(Q=(E|a)&b|E&a)|0)>>>0>>0&&(C=C+1|0),Q=h,h=jg(b,t,39)^H,C=(l^D)+C|0,C=(Q=Q+h|0)>>>0>>0?C+1|0:C,h=Q,Q=C,n[o+16>>2]=h,n[o+20>>2]=C,C=jg(Y,e,14),D=l,H=jg(Y,e,18)^C,D^=l,C=y+(u^(i^u)&e)|0,(y=w+(f^(f^R)&Y)|0)>>>0>>0&&(C=C+1|0),w=y,y=jg(Y,e,41)^H,C=(l^D)+C|0,C=(w=w+y|0)>>>0>>0?C+1|0:C,w=(M=n[(D=(y=(14|B)<<3)+g|0)>>2])+w|0,C=n[D+4>>2]+C|0,C=w>>>0>>0?C+1|0:C,w=(H=n[(y=y+34784|0)>>2])+w|0,C=n[y+4>>2]+C|0,C=w>>>0>>0?C+1|0:C,H=w,w=C,C=r+C|0,(r=E+H|0)>>>0>>0&&(C=C+1|0),y=r,E=C,n[o+40>>2]=r,n[o+44>>2]=C,C=jg(h,Q,28),r=l,M=jg(h,Q,34)^C,r^=l,C=((t|c)&Q|t&c)+w|0,(H=(w=(a|b)&h|a&b)+H|0)>>>0>>0&&(C=C+1|0),w=H,H=jg(h,Q,39)^M,C=(l^r)+C|0,C=(w=w+H|0)>>>0>>0?C+1|0:C,H=w,r=C,n[o+8>>2]=w,n[o+12>>2]=C,C=jg(y,E,14),w=l,M=jg(y,E,18)^C,w^=l,C=u+(i^(i^e)&E)|0,(i=f+(R^(Y^R)&y)|0)>>>0>>0&&(C=C+1|0),f=jg(y,E,41)^M,C=(l^w)+C|0,C=(E=f+i|0)>>>0>>0?C+1|0:C,E=(e=n[(i=w=(f=(15|B)<<3)+g|0)>>2])+E|0,C=n[i+4>>2]+C|0,C=E>>>0>>0?C+1|0:C,E=(i=n[(f=f+34784|0)>>2])+E|0,C=n[f+4>>2]+C|0,f=E,C=c+(E=E>>>0>>0?C+1|0:C)|0,(i=a+f|0)>>>0>>0&&(C=C+1|0),n[o+32>>2]=i,n[o+36>>2]=C,C=jg(H,r,28),o=l,a=jg(H,r,34)^C,i=l^o,C=((Q|t)&r|Q&t)+E|0,(E=(Q=(h|b)&H|h&b)+f|0)>>>0>>0&&(C=C+1|0),Q=(Q=E)+(E=jg(H,r,39)^a)|0,C=(l^i)+C|0,n[(o=I)>>2]=Q,n[o+4>>2]=Q>>>0>>0?C+1|0:C,64==(0|B)){for(;o=g=(B=P<<3)+A|0,B=(Q=n[(C=I+B|0)>>2])+n[o>>2]|0,C=n[o+4>>2]+n[C+4>>2]|0,n[o>>2]=B,n[o+4>>2]=B>>>0>>0?C+1|0:C,8!=(0|(P=P+1|0)););break}f=((B=B+16|0)<<3)+g|0,Y=o=n[D+4>>2],C=o>>>6|0,o=((63&o)<<26|(b=n[D>>2])>>>6)^jg(b,o,19),C^=l,o=jg(b,Y,61)^o,C=(a=n[p+4>>2])+(l^C)|0,(Q=(Q=o)+(o=y=n[p>>2])|0)>>>0>>0&&(C=C+1|0),o=(i=Q)+(E=n[(Q=g+J|0)>>2])|0,C=n[Q+4>>2]+C|0,o=(i=o)>>>0>>0?C+1|0:C,E=Q=n[m+4>>2],C=Q>>>7|0,Q=((127&Q)<<25|(t=n[m>>2])>>>7)^jg(t,Q,1),C^=l,r=i,i=jg(t,E,8)^Q,C=(l^C)+o|0,r=Q=r+i|0,Q=C=Q>>>0>>0?C+1|0:C,n[f>>2]=r,n[f+4>>2]=C,C=n[(i=m)+76>>2]+E|0,(E=(o=n[i+72>>2])+t|0)>>>0>>0&&(C=C+1|0),f=E,E=C,C=(o=t=n[w+4>>2])>>>6|0,t=((63&o)<<26|(h=n[w>>2])>>>6)^jg(h,o,19),C^=l,e=f,f=jg(h,o,61)^t,C=(l^C)+E|0,c=t=e+f|0,E=t>>>0>>0?C+1|0:C,t=e=n[m+12>>2],C=e>>>7|0,e=((127&e)<<25|(f=n[m+8>>2])>>>7)^jg(f,e,1),C^=l,u=c,c=jg(f,t,8)^e,C=(l^C)+E|0,C=(e=u+c|0)>>>0>>0?C+1|0:C,c=e,E=C,n[i+128>>2]=e,n[i+132>>2]=C,i=S,e=t,C=jg(r,Q,19),u=l,t=C,C=Q>>>6|0,Q=jg(r,Q,61)^t^((63&Q)<<26|r>>>6),r=f,C=(t=n[F+4>>2])+(l^C^u)|0,(f=(f=Q)+(Q=u=n[F>>2])|0)>>>0>>0&&(C=C+1|0),C=C+e|0,m=Q=r+f|0,Q=Q>>>0>>0?C+1|0:C,f=e=n[k+4>>2],C=e>>>7|0,e=((127&e)<<25|(r=n[k>>2])>>>7)^jg(r,e,1),C^=l,H=m,m=jg(r,f,8)^e,C=(l^C)+Q|0,C=(e=H+m|0)>>>0>>0?C+1|0:C,m=e,Q=C,n[i+128>>2]=e,n[i+132>>2]=C,C=n[(e=k)+76>>2]+f|0,(i=(f=n[e+72>>2])+r|0)>>>0>>0&&(C=C+1|0),f=i,i=C,C=jg(c,E,19),r=l,H=f,f=C,C=E>>>6|0,f=jg(c,E,61)^f^((63&E)<<26|c>>>6),C=(l^C^r)+i|0,c=E=H+f|0,E=E>>>0>>0?C+1|0:C,f=r=n[k+12>>2],C=r>>>7|0,r=((127&r)<<25|(i=n[k+8>>2])>>>7)^jg(i,r,1),C^=l,k=c,c=jg(i,f,8)^r,C=(l^C)+E|0,C=(r=k+c|0)>>>0>>0?C+1|0:C,c=r,E=C,n[e+128>>2]=r,n[e+132>>2]=C,e=d,r=f,C=jg(m,Q,19),k=l,f=C,C=Q>>>6|0,Q=jg(m,Q,61)^f^((63&Q)<<26|m>>>6),H=i,C=(f=n[s+4>>2])+(l^C^k)|0,(i=(i=Q)+(Q=m=n[s>>2])|0)>>>0>>0&&(C=C+1|0),C=C+r|0,S=Q=H+i|0,Q=Q>>>0>>0?C+1|0:C,C=(i=k=n[_+4>>2])>>>7|0,k=((127&i)<<25|(r=n[_>>2])>>>7)^jg(r,i,1),C^=l,H=S,S=jg(r,i,8)^k,C=(l^C)+Q|0,Q=C=(k=H+S|0)>>>0>>0?C+1|0:C,n[e+128>>2]=k,n[e+132>>2]=C,C=n[(e=_)+76>>2]+i|0,(r=(i=n[e+72>>2])+r|0)>>>0>>0&&(C=C+1|0),i=r,r=C,C=jg(c,E,19),S=l,H=i,i=C,C=E>>>6|0,i=jg(c,E,61)^i^((63&E)<<26|c>>>6),C=(l^C^S)+r|0,c=E=H+i|0,E=E>>>0>>0?C+1|0:C,C=(i=r=n[_+12>>2])>>>7|0,r=((127&i)<<25|(S=n[_+8>>2])>>>7)^jg(S,i,1),C^=l,_=c,c=jg(S,i,8)^r,C=(l^C)+E|0,_=r=_+c|0,E=C=r>>>0>>0?C+1|0:C,n[e+128>>2]=r,n[e+132>>2]=C,e=x,r=i,C=jg(k,Q,19),d=l,i=C,C=Q>>>6|0,i=jg(k,Q,61)^i^((63&Q)<<26|k>>>6),C=(l^C^d)+o|0,C=(Q=i+h|0)>>>0>>0?C+1|0:C,i=Q,C=C+r|0,k=Q=Q+S|0,Q=Q>>>0>>0?C+1|0:C,C=(i=c=n[G+4>>2])>>>7|0,c=((127&i)<<25|(r=n[G>>2])>>>7)^jg(r,i,1),C^=l,H=k,k=jg(r,i,8)^c,C=(l^C)+Q|0,Q=C=(c=H+k|0)>>>0>>0?C+1|0:C,n[e+128>>2]=c,n[e+132>>2]=C,C=n[(e=G)+76>>2]+i|0,(r=(i=n[e+72>>2])+r|0)>>>0>>0&&(C=C+1|0),i=r,r=C,C=jg(_,E,19),k=l,H=i,i=C,C=E>>>6|0,i=jg(_,E,61)^i^((63&E)<<26|_>>>6),C=(l^C^k)+r|0,k=E=H+i|0,E=E>>>0>>0?C+1|0:C,C=(i=r=n[G+12>>2])>>>7|0,r=((127&i)<<25|(_=n[G+8>>2])>>>7)^jg(_,i,1),C^=l,G=k,k=jg(_,i,8)^r,C=(l^C)+E|0,C=(r=G+k|0)>>>0>>0?C+1|0:C,k=r,E=C,n[e+128>>2]=r,n[e+132>>2]=C,r=i,C=jg(c,Q,19),G=l,i=C,C=Q>>>6|0,Q=(Q=jg(c,Q,61)^i^((63&Q)<<26|c>>>6))+(i=n[(e=N)+72>>2])|0,C=n[e+76>>2]+(l^C^G)|0,C=Q>>>0>>0?C+1|0:C,i=Q,C=C+r|0,i=C=(Q=Q+_|0)>>>0>>0?C+1|0:C,C=jg(y,a,1),r=l,G=Q,c=C,C=(Q=a)>>>7|0,c=c^((127&Q)<<25|y>>>7)^jg(y,Q,8),C=(l^C^r)+i|0,r=Q=G+c|0,Q=C=Q>>>0>>0?C+1|0:C,n[e+128>>2]=r,n[e+132>>2]=C,C=n[(i=p)+76>>2]+a|0,(e=(a=n[i+72>>2])+y|0)>>>0>>0&&(C=C+1|0),a=e,e=C,C=jg(k,E,19),c=l,y=a,a=C,C=E>>>6|0,a=jg(k,E,61)^a^((63&E)<<26|k>>>6),C=(l^C^c)+e|0,c=E=y+a|0,E=E>>>0>>0?C+1|0:C,C=(a=e=n[p+12>>2])>>>7|0,e=((127&a)<<25|(y=n[p+8>>2])>>>7)^jg(y,a,1),C^=l,p=c,c=jg(y,a,8)^e,C=(l^C)+E|0,C=(e=p+c|0)>>>0>>0?C+1|0:C,c=e,E=C,n[i+128>>2]=e,n[i+132>>2]=C,e=a,C=jg(r,Q,19),k=l,a=C,C=Q>>>6|0,Q=(Q=jg(r,Q,61)^a^((63&Q)<<26|r>>>6))+(a=n[(i=U)+72>>2])|0,C=n[i+76>>2]+(l^C^k)|0,C=Q>>>0>>0?C+1|0:C,a=Q,C=C+e|0,a=C=(Q=Q+y|0)>>>0>>0?C+1|0:C,C=jg(u,t,1),e=l,y=Q,r=C,C=(Q=t)>>>7|0,r=r^((127&Q)<<25|u>>>7)^jg(u,Q,8),C=(l^C^e)+a|0,e=Q=y+r|0,Q=C=Q>>>0>>0?C+1|0:C,n[i+128>>2]=e,n[i+132>>2]=C,C=n[(i=F)+76>>2]+t|0,(t=(a=n[i+72>>2])+u|0)>>>0>>0&&(C=C+1|0),a=t,t=C,C=jg(c,E,19),r=l,y=a,a=C,C=E>>>6|0,a=jg(c,E,61)^a^((63&E)<<26|c>>>6),C=(l^C^r)+t|0,r=E=y+a|0,E=E>>>0>>0?C+1|0:C,C=(a=t=n[F+12>>2])>>>7|0,t=((127&a)<<25|(c=n[F+8>>2])>>>7)^jg(c,a,1),C^=l,y=r,r=jg(c,a,8)^t,C=(l^C)+E|0,C=(t=y+r|0)>>>0>>0?C+1|0:C,r=t,E=C,n[i+128>>2]=r,n[i+132>>2]=C,i=a,C=jg(e,Q,19),y=l,a=C,C=Q>>>6|0,Q=(Q=jg(e,Q,61)^a^((63&Q)<<26|e>>>6))+(a=n[(t=v)+72>>2])|0,C=n[t+76>>2]+(l^C^y)|0,C=Q>>>0>>0?C+1|0:C,a=Q,C=C+i|0,a=C=(Q=Q+c|0)>>>0>>0?C+1|0:C,C=jg(m,f,1),i=l,c=Q,e=C,C=(Q=f)>>>7|0,e=e^((127&Q)<<25|m>>>7)^jg(m,Q,8),C=(l^C^i)+a|0,i=Q=c+e|0,Q=C=Q>>>0>>0?C+1|0:C,n[t+128>>2]=i,n[t+132>>2]=C,C=n[(a=s)+76>>2]+f|0,(f=(t=n[a+72>>2])+m|0)>>>0>>0&&(C=C+1|0),t=f,f=C,C=jg(r,E,19),e=l,c=t,t=C,C=E>>>6|0,t=jg(r,E,61)^t^((63&E)<<26|r>>>6),C=(l^C^e)+f|0,e=E=c+t|0,E=E>>>0>>0?C+1|0:C,f=t=n[s+12>>2],C=t>>>7|0,t=((127&t)<<25|(s=n[s+8>>2])>>>7)^jg(s,t,1),C^=l,s=jg(s,f,8)^t,C=(l^C)+E|0,f=t=s+e|0,E=C=t>>>0>>0?C+1|0:C,n[a+128>>2]=t,n[a+132>>2]=C,C=n[(a=D)+76>>2]+Y|0,(s=(t=n[a+72>>2])+b|0)>>>0>>0&&(C=C+1|0),t=s,s=C,C=jg(i,Q,19),e=l,r=t,t=C,C=Q>>>6|0,t=jg(i,Q,61)^t^((63&Q)<<26|i>>>6),C=(l^C^e)+s|0,t=C=(Q=r+t|0)>>>0>>0?C+1|0:C,C=jg(h,o,1),s=l,r=Q,i=C,C=(Q=o)>>>7|0,Q=r+(i=i^((127&Q)<<25|h>>>7)^jg(h,Q,8))|0,C=(l^C^s)+t|0,n[a+128>>2]=Q,n[a+132>>2]=Q>>>0>>0?C+1|0:C,C=n[(Q=w)+76>>2]+o|0,(a=(o=n[Q+72>>2])+h|0)>>>0>>0&&(C=C+1|0),o=a,a=C,C=jg(f,E,19),t=l,i=C,C=E>>>6|0,E=jg(f,E,61)^i^((63&E)<<26|f>>>6),C=(l^C^t)+a|0,s=o=E+o|0,o=o>>>0>>0?C+1|0:C,C=(a=t=n[w+12>>2])>>>7|0,t=((127&a)<<25|(E=n[w+8>>2])>>>7)^jg(E,a,1),C^=l,t=(i=s)+(s=jg(E,a,8)^t)|0,C=(l^C)+o|0,n[Q+128>>2]=t,n[Q+132>>2]=t>>>0>>0?C+1|0:C}}function k(A){var I,g,B,C,Q,i,n,r,o,e,t,c,f,y,s,w,h,D,u,p=0,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0,v=0,S=0,N=0,R=0,M=0,d=0,P=0,J=0,x=0,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0,CA=0,QA=0,EA=0,iA=0;y=Cg(A),s=a[A+2|0]|a[A+3|0]<<8|a[A+4|0]<<16|a[A+5|0]<<24,w=Cg(A+5|0),h=l,gA=a[A+7|0]|a[A+8|0]<<8|a[A+9|0]<<16|a[A+10|0]<<24,BA=a[A+10|0]|a[A+11|0]<<8|a[A+12|0]<<16|a[A+13|0]<<24,D=Cg(A+13|0),CA=l,M=a[A+15|0]|a[A+16|0]<<8|a[A+17|0]<<16|a[A+18|0]<<24,O=Cg(A+18|0),d=l,U=Cg(A+21|0),H=a[A+23|0]|a[A+24|0]<<8|a[A+25|0]<<16|a[A+26|0]<<24,_=Cg(A+26|0),G=l,IA=a[A+28|0]|a[A+29|0]<<8|a[A+30|0]<<16|a[A+31|0]<<24,X=a[A+31|0]|a[A+32|0]<<8|a[A+33|0]<<16|a[A+34|0]<<24,j=Cg(A+34|0),W=l,P=a[A+36|0]|a[A+37|0]<<8|a[A+38|0]<<16|a[A+39|0]<<24,z=Cg(A+39|0),x=l,b=Cg(A+42|0),k=a[A+44|0]|a[A+45|0]<<8|a[A+46|0]<<16|a[A+47|0]<<24,u=A,F=Cg(A+47|0),p=xg(I=2097151&((3&(Y=l))<<30|F>>>2),0,136657,0),F=l,(p=(G=2097151&((3&G)<<30|_>>>2))+p|0)>>>0>>0&&(F=F+1|0),_=(G=xg(g=(a[A+49|0]|a[A+50|0]<<8|a[A+51|0]<<16|a[A+52|0]<<24)>>>7&2097151,0,-997805,-1))+p|0,p=l+F|0,p=_>>>0>>0?p+1|0:p,F=xg(B=(a[A+52|0]|a[A+53|0]<<8|a[A+54|0]<<16|a[A+55|0]<<24)>>>4&2097151,0,654183,0),G=l+p|0,G=(_=F+_|0)>>>0>>0?G+1|0:G,p=_,F=Cg(A+55|0),_=p+(F=xg(C=2097151&((1&(_=l))<<31|F>>>1),0,470296,0))|0,p=l+G|0,p=_>>>0>>0?p+1|0:p,G=xg(Q=(a[A+57|0]|a[A+58|0]<<8|a[A+59|0]<<16|a[A+60|0]<<24)>>>6&2097151,0,666643,0),F=l+p|0,S=F=(_=G+_|0)>>>0>>0?F+1|0:F,G=F,m=k>>>5&2097151,F=2097151&b,k=xg(i=(a[A+60|0]|a[A+61|0]<<8|a[A+62|0]<<16|a[A+63|0]<<24)>>>3|0,0,-683901,-1)+F|0,p=l,b=k,N=p=k>>>0>>0?p+1|0:p,R=(p=k)- -1048576|0,K=k=N-((p>>>0<4293918720)+-1|0)|0,p=k>>21,r=m=(k=(2097151&k)<<11|R>>>21)+m|0,T=F=m>>>0>>0?p+1|0:p,p=xg(m,F,-683901,-1),F=l+G|0,Z=Y=p+_|0,v=Y>>>0

>>0?F+1|0:F,F=xg(I,0,-997805,-1),p=l,(F=(G=H>>>5&2097151)+F|0)>>>0>>0&&(p=p+1|0),Y=(G=F)+(F=xg(g,0,654183,0))|0,G=l+p|0,G=Y>>>0>>0?G+1|0:G,p=xg(B,0,470296,0),F=l+G|0,F=(Y=p+Y|0)>>>0

>>0?F+1|0:F,G=xg(C,0,666643,0),p=l+F|0,G=(H=Y=G+Y|0)>>>0>>0?p+1|0:p,p=2097151&U,Y=xg(I,0,654183,0)+p|0,F=l,F=Y>>>0

>>0?F+1|0:F,k=(p=Y)+(Y=xg(g,0,470296,0))|0,p=l+F|0,p=k>>>0>>0?p+1|0:p,Y=xg(B,0,666643,0),F=l+p|0,m=k=Y+k|0,k=F=k>>>0>>0?F+1|0:F,$=(p=m)- -1048576|0,J=Y=F-((p>>>0<4293918720)+-1|0)|0,G=(p=Y>>>21|0)+G|0,U=G=(H=Y=(F=(2097151&Y)<<11|$>>>21)+H|0)>>>0>>0?G+1|0:G,q=(p=H)- -1048576|0,c=_- -1048576|0,S=S-((_>>>0<4293918720)+-1|0)|0,F=(p=(G=L=G-((p>>>0<4293918720)+-1|0)|0)>>21)+v|0,S=(F=(L=(_=(2097151&G)<<11|q>>>21)+Z|0)>>>0<_>>>0?F+1|0:F)-(((_=L)>>>0<(p=-2097152&c)>>>0)+(Y=S)|0)|0,QA=(p=_-p|0)-(F=-2097152&(f=p- -1048576|0))|0,EA=S-((p>>>0>>0)+(_=S-((p>>>0<4293918720)+-1|0)|0)|0)|0,F=xg(r,T,136657,0)+H|0,p=U+l|0,p=F>>>0>>0?p+1|0:p,AA=(H=F)-(F=-2097152&q)|0,Z=p-((H>>>0>>0)+G|0)|0,S=b-(p=-2097152&R)|0,v=N-((b>>>0

>>0)+K|0)|0,p=xg(i,0,136657,0),F=l,(p=(G=2097151&((7&x)<<29|z>>>3))+p|0)>>>0>>0&&(F=F+1|0),H=(G=xg(Q,0,-683901,-1))+p|0,p=l+F|0,b=H,H=H>>>0>>0?p+1|0:p,p=xg(C,0,-683901,-1),F=l,(p=(G=P>>>6&2097151)+p|0)>>>0>>0&&(F=F+1|0),U=(G=p)+(p=xg(i,0,-997805,-1))|0,G=l+F|0,G=U>>>0

>>0?G+1|0:G,F=xg(Q,0,136657,0),p=l+G|0,q=F=(R=p=(U=F+U|0)>>>0>>0?p+1|0:p)-(((p=U)>>>0<4293918720)+-1|0)|0,p=(2097151&F)<<11|(z=p- -1048576|0)>>>21,F=(F>>21)+H|0,N=F=(b=p+b|0)>>>0

>>0?F+1|0:F,L=(p=b)- -1048576|0,K=F=F-((p>>>0<4293918720)+-1|0)|0,p=(G=F>>21)+v|0,o=H=(F=(2097151&F)<<11|L>>>21)+S|0,V=p=H>>>0>>0?p+1|0:p,F=xg(H,p,-683901,-1),p=l+Z|0,iA=G=F+AA|0,P=G>>>0>>0?p+1|0:p,v=m,p=xg(I,0,470296,0),F=l,(p=(G=2097151&((7&d)<<29|O>>>3))+p|0)>>>0>>0&&(F=F+1|0),G=p,p=xg(g,0,666643,0),F=l+F|0,S=G=G+p|0,G=G>>>0

>>0?F+1|0:F,F=xg(I,0,666643,0),p=l,(F=(H=M>>>6&2097151)+F|0)>>>0>>0&&(p=p+1|0),m=F,d=H=(M=p)-(((p=F)>>>0<4293918720)+-1|0)|0,F=(F=H>>>21|0)+G|0,x=F=(H=(p=(2097151&H)<<11|(AA=p- -1048576|0)>>>21)+S|0)>>>0

>>0?F+1|0:F,O=F-(((p=H)>>>0<4293918720)+-1|0)|0,Z=p- -1048576|0,n=b-(p=-2097152&L)|0,e=G=N-((b>>>0

>>0)+K|0)|0,p=((S=O)>>>21|0)+k|0,p=(v=(b=(2097151&S)<<11|Z>>>21)+v|0)>>>0>>0?p+1|0:p,v=(k=xg(r,T,-997805,-1))+((b=v)-(F=-2097152&$)|0)|0,F=l+(p-((8191&J)+(b>>>0>>0)|0)|0)|0,F=v>>>0>>0?F+1|0:F,p=xg(o,V,136657,0),F=l+F|0,F=(k=p+v|0)>>>0

>>0?F+1|0:F,G=xg(n,G,-683901,-1),p=l+F|0,N=p=(k=G+k|0)>>>0>>0?p+1|0:p,L=(p=k)- -1048576|0,K=G=N-((p>>>0<4293918720)+-1|0)|0,F=(p=G>>21)+P|0,v=F=(b=(G=(2097151&G)<<11|L>>>21)+iA|0)>>>0>>0?F+1|0:F,J=(p=G=b)- -1048576|0,p=(p=(b=P=F-((p>>>0<4293918720)+-1|0)|0)>>21)+EA|0,QA=P=(F=(2097151&b)<<11|J>>>21)+QA|0,P=P>>>0>>0?p+1|0:p,EA=G-(p=-2097152&J)|0,iA=v-((G>>>0

>>0)+b|0)|0,O=k-(p=-2097152&L)|0,$=N-((k>>>0

>>0)+K|0)|0,p=xg(r,T,654183,0),G=l+(x-((8191&S)+(H>>>0<(F=-2097152&Z)>>>0)|0)|0)|0,G=(k=p+(H-F|0)|0)>>>0

>>0?G+1|0:G,F=xg(o,V,-997805,-1),p=l+G|0,p=(k=F+k|0)>>>0>>0?p+1|0:p,G=xg(n,e,136657,0),F=l+p|0,L=k=G+k|0,b=k>>>0>>0?F+1|0:F,J=U-(p=-2097152&z)|0,x=R-((U>>>0

>>0)+q|0)|0,F=xg(B,0,-683901,-1),p=l,(F=(G=2097151&((1&W)<<31|j>>>1))+F|0)>>>0>>0&&(p=p+1|0),G=F,F=xg(C,0,136657,0),p=l+p|0,p=(G=G+F|0)>>>0>>0?p+1|0:p,k=(F=G)+(G=xg(i,0,654183,0))|0,F=l+p|0,F=k>>>0>>0?F+1|0:F,p=xg(Q,0,-997805,-1),F=l+F|0,U=G=p+k|0,k=G>>>0

>>0?F+1|0:F,p=xg(g,0,-683901,-1),G=l,(p=(F=X>>>4&2097151)+p|0)>>>0>>0&&(G=G+1|0),H=(F=xg(B,0,136657,0))+p|0,p=l+G|0,p=H>>>0>>0?p+1|0:p,G=xg(C,0,-997805,-1),F=l+p|0,F=(H=G+H|0)>>>0>>0?F+1|0:F,G=xg(i,0,470296,0),p=l+F|0,p=(H=G+H|0)>>>0>>0?p+1|0:p,G=xg(Q,0,654183,0),F=l+p|0,N=F=(H=G+H|0)>>>0>>0?F+1|0:F,q=(p=H)- -1048576|0,K=G=F-((p>>>0<4293918720)+-1|0)|0,p=(p=G>>21)+k|0,k=G=(F=(2097151&G)<<11|q>>>21)+U|0,v=p=G>>>0>>0?p+1|0:p,S=(p=G)- -1048576|0,U=G=v-((p>>>0<4293918720)+-1|0)|0,F=(p=G>>21)+x|0,t=R=(G=(2097151&G)<<11|S>>>21)+J|0,X=F=R>>>0>>0?F+1|0:F,p=xg(R,F,-683901,-1),G=l+b|0,x=F=p+L|0,b=F>>>0

>>0?G+1|0:G,j=k-(p=-2097152&S)|0,W=U=v-((k>>>0

>>0)+U|0)|0,G=(p=xg(r,T,470296,0))+(m-(F=-2097152&AA)|0)|0,F=l+(M-((2047&d)+(m>>>0>>0)|0)|0)|0,F=G>>>0

>>0?F+1|0:F,p=xg(o,V,654183,0),F=l+F|0,F=(G=p+G|0)>>>0

>>0?F+1|0:F,k=(p=xg(n,e,-997805,-1))+G|0,G=l+F|0,G=k>>>0

>>0?G+1|0:G,F=xg(R,X,136657,0),p=l+G|0,p=(k=F+k|0)>>>0>>0?p+1|0:p,G=xg(j,U,-683901,-1),F=l+p|0,v=F=(k=G+k|0)>>>0>>0?F+1|0:F,d=(p=k)- -1048576|0,U=G=F-((p>>>0<4293918720)+-1|0)|0,p=(p=G>>21)+b|0,b=p=(G=(F=(2097151&G)<<11|d>>>21)+x|0)>>>0>>0?p+1|0:p,S=(p=G)- -1048576|0,F=(p=(m=x=b-((p>>>0<4293918720)+-1|0)|0)>>21)+$|0,O=M=(x=(2097151&m)<<11|S>>>21)+O|0,x=M>>>0>>0?F+1|0:F,$=G-(p=-2097152&S)|0,z=b-((G>>>0

>>0)+m|0)|0,L=k-(p=-2097152&d)|0,R=v-((k>>>0

>>0)+U|0)|0,F=xg(r,T,666643,0),p=l,(F=(G=2097151&((1&CA)<<31|D>>>1))+F|0)>>>0>>0&&(p=p+1|0),k=(G=xg(o,V,470296,0))+F|0,F=l+p|0,F=k>>>0>>0?F+1|0:F,G=xg(n,e,654183,0),p=l+F|0,p=(k=G+k|0)>>>0>>0?p+1|0:p,F=xg(t,X,-997805,-1),G=l+p|0,G=(k=F+k|0)>>>0>>0?G+1|0:G,p=xg(j,W,136657,0),F=l+G|0,U=k=p+k|0,m=k>>>0

>>0?F+1|0:F,b=H-(p=-2097152&q)|0,H=N-((H>>>0

>>0)+K|0)|0,p=xg(I,0,-683901,-1),F=l,(p=(G=IA>>>7&2097151)+p|0)>>>0>>0&&(F=F+1|0),k=(G=p)+(p=xg(g,0,136657,0))|0,G=l+F|0,G=k>>>0

>>0?G+1|0:G,F=xg(B,0,-997805,-1),p=l+G|0,p=(k=F+k|0)>>>0>>0?p+1|0:p,G=xg(C,0,654183,0),F=l+p|0,F=(k=G+k|0)>>>0>>0?F+1|0:F,G=xg(i,0,666643,0),p=l+F|0,p=(k=G+k|0)>>>0>>0?p+1|0:p,G=xg(Q,0,470296,0),F=l+p|0,p=F=(k=G+k|0)>>>0>>0?F+1|0:F,F=Y>>21,k=(Y=(2097151&Y)<<11|c>>>21)+(G=k)|0,G=p+F|0,K=G=k>>>0>>0?G+1|0:G,N=(p=k)- -1048576|0,v=G=G-((p>>>0<4293918720)+-1|0)|0,p=(F=G>>21)+H|0,T=Y=(G=(2097151&G)<<11|N>>>21)+b|0,J=p=Y>>>0>>0?p+1|0:p,p=xg(Y,p,-683901,-1),F=l+m|0,m=G=p+U|0,Y=G>>>0

>>0?F+1|0:F,p=xg(o,V,666643,0),G=l,(p=(F=BA>>>4&2097151)+p|0)>>>0>>0&&(G=G+1|0),H=(F=xg(n,e,470296,0))+p|0,p=l+G|0,p=H>>>0>>0?p+1|0:p,G=xg(t,X,654183,0),F=l+p|0,F=(H=G+H|0)>>>0>>0?F+1|0:F,p=xg(j,W,-997805,-1),F=l+F|0,F=(G=p+H|0)>>>0

>>0?F+1|0:F,H=(p=G)+(G=xg(T,J,136657,0))|0,p=l+F|0,U=p=H>>>0>>0?p+1|0:p,M=(p=H)- -1048576|0,b=G=U-((p>>>0<4293918720)+-1|0)|0,p=(F=G>>21)+Y|0,G=p=(Y=m=(G=(2097151&G)<<11|M>>>21)+m|0)>>>0>>0?p+1|0:p,d=(p=Y)- -1048576|0,p=(F=(m=S=G-((p>>>0<4293918720)+-1|0)|0)>>21)+R|0,AA=q=(S=(2097151&m)<<11|d>>>21)+L|0,S=q>>>0>>0?p+1|0:p,p=k-(F=-2097152&N)|0,k=K-((k>>>0>>0)+v|0)|0,v=p,p=(p=_>>21)+k|0,N=p=(k=_=v+(F=(2097151&_)<<11|f>>>21)|0)>>>0>>0?p+1|0:p,q=(p=k)- -1048576|0,K=_=N-((p>>>0<4293918720)+-1|0)|0,R=p=_>>21,p=xg(V=(2097151&_)<<11|q>>>21,p,-683901,-1),F=l+G|0,F=(_=p+Y|0)>>>0

>>0?F+1|0:F,Z=(G=_)-(p=-2097152&d)|0,L=F-((G>>>0

>>0)+m|0)|0,F=xg(V,R,136657,0)+H|0,p=U+l|0,p=F>>>0>>0?p+1|0:p,IA=(G=F)-(F=-2097152&M)|0,M=p-((G>>>0>>0)+b|0)|0,p=xg(n,e,666643,0),F=l,(p=(G=gA>>>7&2097151)+p|0)>>>0>>0&&(F=F+1|0),_=(G=p)+(p=xg(t,X,470296,0))|0,G=l+F|0,G=_>>>0

>>0?G+1|0:G,F=xg(j,W,654183,0),p=l+G|0,p=(_=F+_|0)>>>0>>0?p+1|0:p,F=xg(T,J,-997805,-1),p=l+p|0,b=G=F+_|0,G=G>>>0>>0?p+1|0:p,p=xg(t,X,666643,0),F=l,(p=(_=2097151&((3&h)<<30|w>>>2))+p|0)>>>0<_>>>0&&(F=F+1|0),_=p,p=xg(j,W,470296,0),F=l+F|0,F=(_=_+p|0)>>>0

>>0?F+1|0:F,Y=(p=_)+(_=xg(T,J,654183,0))|0,p=l+F|0,m=p=Y>>>0<_>>>0?p+1|0:p,d=(p=_=Y)- -1048576|0,p=(F=(H=Y=m-((p>>>0<4293918720)+-1|0)|0)>>21)+G|0,U=b=(Y=(2097151&H)<<11|d>>>21)+b|0,G=p=b>>>0>>0?p+1|0:p,b=(p=b)- -1048576|0,p=(F=(Y=v=G-((p>>>0<4293918720)+-1|0)|0)>>21)+M|0,gA=X=(v=(2097151&Y)<<11|b>>>21)+IA|0,v=X>>>0>>0?p+1|0:p,p=xg(V,R,-997805,-1),G=l+G|0,G=(F=p+U|0)>>>0

>>0?G+1|0:G,BA=F-(p=-2097152&b)|0,CA=G-((F>>>0

>>0)+Y|0)|0,p=xg(V,R,654183,0)+_|0,F=m+l|0,F=p>>>0<_>>>0?F+1|0:F,IA=(G=p)-(p=-2097152&d)|0,X=F-((G>>>0

>>0)+H|0)|0,p=xg(j,W,666643,0),G=l,(p=(F=s>>>5&2097151)+p|0)>>>0>>0&&(G=G+1|0),_=(F=xg(T,J,470296,0))+p|0,p=l+G|0,H=_,G=_>>>0>>0?p+1|0:p,F=2097151&y,_=xg(T,J,666643,0)+F|0,p=l,Y=_,b=_=(U=p=_>>>0>>0?p+1|0:p)-(((p=_)>>>0<4293918720)+-1|0)|0,G=(F=_>>21)+G|0,m=G=(_=(p=(2097151&_)<<11|(M=p- -1048576|0)>>>21)+H|0)>>>0

>>0?G+1|0:G,d=(p=_)- -1048576|0,H=G=G-((p>>>0<4293918720)+-1|0)|0,p=(F=G>>21)+X|0,G=p=(J=(G=(2097151&G)<<11|d>>>21)+IA|0)>>>0>>0?p+1|0:p,p=xg(V,R,470296,0)+_|0,F=m+l|0,H=(F=p>>>0<_>>>0?F+1|0:F)-(((m=p)>>>0<(_=-2097152&d)>>>0)+H|0)|0,m=p=p-_|0,_=(F=xg(V,R,666643,0))+(Y-(p=-2097152&M)|0)|0,p=l+(U-((Y>>>0

>>0)+b|0)|0)|0,Y=_,F=(F=(p=_>>>0>>0?p+1|0:p)>>21)+H|0,W=_=m+(p=(2097151&p)<<11|_>>>21)|0,G=(p=(F=_>>>0

>>0?F+1|0:F)>>21)+G|0,H=_=(F=(2097151&F)<<11|_>>>21)+J|0,F=(G=(p=_)>>>0>>0?G+1|0:G)>>21,G=(2097151&G)<<11|p>>>21,p=F+CA|0,b=_=G+BA|0,G=(p=(F=_)>>>0>>0?p+1|0:p)>>21,p=(2097151&p)<<11|F>>>21,F=G+v|0,v=_=p+gA|0,p=(p=(F=(G=_)>>>0

>>0?F+1|0:F)>>21)+L|0,J=G=(F=(2097151&F)<<11|G>>>21)+Z|0,F=(F=(p=G>>>0>>0?p+1|0:p)>>21)+S|0,R=G=(p=(2097151&p)<<11|G>>>21)+AA|0,p=(F=G>>>0

>>0?F+1|0:F)>>21,F=(2097151&F)<<11|G>>>21,G=p+z|0,M=_=F+$|0,F=(G=(p=_)>>>0>>0?G+1|0:G)>>21,G=(2097151&G)<<11|p>>>21,p=F+x|0,d=_=G+O|0,G=(p=(F=_)>>>0>>0?p+1|0:p)>>21,p=(2097151&p)<<11|F>>>21,F=G+iA|0,x=_=p+EA|0,p=(p=(F=(G=_)>>>0

>>0?F+1|0:F)>>21)+P|0,S=G=(F=(2097151&F)<<11|G>>>21)+QA|0,F=(p=G>>>0>>0?p+1|0:p)>>21,_=(2097151&p)<<11|G>>>21,p=k-(G=-2097152&q)|0,G=(N-((k>>>0>>0)+K|0)|0)+F|0,K=_=_+p|0,P=(2097151&(G=(F=_)>>>0

>>0?G+1|0:G))<<11|F>>>21,U=p=G>>21,F=2097151&Y,G=xg(P,p,666643,0)+F|0,p=l,m=G,_=p=G>>>0>>0?p+1|0:p,E[0|u]=G,E[A+1|0]=(255&p)<<24|G>>>8,p=2097151&W,G=xg(P,U,470296,0)+p|0,F=l,F=G>>>0

>>0?F+1|0:F,Y=G,k=(2097151&(G=_))<<11|m>>>21,G=(p=G>>21)+F|0,G=(N=Y+k|0)>>>0>>0?G+1|0:G,k=N,E[A+4|0]=(2047&G)<<21|k>>>11,p=F=G,G=k,E[A+3|0]=(7&p)<<29|G>>>3,G=2097151&H,H=xg(P,U,654183,0)+G|0,p=l,p=H>>>0>>0?p+1|0:p,G=H,H=(2097151&F)<<11|k>>>21,F=(F>>21)+p|0,F=(N=G+H|0)>>>0>>0?F+1|0:F,H=N,p=F,E[A+6|0]=(63&p)<<26|H>>>6,Y=0,G=31&((65535&_)<<16|m>>>16),F=m=2097151&k,E[A+2|0]=G|F<<5,G=2097151&b,k=xg(P,U,-997805,-1)+G|0,F=l,G=F=k>>>0>>0?F+1|0:F,G=(F=p>>21)+G|0,b=k=(p=(2097151&p)<<11|H>>>21)+k|0,G=k>>>0

>>0?G+1|0:G,E[A+9|0]=(511&G)<<23|k>>>9,p=F=G,G=k,E[A+8|0]=(1&p)<<31|G>>>1,k=0,G=H&=2097151,E[A+5|0]=(524287&Y)<<13|m>>>19|G<<2,G=2097151&v,Y=xg(P,U,136657,0)+G|0,p=l,p=(p=Y>>>0>>0?p+1|0:p)+(G=F>>21)|0,m=Y=(F=(2097151&F)<<11|b>>>21)+Y|0,p=Y>>>0>>0?p+1|0:p,F=Y,E[A+12|0]=(4095&p)<<20|F>>>12,G=p,E[A+11|0]=(15&p)<<28|F>>>4,Y=0,F=v=2097151&b,E[A+7|0]=(16383&k)<<18|H>>>14|F<<7,p=2097151&J,k=xg(P,U,-683901,-1)+p|0,F=l,F=k>>>0

>>0?F+1|0:F,F=(p=G>>21)+F|0,H=k=(G=(2097151&G)<<11|m>>>21)+k|0,p=F=k>>>0>>0?F+1|0:F,E[A+14|0]=(127&p)<<25|k>>>7,k=0,G=b=2097151&m,E[A+10|0]=(131071&Y)<<15|v>>>17|G<<4,F=p>>21,G=(m=(p=(2097151&p)<<11|H>>>21)+(2097151&R)|0)>>>0

>>0?F+1|0:F,E[A+17|0]=(1023&G)<<22|m>>>10,p=G,G=m,E[A+16|0]=(3&p)<<30|G>>>2,G=U=2097151&H,E[A+13|0]=(1048575&k)<<12|b>>>20|G<<1,G=(2097151&p)<<11|m>>>21,p>>=21,p=(H=G+(2097151&M)|0)>>>0>>0?p+1|0:p,F=H,E[A+20|0]=(8191&p)<<19|F>>>13,E[A+19|0]=(31&p)<<27|F>>>5,F=b=2097151&m,E[A+15|0]=(32767&Y)<<17|U>>>15|F<<6,_=(2097151&p)<<11|H>>>21,p=F=p>>21,_=p=(U=_+(2097151&d)|0)>>>0<_>>>0?p+1|0:p,E[A+21|0]=U,p=H,E[A+18|0]=(262143&k)<<14|b>>>18|p<<3,p=_,E[A+22|0]=(255&p)<<24|U>>>8,G=p,p>>=21,G=(H=(Y=(2097151&G)<<11|U>>>21)+(2097151&x)|0)>>>0>>0?p+1|0:p,E[(F=A)+25|0]=(2047&G)<<21|H>>>11,p=G,G=H,E[F+24|0]=(7&p)<<29|G>>>3,G=F,Y=(2097151&p)<<11|H>>>21,p>>=21,F=p=(k=m=Y+(2097151&S)|0)>>>0>>0?p+1|0:p,E[G+27|0]=(63&p)<<26|k>>>6,Y=0,p=m=2097151&H,E[G+23|0]=31&((65535&_)<<16|U>>>16)|p<<5,F=(p=F)>>21,F=(_=(p=(2097151&p)<<11|k>>>21)+(2097151&K)|0)>>>0

>>0?F+1|0:F,G=_,E[A+31|0]=(131071&F)<<15|G>>>17,p=F,E[A+30|0]=(511&p)<<23|G>>>9,E[A+29|0]=(1&p)<<31|G>>>1,F=0,k&=2097151,E[A+26|0]=(524287&Y)<<13|m>>>19|k<<2,E[A+28|0]=(16383&F)<<18|k>>>14|G<<7}function _(A){var I,g=0,B=0,C=0,Q=0,E=0,i=0,o=0,e=0,c=0,f=0,y=0,s=0,w=0;D=I=D-16|0;A:{I:{g:{B:{C:{Q:{E:{i:{n:{a:{r:{o:{if((A|=0)>>>0<=244){if(3&(g=(Q=n[8961])>>>(A=(i=A>>>0<11?16:A+11&-8)>>>3|0)|0)){A=(g=n[35892+(E=(B=A+(1&(-1^g))|0)<<3)>>2])+8|0,(0|(C=n[g+8>>2]))!=(0|(E=E+35884|0))?(n[C+12>>2]=E,n[E+8>>2]=C):(s=35844,w=ng(-2,B)&Q,n[s>>2]=w),B<<=3,n[g+4>>2]=3|B,n[4+(g=g+B|0)>>2]=1|n[g+4>>2];break A}if(i>>>0<=(e=n[8963])>>>0)break o;if(g){B=g=(A=(0-(A=(0-(B=2<>>12&16,B|=g=(A=A>>>g|0)>>>5&8,B|=g=(A=A>>>g|0)>>>2&4,g=n[35892+(C=(B=((B|=g=(A=A>>>g|0)>>>1&2)|(g=(A=A>>>g|0)>>>1&1))+(A>>>g|0)|0)<<3)>>2],(0|(A=n[g+8>>2]))!=(0|(C=C+35884|0))?(n[A+12>>2]=C,n[C+8>>2]=A):(Q=ng(-2,B)&Q,n[8961]=Q),A=g+8|0,n[g+4>>2]=3|i,E=(B<<=3)-i|0,n[4+(o=g+i|0)>>2]=1|E,n[g+B>>2]=E,e&&(g=35884+((B=e>>>3|0)<<3)|0,C=n[8966],(B=1<>2]:(n[8961]=B|Q,B=g),n[g+8>>2]=C,n[B+12>>2]=C,n[C+12>>2]=g,n[C+8>>2]=B),n[8966]=o,n[8963]=E;break A}if(!(f=n[8962]))break o;for(B=g=(A=(f&0-f)-1|0)>>>12&16,B|=g=(A=A>>>g|0)>>>5&8,B|=g=(A=A>>>g|0)>>>2&4,g=n[36148+(((B|=g=(A=A>>>g|0)>>>1&2)|(g=(A=A>>>g|0)>>>1&1))+(A>>>g|0)<<2)>>2],C=(-8&n[g+4>>2])-i|0,B=g;(A=n[B+16>>2])||(A=n[B+20>>2]);)C=(B=(E=(-8&n[A+4>>2])-i|0)>>>0>>0)?E:C,g=B?A:g,B=A;if((y=g+i|0)>>>0<=g>>>0)break r;if(c=n[g+24>>2],(0|(E=n[g+12>>2]))!=(0|g)){A=n[g+8>>2],n[A+12>>2]=E,n[E+8>>2]=A;break I}if(!(A=n[(B=g+20|0)>>2])){if(!(A=n[g+16>>2]))break a;B=g+16|0}for(;o=B,E=A,(A=n[(B=A+20|0)>>2])||(B=E+16|0,A=n[E+16>>2]););n[o>>2]=0;break I}if(i=-1,!(A>>>0>4294967231)&&(i=-8&(g=A+11|0),e=n[8962])){B=0-i|0,Q=0,(g=g>>>8|0)&&(Q=31,i>>>0>16777215||(Q=28+((A=((Q=(g<<=C=g+1048320>>>16&8)<<(A=g+520192>>>16&4))<<(g=Q+245760>>>16&2)>>>15|0)-(g|A|C)|0)<<1|i>>>A+21&1)|0));e:{t:{if(C=n[36148+(Q<<2)>>2])for(g=i<<(31==(0|Q)?0:25-(Q>>>1|0)|0),A=0;;){if(!((o=(-8&n[C+4>>2])-i|0)>>>0>=B>>>0||(E=C,B=o))){B=0,A=C;break t}if(o=n[C+20>>2],C=n[16+((g>>>29&4)+C|0)>>2],A=o?(0|o)==(0|C)?A:o:A,g<<=0!=(0|C),!C)break}else A=0;if(!(A|E)){if(!(A=(0-(A=2<>>12&16,C|=g=(A=A>>>g|0)>>>5&8,C|=g=(A=A>>>g|0)>>>2&4,A=n[36148+(((C|=g=(A=A>>>g|0)>>>1&2)|(g=(A=A>>>g|0)>>>1&1))+(A>>>g|0)<<2)>>2]}if(!A)break e}for(;B=(g=(C=(-8&n[A+4>>2])-i|0)>>>0>>0)?C:B,E=g?A:E,A=(g=n[A+16>>2])||n[A+20>>2];);}if(!(!E|B>>>0>=n[8963]-i>>>0)){if((Q=E+i|0)>>>0<=E>>>0)break r;if(c=n[E+24>>2],(0|E)!=(0|(g=n[E+12>>2]))){A=n[E+8>>2],n[A+12>>2]=g,n[g+8>>2]=A;break g}if(!(A=n[(C=E+20|0)>>2])){if(!(A=n[E+16>>2]))break n;C=E+16|0}for(;o=C,g=A,(A=n[(C=A+20|0)>>2])||(C=g+16|0,A=n[g+16>>2]););n[o>>2]=0;break g}}}if((g=n[8963])>>>0>=i>>>0){A=n[8966],(B=g-i|0)>>>0>=16?(n[8963]=B,C=A+i|0,n[8966]=C,n[C+4>>2]=1|B,n[A+g>>2]=B,n[A+4>>2]=3|i):(n[8966]=0,n[8963]=0,n[A+4>>2]=3|g,n[4+(g=A+g|0)>>2]=1|n[g+4>>2]),A=A+8|0;break A}if((C=n[8964])>>>0>i>>>0){g=C-i|0,n[8964]=g,B=(A=n[8967])+i|0,n[8967]=B,n[B+4>>2]=1|g,n[A+4>>2]=3|i,A=A+8|0;break A}if(A=0,B=E=i+47|0,n[9079]?g=n[9081]:(n[9082]=-1,n[9083]=-1,n[9080]=4096,n[9081]=4096,n[9079]=I+12&-16^1431655768,n[9084]=0,n[9072]=0,g=4096),(B=(Q=B+g|0)&(o=0-g|0))>>>0<=i>>>0)break A;if((g=n[9071])&&(c=(e=n[9069])+B|0)>>>0<=e>>>0|c>>>0>g>>>0)break A;if(4&a[36288])break Q;o:{e:{if(g=n[8967])for(A=36292;;){if((e=n[A>>2])+n[A+4>>2]>>>0>g>>>0&&e>>>0<=g>>>0)break e;if(!(A=n[A+8>>2]))break}if(-1==(0|(g=FI(0))))break E;if(Q=B,(C=(A=n[9080])+-1|0)&g&&(Q=(B-g|0)+(g+C&0-A)|0),Q>>>0<=i>>>0|Q>>>0>2147483646)break E;if((A=n[9071])&&(o=(C=n[9069])+Q|0)>>>0<=C>>>0|o>>>0>A>>>0)break E;if((0|g)!=(0|(A=FI(Q))))break o;break C}if((Q=o&Q-C)>>>0>2147483646)break E;if((0|(g=FI(Q)))==(n[A>>2]+n[A+4>>2]|0))break i;A=g}if(!(-1==(0|A)|i+48>>>0<=Q>>>0)){if((g=(g=n[9081])+(E-Q|0)&0-g)>>>0>2147483646){g=A;break C}if(-1!=(0|FI(g))){Q=g+Q|0,g=A;break C}FI(0-Q|0);break E}if(g=A,-1!=(0|A))break C;break E}t()}E=0;break I}g=0;break g}if(-1!=(0|g))break C}n[9072]=4|n[9072]}if(B>>>0>2147483646)break B;if((g=FI(B))>>>0>=(A=FI(0))>>>0|-1==(0|g)|-1==(0|A))break B;if((Q=A-g|0)>>>0<=i+40>>>0)break B}A=n[9069]+Q|0,n[9069]=A,A>>>0>r[9070]&&(n[9070]=A);C:{Q:{E:{if(B=n[8967]){for(A=36292;;){if(((C=n[A>>2])+(E=n[A+4>>2])|0)==(0|g))break E;if(!(A=n[A+8>>2]))break}break Q}for(g>>>0>=(A=n[8965])>>>0&&A||(n[8965]=g),A=0,n[9074]=Q,n[9073]=g,n[8969]=-1,n[8970]=n[9079],n[9076]=0;C=35884+(B=A<<3)|0,n[B+35892>>2]=C,n[B+35896>>2]=C,32!=(0|(A=A+1|0)););C=(A=Q+-40|0)-(B=g+8&7?-8-g&7:0)|0,n[8964]=C,B=g+B|0,n[8967]=B,n[B+4>>2]=1|C,n[4+(A+g|0)>>2]=40,n[8968]=n[9083];break C}if(!(8&a[A+12|0]|g>>>0<=B>>>0|C>>>0>B>>>0)){n[A+4>>2]=Q+E,g=(A=B+8&7?-8-B&7:0)+B|0,n[8967]=g,A=(C=n[8964]+Q|0)-A|0,n[8964]=A,n[g+4>>2]=1|A,n[4+(B+C|0)>>2]=40,n[8968]=n[9083];break C}}g>>>0<(E=n[8965])>>>0&&(n[8965]=g,E=0),C=g+Q|0,A=36292;Q:{E:{i:{n:{a:{r:{for(;;){if((0|C)!=n[A>>2]){if(A=n[A+8>>2])continue;break r}break}if(!(8&a[A+12|0]))break a}for(A=36292;;){if((C=n[A>>2])>>>0<=B>>>0&&(E=C+n[A+4>>2]|0)>>>0>B>>>0)break n;A=n[A+8>>2]}}if(n[A>>2]=g,n[A+4>>2]=n[A+4>>2]+Q,n[4+(c=(g+8&7?-8-g&7:0)+g|0)>>2]=3|i,A=((g=C+(C+8&7?-8-C&7:0)|0)-c|0)-i|0,o=i+c|0,(0|g)==(0|B)){n[8967]=o,A=n[8964]+A|0,n[8964]=A,n[o+4>>2]=1|A;break E}if(n[8966]==(0|g)){n[8966]=o,A=n[8963]+A|0,n[8963]=A,n[o+4>>2]=1|A,n[A+o>>2]=A;break E}if(1==(3&(B=n[g+4>>2]))){f=-8&B;a:if(B>>>0<=255){if(E=B>>>3|0,B=n[g+8>>2],(0|(C=n[g+12>>2]))==(0|B)){s=35844,w=n[8961]&ng(-2,E),n[s>>2]=w;break a}n[B+12>>2]=C,n[C+8>>2]=B}else{if(e=n[g+24>>2],(0|(Q=n[g+12>>2]))==(0|g))if((i=n[(C=g+20|0)>>2])||(i=n[(C=g+16|0)>>2])){for(;B=C,(i=n[(C=(Q=i)+20|0)>>2])||(C=Q+16|0,i=n[Q+16>>2]););n[B>>2]=0}else Q=0;else B=n[g+8>>2],n[B+12>>2]=Q,n[Q+8>>2]=B;if(e){B=n[g+28>>2];r:{if(n[(C=36148+(B<<2)|0)>>2]==(0|g)){if(n[C>>2]=Q,Q)break r;s=35848,w=n[8962]&ng(-2,B),n[s>>2]=w;break a}if(n[e+(n[e+16>>2]==(0|g)?16:20)>>2]=Q,!Q)break a}n[Q+24>>2]=e,(B=n[g+16>>2])&&(n[Q+16>>2]=B,n[B+24>>2]=Q),(B=n[g+20>>2])&&(n[Q+20>>2]=B,n[B+24>>2]=Q)}}g=g+f|0,A=A+f|0}if(n[g+4>>2]=-2&n[g+4>>2],n[o+4>>2]=1|A,n[A+o>>2]=A,A>>>0<=255){A=35884+((g=A>>>3|0)<<3)|0,(B=n[8961])&(g=1<>2]:(n[8961]=g|B,g=A),n[A+8>>2]=o,n[g+12>>2]=o,n[o+12>>2]=A,n[o+8>>2]=g;break E}if(g=0,(C=A>>>8|0)&&(g=31,A>>>0>16777215||(g=28+((g=((i=(C<<=E=C+1048320>>>16&8)<<(g=C+520192>>>16&4))<<(C=i+245760>>>16&2)>>>15|0)-(C|g|E)|0)<<1|A>>>g+21&1)|0)),n[(B=o)+28>>2]=g,n[o+16>>2]=0,n[o+20>>2]=0,B=36148+(g<<2)|0,(C=n[8962])&(E=1<>>1|0)|0),g=n[B>>2];;){if(B=g,(-8&n[g+4>>2])==(0|A))break i;if(g=C>>>29|0,C<<=1,!(g=n[16+(E=(4&g)+B|0)>>2]))break}n[E+16>>2]=o}else n[8962]=C|E,n[B>>2]=o;n[o+24>>2]=B,n[o+12>>2]=o,n[o+8>>2]=o;break E}for(o=(A=Q+-40|0)-(C=g+8&7?-8-g&7:0)|0,n[8964]=o,C=g+C|0,n[8967]=C,n[C+4>>2]=1|o,n[4+(A+g|0)>>2]=40,n[8968]=n[9083],n[(C=(A=(E+(E+-39&7?39-E&7:0)|0)-47|0)>>>0>>0?B:A)+4>>2]=27,A=n[9076],n[C+16>>2]=n[9075],n[C+20>>2]=A,A=n[9074],n[C+8>>2]=n[9073],n[C+12>>2]=A,n[9075]=C+8,n[9074]=Q,n[9073]=g,n[9076]=0,A=C+24|0;n[A+4>>2]=7,g=A+8|0,A=A+4|0,E>>>0>g>>>0;);if((0|B)==(0|C))break C;if(n[C+4>>2]=-2&n[C+4>>2],E=C-B|0,n[B+4>>2]=1|E,n[C>>2]=E,E>>>0<=255){A=35884+((g=E>>>3|0)<<3)|0,(C=n[8961])&(g=1<>2]:(n[8961]=g|C,g=A),n[A+8>>2]=B,n[g+12>>2]=B,n[B+12>>2]=A,n[B+8>>2]=g;break C}if(n[B+16>>2]=0,n[B+20>>2]=0,A=0,(C=E>>>8|0)&&(A=31,E>>>0>16777215||(A=28+((A=((o=(C<<=Q=C+1048320>>>16&8)<<(A=C+520192>>>16&4))<<(C=o+245760>>>16&2)>>>15|0)-(C|A|Q)|0)<<1|E>>>A+21&1)|0)),n[(g=B)+28>>2]=A,g=36148+(A<<2)|0,(C=n[8962])&(Q=1<>>1|0)|0),g=n[g>>2];;){if(C=g,(0|E)==(-8&n[g+4>>2]))break Q;if(g=A>>>29|0,A<<=1,!(g=n[16+(Q=C+(4&g)|0)>>2]))break}n[Q+16>>2]=B,n[B+24>>2]=C}else n[8962]=C|Q,n[g>>2]=B,n[B+24>>2]=g;n[B+12>>2]=B,n[B+8>>2]=B;break C}A=n[B+8>>2],n[A+12>>2]=o,n[B+8>>2]=o,n[o+24>>2]=0,n[o+12>>2]=B,n[o+8>>2]=A}A=c+8|0;break A}A=n[C+8>>2],n[A+12>>2]=B,n[C+8>>2]=B,n[B+24>>2]=0,n[B+12>>2]=C,n[B+8>>2]=A}if(!((A=n[8964])>>>0<=i>>>0)){g=A-i|0,n[8964]=g,B=(A=n[8967])+i|0,n[8967]=B,n[B+4>>2]=1|g,n[A+4>>2]=3|i,A=A+8|0;break A}}n[8960]=48,A=0;break A}g:if(c){A=n[E+28>>2];B:{if(n[(C=36148+(A<<2)|0)>>2]==(0|E)){if(n[C>>2]=g,g)break B;e=ng(-2,A)&e,n[8962]=e;break g}if(n[c+(n[c+16>>2]==(0|E)?16:20)>>2]=g,!g)break g}n[g+24>>2]=c,(A=n[E+16>>2])&&(n[g+16>>2]=A,n[A+24>>2]=g),(A=n[E+20>>2])&&(n[g+20>>2]=A,n[A+24>>2]=g)}g:if(B>>>0<=15)A=B+i|0,n[E+4>>2]=3|A,n[4+(A=A+E|0)>>2]=1|n[A+4>>2];else if(n[E+4>>2]=3|i,n[Q+4>>2]=1|B,n[B+Q>>2]=B,B>>>0<=255)A=35884+((g=B>>>3|0)<<3)|0,(B=n[8961])&(g=1<>2]:(n[8961]=g|B,g=A),n[A+8>>2]=Q,n[g+12>>2]=Q,n[Q+12>>2]=A,n[Q+8>>2]=g;else{A=0,(C=B>>>8|0)&&(A=31,B>>>0>16777215||(A=28+((A=((o=(C<<=i=C+1048320>>>16&8)<<(A=C+520192>>>16&4))<<(C=o+245760>>>16&2)>>>15|0)-(C|A|i)|0)<<1|B>>>A+21&1)|0)),n[(g=Q)+28>>2]=A,n[Q+16>>2]=0,n[Q+20>>2]=0,g=36148+(A<<2)|0;B:{if((C=1<>>1|0)|0),i=n[g>>2];;){if((-8&n[(g=i)+4>>2])==(0|B))break B;if(C=A>>>29|0,A<<=1,!(i=n[16+(C=(4&C)+g|0)>>2]))break}n[C+16>>2]=Q}else n[8962]=C|e,n[g>>2]=Q;n[Q+24>>2]=g,n[Q+12>>2]=Q,n[Q+8>>2]=Q;break g}A=n[g+8>>2],n[A+12>>2]=Q,n[g+8>>2]=Q,n[Q+24>>2]=0,n[Q+12>>2]=g,n[Q+8>>2]=A}A=E+8|0;break A}I:if(c){A=n[g+28>>2];g:{if(n[(B=36148+(A<<2)|0)>>2]==(0|g)){if(n[B>>2]=E,E)break g;s=35848,w=ng(-2,A)&f,n[s>>2]=w;break I}if(n[c+(n[c+16>>2]==(0|g)?16:20)>>2]=E,!E)break I}n[E+24>>2]=c,(A=n[g+16>>2])&&(n[E+16>>2]=A,n[A+24>>2]=E),(A=n[g+20>>2])&&(n[E+20>>2]=A,n[A+24>>2]=E)}C>>>0<=15?(A=C+i|0,n[g+4>>2]=3|A,n[4+(A=A+g|0)>>2]=1|n[A+4>>2]):(n[g+4>>2]=3|i,n[y+4>>2]=1|C,n[C+y>>2]=C,e&&(A=35884+((B=e>>>3|0)<<3)|0,E=n[8966],(B=1<>2]:(n[8961]=B|Q,B=A),n[A+8>>2]=E,n[B+12>>2]=E,n[E+12>>2]=A,n[E+8>>2]=B),n[8966]=y,n[8963]=C),A=g+8|0}return D=I+16|0,0|A}function H(A,I,g){var B,C,Q,E,i,a,r,e,t,c,f,y,s,w,h,D,u,p,F,G,k,_,H,Y,b,m,U,v,S,N,R,M,d,P,J,x,L,K,q,X,V,T,W,j,Z,O,z,$,AA,IA,gA,BA,CA,QA,EA=0,iA=0,nA=0,aA=0,rA=0,oA=0,eA=0,tA=0,cA=0,fA=0,yA=0,sA=0,wA=0,hA=0,DA=0,uA=0,pA=0,lA=0,FA=0,GA=0,kA=0,_A=0,HA=0,YA=0,bA=0;eA=A,e=EA=_A=n[g+4>>2],t=EA>>31,L=EA=(DA=n[I+20>>2])<<1,EA=xg(e,t,EA,H=EA>>31),nA=l,iA=EA,B=EA=n[g>>2],C=EA>>31,c=EA=n[I+24>>2],rA=xg(B,C,EA,Q=EA>>31),EA=l+nA|0,EA=(iA=iA+rA|0)>>>0>>0?EA+1|0:EA,nA=iA,Y=iA=oA=n[g+8>>2],u=iA>>31,f=iA=n[I+16>>2],iA=nA+(rA=xg(oA,u,iA,E=iA>>31))|0,nA=l+EA|0,nA=iA>>>0>>0?nA+1|0:nA,K=EA=pA=n[g+12>>2],p=EA>>31,q=EA=(sA=n[I+12>>2])<<1,EA=(rA=xg(pA,p,EA,b=EA>>31))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=EA,O=EA=uA=n[g+16>>2],k=EA>>31,y=EA=n[I+8>>2],rA=xg(uA,k,EA,i=EA>>31),EA=l+iA|0,EA=(nA=nA+rA|0)>>>0>>0?EA+1|0:EA,aA=nA,z=iA=fA=n[g+20>>2],m=iA>>31,X=iA=(tA=n[I+4>>2])<<1,nA=xg(fA,m,iA,U=iA>>31),EA=l+EA|0,EA=(iA=aA+nA|0)>>>0>>0?EA+1|0:EA,nA=iA,$=iA=yA=n[g+24>>2],V=iA>>31,s=iA=n[I>>2],rA=xg(yA,V,iA,a=iA>>31),iA=l+EA|0,iA=(nA=nA+rA|0)>>>0>>0?iA+1|0:iA,lA=n[g+28>>2],F=EA=o(lA,19),G=EA>>31,T=EA=(wA=n[I+36>>2])<<1,EA=(rA=xg(F,G,EA,v=EA>>31))+nA|0,nA=l+iA|0,nA=EA>>>0>>0?nA+1|0:nA,iA=EA,hA=n[g+32>>2],FA=EA=o(hA,19),GA=EA>>31,w=EA=n[I+32>>2],rA=xg(FA,GA,EA,r=EA>>31),EA=l+nA|0,EA=(iA=iA+rA|0)>>>0>>0?EA+1|0:EA,nA=iA,AA=n[g+36>>2],h=g=o(AA,19),D=g>>31,W=g=(I=n[I+28>>2])<<1,iA=xg(h,D,g,S=g>>31),EA=l+EA|0,cA=g=nA+iA|0,g=g>>>0>>0?EA+1|0:EA,EA=xg(f,E,e,t),iA=l,DA=xg(B,C,rA=DA,N=rA>>31),nA=l+iA|0,nA=(EA=DA+EA|0)>>>0>>0?nA+1|0:nA,DA=sA,sA=xg(oA,u,sA,R=sA>>31),iA=l+nA|0,iA=(EA=sA+EA|0)>>>0>>0?iA+1|0:iA,nA=(sA=xg(y,i,pA,p))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,iA=nA,sA=tA,nA=xg(uA,k,tA,M=tA>>31),EA=l+EA|0,EA=(iA=iA+nA|0)>>>0>>0?EA+1|0:EA,nA=xg(s,a,fA,m),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=iA,d=iA=o(yA,19),iA=nA+(wA=xg(iA,_=iA>>31,tA=wA,P=tA>>31))|0,nA=l+EA|0,nA=iA>>>0>>0?nA+1|0:nA,EA=(wA=xg(w,r,F,G))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,wA=I,I=(nA=xg(FA,GA,I,J=I>>31))+EA|0,EA=l+iA|0,EA=I>>>0>>0?EA+1|0:EA,iA=xg(h,D,c,Q),EA=l+EA|0,HA=I=iA+I|0,I=I>>>0>>0?EA+1|0:EA,EA=xg(e,t,q,b),nA=l,iA=(yA=xg(B,C,f,E))+EA|0,EA=l+nA|0,EA=iA>>>0>>0?EA+1|0:EA,yA=xg(y,i,oA,u),nA=l+EA|0,nA=(iA=yA+iA|0)>>>0>>0?nA+1|0:nA,EA=(yA=xg(pA,p,X,U))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=(yA=xg(s,a,uA,k))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,aA=nA,j=iA=o(fA,19),nA=xg(iA,x=iA>>31,T,v),EA=l+EA|0,EA=(iA=aA+nA|0)>>>0>>0?EA+1|0:EA,nA=xg(w,r,d,_),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,fA=xg(F,G,W,S),nA=l+EA|0,nA=(iA=fA+iA|0)>>>0>>0?nA+1|0:nA,EA=(fA=xg(FA,GA,c,Q))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=(fA=xg(h,D,L,H))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,fA=nA,gA=EA,(iA=nA+33554432|0)>>>0<33554432&&(EA=EA+1|0),yA=iA,BA=EA,nA=HA,HA=(67108863&EA)<<6|iA>>>26,EA=(EA>>26)+I|0,EA=(nA=nA+HA|0)>>>0>>0?EA+1|0:EA,HA=nA,nA=EA,(I=HA+16777216|0)>>>0<16777216&&(nA=nA+1|0),CA=I,EA=g+(iA=nA>>25)|0,EA=(I=(nA=(33554431&nA)<<7|I>>>25)+cA|0)>>>0>>0?EA+1|0:EA,(I=(g=I)+33554432|0)>>>0<33554432&&(EA=EA+1|0),YA=I,I=EA,EA=-67108864&YA,n[eA+24>>2]=g-EA,cA=A,g=xg(e,t,X,U),EA=l,iA=xg(B,C,y,i),nA=l+EA|0,nA=(g=iA+g|0)>>>0>>0?nA+1|0:nA,iA=xg(s,a,Y,u),EA=l+nA|0,EA=(g=iA+g|0)>>>0>>0?EA+1|0:EA,nA=g,eA=g=o(pA,19),iA=xg(g,pA=g>>31,T,v),EA=l+EA|0,EA=(g=nA+iA|0)>>>0>>0?EA+1|0:EA,iA=g,IA=g=o(uA,19),g=iA+(nA=xg(w,r,g,Z=g>>31))|0,iA=l+EA|0,iA=g>>>0>>0?iA+1|0:iA,nA=xg(W,S,j,x),EA=l+iA|0,EA=(g=nA+g|0)>>>0>>0?EA+1|0:EA,iA=xg(c,Q,d,_),nA=l+EA|0,nA=(g=iA+g|0)>>>0>>0?nA+1|0:nA,iA=xg(F,G,L,H),EA=l+nA|0,EA=(g=iA+g|0)>>>0>>0?EA+1|0:EA,iA=xg(FA,GA,f,E),EA=l+EA|0,EA=(g=iA+g|0)>>>0>>0?EA+1|0:EA,nA=xg(h,D,q,b),iA=l+EA|0,aA=g=nA+g|0,g=g>>>0>>0?iA+1|0:iA,EA=xg(s,a,e,t),nA=l,iA=(uA=xg(B,C,sA,M))+EA|0,EA=l+nA|0,EA=iA>>>0>>0?EA+1|0:EA,nA=iA,uA=iA=o(oA,19),iA=nA+(oA=xg(iA,kA=iA>>31,tA,P))|0,nA=l+EA|0,nA=iA>>>0>>0?nA+1|0:nA,oA=xg(w,r,eA,pA),EA=l+nA|0,EA=(iA=oA+iA|0)>>>0>>0?EA+1|0:EA,nA=xg(IA,Z,wA,J),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=(oA=xg(c,Q,j,x))+iA|0,iA=l+EA|0,iA=nA>>>0>>0?iA+1|0:iA,oA=xg(d,_,rA,N),EA=l+iA|0,EA=(nA=oA+nA|0)>>>0>>0?EA+1|0:EA,iA=(oA=xg(f,E,F,G))+nA|0,nA=l+EA|0,nA=iA>>>0>>0?nA+1|0:nA,oA=xg(FA,GA,DA,R),EA=l+nA|0,EA=(iA=oA+iA|0)>>>0>>0?EA+1|0:EA,nA=xg(h,D,y,i),EA=l+EA|0,bA=iA=nA+iA|0,oA=iA>>>0>>0?EA+1|0:EA,EA=xg(EA=o(_A,19),EA>>31,T,v),iA=l,nA=xg(B,C,s,a),iA=l+iA|0,iA=(EA=nA+EA|0)>>>0>>0?iA+1|0:iA,nA=(_A=xg(w,r,uA,kA))+EA|0,EA=l+iA|0,iA=(eA=xg(eA,pA,W,S))+nA|0,nA=l+(nA>>>0<_A>>>0?EA+1|0:EA)|0,nA=iA>>>0>>0?nA+1|0:nA,eA=xg(c,Q,IA,Z),EA=l+nA|0,EA=(iA=eA+iA|0)>>>0>>0?EA+1|0:EA,nA=xg(L,H,j,x),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=(eA=xg(f,E,d,_))+iA|0,iA=l+EA|0,iA=nA>>>0>>0?iA+1|0:iA,eA=xg(F,G,q,b),EA=l+iA|0,EA=(nA=eA+nA|0)>>>0>>0?EA+1|0:EA,iA=(eA=xg(FA,GA,y,i))+nA|0,nA=l+EA|0,nA=iA>>>0>>0?nA+1|0:nA,eA=xg(h,D,X,U),EA=l+nA|0,EA=(iA=eA+iA|0)>>>0>>0?EA+1|0:EA,eA=iA,_A=EA,(iA=iA+33554432|0)>>>0<33554432&&(EA=EA+1|0),pA=iA,uA=EA,kA=(67108863&EA)<<6|iA>>>26,iA=(nA=EA>>26)+oA|0,oA=EA=kA+bA|0,nA=aA,EA=EA>>>0>>0?iA+1|0:iA,(iA=oA+16777216|0)>>>0<16777216&&(EA=EA+1|0),QA=iA,aA=(33554431&EA)<<7|iA>>>25,EA=(EA>>25)+g|0,EA=(iA=nA+aA|0)>>>0>>0?EA+1|0:EA,(g=iA+33554432|0)>>>0<33554432&&(EA=EA+1|0),kA=g,g=EA,EA=-67108864&kA,n[cA+8>>2]=iA-EA,aA=A,EA=xg(c,Q,e,t),nA=l,iA=(cA=xg(B,C,wA,J))+EA|0,EA=l+nA|0,EA=iA>>>0>>0?EA+1|0:EA,nA=xg(Y,u,rA,N),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=xg(f,E,K,p),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,cA=xg(O,k,DA,R),nA=l+EA|0,nA=(iA=cA+iA|0)>>>0>>0?nA+1|0:nA,EA=(cA=xg(y,i,z,m))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=(cA=xg(sA,M,$,V))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,iA=nA,nA=xg(s,a,cA=lA,bA=cA>>31),EA=l+EA|0,EA=(iA=iA+nA|0)>>>0>>0?EA+1|0:EA,nA=xg(FA,GA,tA,P),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,lA=xg(h,D,w,r),nA=l+EA|0,nA=(iA=lA+iA|0)>>>0>>0?nA+1|0:nA,EA=I>>26,I=(lA=(67108863&I)<<6|YA>>>26)+iA|0,iA=EA+nA|0,EA=iA=I>>>0>>0?iA+1|0:iA,(I=(nA=I)+16777216|0)>>>0<16777216&&(EA=EA+1|0),YA=I,I=EA,EA=-33554432&YA,n[aA+28>>2]=nA-EA,lA=A,EA=xg(y,i,e,t),iA=l,aA=xg(B,C,DA,R),nA=l+iA|0,nA=(EA=aA+EA|0)>>>0>>0?nA+1|0:nA,aA=xg(Y,u,sA,M),iA=l+nA|0,iA=(EA=aA+EA|0)>>>0>>0?iA+1|0:iA,nA=(aA=xg(s,a,K,p))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,iA=nA,nA=xg(IA,Z,tA,P),EA=l+EA|0,EA=(iA=iA+nA|0)>>>0>>0?EA+1|0:EA,nA=xg(w,r,j,x),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,aA=xg(d,_,wA,J),nA=l+EA|0,nA=(iA=aA+iA|0)>>>0>>0?nA+1|0:nA,EA=(aA=xg(c,Q,F,G))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=(aA=xg(FA,GA,rA,N))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,iA=nA,nA=xg(h,D,f,E),EA=l+EA|0,aA=iA=iA+nA|0,EA=(EA=iA>>>0>>0?EA+1|0:EA)+(iA=g>>26)|0,nA=EA=(g=aA+(nA=(67108863&g)<<6|kA>>>26)|0)>>>0>>0?EA+1|0:EA,(g=(iA=g)+16777216|0)>>>0<16777216&&(nA=nA+1|0),FA=g,g=nA,EA=-33554432&FA,n[lA+12>>2]=iA-EA,EA=xg(e,t,W,S),nA=l,iA=(aA=xg(B,C,w,r))+EA|0,EA=l+nA|0,EA=iA>>>0>>0?EA+1|0:EA,nA=xg(c,Q,Y,u),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,aA=xg(K,p,L,H),nA=l+EA|0,nA=(iA=aA+iA|0)>>>0>>0?nA+1|0:nA,EA=(aA=xg(f,E,O,k))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,nA=(aA=xg(q,b,z,m))+EA|0,EA=l+iA|0,EA=nA>>>0>>0?EA+1|0:EA,iA=nA,nA=xg(y,i,$,V),EA=l+EA|0,EA=(iA=iA+nA|0)>>>0>>0?EA+1|0:EA,nA=xg(cA,bA,X,U),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,hA=xg(s,a,aA=hA,GA=aA>>31),nA=l+EA|0,nA=(iA=hA+iA|0)>>>0>>0?nA+1|0:nA,EA=(hA=xg(h,D,T,v))+iA|0,iA=l+nA|0,iA=EA>>>0>>0?iA+1|0:iA,hA=EA,EA=(EA=I>>25)+iA|0,EA=(I=hA+(nA=(33554431&I)<<7|YA>>>25)|0)>>>0>>0?EA+1|0:EA,(I=(iA=I)+33554432|0)>>>0<33554432&&(EA=EA+1|0),hA=I,I=EA,EA=-67108864&hA,n[lA+32>>2]=iA-EA,nA=iA=fA-(EA=-67108864&yA)|0,EA=(EA=gA-((fA>>>0>>0)+BA|0)|0)+(iA=g>>25)|0,EA=(g=nA+(fA=(33554431&g)<<7|FA>>>25)|0)>>>0>>0?EA+1|0:EA,(iA=g+33554432|0)>>>0<33554432&&(EA=EA+1|0),nA=(HA-(-33554432&CA)|0)+((67108863&EA)<<6|iA>>>26)|0,n[A+20>>2]=nA,EA=-67108864&iA,n[A+16>>2]=g-EA,EA=xg(w,r,e,t),nA=l,iA=(tA=xg(B,C,tA,P))+EA|0,EA=l+nA|0,EA=iA>>>0>>0?EA+1|0:EA,nA=(tA=xg(Y,u,wA,J))+iA|0,iA=l+EA|0,iA=nA>>>0>>0?iA+1|0:iA,EA=(tA=xg(c,Q,K,p))+nA|0,nA=l+iA|0,iA=(rA=xg(O,k,rA,N))+EA|0,EA=l+(EA>>>0>>0?nA+1|0:nA)|0,EA=iA>>>0>>0?EA+1|0:EA,nA=xg(f,E,z,m),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=xg(DA,R,$,V),EA=l+EA|0,EA=(iA=nA+iA|0)>>>0>>0?EA+1|0:EA,nA=(rA=xg(y,i,cA,bA))+iA|0,iA=l+EA|0,iA=nA>>>0>>0?iA+1|0:iA,EA=(rA=xg(aA,GA,sA,M))+nA|0,nA=l+iA|0,nA=EA>>>0>>0?nA+1|0:nA,iA=(rA=xg(s,a,AA,AA>>31))+EA|0,EA=l+nA|0,g=iA,EA=(EA=iA>>>0>>0?EA+1|0:EA)+(iA=I>>26)|0,EA=(I=g+(nA=(67108863&I)<<6|hA>>>26)|0)>>>0>>0?EA+1|0:EA,nA=g=I,(I=g+16777216|0)>>>0<16777216&&(EA=EA+1|0),I=-33554432&(iA=I),n[A+36>>2]=g-I,g=A,nA=oA-(-33554432&QA)|0,rA=eA-(I=-67108864&pA)|0,DA=_A-((eA>>>0>>0)+uA|0)|0,EA=xg((33554431&(I=EA))<<7|iA>>>25,EA>>=25,19,0),iA=l+DA|0,aA=g,EA=iA=(I=EA+rA|0)>>>0>>0?iA+1|0:iA,(g=I+33554432|0)>>>0<33554432&&(EA=EA+1|0),iA=((67108863&EA)<<6|(iA=g)>>>26)+nA|0,n[aA+4>>2]=iA,iA=A,A=-67108864&g,n[iA>>2]=I-A}function Y(A,I){var g,B,C,Q,E,i,a,r,e,t,c,f,y,s,w,h,D,u,p,F,G,k,_,H,Y,b,m,U,v,S,N,R,M,d,P,J,x,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0,CA=0,QA=0,EA=0,iA=0,nA=0;iA=A,Q=L=(V=n[I+12>>2])<<1,E=L>>31,i=L=(Z=n[I+4>>2])<<1,L=xg(Q,E,L,g=L>>31),q=l,K=L,k=L=IA=n[I+8>>2],X=xg(L,$=L>>31,L,$),L=l+q|0,L=(K=K+X|0)>>>0>>0?L+1|0:L,X=K,a=K=BA=n[I+16>>2],r=K>>31,e=K=(CA=n[I>>2])<<1,q=xg(a,r,K,B=K>>31),L=l+L|0,L=(K=X+q|0)>>>0>>0?L+1|0:L,W=K,q=n[I+28>>2],p=K=o(q,38),v=q,X=xg(K,h=K>>31,q,_=q>>31),L=l+L|0,L=(K=W+X|0)>>>0>>0?L+1|0:L,T=K,W=n[I+32>>2],j=xg(c=K=o(W,19),f=K>>31,K=(X=n[I+24>>2])<<1,K>>31),K=l+L|0,K=(O=T+j|0)>>>0>>0?K+1|0:K,T=O,AA=n[I+36>>2],t=L=o(AA,38),C=L>>31,D=I=(O=n[I+20>>2])<<1,j=xg(L,C,I,s=I>>31),I=l+K|0,H=(L=T+j|0)<<1,d=L=(L>>>0>>0?I+1|0:I)<<1|L>>>31,(I=H+33554432|0)>>>0<33554432&&(L=L+1|0),S=I,P=L,I=L>>26,L=(67108863&L)<<6|S>>>26,K=xg(i,g,a,r),j=l,T=L,u=L=IA<<1,QA=V,V=xg(L,w=L>>31,V,Y=V>>31),L=l+j|0,L=(K=V+K|0)>>>0>>0?L+1|0:L,IA=O,V=(j=xg(O,F=O>>31,e,B))+K|0,K=l+L|0,K=V>>>0>>0?K+1|0:K,gA=V,N=L=q<<1,V=xg(c,f,L,b=L>>31),L=l+K|0,L=(q=gA+V|0)>>>0>>0?L+1|0:L,K=q,V=X,q=xg(t,C,X,y=X>>31),L=l+L|0,L=(K=K+q|0)>>>0>>0?L+1|0:L,q=K,I=I+(K=L<<1|K>>>31)|0,EA=L=T+(q<<=1)|0,L=L>>>0>>0?I+1|0:I,(I=EA+16777216|0)>>>0<16777216&&(L=L+1|0),J=I,I=(33554431&L)<<7|I>>>25,q=L>>25,L=xg(Q,E,QA,Y),K=l,T=I,I=(j=xg(a,r,u,w))+L|0,L=l+K|0,L=I>>>0>>0?L+1|0:L,K=xg(i,g,D,s),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=(j=xg(e,B,V,y))+I|0,I=l+L|0,I=K>>>0>>0?I+1|0:I,j=W,W=xg(c,f,W,G=W>>31),L=l+I|0,L=(K=W+K|0)>>>0>>0?L+1|0:L,I=(W=xg(t,C,N,b))+K|0,K=l+L|0,I=((L=I)>>>0>>0?K+1|0:K)<<1|L>>>31,W=L<<1,L=I+q|0,L=(K=T+W|0)>>>0>>0?L+1|0:L,(K=(I=K)+33554432|0)>>>0<33554432&&(L=L+1|0),gA=K,q=L,L=-67108864&K,n[iA+24>>2]=I-L,W=A,I=xg(I=o(O,38),I>>31,IA,F),L=l,T=I,O=xg(I=CA,K=I>>31,I,K),K=l+L|0,K=(I=T+O|0)>>>0>>0?K+1|0:K,L=I,z=I=o(X,19),m=I>>31,R=I=BA<<1,I=L+(X=xg(z,m,I,U=I>>31))|0,L=l+K|0,L=I>>>0>>0?L+1|0:L,K=xg(Q,E,p,h),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=(X=xg(c,f,u,w))+I|0,I=l+L|0,I=K>>>0>>0?I+1|0:I,X=xg(i,g,t,C),L=l+I|0,iA=L=((I=K=X+K|0)>>>0>>0?L+1|0:L)<<1|I>>>31,K=L,(I=33554432+(O=I<<1)|0)>>>0<33554432&&(K=K+1|0),CA=I,BA=K,I=(67108863&K)<<6|I>>>26,X=K>>26,L=xg(z,m,D,s),K=l,nA=I,I=(Z=xg(e,B,T=Z,M=T>>31))+L|0,L=l+K|0,L=I>>>0>>0?L+1|0:L,K=(Z=xg(a,r,p,h))+I|0,I=l+L|0,I=K>>>0>>0?I+1|0:I,Z=xg(c,f,Q,E),L=l+I|0,L=(K=Z+K|0)>>>0>>0?L+1|0:L,I=(Z=xg(t,C,k,$))+K|0,K=l+L|0,I=((L=I)>>>0>>0?K+1|0:K)<<1|L>>>31,Z=L<<1,L=I+X|0,L=(K=nA+Z|0)>>>0>>0?L+1|0:L,Z=K,(I=K+16777216|0)>>>0<16777216&&(L=L+1|0),nA=I,K=I,I=L>>25,L=(33554431&L)<<7|K>>>25,X=I,I=xg(e,B,k,$),K=l,x=L,T=xg(i,g,T,M),L=l+K|0,L=(I=T+I|0)>>>0>>0?L+1|0:L,T=xg(z,m,V,y),K=l+L|0,K=(I=T+I|0)>>>0>>0?K+1|0:K,T=xg(D,s,p,h),L=l+K|0,L=(I=T+I|0)>>>0>>0?L+1|0:L,K=xg(c,f,R,U),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=(T=xg(t,C,Q,E))+I|0,I=l+L|0,L=(L=(I=K>>>0>>0?I+1|0:I)<<1|K>>>31)+X|0,K=L=(I=x+(K<<=1)|0)>>>0>>0?L+1|0:L,(L=I+33554432|0)>>>0<33554432&&(K=K+1|0),T=L,X=K,L&=-67108864,n[W+8>>2]=I-L,I=xg(u,w,IA,F),K=l,L=(z=xg(a,r,Q,E))+I|0,I=l+K|0,I=L>>>0>>0?I+1|0:I,K=(z=xg(i,g,V,y))+L|0,L=l+I|0,L=K>>>0>>0?L+1|0:L,I=(z=xg(e,B,v,_))+K|0,K=l+L|0,K=I>>>0>>0?K+1|0:K,z=xg(t,C,j,G),L=l+K|0,L=(L=(L=(I=z+I|0)>>>0>>0?L+1|0:L)<<1|I>>>31)+(K=q>>26)|0,K=I=(q=(67108863&q)<<6|gA>>>26)+(I<<1)|0,I=L=I>>>0>>0?L+1|0:L,(L=K+16777216|0)>>>0<16777216&&(I=I+1|0),gA=L,q=I,I=-33554432&L,n[W+28>>2]=K-I,I=xg(e,B,QA,Y),L=l,K=xg(i,g,k,$),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=xg(V,y,p,h),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=($=xg(c,f,D,s))+I|0,I=l+L|0,I=K>>>0<$>>>0?I+1|0:I,L=($=xg(t,C,a,r))+K|0,K=l+I|0,I=L,L=(L>>>0<$>>>0?K+1|0:K)<<1|L>>>31,K=I<<1,L=(I=X>>26)+L|0,L=(K=K+(X=(67108863&X)<<6|T>>>26)|0)>>>0>>0?L+1|0:L,(K=(I=K)+16777216|0)>>>0<16777216&&(L=L+1|0),QA=K,X=L,L=-33554432&K,n[W+12>>2]=I-L,$=A,I=xg(V,y,u,w),L=l,K=xg(a,r,a,r),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=xg(Q,E,D,s),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=xg(i,g,N,b),L=l+L|0,L=(I=K+I|0)>>>0>>0?L+1|0:L,K=(W=xg(e,B,j,G))+I|0,I=l+L|0,I=K>>>0>>0?I+1|0:I,L=(AA=xg(t,C,W=AA,T=W>>31))+K|0,K=l+I|0,I=L,L=(L>>>0>>0?K+1|0:K)<<1|L>>>31,K=I<<1,L=(I=q>>25)+L|0,L=(K=K+(q=(33554431&q)<<7|gA>>>25)|0)>>>0>>0?L+1|0:L,(K=(I=K)+33554432|0)>>>0<33554432&&(L=L+1|0),AA=K,q=L,L=-67108864&K,n[$+32>>2]=I-L,L=X>>25,K=(X=(33554431&X)<<7|QA>>>25)+(H-(I=-67108864&S)|0)|0,I=L+(d-((H>>>0>>0)+P|0)|0)|0,L=I=K>>>0>>0?I+1|0:I,(I=K+33554432|0)>>>0<33554432&&(L=L+1|0),X=((67108863&L)<<6|I>>>26)+(EA=EA-(-33554432&J)|0)|0,n[$+20>>2]=X,I&=-67108864,n[A+16>>2]=K-I,I=xg(Q,E,V,y),K=l,L=(V=xg(IA,F,R,U))+I|0,I=l+K|0,I=L>>>0>>0?I+1|0:I,K=(V=xg(u,w,v,_))+L|0,L=l+I|0,L=K>>>0>>0?L+1|0:L,I=(V=xg(i,g,j,G))+K|0,K=l+L|0,K=I>>>0>>0?K+1|0:K,V=xg(e,B,W,T),L=l+K|0,L=(L=(L=(I=V+I|0)>>>0>>0?L+1|0:L)<<1|I>>>31)+(K=q>>26)|0,L=(I=(q=(67108863&q)<<6|AA>>>26)+(I<<1)|0)>>>0>>0?L+1|0:L,K=I,q=I,X=I,I=L,(L=K+16777216|0)>>>0<16777216&&(I=I+1|0),K=-33554432&L,n[A+36>>2]=q-K,q=A,X=Z-(-33554432&nA)|0,I=(L=xg((33554431&I)<<7|L>>>25,I>>25,19,0))+(O-(K=-67108864&CA)|0)|0,K=l+(iA-((O>>>0>>0)+BA|0)|0)|0,K=I>>>0>>0?K+1|0:K,L=I,V=q,I=K,(K=L+33554432|0)>>>0<33554432&&(I=I+1|0),q=((67108863&I)<<6|K>>>26)+X|0,n[V+4>>2]=q,I=A,A=-67108864&K,n[I>>2]=L-A}function b(A,I,g){var B,C=0,Q=0,E=0,i=0,a=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,u=0,p=0,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0,v=0,S=0,N=0,R=0,M=0,d=0,P=0,J=0,x=0,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0,CA=0;for(D=B=D-2048|0,BB(B+1024|0,I),YI(B+1024|0,A),BB(B,B+1024|0),YI(B,g),I=0;e=n[(i=(B+1024|0)+(96|(A=M<<7))|0)>>2],Q=n[i+4>>2],a=k=jg((C=e)^(e=MI(e=n[(r=o=A+(B+1024|0)|0)>>2],a=n[r+4>>2],E=n[(r=(B+1024|0)+(32|A)|0)>>2],t=n[r+4>>2])),(a=Q)^(Q=l),32),y=e,w=Q,C=jg((k=MI(C=n[(Q=e=(B+1024|0)+(64|A)|0)>>2],s=n[Q+4>>2],k,Q=l))^E,(C=t)^(t=l),24),E=jg(a^(S=MI(y,w,C,s=l)),(U=l)^Q,16),a=Q=l,n[i>>2]=E,n[i+4>>2]=Q,t=MI(k,t,E,Q),h=Q=l,n[e>>2]=t,n[e+4>>2]=Q,k=jg(C^t,Q^s,63),s=Q=l,n[r>>2]=k,n[r+4>>2]=Q,C=n[(Q=m=(B+1024|0)+(104|A)|0)>>2],b=n[Q+4>>2],_=n[(Q=(B+1024|0)+(72|A)|0)>>2],f=n[Q+4>>2],c=C,u=MI(u=n[(C=w=(B+1024|0)+(8|A)|0)>>2],F=n[C+4>>2],y=n[(C=G=(B+1024|0)+(40|A)|0)>>2],v=n[C+4>>2]),C=MI(_,f,P=jg(c^u,(C=b)^(b=l),32),F=l),Z=MI(c=u,b,v=jg(_=C^y,(y=l)^v,24),u=l),C=MI(C,y,b=jg(Z^P,(O=l)^F,16),z=l),y=P=l,n[Q>>2]=C,n[Q+4>>2]=y,v=jg(C^v,y^u,63),u=l,J=n[(F=P=(B+1024|0)+(112|A)|0)>>2],N=n[F+4>>2],H=n[(F=(B+1024|0)+(80|A)|0)>>2],L=n[F+4>>2],d=jg((f=J)^(Y=MI(Y=n[(_=J=(B+1024|0)+(16|A)|0)>>2],p=n[_+4>>2],R=n[(c=_=(B+1024|0)+(48|A)|0)>>2],c=n[c+4>>2])),(p=N)^(N=l),32),c=jg(H=(f=MI(H,L,d,p=l))^R,c^(R=l),24),IA=jg(($=MI(Y,H=N,c,N=l))^d,(AA=l)^p,16),N=jg(c^(L=MI(f,R,IA,gA=l)),(V=l)^N,63),c=l,d=n[(Y=R=(B+1024|0)+(120|A)|0)>>2],p=n[Y+4>>2],q=n[(f=Y=(B+1024|0)+(88|A)|0)>>2],j=n[f+4>>2],x=jg((X=d)^(W=MI(T=n[(f=d=(B+1024|0)+(24|A)|0)>>2],x=n[f+4>>2],H=n[(A=(B+1024|0)+(56|A)|0)>>2],f=n[A+4>>2])),(T=p)^(p=l),32),f=jg(X=(q=MI(q,j,x,K=l))^H,f^(H=l),24),X=H,x=jg((H=MI(W,H=p,f,p=l))^x,(W=l)^K,16),p=jg(f^(q=MI(q,X,x,K=l)),(j=l)^p,63),f=l,X=L,T=V,L=jg(x^(S=MI(S,U,v,u)),K^(U=l),32),v=jg((x=MI(X,T,L,V=l))^v,(K=l)^u,24),u=MI(u=S,U,v,S=l),U=l,n[o>>2]=u,n[o+4>>2]=U,o=jg(u^L,V^U,16),u=l,n[R>>2]=o,n[R+4>>2]=u,o=MI(x,K,o,u),u=l,n[F>>2]=o,n[F+4>>2]=u,BA=G,CA=jg(o^v,u^S,63),n[BA>>2]=CA,n[G+4>>2]=l,G=jg((o=MI(Z,O,N,c))^E,(u=a)^(a=l),32),E=jg((u=MI(q,j,G,v=l))^N,(F=l)^c,24),o=MI(o,c=a,E,a=l),c=N=l,n[w>>2]=o,n[w+4>>2]=c,o=jg(o^G,c^v,16),w=l,n[i>>2]=o,n[i+4>>2]=w,i=MI(u,F,o,w),n[Y>>2]=i,o=l,n[Y+4>>2]=o,BA=_,CA=jg(E^i,o^a,63),n[BA>>2]=CA,n[_+4>>2]=l,w=t,E=MI($,AA,p,f),h=MI(w,h,o=jg(b^E,z^(t=l),32),a=l),E=MI(E,c=t,i=jg(h^p,(w=l)^f,24),t=l),G=l,n[J>>2]=E,n[J+4>>2]=G,E=jg(E^o,a^G,16),o=l,n[m>>2]=E,n[m+4>>2]=o,E=MI(h,w,E,o),n[e>>2]=E,a=e,e=l,n[a+4>>2]=e,BA=A,CA=jg(E^i,e^t,63),n[BA>>2]=CA,n[A+4>>2]=l,A=k,i=MI(H,W,k,s),k=MI(C,y,E=jg(IA^i,gA^(e=l),32),t=l),i=MI(i,a=e,A=jg(A^k,(C=l)^s,24),e=l),o=l,n[d>>2]=i,n[d+4>>2]=o,i=jg(E^i,t^o,16),E=l,n[P>>2]=i,n[P+4>>2]=E,i=MI(k,C,i,E),n[Q>>2]=i,C=Q,Q=l,n[C+4>>2]=Q,BA=r,CA=jg(A^i,Q^e,63),n[BA>>2]=CA,n[r+4>>2]=l,8!=(0|(M=M+1|0)););for(;r=n[(i=768+(A=(Q=I<<4)+(B+1024|0)|0)|0)>>2],i=n[i+4>>2],C=r,r=n[A+256>>2],e=n[A+260>>2],t=jg(C^(E=MI(n[A>>2],n[A+4>>2],r,e)),(t=i)^(i=l),32),a=i,i=l,k=jg((C=r)^(r=MI(n[A+512>>2],n[A+516>>2],t,i)),(s=e)^(e=l),24),i=jg(t^(b=MI(E,a,k,C=l)),(y=l)^i,16),E=t=l,n[A+768>>2]=i,n[A+772>>2]=E,r=MI(r,e,i,E),t=e=l,n[A+512>>2]=r,n[A+516>>2]=e,e=jg(r^k,C^e,63),k=C=l,n[A+256>>2]=e,n[A+260>>2]=C,M=n[A+780>>2],w=n[A+520>>2],c=n[A+524>>2],s=n[A+776>>2],Q=C=(B+1024|0)+(8|Q)|0,o=n[A+264>>2],a=n[A+268>>2],h=MI(n[Q>>2],n[Q+4>>2],o,a),Q=MI(w,c,s=jg(s^h,(Q=M)^(M=l),32),m=l),v=MI(w=h,M,a=jg(c=Q^o,a^(o=l),24),h=l),Q=MI(Q,o,M=jg(v^s,(u=l)^m,16),P=l),o=s=l,n[A+520>>2]=Q,n[A+524>>2]=o,a=jg(Q^a,o^h,63),h=l,s=n[A+900>>2],_=n[A+640>>2],f=n[A+644>>2],F=n[A+896>>2],m=n[A+384>>2],w=n[A+388>>2],F=jg(F^(G=MI(n[A+128>>2],n[A+132>>2],m,w)),(c=s)^(s=l),32),w=jg(c=(_=MI(_,f,F,J=l))^m,w^(m=l),24),c=_,_=jg((_=F)^(F=MI(G,f=s,w,s=l)),(f=J)^(J=l),16),s=jg(w^(c=MI(c,m,_,N=l)),(R=l)^s,63),m=l,w=n[A+908>>2],S=n[A+648>>2],U=n[A+652>>2],p=n[A+904>>2],G=n[A+392>>2],Y=n[A+396>>2],p=jg(p^(d=MI(n[A+136>>2],n[A+140>>2],G,Y)),(f=w)^(w=l),32),H=Y=jg(U=(S=MI(S,U,p,f=l))^G,Y^(G=l),24),p=jg((Y=MI(d,U=w,Y,w=l))^p,(d=l)^f,16),w=jg(H^(S=MI(S,G,p,f=l)),(U=l)^w,63),G=l,H=c,L=R,c=jg(p^(b=MI(b,y,a,h)),f^(y=l),32),a=jg((p=MI(H,L,c,R=l))^a,(f=l)^h,24),h=MI(h=b,y,a,b=l),y=l,n[A>>2]=h,n[A+4>>2]=y,h=jg(h^c,R^y,16),y=l,n[A+904>>2]=h,n[A+908>>2]=y,h=MI(p,f,h,y),y=l,n[A+640>>2]=h,n[A+644>>2]=y,BA=A,CA=jg(a^h,y^b,63),n[BA+264>>2]=CA,n[A+268>>2]=l,y=s,h=jg((a=MI(v,u,s,m))^i,(s=E)^(E=l),32),i=jg(y^(b=MI(S,U,h,s=l)),(c=m)^(m=l),24),E=MI(y=a,E,i,a=l),y=l,n[C>>2]=E,n[C+4>>2]=y,E=jg(E^h,s^y,16),C=l,n[A+768>>2]=E,n[A+772>>2]=C,E=MI(b,m,E,C),n[A+648>>2]=E,C=l,n[A+652>>2]=C,BA=A,CA=jg(E^i,C^a,63),n[BA+384>>2]=CA,n[A+388>>2]=l,a=r,s=t,r=MI(F,J,w,G),M=MI(a,s,t=jg(M^r,P^(E=l),32),C=l),r=MI(r,s=E,i=jg(M^w,(a=l)^G,24),E=l),h=l,n[A+128>>2]=r,n[A+132>>2]=h,r=jg(r^t,C^h,16),C=t=l,n[A+776>>2]=r,n[A+780>>2]=C,r=MI(M,a,r,C),n[A+512>>2]=r,t=l,n[A+516>>2]=t,BA=A,CA=jg(i^r,E^t,63),n[BA+392>>2]=CA,n[A+396>>2]=l,C=e,t=Q,Q=jg(_^(r=MI(Y,d,e,k)),N^(e=l),32),i=jg(C^(t=MI(t,o,Q,E=l)),(a=k)^(k=l),24),r=MI(r,C=e,i,e=l),C=l,n[A+136>>2]=r,n[A+140>>2]=C,r=jg(Q^r,E^C,16),Q=l,n[A+896>>2]=r,n[A+900>>2]=Q,r=MI(t,k,r,Q),n[A+520>>2]=r,Q=l,n[A+524>>2]=Q,BA=A,CA=jg(i^r,Q^e,63),n[BA+256>>2]=CA,n[A+260>>2]=l,8!=(0|(I=I+1|0)););BB(g,B),YI(g,B+1024|0),D=B+2048|0}function m(A,I,g){var B,C=0,Q=0,E=0,i=0,a=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,u=0,p=0,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0,v=0,S=0,N=0,R=0,M=0,d=0,P=0,J=0,x=0,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0,CA=0;for(D=B=D-2048|0,BB(B+1024|0,I),YI(B+1024|0,A),BB(B,B+1024|0),I=0;e=n[(i=(B+1024|0)+(96|(A=M<<7))|0)>>2],Q=n[i+4>>2],a=k=jg((C=e)^(e=MI(e=n[(r=o=A+(B+1024|0)|0)>>2],a=n[r+4>>2],E=n[(r=(B+1024|0)+(32|A)|0)>>2],t=n[r+4>>2])),(a=Q)^(Q=l),32),y=e,w=Q,C=jg((k=MI(C=n[(Q=e=(B+1024|0)+(64|A)|0)>>2],s=n[Q+4>>2],k,Q=l))^E,(C=t)^(t=l),24),E=jg(a^(S=MI(y,w,C,s=l)),(U=l)^Q,16),a=Q=l,n[i>>2]=E,n[i+4>>2]=Q,t=MI(k,t,E,Q),h=Q=l,n[e>>2]=t,n[e+4>>2]=Q,k=jg(C^t,Q^s,63),s=Q=l,n[r>>2]=k,n[r+4>>2]=Q,C=n[(Q=m=(B+1024|0)+(104|A)|0)>>2],b=n[Q+4>>2],_=n[(Q=(B+1024|0)+(72|A)|0)>>2],f=n[Q+4>>2],c=C,u=MI(u=n[(C=w=(B+1024|0)+(8|A)|0)>>2],F=n[C+4>>2],y=n[(C=G=(B+1024|0)+(40|A)|0)>>2],v=n[C+4>>2]),C=MI(_,f,P=jg(c^u,(C=b)^(b=l),32),F=l),Z=MI(c=u,b,v=jg(_=C^y,(y=l)^v,24),u=l),C=MI(C,y,b=jg(Z^P,(O=l)^F,16),z=l),y=P=l,n[Q>>2]=C,n[Q+4>>2]=y,v=jg(C^v,y^u,63),u=l,J=n[(F=P=(B+1024|0)+(112|A)|0)>>2],N=n[F+4>>2],H=n[(F=(B+1024|0)+(80|A)|0)>>2],L=n[F+4>>2],d=jg((f=J)^(Y=MI(Y=n[(_=J=(B+1024|0)+(16|A)|0)>>2],p=n[_+4>>2],R=n[(c=_=(B+1024|0)+(48|A)|0)>>2],c=n[c+4>>2])),(p=N)^(N=l),32),c=jg(H=(f=MI(H,L,d,p=l))^R,c^(R=l),24),IA=jg(($=MI(Y,H=N,c,N=l))^d,(AA=l)^p,16),N=jg(c^(L=MI(f,R,IA,gA=l)),(V=l)^N,63),c=l,d=n[(Y=R=(B+1024|0)+(120|A)|0)>>2],p=n[Y+4>>2],q=n[(f=Y=(B+1024|0)+(88|A)|0)>>2],j=n[f+4>>2],x=jg((X=d)^(W=MI(T=n[(f=d=(B+1024|0)+(24|A)|0)>>2],x=n[f+4>>2],H=n[(A=(B+1024|0)+(56|A)|0)>>2],f=n[A+4>>2])),(T=p)^(p=l),32),f=jg(X=(q=MI(q,j,x,K=l))^H,f^(H=l),24),X=H,x=jg((H=MI(W,H=p,f,p=l))^x,(W=l)^K,16),p=jg(f^(q=MI(q,X,x,K=l)),(j=l)^p,63),f=l,X=L,T=V,L=jg(x^(S=MI(S,U,v,u)),K^(U=l),32),v=jg((x=MI(X,T,L,V=l))^v,(K=l)^u,24),u=MI(u=S,U,v,S=l),U=l,n[o>>2]=u,n[o+4>>2]=U,o=jg(u^L,V^U,16),u=l,n[R>>2]=o,n[R+4>>2]=u,o=MI(x,K,o,u),u=l,n[F>>2]=o,n[F+4>>2]=u,BA=G,CA=jg(o^v,u^S,63),n[BA>>2]=CA,n[G+4>>2]=l,G=jg((o=MI(Z,O,N,c))^E,(u=a)^(a=l),32),E=jg((u=MI(q,j,G,v=l))^N,(F=l)^c,24),o=MI(o,c=a,E,a=l),c=N=l,n[w>>2]=o,n[w+4>>2]=c,o=jg(o^G,c^v,16),w=l,n[i>>2]=o,n[i+4>>2]=w,i=MI(u,F,o,w),n[Y>>2]=i,o=l,n[Y+4>>2]=o,BA=_,CA=jg(E^i,o^a,63),n[BA>>2]=CA,n[_+4>>2]=l,w=t,E=MI($,AA,p,f),h=MI(w,h,o=jg(b^E,z^(t=l),32),a=l),E=MI(E,c=t,i=jg(h^p,(w=l)^f,24),t=l),G=l,n[J>>2]=E,n[J+4>>2]=G,E=jg(E^o,a^G,16),o=l,n[m>>2]=E,n[m+4>>2]=o,E=MI(h,w,E,o),n[e>>2]=E,a=e,e=l,n[a+4>>2]=e,BA=A,CA=jg(E^i,e^t,63),n[BA>>2]=CA,n[A+4>>2]=l,A=k,i=MI(H,W,k,s),k=MI(C,y,E=jg(IA^i,gA^(e=l),32),t=l),i=MI(i,a=e,A=jg(A^k,(C=l)^s,24),e=l),o=l,n[d>>2]=i,n[d+4>>2]=o,i=jg(E^i,t^o,16),E=l,n[P>>2]=i,n[P+4>>2]=E,i=MI(k,C,i,E),n[Q>>2]=i,C=Q,Q=l,n[C+4>>2]=Q,BA=r,CA=jg(A^i,Q^e,63),n[BA>>2]=CA,n[r+4>>2]=l,8!=(0|(M=M+1|0)););for(;r=n[(i=768+(A=(Q=I<<4)+(B+1024|0)|0)|0)>>2],i=n[i+4>>2],C=r,r=n[A+256>>2],e=n[A+260>>2],t=jg(C^(E=MI(n[A>>2],n[A+4>>2],r,e)),(t=i)^(i=l),32),a=i,i=l,k=jg((C=r)^(r=MI(n[A+512>>2],n[A+516>>2],t,i)),(s=e)^(e=l),24),i=jg(t^(b=MI(E,a,k,C=l)),(y=l)^i,16),E=t=l,n[A+768>>2]=i,n[A+772>>2]=E,r=MI(r,e,i,E),t=e=l,n[A+512>>2]=r,n[A+516>>2]=e,e=jg(r^k,C^e,63),k=C=l,n[A+256>>2]=e,n[A+260>>2]=C,M=n[A+780>>2],w=n[A+520>>2],c=n[A+524>>2],s=n[A+776>>2],Q=C=(B+1024|0)+(8|Q)|0,o=n[A+264>>2],a=n[A+268>>2],h=MI(n[Q>>2],n[Q+4>>2],o,a),Q=MI(w,c,s=jg(s^h,(Q=M)^(M=l),32),m=l),v=MI(w=h,M,a=jg(c=Q^o,a^(o=l),24),h=l),Q=MI(Q,o,M=jg(v^s,(u=l)^m,16),P=l),o=s=l,n[A+520>>2]=Q,n[A+524>>2]=o,a=jg(Q^a,o^h,63),h=l,s=n[A+900>>2],_=n[A+640>>2],f=n[A+644>>2],F=n[A+896>>2],m=n[A+384>>2],w=n[A+388>>2],F=jg(F^(G=MI(n[A+128>>2],n[A+132>>2],m,w)),(c=s)^(s=l),32),w=jg(c=(_=MI(_,f,F,J=l))^m,w^(m=l),24),c=_,_=jg((_=F)^(F=MI(G,f=s,w,s=l)),(f=J)^(J=l),16),s=jg(w^(c=MI(c,m,_,N=l)),(R=l)^s,63),m=l,w=n[A+908>>2],S=n[A+648>>2],U=n[A+652>>2],p=n[A+904>>2],G=n[A+392>>2],Y=n[A+396>>2],p=jg(p^(d=MI(n[A+136>>2],n[A+140>>2],G,Y)),(f=w)^(w=l),32),H=Y=jg(U=(S=MI(S,U,p,f=l))^G,Y^(G=l),24),p=jg((Y=MI(d,U=w,Y,w=l))^p,(d=l)^f,16),w=jg(H^(S=MI(S,G,p,f=l)),(U=l)^w,63),G=l,H=c,L=R,c=jg(p^(b=MI(b,y,a,h)),f^(y=l),32),a=jg((p=MI(H,L,c,R=l))^a,(f=l)^h,24),h=MI(h=b,y,a,b=l),y=l,n[A>>2]=h,n[A+4>>2]=y,h=jg(h^c,R^y,16),y=l,n[A+904>>2]=h,n[A+908>>2]=y,h=MI(p,f,h,y),y=l,n[A+640>>2]=h,n[A+644>>2]=y,BA=A,CA=jg(a^h,y^b,63),n[BA+264>>2]=CA,n[A+268>>2]=l,y=s,h=jg((a=MI(v,u,s,m))^i,(s=E)^(E=l),32),i=jg(y^(b=MI(S,U,h,s=l)),(c=m)^(m=l),24),E=MI(y=a,E,i,a=l),y=l,n[C>>2]=E,n[C+4>>2]=y,E=jg(E^h,s^y,16),C=l,n[A+768>>2]=E,n[A+772>>2]=C,E=MI(b,m,E,C),n[A+648>>2]=E,C=l,n[A+652>>2]=C,BA=A,CA=jg(E^i,C^a,63),n[BA+384>>2]=CA,n[A+388>>2]=l,a=r,s=t,r=MI(F,J,w,G),M=MI(a,s,t=jg(M^r,P^(E=l),32),C=l),r=MI(r,s=E,i=jg(M^w,(a=l)^G,24),E=l),h=l,n[A+128>>2]=r,n[A+132>>2]=h,r=jg(r^t,C^h,16),C=t=l,n[A+776>>2]=r,n[A+780>>2]=C,r=MI(M,a,r,C),n[A+512>>2]=r,t=l,n[A+516>>2]=t,BA=A,CA=jg(i^r,E^t,63),n[BA+392>>2]=CA,n[A+396>>2]=l,C=e,t=Q,Q=jg(_^(r=MI(Y,d,e,k)),N^(e=l),32),i=jg(C^(t=MI(t,o,Q,E=l)),(a=k)^(k=l),24),r=MI(r,C=e,i,e=l),C=l,n[A+136>>2]=r,n[A+140>>2]=C,r=jg(Q^r,E^C,16),Q=l,n[A+896>>2]=r,n[A+900>>2]=Q,r=MI(t,k,r,Q),n[A+520>>2]=r,Q=l,n[A+524>>2]=Q,BA=A,CA=jg(i^r,Q^e,63),n[BA+256>>2]=CA,n[A+260>>2]=l,8!=(0|(I=I+1|0)););BB(g,B),YI(g,B+1024|0),D=B+2048|0}function U(A,I){var g,B,C,Q,E,i,a,r,e,t,c,f,y,s,w,h,D,u,p,F,G,k,_,H,Y,b,m,U,v,S,N,R,M,d,P,J,x=0,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0,CA=0,QA=0;V=A,t=L=(x=n[I+12>>2])<<1,W=x,x=xg(L,Q=L>>31,x,H=x>>31),K=l,L=x,E=x=CA=n[I+16>>2],i=x>>31,D=x=(Z=n[I+8>>2])<<1,X=xg(E,i,x,y=x>>31),x=l+K|0,x=(L=L+X|0)>>>0>>0?x+1|0:x,K=L,s=L=(X=n[I+20>>2])<<1,w=L>>31,a=L=(O=n[I+4>>2])<<1,q=xg(s,w,L,g=L>>31),L=l+x|0,L=(K=K+q|0)>>>0>>0?L+1|0:L,u=x=T=n[I+24>>2],c=x>>31,r=x=(gA=n[I>>2])<<1,q=xg(T,c,x,B=x>>31),x=l+L|0,x=(K=q+K|0)>>>0>>0?x+1|0:x,j=K,L=n[I+32>>2],h=K=o(L,19),Y=L,K=xg(K,f=K>>31,L,G=L>>31),x=l+x|0,x=(L=j+K|0)>>>0>>0?x+1|0:x,j=L,$=n[I+36>>2],e=L=o($,38),C=L>>31,N=I=(K=n[I+28>>2])<<1,q=xg(L,C,I,b=I>>31),I=l+x|0,AA=L=j+q|0,z=L>>>0>>0?I+1|0:I,I=xg(a,g,E,i),x=l,L=xg(D,y,W,H),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,m=X,q=xg(X,k=X>>31,r,B),L=l+x|0,L=(I=q+I|0)>>>0>>0?L+1|0:L,q=xg(h,f,N,b),x=l+L|0,x=(I=q+I|0)>>>0>>0?x+1|0:x,L=xg(e,C,T,c),x=l+x|0,j=I=L+I|0,BA=I>>>0>>0?x+1|0:x,I=xg(a,g,t,Q),L=l,x=(Z=xg(q=Z,p=q>>31,q,p))+I|0,I=l+L|0,I=x>>>0>>0?I+1|0:I,L=(Z=xg(r,B,E,i))+x|0,x=l+I|0,x=L>>>0>>0?x+1|0:x,_=I=o(K,38),Z=K,I=(K=xg(I,F=I>>31,K,U=K>>31))+L|0,L=l+x|0,L=I>>>0>>0?L+1|0:L,I=(x=I)+(K=xg(h,f,I=T<<1,I>>31))|0,x=l+L|0,x=I>>>0>>0?x+1|0:x,L=xg(e,C,s,w),x=l+x|0,v=I=L+I|0,d=x=I>>>0>>0?x+1|0:x,I=x,(x=v+33554432|0)>>>0<33554432&&(I=I+1|0),R=x,P=I,x=(x=I>>26)+BA|0,BA=I=(L=(67108863&I)<<6|R>>>26)+j|0,L=I>>>0>>0?x+1|0:x,(I=I+16777216|0)>>>0<16777216&&(L=L+1|0),J=I,x=(x=L>>25)+z|0,x=(I=(L=(33554431&L)<<7|I>>>25)+AA|0)>>>0>>0?x+1|0:x,L=I,I=x,(x=L+33554432|0)>>>0<33554432&&(I=I+1|0),j=x,K=I,I=-67108864&x,n[V+24>>2]=L-I,z=A,I=xg(r,B,q,p),x=l,O=xg(a,g,V=O,IA=V>>31),L=l+x|0,L=(I=O+I|0)>>>0>>0?L+1|0:L,x=I,O=I=o(T,19),I=x+(T=xg(I,AA=I>>31,u,c))|0,x=l+L|0,x=I>>>0>>0?x+1|0:x,L=(T=xg(s,w,_,F))+I|0,I=l+x|0,I=L>>>0>>0?I+1|0:I,M=x=CA<<1,T=xg(h,f,x,S=x>>31),x=l+I|0,x=(L=T+L|0)>>>0>>0?x+1|0:x,I=L,L=xg(e,C,t,Q),x=l+x|0,QA=I=I+L|0,T=I>>>0>>0?x+1|0:x,I=xg(s,w,O,AA),x=l,V=xg(r,B,V,IA),L=l+x|0,L=(I=V+I|0)>>>0>>0?L+1|0:L,V=xg(E,i,_,F),x=l+L|0,x=(I=V+I|0)>>>0>>0?x+1|0:x,L=(V=xg(h,f,t,Q))+I|0,I=l+x|0,I=L>>>0>>0?I+1|0:I,V=xg(e,C,q,p),x=l+I|0,IA=L=V+L|0,V=L>>>0>>0?x+1|0:x,I=xg(I=o(X,38),I>>31,m,k),x=l,X=I,L=xg(I=gA,L=I>>31,I,L),x=l+x|0,x=(I=X+L|0)>>>0>>0?x+1|0:x,X=xg(O,AA,M,S),L=l+x|0,L=(I=X+I|0)>>>0>>0?L+1|0:L,X=xg(t,Q,_,F),x=l+L|0,x=(I=X+I|0)>>>0>>0?x+1|0:x,L=(X=xg(h,f,D,y))+I|0,I=l+x|0,I=L>>>0>>0?I+1|0:I,X=xg(a,g,e,C),x=l+I|0,O=L=X+L|0,AA=x=L>>>0>>0?x+1|0:x,(I=L+33554432|0)>>>0<33554432&&(x=x+1|0),gA=I,CA=x,L=(I=x>>26)+V|0,V=x=(X=(67108863&x)<<6|gA>>>26)+IA|0,x=x>>>0>>0?L+1|0:L,(I=V+16777216|0)>>>0<16777216&&(x=x+1|0),IA=I,X=(33554431&x)<<7|I>>>25,x=(x>>25)+T|0,x=(L=X+QA|0)>>>0>>0?x+1|0:x,(L=(I=L)+33554432|0)>>>0<33554432&&(x=x+1|0),T=L,X=x,x=-67108864&L,n[z+8>>2]=I-x,I=xg(D,y,m,k),x=l,L=xg(E,i,t,Q),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,L=xg(a,g,u,c),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,L=xg(r,B,Z,U),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,L=(QA=xg(e,C,Y,G))+I|0,I=l+x|0,x=K>>26,K=(j=(67108863&K)<<6|j>>>26)+L|0,L=(I=L>>>0>>0?I+1|0:I)+x|0,x=L=K>>>0>>0?L+1|0:L,(L=(I=K)+16777216|0)>>>0<16777216&&(x=x+1|0),j=L,K=x,x=-33554432&L,n[z+28>>2]=I-x,I=xg(r,B,W,H),L=l,x=(q=xg(a,g,q,p))+I|0,I=l+L|0,I=x>>>0>>0?I+1|0:I,q=xg(u,c,_,F),L=l+I|0,L=(x=q+x|0)>>>0>>0?L+1|0:L,I=(q=xg(h,f,s,w))+x|0,x=l+L|0,x=I>>>0>>0?x+1|0:x,L=xg(e,C,E,i),x=l+x|0,x=(x=(I=L+I|0)>>>0>>0?x+1|0:x)+(L=X>>26)|0,L=I=(X=(67108863&X)<<6|T>>>26)+I|0,I=x=I>>>0>>0?x+1|0:x,(x=L+16777216|0)>>>0<16777216&&(I=I+1|0),T=x,X=I,I=-33554432&x,n[z+12>>2]=L-I,q=A,I=xg(u,c,D,y),x=l,L=xg(E,i,E,i),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,L=xg(t,Q,s,w),x=l+x|0,x=(I=L+I|0)>>>0>>0?x+1|0:x,L=(W=xg(a,g,N,b))+I|0,I=l+x|0,I=L>>>0>>0?I+1|0:I,x=(W=xg(r,B,Y,G))+L|0,L=l+I|0,L=x>>>0>>0?L+1|0:L,I=($=xg(e,C,W=$,z=W>>31))+x|0,x=l+L|0,x=I>>>0<$>>>0?x+1|0:x,L=I,x=(I=K>>25)+x|0,x=(L=L+(K=(33554431&K)<<7|j>>>25)|0)>>>0>>0?x+1|0:x,(L=(I=L)+33554432|0)>>>0<33554432&&(x=x+1|0),$=L,K=x,x=-67108864&L,n[q+32>>2]=I-x,x=X>>25,L=(X=(33554431&X)<<7|T>>>25)+(v-(I=-67108864&R)|0)|0,I=x+(d-((v>>>0>>0)+P|0)|0)|0,x=I=L>>>0>>0?I+1|0:I,(I=L+33554432|0)>>>0<33554432&&(x=x+1|0),X=((67108863&x)<<6|I>>>26)+(BA=BA-(-33554432&J)|0)|0,n[q+20>>2]=X,I&=-67108864,n[A+16>>2]=L-I,X=A,I=xg(t,Q,u,c),L=l,x=(q=xg(m,k,M,S))+I|0,I=l+L|0,I=x>>>0>>0?I+1|0:I,L=(q=xg(D,y,Z,U))+x|0,x=l+I|0,x=L>>>0>>0?x+1|0:x,I=(q=xg(a,g,Y,G))+L|0,L=l+x|0,L=I>>>0>>0?L+1|0:L,q=xg(r,B,W,z),x=l+L|0,L=I=q+I|0,x=(I=I>>>0>>0?x+1|0:x)+(x=K>>26)|0,x=(L=(K=(67108863&K)<<6|$>>>26)+L|0)>>>0>>0?x+1|0:x,K=L,T=L,I=x,(x=L+16777216|0)>>>0<16777216&&(I=I+1|0),L=-33554432&x,n[X+36>>2]=K-L,q=xg((33554431&I)<<7|x>>>25,I>>25,19,0),x=l+(AA-((O>>>0<(L=-67108864&gA)>>>0)+CA|0)|0)|0,L=I=q+(O-L|0)|0,I=I>>>0>>0?x+1|0:x,(x=L+33554432|0)>>>0<33554432&&(I=I+1|0),K=(V-(-33554432&IA)|0)+((67108863&I)<<6|x>>>26)|0,n[A+4>>2]=K,I=A,A=-67108864&x,n[I>>2]=L-A}function v(A){var I=0,g=0,B=0,C=0,Q=0,E=0,i=0,a=0,o=0;A:if(A|=0){Q=(B=A+-8|0)+(A=-8&(g=n[A+-4>>2]))|0;I:if(!(1&g)){if(!(3&g))break A;if((B=B-(g=n[B>>2])|0)>>>0>2])))return n[8963]=A,n[Q+4>>2]=-2&g,n[B+4>>2]=1|A,void(n[A+B>>2]=A)}else{if(g>>>0<=255){if(C=n[B+8>>2],g=g>>>3|0,(0|(I=n[B+12>>2]))==(0|C)){a=35844,o=n[8961]&ng(-2,g),n[a>>2]=o;break I}n[C+12>>2]=I,n[I+8>>2]=C;break I}if(i=n[B+24>>2],(0|B)==(0|(g=n[B+12>>2])))if((I=n[(C=B+20|0)>>2])||(I=n[(C=B+16|0)>>2])){for(;E=C,(I=n[(C=(g=I)+20|0)>>2])||(C=g+16|0,I=n[g+16>>2]););n[E>>2]=0}else g=0;else I=n[B+8>>2],n[I+12>>2]=g,n[g+8>>2]=I;if(!i)break I;C=n[B+28>>2];g:{if(n[(I=36148+(C<<2)|0)>>2]==(0|B)){if(n[I>>2]=g,g)break g;a=35848,o=n[8962]&ng(-2,C),n[a>>2]=o;break I}if(n[i+(n[i+16>>2]==(0|B)?16:20)>>2]=g,!g)break I}if(n[g+24>>2]=i,(I=n[B+16>>2])&&(n[g+16>>2]=I,n[I+24>>2]=g),!(I=n[B+20>>2]))break I;n[g+20>>2]=I,n[I+24>>2]=g}}if(!(Q>>>0<=B>>>0)&&1&(g=n[Q+4>>2])){I:{if(!(2&g)){if(n[8967]==(0|Q)){if(n[8967]=B,A=n[8964]+A|0,n[8964]=A,n[B+4>>2]=1|A,n[8966]!=(0|B))break A;return n[8963]=0,void(n[8966]=0)}if(n[8966]==(0|Q))return n[8966]=B,A=n[8963]+A|0,n[8963]=A,n[B+4>>2]=1|A,void(n[A+B>>2]=A);A=(-8&g)+A|0;g:if(g>>>0<=255){if(g=g>>>3|0,(0|(I=n[Q+8>>2]))==(0|(C=n[Q+12>>2]))){a=35844,o=n[8961]&ng(-2,g),n[a>>2]=o;break g}n[I+12>>2]=C,n[C+8>>2]=I}else{if(i=n[Q+24>>2],(0|Q)==(0|(g=n[Q+12>>2])))if((I=n[(C=Q+20|0)>>2])||(I=n[(C=Q+16|0)>>2])){for(;E=C,(I=n[(C=(g=I)+20|0)>>2])||(C=g+16|0,I=n[g+16>>2]););n[E>>2]=0}else g=0;else I=n[Q+8>>2],n[I+12>>2]=g,n[g+8>>2]=I;if(i){C=n[Q+28>>2];B:{if(n[(I=36148+(C<<2)|0)>>2]==(0|Q)){if(n[I>>2]=g,g)break B;a=35848,o=n[8962]&ng(-2,C),n[a>>2]=o;break g}if(n[i+(n[i+16>>2]==(0|Q)?16:20)>>2]=g,!g)break g}n[g+24>>2]=i,(I=n[Q+16>>2])&&(n[g+16>>2]=I,n[I+24>>2]=g),(I=n[Q+20>>2])&&(n[g+20>>2]=I,n[I+24>>2]=g)}}if(n[B+4>>2]=1|A,n[A+B>>2]=A,n[8966]!=(0|B))break I;return void(n[8963]=A)}n[Q+4>>2]=-2&g,n[B+4>>2]=1|A,n[A+B>>2]=A}if(A>>>0<=255)return g=35884+((A=A>>>3|0)<<3)|0,(I=n[8961])&(A=1<>2]:(n[8961]=A|I,A=g),n[g+8>>2]=B,n[A+12>>2]=B,n[B+12>>2]=g,void(n[B+8>>2]=A);n[B+16>>2]=0,n[B+20>>2]=0,I=0,(C=A>>>8|0)&&(I=31,A>>>0>16777215||(I=(g=C)<<(C=C+1048320>>>16&8),I=28+((I=((I<<=i=I+520192>>>16&4)<<(E=I+245760>>>16&2)>>>15|0)-(E|C|i)|0)<<1|A>>>I+21&1)|0)),n[(Q=B)+28>>2]=I,E=36148+(I<<2)|0;I:{g:{if((C=n[8962])&(g=1<>>1|0)|0),g=n[E>>2];;){if(I=g,(-8&n[g+4>>2])==(0|A))break g;if(g=C>>>29|0,C<<=1,!(g=n[16+(E=I+(4&g)|0)>>2]))break}n[E+16>>2]=B,n[B+24>>2]=I}else n[8962]=g|C,n[E>>2]=B,n[B+24>>2]=E;n[B+12>>2]=B,n[B+8>>2]=B;break I}A=n[I+8>>2],n[A+12>>2]=B,n[I+8>>2]=B,n[B+24>>2]=0,n[B+12>>2]=I,n[B+8>>2]=A}if(A=n[8969]+-1|0,n[8969]=A,!A){for(B=36300;B=(A=n[B>>2])+8|0,A;);n[8969]=-1}}}}function S(A,I){var g=0,B=0,C=0,Q=0,E=0,i=0,a=0,r=0;Q=A+I|0;A:{I:if(!(1&(g=n[A+4>>2]))){if(!(3&g))break A;if(I=(g=n[A>>2])+I|0,(0|(A=A-g|0))==n[8966]){if(3==(3&(g=n[Q+4>>2])))return n[8963]=I,n[Q+4>>2]=-2&g,n[A+4>>2]=1|I,void(n[Q>>2]=I)}else{if(g>>>0<=255){if(C=g>>>3|0,g=n[A+8>>2],(0|(B=n[A+12>>2]))==(0|g)){a=35844,r=n[8961]&ng(-2,C),n[a>>2]=r;break I}n[g+12>>2]=B,n[B+8>>2]=g;break I}if(i=n[A+24>>2],(0|(g=n[A+12>>2]))==(0|A))if((C=n[(B=A+20|0)>>2])||(C=n[(B=A+16|0)>>2])){for(;E=B,(C=n[(B=(g=C)+20|0)>>2])||(B=g+16|0,C=n[g+16>>2]););n[E>>2]=0}else g=0;else B=n[A+8>>2],n[B+12>>2]=g,n[g+8>>2]=B;if(!i)break I;B=n[A+28>>2];g:{if(n[(C=36148+(B<<2)|0)>>2]==(0|A)){if(n[C>>2]=g,g)break g;a=35848,r=n[8962]&ng(-2,B),n[a>>2]=r;break I}if(n[i+(n[i+16>>2]==(0|A)?16:20)>>2]=g,!g)break I}if(n[g+24>>2]=i,(B=n[A+16>>2])&&(n[g+16>>2]=B,n[B+24>>2]=g),!(B=n[A+20>>2]))break I;n[g+20>>2]=B,n[B+24>>2]=g}}I:{if(!(2&(g=n[Q+4>>2]))){if(n[8967]==(0|Q)){if(n[8967]=A,I=n[8964]+I|0,n[8964]=I,n[A+4>>2]=1|I,n[8966]!=(0|A))break A;return n[8963]=0,void(n[8966]=0)}if(n[8966]==(0|Q))return n[8966]=A,I=n[8963]+I|0,n[8963]=I,n[A+4>>2]=1|I,void(n[A+I>>2]=I);I=(-8&g)+I|0;g:if(g>>>0<=255){if(C=g>>>3|0,g=n[Q+8>>2],(0|(B=n[Q+12>>2]))==(0|g)){a=35844,r=n[8961]&ng(-2,C),n[a>>2]=r;break g}n[g+12>>2]=B,n[B+8>>2]=g}else{if(i=n[Q+24>>2],(0|Q)==(0|(g=n[Q+12>>2])))if((C=n[(B=Q+20|0)>>2])||(C=n[(B=Q+16|0)>>2])){for(;E=B,(C=n[(B=(g=C)+20|0)>>2])||(B=g+16|0,C=n[g+16>>2]););n[E>>2]=0}else g=0;else B=n[Q+8>>2],n[B+12>>2]=g,n[g+8>>2]=B;if(i){B=n[Q+28>>2];B:{if(n[(C=36148+(B<<2)|0)>>2]==(0|Q)){if(n[C>>2]=g,g)break B;a=35848,r=n[8962]&ng(-2,B),n[a>>2]=r;break g}if(n[i+(n[i+16>>2]==(0|Q)?16:20)>>2]=g,!g)break g}n[g+24>>2]=i,(B=n[Q+16>>2])&&(n[g+16>>2]=B,n[B+24>>2]=g),(B=n[Q+20>>2])&&(n[g+20>>2]=B,n[B+24>>2]=g)}}if(n[A+4>>2]=1|I,n[A+I>>2]=I,n[8966]!=(0|A))break I;return void(n[8963]=I)}n[Q+4>>2]=-2&g,n[A+4>>2]=1|I,n[A+I>>2]=I}if(I>>>0<=255)return I=35884+((g=I>>>3|0)<<3)|0,(B=n[8961])&(g=1<>2]:(n[8961]=g|B,g=I),n[I+8>>2]=A,n[g+12>>2]=A,n[A+12>>2]=I,void(n[A+8>>2]=g);n[A+16>>2]=0,n[A+20>>2]=0,g=0,(C=I>>>8|0)&&(g=31,I>>>0>16777215||(g=28+((g=((Q=(C<<=E=C+1048320>>>16&8)<<(g=C+520192>>>16&4))<<(C=Q+245760>>>16&2)>>>15|0)-(C|g|E)|0)<<1|I>>>g+21&1)|0)),n[(B=A)+28>>2]=g,C=36148+(g<<2)|0;I:{if((B=n[8962])&(E=1<>>1|0)|0),g=n[C>>2];;){if(C=g,(-8&n[g+4>>2])==(0|I))break I;if(g=B>>>29|0,B<<=1,!(g=n[16+(E=C+(4&g)|0)>>2]))break}n[E+16>>2]=A}else n[8962]=B|E,n[C>>2]=A;return n[A+24>>2]=C,n[A+12>>2]=A,void(n[A+8>>2]=A)}I=n[C+8>>2],n[I+12>>2]=A,n[C+8>>2]=A,n[A+24>>2]=0,n[A+12>>2]=C,n[A+8>>2]=I}}function N(A,I,g,B,C){var Q,i,r,o,e,t,c,f,y,s,w,h,u,p,l,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0,v=0,S=0,N=0,R=0,M=0,d=0,P=0,J=0,x=0,L=0,K=0,q=0,X=0,V=0,T=0,W=0,j=0,Z=0,O=0,z=0,$=0,AA=0,IA=0,gA=0,BA=0;for(D=Q=D+-64|0,i=n[A+60>>2],r=n[A+56>>2],L=n[A+52>>2],K=n[A+48>>2],o=n[A+44>>2],e=n[A+40>>2],t=n[A+36>>2],c=n[A+32>>2],f=n[A+28>>2],y=n[A+24>>2],s=n[A+20>>2],w=n[A+16>>2],h=n[A+12>>2],u=n[A+8>>2],p=n[A+4>>2],l=n[A>>2];;){if(!C&B>>>0>63|C>>>0>0)_=g;else{if(F=0,_=G=eA(Q,0,64),B|C)for(;E[F+G|0]=a[I+F|0],!C&B>>>0>(F=F+1|0)>>>0|C>>>0>0;);I=_,V=g}for(q=20,m=l,U=p,v=u,S=h,F=w,G=s,g=y,N=f,H=c,Y=t,R=e,M=i,d=r,k=L,P=K,x=o;b=F,m=gB((F=F+m|0)^P,16),P=gB(b^(H=m+H|0),12),b=H,H=gB((H=m)^(m=F+P|0),8),F=gB(P^(J=b+H|0),7),b=G,U=gB((G=G+U|0)^k,16),k=gB(b^(Y=U+Y|0),12),b=Y,Y=gB((Y=U)^(U=G+k|0),8),G=gB(k^(X=b+Y|0),7),k=g,v=gB((g=g+v|0)^d,16),b=d=gB(k^(R=v+R|0),12),d=gB((k=v)^(v=g+d|0),8),g=gB(b^(R=d+R|0),7),k=N,S=gB((N=N+S|0)^M,16),x=k=gB(k^(M=S+x|0),12),b=M,M=gB((M=S)^(S=N+k|0),8),N=gB(x^(k=b+M|0),7),b=R,R=gB((m=G+m|0)^M,16),G=gB((P=b+R|0)^G,12),M=gB(R^(m=G+m|0),8),G=gB(G^(R=P+M|0),7),H=gB((U=g+U|0)^H,16),g=gB((k=H+k|0)^g,12),P=gB(H^(U=g+U|0),8),g=gB(g^(x=k+P|0),7),H=gB((v=N+v|0)^Y,16),N=gB((Y=H+J|0)^N,12),k=gB(H^(v=N+v|0),8),N=gB(N^(H=Y+k|0),7),Y=gB((S=F+S|0)^d,16),F=gB((J=Y+X|0)^F,12),d=gB(Y^(S=F+S|0),8),F=gB(F^(Y=J+d|0),7),q=q+-2|0;);if(q=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,J=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,X=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24,T=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,W=a[I+20|0]|a[I+21|0]<<8|a[I+22|0]<<16|a[I+23|0]<<24,j=a[I+24|0]|a[I+25|0]<<8|a[I+26|0]<<16|a[I+27|0]<<24,Z=a[I+28|0]|a[I+29|0]<<8|a[I+30|0]<<16|a[I+31|0]<<24,O=a[I+32|0]|a[I+33|0]<<8|a[I+34|0]<<16|a[I+35|0]<<24,z=a[I+36|0]|a[I+37|0]<<8|a[I+38|0]<<16|a[I+39|0]<<24,$=a[I+40|0]|a[I+41|0]<<8|a[I+42|0]<<16|a[I+43|0]<<24,AA=a[I+44|0]|a[I+45|0]<<8|a[I+46|0]<<16|a[I+47|0]<<24,IA=a[I+48|0]|a[I+49|0]<<8|a[I+50|0]<<16|a[I+51|0]<<24,gA=a[I+52|0]|a[I+53|0]<<8|a[I+54|0]<<16|a[I+55|0]<<24,BA=a[I+56|0]|a[I+57|0]<<8|a[I+58|0]<<16|a[I+59|0]<<24,b=a[I+60|0]|a[I+61|0]<<8|a[I+62|0]<<16|a[I+63|0]<<24,fg(_,m+l^(a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24)),fg(_+4|0,U+p^q),fg(_+8|0,v+u^J),fg(_+12|0,S+h^X),fg(_+16|0,F+w^T),fg(_+20|0,G+s^W),fg(_+24|0,g+y^j),fg(_+28|0,N+f^Z),fg(_+32|0,H+c^O),fg(_+36|0,Y+t^z),fg(_+40|0,$^R+e),fg(_+44|0,AA^x+o),fg(_+48|0,IA^P+K),fg(_+52|0,gA^k+L),fg(_+56|0,BA^d+r),fg(_+60|0,b^M+i),L=((F=K+1|0)>>>0>>0)+L|0,!C&B>>>0<=64|C>>>0<0){if(!(!B|!C&B>>>0>63|C>>>0>0))for(G=0;E[G+V|0]=a[_+G|0],(0|B)!=(0|(G=G+1|0)););n[A+52>>2]=L,n[A+48>>2]=F,D=Q- -64|0;break}I=I- -64|0,g=_- -64|0,C=C+-1|0,(B=B+-64|0)>>>0<4294967232&&(C=C+1|0),K=F}}function R(A,I,g,B){var C=0,Q=0,E=0,i=0,r=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0,F=0,G=0,k=0,_=0,H=0,Y=0,b=0,m=0,U=0;if(Q=n[A+36>>2],i=n[A+32>>2],t=n[A+28>>2],E=n[A+24>>2],e=n[A+20>>2],!B&g>>>0>=16|B>>>0>0)for(_=!a[A+80|0]<<24,y=n[A+4>>2],H=o(y,5),u=n[A+8>>2],k=o(u,5),F=n[A+12>>2],G=o(F,5),C=n[A+16>>2],p=o(C,5),Y=C,s=n[A>>2];C=xg(r=((a[I+3|0]|a[I+4|0]<<8|a[I+5|0]<<16|a[I+6|0]<<24)>>>2&67108863)+E|0,0,F,0),E=l,f=xg(e=(67108863&(a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24))+e|0,0,Y,0),E=l+E|0,E=(C=f+C|0)>>>0>>0?E+1|0:E,t=(f=xg(w=((a[I+6|0]|a[I+7|0]<<8|a[I+8|0]<<16|a[I+9|0]<<24)>>>4&67108863)+t|0,0,u,0))+C|0,C=l+E|0,i=xg(h=((a[I+9|0]|a[I+10|0]<<8|a[I+11|0]<<16|a[I+12|0]<<24)>>>6|0)+i|0,0,y,0),C=l+(t>>>0>>0?C+1|0:C)|0,C=(E=i+t|0)>>>0>>0?C+1|0:C,Q=xg(D=((a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24)>>>8|_)+Q|0,0,s,0),C=l+C|0,b=E=Q+E|0,t=E>>>0>>0?C+1|0:C,C=xg(r,0,u,0),E=l,i=xg(e,0,F,0),Q=l+E|0,Q=(C=i+C|0)>>>0>>0?Q+1|0:Q,i=xg(w,0,y,0),E=l+Q|0,E=(C=i+C|0)>>>0>>0?E+1|0:E,Q=(i=xg(h,0,s,0))+C|0,C=l+E|0,C=Q>>>0>>0?C+1|0:C,E=Q,Q=xg(D,0,p,0),C=l+C|0,m=E=E+Q|0,f=E>>>0>>0?C+1|0:C,C=xg(r,0,y,0),Q=l,E=(i=xg(e,0,u,0))+C|0,C=l+Q|0,C=E>>>0>>0?C+1|0:C,i=xg(w,0,s,0),Q=l+C|0,Q=(E=i+E|0)>>>0>>0?Q+1|0:Q,C=(i=xg(h,0,p,0))+E|0,E=l+Q|0,E=C>>>0>>0?E+1|0:E,Q=(i=xg(D,0,G,0))+C|0,C=l+E|0,U=Q,i=Q>>>0>>0?C+1|0:C,C=xg(r,0,s,0),Q=l,E=(c=xg(e,0,y,0))+C|0,C=l+Q|0,C=E>>>0>>0?C+1|0:C,Q=xg(w,0,p,0),C=l+C|0,C=(E=Q+E|0)>>>0>>0?C+1|0:C,c=xg(h,0,G,0),Q=l+C|0,Q=(E=c+E|0)>>>0>>0?Q+1|0:Q,C=(c=xg(D,0,k,0))+E|0,E=l+Q|0,E=C>>>0>>0?E+1|0:E,c=C,C=xg(r,0,p,0),r=l,Q=(e=xg(e,0,s,0))+C|0,C=l+r|0,C=Q>>>0>>0?C+1|0:C,r=xg(w,0,G,0),C=l+C|0,C=(Q=r+Q|0)>>>0>>0?C+1|0:C,r=xg(h,0,k,0),C=l+C|0,C=(Q=r+Q|0)>>>0>>0?C+1|0:C,r=(e=xg(D,0,H,0))+Q|0,Q=l+C|0,(Q=(C=(67108863&(Q=r>>>0>>0?Q+1|0:Q))<<6|(C=r)>>>26)+c|0)>>>0>>0&&(E=E+1|0),e=Q,C=i,(Q=(E=(67108863&E)<<6|Q>>>26)+U|0)>>>0>>0&&(C=C+1|0),i=Q,Q=f,(E=(C=(67108863&C)<<6|i>>>26)+m|0)>>>0>>0&&(Q=Q+1|0),C=E,E=t,(t=(Q=(67108863&Q)<<6|C>>>26)+b|0)>>>0>>0&&(E=E+1|0),E=(67108863&e)+((r=o((67108863&E)<<6|(Q=t)>>>26,5)+(67108863&r)|0)>>>26|0)|0,t=67108863&i,i=67108863&C,Q&=67108863,e=67108863&r,I=I+16|0,C=B+-1|0,(g=g+-16|0)>>>0<4294967280&&(C=C+1|0),B=C,!C&g>>>0>15|C>>>0>0;);n[A+20>>2]=e,n[A+36>>2]=Q,n[A+32>>2]=i,n[A+28>>2]=t,n[A+24>>2]=E}function M(A,I,g){var B,C,Q,i,n=0,r=0,o=0,e=0,t=0;return D=Q=D-160|0,ig(I,g,32,0),E[0|I]=248&a[0|I],E[I+31|0]=63&a[I+31|0]|64,tA(Q,I),NI(A,Q),r=a[(C=g)+8|0]|a[C+9|0]<<8|a[C+10|0]<<16|a[C+11|0]<<24,n=a[C+12|0]|a[C+13|0]<<8|a[C+14|0]<<16|a[C+15|0]<<24,o=a[C+16|0]|a[C+17|0]<<8|a[C+18|0]<<16|a[C+19|0]<<24,e=a[C+20|0]|a[C+21|0]<<8|a[C+22|0]<<16|a[C+23|0]<<24,t=a[0|C]|a[C+1|0]<<8|a[C+2|0]<<16|a[C+3|0]<<24,g=a[C+4|0]|a[C+5|0]<<8|a[C+6|0]<<16|a[C+7|0]<<24,B=I,i=a[C+28|0]|a[C+29|0]<<8|a[C+30|0]<<16|a[C+31|0]<<24,I=a[C+24|0]|a[C+25|0]<<8|a[C+26|0]<<16|a[C+27|0]<<24,E[B+24|0]=I,E[B+25|0]=I>>>8,E[B+26|0]=I>>>16,E[B+27|0]=I>>>24,E[B+28|0]=i,E[B+29|0]=i>>>8,E[B+30|0]=i>>>16,E[B+31|0]=i>>>24,E[B+16|0]=o,E[B+17|0]=o>>>8,E[B+18|0]=o>>>16,E[B+19|0]=o>>>24,E[B+20|0]=e,E[B+21|0]=e>>>8,E[B+22|0]=e>>>16,E[B+23|0]=e>>>24,E[B+8|0]=r,E[B+9|0]=r>>>8,E[B+10|0]=r>>>16,E[B+11|0]=r>>>24,E[B+12|0]=n,E[B+13|0]=n>>>8,E[B+14|0]=n>>>16,E[B+15|0]=n>>>24,E[0|B]=t,E[B+1|0]=t>>>8,E[B+2|0]=t>>>16,E[B+3|0]=t>>>24,E[B+4|0]=g,E[B+5|0]=g>>>8,E[B+6|0]=g>>>16,E[B+7|0]=g>>>24,o=a[(n=A)+8|0]|a[n+9|0]<<8|a[n+10|0]<<16|a[n+11|0]<<24,e=a[n+12|0]|a[n+13|0]<<8|a[n+14|0]<<16|a[n+15|0]<<24,t=a[n+16|0]|a[n+17|0]<<8|a[n+18|0]<<16|a[n+19|0]<<24,g=a[n+20|0]|a[n+21|0]<<8|a[n+22|0]<<16|a[n+23|0]<<24,I=a[0|n]|a[n+1|0]<<8|a[n+2|0]<<16|a[n+3|0]<<24,A=a[n+4|0]|a[n+5|0]<<8|a[n+6|0]<<16|a[n+7|0]<<24,r=a[n+28|0]|a[n+29|0]<<8|a[n+30|0]<<16|a[n+31|0]<<24,n=a[n+24|0]|a[n+25|0]<<8|a[n+26|0]<<16|a[n+27|0]<<24,E[B+56|0]=n,E[B+57|0]=n>>>8,E[B+58|0]=n>>>16,E[B+59|0]=n>>>24,E[B+60|0]=r,E[B+61|0]=r>>>8,E[B+62|0]=r>>>16,E[B+63|0]=r>>>24,E[B+48|0]=t,E[B+49|0]=t>>>8,E[B+50|0]=t>>>16,E[B+51|0]=t>>>24,E[B+52|0]=g,E[B+53|0]=g>>>8,E[B+54|0]=g>>>16,E[B+55|0]=g>>>24,E[B+40|0]=o,E[B+41|0]=o>>>8,E[B+42|0]=o>>>16,E[B+43|0]=o>>>24,E[B+44|0]=e,E[B+45|0]=e>>>8,E[B+46|0]=e>>>16,E[B+47|0]=e>>>24,E[B+32|0]=I,E[B+33|0]=I>>>8,E[B+34|0]=I>>>16,E[B+35|0]=I>>>24,E[B+36|0]=A,E[B+37|0]=A>>>8,E[B+38|0]=A>>>16,E[B+39|0]=A>>>24,D=Q+160|0,0}function d(A,I){var g,B,C,Q,E,i,a,r,o,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0,F=0,G=0,k=0,_=0;p=t=n[(e=I)+4>>2],D=t>>31,F=t=n[e+8>>2],B=t>>31,h=t=n[e+12>>2],u=t>>31,G=t=n[e+16>>2],C=t>>31,w=t=n[e+20>>2],s=t>>31,k=t=n[e+24>>2],Q=t>>31,E=t=n[e>>2],i=t>>31,f=A,y=t=xg(e=n[e+36>>2],e>>31,121666,0),e=l,(t=t+16777216|0)>>>0<16777216&&(e=e+1|0),g=t,t=e,a=y-(-33554432&g)|0,c=xg(e=n[I+32>>2],e>>31,121666,0),r=l,y=xg(I=n[I+28>>2],I>>31,121666,0),e=l,_=c,(I=y+16777216|0)>>>0<16777216&&(e=e+1|0),o=I,c=I,I=(I=e>>25)+r|0,I=(e=_+(c=(33554431&e)<<7|c>>>25)|0)>>>0>>0?I+1|0:I,c=e,_=f,e=I,(I=c+33554432|0)>>>0<33554432&&(e=e+1|0),f=((67108863&e)<<6|I>>>26)+a|0,n[_+36>>2]=f,I&=-67108864,n[A+32>>2]=c-I,f=y-(-33554432&o)|0,e=xg(k,Q,121666,0),k=l,y=xg(w,s,121666,0),I=l,c=e,(e=y+16777216|0)>>>0<16777216&&(I=I+1|0),w=e,s=e,e=(e=I>>25)+k|0,e=(I=c+(s=(33554431&I)<<7|s>>>25)|0)>>>0>>0?e+1|0:e,(c=I+33554432|0)>>>0<33554432&&(e=e+1|0),f=f+((67108863&e)<<6|c>>>26)|0,n[A+28>>2]=f,e=-67108864&c,n[A+24>>2]=I-e,f=A,w=y-(-33554432&w)|0,I=xg(G,C,121666,0),G=l,y=xg(h,u,121666,0),e=l,c=I,(I=y+16777216|0)>>>0<16777216&&(e=e+1|0),h=I,u=(33554431&e)<<7|I>>>25,e=(e>>25)+G|0,s=f,I=e=(c=c+u|0)>>>0>>0?e+1|0:e,(e=c+33554432|0)>>>0<33554432&&(I=I+1|0),f=((67108863&I)<<6|e>>>26)+w|0,n[s+20>>2]=f,I=-67108864&e,n[A+16>>2]=c-I,f=A,h=y-(-33554432&h)|0,e=xg(F,B,121666,0),F=l,y=xg(p,D,121666,0),I=l,c=e,(e=y+16777216|0)>>>0<16777216&&(I=I+1|0),p=e,D=(33554431&I)<<7|e>>>25,I=(I>>25)+F|0,w=f,e=I=(c=c+D|0)>>>0>>0?I+1|0:I,(I=c+33554432|0)>>>0<33554432&&(e=e+1|0),f=((67108863&e)<<6|I>>>26)+h|0,n[w+12>>2]=f,I&=-67108864,n[A+8>>2]=c-I,I=xg((33554431&t)<<7|g>>>25,t>>25,19,0),e=l,f=y-(-33554432&p)|0,t=xg(E,i,121666,0),e=l+e|0,e=(I=t+I|0)>>>0>>0?e+1|0:e,(t=I+33554432|0)>>>0<33554432&&(e=e+1|0),y=f+((67108863&e)<<6|t>>>26)|0,n[A+4>>2]=y,e=A,A=-67108864&t,n[e>>2]=I-A}function P(A,I,g){var B,C=0,Q=0,i=0;D=B=D+-64|0;A:{if(!(!g|g>>>0>=65)){if(C=-1,!(a[A+80|0]|a[A+81|0]<<8|a[A+82|0]<<16|a[A+83|0]<<24|a[A+84|0]|a[A+85|0]<<8|a[A+86|0]<<16|a[A+87|0]<<24)){if(Q=A,(C=a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)>>>0>=129){if(wA(A,128),F(A,i=A+96|0),C=(a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)-128|0,E[A+352|0]=C,E[A+353|0]=C>>>8,E[A+354|0]=C>>>16,E[A+355|0]=C>>>24,C>>>0>=129)break A;j(i,A+224|0,C),C=a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24}wA(Q,C),a[A+356|0]&&(E[A+88|0]=-1,E[A+89|0]=16777215,E[A+90|0]=65535,E[A+91|0]=255,E[A+92|0]=-1,E[A+93|0]=16777215,E[A+94|0]=65535,E[A+95|0]=255),E[A+80|0]=-1,E[A+81|0]=16777215,E[A+82|0]=65535,E[A+83|0]=255,E[A+84|0]=-1,E[A+85|0]=16777215,E[A+86|0]=65535,E[A+87|0]=255,eA((C=A+96|0)+(Q=a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)|0,0,256-Q|0),F(A,C),LI(B,a[0|A]|a[A+1|0]<<8|a[A+2|0]<<16|a[A+3|0]<<24,a[A+4|0]|a[A+5|0]<<8|a[A+6|0]<<16|a[A+7|0]<<24),LI(8|B,a[A+8|0]|a[A+9|0]<<8|a[A+10|0]<<16|a[A+11|0]<<24,a[A+12|0]|a[A+13|0]<<8|a[A+14|0]<<16|a[A+15|0]<<24),LI(B+16|0,a[A+16|0]|a[A+17|0]<<8|a[A+18|0]<<16|a[A+19|0]<<24,a[A+20|0]|a[A+21|0]<<8|a[A+22|0]<<16|a[A+23|0]<<24),LI(B+24|0,a[A+24|0]|a[A+25|0]<<8|a[A+26|0]<<16|a[A+27|0]<<24,a[A+28|0]|a[A+29|0]<<8|a[A+30|0]<<16|a[A+31|0]<<24),LI(B+32|0,a[A+32|0]|a[A+33|0]<<8|a[A+34|0]<<16|a[A+35|0]<<24,a[A+36|0]|a[A+37|0]<<8|a[A+38|0]<<16|a[A+39|0]<<24),LI(B+40|0,a[A+40|0]|a[A+41|0]<<8|a[A+42|0]<<16|a[A+43|0]<<24,a[A+44|0]|a[A+45|0]<<8|a[A+46|0]<<16|a[A+47|0]<<24),LI(B+48|0,a[A+48|0]|a[A+49|0]<<8|a[A+50|0]<<16|a[A+51|0]<<24,a[A+52|0]|a[A+53|0]<<8|a[A+54|0]<<16|a[A+55|0]<<24),LI(B+56|0,a[A+56|0]|a[A+57|0]<<8|a[A+58|0]<<16|a[A+59|0]<<24,a[A+60|0]|a[A+61|0]<<8|a[A+62|0]<<16|a[A+63|0]<<24),j(I,B,g),KI(A,64),KI(C,256),C=0}return D=B- -64|0,C}Gg(),t()}c(1854,1886,306,1931),t()}function J(A,I){var g,B,C,Q,E,i,r,o,e,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0,F=0,G=0;g=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,p=Cg(I+4|0),t=l,D=Cg(I+7|0),f=l,u=Cg(I+10|0),c=l,B=Cg(I+13|0),h=l,y=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,C=Cg(I+20|0),F=l,Q=Cg(I+23|0),E=l,i=Cg(I+26|0),r=l,o=Cg(I+29|0),I=c<<3|u>>>29,G=c=u<<3,(c=c+16777216|0)>>>0<16777216&&(I=I+1|0),u=c,c=I,f=I=f<<5|D>>>27,e=w=A,w=s=D<<5,t=I=t<<6|(D=p)>>>26,(I=16777216+(D<<=6)|0)>>>0<16777216&&(t=t+1|0),p=I,s=I,I=(I=t>>25)+f|0,I=(t=w+(s=(33554431&t)<<7|s>>>25)|0)>>>0>>0?I+1|0:I,(f=t+33554432|0)>>>0<33554432&&(I=I+1|0),w=(G-(-33554432&u)|0)+((67108863&I)<<6|f>>>26)|0,n[e+12>>2]=w,I=-67108864&f,n[A+8>>2]=t-I,I=0,(y=(f=y)+16777216|0)>>>0<16777216&&(I=1),w=y,y=I,G=f-(-33554432&w)|0,I=h<<2|(f=B)>>>30,h=f<<2,f=I,I=c>>25,c=(s=h)+(h=(33554431&c)<<7|u>>>25)|0,I=I+f|0,s=t=A,t=I=c>>>0>>0?I+1|0:I,(I=c+33554432|0)>>>0<33554432&&(t=t+1|0),f=((67108863&t)<<6|I>>>26)+G|0,n[s+20>>2]=f,I&=-67108864,n[A+16>>2]=c-I,s=(t=C)<<7,I=(I=F<<7|t>>>25)+(t=y>>25)|0,I=(y=s+(f=(33554431&y)<<7|w>>>25)|0)>>>0>>0?I+1|0:I,y=t=y,(t=t+33554432|0)>>>0<33554432&&(I=I+1|0),f=t,t=I,I=-67108864&f,n[(c=A)+24>>2]=y-I,I=E<<5|(c=Q)>>>27,F=c<<=5,(c=c+16777216|0)>>>0<16777216&&(I=I+1|0),h=c,c=I,t=(F-(-33554432&h)|0)+((67108863&t)<<6|f>>>26)|0,n[(y=A)+28>>2]=t,f=(t=i)<<4,t=I=r<<4|t>>>28,I=(I=c>>25)+t|0,I=(c=(w=f)+(f=(33554431&c)<<7|h>>>25)|0)>>>0>>0?I+1|0:I,c=t=c,(t=t+33554432|0)>>>0<33554432&&(I=I+1|0),f=t,t=I,I=-67108864&f,n[y+32>>2]=c-I,I=0,c=y=(y=o)<<2&33554428,(y=y+16777216|0)>>>0<16777216&&(I=I+1|0),c=(c-(33554432&y)|0)+((67108863&t)<<6|f>>>26)|0,n[A+36>>2]=c,y=xg((33554431&I)<<7|y>>>25,I>>>25|0,19,0),I=l,I=(t=y+g|0)>>>0>>0?I+1|0:I,(c=t+33554432|0)>>>0<33554432&&(I=I+1|0),y=(D-(-33554432&p)|0)+((67108863&I)<<6|c>>>26)|0,n[A+4>>2]=y,I=A,A=-67108864&c,n[I>>2]=t-A}function x(A,I,g,B){var C,Q=0,i=0;D=C=D-16|0,Q=-31;A:{I:{g:{B:switch(B+-1|0){case 1:if(I>>>0<13)break I;B=a[35660]|a[35661]<<8|a[35662]<<16|a[35663]<<24,Q=a[35656]|a[35657]<<8|a[35658]<<16|a[35659]<<24,E[0|A]=Q,E[A+1|0]=Q>>>8,E[A+2|0]=Q>>>16,E[A+3|0]=Q>>>24,E[A+4|0]=B,E[A+5|0]=B>>>8,E[A+6|0]=B>>>16,E[A+7|0]=B>>>24,B=a[35665]|a[35666]<<8|a[35667]<<16|a[35668]<<24,Q=a[35661]|a[35662]<<8|a[35663]<<16|a[35664]<<24,E[A+5|0]=Q,E[A+6|0]=Q>>>8,E[A+7|0]=Q>>>16,E[A+8|0]=Q>>>24,E[A+9|0]=B,E[A+10|0]=B>>>8,E[A+11|0]=B>>>16,E[A+12|0]=B>>>24,i=-12,B=12;break g;case 0:break B;default:break A}if(I>>>0<12)break I;B=a[35673]|a[35674]<<8|a[35675]<<16|a[35676]<<24,Q=a[35669]|a[35670]<<8|a[35671]<<16|a[35672]<<24,E[0|A]=Q,E[A+1|0]=Q>>>8,E[A+2|0]=Q>>>16,E[A+3|0]=Q>>>24,E[A+4|0]=B,E[A+5|0]=B>>>8,E[A+6|0]=B>>>16,E[A+7|0]=B>>>24,B=a[35677]|a[35678]<<8|a[35679]<<16|a[35680]<<24,E[A+8|0]=B,E[A+9|0]=B>>>8,E[A+10|0]=B>>>16,E[A+11|0]=B>>>24,i=-11,B=11}if(Q=DA(g))break A;if(oI(C+5|0,19),!((Q=I+i|0)>>>0<=(I=VA(C+5|0))>>>0)&&(A=j(A+B|0,C+5|0,I+1|0),!((B=Q-I|0)>>>0<4)&&(E[0|(A=A+I|0)]=4025636,E[A+1|0]=15725,E[A+2|0]=61,E[A+3|0]=0,oI(C+5|0,n[g+44>>2]),!((B=B+-3|0)>>>0<=(I=VA(C+5|0))>>>0)&&(A=j(A+3|0,C+5|0,I+1|0),!((B=B-I|0)>>>0<4)&&(E[0|(A=A+I|0)]=4027436,E[A+1|0]=15732,E[A+2|0]=61,E[A+3|0]=0,oI(C+5|0,n[g+40>>2]),!((B=B+-3|0)>>>0<=(I=VA(C+5|0))>>>0)&&(A=j(A+3|0,C+5|0,I+1|0),!((B=B-I|0)>>>0<4)&&(E[0|(A=A+I|0)]=4026412,E[A+1|0]=15728,E[A+2|0]=61,E[A+3|0]=0,oI(C+5|0,n[g+48>>2]),!((B=B+-3|0)>>>0<=(I=VA(C+5|0))>>>0)&&(A=j(A+3|0,C+5|0,I+1|0),!((B=B-I|0)>>>0<2)&&(E[0|(A=A+I|0)]=36,E[A+1|0]=0,AA(A=A+1|0,I=B+-1|0,n[g+16>>2],n[g+20>>2],3)))))))))){if(Q=-31,(B=(B=I)-(I=VA(A))|0)>>>0<2)break A;return E[0|(A=A+I|0)]=36,E[A+1|0]=0,A=AA(A+1|0,B+-1|0,n[g>>2],n[g+4>>2],3),D=C+16|0,A?0:-31}}Q=-31}return D=C+16|0,Q}function L(A,I,g,B){var C,Q=0;C=Q=D,D=Q=Q-576&-64,n[Q+188>>2]=0,fg(Q+188|0,I);A:if(I>>>0<=64){if((0|vI(Q+192|0,0,0,I))<0)break A;if((0|Tg(Q+192|0,Q+188|0,4,0))<0)break A;if((0|Tg(Q+192|0,g,B,0))<0)break A;og(Q+192|0,A,I)}else if(!((0|vI(Q+192|0,0,0,64))<0||(0|Tg(Q+192|0,Q+188|0,4,0))<0||(0|Tg(Q+192|0,g,B,0))<0||(0|og(Q+192|0,Q+112|0,64))<0)){if(g=n[Q+116>>2],B=n[Q+112>>2],E[0|A]=B,E[A+1|0]=B>>>8,E[A+2|0]=B>>>16,E[A+3|0]=B>>>24,E[A+4|0]=g,E[A+5|0]=g>>>8,E[A+6|0]=g>>>16,E[A+7|0]=g>>>24,g=n[Q+124>>2],B=n[Q+120>>2],E[A+8|0]=B,E[A+9|0]=B>>>8,E[A+10|0]=B>>>16,E[A+11|0]=B>>>24,E[A+12|0]=g,E[A+13|0]=g>>>8,E[A+14|0]=g>>>16,E[A+15|0]=g>>>24,g=n[Q+140>>2],B=n[Q+136>>2],E[A+24|0]=B,E[A+25|0]=B>>>8,E[A+26|0]=B>>>16,E[A+27|0]=B>>>24,E[A+28|0]=g,E[A+29|0]=g>>>8,E[A+30|0]=g>>>16,E[A+31|0]=g>>>24,g=n[Q+132>>2],B=n[Q+128>>2],E[A+16|0]=B,E[A+17|0]=B>>>8,E[A+18|0]=B>>>16,E[A+19|0]=B>>>24,E[A+20|0]=g,E[A+21|0]=g>>>8,E[A+22|0]=g>>>16,E[A+23|0]=g>>>24,A=A+32|0,(I=I+-32|0)>>>0>=65)for(;;){if(j(Q+48|0,Q+112|0,64),(0|Ag(Q+112|0,64,Q+48|0,64,0,0,0))<0)break A;if(g=n[Q+116>>2],B=n[Q+112>>2],E[0|A]=B,E[A+1|0]=B>>>8,E[A+2|0]=B>>>16,E[A+3|0]=B>>>24,E[A+4|0]=g,E[A+5|0]=g>>>8,E[A+6|0]=g>>>16,E[A+7|0]=g>>>24,g=n[Q+124>>2],B=n[Q+120>>2],E[A+8|0]=B,E[A+9|0]=B>>>8,E[A+10|0]=B>>>16,E[A+11|0]=B>>>24,E[A+12|0]=g,E[A+13|0]=g>>>8,E[A+14|0]=g>>>16,E[A+15|0]=g>>>24,g=n[Q+140>>2],B=n[Q+136>>2],E[A+24|0]=B,E[A+25|0]=B>>>8,E[A+26|0]=B>>>16,E[A+27|0]=B>>>24,E[A+28|0]=g,E[A+29|0]=g>>>8,E[A+30|0]=g>>>16,E[A+31|0]=g>>>24,g=n[Q+132>>2],B=n[Q+128>>2],E[A+16|0]=B,E[A+17|0]=B>>>8,E[A+18|0]=B>>>16,E[A+19|0]=B>>>24,E[A+20|0]=g,E[A+21|0]=g>>>8,E[A+22|0]=g>>>16,E[A+23|0]=g>>>24,A=A+32|0,!((I=I+-32|0)>>>0>64))break}j(Q+48|0,Q+112|0,64),(0|Ag(Q+112|0,I,Q+48|0,64,0,0,0))<0||j(A,Q+112|0,I)}KI(Q+192|0,384),D=C}function K(A,I,g){var B=0,C=0,Q=0,E=0,i=0,n=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0;for(Q=2036477234,e=857760878,t=1634760805,E=1797285236,o=a[0|g]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24,B=a[g+4|0]|a[g+5|0]<<8|a[g+6|0]<<16|a[g+7|0]<<24,C=a[g+8|0]|a[g+9|0]<<8|a[g+10|0]<<16|a[g+11|0]<<24,n=a[g+12|0]|a[g+13|0]<<8|a[g+14|0]<<16|a[g+15|0]<<24,f=a[g+16|0]|a[g+17|0]<<8|a[g+18|0]<<16|a[g+19|0]<<24,y=a[g+20|0]|a[g+21|0]<<8|a[g+22|0]<<16|a[g+23|0]<<24,w=a[g+24|0]|a[g+25|0]<<8|a[g+26|0]<<16|a[g+27|0]<<24,h=a[g+28|0]|a[g+29|0]<<8|a[g+30|0]<<16|a[g+31|0]<<24,g=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,c=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,i=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,I=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24;r=o,t=gB((s=g)^(g=o+t|0),16),r=f=gB(r^(o=t+f|0),12),f=gB((s=t)^(t=g+f|0),8),o=gB(r^(D=f+o|0),7),r=B,e=gB((g=B+e|0)^c,16),r=c=gB(r^(B=e+y|0),12),c=gB((s=e)^(e=g+c|0),8),g=gB(r^(y=c+B|0),7),r=C,B=gB((Q=Q+C|0)^i,16),r=i=gB(r^(C=B+w|0),12),s=gB(B^(i=Q+i|0),8),Q=gB(r^(B=s+C|0),7),E=gB((C=I)^(I=E+n|0),16),n=gB((C=E+h|0)^n,12),I=gB(E^(u=I+n|0),8),E=gB(n^(C=I+C|0),7),r=B,B=gB((B=I)^(I=g+t|0),16),g=gB((n=r+B|0)^g,12),I=gB(B^(t=I+g|0),8),B=gB(g^(w=n+I|0),7),r=C,C=gB((g=Q+e|0)^f,16),Q=gB((n=r+C|0)^Q,12),g=gB(C^(e=g+Q|0),8),C=gB(Q^(h=n+g|0),7),n=gB((Q=E+i|0)^c,16),E=gB((i=n+D|0)^E,12),c=gB(n^(Q=Q+E|0),8),n=gB(E^(f=i+c|0),7),i=gB((E=o+u|0)^s,16),o=gB((y=i+y|0)^o,12),i=gB(i^(E=E+o|0),8),o=gB(o^(y=y+i|0),7),10!=(0|(p=p+1|0)););fg(A,t),fg(A+4|0,e),fg(A+8|0,Q),fg(A+12|0,E),fg(A+16|0,g),fg(A+20|0,c),fg(A+24|0,i),fg(A+28|0,I)}function q(A){var I,g=0,B=0;D=I=D-48|0,g=a[28+(A|=0)|0]|a[A+29|0]<<8|a[A+30|0]<<16|a[A+31|0]<<24,n[I+24>>2]=a[A+24|0]|a[A+25|0]<<8|a[A+26|0]<<16|a[A+27|0]<<24,n[I+28>>2]=g,g=a[A+20|0]|a[A+21|0]<<8|a[A+22|0]<<16|a[A+23|0]<<24,n[I+16>>2]=a[A+16|0]|a[A+17|0]<<8|a[A+18|0]<<16|a[A+19|0]<<24,n[I+20>>2]=g,g=a[A+4|0]|a[A+5|0]<<8|a[A+6|0]<<16|a[A+7|0]<<24,n[I>>2]=a[0|A]|a[A+1|0]<<8|a[A+2|0]<<16|a[A+3|0]<<24,n[I+4>>2]=g,g=a[A+12|0]|a[A+13|0]<<8|a[A+14|0]<<16|a[A+15|0]<<24,n[I+8>>2]=a[A+8|0]|a[A+9|0]<<8|a[A+10|0]<<16|a[A+11|0]<<24,n[I+12>>2]=g,g=a[A+40|0]|a[A+41|0]<<8|a[A+42|0]<<16|a[A+43|0]<<24,n[I+32>>2]=a[A+36|0]|a[A+37|0]<<8|a[A+38|0]<<16|a[A+39|0]<<24,n[I+36>>2]=g,Q[n[8956]](I,I,40,0,A+32|0,0,A),g=n[I+28>>2],B=n[I+24>>2],E[A+24|0]=B,E[A+25|0]=B>>>8,E[A+26|0]=B>>>16,E[A+27|0]=B>>>24,E[A+28|0]=g,E[A+29|0]=g>>>8,E[A+30|0]=g>>>16,E[A+31|0]=g>>>24,g=n[I+20>>2],B=n[I+16>>2],E[A+16|0]=B,E[A+17|0]=B>>>8,E[A+18|0]=B>>>16,E[A+19|0]=B>>>24,E[A+20|0]=g,E[A+21|0]=g>>>8,E[A+22|0]=g>>>16,E[A+23|0]=g>>>24,g=n[I+12>>2],B=n[I+8>>2],E[A+8|0]=B,E[A+9|0]=B>>>8,E[A+10|0]=B>>>16,E[A+11|0]=B>>>24,E[A+12|0]=g,E[A+13|0]=g>>>8,E[A+14|0]=g>>>16,E[A+15|0]=g>>>24,g=n[I+4>>2],B=n[I>>2],E[0|A]=B,E[A+1|0]=B>>>8,E[A+2|0]=B>>>16,E[A+3|0]=B>>>24,E[A+4|0]=g,E[A+5|0]=g>>>8,E[A+6|0]=g>>>16,E[A+7|0]=g>>>24,g=n[I+36>>2],B=n[I+32>>2],E[A+36|0]=B,E[A+37|0]=B>>>8,E[A+38|0]=B>>>16,E[A+39|0]=B>>>24,E[A+40|0]=g,E[A+41|0]=g>>>8,E[A+42|0]=g>>>16,E[A+43|0]=g>>>24,hg(A),D=I+48|0}function X(A,I,g){var B=0,C=0,Q=0,E=0,i=0,n=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0,p=0,l=0,F=0;for(C=2036477234,Q=857760878,E=1634760805,i=1797285236,w=20,o=a[0|g]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24,s=a[g+4|0]|a[g+5|0]<<8|a[g+6|0]<<16|a[g+7|0]<<24,h=a[g+8|0]|a[g+9|0]<<8|a[g+10|0]<<16|a[g+11|0]<<24,f=a[g+12|0]|a[g+13|0]<<8|a[g+14|0]<<16|a[g+15|0]<<24,e=a[g+16|0]|a[g+17|0]<<8|a[g+18|0]<<16|a[g+19|0]<<24,n=a[g+20|0]|a[g+21|0]<<8|a[g+22|0]<<16|a[g+23|0]<<24,t=a[g+24|0]|a[g+25|0]<<8|a[g+26|0]<<16|a[g+27|0]<<24,c=a[g+28|0]|a[g+29|0]<<8|a[g+30|0]<<16|a[g+31|0]<<24,g=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,r=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,B=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,I=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24;D=B,B=gB(E+n|0,7)^f,y=D^gB(B+E|0,9),u=gB(B+y|0,13)^n,f=gB(y+u|0,18),I=gB(Q+o|0,7)^I,t=gB(I+Q|0,9)^t,o=gB(I+t|0,13)^o,l=gB(t+o|0,18),c=gB(g+C|0,7)^c,n=gB(c+C|0,9)^s,p=gB(n+c|0,13)^g,F=gB(n+p|0,18),g=gB(i+e|0,7)^h,r=gB(g+i|0,9)^r,e=gB(g+r|0,13)^e,D=gB(r+e|0,18),o=gB((E^=f)+g|0,7)^o,s=gB(o+E|0,9)^n,h=gB(o+s|0,13)^g,E=gB(s+h|0,18)^E,g=gB((Q^=l)+B|0,7)^p,r=gB(g+Q|0,9)^r,f=gB(g+r|0,13)^B,Q=gB(r+f|0,18)^Q,e=gB((C^=F)+I|0,7)^e,B=gB(e+C|0,9)^y,I=gB(B+e|0,13)^I,C=gB(I+B|0,18)^C,n=gB((i^=D)+c|0,7)^u,t=gB(n+i|0,9)^t,c=gB(n+t|0,13)^c,i=gB(t+c|0,18)^i,y=w>>>0>2,w=w+-2|0,y;);return fg(A,E),fg(A+4|0,Q),fg(A+8|0,C),fg(A+12|0,i),fg(A+16|0,g),fg(A+20|0,r),fg(A+24|0,B),fg(A+28|0,I),0}function V(A,I,g,B,C,Q,i){var r,o,e,t,c,f,y,s=0;return D=r=D-560|0,Ng(r+352|0,i),ig(r+288|0,Q,32,0),W(r+352|0,r+320|0,32,0),W(r+352|0,g,B,C),ag(r+352|0,r+224|0),o=a[(s=Q)+32|0]|a[s+33|0]<<8|a[s+34|0]<<16|a[s+35|0]<<24,e=a[s+36|0]|a[s+37|0]<<8|a[s+38|0]<<16|a[s+39|0]<<24,t=a[s+40|0]|a[s+41|0]<<8|a[s+42|0]<<16|a[s+43|0]<<24,c=a[s+44|0]|a[s+45|0]<<8|a[s+46|0]<<16|a[s+47|0]<<24,f=a[s+48|0]|a[s+49|0]<<8|a[s+50|0]<<16|a[s+51|0]<<24,Q=a[s+52|0]|a[s+53|0]<<8|a[s+54|0]<<16|a[s+55|0]<<24,y=a[s+60|0]|a[s+61|0]<<8|a[s+62|0]<<16|a[s+63|0]<<24,s=a[s+56|0]|a[s+57|0]<<8|a[s+58|0]<<16|a[s+59|0]<<24,E[A+56|0]=s,E[A+57|0]=s>>>8,E[A+58|0]=s>>>16,E[A+59|0]=s>>>24,E[A+60|0]=y,E[A+61|0]=y>>>8,E[A+62|0]=y>>>16,E[A+63|0]=y>>>24,E[A+48|0]=f,E[A+49|0]=f>>>8,E[A+50|0]=f>>>16,E[A+51|0]=f>>>24,E[A+52|0]=Q,E[A+53|0]=Q>>>8,E[A+54|0]=Q>>>16,E[A+55|0]=Q>>>24,E[A+40|0]=t,E[A+41|0]=t>>>8,E[A+42|0]=t>>>16,E[A+43|0]=t>>>24,E[A+44|0]=c,E[A+45|0]=c>>>8,E[A+46|0]=c>>>16,E[A+47|0]=c>>>24,E[0|(Q=A+32|0)]=o,E[Q+1|0]=o>>>8,E[Q+2|0]=o>>>16,E[Q+3|0]=o>>>24,E[Q+4|0]=e,E[Q+5|0]=e>>>8,E[Q+6|0]=e>>>16,E[Q+7|0]=e>>>24,k(r+224|0),tA(r,r+224|0),NI(A,r),Ng(r+352|0,i),W(r+352|0,A,64,0),W(r+352|0,g,B,C),ag(r+352|0,r+160|0),k(r+160|0),E[r+288|0]=248&a[r+288|0],E[r+319|0]=63&a[r+319|0]|64,function(A,I,g,B){var C,Q,i,n,r,o,e,t,c,f,y,s,w,h,D,u,p,F,G,k,_,H,Y,b,m,U,v,S,N,R,M,d,P,J,x,L,K,q,X,V,T,W,j,Z,O,z,$,AA,IA,gA=0,BA=0,CA=0,QA=0,EA=0,iA=0,nA=0,aA=0,rA=0,oA=0,eA=0,tA=0,cA=0,fA=0,yA=0,sA=0,wA=0,hA=0,DA=0,uA=0,pA=0,lA=0,FA=0,GA=0,kA=0,_A=0,HA=0,YA=0,bA=0,mA=0,UA=0,vA=0,SA=0,NA=0,RA=0,MA=0,dA=0,PA=0,JA=0,xA=0,LA=0,KA=0,qA=0,XA=0,VA=0,TA=0,WA=0,jA=0,ZA=0,OA=0,zA=0;JA=Cg(I),FA=a[I+2|0]|a[I+3|0]<<8|a[I+4|0]<<16|a[I+5|0]<<24,WA=Cg(I+5|0),HA=l,sA=a[I+7|0]|a[I+8|0]<<8|a[I+9|0]<<16|a[I+10|0]<<24,wA=a[I+10|0]|a[I+11|0]<<8|a[I+12|0]<<16|a[I+13|0]<<24,mA=Cg(I+13|0),yA=l,eA=a[I+15|0]|a[I+16|0]<<8|a[I+17|0]<<16|a[I+18|0]<<24,qA=Cg(I+18|0),cA=l,YA=Cg(I+21|0),nA=a[I+23|0]|a[I+24|0]<<8|a[I+25|0]<<16|a[I+26|0]<<24,rA=Cg(I+26|0),QA=l,gA=a[I+28|0]|a[I+29|0]<<8|a[I+30|0]<<16|a[I+31|0]<<24,RA=Cg(g),GA=a[(I=g)+2|0]|a[I+3|0]<<8|a[I+4|0]<<16|a[I+5|0]<<24,XA=Cg(I+5|0),oA=l,hA=a[I+7|0]|a[I+8|0]<<8|a[I+9|0]<<16|a[I+10|0]<<24,fA=a[I+10|0]|a[I+11|0]<<8|a[I+12|0]<<16|a[I+13|0]<<24,VA=Cg(I+13|0),tA=l,EA=a[I+15|0]|a[I+16|0]<<8|a[I+17|0]<<16|a[I+18|0]<<24,TA=Cg(I+18|0),CA=l,xA=Cg(I+21|0),BA=a[I+23|0]|a[I+24|0]<<8|a[I+25|0]<<16|a[I+26|0]<<24,iA=Cg(I+26|0),g=l,I=a[I+28|0]|a[I+29|0]<<8|a[I+30|0]<<16|a[I+31|0]<<24,Z=Cg(B),O=a[B+2|0]|a[B+3|0]<<8|a[B+4|0]<<16|a[B+5|0]<<24,z=Cg(B+5|0),$=l,MA=a[B+7|0]|a[B+8|0]<<8|a[B+9|0]<<16|a[B+10|0]<<24,LA=a[B+10|0]|a[B+11|0]<<8|a[B+12|0]<<16|a[B+13|0]<<24,KA=Cg(B+13|0),SA=l,UA=a[B+15|0]|a[B+16|0]<<8|a[B+17|0]<<16|a[B+18|0]<<24,jA=Cg(B+18|0),vA=l,kA=Cg(B+21|0),AA=A,I=xg(C=I>>>7|0,0,Q=2097151&((3&QA)<<30|rA>>>2),0),aA=l,QA=I,I=xg(i=2097151&((3&g)<<30|iA>>>2),0,n=gA>>>7|0,0),gA=l+aA|0,gA=(g=QA+I|0)>>>0>>0?gA+1|0:gA,iA=g,I=xg(Q,0,i,0),QA=l,BA=(g=xg(r=BA>>>5&2097151,0,n,0))+I|0,I=l+QA|0,I=BA>>>0>>0?I+1|0:I,g=BA,BA=xg(C,0,o=nA>>>5&2097151,0),I=l+I|0,aA=QA=g+BA|0,lA=I=QA>>>0>>0?I+1|0:I,DA=(I=QA)- -1048576|0,uA=BA=lA-((I>>>0<4293918720)+-1|0)|0,I=(g=BA>>21)+gA|0,rA=I=(QA=(BA=(2097151&BA)<<11|DA>>>21)+iA|0)>>>0>>0?I+1|0:I,_A=(I=BA=QA)- -1048576|0,iA=nA=rA-((I>>>0<4293918720)+-1|0)|0,QA=(I=QA=xg(C,0,n,0))-(nA=-2097152&(dA=I- -1048576|0))|0,I=((NA=l)-((I>>>0>>0)+(gA=bA=NA-((I>>>0<4293918720)+-1|0)|0)|0)|0)+(g=iA>>21)|0,d=I=(U=QA+((2097151&iA)<<11|_A>>>21)|0)>>>0>>0?I+1|0:I,nA=xg(U,I,-683901,-1),QA=l,P=g=gA>>21,I=xg(S=(2097151&gA)<<11|dA>>>21,g,136657,0),g=l+QA|0,bA=gA=I+nA|0,nA=gA>>>0>>0?g+1|0:g,I=xg(e=2097151&((1&tA)<<31|VA>>>1),0,Q,0),gA=l,QA=(g=xg(t=fA>>>4&2097151,0,n,0))+I|0,I=l+gA|0,g=(gA=QA)>>>0>>0?I+1|0:I,QA=(I=xg(c=EA>>>6&2097151,0,o,0))+gA|0,gA=l+g|0,gA=QA>>>0>>0?gA+1|0:gA,g=QA,m=I=0,QA=(I=xg(f=2097151&xA,I,y=2097151&((7&cA)<<29|qA>>>3),0))+g|0,g=l+gA|0,g=QA>>>0>>0?g+1|0:g,gA=xg(s=2097151&((7&CA)<<29|TA>>>3),0,w=2097151&YA,0),I=l+g|0,I=(QA=gA+QA|0)>>>0>>0?I+1|0:I,gA=QA,g=I,I=xg(r,0,h=eA>>>6&2097151,0),g=l+g|0,g=(gA=I+gA|0)>>>0>>0?g+1|0:g,QA=(I=gA)+(gA=xg(i,0,D=2097151&((1&yA)<<31|mA>>>1),0))|0,I=l+g|0,I=QA>>>0>>0?I+1|0:I,gA=xg(C,0,u=wA>>>4&2097151,0),I=l+I|0,cA=QA=QA+gA|0,QA=QA>>>0>>0?I+1|0:I,I=xg(Q,0,t,0),g=l,gA=I,I=xg(p=hA>>>7&2097151,0,n,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,CA=(I=gA)+(gA=xg(o,0,e,0))|0,I=l+g|0,I=CA>>>0>>0?I+1|0:I,g=xg(c,0,w,0),I=l+I|0,I=(gA=g+CA|0)>>>0>>0?I+1|0:I,CA=(g=xg(f,m,h,0))+gA|0,gA=l+I|0,gA=CA>>>0>>0?gA+1|0:gA,I=xg(y,0,s,0),g=l+gA|0,g=(CA=I+CA|0)>>>0>>0?g+1|0:g,I=xg(r,0,D,0),g=l+g|0,g=(gA=I+CA|0)>>>0>>0?g+1|0:g,CA=(I=gA)+(gA=xg(i,0,u,0))|0,I=l+g|0,I=CA>>>0>>0?I+1|0:I,gA=xg(C,0,F=sA>>>7&2097151,0),I=l+I|0,fA=CA=CA+gA|0,EA=I=CA>>>0>>0?I+1|0:I,tA=(I=CA)- -1048576|0,CA=gA=EA-((I>>>0<4293918720)+-1|0)|0,I=(g=gA>>21)+QA|0,QA=I=(hA=(gA=(2097151&gA)<<11|tA>>>21)+cA|0)>>>0>>0?I+1|0:I,g=I+nA|0,(nA=(I=gA=hA)+bA|0)>>>0>>0&&(g=g+1|0),I=nA,nA=QA-((gA>>>0<4293918720)+-1|0)|0,eA=I-(gA=-2097152&(yA=gA- -1048576|0))|0,cA=g-((I>>>0>>0)+(QA=nA)|0)|0,N=BA-(g=-2097152&_A)|0,J=I=rA-((BA>>>0>>0)+iA|0)|0,gA=xg(S,P,-997805,-1),g=l+EA|0,g=(BA=gA+fA|0)>>>0>>0?g+1|0:g,gA=xg(U,d,136657,0),g=l+g|0,g=(BA=gA+BA|0)>>>0>>0?g+1|0:g,gA=xg(N,I,-683901,-1),I=l+g|0,I=(BA=gA+BA|0)>>>0>>0?I+1|0:I,nA=(gA=BA)-(g=-2097152&tA)|0,EA=I-((gA>>>0>>0)+CA|0)|0,I=xg(Q,0,p,0),g=l,gA=I,I=xg(G=2097151&((3&oA)<<30|XA>>>2),0,n,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,BA=(I=gA)+(gA=xg(o,0,t,0))|0,I=l+g|0,I=BA>>>0>>0?I+1|0:I,gA=xg(e,0,w,0),g=l+I|0,g=(BA=gA+BA|0)>>>0>>0?g+1|0:g,gA=xg(c,0,y,0),I=l+g|0,I=(BA=gA+BA|0)>>>0>>0?I+1|0:I,g=xg(f,m,D,0),gA=l+I|0,gA=(BA=g+BA|0)>>>0>>0?gA+1|0:gA,I=xg(s,0,h,0),g=l+gA|0,g=(BA=I+BA|0)>>>0>>0?g+1|0:g,gA=xg(r,0,u,0),I=l+g|0,I=(BA=gA+BA|0)>>>0>>0?I+1|0:I,gA=xg(i,0,F,0),g=l+I|0,g=(BA=gA+BA|0)>>>0>>0?g+1|0:g,gA=xg(C,0,k=2097151&((3&HA)<<30|WA>>>2),0),I=l+g|0,CA=BA=gA+BA|0,BA=BA>>>0>>0?I+1|0:I,I=xg(Q,0,G,0),g=l,iA=(gA=I)+(I=xg(_=GA>>>5&2097151,0,n,0))|0,gA=l+g|0,gA=iA>>>0>>0?gA+1|0:gA,I=xg(o,0,p,0),g=l+gA|0,g=(iA=I+iA|0)>>>0>>0?g+1|0:g,gA=xg(t,0,w,0),I=l+g|0,I=(iA=gA+iA|0)>>>0>>0?I+1|0:I,gA=xg(e,0,y,0),g=l+I|0,g=(iA=gA+iA|0)>>>0>>0?g+1|0:g,gA=xg(c,0,h,0),I=l+g|0,I=(iA=gA+iA|0)>>>0>>0?I+1|0:I,g=xg(f,m,u,0),gA=l+I|0,gA=(iA=g+iA|0)>>>0>>0?gA+1|0:gA,I=xg(s,0,D,0),g=l+gA|0,g=(iA=I+iA|0)>>>0>>0?g+1|0:g,gA=xg(r,0,F,0),I=l+g|0,I=(iA=gA+iA|0)>>>0>>0?I+1|0:I,gA=xg(i,0,k,0),g=l+I|0,g=(iA=gA+iA|0)>>>0>>0?g+1|0:g,gA=xg(C,0,H=FA>>>5&2097151,0),I=l+g|0,hA=iA=gA+iA|0,XA=I=iA>>>0>>0?I+1|0:I,IA=(I=iA)- -1048576|0,VA=gA=XA-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+BA|0,fA=CA=(gA=(2097151&gA)<<11|IA>>>21)+CA|0,TA=g=CA>>>0>>0?g+1|0:g,WA=(I=CA)- -1048576|0,xA=gA=g-((I>>>0<4293918720)+-1|0)|0,I=(I=gA>>21)+EA|0,tA=gA=(g=(2097151&gA)<<11|WA>>>21)+nA|0,NA=I=gA>>>0>>0?I+1|0:I,mA=(I=gA)- -1048576|0,bA=gA=NA-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+cA|0,nA=BA=(gA=(2097151&gA)<<11|mA>>>21)+eA|0,_A=g=BA>>>0>>0?g+1|0:g,FA=gA=g-(((I=BA)>>>0<4293918720)+-1|0)|0,rA=(2097151&gA)<<11|(YA=I- -1048576|0)>>>21,CA=gA>>21,g=xg(Q,0,c,0),I=l,gA=g,g=xg(n,0,e,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,BA=(g=xg(f,m,w,0))+gA|0,gA=l+I|0,gA=BA>>>0>>0?gA+1|0:gA,I=xg(o,0,s,0),g=l+gA|0,g=(BA=I+BA|0)>>>0>>0?g+1|0:g,I=xg(r,0,y,0),g=l+g|0,g=(gA=I+BA|0)>>>0>>0?g+1|0:g,BA=(I=gA)+(gA=xg(i,0,h,0))|0,I=l+g|0,I=BA>>>0>>0?I+1|0:I,g=xg(C,0,D,0),I=l+I|0,I=(gA=g+BA|0)>>>0>>0?I+1|0:I,BA=gA,EA=gA+(g=xg(S,P,-683901,-1))|0,gA=l+I|0,gA=EA>>>0>>0?gA+1|0:gA,g=EA,EA=I,GA=(I=BA)- -1048576|0,EA=gA-((BA=EA=EA-((I>>>0<4293918720)+-1|0)|0)+((I=g)>>>0<(iA=-2097152&GA)>>>0)|0)|0,I=g=I-iA|0,g=QA>>21,QA=I+(gA=(2097151&QA)<<11|yA>>>21)|0,I=g+EA|0,I=QA>>>0>>0?I+1|0:I,gA=(g=QA)-(EA=-2097152&(oA=g- -1048576|0))|0,g=(I-((g>>>0>>0)+(QA=iA=I-((g>>>0<4293918720)+-1|0)|0)|0)|0)+CA|0,x=rA=gA+rA|0,L=g=rA>>>0>>0?g+1|0:g,iA=xg(rA,g,-683901,-1),EA=l,g=xg(o,0,f,m),I=l,gA=g,g=xg(n,0,c,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,CA=(g=xg(Q,0,s,0))+gA|0,gA=l+I|0,gA=CA>>>0>>0?gA+1|0:gA,I=xg(r,0,w,0),g=l+gA|0,g=(CA=I+CA|0)>>>0>>0?g+1|0:g,gA=xg(i,0,y,0),I=l+g|0,I=(CA=gA+CA|0)>>>0>>0?I+1|0:I,gA=xg(C,0,h,0),g=l+I|0,I=(I=g=(CA=gA+CA|0)>>>0>>0?g+1|0:g)+(g=BA>>21)|0,sA=CA=(I=(BA=CA+(gA=(2097151&BA)<<11|GA>>>21)|0)>>>0>>0?I+1|0:I)-(((g=BA)>>>0<4293918720)+-1|0)|0,gA=g-(BA=-2097152&(PA=g- -1048576|0))|0,g=(QA>>21)+(g=I-((g>>>0>>0)+CA|0)|0)|0,K=BA=(I=(2097151&QA)<<11|oA>>>21)+gA|0,q=g=BA>>>0>>0?g+1|0:g,g=xg(BA,g,136657,0),I=l+EA|0,qA=gA=g+iA|0,wA=gA>>>0>>0?I+1|0:I,I=xg(w,0,_,0),g=l,gA=I,I=xg(Y=2097151&RA,0,o,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,BA=(I=gA)+(gA=xg(y,0,G,0))|0,I=l+g|0,I=BA>>>0>>0?I+1|0:I,gA=xg(h,0,p,0),g=l+I|0,g=(BA=gA+BA|0)>>>0>>0?g+1|0:g,gA=xg(t,0,D,0),I=l+g|0,I=(BA=gA+BA|0)>>>0>>0?I+1|0:I,g=xg(e,0,u,0),gA=l+I|0,gA=(BA=g+BA|0)>>>0>>0?gA+1|0:gA,I=xg(c,0,F,0),g=l+gA|0,g=(BA=I+BA|0)>>>0>>0?g+1|0:g,gA=xg(f,m,H,0),I=l+g|0,I=(BA=gA+BA|0)>>>0>>0?I+1|0:I,gA=xg(s,0,k,0),g=l+I|0,g=(BA=gA+BA|0)>>>0>>0?g+1|0:g,gA=xg(r,0,b=2097151&JA,0),I=l+g|0,gA=(g=BA=gA+BA|0)>>>0>>0?I+1|0:I,(I=BA+(g=(a[B+23|0]|a[B+24|0]<<8|a[B+25|0]<<16|a[B+26|0]<<24)>>>5&2097151)|0)>>>0>>0&&(gA=gA+1|0),QA=I,BA=gA,g=xg(y,0,_,0),I=l,gA=g,g=xg(w,0,Y,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,CA=(g=gA)+(gA=xg(h,0,G,0))|0,g=l+I|0,g=CA>>>0>>0?g+1|0:g,gA=xg(D,0,p,0),I=l+g|0,I=(CA=gA+CA|0)>>>0>>0?I+1|0:I,gA=xg(t,0,u,0),g=l+I|0,g=(CA=gA+CA|0)>>>0>>0?g+1|0:g,I=xg(e,0,F,0),gA=l+g|0,gA=(CA=I+CA|0)>>>0>>0?gA+1|0:gA,g=xg(c,0,k,0),I=l+gA|0,I=(CA=g+CA|0)>>>0>>0?I+1|0:I,gA=xg(f,m,b,0),g=l+I|0,g=(CA=gA+CA|0)>>>0>>0?g+1|0:g,gA=xg(s,0,H,0),I=l+g|0,I=(CA=gA+CA|0)>>>0>>0?I+1|0:I,EA=CA=(gA=2097151&kA)+CA|0,yA=g=CA>>>0>>0?I+1|0:I,HA=(I=CA)- -1048576|0,eA=gA=g-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+BA|0,oA=g=(CA=QA=(gA=(2097151&gA)<<11|HA>>>21)+QA|0)>>>0>>0?g+1|0:g,RA=aA-(I=-2097152&DA)|0,kA=lA-((aA>>>0>>0)+uA|0)|0,I=xg(Q,0,r,0),g=l,gA=I,I=xg(n,0,f,m),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,BA=(I=gA)+(gA=xg(i,0,o,0))|0,I=l+g|0,I=BA>>>0>>0?I+1|0:I,gA=xg(C,0,w,0),g=l+I|0,aA=BA=gA+BA|0,BA=BA>>>0>>0?g+1|0:g,I=xg(n,0,s,0),g=l,QA=(gA=I)+(I=xg(Q,0,f,m))|0,gA=l+g|0,gA=QA>>>0>>0?gA+1|0:gA,g=xg(o,0,r,0),I=l+gA|0,I=(QA=g+QA|0)>>>0>>0?I+1|0:I,gA=xg(i,0,w,0),g=l+I|0,g=(QA=gA+QA|0)>>>0>>0?g+1|0:g,gA=xg(C,0,y,0),I=l+g|0,iA=gA=(rA=I=(QA=gA+QA|0)>>>0>>0?I+1|0:I)-(((I=QA)>>>0<4293918720)+-1|0)|0,I=(2097151&gA)<<11|(lA=I- -1048576|0)>>>21,gA=(gA>>21)+BA|0,aA=gA=(BA=aA=I+aA|0)>>>0>>0?gA+1|0:gA,uA=(I=BA)- -1048576|0,I=(g=(gA=DA=gA-((I>>>0<4293918720)+-1|0)|0)>>21)+kA|0,X=I=(v=RA=(DA=(2097151&gA)<<11|uA>>>21)+RA|0)>>>0>>0?I+1|0:I,kA=xg(v,I,470296,0),DA=l,R=BA-(g=-2097152&uA)|0,dA=I=aA-((BA>>>0>>0)+gA|0)|0,gA=xg(N,J,666643,0),g=l+DA|0,g=(BA=gA+kA|0)>>>0>>0?g+1|0:g,gA=xg(R,I,654183,0),I=l+g|0,aA=BA=gA+BA|0,gA=BA>>>0>>0?I+1|0:I,I=QA-(g=-2097152&lA)|0,g=(sA>>21)+(QA=rA-((QA>>>0>>0)+iA|0)|0)|0,V=iA=(BA=(2097151&sA)<<11|PA>>>21)+I|0,JA=g=iA>>>0>>0?g+1|0:g,ZA=CA- -1048576|0,BA=I=oA-((CA>>>0<4293918720)+-1|0)|0,g=xg(iA,g,-997805,-1),gA=l+gA|0,g=(gA=(QA=g+aA|0)>>>0>>0?gA+1|0:gA)+oA|0,kA=(CA=QA+CA|0)-(gA=-2097152&ZA)|0,DA=(g=CA>>>0>>0?g+1|0:g)-((CA>>>0>>0)+I|0)|0,I=xg(R,dA,470296,0),g=l,gA=I,I=xg(v,X,666643,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,I=xg(iA,JA,654183,0),g=l+g|0,I=(g=(gA=I+gA|0)>>>0>>0?g+1|0:g)+yA|0,oA=(gA=gA+EA|0)-(g=-2097152&HA)|0,EA=(I=gA>>>0>>0?I+1|0:I)-((gA>>>0>>0)+eA|0)|0,g=xg(h,0,_,0),I=l,gA=g,g=xg(y,0,Y,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,QA=(g=gA)+(gA=xg(D,0,G,0))|0,g=l+I|0,g=QA>>>0>>0?g+1|0:g,gA=xg(u,0,p,0),I=l+g|0,I=(QA=gA+QA|0)>>>0>>0?I+1|0:I,gA=xg(t,0,F,0),g=l+I|0,g=(QA=gA+QA|0)>>>0>>0?g+1|0:g,I=xg(e,0,k,0),gA=l+g|0,gA=(QA=I+QA|0)>>>0>>0?gA+1|0:gA,g=xg(c,0,H,0),I=l+gA|0,I=(QA=g+QA|0)>>>0>>0?I+1|0:I,gA=xg(s,0,b,0),g=l+I|0,I=g=(QA=gA+QA|0)>>>0>>0?g+1|0:g,(g=QA+(gA=2097151&((7&vA)<<29|jA>>>3))|0)>>>0>>0&&(I=I+1|0),CA=g,QA=I,I=xg(D,0,_,0),g=l,gA=I,I=xg(h,0,Y,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,I=xg(u,0,G,0),g=l+g|0,g=(gA=I+gA|0)>>>0>>0?g+1|0:g,aA=(I=xg(F,0,p,0))+gA|0,gA=l+g|0,gA=aA>>>0>>0?gA+1|0:gA,g=xg(t,0,k,0),I=l+gA|0,I=(aA=g+aA|0)>>>0>>0?I+1|0:I,g=xg(e,0,H,0),I=l+I|0,I=(gA=g+aA|0)>>>0>>0?I+1|0:I,aA=(g=gA)+(gA=xg(c,0,b,0))|0,g=l+I|0,g=aA>>>0>>0?g+1|0:g,(I=(gA=UA>>>6&2097151)+aA|0)>>>0>>0&&(g=g+1|0),lA=I,rA=g,uA=I- -1048576|0,cA=gA=g-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+QA|0,iA=g=(CA=(gA=(2097151&gA)<<11|uA>>>21)+CA|0)>>>0>>0?g+1|0:g,sA=(I=CA)- -1048576|0,aA=gA=g-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+EA|0,yA=QA=(gA=(2097151&gA)<<11|sA>>>21)+oA|0,EA=g=QA>>>0>>0?g+1|0:g,eA=(I=QA)- -1048576|0,GA=gA=g-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+DA|0,g=(QA=(gA=(2097151&gA)<<11|eA>>>21)+kA|0)>>>0>>0?g+1|0:g,gA=QA,QA=g,I=g+wA|0,(oA=(g=gA)+qA|0)>>>0>>0&&(I=I+1|0),g=oA,oA=QA-((gA>>>0<4293918720)+-1|0)|0,zA=g-(gA=-2097152&(OA=gA- -1048576|0))|0,pA=I-((g>>>0>>0)+(QA=oA)|0)|0,g=xg(K,q,-997805,-1),I=l+EA|0,PA=gA=g+yA|0,oA=gA>>>0>>0?I+1|0:I,g=xg(V,JA,470296,0),I=l,gA=g,g=xg(R,dA,666643,0),I=l+I|0,g=(I=(gA=gA+g|0)>>>0>>0?I+1|0:I)+iA|0,sA=(gA=gA+CA|0)-(I=-2097152&sA)|0,wA=(g=gA>>>0>>0?g+1|0:g)-((gA>>>0>>0)+aA|0)|0,I=xg(V,JA,666643,0),gA=l+rA|0,yA=g=I+lA|0,EA=g>>>0>>0?gA+1|0:gA,g=xg(u,0,_,0),I=l,gA=g,g=xg(D,0,Y,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,CA=(g=gA)+(gA=xg(F,0,G,0))|0,g=l+I|0,g=CA>>>0>>0?g+1|0:g,gA=xg(k,0,p,0),I=l+g|0,I=(CA=gA+CA|0)>>>0>>0?I+1|0:I,gA=xg(t,0,H,0),g=l+I|0,g=(CA=gA+CA|0)>>>0>>0?g+1|0:g,I=xg(e,0,b,0),gA=l+g|0,I=(g=CA=I+CA|0)>>>0>>0?gA+1|0:gA,(g=(gA=2097151&((1&SA)<<31|KA>>>1))+g|0)>>>0>>0&&(I=I+1|0),aA=g,CA=I,I=xg(F,0,_,0),g=l,gA=I,I=xg(u,0,Y,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,iA=(I=xg(k,0,G,0))+gA|0,gA=l+g|0,gA=iA>>>0>>0?gA+1|0:gA,g=xg(H,0,p,0),I=l+gA|0,I=(iA=g+iA|0)>>>0>>0?I+1|0:I,gA=xg(t,0,b,0),g=l+I|0,I=g=(iA=gA+iA|0)>>>0>>0?g+1|0:g,(g=iA+(gA=LA>>>4&2097151)|0)>>>0>>0&&(I=I+1|0),rA=g,HA=I,jA=(I=g)- -1048576|0,LA=gA=HA-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+CA|0,SA=g=(iA=aA=(gA=(2097151&gA)<<11|jA>>>21)+aA|0)>>>0>>0?g+1|0:g,qA=(I=iA)- -1048576|0,UA=gA=g-((I>>>0<4293918720)+-1|0)|0,I=(I=gA>>21)+EA|0,I=(gA=(g=(2097151&gA)<<11|qA>>>21)+yA|0)>>>0>>0?I+1|0:I,g=gA,vA=(gA=I)-((g>>>0<(I=-2097152&uA)>>>0)+cA|0)|0,RA=(I=aA=g-I|0)- -1048576|0,lA=g=vA-((I>>>0<4293918720)+-1|0)|0,I=(gA=g>>21)+wA|0,kA=CA=(g=(2097151&g)<<11|RA>>>21)+sA|0,uA=I=CA>>>0>>0?I+1|0:I,DA=(I=CA)- -1048576|0,sA=g=uA-((I>>>0<4293918720)+-1|0)|0,M=nA-(I=-2097152&YA)|0,KA=CA=_A-((nA>>>0>>0)+FA|0)|0,I=(2097151&g)<<11|DA>>>21,g=(g>>21)+oA|0,g=(EA=I+PA|0)>>>0>>0?g+1|0:g,nA=(gA=xg(x,L,136657,0))+(EA-(I=-2097152&eA)|0)|0,I=l+(g-((EA>>>0>>0)+GA|0)|0)|0,I=nA>>>0>>0?I+1|0:I,gA=xg(M,CA,-683901,-1),g=l+I|0,nA=CA=gA+nA|0,wA=g=CA>>>0>>0?g+1|0:g,YA=(I=CA)- -1048576|0,yA=g=g-((I>>>0<4293918720)+-1|0)|0,I=(gA=g>>21)+pA|0,EA=CA=(g=(2097151&g)<<11|YA>>>21)+zA|0,cA=g=(eA=I=CA>>>0>>0?I+1|0:I)-(((I=CA)>>>0<4293918720)+-1|0)|0,PA=(2097151&g)<<11|(_A=I- -1048576|0)>>>21,GA=g>>21,I=xg(o,0,_,0),g=l,gA=I,I=xg(Q,0,Y,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,I=xg(w,0,G,0),g=l+g|0,g=(gA=I+gA|0)>>>0>>0?g+1|0:g,CA=(I=gA)+(gA=xg(y,0,p,0))|0,I=l+g|0,I=CA>>>0>>0?I+1|0:I,g=xg(t,0,h,0),I=l+I|0,I=(gA=g+CA|0)>>>0>>0?I+1|0:I,CA=(g=xg(e,0,D,0))+gA|0,gA=l+I|0,gA=CA>>>0>>0?gA+1|0:gA,I=xg(c,0,u,0),g=l+gA|0,g=(CA=I+CA|0)>>>0>>0?g+1|0:g,I=xg(f,m,k,0),g=l+g|0,g=(gA=I+CA|0)>>>0>>0?g+1|0:g,CA=(I=gA)+(gA=xg(s,0,F,0))|0,I=l+g|0,I=CA>>>0>>0?I+1|0:I,g=xg(r,0,H,0),I=l+I|0,I=(gA=g+CA|0)>>>0>>0?I+1|0:I,CA=(g=xg(i,0,b,0))+gA|0,gA=l+I|0,g=(I=CA)>>>0>>0?gA+1|0:gA,I=Cg(B+26|0),(I=CA+(gA=2097151&((3&(gA=l))<<30|I>>>2))|0)>>>0>>0&&(g=g+1|0),FA=I,CA=g,I=xg(N,J,470296,0),g=l,gA=I,I=xg(U,d,666643,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,pA=(I=gA)+(gA=xg(v,X,654183,0))|0,I=l+g|0,I=pA>>>0>>0?I+1|0:I,g=xg(R,dA,-997805,-1),gA=l+I|0,gA=(pA=g+pA|0)>>>0>>0?gA+1|0:gA,g=xg(V,JA,136657,0),I=l+gA|0,g=(I=(pA=g+pA|0)>>>0>>0?I+1|0:I)+CA|0,T=(I=FA)- -1048576|0,CA=oA=CA-((I>>>0<4293918720)+-1|0)|0,g=(g=(pA=(gA=pA)+FA|0)>>>0>>0?g+1|0:g)+(gA=BA>>21)|0,g=(BA=pA+(I=(2097151&BA)<<11|ZA>>>21)|0)>>>0>>0?g+1|0:g,I=(FA=BA)-(BA=-2097152&T)|0,gA=xg(K,q,-683901,-1),g=(BA=g-((FA>>>0>>0)+CA|0)|0)+l|0,W=I- -1048576|0,oA=BA-((I>>>0<4293918720)+-1|0)|0,g=(g=(pA=I+gA|0)>>>0>>0?g+1|0:g)+(gA=QA>>21)|0,g=(oA=(g=(QA=pA+(I=(2097151&QA)<<11|OA>>>21)|0)>>>0>>0?g+1|0:g)-((QA>>>0<(gA=-2097152&W)>>>0)+(BA=oA)|0)|0)+GA|0,(QA=(I=QA-gA|0)+PA|0)>>>0>>0&&(g=g+1|0),j=I- -1048576|0,oA=oA-((I>>>0<4293918720)+-1|0)|0,ZA=(I=gA=QA)-(gA=-2097152&j)|0,OA=g-((I>>>0>>0)+(QA=oA)|0)|0,zA=EA-(I=-2097152&_A)|0,pA=eA-((EA>>>0>>0)+cA|0)|0,PA=nA-(I=-2097152&YA)|0,YA=wA-((nA>>>0>>0)+yA|0)|0,g=xg(K,q,654183,0),I=l+uA|0,I=(gA=g+kA|0)>>>0>>0?I+1|0:I,nA=(g=xg(x,L,-997805,-1))+((EA=gA)-(gA=-2097152&DA)|0)|0,gA=l+(I-((EA>>>0>>0)+sA|0)|0)|0,I=xg(M,KA,136657,0),g=l+(nA>>>0>>0?gA+1|0:gA)|0,_A=EA=I+nA|0,nA=EA>>>0>>0?g+1|0:g,FA=tA-(I=-2097152&mA)|0,wA=NA-((tA>>>0>>0)+bA|0)|0,g=xg(U,d,-997805,-1),I=l,gA=g,g=xg(S,P,654183,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,EA=(g=xg(N,J,136657,0))+gA|0,gA=l+I|0,gA=EA>>>0>>0?gA+1|0:gA,I=xg(v,X,-683901,-1),g=l+gA|0,g=(g=(EA=I+EA|0)>>>0>>0?g+1|0:g)+TA|0,g=(I=EA+fA|0)>>>0>>0?g+1|0:g,yA=(gA=I)-(I=-2097152&WA)|0,eA=g-((gA>>>0>>0)+xA|0)|0,g=xg(U,d,654183,0),I=l,gA=g,g=xg(S,P,470296,0),I=l+I|0,I=(gA=gA+g|0)>>>0>>0?I+1|0:I,EA=(g=gA)+(gA=xg(N,J,-997805,-1))|0,g=l+I|0,g=XA+(EA>>>0>>0?g+1|0:g)|0,g=(I=EA+hA|0)>>>0>>0?g+1|0:g,EA=(gA=I)+(I=xg(v,X,136657,0))|0,gA=l+g|0,gA=EA>>>0>>0?gA+1|0:gA,g=xg(R,dA,-683901,-1),I=l+gA|0,I=(EA=g+EA|0)>>>0>>0?I+1|0:I,fA=(gA=EA)-(g=-2097152&IA)|0,tA=I-((gA>>>0>>0)+VA|0)|0,I=xg(Q,0,_,0),g=l,gA=I,I=xg(n,0,Y,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,EA=(I=xg(o,0,G,0))+gA|0,gA=l+g|0,gA=EA>>>0>>0?gA+1|0:gA,g=xg(w,0,p,0),I=l+gA|0,I=(EA=g+EA|0)>>>0>>0?I+1|0:I,gA=xg(t,0,y,0),g=l+I|0,g=(EA=gA+EA|0)>>>0>>0?g+1|0:g,gA=xg(e,0,h,0),I=l+g|0,I=(EA=gA+EA|0)>>>0>>0?I+1|0:I,gA=xg(c,0,D,0),g=l+I|0,g=(EA=gA+EA|0)>>>0>>0?g+1|0:g,I=xg(f,m,F,0),gA=l+g|0,gA=(EA=I+EA|0)>>>0>>0?gA+1|0:gA,g=xg(s,0,u,0),I=l+gA|0,I=(EA=g+EA|0)>>>0>>0?I+1|0:I,gA=xg(r,0,k,0),g=l+I|0,g=(EA=gA+EA|0)>>>0>>0?g+1|0:g,gA=xg(C,0,b,0),I=l+g|0,I=(EA=gA+EA|0)>>>0>>0?I+1|0:I,gA=xg(i,0,H,0),g=l+I|0,gA=(I=EA=gA+EA|0)>>>0>>0?g+1|0:g,(I=(g=(a[B+28|0]|a[B+29|0]<<8|a[B+30|0]<<16|a[B+31|0]<<24)>>>7|0)+I|0)>>>0>>0&&(gA=gA+1|0),g=CA>>21,CA=(B=(2097151&CA)<<11|T>>>21)+I|0,I=g+gA|0,EA=CA,GA=B=(cA=I=CA>>>0>>0?I+1|0:I)-(((I=CA)>>>0<4293918720)+-1|0)|0,g=(g=B>>21)+tA|0,CA=B=(I=(2097151&B)<<11|(uA=I- -1048576|0)>>>21)+fA|0,oA=g=B>>>0>>0?g+1|0:g,sA=(I=B)- -1048576|0,hA=B=g-((I>>>0<4293918720)+-1|0)|0,I=(g=B>>21)+eA|0,I=(gA=(B=(2097151&B)<<11|sA>>>21)+yA|0)>>>0>>0?I+1|0:I,B=gA,tA=gA=(fA=I)-(((I=gA)>>>0<4293918720)+-1|0)|0,g=(g=gA>>21)+wA|0,mA=gA=(I=(2097151&gA)<<11|(eA=I- -1048576|0)>>>21)+FA|0,bA=g=gA>>>0>>0?g+1|0:g,I=xg(gA,g,-683901,-1),gA=l+nA|0,yA=g=I+_A|0,nA=g>>>0>>0?gA+1|0:gA,kA=B-(I=-2097152&eA)|0,_A=tA=fA-((B>>>0>>0)+tA|0)|0,g=xg(K,q,470296,0)+aA|0,I=vA+l|0,I=g>>>0>>0?I+1|0:I,aA=(B=xg(x,L,654183,0))+((gA=g)-(g=-2097152&RA)|0)|0,g=l+(I-((gA>>>0>>0)+lA|0)|0)|0,g=aA>>>0>>0?g+1|0:g,I=xg(M,KA,-997805,-1),gA=l+g|0,gA=(B=I+aA|0)>>>0>>0?gA+1|0:gA,g=xg(mA,bA,136657,0),I=l+gA|0,I=(B=g+B|0)>>>0>>0?I+1|0:I,g=xg(kA,tA,-683901,-1),I=l+I|0,fA=I=(gA=B=g+B|0)>>>0>>0?I+1|0:I,wA=(I=gA)- -1048576|0,tA=B=fA-((I>>>0<4293918720)+-1|0)|0,I=(g=B>>21)+nA|0,I=(aA=(B=(2097151&B)<<11|wA>>>21)+yA|0)>>>0>>0?I+1|0:I,B=aA,aA=I,eA=(I=B)- -1048576|0,I=(g=(nA=yA=aA-((I>>>0<4293918720)+-1|0)|0)>>21)+YA|0,YA=lA=(yA=(2097151&nA)<<11|eA>>>21)+PA|0,yA=lA>>>0>>0?I+1|0:I,XA=B-(I=-2097152&eA)|0,VA=aA-((B>>>0>>0)+nA|0)|0,xA=gA-(I=-2097152&wA)|0,NA=fA-((gA>>>0>>0)+tA|0)|0,B=(I=xg(K,q,666643,0))+(iA-(g=-2097152&qA)|0)|0,g=l+(SA-((iA>>>0>>0)+UA|0)|0)|0,g=B>>>0>>0?g+1|0:g,gA=(I=B)+(B=xg(x,L,470296,0))|0,I=l+g|0,I=gA>>>0>>0?I+1|0:I,g=xg(M,KA,654183,0),I=l+I|0,tA=B=g+gA|0,B=B>>>0>>0?I+1|0:I,iA=CA-(I=-2097152&sA)|0,nA=oA-((CA>>>0>>0)+hA|0)|0,I=xg(U,d,470296,0),g=l,gA=I,I=xg(S,P,666643,0),g=l+g|0,g=(gA=gA+I|0)>>>0>>0?g+1|0:g,CA=(I=gA)+(gA=xg(N,J,654183,0))|0,I=l+g|0,I=CA>>>0>>0?I+1|0:I,g=xg(v,X,-997805,-1),I=l+I|0,I=(gA=g+CA|0)>>>0>>0?I+1|0:I,CA=(g=gA)+(gA=xg(R,dA,136657,0))|0,g=l+I|0,g=CA>>>0>>0?g+1|0:g,I=xg(V,JA,-683901,-1),gA=l+g|0,g=(gA=(CA=I+CA|0)>>>0>>0?gA+1|0:gA)+cA|0,g=(I=CA+EA|0)>>>0>>0?g+1|0:g,CA=I,I=I-(gA=-2097152&uA)|0,CA=g-((CA>>>0>>0)+GA|0)|0,g=BA>>21,BA=(gA=(2097151&BA)<<11|W>>>21)+I|0,I=g+CA|0,aA=BA,hA=gA=(oA=I=BA>>>0>>0?I+1|0:I)-(((I=BA)>>>0<4293918720)+-1|0)|0,g=(g=gA>>21)+nA|0,DA=gA=(I=(2097151&gA)<<11|(vA=I- -1048576|0)>>>21)+iA|0,FA=g=gA>>>0>>0?g+1|0:g,g=xg(gA,g,-683901,-1),I=l+B|0,I=(gA=g+tA|0)>>>0>>0?I+1|0:I,g=xg(mA,bA,-997805,-1),I=l+I|0,I=(B=g+gA|0)>>>0>>0?I+1|0:I,g=xg(kA,_A,136657,0),gA=l+I|0,iA=B=g+B|0,CA=B>>>0>>0?gA+1|0:gA,I=xg(k,0,_,0),g=l,B=I,I=xg(F,0,Y,0),g=l+g|0,g=(B=B+I|0)>>>0>>0?g+1|0:g,I=xg(H,0,G,0),g=l+g|0,g=(B=I+B|0)>>>0>>0?g+1|0:g,gA=(I=B)+(B=xg(b,0,p,0))|0,I=l+g|0,I=gA>>>0>>0?I+1|0:I,(g=(B=MA>>>7&2097151)+gA|0)>>>0>>0&&(I=I+1|0),EA=g,B=I,I=xg(H,0,_,0),g=l,BA=(gA=I)+(I=xg(k,0,Y,0))|0,gA=l+g|0,gA=BA>>>0>>0?gA+1|0:gA,g=xg(b,0,G,0),I=l+gA|0,g=(gA=BA=g+BA|0)>>>0>>0?I+1|0:I,(I=BA+(gA=2097151&((3&$)<<30|z>>>2))|0)>>>0>>0&&(g=g+1|0),nA=I,BA=g,UA=I- -1048576|0,eA=g=g-((I>>>0<4293918720)+-1|0)|0,I=B+(gA=g>>>21|0)|0,fA=g=(cA=I=(EA=(g=(2097151&g)<<11|UA>>>21)+EA|0)>>>0>>0?I+1|0:I)-(((I=EA)>>>0<4293918720)+-1|0)|0,I=rA+((2097151&g)<<11|(lA=I- -1048576|0)>>>21)|0,g=HA+(g>>21)|0,g=I>>>0>>0?g+1|0:g,rA=(B=xg(x,L,666643,0))+((gA=I)-(I=-2097152&jA)|0)|0,I=l+(g-((gA>>>0>>0)+LA|0)|0)|0,I=rA>>>0>>0?I+1|0:I,g=xg(M,KA,470296,0),gA=l+I|0,gA=(B=g+rA|0)>>>0>>0?gA+1|0:gA,I=xg(DA,FA,136657,0),g=l+gA|0,g=(B=I+B|0)>>>0>>0?g+1|0:g,gA=(I=B)+(B=xg(mA,bA,654183,0))|0,I=l+g|0,I=gA>>>0>>0?I+1|0:I,B=xg(kA,_A,-997805,-1),g=l+I|0,uA=gA=B+gA|0,tA=g=gA>>>0>>0?g+1|0:g,sA=(I=gA)- -1048576|0,rA=B=g-((I>>>0<4293918720)+-1|0)|0,gA=(I=B>>21)+CA|0,CA=B=(g=(2097151&B)<<11|sA>>>21)+iA|0,B=gA=B>>>0>>0?gA+1|0:gA,wA=(I=CA)- -1048576|0,iA=gA=gA-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+NA|0,TA=GA=(gA=(2097151&gA)<<11|wA>>>21)+xA|0,GA=GA>>>0>>0?g+1|0:g,I=aA-(g=-2097152&vA)|0,gA=oA-((aA>>>0>>0)+hA|0)|0,gA=(g=QA>>21)+gA|0,oA=gA=(QA=(aA=I)+(I=(2097151&QA)<<11|j>>>21)|0)>>>0>>0?gA+1|0:gA,hA=gA=gA-(((I=QA)>>>0<4293918720)+-1|0)|0,SA=g=gA>>21,I=xg(MA=(2097151&gA)<<11|(vA=I- -1048576|0)>>>21,g,-683901,-1),g=l+B|0,g=(gA=I+CA|0)>>>0>>0?g+1|0:g,xA=gA-(I=-2097152&wA)|0,NA=g-((gA>>>0>>0)+iA|0)|0,I=xg(MA,SA,136657,0),gA=l+tA|0,gA=(g=I+uA|0)>>>0>>0?gA+1|0:gA,HA=g-(I=-2097152&sA)|0,LA=gA-((g>>>0>>0)+rA|0)|0,B=(g=xg(M,KA,666643,0))+(EA-(I=-2097152&lA)|0)|0,I=l+(cA-((EA>>>0>>0)+fA|0)|0)|0,I=B>>>0>>0?I+1|0:I,g=xg(DA,FA,-997805,-1),I=l+I|0,I=(B=g+B|0)>>>0>>0?I+1|0:I,gA=(g=B)+(B=xg(mA,bA,470296,0))|0,g=l+I|0,g=gA>>>0>>0?g+1|0:g,B=(I=xg(kA,_A,654183,0))+gA|0,gA=l+g|0,cA=B,iA=B>>>0>>0?gA+1|0:gA,CA=BA,I=xg(b,0,_,0),g=l,B=I,I=xg(H,0,Y,0),g=l+g|0,I=g=(B=B+I|0)>>>0>>0?g+1|0:g,(g=(g=B)+(B=O>>>5&2097151)|0)>>>0>>0&&(I=I+1|0),EA=g,B=I,g=2097151&Z,gA=xg(b,0,Y,0)+g|0,I=l,BA=gA,tA=gA=(fA=I=gA>>>0>>0?I+1|0:I)-(((I=gA)>>>0<4293918720)+-1|0)|0,I=(2097151&gA)<<11|(lA=I- -1048576|0)>>>21,gA=(gA>>>21|0)+B|0,rA=gA=(B=EA=I+EA|0)>>>0>>0?gA+1|0:gA,uA=(I=B)- -1048576|0,aA=gA=gA-((I>>>0<4293918720)+-1|0)|0,I=(g=gA>>>21|0)+CA|0,I=(EA=(gA=(2097151&gA)<<11|uA>>>21)+nA|0)>>>0>>0?I+1|0:I,EA=(g=xg(DA,FA,654183,0))+((CA=EA)-(gA=-2097152&UA)|0)|0,gA=l+(I-((16383&eA)+(CA>>>0>>0)|0)|0)|0,I=xg(mA,bA,666643,0),g=l+(EA>>>0>>0?gA+1|0:gA)|0,g=(CA=I+EA|0)>>>0>>0?g+1|0:g,gA=xg(kA,_A,470296,0),I=l+g|0,sA=CA=gA+CA|0,EA=gA=(nA=I=CA>>>0>>0?I+1|0:I)-(((I=CA)>>>0<4293918720)+-1|0)|0,g=(g=gA>>21)+iA|0,eA=gA=(I=(2097151&gA)<<11|(wA=I- -1048576|0)>>>21)+cA|0,CA=g=gA>>>0>>0?g+1|0:g;cA=(I=gA)- -1048576|0,I=(g=(gA=iA=g-((I>>>0<4293918720)+-1|0)|0)>>21)+LA|0,iA=(HA=UA=(iA=(2097151&gA)<<11|cA>>>21)+HA|0)>>>0>>0?I+1|0:I,g=xg(MA,SA,-997805,-1),I=l+CA|0,I=(eA=g+eA|0)>>>0>>0?I+1|0:I,LA=(CA=eA)-(g=-2097152&cA)|0,UA=I-((CA>>>0>>0)+gA|0)|0,I=xg(MA,SA,654183,0),gA=l+nA|0,gA=(g=I+sA|0)>>>0>>0?gA+1|0:gA,eA=g-(I=-2097152&wA)|0,cA=gA-((g>>>0>>0)+EA|0)|0,gA=(I=xg(DA,FA,470296,0))+(B-(g=-2097152&uA)|0)|0,g=l+(rA-((16383&aA)+(B>>>0>>0)|0)|0)|0,g=gA>>>0>>0?g+1|0:g,I=xg(kA,_A,666643,0),g=l+g|0,EA=B=I+gA|0,CA=B>>>0>>0?g+1|0:g,I=xg(DA,FA,666643,0),gA=l+(fA-((4095&tA)+(BA>>>0<(g=-2097152&lA)>>>0)|0)|0)|0,aA=gA=(B=I+(BA-g|0)|0)>>>0>>0?gA+1|0:gA,fA=(I=B)- -1048576|0,nA=gA=gA-((I>>>0<4293918720)+-1|0)|0,g=(I=gA>>21)+CA|0,tA=BA=(gA=(2097151&gA)<<11|fA>>>21)+EA|0,EA=g=BA>>>0>>0?g+1|0:g,CA=gA=g-(((I=BA)>>>0<4293918720)+-1|0)|0,g=(2097151&gA)<<11|(rA=I- -1048576|0)>>>21,gA=(gA>>21)+cA|0,cA=BA=g+eA|0,BA=BA>>>0>>0?gA+1|0:gA,I=xg(MA,SA,470296,0),g=l+EA|0,CA=(g=(gA=I+tA|0)>>>0>>0?g+1|0:g)-(((EA=gA)>>>0<(gA=-2097152&rA)>>>0)+CA|0)|0,tA=I=EA-gA|0,I=xg(MA,SA,666643,0),gA=l+(aA-((B>>>0<(g=-2097152&fA)>>>0)+nA|0)|0)|0,nA=EA=I+(B-g|0)|0,B=(2097151&(gA=EA>>>0>>0?gA+1|0:gA))<<11|(I=EA)>>>21,I=(g=gA>>21)+CA|0,CA=gA=tA+B|0,gA=(I=(g=gA)>>>0>>0?I+1|0:I)>>21,I=(2097151&I)<<11|g>>>21,g=gA+BA|0,EA=B=I+cA|0,I=(I=(g=B>>>0>>0?g+1|0:g)>>21)+UA|0,rA=B=(g=(2097151&g)<<11|B>>>21)+LA|0,g=(g=(I=B>>>0>>0?I+1|0:I)>>21)+iA|0,uA=B=(I=(2097151&I)<<11|B>>>21)+HA|0,gA=(I=(g=B>>>0>>0?g+1|0:g)>>21)+NA|0,sA=B=(g=(2097151&g)<<11|B>>>21)+xA|0,B=(2097151&(gA=(I=B)>>>0>>0?gA+1|0:gA))<<11|I>>>21,I=(g=gA>>21)+GA|0,wA=gA=B+TA|0,gA=(I=(g=gA)>>>0>>0?I+1|0:I)>>21,I=(2097151&I)<<11|g>>>21,g=gA+VA|0,eA=B=I+XA|0,I=(I=(g=B>>>0>>0?g+1|0:g)>>21)+yA|0,cA=B=(g=(2097151&g)<<11|B>>>21)+YA|0,g=(g=(I=B>>>0>>0?I+1|0:I)>>21)+pA|0,GA=B=(I=(2097151&I)<<11|B>>>21)+zA|0,gA=(I=(g=B>>>0>>0?g+1|0:g)>>21)+OA|0,fA=B=(g=(2097151&g)<<11|B>>>21)+ZA|0,I=B,g=(oA-((QA>>>0<(B=-2097152&vA)>>>0)+hA|0)|0)+(g=(gA=I>>>0>>0?gA+1|0:gA)>>21)|0,tA=gA=(gA=(2097151&gA)<<11|I>>>21)+(I=QA-B|0)|0,aA=I=(g=gA>>>0>>0?g+1|0:g)>>21,g=xg(hA=(2097151&g)<<11|gA>>>21,I,666643,0),gA=l,nA=g=g+(I=2097151&nA)|0,B=gA=g>>>0>>0?gA+1|0:gA,E[0|AA]=g,E[A+1|0]=(255&gA)<<24|g>>>8,I=2097151&CA,BA=xg(hA,aA,470296,0)+I|0,g=l,g=BA>>>0>>0?g+1|0:g,g=(I=B>>21)+g|0,g=(CA=QA=(gA=BA)+(BA=(2097151&B)<<11|nA>>>21)|0)>>>0>>0?g+1|0:g,gA=CA,E[A+4|0]=(2047&g)<<21|gA>>>11,I=g,E[A+3|0]=(7&I)<<29|gA>>>3,g=A,BA=2097151&EA,QA=xg(hA,aA,654183,0)+BA|0,gA=l,gA=QA>>>0>>0?gA+1|0:gA,BA=I,I=(I>>=21)+gA|0,EA=QA=(BA=(2097151&BA)<<11|CA>>>21)+QA|0,gA=I=QA>>>0>>0?I+1|0:I,E[g+6|0]=(63&I)<<26|QA>>>6,QA=0,I=iA=2097151&CA,E[g+2|0]=31&((65535&B)<<16|nA>>>16)|I<<5,BA=g,I=2097151&rA,B=xg(hA,aA,-997805,-1)+I|0,g=l,g=B>>>0>>0?g+1|0:g,g=(I=gA>>21)+g|0,nA=gA=(CA=B)+(B=(2097151&gA)<<11|EA>>>21)|0,g=gA>>>0>>0?g+1|0:g,E[BA+9|0]=(511&g)<<23|gA>>>9,B=g,I=g,g=gA,E[BA+8|0]=(1&I)<<31|g>>>1,CA=0,g=rA=2097151&EA,E[BA+5|0]=(524287&QA)<<13|iA>>>19|g<<2,g=2097151&uA,gA=xg(hA,aA,136657,0)+g|0,I=l,I=gA>>>0>>0?I+1|0:I,g=B>>21,QA=(B=(2097151&B)<<11|nA>>>21)+gA|0,gA=I+g|0,EA=QA,gA=QA>>>0>>0?gA+1|0:gA,E[BA+12|0]=(4095&gA)<<20|QA>>>12,g=gA,E[BA+11|0]=(15&g)<<28|QA>>>4,QA=0,B=iA=2097151&nA,E[BA+7|0]=(16383&CA)<<18|rA>>>14|B<<7,B=BA,gA=2097151&sA,BA=xg(hA,aA,-683901,-1)+gA|0,I=l,I=BA>>>0>>0?I+1|0:I,gA=BA,BA=(2097151&g)<<11|EA>>>21,g=(g>>21)+I|0,I=g=(CA=gA+BA|0)>>>0>>0?g+1|0:g,E[B+14|0]=(127&I)<<25|CA>>>7,BA=0,B=nA=2097151&EA,E[A+10|0]=(131071&QA)<<15|iA>>>17|B<<4,I>>=21,g=(EA=(gA=(2097151&g)<<11|CA>>>21)+(2097151&wA)|0)>>>0>>0?I+1|0:I,B=EA,E[A+17|0]=(1023&g)<<22|B>>>10,I=g,E[A+16|0]=(3&I)<<30|B>>>2,gA=0,B=aA=2097151&CA,E[A+13|0]=(1048575&BA)<<12|nA>>>20|B<<1,I>>=21,CA=BA=(g=(2097151&g)<<11|EA>>>21)+(2097151&eA)|0,I=BA>>>0>>0?I+1|0:I,B=BA,E[A+20|0]=(8191&I)<<19|B>>>13,g=I,E[A+19|0]=(31&I)<<27|B>>>5,B=nA=2097151&EA,E[A+15|0]=(32767&gA)<<17|aA>>>15|B<<6,gA=I>>=21,EA=aA=(B=(2097151&g)<<11|BA>>>21)+(2097151&cA)|0,E[(BA=A)+21|0]=EA,I=CA,E[BA+18|0]=(262143&QA)<<14|nA>>>18|I<<3,B=EA>>>0>>0?gA+1|0:gA,E[BA+22|0]=(255&B)<<24|EA>>>8,g=gA=(I=B)>>21,QA=CA=(I=(2097151&I)<<11|EA>>>21)+(2097151&GA)|0,g=CA>>>0>>0?g+1|0:g,gA=CA,E[BA+25|0]=(2047&g)<<21|gA>>>11,I=g,E[BA+24|0]=(7&I)<<29|gA>>>3,gA=BA,I>>=21,(BA=(g=(2097151&g)<<11|CA>>>21)+(2097151&fA)|0)>>>0>>0&&(I=I+1|0),g=I,E[gA+27|0]=(63&I)<<26|BA>>>6,gA=0,B=31&((65535&B)<<16|EA>>>16),I=EA=2097151&QA,E[A+23|0]=B|I<<5,QA=(2097151&g)<<11|BA>>>21,g>>=21,g=(nA=QA+(2097151&tA)|0)>>>0>>0?g+1|0:g,B=QA=nA,E[A+31|0]=(131071&g)<<15|B>>>17,I=g,E[A+30|0]=(511&I)<<23|B>>>9,E[A+29|0]=(1&I)<<31|B>>>1,g=0,BA&=2097151,E[A+26|0]=(524287&gA)<<13|EA>>>19|BA<<2,E[A+28|0]=(16383&g)<<18|BA>>>14|B<<7}(Q,r+160|0,r+288|0,r+224|0),KI(r+288|0,64),KI(r+224|0,64),I&&(n[I>>2]=64,n[I+4>>2]=0),D=r+560|0,0}function T(A,I,g,B){var C;D=C=D-2272|0,uA(C+2016|0,I),uA(C+1760|0,B),zI(C+480|0,g),cg(C+320|0,g),jI(C,C+320|0),tI(C+320|0,C,C+480|0),jI(C+160|0,C+320|0),zI(I=C+640|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(I=C+800|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(I=C+960|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(I=C+1120|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(I=C+1280|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(I=C+1440|0,C+160|0),tI(C+320|0,C,I),jI(C+160|0,C+320|0),zI(C+1600|0,C+160|0),iB(A),Vg(A+40|0),Vg(A+80|0),B=255;A:{for(;;){if(!(a[(g=B)+(C+2016|0)|0]|a[(C+1760|0)+g|0])){if(B=g+-1|0,g)continue;break A}break}if(!((0|g)<0))for(;pI(C+320|0,A),(0|(g=E[(I=g)+(C+2016|0)|0]))>=1?(jI(C+160|0,C+320|0),tI(C+320|0,C+160|0,(C+480|0)+o((254&g)>>>1|0,160)|0)):(0|g)>-1||(jI(C+160|0,C+320|0),cI(C+320|0,C+160|0,(C+480|0)+o((0-g&254)>>>1|0,160)|0)),(0|(g=E[I+(C+1760|0)|0]))>=1?(jI(C+160|0,C+320|0),wI(C+320|0,C+160|0,o((254&g)>>>1|0,120)+2272|0)):(0|g)>-1||(jI(C+160|0,C+320|0),sI(C+320|0,C+160|0,o((0-g&254)>>>1|0,120)+2272|0)),Ig(A,C+320|0),g=I+-1|0,(0|I)>0;);}D=C+2272|0}function W(A,I,g,B){var C,Q=0,i=0,r=0,o=0,e=0,t=0,c=0;if(D=C=D-704|0,g|B)if(e=(t=n[(Q=A)+72>>2])+(r=(i=g)<<3)|0,i=(o=n[Q+76>>2])+(B<<3|i>>>29)|0,i=e>>>0>>0?i+1|0:i,n[Q+72>>2]=e,n[Q+76>>2]=i,Q=n[Q+64>>2],r=n[A+68>>2],(0|i)==(0|o)&e>>>0>>0|i>>>0>>0&&((Q=Q+1|0)>>>0<1&&(r=r+1|0),n[(i=A)+64>>2]=Q,n[i+68>>2]=r),(Q=(c=B>>>29|0)+Q|0)>>>0>>0&&(r=r+1|0),n[(i=A)+64>>2]=Q,n[i+68>>2]=r,(0|B)==(0|(r=e=0-(128<(i=127&((7&o)<<29|t>>>3))>>>0)|0))&(Q=o=128-i|0)>>>0<=g>>>0|r>>>0>>0){for(Q=0,r=0;E[80+(A+(c=Q+i|0)|0)|0]=a[I+Q|0],(Q=Q+1|0)>>>0<1&&(r=r+1|0),(0|o)!=(0|Q)|(0|r)!=(0|e););if(G(A,A+80|0,C,r=C+640|0),I=I+o|0,!(B=B-((g>>>0>>0)+e|0)|0)&(g=g-o|0)>>>0>127|B>>>0>0)for(;G(A,I,C,r),I=I+128|0,i=B+-1|0,(g=g+-128|0)>>>0<4294967168&&(i=i+1|0),B=i,!i&g>>>0>127|i>>>0>0;);if(g|B)for(Q=0,r=0;E[80+(A+Q|0)|0]=a[I+Q|0],(i=Q+1|0)>>>0<1&&(r=r+1|0),(0|g)!=(0|(Q=i))|(0|B)!=(0|r););KI(C,704)}else for(Q=g,o=(g=!B&g>>>0>1|B>>>0>0)?Q:1,B=g?B:0,Q=0,r=0;E[80+(A+(t=Q+i|0)|0)|0]=a[I+Q|0],(g=Q+1|0)>>>0<1&&(r=r+1|0),(0|o)!=(0|(Q=g))|(0|B)!=(0|r););return D=C+704|0,0}function j(A,I,g){var B,C=0,Q=0;if(g>>>0>=512)return w(0|A,0|I,0|g),A;B=A+g|0;A:if(3&(A^I))if(B>>>0<4)g=A;else if((C=B+-4|0)>>>0>>0)g=A;else for(g=A;E[0|g]=a[0|I],E[g+1|0]=a[I+1|0],E[g+2|0]=a[I+2|0],E[g+3|0]=a[I+3|0],I=I+4|0,(g=g+4|0)>>>0<=C>>>0;);else{I:if((0|g)<1)g=A;else if(3&A)for(g=A;;){if(E[0|g]=a[0|I],I=I+1|0,(g=g+1|0)>>>0>=B>>>0)break I;if(!(3&g))break}else g=A;if(!((C=-4&B)>>>0<64||g>>>0>(Q=C+-64|0)>>>0))for(;n[g>>2]=n[I>>2],n[g+4>>2]=n[I+4>>2],n[g+8>>2]=n[I+8>>2],n[g+12>>2]=n[I+12>>2],n[g+16>>2]=n[I+16>>2],n[g+20>>2]=n[I+20>>2],n[g+24>>2]=n[I+24>>2],n[g+28>>2]=n[I+28>>2],n[g+32>>2]=n[I+32>>2],n[g+36>>2]=n[I+36>>2],n[g+40>>2]=n[I+40>>2],n[g+44>>2]=n[I+44>>2],n[g+48>>2]=n[I+48>>2],n[g+52>>2]=n[I+52>>2],n[g+56>>2]=n[I+56>>2],n[g+60>>2]=n[I+60>>2],I=I- -64|0,(g=g- -64|0)>>>0<=Q>>>0;);if(g>>>0>=C>>>0)break A;for(;n[g>>2]=n[I>>2],I=I+4|0,(g=g+4|0)>>>0>>0;);}if(g>>>0>>0)for(;E[0|g]=a[0|I],I=I+1|0,(0|B)!=(0|(g=g+1|0)););return A}function Z(A,I,g,B,C,Q,i,a){A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,i|=0,a|=0;var r,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0;D=r=D-16|0,n[r+12>>2]=0,Zg(a);A:{if(B){w=4&a;I:{g:{B:{for(;;){o=c;C:{Q:{for(;;){if(y=E[g+o|0],255!=(0|(t=w?aI(y):rI(y))))break Q;if(!C)break C;if(!bg(C,y))break B;if(!((o=o+1|0)>>>0>>0))break}A=c+1|0,n[r+12>>2]=A>>>0>>0?B:A;break g}if(s=(s<<6)+t|0,(t=e+6|0)>>>0<8)e=t;else{if(e=e+-2|0,f>>>0>=I>>>0){n[r+12>>2]=o,n[8960]=68,o=1;break I}E[A+f|0]=s>>>e,f=f+1|0}if((c=o+1|0)>>>0>>0)continue}break}n[r+12>>2]=c;break g}n[r+12>>2]=o}o=0}if(!(e>>>0<=4)){A=-1;break A}}if(A=-1,!((-1<>2];;){g:{if(Q>>>0>=I>>>0)n[8960]=68;else{if(61==(0|(i=E[A+Q|0]))){C=C+-1|0;break g}if(B&&bg(B,i))break g;n[8960]=28}a=-1;break I}if(Q=Q+1|0,n[g>>2]=Q,!C)break}return a}(g,B,r+12|0,C,e>>>1|0)))){A=0;I:if(C&&!((o=n[r+12>>2])>>>0>=B>>>0)){g:{for(;;){if(!bg(C,E[g+o|0]))break g;if((0|(o=o+1|0))==(0|B))break}n[r+12>>2]=B;break I}n[r+12>>2]=o}h=f}}return I=n[r+12>>2],i?n[i>>2]=I+g:(0|I)!=(0|B)&&(n[8960]=28,A=-1),Q&&(n[Q>>2]=h),D=r+16|0,0|A}function O(A,I){var g;for(D=g=D-192|0,U(g+144|0,I),U(g+96|0,g+144|0),U(g+96|0,g+96|0),H(g+96|0,I,g+96|0),H(g+144|0,g+144|0,g+96|0),U(g+48|0,g+144|0),H(g+96|0,g+96|0,g+48|0),U(g+48|0,g+96|0),I=1;U(g+48|0,g+48|0),5!=(0|(I=I+1|0)););for(H(g+96|0,g+48|0,g+96|0),U(g+48|0,g+96|0),I=1;U(g+48|0,g+48|0),10!=(0|(I=I+1|0)););for(H(g+48|0,g+48|0,g+96|0),U(g,g+48|0),I=1;U(g,g),20!=(0|(I=I+1|0)););for(H(g+48|0,g,g+48|0),U(g+48|0,g+48|0),I=1;U(g+48|0,g+48|0),10!=(0|(I=I+1|0)););for(H(g+96|0,g+48|0,g+96|0),U(g+48|0,g+96|0),I=1;U(g+48|0,g+48|0),50!=(0|(I=I+1|0)););for(H(g+48|0,g+48|0,g+96|0),U(g,g+48|0),I=1;U(g,g),100!=(0|(I=I+1|0)););for(H(g+48|0,g,g+48|0),U(g+48|0,g+48|0),I=1;U(g+48|0,g+48|0),50!=(0|(I=I+1|0)););for(H(g+96|0,g+48|0,g+96|0),U(g+96|0,g+96|0),I=1;U(g+96|0,g+96|0),5!=(0|(I=I+1|0)););H(A,g+96|0,g+144|0),D=g+192|0}function z(A,I,g){var B,C,Q,E=0;D=B=D-16|0,C=n[A+20>>2],n[A+20>>2]=0,Q=n[A+4>>2],n[A+4>>2]=0,E=-26;A:{I:{g:switch(g+-1|0){case 1:if(E=-32,eI(I,35621,9))break A;I=I+9|0;break I;case 0:break g;default:break A}if(E=-32,eI(I,35631,8))break A;I=I+8|0}if(!eI(I,35640,3)&&(I=XA(I+3|0,B+12|0))){if(E=-26,19!=n[B+12>>2])break A;if(!eI(I,35644,3)&&(I=XA(I+3|0,B+12|0))&&(n[A+44>>2]=n[B+12>>2],!eI(I,35648,3)&&(I=XA(I+3|0,B+12|0))&&(n[A+40>>2]=n[B+12>>2],!eI(I,35652,3)&&(I=XA(I+3|0,B+12|0))&&(g=n[B+12>>2],n[A+48>>2]=g,n[A+52>>2]=g,36==(0|(g=a[0|I]))&&(n[B+12>>2]=C,I=36==(0|g)?I+1|0:I,!Z(n[A+16>>2],C,I,VA(I),0,B+12|0,B+8|0,3)&&(n[A+20>>2]=n[B+12>>2],I=n[B+8>>2],36==(0|(g=a[0|I]))&&(n[B+12>>2]=Q,I=36==(0|g)?I+1|0:I,!Z(n[A>>2],Q,I,VA(I),0,B+12|0,B+8|0,3)))))))){if(n[A+4>>2]=n[B+12>>2],I=n[B+8>>2],E=DA(A))break A;return D=B+16|0,a[0|I]?-32:0}}E=-32}return D=B+16|0,E}function $(A,I){var g,B,C,Q,i,a,r=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0;(r=c=n[A+60>>2])|(e=n[A+56>>2])&&(c=e,E[(y=e+A|0)- -64|0]=1,(e=e+1|0)>>>0<1&&(r=r+1|0),!r&e>>>0<=15|r>>>0<0&&eA(y+65|0,0,15-c|0),E[A+80|0]=1,R(A,A- -64|0,16,0)),a=n[A+52>>2],u=n[A+48>>2],s=n[A+44>>2],r=n[A+24>>2],c=n[A+28>>2]+(r>>>26|0)|0,t=n[A+32>>2]+(c>>>26|0)|0,h=(c=(D=(-67108864|(g=n[A+36>>2]+(t>>>26|0)|0))+((Q=(B=67108863&t)+((C=(f=67108863&c)+((t=(r=(67108863&r)+((D=n[A+20>>2]+o(g>>>26|0,5)|0)>>>26|0)|0)+((y=5+(e=67108863&D)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)>>31)&r|(w=t)&(t=67108863&(i=(D>>>31|0)-1|0)),w=I,r=0,(e=(y=e&c|t&y|h<<26)+n[A+40>>2]|0)>>>0>>0&&(r=1),fg(w,e),e=0,(f=(w=s)+(h=(s=c&f|t&C)<<20|h>>>6)|0)>>>0>>0&&(e=1),w=f,f=r,h=w+r|0,r=e,r=h>>>0>>0?r+1|0:r,fg(y=I+4|0,h),e=0,(s=(f=u)+(t=(u=c&B|t&Q)<<14|s>>>12)|0)>>>0>>0&&(e=1),f=s,s=r,t=f+r|0,r=e,r=t>>>0>>0?r+1|0:r,fg(w=I+8|0,t),fg(e=I+12|0,r=r+(c=(I=(D&i|c&g)<<8|u>>>18)+a|0)|0),KI(A,88)}function AA(A,I,g,B,C){A|=0,I|=0,g|=0,B|=0;var Q=0,i=0,n=0,r=0,e=0,f=0,y=0,s=0,w=0,h=0;Zg(C|=0),i=(Q=(B>>>0)/3|0)<<2,(Q=o(Q,-3)+B|0)&&(i=2&C?(2|i)+(Q>>>1|0)|0:i+4|0);A:{I:{s=i;g:{B:{if(i>>>0>>0){if(!(4&C)){if(n=0,!B)break g;C=0,Q=0;break B}if(n=0,!B)break g;for(C=0,Q=0;;){for(e=a[g+r|0]|e<<8,C=C+8|0;f=Q,y=C,w=A+Q|0,h=bI(e>>>(C=C+-6|0)&63),E[0|w]=h,Q=Q+1|0,C>>>0>5;);if((0|(r=r+1|0))==(0|B))break}if(n=Q,!C)break g;w=A+Q|0,h=bI(e<<12-y&63),E[0|w]=h,n=f+2|0;break g}Gg(),t()}for(;;){for(e=a[g+r|0]|e<<8,C=C+8|0;f=Q,y=C,w=A+Q|0,h=mI(e>>>(C=C+-6|0)&63),E[0|w]=h,Q=Q+1|0,C>>>0>5;);if((0|(r=r+1|0))==(0|B))break}n=Q,C&&(w=A+Q|0,h=mI(e<<12-y&63),E[0|w]=h,n=f+2|0)}if(s>>>0>=(Q=n)>>>0){if(i>>>0>Q>>>0)break I;i=Q;break A}c(35568,35587,230,35603),t()}eA(A+Q|0,61,i-Q|0)}return eA(A+i|0,0,((g=i+1|0)>>>0>>0?I:g)-i|0),0|A}function IA(A,I,g,B){var C=0,Q=0,i=0,r=0,o=0,e=0;A:{if((Q=n[A+56>>2])|(C=n[A+60>>2])){if(e=A,o=r=16-Q|0,o=(r=(0|B)==(0|(i=0-((16>>0)+C|0)|0))&r>>>0>g>>>0|i>>>0>B>>>0)?g:o,r=i=r?B:i,i|o){if(E[(A+Q|0)- -64|0]=a[0|I],C=1,Q=0,1!=(0|o)|r)for(;i=C+n[A+56>>2]|0,E[(A+i|0)- -64|0]=a[I+C|0],(C=C+1|0)>>>0<1&&(Q=Q+1|0),(0|o)!=(0|C)|(0|Q)!=(0|r););C=n[A+60>>2],i=n[A+56>>2]}else i=Q;if(Q=C+r|0,(i=(C=o)+i|0)>>>0>>0&&(Q=Q+1|0),C=i,n[e+56>>2]=C,n[e+60>>2]=Q,!Q&C>>>0<16|Q>>>0<0)break A;R(A,A- -64|0,16,0),n[A+56>>2]=0,n[A+60>>2]=0,g=(Q=g)-(C=o)|0,B=B-((Q>>>0>>0)+r|0)|0,I=I+C|0}if(!B&g>>>0>=16|B>>>0>0&&(R(A,I,Q=-16&g,B),g&=15,B=0,I=I+Q|0),g|B){for(C=0,Q=0;e=C+n[A+56>>2]|0,E[(A+e|0)- -64|0]=a[I+C|0],(C=C+1|0)>>>0<1&&(Q=Q+1|0),(0|g)!=(0|C)|(0|B)!=(0|Q););I=A,i=A,B=B+n[A+60>>2]|0,(A=g+n[A+56>>2]|0)>>>0>>0&&(B=B+1|0),n[i+56>>2]=A,n[I+60>>2]=B}}}function gA(A,I,g){var B,C=0;B=C=D,D=C=C-448&-64,!A|!I||(vI(C- -64|0,0,0,64),fg(C+60|0,n[I+48>>2]),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,n[I+4>>2]),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,n[I+44>>2]),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,n[I+40>>2]),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,19),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,g),Tg(C- -64|0,C+60|0,4,0),fg(C+60|0,n[I+12>>2]),Tg(C- -64|0,C+60|0,4,0),(g=n[I+8>>2])&&(Tg(C- -64|0,g,n[I+12>>2],0),1&E[I+56|0]&&(KI(n[I+8>>2],n[I+12>>2]),n[I+12>>2]=0)),fg(C+60|0,n[I+20>>2]),Tg(C- -64|0,C+60|0,4,0),(g=n[I+16>>2])&&Tg(C- -64|0,g,n[I+20>>2],0),fg(C+60|0,n[I+28>>2]),Tg(C- -64|0,C+60|0,4,0),(g=n[I+24>>2])&&(Tg(C- -64|0,g,n[I+28>>2],0),2&a[I+56|0]&&(KI(n[I+24>>2],n[I+28>>2]),n[I+28>>2]=0)),fg(C+60|0,n[I+36>>2]),Tg(C- -64|0,C+60|0,4,0),(g=n[I+32>>2])&&Tg(C- -64|0,g,n[I+36>>2],0),og(C- -64|0,A,64)),D=B}function BA(A,I,g,B,C,Q,i,r,o,e){var c,f=0,y=0,s=0,w=0,h=0;D=c=D-352|0,g&&(n[g>>2]=0,n[g+4>>2]=0),B&&(E[0|B]=255),h=-1;A:{if(!(!i&Q>>>0<17|i>>>0<0)){if(f=i+-1|0,(y=Q+-17|0)>>>0<4294967279&&(f=f+1|0),s=y,y=f,!f&s>>>0>=4294967279|f>>>0>0)break A;IB(c+32|0,64,w=A+32|0,A),Og(c+96|0,c+32|0),KI(c+32|0,64),Lg(c+96|0,r,o,e),Lg(c+96|0,35712,0-o&15,0),eA(c+32|0,0,64),E[c+32|0]=a[0|C],uI(c+32|0,c+32|0,64,0,w,1,A),r=a[c+32|0],E[c+32|0]=a[0|C],Lg(c+96|0,c+32|0,64,0),Lg(c+96|0,C=C+1|0,s,y),Lg(c+96|0,35712,15&(f=Q+-1|0),0),LI(c+24|0,o,e),Lg(c+96|0,c+24|0,8,0),f=i,(Q=Q+47|0)>>>0<47&&(f=f+1|0),LI(o=c+24|0,Q,f),Lg(c+96|0,c+24|0,8,0),zg(c+96|0,c),KI(c+96|0,256),hI(c,C+s|0,16)?KI(c,16):(uI(I,C,s,y,w,2,A),ZI(A+36|0,c),VI(w),(2&r||RI(w,4))&&q(A),g&&(n[g>>2]=s,n[g+4>>2]=y),h=0,B&&(E[0|B]=r))}return D=c+352|0,h}Gg(),t()}function CA(A,I){var g,B=0;for(D=g=D-1760|0,zI(g+480|0,I),cg(g+320|0,I),jI(g,g+320|0),tI(g+320|0,g,g+480|0),jI(g+160|0,g+320|0),zI(I=g+640|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(I=g+800|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(I=g+960|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(I=g+1120|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(I=g+1280|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(I=g+1440|0,g+160|0),tI(g+320|0,g,I),jI(g+160|0,g+320|0),zI(g+1600|0,g+160|0),kg(A),I=252;cg(g+320|0,A),B=I,(0|(I=E[I+34208|0]))>=1?(jI(g+160|0,g+320|0),tI(g+320|0,g+160|0,(g+480|0)+o((254&I)>>>1|0,160)|0)):(0|I)>-1||(jI(g+160|0,g+320|0),cI(g+320|0,g+160|0,(g+480|0)+o((0-I&254)>>>1|0,160)|0)),jI(A,g+320|0),I=B+-1|0,B;);D=g+1760|0}function QA(A,I,g){var B,C,Q,E,i,a,r,o,e,t,c,f,y=0,s=0,w=0,h=0,D=0,u=0,p=0,l=0,F=0;B=n[I+4>>2],C=n[A+4>>2],Q=n[I+8>>2],s=n[A+8>>2],E=n[I+12>>2],w=n[A+12>>2],i=n[I+16>>2],h=n[A+16>>2],a=n[I+20>>2],D=n[A+20>>2],r=n[I+24>>2],u=n[A+24>>2],o=n[I+28>>2],p=n[A+28>>2],e=n[I+32>>2],l=n[A+32>>2],t=n[I+36>>2],F=n[A+36>>2],f=(g=0-g|0)&((c=n[I>>2])^(y=n[A>>2])),n[A>>2]=f^y,y=F,F=g&(F^t),n[A+36>>2]=y^F,y=l,l=g&(l^e),n[A+32>>2]=y^l,y=p,p=g&(p^o),n[A+28>>2]=y^p,y=u,u=g&(u^r),n[A+24>>2]=y^u,y=D,D=g&(D^a),n[A+20>>2]=y^D,y=h,h=g&(h^i),n[A+16>>2]=y^h,y=w,w=g&(w^E),n[A+12>>2]=y^w,y=s,s=g&(s^Q),n[A+8>>2]=y^s,y=A,A=g&(B^C),n[y+4>>2]=A^C,n[I+36>>2]=F^t,n[I+32>>2]=l^e,n[I+28>>2]=p^o,n[I+24>>2]=u^r,n[I+20>>2]=D^a,n[I+16>>2]=h^i,n[I+12>>2]=w^E,n[I+8>>2]=s^Q,n[I+4>>2]=A^B,n[I>>2]=c^f}function EA(A,I){var g=0,B=0,C=0,Q=0,E=0,i=0,e=0,t=0,c=0,f=0;A:if(A&&(2!=n[A+36>>2]||(B=n[I>>2],a[I+8|0]<2&&!B)?(function(A,I,g){var B,C=0,Q=0,E=0;if(D=B=D-4096|0,EB(B+3072|0),EB(B+2048|0),!(!A|!I)&&(n[B+2048>>2]=n[I>>2],n[B+2052>>2]=0,n[B+2056>>2]=n[I+4>>2],n[B+2060>>2]=0,n[B+2064>>2]=a[I+8|0],n[B+2068>>2]=0,n[B+2072>>2]=n[A+16>>2],n[B+2076>>2]=0,n[B+2080>>2]=n[A+8>>2],n[B+2084>>2]=0,n[B+2088>>2]=n[A+36>>2],n[B+2092>>2]=0,n[A+20>>2]))for(I=0;(E=127&I)||(C=n[B+2100>>2],(Q=n[B+2096>>2]+1|0)>>>0<1&&(C=C+1|0),n[B+2096>>2]=Q,n[B+2100>>2]=C,EB(B),EB(B+1024|0),b(B+3072|0,B+2048|0,B),b(B+3072|0,B,B+1024|0)),E=n[4+(Q=(B+1024|0)+(E<<3)|0)>>2],n[(C=(I<<3)+g|0)>>2]=n[Q>>2],n[C+4>>2]=E,(I=I+1|0)>>>0>2];);D=B+4096|0}(A,I,c=n[A+4>>2]),B=n[I>>2],f=0):(c=n[A+4>>2],f=1),!((Q=!((i=B)|(B=a[I+8|0]))<<1)>>>0>=(g=n[A+20>>2])>>>0)))for(C=n[A+24>>2],g=(B=(o(C,n[I+4>>2])+Q|0)+o(g,B)|0)+((B>>>0)%(C>>>0)|0?-1:C+-1|0)|0;;){if(C=1==((B>>>0)%(C>>>0)|0)?B+-1|0:g,g=f?n[n[A>>2]+4>>2]+(C<<10)|0:(Q<<3)+c|0,E=n[g+4>>2],e=n[g>>2],g=n[A+28>>2],n[I+12>>2]=Q,g=(E>>>0)%(g>>>0)|0,E=n[I+4>>2],i=t=a[I+8|0]?g:E,i=(t=n[I>>2])?g:i,g=n[n[A>>2]+4>>2],E=((o(i,n[A+24>>2])<<10)+g|0)+(YA(A,I,e,!0&(0|E)==(0|i))<<10)|0,e=g+(C<<10)|0,g=g+(B<<10)|0,t?b(e,E,g):m(e,E,g),(Q=Q+1|0)>>>0>=r[A+20>>2])break A;B=B+1|0,g=C+1|0,C=n[A+24>>2]}}function iA(A,I,g,B,C){var Q,i=0;return D=Q=D-96|0,i=-1,Yg(Q+32|0,Q)||(OI(Q- -64|0,Q+32|0,C),i=$I(A+32|0,I,g,B,Q- -64|0,C,Q),I=n[Q+60>>2],g=n[Q+56>>2],E[A+24|0]=g,E[A+25|0]=g>>>8,E[A+26|0]=g>>>16,E[A+27|0]=g>>>24,E[A+28|0]=I,E[A+29|0]=I>>>8,E[A+30|0]=I>>>16,E[A+31|0]=I>>>24,I=n[Q+52>>2],g=n[Q+48>>2],E[A+16|0]=g,E[A+17|0]=g>>>8,E[A+18|0]=g>>>16,E[A+19|0]=g>>>24,E[A+20|0]=I,E[A+21|0]=I>>>8,E[A+22|0]=I>>>16,E[A+23|0]=I>>>24,I=n[Q+44>>2],g=n[Q+40>>2],E[A+8|0]=g,E[A+9|0]=g>>>8,E[A+10|0]=g>>>16,E[A+11|0]=g>>>24,E[A+12|0]=I,E[A+13|0]=I>>>8,E[A+14|0]=I>>>16,E[A+15|0]=I>>>24,I=n[Q+36>>2],g=n[Q+32>>2],E[0|A]=g,E[A+1|0]=g>>>8,E[A+2|0]=g>>>16,E[A+3|0]=g>>>24,E[A+4|0]=I,E[A+5|0]=I>>>8,E[A+6|0]=I>>>16,E[A+7|0]=I>>>24,KI(Q,32),KI(Q+32|0,32),KI(Q- -64|0,24)),D=Q+96|0,i}function nA(A,I){var g;n[A>>2]=67108863&(a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24),n[A+4>>2]=(a[I+3|0]|a[I+4|0]<<8|a[I+5|0]<<16|a[I+6|0]<<24)>>>2&67108611,n[A+8>>2]=(a[I+6|0]|a[I+7|0]<<8|a[I+8|0]<<16|a[I+9|0]<<24)>>>4&67092735,n[A+12>>2]=(a[I+9|0]|a[I+10|0]<<8|a[I+11|0]<<16|a[I+12|0]<<24)>>>6&66076671,g=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24,n[A+20>>2]=0,n[A+24>>2]=0,n[A+28>>2]=0,n[A+32>>2]=0,n[A+36>>2]=0,n[A+16>>2]=g>>>8&1048575,n[A+40>>2]=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,n[A+44>>2]=a[I+20|0]|a[I+21|0]<<8|a[I+22|0]<<16|a[I+23|0]<<24,n[A+48>>2]=a[I+24|0]|a[I+25|0]<<8|a[I+26|0]<<16|a[I+27|0]<<24,I=a[I+28|0]|a[I+29|0]<<8|a[I+30|0]<<16|a[I+31|0]<<24,E[A+80|0]=0,n[A+56>>2]=0,n[A+60>>2]=0,n[A+52>>2]=I}function aA(A,I,g){var B=0;A:if((0|A)!=(0|I)){if((I-A|0)-g>>>0<=0-(g<<1)>>>0)return j(A,I,g);if(B=3&(A^I),A>>>0>>0){if(B)B=A;else{if(3&A)for(B=A;;){if(!g)break A;if(E[0|B]=a[0|I],I=I+1|0,g=g+-1|0,!(3&(B=B+1|0)))break}else B=A;if(!(g>>>0<=3))for(;n[B>>2]=n[I>>2],I=I+4|0,B=B+4|0,(g=g+-4|0)>>>0>3;);}if(g)for(;E[0|B]=a[0|I],B=B+1|0,I=I+1|0,g=g+-1|0;);}else{if(!B){if(A+g&3)for(;;){if(!g)break A;if(E[0|(B=(g=g+-1|0)+A|0)]=a[I+g|0],!(3&B))break}if(!(g>>>0<=3))for(;n[(g=g+-4|0)+A>>2]=n[I+g>>2],g>>>0>3;);}if(!g)break A;for(;E[(g=g+-1|0)+A|0]=a[I+g|0],g;);}}return A}function rA(A,I,g,B){var C=0,Q=0,i=0,n=0,r=0,o=0;A:if(g|B)for(o=A+224|0,i=A+96|0,C=a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24;;){if(n=96+(A+C|0)|0,r=Q=256-C|0,!B&g>>>0<=Q>>>0|B>>>0<0){j(n,I,g),I=g+(a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)|0,E[A+352|0]=I,E[A+353|0]=I>>>8,E[A+354|0]=I>>>16,E[A+355|0]=I>>>24;break A}if(j(n,I,Q),C=(a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)+Q|0,E[A+352|0]=C,E[A+353|0]=C>>>8,E[A+354|0]=C>>>16,E[A+355|0]=C>>>24,wA(A,128),F(A,i),j(i,o,128),C=(a[A+352|0]|a[A+353|0]<<8|a[A+354|0]<<16|a[A+355|0]<<24)-128|0,E[A+352|0]=C,E[A+353|0]=C>>>8,E[A+354|0]=C>>>16,E[A+355|0]=C>>>24,I=I+Q|0,!((g=(Q=g)-r|0)|(B=B-(Q>>>0>>0)|0)))break}return 0}function oA(A,I){var g,B=0;D=g=D-48|0,function(A,I){var g,B,C,Q,E,i,a,r,e=0;B=n[I+28>>2],C=n[I+24>>2],Q=n[I+20>>2],E=n[I+16>>2],i=n[I+12>>2],a=n[I+8>>2],r=n[I+4>>2],e=n[I>>2],g=n[I+36>>2],I=n[I+32>>2],e=o(((B+(C+(Q+(E+(i+(a+(r+(e+(o(g,19)+16777216>>>25|0)>>26)>>25)>>26)>>25)>>26)>>25)>>26)>>25)+I>>26)+g>>25,19)+e|0,n[A>>2]=67108863&e,e=r+(e>>26)|0,n[A+4>>2]=33554431&e,e=a+(e>>25)|0,n[A+8>>2]=67108863&e,e=i+(e>>26)|0,n[A+12>>2]=33554431&e,e=E+(e>>25)|0,n[A+16>>2]=67108863&e,e=Q+(e>>26)|0,n[A+20>>2]=33554431&e,e=C+(e>>25)|0,n[A+24>>2]=67108863&e,e=B+(e>>26)|0,n[A+28>>2]=33554431&e,I=I+(e>>25)|0,n[A+32>>2]=67108863&I,n[A+36>>2]=g+(I>>26)&33554431}(g,I),I=n[g>>2],E[0|A]=I,E[A+2|0]=I>>>16,E[A+1|0]=I>>>8,B=n[g+4>>2],E[A+5|0]=B>>>14,E[A+4|0]=B>>>6,E[A+3|0]=B<<2|I>>>24,I=n[g+8>>2],E[A+8|0]=I>>>13,E[A+7|0]=I>>>5,E[A+6|0]=I<<3|B>>>22,B=n[g+12>>2],E[A+11|0]=B>>>11,E[A+10|0]=B>>>3,E[A+9|0]=B<<5|I>>>21,I=n[g+16>>2],E[A+15|0]=I>>>18,E[A+14|0]=I>>>10,E[A+13|0]=I>>>2,E[A+12|0]=I<<6|B>>>19,I=n[g+20>>2],E[A+16|0]=I,E[A+18|0]=I>>>16,E[A+17|0]=I>>>8,B=n[g+24>>2],E[A+21|0]=B>>>15,E[A+20|0]=B>>>7,E[A+19|0]=B<<1|I>>>24,I=n[g+28>>2],E[A+24|0]=I>>>13,E[A+23|0]=I>>>5,E[A+22|0]=I<<3|B>>>23,B=n[g+32>>2],E[A+27|0]=B>>>12,E[A+26|0]=B>>>4,E[A+25|0]=B<<4|I>>>21,I=n[g+36>>2],E[A+31|0]=I>>>18,E[A+30|0]=I>>>10,E[A+29|0]=I>>>2,E[A+28|0]=I<<6|B>>>20,D=g+48|0}function eA(A,I,g){var B=0,C=0,Q=0,i=0;if(g&&(E[(B=A+g|0)-1|0]=I,E[0|A]=I,!(g>>>0<3||(E[B+-2|0]=I,E[A+1|0]=I,E[B+-3|0]=I,E[A+2|0]=I,g>>>0<7||(E[B+-4|0]=I,E[A+3|0]=I,g>>>0<9||(C=(B=0-A&3)+A|0,I=o(255&I,16843009),n[C>>2]=I,n[(B=(g=g-B&-4)+C|0)-4>>2]=I,g>>>0<9||(n[C+8>>2]=I,n[C+4>>2]=I,n[B+-8>>2]=I,n[B+-12>>2]=I,g>>>0<25||(n[C+24>>2]=I,n[C+20>>2]=I,n[C+16>>2]=I,n[C+12>>2]=I,n[B+-16>>2]=I,n[B+-20>>2]=I,n[B+-24>>2]=I,n[B+-28>>2]=I,(g=g-(i=4&C|24)|0)>>>0<32))))))))for(B=I,Q=I,I=C+i|0;n[I+24>>2]=Q,n[I+28>>2]=B,n[I+16>>2]=Q,n[I+20>>2]=B,n[I+8>>2]=Q,n[I+12>>2]=B,n[I>>2]=Q,n[I+4>>2]=B,I=I+32|0,(g=g+-32|0)>>>0>31;);return A}function tA(A,I){var g,B=0,C=0,Q=0,i=0;for(D=g=D-464|0;C=B<<1,i=a[I+B|0],E[C+(g+400|0)|0]=15&i,E[(g+400|0)+(1|C)|0]=i>>>4,32!=(0|(B=B+1|0)););for(B=0;I=8+(C=(I=B)+a[0|(B=(g+400|0)+Q|0)]|0)|0,E[0|B]=C-(240&I),B=I<<24>>28,63!=(0|(Q=Q+1|0)););for(E[g+463|0]=a[g+463|0]+B,kg(A),B=1;Kg(g,B>>>1|0,E[(g+400|0)+B|0]),wI(g+240|0,A,g),jI(A,g+240|0),I=B>>>0<62,B=B+2|0,I;);for(cg(g+240|0,A),Ig(g+120|0,g+240|0),pI(g+240|0,g+120|0),Ig(g+120|0,g+240|0),pI(g+240|0,g+120|0),Ig(g+120|0,g+240|0),pI(g+240|0,g+120|0),jI(A,g+240|0),B=0;Kg(g,B>>>1|0,E[(g+400|0)+B|0]),wI(g+240|0,A,g),jI(A,g+240|0),I=B>>>0<62,B=B+2|0,I;);D=g+464|0}function cA(A,I,g,B,C,Q,i,r,o,e){var c,f=0;if(D=c=D-336|0,g&&(n[g>>2]=0,n[g+4>>2]=0),!Q&C>>>0<4294967279|Q>>>0<0)return IB(c+16|0,64,f=A+32|0,A),Og(c+80|0,c+16|0),KI(c+16|0,64),Lg(c+80|0,i,r,o),Lg(c+80|0,35712,0-r&15,0),eA(c+16|0,0,64),E[c+16|0]=e,uI(c+16|0,c+16|0,64,0,f,1,A),Lg(c+80|0,c+16|0,64,0),E[0|I]=a[c+16|0],uI(i=I+1|0,B,C,Q,f,2,A),Lg(c+80|0,i,C,Q),Lg(c+80|0,35712,15&C,0),LI(c+8|0,r,o),Lg(c+80|0,c+8|0,8,0),LI(c+8|0,C- -64|0,Q-((C>>>0<4294967232)+-1|0)|0),Lg(c+80|0,c+8|0,8,0),zg(c+80|0,I=C+i|0),KI(c+80|0,256),ZI(A+36|0,I),VI(f),(2&e||RI(f,4))&&q(A),g&&((A=C+17|0)>>>0<17&&(Q=Q+1|0),n[g>>2]=A,n[g+4>>2]=Q),D=c+336|0,0;Gg(),t()}function fA(A,I,g,B,C,Q,E){var i,a,r,o,e=0;return D=i=D-352|0,X(i,Q,E),!C&g-A>>>0>=B>>>0|0>C>>>0|g>>>0<=A>>>0&&!(!C&A-g>>>0>>0|0>>0&&A>>>0>g>>>0)||(g=aA(A,g,B)),n[i+56>>2]=0,n[i+60>>2]=0,n[i+48>>2]=0,n[i+52>>2]=0,n[i+40>>2]=0,n[i+44>>2]=0,n[i+32>>2]=0,n[i+36>>2]=0,(a=!((E=(e=!C&B>>>0>32|C>>>0>0)?32:B)|(e=e?0:C)))||j(i- -64|0,g,E),o=Q+16|0,Q=e,(r=E+32|0)>>>0<32&&(Q=Q+1|0),_g(i+32|0,i+32|0,r,Q,o,i),Og(i+96|0,i+32|0),a||j(A,i- -64|0,E),KI(i+32|0,64),!C&B>>>0>=33|C>>>0>0&&Hg(A+E|0,Q=g+E|0,(g=B)-E|0,C-(e+(g>>>0>>0)|0)|0,o,i),KI(i,32),Lg(i+96|0,A,B,C),zg(i+96|0,I),KI(i+96|0,256),D=i+352|0,0}function yA(A,I,g,B,C,E,i){var a,r,o=0,e=0,t=0;D=a=D-96|0,X(a,E,i),r=E+16|0,Q[n[8951]](a+32|0,32,0,r,a),E=-1;A:{if(!(0|Q[n[8945]](g,I,B,C,a+32|0))){if(E=0,!A)break A;!C&A-I>>>0>=B>>>0|0>C>>>0|A>>>0<=I>>>0&&!(!C&I-A>>>0>>0|0>>0&&I>>>0>A>>>0)||(I=aA(A,I,B)),g=(E=!C&B>>>0>32|C>>>0>0)?32:B,i=E=E?0:C,g|E?(o=g,t=j(a- -64|0,I,g),E=i,(e=g+32|0)>>>0<32&&(E=E+1|0),_g(a+32|0,a+32|0,e,E,r,a),j(A,t,o)):(E=i,(o=g+32|0)>>>0<32&&(E=E+1|0),_g(e=a+32|0,t=a+32|0,o,E,r,a)),E=0,!C&B>>>0<33|C>>>0<0||Hg((o=A)+(A=g)|0,A+I|0,B-A|0,C-(i+(B>>>0>>0)|0)|0,r,a)}KI(a,32)}return D=a+96|0,E}function sA(A,I){var g,B=0;D=g=D+-64|0,function(A,I){var g;D=g=D+-64|0,ag(A,g),W(A=A+208|0,g,64,0),ag(A,I),KI(g,64),D=g- -64|0}(A,g),B=n[g+28>>2],A=n[g+24>>2],E[I+24|0]=A,E[I+25|0]=A>>>8,E[I+26|0]=A>>>16,E[I+27|0]=A>>>24,E[I+28|0]=B,E[I+29|0]=B>>>8,E[I+30|0]=B>>>16,E[I+31|0]=B>>>24,B=n[g+20>>2],A=n[g+16>>2],E[I+16|0]=A,E[I+17|0]=A>>>8,E[I+18|0]=A>>>16,E[I+19|0]=A>>>24,E[I+20|0]=B,E[I+21|0]=B>>>8,E[I+22|0]=B>>>16,E[I+23|0]=B>>>24,B=n[g+12>>2],A=n[g+8>>2],E[I+8|0]=A,E[I+9|0]=A>>>8,E[I+10|0]=A>>>16,E[I+11|0]=A>>>24,E[I+12|0]=B,E[I+13|0]=B>>>8,E[I+14|0]=B>>>16,E[I+15|0]=B>>>24,B=n[g+4>>2],A=n[g>>2],E[0|I]=A,E[I+1|0]=A>>>8,E[I+2|0]=A>>>16,E[I+3|0]=A>>>24,E[I+4|0]=B,E[I+5|0]=B>>>8,E[I+6|0]=B>>>16,E[I+7|0]=B>>>24,D=g- -64|0}function wA(A,I){var g,B,C=0,Q=0;Q=g=a[A+68|0]|a[A+69|0]<<8|a[A+70|0]<<16|a[A+71|0]<<24,(C=I+(B=a[A+64|0]|a[A+65|0]<<8|a[A+66|0]<<16|a[A+67|0]<<24)|0)>>>0>>0&&(Q=Q+1|0),E[A+64|0]=C,E[A+65|0]=C>>>8,E[A+66|0]=C>>>16,E[A+67|0]=C>>>24,E[A+68|0]=Q,E[A+69|0]=Q>>>8,E[A+70|0]=Q>>>16,E[A+71|0]=Q>>>24,I=a[A+76|0]|a[A+77|0]<<8|a[A+78|0]<<16|a[A+79|0]<<24,(C=(Q=(0|Q)==(0|g)&C>>>0>>0|Q>>>0>>0)+(a[A+72|0]|a[A+73|0]<<8|a[A+74|0]<<16|a[A+75|0]<<24)|0)>>>0>>0&&(I=I+1|0),E[A+72|0]=C,E[A+73|0]=C>>>8,E[A+74|0]=C>>>16,E[A+75|0]=C>>>24,E[A+76|0]=I,E[A+77|0]=I>>>8,E[A+78|0]=I>>>16,E[A+79|0]=I>>>24}function hA(A,I){n[A>>2]=1634760805,n[A+4>>2]=857760878,n[A+8>>2]=2036477234,n[A+12>>2]=1797285236,n[A+16>>2]=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,n[A+20>>2]=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,n[A+24>>2]=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,n[A+28>>2]=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24,n[A+32>>2]=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,n[A+36>>2]=a[I+20|0]|a[I+21|0]<<8|a[I+22|0]<<16|a[I+23|0]<<24,n[A+40>>2]=a[I+24|0]|a[I+25|0]<<8|a[I+26|0]<<16|a[I+27|0]<<24,n[A+44>>2]=a[I+28|0]|a[I+29|0]<<8|a[I+30|0]<<16|a[I+31|0]<<24}function DA(A){var I=0,g=0;if(!A)return-25;if(!n[A>>2])return-1;A:{I:{if(I=-2,!(r[A+4>>2]<16)&&(n[A+8>>2]||(I=-18,!n[A+12>>2]))){if(g=n[A+20>>2],!n[A+16>>2])break I;if(I=-6,!(g>>>0<8)&&(n[A+24>>2]||(I=-20,!n[A+28>>2]))&&(n[A+32>>2]||(I=-21,!n[A+36>>2]))&&(I=-14,!((g=n[A+44>>2])>>>0<8||(I=-15,g>>>0>2097152||(I=-14,g>>>0<(g=n[A+48>>2])<<3>>>0))))){if(!n[A+40>>2])return-12;if(!g)return-16;if(I=-17,!(g>>>0>16777215)){if(A=n[A+52>>2])break A;I=-28}}}return I}return g?-19:-6}return A>>>0>16777215?-29:0}function uA(A,I){for(var g=0,B=0,C=0,Q=0,i=0,n=0,r=0,o=0,e=0,t=0;E[A+g|0]=a[(g>>>3|0)+I|0]>>>(7&g)&1,256!=(0|(g=g+1|0)););for(C=254;;){n=(Q=n)+1|0;A:if(!(!a[0|(i=A+Q|0)]|Q>>>0>254))for(I=1,t=(C>>>0<5?C:5)+1|0,g=n;;){r=I;I:if(B=E[0|(I=A+g|0)])if((0|(e=(o=E[0|i])+(B<<=r)|0))<=15)E[0|i]=e,E[0|I]=0;else{if((0|(I=o-B|0))<-15)break A;for(E[0|i]=I;;){if(!a[0|(I=A+g|0)]){E[0|I]=1;break I}if(E[0|I]=0,I=g>>>0<255,g=g+1|0,!I)break}}if(g=Q+(I=r+1|0)|0,(0|r)==(0|t))break}if(C=C+-1|0,256==(0|n))break}}function pA(A,I,g){var B,C,Q,E,i,a,r,o,e,t,c,f,y,s,w,h,D,u,p,l;c=n[I+4>>2],B=n[A+4>>2],f=n[I+8>>2],C=n[A+8>>2],y=n[I+12>>2],Q=n[A+12>>2],s=n[I+16>>2],E=n[A+16>>2],w=n[I+20>>2],i=n[A+20>>2],h=n[I+24>>2],a=n[A+24>>2],D=n[I+28>>2],r=n[A+28>>2],u=n[I+32>>2],o=n[A+32>>2],p=n[I+36>>2],e=n[A+36>>2],t=n[A>>2],l=n[I>>2]^t,I=0-g|0,n[A>>2]=t^l&I,n[A+36>>2]=I&(e^p)^e,n[A+32>>2]=I&(o^u)^o,n[A+28>>2]=I&(r^D)^r,n[A+24>>2]=I&(a^h)^a,n[A+20>>2]=I&(i^w)^i,n[A+16>>2]=I&(E^s)^E,n[A+12>>2]=I&(Q^y)^Q,n[A+8>>2]=I&(C^f)^C,n[A+4>>2]=I&(B^c)^B}function lA(A,I,g,B){var C,Q,E,i,a=0;D=C=D+-64|0,eA(C+8|0,0,52),a=VA(A),n[C+20>>2]=a,n[C+36>>2]=a,n[C+4>>2]=a,Q=_(a),n[C+32>>2]=Q,E=_(a),n[C+16>>2]=E,i=_(a),n[C>>2]=i;A:if(!i|!Q|!E||!(a=_(a)))v(Q),v(E),v(i),A=-22;else{if(A=z(C,A,B)){v(n[C+32>>2]),v(n[C+16>>2]),v(n[C>>2]),v(a);break A}A=0,I=NA(n[C+40>>2],n[C+44>>2],n[C+52>>2],I,g,n[C+16>>2],n[C+20>>2],a,n[C+4>>2],0,0,B),v(n[C+32>>2]),v(n[C+16>>2]),(I||hI(a,n[C>>2],n[C+4>>2]))&&(A=-35),v(a),v(n[C>>2])}return D=C- -64|0,A}function FA(A,I){var g,B,C=0;D=g=D-288|0,J(B=A+40|0,I),Vg(C=A+80|0),U(g+240|0,B),H(g+192|0,g+240|0,2128),_A(g+240|0,g+240|0,C),HA(g+192|0,g+192|0,C),U(g+144|0,g+192|0),H(g+144|0,g+144|0,g+192|0),U(A,g+144|0),H(A,A,g+192|0),H(A,A,g+240|0),function(A,I){var g,B=0;for(D=g=D-144|0,U(g+96|0,I),U(g+48|0,g+96|0),U(g+48|0,g+48|0),H(g+48|0,I,g+48|0),H(g+96|0,g+96|0,g+48|0),U(g+96|0,g+96|0),H(g+96|0,g+48|0,g+96|0),U(g+48|0,g+96|0),B=1;U(g+48|0,g+48|0),5!=(0|(B=B+1|0)););for(H(g+96|0,g+48|0,g+96|0),U(g+48|0,g+96|0),B=1;U(g+48|0,g+48|0),10!=(0|(B=B+1|0)););for(H(g+48|0,g+48|0,g+96|0),U(g,g+48|0),B=1;U(g,g),20!=(0|(B=B+1|0)););for(H(g+48|0,g,g+48|0),U(g+48|0,g+48|0),B=1;U(g+48|0,g+48|0),10!=(0|(B=B+1|0)););for(H(g+96|0,g+48|0,g+96|0),U(g+48|0,g+96|0),B=1;U(g+48|0,g+48|0),50!=(0|(B=B+1|0)););for(H(g+48|0,g+48|0,g+96|0),U(g,g+48|0),B=1;U(g,g),100!=(0|(B=B+1|0)););for(H(g+48|0,g,g+48|0),U(g+48|0,g+48|0),B=1;U(g+48|0,g+48|0),50!=(0|(B=B+1|0)););H(g+96|0,g+48|0,g+96|0),U(g+96|0,g+96|0),U(g+96|0,g+96|0),H(A,g+96|0,I),D=g+144|0}(A,A),H(A,A,g+144|0),H(A,A,g+240|0),U(g+96|0,A),H(g+96|0,g+96|0,g+192|0),_A(g+48|0,g+96|0,g+240|0);A:{if(!tg(g+48|0)){if(HA(g,g+96|0,g+240|0),C=-1,!tg(g))break A;H(A,A,2176)}(0|yg(A))==(a[I+31|0]>>>7|0)&&TA(A,A),H(A+120|0,A,B),C=0}return D=g+288|0,C}function GA(A,I){var g,B=0;B=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,g=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,E[A+32|0]=g,E[A+33|0]=g>>>8,E[A+34|0]=g>>>16,E[A+35|0]=g>>>24,E[A+36|0]=B,E[A+37|0]=B>>>8,E[A+38|0]=B>>>16,E[A+39|0]=B>>>24,B=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24,I=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,E[A+40|0]=I,E[A+41|0]=I>>>8,E[A+42|0]=I>>>16,E[A+43|0]=I>>>24,E[A+44|0]=B,E[A+45|0]=B>>>8,E[A+46|0]=B>>>16,E[A+47|0]=B>>>24}function kA(A,I){var g,B=0;B=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,g=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,E[A+48|0]=g,E[A+49|0]=g>>>8,E[A+50|0]=g>>>16,E[A+51|0]=g>>>24,E[A+52|0]=B,E[A+53|0]=B>>>8,E[A+54|0]=B>>>16,E[A+55|0]=B>>>24,B=a[I+12|0]|a[I+13|0]<<8|a[I+14|0]<<16|a[I+15|0]<<24,I=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24,E[A+56|0]=I,E[A+57|0]=I>>>8,E[A+58|0]=I>>>16,E[A+59|0]=I>>>24,E[A+60|0]=B,E[A+61|0]=B>>>8,E[A+62|0]=B>>>16,E[A+63|0]=B>>>24}function _A(A,I,g){var B,C,Q,E,i,a,r,o,e,t,c,f,y,s,w,h,D,u;B=n[g+4>>2],C=n[I+4>>2],Q=n[g+8>>2],E=n[I+8>>2],i=n[g+12>>2],a=n[I+12>>2],r=n[g+16>>2],o=n[I+16>>2],e=n[g+20>>2],t=n[I+20>>2],c=n[g+24>>2],f=n[I+24>>2],y=n[g+28>>2],s=n[I+28>>2],w=n[g+32>>2],h=n[I+32>>2],D=n[g+36>>2],u=n[I+36>>2],n[A>>2]=n[I>>2]-n[g>>2],n[A+36>>2]=u-D,n[A+32>>2]=h-w,n[A+28>>2]=s-y,n[A+24>>2]=f-c,n[A+20>>2]=t-e,n[A+16>>2]=o-r,n[A+12>>2]=a-i,n[A+8>>2]=E-Q,n[A+4>>2]=C-B}function HA(A,I,g){var B,C,Q,E,i,a,r,o,e,t,c,f,y,s,w,h,D,u;B=n[g+4>>2],C=n[I+4>>2],Q=n[g+8>>2],E=n[I+8>>2],i=n[g+12>>2],a=n[I+12>>2],r=n[g+16>>2],o=n[I+16>>2],e=n[g+20>>2],t=n[I+20>>2],c=n[g+24>>2],f=n[I+24>>2],y=n[g+28>>2],s=n[I+28>>2],w=n[g+32>>2],h=n[I+32>>2],D=n[g+36>>2],u=n[I+36>>2],n[A>>2]=n[g>>2]+n[I>>2],n[A+36>>2]=D+u,n[A+32>>2]=w+h,n[A+28>>2]=y+s,n[A+24>>2]=c+f,n[A+20>>2]=e+t,n[A+16>>2]=r+o,n[A+12>>2]=i+a,n[A+8>>2]=Q+E,n[A+4>>2]=B+C}function YA(A,I,g,B){var C=0,Q=0;A:{I:{g:{B:{C:{if(!n[I>>2]){if(C=a[I+8|0],Q=n[I+12>>2]+-1|0,!C)break B;if(C=o(C,n[A+20>>2]),I=n[I+12>>2],!B)break C;Q=(I+C|0)-1|0;break B}if(C=n[A+20>>2],A=n[A+24>>2],!B)break g;B=n[I+12>>2]+((-1^C)+A|0)|0;break I}Q=C-!I|0}B=Q,A=n[A+24>>2],Q=0;break A}B=(A-C|0)-!n[I+12>>2]|0}Q=0,3!=(0|(I=a[I+8|0]))&&(Q=o(C,I+1|0))}return C=Q,I=0,(C=(Q=B+-1|0)+C|0)>>>0>>0&&(I=1),xg(g,0,g,0),xg(B,0,l,0),function(A,I,g){var B=0,C=0,Q=0,E=0,i=0,n=0,a=0,r=0,t=0;A:{I:{g:{B:{C:{Q:{E:{i:{n:{if(C=I){if(!(B=g))break n;break i}return u=A-o((A>>>0)/(g>>>0)|0,g)|0,p=0,void(l=0)}if(!A)break E;break Q}if(!((E=B+-1|0)&B))break C;i=0-(E=(e(B)+33|0)-e(C)|0)|0;break g}return u=0,p=C,void(l=0)}if((B=32-e(C)|0)>>>0<31)break B;break I}if(u=A&E,p=0,1==(0|B))break A;return g=31&(A=B?31-e(B+-1^B)|0:32),void(l=32<=(63&A)>>>0?0:I>>>g|0)}E=B+1|0,i=63-B|0}if(B=I,Q=31&(C=63&E),32<=C>>>0?(C=0,Q=B>>>Q|0):(C=B>>>Q|0,Q=((1<>>Q),B=31&(i&=63),32<=i>>>0?(I=A<>>32-B|I<>>31)-(r=g&(n=B-((C=C<<1|Q>>>31)+(i>>>0>>0)|0)>>31))|0,C=C-(a>>>0>>0)|0,I=I<<1|A>>>31,A=t|A<<1,t=1&n,E=E+-1|0;);return u=Q,p=C,void(l=I<<1|A>>>31)}u=A,p=I,I=0}l=I}(C-(g=l)|0,I-(C>>>0>>0)|0,A),l=p,u}function bA(A,I,g,B,C){var Q;if(D=Q=D-192|0,!(!g|(I+-1&255)>>>0>=64))return i[Q+130>>1]=257,E[Q+129|0]=32,E[Q+128|0]=I,ug(Q+128|4),LI(Q+128|8,0,0),n[Q+152>>2]=0,n[Q+156>>2]=0,n[Q+144>>2]=0,n[Q+148>>2]=0,B?GA(Q+128|0,B):(n[Q+168>>2]=0,n[Q+172>>2]=0,n[Q+160>>2]=0,n[Q+164>>2]=0),C?kA(Q+128|0,C):(n[Q+184>>2]=0,n[Q+188>>2]=0,n[Q+176>>2]=0,n[Q+180>>2]=0),vA(A,Q+128|0),eA(Q+32|0,0,96),rA(I=A,A=j(Q,g,32),128,0),KI(A,128),void(D=A+192|0);Gg(),t()}function mA(A){var I,g=0,B=0,C=0,Q=0;for(E[11+(I=D-16|0)|0]=0,E[I+12|0]=0,E[I+13|0]=0,E[I+14|0]=0,n[I+8>>2]=0;;){for(C=a[A+B|0],g=0;E[0|(Q=(I+8|0)+g|0)]=a[0|Q]|C^a[(34464+(g<<5)|0)+B|0],7!=(0|(g=g+1|0)););if(31==(0|(B=B+1|0)))break}for(B=127&a[A+31|0],A=0,g=0;E[0|(C=(I+8|0)+g|0)]=a[0|C]|B^a[34495+(g<<5)|0],7!=(0|(g=g+1|0)););for(g=0;g=a[(I+8|0)+A|0]+-1|g,7!=(0|(A=A+1|0)););return g>>>8&1}function UA(A){var I,g=0,B=0,C=0,Q=0;for(E[11+(I=D-16|0)|0]=0,E[I+12|0]=0,E[I+13|0]=0,E[I+14|0]=0,n[I+8>>2]=0;;){for(C=a[A+B|0],g=0;E[0|(Q=(I+8|0)+g|0)]=a[0|Q]|C^a[(3232+(g<<5)|0)+B|0],7!=(0|(g=g+1|0)););if(31==(0|(B=B+1|0)))break}for(B=127&a[A+31|0],A=0,g=0;E[0|(C=(I+8|0)+g|0)]=a[0|C]|B^a[3263+(g<<5)|0],7!=(0|(g=g+1|0)););for(g=0;g=a[(I+8|0)+A|0]+-1|g,7!=(0|(A=A+1|0)););return g>>>8&1}function vA(A,I){var g=0,B=0,C=0,Q=0,i=0;for(eA(j(A,1952,64)- -64|0,0,293);C=B=(g=Q<<3)+A|0,g=I+g|0,i=a[0|B]|a[B+1|0]<<8|a[B+2|0]<<16|a[B+3|0]<<24,B=(a[g+4|0]|a[g+5|0]<<8|a[g+6|0]<<16|a[g+7|0]<<24)^(a[B+4|0]|a[B+5|0]<<8|a[B+6|0]<<16|a[B+7|0]<<24),g=(a[0|g]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24)^i,E[0|C]=g,E[C+1|0]=g>>>8,E[C+2|0]=g>>>16,E[C+3|0]=g>>>24,E[C+4|0]=B,E[C+5|0]=B>>>8,E[C+6|0]=B>>>16,E[C+7|0]=B>>>24,8!=(0|(Q=Q+1|0)););}function SA(A,I){var g,B=0,C=0,Q=0,E=0;if(D=g=D-48|0,!((B=DA(A))||(B=-26,I+-1>>>0>1||(Q=n[A+44>>2],B=n[A+48>>2],n[g>>2]=0,C=n[A+40>>2],n[g+28>>2]=B,n[g+12>>2]=-1,n[g+8>>2]=C,B=((C=Q>>>0<(C=B<<3)>>>0?C:Q)>>>0)/((Q=B<<2)>>>0)|0,n[g+20>>2]=B,n[g+24>>2]=B<<2,n[g+16>>2]=o(B,Q),B=n[A+52>>2],n[g+36>>2]=I,n[g+32>>2]=B,B=function(A,I){var g,B=0;return D=g=D-80|0,B=-25,!A|!I||(B=_(n[A+20>>2]<<3),n[A+4>>2]=B,B?(B=function(A,I){var g,B=0,C=0;D=g=D-16|0,C=-22;A:if(!(!A|!I)&&1024==(((B=I<<10)>>>0)/(I>>>0)|0)&&(I=_(12),n[A>>2]=I,I)){n[I>>2]=0,n[I+4>>2]=0,I=function(A,I){if(4294967168>>0)A=48;else{if(!(I=function(A){var I=0,g=0,B=0,C=0,Q=0,E=0;return 4294967168<=A>>>0?(n[8960]=48,0):(A=_(76+(B=A>>>0<11?16:A+11&-8)|0))?(I=A+-8|0,63&A?(C=(-8&(E=n[(Q=A+-4|0)>>2]))-(g=(A=(A=(A+63&-64)-8|0)-I>>>0>15?A:A- -64|0)-I|0)|0,3&E?(n[A+4>>2]=C|1&n[A+4>>2]|2,n[4+(C=A+C|0)>>2]=1|n[C+4>>2],n[Q>>2]=g|1&n[Q>>2]|2,n[A+4>>2]=1|n[A+4>>2],S(I,g)):(I=n[I>>2],n[A+4>>2]=C,n[A>>2]=I+g)):A=I,3&(I=n[A+4>>2])&&((g=-8&I)>>>0<=B+16>>>0||(n[A+4>>2]=B|1&I|2,I=A+B|0,B=g-B|0,n[I+4>>2]=3|B,n[4+(g=A+g|0)>>2]=1|n[g+4>>2],S(I,B))),A+8|0):0}(I)))return 48;n[A>>2]=I,A=0}return A}(g+12|0,B),n[8960]=I;I:{if(I)n[g+12>>2]=0;else if(I=n[g+12>>2])break I;v(n[A>>2]),n[A>>2]=0;break A}n[n[A>>2]>>2]=I,n[n[A>>2]+4>>2]=I,n[n[A>>2]+8>>2]=B,C=0}return D=g+16|0,C}(A,n[A+16>>2]))?xI(A,n[I+56>>2]):(gA(g,I,n[A+36>>2]),KI(g- -64|0,8),function(A,I){var g,B=0,C=0,Q=0;if(D=g=D-1024|0,n[I+28>>2])for(Q=A+68|0,C=A- -64|0;fg(C,0),fg(Q,B),L(g,1024,A,72),fI(n[n[I>>2]+4>>2]+(o(n[I+24>>2],B)<<10)|0,g),fg(C,1),L(g,1024,A,72),fI(1024+(n[n[I>>2]+4>>2]+(o(n[I+24>>2],B)<<10)|0)|0,g),(B=B+1|0)>>>0>2];);KI(g,1024),D=g+1024|0}(g,A),KI(g,72),B=0):B=-22),D=g+80|0,B}(g,A))))){if(n[g+8>>2])for(;JA(g,E),(E=E+1|0)>>>0>2];);!function(A,I){var g,B=0,C=0;if(D=g=D-2048|0,!(!A|!I)){if(BB(g+1024|0,(n[n[I>>2]+4>>2]+(n[I+24>>2]<<10)|0)-1024|0),r[I+28>>2]>=2)for(B=1;C=n[I+24>>2],YI(g+1024|0,(n[n[I>>2]+4>>2]+(C+o(B,C)<<10)|0)-1024|0),(B=B+1|0)>>>0>2];);!function(A,I){for(var g=0,B=0;LI((g=B<<3)+A|0,n[(g=I+g|0)>>2],n[g+4>>2]),128!=(0|(B=B+1|0)););}(g,g+1024|0),L(n[A>>2],n[A+4>>2],g,1024),KI(g+1024|0,1024),KI(g,1024),xI(I,n[A+56>>2])}D=g+2048|0}(A,g),B=0}return D=g+48|0,B}function NA(A,I,g,B,C,Q,E,i,a,r,o,e){var t,c;return D=t=D+-64|0,(c=_(a))?(n[t+32>>2]=0,n[t+36>>2]=0,n[t+24>>2]=0,n[t+28>>2]=0,n[t+20>>2]=E,n[t+16>>2]=Q,n[t+12>>2]=C,n[t+8>>2]=B,n[t+4>>2]=a,n[t>>2]=c,n[t+56>>2]=0,n[t+52>>2]=g,n[t+48>>2]=g,n[t+44>>2]=I,n[t+40>>2]=A,(g=SA(t,e))?KI(c,a):(i&&j(i,c,a),!r|!o||!x(r,o,t,e)?(KI(c,a),g=0):(KI(c,a),KI(r,o),g=-31)),v(c)):g=-22,D=t- -64|0,g}function RA(A,I,g,B,C){var Q,E=0,i=0;D=Q=D+-64|0;A:{I:{if((E=VA(A))>>>0<128&&!g|g>>>0<0){if(g=eA(Q,0,60),i=JI(E))break I}else n[8960]=28;A=-1;break A}n[g+32>>2]=0,n[g+36>>2]=0,n[g+8>>2]=i,n[g+16>>2]=i,n[g+20>>2]=E,n[g>>2]=i,n[g+12>>2]=E,n[g+24>>2]=0,n[g+28>>2]=0,n[g+4>>2]=E,z(g,A,C)?(n[8960]=28,A=-1):(A=1,(0|I)==n[g+40>>2]&&(A=n[g+44>>2]!=(B>>>10|0))),v(i)}return D=Q- -64|0,A}function MA(A,I,g,B,C,Q){var E,i,n=0,a=0,r=0;return D=E=D-592|0,n=-1,SI(i=A+32|0)&&(UA(A)||PI(C)&&(UA(C)||FA(E+128|0,C)||(Ng(E+384|0,Q),W(E+384|0,A,32,0),W(E+384|0,C,32,0),W(E+384|0,I,g,B),ag(E+384|0,E+320|0),k(E+320|0),T(E+8|0,E+320|0,E+128|0,i),NI(E+288|0,E+8|0),a=-1,r=$g(E+288|0,A),n=((E+288|0)==(0|A)?a:r)|hI(A,E+288|0,32)))),D=E+592|0,n}function dA(A,I){var g,B=0,C=0;for(D=g=D-192|0,rg(A),eA(g- -64|0,54,128),E[g+64|0]=54^a[0|I],B=1;E[0|(C=(g- -64|0)+B|0)]=a[0|C]^a[I+B|0],32!=(0|(B=B+1|0)););for(W(A,g- -64|0,128,0),rg(A=A+208|0),eA(g- -64|0,92,128),E[g+64|0]=92^a[0|I],B=1;E[0|(C=(g- -64|0)+B|0)]=a[0|C]^a[I+B|0],32!=(0|(B=B+1|0)););W(A,g- -64|0,128,0),KI(g- -64|0,128),KI(g,64),D=g+192|0}function PA(A,I,g,B,C,Q,E,i,n,a){var r;return D=r=D-352|0,IB(r+32|0,64,n,a),Og(r+96|0,r+32|0),KI(r+32|0,64),Lg(r+96|0,Q,E,i),Lg(r+96|0,34688,0-E&15,0),Lg(r+96|0,I,g,B),Lg(r+96|0,34688,0-g&15,0),LI(r+24|0,E,i),Lg(r+96|0,r+24|0,8,0),LI(r+24|0,g,B),Lg(r+96|0,r+24|0,8,0),zg(r+96|0,r),KI(r+96|0,256),C=AB(r,C),KI(r,16),A&&(C?(eA(A,0,g),C=-1):(uI(A,I,g,B,n,1,a),C=0)),D=r+352|0,C}function JA(A,I){var g,B=0,C=0,Q=0;if(D=g=D-32|0,!(!A|!n[A+28>>2]))for(n[g+16>>2]=I,B=1;;){if(E[g+24|0]=C,I=0,Q=0,B)for(;n[g+28>>2]=0,B=n[g+28>>2],n[g+8>>2]=n[g+24>>2],n[g+12>>2]=B,n[g+20>>2]=I,B=n[g+20>>2],n[g>>2]=n[g+16>>2],n[g+4>>2]=B,EA(A,g),(I=I+1|0)>>>0<(Q=n[A+28>>2])>>>0;);if(B=Q,4==(0|(C=C+1|0)))break}D=g+32|0}function xA(A,I,g,B,C,Q){var E,i;return D=E=D-32|0,i=a[0|C]|a[C+1|0]<<8|a[C+2|0]<<16|a[C+3|0]<<24,C=a[C+4|0]|a[C+5|0]<<8|a[C+6|0]<<16|a[C+7|0]<<24,n[E+24>>2]=0,n[E+28>>2]=0,n[E+16>>2]=i,n[E+20>>2]=C,LI(E,g,B),n[E+8>>2]=0,n[E+12>>2]=0,I+-16>>>0>=49?(n[8960]=28,A=-1):(g=E+16|0,A=I+-1>>>0>63?-1:function(A,I,g,B,C){var Q,E=0;if(Q=E=D,D=E=E-384&-64,!(!I|!A|(g+-1&255)>>>0>=64))return bA(E,g,I,B,C),rA(E,0,0,0),P(E,A,g),D=Q,0;Gg(),t()}(A,Q,255&I,E,g)),D=E+32|0,A}function LA(A,I,g,B,C,Q,E,i,a,r,o){var e;return D=e=D-336|0,IB(e+16|0,64,r,o),Og(e+80|0,e+16|0),KI(e+16|0,64),Lg(e+80|0,E,i,a),Lg(e+80|0,34688,0-i&15,0),uI(A,B,C,Q,r,1,o),Lg(e+80|0,A,C,Q),Lg(e+80|0,34688,0-C&15,0),LI(e+8|0,i,a),Lg(e+80|0,e+8|0,8,0),LI(e+8|0,C,Q),Lg(e+80|0,e+8|0,8,0),zg(e+80|0,I),KI(e+80|0,256),g&&(n[g>>2]=16,n[g+4>>2]=0),D=e+336|0,0}function KA(A,I,g,B,C,Q){var E=0;A:{I:{if(!(!C&B>>>0<64|C>>>0<0||(C=C+-1|0,(B=B+-64|0)>>>0<4294967232&&(C=C+1|0),!C&B>>>0>4294967231|C>>>0>0))){if(!Rg(g,E=g- -64|0,B,C,Q))break I;A&&eA(A,0,B)}if(g=-1,!I)break A;return n[I>>2]=0,n[I+4>>2]=0,-1}I&&(n[I>>2]=B,n[I+4>>2]=C),g=0,A&&aA(A,E,B)}return g}function qA(A,I,g,B,C,Q,E,i,n,a){var r;return D=r=D-352|0,Jg(r+32|0,n,a),Og(r+96|0,r+32|0),KI(r+32|0,64),Lg(r+96|0,Q,E,i),LI(r+24|0,E,i),Lg(r+96|0,r+24|0,8,0),Lg(r+96|0,I,g,B),LI(r+24|0,g,B),Lg(r+96|0,r+24|0,8,0),zg(r+96|0,r),KI(r+96|0,256),C=AB(r,C),KI(r,16),A&&(C?(eA(A,0,g),C=-1):(Bg(A,I,g,B,n,a),C=0)),D=r+352|0,C}function XA(A,I){var g,B=0,C=0,Q=0,E=0,i=0;A:if(!(((g=a[0|A])+-48&255)>>>0>9)){for(C=g,B=A;;){if(E=B,Q>>>0>429496729)break A;if((B=(255&C)-48|0)>>>0>(-1^(C=o(Q,10)))>>>0)break A;if(Q=B+C|0,!(((C=a[0|(B=E+1|0)])+-48&255)>>>0<10))break}(0|A)==(0|B)|(48==(0|g)?(0|A)!=(0|E):0)||(n[I>>2]=Q,i=B)}return i}function VA(A){var I=0,g=0,B=0;A:{I:if(3&(I=A)){if(!a[0|A])return 0;for(;;){if(!(3&(I=I+1|0)))break I;if(!a[0|I])break}break A}for(;g=I,I=I+4|0,!((-1^(B=n[g>>2]))&B+-16843009&-2139062144););if(!(255&B))return g-A|0;for(;B=a[g+1|0],g=I=g+1|0,B;);}return I-A|0}function TA(A,I){var g,B,C,Q,E,i,a,r,o;g=n[I+4>>2],B=n[I+8>>2],C=n[I+12>>2],Q=n[I+16>>2],E=n[I+20>>2],i=n[I+24>>2],a=n[I+28>>2],r=n[I+32>>2],o=n[I+36>>2],n[A>>2]=0-n[I>>2],n[A+36>>2]=0-o,n[A+32>>2]=0-r,n[A+28>>2]=0-a,n[A+24>>2]=0-i,n[A+20>>2]=0-E,n[A+16>>2]=0-Q,n[A+12>>2]=0-C,n[A+8>>2]=0-B,n[A+4>>2]=0-g}function WA(A,I,g){var B=0;B=I<<8&16711680|I<<24,B|=255&(g<<8|I>>>24)|65280&(g<<24|I>>>8),I=-16777216&((255&g)<<24|I>>>8)|16711680&((16777215&g)<<8|I>>>24)|g>>>8&65280|g>>>24|0,E[0|A]=I,E[A+1|0]=I>>>8,E[A+2|0]=I>>>16,E[A+3|0]=I>>>24,I=B,E[A+4|0]=I,E[A+5|0]=I>>>8,E[A+6|0]=I>>>16,E[A+7|0]=I>>>24}function jA(A,I,g){var B;B=A,g?(n[A+48>>2]=a[0|g]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24,g=a[g+4|0]|a[g+5|0]<<8|a[g+6|0]<<16|a[g+7|0]<<24):(n[A+48>>2]=0,g=0),n[B+52>>2]=g,n[A+56>>2]=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,n[A+60>>2]=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24}function ZA(A,I){var g,B,C,Q,E,i,a,r,o;g=n[I+8>>2],B=n[I+12>>2],C=n[I+16>>2],Q=n[I+20>>2],E=n[I+24>>2],i=n[I+28>>2],a=n[I>>2],r=n[I+4>>2],o=n[I+36>>2],n[A+32>>2]=n[I+32>>2],n[A+36>>2]=o,n[A+24>>2]=E,n[A+28>>2]=i,n[A+16>>2]=C,n[A+20>>2]=Q,n[A+8>>2]=g,n[A+12>>2]=B,n[A>>2]=a,n[A+4>>2]=r}function OA(A,I,g,B,C,Q,E,i,a,r,o){var e;return D=e=D-336|0,Jg(e+16|0,r,o),Og(e+80|0,e+16|0),KI(e+16|0,64),Lg(e+80|0,E,i,a),LI(e+8|0,i,a),Lg(e+80|0,e+8|0,8,0),Bg(A,B,C,Q,r,o),Lg(e+80|0,A,C,Q),LI(e+8|0,C,Q),Lg(e+80|0,e+8|0,8,0),zg(e+80|0,I),KI(e+80|0,256),g&&(n[g>>2]=16,n[g+4>>2]=0),D=e+336|0,0}function zA(A){var I;return I=a[0|A]|a[A+1|0]<<8|a[A+2|0]<<16|a[A+3|0]<<24,A=a[A+4|0]|a[A+5|0]<<8|a[A+6|0]<<16|a[A+7|0]<<24,l=65280&(A<<24|I>>>8)|255&(A<<8|I>>>24)|I<<8&16711680|I<<24,-16777216&((255&A)<<24|I>>>8)|16711680&((16777215&A)<<8|I>>>24)|A>>>8&65280|A>>>24|0}function $A(A,I,g,B,C,Q,E,i,r,o,e){var t;return D=t=D-48|0,n[t+4>>2]=0,K(t+16|0,o,e),e=a[o+16|0]|a[o+17|0]<<8|a[o+18|0]<<16|a[o+19|0]<<24,o=a[o+20|0]|a[o+21|0]<<8|a[o+22|0]<<16|a[o+23|0]<<24,n[t+8>>2]=e,n[t+12>>2]=o,function(A,I,g,B,C,Q,E,i,a,r,o){var e;D=e=D-336|0,Pg(e+16|0,64,r,o),Og(e+80|0,e+16|0),KI(e+16|0,64),Lg(e+80|0,E,i,a),Lg(e+80|0,34704,0-i&15,0),gg(A,B,C,Q,r,1,o),Lg(e+80|0,A,C,Q),Lg(e+80|0,34704,0-C&15,0),LI(e+8|0,i,a),Lg(e+80|0,e+8|0,8,0),LI(e+8|0,C,Q),Lg(e+80|0,e+8|0,8,0),zg(e+80|0,I),KI(e+80|0,256),g&&(n[g>>2]=16,n[g+4>>2]=0),D=e+336|0}(A,I,g,B,C,Q,E,i,r,t+4|0,t+16|0),KI(t+16|0,32),D=t+48|0,0}function AI(A,I,g,B,C,Q,E,i,r,o){var e;return D=e=D-48|0,n[e+4>>2]=0,K(e+16|0,r,o),o=a[r+16|0]|a[r+17|0]<<8|a[r+18|0]<<16|a[r+19|0]<<24,r=a[r+20|0]|a[r+21|0]<<8|a[r+22|0]<<16|a[r+23|0]<<24,n[e+8>>2]=o,n[e+12>>2]=r,A=function(A,I,g,B,C,Q,E,i,n,a){var r;return D=r=D-352|0,Pg(r+32|0,64,n,a),Og(r+96|0,r+32|0),KI(r+32|0,64),Lg(r+96|0,Q,E,i),Lg(r+96|0,34704,0-E&15,0),Lg(r+96|0,I,g,B),Lg(r+96|0,34704,0-g&15,0),LI(r+24|0,E,i),Lg(r+96|0,r+24|0,8,0),LI(r+24|0,g,B),Lg(r+96|0,r+24|0,8,0),zg(r+96|0,r),KI(r+96|0,256),C=AB(r,C),KI(r,16),A&&(C?(eA(A,0,g),C=-1):(gg(A,I,g,B,n,1,a),C=0)),D=r+352|0,C}(A,I,g,B,C,Q,E,i,e+4|0,e+16|0),KI(e+16|0,32),D=e+48|0,A}function II(A,I,g,B){var C;if(D=C=D-192|0,!(!g|(I+-1&255)>>>0>=64|(B+-1&255)>>>0>=64))return i[C+130>>1]=257,E[C+129|0]=B,E[C+128|0]=I,ug(C+128|4),LI(C+128|8,0,0),eA(C+144|0,0,48),vA(A,C+128|0),eA(B+C|0,0,128-B|0),rA(I=A,A=j(C,g,B),128,0),KI(A,128),D=A+192|0,0;Gg(),t()}function gI(A,I,g,B,C,Q,E,i,a,r){var o=0,e=0;return o=-1,!C&B>>>0>=16|C>>>0>0&&(e=A,A=C+-1|0,(o=B+-16|0)>>>0<4294967280&&(A=A+1|0),o=PA(e,g,o,A,(g+B|0)-16|0,Q,E,i,a,r)),I&&(A=C+-1|0,(g=B+-16|0)>>>0<4294967280&&(A=A+1|0),n[(Q=I)>>2]=o?0:g,n[I+4>>2]=o?0:A),o}function BI(A,I,g,B,C,Q,E,i,a,r){var o=0,e=0;return o=-1,!C&B>>>0>=16|C>>>0>0&&(e=A,A=C+-1|0,(o=B+-16|0)>>>0<4294967280&&(A=A+1|0),o=AI(e,g,o,A,(g+B|0)-16|0,Q,E,i,a,r)),I&&(A=C+-1|0,(g=B+-16|0)>>>0<4294967280&&(A=A+1|0),n[(Q=I)>>2]=o?0:g,n[I+4>>2]=o?0:A),o}function CI(A,I,g,B,C,Q,E,i,a,r){var o=0,e=0;return o=-1,!C&B>>>0>=16|C>>>0>0&&(e=A,A=C+-1|0,(o=B+-16|0)>>>0<4294967280&&(A=A+1|0),o=qA(e,g,o,A,(g+B|0)-16|0,Q,E,i,a,r)),I&&(A=C+-1|0,(g=B+-16|0)>>>0<4294967280&&(A=A+1|0),n[(Q=I)>>2]=o?0:g,n[I+4>>2]=o?0:A),o}function QI(A,I,g,B,C,Q){var E,i;return D=E=D-16|0,i=g,g=B,mg(A,E+8|0,aA(A- -64|0,i,B),B,C,Q),64!=n[E+8>>2]|n[E+12>>2]?(I&&(n[I>>2]=0,n[I+4>>2]=0),eA(A,0,g- -64|0),A=-1):(A=0,I&&(n[I>>2]=B- -64,n[I+4>>2]=C-((B>>>0<4294967232)+-1|0))),D=E+16|0,A}function EI(A,I,g,B,C,Q,E){var i;return D=i=D-16|0,A=eA(A,0,128),B|=Q,E>>>0<2147483649&&!B|B>>>0<0?E>>>0>8191&&!Q&C>>>0>=3|Q>>>0>0?(qI(i,16),A=NA(C,E>>>10|0,1,I,g,i,16,0,32,A,128,1)?-1:0):(n[8960]=28,A=-1):(n[8960]=22,A=-1),D=i+16|0,A}function iI(A,I,g){n[A+48>>2]=g?a[0|g]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24:0,n[A+52>>2]=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,n[A+56>>2]=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,n[A+60>>2]=a[I+8|0]|a[I+9|0]<<8|a[I+10|0]<<16|a[I+11|0]<<24}function nI(A,I,g,B,C,Q,E){var i;return D=i=D-16|0,A=eA(A,0,128),B|=Q,E>>>0<2147483649&&!B|B>>>0<0?E>>>0>8191&&C|Q?(qI(i,16),A=NA(C,E>>>10|0,1,I,g,i,16,0,32,A,128,2)?-1:0):(n[8960]=28,A=-1):(n[8960]=22,A=-1),D=i+16|0,A}function aI(A){var I=0;return(0-(I=A+4&(A+65488>>>8^-1)&(57-A>>>8^-1)&255|((I=A+-65|0)>>>8^-1)&I&(90-A>>>8^-1)&255|A+185&(A+65439>>>8^-1)&(122-A>>>8^-1)&255|63&(1+(16288^A)>>>8^-1)|62&(1+(16338^A)>>>8^-1))>>>8^-1)&1+(65470^A)>>>8&255|I}function rI(A){var I=0;return(0-(I=A+4&(A+65488>>>8^-1)&(57-A>>>8^-1)&255|((I=A+-65|0)>>>8^-1)&I&(90-A>>>8^-1)&255|A+185&(A+65439>>>8^-1)&(122-A>>>8^-1)&255|63&(1+(16336^A)>>>8^-1)|62&(1+(16340^A)>>>8^-1))>>>8^-1)&1+(65470^A)>>>8&255|I}function oI(A,I){var g,B,C=0,Q=0,i=0,n=0;for(D=g=D-16|0,C=10;n=C,i=(I>>>0)/10|0,E[0|(Q=(C=C+-1|0)+(g+6|0)|0)]=I-o(i,10)|48,!(I>>>0<10)&&(I=i,C););B=j(I=A,Q,A=11-n|0)+A|0,E[0|B]=0,D=g+16|0}function eI(A,I,g){var B=0,C=0,Q=0;if(!g)return 0;A:if(B=a[0|A]){for(;;){if((0|(C=a[0|I]))==(0|B)&&!(!(g=g+-1|0)|!C)){if(I=I+1|0,B=a[A+1|0],A=A+1|0,B)continue;break A}break}Q=B}return(255&Q)-a[0|I]|0}function tI(A,I,g){var B,C,Q,E=0;D=C=D-48|0,HA(A,E=I+40|0,I),_A(B=A+40|0,E,I),H(E=A+80|0,A,g),H(B,B,g+40|0),H(Q=A+120|0,g+120|0,I+120|0),H(A,I+80|0,g+80|0),HA(C,A,A),_A(A,E,B),HA(B,E,B),HA(E,C,Q),_A(Q,C,Q),D=C+48|0}function cI(A,I,g){var B,C,Q,E=0;D=C=D-48|0,HA(A,E=I+40|0,I),_A(B=A+40|0,E,I),H(E=A+80|0,A,g+40|0),H(B,B,g),H(Q=A+120|0,g+120|0,I+120|0),H(A,I+80|0,g+80|0),HA(C,A,A),_A(A,E,B),HA(B,E,B),_A(E,C,Q),HA(Q,C,Q),D=C+48|0}function fI(A,I){for(var g=0,B=0,C=0,Q=0;C=(g=B<<3)+A|0,Q=a[0|(g=I+g|0)]|a[g+1|0]<<8|a[g+2|0]<<16|a[g+3|0]<<24,g=a[g+4|0]|a[g+5|0]<<8|a[g+6|0]<<16|a[g+7|0]<<24,n[C>>2]=Q,n[C+4>>2]=g,128!=(0|(B=B+1|0)););}function yI(A,I,g){var B;if(n[12+(B=D-16|0)>>2]=A,n[B+8>>2]=I,I=0,n[B+4>>2]=0,(0|g)>=1)for(;n[B+4>>2]=n[B+4>>2]|a[n[B+8>>2]+I|0]^a[n[B+12>>2]+I|0],(0|g)!=(0|(I=I+1|0)););return(n[B+4>>2]+-1>>>8&1)-1|0}function sI(A,I,g){var B,C,Q,E=0;D=C=D-48|0,HA(A,E=I+40|0,I),_A(B=A+40|0,E,I),H(E=A+80|0,A,g+40|0),H(B,B,g),H(Q=A+120|0,g+80|0,I+120|0),HA(C,I=I+80|0,I),_A(A,E,B),HA(B,E,B),_A(E,C,Q),HA(Q,C,Q),D=C+48|0}function wI(A,I,g){var B,C,Q,E=0;D=C=D-48|0,HA(A,E=I+40|0,I),_A(B=A+40|0,E,I),H(E=A+80|0,A,g),H(B,B,g+40|0),H(Q=A+120|0,g+80|0,I+120|0),HA(C,I=I+80|0,I),_A(A,E,B),HA(B,E,B),HA(E,C,Q),_A(Q,C,Q),D=C+48|0}function hI(A,I,g){var B;if(n[12+(B=D-16|0)>>2]=A,n[B+8>>2]=I,I=0,E[B+7|0]=0,g)for(;E[B+7|0]=a[B+7|0]|a[n[B+8>>2]+I|0]^a[n[B+12>>2]+I|0],(0|g)!=(0|(I=I+1|0)););return(a[B+7|0]+-1>>>8&1)-1|0}function DI(A,I,g){var B,C=0,i=0;if(D=B=D-16|0,E[B+15|0]=0,i=-1,!(0|Q[n[8949]](A,I,g))){for(;E[B+15|0]=a[A+C|0]|a[B+15|0],32!=(0|(C=C+1|0)););i=0-(a[B+15|0]+-1>>>8&1)|0}return D=B+16|0,i}function uI(A,I,g,B,C,Q,E){var i,n=0,a=0;n=B,(a=g+63|0)>>>0<63&&(n=n+1|0),i=n>>>6|0,a=0-(n=(63&n)<<26|a>>>6)|0,!(n=1-(i+(0>>0)|0)|0)&a>>>0>>0|n>>>0<0&&(Gg(),t()),gg(A,I,g,B,C,Q,E)}function pI(A,I){var g,B,C,Q,E;D=B=D-48|0,U(A,I),U(g=A+80|0,E=I+40|0),Y(Q=A+120|0,I+80|0),HA(C=A+40|0,I,E),U(B,C),HA(C,g,A),_A(g,g,A),_A(A,B,C),_A(Q,Q,g),D=B+48|0}function lI(A,I){var g;return D=g=D+-64|0,(I+-1&255)>>>0>=64&&(Gg(),t()),E[g+3|0]=1,E[g+1|0]=256,E[g+2|0]=1,E[0|g]=I,ug(4|g),LI(8|g,0,0),eA(g+16|0,0,48),vA(A,g),D=g- -64|0,0}function FI(A){var I,g;return(A=(I=n[9108])+(g=A+3&-4)|0)>>>0<=I>>>0&&(0|g)>=1||A>>>0>hB()<<16>>>0&&!(0|h(0|A))?(n[8960]=48,-1):(n[9108]=A,I)}function GI(A,I,g,B,C,Q,E){var i=0,n=0,a=0;return!B&g>>>0>=16|B>>>0>0?(i=A,n=I+16|0,a=I,A=B+-1|0,(I=g+-16|0)>>>0<4294967280&&(A=A+1|0),A=WI(i,n,a,I,A,C,Q,E)):A=-1,A}function kI(A,I,g,B,C,Q,E,i,a,r){if(!C&B>>>0<4294967280|C>>>0<0)return OA(A,A+B|0,0,g,B,C,Q,E,i,a,r),I&&((A=B+16|0)>>>0<16&&(C=C+1|0),n[I>>2]=A,n[I+4>>2]=C),0;Gg(),t()}function _I(A,I,g,B,C,Q,E,i,a,r){if(!C&B>>>0<4294967280|C>>>0<0)return LA(A,A+B|0,0,g,B,C,Q,E,i,a,r),I&&((A=B+16|0)>>>0<16&&(C=C+1|0),n[I>>2]=A,n[I+4>>2]=C),0;Gg(),t()}function HI(A,I,g,B,C,Q,E,i,a,r){if(!C&B>>>0<4294967280|C>>>0<0)return $A(A,A+B|0,0,g,B,C,Q,E,i,a,r),I&&((A=B+16|0)>>>0<16&&(C=C+1|0),n[I>>2]=A,n[I+4>>2]=C),0;Gg(),t()}function YI(A,I){for(var g=0,B=0,C=0,Q=0;B=(g=C<<3)+A|0,Q=n[(g=I+g|0)>>2],g=n[B+4>>2]^n[g+4>>2],n[B>>2]=n[B>>2]^Q,n[B+4>>2]=g,128!=(0|(C=C+1|0)););}function bI(A){var I,g;return 95&(1+(32704^A)>>>8^-1)|45&(1+(16321^A)>>>8^-1)|(I=A+65510>>>8&255)&A+65|(g=A+65484>>>8|0)&A+71&(255^I)|A+252&A+65474>>>8&(-1^g)&255}function mI(A){var I,g;return 47&(1+(16320^A)>>>8^-1)|43&(1+(16321^A)>>>8^-1)|(I=A+65510>>>8&255)&A+65|(g=A+65484>>>8|0)&A+71&(255^I)|A+252&A+65474>>>8&(-1^g)&255}function UI(A,I,g,B,C,Q,E,i,a,r,o){switch(o+-1|0){case 0:return function(A,I,g,B,C,Q,E,i,a,r){var o,e;o=I,e=eA(A,0,I),A=22;A:if(!(g>>>0>0)){if(!(!g&I>>>0<16|g>>>0<0)){if(r>>>0>2147483648|(Q|a)>>>0>0)break A;if(!(!a&i>>>0<3|a>>>0<0|r>>>0<8192))return NA(i,r>>>10|0,1,B,C,E,16,e,o,0,0,1)?-1:0}A=28}return n[8960]=A,-1}(A,I,g,B,C,Q,E,i,a,r);case 1:return function(A,I,g,B,C,Q,E,i,a,r){var o,e;o=I,e=eA(A,0,I),A=22;A:if(!(g>>>0>0)){if(!(!g&I>>>0<16|g>>>0<0)){if(r>>>0>2147483648|(Q|a)>>>0>0)break A;if(!(!(i|a)|r>>>0<8192))return NA(i,r>>>10|0,1,B,C,E,16,e,o,0,0,2)?-1:0}A=28}return n[8960]=A,-1}(A,I,g,B,C,Q,E,i,a,r)}return n[8960]=28,-1}function vI(A,I,g,B){var C=0;C=-1;A:if(!(g>>>0>64|B+-1>>>0>63)){I:{if(!g||!I){if(!lI(A,255&B))break I;break A}if(II(A,255&B,I,255&g))break A}C=0}return C}function SI(A){var I=0,g=0,B=0,C=0,Q=0;for(I=32,g=1;Q=(B=a[(I=I+-1|0)+A|0])-(C=a[I+3456|0])>>8&g|255&Q,g&=65535+(B^C)>>>8,I;);return 0!=(0|Q)}function NI(A,I){var g,B,C;D=g=D-144|0,O(g+96|0,I+80|0),H(g+48|0,I,g+96|0),H(g,I+40|0,g+96|0),oA(A,g),B=A,C=yg(g+48|0)<<7^a[A+31|0],E[B+31|0]=C,D=g+144|0}function RI(A,I){var g,B=0;if(E[15+(g=D-16|0)|0]=0,I)for(;E[g+15|0]=a[A+B|0]|a[g+15|0],(0|(B=B+1|0))!=(0|I););return a[g+15|0]+-1>>>8&1}function MI(A,I,g,B){var C;return B=I+B|0,(C=A+g|0)>>>0>>0&&(B=B+1|0),g=xg(A<<1&-2,1&(I=I<<1|A>>>31),g,0),A=l+B|0,l=A=(I=g+C|0)>>>0>>0?A+1|0:A,I}function dI(A,I,g){var B,C=0;if(B=g>>>3|0)for(g=0;WA((C=g<<3)+A|0,n[(C=I+C|0)>>2],n[C+4>>2]),(0|B)!=(0|(g=g+1|0)););}function PI(A){var I=0,g=0;for(g=127&(-1^a[A+31|0]),I=30;g=-1^a[A+I|0]|g,I=I+-1|0;);return 1&(((255&g)-1&236-a[0|A])>>>8^-1)}function JI(A){var I=0,g=0;return I=0,A&&(g=A,I=A,(1|A)>>>0<65536||(I=g)),g=I,!(A=_(I))|!(3&a[A+-4|0])||eA(A,0,g),A}function xI(A,I){var g=0;!function(A,I){I&&((I=n[A>>2])&&KI(n[I+4>>2],n[A+16>>2]<<10),(I=n[A+4>>2])&&KI(I,n[A+20>>2]<<3))}(A,4&I),v(n[A+4>>2]),n[A+4>>2]=0,(I=n[A>>2])&&(g=n[I>>2])&&v(g),v(I),n[A>>2]=0}function LI(A,I,g){E[0|A]=I,E[A+1|0]=I>>>8,E[A+2|0]=I>>>16,E[A+3|0]=I>>>24,E[A+4|0]=g,E[A+5|0]=g>>>8,E[A+6|0]=g>>>16,E[A+7|0]=g>>>24}function KI(A,I){var g;if(n[12+(g=D-16|0)>>2]=A,I)for(A=0;E[n[g+12>>2]+A|0]=0,(0|I)!=(0|(A=A+1|0)););}function qI(A,I){A|=0;var g=0,B=0,C=0;if(I|=0)for(;B=A+g|0,C=Qg(),E[0|B]=C,(0|(g=g+1|0))!=(0|I););}function XI(A,I,g,B,C){var Q,E;return A|=0,I|=0,g|=0,B|=0,D=Q=(E=D)-128&-64,nA(Q,C|=0),IA(Q,I,g,B),$(Q,A),D=E,0}function VI(A){var I=0,g=0,B=0;for(I=1;I=a[0|(B=A+g|0)]+I|0,E[0|B]=I,I=I>>>8|0,4!=(0|(g=g+1|0)););}function TI(A,I,g,B,C,Q,E,i){var n,a=0;return D=n=D-32|0,a=-1,lg(n,E,i)||(a=Ug(A,I,g,B,C,Q,n),KI(n,32)),D=n+32|0,a}function WI(A,I,g,B,C,Q,E,i){var n,a=0;return D=n=D-32|0,a=-1,lg(n,E,i)||(a=vg(A,I,g,B,C,Q,n),KI(n,32)),D=n+32|0,a}function jI(A,I){var g,B,C;H(A,I,g=I+120|0),H(A+40|0,B=I+40|0,C=I+80|0),H(A+80|0,C,g),H(A+120|0,I,B)}function ZI(A,I){for(var g=0,B=0;E[0|(B=A+g|0)]=a[0|B]^a[I+g|0],8!=(0|(g=g+1|0)););}function OI(A,I,g){var B,C;D=B=(C=D)-384&-64,wg(B,0,0,24),Xg(B,I,32,0),Xg(B,g,32,0),pg(B,A,24),D=C}function zI(A,I){var g;HA(A,g=I+40|0,I),_A(A+40|0,g,I),ZA(A+80|0,I+80|0),H(A+120|0,I+120|0,2224)}function $I(A,I,g,B,C,Q,E){return!B&g>>>0>=4294967280|B>>>0>0&&(Gg(),t()),TI(A+16|0,A,I,g,B,C,Q,E)}function Ag(A,I,g,B,C,Q,E){return I+-1>>>0>63|E>>>0>64?-1:function(A,I,g,B,C,Q,E){var i,n=0;if(i=n=D,D=n=n-384&-64,!(!A|(B+-1&255)>>>0>=64|(C|Q?!I:0)|E>>>0>=65|(E?!g:0)))return E?II(n,B,g,E):lI(n,B),rA(n,I,C,Q),P(n,A,B),D=i,0;Gg(),t()}(A,g,Q,255&I,B,C,255&E)}function Ig(A,I){var g;H(A,I,g=I+120|0),H(A+40|0,I+40|0,I=I+80|0),H(A+80|0,I,g)}function gg(A,I,g,B,C,E,i){1==(0|B)&g>>>0>=0|B>>>0>1&&(Gg(),t()),Q[n[8956]](A,I,g,B,C,E,i)}function Bg(A,I,g,B,C,E){1==(0|B)&g>>>0>=0|B>>>0>1&&(Gg(),t()),Q[n[8955]](A,I,g,B,C,1,0,E)}function Cg(A){var I;return I=a[0|A]|a[A+1|0]<<8,A=a[A+2|0],l=A>>>16|0,I|A<<16}function Qg(){var A,I;return D=A=D-16|0,E[A+15|0]=0,I=0|f(1024,A+15|0,0),D=A+16|0,0|I}function Eg(A,I,g,B,C){var Q;return D=Q=D-416|0,dA(Q,C),W(Q,I,g,B),sA(Q,A),D=Q+416|0,0}function ig(A,I,g,B){var C;return D=C=D-208|0,rg(C),W(C,I,g,B),ag(C,A),D=C+208|0,0}function ng(A,I){var g=0;return(-1>>>(g=31&I)&A)<>>A}function ag(A,I){var g;D=g=D-704|0,function(A,I){var g,B=0;A:if((g=n[A+72>>2]>>>3&127)>>>0<=111){if(!(B=112-g|0))break A;j(80+(A+g|0)|0,35424,B)}else j((B=A+80|0)+g|0,35424,128-g|0),G(A,B,I,I+640|0),eA(B,0,112);dI(A+192|0,A- -64|0,16),G(A,A+80|0,I,I+640|0)}(A,g),dI(I,A,64),KI(g,704),KI(A,208),D=g+704|0}function rg(A){n[A+64>>2]=0,n[A+68>>2]=0,n[A+72>>2]=0,n[A+76>>2]=0,j(A,34720,64)}function og(A,I,g){return g>>>0>=256&&(c(2016,2036,107,2089),t()),P(A,I,255&g)}function eg(){var A;D=A=D-16|0,E[A+15|0]=0,f(1062,A+15|0,0),D=A+16|0}function tg(A){var I;return D=I=D-32|0,oA(I,A),A=RI(I,32),D=I+32|0,A}function cg(A,I){var g;D=g=D-128|0,function(A,I){ZA(A,I),ZA(A+40|0,I+40|0),ZA(A+80|0,I+80|0)}(g+8|0,I),pI(A,g+8|0),D=g+128|0}function fg(A,I){E[0|A]=I,E[A+1|0]=I>>>8,E[A+2|0]=I>>>16,E[A+3|0]=I>>>24}function yg(A){var I;return D=I=D-32|0,oA(I,A),D=I+32|0,1&E[0|I]}function sg(A,I,g){pA(A,I,g),pA(A+40|0,I+40|0,g),pA(A+80|0,I+80|0,g)}function wg(A,I,g,B){return 0|vI(A|=0,I|=0,g|=0,B|=0)}function hg(A){E[A+32|0]=1,E[A+33|0]=0,E[A+34|0]=0,E[A+35|0]=0}function Dg(A){n[A>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,n[A+12>>2]=0}function ug(A){E[0|A]=0,E[A+1|0]=0,E[A+2|0]=0,E[A+3|0]=0}function pg(A,I,g){return 0|og(A|=0,I|=0,g|=0)}function lg(A,I,g){return 0|function(A,I,g){var B,C=0;return D=B=D-32|0,C=-1,DI(B,g,I)||(C=X(A,35552,B)),D=B+32|0,C}(A|=0,I|=0,g|=0)}function Fg(A,I,g){return 0|DI(A|=0,I|=0,g|=0)}function Gg(){var A;(A=n[9105])&&Q[0|A](),y(),t()}function kg(A){iB(A),Vg(A+40|0),Vg(A+80|0),iB(A+120|0)}function _g(A,I,g,B,C,E){Q[n[8952]](A,I,g,B,C,0,0,E)}function Hg(A,I,g,B,C,E){Q[n[8952]](A,I,g,B,C,1,0,E)}function Yg(A,I){return A|=0,qI(I|=0,32),0|qg(A,I)}function bg(A,I){return A=function(A,I){var g=0,B=0;A:{if(B=255&I){if(3&A)for(;;){if(!(g=a[0|A])|(0|g)==(255&I))break A;if(!(3&(A=A+1|0)))break}I:if(!((-1^(g=n[A>>2]))&g+-16843009&-2139062144))for(B=o(B,16843009);;){if((-1^(g^=B))&g+-16843009&-2139062144)break I;if(g=n[A+4>>2],A=A+4|0,g+-16843009&(-1^g)&-2139062144)break}for(;(B=a[0|(g=A)])&&(A=g+1|0,(0|B)!=(255&I)););return g}return VA(A)+A|0}return A}(A,I),a[0|A]==(255&I)?A:0}function mg(A,I,g,B,C,Q){return V(A,I,g,B,C,Q,0),0}function Ug(A,I,g,B,C,Q,E){return fA(A,I,g,B,C,Q,E)}function vg(A,I,g,B,C,Q,E){return yA(A,I,g,B,C,Q,E)}function Sg(A,I,g,B,C,Q,E){return Ag(A,I,g,B,C,Q,E)}function Ng(A,I){rg(A),I&&W(A,35728,34,0)}function Rg(A,I,g,B,C){return MA(A,I,g,B,C,0)}function Mg(A,I){return 0|qg(A|=0,I|=0)}function dg(A,I){return(255&(A^I))-1>>>31|0}function Pg(A,I,g,B){Q[n[8954]](A,I,0,g,B)}function Jg(A,I,g){Q[n[8953]](A,64,0,I,g)}function xg(A,I,g,B){return function(A,I,g,B){var C,Q,E,i,n=0,a=0;return i=o(n=g>>>16|0,a=A>>>16|0),n=(65535&(a=((E=o(C=65535&g,Q=65535&A))>>>16|0)+o(a,C)|0))+o(n,Q)|0,A=(o(I,g)+i|0)+o(A,B)+(a>>>16)+(n>>>16)|0,l=A,65535&E|n<<16}(A,I,g,B)}function Lg(A,I,g,B){Q[n[8947]](A,I,g,B)}function Kg(A,I,g){!function(A,I,g){var B,C;D=B=D-128|0,Vg(A),Vg(A+40|0),iB(A+80|0),sg(A,I,dg(g=g-((0-(C=(128&g)>>>7|0)&g)<<1)<<24>>24,1)),sg(A,I+120|0,dg(g,2)),sg(A,I+240|0,dg(g,3)),sg(A,I+360|0,dg(g,4)),sg(A,I+480|0,dg(g,5)),sg(A,I+600|0,dg(g,6)),sg(A,I+720|0,dg(g,7)),sg(A,I+840|0,dg(g,8)),ZA(B+8|0,A+40|0),ZA(B+48|0,A),TA(B+88|0,A+80|0),sg(A,B+8|0,C),D=B+128|0}(A,o(I,960)+3488|0,g)}function qg(A,I){return 0|Q[n[8950]](A,I)}function Xg(A,I,g,B){return Tg(A,I,g,B)}function Vg(A){n[A>>2]=1,eA(A+4|0,0,36)}function Tg(A,I,g,B){return rA(A,I,g,B)}function Wg(A,I,g){return function(A,I,g){var B=0,C=0,Q=0,E=0;return B=31&(Q=E=63&g),32<=Q>>>0?B=-1>>>B|0:(C=-1>>>B|0,B=(1<>>B),Q=B&A,B=I&C,C=31&E,32<=E>>>0?(B=Q<>>32-C|B<>>0?(B=-1<>>32-g|-1<>>0?(g=0,A=B>>>I|0):(g=B>>>I|0,A=((1<>>I),l=g|Q,A|E}(A,I,g)}function jg(A,I,g){return function(A,I,g){var B=0,C=0,Q=0,E=0,i=0;return B=31&(E=63&g),32<=E>>>0?(C=-1<>>32-B|-1<>>0?(C=0,E=B>>>Q|0):(C=B>>>Q|0,E=((1<>>Q),i=C,Q=31&(B=0-g&63),32<=B>>>0?(C=0,g=-1>>>Q|0):(C=-1>>>Q|0,g=(1<>>Q),A&=g,I&=C,C=31&B,32<=B>>>0?(g=A<>>32-C|I<>>0<18,v=v+2|0,Y;);fg(A,g+1634760805|0),fg(A+4|0,h+B|0),fg(A+8|0,D+C|0),fg(A+12|0,b+Q|0),fg(A+16|0,u+E|0),fg(A+20|0,H+857760878|0),fg(A+24|0,p+e|0),fg(A+28|0,l+t|0),fg(A+32|0,F+c|0),fg(A+36|0,_+f|0),fg(A+40|0,I+2036477234|0),fg(A+44|0,s+i|0),fg(A+48|0,y+n|0),fg(A+52|0,w+r|0),fg(A+56|0,k+o|0),fg(A+60|0,G+1797285236|0)}(A,I,g)}function EB(A){eA(A,0,1024)}function iB(A){eA(A,0,40)}function nB(){return 16}function aB(){return 32}function rB(){return 24}function oB(){return-17}function eB(){return 64}function tB(){return 1}function cB(){return 2}function fB(){return 8}function yB(){return 0}function sB(){return-1}function wB(){return 3}function hB(){return B.byteLength/65536|0}return Q[1]=XI,Q[2]=function(A,I,g,B,C){var Q;return A|=0,D=Q=D-16|0,XI(Q,I|=0,g|=0,B|=0,C|=0),A=AB(A,Q),D=Q+16|0,0|A},Q[3]=function(A,I){return nA(A|=0,I|=0),0},Q[4]=function(A,I,g,B){return IA(A|=0,I|=0,g|=0,B|=0),0},Q[5]=function(A,I){return $(A|=0,I|=0),0},Q[6]=function(A,I,g){A|=0,I|=0;var B,C=0,Q=0;if(D=B=D-336|0,C=-1,!mA(g|=0)){for(C=0;E[A+C|0]=a[I+C|0],32!=(0|(C=C+1|0)););for(E[0|A]=248&a[0|A],E[A+31|0]=63&a[A+31|0]|64,J(B+288|0,g),Vg(B+240|0),iB(B+192|0),ZA(B+144|0,B+288|0),Vg(B+96|0),g=254,I=0;C=I,Q=g,QA(B+240|0,B+144|0,C^=I=a[(g>>>3|0)+A|0]>>>(7&g)&1),QA(B+192|0,B+96|0,C),g=g+-1|0,_A(B+48|0,B+144|0,B+96|0),_A(B,B+240|0,B+192|0),HA(B+240|0,B+240|0,B+192|0),HA(B+192|0,B+144|0,B+96|0),H(B+96|0,B+48|0,B+240|0),H(B+192|0,B+192|0,B),U(B+48|0,B),U(B,B+240|0),HA(B+144|0,B+96|0,B+192|0),_A(B+192|0,B+96|0,B+192|0),H(B+240|0,B,B+48|0),_A(B,B,B+48|0),U(B+192|0,B+192|0),d(B+96|0,B),U(B+144|0,B+144|0),HA(B+48|0,B+48|0,B+96|0),H(B+96|0,B+288|0,B+192|0),H(B+192|0,B,B+48|0),Q;);QA(B+240|0,B+144|0,I),QA(B+192|0,B+96|0,I),O(B+192|0,B+192|0),H(B+240|0,B+240|0,B+192|0),oA(A,B+240|0),C=0}return D=B+336|0,0|C},Q[7]=function(A,I){A|=0,I|=0;var g,B=0;for(D=g=D-208|0;E[A+B|0]=a[I+B|0],32!=(0|(B=B+1|0)););return E[0|A]=248&a[0|A],E[A+31|0]=63&a[A+31|0]|64,tA(g+48|0,A),function(A,I,g){var B;D=B=D-96|0,HA(B+48|0,g,I),_A(B,g,I),O(B,B),H(A,B+48|0,B),D=B+96|0}(g,g+88|0,g+128|0),oA(A,g),D=g+208|0,0},Q[8]=function(A,I,g,B,C){A|=0,B|=0,C|=0;var Q,i=0;if(D=Q=D-112|0,(I|=0)|(g|=0)){i=a[C+28|0]|a[C+29|0]<<8|a[C+30|0]<<16|a[C+31|0]<<24,n[Q+24>>2]=a[C+24|0]|a[C+25|0]<<8|a[C+26|0]<<16|a[C+27|0]<<24,n[Q+28>>2]=i,i=a[C+20|0]|a[C+21|0]<<8|a[C+22|0]<<16|a[C+23|0]<<24,n[Q+16>>2]=a[C+16|0]|a[C+17|0]<<8|a[C+18|0]<<16|a[C+19|0]<<24,n[Q+20>>2]=i,i=a[C+4|0]|a[C+5|0]<<8|a[C+6|0]<<16|a[C+7|0]<<24,n[Q>>2]=a[0|C]|a[C+1|0]<<8|a[C+2|0]<<16|a[C+3|0]<<24,n[Q+4>>2]=i,i=a[C+12|0]|a[C+13|0]<<8|a[C+14|0]<<16|a[C+15|0]<<24,n[Q+8>>2]=a[C+8|0]|a[C+9|0]<<8|a[C+10|0]<<16|a[C+11|0]<<24,n[Q+12>>2]=i,C=a[0|B]|a[B+1|0]<<8|a[B+2|0]<<16|a[B+3|0]<<24,B=a[B+4|0]|a[B+5|0]<<8|a[B+6|0]<<16|a[B+7|0]<<24,n[Q+104>>2]=0,n[Q+108>>2]=0,n[Q+96>>2]=C,n[Q+100>>2]=B;A:{if(!g&I>>>0>=64|g>>>0>0){for(;;){for(QB(A,Q+96|0,Q),C=8,B=1;B=a[0|(i=(Q+96|0)+C|0)]+B|0,E[0|i]=B,B=B>>>8|0,16!=(0|(C=C+1|0)););if(A=A- -64|0,g=g+-1|0,(I=I+-64|0)>>>0<4294967232&&(g=g+1|0),!(!g&I>>>0>63|g>>>0>0))break}if(!(I|g))break A}if(C=0,QB(Q+32|0,Q+96|0,Q),I)for(;E[A+C|0]=a[(Q+32|0)+C|0],(0|I)!=(0|(C=C+1|0)););}KI(Q+32|0,64),KI(Q,32)}return D=Q+112|0,0},Q[9]=function(A,I,g,B,C,Q,i,r){A|=0,I|=0,C|=0,Q|=0,i|=0,r|=0;var o,e=0,t=0;if(D=o=D-112|0,(g|=0)|(B|=0)){for(e=a[r+28|0]|a[r+29|0]<<8|a[r+30|0]<<16|a[r+31|0]<<24,n[o+24>>2]=a[r+24|0]|a[r+25|0]<<8|a[r+26|0]<<16|a[r+27|0]<<24,n[o+28>>2]=e,e=a[r+20|0]|a[r+21|0]<<8|a[r+22|0]<<16|a[r+23|0]<<24,n[o+16>>2]=a[r+16|0]|a[r+17|0]<<8|a[r+18|0]<<16|a[r+19|0]<<24,n[o+20>>2]=e,e=a[r+4|0]|a[r+5|0]<<8|a[r+6|0]<<16|a[r+7|0]<<24,n[o>>2]=a[0|r]|a[r+1|0]<<8|a[r+2|0]<<16|a[r+3|0]<<24,n[o+4>>2]=e,e=8,t=a[r+12|0]|a[r+13|0]<<8|a[r+14|0]<<16|a[r+15|0]<<24,n[o+8>>2]=a[r+8|0]|a[r+9|0]<<8|a[r+10|0]<<16|a[r+11|0]<<24,n[o+12>>2]=t,r=a[C+4|0]|a[C+5|0]<<8|a[C+6|0]<<16|a[C+7|0]<<24,n[o+96>>2]=a[0|C]|a[C+1|0]<<8|a[C+2|0]<<16|a[C+3|0]<<24,n[o+100>>2]=r;E[(o+96|0)+e|0]=Q,Q=(255&i)<<24|Q>>>8,i=i>>>8|0,16!=(0|(e=e+1|0)););if(!B&g>>>0>63|B>>>0>0)for(;;){for(e=0,QB(o+32|0,o+96|0,o);E[A+e|0]=a[(o+32|0)+e|0]^a[I+e|0],r=1,64!=(0|(e=e+1|0)););for(e=8;C=a[0|(Q=(o+96|0)+e|0)]+r|0,E[0|Q]=C,r=C>>>8|0,16!=(0|(e=e+1|0)););if(I=I- -64|0,A=A- -64|0,B=B+-1|0,(g=g+-64|0)>>>0<4294967232&&(B=B+1|0),!(!B&g>>>0>63|B>>>0>0))break}if(g|B&&(e=0,QB(o+32|0,o+96|0,o),g))for(;E[A+e|0]=a[(o+32|0)+e|0]^a[I+e|0],(0|g)!=(0|(e=e+1|0)););KI(o+32|0,64),KI(o,32)}return D=o+112|0,0},Q[10]=function(A,I,g,B,C){var Q;return A|=0,B|=0,D=Q=D+-64|0,(I|=0)|(g|=0)&&(hA(Q,C|=0),jA(Q,B,0),N(Q,A=eA(A,0,I),A,I,g),KI(Q,64)),D=Q- -64|0,0},Q[11]=function(A,I,g,B,C){var Q;return A|=0,B|=0,D=Q=D+-64|0,(I|=0)|(g|=0)&&(hA(Q,C|=0),iI(Q,B,0),N(Q,A=eA(A,0,I),A,I,g),KI(Q,64)),D=Q- -64|0,0},Q[12]=function(A,I,g,B,C,Q,E,i){var n;return A|=0,I|=0,C|=0,E|=0,i|=0,D=n=D-80|0,(g|=0)|(B|=0)&&(fg(n+8|0,Q|=0),fg(n+12|0,E),hA(n+16|0,i),jA(n+16|0,C,n+8|0),N(n+16|0,I,A,g,B),KI(n+16|0,64)),D=n+80|0,0},Q[13]=function(A,I,g,B,C,Q,E){var i;return A|=0,I|=0,C|=0,E|=0,D=i=D-80|0,(g|=0)|(B|=0)&&(fg(i+12|0,Q|=0),hA(i+16|0,E),iI(i+16|0,C,i+12|0),N(i+16|0,I,A,g,B),KI(i+16|0,64)),D=i+80|0,0},{g:function(){},h:function(A,I,g,B,C,Q,E,i,n,a,r,o){return 0|OA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,r|=0,o|=0)},i:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|kI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,a|=0,r|=0)},j:function(A,I,g,B,C,Q,E,i,n,a,r,o){return 0|LA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,r|=0,o|=0)},k:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|_I(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,a|=0,r|=0)},l:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|qA(A|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},m:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|CI(A|=0,I|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},n:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|PA(A|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},o:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|gI(A|=0,I|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},p:aB,q:function(){return 12},r:yB,s:nB,t:oB,u:CB,v:aB,w:fB,x:yB,y:nB,z:oB,A:CB,B:function(A,I,g,B,C,Q,E,i,n,a,r,o){return 0|$A(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,r|=0,o|=0)},C:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|HI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,a|=0,r|=0)},D:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|AI(A|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},E:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|BI(A|=0,I|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},F:aB,G:rB,H:yB,I:nB,J:oB,K:CB,L:aB,M:aB,N:function(A,I,g,B,C){return 0|Eg(A|=0,I|=0,g|=0,B|=0,C|=0)},O:function(A,I,g,B,C){return 0|function(A,I,g,B,C){var Q;return D=Q=D-32|0,Eg(Q,I,g,B,C),I=$g(A,Q),g=hI(Q,A,32),D=Q+32|0,g|((0|A)==(0|Q)?-1:I)}(A|=0,I|=0,g|=0,B|=0,C|=0)},P:CB,Q:aB,R:aB,S:aB,T:aB,U:rB,V:nB,W:oB,X:function(A,I,g){return 0|function(A,I,g){var B,C=0;return D=B=D+-64|0,ig(B,g,32,0),g=n[B+28>>2],C=n[B+24>>2],E[I+24|0]=C,E[I+25|0]=C>>>8,E[I+26|0]=C>>>16,E[I+27|0]=C>>>24,E[I+28|0]=g,E[I+29|0]=g>>>8,E[I+30|0]=g>>>16,E[I+31|0]=g>>>24,g=n[B+20>>2],C=n[B+16>>2],E[I+16|0]=C,E[I+17|0]=C>>>8,E[I+18|0]=C>>>16,E[I+19|0]=C>>>24,E[I+20|0]=g,E[I+21|0]=g>>>8,E[I+22|0]=g>>>16,E[I+23|0]=g>>>24,g=n[B+12>>2],C=n[B+8>>2],E[I+8|0]=C,E[I+9|0]=C>>>8,E[I+10|0]=C>>>16,E[I+11|0]=C>>>24,E[I+12|0]=g,E[I+13|0]=g>>>8,E[I+14|0]=g>>>16,E[I+15|0]=g>>>24,g=n[B+4>>2],C=n[B>>2],E[0|I]=C,E[I+1|0]=C>>>8,E[I+2|0]=C>>>16,E[I+3|0]=C>>>24,E[I+4|0]=g,E[I+5|0]=g>>>8,E[I+6|0]=g>>>16,E[I+7|0]=g>>>24,KI(B,64),A=qg(A,I),D=B- -64|0,A}(A|=0,I|=0,g|=0)},Y:Yg,Z:lg,_:function(A,I,g,B,C,Q,E){return 0|Ug(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},$:function(A,I,g,B,C,Q,E,i){return 0|TI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0)},aa:function(A,I,g,B,C,Q){return 0|function(A,I,g,B,C,Q){return!B&g>>>0>=4294967280|B>>>0>0&&(Gg(),t()),Ug(A+16|0,A,I,g,B,C,Q)}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},ba:function(A,I,g,B,C,Q,E){return 0|$I(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},ca:function(A,I,g,B,C,Q,E){return 0|vg(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},da:function(A,I,g,B,C,Q,E,i){return 0|WI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0)},ea:function(A,I,g,B,C,Q){return 0|function(A,I,g,B,C,Q){var E=0,i=0,n=0;return!B&g>>>0>=16|B>>>0>0?(E=A,i=I+16|0,n=I,A=B+-1|0,(I=g+-16|0)>>>0<4294967280&&(A=A+1|0),A=vg(E,i,n,I,A,C,Q)):A=-1,A}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},fa:function(A,I,g,B,C,Q,E){return 0|GI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},ga:function(A,I,g,B,C){return 0|iA(A|=0,I|=0,g|=0,B|=0,C|=0)},ha:function(A,I,g,B,C,Q){return 0|function(A,I,g,B,C,Q){var E,i=0;return D=E=D-32|0,i=-1,!B&g>>>0>=48|B>>>0>0&&(OI(E,I,C),C=A,A=B+-1|0,(g=g+-32|0)>>>0<4294967264&&(A=A+1|0),i=GI(C,i=I+32|0,g,A,E,I,Q)),D=E+32|0,i}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},ia:function(){return 48},ja:nB,ka:eB,la:aB,ma:nB,na:eB,oa:aB,pa:function(){return 384},qa:function(A,I,g,B,C,Q,E){return 0|Sg(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},ra:wg,sa:function(A,I,g,B){return 0|Xg(A|=0,I|=0,g|=0,B|=0)},ta:pg,ua:CB,va:eB,wa:function(A,I,g,B){return 0|ig(A|=0,I|=0,g|=0,B|=0)},xa:nB,ya:eB,za:fB,Aa:aB,Ba:function(A,I,g,B,C,Q){return 0|xA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},Ca:CB,Da:function(A,I,g){return A|=0,Sg(I|=0,32,g|=0,32,0,0,0),0|Mg(A,I)},Ea:function(A,I){return A|=0,qI(I|=0,32),0|Mg(A,I)},Fa:function(A,I,g,B,C){I|=0,g|=0,C|=0;var Q,i,n=0;if(i=n=D,D=n=n-512&-64,Q=(A|=0)||I){if(A=-1,!Fg(n+96|0,B|=0,C)){for(I=I||Q,A=0,wg(n+128|0,0,0,64),Xg(n+128|0,n+96|0,32,0),KI(n+96|0,32),Xg(n+128|0,g,32,0),Xg(n+128|0,C,32,0),pg(n+128|0,n+32|0,64),KI(n+128|0,384);g=(n+32|0)+A|0,E[A+Q|0]=a[0|g],E[A+I|0]=a[g+32|0],32!=(0|(A=A+1|0)););KI(n+32|0,64),A=0}return D=i,0|A}Gg(),t()},Ga:function(A,I,g,B,C){I|=0,g|=0,C|=0;var Q,i,n=0;if(i=n=D,D=n=n-512&-64,Q=(A|=0)||I){if(A=-1,!Fg(n+96|0,B|=0,C)){for(I=I||Q,A=0,wg(n+128|0,0,0,64),Xg(n+128|0,n+96|0,32,0),KI(n+96|0,32),Xg(n+128|0,C,32,0),Xg(n+128|0,g,32,0),pg(n+128|0,n+32|0,64),KI(n+128|0,384);g=(n+32|0)+A|0,E[A+I|0]=a[0|g],E[A+Q|0]=a[g+32|0],32!=(0|(A=A+1|0)););KI(n+32|0,64),A=0}return D=i,0|A}Gg(),t()},Ha:aB,Ia:aB,Ja:aB,Ka:aB,La:tB,Ma:cB,Na:cB,Oa:nB,Pa:sB,Qa:yB,Ra:sB,Sa:nB,Ta:function(){return 128},Ua:function(){return 35681},Va:tB,Wa:sB,Xa:function(){return 8192},Ya:function(){return-2147483648},Za:cB,_a:function(){return 67108864},$a:wB,ab:function(){return 268435456},bb:function(){return 4},cb:function(){return 1073741824},db:function(A,I,g,B,C,Q,E,i,n,a,r){return 0|UI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0,r|=0)},eb:function(A,I,g,B,C,Q,E){return 0|nI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0)},fb:function(A,I,g,B,C,Q,E,i){return 0|function(A,I,g,B,C,Q,E,i){switch(i+-1|0){case 1:return nI(A,I,g,B,C,Q,E);default:Gg(),t();case 0:}return EI(A,I,g,B,C,Q,E)}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0)},gb:function(A,I,g,B){return 0|function(A,I,g,B){return eI(A,35681,10)?eI(A,35692,9)?(n[8960]=28,-1):function(A,I,g,B){A:{if(1==(0|B)&g>>>0>=0|B>>>0>1)n[8960]=22;else{if(!(A=lA(A,I,g,1)))break A;-35==(0|A)&&(n[8960]=28)}A=-1}return A}(A,I,g,B):function(A,I,g,B){A:{if(1==(0|B)&g>>>0>=0|B>>>0>1)n[8960]=22;else{if(!(A=lA(A,I,g,2)))break A;-35==(0|A)&&(n[8960]=28)}A=-1}return A}(A,I,g,B)}(A|=0,I|=0,g|=0,B|=0)},hb:function(A,I,g,B){return 0|function(A,I,g,B){return eI(A,35681,10)?eI(A,35692,9)?(n[8960]=28,-1):RA(A,I,g,B,1):RA(A,I,g,B,2)}(A|=0,I|=0,g|=0,B|=0)},ib:Mg,jb:Fg,kb:aB,lb:aB,mb:aB,nb:rB,ob:nB,pb:oB,qb:CB,rb:Ug,sb:function(A,I,g,B,C,Q){return 0|function(A,I,g,B,C,Q){return!B&g>>>0>=4294967280|B>>>0>0&&(Gg(),t()),fA(A+16|0,A,I,g,B,C,Q),0}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},tb:vg,ub:function(A,I,g,B,C,Q){return 0|function(A,I,g,B,C,Q){var E=0,i=0,n=0;return!B&g>>>0>=16|B>>>0>0?(E=A,i=I+16|0,n=I,A=B+-1|0,(I=g+-16|0)>>>0<4294967280&&(A=A+1|0),A=yA(E,i,n,I,A,C,Q)):A=-1,A}(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},vb:CB,wb:function(A,I,g){return A|=0,g|=0,qI(I|=0,24),K(A,I,g),hg(A),g=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,I=a[I+20|0]|a[I+21|0]<<8|a[I+22|0]<<16|a[I+23|0]<<24,E[A+44|0]=0,E[A+45|0]=0,E[A+46|0]=0,E[A+47|0]=0,E[A+48|0]=0,E[A+49|0]=0,E[A+50|0]=0,E[A+51|0]=0,E[A+36|0]=g,E[A+37|0]=g>>>8,E[A+38|0]=g>>>16,E[A+39|0]=g>>>24,E[A+40|0]=I,E[A+41|0]=I>>>8,E[A+42|0]=I>>>16,E[A+43|0]=I>>>24,0},xb:function(A,I,g){return K(A|=0,I|=0,g|=0),hg(A),g=a[I+16|0]|a[I+17|0]<<8|a[I+18|0]<<16|a[I+19|0]<<24,I=a[I+20|0]|a[I+21|0]<<8|a[I+22|0]<<16|a[I+23|0]<<24,E[A+44|0]=0,E[A+45|0]=0,E[A+46|0]=0,E[A+47|0]=0,E[A+48|0]=0,E[A+49|0]=0,E[A+50|0]=0,E[A+51|0]=0,E[A+36|0]=g,E[A+37|0]=g>>>8,E[A+38|0]=g>>>16,E[A+39|0]=g>>>24,E[A+40|0]=I,E[A+41|0]=I>>>8,E[A+42|0]=I>>>16,E[A+43|0]=I>>>24,0},yb:q,zb:function(A,I,g,B,C,Q,E,i,n,a){return 0|cA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0)},Ab:function(A,I,g,B,C,Q,E,i,n,a){return 0|BA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0,E|=0,i|=0,n|=0,a|=0)},Bb:function(){return 52},Cb:function(){return 17},Db:rB,Eb:aB,Fb:function(){return-18},Gb:yB,Hb:tB,Ib:cB,Jb:wB,Kb:fB,Lb:nB,Mb:function(A,I,g,B,C){return 0|function(A,I,g,B){var C=0,Q=0,E=0,i=0,n=0,r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0,u=0;if(E=1886610805^(Q=a[0|B]|a[B+1|0]<<8|a[B+2|0]<<16|a[B+3|0]<<24),i=1936682341^(C=a[B+4|0]|a[B+5|0]<<8|a[B+6|0]<<16|a[B+7|0]<<24),r=1852142177^Q,o=1819895653^C,C=1852075885^(Q=a[B+8|0]|a[B+9|0]<<8|a[B+10|0]<<16|a[B+11|0]<<24),n=1685025377^(B=a[B+12|0]|a[B+13|0]<<8|a[B+14|0]<<16|a[B+15|0]<<24),t=2037671283^Q,e=1952801890^B,(0|(Q=(I+g|0)-(w=7&g)|0))!=(0|I)){for(;c=a[0|I]|a[I+1|0]<<8|a[I+2|0]<<16|a[I+3|0]<<24,y=a[I+4|0]|a[I+5|0]<<8|a[I+6|0]<<16|a[I+7|0]<<24,f=Wg(C,n,13),B=i+n|0,s=l,(C=C+E|0)>>>0>>0&&(B=B+1|0),E=B,h=Wg(C,B,32),D=l,t=Wg(i=t^c,B=e^y,16),B=B+o|0,(n=i+r|0)>>>0>>0&&(B=B+1|0),i=n^t,t=r=B^(e=l),r=Wg(i,r,21),e=l,o=E^=s,E=Wg(C^=f,E,17),f=l,B=B+o|0,(C=C+n|0)>>>0>>0&&(B=B+1|0),o=Wg(C,B,32),s=l,u=Wg(n=C^E,f^=B,13),B=t+D|0,(C=i+h|0)>>>0>>0&&(B=B+1|0),B=f+(E=B)|0,h=l,(f=C+n|0)>>>0>>0&&(B=B+1|0),n=B,i=Wg(f,B,32),t=l,e=Wg(C^=r,B=E^e,16),B=B+s|0,(r=C+o|0)>>>0>>0&&(B=B+1|0),B=(o=(C=B)^l)+t|0,(E=i+(e=t=r^e)|0)>>>0>>0&&(B=B+1|0),t=Wg(t,o,21)^E,i=B,e=B^l,f=Wg(o=f^u,B=n^h,17),B=C+B|0,(o=o+r|0)>>>0>>0&&(B=B+1|0),C=o^f,n=B^(s=l),E^=c,i^=y,r=Wg(o,B,32),o=l,(0|Q)!=(0|(I=I+8|0)););I=Q}switch(Q=g<<24,g=0,w+-1|0){case 6:Q|=a[I+6|0]<<16;case 5:Q|=a[I+5|0]<<8;case 4:Q|=a[I+4|0];case 3:B=(g=a[I+3|0])>>>8|0,g<<=24,Q|=B;case 2:g|=(B=a[I+2|0])<<16,Q|=c=B>>>16|0;case 1:g|=(B=a[I+1|0])<<8,Q|=c=B>>>24|0;case 0:g=a[0|I]|g}return c=Wg(C,n,13),B=i+n|0,i=l,(I=C+E|0)>>>0>>0&&(B=B+1|0),C=B,y=Wg(I,B,32),f=l,t=Wg(n=g^t,B=Q^e,16),B=B+o|0,(E=n+r|0)>>>0>>0&&(B=B+1|0),o=r=B^(e=l),t=Wg(n=E^t,r,21),e=l,i=C^=i,C=Wg(I^=c,C,17),r=l,B=B+i|0,(I=I+E|0)>>>0>>0&&(B=B+1|0),i=Wg(I,B,32),c=l,w=Wg(E=I^C,r^=B,13),B=o+f|0,(I=n+y|0)>>>0>>0&&(B=B+1|0),B=r+(C=B)|0,o=l,(E=I+E|0)>>>0>>0&&(B=B+1|0),n=B,r=Wg(E,B,32),y=l,t=Wg(I^=t,B=C^e,16),B=B+c|0,(I=I+i|0)>>>0>>0&&(B=B+1|0),C=I^t,t=i=B^(e=l),i=Wg(C,i,21),e=l,o=n^=o,n=Wg(E^=w,n,17),c=l,B=B+o|0,(E=I+E|0)>>>0>>0&&(B=B+1|0),o=Wg(E,B,32),f=l,n=Wg(E^=n,I=B^c,13),B=t+y|0,B=(t=I)+(Q^(I=(C=C+r|0)>>>0>>0?B+1|0:B))|0,r=l,(g=E+(Q=g^C)|0)>>>0>>0&&(B=B+1|0),Q=B,E=Wg(g,B,32),t=l,i=Wg(C^=i,B=I^=e,16),B=B+f|0,(I=C+(255^o)|0)>>>0>>0&&(B=B+1|0),C=I^i,o=i=B^(e=l),i=Wg(C,i,21),e=l,r=Q^=r,Q=Wg(g^=n,Q,17),n=l,B=B+r|0,(g=I+g|0)>>>0>>0&&(B=B+1|0),r=Wg(g,B,32),c=l,n=Wg(g^=Q,I=B^n,13),B=o+t|0,B=(Q=I)+(I=(C=C+E|0)>>>0>>0?B+1|0:B)|0,o=l,(g=g+C|0)>>>0>>0&&(B=B+1|0),Q=B,E=Wg(g,B,32),t=l,i=Wg(C^=i,B=I^=e,16),B=B+c|0,(I=C+r|0)>>>0>>0&&(B=B+1|0),C=I^i,r=i=B^(e=l),i=Wg(C,i,21),e=l,o=Q^=o,Q=Wg(g^=n,Q,17),n=l,B=B+o|0,(g=I+g|0)>>>0>>0&&(B=B+1|0),o=Wg(g,B,32),c=l,n=Wg(g^=Q,Q=B^n,13),B=r+t|0,B=Q+(I=(C=C+E|0)>>>0>>0?B+1|0:B)|0,r=l,(g=g+C|0)>>>0>>0&&(B=B+1|0),Q=B,E=Wg(g,B,32),t=l,i=Wg(C^=i,B=I^=e,16),B=B+c|0,(I=C+o|0)>>>0>>0&&(B=B+1|0),C=I^i,o=i=B^(e=l),i=Wg(C,i,21),e=l,r=Q^=r,Q=Wg(g^=n,Q,17),n=l,B=B+r|0,(g=I+g|0)>>>0>>0&&(B=B+1|0),r=Wg(g,B,32),c=l,n=I=B^n,f=Wg(y=g^Q,I,13),B=o+t|0,(I=C+E|0)>>>0>>0&&(B=B+1|0),E=l,Q=B,i=Wg(C=I^i,B=g=e^B,16),B=B+c|0,(g=C+r|0)>>>0>>0&&(B=B+1|0),C=B,i=Wg(g^i,B^(o=l),21),B=Q+n|0,(Q=I+y|0)>>>0>>0&&(B=B+1|0),B=C+(E^=B)|0,(I=(Q^=f)+g|0)>>>0>>0&&(B=B+1|0),g=l,Q=Wg(Q,E,17)^I^i,g=l^g^B,LI(A,Wg(I,B,32)^Q,l^g),0}(A|=0,I|=0,g|=0,C|=0)},Nb:function(A){qI(A|=0,16)},Ob:function(){return 208},Pb:eB,Qb:aB,Rb:aB,Sb:eB,Tb:function(){return-65},Ub:function(A,I,g){return 0|M(A|=0,I|=0,g|=0)},Vb:function(A,I){return 0|function(A,I){var g;return D=g=D-32|0,qI(g,32),M(A,I,g),KI(g,32),D=g+32|0,0}(A|=0,I|=0)},Wb:function(A,I,g,B,C,Q){return 0|QI(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},Xb:function(A,I,g,B,C,Q){return 0|KA(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},Yb:function(A,I,g,B,C,Q){return 0|mg(A|=0,I|=0,g|=0,B|=0,C|=0,Q|=0)},Zb:function(A,I,g,B,C){return 0|Rg(A|=0,I|=0,g|=0,B|=0,C|=0)},_b:function(A){return rg(A|=0),0},$b:function(A,I,g,B){return 0|W(A|=0,I|=0,g|=0,B|=0)},ac:function(A,I,g,B){return 0|function(A,I,g,B){var C;return D=C=D+-64|0,ag(A,C),A=V(I,g,C,64,0,B,1),D=C- -64|0,A}(A|=0,I|=0,g|=0,B|=0)},bc:function(A,I,g){return 0|function(A,I,g){var B;return D=B=D+-64|0,ag(A,B),A=MA(I,B,64,0,g,1),D=B- -64|0,A}(A|=0,I|=0,g|=0)},cc:function(A,I){A|=0;var g,B=0;return D=g=D-256|0,B=-1,UA(I|=0)||FA(g+96|0,I)||function(A){var I;return D=I=D-160|0,CA(I,A),A=tg(I),D=I+160|0,A}(g+96|0)&&(Vg(g),_A(g,g,I=g+136|0),Vg(g+48|0),HA(g+48|0,g+48|0,I),O(g,g),H(g+48|0,g+48|0,g),oA(A,g+48|0),B=0),D=g+256|0,0|B},dc:function(A,I){A|=0;var g,B=0;return D=g=D+-64|0,ig(g,I|=0,32,0),E[0|g]=248&a[0|g],E[g+31|0]=63&a[g+31|0]|64,I=n[g+20>>2],B=n[g+16>>2],E[A+16|0]=B,E[A+17|0]=B>>>8,E[A+18|0]=B>>>16,E[A+19|0]=B>>>24,E[A+20|0]=I,E[A+21|0]=I>>>8,E[A+22|0]=I>>>16,E[A+23|0]=I>>>24,I=n[g+12>>2],B=n[g+8>>2],E[A+8|0]=B,E[A+9|0]=B>>>8,E[A+10|0]=B>>>16,E[A+11|0]=B>>>24,E[A+12|0]=I,E[A+13|0]=I>>>8,E[A+14|0]=I>>>16,E[A+15|0]=I>>>24,I=n[g+4>>2],B=n[g>>2],E[0|A]=B,E[A+1|0]=B>>>8,E[A+2|0]=B>>>16,E[A+3|0]=B>>>24,E[A+4|0]=I,E[A+5|0]=I>>>8,E[A+6|0]=I>>>16,E[A+7|0]=I>>>24,I=n[g+28>>2],B=n[g+24>>2],E[A+24|0]=B,E[A+25|0]=B>>>8,E[A+26|0]=B>>>16,E[A+27|0]=B>>>24,E[A+28|0]=I,E[A+29|0]=I>>>8,E[A+30|0]=I>>>16,E[A+31|0]=I>>>24,KI(g,64),D=g- -64|0,0},ec:Qg,fc:eg,gc:function(A){var I=0,g=0;if((A|=0)>>>0>=2){for(g=(0-A>>>0)%(A>>>0)|0;(I=Qg())>>>0>>0;);A=(I>>>0)%(A>>>0)|0}else A=0;return 0|A},hc:qI,ic:function(A,I,g){IB(A|=0,I|=0,1784,g|=0)},jc:aB,kc:function(){var A=0,I=0;return(A=n[9097])&&(A=n[A+20>>2])&&(I=0|Q[0|A]()),0|I},lc:function(A,I,g){!function(A,I,g){1==(0|g)&I>>>0>=0|g>>>0>1&&(c(1796,1816,197,1842),t()),qI(A,I)}(A|=0,I|=0,g|=0)},mc:function(A,I,g,B){A|=0,g|=0;var C=0,Q=0,i=0;if(!((B|=0)>>>0>2147483646|B<<1>>>0>=(I|=0)>>>0)){if(I=0,B){for(;C=I<<1,Q=(i=a[I+g|0])>>>4|0,E[C+A|0]=87+(Q+(Q+65526>>>8&217)|0),Q=(1|C)+A|0,C=15&i,E[0|Q]=22272+((C<<8)+(C+65526&55552)|0)>>>8,(0|B)!=(0|(I=I+1|0)););I=B<<1}else I=0;return E[I+A|0]=0,0|A}Gg(),t()},nc:function(A,I,g,B,C,Q,i){A|=0,I|=0,g|=0,C|=0,Q|=0,i|=0;var r=0,o=0,e=0,t=0,c=0,f=0,y=0,s=0,w=0,h=0,D=0;A:if(B|=0){I:{g:{B:for(;;){for(o=r;;){C:{if(!(255&((w=(65526+(y=(223&(f=a[g+o|0]))-55&255)^y+65520)>>>8|0)|(e=65526+(h=48^f)>>>8|0)))){if(e=1,!C|255&c)break g;if(bg(C,f))break C;r=o;break A}if(t>>>0>=I>>>0){n[8960]=68,e=0;break g}if(r=y&w|e&h,255&c?(E[A+t|0]=r|D,t=t+1|0):D=r<<4,c^=-1,e=1,(r=o+1|0)>>>0>>0)continue B;break I}if(c=0,!((o=o+1|0)>>>0>>0))break}break}r=(A=r+1|0)>>>0>>0?B:A;break A}r=o}255&c?(n[8960]=28,s=-1,r=r+-1|0,t=0):e||(t=0,s=-1)}return i?n[i>>2]=g+r:(0|B)!=(0|r)&&(n[8960]=28,s=-1),Q&&(n[Q>>2]=t),0|s},oc:function(A,I){var g;return A|=0,Zg(I|=0),A=o(g=(A>>>0)/3|0,-3)+A|0,o(4-(3-A&0-(I>>>1&1))|0,1&(A|A>>>1))+(g<<2|1)|0},pc:AA,qc:Z,rc:function(){var A=0;return n[9104]?A=1:(n[9086]=0,function(){var A;D=A=D-16|0,Dg(A),n[A>>2]&&(Dg(A),eA(36348,0,40)),D=A+16|0}(),n[9085]=1,eg(),function(){var A=0;(0|(A=0|s(30)))>=1?n[8943]=A:A=n[8943],A>>>0<=15&&(Gg(),t()),qI(36400,16)}(),n[9104]=1,A=0),0|A},sc:function(A,I,g,B,C){A|=0,I|=0,g|=0,C|=0;var Q,i=0,r=0,o=0;D=Q=D-16|0;A:{if(B|=0){if(o=-1,(i=(i=B+-1|0)-(r=i&B?(g>>>0)%(B>>>0)|0:g&i)|0)>>>0>=(-1^g)>>>0)break A;if(!((g=g+i|0)>>>0>=C>>>0))for(A&&(n[A>>2]=g+1),A=I+g|0,o=0,E[Q+15|0]=0,I=B>>>0>1?B:1,B=0;C=g=A-B|0,r=a[0|g]&a[Q+15|0],g=(B^i)-1>>>24|0,E[0|C]=r|128&g,E[Q+15|0]=g|a[Q+15|0],(0|I)!=(0|(B=B+1|0)););}else o=-1;return D=Q+16|0,0|o}Gg(),t()},tc:function(A,I,g,B){A|=0,I|=0,g|=0,B|=0;var C,Q=0,E=0,i=0,r=0,o=0;if(n[12+(C=D-16|0)>>2]=0,B+-1>>>0>>0){for(o=(Q=g+-1|0)+I|0,g=0,I=0;r=((128^(E=a[o-g|0]))-1&n[C+12>>2]+-1&i+-1)>>>8&1,n[C+12>>2]=n[C+12>>2]|0-r&g,I|=r,i|=E,(0|B)!=(0|(g=g+1|0)););n[A>>2]=Q-n[C+12>>2],A=I+-1|0}else A=-1;return 0|A},uc:function(){return 35762},vc:function(){return 10},wc:wB,xc:tB,yc:function(){return 35840},zc:_,Ac:v,Bc:function(I){return 0|function(I){I|=0;var g=0|hB(),Q=g+I|0;if(g>0]=I;break;case"i16":b[A>>1]=I;break;case"i32":m[A>>2]=I;break;case"i64":tA=[I>>>0,(eA=I,+O(eA)>=1?eA>0?(0|AA(+$(eA/4294967296),4294967295))>>>0:~~+z((eA-+(~~eA>>>0))/4294967296)>>>0:0)],m[A>>2]=tA[0],m[A+4>>2]=tA[1];break;case"float":U[A>>2]=I;break;case"double":v[A>>3]=I;break;default:EA("invalid type for setValue: "+g)}}function D(A,I,g){switch("*"===(I=I||"i8").charAt(I.length-1)&&(I="i32"),I){case"i1":case"i8":return H[A>>0];case"i16":return b[A>>1];case"i32":case"i64":return m[A>>2];case"float":return U[A>>2];case"double":return v[A>>3];default:EA("invalid type for getValue: "+I)}return null}f=[],"object"!=typeof w&&EA("no native wasm support detected");var u=new w.Table({initial:14,maximum:22,element:"anyfunc"}),p=!1;function l(A,I){A||EA("Assertion failed: "+I)}var F="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function G(A,I,g){for(var B=I+g,C=I;A[C]&&!(C>=B);)++C;if(C-I>16&&A.subarray&&F)return F.decode(A.subarray(I,C));for(var Q="";I>10,56320|1023&a)}}else Q+=String.fromCharCode((31&E)<<6|i)}else Q+=String.fromCharCode(E)}return Q}function k(A,I){return A?G(Y,A,I):""}var _,H,Y,b,m,U,v,S=65536;function N(A,I){return A%I>0&&(A+=I-A%I),A}function R(A){_=A,I.HEAP8=H=new Int8Array(A),I.HEAP16=b=new Int16Array(A),I.HEAP32=m=new Int32Array(A),I.HEAPU8=Y=new Uint8Array(A),I.HEAPU16=new Uint16Array(A),I.HEAPU32=new Uint32Array(A),I.HEAPF32=U=new Float32Array(A),I.HEAPF64=v=new Float64Array(A)}var M=5279472,d=36432,P=I.INITIAL_MEMORY||16777216;function J(A){for(;A.length>0;){var g=A.shift();if("function"!=typeof g){var B=g.func;"number"==typeof B?void 0===g.arg?I.dynCall_v(B):I.dynCall_vi(B,g.arg):B(void 0===g.arg?null:g.arg)}else g(I)}}(s=I.wasmMemory?I.wasmMemory:new w.Memory({initial:P/S,maximum:2147483648/S}))&&(_=s.buffer),P=_.byteLength,R(_),m[d>>2]=M;var x=[],L=[],K=[],q=[];function X(){if(I.preRun)for("function"==typeof I.preRun&&(I.preRun=[I.preRun]);I.preRun.length;)j(I.preRun.shift());J(x)}function V(){J(L)}function T(){J(K)}function W(){if(I.postRun)for("function"==typeof I.postRun&&(I.postRun=[I.postRun]);I.postRun.length;)Z(I.postRun.shift());J(q)}function j(A){x.unshift(A)}function Z(A){q.unshift(A)}var O=Math.abs,z=Math.ceil,$=Math.floor,AA=Math.min,IA=0,gA=null,BA=null;function CA(A){IA++,I.monitorRunDependencies&&I.monitorRunDependencies(IA)}function QA(A){if(IA--,I.monitorRunDependencies&&I.monitorRunDependencies(IA),0==IA&&(null!==gA&&(clearInterval(gA),gA=null),BA)){var g=BA;BA=null,g()}}function EA(A){throw I.onAbort&&I.onAbort(A),y(A+=""),p=!0,A="abort("+A+"). Build with -s ASSERTIONS=1 for more info.",new w.RuntimeError(A)}function iA(A,I){return String.prototype.startsWith?A.startsWith(I):0===A.indexOf(I)}I.preloadedImages={},I.preloadedAudios={};var nA="data:application/octet-stream;base64,";function aA(A){return iA(A,nA)}var rA="file://";function oA(A){return iA(A,rA)}var eA,tA,cA="";function fA(){try{if(f)return new Uint8Array(f);var A=SA(cA);if(A)return A;if(r)return r(cA);throw"both async and sync fetching of the wasm failed"}catch(A){EA(A)}}function yA(){return f||!Q&&!E||"function"!=typeof fetch||oA(cA)?new Promise(function(A,I){A(fA())}):fetch(cA,{credentials:"same-origin"}).then(function(A){if(!A.ok)throw"failed to load wasm binary file at '"+cA+"'";return A.arrayBuffer()}).catch(function(){return fA()})}function sA(){var A={a:RA};function g(A,g){var B=A.exports;I.asm=B,QA()}function B(A){g(A.instance)}function C(I){return yA().then(function(I){return w.instantiate(I,A)}).then(I,function(A){y("failed to asynchronously prepare wasm: "+A),EA(A)})}if(CA(),I.instantiateWasm)try{return I.instantiateWasm(A,g)}catch(A){return y("Module.instantiateWasm callback failed with error: "+A),!1}return function(){if(f||"function"!=typeof w.instantiateStreaming||aA(cA)||oA(cA)||"function"!=typeof fetch)return C(B);fetch(cA,{credentials:"same-origin"}).then(function(I){return w.instantiateStreaming(I,A).then(B,function(A){return y("wasm streaming compile failed: "+A),y("falling back to ArrayBuffer instantiation"),C(B)})})}(),{}}aA(cA)||(cA=c(cA));var wA={1024:function(){return I.getRandomValue()},1062:function(){if(void 0===I.getRandomValue)try{var A="object"==typeof window?window:self,g=void 0!==A.crypto?A.crypto:A.msCrypto,B=function(){var A=new Uint32Array(1);return g.getRandomValues(A),A[0]>>>0};B(),I.getRandomValue=B}catch(A){try{var C=require("crypto"),Q=function(){var A=C.randomBytes(4);return(A[0]<<24|A[1]<<16|A[2]<<8|A[3])>>>0};Q(),I.getRandomValue=Q}catch(A){throw"No secure random number generator found"}}}};function hA(A,I,g){var B=YA(I,g);return wA[A].apply(null,B)}function DA(A,I,g,B){EA("Assertion failed: "+k(A)+", at: "+[I?k(I):"unknown filename",g,B?k(B):"unknown function"])}function uA(){EA()}function pA(A,I,g){Y.copyWithin(A,I,I+g)}function lA(){return Y.length}function FA(A){try{return s.grow(A-_.byteLength+65535>>>16),R(s.buffer),1}catch(A){}}function GA(A){A>>>=0;var I=lA();if(A>2147483648)return!1;for(var g=1;g<=4;g*=2){var B=I*(1+.2/g);if(B=Math.min(B,A+100663296),FA(Math.min(2147483648,N(Math.max(16777216,A,B),65536))))return!0}return!1}function kA(A){return m[dA()>>2]=A,A}function _A(A){switch(A){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:case 79:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return kA(28),-1}L.push({func:function(){MA()}});var HA=[];function YA(A,I){var g;for(HA.length=0,I>>=2;g=Y[A++];){var B=g<105;B&&1&I&&I++,HA.push(B?v[I++>>1]:m[I]),++I}return HA}var bA=!1;function mA(A){for(var I=[],g=0;g255&&(bA&&l(!1,"Character code "+B+" ("+String.fromCharCode(B)+") at offset "+g+" not in 0x00-0xFF."),B&=255),I.push(String.fromCharCode(B))}return I.join("")}var UA="function"==typeof atob?atob:function(A){var I,g,B,C,Q,E,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",a=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{I=i.indexOf(A.charAt(a++))<<2|(C=i.indexOf(A.charAt(a++)))>>4,g=(15&C)<<4|(Q=i.indexOf(A.charAt(a++)))>>2,B=(3&Q)<<6|(E=i.indexOf(A.charAt(a++))),n+=String.fromCharCode(I),64!==Q&&(n+=String.fromCharCode(g)),64!==E&&(n+=String.fromCharCode(B))}while(a0||(X(),IA>0||(I.setStatus?(I.setStatus("Running..."),setTimeout(function(){setTimeout(function(){I.setStatus("")},1),g()},1)):g()))}if(I.setValue=h,I.getValue=D,I.UTF8ToString=k,BA=function A(){NA||JA(),NA||(BA=A)},I.run=JA,I.preInit)for("function"==typeof I.preInit&&(I.preInit=[I.preInit]);I.preInit.length>0;)I.preInit.pop()();JA(),Object.keys(B).forEach(function(A){"getRandomValue"!==A&&delete B[A]}),Object.keys(I).forEach(function(A){B[A]=I[A]})};var g,C=void 0!==C?C:{},Q={};for(g in C)C.hasOwnProperty(g)&&(Q[g]=C[g]);var E=[],i=!1,n=!1,a=!1,r=!1;i="object"==typeof window,n="function"==typeof importScripts,a="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,r=!i&&!a&&!n;var o,e,t,c,f="";function y(A){return C.locateFile?C.locateFile(A,f):f+A}a?(f=n?require("path").dirname(f)+"/":__dirname+"/",o=function(A,I){var g=NA(A);return g?I?g:g.toString():(t||(t=require("fs")),c||(c=require("path")),A=c.normalize(A),t.readFileSync(A,I?null:"utf8"))},e=function(A){var I=o(A,!0);return I.buffer||(I=new Uint8Array(I)),F(I.buffer),I},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),E=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=C),process.on("unhandledRejection",iA),C.inspect=function(){return"[Emscripten Module object]"}):r?("undefined"!=typeof read&&(o=function(A){var I=NA(A);return I?UA(I):read(A)}),e=function(A){var I;return(I=NA(A))?I:"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(F("object"==typeof(I=read(A,"binary"))),I)},"undefined"!=typeof scriptArgs?E=scriptArgs:void 0!==arguments&&(E=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(i||n)&&(n?f=self.location.href:document.currentScript&&(f=document.currentScript.src),f=0!==f.indexOf("blob:")?f.substr(0,f.lastIndexOf("/")+1):"",o=function(A){try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.send(null),I.responseText}catch(I){var g=NA(A);if(g)return UA(g);throw I}},n&&(e=function(A){try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.responseType="arraybuffer",I.send(null),new Uint8Array(I.response)}catch(I){var g=NA(A);if(g)return g;throw I}})),C.print;var s,w,h=C.printErr||void 0;for(g in Q)Q.hasOwnProperty(g)&&(C[g]=Q[g]);function D(A,I,g,B){switch("*"===(g=g||"i8").charAt(g.length-1)&&(g="i32"),g){case"i1":case"i8":Y[A>>0]=I;break;case"i16":m[A>>1]=I;break;case"i32":U[A>>2]=I;break;case"i64":cA=[I>>>0,(tA=I,+z(tA)>=1?tA>0?(0|IA(+AA(tA/4294967296),4294967295))>>>0:~~+$((tA-+(~~tA>>>0))/4294967296)>>>0:0)],U[A>>2]=cA[0],U[A+4>>2]=cA[1];break;case"float":v[A>>2]=I;break;case"double":S[A>>3]=I;break;default:iA("invalid type for setValue: "+g)}}function u(A,I,g){switch("*"===(I=I||"i8").charAt(I.length-1)&&(I="i32"),I){case"i1":case"i8":return Y[A>>0];case"i16":return m[A>>1];case"i32":case"i64":return U[A>>2];case"float":return v[A>>2];case"double":return S[A>>3];default:iA("invalid type for getValue: "+I)}return null}Q=null,C.arguments&&(E=C.arguments),C.thisProgram&&C.thisProgram,C.quit&&C.quit,C.wasmBinary&&(s=C.wasmBinary),C.noExitRuntime&&C.noExitRuntime,"object"!=typeof WebAssembly&&iA("no native wasm support detected");var p=new WebAssembly.Table({initial:14,maximum:22,element:"anyfunc"}),l=!1;function F(A,I){A||iA("Assertion failed: "+I)}var G="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function k(A,I,g){for(var B=I+g,C=I;A[C]&&!(C>=B);)++C;if(C-I>16&&A.subarray&&G)return G.decode(A.subarray(I,C));for(var Q="";I>10,56320|1023&a)}}else Q+=String.fromCharCode((31&E)<<6|i)}else Q+=String.fromCharCode(E)}return Q}function _(A,I){return A?k(b,A,I):""}var H,Y,b,m,U,v,S,N=65536;function R(A,I){return A%I>0&&(A+=I-A%I),A}function M(A){H=A,C.HEAP8=Y=new Int8Array(A),C.HEAP16=m=new Int16Array(A),C.HEAP32=U=new Int32Array(A),C.HEAPU8=b=new Uint8Array(A),C.HEAPU16=new Uint16Array(A),C.HEAPU32=new Uint32Array(A),C.HEAPF32=v=new Float32Array(A),C.HEAPF64=S=new Float64Array(A)}var d=5279472,P=36432,J=C.INITIAL_MEMORY||16777216;function x(A){for(;A.length>0;){var I=A.shift();if("function"!=typeof I){var g=I.func;"number"==typeof g?void 0===I.arg?C.dynCall_v(g):C.dynCall_vi(g,I.arg):g(void 0===I.arg?null:I.arg)}else I(C)}}(w=C.wasmMemory?C.wasmMemory:new WebAssembly.Memory({initial:J/N,maximum:2147483648/N}))&&(H=w.buffer),J=H.byteLength,M(H),U[P>>2]=d;var L=[],K=[],q=[],X=[];function V(){if(C.preRun)for("function"==typeof C.preRun&&(C.preRun=[C.preRun]);C.preRun.length;)Z(C.preRun.shift());x(L)}function T(){x(K)}function W(){x(q)}function j(){if(C.postRun)for("function"==typeof C.postRun&&(C.postRun=[C.postRun]);C.postRun.length;)O(C.postRun.shift());x(X)}function Z(A){L.unshift(A)}function O(A){X.unshift(A)}var z=Math.abs,$=Math.ceil,AA=Math.floor,IA=Math.min,gA=0,BA=null,CA=null;function QA(A){gA++,C.monitorRunDependencies&&C.monitorRunDependencies(gA)}function EA(A){if(gA--,C.monitorRunDependencies&&C.monitorRunDependencies(gA),0==gA&&(null!==BA&&(clearInterval(BA),BA=null),CA)){var I=CA;CA=null,I()}}function iA(A){throw C.onAbort&&C.onAbort(A),h(A+=""),l=!0,A="abort("+A+"). Build with -s ASSERTIONS=1 for more info.",new WebAssembly.RuntimeError(A)}function nA(A,I){return String.prototype.startsWith?A.startsWith(I):0===A.indexOf(I)}C.preloadedImages={},C.preloadedAudios={};var aA="data:application/octet-stream;base64,";function rA(A){return nA(A,aA)}var oA="file://";function eA(A){return nA(A,oA)}var tA,cA,fA="data:application/octet-stream;base64,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AUgEQCAAIQIMAQsgAEEDcUUEQCAAIQIMAQsgACECA0AgAiABLQAAOgAAIAFBAWohASACQQFqIgIgA08NASACQQNxDQALCwJAIANBfHEiBEHAAEkNACACIARBQGoiBUsNAANAIAIgASgCADYCACACIAEoAgQ2AgQgAiABKAIINgIIIAIgASgCDDYCDCACIAEoAhA2AhAgAiABKAIUNgIUIAIgASgCGDYCGCACIAEoAhw2AhwgAiABKAIgNgIgIAIgASgCJDYCJCACIAEoAig2AiggAiABKAIsNgIsIAIgASgCMDYCMCACIAEoAjQ2AjQgAiABKAI4NgI4IAIgASgCPDYCPCABQUBrIQEgAkFAayICIAVNDQALCyACIARPDQEDQCACIAEoAgA2AgAgAUEEaiEBIAJBBGoiAiAESQ0ACwwBCyADQQRJBEAgACECDAELIANBfGoiBCAASQRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAiABLQABOgABIAIgAS0AAjoAAiACIAEtAAM6AAMgAUEEaiEBIAJBBGoiAiAETQ0ACwsgAiADSQRAA0AgAiABLQAAOgAAIAFBAWohASACQQFqIgIgA0cNAAsLIAAL7AEBEn8gAigCBCEDIAEoAgQhBCACKAIIIQUgASgCCCEGIAIoAgwhByABKAIMIQggAigCECEJIAEoAhAhCiACKAIUIQsgASgCFCEMIAIoAhghDSABKAIYIQ4gAigCHCEPIAEoAhwhECACKAIgIREgASgCICESIAIoAiQhEyABKAIkIRQgACACKAIAIAEoAgBqNgIAIAAgEyAUajYCJCAAIBEgEmo2AiAgACAPIBBqNgIcIAAgDSAOajYCGCAAIAsgDGo2AhQgACAJIApqNgIQIAAgByAIajYCDCAAIAUgBmo2AgggACADIARqNgIECxgBAX9BxJwCKAIAIgAEQCAAEQ4ACxACAAtAAQN/IAAgASABQfgAaiICEAsgAEEoaiABQShqIgMgAUHQAGoiBBALIABB0ABqIAQgAhALIABB+ABqIAEgAxALC+wBARJ/IAIoAgQhAyABKAIEIQQgAigCCCEFIAEoAgghBiACKAIMIQcgASgCDCEIIAIoAhAhCSABKAIQIQogAigCFCELIAEoAhQhDCACKAIYIQ0gASgCGCEOIAIoAhwhDyABKAIcIRAgAigC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IQUgBSALIAggBSAOaiIOc0EIEAgiCGoiC3NBBxAIIQUgFUF+aiIVDQALIAEoAAQhLCABKAAIIS0gASgADCEuIAEoABAhLyABKAAUITAgASgAGCExIAEoABwhMiABKAAgITMgASgAJCE0IAEoACghFSABKAAsIRYgASgAMCEXIAEoADQhGSABKAA4IRogASgAPCEbIAQgASgAACANICpqcxAKIARBBGogLCAUIClqcxAKIARBCGogLSAQIChqcxAKIARBDGogLiAOICdqcxAKIARBEGogLyAFICZqcxAKIARBFGogMCAKICVqcxAKIARBGGogMSACICRqcxAKIARBHGogMiAPICNqcxAKIARBIGogMyAMICJqcxAKIARBJGogNCALICFqcxAKIARBKGogFSAYICBqcxAKIARBLGogFiAHIB9qcxAKIARBMGogFyAGIBNqcxAKIARBNGogGSAJIBJqcxAKIARBOGogGiAIIB5qcxAKIARBPGogGyARIB1qcxAKIBIgE0EBaiIHIBNJaiESIANCwABYBEACQCADQj9WDQAgA6ciAUUNAEEAIQoDQCAKICtqIAQgCmotAAA6AAAgCkEBaiIKIAFHDQALCyAAIBI2AjQgACAHNgIwIBxBQGskAAUgAUFAayEBIARBQGshAiADQkB8IQMgByETDAELCwtxACAAQuXwwYvmjZmQMzcCACAAQrLaiMvHrpmQ6wA3AgggACABKAAANgIQIAAgASgABDYCFCAAIAEoAAg2AhggACABKAAMNgIcIAAgASgAEDYCICAAIAEoABQ2AiQgACABKAAYNgIoIAAgASgAHDYCLAsLACAAIAEgAhDaAgupAwEVfyABKAIEIQsgACgCBCEMIAEoAgghDSAAKAIIIQ4gASgCDCEPIAAoAgwhAyABKAIQIRAgACgCECEEIAEoAhQhESAAKAIUIQUgASgCGCESIAAoAhghBiABKAIcIRMgACgCHCEHIAEoAiAhFCAAKAIgIQggASgCJCEVIAAoAiQhCSAAQQAgAmsiAiABKAIAIhYgACgCACIKc3EiFyAKczYCACAAIAkgCSAVcyACcSIKczYCJCAAIAggCCAUcyACcSIJczYCICAAIAcgByATcyACcSIIczYCHCAAIAYgBiAScyACcSIHczYCGCAAIAUgBSARcyACcSIGczYCFCAAIAQgBCAQcyACcSIFczYCECAAIAMgAyAPcyACcSIEczYCDCAAIA4gDSAOcyACcSIDczYCCCAAIAwgCyAMcyACcSIAczYCBCABIAogFXM2AiQgASAJIBRzNgIgIAEgCCATczYCHCABIAcgEnM2AhggASAGIBFzNgIUIAEgBSAQczYCECABIAQgD3M2AgwgASADIA1zNgIIIAEgACALczYCBCABIBYgF3M2AgALKQEBfyMAQYABayICJAAgAkEIaiABEOcCIAAgAkEIahA5IAJBgAFqJAALMgEBfyAAIAEgAUH4AGoiAhALIABBKGogAUEoaiABQdAAaiIBEAsgAEHQAGogASACEAsLrwIBE38gASgCBCEMIAAoAgQhAyABKAIIIQ0gACgCCCEEIAEoAgwhDiAAKAIMIQUgASgCECEPIAAoAhAhBiABKAIUIRAgACgCFCEHIAEoAhghESAAKAIYIQggASgCHCESIAAoAhwhCSABKAIgIRMgACgCICEKIAEoAiQhFCAAKAIkIQsgAEEAIAJrIgIgACgCACIVIAEoAgBzcSAVczYCACAAIAsgCyAUcyACcXM2AiQgACAKIAogE3MgAnFzNgIgIAAgCSAJIBJzIAJxczYCHCAAIAggCCARcyACcXM2AhggACAHIAcgEHMgAnFzNgIUIAAgBiAGIA9zIAJxczYCECAAIAUgBSAOcyACcXM2AgwgACAEIAQgDXMgAnFzNgIIIAAgAyADIAxzIAJxczYCBAskAQF/IwBBIGsiASQAIAEgABAtIAFBIBBlIQAgAUEgaiQAIAALpgQCCn8OfiAAKAIkIQQgACgCICEFIAAoAhwhBiAAKAIYIQcgACgCFCEDIAJCEFoEQCAALQBQRUEYdCEIIAAoAgQiCUEFbK0hGSAAKAIIIgpBBWytIRcgACgCDCILQQVsrSEVIAAoAhAiDEEFbK0hEyAMrSEaIAutIRggCq0hFiAJrSEUIAA1AgAhEgNAIAEoAANBAnZB////H3EgB2qtIg0gGH4gASgAAEH///8fcSADaq0iDiAafnwgASgABkEEdkH///8fcSAGaq0iDyAWfnwgASgACUEGdiAFaq0iECAUfnwgASgADEEIdiAIciAEaq0iESASfnwgDSAWfiAOIBh+fCAPIBR+fCAQIBJ+fCARIBN+fCANIBR+IA4gFn58IA8gEn58IBAg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IAFBf2pBP0sgBUHAAEtyBH8gBgUgACACIAQgAUH/AXEgAyAFQf8BcRDGAQsL0QIBA38jAEFAaiIEJAACQCACRSACQcEAT3JFBEBBfyEDIAApAFBQBEAgACAAKADgAiIDQYEBTwR/IABCgAEQWSAAIABB4ABqIgUQXiAAIAAoAOACQYB/aiIDNgDgAiADQYEBTw0DIAUgAEHgAWogAxASGiAAKADgAgUgAwutEFkgACIDLQDkAgRAIANCfzcAWAsgA0J/NwBQIABB4ABqIgMgACgA4AIiBWpBAEGAAiAFaxAQGiAAIAMQXiAEIAApAAAQESAEQQhyIAApAAgQESAEQRBqIAApABAQESAEQRhqIAApABgQESAEQSBqIAApACAQESAEQShqIAApACgQESAEQTBqIAApADAQESAEQThqIAApADgQESABIAQgAhASGiAAQcAAEAkgA0GAAhAJQQAhAwsgBEFAayQAIAMPCxAUAAtBvg5B3g5BsgJBiw8QAAALJgEBfiAAIAEgACkAQCIBfCICNwBAIAAgACkASCACIAFUrXw3AEgLCQAgAEEANgAAC0UBA38gAEGgD0HAABASQUBrQQBBpQIQEBoDQCAAIAJBA3QiA2oiBCABIANqKQAAIAQpAACFNwAAIAJBAWoiAkEIRw0ACwsWACAAEDUgAQRAIABBkJcCQiIQHBoLC5YBAQF/IwBBMGsiASQAIAEgACkAGDcDGCABIAApABA3AxAgASAAKQAANwMAIAEgACkACDcDCCABIAApACQ3AyAgASABQiggAEEgakEAIABB8JcCKAIAERQAGiAAIAEpAxg3ABggACABKQMQNwAQIAAgASkDCDcACCAAIAEpAwA3AAAgACABKQMgNwAkIAAQXyABQTBqJAALnzgCA38efiMAQYACayICJAADQCADQQN0IgQgAkGAAWpqIAEgBGopAAA3AwAgA0EBaiIDQRBHDQALIAIgAEHAABASIgFC8e30+KWn/aelfzcDWCAAKQBYISAgACkASCEcIAApAFAhCyABKQMAIAEpAyAiISABKQOAAXx8IhYgACkAQIVC0YWa7/rPlIfRAIVBIBAGIRsgASAbIBtCiJLznf/M+YTqAHwiHSAhhUEYEAYiHyAWfCABKQOIASIhfCIIhUEQEAYiFjcDYCABIBYgHXwiHTcDQCABIB0gH4VB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IAIgBSATcyIFakEHEAggCnMiCiAFakEJEAggB3MiECAKakENEAggAnMiEiAQakESEAggBXMhBSAEIBRzIgQgC2pBBxAIIBVzIgIgBGpBCRAIIAhzIgggAmpBDRAIIAtzIgsgCGpBEhAIIARzIQQgAyAWcyIDIAFqQQcQCCAMcyIMIANqQQkQCCAJcyIJIAxqQQ0QCCABcyIBIAlqQRIQCCADcyEDIAYgF3MiBiAOakEHEAggEXMiByAGakEJEAggDXMiDSAHakENEAggDnMiDiANakESEAggBnMhBiAPQQJLIREgD0F+aiEPIBENAAsgACAFEAogAEEEaiAEEAogAEEIaiADEAogAEEMaiAGEAogAEEQaiACEAogAEEUaiAIEAogAEEYaiAJEAogAEEcaiABEApBAAsEAEEICygAIAJCgICAgBBaBEAQFAALIAAgASACIAMgBCAFQfCXAigCABEUABoLJAAgAUKAgICAEFoEQBAUAAsgACABIAIgA0HolwIoAgAREQAaCxkAIAAgASACIANCACAEQeCXAigCABEVABoLEAAgACABQdiXAigCABECAAsrAQJ/IwBBEGsiACQAIABBADoAD0GACCAAQQ9qQQAQASEBIABBEGokACABC5USAR5+IAAQDyEQIAA1AAIhESAAQQVqEA8hEiAANQAHIRkgADUACiEaIABBDWoQDyEbIAA1AA8hCyAAQRJqEA8hCiAAQRVqEA8hCCAANQAXIQUgAEEaahAPIQEgADUAHCEcIAA1AB8hEyAAQSJqEA8hFCAANQAkIQwgAEEnahAPIQ8gAEEqahAPIQkgADUALCEGIAAgAEEvahAPQgKIQv///wCDIgJC0asIfiABQgKIQv///wCDfCAANQAxQgeIQv///wCDIgFC04xDfnwgADUANEIEiEL///8AgyIDQuf2J358IABBN2oQD0IBiEL///8AgyIEQpjaHH58IAA1ADlCBohC////AIMiB0KT2Ch+fCIVIAZCBYhC////AIMgADUAPEIDiCIGQoOhVn4gCUL///8Ag3wiDUKAgEB9Ig5CFYd8IglCg6FWfnwgAkLTjEN+IAVCBYhC////AIN8IAFC5/YnfnwgA0KY2hx+fCAEQpPYKH58IAJC5/YnfiAIQv///wCDfCABQpjaHH58IANCk9gofnwiBUKAgEB9IhZCFYh8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QhCIQh+DIAFC////AIMiAUIFhoQ8ABcgACAIQv///wCDIANCFYd8IgJCEYg8AB8gACACQgmIPAAeIAAgAkIBiDwAHSAAIANC////AIMiA0IChiABQhOIhDwAGiAAIAJCB4YgA0IOiIQ8ABwL2gEBBX8jAEEQayIDQQA2AAsgA0EANgIIA0AgACACai0AACEEQQAhAQNAIANBCGogAWoiBSAFLQAAIAFBBXRBoBlqIAJqLQAAIARzcjoAACABQQFqIgFBB0cNAAsgAkEBaiICQR9HDQALIAAtAB9B/wBxIQJBACEAQQAhAQNAIANBCGogAWoiBCAELQAAIAIgAUEFdEG/GWotAABzcjoAACABQQFqIgFBB0cNAAtBACEBA0AgA0EIaiAAai0AAEF/aiABciEBIABBAWoiAEEHRw0ACyABQQh2QQFxC54DAQV/IwBB0ANrIgIkAANAIANBAXQiBSACQZADamogASADai0AACIGQQ9xOgAAIAJBkANqIAVBAXJqIAZBBHY6AAAgA0EBaiIDQSBHDQALQQAhAwNAIAJBkANqIARqIgEgAS0AACADaiIBIAFBCGoiAUHwAXFrOgAAIAFBGHRBHHUhAyAEQQFqIgRBP0cNAAsgAiACLQDPAyADajoAzwMgABCqAUEBIQMDQCACIANBAXYgAkGQA2ogA2osAAAQqAEgAkHwAWogACACEHcgACACQfABahAVIANBPkkhASADQQJqIQMgAQ0ACyACQfABaiAAEE8gAkH4AGogAkHwAWoQUCACQfABaiACQfgAahA5IAJB+ABqIAJB8AFqEFAgAkHwAWogAkH4AGoQOSACQfgAaiACQfABahBQIAJB8AFqIAJB+ABqEDkgACACQfABahAVQQAhAwNAIAIgA0EBdiACQZADaiADaiwAABCoASACQfABaiAAIAIQdyAAIAJB8AFqEBUgA0E+SSEBIANBAmohAyABDQALIAJB0ANqJAALiwEBBH8jAEEwayIFJAAgACABQShqIgMgARATIABBKGoiBCADIAEQFiAAQdAAaiIDIAAgAhALIAQgBCACQShqEAsgAEH4AGoiBiACQdAAaiABQfgAahALIAUgAUHQAGoiASABEBMgACADIAQQFiAEIAMgBBATIAMgBSAGEBMgBiAFIAYQFiAFQTBqJAALXgEBfyMAQZABayICJAAg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ASEEA0AgAyIFQQFqIQMCQCAAIAVqIgYtAABFIAVB/gFLcg0AQQEhASAEQQUgBEEFSRtBAWohCSADIQIDQCABIQcCQCAAIAJqIgEsAAAiCEUNACAIIAd0IgggBiwAACIKaiILQQ9MBEAgBiALOgAAIAFBADoAAAwBCyAKIAhrIgFBcUgNAiAGIAE6AAADQCAAIAJqIgEtAABFBEAgAUEBOgAADAILIAFBADoAACACQf8BSSEBIAJBAWohAiABDQALCyAHQQFqIgEgBWohAiAHIAlHDQALCyAEQX9qIQQgA0GAAkcNAAsLlQEBBH8jAEEwayIFJAAgACABQShqIgMgARATIABBKGoiBCADIAEQFiAAQdAAaiIDIAAgAkEoahALIAQgBCACEAsgAEH4AGoiBiACQfgAaiABQfgAahALIAAgAUHQAGogAkHQAGoQCyAFIAAgABATIAAgAyAEEBYgBCADIAQQEyADIAUgBhAWIAYgBSAGEBMgBUEwaiQAC9QCAQN/IwBBoAJrIgIkACAAQShqIgMgARB6IABB0ABqIgQQHSACQfABaiADEAwgAkHAAWogAkHwAWpB0BAQCyACQfABaiACQfABaiAEEBYgAkHAAWogAkHAAWogBBATIAJBkAFqIAJBwAFqEAwgAkGQAWogAkGQAWogAkHAAWoQCyAAIAJBkAFqEAwgACAAIAJBwAFqEAsgACAAIAJB8AFqEAsgACAAELABIAAgACACQZABahALIAAgACACQfABahALIAJB4ABqIAAQDCACQeAAaiACQeAAaiACQcABahALIAJBMGogAkHgAGogAkHwAWoQFgJ/IAJBMGoQUkUEQCACIAJB4ABqIAJB8AFqEBNBfyACEFJFDQEaIAAgAEGAERALCyAAEK4BIAEtAB9BB3ZGBEAgACAAEHkLIABB+ABqIAAgAxALQQALIQAgAkGgAmokACAACyYBAX8jAEEgayIBJAAgASAAEC0gAS0AACEAIAFBIGokACAAQQFxC6oMAQZ/IAAgAWohBQJAAkAgACgCBCICQQFxDQAgAkEDcUUNASAAKAIAIgMgAWohASAAIANrIgBBmJgCKAIARwRAQZSYAigCACEEIANB/wFNBEAgACgCCCIEIANBA3YiA0EDdEGsmAJqRxogBCAAKAIMIgJGBEBBhJgCQYSYAigCAEF+IAN3cTYC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AkHgAGoQDEEBIQMDQCACQTBqIAJBMGoQDCADQQFqIgNBMkcNAAsgAkEwaiACQTBqIAJB4ABqEAsgAiACQTBqEAxBASEDA0AgAiACEAwgA0EBaiIDQeQARw0ACyACQTBqIAIgAkEwahALIAJBMGogAkEwahAMQQEhAwNAIAJBMGogAkEwahAMIANBAWoiA0EyRw0ACyACQeAAaiACQTBqIAJB4ABqEAsgAkHgAGogAkHgAGoQDCACQeAAaiACQeAAahAMIAAgAkHgAGogARALIAJBkAFqJAALKgACfwJ/QTBBgH8gAUkNARogARC0ASIBRQsEQEEwDwsgACABNgIAQQALC84CAQl/IAAgASgCICICIAEoAhwiAyABKAIYIgQgASgCFCIFIAEoAhAiBiABKAIMIgcgASgCCCIIIAEoAgQiCSABKAIAIgogASgCJCIBQRNsQYCAgAhqQRl2akEadWpBGXVqQRp1akEZdWpBGnVqQRl1akEadWpBGXVqQRp1IAFqQRl1QRNsIApqIgpB////H3E2AgAgACAJIApBGnVqIglB////D3E2AgQgACAIIAlBGXVqIghB////H3E2AgggACAHIAhBGnVqIgdB////D3E2AgwgACAGIAdBGXVqIgZB////H3E2AhAgACAFIAZBGnVqIgVB////D3E2AhQgACAEIAVBGXVqIgRB////H3E2AhggACADIARBGnVqIgNB////D3E2AhwgACACIANBGXVqIgJB////H3E2AiAgACABIAJBGnVqQf///w9xNgIkCwoAIAAgARB7QQAL1wIBBn9BgH8gAE0EQEGAmAJBMDYCAEEADwtBECAAQQtqQXhxIABBC0kbIgNBzABqECAiAEUEQEEADwsgAEF4aiEBAkAgAEE/cUUEQCABIQAMAQsgAEF8aiIFKAIAIgZBeHEgAEE/akFAcUF4aiIAIABBQGsgACABa0EPSxsiACABayICayEEIAZBA3FFBEAgASgCACEBIAAgBDYCBCAAIAEgAmo2AgAMAQsgACAEIAAoAgRBAXFyQQJyNgIEIAAgBGoiBCAEKAIEQQFyNgIEIAUgAiAFKAIAQQFxckECcjYCACAAIAAoAgRBAXI2AgQgASACEK8BCwJAIAAoAgQiAUEDcUUNACABQXhxIgIgA0EQak0NACAAIAMgAUEBcXJBAnI2AgQgACADaiIBIAIgA2siA0EDcjYCBCAAIAJqIgIgAigCBEEBcjYCBCABIAMQrwELIABBCGoLDAAgACABIAIQfEEACwoAIAAgARB9QQALKQEBfyMAQRBrIgQkACAEIAEgAiADEH4aIAAgBBA7IQAgBEEQaiQAIAALVgIBfwF+AkACf0EAIABFDQAaIACtIgKnIgEgAEEBckGAgARJDQAaQX8gASACQiCIpxsLIgEQICIARQ0AIABBfGotAABBA3FFDQAgAEEAIAEQEBoLIAALpgEBBH8jAEGACGsiAiQAIAEoAhwEQCAAQcQAaiEFIABBQGshBANAIARBABAKIAUgAxAKIAJBgAggAEHIABBWIAEoAgAoAgQgASgCGCADbEEKdGogAhCBASAEQQEQCiACQYAIIABByAAQViABKAIAKAIEIAEoAhggA2xBCnRqQYAIaiACEIEBIANBAWoiAyABKAIcSQ0ACwsgAkGACBAJIAJBgAhqJAAL8AMBAn8jACIDIQQgA0HAA2tBQHEiAyQAIABFIAFFckUEQCADQUBrQQBBAEHAABA+GiADQTxqIAEoAjAQCiADQUBrIANBPGpCBBAYGiADQTxqIAEoAgQQCiADQUBrIANBPGpCBBAYGiADQTxqIAEoAiwQCiADQUBrIANBPGpCBBAYGiADQTxqIAEoAigQCiADQUBrIANBPGpCBBAYGiADQTxqQRMQCiADQUBrIANBPGpCBBAYGiADQTxqIAIQCiADQUBrIANBPGpCBBAYGiADQTxqIAEoAgwQCiADQUBrIANBPGpCBBAYGgJAIAEoAggiAkUNACADQUBrIAIgATUCDBAYGiABLQA4QQFxRQ0AIAEoAgggASgCDBAJIAFBADYCDAsgA0E8aiABKAIUEAogA0FAayADQTxqQgQQGBogASgCECICBEAgA0FAayACIAE1AhQQGBoLIANBPGogASgCHBAKIANBQGsgA0E8akIEEBgaAkAgASgCGCICRQ0AIANBQGsgAiABNQIcEBgaIAEtADhBAnFFDQAgASgCGCABKAIcEAkgAUEANgIcCyADQTxqIAEoAiQQCiADQUBrIANBPGpCBBAYGiABKAIgIgIEQCADQUBrIAIgATUCJBAYGgsgA0FAayAAQcAAED0aCyAEJAALrwEBA38jAEEQayICJABBaiEDAkAgAEUgAUVyDQAg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chBaIAVBgAFqQQhyQgAQESAFQgA3A5gBIAVCADcDkAECQCADBEAgBUGAAWogAxDiAQwBCyAFQgA3A6gBIAVCADcDoAELAkAgBARAIAVBgAFqIAQQ1wEMAQsgBUIANwO4ASAFQgA3A7ABCyAAIAVBgAFqEFsgBUEgakEAQeAAEBAaIAAgBSACQSAQEiIAQoABEDIaIABBgAEQCSAAQcABaiQADwsQFAALEQAgACABrSACrUIghoQQvAILEgAgACABIAKtIAOtQiCGhBAcCxUAIAAgASACrSADrUIghoQgBBCFAQsXACAAIAEgAiADrSAErUIghoQgBRCHAQsXACAAIAEgAiADrSAErUIghoQgBRCDAgsXACAAIAEgAiADrSAErUIghoQgBRCEAgsVACAAIAEgAq0gA61CIIaEIAQQiQILJQAgACABIAIgAyAEIAWtIAatQiCGhCAHIAitIAmtQiCGhBCNAgslACAAIAEgAiADIAStIAWtQiCGhCAGIAetIAitQiCGhCAJEI4CCxcAIAAgASACrSADrUIghoQgBCAFELkCCxgAIAAgASACIAOtIAStQiCGhCAFIAYQagsXACAAIAEgAq0gA61CIIaEIAQgBRC6AgsYACAAIAEgAiADrSAErUIghoQgBSAGEGsLEwAgACABrSACrUIghoQgAxCRAgsTACAAIAEgAq0gA61CIIaEEJICCxYAIAAgASkAADcAMCAAIAEpAAg3ADgLIQAgACABIAKtIAOtQiCGhCAErSAFrUIghoQgBiAHEJMCCx8AIAAgASACrSADrUIghoQgBK0gBa1CIIaEIAYQiwELLQAgACABrSACrUIghoQgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCSAKEJQCCxcAIAAgASACrSADrUIghoQgBCAFELICCxIAIAAgASACrSADrUIghoQQNAsSACAAIAEgAq0gA61CIIaEECULGQAgACABIAIgA60gBK1CIIaEIAUgBhCTAQsXACAAIAEgAq0gA61CIIaEIAQgBRC0AgsVACAAIAEgAq0gA61CIIaEIAQQtQILGQAgACABIAKtIAOtQiCGhCAEIAUgBhCUAQsWACAAIAEpAAA3ACAgACABKQAINwAoCxcAIAAgASACrSADrUIghoQgBCAFELcCCxsAIAAgASACIAOtIAStQiCGhCAFIAYgBxCVAQsYACAAIAEgAiADrSAErUIghoQgBSAGEGgLGQAgACABIAKtIAOtQiCGhCAEIAUgBhCWAQsXACAAIAEgAq0gA61CIIaEIAQgBRC4AgsbACAAIAEgAiADrSAErUIghoQgBSAGIAcQlwELGAAgACABIAIgA60gBK1CIIaEIAUgBhBpCxUAIAAgASACrSADrUIghoQgBBC/AgsVACAAIAEgAq0gA61CIIaEIAQQmQELJQAgACABIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAkgChDIAgslACAAIAIgA60gBK1CIIaEIAUgBiAHrSAIrUIghoQgCSAKEJsBCyUAIAAgASACIAOtIAStQiCGhCAFIAatIAetQiCGhCAJIAoQygILJwAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEJwBCyUAIAAgASADIAStIAWtQiCGhCAGIAetIAitQiCGhCAJIAoQzgILJQAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChCdAQslACAAIAEgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCSAKEM8CCyUAIAAgAiADrSAErUIghoQgBSAGIAetIAitQiCGhCAJIAoQngELJQAgACABIAIgA60gBK1CIIaEIAUgBq0gB61CIIaEIAkgChDQAgsnACAAIAEgAiADIAStIAWtQiCGhCAGIAetIAitQiCGhCAKIAsQnwELJQAgACABIAIgA60gBK1CIIaEIAUgBq0gB61CIIaEIAkgChDRAgsnACAAIAEgAiADIAStIAWtQiCGhCAGIAetIAitQiCGhCAKIAsQoAELBABBCgsGAEGylwILCwAgACABIAIQgQILDQAgACABIAIgAxCCAgsIACAAEDVBAAsJACAAIAEQhwILCwAgACABIAIQiQELBQBBv38LBQBB0AELLAEBfyMAQUBqIgMkACAAIAMQJyABIANCwAAgAkEBEIYBIQAgA0FAayQAIAALLgEBfyMAQUBqIgQkACAAIAQQJyABIAIgBELAACADQQEQiAEhACAEQUBrJAAgAAt7AQF/AkACQAJAIANCwABUDQAgA0JAfCIDQr////8PVg0AIAIgAkFAayIFIAMgBBCFAUUNASAARQ0AIABBACADpxAQGgtBfyECIAFFDQEgAUIANwMAQX8P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ahATIANB4ABqIANBMGogA0HwAWoQCyADQcABaiADQcABaiADEAsgA0EwaiADEAwgAyADQfABahAMIANBkAFqIANB4ABqIANBwAFqEBMgA0HAAWogA0HgAGogA0HAAWoQFiADQfABaiADIANBMGoQCyADIAMgA0EwahAWIANBwAFqIANBwAFqEAwgA0HgAGogAxDdAiADQZABaiADQZABahAMIANBMGogA0EwaiADQeAAahATIANB4ABqIANBoAJqIANBwAFqEAsgA0HAAWogAyADQTBqEAsgASEEIAUNAAsgA0HwAWogA0GQAWogARBOIANBwAFqIANB4ABqIAEQTiADQcABaiADQcABahA6IANB8AFqIANB8AFqIANBwAFqEAsgACADQfABahAtQQAhBAsgA0HQAmokACAEC1QBBX9BICEBQQEhAgNAIAAgAUF/aiIBai0AACIEIAFBgBtqLQAAIgVrQQh1IAJxIANB/wFxciEDIAQgBXNB//8DakEIdiACcSECIAENAAsgA0EARwvoHgE6fiABEA8hEiABNQACIRMgAUEFahAPIRQgATUAByEVIAE1AAohFiABQQ1qEA8hFyABNQAPIREgAUESahAPIQ4gAUEVahAPIRAgATUAFyEIIAFBGmoQDyEEIAE1ABwhByACEA8hGCACNQACIRkgAkEFahAPIRogAjUAByEbIAI1AAohCiACQQ1qEA8hCSACNQAPIQsgAkESahAPIQ8gAkEVahAPIQwgAjUAFyENIAJBGmoQDyEFIAI1ABwhBiADEA8hMiADNQACITMgA0EFahAPITQgAzUAByE1IAM1AAohISADQQ1qEA8hLiADNQAPISggA0ESahAPISkgA0EVahAPISIgACAGQgeIIgYgBEICiEL///8AgyIEfiAFQgKIQv///wCDIgUgB0IHiCIHfnwgBCAFfiANQgWIQv///wCDIg0gB358IAYgCEIFiEL///8AgyIIfnwiH0KAgEB9IiBCFYd8IiNCgIBAfSIcQhWHIAYgB34iJCAkQoCAQH0iJUKAgIB/g318IiRCg6FWfiAlQhWHIiVC0asIfnwgCUIBiEL///8AgyIJIAR+IApCBIhC////AIMiCiAHfnwgC0IGiEL///8AgyILIAh+fCAMQv///wCDIgwgDkIDiEL///8AgyIOfnwgD0IDiEL///8A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wAJqEBUgAkGABWoiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkGgBmoiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkHAB2oiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkHgCGoiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkGACmoiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkGgC2oiASACQaABahAbIAJBwAJqIAIgARAaIAJBoAFqIAJBwAJqEBUgAkHADGogAkGgAWoQGyAAEKoBQfwBIQEDQCACQcACaiAAEE8CQCABIgNBoIsCaiwAACIBQQFOBEAgAkGgAWogAkHAAmoQFSACQcACaiACQaABaiACQeADaiABQf4BcUEBdkGgAWxqEBoMAQsgAUF/Sg0AIAJBoAFqIAJBwAJqEBUgAkHAAmogAkGgAWogAkHgA2pBACABa0H+AXFBAXZBoAFsahCsAQsgACACQcACahAVIANBf2ohASADDQALIAJB4A1qJAALJQEBfyMAQaABayIBJAAgASAAEOMCIAEQUiEAIAFBoAFqJAAgAAvwAQECfyMAQYABayIDJAAgABAdIABBKGoQHSAAQdAAahA4IAAgASACQQAgAkGAAXFBB3YiBGsgAnFBAXRrQRh0QRh1IgJBARApECYgACABQfgAaiACQQIQKRAmIAAgAUHwAWogAkEDECkQJiAAIAFB6AJqIAJBBBApECYgACABQeADaiACQQUQKRAmIAAgAUHYBGogAkEGECkQJiAAIAFB0AVqIAJBBxApECYgACABQcgGaiACQQgQKRAmIANBCGogAEEoahAsIANBMGogABAsIANB2ABqIABB0ABqEHkgACADQQhqIAQQJiADQYABaiQAC+kGAgl/HH4gACABKAIMIgRBAXSsIhEgASgCBCIFQQF0rCILfiABKAIIIgasIhYgFn58IAEoAhAiB6wiECABKAIAIghBAXSsIg5+fCABKAIcIgJBJmysIhcgAqwiGn58IAEoAiAiCUETbKwiDCABKAIYIgNBAXSsfnwgASgCJCIKQSZsrCINIAEoAhQiAUEBdKwiEn58QgGGIh5CgICAEHwiH0Ia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IHZhciB3aW5kb3dfID0gJ29iamVjdCcgPT09IHR5cGVvZiB3aW5kb3cgPyB3aW5kb3cgOiBzZWxmOyB2YXIgY3J5cHRvXyA9IHR5cGVvZiB3aW5kb3dfLmNyeXB0byAhPT0gJ3VuZGVmaW5lZCcgPyB3aW5kb3dfLmNyeXB0byA6IHdpbmRvd18ubXNDcnlwdG87IHZhciByYW5kb21WYWx1ZXNTdGFuZGFyZCA9IGZ1bmN0aW9uKCkgeyB2YXIgYnVmID0gbmV3IFVpbnQzMkFycmF5KDEpOyBjcnlwdG9fLmdldFJhbmRvbVZhbHVlcyhidWYpOyByZXR1cm4gYnVmWzBdID4+PiAwOyB9OyByYW5kb21WYWx1ZXNTdGFuZGFyZCgpOyBNb2R1bGUuZ2V0UmFuZG9tVmFsdWUgPSByYW5kb21WYWx1ZXNTdGFuZGFyZDsgfSBjYXRjaCAoZSkgeyB0cnkgeyB2YXIgY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7IHZhciByYW5kb21WYWx1ZU5vZGVKUyA9IGZ1bmN0aW9uKCkgeyB2YXIgYnVmID0gY3J5cHRvWydyYW5kb21CeXRlcyddKDQpOyByZXR1cm4gKGJ1ZlswXSA8PCAyNCB8IGJ1ZlsxXSA8PCAxNiB8IGJ1ZlsyXSA8PCA4IHwgYnVmWzNdKSA+Pj4gMDsgfTsgcmFuZG9tVmFsdWVOb2RlSlMoKTsgTW9kdWxlLmdldFJhbmRvbVZhbHVlID0gcmFuZG9tVmFsdWVOb2RlSlM7IH0gY2F0Y2ggKGUpIHsgdGhyb3cgJ05vIHNlY3VyZSByYW5kb20gbnVtYmVyIGdlbmVyYXRvciBmb3VuZCc7IH0gfSB9IH0ATGlic29kaXVtRFJHYnVmX2xlbiA8PSBTSVpFX01BWAByYW5kb21ieXRlcy9yYW5kb21ieXRlcy5jAHJhbmRvbWJ5dGVzAFMtPmJ1ZmxlbiA8PSBCTEFLRTJCX0JMT0NLQllURVMAY3J5cHRvX2dlbmVyaWNoYXNoL2JsYWtlMmIvcmVmL2JsYWtlMmItcmVmLmMAYmxha2UyYl9maW5hbAAAAAAAAAAACMm882fmCWo7p8qEha5nuyv4lP5y82488TYdXzr1T6XRguatf1IOUR9sPiuMaAWba71B+6vZgx95IX4TGc3gW291dGxlbiA8PSBVSU5UOF9NQVgAY3J5cHRvX2dlbmVyaWNoYXNoL2JsYWtlMmIvcmVmL2dlbmVyaWNoYXNoX2JsYWtlMmIuYwBjcnlwdG9fZ2VuZXJpY2hhc2hfYmxha2UyYl9maW5hbAAAAAAAAAC2eFn/hXLTAL1uFf8PCmoAKcABAJjoef+8PKD/mXHO/wC34v60DUj/AAAAAAAAAACwoA7+08mG/54YjwB/aTUAYAy9AKfX+/+fTID+amXh/x78BACSDK4AQbARCydZ8bL+CuWm/3vdKv4eFNQAUoADADDR8wB3eUD/MuOc/wBuxQFnG5AAQeARC8AHhTuMAb3xJP/4JcMBYNw3ALdMPv/DQj0AMkykAeGkTP9MPaP/dT4fAFGRQP92QQ4AonPW/waKLgB85vT/CoqPADQawgC49EwAgY8pAb70E/97qnr/YoFEAHnVkwBWZR7/oWebAIxZQ//v5b4BQwu1AMbwif7uRbz/Q5fuABMqbP/lVXEBMkSH/xFqCQAyZwH/UAGoASOYHv8QqLkBOFno/2XS/AAp+kcAzKpP/w4u7/9QTe8AvdZL/xGN+QAmUEz/vlV1AFbkqgCc2NABw8+k/5ZCTP+v4RD/jVBiAUzb8gDGonIALtqYAJsr8f6boGj/M7ulAAIRrwBCVKAB9zoeACNBNf5F7L8ALYb1AaN73QAgbhT/NBelALrWRwDpsGAA8u82ATlZigBTAFT/iKBkAFyOeP5ofL4AtbE+//opVQCYgioBYPz2AJeXP/7vhT4AIDicAC2nvf+OhbMBg1bTALuzlv76qg7/0qNOACU0lwBjTRoA7pzV/9XA0QFJLlQAFEEpATbOTwDJg5L+qm8Y/7EhMv6rJsv/Tvd0ANHdmQCFgLIBOiwZAMknOwG9E/wAMeXSAXW7dQC1s7gBAHLbADBekwD1KTgAfQ3M/vStdwAs3SD+VOoUAPmgxgHsfur/L2Oo/qrimf9ms9gA4o16/3pCmf629YYA4+QZAdY56//YrTj/tefSAHeAnf+BX4j/bn4zAAKpt/8HgmL+RbBe/3QE4wHZ8pH/yq0fAWkBJ/8ur0UA5C86/9fgRf7POEX/EP6L/xfP1P/KFH7/X9Vg/wmwIQDIBc//8SqA/iMhwP/45cQBgRF4APtnl/8HNHD/jDhC/yji9f/ZRiX+rNYJ/0hDhgGSwNb/LCZwAES4S//OWvsAleuNALWqOgB09O8AXJ0CAGatYgDpiWABfzHLAAWblAAXlAn/03oMACKGGv/bzIgAhggp/+BTK/5VGfcAbX8A/qmIMADud9v/563VAM4S/v4Iugf/fgkHAW8qSABvNOz+YD+NAJO/f/7NTsD/DmrtAbvbTACv87v+aVmtAFUZWQGi85QAAnbR/iGeCQCLoy7/XUYoAGwqjv5v/I7/m9+QADPlp/9J/Jv/XnQM/5ig2v+c7iX/s+rP/8UAs/+apI0A4cRoAAojGf7R1PL/Yf3e/rhl5QDeEn8BpIiH/x7PjP6SYfMAgcAa/slUIf9vCk7/k1Gy/wQEGACh7tf/Bo0hADXXDv8ptdD/54udALPL3f//uXEAveKs/3FC1v/KPi3/ZkAI/06uEP6FdUT/AEHAGQsBAQBB4BkLsAEm6JWPwrInsEXD9Iny75jw1d+sBdPGMzmxOAKIbVP8BccXanA9TdhPujwLdg0QZw8qIFP6LDnMxk7H/XeSrAN67P///////////////////////////////////////3/t////////////////////////////////////////f+7///////////////////////////////////////9/7dP1XBpjEljWnPei3vneFABBnxsL/PABEIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/+pxPP8l/zn/RbK2/oDQswB2Gn3+AwfW//EyTf9Vy8X/04f6/xkwZP+71bT+EVhpAFPRngEFc2IABK48/qs3bv/ZtRH/FLyqAJKcZv5X1q7/cnqbAeksqgB/CO8B1uzqAK8F2wAxaj3/BkLQ/wJqbv9R6hP/12vA/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/7IJ/P5kbtQADgWnAOnvo/8cl50BZZIK//6e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";function yA(){try{if(s)return new Uint8Array(s);var A=NA(fA);if(A)return A;if(e)return e(fA);throw"both async and sync fetching of the wasm failed"}catch(A){iA(A)}}function sA(){return s||!i&&!n||"function"!=typeof fetch||eA(fA)?new Promise(function(A,I){A(yA())}):fetch(fA,{credentials:"same-origin"}).then(function(A){if(!A.ok)throw"failed to load wasm binary file at '"+fA+"'";return A.arrayBuffer()}).catch(function(){return yA()})}function wA(){var A={a:MA};function I(A,I){var g=A.exports;C.asm=g,EA()}function g(A){I(A.instance)}function B(I){return sA().then(function(I){return WebAssembly.instantiate(I,A)}).then(I,function(A){h("failed to asynchronously prepare wasm: "+A),iA(A)})}if(QA(),C.instantiateWasm)try{return C.instantiateWasm(A,I)}catch(A){return h("Module.instantiateWasm callback failed with error: "+A),!1}return function(){if(s||"function"!=typeof WebAssembly.instantiateStreaming||rA(fA)||eA(fA)||"function"!=typeof fetch)return B(g);fetch(fA,{credentials:"same-origin"}).then(function(I){return WebAssembly.instantiateStreaming(I,A).then(g,function(A){return h("wasm streaming compile failed: "+A),h("falling back to ArrayBuffer instantiation"),B(g)})})}(),{}}rA(fA)||(fA=y(fA));var hA={1024:function(){return C.getRandomValue()},1062:function(){if(void 0===C.getRandomValue)try{var A="object"==typeof window?window:self,I=void 0!==A.crypto?A.crypto:A.msCrypto,g=function(){var A=new Uint32Array(1);return I.getRandomValues(A),A[0]>>>0};g(),C.getRandomValue=g}catch(A){try{var B=require("crypto"),Q=function(){var A=B.randomBytes(4);return(A[0]<<24|A[1]<<16|A[2]<<8|A[3])>>>0};Q(),C.getRandomValue=Q}catch(A){throw"No secure random number generator found"}}}};function DA(A,I,g){var B=bA(I,g);return hA[A].apply(null,B)}function uA(A,I,g,B){iA("Assertion failed: "+_(A)+", at: "+[I?_(I):"unknown filename",g,B?_(B):"unknown function"])}function pA(){iA()}function lA(A,I,g){b.copyWithin(A,I,I+g)}function FA(){return b.length}function GA(A){try{return w.grow(A-H.byteLength+65535>>>16),M(w.buffer),1}catch(A){}}function kA(A){A>>>=0;var I=FA();if(A>2147483648)return!1;for(var g=1;g<=4;g*=2){var B=I*(1+.2/g);if(B=Math.min(B,A+100663296),GA(Math.min(2147483648,R(Math.max(16777216,A,B),65536))))return!0}return!1}function _A(A){return U[PA()>>2]=A,A}function HA(A){switch(A){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:case 79:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return _A(28),-1}K.push({func:function(){dA()}});var YA=[];function bA(A,I){var g;for(YA.length=0,I>>=2;g=b[A++];){var B=g<105;B&&1&I&&I++,YA.push(B?S[I++>>1]:U[I]),++I}return YA}var mA=!1;function UA(A){for(var I=[],g=0;g255&&(mA&&F(!1,"Character code "+B+" ("+String.fromCharCode(B)+") at offset "+g+" not in 0x00-0xFF."),B&=255),I.push(String.fromCharCode(B))}return I.join("")}var vA="function"==typeof atob?atob:function(A){var I,g,B,C,Q,E,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",a=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{I=i.indexOf(A.charAt(a++))<<2|(C=i.indexOf(A.charAt(a++)))>>4,g=(15&C)<<4|(Q=i.indexOf(A.charAt(a++)))>>2,B=(3&Q)<<6|(E=i.indexOf(A.charAt(a++))),n+=String.fromCharCode(I),64!==Q&&(n+=String.fromCharCode(g)),64!==E&&(n+=String.fromCharCode(B))}while(a0||(V(),gA>0||(C.setStatus?(C.setStatus("Running..."),setTimeout(function(){setTimeout(function(){C.setStatus("")},1),I()},1)):I()))}if(C._malloc=function(){return(C._malloc=C.asm.zc).apply(null,arguments)},C._free=function(){return(C._free=C.asm.Ac).apply(null,arguments)},C.setValue=D,C.getValue=u,C.UTF8ToString=_,CA=function A(){RA||JA(),RA||(CA=A)},C.run=JA,C.preInit)for("function"==typeof C.preInit&&(C.preInit=[C.preInit]);C.preInit.length>0;)C.preInit.pop()();JA()}).catch(function(){B.useBackupModule()}),"object"==typeof process&&"function"==typeof process.removeAllListeners&&(process.removeAllListeners("uncaughtException"),process.removeAllListeners("unhandledRejection")),I}"function"==typeof define&&define.amd?define(["exports"],I):"object"==typeof exports&&"string"!=typeof exports.nodeName?I(exports):A.libsodium=I(A.libsodium_mod||(A.commonJsStrict={}))}(this)}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/libsodium/dist/modules")},{_process:267,buffer:185,crypto:200,fs:141,path:260}],250:[function(require,module,exports){"use strict";var inherits=require("inherits");var HashBase=require("hash-base");var Buffer=require("safe-buffer").Buffer;var ARRAY16=new Array(16);function MD5(){HashBase.call(this,64);this._a=1732584193;this._b=4023233417;this._c=2562383102;this._d=271733878}inherits(MD5,HashBase);MD5.prototype._update=function(){var M=ARRAY16;for(var i=0;i<16;++i)M[i]=this._block.readInt32LE(i*4);var a=this._a;var b=this._b;var c=this._c;var d=this._d;a=fnF(a,b,c,d,M[0],3614090360,7);d=fnF(d,a,b,c,M[1],3905402710,12);c=fnF(c,d,a,b,M[2],606105819,17);b=fnF(b,c,d,a,M[3],3250441966,22);a=fnF(a,b,c,d,M[4],4118548399,7);d=fnF(d,a,b,c,M[5],1200080426,12);c=fnF(c,d,a,b,M[6],2821735955,17);b=fnF(b,c,d,a,M[7],4249261313,22);a=fnF(a,b,c,d,M[8],1770035416,7);d=fnF(d,a,b,c,M[9],2336552879,12);c=fnF(c,d,a,b,M[10],4294925233,17);b=fnF(b,c,d,a,M[11],2304563134,22);a=fnF(a,b,c,d,M[12],1804603682,7);d=fnF(d,a,b,c,M[13],4254626195,12);c=fnF(c,d,a,b,M[14],2792965006,17);b=fnF(b,c,d,a,M[15],1236535329,22);a=fnG(a,b,c,d,M[1],4129170786,5);d=fnG(d,a,b,c,M[6],3225465664,9);c=fnG(c,d,a,b,M[11],643717713,14);b=fnG(b,c,d,a,M[0],3921069994,20);a=fnG(a,b,c,d,M[5],3593408605,5);d=fnG(d,a,b,c,M[10],38016083,9);c=fnG(c,d,a,b,M[15],3634488961,14);b=fnG(b,c,d,a,M[4],3889429448,20);a=fnG(a,b,c,d,M[9],568446438,5);d=fnG(d,a,b,c,M[14],3275163606,9);c=fnG(c,d,a,b,M[3],4107603335,14);b=fnG(b,c,d,a,M[8],1163531501,20);a=fnG(a,b,c,d,M[13],2850285829,5);d=fnG(d,a,b,c,M[2],4243563512,9);c=fnG(c,d,a,b,M[7],1735328473,14);b=fnG(b,c,d,a,M[12],2368359562,20);a=fnH(a,b,c,d,M[5],4294588738,4);d=fnH(d,a,b,c,M[8],2272392833,11);c=fnH(c,d,a,b,M[11],1839030562,16);b=fnH(b,c,d,a,M[14],4259657740,23);a=fnH(a,b,c,d,M[1],2763975236,4);d=fnH(d,a,b,c,M[4],1272893353,11);c=fnH(c,d,a,b,M[7],4139469664,16);b=fnH(b,c,d,a,M[10],3200236656,23);a=fnH(a,b,c,d,M[13],681279174,4);d=fnH(d,a,b,c,M[0],3936430074,11);c=fnH(c,d,a,b,M[3],3572445317,16);b=fnH(b,c,d,a,M[6],76029189,23);a=fnH(a,b,c,d,M[9],3654602809,4);d=fnH(d,a,b,c,M[12],3873151461,11);c=fnH(c,d,a,b,M[15],530742520,16);b=fnH(b,c,d,a,M[2],3299628645,23);a=fnI(a,b,c,d,M[0],4096336452,6);d=fnI(d,a,b,c,M[7],1126891415,10);c=fnI(c,d,a,b,M[14],2878612391,15);b=fnI(b,c,d,a,M[5],4237533241,21);a=fnI(a,b,c,d,M[12],1700485571,6);d=fnI(d,a,b,c,M[3],2399980690,10);c=fnI(c,d,a,b,M[10],4293915773,15);b=fnI(b,c,d,a,M[1],2240044497,21);a=fnI(a,b,c,d,M[8],1873313359,6);d=fnI(d,a,b,c,M[15],4264355552,10);c=fnI(c,d,a,b,M[6],2734768916,15);b=fnI(b,c,d,a,M[13],1309151649,21);a=fnI(a,b,c,d,M[4],4149444226,6);d=fnI(d,a,b,c,M[11],3174756917,10);c=fnI(c,d,a,b,M[2],718787259,15);b=fnI(b,c,d,a,M[9],3951481745,21);this._a=this._a+a|0;this._b=this._b+b|0;this._c=this._c+c|0;this._d=this._d+d|0};MD5.prototype._digest=function(){this._block[this._blockOffset++]=128;if(this._blockOffset>56){this._block.fill(0,this._blockOffset,64);this._update();this._blockOffset=0}this._block.fill(0,this._blockOffset,56);this._block.writeUInt32LE(this._length[0],56);this._block.writeUInt32LE(this._length[1],60);this._update();var buffer=Buffer.allocUnsafe(16);buffer.writeInt32LE(this._a,0);buffer.writeInt32LE(this._b,4);buffer.writeInt32LE(this._c,8);buffer.writeInt32LE(this._d,12);return buffer};function rotl(x,n){return x<>>32-n}function fnF(a,b,c,d,m,k,s){return rotl(a+(b&c|~b&d)+m+k|0,s)+b|0}function fnG(a,b,c,d,m,k,s){return rotl(a+(b&d|c&~d)+m+k|0,s)+b|0}function fnH(a,b,c,d,m,k,s){return rotl(a+(b^c^d)+m+k|0,s)+b|0}function fnI(a,b,c,d,m,k,s){return rotl(a+(c^(b|~d))+m+k|0,s)+b|0}module.exports=MD5},{"hash-base":230,inherits:245,"safe-buffer":293}],251:[function(require,module,exports){var bn=require("bn.js");var brorand=require("brorand");function MillerRabin(rand){this.rand=rand||new brorand.Rand}module.exports=MillerRabin;MillerRabin.create=function create(rand){return new MillerRabin(rand)};MillerRabin.prototype._randbelow=function _randbelow(n){var len=n.bitLength();var min_bytes=Math.ceil(len/8);do{var a=new bn(this.rand.generate(min_bytes))}while(a.cmp(n)>=0);return a};MillerRabin.prototype._randrange=function _randrange(start,stop){var size=stop.sub(start);return start.add(this._randbelow(size))};MillerRabin.prototype.test=function test(n,k,cb){var len=n.bitLength();var red=bn.mont(n);var rone=new bn(1).toRed(red);if(!k)k=Math.max(1,len/48|0);var n1=n.subn(1);for(var s=0;!n1.testn(s);s++){}var d=n.shrn(s);var rn1=n1.toRed(red);var prime=true;for(;k>0;k--){var a=this._randrange(new bn(2),n1);if(cb)cb(a);var x=a.toRed(red).redPow(d);if(x.cmp(rone)===0||x.cmp(rn1)===0)continue;for(var i=1;i0;k--){var a=this._randrange(new bn(2),n1);var g=n.gcd(a);if(g.cmpn(1)!==0)return g;var x=a.toRed(red).redPow(d);if(x.cmp(rone)===0||x.cmp(rn1)===0)continue;for(var i=1;i>8;var lo=c&255;if(hi)res.push(hi,lo);else res.push(lo)}}return res}utils.toArray=toArray;function zero2(word){if(word.length===1)return"0"+word;else return word}utils.zero2=zero2;function toHex(msg){var res="";for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}exports.resolve=function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:process.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){continue}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=normalizeArray(filter(resolvedPath.split("/"),function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."};exports.normalize=function(path){var isAbsolute=exports.isAbsolute(path),trailingSlash=substr(path,-1)==="/";path=normalizeArray(filter(path.split("/"),function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path};exports.isAbsolute=function(path){return path.charAt(0)==="/"};exports.join=function(){var paths=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(paths,function(p,index){if(typeof p!=="string"){throw new TypeError("Arguments to path.join must be strings")}return p}).join("/"))};exports.relative=function(from,to){from=exports.resolve(from).substr(1);to=exports.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i=1;--i){code=path.charCodeAt(i);if(code===47){if(!matchedSlash){end=i;break}}else{matchedSlash=false}}if(end===-1)return hasRoot?"/":".";if(hasRoot&&end===1){return"/"}return path.slice(0,end)};function basename(path){if(typeof path!=="string")path=path+"";var start=0;var end=-1;var matchedSlash=true;var i;for(i=path.length-1;i>=0;--i){if(path.charCodeAt(i)===47){if(!matchedSlash){start=i+1;break}}else if(end===-1){matchedSlash=false;end=i+1}}if(end===-1)return"";return path.slice(start,end)}exports.basename=function(path,ext){var f=basename(path);if(ext&&f.substr(-1*ext.length)===ext){f=f.substr(0,f.length-ext.length)}return f};exports.extname=function(path){if(typeof path!=="string")path=path+"";var startDot=-1;var startPart=0;var end=-1;var matchedSlash=true;var preDotState=0;for(var i=path.length-1;i>=0;--i){var code=path.charCodeAt(i);if(code===47){if(!matchedSlash){startPart=i+1;break}continue}if(end===-1){matchedSlash=false;end=i+1}if(code===46){if(startDot===-1)startDot=i;else if(preDotState!==1)preDotState=1}else if(startDot!==-1){preDotState=-1}}if(startDot===-1||end===-1||preDotState===0||preDotState===1&&startDot===end-1&&startDot===startPart+1){return""}return path.slice(startDot,end)};function filter(xs,f){if(xs.filter)return xs.filter(f);var res=[];for(var i=0;i=6?"utf-8":"binary"}module.exports=defaultEncoding}).call(this,require("_process"))},{_process:267}],264:[function(require,module,exports){(function(Buffer){var MAX_ALLOC=Math.pow(2,30)-1;function checkBuffer(buf,name){if(typeof buf!=="string"&&!Buffer.isBuffer(buf)){throw new TypeError(name+" must be a buffer or string")}}module.exports=function(password,salt,iterations,keylen){checkBuffer(password,"Password");checkBuffer(salt,"Salt");if(typeof iterations!=="number"){throw new TypeError("Iterations not a number")}if(iterations<0){throw new TypeError("Bad iterations")}if(typeof keylen!=="number"){throw new TypeError("Key length not a number")}if(keylen<0||keylen>MAX_ALLOC||keylen!==keylen){throw new TypeError("Bad key length")}}}).call(this,{isBuffer:require("../../insert-module-globals/node_modules/is-buffer/index.js")})},{"../../insert-module-globals/node_modules/is-buffer/index.js":246}],265:[function(require,module,exports){var md5=require("create-hash/md5");var RIPEMD160=require("ripemd160");var sha=require("sha.js");var checkParameters=require("./precondition");var defaultEncoding=require("./default-encoding");var Buffer=require("safe-buffer").Buffer;var ZEROS=Buffer.alloc(128);var sizes={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function Hmac(alg,key,saltLen){var hash=getDigest(alg);var blocksize=alg==="sha512"||alg==="sha384"?128:64;if(key.length>blocksize){key=hash(key)}else if(key.length1){for(var i=1;ik||new BN(enc).cmp(key.modulus)>=0){throw new Error("decryption error")}var msg;if(reverse){msg=withPublic(new BN(enc),key)}else{msg=crt(enc,key)}var zBuffer=Buffer.alloc(k-msg.length);msg=Buffer.concat([zBuffer,msg],k);if(padding===4){return oaep(key,msg)}else if(padding===1){return pkcs1(key,msg,reverse)}else if(padding===3){return msg}else{throw new Error("unknown padding")}};function oaep(key,msg){var k=key.modulus.byteLength();var iHash=createHash("sha1").update(Buffer.alloc(0)).digest();var hLen=iHash.length;if(msg[0]!==0){throw new Error("decryption error")}var maskedSeed=msg.slice(1,hLen+1);var maskedDb=msg.slice(hLen+1);var seed=xor(maskedSeed,mgf(maskedDb,hLen));var db=xor(maskedDb,mgf(seed,k-hLen-1));if(compare(iHash,db.slice(0,hLen))){throw new Error("decryption error")}var i=hLen;while(db[i]===0){i++}if(db[i++]!==1){throw new Error("decryption error")}return db.slice(i)}function pkcs1(key,msg,reverse){var p1=msg.slice(0,2);var i=2;var status=0;while(msg[i++]!==0){if(i>=msg.length){status++;break}}var ps=msg.slice(2,i-1);if(p1.toString("hex")!=="0002"&&!reverse||p1.toString("hex")!=="0001"&&reverse){status++}if(ps.length<8){status++}if(status){throw new Error("decryption error")}return msg.slice(i)}function compare(a,b){a=Buffer.from(a);b=Buffer.from(b);var dif=0;var len=a.length;if(a.length!==b.length){dif++;len=Math.min(a.length,b.length)}var i=-1;while(++i=0){throw new Error("data too long for modulus")}}else{throw new Error("unknown padding")}if(reverse){return crt(paddedMsg,key)}else{return withPublic(paddedMsg,key)}};function oaep(key,msg){var k=key.modulus.byteLength();var mLen=msg.length;var iHash=createHash("sha1").update(Buffer.alloc(0)).digest();var hLen=iHash.length;var hLen2=2*hLen;if(mLen>k-hLen2-2){throw new Error("message too long")}var ps=Buffer.alloc(k-mLen-hLen2-2);var dblen=k-hLen-1;var seed=randomBytes(hLen);var maskedDb=xor(Buffer.concat([iHash,ps,Buffer.alloc(1,1),msg],dblen),mgf(seed,dblen));var maskedSeed=xor(seed,mgf(maskedDb,hLen));return new BN(Buffer.concat([Buffer.alloc(1),maskedSeed,maskedDb],k))}function pkcs1(key,msg,reverse){var mLen=msg.length;var k=key.modulus.byteLength();if(mLen>k-11){throw new Error("message too long")}var ps;if(reverse){ps=Buffer.alloc(k-mLen-3,255)}else{ps=nonZero(k-mLen-3)}return new BN(Buffer.concat([Buffer.from([0,reverse?1:2]),ps,Buffer.alloc(1),msg],k))}function nonZero(len){var out=Buffer.allocUnsafe(len);var i=0;var cache=randomBytes(len*2);var cur=0;var num;while(i=7){setupTypeNumber(test)}if(_dataCache==null){_dataCache=createData(_typeNumber,_errorCorrectionLevel,_dataList)}mapData(_dataCache,maskPattern)};var setupPositionProbePattern=function(row,col){for(var r=-1;r<=7;r+=1){if(row+r<=-1||_moduleCount<=row+r)continue;for(var c=-1;c<=7;c+=1){if(col+c<=-1||_moduleCount<=col+c)continue;if(0<=r&&r<=6&&(c==0||c==6)||0<=c&&c<=6&&(r==0||r==6)||2<=r&&r<=4&&2<=c&&c<=4){_modules[row+r][col+c]=true}else{_modules[row+r][col+c]=false}}}};var getBestMaskPattern=function(){var minLostPoint=0;var pattern=0;for(var i=0;i<8;i+=1){makeImpl(true,i);var lostPoint=QRUtil.getLostPoint(_this);if(i==0||minLostPoint>lostPoint){minLostPoint=lostPoint;pattern=i}}return pattern};var setupTimingPattern=function(){for(var r=8;r<_moduleCount-8;r+=1){if(_modules[r][6]!=null){continue}_modules[r][6]=r%2==0}for(var c=8;c<_moduleCount-8;c+=1){if(_modules[6][c]!=null){continue}_modules[6][c]=c%2==0}};var setupPositionAdjustPattern=function(){var pos=QRUtil.getPatternPosition(_typeNumber);for(var i=0;i>i&1)==1;_modules[Math.floor(i/3)][i%3+_moduleCount-8-3]=mod}for(var i=0;i<18;i+=1){var mod=!test&&(bits>>i&1)==1;_modules[i%3+_moduleCount-8-3][Math.floor(i/3)]=mod}};var setupTypeInfo=function(test,maskPattern){var data=_errorCorrectionLevel<<3|maskPattern;var bits=QRUtil.getBCHTypeInfo(data);for(var i=0;i<15;i+=1){var mod=!test&&(bits>>i&1)==1;if(i<6){_modules[i][8]=mod}else if(i<8){_modules[i+1][8]=mod}else{_modules[_moduleCount-15+i][8]=mod}}for(var i=0;i<15;i+=1){var mod=!test&&(bits>>i&1)==1;if(i<8){_modules[8][_moduleCount-i-1]=mod}else if(i<9){_modules[8][15-i-1+1]=mod}else{_modules[8][15-i-1]=mod}}_modules[_moduleCount-8][8]=!test};var mapData=function(data,maskPattern){var inc=-1;var row=_moduleCount-1;var bitIndex=7;var byteIndex=0;var maskFunc=QRUtil.getMaskFunction(maskPattern);for(var col=_moduleCount-1;col>0;col-=2){if(col==6)col-=1;while(true){for(var c=0;c<2;c+=1){if(_modules[row][col-c]==null){var dark=false;if(byteIndex>>bitIndex&1)==1}var mask=maskFunc(row,col-c);if(mask){dark=!dark}_modules[row][col-c]=dark;bitIndex-=1;if(bitIndex==-1){byteIndex+=1;bitIndex=7}}}row+=inc;if(row<0||_moduleCount<=row){row-=inc;inc=-inc;break}}}};var createBytes=function(buffer,rsBlocks){var offset=0;var maxDcCount=0;var maxEcCount=0;var dcdata=new Array(rsBlocks.length);var ecdata=new Array(rsBlocks.length);for(var r=0;r=0?modPoly.getAt(modIndex):0}}var totalCodeCount=0;for(var i=0;itotalDataCount*8){throw"code length overflow. ("+buffer.getLengthInBits()+">"+totalDataCount*8+")"}if(buffer.getLengthInBits()+4<=totalDataCount*8){buffer.put(0,4)}while(buffer.getLengthInBits()%8!=0){buffer.putBit(false)}while(true){if(buffer.getLengthInBits()>=totalDataCount*8){break}buffer.put(PAD0,8);if(buffer.getLengthInBits()>=totalDataCount*8){break}buffer.put(PAD1,8)}return createBytes(buffer,rsBlocks)};_this.addData=function(data,mode){mode=mode||"Byte";var newData=null;switch(mode){case"Numeric":newData=qrNumber(data);break;case"Alphanumeric":newData=qrAlphaNum(data);break;case"Byte":newData=qr8BitByte(data);break;case"Kanji":newData=qrKanji(data);break;default:throw"mode:"+mode}_dataList.push(newData);_dataCache=null};_this.isDark=function(row,col){if(row<0||_moduleCount<=row||col<0||_moduleCount<=col){throw row+","+col}return _modules[row][col]};_this.getModuleCount=function(){return _moduleCount};_this.make=function(){if(_typeNumber<1){var typeNumber=1;for(;typeNumber<40;typeNumber++){var rsBlocks=QRRSBlock.getRSBlocks(typeNumber,_errorCorrectionLevel);var buffer=qrBitBuffer();for(var i=0;i<_dataList.length;i++){var data=_dataList[i];buffer.put(data.getMode(),4);buffer.put(data.getLength(),QRUtil.getLengthInBits(data.getMode(),typeNumber));data.write(buffer)}var totalDataCount=0;for(var i=0;i";for(var c=0;c<_this.getModuleCount();c+=1){qrHtml+=''}qrHtml+=""}qrHtml+="";qrHtml+="";return qrHtml};_this.createSvgTag=function(cellSize,margin,alt,title){var opts={};if(typeof arguments[0]=="object"){opts=arguments[0];cellSize=opts.cellSize;margin=opts.margin;alt=opts.alt;title=opts.title}cellSize=cellSize||2;margin=typeof margin=="undefined"?cellSize*4:margin;alt=typeof alt==="string"?{text:alt}:alt||{};alt.text=alt.text||null;alt.id=alt.text?alt.id||"qrcode-description":null;title=typeof title==="string"?{text:title}:title||{};title.text=title.text||null;title.id=title.text?title.id||"qrcode-title":null;var size=_this.getModuleCount()*cellSize+margin*2;var c,mc,r,mr,qrSvg="",rect;rect="l"+cellSize+",0 0,"+cellSize+" -"+cellSize+",0 0,-"+cellSize+"z ";qrSvg+=''+escapeXml(title.text)+"":"";qrSvg+=alt.text?''+escapeXml(alt.text)+"":"";qrSvg+='';qrSvg+='":escaped+=">";break;case"&":escaped+="&";break;case'"':escaped+=""";break;default:escaped+=c;break}}return escaped};var _createHalfASCII=function(margin){var cellSize=1;margin=typeof margin=="undefined"?cellSize*2:margin;var size=_this.getModuleCount()*cellSize+margin*2;var min=margin;var max=size-margin;var y,x,r1,r2,p;var blocks={"██":"█","█ ":"▀"," █":"▄"," ":" "};var blocksLastLineNoMargin={"██":"▀","█ ":"▀"," █":" "," ":" "};var ascii="";for(y=0;y=max?blocksLastLineNoMargin[p]:blocks[p]}ascii+="\n"}if(size%2&&margin>0){return ascii.substring(0,ascii.length-size-1)+Array(size+1).join("▀")}return ascii.substring(0,ascii.length-1)};_this.createASCII=function(cellSize,margin){cellSize=cellSize||1;if(cellSize<2){return _createHalfASCII(margin)}cellSize-=1;margin=typeof margin=="undefined"?cellSize*2:margin;var size=_this.getModuleCount()*cellSize+margin*2;var min=margin;var max=size-margin;var y,x,r,p;var white=Array(cellSize+1).join("██");var black=Array(cellSize+1).join(" ");var ascii="";var line="";for(y=0;y>>8);bytes.push(b&255)}}else{bytes.push(unknownChar)}}}return bytes}};var QRMode={MODE_NUMBER:1<<0,MODE_ALPHA_NUM:1<<1,MODE_8BIT_BYTE:1<<2,MODE_KANJI:1<<3};var QRErrorCorrectionLevel={L:1,M:0,Q:3,H:2};var QRMaskPattern={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var QRUtil=function(){var PATTERN_POSITION_TABLE=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]];var G15=1<<10|1<<8|1<<5|1<<4|1<<2|1<<1|1<<0;var G18=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0;var G15_MASK=1<<14|1<<12|1<<10|1<<4|1<<1;var _this={};var getBCHDigit=function(data){var digit=0;while(data!=0){digit+=1;data>>>=1}return digit};_this.getBCHTypeInfo=function(data){var d=data<<10;while(getBCHDigit(d)-getBCHDigit(G15)>=0){d^=G15<=0){d^=G18<5){lostPoint+=3+sameCount-5}}}for(var row=0;row=256){n-=255}return EXP_TABLE[n]};return _this}();function qrPolynomial(num,shift){if(typeof num.length=="undefined"){throw num.length+"/"+shift}var _num=function(){var offset=0;while(offset>>7-index%8&1)==1};_this.put=function(num,length){for(var i=0;i>>length-i-1&1)==1)}};_this.getLengthInBits=function(){return _length};_this.putBit=function(bit){var bufIndex=Math.floor(_length/8);if(_buffer.length<=bufIndex){_buffer.push(0)}if(bit){_buffer[bufIndex]|=128>>>_length%8}_length+=1};return _this};var qrNumber=function(data){var _mode=QRMode.MODE_NUMBER;var _data=data;var _this={};_this.getMode=function(){return _mode};_this.getLength=function(buffer){return _data.length};_this.write=function(buffer){var data=_data;var i=0;while(i+2>>8&255)*192+(c&255);buffer.put(c,13);i+=2}if(i>>8)};_this.writeBytes=function(b,off,len){off=off||0;len=len||b.length;for(var i=0;i0){s+=","}s+=_bytes[i]}s+="]";return s};return _this};var base64EncodeOutputStream=function(){var _buffer=0;var _buflen=0;var _length=0;var _base64="";var _this={};var writeEncoded=function(b){_base64+=String.fromCharCode(encode(b&63))};var encode=function(n){if(n<0){}else if(n<26){return 65+n}else if(n<52){return 97+(n-26)}else if(n<62){return 48+(n-52)}else if(n==62){return 43}else if(n==63){return 47}throw"n:"+n};_this.writeByte=function(n){_buffer=_buffer<<8|n&255;_buflen+=8;_length+=1;while(_buflen>=6){writeEncoded(_buffer>>>_buflen-6);_buflen-=6}};_this.flush=function(){if(_buflen>0){writeEncoded(_buffer<<6-_buflen);_buffer=0;_buflen=0}if(_length%3!=0){var padlen=3-_length%3;for(var i=0;i=_str.length){if(_buflen==0){return-1}throw"unexpected end of file./"+_buflen}var c=_str.charAt(_pos);_pos+=1;if(c=="="){_buflen=0;return-1}else if(c.match(/^\s$/)){continue}_buffer=_buffer<<6|decode(c.charCodeAt(0));_buflen+=6}var n=_buffer>>>_buflen-8&255;_buflen-=8;return n};var decode=function(c){if(65<=c&&c<=90){return c-65}else if(97<=c&&c<=122){return c-97+26}else if(48<=c&&c<=57){return c-48+52}else if(c==43){return 62}else if(c==47){return 63}else{throw"c:"+c}};return _this};var gifImage=function(width,height){var _width=width;var _height=height;var _data=new Array(width*height);var _this={};_this.setPixel=function(x,y,pixel){_data[y*_width+x]=pixel};_this.write=function(out){out.writeString("GIF87a");out.writeShort(_width);out.writeShort(_height);out.writeByte(128);out.writeByte(0);out.writeByte(0);out.writeByte(0);out.writeByte(0);out.writeByte(0);out.writeByte(255);out.writeByte(255);out.writeByte(255);out.writeString(",");out.writeShort(0);out.writeShort(0);out.writeShort(_width);out.writeShort(_height);out.writeByte(0);var lzwMinCodeSize=2;var raster=getLZWRaster(lzwMinCodeSize);out.writeByte(lzwMinCodeSize);var offset=0;while(raster.length-offset>255){out.writeByte(255);out.writeBytes(raster,offset,255);offset+=255}out.writeByte(raster.length-offset);out.writeBytes(raster,offset,raster.length-offset);out.writeByte(0);out.writeString(";")};var bitOutputStream=function(out){var _out=out;var _bitLength=0;var _bitBuffer=0;var _this={};_this.write=function(data,length){if(data>>>length!=0){throw"length over"}while(_bitLength+length>=8){_out.writeByte(255&(data<<_bitLength|_bitBuffer));length-=8-_bitLength;data>>>=8-_bitLength;_bitBuffer=0;_bitLength=0}_bitBuffer=data<<_bitLength|_bitBuffer;_bitLength=_bitLength+length};_this.flush=function(){if(_bitLength>0){_out.writeByte(_bitBuffer)}};return _this};var getLZWRaster=function(lzwMinCodeSize){var clearCode=1<>6,128|charcode&63)}else if(charcode<55296||charcode>=57344){utf8.push(224|charcode>>12,128|charcode>>6&63,128|charcode&63)}else{i++;charcode=65536+((charcode&1023)<<10|str.charCodeAt(i)&1023);utf8.push(240|charcode>>18,128|charcode>>12&63,128|charcode>>6&63,128|charcode&63)}}return utf8}return toUTF8Array(s)}}();(function(factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}})(function(){return qrcode})},{}],276:[function(require,module,exports){(function(process,global){"use strict";var MAX_BYTES=65536;var MAX_UINT32=4294967295;function oldBrowser(){throw new Error("Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11")}var Buffer=require("safe-buffer").Buffer;var crypto=global.crypto||global.msCrypto;if(crypto&&crypto.getRandomValues){module.exports=randomBytes}else{module.exports=oldBrowser}function randomBytes(size,cb){if(size>MAX_UINT32)throw new RangeError("requested too many random bytes");var bytes=Buffer.allocUnsafe(size);if(size>0){if(size>MAX_BYTES){for(var generated=0;generatedkMaxUint32||offset<0){throw new TypeError("offset must be a uint32")}if(offset>kBufferMaxLength||offset>length){throw new RangeError("offset out of range")}}function assertSize(size,offset,length){if(typeof size!=="number"||size!==size){throw new TypeError("size must be a number")}if(size>kMaxUint32||size<0){throw new TypeError("size must be a uint32")}if(size+offset>length||size>kBufferMaxLength){throw new RangeError("buffer too small")}}if(crypto&&crypto.getRandomValues||!process.browser){exports.randomFill=randomFill;exports.randomFillSync=randomFillSync}else{exports.randomFill=oldBrowser;exports.randomFillSync=oldBrowser}function randomFill(buf,offset,size,cb){if(!Buffer.isBuffer(buf)&&!(buf instanceof global.Uint8Array)){throw new TypeError('"buf" argument must be a Buffer or Uint8Array')}if(typeof offset==="function"){cb=offset;offset=0;size=buf.length}else if(typeof size==="function"){cb=size;size=buf.length-offset}else if(typeof cb!=="function"){throw new TypeError('"cb" argument must be a function')}assertOffset(offset,buf.length);assertSize(size,offset,buf.length);return actualFill(buf,offset,size,cb)}function actualFill(buf,offset,size,cb){if(process.browser){var ourBuf=buf.buffer;var uint=new Uint8Array(ourBuf,offset,size);crypto.getRandomValues(uint);if(cb){process.nextTick(function(){cb(null,buf)});return}return buf}if(cb){randombytes(size,function(err,bytes){if(err){return cb(err)}bytes.copy(buf,offset);cb(null,buf)});return}var bytes=randombytes(size);bytes.copy(buf,offset);return buf}function randomFillSync(buf,offset,size){if(typeof offset==="undefined"){offset=0}if(!Buffer.isBuffer(buf)&&!(buf instanceof global.Uint8Array)){throw new TypeError('"buf" argument must be a Buffer or Uint8Array')}assertOffset(offset,buf.length);if(size===undefined)size=buf.length-offset;assertSize(size,offset,buf.length);return actualFill(buf,offset,size)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{_process:267,randombytes:276,"safe-buffer":293}],278:[function(require,module,exports){module.exports=require("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":279}],279:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){keys.push(key)}return keys};module.exports=Duplex;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var Readable=require("./_stream_readable");var Writable=require("./_stream_writable");util.inherits(Duplex,Readable);{var keys=objectKeys(Writable.prototype);for(var v=0;v0){if(typeof chunk!=="string"&&!state.objectMode&&Object.getPrototypeOf(chunk)!==Buffer.prototype){chunk=_uint8ArrayToBuffer(chunk)}if(addToFront){if(state.endEmitted)stream.emit("error",new Error("stream.unshift() after end event"));else addChunk(stream,state,chunk,true)}else if(state.ended){stream.emit("error",new Error("stream.push() after EOF"))}else{state.reading=false;if(state.decoder&&!encoding){chunk=state.decoder.write(chunk);if(state.objectMode||chunk.length!==0)addChunk(stream,state,chunk,false);else maybeReadMore(stream,state)}else{addChunk(stream,state,chunk,false)}}}else if(!addToFront){state.reading=false}}return needMoreData(state)}function addChunk(stream,state,chunk,addToFront){if(state.flowing&&state.length===0&&!state.sync){stream.emit("data",chunk);stream.read(0)}else{state.length+=state.objectMode?1:chunk.length;if(addToFront)state.buffer.unshift(chunk);else state.buffer.push(chunk);if(state.needReadable)emitReadable(stream)}maybeReadMore(stream,state)}function chunkInvalid(state,chunk){var er;if(!_isUint8Array(chunk)&&typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}return er}function needMoreData(state){return!state.ended&&(state.needReadable||state.length=MAX_HWM){n=MAX_HWM}else{n--;n|=n>>>1;n|=n>>>2;n|=n>>>4;n|=n>>>8;n|=n>>>16;n++}return n}function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)return 0;if(state.objectMode)return 1;if(n!==n){if(state.flowing&&state.length)return state.buffer.head.data.length;else return state.length}if(n>state.highWaterMark)state.highWaterMark=computeNewHighWaterMark(n);if(n<=state.length)return n;if(!state.ended){state.needReadable=true;return 0}return state.length}Readable.prototype.read=function(n){debug("read",n);n=parseInt(n,10);var state=this._readableState;var nOrig=n;if(n!==0)state.emittedReadable=false;if(n===0&&state.needReadable&&(state.length>=state.highWaterMark||state.ended)){debug("read: emitReadable",state.length,state.ended);if(state.length===0&&state.ended)endReadable(this);else emitReadable(this);return null}n=howMuchToRead(n,state);if(n===0&&state.ended){if(state.length===0)endReadable(this);return null}var doRead=state.needReadable;debug("need readable",doRead);if(state.length===0||state.length-n0)ret=fromList(n,state);else ret=null;if(ret===null){state.needReadable=true;n=0}else{state.length-=n}if(state.length===0){if(!state.ended)state.needReadable=true;if(nOrig!==n&&state.ended)endReadable(this)}if(ret!==null)this.emit("data",ret);return ret};function onEofChunk(stream,state){if(state.ended)return;if(state.decoder){var chunk=state.decoder.end();if(chunk&&chunk.length){state.buffer.push(chunk);state.length+=state.objectMode?1:chunk.length}}state.ended=true;emitReadable(stream)}function emitReadable(stream){var state=stream._readableState;state.needReadable=false;if(!state.emittedReadable){debug("emitReadable",state.flowing);state.emittedReadable=true;if(state.sync)pna.nextTick(emitReadable_,stream);else emitReadable_(stream)}}function emitReadable_(stream){debug("emit readable");stream.emit("readable");flow(stream)}function maybeReadMore(stream,state){if(!state.readingMore){state.readingMore=true;pna.nextTick(maybeReadMore_,stream,state)}}function maybeReadMore_(stream,state){var len=state.length;while(!state.reading&&!state.flowing&&!state.ended&&state.length1&&indexOf(state.pipes,dest)!==-1)&&!cleanedUp){debug("false write response, pause",src._readableState.awaitDrain);src._readableState.awaitDrain++;increasedAwaitDrain=true}src.pause()}}function onerror(er){debug("onerror",er);unpipe();dest.removeListener("error",onerror);if(EElistenerCount(dest,"error")===0)dest.emit("error",er)}prependListener(dest,"error",onerror);function onclose(){dest.removeListener("finish",onfinish);unpipe()}dest.once("close",onclose);function onfinish(){debug("onfinish");dest.removeListener("close",onclose);unpipe()}dest.once("finish",onfinish);function unpipe(){debug("unpipe");src.unpipe(dest)}dest.emit("pipe",src);if(!state.flowing){debug("pipe resume");src.resume()}return dest};function pipeOnDrain(src){return function(){var state=src._readableState;debug("pipeOnDrain",state.awaitDrain);if(state.awaitDrain)state.awaitDrain--;if(state.awaitDrain===0&&EElistenerCount(src,"data")){state.flowing=true;flow(src)}}}Readable.prototype.unpipe=function(dest){var state=this._readableState;var unpipeInfo={hasUnpiped:false};if(state.pipesCount===0)return this;if(state.pipesCount===1){if(dest&&dest!==state.pipes)return this;if(!dest)dest=state.pipes;state.pipes=null;state.pipesCount=0;state.flowing=false;if(dest)dest.emit("unpipe",this,unpipeInfo);return this}if(!dest){var dests=state.pipes;var len=state.pipesCount;state.pipes=null;state.pipesCount=0;state.flowing=false;for(var i=0;i=state.length){if(state.decoder)ret=state.buffer.join("");else if(state.buffer.length===1)ret=state.buffer.head.data;else ret=state.buffer.concat(state.length);state.buffer.clear()}else{ret=fromListPartial(n,state.buffer,state.decoder)}return ret}function fromListPartial(n,list,hasStrings){var ret;if(nstr.length?str.length:n;if(nb===str.length)ret+=str;else ret+=str.slice(0,n);n-=nb;if(n===0){if(nb===str.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=str.slice(nb)}break}++c}list.length-=c;return ret}function copyFromBuffer(n,list){var ret=Buffer.allocUnsafe(n);var p=list.head;var c=1;p.data.copy(ret);n-=p.data.length;while(p=p.next){var buf=p.data;var nb=n>buf.length?buf.length:n;buf.copy(ret,ret.length-n,0,nb);n-=nb;if(n===0){if(nb===buf.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=buf.slice(nb)}break}++c}list.length-=c;return ret}function endReadable(stream){var state=stream._readableState;if(state.length>0)throw new Error('"endReadable()" called on non-empty stream');if(!state.endEmitted){state.ended=true;pna.nextTick(endReadableNT,state,stream)}}function endReadableNT(state,stream){if(!state.endEmitted&&state.length===0){state.endEmitted=true;stream.readable=false;stream.emit("end")}}function indexOf(xs,x){for(var i=0,l=xs.length;i-1?setImmediate:pna.nextTick;var Duplex;Writable.WritableState=WritableState;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var destroyImpl=require("./internal/streams/destroy");util.inherits(Writable,Stream);function nop(){}function WritableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.writableObjectMode;var hwm=options.highWaterMark;var writableHwm=options.writableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(writableHwm||writableHwm===0))this.highWaterMark=writableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var noDecode=options.decodeStrings===false;this.decodeStrings=!noDecode;this.defaultEncoding=options.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(er){onwrite(stream,er)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var current=this.bufferedRequest;var out=[];while(current){out.push(current);current=current.next}return out};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:internalUtil.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(_){}})();var realHasInstance;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){realHasInstance=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function(object){if(realHasInstance.call(this,object))return true;if(this!==Writable)return false;return object&&object._writableState instanceof WritableState}})}else{realHasInstance=function(object){return object instanceof this}}function Writable(options){Duplex=Duplex||require("./_stream_duplex");if(!realHasInstance.call(Writable,this)&&!(this instanceof Duplex)){return new Writable(options)}this._writableState=new WritableState(options,this);this.writable=true;if(options){if(typeof options.write==="function")this._write=options.write;if(typeof options.writev==="function")this._writev=options.writev;if(typeof options.destroy==="function")this._destroy=options.destroy;if(typeof options.final==="function")this._final=options.final}Stream.call(this)}Writable.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function writeAfterEnd(stream,cb){var er=new Error("write after end");stream.emit("error",er);pna.nextTick(cb,er)}function validChunk(stream,state,chunk,cb){var valid=true;var er=false;if(chunk===null){er=new TypeError("May not write null values to stream")}else if(typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}if(er){stream.emit("error",er);pna.nextTick(cb,er);valid=false}return valid}Writable.prototype.write=function(chunk,encoding,cb){var state=this._writableState;var ret=false;var isBuf=!state.objectMode&&_isUint8Array(chunk);if(isBuf&&!Buffer.isBuffer(chunk)){chunk=_uint8ArrayToBuffer(chunk)}if(typeof encoding==="function"){cb=encoding;encoding=null}if(isBuf)encoding="buffer";else if(!encoding)encoding=state.defaultEncoding;if(typeof cb!=="function")cb=nop;if(state.ended)writeAfterEnd(this,cb);else if(isBuf||validChunk(this,state,chunk,cb)){state.pendingcb++;ret=writeOrBuffer(this,state,isBuf,chunk,encoding,cb)}return ret};Writable.prototype.cork=function(){var state=this._writableState;state.corked++};Writable.prototype.uncork=function(){var state=this._writableState;if(state.corked){state.corked--;if(!state.writing&&!state.corked&&!state.finished&&!state.bufferProcessing&&state.bufferedRequest)clearBuffer(this,state)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(encoding){if(typeof encoding==="string")encoding=encoding.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((encoding+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+encoding);this._writableState.defaultEncoding=encoding;return this};function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.decodeStrings!==false&&typeof chunk==="string"){chunk=Buffer.from(chunk,encoding)}return chunk}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function writeOrBuffer(stream,state,isBuf,chunk,encoding,cb){if(!isBuf){var newChunk=decodeChunk(state,chunk,encoding);if(chunk!==newChunk){isBuf=true;encoding="buffer";chunk=newChunk}}var len=state.objectMode?1:chunk.length;state.length+=len;var ret=state.length0)this.tail.next=entry;else this.head=entry;this.tail=entry;++this.length};BufferList.prototype.unshift=function unshift(v){var entry={data:v,next:this.head};if(this.length===0)this.tail=entry;this.head=entry;++this.length};BufferList.prototype.shift=function shift(){if(this.length===0)return;var ret=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return ret};BufferList.prototype.clear=function clear(){this.head=this.tail=null;this.length=0};BufferList.prototype.join=function join(s){if(this.length===0)return"";var p=this.head;var ret=""+p.data;while(p=p.next){ret+=s+p.data}return ret};BufferList.prototype.concat=function concat(n){if(this.length===0)return Buffer.alloc(0);if(this.length===1)return this.head.data;var ret=Buffer.allocUnsafe(n>>>0);var p=this.head;var i=0;while(p){copyBuffer(p.data,ret,i);i+=p.data.length;p=p.next}return ret};return BufferList}();if(util&&util.inspect&&util.inspect.custom){module.exports.prototype[util.inspect.custom]=function(){var obj=util.inspect({length:this.length});return this.constructor.name+" "+obj}}},{"safe-buffer":287,util:141}],285:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");function destroy(err,cb){var _this=this;var readableDestroyed=this._readableState&&this._readableState.destroyed;var writableDestroyed=this._writableState&&this._writableState.destroyed;if(readableDestroyed||writableDestroyed){if(cb){cb(err)}else if(err&&(!this._writableState||!this._writableState.errorEmitted)){pna.nextTick(emitErrorNT,this,err)}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(err||null,function(err){if(!cb&&err){pna.nextTick(emitErrorNT,_this,err);if(_this._writableState){_this._writableState.errorEmitted=true}}else if(cb){cb(err)}});return this}function undestroy(){if(this._readableState){this._readableState.destroyed=false;this._readableState.reading=false;this._readableState.ended=false;this._readableState.endEmitted=false}if(this._writableState){this._writableState.destroyed=false;this._writableState.ended=false;this._writableState.ending=false;this._writableState.finished=false;this._writableState.errorEmitted=false}}function emitErrorNT(self,err){self.emit("error",err)}module.exports={destroy:destroy,undestroy:undestroy}},{"process-nextick-args":266}],286:[function(require,module,exports){arguments[4][183][0].apply(exports,arguments)},{dup:183,events:186}],287:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:185}],288:[function(require,module,exports){module.exports=require("./readable").PassThrough},{"./readable":289}],289:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js");exports.Stream=exports;exports.Readable=exports;exports.Writable=require("./lib/_stream_writable.js");exports.Duplex=require("./lib/_stream_duplex.js");exports.Transform=require("./lib/_stream_transform.js");exports.PassThrough=require("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":279,"./lib/_stream_passthrough.js":280,"./lib/_stream_readable.js":281,"./lib/_stream_transform.js":282,"./lib/_stream_writable.js":283}],290:[function(require,module,exports){module.exports=require("./readable").Transform},{"./readable":289}],291:[function(require,module,exports){module.exports=require("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":283}],292:[function(require,module,exports){"use strict";var Buffer=require("buffer").Buffer;var inherits=require("inherits");var HashBase=require("hash-base");var ARRAY16=new Array(16);var zl=[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];var zr=[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];var sl=[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];var sr=[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];var hl=[0,1518500249,1859775393,2400959708,2840853838];var hr=[1352829926,1548603684,1836072691,2053994217,0];function RIPEMD160(){HashBase.call(this,64);this._a=1732584193;this._b=4023233417;this._c=2562383102;this._d=271733878;this._e=3285377520}inherits(RIPEMD160,HashBase);RIPEMD160.prototype._update=function(){var words=ARRAY16;for(var j=0;j<16;++j)words[j]=this._block.readInt32LE(j*4);var al=this._a|0;var bl=this._b|0;var cl=this._c|0;var dl=this._d|0;var el=this._e|0;var ar=this._a|0;var br=this._b|0;var cr=this._c|0;var dr=this._d|0;var er=this._e|0;for(var i=0;i<80;i+=1){var tl;var tr;if(i<16){tl=fn1(al,bl,cl,dl,el,words[zl[i]],hl[0],sl[i]);tr=fn5(ar,br,cr,dr,er,words[zr[i]],hr[0],sr[i])}else if(i<32){tl=fn2(al,bl,cl,dl,el,words[zl[i]],hl[1],sl[i]);tr=fn4(ar,br,cr,dr,er,words[zr[i]],hr[1],sr[i])}else if(i<48){tl=fn3(al,bl,cl,dl,el,words[zl[i]],hl[2],sl[i]);tr=fn3(ar,br,cr,dr,er,words[zr[i]],hr[2],sr[i])}else if(i<64){tl=fn4(al,bl,cl,dl,el,words[zl[i]],hl[3],sl[i]);tr=fn2(ar,br,cr,dr,er,words[zr[i]],hr[3],sr[i])}else{tl=fn5(al,bl,cl,dl,el,words[zl[i]],hl[4],sl[i]);tr=fn1(ar,br,cr,dr,er,words[zr[i]],hr[4],sr[i])}al=el;el=dl;dl=rotl(cl,10);cl=bl;bl=tl;ar=er;er=dr;dr=rotl(cr,10);cr=br;br=tr}var t=this._b+cl+dr|0;this._b=this._c+dl+er|0;this._c=this._d+el+ar|0;this._d=this._e+al+br|0;this._e=this._a+bl+cr|0;this._a=t};RIPEMD160.prototype._digest=function(){this._block[this._blockOffset++]=128;if(this._blockOffset>56){this._block.fill(0,this._blockOffset,64);this._update();this._blockOffset=0}this._block.fill(0,this._blockOffset,56);this._block.writeUInt32LE(this._length[0],56);this._block.writeUInt32LE(this._length[1],60);this._update();var buffer=Buffer.alloc?Buffer.alloc(20):new Buffer(20);buffer.writeInt32LE(this._a,0);buffer.writeInt32LE(this._b,4);buffer.writeInt32LE(this._c,8);buffer.writeInt32LE(this._d,12);buffer.writeInt32LE(this._e,16);return buffer};function rotl(x,n){return x<>>32-n}function fn1(a,b,c,d,e,m,k,s){return rotl(a+(b^c^d)+m+k|0,s)+e|0}function fn2(a,b,c,d,e,m,k,s){return rotl(a+(b&c|~b&d)+m+k|0,s)+e|0}function fn3(a,b,c,d,e,m,k,s){return rotl(a+((b|~c)^d)+m+k|0,s)+e|0}function fn4(a,b,c,d,e,m,k,s){return rotl(a+(b&d|c&~d)+m+k|0,s)+e|0}function fn5(a,b,c,d,e,m,k,s){return rotl(a+(b^(c|~d))+m+k|0,s)+e|0}module.exports=RIPEMD160},{buffer:185,"hash-base":230,inherits:245}],293:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}SafeBuffer.prototype=Object.create(Buffer.prototype);copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:185}],294:[function(require,module,exports){var Buffer=require("safe-buffer").Buffer;function Hash(blockSize,finalSize){this._block=Buffer.alloc(blockSize);this._finalSize=finalSize;this._blockSize=blockSize;this._len=0}Hash.prototype.update=function(data,enc){if(typeof data==="string"){enc=enc||"utf8";data=Buffer.from(data,enc)}var block=this._block;var blockSize=this._blockSize;var length=data.length;var accum=this._len;for(var offset=0;offset=this._finalSize){this._update(this._block);this._block.fill(0)}var bits=this._len*8;if(bits<=4294967295){this._block.writeUInt32BE(bits,this._blockSize-4)}else{var lowBits=(bits&4294967295)>>>0;var highBits=(bits-lowBits)/4294967296;this._block.writeUInt32BE(highBits,this._blockSize-8);this._block.writeUInt32BE(lowBits,this._blockSize-4)}this._update(this._block);var hash=this._hash();return enc?hash.toString(enc):hash};Hash.prototype._update=function(){throw new Error("_update must be implemented by subclass")};module.exports=Hash},{"safe-buffer":293}],295:[function(require,module,exports){var exports=module.exports=function SHA(algorithm){algorithm=algorithm.toLowerCase();var Algorithm=exports[algorithm];if(!Algorithm)throw new Error(algorithm+" is not supported (we accept pull requests)");return new Algorithm};exports.sha=require("./sha");exports.sha1=require("./sha1");exports.sha224=require("./sha224");exports.sha256=require("./sha256");exports.sha384=require("./sha384");exports.sha512=require("./sha512")},{"./sha":296,"./sha1":297,"./sha224":298,"./sha256":299,"./sha384":300,"./sha512":301}],296:[function(require,module,exports){var inherits=require("inherits");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var K=[1518500249,1859775393,2400959708|0,3395469782|0];var W=new Array(80);function Sha(){this.init();this._w=W;Hash.call(this,64,56)}inherits(Sha,Hash);Sha.prototype.init=function(){this._a=1732584193;this._b=4023233417;this._c=2562383102;this._d=271733878;this._e=3285377520;return this};function rotl5(num){return num<<5|num>>>27}function rotl30(num){return num<<30|num>>>2}function ft(s,b,c,d){if(s===0)return b&c|~b&d;if(s===2)return b&c|b&d|c&d;return b^c^d}Sha.prototype._update=function(M){var W=this._w;var a=this._a|0;var b=this._b|0;var c=this._c|0;var d=this._d|0;var e=this._e|0;for(var i=0;i<16;++i)W[i]=M.readInt32BE(i*4);for(;i<80;++i)W[i]=W[i-3]^W[i-8]^W[i-14]^W[i-16];for(var j=0;j<80;++j){var s=~~(j/20);var t=rotl5(a)+ft(s,b,c,d)+e+W[j]+K[s]|0;e=d;d=c;c=rotl30(b);b=a;a=t}this._a=a+this._a|0;this._b=b+this._b|0;this._c=c+this._c|0;this._d=d+this._d|0;this._e=e+this._e|0};Sha.prototype._hash=function(){var H=Buffer.allocUnsafe(20);H.writeInt32BE(this._a|0,0);H.writeInt32BE(this._b|0,4);H.writeInt32BE(this._c|0,8);H.writeInt32BE(this._d|0,12);H.writeInt32BE(this._e|0,16);return H};module.exports=Sha},{"./hash":294,inherits:245,"safe-buffer":293}],297:[function(require,module,exports){var inherits=require("inherits");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var K=[1518500249,1859775393,2400959708|0,3395469782|0];var W=new Array(80);function Sha1(){this.init();this._w=W;Hash.call(this,64,56)}inherits(Sha1,Hash);Sha1.prototype.init=function(){this._a=1732584193;this._b=4023233417;this._c=2562383102;this._d=271733878;this._e=3285377520;return this};function rotl1(num){return num<<1|num>>>31}function rotl5(num){return num<<5|num>>>27}function rotl30(num){return num<<30|num>>>2}function ft(s,b,c,d){if(s===0)return b&c|~b&d;if(s===2)return b&c|b&d|c&d;return b^c^d}Sha1.prototype._update=function(M){var W=this._w;var a=this._a|0;var b=this._b|0;var c=this._c|0;var d=this._d|0;var e=this._e|0;for(var i=0;i<16;++i)W[i]=M.readInt32BE(i*4);for(;i<80;++i)W[i]=rotl1(W[i-3]^W[i-8]^W[i-14]^W[i-16]);for(var j=0;j<80;++j){var s=~~(j/20);var t=rotl5(a)+ft(s,b,c,d)+e+W[j]+K[s]|0;e=d;d=c;c=rotl30(b);b=a;a=t}this._a=a+this._a|0;this._b=b+this._b|0;this._c=c+this._c|0;this._d=d+this._d|0;this._e=e+this._e|0};Sha1.prototype._hash=function(){var H=Buffer.allocUnsafe(20);H.writeInt32BE(this._a|0,0);H.writeInt32BE(this._b|0,4);H.writeInt32BE(this._c|0,8);H.writeInt32BE(this._d|0,12);H.writeInt32BE(this._e|0,16);return H};module.exports=Sha1},{"./hash":294,inherits:245,"safe-buffer":293}],298:[function(require,module,exports){var inherits=require("inherits");var Sha256=require("./sha256");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var W=new Array(64);function Sha224(){this.init();this._w=W;Hash.call(this,64,56)}inherits(Sha224,Sha256);Sha224.prototype.init=function(){this._a=3238371032;this._b=914150663;this._c=812702999;this._d=4144912697;this._e=4290775857;this._f=1750603025;this._g=1694076839;this._h=3204075428;return this};Sha224.prototype._hash=function(){var H=Buffer.allocUnsafe(28);H.writeInt32BE(this._a,0);H.writeInt32BE(this._b,4);H.writeInt32BE(this._c,8);H.writeInt32BE(this._d,12);H.writeInt32BE(this._e,16);H.writeInt32BE(this._f,20);H.writeInt32BE(this._g,24);return H};module.exports=Sha224},{"./hash":294,"./sha256":299,inherits:245,"safe-buffer":293}],299:[function(require,module,exports){var inherits=require("inherits");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var K=[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];var W=new Array(64);function Sha256(){this.init();this._w=W;Hash.call(this,64,56)}inherits(Sha256,Hash);Sha256.prototype.init=function(){this._a=1779033703;this._b=3144134277;this._c=1013904242;this._d=2773480762;this._e=1359893119;this._f=2600822924;this._g=528734635;this._h=1541459225;return this};function ch(x,y,z){return z^x&(y^z)}function maj(x,y,z){return x&y|z&(x|y)}function sigma0(x){return(x>>>2|x<<30)^(x>>>13|x<<19)^(x>>>22|x<<10)}function sigma1(x){return(x>>>6|x<<26)^(x>>>11|x<<21)^(x>>>25|x<<7)}function gamma0(x){return(x>>>7|x<<25)^(x>>>18|x<<14)^x>>>3}function gamma1(x){return(x>>>17|x<<15)^(x>>>19|x<<13)^x>>>10}Sha256.prototype._update=function(M){var W=this._w;var a=this._a|0;var b=this._b|0;var c=this._c|0;var d=this._d|0;var e=this._e|0;var f=this._f|0;var g=this._g|0;var h=this._h|0;for(var i=0;i<16;++i)W[i]=M.readInt32BE(i*4);for(;i<64;++i)W[i]=gamma1(W[i-2])+W[i-7]+gamma0(W[i-15])+W[i-16]|0;for(var j=0;j<64;++j){var T1=h+sigma1(e)+ch(e,f,g)+K[j]+W[j]|0;var T2=sigma0(a)+maj(a,b,c)|0;h=g;g=f;f=e;e=d+T1|0;d=c;c=b;b=a;a=T1+T2|0}this._a=a+this._a|0;this._b=b+this._b|0;this._c=c+this._c|0;this._d=d+this._d|0;this._e=e+this._e|0;this._f=f+this._f|0;this._g=g+this._g|0;this._h=h+this._h|0};Sha256.prototype._hash=function(){var H=Buffer.allocUnsafe(32);H.writeInt32BE(this._a,0);H.writeInt32BE(this._b,4);H.writeInt32BE(this._c,8);H.writeInt32BE(this._d,12);H.writeInt32BE(this._e,16);H.writeInt32BE(this._f,20);H.writeInt32BE(this._g,24);H.writeInt32BE(this._h,28);return H};module.exports=Sha256},{"./hash":294,inherits:245,"safe-buffer":293}],300:[function(require,module,exports){var inherits=require("inherits");var SHA512=require("./sha512");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var W=new Array(160);function Sha384(){this.init();this._w=W;Hash.call(this,128,112)}inherits(Sha384,SHA512);Sha384.prototype.init=function(){this._ah=3418070365;this._bh=1654270250;this._ch=2438529370;this._dh=355462360;this._eh=1731405415;this._fh=2394180231;this._gh=3675008525;this._hh=1203062813;this._al=3238371032;this._bl=914150663;this._cl=812702999;this._dl=4144912697;this._el=4290775857;this._fl=1750603025;this._gl=1694076839;this._hl=3204075428;return this};Sha384.prototype._hash=function(){var H=Buffer.allocUnsafe(48);function writeInt64BE(h,l,offset){H.writeInt32BE(h,offset);H.writeInt32BE(l,offset+4)}writeInt64BE(this._ah,this._al,0);writeInt64BE(this._bh,this._bl,8);writeInt64BE(this._ch,this._cl,16);writeInt64BE(this._dh,this._dl,24);writeInt64BE(this._eh,this._el,32);writeInt64BE(this._fh,this._fl,40);return H};module.exports=Sha384},{"./hash":294,"./sha512":301,inherits:245,"safe-buffer":293}],301:[function(require,module,exports){var inherits=require("inherits");var Hash=require("./hash");var Buffer=require("safe-buffer").Buffer;var K=[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];var W=new Array(160);function Sha512(){this.init();this._w=W;Hash.call(this,128,112)}inherits(Sha512,Hash);Sha512.prototype.init=function(){this._ah=1779033703;this._bh=3144134277;this._ch=1013904242;this._dh=2773480762;this._eh=1359893119;this._fh=2600822924;this._gh=528734635;this._hh=1541459225;this._al=4089235720;this._bl=2227873595;this._cl=4271175723;this._dl=1595750129;this._el=2917565137;this._fl=725511199;this._gl=4215389547;this._hl=327033209;return this};function Ch(x,y,z){return z^x&(y^z)}function maj(x,y,z){return x&y|z&(x|y)}function sigma0(x,xl){return(x>>>28|xl<<4)^(xl>>>2|x<<30)^(xl>>>7|x<<25)}function sigma1(x,xl){return(x>>>14|xl<<18)^(x>>>18|xl<<14)^(xl>>>9|x<<23)}function Gamma0(x,xl){return(x>>>1|xl<<31)^(x>>>8|xl<<24)^x>>>7}function Gamma0l(x,xl){return(x>>>1|xl<<31)^(x>>>8|xl<<24)^(x>>>7|xl<<25)}function Gamma1(x,xl){return(x>>>19|xl<<13)^(xl>>>29|x<<3)^x>>>6}function Gamma1l(x,xl){return(x>>>19|xl<<13)^(xl>>>29|x<<3)^(x>>>6|xl<<26)}function getCarry(a,b){return a>>>0>>0?1:0}Sha512.prototype._update=function(M){var W=this._w;var ah=this._ah|0;var bh=this._bh|0;var ch=this._ch|0;var dh=this._dh|0;var eh=this._eh|0;var fh=this._fh|0;var gh=this._gh|0;var hh=this._hh|0;var al=this._al|0;var bl=this._bl|0;var cl=this._cl|0;var dl=this._dl|0;var el=this._el|0;var fl=this._fl|0;var gl=this._gl|0;var hl=this._hl|0;for(var i=0;i<32;i+=2){W[i]=M.readInt32BE(i*4);W[i+1]=M.readInt32BE(i*4+4)}for(;i<160;i+=2){var xh=W[i-15*2];var xl=W[i-15*2+1];var gamma0=Gamma0(xh,xl);var gamma0l=Gamma0l(xl,xh);xh=W[i-2*2];xl=W[i-2*2+1];var gamma1=Gamma1(xh,xl);var gamma1l=Gamma1l(xl,xh);var Wi7h=W[i-7*2];var Wi7l=W[i-7*2+1];var Wi16h=W[i-16*2];var Wi16l=W[i-16*2+1];var Wil=gamma0l+Wi7l|0;var Wih=gamma0+Wi7h+getCarry(Wil,gamma0l)|0;Wil=Wil+gamma1l|0;Wih=Wih+gamma1+getCarry(Wil,gamma1l)|0;Wil=Wil+Wi16l|0;Wih=Wih+Wi16h+getCarry(Wil,Wi16l)|0;W[i]=Wih;W[i+1]=Wil}for(var j=0;j<160;j+=2){Wih=W[j];Wil=W[j+1];var majh=maj(ah,bh,ch);var majl=maj(al,bl,cl);var sigma0h=sigma0(ah,al);var sigma0l=sigma0(al,ah);var sigma1h=sigma1(eh,el);var sigma1l=sigma1(el,eh);var Kih=K[j];var Kil=K[j+1];var chh=Ch(eh,fh,gh);var chl=Ch(el,fl,gl);var t1l=hl+sigma1l|0;var t1h=hh+sigma1h+getCarry(t1l,hl)|0;t1l=t1l+chl|0;t1h=t1h+chh+getCarry(t1l,chl)|0;t1l=t1l+Kil|0;t1h=t1h+Kih+getCarry(t1l,Kil)|0;t1l=t1l+Wil|0;t1h=t1h+Wih+getCarry(t1l,Wil)|0;var t2l=sigma0l+majl|0;var t2h=sigma0h+majh+getCarry(t2l,sigma0l)|0;hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+getCarry(el,dl)|0;dh=ch;dl=cl;ch=bh;cl=bl;bh=ah;bl=al;al=t1l+t2l|0;ah=t1h+t2h+getCarry(al,t1l)|0}this._al=this._al+al|0;this._bl=this._bl+bl|0;this._cl=this._cl+cl|0;this._dl=this._dl+dl|0;this._el=this._el+el|0;this._fl=this._fl+fl|0;this._gl=this._gl+gl|0;this._hl=this._hl+hl|0;this._ah=this._ah+ah+getCarry(this._al,al)|0;this._bh=this._bh+bh+getCarry(this._bl,bl)|0;this._ch=this._ch+ch+getCarry(this._cl,cl)|0;this._dh=this._dh+dh+getCarry(this._dl,dl)|0;this._eh=this._eh+eh+getCarry(this._el,el)|0;this._fh=this._fh+fh+getCarry(this._fl,fl)|0;this._gh=this._gh+gh+getCarry(this._gl,gl)|0;this._hh=this._hh+hh+getCarry(this._hl,hl)|0};Sha512.prototype._hash=function(){var H=Buffer.allocUnsafe(64);function writeInt64BE(h,l,offset){H.writeInt32BE(h,offset);H.writeInt32BE(l,offset+4)}writeInt64BE(this._ah,this._al,0);writeInt64BE(this._bh,this._bl,8);writeInt64BE(this._ch,this._cl,16);writeInt64BE(this._dh,this._dl,24);writeInt64BE(this._eh,this._el,32);writeInt64BE(this._fh,this._fl,40);writeInt64BE(this._gh,this._gl,48);writeInt64BE(this._hh,this._hl,56);return H};module.exports=Sha512},{"./hash":294,inherits:245,"safe-buffer":293}],302:[function(require,module,exports){module.exports=Stream;var EE=require("events").EventEmitter;var inherits=require("inherits");inherits(Stream,EE);Stream.Readable=require("readable-stream/readable.js");Stream.Writable=require("readable-stream/writable.js");Stream.Duplex=require("readable-stream/duplex.js");Stream.Transform=require("readable-stream/transform.js");Stream.PassThrough=require("readable-stream/passthrough.js");Stream.Stream=Stream;function Stream(){EE.call(this)}Stream.prototype.pipe=function(dest,options){var source=this;function ondata(chunk){if(dest.writable){if(false===dest.write(chunk)&&source.pause){source.pause()}}}source.on("data",ondata);function ondrain(){if(source.readable&&source.resume){source.resume()}}dest.on("drain",ondrain);if(!dest._isStdio&&(!options||options.end!==false)){source.on("end",onend);source.on("close",onclose)}var didOnEnd=false;function onend(){if(didOnEnd)return;didOnEnd=true;dest.end()}function onclose(){if(didOnEnd)return;didOnEnd=true;if(typeof dest.destroy==="function")dest.destroy()}function onerror(er){cleanup();if(EE.listenerCount(this,"error")===0){throw er}}source.on("error",onerror);dest.on("error",onerror);function cleanup(){source.removeListener("data",ondata);dest.removeListener("drain",ondrain);source.removeListener("end",onend);source.removeListener("close",onclose);source.removeListener("error",onerror);dest.removeListener("error",onerror);source.removeListener("end",cleanup);source.removeListener("close",cleanup);dest.removeListener("close",cleanup)}source.on("end",cleanup);source.on("close",cleanup);dest.on("close",cleanup);dest.emit("pipe",source);return dest}},{events:186,inherits:245,"readable-stream/duplex.js":278,"readable-stream/passthrough.js":288,"readable-stream/readable.js":289,"readable-stream/transform.js":290,"readable-stream/writable.js":291}],303:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer;var isEncoding=Buffer.isEncoding||function(encoding){encoding=""+encoding;switch(encoding&&encoding.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return true;default:return false}};function _normalizeEncoding(enc){if(!enc)return"utf8";var retried;while(true){switch(enc){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return enc;default:if(retried)return;enc=(""+enc).toLowerCase();retried=true}}}function normalizeEncoding(enc){var nenc=_normalizeEncoding(enc);if(typeof nenc!=="string"&&(Buffer.isEncoding===isEncoding||!isEncoding(enc)))throw new Error("Unknown encoding: "+enc);return nenc||enc}exports.StringDecoder=StringDecoder;function StringDecoder(encoding){this.encoding=normalizeEncoding(encoding);var nb;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;nb=4;break;case"utf8":this.fillLast=utf8FillLast;nb=4;break;case"base64":this.text=base64Text;this.end=base64End;nb=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=Buffer.allocUnsafe(nb)}StringDecoder.prototype.write=function(buf){if(buf.length===0)return"";var r;var i;if(this.lastNeed){r=this.fillLast(buf);if(r===undefined)return"";i=this.lastNeed;this.lastNeed=0}else{i=0}if(i>5===6)return 2;else if(byte>>4===14)return 3;else if(byte>>3===30)return 4;return byte>>6===2?-1:-2}function utf8CheckIncomplete(self,buf,i){var j=buf.length-1;if(j=0){if(nb>0)self.lastNeed=nb-1;return nb}if(--j=0){if(nb>0)self.lastNeed=nb-2;return nb}if(--j=0){if(nb>0){if(nb===2)nb=0;else self.lastNeed=nb-3}return nb}return 0}function utf8CheckExtraBytes(self,buf,p){if((buf[0]&192)!==128){self.lastNeed=0;return"�"}if(self.lastNeed>1&&buf.length>1){if((buf[1]&192)!==128){self.lastNeed=1;return"�"}if(self.lastNeed>2&&buf.length>2){if((buf[2]&192)!==128){self.lastNeed=2;return"�"}}}}function utf8FillLast(buf){var p=this.lastTotal-this.lastNeed;var r=utf8CheckExtraBytes(this,buf,p);if(r!==undefined)return r;if(this.lastNeed<=buf.length){buf.copy(this.lastChar,p,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,p,0,buf.length);this.lastNeed-=buf.length}function utf8Text(buf,i){var total=utf8CheckIncomplete(this,buf,i);if(!this.lastNeed)return buf.toString("utf8",i);this.lastTotal=total;var end=buf.length-(total-this.lastNeed);buf.copy(this.lastChar,0,end);return buf.toString("utf8",i,end)}function utf8End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+"�";return r}function utf16Text(buf,i){if((buf.length-i)%2===0){var r=buf.toString("utf16le",i);if(r){var c=r.charCodeAt(r.length-1);if(c>=55296&&c<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1];return r.slice(0,-1)}}return r}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=buf[buf.length-1];return buf.toString("utf16le",i,buf.length-1)}function utf16End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed){var end=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,end)}return r}function base64Text(buf,i){var n=(buf.length-i)%3;if(n===0)return buf.toString("base64",i);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=buf[buf.length-1]}else{this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1]}return buf.toString("base64",i,buf.length-n)}function base64End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+this.lastChar.toString("base64",0,3-this.lastNeed);return r}function simpleWrite(buf){return buf.toString(this.encoding)}function simpleEnd(buf){return buf&&buf.length?this.write(buf):""}},{"safe-buffer":304}],304:[function(require,module,exports){arguments[4][287][0].apply(exports,arguments)},{buffer:185,dup:287}],305:[function(require,module,exports){(function(global){module.exports=deprecate;function deprecate(fn,msg){if(config("noDeprecation")){return fn}var warned=false;function deprecated(){if(!warned){if(config("throwDeprecation")){throw new Error(msg)}else if(config("traceDeprecation")){console.trace(msg)}else{console.warn(msg)}warned=true}return fn.apply(this,arguments)}return deprecated}function config(name){try{if(!global.localStorage)return false}catch(_){return false}var val=global.localStorage[name];if(null==val)return false;return String(val).toLowerCase()==="true"}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],306:[function(require,module,exports){var indexOf=function(xs,item){if(xs.indexOf)return xs.indexOf(item);else for(var i=0;i { + + const amount = vm.fulfillment_context.amount; + const token_name = vm.bounty.token_name; + + let selectedAddress; + + const Tezos = new taquito.TezosToolkit('https://mainnet-tezos.giganode.io'); + const wallet = new taquitoBeaconWallet.BeaconWallet({ name: 'Gitcoin' }); + + Tezos.setWalletProvider(wallet); + + const activeAccount = await wallet.client.getActiveAccount(); + + if (activeAccount) { + console.log('Already connected:', activeAccount.address); + selectedAddress = activeAccount.address; + } else { + try { + await wallet.requestPermissions(); + selectedAddress = await wallet.getPKH(); + console.log('New connection:', selectedAddress); + } catch (e) { + console.log(e); + } + } + + if (token_name == 'XTZ') { + try { + const txHash = await wallet.sendOperations([ + { + kind: beacon.TezosOperationType.TRANSACTION, + destination: to_address, + amount: amount * 10 ** vm.decimals + } + ]); + + callback(null, selectedAddress, txHash); + } catch (e) { + modal.closeModal(); + _alert({ message: `${e.title} - ${e.description}` }, 'danger'); + console.log(e); + } + } + + function callback(error, from_address, txn) { + if (error) { + _alert({ message: gettext('Unable to payout bounty due to: ' + error) }, 'danger'); + console.log(error); + } else { + + const payload = { + payout_type: 'tezos_ext', + tenant: 'TEZOS', + amount: amount, + token_name: token_name, + funder_address: from_address, + payout_tx_id: txn + }; + + modal.closeModal(); + const apiUrlBounty = `/api/v1/bounty/payout/${fulfillment_id}`; + + fetchData(apiUrlBounty, 'POST', payload).then(response => { + if (200 <= response.status && response.status <= 204) { + vm.fetchBounty(); + _alert('Payment Successful', 'success'); + + } else { + _alert('Unable to make payout bounty. Please try again later', 'danger'); + console.error(`error: bounty payment failed with status: ${response.status} and message: ${response.message}`); + } + }).catch(function(error) { + _alert('Unable to make payout bounty. Please try again later', 'danger'); + console.log(error); + }); + } + } +}; + \ No newline at end of file diff --git a/app/assets/v2/js/pages/bounty_details2.js b/app/assets/v2/js/pages/bounty_details2.js index 6ae407720f0..88a8042b715 100644 --- a/app/assets/v2/js/pages/bounty_details2.js +++ b/app/assets/v2/js/pages/bounty_details2.js @@ -162,6 +162,10 @@ Vue.mixin({ url = `https://siastats.info/navigator?search=${txn}`; break; + case 'XTZ': + url = `https://tzkt.io/${txn}`; + break; + default: url = `https://etherscan.io/tx/${txn}`; @@ -236,6 +240,10 @@ Vue.mixin({ url = `https://siastats.info/navigator?search=${address}`; break; + case 'XTZ': + url = `https://tzkt.io/${address}/operations/`; + break; + default: url = `https://etherscan.io/address/${address}`; } @@ -480,6 +488,10 @@ Vue.mixin({ vm.canChangeFunderAddress = true; break; + case 'XTZ': + tenant = 'TEZOS'; + break; + default: tenant = 'ETH'; } @@ -574,6 +586,10 @@ Vue.mixin({ case 'algorand_ext': payWithAlgorandExtension(fulfillment_id, fulfiller_address, vm, modal); break; + + case 'tezos_ext': + payWithTezosExtension(fulfillment_id, fulfiller_address, vm, modal); + break; } }, closeBounty: function() { @@ -793,6 +809,7 @@ Vue.mixin({ case 'rsk_ext': case 'xinfin_ext': case 'algorand_ext': + case 'tezos_ext': vm.fulfillment_context.active_step = 'payout_amount'; break; } @@ -845,7 +862,7 @@ Vue.mixin({ const ADDRESS_REGEX = new RegExp('^(ckb){1}[0-9a-zA-Z]{43,92}$'); const isNervosValid = ADDRESS_REGEX.test(vm.bounty.bounty_owner_address); - if (!isNervosValid && !address.toLowerCase().startsWith('0x')) { + if (!isNervosValid && !vm.bounty.bounty_owner_address.toLowerCase().startsWith('0x')) { hasError = true; } } diff --git a/app/assets/v2/js/pages/fulfill_bounty/index.js b/app/assets/v2/js/pages/fulfill_bounty/index.js index 93ea8aa0583..e9545d18854 100644 --- a/app/assets/v2/js/pages/fulfill_bounty/index.js +++ b/app/assets/v2/js/pages/fulfill_bounty/index.js @@ -1,5 +1,5 @@ /* eslint-disable no-console */ -if (bountyChainId !== '58') { +if (web3_type === 'web3_modal') { needWalletConnection(); const fetchFromWeb3Wallet = () => { diff --git a/app/assets/v2/js/pages/hackathon_new_bounty.js b/app/assets/v2/js/pages/hackathon_new_bounty.js index 1ed4ef331de..86d24f86170 100644 --- a/app/assets/v2/js/pages/hackathon_new_bounty.js +++ b/app/assets/v2/js/pages/hackathon_new_bounty.js @@ -182,6 +182,10 @@ Vue.mixin({ // sia type = 'sia_ext'; break; + case '50797': + // tezos + type = 'tezos_ext'; + break; case '666': // paypal type = 'fiat'; diff --git a/app/assets/v2/js/pages/new_bounty.js b/app/assets/v2/js/pages/new_bounty.js index f6ce53d79f6..bb53be644f6 100644 --- a/app/assets/v2/js/pages/new_bounty.js +++ b/app/assets/v2/js/pages/new_bounty.js @@ -121,19 +121,50 @@ Vue.mixin({ vm.form.keywords.push(item); }, - validateBtc: function() { + validateFunderAddress: function() { let vm = this; + let isValid = true; - const ADDRESS_REGEX = new RegExp('^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$'); - const BECH32_REGEX = new RegExp('^bc1[ac-hj-np-zAC-HJ-NP-Z02-9]{11,71}$'); - const valid_legacy = ADDRESS_REGEX.test(vm.form.funderAddress); - const valid_segwit = BECH32_REGEX.test(vm.form.funderAddress); + switch (vm.chainId) { + case '1995': { + // nervos + const ADDRESS_REGEX = new RegExp('^(ckb){1}[0-9a-zA-Z]{43,92}$'); + const isNervosValid = ADDRESS_REGEX.test(vm.form.funderAddress); + + if (!isNervosValid && !vm.form.funderAddress.toLowerCase().startsWith('0x')) { + isValid = false; + } + break; + } + + case '50797': { + // tezos + const ADDRESS_REGEX = new RegExp('^(tz1|tz2|tz3)[0-9a-zA-Z]{33}$'); + const isTezosValid = ADDRESS_REGEX.test(vm.form.funderAddress); + + if (!isTezosValid) { + isValid = false; + } + break; + } + + case '0': { + // btc + const ADDRESS_REGEX = new RegExp('^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$'); + const BECH32_REGEX = new RegExp('^bc1[ac-hj-np-zAC-HJ-NP-Z02-9]{11,71}$'); + const valid_legacy = ADDRESS_REGEX.test(vm.form.funderAddress); + const valid_segwit = BECH32_REGEX.test(vm.form.funderAddress); + + if (!valid_legacy && !valid_segwit) { + isValid = false; + } + break; + } - if (valid_legacy || valid_segwit) { - return true; + // include validation for other chains here } - return false; + return isValid; }, checkForm: async function(e) { let vm = this; @@ -141,7 +172,6 @@ Vue.mixin({ vm.submitted = true; vm.errors = {}; - if (!vm.form.keywords.length) { vm.$set(vm.errors, 'keywords', 'Please select the prize keywords'); } @@ -160,9 +190,8 @@ Vue.mixin({ if (!vm.form.funderAddress) { vm.$set(vm.errors, 'funderAddress', 'Fill the owner wallet address'); } - // validate BTC address - if (vm.chainId == 0 && !vm.validateBtc()) { - vm.$set(vm.errors, 'funderAddress', 'Please enter a valid BTC address'); + if (!vm.validateFunderAddress()) { + vm.$set(vm.errors, 'funderAddress', `Please enter a valid ${vm.form.token.symbol} address`); } if (!vm.form.project_type) { vm.$set(vm.errors, 'project_type', 'Select the project type'); @@ -222,6 +251,10 @@ Vue.mixin({ // sia type = 'sia_ext'; break; + case '50797': + // tezos + type = 'tezos_ext'; + break; case '666': // paypal type = 'fiat'; diff --git a/app/dashboard/management/commands/sync_pending_fulfillments.py b/app/dashboard/management/commands/sync_pending_fulfillments.py index 18f5b0d9136..167256632cc 100644 --- a/app/dashboard/management/commands/sync_pending_fulfillments.py +++ b/app/dashboard/management/commands/sync_pending_fulfillments.py @@ -36,7 +36,7 @@ def handle(self, *args, **options): ) # Extensions - ext_payout_types= ['web3_modal', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext'] + ext_payout_types= ['web3_modal', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext', 'tezos_ext'] for ext_payout_type in ext_payout_types: ext_pending_fulfillments = pending_fulfillments.filter(payout_type=ext_payout_type) for fulfillment in ext_pending_fulfillments.all(): diff --git a/app/dashboard/migrations/0181_auto_20210623_1536.py b/app/dashboard/migrations/0181_auto_20210623_1536.py new file mode 100644 index 00000000000..67c1e7c5473 --- /dev/null +++ b/app/dashboard/migrations/0181_auto_20210623_1536.py @@ -0,0 +1,28 @@ +# Generated by Django 2.2.20 on 2021-06-23 15:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dashboard', '0180_auto_20210503_0431'), + ] + + operations = [ + migrations.AlterField( + model_name='bounty', + name='web3_type', + field=models.CharField(choices=[('legacy_gitcoin', 'Legacy Bounty'), ('bounties_network', 'Bounties Network'), ('qr', 'QR Code'), ('web3_modal', 'Web3 Modal'), ('polkadot_ext', 'Polkadot Ext'), ('binance_ext', 'Binance Ext'), ('harmony_ext', 'Harmony Ext'), ('rsk_ext', 'RSK Ext'), ('xinfin_ext', 'Xinfin Ext'), ('nervos_ext', 'Nervos Ext'), ('algorand_ext', 'Algorand Ext'), ('sia_ext', 'Sia Ext'), ('tezos_ext', 'Tezos Ext'), ('fiat', 'Fiat'), ('manual', 'Manual')], default='bounties_network', max_length=50), + ), + migrations.AlterField( + model_name='bountyfulfillment', + name='payout_type', + field=models.CharField(blank=True, choices=[('bounties_network', 'bounties_network'), ('qr', 'qr'), ('fiat', 'fiat'), ('web3_modal', 'web3_modal'), ('polkadot_ext', 'polkadot_ext'), ('binance_ext', 'binance_ext'), ('harmony_ext', 'harmony_ext'), ('rsk_ext', 'rsk_ext'), ('xinfin_ext', 'xinfin_ext'), ('nervos_ext', 'nervos_ext'), ('algorand_ext', 'algorand_ext'), ('sia_ext', 'sia_ext'), ('tezos_ext', 'tezos_ext'), ('manual', 'manual')], help_text='payment type used to make the payment', max_length=20, null=True), + ), + migrations.AlterField( + model_name='bountyfulfillment', + name='tenant', + field=models.CharField(blank=True, choices=[('BTC', 'BTC'), ('ETH', 'ETH'), ('ETC', 'ETC'), ('ZIL', 'ZIL'), ('CELO', 'CELO'), ('PYPL', 'PYPL'), ('POLKADOT', 'POLKADOT'), ('BINANCE', 'BINANCE'), ('HARMONY', 'HARMONY'), ('FILECOIN', 'FILECOIN'), ('RSK', 'RSK'), ('XINFIN', 'XINFIN'), ('NERVOS', 'NERVOS'), ('ALGORAND', 'ALGORAND'), ('SIA', 'SIA'), ('TEZOS', 'TEZOS'), ('OTHERS', 'OTHERS')], help_text='specific tenant type under the payout_type', max_length=10, null=True), + ), + ] diff --git a/app/dashboard/models.py b/app/dashboard/models.py index dd639164a4c..94c36c53c29 100644 --- a/app/dashboard/models.py +++ b/app/dashboard/models.py @@ -300,6 +300,7 @@ class Bounty(SuperModel): ('nervos_ext', 'Nervos Ext'), ('algorand_ext', 'Algorand Ext'), ('sia_ext', 'Sia Ext'), + ('tezos_ext', 'Tezos Ext'), ('fiat', 'Fiat'), ('manual', 'Manual') ) @@ -1421,6 +1422,7 @@ class BountyFulfillment(SuperModel): ('nervos_ext', 'nervos_ext'), ('algorand_ext', 'algorand_ext'), ('sia_ext', 'sia_ext'), + ('tezos_ext', 'tezos_ext'), ('manual', 'manual') ] @@ -1440,6 +1442,7 @@ class BountyFulfillment(SuperModel): ('NERVOS', 'NERVOS'), ('ALGORAND', 'ALGORAND'), ('SIA', 'SIA'), + ('TEZOS', 'TEZOS'), ('OTHERS', 'OTHERS') ] diff --git a/app/dashboard/sync/rsk.py b/app/dashboard/sync/rsk.py index 35d92d34015..de1d6bb059e 100644 --- a/app/dashboard/sync/rsk.py +++ b/app/dashboard/sync/rsk.py @@ -69,7 +69,6 @@ def get_rsk_txn_status(fulfillment): if txn['success']: return 'success' return 'expired' - return None diff --git a/app/dashboard/sync/tezos.py b/app/dashboard/sync/tezos.py new file mode 100644 index 00000000000..8eda1421be8 --- /dev/null +++ b/app/dashboard/sync/tezos.py @@ -0,0 +1,87 @@ +from django.utils import timezone + +import requests +from dashboard.sync.helpers import record_payout_activity, txn_already_used + +BASE_URL = 'https://api.tzkt.io/v1' + + +def find_txn_on_tezos_explorer(fulfillment): + token_name = fulfillment.token_name + funderAddress = fulfillment.funder_address + payeeAddress = fulfillment.fulfiller_address + amount = fulfillment.payout_amount + txnid = fulfillment.payout_txid + + if token_name != 'XTZ': + return None + + url = f'{BASE_URL}/accounts/{funderAddress}' + + response = requests.get(url).json() + + if response: + for txn in response['operations']: + if ( + txn['type'] == 'transaction' + and txn['hash'].strip() == txnid + and txn['sender']['address'] == funderAddress + and txn['target']['address'] == payeeAddress + and txn['amount'] == float(amount) * 10 ** 6 + and not txn_already_used(txn['hash'], token_name) + ): + return txn + return None + + +def get_tezos_txn_status(fulfillment): + txnid = fulfillment.payout_tx_id + token_name = fulfillment.token_name + funderAddress = fulfillment.funder_address + amount = fulfillment.payout_amount + payeeAddress = fulfillment.fulfiller_address + + if token_name != 'XTZ' or not txnid: + return None + + tx_response = requests.get(f'{BASE_URL}/operations/{txnid}').json() + + if tx_response: + tx_response = tx_response[0] + block_tip = requests.get(f'{BASE_URL}/head').json()['level'] + confirmations = block_tip - tx_response['level'] + if ( + tx_response['type'] == 'transaction' + and tx_response['hash'].strip() == txnid + and tx_response['sender']['address'] == funderAddress + and tx_response['target']['address'] == payeeAddress + and tx_response['amount'] == float(amount) * 10 ** 6 + and tx_response['status'] == 'applied' + and confirmations > 0 + ): + if tx_response['status'] == 'applied': + return 'success' + return 'expired' + + return None + + +def sync_tezos_payout(fulfillment): + if not fulfillment.payout_tx_id or fulfillment.payout_tx_id == "0x0": + txn = find_txn_on_tezos_explorer(fulfillment) + if txn: + fulfillment.payout_tx_id = txn['hash'] + fulfillment.save() + + if fulfillment.payout_tx_id and fulfillment.payout_tx_id != "0x0": + txn_status = get_tezos_txn_status(fulfillment) + + if txn_status == 'success': + fulfillment.payout_status = 'done' + fulfillment.accepted_on = timezone.now() + fulfillment.accepted = True + record_payout_activity(fulfillment) + elif txn_status == 'expired': + fulfillment.payout_status = 'expired' + + fulfillment.save() diff --git a/app/dashboard/templates/bounty/details2.html b/app/dashboard/templates/bounty/details2.html index 18fb96b4c8c..c685b78ab8b 100644 --- a/app/dashboard/templates/bounty/details2.html +++ b/app/dashboard/templates/bounty/details2.html @@ -438,7 +438,7 @@

{% trans "SUBMISSIONS" %}
-
+

Payout

@@ -1150,6 +1150,13 @@

{{ noscript.keywords }}

+ {% elif web3_type == 'tezos_ext' %} + + + + + + {% elif web3_type == 'fiat' %} {% if PYPL_CLIENT_ID %} diff --git a/app/dashboard/templates/bounty/new_bounty.html b/app/dashboard/templates/bounty/new_bounty.html index 4d176c78161..fcbad620975 100644 --- a/app/dashboard/templates/bounty/new_bounty.html +++ b/app/dashboard/templates/bounty/new_bounty.html @@ -135,6 +135,10 @@

Fund Issue

Nervos + + @@ -427,7 +431,7 @@

Fund Issue

Please enter your Binance Wallet address. We are unable to validate a Binance address. Please confirm that you are using the correct Binance address.

-
+
[[errors.funderAddress]]
diff --git a/app/dashboard/templates/dashboard/hackathon/new_bounty.html b/app/dashboard/templates/dashboard/hackathon/new_bounty.html index 5561d6ba2ed..6ab40b0b899 100644 --- a/app/dashboard/templates/dashboard/hackathon/new_bounty.html +++ b/app/dashboard/templates/dashboard/hackathon/new_bounty.html @@ -199,6 +199,10 @@

Fund Prize

Sia + + diff --git a/app/dashboard/utils.py b/app/dashboard/utils.py index 62ea9d3d1aa..3ebd0f8238d 100644 --- a/app/dashboard/utils.py +++ b/app/dashboard/utils.py @@ -51,6 +51,7 @@ from dashboard.sync.polkadot import sync_polkadot_payout from dashboard.sync.rsk import sync_rsk_payout from dashboard.sync.sia import sync_sia_payout +from dashboard.sync.tezos import sync_tezos_payout from dashboard.sync.xinfin import sync_xinfin_payout from dashboard.sync.zil import sync_zil_payout from ens.auto import ns @@ -680,6 +681,9 @@ def sync_payout(fulfillment): elif fulfillment.payout_type == 'sia_ext': sync_sia_payout(fulfillment) + elif fulfillment.payout_type == 'tezos_ext': + sync_tezos_payout(fulfillment) + def get_bounty_id(issue_url, network): issue_url = normalize_url(issue_url) diff --git a/app/dashboard/views.py b/app/dashboard/views.py index f4b935b7697..d86a22c0e60 100644 --- a/app/dashboard/views.py +++ b/app/dashboard/views.py @@ -6427,7 +6427,7 @@ def fulfill_bounty_v1(request): if payout_type == 'fiat' and not fulfiller_identifier: response['message'] = 'error: missing fulfiller_identifier' return JsonResponse(response) - elif payout_type in ['qr', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext'] and not fulfiller_address: + elif payout_type in ['qr', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext', 'tezos_ext'] and not fulfiller_address: response['message'] = 'error: missing fulfiller_address' return JsonResponse(response) @@ -6544,8 +6544,8 @@ def payout_bounty_v1(request, fulfillment_id): if not payout_type: response['message'] = 'error: missing parameter payout_type' return JsonResponse(response) - if payout_type not in ['fiat', 'qr', 'web3_modal', 'polkadot_ext', 'harmony_ext' , 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext', 'manual']: - response['message'] = 'error: parameter payout_type must be fiat / qr / web_modal / polkadot_ext / harmony_ext / binance_ext / rsk_ext / xinfin_ext / nervos_ext / algorand_ext / sia_ext / manual' + if payout_type not in ['fiat', 'qr', 'web3_modal', 'polkadot_ext', 'harmony_ext' , 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext', 'tezos_ext', 'manual']: + response['message'] = 'error: parameter payout_type must be fiat / qr / web_modal / polkadot_ext / harmony_ext / binance_ext / rsk_ext / xinfin_ext / nervos_ext / algorand_ext / sia_ext / tezos_ext / manual' return JsonResponse(response) if payout_type == 'manual' and not bounty.event: response['message'] = 'error: payout_type manual is eligible only for hackathons' @@ -6611,7 +6611,7 @@ def payout_bounty_v1(request, fulfillment_id): fulfillment.save() record_bounty_activity(bounty, user, 'worker_paid', None, fulfillment) - elif payout_type in ['qr', 'web3_modal', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext']: + elif payout_type in ['qr', 'web3_modal', 'polkadot_ext', 'harmony_ext', 'binance_ext', 'rsk_ext', 'xinfin_ext', 'nervos_ext', 'algorand_ext', 'sia_ext', 'tezos_ext']: fulfillment.payout_status = 'pending' fulfillment.save() sync_payout(fulfillment)