diff --git a/dist/eztz.min.js b/dist/eztz.min.js index b90f432..f3f7fc3 100644 --- a/dist/eztz.min.js +++ b/dist/eztz.min.js @@ -1,8 +1,15 @@ -!function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=70)}([function(e,t){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}},function(e,t,r){"use strict";(function(e){ +!function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=81)}([function(e,t){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}},function(e,t,r){"use strict";(function(e){ /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -var n=r(71),i=r(72),a=r(38);function o(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function p(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return D(e).length;default:if(n)return U(e).length;t=(""+t).toLowerCase(),n=!0}}function b(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function _(e,t,r,n,i){if(0===e.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:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:y(e,t,r,n,i);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):y(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function y(e,t,r,n,i){var a,o=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,c/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var f=-1;for(a=r;as&&(r=s-c),a=r;a>=0;a--){for(var h=!0,l=0;li&&(n=i):n=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var o=0;o>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function S(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:u>223?3:u>191?2:1;if(i+h<=r)switch(h){case 1:u<128&&(f=u);break;case 2:128==(192&(a=e[i+1]))&&(c=(31&u)<<6|63&a)>127&&(f=c);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(c=(15&u)<<12|(63&a)<<6|63&o)>2047&&(c<55296||c>57343)&&(f=c);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(c=(15&u)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&c<1114112&&(f=c)}null===f?(f=65533,h=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=h}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var r="",n=0;for(;nthis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return T(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return M(this,t,r);case"latin1":case"binary":return I(this,t,r);case"base64":return S(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return z(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}.apply(this,arguments)},c.prototype.equals=function(e){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===c.compare(this,e)},c.prototype.inspect=function(){var e="",r=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),""},c.prototype.compare=function(e,t,r,n,i){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;for(var a=i-n,o=r-t,s=Math.min(a,o),u=this.slice(n,i),f=e.slice(t,r),h=0;hi)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return m(this,e,t,r);case"utf8":case"utf-8":return g(this,e,t,r);case"ascii":return v(this,e,t,r);case"latin1":case"binary":return w(this,e,t,r);case"base64":return k(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function M(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function C(e,t,r,n){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-r,2);i>>8*(n?i:1-i)}function O(e,t,r,n){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-r,4);i>>8*(n?i:3-i)&255}function j(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function N(e,t,r,n,a){return a||j(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function P(e,t,r,n,a){return a||j(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){var r,n=this.length;if(e=~~e,t=void 0===t?n:~~t,e<0?(e+=n)<0&&(e=0):e>n&&(e=n),t<0?(t+=n)<0&&(t=0):t>n&&(t=n),t0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUInt8=function(e,t){return t||B(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||B(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||B(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||B(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||B(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||B(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||B(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return t||B(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||B(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){t||B(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return t||B(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||B(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||B(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||B(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||B(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||B(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||R(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):C(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):C(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):O(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):O(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):C(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):C(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):O(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):O(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,r){return N(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return N(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return P(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return P(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=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),e.length-t=0;--i)e[i+t]=this[i+r];else if(a<1e3||!c.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function D(e){return n.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(L,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,r,n){for(var i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}}).call(t,r(8))},function(e,t,r){var n=r(1),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},function(e,t,r){(function(e){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"==typeof e?e.exports=a:t.BN=a,a.BN=a,a.wordSize=26;try{o=r(124).Buffer}catch(e){}function s(e,t,r){for(var n=0,i=Math.min(e.length,r),a=t;a=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return n}function c(e,t,r,n){for(var i=0,a=Math.min(e.length,r),o=t;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(e){return e instanceof a||null!==e&&"object"==typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&i++,16===t?this._parseHex(e,i):this._parseBase(e,t,i),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initNumber=function(e,t,r){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(n(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initArray=function(e,t,r){if(n("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)o=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)i=s(e,r,r+6),this.words[n]|=i<>>26-a&4194303,(a+=24)>=26&&(a-=26,n++);r+6!==t&&(i=s(e,t,r+6),this.words[n]|=i<>>26-a&4194303),this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,o=a%n,s=Math.min(a,a-o)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function l(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],o=i*a,s=67108863&o,c=o/67108864|0;r.words[0]=s;for(var u=1;u>>26,h=67108863&c,l=Math.min(u,t.length-1),d=Math.max(0,u-e.length+1);d<=l;d++){var p=u-d|0;f+=(o=(i=0|e.words[p])*(a=0|t.words[d])+h)/67108864|0,h=67108863&o}r.words[u]=0|h,c=0|f}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(e=e||10,t=0|t||1,16===e||"hex"===e){r="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],d=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var b=p.modn(d).toString(e);r=(p=p.idivn(d)).isZero()?b+r:u[l-b.length]+b+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return n(void 0!==o),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),a=r||Math.max(1,i);n(i<=a,"byte array longer than desired length"),n(a>0,"Requested array length <= 0"),this.strip();var o,s,c="le"===t,u=new e(a),f=this.clone();if(c){for(s=0;!f.isZero();s++)o=f.andln(255),f.iushrn(8),u[s]=o;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){n("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){n("number"==typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,o=0;o>26,this.words[o]=67108863&t;for(;0!==a&&o>26,this.words[o]=67108863&t;if(0===a&&o>>13,d=0|o[1],p=8191&d,b=d>>>13,_=0|o[2],y=8191&_,m=_>>>13,g=0|o[3],v=8191&g,w=g>>>13,k=0|o[4],E=8191&k,S=k>>>13,x=0|o[5],A=8191&x,M=x>>>13,I=0|o[6],T=8191&I,z=I>>>13,B=0|o[7],R=8191&B,C=B>>>13,O=0|o[8],j=8191&O,N=O>>>13,P=0|o[9],L=8191&P,q=P>>>13,U=0|s[0],D=8191&U,K=U>>>13,F=0|s[1],Y=8191&F,H=F>>>13,V=0|s[2],G=8191&V,X=V>>>13,W=0|s[3],Z=8191&W,J=W>>>13,$=0|s[4],Q=8191&$,ee=$>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],ae=8191&ie,oe=ie>>>13,se=0|s[7],ce=8191&se,ue=se>>>13,fe=0|s[8],he=8191&fe,le=fe>>>13,de=0|s[9],pe=8191&de,be=de>>>13;r.negative=e.negative^t.negative,r.length=19;var _e=(u+(n=Math.imul(h,D))|0)+((8191&(i=(i=Math.imul(h,K))+Math.imul(l,D)|0))<<13)|0;u=((a=Math.imul(l,K))+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(p,D),i=(i=Math.imul(p,K))+Math.imul(b,D)|0,a=Math.imul(b,K);var ye=(u+(n=n+Math.imul(h,Y)|0)|0)+((8191&(i=(i=i+Math.imul(h,H)|0)+Math.imul(l,Y)|0))<<13)|0;u=((a=a+Math.imul(l,H)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(y,D),i=(i=Math.imul(y,K))+Math.imul(m,D)|0,a=Math.imul(m,K),n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,H)|0)+Math.imul(b,Y)|0,a=a+Math.imul(b,H)|0;var me=(u+(n=n+Math.imul(h,G)|0)|0)+((8191&(i=(i=i+Math.imul(h,X)|0)+Math.imul(l,G)|0))<<13)|0;u=((a=a+Math.imul(l,X)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(v,D),i=(i=Math.imul(v,K))+Math.imul(w,D)|0,a=Math.imul(w,K),n=n+Math.imul(y,Y)|0,i=(i=i+Math.imul(y,H)|0)+Math.imul(m,Y)|0,a=a+Math.imul(m,H)|0,n=n+Math.imul(p,G)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,X)|0;var ge=(u+(n=n+Math.imul(h,Z)|0)|0)+((8191&(i=(i=i+Math.imul(h,J)|0)+Math.imul(l,Z)|0))<<13)|0;u=((a=a+Math.imul(l,J)|0)+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(E,D),i=(i=Math.imul(E,K))+Math.imul(S,D)|0,a=Math.imul(S,K),n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,H)|0)+Math.imul(w,Y)|0,a=a+Math.imul(w,H)|0,n=n+Math.imul(y,G)|0,i=(i=i+Math.imul(y,X)|0)+Math.imul(m,G)|0,a=a+Math.imul(m,X)|0,n=n+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,J)|0)+Math.imul(b,Z)|0,a=a+Math.imul(b,J)|0;var ve=(u+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,ee)|0)+Math.imul(l,Q)|0))<<13)|0;u=((a=a+Math.imul(l,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(A,D),i=(i=Math.imul(A,K))+Math.imul(M,D)|0,a=Math.imul(M,K),n=n+Math.imul(E,Y)|0,i=(i=i+Math.imul(E,H)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,H)|0,n=n+Math.imul(v,G)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(w,G)|0,a=a+Math.imul(w,X)|0,n=n+Math.imul(y,Z)|0,i=(i=i+Math.imul(y,J)|0)+Math.imul(m,Z)|0,a=a+Math.imul(m,J)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,ee)|0;var we=(u+(n=n+Math.imul(h,re)|0)|0)+((8191&(i=(i=i+Math.imul(h,ne)|0)+Math.imul(l,re)|0))<<13)|0;u=((a=a+Math.imul(l,ne)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(T,D),i=(i=Math.imul(T,K))+Math.imul(z,D)|0,a=Math.imul(z,K),n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,H)|0)+Math.imul(M,Y)|0,a=a+Math.imul(M,H)|0,n=n+Math.imul(E,G)|0,i=(i=i+Math.imul(E,X)|0)+Math.imul(S,G)|0,a=a+Math.imul(S,X)|0,n=n+Math.imul(v,Z)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(w,Z)|0,a=a+Math.imul(w,J)|0,n=n+Math.imul(y,Q)|0,i=(i=i+Math.imul(y,ee)|0)+Math.imul(m,Q)|0,a=a+Math.imul(m,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ne)|0;var ke=(u+(n=n+Math.imul(h,ae)|0)|0)+((8191&(i=(i=i+Math.imul(h,oe)|0)+Math.imul(l,ae)|0))<<13)|0;u=((a=a+Math.imul(l,oe)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(R,D),i=(i=Math.imul(R,K))+Math.imul(C,D)|0,a=Math.imul(C,K),n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,H)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,H)|0,n=n+Math.imul(A,G)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(M,G)|0,a=a+Math.imul(M,X)|0,n=n+Math.imul(E,Z)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(S,Z)|0,a=a+Math.imul(S,J)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(w,Q)|0,a=a+Math.imul(w,ee)|0,n=n+Math.imul(y,re)|0,i=(i=i+Math.imul(y,ne)|0)+Math.imul(m,re)|0,a=a+Math.imul(m,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,oe)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,oe)|0;var Ee=(u+(n=n+Math.imul(h,ce)|0)|0)+((8191&(i=(i=i+Math.imul(h,ue)|0)+Math.imul(l,ce)|0))<<13)|0;u=((a=a+Math.imul(l,ue)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(j,D),i=(i=Math.imul(j,K))+Math.imul(N,D)|0,a=Math.imul(N,K),n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,H)|0)+Math.imul(C,Y)|0,a=a+Math.imul(C,H)|0,n=n+Math.imul(T,G)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(z,G)|0,a=a+Math.imul(z,X)|0,n=n+Math.imul(A,Z)|0,i=(i=i+Math.imul(A,J)|0)+Math.imul(M,Z)|0,a=a+Math.imul(M,J)|0,n=n+Math.imul(E,Q)|0,i=(i=i+Math.imul(E,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(w,re)|0,a=a+Math.imul(w,ne)|0,n=n+Math.imul(y,ae)|0,i=(i=i+Math.imul(y,oe)|0)+Math.imul(m,ae)|0,a=a+Math.imul(m,oe)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(b,ce)|0,a=a+Math.imul(b,ue)|0;var Se=(u+(n=n+Math.imul(h,he)|0)|0)+((8191&(i=(i=i+Math.imul(h,le)|0)+Math.imul(l,he)|0))<<13)|0;u=((a=a+Math.imul(l,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(L,D),i=(i=Math.imul(L,K))+Math.imul(q,D)|0,a=Math.imul(q,K),n=n+Math.imul(j,Y)|0,i=(i=i+Math.imul(j,H)|0)+Math.imul(N,Y)|0,a=a+Math.imul(N,H)|0,n=n+Math.imul(R,G)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(C,G)|0,a=a+Math.imul(C,X)|0,n=n+Math.imul(T,Z)|0,i=(i=i+Math.imul(T,J)|0)+Math.imul(z,Z)|0,a=a+Math.imul(z,J)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(M,Q)|0,a=a+Math.imul(M,ee)|0,n=n+Math.imul(E,re)|0,i=(i=i+Math.imul(E,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(v,ae)|0,i=(i=i+Math.imul(v,oe)|0)+Math.imul(w,ae)|0,a=a+Math.imul(w,oe)|0,n=n+Math.imul(y,ce)|0,i=(i=i+Math.imul(y,ue)|0)+Math.imul(m,ce)|0,a=a+Math.imul(m,ue)|0,n=n+Math.imul(p,he)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,le)|0;var xe=(u+(n=n+Math.imul(h,pe)|0)|0)+((8191&(i=(i=i+Math.imul(h,be)|0)+Math.imul(l,pe)|0))<<13)|0;u=((a=a+Math.imul(l,be)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(L,Y),i=(i=Math.imul(L,H))+Math.imul(q,Y)|0,a=Math.imul(q,H),n=n+Math.imul(j,G)|0,i=(i=i+Math.imul(j,X)|0)+Math.imul(N,G)|0,a=a+Math.imul(N,X)|0,n=n+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,J)|0)+Math.imul(C,Z)|0,a=a+Math.imul(C,J)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(M,re)|0,a=a+Math.imul(M,ne)|0,n=n+Math.imul(E,ae)|0,i=(i=i+Math.imul(E,oe)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,oe)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,ue)|0)+Math.imul(w,ce)|0,a=a+Math.imul(w,ue)|0,n=n+Math.imul(y,he)|0,i=(i=i+Math.imul(y,le)|0)+Math.imul(m,he)|0,a=a+Math.imul(m,le)|0;var Ae=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,be)|0)+Math.imul(b,pe)|0))<<13)|0;u=((a=a+Math.imul(b,be)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(L,G),i=(i=Math.imul(L,X))+Math.imul(q,G)|0,a=Math.imul(q,X),n=n+Math.imul(j,Z)|0,i=(i=i+Math.imul(j,J)|0)+Math.imul(N,Z)|0,a=a+Math.imul(N,J)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(C,Q)|0,a=a+Math.imul(C,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(z,re)|0,a=a+Math.imul(z,ne)|0,n=n+Math.imul(A,ae)|0,i=(i=i+Math.imul(A,oe)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,oe)|0,n=n+Math.imul(E,ce)|0,i=(i=i+Math.imul(E,ue)|0)+Math.imul(S,ce)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(v,he)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(w,he)|0,a=a+Math.imul(w,le)|0;var Me=(u+(n=n+Math.imul(y,pe)|0)|0)+((8191&(i=(i=i+Math.imul(y,be)|0)+Math.imul(m,pe)|0))<<13)|0;u=((a=a+Math.imul(m,be)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(L,Z),i=(i=Math.imul(L,J))+Math.imul(q,Z)|0,a=Math.imul(q,J),n=n+Math.imul(j,Q)|0,i=(i=i+Math.imul(j,ee)|0)+Math.imul(N,Q)|0,a=a+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(C,re)|0,a=a+Math.imul(C,ne)|0,n=n+Math.imul(T,ae)|0,i=(i=i+Math.imul(T,oe)|0)+Math.imul(z,ae)|0,a=a+Math.imul(z,oe)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,ue)|0)+Math.imul(M,ce)|0,a=a+Math.imul(M,ue)|0,n=n+Math.imul(E,he)|0,i=(i=i+Math.imul(E,le)|0)+Math.imul(S,he)|0,a=a+Math.imul(S,le)|0;var Ie=(u+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,be)|0)+Math.imul(w,pe)|0))<<13)|0;u=((a=a+Math.imul(w,be)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,ee))+Math.imul(q,Q)|0,a=Math.imul(q,ee),n=n+Math.imul(j,re)|0,i=(i=i+Math.imul(j,ne)|0)+Math.imul(N,re)|0,a=a+Math.imul(N,ne)|0,n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,oe)|0)+Math.imul(C,ae)|0,a=a+Math.imul(C,oe)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,ue)|0)+Math.imul(z,ce)|0,a=a+Math.imul(z,ue)|0,n=n+Math.imul(A,he)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(M,he)|0,a=a+Math.imul(M,le)|0;var Te=(u+(n=n+Math.imul(E,pe)|0)|0)+((8191&(i=(i=i+Math.imul(E,be)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,be)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(L,re),i=(i=Math.imul(L,ne))+Math.imul(q,re)|0,a=Math.imul(q,ne),n=n+Math.imul(j,ae)|0,i=(i=i+Math.imul(j,oe)|0)+Math.imul(N,ae)|0,a=a+Math.imul(N,oe)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(C,ce)|0,a=a+Math.imul(C,ue)|0,n=n+Math.imul(T,he)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(z,he)|0,a=a+Math.imul(z,le)|0;var ze=(u+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,be)|0)+Math.imul(M,pe)|0))<<13)|0;u=((a=a+Math.imul(M,be)|0)+(i>>>13)|0)+(ze>>>26)|0,ze&=67108863,n=Math.imul(L,ae),i=(i=Math.imul(L,oe))+Math.imul(q,ae)|0,a=Math.imul(q,oe),n=n+Math.imul(j,ce)|0,i=(i=i+Math.imul(j,ue)|0)+Math.imul(N,ce)|0,a=a+Math.imul(N,ue)|0,n=n+Math.imul(R,he)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(C,he)|0,a=a+Math.imul(C,le)|0;var Be=(u+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,be)|0)+Math.imul(z,pe)|0))<<13)|0;u=((a=a+Math.imul(z,be)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863,n=Math.imul(L,ce),i=(i=Math.imul(L,ue))+Math.imul(q,ce)|0,a=Math.imul(q,ue),n=n+Math.imul(j,he)|0,i=(i=i+Math.imul(j,le)|0)+Math.imul(N,he)|0,a=a+Math.imul(N,le)|0;var Re=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,be)|0)+Math.imul(C,pe)|0))<<13)|0;u=((a=a+Math.imul(C,be)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(L,he),i=(i=Math.imul(L,le))+Math.imul(q,he)|0,a=Math.imul(q,le);var Ce=(u+(n=n+Math.imul(j,pe)|0)|0)+((8191&(i=(i=i+Math.imul(j,be)|0)+Math.imul(N,pe)|0))<<13)|0;u=((a=a+Math.imul(N,be)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863;var Oe=(u+(n=Math.imul(L,pe))|0)+((8191&(i=(i=Math.imul(L,be))+Math.imul(q,pe)|0))<<13)|0;return u=((a=Math.imul(q,be))+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,c[0]=_e,c[1]=ye,c[2]=me,c[3]=ge,c[4]=ve,c[5]=we,c[6]=ke,c[7]=Ee,c[8]=Se,c[9]=xe,c[10]=Ae,c[11]=Me,c[12]=Ie,c[13]=Te,c[14]=ze,c[15]=Be,c[16]=Re,c[17]=Ce,c[18]=Oe,0!==u&&(c[19]=u,r.length++),r};function p(e,t,r){return(new b).mulp(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(d=l),a.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?d(this,e,t):r<63?l(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,n=o,o=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):p(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o>=26,t+=i/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new a(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,u=0;u=0&&(0!==f||u>=i);u--){var h=0|this.words[u];this.words[u]=f<<26-a|h>>>a,f=h&s}return c&&0!==f&&(c.words[c.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){n("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(n("number"==typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&a}for(;i>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new a(null)).length=c+1,s.words=new Array(s.length);for(var u=0;u=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:i,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},a.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new a(1),o=new a(0),s=new a(0),c=new a(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var f=r.clone(),h=t.clone();!t.isZero();){for(var l=0,d=1;0==(t.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(t.iushrn(l);l-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(f),o.isub(h)),i.iushrn(1),o.iushrn(1);for(var p=0,b=1;0==(r.words[0]&b)&&p<26;++p,b<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(f),c.isub(h)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),o.isub(c)):(r.isub(t),s.isub(i),c.isub(o))}return{a:s,b:c,gcd:r.iushln(u)}},a.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,o=new a(1),s=new a(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,f=1;0==(t.words[0]&f)&&u<26;++u,f<<=1);if(u>0)for(t.iushrn(u);u-- >0;)o.isOdd()&&o.iadd(c),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(i=0===t.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(e),i},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){n("number"==typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new k(e)},a.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var _={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function g(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function v(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"==typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function E(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(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)}y.prototype._tmp=function(){var e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):r.strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(m,y),m.prototype.split=function(e,t){for(var r=Math.min(e.length,9),n=0;n>>22,i=a}i>>>=22,e.words[n-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},m.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(_[e])return _[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new g;else if("p192"===e)t=new v;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new w}return _[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0==(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2==1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);n(!i.isZero());var s=new a(1).toRed(this),c=s.redNeg(),u=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new a(2*f*f).toRed(this);0!==this.pow(f,u).cmp(c);)f.redIAdd(c);for(var h=this.pow(f,i),l=this.pow(e,i.addn(1).iushrn(1)),d=this.pow(e,i),p=o;0!==d.cmp(s);){for(var b=d,_=0;0!==b.cmp(s);_++)b=b.redSqr();n(_=0;n--){for(var u=t.words[n],f=c-1;f>=0;f--){var h=u>>f&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===f)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}c=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new E(e)},i(E,k),E.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},E.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},E.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},E.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},E.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(void 0===e||e,this)}).call(t,r(123)(e))},function(e,t,r){"use strict";var n=t;n.version=r(130).version,n.utils=r(131),n.rand=r(57),n.curve=r(24),n.curves=r(136),n.ec=r(144),n.eddsa=r(148)},function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},function(e,t){var r,n,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(e){if(r===setTimeout)return setTimeout(e,0);if((r===a||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:a}catch(e){r=a}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(e){n=o}}();var c,u=[],f=!1,h=-1;function l(){f&&c&&(f=!1,c.length?u=c.concat(u):h=-1,u.length&&d())}function d(){if(!f){var e=s(l);f=!0;for(var t=u.length;t;){for(c=u,u=[];++h1)for(var r=1;r>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function o(e){return 1===e.length?"0"+e:e}function s(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n>8,o=255&i;a?r.push(a,o):r.push(o)}else for(n=0;n>>0}return o},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,o=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,a,o,s){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,a,o,s){return t+n+a+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,a,o,s,c,u){var f=0,h=t;return f+=(h=h+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,a,o,s,c,u){return t+n+a+s+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},function(e,t){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){var n=r(2).Buffer,i=r(19).Transform,a=r(31).StringDecoder;function o(e){i.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(0)(o,i),o.prototype.update=function(e,t,r){"string"==typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},o.prototype.setAutoPadding=function(){},o.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},o.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},o.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},o.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){n=e}finally{r(n)}},o.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},o.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},o.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=o},function(e,t,r){"use strict";(function(t){var n=r(0),i=r(26),a=r(27),o=r(32),s=r(9);function c(e){s.call(this,"digest"),this._hash=e,this.buffers=[]}function u(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this.buffers.push(e)},c.prototype._final=function(){var e=t.concat(this.buffers),r=this._hash(e);return this.buffers=null,r},n(u,s),u.prototype._update=function(e){this._hash.update(e)},u.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new c(i):new u("rmd160"===e||"ripemd160"===e?new a:o(e))}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(20),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=h;var a=r(14);a.inherits=r(0);var o=r(39),s=r(30);a.inherits(h,o);for(var c=i(s.prototype),u=0;u=8*this._finalSize&&(this._update(this._block),this._block.fill(0)),this._block.writeInt32BE(t,this._blockSize-4);var r=this._update(this._block)||this._hash();return e?r.toString(e):r},r.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=r}).call(t,r(1).Buffer)},function(e,t,r){"use strict";(function(t,n){var i=r(2).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,r){if(e>65536)throw new Error("requested too many random bytes");var o=new t.Uint8Array(e);e>0&&a.getRandomValues(o);var s=i.from(o.buffer);if("function"==typeof r)return n.nextTick(function(){r(null,s)});return s}:e.exports=function(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}}).call(t,r(8),r(6))},function(e,t,r){(function(e){function r(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===r(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===r(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===r(e)},t.isError=function(e){return"[object Error]"===r(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=e.isBuffer}).call(t,r(1).Buffer)},function(e,t,r){(function(t){e.exports=function(e,r){for(var n=Math.min(e.length,r.length),i=new t(n),a=0;a=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a0||a>0;){var f=new i;f.update(u),f.update(e),t&&f.update(t),u=f.digest();var h=0;if(o>0){var l=s.length-o;h=Math.min(o,u.length),u.copy(s,l,0,h),o-=h}if(h0){var d=c.length-a,p=Math.min(a,u.length-h);u.copy(c,d,h,h+p),a-=p}}return u.fill(0),{key:s,iv:c}}},function(e,t,r){var n=r(2).Buffer;function i(e){n.isBuffer(e)||(e=n.from(e));for(var t=e.length/4|0,r=new Array(t),i=0;i>>24]^f[p>>>16&255]^h[b>>>8&255]^l[255&_]^t[y++],o=u[p>>>24]^f[b>>>16&255]^h[_>>>8&255]^l[255&d]^t[y++],s=u[b>>>24]^f[_>>>16&255]^h[d>>>8&255]^l[255&p]^t[y++],c=u[_>>>24]^f[d>>>16&255]^h[p>>>8&255]^l[255&b]^t[y++],d=a,p=o,b=s,_=c;return a=(n[d>>>24]<<24|n[p>>>16&255]<<16|n[b>>>8&255]<<8|n[255&_])^t[y++],o=(n[p>>>24]<<24|n[b>>>16&255]<<16|n[_>>>8&255]<<8|n[255&d])^t[y++],s=(n[b>>>24]<<24|n[_>>>16&255]<<16|n[d>>>8&255]<<8|n[255&p])^t[y++],c=(n[_>>>24]<<24|n[d>>>16&255]<<16|n[p>>>8&255]<<8|n[255&b])^t[y++],[a>>>=0,o>>>=0,s>>>=0,c>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],c=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var r=[],n=[],i=[[],[],[],[]],a=[[],[],[],[]],o=0,s=0,c=0;c<256;++c){var u=s^s<<1^s<<2^s<<3^s<<4;u=u>>>8^255&u^99,r[o]=u,n[u]=o;var f=e[o],h=e[f],l=e[h],d=257*e[u]^16843008*u;i[0][o]=d<<24|d>>>8,i[1][o]=d<<16|d>>>16,i[2][o]=d<<8|d>>>24,i[3][o]=d,d=16843009*l^65537*h^257*f^16843008*o,a[0][u]=d<<24|d>>>8,a[1][u]=d<<16|d>>>16,a[2][u]=d<<8|d>>>24,a[3][u]=d,0===o?o=s=1:(o=f^e[e[e[l^f]]],s^=e[e[s]])}return{SBOX:r,INV_SBOX:n,SUB_MIX:i,INV_SUB_MIX:a}}();function u(e){this._key=i(e),this._reset()}u.blockSize=16,u.keySize=32,u.prototype.blockSize=u.blockSize,u.prototype.keySize=u.keySize,u.prototype._reset=function(){for(var e=this._key,t=e.length,r=t+6,n=4*(r+1),i=[],a=0;a>>24,o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o],o^=s[a/t|0]<<24):t>6&&a%t==4&&(o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o]),i[a]=i[a-t]^o}for(var u=[],f=0;f>>24]]^c.INV_SUB_MIX[1][c.SBOX[l>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[l>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&l]]}this._nRounds=r,this._keySchedule=i,this._invKeySchedule=u},u.prototype.encryptBlockRaw=function(e){return o(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},u.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),r=n.allocUnsafe(16);return r.writeUInt32BE(t[0],0),r.writeUInt32BE(t[1],4),r.writeUInt32BE(t[2],8),r.writeUInt32BE(t[3],12),r},u.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var r=o(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),a=n.allocUnsafe(16);return a.writeUInt32BE(r[0],0),a.writeUInt32BE(r[3],4),a.writeUInt32BE(r[2],8),a.writeUInt32BE(r[1],12),a},u.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},e.exports.AES=u},function(e,t,r){"use strict";var n=t;n.base=r(132),n.short=r(133),n.mont=r(134),n.edwards=r(135)},function(e,t,r){(function(t){var n=r(151),i=r(163),a=r(164),o=r(33),s=r(21);function c(e){var r;"object"!=typeof e||t.isBuffer(e)||(r=e.passphrase,e=e.key),"string"==typeof e&&(e=new t(e));var c,u,f=a(e,r),h=f.tag,l=f.data;switch(h){case"CERTIFICATE":u=n.certificate.decode(l,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(u||(u=n.PublicKey.decode(l,"der")),c=u.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return n.RSAPublicKey.decode(u.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return u.subjectPrivateKey=u.subjectPublicKey,{type:"ec",data:u};case"1.2.840.10040.4.1":return u.algorithm.params.pub_key=n.DSAparam.decode(u.subjectPublicKey.data,"der"),{type:"dsa",data:u.algorithm.params};default:throw new Error("unknown key id "+c)}throw new Error("unknown key type "+h);case"ENCRYPTED PRIVATE KEY":l=function(e,r){var n=e.algorithm.decrypt.kde.kdeparams.salt,a=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),c=i[e.algorithm.decrypt.cipher.algo.join(".")],u=e.algorithm.decrypt.cipher.iv,f=e.subjectPrivateKey,h=parseInt(c.split("-")[1],10)/8,l=s.pbkdf2Sync(r,n,a,h),d=o.createDecipheriv(c,l,u),p=[];return p.push(d.update(f)),p.push(d.final()),t.concat(p)}(l=n.EncryptedPrivateKey.decode(l,"der"),r);case"PRIVATE KEY":switch(c=(u=n.PrivateKey.decode(l,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return n.RSAPrivateKey.decode(u.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:u.algorithm.curve,privateKey:n.ECPrivateKey.decode(u.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return u.algorithm.params.priv_key=n.DSAparam.decode(u.subjectPrivateKey,"der"),{type:"dsa",params:u.algorithm.params};default:throw new Error("unknown key id "+c)}throw new Error("unknown key type "+h);case"RSA PUBLIC KEY":return n.RSAPublicKey.decode(l,"der");case"RSA PRIVATE KEY":return n.RSAPrivateKey.decode(l,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:n.DSAPrivateKey.decode(l,"der")};case"EC PRIVATE KEY":return{curve:(l=n.ECPrivateKey.decode(l,"der")).parameters.value,privateKey:l.privateKey};default:throw new Error("unknown key type "+h)}}e.exports=c,c.signature=n.signature}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(76);function i(e,t){e[t>>5]|=128<>>9<<4)]=t;for(var r=1732584193,n=-271733879,i=-1732584194,a=271733878,h=0;h>>32-s,r);var o,s}function o(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function s(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function f(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}e.exports=function(e){return n(e,i)}},function(e,t,r){"use strict";(function(t){var n=r(0),i=r(77);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function o(e,t){return e<>>32-t}function s(e,t,r,n,i,a,s,c){return o(e+(t^r^n)+a+s|0,c)+i|0}function c(e,t,r,n,i,a,s,c){return o(e+(t&r|~t&n)+a+s|0,c)+i|0}function u(e,t,r,n,i,a,s,c){return o(e+((t|~r)^n)+a+s|0,c)+i|0}function f(e,t,r,n,i,a,s,c){return o(e+(t&n|r&~n)+a+s|0,c)+i|0}function h(e,t,r,n,i,a,s,c){return o(e+(t^(r|~n))+a+s|0,c)+i|0}n(a,i),a.prototype._update=function(){for(var e=new Array(16),t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,a=this._d,l=this._e;l=s(l,r=s(r,n,i,a,l,e[0],0,11),n,i=o(i,10),a,e[1],0,14),n=s(n=o(n,10),i=s(i,a=s(a,l,r,n,i,e[2],0,15),l,r=o(r,10),n,e[3],0,12),a,l=o(l,10),r,e[4],0,5),a=s(a=o(a,10),l=s(l,r=s(r,n,i,a,l,e[5],0,8),n,i=o(i,10),a,e[6],0,7),r,n=o(n,10),i,e[7],0,9),r=s(r=o(r,10),n=s(n,i=s(i,a,l,r,n,e[8],0,11),a,l=o(l,10),r,e[9],0,13),i,a=o(a,10),l,e[10],0,14),i=s(i=o(i,10),a=s(a,l=s(l,r,n,i,a,e[11],0,15),r,n=o(n,10),i,e[12],0,6),l,r=o(r,10),n,e[13],0,7),l=c(l=o(l,10),r=s(r,n=s(n,i,a,l,r,e[14],0,9),i,a=o(a,10),l,e[15],0,8),n,i=o(i,10),a,e[7],1518500249,7),n=c(n=o(n,10),i=c(i,a=c(a,l,r,n,i,e[4],1518500249,6),l,r=o(r,10),n,e[13],1518500249,8),a,l=o(l,10),r,e[1],1518500249,13),a=c(a=o(a,10),l=c(l,r=c(r,n,i,a,l,e[10],1518500249,11),n,i=o(i,10),a,e[6],1518500249,9),r,n=o(n,10),i,e[15],1518500249,7),r=c(r=o(r,10),n=c(n,i=c(i,a,l,r,n,e[3],1518500249,15),a,l=o(l,10),r,e[12],1518500249,7),i,a=o(a,10),l,e[0],1518500249,12),i=c(i=o(i,10),a=c(a,l=c(l,r,n,i,a,e[9],1518500249,15),r,n=o(n,10),i,e[5],1518500249,9),l,r=o(r,10),n,e[2],1518500249,11),l=c(l=o(l,10),r=c(r,n=c(n,i,a,l,r,e[14],1518500249,7),i,a=o(a,10),l,e[11],1518500249,13),n,i=o(i,10),a,e[8],1518500249,12),n=u(n=o(n,10),i=u(i,a=u(a,l,r,n,i,e[3],1859775393,11),l,r=o(r,10),n,e[10],1859775393,13),a,l=o(l,10),r,e[14],1859775393,6),a=u(a=o(a,10),l=u(l,r=u(r,n,i,a,l,e[4],1859775393,7),n,i=o(i,10),a,e[9],1859775393,14),r,n=o(n,10),i,e[15],1859775393,9),r=u(r=o(r,10),n=u(n,i=u(i,a,l,r,n,e[8],1859775393,13),a,l=o(l,10),r,e[1],1859775393,15),i,a=o(a,10),l,e[2],1859775393,14),i=u(i=o(i,10),a=u(a,l=u(l,r,n,i,a,e[7],1859775393,8),r,n=o(n,10),i,e[0],1859775393,13),l,r=o(r,10),n,e[6],1859775393,6),l=u(l=o(l,10),r=u(r,n=u(n,i,a,l,r,e[13],1859775393,5),i,a=o(a,10),l,e[11],1859775393,12),n,i=o(i,10),a,e[5],1859775393,7),n=f(n=o(n,10),i=f(i,a=u(a,l,r,n,i,e[12],1859775393,5),l,r=o(r,10),n,e[1],2400959708,11),a,l=o(l,10),r,e[9],2400959708,12),a=f(a=o(a,10),l=f(l,r=f(r,n,i,a,l,e[11],2400959708,14),n,i=o(i,10),a,e[10],2400959708,15),r,n=o(n,10),i,e[0],2400959708,14),r=f(r=o(r,10),n=f(n,i=f(i,a,l,r,n,e[8],2400959708,15),a,l=o(l,10),r,e[12],2400959708,9),i,a=o(a,10),l,e[4],2400959708,8),i=f(i=o(i,10),a=f(a,l=f(l,r,n,i,a,e[13],2400959708,9),r,n=o(n,10),i,e[3],2400959708,14),l,r=o(r,10),n,e[7],2400959708,5),l=f(l=o(l,10),r=f(r,n=f(n,i,a,l,r,e[15],2400959708,6),i,a=o(a,10),l,e[14],2400959708,8),n,i=o(i,10),a,e[5],2400959708,6),n=h(n=o(n,10),i=f(i,a=f(a,l,r,n,i,e[6],2400959708,5),l,r=o(r,10),n,e[2],2400959708,12),a,l=o(l,10),r,e[4],2840853838,9),a=h(a=o(a,10),l=h(l,r=h(r,n,i,a,l,e[0],2840853838,15),n,i=o(i,10),a,e[5],2840853838,5),r,n=o(n,10),i,e[9],2840853838,11),r=h(r=o(r,10),n=h(n,i=h(i,a,l,r,n,e[7],2840853838,6),a,l=o(l,10),r,e[12],2840853838,8),i,a=o(a,10),l,e[2],2840853838,13),i=h(i=o(i,10),a=h(a,l=h(l,r,n,i,a,e[10],2840853838,12),r,n=o(n,10),i,e[14],2840853838,5),l,r=o(r,10),n,e[1],2840853838,12),l=h(l=o(l,10),r=h(r,n=h(n,i,a,l,r,e[3],2840853838,13),i,a=o(a,10),l,e[8],2840853838,14),n,i=o(i,10),a,e[11],2840853838,11),n=h(n=o(n,10),i=h(i,a=h(a,l,r,n,i,e[6],2840853838,8),l,r=o(r,10),n,e[15],2840853838,5),a,l=o(l,10),r,e[13],2840853838,6),a=o(a,10);var d=this._a,p=this._b,b=this._c,_=this._d,y=this._e;y=h(y,d=h(d,p,b,_,y,e[5],1352829926,8),p,b=o(b,10),_,e[14],1352829926,9),p=h(p=o(p,10),b=h(b,_=h(_,y,d,p,b,e[7],1352829926,9),y,d=o(d,10),p,e[0],1352829926,11),_,y=o(y,10),d,e[9],1352829926,13),_=h(_=o(_,10),y=h(y,d=h(d,p,b,_,y,e[2],1352829926,15),p,b=o(b,10),_,e[11],1352829926,15),d,p=o(p,10),b,e[4],1352829926,5),d=h(d=o(d,10),p=h(p,b=h(b,_,y,d,p,e[13],1352829926,7),_,y=o(y,10),d,e[6],1352829926,7),b,_=o(_,10),y,e[15],1352829926,8),b=h(b=o(b,10),_=h(_,y=h(y,d,p,b,_,e[8],1352829926,11),d,p=o(p,10),b,e[1],1352829926,14),y,d=o(d,10),p,e[10],1352829926,14),y=f(y=o(y,10),d=h(d,p=h(p,b,_,y,d,e[3],1352829926,12),b,_=o(_,10),y,e[12],1352829926,6),p,b=o(b,10),_,e[6],1548603684,9),p=f(p=o(p,10),b=f(b,_=f(_,y,d,p,b,e[11],1548603684,13),y,d=o(d,10),p,e[3],1548603684,15),_,y=o(y,10),d,e[7],1548603684,7),_=f(_=o(_,10),y=f(y,d=f(d,p,b,_,y,e[0],1548603684,12),p,b=o(b,10),_,e[13],1548603684,8),d,p=o(p,10),b,e[5],1548603684,9),d=f(d=o(d,10),p=f(p,b=f(b,_,y,d,p,e[10],1548603684,11),_,y=o(y,10),d,e[14],1548603684,7),b,_=o(_,10),y,e[15],1548603684,7),b=f(b=o(b,10),_=f(_,y=f(y,d,p,b,_,e[8],1548603684,12),d,p=o(p,10),b,e[12],1548603684,7),y,d=o(d,10),p,e[4],1548603684,6),y=f(y=o(y,10),d=f(d,p=f(p,b,_,y,d,e[9],1548603684,15),b,_=o(_,10),y,e[1],1548603684,13),p,b=o(b,10),_,e[2],1548603684,11),p=u(p=o(p,10),b=u(b,_=u(_,y,d,p,b,e[15],1836072691,9),y,d=o(d,10),p,e[5],1836072691,7),_,y=o(y,10),d,e[1],1836072691,15),_=u(_=o(_,10),y=u(y,d=u(d,p,b,_,y,e[3],1836072691,11),p,b=o(b,10),_,e[7],1836072691,8),d,p=o(p,10),b,e[14],1836072691,6),d=u(d=o(d,10),p=u(p,b=u(b,_,y,d,p,e[6],1836072691,6),_,y=o(y,10),d,e[9],1836072691,14),b,_=o(_,10),y,e[11],1836072691,12),b=u(b=o(b,10),_=u(_,y=u(y,d,p,b,_,e[8],1836072691,13),d,p=o(p,10),b,e[12],1836072691,5),y,d=o(d,10),p,e[2],1836072691,14),y=u(y=o(y,10),d=u(d,p=u(p,b,_,y,d,e[10],1836072691,13),b,_=o(_,10),y,e[0],1836072691,13),p,b=o(b,10),_,e[4],1836072691,7),p=c(p=o(p,10),b=c(b,_=u(_,y,d,p,b,e[13],1836072691,5),y,d=o(d,10),p,e[8],2053994217,15),_,y=o(y,10),d,e[6],2053994217,5),_=c(_=o(_,10),y=c(y,d=c(d,p,b,_,y,e[4],2053994217,8),p,b=o(b,10),_,e[1],2053994217,11),d,p=o(p,10),b,e[3],2053994217,14),d=c(d=o(d,10),p=c(p,b=c(b,_,y,d,p,e[11],2053994217,14),_,y=o(y,10),d,e[15],2053994217,6),b,_=o(_,10),y,e[0],2053994217,14),b=c(b=o(b,10),_=c(_,y=c(y,d,p,b,_,e[5],2053994217,6),d,p=o(p,10),b,e[12],2053994217,9),y,d=o(d,10),p,e[2],2053994217,12),y=c(y=o(y,10),d=c(d,p=c(p,b,_,y,d,e[13],2053994217,9),b,_=o(_,10),y,e[9],2053994217,12),p,b=o(b,10),_,e[7],2053994217,5),p=s(p=o(p,10),b=c(b,_=c(_,y,d,p,b,e[10],2053994217,15),y,d=o(d,10),p,e[14],2053994217,8),_,y=o(y,10),d,e[12],0,8),_=s(_=o(_,10),y=s(y,d=s(d,p,b,_,y,e[15],0,5),p,b=o(b,10),_,e[10],0,12),d,p=o(p,10),b,e[4],0,9),d=s(d=o(d,10),p=s(p,b=s(b,_,y,d,p,e[1],0,12),_,y=o(y,10),d,e[5],0,5),b,_=o(_,10),y,e[8],0,14),b=s(b=o(b,10),_=s(_,y=s(y,d,p,b,_,e[7],0,6),d,p=o(p,10),b,e[6],0,8),y,d=o(d,10),p,e[2],0,13),y=s(y=o(y,10),d=s(d,p=s(p,b,_,y,d,e[13],0,6),b,_=o(_,10),y,e[14],0,5),p,b=o(b,10),_,e[0],0,15),p=s(p=o(p,10),b=s(b,_=s(_,y,d,p,b,e[3],0,13),y,d=o(d,10),p,e[9],0,11),_,y=o(y,10),d,e[11],0,11),_=o(_,10);var m=this._b+i+_|0;this._b=this._c+a+y|0,this._c=this._d+l+d|0,this._d=this._e+r+p|0,this._e=this._a+n+b|0,this._a=m},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 e=new t(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=a}).call(t,r(1).Buffer)},function(e,t){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function n(e){return"function"==typeof e}function i(e){return"object"==typeof e&&null!==e}function a(e){return void 0===e}e.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,r,o,s,c,u;if(this._events||(this._events={}),"error"===e&&(!this._events.error||i(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var f=new Error('Uncaught, unspecified "error" event. ('+t+")");throw f.context=t,f}if(a(r=this._events[e]))return!1;if(n(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),r.apply(this,s)}else if(i(r))for(s=Array.prototype.slice.call(arguments,1),o=(u=r.slice()).length,c=0;c0&&this._events[e].length>o&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!n(t))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(e,i),r||(r=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},r.prototype.removeListener=function(e,t){var r,a,o,s;if(!n(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(r=this._events[e]).length,a=-1,r===t||n(r.listener)&&r.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(i(r)){for(s=o;s-- >0;)if(r[s]===t||r[s].listener&&r[s].listener===t){a=s;break}if(a<0)return this;1===r.length?(r.length=0,delete this._events[e]):r.splice(a,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n(r=this._events[e]))this.removeListener(e,r);else if(r)for(;r.length;)this.removeListener(e,r[r.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?n(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(n(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,r){(t=e.exports=r(39)).Stream=t,t.Readable=t,t.Writable=r(30),t.Duplex=r(11),t.Transform=r(42),t.PassThrough=r(83)},function(e,t,r){"use strict";(function(t,n,i){var a=r(20);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=m;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?n:a;m.WritableState=y;var u=r(14);u.inherits=r(0);var f={deprecate:r(82)},h=r(40),l=r(2).Buffer,d=i.Uint8Array||function(){};var p,b=r(41);function _(){}function y(e,t){s=s||r(11),e=e||{},this.objectMode=!!e.objectMode,t instanceof s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var n=e.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i,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 u=!1===e.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(a(i,n),a(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",n)):(i(n),e._writableState.errorEmitted=!0,e.emit("error",n),S(e,t))}(e,r,n,t,i);else{var o=k(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||w(e,r),n?c(v,e,r,o,i):v(e,r,o,i)}}(t,e)},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 o(this)}function m(e){if(s=s||r(11),!(p.call(m,this)||this instanceof s))return new m(e);this._writableState=new y(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),h.call(this)}function g(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function v(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),S(e,t)}function w(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,g(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t)}else{for(;r;){var u=r.chunk,f=r.encoding,h=r.callback;if(g(e,t,!1,t.objectMode?1:u.length,u,f,h),r=r.next,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=r,t.bufferProcessing=!1}function k(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),S(e,t)})}function S(e,t){var r=k(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}u.inherits(m,h),y.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(y.prototype,"buffer",{get:f.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(m,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||e&&e._writableState instanceof y}})):p=function(e){return e instanceof this},m.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},m.prototype.write=function(e,t,r){var n,i=this._writableState,o=!1,s=(n=e,(l.isBuffer(n)||n instanceof d)&&!i.objectMode);return s&&!l.isBuffer(e)&&(e=function(e){return l.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=_),i.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),a(t,r)}(this,r):(s||function(e,t,r,n){var i=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a(n,o),i=!1),i}(this,i,e,r))&&(i.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=l.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},m.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},m.prototype._writev=null,m.prototype.end=function(e,t,r){var n=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(e,t,r){t.ending=!0,S(e,t),r&&(t.finished?a(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r)},Object.defineProperty(m.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),m.prototype.destroy=b.destroy,m.prototype._undestroy=b.undestroy,m.prototype._destroy=function(e,t){this.end(),t(e)}}).call(t,r(6),r(80).setImmediate,r(8))},function(e,t,r){"use strict";var n=r(2).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=f,this.end=h,t=3;break;default:return this.write=l,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:-1}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�".repeat(r);if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�".repeat(r+1);if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�".repeat(r+2)}}(this,e,t);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function f(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function l(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,r){(t=e.exports=function(e){e=e.toLowerCase();var r=t[e];if(!r)throw new Error(e+" is not supported (we accept pull requests)");return new r}).sha=r(88),t.sha1=r(89),t.sha224=r(90),t.sha256=r(43),t.sha384=r(91),t.sha512=r(44)},function(e,t,r){var n=r(106),i=r(114),a=r(52);t.createCipher=t.Cipher=n.createCipher,t.createCipheriv=t.Cipheriv=n.createCipheriv,t.createDecipher=t.Decipher=i.createDecipher,t.createDecipheriv=t.Decipheriv=i.createDecipheriv,t.listCiphers=t.getCiphers=function(){return Object.keys(a)}},function(e,t,r){var n={ECB:r(107),CBC:r(108),CFB:r(109),CFB8:r(110),CFB1:r(111),OFB:r(112),CTR:r(50),GCM:r(50)},i=r(52);for(var a in i)i[a].module=n[i[a].mode];e.exports=i},function(e,t,r){"use strict";t.utils=r(116),t.Cipher=r(117),t.DES=r(118),t.CBC=r(119),t.EDE=r(120)},function(e,t,r){(function(t){var n=r(3),i=r(13);function a(e,r){var i=function(e){var t=o(e);return{blinder:t.toRed(n.mont(e.modulus)).redPow(new n(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(r),a=r.modulus.byteLength(),s=(n.mont(r.modulus),new n(e).mul(i.blinder).umod(r.modulus)),c=s.toRed(n.mont(r.prime1)),u=s.toRed(n.mont(r.prime2)),f=r.coefficient,h=r.prime1,l=r.prime2,d=c.redPow(r.exponent1),p=u.redPow(r.exponent2);d=d.fromRed(),p=p.fromRed();var b=d.isub(p).imul(f).umod(h);return b.imul(l),p.iadd(b),new t(p.imul(i.unblinder).umod(r.modulus).toArray(!1,a))}function o(e){for(var t=e.modulus.byteLength(),r=new n(i(t));r.cmp(e.modulus)>=0||!r.umod(e.prime1)||!r.umod(e.prime2);)r=new n(i(t));return r}e.exports=a,a.getr=o}).call(t,r(1).Buffer)},function(e,t,r){var n=t;n.utils=r(7),n.common=r(16),n.sha=r(137),n.ripemd=r(141),n.hmac=r(142),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,r){"use strict";(function(t,n){var i=r(20);e.exports=g;var a,o=r(38);g.ReadableState=m;r(28).EventEmitter;var s=function(e,t){return e.listeners(t).length},c=r(40),u=r(2).Buffer,f=t.Uint8Array||function(){};var h=r(14);h.inherits=r(0);var l=r(78),d=void 0;d=l&&l.debuglog?l.debuglog("stream"):function(){};var p,b=r(79),_=r(41);h.inherits(g,c);var y=["error","close","destroy","pause","resume"];function m(e,t){a=a||r(11),e=e||{},this.objectMode=!!e.objectMode,t instanceof a&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var n=e.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new b,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(p||(p=r(31).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function g(e){if(a=a||r(11),!(this instanceof g))return new g(e);this._readableState=new m(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),c.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,u.isBuffer(n)||n instanceof f||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?w(e,o,t,!1):A(e,o)):w(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(d("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i(x,e):x(e))}function x(e){d("emit readable"),e.emit("readable"),z(e)}function A(e,t){t.readingMore||(t.readingMore=!0,i(M,e,t))}function M(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;ea.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=u.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function R(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i(C,t,e))}function C(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function O(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return d("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?R(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&R(this),null;var n,i=t.needReadable;return d("need readable",i),(0===t.length||t.length-e0?B(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&R(this)),null!==n&&this.emit("data",n),n},g.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},g.prototype.pipe=function(e,t){var r=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,d("pipe count=%d opts=%j",a.pipesCount,t);var c=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:g;function u(t,n){d("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,d("cleanup"),e.removeListener("close",y),e.removeListener("finish",m),e.removeListener("drain",h),e.removeListener("error",_),e.removeListener("unpipe",u),r.removeListener("end",f),r.removeListener("end",g),r.removeListener("data",b),l=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function f(){d("onend"),e.end()}a.endEmitted?i(c):r.once("end",c),e.on("unpipe",u);var h=function(e){return function(){var t=e._readableState;d("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,z(e))}}(r);e.on("drain",h);var l=!1;var p=!1;function b(t){d("ondata"),p=!1,!1!==e.write(t)||p||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==O(a.pipes,e))&&!l&&(d("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,p=!0),r.pause())}function _(t){d("onerror",t),g(),e.removeListener("error",_),0===s(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",m),g()}function m(){d("onfinish"),e.removeListener("close",y),g()}function g(){d("unpipe"),r.unpipe(e)}return r.on("data",b),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",_),e.once("close",y),e.once("finish",m),e.emit("pipe",r),a.flowing||(d("pipe resume"),r.resume()),e},g.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function l(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(s,i),s.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},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,d=0|this._e,p=0|this._f,b=0|this._g,_=0|this._h,y=0;y<16;++y)r[y]=e.readInt32BE(4*y);for(;y<64;++y)r[y]=0|(((t=r[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[y-7]+l(r[y-15])+r[y-16];for(var m=0;m<64;++m){var g=_+h(d)+c(d,p,b)+a[m]+r[m]|0,v=f(n)+u(n,i,o)|0;_=b,b=p,p=d,d=s+g|0,s=o,o=i,i=n,n=g+v|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=d+this._e|0,this._f=p+this._f|0,this._g=b+this._g|0,this._h=_+this._h|0},s.prototype._hash=function(){var e=new t(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(12),a=[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],o=new Array(160);function s(){this.init(),this._w=o,i.call(this,128,112)}function c(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function l(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function d(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function p(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function b(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function _(e,t){return e>>>0>>0?1:0}n(s,i),s.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},s.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,y=0|this._fh,m=0|this._gh,g=0|this._hh,v=0|this._al,w=0|this._bl,k=0|this._cl,E=0|this._dl,S=0|this._el,x=0|this._fl,A=0|this._gl,M=0|this._hl,I=0;I<32;I+=2)t[I]=e.readInt32BE(4*I),t[I+1]=e.readInt32BE(4*I+4);for(;I<160;I+=2){var T=t[I-30],z=t[I-30+1],B=l(T,z),R=d(z,T),C=p(T=t[I-4],z=t[I-4+1]),O=b(z,T),j=t[I-14],N=t[I-14+1],P=t[I-32],L=t[I-32+1],q=R+N|0,U=B+j+_(q,R)|0;U=(U=U+C+_(q=q+O|0,O)|0)+P+_(q=q+L|0,L)|0,t[I]=U,t[I+1]=q}for(var D=0;D<160;D+=2){U=t[D],q=t[D+1];var K=u(r,n,i),F=u(v,w,k),Y=f(r,v),H=f(v,r),V=h(s,S),G=h(S,s),X=a[D],W=a[D+1],Z=c(s,y,m),J=c(S,x,A),$=M+G|0,Q=g+V+_($,M)|0;Q=(Q=(Q=Q+Z+_($=$+J|0,J)|0)+X+_($=$+W|0,W)|0)+U+_($=$+q|0,q)|0;var ee=H+F|0,te=Y+K+_(ee,H)|0;g=m,M=A,m=y,A=x,y=s,x=S,s=o+Q+_(S=E+$|0,E)|0,o=i,E=k,i=n,k=w,n=r,w=v,r=Q+te+_(v=$+ee|0,$)|0}this._al=this._al+v|0,this._bl=this._bl+w|0,this._cl=this._cl+k|0,this._dl=this._dl+E|0,this._el=this._el+S|0,this._fl=this._fl+x|0,this._gl=this._gl+A|0,this._hl=this._hl+M|0,this._ah=this._ah+r+_(this._al,v)|0,this._bh=this._bh+n+_(this._bl,w)|0,this._ch=this._ch+i+_(this._cl,k)|0,this._dh=this._dh+o+_(this._dl,E)|0,this._eh=this._eh+s+_(this._el,S)|0,this._fh=this._fh+y+_(this._fl,x)|0,this._gh=this._gh+m+_(this._gl,A)|0,this._hh=this._hh+g+_(this._hl,M)|0},s.prototype._hash=function(){var e=new t(64);function r(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return r(this._ah,this._al,0),r(this._bh,this._bl,8),r(this._ch,this._cl,16),r(this._dh,this._dl,24),r(this._eh,this._el,32),r(this._fh,this._fl,40),r(this._gh,this._gl,48),r(this._hh,this._hl,56),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(0),i=r(100),a=r(9),o=r(2).Buffer,s=r(26),c=r(27),u=r(32),f=o.alloc(128);function h(e,t){a.call(this,"digest"),"string"==typeof t&&(t=o.from(t));var r="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>r)?t=("rmd160"===e?new c:u(e)).update(t).digest():t.lengthr||t!=t)throw new TypeError("Bad key length")}},function(e,t,r){(function(t){var r;t.browser?r="utf-8":r=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=r}).call(t,r(6))},function(e,t,r){var n=r(26),i=r(27),a=r(32),o=r(47),s=r(48),c=r(2).Buffer,u=c.alloc(128),f={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var o=function(e){return"rmd160"===e||"ripemd160"===e?i:"md5"===e?n:function(t){return a(e).update(t).digest()}}(e),s="sha512"===e||"sha384"===e?128:64;t.length>s?t=o(t):t.lengthe;)r.ishrn(1);if(r.isEven()&&r.iadd(s),r.testn(1)||r.iadd(c),t.cmp(c)){if(!t.cmp(u))for(;r.mod(f).cmp(h);)r.iadd(d)}else for(;r.mod(a).cmp(l);)r.iadd(d);if(_(p=r.shrn(1))&&_(r)&&y(p)&&y(r)&&o.test(p)&&o.test(r))return r}}},function(e,t,r){var n=r(3),i=r(57);function a(e){this.rand=e||new i.Rand}e.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),r=Math.ceil(t/8);do{var i=new n(this.rand.generate(r))}while(i.cmp(e)>=0);return i},a.prototype._randrange=function(e,t){var r=t.sub(e);return e.add(this._randbelow(r))},a.prototype.test=function(e,t,r){var i=e.bitLength(),a=n.mont(e),o=new n(1).toRed(a);t||(t=Math.max(1,i/48|0));for(var s=e.subn(1),c=0;!s.testn(c);c++);for(var u=e.shrn(c),f=s.toRed(a);t>0;t--){var h=this._randrange(new n(2),s);r&&r(h);var l=h.toRed(a).redPow(u);if(0!==l.cmp(o)&&0!==l.cmp(f)){for(var d=1;d0;t--){var f=this._randrange(new n(2),o),h=e.gcd(f);if(0!==h.cmpn(1))return h;var l=f.toRed(i).redPow(c);if(0!==l.cmp(a)&&0!==l.cmp(u)){for(var d=1;d>8,o=255&i;a?r.push(a,o):r.push(o)}return r},n.zero2=i,n.toHex=a,n.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,r){"use strict";var n=r(7).rotr32;function i(e,t,r){return e&t^~e&r}function a(e,t,r){return e&t^e&r^t&r}function o(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?o(t,r,n):2===e?a(t,r,n):void 0},t.ch32=i,t.maj32=a,t.p32=o,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},function(e,t,r){"use strict";var n=r(7),i=r(16),a=r(59),o=r(5),s=n.sum32,c=n.sum32_4,u=n.sum32_5,f=a.ch32,h=a.maj32,l=a.s0_256,d=a.s1_256,p=a.g0_256,b=a.g1_256,_=i.BlockHash,y=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function m(){if(!(this instanceof m))return new m;_.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}n.inherits(m,_),e.exports=m,m.blockSize=512,m.outSize=256,m.hmacStrength=192,m.padLength=64,m.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n>6],i=0==(32&r);if(31==(31&r)){var a=r;for(r=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;r<<=7,r|=127&a}}else r&=31;return{cls:n,primitive:i,tag:r,tagStr:s.tag[r]}}function h(e,t,r){var n=e.readUInt8(r);if(e.isError(n))return n;if(!t&&128===n)return null;if(0==(128&n))return n;var i=127&n;if(i>4)return e.error("length octect is too long");n=0;for(var a=0;a=31)return n.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=s.tagClassByName[r||"universal"]<<6}(e,t,r,this.reporter);if(n.length<128)return(a=new i(2))[0]=o,a[1]=n.length,this._createEncoderBuffer([a,n]);for(var c=1,u=n.length;u>=256;u>>=8)c++;(a=new i(2+c))[0]=o,a[1]=128|c;u=1+c;for(var f=n.length;f>0;u--,f>>=8)a[u]=255&f;return this._createEncoderBuffer([a,n])},u.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var r=new i(2*e.length),n=0;n=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var a=0;for(n=0;n=128;o>>=7)a++}var s=new i(a),c=s.length-1;for(n=e.length-1;n>=0;n--){o=e[n];for(s[c--]=127&o;(o>>=7)>0;)s[c--]=128|127&o}return this._createEncoderBuffer(s)},u.prototype._encodeTime=function(e,t){var r,n=new Date(e);return"gentime"===t?r=[f(n.getFullYear()),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):"utctime"===t?r=[f(n.getFullYear()%100),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(r,"octstr")},u.prototype._encodeNull=function(){return this._createEncoderBuffer("")},u.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!i.isBuffer(e)){var r=e.toArray();!e.sign&&128&r[0]&&r.unshift(0),e=new i(r)}if(i.isBuffer(e)){var n=e.length;0===e.length&&n++;var a=new i(n);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);n=1;for(var o=e;o>=256;o>>=8)n++;for(o=(a=new Array(n)).length-1;o>=0;o--)a[o]=255&e,e>>=8;return 128&a[0]&&a.unshift(0),this._createEncoderBuffer(new i(a))},u.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},u.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},u.prototype._skipDefault=function(e,t,r){var n,i=this._baseState;if(null===i.default)return!1;var a=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,r).join()),a.length!==i.defaultBuffer.length)return!1;for(n=0;nparseInt(e)/1e6,mutez:function(e){return new n(new n(e).toFixed(6)).multipliedBy(1e6).toString()},b58cencode:function(e,r){const n=new Uint8Array(r.length+e.length);return n.set(r),n.set(e,r.length),a.bs58check.encode(new t(n,"hex"))},b58cdecode:function(e,t){return a.bs58check.decode(e).slice(t.length)},buf2hex:function(e){const t=new Uint8Array(e),r=[];for(let e=0;e3?o%3:0;return i+(o?a.substr(0,o)+n:"")+a.substr(o).replace(/(\d{3})(?=\d)/g,"$1"+n)+(t?r+Math.abs(e-a).toFixed(t).slice(2):"")}},u={extractEncryptedKeys:function(e,t){if(void 0===e)return!1;if(void 0===t)return!1;if(void 0===window.crypto.subtle)return!1;const r=c.b58cdecode(e,o.edesk),n=r.slice(0,8),i=r.slice(8);return window.crypto.subtle.importKey("raw",new TextEncoder("utf-8").encode(t),{name:"PBKDF2"},!1,["deriveBits"]).then(function(e){return console.log(e),window.crypto.subtle.deriveBits({name:"PBKDF2",salt:n,iterations:32768,hash:{name:"SHA-512"}},e,256)}).then(function(e){console.log(e),console.log(a.sodium.crypto_secretbox_open_easy(i,new Uint8Array(24),new Uint8Array(e)));const t=a.sodium.crypto_sign_seed_keypair(a.sodium.crypto_secretbox_open_easy(i,new Uint8Array(24),new Uint8Array(e)));return{sk:c.b58cencode(t.privateKey,o.edsk),pk:c.b58cencode(t.publicKey,o.edpk),pkh:c.b58cencode(a.sodium.crypto_generichash(20,t.publicKey),o.tz1)}})},extractKeys:function(e){switch(e.substr(0,4)){case"edsk":if(98==e.length)return{pk:c.b58cencode(c.b58cdecode(e,o.edsk).slice(32),o.edpk),pkh:c.b58cencode(a.sodium.crypto_generichash(20,c.b58cdecode(e,o.edsk).slice(32)),o.tz1),sk:e};if(54==e.length){const t=c.b58cdecode(e,o.edsk2),r=a.sodium.crypto_sign_seed_keypair(t);return{sk:c.b58cencode(r.privateKey,o.edsk),pk:c.b58cencode(r.publicKey,o.edpk),pkh:c.b58cencode(a.sodium.crypto_generichash(20,r.publicKey),o.tz1)}}break;default:return!1}},generateMnemonic:()=>a.bip39.generateMnemonic(160),checkAddress:function(e){try{return c.b58cdecode(e,o.tz1),!0}catch(e){return!1}},generateKeys:function(e,t){const r=a.bip39.mnemonicToSeed(e,t).slice(0,32),n=a.sodium.crypto_sign_seed_keypair(r);return{mnemonic:e,passphrase:t,sk:c.b58cencode(n.privateKey,o.edsk),pk:c.b58cencode(n.publicKey,o.edpk),pkh:c.b58cencode(a.sodium.crypto_generichash(20,n.publicKey),o.tz1)}},sign:function(e,t,r){var n=c.hex2buf(e);void 0!==r&&(n=c.mergebuf(r,n));const i=a.sodium.crypto_sign_detached(a.sodium.crypto_generichash(32,n),c.b58cdecode(t,o.edsk),"uint8array");return{bytes:e,sig:i,edsig:c.b58cencode(i,o.edsig),sbytes:e+c.buf2hex(i)}},verify:function(e,t,r){return a.sodium.crypto_sign_verify_detached(t,c.hex2buf(e),c.b58cdecode(r,o.edpk))}};node={activeProvider:"https://mainnet.tezrpc.me/",debugMode:!1,async:!0,isZeronet:!1,setDebugMode:function(e){node.debugMode=e},setProvider:function(e,t){void 0!==t&&(node.isZeronet=t),node.activeProvider=e},resetProvider:function(){node.activeProvider="https://mainnet.tezrpc.me/"},query:function(e,t,r){return void 0===t?void 0===r?r="GET":t={}:void 0===r&&(r="POST"),new Promise(function(n,i){try{const a=new XMLHttpRequest;a.open(r,node.activeProvider+e,node.async),node.debugMode&&console.log("Node call",e,t),a.onload=function(){if(200===a.status)if(a.responseText){let r=JSON.parse(a.responseText);node.debugMode&&console.log("Node response",e,t,r),void 0!==r.error?i(r.error):(void 0!==r.ok&&(r=r.ok),n(r))}else i("Empty response returned");else a.responseText?(node.debugMode&&console.log(e,t,a.responseText),i(a.responseText)):(node.debugMode&&console.log(e,t,a.statusText),i(a.statusText))},a.onerror=function(){node.debugMode&&console.log(e,t,a.responseText),i(a.statusText)},"POST"==r?(a.setRequestHeader("Content-Type","application/json"),a.send(JSON.stringify(t))):a.send()}catch(e){i(e)}})}},rpc={call:function(e,t){return node.query(e,t)},getBalance:function(e){return node.query("/chains/main/blocks/head/context/contracts/"+e+"/balance").then(function(e){return e})},getDelegate:function(e){return node.query("/chains/main/blocks/head/context/contracts/"+e+"/delegate").then(function(e){return e||!1}).catch(function(){return!1})},getManager:function(e){return node.query("/chains/main/blocks/head/context/contracts/"+e+"/manager_key")},getCounter:function(e){return node.query("/chains/main/blocks/head/context/contracts/"+e+"/counter")},getBaker:function(e){return node.query("/chains/main/blocks/head/context/delegates/"+e)},getHead:function(){return node.query("/chains/main/blocks/head")},getHeader:function(){return node.query("/chains/main/blocks/head/header")},getHeadHash:function(){return node.query("/chains/main/blocks/head/hash")},getBallotList:function(){return node.query("/chains/main/blocks/head/votes/ballot_list")},getProposals:function(){return node.query("/chains/main/blocks/head/votes/proposals ")},getBallots:function(){return node.query("/chains/main/blocks/head/votes/ballots ")},getListings:function(){return node.query("/chains/main/blocks/head/votes/listings ")},getCurrentProposal:function(){return node.query("/chains/main/blocks/head/votes/current_proposal ")},getCurrentPeriod:function(){return node.query("/chains/main/blocks/head/votes/current_period_kind ")},getCurrentQuorum:function(){return node.query("/chains/main/blocks/head/votes/current_quorum ")},awaitOperation:function(e,t,r){if(r<=0)throw"Timeout must be more than 0";if(t<=0)throw"Interval must be more than 0";var n=Math.ceil(r/t)+1,i=0;return new Promise(function(r,a){var o=function(){rpc.getHead().then(function(s){i++;e:for(var c=3,u=!1;c>=0;c--)for(var f=0;f=n?a("Timeout"):setTimeout(o,t)})};o()})},prepareOperation:function(e,t,r,n){var a,o;void 0===r&&(r=!1),void 0===n&&(n="1269");var s=[],c=!1;s.push(node.query("/chains/main/blocks/head/header")),Array.isArray(t)?ops=t:ops=[t];for(let t=0;t=0){c=!0,s.push(rpc.getCounter(e)),s.push(rpc.getManager(e));break}return Promise.all(s).then(function(t){head=t[0],c&&r&&void 0===t[2].key&&ops.unshift({kind:"reveal",fee:n,public_key:r.pk,source:e,gas_limit:1e4,storage_limit:0}),a=parseInt(t[1])+1,void 0===i[e]&&(i[e]=a),a>i[e]&&(i[e]=a),i[e]=a;for(let t=0;t=0&&void 0===ops[t].source&&(ops[t].source=e),["reveal","transaction","origination","delegation"].indexOf(ops[t].kind)>=0&&(void 0===ops[t].gas_limit&&(ops[t].gas_limit="0"),void 0===ops[t].storage_limit&&(ops[t].storage_limit="0"),ops[t].counter=(i[e]++).toString(),ops[t].fee=ops[t].fee.toString(),ops[t].gas_limit=ops[t].gas_limit.toString(),ops[t].storage_limit=ops[t].storage_limit.toString(),ops[t].counter=ops[t].counter.toString());return o={branch:head.hash,contents:ops},tezos.forge(head,o)})},simulateOperation:function(e,t,r){return rpc.prepareOperation(e,t,r).then(function(e){return node.query("/chains/main/blocks/head/helpers/scripts/run_operation",e.opOb)})},sendOperation:function(e,t,r,n,i){return void 0===i&&(i="1269"),void 0===n&&(n=!1),rpc.prepareOperation(e,t,r,i).then(function(e){if(!1===r.sk)return e;if(r){var t=u.sign(e.opbytes,r.sk,s.generic);e.opbytes=t.sbytes,e.opOb.signature=t.edsig}else e.opbytes+="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",e.opOb.signature="edsigtXomBKi5CTRf5cjATJWSyaRvhfYNHqSUGrn4SdbYRcGwQrUGjzEfQDTuqHhuA8b2d8NarZjz8TRf65WkpQmo423BtomS8Q";return console.log(e),n?rpc.silentInject(e.opbytes):rpc.inject(e.opOb,e.opbytes)})},inject:function(e,t){var r=[],n=[];return node.query("/chains/main/blocks/head/helpers/preapply/operations",[e]).then(function(e){if(!Array.isArray(e))throw{error:"RPC Fail",errors:[]};for(var i=0;i>24,(16711680&t)>>16,(65280&t)>>8,255&t]),c.b58cencode(a.sodium.crypto_generichash(20,new Uint8Array(n)),o.KT)},originate:function(e,t,r,n,i,a,o,s,c,u){return void 0===c&&(c="10000"),void 0===u&&(u="10000"),rpc.originate(e,t,r,n,i,a,o,s,c,u)},send:function(e,t,r,n,i,a,o,s){return void 0===o&&(o="2000"),void 0===s&&(s="0"),rpc.transfer(t,r,e,n,a,i,o,s)},balance:function(e){return rpc.getBalance(e)},storage:function(e){return new Promise(function(t,r){eztz.node.query("/chains/main/blocks/head/context/contracts/"+e+"/storage").then(function(e){t(e)}).catch(function(e){r(e)})})},load:function(e){return eztz.node.query("/chains/main/blocks/head/context/contracts/"+e)},watch:function(e,t,r){let n=[];const i=function(){contract.storage(e).then(function(e){JSON.stringify(n)!=JSON.stringify(e)&&r(n=e)})};return i(),setInterval(i,1e3*t)}},tezos={forge:function(e,t,r){return void 0===r&&(r=!0),node.query("/chains/"+e.chain_id+"/blocks/"+e.hash+"/helpers/forge/operations",t).then(function(r){var n;n=c.buf2hex(c.b58cdecode(t.branch,o.b));for(var i=0;it;)o.push(i());return o}throw`Invalid raw bytes: Byte:${e} Index:${t}`};return i()}},trezor={source:function(e){var t="t"==e[0]?0:1,r=parseInt(e[2])-1,n=1==t?o.KT:o["tz"+(r+1)],i=c.b58cdecode(e,n);return{tag:t,hash:i=1==t?c.mergebuf(i,[0]):c.mergebuf([r],i)}},parameter:function(e,t){var r="t"==e[0]?0:1,n=parseInt(e[2])-1,i=1==r?o.KT:o["tz"+(n+1)],a=c.b58cdecode(e,i);return a=1==r?c.mergebuf(a,[0]):c.mergebuf([n],a),hex=c.buf2hex(c.mergebuf([r],a)),t.substr(-46)!=hex+"00"&&c.hex2buf(t.substr(t.indexOf(hex)+hex.length+2))},operation:function(e){for(var t,r=[],n=!1,i=0;i1?console.log("Too many operations"):[r[0],n]}};var f={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0A":"True","0B":"Unit","0C":"PACK","0D":"UNPACK","0E":"BLAKE2B","0F":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1A":"CONCAT","1B":"CONS","1C":"CREATE_ACCOUNT","1D":"CREATE_CONTRACT","1E":"IMPLICIT_ACCOUNT","1F":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2A":"GT","2B":"HASH_KEY","2C":"IF","2D":"IF_CONS","2E":"IF_LEFT","2F":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3A":"MUL","3B":"NEG","3C":"NEQ","3D":"NIL","3E":"NONE","3F":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4A":"STEPS_TO_QUOTA","4B":"SUB","4C":"SWAP","4D":"TRANSFER_TOKENS","4E":"SET_DELEGATE","4F":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5A":"contract","5B":"int","5C":"key","5D":"key_hash","5E":"lambda","5F":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6A":"mutez","6B":"timestamp","6C":"unit","6D":"operation","6E":"address","6F":"SLICE"},h=function(){var e={};for(const t in f)e[f[t]]=t;return e}(),l={"00":"int","01":"string","02":"seq","03":{name:"prim",len:0,annots:!1},"04":{name:"prim",len:0,annots:!0},"05":{name:"prim",len:1,annots:!1},"06":{name:"prim",len:1,annots:!0},"07":{name:"prim",len:2,annots:!1},"08":{name:"prim",len:2,annots:!0},"09":{name:"prim",len:3,annots:!0},"0A":"bytes"},d={0:{false:"03",true:"04"},1:{false:"05",true:"06"},2:{false:"07",true:"08"},3:{true:"09"}},b={endorsement:0,seed_nonce_revelation:1,double_endorsement_evidence:2,double_baking_evidence:3,activate_account:4,proposals:5,ballot:6,reveal:7,transaction:8,origination:9,delegation:10};function _(e){var t,r,n,i,a,o;switch(t=eztz.utility.buf2hex(new Uint8Array([b[e.kind]])),b[e.kind]){case 0:case 1:if(t+=eztz.utility.buf2hex(w(e.level)),0==b[e.kind])break;if(t+=e.nonce,1==b[e.kind])break;case 2:case 3:throw"Double bake and double endorse forging is not complete";case 4:if(t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e.pkh,eztz.prefix.tz1)),t+=e.secret,4==b[e.kind])break;case 5:case 6:if(t+=v(e.source),t+=eztz.utility.buf2hex(w(e.period)),5==b[e.kind])throw"Proposal forging is not complete";if(6==b[e.kind]){t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e.proposal,eztz.prefix.P)),t+="yay"==e.ballot?"00":"nay"==e.ballot?"01":"02";break}case 7:case 8:case 9:case 10:t+=m(e.source),t+=g(e.fee),t+=g(e.counter),t+=g(e.gas_limit),t+=g(e.storage_limit),7==b[e.kind]?t+=function(e){var t;switch(e.substr(0,2)){case"ed":t="00";break;case"sp":t="01";break;case"p2":t="02"}return t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix[e.substr(0,4)]))}(e.public_key):8==b[e.kind]?(t+=g(e.amount),t+=m(e.destination),void 0!==e.parameters&&e.parameters?(t+=y(!0),t+=(a=e.parameters,k((o=tezos.encodeRawBytes(a).toLowerCase()).length/2)+o)):t+=y(!1)):9==b[e.kind]?(t+=v(e.manager_pubkey),t+=g(e.balance),t+=y(e.spendable),t+=y(e.delegatable),void 0!==e.delegate&&e.delegate?(t+=y(!0),t+=v(e.delegate)):t+=y(!1),void 0!==e.script&&e.script?(t+=y(!0),t+=(r=e.script,n=tezos.encodeRawBytes(r.code).toLowerCase(),i=tezos.encodeRawBytes(r.storage).toLowerCase(),k(n.length/2)+n+k(i.length/2)+i)):t+=y(!1)):10==b[e.kind]&&(void 0!==e.delegate&&e.delegate?(t+=y(!0),t+=v(e.delegate)):t+=y(!1))}return t}function y(e){return e?"ff":"00"}function m(e){var t;return"K"==e.substr(0,1)?(t="01",t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix.KT)),t+="00"):(t="00",t+=v(e)),t}function g(e){var t="";for(e=parseInt(e);;){if(e<128){e<16&&(t+="0"),t+=e.toString(16);break}var r=e%128;e-=r,e/=128,t+=(r+=128).toString(16)}return t}function v(e){var t;return t="0"+(parseInt(e.substr(2,1))-1).toString(),t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix[e.substr(0,3)]))}function w(e){return e=parseInt(e),arr=new Uint8Array([(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e]),arr.buffer}function k(e){return c.buf2hex(w(e))}c.ml2tzjson=c.sexp2mic,c.tzjson2arr=c.mic2arr,c.mlraw2json=c.ml2mic,c.mintotz=c.totez,c.tztomin=c.mutez,eztz={library:a,prefix:o,watermark:s,utility:c,crypto:u,node:node,rpc:rpc,contract:contract,trezor:trezor,tezos:tezos},e.exports={defaultProvider:"https://mainnet.tezrpc.me/",eztz:eztz}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";t.byteLength=function(e){return 3*e.length/4-u(e)},t.toByteArray=function(e){var t,r,n,o,s,c=e.length;o=u(e),s=new a(3*c/4-o),r=o>0?c-4:c;var f=0;for(t=0;t>16&255,s[f++]=n>>8&255,s[f++]=255&n;2===o?(n=i[e.charCodeAt(t)]<<2|i[e.charCodeAt(t+1)]>>4,s[f++]=255&n):1===o&&(n=i[e.charCodeAt(t)]<<10|i[e.charCodeAt(t+1)]<<4|i[e.charCodeAt(t+2)]>>2,s[f++]=n>>8&255,s[f++]=255&n);return s},t.fromByteArray=function(e){for(var t,r=e.length,i=r%3,a="",o=[],s=0,c=r-i;sc?c:s+16383));1===i?(t=e[r-1],a+=n[t>>2],a+=n[t<<4&63],a+="=="):2===i&&(t=(e[r-2]<<8)+e[r-1],a+=n[t>>10],a+=n[t>>4&63],a+=n[t<<2&63],a+="=");return o.push(a),o.join("")};for(var n=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function f(e,t,r){for(var i,a,o=[],s=t;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,c=(1<>1,f=-7,h=r?i-1:0,l=r?-1:1,d=e[t+h];for(h+=l,a=d&(1<<-f)-1,d>>=-f,f+=s;f>0;a=256*a+e[t+h],h+=l,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=n;f>0;o=256*o+e[t+h],h+=l,f-=8);if(0===a)a=1-u;else{if(a===c)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,n),a-=u}return(d?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,c,u=8*a-i-1,f=(1<>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,p=n?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),(t+=o+h>=1?l/c:l*Math.pow(2,1-h))*c>=2&&(o++,c/=2),o+h>=f?(s=0,o=f):o+h>=1?(s=(t*c-1)*Math.pow(2,i),o+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=p,o/=256,u-=8);e[r+d-p]|=128*b}},function(e,t){e.exports=XMLHttpRequest},function(e,t,r){var n;!function(i){"use strict";var a,o=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,s=Math.ceil,c=Math.floor,u="[BigNumber Error] ",f=u+"Number primitive has more than 15 significant digits: ",h=1e14,l=14,d=9007199254740991,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],b=1e7,_=1e9;function y(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,r,n=1,i=e.length,a=e[0]+"";nu^r?1:-1;for(s=(c=i.length)<(u=a.length)?c:u,o=0;oa[o]^r?1:-1;return c==u?0:c>u^r?1:-1}function v(e,t,r,n){if(er||e!==(e<0?s(e):c(e)))throw Error(u+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+e)}function w(e){return"[object Array]"==Object.prototype.toString.call(e)}function k(e){var t=e.c.length-1;return y(e.e/l)==t&&e.c[t]%2!=0}function E(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function S(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else t=10;h/=10,u++);return y.e=u,void(y.c=[e])}_=e+""}else{if(!o.test(_=e+""))return i(y,_,p);y.s=45==_.charCodeAt(0)?(_=_.slice(1),-1):1}(u=_.indexOf("."))>-1&&(_=_.replace(".","")),(h=_.search(/e/i))>0?(u<0&&(u=h),u+=+_.slice(h+1),_=_.substring(0,h)):u<0&&(u=_.length)}else{if(v(t,2,K.length,"Base"),_=e+"",10==t)return G(y=new F(e instanceof F?e:_),R+y.e+1,C);if(p="number"==typeof e){if(0*e!=0)return i(y,_,p,t);if(y.s=1/e<0?(_=_.slice(1),-1):1,F.DEBUG&&_.replace(/^0\.0*|\./,"").length>15)throw Error(f+e);p=!1}else y.s=45===_.charCodeAt(0)?(_=_.slice(1),-1):1;for(r=K.slice(0,t),u=h=0,b=_.length;hu){u=b;continue}}else if(!s&&(_==_.toUpperCase()&&(_=_.toLowerCase())||_==_.toLowerCase()&&(_=_.toUpperCase()))){s=!0,h=-1,u=0;continue}return i(y,e+"",p,t)}(u=(_=n(_,t,10,y.s)).indexOf("."))>-1?_=_.replace(".",""):u=_.length}for(h=0;48===_.charCodeAt(h);h++);for(b=_.length;48===_.charCodeAt(--b););if(_=_.slice(h,++b)){if(b-=h,p&&F.DEBUG&&b>15&&(e>d||e!==c(e)))throw Error(f+y.s*e);if((u=u-h-1)>P)y.c=y.e=null;else if(us){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-s)>0)for(a+1==s&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function H(e,t){var r,n,i=0;for(w(e[0])&&(e=e[0]),r=new F(e[0]);++i=10;i/=10,n++);return(r=n+r*l-1)>P?e.c=e.e=null:r=10;u/=10,i++);if((a=t-i)<0)a+=l,o=t,b=(f=_[d=0])/y[i-o-1]%10|0;else if((d=s((a+1)/l))>=_.length){if(!n)break e;for(;_.length<=d;_.push(0));f=b=0,i=1,o=(a%=l)-l+1}else{for(f=u=_[d],i=1;u>=10;u/=10,i++);b=(o=(a%=l)-l+i)<0?0:f/y[i-o-1]%10|0}if(n=n||t<0||null!=_[d+1]||(o<0?f:f%y[i-o-1]),n=r<4?(b||n)&&(0==r||r==(e.s<0?3:2)):b>5||5==b&&(4==r||n||6==r&&(a>0?o>0?f/y[i-o]:0:_[d-1])%10&1||r==(e.s<0?8:7)),t<1||!_[0])return _.length=0,n?(t-=e.e+1,_[0]=y[(l-t%l)%l],e.e=-t||0):_[0]=e.e=0,e;if(0==a?(_.length=d,u=1,d--):(_.length=d+1,u=y[l-a],_[d]=o>0?c(f/y[i-o]%y[o])*u:0),n)for(;;){if(0==d){for(a=1,o=_[0];o>=10;o/=10,a++);for(o=_[0]+=u,u=1;o>=10;o/=10,u++);a!=u&&(e.e++,_[0]==h&&(_[0]=1));break}if(_[d]+=u,_[d]!=h)break;_[d--]=0,u=1}for(a=_.length;0===_[--a];_.pop());}e.e>P?e.c=e.e=null:e.e>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),t[f]=r[0],t[f+1]=r[1]):(h.push(o%1e14),f+=2);f=i/2}else{if(!crypto.randomBytes)throw L=!1,Error(u+"crypto unavailable");for(t=crypto.randomBytes(i*=7);f=9e15?crypto.randomBytes(7).copy(t,f):(h.push(o%1e14),f+=7);f=i/7}if(!L)for(;f=10;o/=10,f++);fr-1&&(null==o[i+1]&&(o[i+1]=0),o[i+1]+=o[i]/r|0,o[i]%=r)}return o.reverse()}return function(t,n,i,a,o){var s,c,u,f,h,l,d,p,b=t.indexOf("."),_=R,y=C;for(b>=0&&(f=U,U=0,t=t.replace(".",""),l=(p=new F(n)).pow(t.length-b),U=f,p.c=e(S(m(l.c),l.e,"0"),10,i,"0123456789"),p.e=p.c.length),u=f=(d=e(t,n,i,o?(s=K,"0123456789"):(s="0123456789",K))).length;0==d[--f];d.pop());if(!d[0])return s.charAt(0);if(b<0?--u:(l.c=d,l.e=u,l.s=a,d=(l=r(l,p,_,y,i)).c,h=l.r,u=l.e),b=d[c=u+_+1],f=i/2,h=h||c<0||null!=d[c+1],h=y<4?(null!=b||h)&&(0==y||y==(l.s<0?3:2)):b>f||b==f&&(4==y||h||6==y&&1&d[c-1]||y==(l.s<0?8:7)),c<1||!d[0])t=h?S(s.charAt(1),-_,s.charAt(0)):s.charAt(0);else{if(d.length=c,h)for(--i;++d[--c]>i;)d[c]=0,c||(++u,d=[1].concat(d));for(f=d.length;!d[--f];);for(b=0,t="";b<=f;t+=s.charAt(d[b++]));t=S(t,u,s.charAt(0))}return t}}(),r=function(){function e(e,t,r){var n,i,a,o,s=0,c=e.length,u=t%b,f=t/b|0;for(e=e.slice();c--;)s=((i=u*(a=e[c]%b)+(n=f*a+(o=e[c]/b|0)*u)%b*b+s)/r|0)+(n/b|0)+f*o,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,a;if(r!=n)a=r>n?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,a,o,s){var u,f,d,p,b,_,m,g,v,w,k,E,S,x,A,M,I,T=n.s==i.s?1:-1,z=n.c,B=i.c;if(!(z&&z[0]&&B&&B[0]))return new F(n.s&&i.s&&(z?!B||z[0]!=B[0]:B)?z&&0==z[0]||!B?0*T:T/0:NaN);for(v=(g=new F(T)).c=[],T=a+(f=n.e-i.e)+1,s||(s=h,f=y(n.e/l)-y(i.e/l),T=T/l|0),d=0;B[d]==(z[d]||0);d++);if(B[d]>(z[d]||0)&&f--,T<0)v.push(1),p=!0;else{for(x=z.length,M=B.length,d=0,T+=2,(b=c(s/(B[0]+1)))>1&&(B=e(B,b,s),z=e(z,b,s),M=B.length,x=z.length),S=M,k=(w=z.slice(0,M)).length;k=s/2&&A++;do{if(b=0,(u=t(B,w,M,k))<0){if(E=w[0],M!=k&&(E=E*s+(w[1]||0)),(b=c(E/A))>1)for(b>=s&&(b=s-1),m=(_=e(B,b,s)).length,k=w.length;1==t(_,w,m,k);)b--,r(_,M=10;T/=10,d++);G(g,a+(g.e=d+f*l-1)+1,o,p)}else g.e=f,g.r=+p;return g}}(),x=/^(-?)0([xbo])(?=\w[\w.]*$)/i,A=/^([^.]+)\.$/,M=/^\.([^.]+)$/,I=/^-?(Infinity|NaN)$/,T=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,r,n){var i,a=r?t:t.replace(T,"");if(I.test(a))e.s=isNaN(a)?null:a<0?-1:1,e.c=e.e=null;else{if(!r&&(a=a.replace(x,function(e,t,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?e:t}),n&&(i=n,a=a.replace(A,"$1").replace(M,"0.$1")),t!=a))return new F(a,i);if(F.DEBUG)throw Error(u+"Not a"+(n?" base "+n:"")+" number: "+t);e.c=e.e=e.s=null}},z.absoluteValue=z.abs=function(){var e=new F(this);return e.s<0&&(e.s=1),e},z.comparedTo=function(e,t){return g(this,new F(e,t))},z.decimalPlaces=z.dp=function(e,t){var r,n,i,a=this;if(null!=e)return v(e,0,_),null==t?t=C:v(t,0,8),G(new F(a),e+a.e+1,t);if(!(r=a.c))return null;if(n=((i=r.length-1)-y(this.e/l))*l,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},z.dividedBy=z.div=function(e,t){return r(this,new F(e,t),R,C)},z.dividedToIntegerBy=z.idiv=function(e,t){return r(this,new F(e,t),0,1)},z.exponentiatedBy=z.pow=function(e,t){var r,n,i,a,o,f,h,d=this;if((e=new F(e)).c&&!e.isInteger())throw Error(u+"Exponent not an integer: "+e);if(null!=t&&(t=new F(t)),a=e.e>14,!d.c||!d.c[0]||1==d.c[0]&&!d.e&&1==d.c.length||!e.c||!e.c[0])return h=new F(Math.pow(+d.valueOf(),a?2-k(e):+e)),t?h.mod(t):h;if(o=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new F(NaN);(n=!o&&d.isInteger()&&t.isInteger())&&(d=d.mod(t))}else{if(e.e>9&&(d.e>0||d.e<-1||(0==d.e?d.c[0]>1||a&&d.c[1]>=24e7:d.c[0]<8e13||a&&d.c[0]<=9999975e7)))return i=d.s<0&&k(e)?-0:0,d.e>-1&&(i=1/i),new F(o?1/i:i);U&&(i=s(U/l+2))}for(a?(r=new F(.5),f=k(e)):f=e%2,o&&(e.s=1),h=new F(B);;){if(f){if(!(h=h.times(d)).c)break;i?h.c.length>i&&(h.c.length=i):n&&(h=h.mod(t))}if(a){if(G(e=e.times(r),e.e+1,1),!e.c[0])break;a=e.e>14,f=k(e)}else{if(!(e=c(e/2)))break;f=e%2}d=d.times(d),i?d.c&&d.c.length>i&&(d.c.length=i):n&&(d=d.mod(t))}return n?h:(o&&(h=B.div(h)),t?h.mod(t):i?G(h,U,C,void 0):h)},z.integerValue=function(e){var t=new F(this);return null==e?e=C:v(e,0,8),G(t,t.e+1,e)},z.isEqualTo=z.eq=function(e,t){return 0===g(this,new F(e,t))},z.isFinite=function(){return!!this.c},z.isGreaterThan=z.gt=function(e,t){return g(this,new F(e,t))>0},z.isGreaterThanOrEqualTo=z.gte=function(e,t){return 1===(t=g(this,new F(e,t)))||0===t},z.isInteger=function(){return!!this.c&&y(this.e/l)>this.c.length-2},z.isLessThan=z.lt=function(e,t){return g(this,new F(e,t))<0},z.isLessThanOrEqualTo=z.lte=function(e,t){return-1===(t=g(this,new F(e,t)))||0===t},z.isNaN=function(){return!this.s},z.isNegative=function(){return this.s<0},z.isPositive=function(){return this.s>0},z.isZero=function(){return!!this.c&&0==this.c[0]},z.minus=function(e,t){var r,n,i,a,o=this,s=o.s;if(t=(e=new F(e,t)).s,!s||!t)return new F(NaN);if(s!=t)return e.s=-t,o.plus(e);var c=o.e/l,u=e.e/l,f=o.c,d=e.c;if(!c||!u){if(!f||!d)return f?(e.s=-t,e):new F(d?o:NaN);if(!f[0]||!d[0])return d[0]?(e.s=-t,e):new F(f[0]?o:3==C?-0:0)}if(c=y(c),u=y(u),f=f.slice(),s=c-u){for((a=s<0)?(s=-s,i=f):(u=c,i=d),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(a=(s=f.length)<(t=d.length))?s:t,s=t=0;t0)for(;t--;f[r++]=0);for(t=h-1;n>s;){if(f[--n]=0;){for(r=0,p=E[i]%v,_=E[i]/v|0,a=i+(o=c);a>i;)r=((u=p*(u=k[--o]%v)+(s=_*u+(f=k[o]/v|0)*p)%v*v+m[a]+r)/g|0)+(s/v|0)+_*f,m[a--]=u%g;m[a]=r}return r?++n:m.splice(0,1),V(e,m,n)},z.negated=function(){var e=new F(this);return e.s=-e.s||null,e},z.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new F(e,t)).s,!i||!t)return new F(NaN);if(i!=t)return e.s=-t,n.minus(e);var a=n.e/l,o=e.e/l,s=n.c,c=e.c;if(!a||!o){if(!s||!c)return new F(i/0);if(!s[0]||!c[0])return c[0]?e:new F(s[0]?n:0*i)}if(a=y(a),o=y(o),s=s.slice(),i=a-o){for(i>0?(o=a,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/h|0,s[t]=h===s[t]?0:s[t]%h;return i&&(s=[i].concat(s),++o),V(e,s,o)},z.precision=z.sd=function(e,t){var r,n,i,a=this;if(null!=e&&e!==!!e)return v(e,1,_),null==t?t=C:v(t,0,8),G(new F(a),e,t);if(!(r=a.c))return null;if(n=(i=r.length-1)*l+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&a.e+1>n&&(n=a.e+1),n},z.shiftedBy=function(e){return v(e,-d,d),this.times("1e"+e)},z.squareRoot=z.sqrt=function(){var e,t,n,i,a,o=this,s=o.c,c=o.s,u=o.e,f=R+4,h=new F("0.5");if(1!==c||!s||!s[0])return new F(!c||c<0&&(!s||s[0])?NaN:s?o:1/0);if(0==(c=Math.sqrt(+o))||c==1/0?(((t=m(s)).length+u)%2==0&&(t+="0"),c=Math.sqrt(t),u=y((u+1)/2)-(u<0||u%2),n=new F(t=c==1/0?"1e"+u:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+u)):n=new F(c+""),n.c[0])for((c=(u=n.e)+f)<3&&(c=0);;)if(a=n,n=h.times(a.plus(r(o,a,f,1))),m(a.c).slice(0,c)===(t=m(n.c)).slice(0,c)){if(n.e0&&l>0){for(n=l%a||a,c=h.substr(0,n);n0&&(c+=s+h.slice(n)),f&&(c="-"+c)}r=u?c+D.decimalSeparator+((o=+D.fractionGroupSize)?u.replace(new RegExp("\\d{"+o+"}\\B","g"),"$&"+D.fractionGroupSeparator):u):c}return r},z.toFraction=function(e){var t,n,i,a,o,s,c,f,h,d,b,_,y=this,g=y.c;if(null!=e&&(!(f=new F(e)).isInteger()&&(f.c||1!==f.s)||f.lt(B)))throw Error(u+"Argument "+(f.isInteger()?"out of range: ":"not an integer: ")+e);if(!g)return y.toString();for(n=new F(B),d=i=new F(B),a=h=new F(B),_=m(g),s=n.e=_.length-y.e-1,n.c[0]=p[(c=s%l)<0?l+c:c],e=!e||f.comparedTo(n)>0?s>0?n:d:f,c=P,P=1/0,f=new F(_),h.c[0]=0;b=r(f,n,0,1),1!=(o=i.plus(b.times(a))).comparedTo(e);)i=a,a=o,d=h.plus(b.times(o=d)),h=o,n=f.minus(b.times(o=n)),f=o;return o=r(e.minus(i),a,0,1),h=h.plus(o.times(d)),i=i.plus(o.times(a)),h.s=d.s=y.s,t=r(d,a,s*=2,C).minus(y).abs().comparedTo(r(h,i,s,C).minus(y).abs())<1?[d.toString(),a.toString()]:[h.toString(),i.toString()],P=c,t},z.toNumber=function(){return+this},z.toPrecision=function(e,t){return null!=e&&v(e,1,_),Y(this,e,t,2)},z.toString=function(e){var t,r=this,i=r.s,a=r.e;return null===a?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(t=m(r.c),null==e?t=a<=O||a>=j?E(t,a):S(t,a,"0"):(v(e,2,K.length,"Base"),t=n(S(t,a,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},z.valueOf=z.toJSON=function(){var e,t=this,r=t.e;return null===r?t.toString():(e=m(t.c),e=r<=O||r>=j?E(e,r):S(e,r,"0"),t.s<0?"-"+e:e)},z._isBigNumber=!0,null!=t&&F.set(t),F}()).default=a.BigNumber=a,void 0===(n=function(){return a}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";var n=r(10),i=r(92);e.exports=i(function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()})},function(e,t,r){"use strict";(function(t){var r=4,n=new t(r);n.fill(0);e.exports=function(e,i){var a=i(function(e){if(e.length%r!=0){var i=e.length+(r-e.length%r);e=t.concat([e,n],i)}for(var a=new Array(e.length>>>2),o=0,s=0;o=this._blockSize;){for(var a=this._blockOffset;a0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},i.prototype._update=function(e){throw new Error("_update is not implemented")},i.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();return void 0!==e&&(t=t.toString(e)),t},i.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=i}).call(t,r(1).Buffer)},function(e,t){},function(e,t,r){"use strict";var n=r(2).Buffer;e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}()},function(e,t,r){(function(e){var n=Function.prototype.apply;function i(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new i(n.call(setTimeout,window,arguments),clearTimeout)},t.setInterval=function(){return new i(n.call(setInterval,window,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(window,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},r(81),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(t,r(8))},function(e,t,r){(function(e,t){!function(e,r){"use strict";if(!e.setImmediate){var n,i,a,o,s,c=1,u={},f=!1,h=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?n=function(e){t.nextTick(function(){p(e)})}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},n=function(e){a.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(i=h.documentElement,n=function(e){var t=h.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):n=function(e){setTimeout(p,0,e)}:(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),n=function(t){e.postMessage(o+t,"*")}),l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),r=0;r>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(s,i),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,f=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=r[h-3]^r[h-8]^r[h-14]^r[h-16];for(var l=0;l<80;++l){var d=~~(l/20),p=0|((t=n)<<5|t>>>27)+u(d,i,o,s)+f+r[l]+a[d];f=s,s=o,o=c(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=f+this._e|0},s.prototype._hash=function(){var e=new t(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(12),a=[1518500249,1859775393,-1894007588,-899497514],o=new Array(80);function s(){this.init(),this._w=o,i.call(this,64,56)}function c(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function f(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(s,i),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,h=0|this._e,l=0;l<16;++l)r[l]=e.readInt32BE(4*l);for(;l<80;++l)r[l]=(t=r[l-3]^r[l-8]^r[l-14]^r[l-16])<<1|t>>>31;for(var d=0;d<80;++d){var p=~~(d/20),b=c(n)+f(p,i,o,s)+h+r[d]+a[p]|0;h=s,s=o,o=u(i),i=n,n=b}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=h+this._e|0},s.prototype._hash=function(){var e=new t(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(43),a=r(12),o=new Array(64);function s(){this.init(),this._w=o,a.call(this,64,56)}n(s,i),s.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},s.prototype._hash=function(){var e=new t(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(44),a=r(12),o=new Array(160);function s(){this.init(),this._w=o,a.call(this,128,112)}n(s,i),s.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},s.prototype._hash=function(){var e=new t(48);function r(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return r(this._ah,this._al,0),r(this._bh,this._bl,8),r(this._ch,this._cl,16),r(this._dh,this._dl,24),r(this._eh,this._el,32),r(this._fh,this._fl,40),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(93),i=r(2).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},function(e,t,r){var n=r(94);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},function(e,t,r){var n=r(2).Buffer;e.exports=function(e){for(var t={},r=e.length,i=e.charAt(0),a=0;a>=8;for(;u>0;)a.push(255&u),u>>=8}for(var f=0;e[f]===i&&f0;)n.push(s%r),s=s/r|0}for(var c="",u=0;0===t[u]&&u=0;--f)c+=e[n[f]];return c},decodeUnsafe:s,decode:function(e){var t=s(e);if(t)return t;throw new Error("Non-base"+r+" character")}}}},function(e,t,r){(function(n){var i,a,o,s;s=function(e,t){"use strict";var r="uint8array";if(0!==t._sodium_init())throw new Error("libsodium was not correctly initialized.");function n(e){if("function"==typeof TextEncoder)return new TextEncoder("utf-8").encode(e);e=unescape(encodeURIComponent(e));for(var t=new Uint8Array(e.length),r=0;r=240?(u=4,s=!0):f>=224?(u=3,s=!0):f>=192?(u=2,s=!0):f<128&&(u=1,s=!0)}while(!s);for(var h=u-(o.length-c),l=0;l>8&-39)<<8|87+(t=e[a]>>>4)+(t-10>>8&-39),i+=String.fromCharCode(255&n)+String.fromCharCode(n>>>8);return i}function o(e,t){function r(e){return e<26?e+65:e<52?e+71:e<62?e-4:62===e?43:63===e?47:65}if(void 0===t&&(t=!0),"string"==typeof e)throw new Error("input has to be an array");for(var n=2,i="",a=e.length,o=0,s=0;s0&&4*s/3%76==0&&!t&&(i+="\r\n"),o|=e[s]<<(16>>>n&24),2!==n&&e.length-s!=1||(i+=String.fromCharCode(r(o>>>18&63),r(o>>>12&63),r(o>>>6&63),r(63&o)),o=0);return i.substr(0,i.length-2+n)+(2===n?"":1===n?"=":"==")}function s(){return["uint8array","text","hex","base64"]}function c(e,t){var n=t||r;if(!u(n))throw new Error(n+" output format is not available");if(e instanceof h){if("uint8array"===n)return e.to_Uint8Array();if("text"===n)return i(e.to_Uint8Array());if("hex"===n)return a(e.to_Uint8Array());if("base64"===n)return o(e.to_Uint8Array());throw new Error('What is output format "'+n+'"?')}if("object"==typeof e){for(var s=Object.keys(e),f={},l=0;l>=8,n+=e[i]+t[r],e[i]=255&n},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,n=1,i=e.length;i-- >0;)r|=t[i]-e[i]>>8&n,n&=(t[i]^e[i])-1>>8;return r+r+n-1},e.from_base64=function(e,t){for(var r,n,i,a=e.replace(/[^A-Za-z0-9\+\/]/g,""),o=a.length,s=t?Math.ceil((3*o+1>>2)/t)*t:3*o+1>>2,c=new Uint8Array(s),u=0,f=0,h=0;h64&&i<91?i-65:i>96&&i<123?i-71:i>47&&i<58?i+4:43===i?62:47===i?63:0)<<18-6*n,3===n||o-h==1){for(r=0;r<3&&f>>(16>>>r&24)&255;u=0}return c},e.from_hex=function(e){if(!function(e){return"string"==typeof e&&/^[0-9a-f]+$/i.test(e)&&e.length%2==0}(e))throw new TypeError("The provided string doesn't look like hex data");for(var t=new Uint8Array(e.length/2),r=0;r>>1]=parseInt(e.substr(r,2),16);return t},e.from_string=n,e.increment=function(e){if(!e instanceof Uint8Array)throw new TypeError("Only Uint8Array instances can be incremented");for(var t=256,r=0,n=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,n=e.length;r0&&_(a,"hash_length must be an unsigned integer");var o=l(r=m(a,r,"message")),s=r.length;a.push(o);var u=null,d=0;void 0!=n&&(u=l(n=m(a,n,"key")),d=n.length,a.push(u));var g=new h(e|=0),v=g.address;if(a.push(v),0==(0|t._crypto_generichash(v,e,o,s,0,u,d))){var w=c(g,i);return p(a),w}b(a)},function(e,r,n){var i=[];f(n),y(i,e,"state_address"),y(i,r,"hash_length"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&_(i,"hash_length must be an unsigned integer");var a=new h(r|=0),o=a.address;if(i.push(o),0==(0|t._crypto_generichash_final(e,o,r))){var s=(t._free(e),c(a,n));return p(i),s}b(i)},function(e,r,n){var i=[];f(n);var a=null,o=0;void 0!=e&&(a=l(e=m(i,e,"key")),o=e.length,i.push(a)),y(i,r,"hash_length"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&_(i,"hash_length must be an unsigned integer");var s=new h(357).address;if(0==(0|t._crypto_generichash_init(s,a,o,r))){var c=s;return p(i),c}b(i)},function(e){var r=[];f(e);var n=new h(0|t._crypto_generichash_keybytes()),i=n.address;r.push(i),t._crypto_generichash_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n),y(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_generichash_update(e,a,o))?b(i):p(i)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_sha256_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash_sha256(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_sha512_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash_sha512(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r,i,a,o){var s=[];f(o),y(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(s,"subkey_len must be an unsigned integer"),y(s,r,"subkey_id"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&_(s,"subkey_id must be an unsigned integer");var u=l(i=n(i+"\0"));i.length,s.push(u),a=m(s,a,"key");var d,b=0|t._crypto_kdf_keybytes();a.length!==b&&_(s,"invalid key length"),d=l(a),s.push(d);var g=new h(0|e),v=g.address;s.push(v),t._crypto_kdf_derive_from_key(v,e,r,0,u,d);var w=c(g,o);return p(s),w},function(e){var r=[];f(e);var n=new h(0|t._crypto_kdf_keybytes()),i=n.address;r.push(i),t._crypto_kdf_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i),e=m(a,e,"clientPublicKey");var o,s=0|t._crypto_kx_publickeybytes();e.length!==s&&_(a,"invalid clientPublicKey length"),o=l(e),a.push(o),r=m(a,r,"clientSecretKey");var u,d=0|t._crypto_kx_secretkeybytes();r.length!==d&&_(a,"invalid clientSecretKey length"),u=l(r),a.push(u),n=m(a,n,"serverPublicKey");var y,g=0|t._crypto_kx_publickeybytes();n.length!==g&&_(a,"invalid serverPublicKey length"),y=l(n),a.push(y);var v=new h(0|t._crypto_kx_sessionkeybytes()),w=v.address;a.push(w);var k=new h(0|t._crypto_kx_sessionkeybytes()),E=k.address;if(a.push(E),0==(0|t._crypto_kx_client_session_keys(w,E,o,u,y))){var S=c({sharedRx:v,sharedTx:k},i);return p(a),S}b(a)},function(e){var r=[];f(e);var n=new h(0|t._crypto_kx_publickeybytes()),i=n.address;r.push(i);var a=new h(0|t._crypto_kx_secretkeybytes()),o=a.address;if(r.push(o),0==(0|t._crypto_kx_keypair(i,o))){var s=c({publicKey:n,privateKey:a},e);return p(r),s}b(r)},function(e,r){var n=[];f(r),e=m(n,e,"seed");var i,a=0|t._crypto_kx_seedbytes();e.length!==a&&_(n,"invalid seed length"),i=l(e),n.push(i);var o=new h(0|t._crypto_kx_publickeybytes()),s=o.address;n.push(s);var u=new h(0|t._crypto_kx_secretkeybytes()),d=u.address;if(n.push(d),0==(0|t._crypto_kx_seed_keypair(s,d,i))){var y=c({publicKey:o,privateKey:u},r);return p(n),y}b(n)},function(e,r,n,i){var a=[];f(i),e=m(a,e,"serverPublicKey");var o,s=0|t._crypto_kx_publickeybytes();e.length!==s&&_(a,"invalid serverPublicKey length"),o=l(e),a.push(o),r=m(a,r,"serverSecretKey");var u,d=0|t._crypto_kx_secretkeybytes();r.length!==d&&_(a,"invalid serverSecretKey length"),u=l(r),a.push(u),n=m(a,n,"clientPublicKey");var y,g=0|t._crypto_kx_publickeybytes();n.length!==g&&_(a,"invalid clientPublicKey length"),y=l(n),a.push(y);var v=new h(0|t._crypto_kx_sessionkeybytes()),w=v.address;a.push(w);var k=new h(0|t._crypto_kx_sessionkeybytes()),E=k.address;if(a.push(E),0==(0|t._crypto_kx_server_session_keys(w,E,o,u,y))){var S=c({sharedRx:v,sharedTx:k},i);return p(a),S}b(a)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_onetimeauth_keybytes();r.length!==u&&_(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_onetimeauth_bytes()),y=d.address;if(i.push(y),0==(0|t._crypto_onetimeauth(y,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),y(n,e,"state_address");var i=new h(0|t._crypto_onetimeauth_bytes()),a=i.address;if(n.push(a),0==(0|t._crypto_onetimeauth_final(e,a))){var o=(t._free(e),c(i,r));return p(n),o}b(n)},function(e,r){var n=[];f(r);var i=null;void 0!=e&&(i=l(e=m(n,e,"key")),e.length,n.push(i));var a=new h(144).address;if(0==(0|t._crypto_onetimeauth_init(a,i))){var o=a;return p(n),o}b(n)},function(e){var r=[];f(e);var n=new h(0|t._crypto_onetimeauth_keybytes()),i=n.address;r.push(i),t._crypto_onetimeauth_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n),y(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_onetimeauth_update(e,a,o))?b(i):p(i)},function(e,r,n){var i=[];e=m(i,e,"hash");var a,o=0|t._crypto_onetimeauth_bytes();e.length!==o&&_(i,"invalid hash length"),a=l(e),i.push(a);var s=l(r=m(i,r,"message")),c=r.length;i.push(s),n=m(i,n,"key");var u,f=0|t._crypto_onetimeauth_keybytes();n.length!==f&&_(i,"invalid key length"),u=l(n),i.push(u);var h=0==(0|t._crypto_onetimeauth_verify(a,s,c,0,u));return p(i),h},function(e,r,n,i,a,o,s){var u=[];f(s),y(u,e,"keyLength"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(u,"keyLength must be an unsigned integer");var d=l(r=m(u,r,"password")),g=r.length;u.push(d),n=m(u,n,"salt");var v,w=0|t._crypto_pwhash_saltbytes();n.length!==w&&_(u,"invalid salt length"),v=l(n),u.push(v),y(u,i,"opsLimit"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&_(u,"opsLimit must be an unsigned integer"),y(u,a,"memLimit"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&_(u,"memLimit must be an unsigned integer"),y(u,o,"algorithm"),("number"!=typeof o||(0|o)!==o)&&(0|o)>0&&_(u,"algorithm must be an unsigned integer");var k=new h(0|e),E=k.address;if(u.push(E),0==(0|t._crypto_pwhash(E,e,0,d,g,0,v,i,0,a,o))){var S=c(k,s);return p(u),S}b(u)},function(e,r,n,i,a,o){var s=[];f(o),y(s,e,"keyLength"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(s,"keyLength must be an unsigned integer");var u=l(r=m(s,r,"password")),d=r.length;s.push(u),n=m(s,n,"salt");var g,v=0|t._crypto_pwhash_scryptsalsa208sha256_saltbytes();n.length!==v&&_(s,"invalid salt length"),g=l(n),s.push(g),y(s,i,"opsLimit"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&_(s,"opsLimit must be an unsigned integer"),y(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&_(s,"memLimit must be an unsigned integer");var w=new h(0|e),k=w.address;if(s.push(k),0==(0|t._crypto_pwhash_scryptsalsa208sha256(k,e,0,u,d,0,g,i,0,a))){var E=c(w,o);return p(s),E}b(s)},function(e,r,n,i,a,o,s){var u=[];f(s);var d=l(e=m(u,e,"password")),g=e.length;u.push(d);var v=l(r=m(u,r,"salt")),w=r.length;u.push(v),y(u,n,"opsLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(u,"opsLimit must be an unsigned integer"),y(u,i,"r"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&_(u,"r must be an unsigned integer"),y(u,a,"p"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&_(u,"p must be an unsigned integer"),y(u,o,"keyLength"),("number"!=typeof o||(0|o)!==o)&&(0|o)>0&&_(u,"keyLength must be an unsigned integer");var k=new h(0|o),E=k.address;if(u.push(E),0==(0|t._crypto_pwhash_scryptsalsa208sha256_ll(d,g,v,w,n,0,i,a,E,o))){var S=c(k,s);return p(u),S}b(u)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"password")),s=e.length;a.push(o),y(a,r,"opsLimit"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&_(a,"opsLimit must be an unsigned integer"),y(a,n,"memLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(a,"memLimit must be an unsigned integer");var c=new h(0|t._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(a.push(c),0==(0|t._crypto_pwhash_scryptsalsa208sha256_str(c,o,s,0,r,0,n))){var u=t.Pointer_stringify(c);return p(a),u}b(a)},function(e,r,i){var a=[];f(i);var o=l(e=n(e+"\0"));e.length,a.push(o);var s=l(r=m(a,r,"password")),c=r.length;a.push(s);var u=0==(0|t._crypto_pwhash_scryptsalsa208sha256_str_verify(o,s,c,0));return p(a),u},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"password")),s=e.length;a.push(o),y(a,r,"opsLimit"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&_(a,"opsLimit must be an unsigned integer"),y(a,n,"memLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(a,"memLimit must be an unsigned integer");var c=new h(0|t._crypto_pwhash_strbytes()).address;if(a.push(c),0==(0|t._crypto_pwhash_str(c,o,s,0,r,0,n))){var u=t.Pointer_stringify(c);return p(a),u}b(a)},function(e,r,i){var a=[];f(i);var o=l(e=n(e+"\0"));e.length,a.push(o);var s=l(r=m(a,r,"password")),c=r.length;a.push(s);var u=0==(0|t._crypto_pwhash_str_verify(o,s,c,0));return p(a),u},function(e,r,n){var i=[];f(n),e=m(i,e,"privateKey");var a,o=0|t._crypto_scalarmult_scalarbytes();e.length!==o&&_(i,"invalid privateKey length"),a=l(e),i.push(a),r=m(i,r,"publicKey");var s,u=0|t._crypto_scalarmult_scalarbytes();r.length!==u&&_(i,"invalid publicKey length"),s=l(r),i.push(s);var d=new h(0|t._crypto_scalarmult_bytes()),y=d.address;if(i.push(y),0==(0|t._crypto_scalarmult(y,a,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_scalarmult_scalarbytes();e.length!==a&&_(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_scalarmult_base(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_secretbox_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(0|s),w=v.address;a.push(w);var k=new h(0|t._crypto_secretbox_macbytes()),E=k.address;if(a.push(E),0==(0|t._crypto_secretbox_detached(w,E,o,s,0,u,y))){var S=c({mac:k,cipher:v},i);return p(a),S}b(a)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_secretbox_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(s+t._crypto_secretbox_macbytes()|0),w=v.address;if(a.push(w),0==(0|t._crypto_secretbox_easy(w,o,s,0,u,y))){var k=c(v,i);return p(a),k}b(a)},function(e){var r=[];f(e);var n=new h(0|t._crypto_secretbox_keybytes()),i=n.address;r.push(i),t._crypto_secretbox_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"ciphertext")),u=e.length;o.push(s),r=m(o,r,"mac");var d,y=0|t._crypto_secretbox_macbytes();r.length!==y&&_(o,"invalid mac length"),d=l(r),o.push(d),n=m(o,n,"nonce");var g,v=0|t._crypto_secretbox_noncebytes();n.length!==v&&_(o,"invalid nonce length"),g=l(n),o.push(g),i=m(o,i,"key");var w,k=0|t._crypto_secretbox_keybytes();i.length!==k&&_(o,"invalid key length"),w=l(i),o.push(w);var E=new h(0|u),S=E.address;if(o.push(S),0==(0|t._crypto_secretbox_open_detached(S,s,d,u,0,g,w))){var x=c(E,a);return p(o),x}b(o)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"ciphertext")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_secretbox_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(s-t._crypto_secretbox_macbytes()|0),w=v.address;if(a.push(w),0==(0|t._crypto_secretbox_open_easy(w,o,s,0,u,y))){var k=c(v,i);return p(a),k}b(a)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_shorthash_keybytes();r.length!==u&&_(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_shorthash_bytes()),y=d.address;if(i.push(y),0==(0|t._crypto_shorthash(y,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e){var r=[];f(e);var n=new h(0|t._crypto_shorthash_keybytes()),i=n.address;r.push(i),t._crypto_shorthash_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_shorthash_siphashx24_keybytes();r.length!==u&&_(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_shorthash_siphashx24_bytes()),y=d.address;if(i.push(y),0==(0|t._crypto_shorthash_siphashx24(y,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"privateKey");var s,u=0|t._crypto_sign_secretkeybytes();r.length!==u&&_(i,"invalid privateKey length"),s=l(r),i.push(s);var d=new h(e.length+t._crypto_sign_bytes()|0),y=d.address;if(i.push(y),0==(0|t._crypto_sign(y,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"privateKey");var s,u=0|t._crypto_sign_secretkeybytes();r.length!==u&&_(i,"invalid privateKey length"),s=l(r),i.push(s);var d=new h(0|t._crypto_sign_bytes()),y=d.address;if(i.push(y),0==(0|t._crypto_sign_detached(y,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"edPk");var i,a=0|t._crypto_sign_publickeybytes();e.length!==a&&_(n,"invalid edPk length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_pk_to_curve25519(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"edSk");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&_(n,"invalid edSk length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_curve25519(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&_(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_publickeybytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_pk(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&_(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_seedbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_seed(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r,n){var i=[];f(n),y(i,e,"state_address"),r=m(i,r,"privateKey");var a,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&_(i,"invalid privateKey length"),a=l(r),i.push(a);var s=new h(0|t._crypto_sign_bytes()),u=s.address;if(i.push(u),0==(0|t._crypto_sign_final_create(e,u,null,a))){var d=(t._free(e),c(s,n));return p(i),d}b(i)},function(e,r,n,i){var a=[];f(i),y(a,e,"state_address"),r=m(a,r,"signature");var o,s=0|t._crypto_sign_bytes();r.length!==s&&_(a,"invalid signature length"),o=l(r),a.push(o),n=m(a,n,"publicKey");var c,u=0|t._crypto_sign_publickeybytes();n.length!==u&&_(a,"invalid publicKey length"),c=l(n),a.push(c);var h=0==(0|t._crypto_sign_final_verify(e,o,c));return p(a),h},function(e){var r=[];f(e);var n=new h(208).address;if(0==(0|t._crypto_sign_init(n))){var i=n;return p(r),i}b(r)},function(e){var r=[];f(e);var n=new h(0|t._crypto_sign_publickeybytes()),i=n.address;r.push(i);var a=new h(0|t._crypto_sign_secretkeybytes()),o=a.address;if(r.push(o),0==(0|t._crypto_sign_keypair(i,o))){var s=c({publicKey:n,privateKey:a,keyType:"ed25519"},e);return p(r),s}b(r)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"signedMessage")),o=e.length;i.push(a),r=m(i,r,"publicKey");var s,u=0|t._crypto_sign_publickeybytes();r.length!==u&&_(i,"invalid publicKey length"),s=l(r),i.push(s);var d=new h(o-t._crypto_sign_bytes()|0),y=d.address;if(i.push(y),0==(0|t._crypto_sign_open(y,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"seed");var i,a=0|t._crypto_sign_seedbytes();e.length!==a&&_(n,"invalid seed length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_publickeybytes()),s=o.address;n.push(s);var u=new h(0|t._crypto_sign_secretkeybytes()),d=u.address;if(n.push(d),0==(0|t._crypto_sign_seed_keypair(s,d,i))){var y=c({publicKey:o,privateKey:u,keyType:"ed25519"},r);return p(n),y}b(n)},function(e,r,n){var i=[];f(n),y(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_sign_update(e,a,o))?b(i):p(i)},function(e,r,n){var i=[];e=m(i,e,"signature");var a,o=0|t._crypto_sign_bytes();e.length!==o&&_(i,"invalid signature length"),a=l(e),i.push(a);var s=l(r=m(i,r,"message")),c=r.length;i.push(s),n=m(i,n,"publicKey");var u,f=0|t._crypto_sign_publickeybytes();n.length!==f&&_(i,"invalid publicKey length"),u=l(n),i.push(u);var h=0==(0|t._crypto_sign_verify_detached(a,s,c,0,u));return p(i),h},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_stream_chacha20_ietf_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_chacha20_ietf_xor(w,o,s,0,u,y)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==g&&_(o,"invalid nonce length"),d=l(r),o.push(d),y(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_chacha20_ietf_keybytes();i.length!==w&&_(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_chacha20_ietf_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_chacha20_keybytes()),i=n.address;r.push(i),t._crypto_stream_chacha20_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_chacha20_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_stream_chacha20_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_chacha20_xor(w,o,s,0,u,y)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_chacha20_noncebytes();r.length!==g&&_(o,"invalid nonce length"),d=l(r),o.push(d),y(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_chacha20_keybytes();i.length!==w&&_(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_chacha20_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_keybytes()),i=n.address;r.push(i),t._crypto_stream_keygen(i);var a=c(n,e);return p(r),a},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_xchacha20_keybytes()),i=n.address;r.push(i),t._crypto_stream_xchacha20_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_xchacha20_noncebytes();r.length!==d&&_(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var y,g=0|t._crypto_stream_xchacha20_keybytes();n.length!==g&&_(a,"invalid key length"),y=l(n),a.push(y);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_xchacha20_xor(w,o,s,0,u,y)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_xchacha20_noncebytes();r.length!==g&&_(o,"invalid nonce length"),d=l(r),o.push(d),y(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&_(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_xchacha20_keybytes();i.length!==w&&_(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_xchacha20_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e,r){var n=[];f(r),y(n,e,"length"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(n,"length must be an unsigned integer");var i=new h(0|e),a=i.address;n.push(a),t._randombytes_buf(a,e);var o=c(i,r);return p(n),o},function(e,r,n){var i=[];f(n),y(i,e,"length"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(i,"length must be an unsigned integer"),r=m(i,r,"seed");var a,o=0|t._randombytes_seedbytes();r.length!==o&&_(i,"invalid seed length"),a=l(r),i.push(a);var s=new h(0|e),u=s.address;i.push(u),t._randombytes_buf_deterministic(u,e,0,r);var d=c(s,n);return p(i),d},function(e){f(e),t._randombytes_close()},function(e){f(e);var r=t._randombytes_random()>>>0;return p([]),r},function(e,r){var n=[];f(r);for(var i=t._malloc(24),a=0;a<6;a++)t.setValue(i+4*a,t.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][a]]),"i32");0!=(0|t._randombytes_set_implementation(i))?b(n):p(n)},function(e){f(e),t._randombytes_stir()},function(e,r){var n=[];f(r),y(n,e,"upper_bound"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&_(n,"upper_bound must be an unsigned integer");var i=t._randombytes_uniform(e)>>>0;return p(n),i},function(){var e=t._sodium_version_string(),r=t.Pointer_stringify(e);return p([]),r}],w=0;w1?i.thisProgram=n.argv[1].replace(/\\/g,"/"):i.thisProgram="unknown-program"),i.arguments=n.argv.slice(2),e.exports=i,n.on("uncaughtException",function(e){if(!(e instanceof Ue))throw e}),i.inspect=function(){return"[Emscripten Module object]"};else if(l)i.print||(i.print=print),"undefined"!=typeof printErr&&(i.printErr=printErr),"undefined"!=typeof read?i.read=read:i.read=function(){throw"no read() available"},i.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var t=read(e,"binary");return v("object"==typeof t),t},"undefined"!=typeof scriptArgs?i.arguments=scriptArgs:void 0!==arguments&&(i.arguments=arguments),"function"==typeof quit&&(i.quit=function(e,t){quit(e)});else{if(!u&&!f)throw"Unknown runtime environment. Where are we?";if(i.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},f&&(i.readBinary=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),i.readAsync=function(e,t,r){var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=function(){200==n.status||0==n.status&&n.response?t(n.response):r()},n.onerror=r,n.send(null)},void 0!==arguments&&(i.arguments=arguments),"undefined"!=typeof console)i.print||(i.print=function(e){console.log(e)}),i.printErr||(i.printErr=function(e){console.warn(e)});else{i.print||(i.print=function(e){})}f&&(i.load=importScripts),void 0===i.setWindowTitle&&(i.setWindowTitle=function(e){document.title=e})}function d(e){He("NO_DYNAMIC_EXECUTION=1 was set, cannot eval")}for(var o in!i.load&&i.read&&(i.load=function(e){d(i.read(e))}),i.print||(i.print=function(){}),i.printErr||(i.printErr=i.print),i.arguments||(i.arguments=[]),i.thisProgram||(i.thisProgram="./this.program"),i.quit||(i.quit=function(e,t){throw t}),i.print=i.print,i.printErr=i.printErr,i.preRun=[],i.postRun=[],a)a.hasOwnProperty(o)&&(i[o]=a[o]);a=void 0;var p={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return V},stackRestore:function(e){V=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return p.QUANTUM_SIZE;if("i"===e[0]){var t=parseInt(e.substr(1));return v(t%8==0),t/8}return 0}},getNativeFieldSize:function(e){return Math.max(p.getNativeTypeSize(e),p.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return"double"===t||"i64"===t?7&e&&(v(4==(7&e)),e+=4):v(0==(3&e)),e},getAlignSize:function(e,t,r){return r||"i64"!=e&&"double"!=e?e?Math.min(t||(e?p.getNativeFieldSize(e):0),p.QUANTUM_SIZE):Math.min(t,8):8},dynCall:function(e,t,r){return r&&r.length?i["dynCall_"+e].apply(null,[t].concat(r)):i["dynCall_"+e].call(null,t)},functionPointers:[null,null,null,null,null,null,null,null],addFunction:function(e){for(var t=0;t>2],r=-16&(t+e+15|0);if((q[W>>2]=r,r>=ee)&&!$())return q[W>>2]=t,0;return t},alignMemory:function(e,t){return e=Math.ceil(e/(t||16))*(t||16)},makeBigInt:function(e,t,r){return r?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};i.Runtime=p;var b,_,y,m,g=0;function v(e,t){e||He("Assertion failed: "+t)}function w(e,t,r,n){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":j[e>>0]=t;break;case"i16":P[e>>1]=t;break;case"i32":q[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+pe(tempDouble)>=1?tempDouble>0?(0|ye(+_e(tempDouble/4294967296),4294967295))>>>0:~~+be((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],q[e>>2]=tempI64[0],q[e+4>>2]=tempI64[1];break;case"float":D[e>>2]=t;break;case"double":K[e>>3]=t;break;default:He("invalid type for setValue: "+r)}}function k(e,t,r){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return j[e>>0];case"i16":return P[e>>1];case"i32":case"i64":return q[e>>2];case"float":return D[e>>2];case"double":return K[e>>3];default:He("invalid type for setValue: "+t)}return null}m={string:(y={stackSave:function(){p.stackSave()},stackRestore:function(){p.stackRestore()},arrayToC:function(e){var t=p.stackAlloc(e.length);return le(e,t),t},stringToC:function(e){var t=0;if(null!==e&&void 0!==e&&0!==e){var r=1+(e.length<<2);z(e,t=p.stackAlloc(r),r)}return t}}).stringToC,array:y.arrayToC},_=function(e,t,r,n,a){var o=function(e){var t=i["_"+e];return t||He("NO_DYNAMIC_EXECUTION=1 was set, cannot eval"),v(t,"Cannot call unknown function "+e+" (perhaps LLVM optimizations or closure removed it?)"),t}(e),s=[],c=0;if(n)for(var u=0;u>2]=0;for(c=o+a;n>0]=0;return o}if("i8"===s)return e.subarray||e.slice?N.set(e,o):N.set(new Uint8Array(e),o),o;for(var u,f,h,l=0;l>0],(0!=r||t)&&(a++,!t||a!=t););t||(t=a);var o="";if(n<128){for(var s;t>0;)s=String.fromCharCode.apply(String,N.subarray(e,e+Math.min(t,1024))),o=o?o+s:s,e+=1024,t-=1024;return o}return i.UTF8ToString(e)}i.ALLOC_NORMAL=0,i.ALLOC_STACK=1,i.ALLOC_STATIC=E,i.ALLOC_DYNAMIC=3,i.ALLOC_NONE=S,i.allocate=x,i.getMemory=function(e){return H?se?Oe(e):p.dynamicAlloc(e):p.staticAlloc(e)},i.Pointer_stringify=A,i.AsciiToString=function(e){for(var t="";;){var r=j[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}},i.stringToAscii=function(e,t){return de(e,t,!1)};var M="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function I(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&M)return M.decode(e.subarray(t,r));for(var n,i,a,o,s,c="";;){if(!(n=e[t++]))return c;if(128&n)if(i=63&e[t++],192!=(224&n))if(a=63&e[t++],224==(240&n)?n=(15&n)<<12|i<<6|a:(o=63&e[t++],240==(248&n)?n=(7&n)<<18|i<<12|a<<6|o:(s=63&e[t++],n=248==(252&n)?(3&n)<<24|i<<18|a<<12|o<<6|s:(1&n)<<30|i<<24|a<<18|o<<12|s<<6|63&e[t++])),n<65536)c+=String.fromCharCode(n);else{var u=n-65536;c+=String.fromCharCode(55296|u>>10,56320|1023&u)}else c+=String.fromCharCode((31&n)<<6|i);else c+=String.fromCharCode(n)}}function T(e,t,r,n){if(!(n>0))return 0;for(var i=r,a=r+n-1,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(r>=a)break;t[r++]=s}else if(s<=2047){if(r+1>=a)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(s<=65535){if(r+2>=a)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else if(s<=2097151){if(r+3>=a)break;t[r++]=240|s>>18,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}else if(s<=67108863){if(r+4>=a)break;t[r++]=248|s>>24,t[r++]=128|s>>18&63,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+5>=a)break;t[r++]=252|s>>30,t[r++]=128|s>>24&63,t[r++]=128|s>>18&63,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}}return t[r]=0,r-i}function z(e,t,r){return T(e,N,t,r)}function B(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++r)),n<=127?++t:t+=n<=2047?2:n<=65535?3:n<=2097151?4:n<=67108863?5:6}return t}i.UTF8ArrayToString=I,i.UTF8ToString=function(e){return I(N,e)},i.stringToUTF8Array=T,i.stringToUTF8=z,i.lengthBytesUTF8=B;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");function R(e){return e.replace(/__Z[\w\d_]+/g,function(e){var t=function(e){var t=i.___cxa_demangle||i.__cxa_demangle;if(t){try{var r=e.substr(1),n=B(r)+1,a=Oe(n);z(r,a,n);var o=Oe(4),s=t(a,0,0,o);if(0===k(o,"i32")&&s)return A(s)}catch(e){}finally{a&&ze(a),o&&ze(o),s&&ze(s)}return e}return p.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}(e);return e===t?e:e+" ["+t+"]"})}function C(){var e=function(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}();return i.extraStackTrace&&(e+="\n"+i.extraStackTrace()),R(e)}i.stackTrace=C;var O,j,N,P,L,q,U,D,K,F,Y,H,V,G,X,W,Z=16384;function J(){He("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+ee+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function $(){J()}Y=V=W=0,H=!1;var Q=i.TOTAL_STACK||5242880,ee=i.TOTAL_MEMORY||16777216;if(ee0;){var t=e.shift();if("function"!=typeof t){var r=t.func;"number"==typeof r?void 0===t.arg?i.dynCall_v(r):i.dynCall_vi(r,t.arg):r(void 0===t.arg?null:t.arg)}else t()}}i.HEAP=void 0,i.buffer=O,i.HEAP8=j,i.HEAP16=P,i.HEAP32=q,i.HEAPU8=N,i.HEAPU16=L,i.HEAPU32=U,i.HEAPF32=D,i.HEAPF64=K;var re=[],ne=[],ie=[],ae=[],oe=[],se=!1;function ce(){se||(se=!0,te(ne))}function ue(e){re.unshift(e)}function fe(e){oe.unshift(e)}function he(e,t,r){var n=r>0?r:B(e)+1,i=new Array(n),a=T(e,i,0,i.length);return t&&(i.length=a),i}function le(e,t){j.set(e,t)}function de(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(j[t>>0]=0)}i.addOnPreRun=ue,i.addOnInit=function(e){ne.unshift(e)},i.addOnPreMain=function(e){ie.unshift(e)},i.addOnExit=function(e){ae.unshift(e)},i.addOnPostRun=fe,i.intArrayFromString=he,i.intArrayToString=function(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")},i.writeStringToMemory=function(e,t,r){var n,i;p.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),r&&(i=t+B(e),n=j[i]),z(e,t,1/0),r&&(j[i]=n)},i.writeArrayToMemory=le,i.writeAsciiToMemory=de,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16)*n+r*(t>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var pe=Math.abs,be=(Math.cos,Math.sin,Math.tan,Math.acos,Math.asin,Math.atan,Math.atan2,Math.exp,Math.log,Math.sqrt,Math.ceil),_e=Math.floor,ye=(Math.pow,Math.imul,Math.fround,Math.round,Math.min),me=(Math.clz32,Math.trunc,0),ge=null,ve=null;i.addRunDependency=function(e){me++,i.monitorRunDependencies&&i.monitorRunDependencies(me)},i.removeRunDependency=function(e){if(me--,i.monitorRunDependencies&&i.monitorRunDependencies(me),0==me&&(null!==ge&&(clearInterval(ge),ge=null),ve)){var t=ve;ve=null,t()}},i.preloadedImages={},i.preloadedAudios={};var we=[function(){return i.getRandomValue()},function(){if(void 0===i.getRandomValue)try{var e="object"==typeof window?window:self,t=void 0!==e.crypto?e.crypto:e.msCrypto,n=function(){var e=new Uint32Array(1);return t.getRandomValues(e),e[0]>>>0};n(),i.getRandomValue=n}catch(e){try{var a=r(99),o=function(){var e=a.randomBytes(4);return(e[0]<<24|e[1]<<16|e[2]<<8|e[3])>>>0};o(),i.getRandomValue=o}catch(e){throw"No secure random number generator found"}}}];F=p.GLOBAL_BASE,Y=F+35120,ne.push(),x([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,232,149,143,194,178,39,176,69,195,244,137,242,239,152,240,213,223,172,5,211,198,51,57,177,56,2,136,109,83,252,5,199,23,106,112,61,77,216,79,186,60,11,118,13,16,103,15,42,32,83,250,44,57,204,198,78,199,253,119,146,172,3,122,19,232,149,143,194,178,39,176,69,195,244,137,242,239,152,240,213,223,172,5,211,198,51,57,177,56,2,136,109,83,252,133,180,23,106,112,61,77,216,79,186,60,11,118,13,16,103,15,42,32,83,250,44,57,204,198,78,199,253,119,146,172,3,250,236,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,237,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,238,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,217,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,218,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,219,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,8,201,188,243,103,230,9,106,59,167,202,132,133,174,103,187,43,248,148,254,114,243,110,60,241,54,29,95,58,245,79,165,209,130,230,173,127,82,14,81,31,108,62,43,140,104,5,155,107,189,65,251,171,217,131,31,121,33,126,19,25,205,224,91,34,174,40,215,152,47,138,66,205,101,239,35,145,68,55,113,47,59,77,236,207,251,192,181,188,219,137,129,165,219,181,233,56,181,72,243,91,194,86,57,25,208,5,182,241,17,241,89,155,79,25,175,164,130,63,146,24,129,109,218,213,94,28,171,66,2,3,163,152,170,7,216,190,111,112,69,1,91,131,18,140,178,228,78,190,133,49,36,226,180,255,213,195,125,12,85,111,137,123,242,116,93,190,114,177,150,22,59,254,177,222,128,53,18,199,37,167,6,220,155,148,38,105,207,116,241,155,193,210,74,241,158,193,105,155,228,227,37,79,56,134,71,190,239,181,213,140,139,198,157,193,15,101,156,172,119,204,161,12,36,117,2,43,89,111,44,233,45,131,228,166,110,170,132,116,74,212,251,65,189,220,169,176,92,181,83,17,131,218,136,249,118,171,223,102,238,82,81,62,152,16,50,180,45,109,198,49,168,63,33,251,152,200,39,3,176,228,14,239,190,199,127,89,191,194,143,168,61,243,11,224,198,37,167,10,147,71,145,167,213,111,130,3,224,81,99,202,6,112,110,14,10,103,41,41,20,252,47,210,70,133,10,183,39,38,201,38,92,56,33,27,46,237,42,196,90,252,109,44,77,223,179,149,157,19,13,56,83,222,99,175,139,84,115,10,101,168,178,119,60,187,10,106,118,230,174,237,71,46,201,194,129,59,53,130,20,133,44,114,146,100,3,241,76,161,232,191,162,1,48,66,188,75,102,26,168,145,151,248,208,112,139,75,194,48,190,84,6,163,81,108,199,24,82,239,214,25,232,146,209,16,169,101,85,36,6,153,214,42,32,113,87,133,53,14,244,184,209,187,50,112,160,106,16,200,208,210,184,22,193,164,25,83,171,65,81,8,108,55,30,153,235,142,223,76,119,72,39,168,72,155,225,181,188,176,52,99,90,201,197,179,12,28,57,203,138,65,227,74,170,216,78,115,227,99,119,79,202,156,91,163,184,178,214,243,111,46,104,252,178,239,93,238,130,143,116,96,47,23,67,111,99,165,120,114,171,240,161,20,120,200,132,236,57,100,26,8,2,199,140,40,30,99,35,250,255,190,144,233,189,130,222,235,108,80,164,21,121,198,178,247,163,249,190,43,83,114,227,242,120,113,198,156,97,38,234,206,62,39,202,7,194,192,33,199,184,134,209,30,235,224,205,214,125,218,234,120,209,110,238,127,79,125,245,186,111,23,114,170,103,240,6,166,152,200,162,197,125,99,10,174,13,249,190,4,152,63,17,27,71,28,19,53,11,113,27,132,125,4,35,245,119,219,40,147,36,199,64,123,171,202,50,188,190,201,21,10,190,158,60,76,13,16,156,196,103,29,67,182,66,62,203,190,212,197,76,42,126,101,252,156,41,127,89,236,250,214,58,171,111,203,95,23,88,71,74,140,25,68,108,182,120,89,255,133,114,211,0,189,110,21,255,15,10,106,0,41,192,1,0,152,232,121,255,188,60,160,255,153,113,206,255,0,183,226,254,180,13,72,255,176,160,14,254,211,201,134,255,158,24,143,0,127,105,53,0,96,12,189,0,167,215,251,255,159,76,128,254,106,101,225,255,30,252,4,0,146,12,174,0,89,241,178,254,10,229,166,255,123,221,42,254,30,20,212,0,82,128,3,0,48,209,243,0,119,121,64,255,50,227,156,255,0,110,197,1,103,27,144,0,133,59,140,1,189,241,36,255,248,37,195,1,96,220,55,0,183,76,62,255,195,66,61,0,50,76,164,1,225,164,76,255,76,61,163,255,117,62,31,0,81,145,64,255,118,65,14,0,162,115,214,255,6,138,46,0,124,230,244,255,10,138,143,0,52,26,194,0,184,244,76,0,129,143,41,1,190,244,19,255,123,170,122,255,98,129,68,0,121,213,147,0,86,101,30,255,161,103,155,0,140,89,67,255,239,229,190,1,67,11,181,0,198,240,137,254,238,69,188,255,67,151,238,0,19,42,108,255,229,85,113,1,50,68,135,255,17,106,9,0,50,103,1,255,80,1,168,1,35,152,30,255,16,168,185,1,56,89,232,255,101,210,252,0,41,250,71,0,204,170,79,255,14,46,239,255,80,77,239,0,189,214,75,255,17,141,249,0,38,80,76,255,190,85,117,0,86,228,170,0,156,216,208,1,195,207,164,255,150,66,76,255,175,225,16,255,141,80,98,1,76,219,242,0,198,162,114,0,46,218,152,0,155,43,241,254,155,160,104,255,51,187,165,0,2,17,175,0,66,84,160,1,247,58,30,0,35,65,53,254,69,236,191,0,45,134,245,1,163,123,221,0,32,110,20,255,52,23,165,0,186,214,71,0,233,176,96,0,242,239,54,1,57,89,138,0,83,0,84,255,136,160,100,0,92,142,120,254,104,124,190,0,181,177,62,255,250,41,85,0,152,130,42,1,96,252,246,0,151,151,63,254,239,133,62,0,32,56,156,0,45,167,189,255,142,133,179,1,131,86,211,0,187,179,150,254,250,170,14,255,210,163,78,0,37,52,151,0,99,77,26,0,238,156,213,255,213,192,209,1,73,46,84,0,20,65,41,1,54,206,79,0,201,131,146,254,170,111,24,255,177,33,50,254,171,38,203,255,78,247,116,0,209,221,153,0,133,128,178,1,58,44,25,0,201,39,59,1,189,19,252,0,49,229,210,1,117,187,117,0,181,179,184,1,0,114,219,0,48,94,147,0,245,41,56,0,125,13,204,254,244,173,119,0,44,221,32,254,84,234,20,0,249,160,198,1,236,126,234,255,47,99,168,254,170,226,153,255,102,179,216,0,226,141,122,255,122,66,153,254,182,245,134,0,227,228,25,1,214,57,235,255,216,173,56,255,181,231,210,0,119,128,157,255,129,95,136,255,110,126,51,0,2,169,183,255,7,130,98,254,69,176,94,255,116,4,227,1,217,242,145,255,202,173,31,1,105,1,39,255,46,175,69,0,228,47,58,255,215,224,69,254,207,56,69,255,16,254,139,255,23,207,212,255,202,20,126,255,95,213,96,255,9,176,33,0,200,5,207,255,241,42,128,254,35,33,192,255,248,229,196,1,129,17,120,0,251,103,151,255,7,52,112,255,140,56,66,255,40,226,245,255,217,70,37,254,172,214,9,255,72,67,134,1,146,192,214,255,44,38,112,0,68,184,75,255,206,90,251,0,149,235,141,0,181,170,58,0,116,244,239,0,92,157,2,0,102,173,98,0,233,137,96,1,127,49,203,0,5,155,148,0,23,148,9,255,211,122,12,0,34,134,26,255,219,204,136,0,134,8,41,255,224,83,43,254,85,25,247,0,109,127,0,254,169,136,48,0,238,119,219,255,231,173,213,0,206,18,254,254,8,186,7,255,126,9,7,1,111,42,72,0,111,52,236,254,96,63,141,0,147,191,127,254,205,78,192,255,14,106,237,1,187,219,76,0,175,243,187,254,105,89,173,0,85,25,89,1,162,243,148,0,2,118,209,254,33,158,9,0,139,163,46,255,93,70,40,0,108,42,142,254,111,252,142,255,155,223,144,0,51,229,167,255,73,252,155,255,94,116,12,255,152,160,218,255,156,238,37,255,179,234,207,255,197,0,179,255,154,164,141,0,225,196,104,0,10,35,25,254,209,212,242,255,97,253,222,254,184,101,229,0,222,18,127,1,164,136,135,255,30,207,140,254,146,97,243,0,129,192,26,254,201,84,33,255,111,10,78,255,147,81,178,255,4,4,24,0,161,238,215,255,6,141,33,0,53,215,14,255,41,181,208,255,231,139,157,0,179,203,221,255,255,185,113,0,189,226,172,255,113,66,214,255,202,62,45,255,102,64,8,255,78,174,16,254,133,117,68,255,133,59,140,1,189,241,36,255,248,37,195,1,96,220,55,0,183,76,62,255,195,66,61,0,50,76,164,1,225,164,76,255,76,61,163,255,117,62,31,0,81,145,64,255,118,65,14,0,162,115,214,255,6,138,46,0,124,230,244,255,10,138,143,0,52,26,194,0,184,244,76,0,129,143,41,1,190,244,19,255,123,170,122,255,98,129,68,0,121,213,147,0,86,101,30,255,161,103,155,0,140,89,67,255,239,229,190,1,67,11,181,0,198,240,137,254,238,69,188,255,234,113,60,255,37,255,57,255,69,178,182,254,128,208,179,0,118,26,125,254,3,7,214,255,241,50,77,255,85,203,197,255,211,135,250,255,25,48,100,255,187,213,180,254,17,88,105,0,83,209,158,1,5,115,98,0,4,174,60,254,171,55,110,255,217,181,17,255,20,188,170,0,146,156,102,254,87,214,174,255,114,122,155,1,233,44,170,0,127,8,239,1,214,236,234,0,175,5,219,0,49,106,61,255,6,66,208,255,2,106,110,255,81,234,19,255,215,107,192,255,67,151,238,0,19,42,108,255,229,85,113,1,50,68,135,255,17,106,9,0,50,103,1,255,80,1,168,1,35,152,30,255,16,168,185,1,56,89,232,255,101,210,252,0,41,250,71,0,204,170,79,255,14,46,239,255,80,77,239,0,189,214,75,255,17,141,249,0,38,80,76,255,190,85,117,0,86,228,170,0,156,216,208,1,195,207,164,255,150,66,76,255,175,225,16,255,141,80,98,1,76,219,242,0,198,162,114,0,46,218,152,0,155,43,241,254,155,160,104,255,178,9,252,254,100,110,212,0,14,5,167,0,233,239,163,255,28,151,157,1,101,146,10,255,254,158,70,254,71,249,228,0,88,30,50,0,68,58,160,255,191,24,104,1,129,66,129,255,192,50,85,255,8,179,138,255,38,250,201,0,115,80,160,0,131,230,113,0,125,88,147,0,90,68,199,0,253,76,158,0,28,255,118,0,113,250,254,0,66,75,46,0,230,218,43,0,229,120,186,1,148,68,43,0,136,124,238,1,187,107,197,255,84,53,246,255,51,116,254,255,51,187,165,0,2,17,175,0,66,84,160,1,247,58,30,0,35,65,53,254,69,236,191,0,45,134,245,1,163,123,221,0,32,110,20,255,52,23,165,0,186,214,71,0,233,176,96,0,242,239,54,1,57,89,138,0,83,0,84,255,136,160,100,0,92,142,120,254,104,124,190,0,181,177,62,255,250,41,85,0,152,130,42,1,96,252,246,0,151,151,63,254,239,133,62,0,32,56,156,0,45,167,189,255,142,133,179,1,131,86,211,0,187,179,150,254,250,170,14,255,68,113,21,255,222,186,59,255,66,7,241,1,69,6,72,0,86,156,108,254,55,167,89,0,109,52,219,254,13,176,23,255,196,44,106,255,239,149,71,255,164,140,125,255,159,173,1,0,51,41,231,0,145,62,33,0,138,111,93,1,185,83,69,0,144,115,46,0,97,151,16,255,24,228,26,0,49,217,226,0,113,75,234,254,193,153,12,255,182,48,96,255,14,13,26,0,128,195,249,254,69,193,59,0,132,37,81,254,125,106,60,0,214,240,169,1,164,227,66,0,210,163,78,0,37,52,151,0,99,77,26,0,238,156,213,255,213,192,209,1,73,46,84,0,20,65,41,1,54,206,79,0,201,131,146,254,170,111,24,255,177,33,50,254,171,38,203,255,78,247,116,0,209,221,153,0,133,128,178,1,58,44,25,0,201,39,59,1,189,19,252,0,49,229,210,1,117,187,117,0,181,179,184,1,0,114,219,0,48,94,147,0,245,41,56,0,125,13,204,254,244,173,119,0,44,221,32,254,84,234,20,0,249,160,198,1,236,126,234,255,143,62,221,0,129,89,214,255,55,139,5,254,68,20,191,255,14,204,178,1,35,195,217,0,47,51,206,1,38,246,165,0,206,27,6,254,158,87,36,0,217,52,146,255,125,123,215,255,85,60,31,255,171,13,7,0,218,245,88,254,252,35,60,0,55,214,160,255,133,101,56,0,224,32,19,254,147,64,234,0,26,145,162,1,114,118,125,0,248,252,250,0,101,94,196,255,198,141,226,254,51,42,182,0,135,12,9,254,109,172,210,255,197,236,194,1,241,65,154,0,48,156,47,255,153,67,55,255,218,165,34,254,74,180,179,0,218,66,71,1,88,122,99,0,212,181,219,255,92,42,231,255,239,0,154,0,245,77,183,255,94,81,170,1,18,213,216,0,171,93,71,0,52,94,248,0,18,151,161,254,197,209,66,255,174,244,15,254,162,48,183,0,49,61,240,254,182,93,195,0,199,228,6,1,200,5,17,255,137,45,237,255,108,148,4,0,90,79,237,255,39,63,77,255,53,82,207,1,142,22,118,255,101,232,18,1,92,26,67,0,5,200,88,255,33,168,138,255,149,225,72,0,2,209,27,255,44,245,168,1,220,237,17,255,30,211,105,254,141,238,221,0,128,80,245,254,111,254,14,0,222,95,190,1,223,9,241,0,146,76,212,255,108,205,104,255,63,117,153,0,144,69,48,0,35,228,111,0,192,33,193,255,112,214,190,254,115,152,151,0,23,102,88,0,51,74,248,0,226,199,143,254,204,162,101,255,208,97,189,1,245,104,18,0,230,246,30,255,23,148,69,0,110,88,52,254,226,181,89,255,208,47,90,254,114,161,80,255,33,116,248,0,179,152,87,255,69,144,177,1,88,238,26,255,58,32,113,1,1,77,69,0,59,121,52,255,152,238,83,0,52,8,193,0,231,39,233,255,199,34,138,0,222,68,173,0,91,57,242,254,220,210,127,255,192,7,246,254,151,35,187,0,195,236,165,0,111,93,206,0,212,247,133,1,154,133,209,255,155,231,10,0,64,78,38,0,122,249,100,1,30,19,97,255,62,91,249,1,248,133,77,0,197,63,168,254,116,10,82,0,184,236,113,254,212,203,194,255,61,100,252,254,36,5,202,255,119,91,153,255,129,79,29,0,103,103,171,254,237,215,111,255,216,53,69,0,239,240,23,0,194,149,221,255,38,225,222,0,232,255,180,254,118,82,133,255,57,209,177,1,139,232,133,0,158,176,46,254,194,115,46,0,88,247,229,1,28,103,191,0,221,222,175,254,149,235,44,0,151,228,25,254,218,105,103,0,142,85,210,0,149,129,190,255,213,65,94,254,117,134,224,255,82,198,117,0,157,221,220,0,163,101,36,0,197,114,37,0,104,172,166,254,11,182,0,0,81,72,188,255,97,188,16,255,69,6,10,0,199,147,145,255,8,9,115,1,65,214,175,255,217,173,209,0,80,127,166,0,247,229,4,254,167,183,124,255,90,28,204,254,175,59,240,255,11,41,248,1,108,40,51,255,144,177,195,254,150,250,126,0,138,91,65,1,120,60,222,255,245,193,239,0,29,214,189,255,128,2,25,0,80,154,162,0,77,220,107,1,234,205,74,255,54,166,103,255,116,72,9,0,228,94,47,255,30,200,25,255,35,214,89,255,61,176,140,255,83,226,163,255,75,130,172,0,128,38,17,0,95,137,152,255,215,124,159,1,79,93,0,0,148,82,157,254,195,130,251,255,40,202,76,255,251,126,224,0,157,99,62,254,207,7,225,255,96,68,195,0,140,186,157,255,131,19,231,255,42,128,254,0,52,219,61,254,102,203,72,0,141,7,11,255,186,164,213,0,31,122,119,0,133,242,145,0,208,252,232,255,91,213,182,255,143,4,250,254,249,215,74,0,165,30,111,1,171,9,223,0,229,123,34,1,92,130,26,255,77,155,45,1,195,139,28,255,59,224,78,0,136,17,247,0,108,121,32,0,79,250,189,255,96,227,252,254,38,241,62,0,62,174,125,255,155,111,93,255,10,230,206,1,97,197,40,255,0,49,57,254,65,250,13,0,18,251,150,255,220,109,210,255,5,174,166,254,44,129,189,0,235,35,147,255,37,247,141,255,72,141,4,255,103,107,255,0,247,90,4,0,53,44,42,0,2,30,240,0,4,59,63,0,88,78,36,0,113,167,180,0,190,71,193,255,199,158,164,255,58,8,172,0,77,33,12,0,65,63,3,0,153,77,33,255,172,254,102,1,228,221,4,255,87,30,254,1,146,41,86,255,138,204,239,254,108,141,17,255,187,242,135,0,210,208,127,0,68,45,14,254,73,96,62,0,81,60,24,255,170,6,36,255,3,249,26,0,35,213,109,0,22,129,54,255,21,35,225,255,234,61,56,255,58,217,6,0,143,124,88,0,236,126,66,0,209,38,183,255,34,238,6,255,174,145,102,0,95,22,211,0,196,15,153,254,46,84,232,255,117,34,146,1,231,250,74,255,27,134,100,1,92,187,195,255,170,198,112,0,120,28,42,0,209,70,67,0,29,81,31,0,29,168,100,1,169,173,160,0,107,35,117,0,62,96,59,255,81,12,69,1,135,239,190,255,220,252,18,0,163,220,58,255,137,137,188,255,83,102,109,0,96,6,76,0,234,222,210,255,185,174,205,1,60,158,213,255,13,241,214,0,172,129,140,0,93,104,242,0,192,156,251,0,43,117,30,0,225,81,158,0,127,232,218,0,226,28,203,0,233,27,151,255,117,43,5,255,242,14,47,255,33,20,6,0,137,251,44,254,27,31,245,255,183,214,125,254,40,121,149,0,186,158,213,255,89,8,227,0,69,88,0,254,203,135,225,0,201,174,203,0,147,71,184,0,18,121,41,254,94,5,78,0,224,214,240,254,36,5,180,0,251,135,231,1,163,138,212,0,210,249,116,254,88,129,187,0,19,8,49,254,62,14,144,255,159,76,211,0,214,51,82,0,109,117,228,254,103,223,203,255,75,252,15,1,154,71,220,255,23,13,91,1,141,168,96,255,181,182,133,0,250,51,55,0,234,234,212,254,175,63,158,0,39,240,52,1,158,189,36,255,213,40,85,1,32,180,247,255,19,102,26,1,84,24,97,255,69,21,222,0,148,139,122,255,220,213,235,1,232,203,255,0,121,57,147,0,227,7,154,0,53,22,147,1,72,1,225,0,82,134,48,254,83,60,157,255,145,72,169,0,34,103,239,0,198,233,47,0,116,19,4,255,184,106,9,255,183,129,83,0,36,176,230,1,34,103,72,0,219,162,134,0,245,42,158,0,32,149,96,254,165,44,144,0,202,239,72,254,215,150,5,0,42,66,36,1,132,215,175,0,86,174,86,255,26,197,156,255,49,232,135,254,103,182,82,0,253,128,176,1,153,178,122,0,245,250,10,0,236,24,178,0,137,106,132,0,40,29,41,0,50,30,152,255,124,105,38,0,230,191,75,0,143,43,170,0,44,131,20,255,44,13,23,255,237,255,155,1,159,109,100,255,112,181,24,255,104,220,108,0,55,211,131,0,99,12,213,255,152,151,145,255,238,5,159,0,97,155,8,0,33,108,81,0,1,3,103,0,62,109,34,255,250,155,180,0,32,71,195,255,38,70,145,1,159,95,245,0,69,229,101,1,136,28,240,0,79,224,25,0,78,110,121,255,248,168,124,0,187,128,247,0,2,147,235,254,79,11,132,0,70,58,12,1,181,8,163,255,79,137,133,255,37,170,11,255,141,243,85,255,176,231,215,255,204,150,164,255,239,215,39,255,46,87,156,254,8,163,88,255,172,34,232,0,66,44,102,255,27,54,41,254,236,99,87,255,41,123,169,1,52,114,43,0,117,134,40,0,155,134,26,0,231,207,91,254,35,132,38,255,19,102,125,254,36,227,133,255,118,3,113,255,29,13,124,0,152,96,74,1,88,146,206,255,167,191,220,254,162,18,88,255,182,100,23,0,31,117,52,0,81,46,106,1,12,2,7,0,69,80,201,1,209,246,172,0,12,48,141,1,224,211,88,0,116,226,159,0,122,98,130,0,65,236,234,1,225,226,9,255,207,226,123,1,89,214,59,0,112,135,88,1,90,244,203,255,49,11,38,1,129,108,186,0,89,112,15,1,101,46,204,255,127,204,45,254,79,255,221,255,51,73,18,255,127,42,101,255,241,21,202,0,160,227,7,0,105,50,236,0,79,52,197,255,104,202,208,1,180,15,16,0,101,197,78,255,98,77,203,0,41,185,241,1,35,193,124,0,35,155,23,255,207,53,192,0,11,125,163,1,249,158,185,255,4,131,48,0,21,93,111,255,61,121,231,1,69,200,36,255,185,48,185,255,111,238,21,255,39,50,25,255,99,215,163,255,87,212,30,255,164,147,5,255,128,6,35,1,108,223,110,255,194,76,178,0,74,101,180,0,243,47,48,0,174,25,43,255,82,173,253,1,54,114,192,255,40,55,91,0,215,108,176,255,11,56,7,0,224,233,76,0,209,98,202,254,242,25,125,0,44,193,93,254,203,8,177,0,135,176,19,0,112,71,213,255,206,59,176,1,4,67,26,0,14,143,213,254,42,55,208,255,60,67,120,0,193,21,163,0,99,164,115,0,10,20,118,0,156,212,222,254,160,7,217,255,114,245,76,1,117,59,123,0,176,194,86,254,213,15,176,0,78,206,207,254,213,129,59,0,233,251,22,1,96,55,152,255,236,255,15,255,197,89,84,255,93,149,133,0,174,160,113,0,234,99,169,255,152,116,88,0,144,164,83,255,95,29,198,255,34,47,15,255,99,120,134,255,5,236,193,0,249,247,126,255,147,187,30,0,50,230,117,255,108,217,219,255,163,81,166,255,72,25,169,254,155,121,79,255,28,155,89,254,7,126,17,0,147,65,33,1,47,234,253,0,26,51,18,0,105,83,199,255,163,196,230,0,113,248,164,0,226,254,218,0,189,209,203,255,164,247,222,254,255,35,165,0,4,188,243,1,127,179,71,0,37,237,254,255,100,186,240,0,5,57,71,254,103,72,73,255,244,18,81,254,229,210,132,255,238,6,180,255,11,229,174,255,227,221,192,1,17,49,28,0,163,215,196,254,9,118,4,255,51,240,71,0,113,129,109,255,76,240,231,0,188,177,127,0,125,71,44,1,26,175,243,0,94,169,25,254,27,230,29,0,15,139,119,1,168,170,186,255,172,197,76,255,252,75,188,0,137,124,196,0,72,22,96,255,45,151,249,1,220,145,100,0,64,192,159,255,120,239,226,0,129,178,146,0,0,192,125,0,235,138,234,0,183,157,146,0,83,199,192,255,184,172,72,255,73,225,128,0,77,6,250,255,186,65,67,0,104,246,207,0,188,32,138,255,218,24,242,0,67,138,81,254,237,129,121,255,20,207,150,1,41,199,16,255,6,20,128,0,159,118,5,0,181,16,143,255,220,38,15,0,23,64,147,254,73,26,13,0,87,228,57,1,204,124,128,0,43,24,223,0,219,99,199,0,22,75,20,255,19,27,126,0,157,62,215,0,110,29,230,0,179,167,255,1,54,252,190,0,221,204,182,254,179,158,65,255,81,157,3,0,194,218,159,0,170,223,0,0,224,11,32,255,38,197,98,0,168,164,37,0,23,88,7,1,164,186,110,0,96,36,134,0,234,242,229,0,250,121,19,0,242,254,112,255,3,47,94,1,9,239,6,255,81,134,153,254,214,253,168,255,67,124,224,0,245,95,74,0,28,30,44,254,1,109,220,255,178,89,89,0,252,36,76,0,24,198,46,255,76,77,111,0,134,234,136,255,39,94,29,0,185,72,234,255,70,68,135,255,231,102,7,254,77,231,140,0,167,47,58,1,148,97,118,255,16,27,225,1,166,206,143,255,110,178,214,255,180,131,162,0,143,141,225,1,13,218,78,255,114,153,33,1,98,104,204,0,175,114,117,1,167,206,75,0,202,196,83,1,58,64,67,0,138,47,111,1,196,247,128,255,137,224,224,254,158,112,207,0,154,100,255,1,134,37,107,0,198,128,79,255,127,209,155,255,163,254,185,254,60,14,243,0,31,219,112,254,29,217,65,0,200,13,116,254,123,60,196,255,224,59,184,254,242,89,196,0,123,16,75,254,149,16,206,0,69,254,48,1,231,116,223,255,209,160,65,1,200,80,98,0,37,194,184,254,148,63,34,0,139,240,65,255,217,144,132,255,56,38,45,254,199,120,210,0,108,177,166,255,160,222,4,0,220,126,119,254,165,107,160,255,82,220,248,1,241,175,136,0,144,141,23,255,169,138,84,0,160,137,78,255,226,118,80,255,52,27,132,255,63,96,139,255,152,250,39,0,188,155,15,0,232,51,150,254,40,15,232,255,240,229,9,255,137,175,27,255,75,73,97,1,218,212,11,0,135,5,162,1,107,185,213,0,2,249,107,255,40,242,70,0,219,200,25,0,25,157,13,0,67,82,80,255,196,249,23,255,145,20,149,0,50,72,146,0,94,76,148,1,24,251,65,0,31,192,23,0,184,212,201,255,123,233,162,1,247,173,72,0,162,87,219,254,126,134,89,0,159,11,12,254,166,105,29,0,73,27,228,1,113,120,183,255,66,163,109,1,212,143,11,255,159,231,168,1,255,128,90,0,57,14,58,254,89,52,10,255,253,8,163,1,0,145,210,255,10,129,85,1,46,181,27,0,103,136,160,254,126,188,209,255,34,35,111,0,215,219,24,255,212,11,214,254,101,5,118,0,232,197,133,255,223,167,109,255,237,80,86,255,70,139,94,0,158,193,191,1,155,15,51,255,15,190,115,0,78,135,207,255,249,10,27,1,181,125,233,0,95,172,13,254,170,213,161,255,39,236,138,255,95,93,87,255,190,128,95,0,125,15,206,0,166,150,159,0,227,15,158,255,206,158,120,255,42,141,128,0,101,178,120,1,156,109,131,0,218,14,44,254,247,168,206,255,212,112,28,0,112,17,228,255,90,16,37,1,197,222,108,0,254,207,83,255,9,90,243,255,243,244,172,0,26,88,115,255,205,116,122,0,191,230,193,0,180,100,11,1,217,37,96,255,154,78,156,0,235,234,31,255,206,178,178,255,149,192,251,0,182,250,135,0,246,22,105,0,124,193,109,255,2,210,149,255,169,17,170,0,0,96,110,255,117,9,8,1,50,123,40,255,193,189,99,0,34,227,160,0,48,80,70,254,211,51,236,0,45,122,245,254,44,174,8,0,173,37,233,255,158,65,171,0,122,69,215,255,90,80,2,255,131,106,96,254,227,114,135,0,205,49,119,254,176,62,64,255,82,51,17,255,241,20,243,255,130,13,8,254,128,217,243,255,162,27,1,254,90,118,241,0,246,198,246,255,55,16,118,255,200,159,157,0,163,17,1,0,140,107,121,0,85,161,118,255,38,0,149,0,156,47,238,0,9,166,166,1,75,98,181,255,50,74,25,0,66,15,47,0,139,225,159,0,76,3,142,255,14,238,184,0,11,207,53,255,183,192,186,1,171,32,174,255,191,76,221,1,247,170,219,0,25,172,50,254,217,9,233,0,203,126,68,255,183,92,48,0,127,167,183,1,65,49,254,0,16,63,127,1,254,21,170,255,59,224,127,254,22,48,63,255,27,78,130,254,40,195,29,0,250,132,112,254,35,203,144,0,104,169,168,0,207,253,30,255,104,40,38,254,94,228,88,0,206,16,128,255,212,55,122,255,223,22,234,0,223,197,127,0,253,181,181,1,145,102,118,0,236,153,36,255,212,217,72,255,20,38,24,254,138,62,62,0,152,140,4,0,230,220,99,255,1,21,212,255,148,201,231,0,244,123,9,254,0,171,210,0,51,58,37,255,1,255,14,255,244,183,145,254,0,242,166,0,22,74,132,0,121,216,41,0,95,195,114,254,133,24,151,255,156,226,231,255,247,5,77,255,246,148,115,254,225,92,81,255,222,80,246,254,170,123,89,255,74,199,141,0,29,20,8,255,138,136,70,255,93,75,92,0,221,147,49,254,52,126,226,0,229,124,23,0,46,9,181,0,205,64,52,1,131,254,28,0,151,158,212,0,131,64,78,0,206,25,171,0,0,230,139,0,191,253,110,254,103,247,167,0,64,40,40,1,42,165,241,255,59,75,228,254,124,243,189,255,196,92,178,255,130,140,86,255,141,89,56,1,147,198,5,255,203,248,158,254,144,162,141,0,11,172,226,0,130,42,21,255,1,167,143,255,144,36,36,255,48,88,164,254,168,170,220,0,98,71,214,0,91,208,79,0,159,76,201,1,166,42,214,255,69,255,0,255,6,128,125,255,190,1,140,0,146,83,218,255,215,238,72,1,122,127,53,0,189,116,165,255,84,8,66,255,214,3,208,255,213,110,133,0,195,168,44,1,158,231,69,0,162,64,200,254,91,58,104,0,182,58,187,254,249,228,136,0,203,134,76,254,99,221,233,0,75,254,214,254,80,69,154,0,64,152,248,254,236,136,202,255,157,105,153,254,149,175,20,0,22,35,19,255,124,121,233,0,186,250,198,254,132,229,139,0,137,80,174,255,165,125,68,0,144,202,148,254,235,239,248,0,135,184,118,0,101,94,17,255,122,72,70,254,69,130,146,0,127,222,248,1,69,127,118,255,30,82,215,254,188,74,19,255,229,167,194,254,117,25,66,255,65,234,56,254,213,22,156,0,151,59,93,254,45,28,27,255,186,126,164,255,32,6,239,0,127,114,99,1,219,52,2,255,99,96,166,254,62,190,126,255,108,222,168,1,75,226,174,0,230,226,199,0,60,117,218,255,252,248,20,1,214,188,204,0,31,194,134,254,123,69,192,255,169,173,36,254,55,98,91,0,223,42,102,254,137,1,102,0,157,90,25,0,239,122,64,255,252,6,233,0,7,54,20,255,82,116,174,0,135,37,54,255,15,186,125,0,227,112,175,255,100,180,225,255,42,237,244,255,244,173,226,254,248,18,33,0,171,99,150,255,74,235,50,255,117,82,32,254,106,168,237,0,207,109,208,1,228,9,186,0,135,60,169,254,179,92,143,0,244,170,104,255,235,45,124,255,70,99,186,0,117,137,183,0,224,31,215,0,40,9,100,0,26,16,95,1,68,217,87,0,8,151,20,255,26,100,58,255,176,165,203,1,52,118,70,0,7,32,254,254,244,254,245,255,167,144,194,255,125,113,23,255,176,121,181,0,136,84,209,0,138,6,30,255,89,48,28,0,33,155,14,255,25,240,154,0,141,205,109,1,70,115,62,255,20,40,107,254,138,154,199,255,94,223,226,255,157,171,38,0,163,177,25,254,45,118,3,255,14,222,23,1,209,190,81,255,118,123,232,1,13,213,101,255,123,55,123,254,27,246,165,0,50,99,76,255,140,214,32,255,97,65,67,255,24,12,28,0,174,86,78,1,64,247,96,0,160,135,67,0,66,55,243,255,147,204,96,255,26,6,33,255,98,51,83,1,153,213,208,255,2,184,54,255,25,218,11,0,49,67,246,254,18,149,72,255,13,25,72,0,42,79,214,0,42,4,38,1,27,139,144,255,149,187,23,0,18,164,132,0,245,84,184,254,120,198,104,255,126,218,96,0,56,117,234,255,13,29,214,254,68,47,10,255,167,154,132,254,152,38,198,0,66,178,89,255,200,46,171,255,13,99,83,255,210,187,253,255,170,45,42,1,138,209,124,0,214,162,141,0,12,230,156,0,102,36,112,254,3,147,67,0,52,215,123,255,233,171,54,255,98,137,62,0,247,218,39,255,231,218,236,0,247,191,127,0,195,146,84,0,165,176,92,255,19,212,94,255,17,74,227,0,88,40,153,1,198,147,1,255,206,67,245,254,240,3,218,255,61,141,213,255,97,183,106,0,195,232,235,254,95,86,154,0,209,48,205,254,118,209,241,255,240,120,223,1,213,29,159,0,163,127,147,255,13,218,93,0,85,24,68,254,70,20,80,255,189,5,140,1,82,97,254,255,99,99,191,255,132,84,133,255,107,218,116,255,112,122,46,0,105,17,32,0,194,160,63,255,68,222,39,1,216,253,92,0,177,105,205,255,149,201,195,0,42,225,11,255,40,162,115,0,9,7,81,0,165,218,219,0,180,22,0,254,29,146,252,255,146,207,225,1,180,135,96,0,31,163,112,0,177,11,219,255,133,12,193,254,43,78,50,0,65,113,121,1,59,217,6,255,110,94,24,1,112,172,111,0,7,15,96,0,36,85,123,0,71,150,21,255,208,73,188,0,192,11,167,1,213,245,34,0,9,230,92,0,162,142,39,255,215,90,27,0,98,97,89,0,94,79,211,0,90,157,240,0,95,220,126,1,102,176,226,0,36,30,224,254,35,31,127,0,231,232,115,1,85,83,130,0,210,73,245,255,47,143,114,255,68,65,197,0,59,72,62,255,183,133,173,254,93,121,118,255,59,177,81,255,234,69,173,255,205,128,177,0,220,244,51,0,26,244,209,1,73,222,77,255,163,8,96,254,150,149,211,0,158,254,203,1,54,127,139,0,161,224,59,0,4,109,22,255,222,42,45,255,208,146,102,255,236,142,187,0,50,205,245,255,10,74,89,254,48,79,142,0,222,76,130,255,30,166,63,0,236,12,13,255,49,184,244,0,187,113,102,0,218,101,253,0,153,57,182,254,32,150,42,0,25,198,146,1,237,241,56,0,140,68,5,0,91,164,172,255,78,145,186,254,67,52,205,0,219,207,129,1,109,115,17,0,54,143,58,1,21,248,120,255,179,255,30,0,193,236,66,255,1,255,7,255,253,192,48,255,19,69,217,1,3,214,0,255,64,101,146,1,223,125,35,255,235,73,179,255,249,167,226,0,225,175,10,1,97,162,58,0,106,112,171,1,84,172,5,255,133,140,178,255,134,245,142,0,97,90,125,255,186,203,185,255,223,77,23,255,192,92,106,0,15,198,115,255,217,152,248,0,171,178,120,255,228,134,53,0,176,54,193,1,250,251,53,0,213,10,100,1,34,199,106,0,151,31,244,254,172,224,87,255,14,237,23,255,253,85,26,255,127,39,116,255,172,104,100,0,251,14,70,255,212,208,138,255,253,211,250,0,176,49,165,0,15,76,123,255,37,218,160,255,92,135,16,1,10,126,114,255,70,5,224,255,247,249,141,0,68,20,60,1,241,210,189,255,195,217,187,1,151,3,113,0,151,92,174,0,231,62,178,255,219,183,225,0,23,23,33,255,205,181,80,0,57,184,248,255,67,180,1,255,90,123,93,255,39,0,162,255,96,248,52,255,84,66,140,0,34,127,228,255,194,138,7,1,166,110,188,0,21,17,155,1,154,190,198,255,214,80,59,255,18,7,143,0,72,29,226,1,199,217,249,0,232,161,71,1,149,190,201,0,217,175,95,254,113,147,67,255,138,143,199,255,127,204,1,0,29,182,83,1,206,230,155,255,186,204,60,0,10,125,85,255,232,96,25,255,255,89,247,255,213,254,175,1,232,193,81,0,28,43,156,254,12,69,8,0,147,24,248,0,18,198,49,0,134,60,35,0,118,246,18,255,49,88,254,254,228,21,186,255,182,65,112,1,219,22,1,255,22,126,52,255,189,53,49,255,112,25,143,0,38,127,55,255,226,101,163,254,208,133,61,255,137,69,174,1,190,118,145,255,60,98,219,255,217,13,245,255,250,136,10,0,84,254,226,0,201,31,125,1,240,51,251,255,31,131,130,255,2,138,50,255,215,215,177,1,223,12,238,255,252,149,56,255,124,91,68,255,72,126,170,254,119,255,100,0,130,135,232,255,14,79,178,0,250,131,197,0,138,198,208,0,121,216,139,254,119,18,36,255,29,193,122,0,16,42,45,255,213,240,235,1,230,190,169,255,198,35,228,254,110,173,72,0,214,221,241,255,56,148,135,0,192,117,78,254,141,93,207,255,143,65,149,0,21,18,98,255,95,44,244,1,106,191,77,0,254,85,8,254,214,110,176,255,73,173,19,254,160,196,199,255,237,90,144,0,193,172,113,255,200,155,136,254,228,90,221,0,137,49,74,1,164,221,215,255,209,189,5,255,105,236,55,255,42,31,129,1,193,255,236,0,46,217,60,0,138,88,187,255,226,82,236,255,81,69,151,255,142,190,16,1,13,134,8,0,127,122,48,255,81,64,156,0,171,243,139,0,237,35,246,0,122,143,193,254,212,122,146,0,95,41,255,1,87,132,77,0,4,212,31,0,17,31,78,0,39,45,173,254,24,142,217,255,95,9,6,255,227,83,6,0,98,59,130,254,62,30,33,0,8,115,211,1,162,97,128,255,7,184,23,254,116,28,168,255,248,138,151,255,98,244,240,0,186,118,130,0,114,248,235,255,105,173,200,1,160,124,71,255,94,36,164,1,175,65,146,255,238,241,170,254,202,198,197,0,228,71,138,254,45,246,109,255,194,52,158,0,133,187,176,0,83,252,154,254,89,189,221,255,170,73,252,0,148,58,125,0,36,68,51,254,42,69,177,255,168,76,86,255,38,100,204,255,38,53,35,0,175,19,97,0,225,238,253,255,81,81,135,0,210,27,255,254,235,73,107,0,8,207,115,0,82,127,136,0,84,99,21,254,207,19,136,0,100,164,101,0,80,208,77,255,132,207,237,255,15,3,15,255,33,166,110,0,156,95,85,255,37,185,111,1,150,106,35,255,166,151,76,0,114,87,135,255,159,194,64,0,12,122,31,255,232,7,101,254,173,119,98,0,154,71,220,254,191,57,53,255,168,232,160,255,224,32,99,255,218,156,165,0,151,153,163,0,217,13,148,1,197,113,89,0,149,28,161,254,207,23,30,0,105,132,227,255,54,230,94,255,133,173,204,255,92,183,157,255,88,144,252,254,102,33,90,0,159,97,3,0,181,218,155,255,240,114,119,0,106,214,53,255,165,190,115,1,152,91,225,255,88,106,44,255,208,61,113,0,151,52,124,0,191,27,156,255,110,54,236,1,14,30,166,255,39,127,207,1,229,199,28,0,188,228,188,254,100,157,235,0,246,218,183,1,107,22,193,255,206,160,95,0,76,239,147,0,207,161,117,0,51,166,2,255,52,117,10,254,73,56,227,255,152,193,225,0,132,94,136,255,101,191,209,0,32,107,229,255,198,43,180,1,100,210,118,0,114,67,153,255,23,88,26,255,89,154,92,1,220,120,140,255,144,114,207,255,252,115,250,255,34,206,72,0,138,133,127,255,8,178,124,1,87,75,97,0,15,229,92,254,240,67,131,255,118,123,227,254,146,120,104,255,145,213,255,1,129,187,70,255,219,119,54,0,1,19,173,0,45,150,148,1,248,83,72,0,203,233,169,1,142,107,56,0,247,249,38,1,45,242,80,255,30,233,103,0,96,82,70,0,23,201,111,0,81,39,30,255,161,183,78,255,194,234,33,255,68,227,140,254,216,206,116,0,70,27,235,255,104,144,79,0,164,230,93,254,214,135,156,0,154,187,242,254,188,20,131,255,36,109,174,0,159,112,241,0,5,110,149,1,36,165,218,0,166,29,19,1,178,46,73,0,93,43,32,254,248,189,237,0,102,155,141,0,201,93,195,255,241,139,253,255,15,111,98,255,108,65,163,254,155,79,190,255,73,174,193,254,246,40,48,255,107,88,11,254,202,97,85,255,253,204,18,255,113,242,66,0,110,160,194,254,208,18,186,0,81,21,60,0,188,104,167,255,124,166,97,254,210,133,142,0,56,242,137,254,41,111,130,0,111,151,58,1,111,213,141,255,183,172,241,255,38,6,196,255,185,7,123,255,46,11,246,0,245,105,119,1,15,2,161,255,8,206,45,255,18,202,74,255,83,124,115,1,212,141,157,0,83,8,209,254,139,15,232,255,172,54,173,254,50,247,132,0,214,189,213,0,144,184,105,0,223,254,248,0,255,147,240,255,23,188,72,0,7,51,54,0,188,25,180,254,220,180,0,255,83,160,20,0,163,189,243,255,58,209,194,255,87,73,60,0,106,24,49,0,245,249,220,0,22,173,167,0,118,11,195,255,19,126,237,0,110,159,37,255,59,82,47,0,180,187,86,0,188,148,208,1,100,37,133,255,7,112,193,0,129,188,156,255,84,106,129,255,133,225,202,0,14,236,111,255,40,20,101,0,172,172,49,254,51,54,74,255,251,185,184,255,93,155,224,255,180,249,224,1,230,178,146,0,72,57,54,254,178,62,184,0,119,205,72,0,185,239,253,255,61,15,218,0,196,67,56,255,234,32,171,1,46,219,228,0,208,108,234,255,20,63,232,255,165,53,199,1,133,228,5,255,52,205,107,0,74,238,140,255,150,156,219,254,239,172,178,255,251,189,223,254,32,142,211,255,218,15,138,1,241,196,80,0,28,36,98,254,22,234,199,0,61,237,220,255,246,57,37,0,142,17,142,255,157,62,26,0,43,238,95,254,3,217,6,255,213,25,240,1,39,220,174,255,154,205,48,254,19,13,192,255,244,34,54,254,140,16,155,0,240,181,5,254,155,193,60,0,166,128,4,255,36,145,56,255,150,240,219,0,120,51,145,0,82,153,42,1,140,236,146,0,107,92,248,1,189,10,3,0,63,136,242,0,211,39,24,0,19,202,161,1,173,27,186,255,210,204,239,254,41,209,162,255,182,254,159,255,172,116,52,0,195,103,222,254,205,69,59,0,53,22,41,1,218,48,194,0,80,210,242,0,210,188,207,0,187,161,161,254,216,17,1,0,136,225,113,0,250,184,63,0,223,30,98,254,77,168,162,0,59,53,175,0,19,201,10,255,139,224,194,0,147,193,154,255,212,189,12,254,1,200,174,255,50,133,113,1,94,179,90,0,173,182,135,0,94,177,113,0,43,89,215,255,136,252,106,255,123,134,83,254,5,245,66,255,82,49,39,1,220,2,224,0,97,129,177,0,77,59,89,0,61,29,155,1,203,171,220,255,92,78,139,0,145,33,181,255,169,24,141,1,55,150,179,0,139,60,80,255,218,39,97,0,2,147,107,255,60,248,72,0,173,230,47,1,6,83,182,255,16,105,162,254,137,212,81,255,180,184,134,1,39,222,164,255,221,105,251,1,239,112,125,0,63,7,97,0,63,104,227,255,148,58,12,0,90,60,224,255,84,212,252,0,79,215,168,0,248,221,199,1,115,121,1,0,36,172,120,0,32,162,187,255,57,107,49,255,147,42,21,0,106,198,43,1,57,74,87,0,126,203,81,255,129,135,195,0,140,31,177,0,221,139,194,0,3,222,215,0,131,68,231,0,177,86,178,254,124,151,180,0,184,124,38,1,70,163,17,0,249,251,181,1,42,55,227,0,226,161,44,0,23,236,110,0,51,149,142,1,93,5,236,0,218,183,106,254,67,24,77,0,40,245,209,255,222,121,153,0,165,57,30,0,83,125,60,0,70,38,82,1,229,6,188,0,109,222,157,255,55,118,63,255,205,151,186,0,227,33,149,255,254,176,246,1,227,177,227,0,34,106,163,254,176,43,79,0,106,95,78,1,185,241,122,255,185,14,61,0,36,1,202,0,13,178,162,255,247,11,132,0,161,230,92,1,65,1,185,255,212,50,165,1,141,146,64,255,158,242,218,0,21,164,125,0,213,139,122,1,67,71,87,0,203,158,178,1,151,92,43,0,152,111,5,255,39,3,239,255,217,255,250,255,176,63,71,255,74,245,77,1,250,174,18,255,34,49,227,255,246,46,251,255,154,35,48,1,125,157,61,255,106,36,78,255,97,236,153,0,136,187,120,255,113,134,171,255,19,213,217,254,216,94,209,255,252,5,61,0,94,3,202,0,3,26,183,255,64,191,43,255,30,23,21,0,129,141,77,255,102,120,7,1,194,76,140,0,188,175,52,255,17,81,148,0,232,86,55,1,225,48,172,0,134,42,42,255,238,50,47,0,169,18,254,0,20,147,87,255,14,195,239,255,69,247,23,0,238,229,128,255,177,49,112,0,168,98,251,255,121,71,248,0,243,8,145,254,246,227,153,255,219,169,177,254,251,139,165,255,12,163,185,255,164,40,171,255,153,159,27,254,243,109,91,255,222,24,112,1,18,214,231,0,107,157,181,254,195,147,0,255,194,99,104,255,89,140,190,255,177,66,126,254,106,185,66,0,49,218,31,0,252,174,158,0,188,79,230,1,238,41,224,0,212,234,8,1,136,11,181,0,166,117,83,255,68,195,94,0,46,132,201,0,240,152,88,0,164,57,69,254,160,224,42,255],"i8",S,p.GLOBAL_BASE),x([59,215,67,255,119,195,141,255,36,180,121,254,207,47,8,255,174,210,223,0,101,197,68,255,255,82,141,1,250,137,233,0,97,86,133,1,16,80,69,0,132,131,159,0,116,93,100,0,45,141,139,0,152,172,157,255,90,43,91,0,71,153,46,0,39,16,112,255,217,136,97,255,220,198,25,254,177,53,49,0,222,88,134,255,128,15,60,0,207,192,169,255,192,116,209,255,106,78,211,1,200,213,183,255,7,12,122,254,222,203,60,255,33,110,199,254,251,106,117,0,228,225,4,1,120,58,7,255,221,193,84,254,112,133,27,0,189,200,201,255,139,135,150,0,234,55,176,255,61,50,65,0,152,108,169,255,220,85,1,255,112,135,227,0,162,26,186,0,207,96,185,254,244,136,107,0,93,153,50,1,198,97,151,0,110,11,86,255,143,117,174,255,115,212,200,0,5,202,183,0,237,164,10,254,185,239,62,0,236,120,18,254,98,123,99,255,168,201,194,254,46,234,214,0,191,133,49,255,99,169,119,0,190,187,35,1,115,21,45,255,249,131,72,0,112,6,123,255,214,49,181,254,166,233,34,0,92,197,102,254,253,228,205,255,3,59,201,1,42,98,46,0,219,37,35,255,169,195,38,0,94,124,193,1,156,43,223,0,95,72,133,254,120,206,191,0,122,197,239,255,177,187,79,255,254,46,2,1,250,167,190,0,84,129,19,0,203,113,166,255,249,31,189,254,72,157,202,255,208,71,73,255,207,24,72,0,10,16,18,1,210,81,76,255,88,208,192,255,126,243,107,255,238,141,120,255,199,121,234,255,137,12,59,255,36,220,123,255,148,179,60,254,240,12,29,0,66,0,97,1,36,30,38,255,115,1,93,255,96,103,231,255,197,158,59,1,192,164,240,0,202,202,57,255,24,174,48,0,89,77,155,1,42,76,215,0,244,151,233,0,23,48,81,0,239,127,52,254,227,130,37,255,248,116,93,1,124,132,118,0,173,254,192,1,6,235,83,255,110,175,231,1,251,28,182,0,129,249,93,254,84,184,128,0,76,181,62,0,175,128,186,0,100,53,136,254,109,29,226,0,221,233,58,1,20,99,74,0,0,22,160,0,134,13,21,0,9,52,55,255,17,89,140,0,175,34,59,0,84,165,119,255,224,226,234,255,7,72,166,255,123,115,255,1,18,214,246,0,250,7,71,1,217,220,185,0,212,35,76,255,38,125,175,0,189,97,210,0,114,238,44,255,41,188,169,254,45,186,154,0,81,92,22,0,132,160,193,0,121,208,98,255,13,81,44,255,203,156,82,0,71,58,21,255,208,114,191,254,50,38,147,0,154,216,195,0,101,25,18,0,60,250,215,255,233,132,235,255,103,175,142,1,16,14,92,0,141,31,110,254,238,241,45,255,153,217,239,1,97,168,47,255,249,85,16,1,28,175,62,255,57,254,54,0,222,231,126,0,166,45,117,254,18,189,96,255,228,76,50,0,200,244,94,0,198,152,120,1,68,34,69,255,12,65,160,254,101,19,90,0,167,197,120,255,68,54,185,255,41,218,188,0,113,168,48,0,88,105,189,1,26,82,32,255,185,93,164,1,228,240,237,255,66,182,53,0,171,197,92,255,107,9,233,1,199,120,144,255,78,49,10,255,109,170,105,255,90,4,31,255,28,244,113,255,74,58,11,0,62,220,246,255,121,154,200,254,144,210,178,255,126,57,129,1,43,250,14,255,101,111,28,1,47,86,241,255,61,70,150,255,53,73,5,255,30,26,158,0,209,26,86,0,138,237,74,0,164,95,188,0,142,60,29,254,162,116,248,255,187,175,160,0,151,18,16,0,209,111,65,254,203,134,39,255,88,108,49,255,131,26,71,255,221,27,215,254,104,105,93,255,31,236,31,254,135,0,211,255,143,127,110,1,212,73,229,0,233,67,167,254,195,1,208,255,132,17,221,255,51,217,90,0,67,235,50,255,223,210,143,0,179,53,130,1,233,106,198,0,217,173,220,255,112,229,24,255,175,154,93,254,71,203,246,255,48,66,133,255,3,136,230,255,23,221,113,254,235,111,213,0,170,120,95,254,251,221,2,0,45,130,158,254,105,94,217,255,242,52,180,254,213,68,45,255,104,38,28,0,244,158,76,0,161,200,96,255,207,53,13,255,187,67,148,0,170,54,248,0,119,162,178,255,83,20,11,0,42,42,192,1,146,159,163,255,183,232,111,0,77,229,21,255,71,53,143,0,27,76,34,0,246,136,47,255,219,39,182,255,92,224,201,1,19,142,14,255,69,182,241,255,163,118,245,0,9,109,106,1,170,181,247,255,78,47,238,255,84,210,176,255,213,107,139,0,39,38,11,0,72,21,150,0,72,130,69,0,205,77,155,254,142,133,21,0,71,111,172,254,226,42,59,255,179,0,215,1,33,128,241,0,234,252,13,1,184,79,8,0,110,30,73,255,246,141,189,0,170,207,218,1,74,154,69,255,138,246,49,255,155,32,100,0,125,74,105,255,90,85,61,255,35,229,177,255,62,125,193,255,153,86,188,1,73,120,212,0,209,123,246,254,135,209,38,255,151,58,44,1,92,69,214,255,14,12,88,255,252,153,166,255,253,207,112,255,60,78,83,255,227,124,110,0,180,96,252,255,53,117,33,254,164,220,82,255,41,1,27,255,38,164,166,255,164,99,169,254,61,144,70,255,192,166,18,0,107,250,66,0,197,65,50,0,1,179,18,255,255,104,1,255,43,153,35,255,80,111,168,0,110,175,168,0,41,105,45,255,219,14,205,255,164,233,140,254,43,1,118,0,233,67,195,0,178,82,159,255,138,87,122,255,212,238,90,255,144,35,124,254,25,140,164,0,251,215,44,254,133,70,107,255,101,227,80,254,92,169,55,0,215,42,49,0,114,180,85,255,33,232,27,1,172,213,25,0,62,176,123,254,32,133,24,255,225,191,62,0,93,70,153,0,181,42,104,1,22,191,224,255,200,200,140,255,249,234,37,0,149,57,141,0,195,56,208,255,254,130,70,255,32,173,240,255,29,220,199,0,110,100,115,255,132,229,249,0,228,233,223,255,37,216,209,254,178,177,209,255,183,45,165,254,224,97,114,0,137,97,168,255,225,222,172,0,165,13,49,1,210,235,204,255,252,4,28,254,70,160,151,0,232,190,52,254,83,248,93,255,62,215,77,1,175,175,179,255,160,50,66,0,121,48,208,0,63,169,209,255,0,210,200,0,224,187,44,1,73,162,82,0,9,176,143,255,19,76,193,255,29,59,167,1,24,43,154,0,28,190,190,0,141,188,129,0,232,235,203,255,234,0,109,255,54,65,159,0,60,88,232,255,121,253,150,254,252,233,131,255,198,110,41,1,83,77,71,255,200,22,59,254,106,253,242,255,21,12,207,255,237,66,189,0,90,198,202,1,225,172,127,0,53,22,202,0,56,230,132,0,1,86,183,0,109,190,42,0,243,68,174,1,109,228,154,0,200,177,122,1,35,160,183,255,177,48,85,255,90,218,169,255,248,152,78,0,202,254,110,0,6,52,43,0,142,98,65,255,63,145,22,0,70,106,93,0,232,138,107,1,110,179,61,255,211,129,218,1,242,209,92,0,35,90,217,1,182,143,106,255,116,101,217,255,114,250,221,255,173,204,6,0,60,150,163,0,73,172,44,255,239,110,80,255,237,76,153,254,161,140,249,0,149,232,229,0,133,31,40,255,174,164,119,0,113,51,214,0,129,228,2,254,64,34,243,0,107,227,244,255,174,106,200,255,84,153,70,1,50,35,16,0,250,74,216,254,236,189,66,255,153,249,13,0,230,178,4,255,221,41,238,0,118,227,121,255,94,87,140,254,254,119,92,0,73,239,246,254,117,87,128,0,19,211,145,255,177,46,252,0,229,91,246,1,69,128,247,255,202,77,54,1,8,11,9,255,153,96,166,0,217,214,173,255,134,192,2,1,0,207,0,0,189,174,107,1,140,134,100,0,158,193,243,1,182,102,171,0,235,154,51,0,142,5,123,255,60,168,89,1,217,14,92,255,19,214,5,1,211,167,254,0,44,6,202,254,120,18,236,255,15,113,184,255,184,223,139,0,40,177,119,254,182,123,90,255,176,165,176,0,247,77,194,0,27,234,120,0,231,0,214,255,59,39,30,0,125,99,145,255,150,68,68,1,141,222,248,0,153,123,210,255,110,127,152,255,229,33,214,1,135,221,197,0,137,97,2,0,12,143,204,255,81,41,188,0,115,79,130,255,94,3,132,0,152,175,187,255,124,141,10,255,126,192,179,255,11,103,198,0,149,6,45,0,219,85,187,1,230,18,178,255,72,182,152,0,3,198,184,255,128,112,224,1,97,161,230,0,254,99,38,255,58,159,197,0,151,66,219,0,59,69,143,255,185,112,249,0,119,136,47,255,123,130,132,0,168,71,95,255,113,176,40,1,232,185,173,0,207,93,117,1,68,157,108,255,102,5,147,254,49,97,33,0,89,65,111,254,247,30,163,255,124,217,221,1,102,250,216,0,198,174,75,254,57,55,18,0,227,5,236,1,229,213,173,0,201,109,218,1,49,233,239,0,30,55,158,1,25,178,106,0,155,111,188,1,94,126,140,0,215,31,238,1,77,240,16,0,213,242,25,1,38,71,168,0,205,186,93,254,49,211,140,255,219,0,180,255,134,118,165,0,160,147,134,255,110,186,35,255,198,243,42,0,243,146,119,0,134,235,163,1,4,241,135,255,193,46,193,254,103,180,79,255,225,4,184,254,242,118,130,0,146,135,176,1,234,111,30,0,69,66,213,254,41,96,123,0,121,94,42,255,178,191,195,255,46,130,42,0,117,84,8,255,233,49,214,254,238,122,109,0,6,71,89,1,236,211,123,0,244,13,48,254,119,148,14,0,114,28,86,255,75,237,25,255,145,229,16,254,129,100,53,255,134,150,120,254,168,157,50,0,23,72,104,255,224,49,14,0,255,123,22,255,151,185,151,255,170,80,184,1,134,182,20,0,41,100,101,1,153,33,16,0,76,154,111,1,86,206,234,255,192,160,164,254,165,123,93,255,1,216,164,254,67,17,175,255,169,11,59,255,158,41,61,255,73,188,14,255,195,6,137,255,22,147,29,255,20,103,3,255,246,130,227,255,122,40,128,0,226,47,24,254,35,36,32,0,152,186,183,255,69,202,20,0,195,133,195,0,222,51,247,0,169,171,94,1,183,0,160,255,64,205,18,1,156,83,15,255,197,58,249,254,251,89,110,255,50,10,88,254,51,43,216,0,98,242,198,1,245,151,113,0,171,236,194,1,197,31,199,255,229,81,38,1,41,59,20,0,253,104,230,0,152,93,14,255,246,242,146,254,214,169,240,255,240,102,108,254,160,167,236,0,154,218,188,0,150,233,202,255,27,19,250,1,2,71,133,255,175,12,63,1,145,183,198,0,104,120,115,255,130,251,247,0,17,212,167,255,62,123,132,255,247,100,189,0,155,223,152,0,143,197,33,0,155,59,44,255,150,93,240,1,127,3,87,255,95,71,207,1,167,85,1,255,188,152,116,255,10,23,23,0,137,195,93,1,54,98,97,0,240,0,168,255,148,188,127,0,134,107,151,0,76,253,171,0,90,132,192,0,146,22,54,0,224,66,54,254,230,186,229,255,39,182,196,0,148,251,130,255,65,131,108,254,128,1,160,0,169,49,167,254,199,254,148,255,251,6,131,0,187,254,129,255,85,82,62,0,178,23,58,255,254,132,5,0,164,213,39,0,134,252,146,254,37,53,81,255,155,134,82,0,205,167,238,255,94,45,180,255,132,40,161,0,254,111,112,1,54,75,217,0,179,230,221,1,235,94,191,255,23,243,48,1,202,145,203,255,39,118,42,255,117,141,253,0,254,0,222,0,43,251,50,0,54,169,234,1,80,68,208,0,148,203,243,254,145,7,135,0,6,254,0,0,252,185,127,0,98,8,129,255,38,35,72,255,211,36,220,1,40,26,89,0,168,64,197,254,3,222,239,255,2,83,215,254,180,159,105,0,58,115,194,0,186,116,106,255,229,247,219,255,129,118,193,0,202,174,183,1,166,161,72,0,201,107,147,254,237,136,74,0,233,230,106,1,105,111,168,0,64,224,30,1,1,229,3,0,102,151,175,255,194,238,228,255,254,250,212,0,187,237,121,0,67,251,96,1,197,30,11,0,183,95,204,0,205,89,138,0,64,221,37,1,255,223,30,255,178,48,211,255,241,200,90,255,167,209,96,255,57,130,221,0,46,114,200,255,61,184,66,0,55,182,24,254,110,182,33,0,171,190,232,255,114,94,31,0,18,221,8,0,47,231,254,0,255,112,83,0,118,15,215,255,173,25,40,254,192,193,31,255,238,21,146,255,171,193,118,255,101,234,53,254,131,212,112,0,89,192,107,1,8,208,27,0,181,217,15,255,231,149,232,0,140,236,126,0,144,9,199,255,12,79,181,254,147,182,202,255,19,109,182,255,49,212,225,0,74,163,203,0,175,233,148,0,26,112,51,0,193,193,9,255,15,135,249,0,150,227,130,0,204,0,219,1,24,242,205,0,238,208,117,255,22,244,112,0,26,229,34,0,37,80,188,255,38,45,206,254,240,90,225,255,29,3,47,255,42,224,76,0,186,243,167,0,32,132,15,255,5,51,125,0,139,135,24,0,6,241,219,0,172,229,133,255,246,214,50,0,231,11,207,255,191,126,83,1,180,163,170,255,245,56,24,1,178,164,211,255,3,16,202,1,98,57,118,255,141,131,89,254,33,51,24,0,243,149,91,255,253,52,14,0,35,169,67,254,49,30,88,255,179,27,36,255,165,140,183,0,58,189,151,0,88,31,0,0,75,169,66,0,66,101,199,255,24,216,199,1,121,196,26,255,14,79,203,254,240,226,81,255,94,28,10,255,83,193,240,255,204,193,131,255,94,15,86,0,218,40,157,0,51,193,209,0,0,242,177,0,102,185,247,0,158,109,116,0,38,135,91,0,223,175,149,0,220,66,1,255,86,60,232,0,25,96,37,255,225,122,162,1,215,187,168,255,158,157,46,0,56,171,162,0,232,240,101,1,122,22,9,0,51,9,21,255,53,25,238,255,217,30,232,254,125,169,148,0,13,232,102,0,148,9,37,0,165,97,141,1,228,131,41,0,222,15,243,255,254,18,17,0,6,60,237,1,106,3,113,0,59,132,189,0,92,112,30,0,105,208,213,0,48,84,179,255,187,121,231,254,27,216,109,255,162,221,107,254,73,239,195,255,250,31,57,255,149,135,89,255,185,23,115,1,3,163,157,255,18,112,250,0,25,57,187,255,161,96,164,0,47,16,243,0,12,141,251,254,67,234,184,255,41,18,161,0,175,6,96,255,160,172,52,254,24,176,183,255,198,193,85,1,124,121,137,255,151,50,114,255,220,203,60,255,207,239,5,1,0,38,107,255,55,238,94,254,70,152,94,0,213,220,77,1,120,17,69,255,85,164,190,255,203,234,81,0,38,49,37,254,61,144,124,0,137,78,49,254,168,247,48,0,95,164,252,0,105,169,135,0,253,228,134,0,64,166,75,0,81,73,20,255,207,210,10,0,234,106,150,255,94,34,90,255,254,159,57,254,220,133,99,0,139,147,180,254,24,23,185,0,41,57,30,255,189,97,76,0,65,187,223,255,224,172,37,255,34,62,95,1,231,144,240,0,77,106,126,254,64,152,91,0,29,98,155,0,226,251,53,255,234,211,5,255,144,203,222,255,164,176,221,254,5,231,24,0,179,122,205,0,36,1,134,255,125,70,151,254,97,228,252,0,172,129,23,254,48,90,209,255,150,224,82,1,84,134,30,0,241,196,46,0,103,113,234,255,46,101,121,254,40,124,250,255,135,45,242,254,9,249,168,255,140,108,131,255,143,163,171,0,50,173,199,255,88,222,142,255,200,95,158,0,142,192,163,255,7,117,135,0,111,124,22,0,236,12,65,254,68,38,65,255,227,174,254,0,244,245,38,0,240,50,208,255,161,63,250,0,60,209,239,0,122,35,19,0,14,33,230,254,2,159,113,0,106,20,127,255,228,205,96,0,137,210,174,254,180,212,144,255,89,98,154,1,34,88,139,0,167,162,112,1,65,110,197,0,241,37,169,0,66,56,131,255,10,201,83,254,133,253,187,255,177,112,45,254,196,251,0,0,196,250,151,255,238,232,214,255,150,209,205,0,28,240,118,0,71,76,83,1,236,99,91,0,42,250,131,1,96,18,64,255,118,222,35,0,113,214,203,255,122,119,184,255,66,19,36,0,204,64,249,0,146,89,139,0,134,62,135,1,104,233,101,0,188,84,26,0,49,249,129,0,208,214,75,255,207,130,77,255,115,175,235,0,171,2,137,255,175,145,186,1,55,245,135,255,154,86,181,1,100,58,246,255,109,199,60,255,82,204,134,255,215,49,230,1,140,229,192,255,222,193,251,255,81,136,15,255,179,149,162,255,23,39,29,255,7,95,75,254,191,81,222,0,241,81,90,255,107,49,201,255,244,211,157,0,222,140,149,255,65,219,56,254,189,246,90,255,178,59,157,1,48,219,52,0,98,34,215,0,28,17,187,255,175,169,24,0,92,79,161,255,236,200,194,1,147,143,234,0,229,225,7,1,197,168,14,0,235,51,53,1,253,120,174,0,197,6,168,255,202,117,171,0,163,21,206,0,114,85,90,255,15,41,10,255,194,19,99,0,65,55,216,254,162,146,116,0,50,206,212,255,64,146,29,255,158,158,131,1,100,165,130,255,172,23,129,255,125,53,9,255,15,193,18,1,26,49,11,255,181,174,201,1,135,201,14,255,100,19,149,0,219,98,79,0,42,99,143,254,96,0,48,255,197,249,83,254,104,149,79,255,235,110,136,254,82,128,44,255,65,41,36,254,88,211,10,0,187,121,187,0,98,134,199,0,171,188,179,254,210,11,238,255,66,123,130,254,52,234,61,0,48,113,23,254,6,86,120,255,119,178,245,0,87,129,201,0,242,141,209,0,202,114,85,0,148,22,161,0,103,195,48,0,25,49,171,255,138,67,130,0,182,73,122,254,148,24,130,0,211,229,154,0,32,155,158,0,84,105,61,0,177,194,9,255,166,89,86,1,54,83,187,0,249,40,117,255,109,3,215,255,53,146,44,1,63,47,179,0,194,216,3,254,14,84,136,0,136,177,13,255,72,243,186,255,117,17,125,255,211,58,211,255,93,79,223,0,90,88,245,255,139,209,111,255,70,222,47,0,10,246,79,255,198,217,178,0,227,225,11,1,78,126,179,255,62,43,126,0,103,148,35,0,129,8,165,254,245,240,148,0,61,51,142,0,81,208,134,0,15,137,115,255,211,119,236,255,159,245,248,255,2,134,136,255,230,139,58,1,160,164,254,0,114,85,141,255,49,166,182,255,144,70,84,1,85,182,7,0,46,53,93,0,9,166,161,255,55,162,178,255,45,184,188,0,146,28,44,254,169,90,49,0,120,178,241,1,14,123,127,255,7,241,199,1,189,66,50,255,198,143,101,254,189,243,135,255,141,24,24,254,75,97,87,0,118,251,154,1,237,54,156,0,171,146,207,255,131,196,246,255,136,64,113,1,151,232,57,0,240,218,115,0,49,61,27,255,64,129,73,1,252,169,27,255,40,132,10,1,90,201,193,255,252,121,240,1,186,206,41,0,43,198,97,0,145,100,183,0,204,216,80,254,172,150,65,0,249,229,196,254,104,123,73,255,77,104,96,254,130,180,8,0,104,123,57,0,220,202,229,255,102,249,211,0,86,14,232,255,182,78,209,0,239,225,164,0,106,13,32,255,120,73,17,255,134,67,233,0,83,254,181,0,183,236,112,1,48,64,131,255,241,216,243,255,65,193,226,0,206,241,100,254,100,134,166,255,237,202,197,0,55,13,81,0,32,124,102,255,40,228,177,0,118,181,31,1,231,160,134,255,119,187,202,0,0,142,60,255,128,38,189,255,166,201,150,0,207,120,26,1,54,184,172,0,12,242,204,254,133,66,230,0,34,38,31,1,184,112,80,0,32,51,165,254,191,243,55,0,58,73,146,254,155,167,205,255,100,104,152,255,197,254,207,255,173,19,247,0,238,10,202,0,239,151,242,0,94,59,39,255,240,29,102,255,10,92,154,255,229,84,219,255,161,129,80,0,208,90,204,1,240,219,174,255,158,102,145,1,53,178,76,255,52,108,168,1,83,222,107,0,211,36,109,0,118,58,56,0,8,29,22,0,237,160,199,0,170,209,157,0,137,71,47,0,143,86,32,0,198,242,2,0,212,48,136,1,92,172,186,0,230,151,105,1,96,191,229,0,138,80,191,254,240,216,130,255,98,43,6,254,168,196,49,0,253,18,91,1,144,73,121,0,61,146,39,1,63,104,24,255,184,165,112,254,126,235,98,0,80,213,98,255,123,60,87,255,82,140,245,1,223,120,173,255,15,198,134,1,206,60,239,0,231,234,92,255,33,238,19,255,165,113,142,1,176,119,38,0,160,43,166,254,239,91,105,0,107,61,194,1,25,4,68,0,15,139,51,0,164,132,106,255,34,116,46,254,168,95,197,0,137,212,23,0,72,156,58,0,137,112,69,254,150,105,154,255,236,201,157,0,23,212,154,255,136,82,227,254,226,59,221,255,95,149,192,0,81,118,52,255,33,43,215,1,14,147,75,255,89,156,121,254,14,18,79,0,147,208,139,1,151,218,62,255,156,88,8,1,210,184,98,255,20,175,123,255,102,83,229,0,220,65,116,1,150,250,4,255,92,142,220,255,34,247,66,255,204,225,179,254,151,81,151,0,71,40,236,255,138,63,62,0,6,79,240,255,183,185,181,0,118,50,27,0,63,227,192,0,123,99,58,1,50,224,155,255,17,225,223,254,220,224,77,255,14,44,123,1,141,128,175,0,248,212,200,0,150,59,183,255,147,97,29,0,150,204,181,0,253,37,71,0,145,85,119,0,154,200,186,0,2,128,249,255,83,24,124,0,14,87,143,0,168,51,245,1,124,151,231,255,208,240,197,1,124,190,185,0,48,58,246,0,20,233,232,0,125,18,98,255,13,254,31,255,245,177,130,255,108,142,35,0,171,125,242,254,140,12,34,255,165,161,162,0,206,205,101,0,247,25,34,1,100,145,57,0,39,70,57,0,118,204,203,255,242,0,162,0,165,244,30,0,198,116,226,0,128,111,153,255,140,54,182,1,60,122,15,255,155,58,57,1,54,50,198,0,171,211,29,255,107,138,167,255,173,107,199,255,109,161,193,0,89,72,242,255,206,115,89,255,250,254,142,254,177,202,94,255,81,89,50,0,7,105,66,255,25,254,255,254,203,64,23,255,79,222,108,255,39,249,75,0,241,124,50,0,239,152,133,0,221,241,105,0,147,151,98,0,213,161,121,254,242,49,137,0,233,37,249,254,42,183,27,0,184,119,230,255,217,32,163,255,208,251,228,1,137,62,131,255,79,64,9,254,94,48,113,0,17,138,50,254,193,255,22,0,247,18,197,1,67,55,104,0,16,205,95,255,48,37,66,0,55,156,63,1,64,82,74,255,200,53,71,254,239,67,125,0,26,224,222,0,223,137,93,255,30,224,202,255,9,220,132,0,198,38,235,1,102,141,86,0,60,43,81,1,136,28,26,0,233,36,8,254,207,242,148,0,164,162,63,0,51,46,224,255,114,48,79,255,9,175,226,0,222,3,193,255,47,160,232,255,255,93,105,254,14,42,230,0,26,138,82,1,208,43,244,0,27,39,38,255,98,208,127,255,64,149,182,255,5,250,209,0,187,60,28,254,49,25,218,255,169,116,205,255,119,18,120,0,156,116,147,255,132,53,109,255,13,10,202,0,110,83,167,0,157,219,137,255,6,3,130,255,50,167,30,255,60,159,47,255,129,128,157,254,94,3,189,0,3,166,68,0,83,223,215,0,150,90,194,1,15,168,65,0,227,83,51,255,205,171,66,255,54,187,60,1,152,102,45,255,119,154,225,0,240,247,136,0,100,197,178,255,139,71,223,255,204,82,16,1,41,206,42,255,156,192,221,255,216,123,244,255,218,218,185,255,187,186,239,255,252,172,160,255,195,52,22,0,144,174,181,254,187,100,115,255,211,78,176,255,27,7,193,0,147,213,104,255,90,201,10,255,80,123,66,1,22,33,186,0,1,7,99,254,30,206,10,0,229,234,5,0,53,30,210,0,138,8,220,254,71,55,167,0,72,225,86,1,118,190,188,0,254,193,101,1,171,249,172,255,94,158,183,254,93,2,108,255,176,93,76,255,73,99,79,255,74,64,129,254,246,46,65,0,99,241,127,254,246,151,102,255,44,53,208,254,59,102,234,0,154,175,164,255,88,242,32,0,111,38,1,0,255,182,190,255,115,176,15,254,169,60,129,0,122,237,241,0,90,76,63,0,62,74,120,255,122,195,110,0,119,4,178,0,222,242,210,0,130,33,46,254,156,40,41,0,167,146,112,1,49,163,111,255,121,176,235,0,76,207,14,255,3,25,198,1,41,235,213,0,85,36,214,1,49,92,109,255,200,24,30,254,168,236,195,0,145,39,124,1,236,195,149,0,90,36,184,255,67,85,170,255,38,35,26,254,131,124,68,255,239,155,35,255,54,201,164,0,196,22,117,255,49,15,205,0,24,224,29,1,126,113,144,0,117,21,182,0,203,159,141,0,223,135,77,0,176,230,176,255,190,229,215,255,99,37,181,255,51,21,138,255,25,189,89,255,49,48,165,254,152,45,247,0,170,108,222,0,80,202,5,0,27,69,103,254,204,22,129,255,180,252,62,254,210,1,91,255,146,110,254,255,219,162,28,0,223,252,213,1,59,8,33,0,206,16,244,0,129,211,48,0,107,160,208,0,112,59,209,0,109,77,216,254,34,21,185,255,246,99,56,255,179,139,19,255,185,29,50,255,84,89,19,0,74,250,98,255,225,42,200,255,192,217,205,255,210,16,167,0,99,132,95,1,43,230,57,0,254,11,203,255,99,188,63,255,119,193,251,254,80,105,54,0,232,181,189,1,183,69,112,255,208,171,165,255,47,109,180,255,123,83,165,0,146,162,52,255,154,11,4,255,151,227,90,255,146,137,97,254,61,233,41,255,94,42,55,255,108,164,236,0,152,68,254,0,10,140,131,255,10,106,79,254,243,158,137,0,67,178,66,254,177,123,198,255,15,62,34,0,197,88,42,255,149,95,177,255,152,0,198,255,149,254,113,255,225,90,163,255,125,217,247,0,18,17,224,0,128,66,120,254,192,25,9,255,50,221,205,0,49,212,70,0,233,255,164,0,2,209,9,0,221,52,219,254,172,224,244,255,94,56,206,1,242,179,2,255,31,91,164,1,230,46,138,255,189,230,220,0,57,47,61,255,111,11,157,0,177,91,152,0,28,230,98,0,97,87,126,0,198,89,145,255,167,79,107,0,249,77,160,1,29,233,230,255,150,21,86,254,60,11,193,0,151,37,36,254,185,150,243,255,228,212,83,1,172,151,180,0,201,169,155,0,244,60,234,0,142,235,4,1,67,218,60,0,192,113,75,1,116,243,207,255,65,172,155,0,81,30,156,255,80,72,33,254,18,231,109,255,142,107,21,254,125,26,132,255,176,16,59,255,150,201,58,0,206,169,201,0,208,121,226,0,40,172,14,255,150,61,94,255,56,57,156,255,141,60,145,255,45,108,149,255,238,145,155,255,209,85,31,254,192,12,210,0,99,98,93,254,152,16,151,0,225,185,220,0,141,235,44,255,160,172,21,254,71,26,31,255,13,64,93,254,28,56,198,0,177,62,248,1,182,8,241,0,166,101,148,255,78,81,133,255,129,222,215,1,188,169,129,255,232,7,97,0,49,112,60,255,217,229,251,0,119,108,138,0,39,19,123,254,131,49,235,0,132,84,145,0,130,230,148,255,25,74,187,0,5,245,54,255,185,219,241,1,18,194,228,255,241,202,102,0,105,113,202,0,155,235,79,0,21,9,178,255,156,1,239,0,200,148,61,0,115,247,210,255,49,221,135,0,58,189,8,1,35,46,9,0,81,65,5,255,52,158,185,255,125,116,46,255,74,140,13,255,210,92,172,254,147,23,71,0,217,224,253,254,115,108,180,255,145,58,48,254,219,177,24,255,156,255,60,1,154,147,242,0,253,134,87,0,53,75,229,0,48,195,222,255,31,175,50,255,156,210,120,255,208,35,222,255,18,248,179,1,2,10,101,255,157,194,248,255,158,204,101,255,104,254,197,255,79,62,4,0,178,172,101,1,96,146,251,255,65,10,156,0,2,137,165,255,116,4,231,0,242,215,1,0,19,35,29,255,43,161,79,0,59,149,246,1,251,66,176,0,200,33,3,255,80,110,142,255,195,161,17,1,228,56,66,255,123,47,145,254,132,4,164,0,67,174,172,0,25,253,114,0,87,97,87,1,250,220,84,0,96,91,200,255,37,125,59,0,19,65,118,0,161,52,241,255,237,172,6,255,176,191,255,255,1,65,130,254,223,190,230,0,101,253,231,255,146,35,109,0,250,29,77,1,49,0,19,0,123,90,155,1,22,86,32,255,218,213,65,0,111,93,127,0,60,93,169,255,8,127,182,0,17,186,14,254,253,137,246,255,213,25,48,254,76,238,0,255,248,92,70,255,99,224,139,0,184,9,255,1,7,164,208,0,205,131,198,1,87,214,199,0,130,214,95,0,221,149,222,0,23,38,171,254,197,110,213,0,43,115,140,254,215,177,118,0,96,52,66,1,117,158,237,0,14,64,182,255,46,63,174,255,158,95,190,255,225,205,177,255,43,5,142,255,172,99,212,255,244,187,147,0,29,51,153,255,228,116,24,254,30,101,207,0,19,246,150,255,134,231,5,0,125,134,226,1,77,65,98,0,236,130,33,255,5,110,62,0,69,108,127,255,7,113,22,0,145,20,83,254,194,161,231,255,131,181,60,0,217,209,177,255,229,148,212,254,3,131,184,0,117,177,187,1,28,14,31,255,176,102,80,0,50,84,151,255,125,31,54,255,21,157,133,255,19,179,139,1,224,232,26,0,34,117,170,255,167,252,171,255,73,141,206,254,129,250,35,0,72,79,236,1,220,229,20,255,41,202,173,255,99,76,238,255,198,22,224,255,108,198,195,255,36,141,96,1,236,158,59,255,106,100,87,0,110,226,2,0,227,234,222,0,154,93,119,255,74,112,164,255,67,91,2,255,21,145,33,255,102,214,137,255,175,230,103,254,163,246,166,0,93,247,116,254,167,224,28,255,220,2,57,1,171,206,84,0,123,228,17,255,27,120,119,0,119,11,147,1,180,47,225,255,104,200,185,254,165,2,114,0,77,78,212,0,45,154,177,255,24,196,121,254,82,157,182,0,90,16,190,1,12,147,197,0,95,239,152,255,11,235,71,0,86,146,119,255,172,134,214,0,60,131,196,0,161,225,129,0,31,130,120,254,95,200,51,0,105,231,210,255,58,9,148,255,43,168,221,255,124,237,142,0,198,211,50,254,46,245,103,0,164,248,84,0,152,70,208,255,180,117,177,0,70,79,185,0,243,74,32,0,149,156,207,0,197,196,161,1,245,53,239,0,15,93,246,254,139,240,49,255,196,88,36,255,162,38,123,0,128,200,157,1,174,76,103,255,173,169,34,254,216,1,171,255,114,51,17,0,136,228,194,0,110,150,56,254,106,246,159,0,19,184,79,255,150,77,240,255,155,80,162,0,0,53,169,255,29,151,86,0,68,94,16,0,92,7,110,254,98,117,149,255,249,77,230,255,253,10,140,0,214,124,92,254,35,118,235,0,89,48,57,1,22,53,166,0,184,144,61,255,179,255,194,0,214,248,61,254,59,110,246,0,121,21,81,254,166,3,228,0,106,64,26,255,69,232,134,255,242,220,53,254,46,220,85,0,113,149,247,255,97,179,103,255,190,127,11,0,135,209,182,0,95,52,129,1,170,144,206,255,122,200,204,255,168,100,146,0,60,144,149,254,70,60,40,0,122,52,177,255,246,211,101,255,174,237,8,0,7,51,120,0,19,31,173,0,126,239,156,255,143,189,203,0,196,128,88,255,233,133,226,255,30,125,173,255,201,108,50,0,123,100,59,255,254,163,3,1,221,148,181,255,214,136,57,254,222,180,137,255,207,88,54,255,28,33,251,255,67,214,52,1,210,208,100,0,81,170,94,0,145,40,53,0,224,111,231,254,35,28,244,255,226,199,195,254,238,17,230,0,217,217,164,254,169,157,221,0,218,46,162,1,199,207,163,255,108,115,162,1,14,96,187,255,118,60,76,0,184,159,152,0,209,231,71,254,42,164,186,255,186,153,51,254,221,171,182,255,162,142,173,0,235,47,193,0,7,139,16,1,95,164,64,255,16,221,166,0,219,197,16,0,132,29,44,255,100,69,117,255,60,235,88,254,40,81,173,0,71,190,61,255,187,88,157,0,231,11,23,0,237,117,164,0,225,168,223,255,154,114,116,255,163,152,242,1,24,32,170,0,125,98,113,254,168,19,76,0,17,157,220,254,155,52,5,0,19,111,161,255,71,90,252,255,173,110,240,0,10,198,121,255,253,255,240,255,66,123,210,0,221,194,215,254,121,163,17,255,225,7,99,0,190,49,182,0,115,9,133,1,232,26,138,255,213,68,132,0,44,119,122,255,179,98,51,0,149,90,106,0,71,50,230,255,10,153,118,255,177,70,25,0,165,87,205,0,55,138,234,0,238,30,97,0,113,155,207,0,98,153,127,0,34,107,219,254,117,114,172,255,76,180,255,254,242,57,179,255,221,34,172,254,56,162,49,255,83,3,255,255,113,221,189,255,188,25,228,254,16,88,89,255,71,28,198,254,22,17,149,255,243,121,254,255,107,202,99,255,9,206,14,1,220,47,153,0,107,137,39,1,97,49,194,255,149,51,197,254,186,58,11,255,107,43,232,1,200,6,14,255,181,133,65,254,221,228,171,255,123,62,231,1,227,234,179,255,34,189,212,254,244,187,249,0,190,13,80,1,130,89,1,0,223,133,173,0,9,222,198,255,66,127,74,0,167,216,93,255,155,168,198,1,66,145,0,0,68,102,46,1,172,90,154,0,216,128,75,255,160,40,51,0,158,17,27,1,124,240,49,0,236,202,176,255,151,124,192,255,38,193,190,0,95,182,61,0,163,147,124,255,255,165,51,255,28,40,17,254,215,96,78,0,86,145,218,254,31,36,202,255,86,9,5,0,111,41,200,255,237,108,97,0,57,62,44,0,117,184,15,1,45,241,116,0,152,1,220,255,157,165,188,0,250,15,131,1,60,44,125,255,65,220,251,255,75,50,184,0,53,90,128,255,231,80,194,255,136,129,127,1,21,18,187,255,45,58,161,255,71,147,34,0,174,249,11,254,35,141,29,0,239,68,177,255,115,110,58,0,238,190,177,1,87,245,166,255,190,49,247,255,146,83,184,255,173,14,39,255,146,215,104,0,142,223,120,0,149,200,155,255,212,207,145,1,16,181,217,0,173,32,87,255,255,35,181,0,119,223,161,1,200,223,94,255,70,6,186,255,192,67,85,255,50,169,152,0,144,26,123,255,56,243,179,254,20,68,136,0,39,140,188,254,253,208,5,255,200,115,135,1,43,172,229,255,156,104,187,0,151,251,167,0,52,135,23,0,151,153,72,0,147,197,107,254,148,158,5,255,238,143,206,0,126,153,137,255,88,152,197,254,7,68,167,0,252,159,165,255,239,78,54,255,24,63,55,255,38,222,94,0,237,183,12,255,206,204,210,0,19,39,246,254,30,74,231,0,135,108,29,1,179,115,0,0,117,118,116,1,132,6,252,255,145,129,161,1,105,67,141,0,82,37,226,255,238,226,228,255,204,214,129,254,162,123,100,255,185,121,234,0,45,108,231,0,66,8,56,255,132,136,128,0,172,224,66,254,175,157,188,0,230,223,226,254,242,219,69,0,184,14,119,1,82,162,56,0,114,123,20,0,162,103,85,255,49,239,99,254,156,135,215,0,111,255,167,254,39,196,214,0,144,38,79,1,249,168,125,0,155,97,156,255,23,52,219,255,150,22,144,0,44,149,165,255,40,127,183,0,196,77,233,255,118,129,210,255,170,135,230,255,214,119,198,0,233,240,35,0,253,52,7,255,117,102,48,255,21,204,154,255,179,136,177,255,23,2,3,1,149,130,89,255,252,17,159,1,70,60,26,0,144,107,17,0,180,190,60,255,56,182,59,255,110,71,54,255,198,18,129,255,149,224,87,255,223,21,152,255,138,22,182,255,250,156,205,0,236,45,208,255,79,148,242,1,101,70,209,0,103,78,174,0,101,144,172,255,152,136,237,1,191,194,136,0,113,80,125,1,152,4,141,0,155,150,53,255,196,116,245,0,239,114,73,254,19,82,17,255,124,125,234,255,40,52,191,0,42,210,158,255,155,132,165,0,178,5,42,1,64,92,40,255,36,85,77,255,178,228,118,0,137,66,96,254,115,226,66,0,110,240,69,254,151,111,80,0,167,174,236,255,227,108,107,255,188,242,65,255,183,81,255,0,57,206,181,255,47,34,181,255,213,240,158,1,71,75,95,0,156,40,24,255,102,210,81,0,171,199,228,255,154,34,41,0,227,175,75,0,21,239,195,0,138,229,95,1,76,192,49,0,117,123,87,1,227,225,130,0,125,62,63,255,2,198,171,0,254,36,13,254,145,186,206,0,148,255,244,255,35,0,166,0,30,150,219,1,92,228,212,0,92,198,60,254,62,133,200,255,201,41,59,0,125,238,109,255,180,163,238,1,140,122,82,0,9,22,88,255,197,157,47,255,153,94,57,0,88,30,182,0,84,161,85,0,178,146,124,0,166,166,7,255,21,208,223,0,156,182,242,0,155,121,185,0,83,156,174,254,154,16,118,255,186,83,232,1,223,58,121,255,29,23,88,0,35,125,127,255,170,5,149,254,164,12,130,255,155,196,29,0,161,96,136,0,7,35,29,1,162,37,251,0,3,46,242,255,0,217,188,0,57,174,226,1,206,233,2,0,57,187,136,254,123,189,9,255,201,117,127,255,186,36,204,0,231,25,216,0,80,78,105,0,19,134,129,255,148,203,68,0,141,81,125,254,248,165,200,255,214,144,135,0,151,55,166,255,38,235,91,0,21,46,154,0,223,254,150,255,35,153,180,255,125,176,29,1,43,98,30,255,216,122,230,255,233,160,12,0,57,185,12,254,240,113,7,255,5,9,16,254,26,91,108,0,109,198,203,0,8,147,40,0,129,134,228,255,124,186,40,255,114,98,132,254,166,132,23,0,99,69,44,0,9,242,238,255,184,53,59,0,132,129,102,255,52,32,243,254,147,223,200,255,123,83,179,254,135,144,201,255,141,37,56,1,151,60,227,255,90,73,156,1,203,172,187,0,80,151,47,255,94,137,231,255,36,191,59,255,225,209,181,255,74,215,213,254,6,118,179,255,153,54,193,1,50,0,231,0,104,157,72,1,140,227,154,255,182,226,16,254,96,225,92,255,115,20,170,254,6,250,78,0,248,75,173,255,53,89,6,255,0,180,118,0,72,173,1,0,64,8,206,1,174,133,223,0,185,62,133,255,214,11,98,0,197,31,208,0,171,167,244,255,22,231,181,1,150,218,185,0,247,169,97,1,165,139,247,255,47,120,149,1,103,248,51,0,60,69,28,254,25,179,196,0,124,7,218,254,58,107,81,0,184,233,156,255,252,74,36,0,118,188,67,0,141,95,53,255,222,94,165,254,46,61,53,0,206,59,115,255,47,236,250,255,74,5,32,1,129,154,238,255,106,32,226,0,121,187,61,255,3,166,241,254,67,170,172,255,29,216,178,255,23,201,252,0,253,110,243,0,200,125,57,0,109,192,96,255,52,115,238,0,38,121,243,255,201,56,33,0,194,118,130,0,75,96,25,255,170,30,230,254,39,63,253,0,36,45,250,255,251,1,239,0,160,212,92,1,45,209,237,0,243,33,87,254,237,84,201,255,212,18,157,254,212,99,127,255,217,98,16,254,139,172,239,0,168,201,130,255,143,193,169,255,238,151,193,1,215,104,41,0,239,61,165,254,2,3,242,0,22,203,177,254,177,204,22,0,149,129,213,254,31,11,41,255,0,159,121,254,160,25,114,255,162,80,200,0,157,151,11,0,154,134,78,1,216,54,252,0,48,103,133,0,105,220,197,0,253,168,77,254,53,179,23,0,24,121,240,1,255,46,96,255,107,60,135,254,98,205,249,255,63,249,119,255,120,59,211,255,114,180,55,254,91,85,237,0,149,212,77,1,56,73,49,0,86,198,150,0,93,209,160,0,69,205,182,255,244,90,43,0,20,36,176,0,122,116,221,0,51,167,39,1,231,1,63,255,13,197,134,0,3,209,34,255,135,59,202,0,167,100,78,0,47,223,76,0,185,60,62,0,178,166,123,1,132,12,161,255,61,174,43,0,195,69,144,0,127,47,191,1,34,44,78,0,57,234,52,1,255,22,40,255,246,94,146,0,83,228,128,0,60,78,224,255,0,96,210,255,153,175,236,0,159,21,73,0,180,115,196,254,131,225,106,0,255,167,134,0,159,8,112,255,120,68,194,255,176,196,198,255,118,48,168,255,93,169,1,0,112,200,102,1,74,24,254,0,19,141,4,254,142,62,63,0,131,179,187,255,77,156,155,255,119,86,164,0,170,208,146,255,208,133,154,255,148,155,58,255,162,120,232,254,252,213,155,0,241,13,42,0,94,50,131,0,179,170,112,0,140,83,151,255,55,119,84,1,140,35,239,255,153,45,67,1,236,175,39,0,54,151,103,255,158,42,65,255,196,239,135,254,86,53,203,0,149,97,47,254,216,35,17,255,70,3,70,1,103,36,90,255,40,26,173,0,184,48,13,0,163,219,217,255,81,6,1,255,221,170,108,254,233,208,93,0,100,201,249,254,86,36,35,255,209,154,30,1,227,201,251,255,2,189,167,254,100,57,3,0,13,128,41,0,197,100,75,0,150,204,235,255,145,174,59,0,120,248,149,255,85,55,225,0,114,210,53,254,199,204,119,0,14,247,74,1,63,251,129,0,67,104,151,1,135,130,80,0,79,89,55,255,117,230,157,255,25,96,143,0,213,145,5,0,69,241,120,1,149,243,95,255,114,42,20,0,131,72,2,0,154,53,20,255,73,62,109,0,196,102,152,0,41,12,204,255,122,38,11,1,250,10,145,0,207,125,148,0,246,244,222,255,41,32,85,1,112,213,126,0,162,249,86,1,71,198,127,255,81,9,21,1,98,39,4,255,204,71,45,1,75,111,137,0,234,59,231,0,32,48,95,255,204,31,114,1,29,196,181,255,51,241,167,254,93,109,142,0,104,144,45,0,235,12,181,255,52,112,164,0,76,254,202,255,174,14,162,0,61,235,147,255,43,64,185,254,233,125,217,0,243,88,167,254,74,49,8,0,156,204,66,0,124,214,123,0,38,221,118,1,146,112,236,0,114,98,177,0,151,89,199,0,87,197,112,0,185,149,161,0,44,96,165,0,248,179,20,255,188,219,216,254,40,62,13,0,243,142,141,0,229,227,206,255,172,202,35,255,117,176,225,255,82,110,38,1,42,245,14,255,20,83,97,0,49,171,10,0,242,119,120,0,25,232,61,0,212,240,147,255,4,115,56,255,145,17,239,254,202,17,251,255,249,18,245,255,99,117,239,0,184,4,179,255,246,237,51,255,37,239,137,255,166,112,166,255,81,188,33,255,185,250,142,255,54,187,173,0,208,112,201,0,246,43,228,1,104,184,88,255,212,52,196,255,51,117,108,255,254,117,155,0,46,91,15,255,87,14,144,255,87,227,204,0,83,26,83,1,159,76,227,0,159,27,213,1,24,151,108,0,117,144,179,254,137,209,82,0,38,159,10,0,115,133,201,0,223,182,156,1,110,196,93,255,57,60,233,0,5,167,105,255,154,197,164,0,96,34,186,255,147,133,37,1,220,99,190,0,1,167,84,255,20,145,171,0,194,197,251,254,95,78,133,255,252,248,243,255,225,93,131,255,187,134,196,255,216,153,170,0,20,118,158,254,140,1,118,0,86,158,15,1,45,211,41,255,147,1,100,254,113,116,76,255,211,127,108,1,103,15,48,0,193,16,102,1,69,51,95,255,107,128,157,0,137,171,233,0,90,124,144,1,106,161,182,0,175,76,236,1,200,141,172,255,163,58,104,0,233,180,52,255,240,253,14,255,162,113,254,255,38,239,138,254,52,46,166,0,241,101,33,254,131,186,156,0,111,208,62,255,124,94,160,255,31,172,254,0,112,174,56,255,188,99,27,255,67,138,251,0,125,58,128,1,156,152,174,255,178,12,247,255,252,84,158,0,82,197,14,254,172,200,83,255,37,39,46,1,106,207,167,0,24,189,34,0,131,178,144,0,206,213,4,0,161,226,210,0,72,51,105,255,97,45,187,255,78,184,223,255,176,29,251,0,79,160,86,255,116,37,178,0,82,77,213,1,82,84,141,255,226,101,212,1,175,88,199,255,245,94,247,1,172,118,109,255,166,185,190,0,131,181,120,0,87,254,93,255,134,240,73,255,32,245,143,255,139,162,103,255,179,98,18,254,217,204,112,0,147,223,120,255,53,10,243,0,166,140,150,0,125,80,200,255,14,109,219,255,91,218,1,255,252,252,47,254,109,156,116,255,115,49,127,1,204,87,211,255,148,202,217,255,26,85,249,255,14,245,134,1,76,89,169,255,242,45,230,0,59,98,172,255,114,73,132,254,78,155,49,255,158,126,84,0,49,175,43,255,16,182,84,255,157,103,35,0,104,193,109,255,67,221,154,0,201,172,1,254,8,162,88,0,165,1,29,255,125,155,229,255,30,154,220,1,103,239,92,0,220,1,109,255,202,198,1,0,94,2,142,1,36,54,44,0,235,226,158,255,170,251,214,255],"i8",S,p.GLOBAL_BASE+10240),x([185,77,9,0,97,74,242,0,219,163,149,255,240,35,118,255,223,114,88,254,192,199,3,0,106,37,24,255,201,161,118,255,97,89,99,1,224,58,103,255,101,199,147,254,222,60,99,0,234,25,59,1,52,135,27,0,102,3,91,254,168,216,235,0,229,232,136,0,104,60,129,0,46,168,238,0,39,191,67,0,75,163,47,0,143,97,98,255,56,216,168,1,168,233,252,255,35,111,22,255,92,84,43,0,26,200,87,1,91,253,152,0,202,56,70,0,142,8,77,0,80,10,175,1,252,199,76,0,22,110,82,255,129,1,194,0,11,128,61,1,87,14,145,255,253,222,190,1,15,72,174,0,85,163,86,254,58,99,44,255,45,24,188,254,26,205,15,0,19,229,210,254,248,67,195,0,99,71,184,0,154,199,37,255,151,243,121,255,38,51,75,255,201,85,130,254,44,65,250,0,57,147,243,254,146,43,59,255,89,28,53,0,33,84,24,255,179,51,18,254,189,70,83,0,11,156,179,1,98,134,119,0,158,111,111,0,119,154,73,255,200,63,140,254,45,13,13,255,154,192,2,254,81,72,42,0,46,160,185,254,44,112,6,0,146,215,149,1,26,176,104,0,68,28,87,1,236,50,153,255,179,128,250,254,206,193,191,255,166,92,137,254,53,40,239,0,210,1,204,254,168,173,35,0,141,243,45,1,36,50,109,255,15,242,194,255,227,159,122,255,176,175,202,254,70,57,72,0,40,223,56,0,208,162,58,255,183,98,93,0,15,111,12,0,30,8,76,255,132,127,246,255,45,242,103,0,69,181,15,255,10,209,30,0,3,179,121,0,241,232,218,1,123,199,88,255,2,210,202,1,188,130,81,255,94,101,208,1,103,36,45,0,76,193,24,1,95,26,241,255,165,162,187,0,36,114,140,0,202,66,5,255,37,56,147,0,152,11,243,1,127,85,232,255,250,135,212,1,185,177,113,0,90,220,75,255,69,248,146,0,50,111,50,0,92,22,80,0,244,36,115,254,163,100,82,255,25,193,6,1,127,61,36,0,253,67,30,254,65,236,170,255,161,17,215,254,63,175,140,0,55,127,4,0,79,112,233,0,109,160,40,0,143,83,7,255,65,26,238,255,217,169,140,255,78,94,189,255,0,147,190,255,147,71,186,254,106,77,127,255,233,157,233,1,135,87,237,255,208,13,236,1,155,109,36,255,180,100,218,0,180,163,18,0,190,110,9,1,17,63,123,255,179,136,180,255,165,123,123,255,144,188,81,254,71,240,108,255,25,112,11,255,227,218,51,255,167,50,234,255,114,79,108,255,31,19,115,255,183,240,99,0,227,87,143,255,72,217,248,255,102,169,95,1,129,149,149,0,238,133,12,1,227,204,35,0,208,115,26,1,102,8,234,0,112,88,143,1,144,249,14,0,240,158,172,254,100,112,119,0,194,141,153,254,40,56,83,255,121,176,46,0,42,53,76,255,158,191,154,0,91,209,92,0,173,13,16,1,5,72,226,255,204,254,149,0,80,184,207,0,100,9,122,254,118,101,171,255,252,203,0,254,160,207,54,0,56,72,249,1,56,140,13,255,10,64,107,254,91,101,52,255,225,181,248,1,139,255,132,0,230,145,17,0,233,56,23,0,119,1,241,255,213,169,151,255,99,99,9,254,185,15,191,255,173,103,109,1,174,13,251,255,178,88,7,254,27,59,68,255,10,33,2,255,248,97,59,0,26,30,146,1,176,147,10,0,95,121,207,1,188,88,24,0,185,94,254,254,115,55,201,0,24,50,70,0,120,53,6,0,142,66,146,0,228,226,249,255,104,192,222,1,173,68,219,0,162,184,36,255,143,102,137,255,157,11,23,0,125,45,98,0,235,93,225,254,56,112,160,255,70,116,243,1,153,249,55,255,129,39,17,1,241,80,244,0,87,69,21,1,94,228,73,255,78,66,65,255,194,227,231,0,61,146,87,255,173,155,23,255,112,116,219,254,216,38,11,255,131,186,133,0,94,212,187,0,100,47,91,0,204,254,175,255,222,18,215,254,173,68,108,255,227,228,79,255,38,221,213,0,163,227,150,254,31,190,18,0,160,179,11,1,10,90,94,255,220,174,88,0,163,211,229,255,199,136,52,0,130,95,221,255,140,188,231,254,139,113,128,255,117,171,236,254,49,220,20,255,59,20,171,255,228,109,188,0,20,225,32,254,195,16,174,0,227,254,136,1,135,39,105,0,150,77,206,255,210,238,226,0,55,212,132,254,239,57,124,0,170,194,93,255,249,16,247,255,24,151,62,255,10,151,10,0,79,139,178,255,120,242,202,0,26,219,213,0,62,125,35,255,144,2,108,255,230,33,83,255,81,45,216,1,224,62,17,0,214,217,125,0,98,153,153,255,179,176,106,254,131,93,138,255,109,62,36,255,178,121,32,255,120,252,70,0,220,248,37,0,204,88,103,1,128,220,251,255,236,227,7,1,106,49,198,255,60,56,107,0,99,114,238,0,220,204,94,1,73,187,1,0,89,154,34,0,78,217,165,255,14,195,249,255,9,230,253,255,205,135,245,0,26,252,7,255,84,205,27,1,134,2,112,0,37,158,32,0,231,91,237,255,191,170,204,255,152,7,222,0,109,192,49,0,193,166,146,255,232,19,181,255,105,142,52,255,103,16,27,1,253,200,165,0,195,217,4,255,52,189,144,255,123,155,160,254,87,130,54,255,78,120,61,255,14,56,41,0,25,41,125,255,87,168,245,0,214,165,70,0,212,169,6,255,219,211,194,254,72,93,164,255,197,33,103,255,43,142,141,0,131,225,172,0,244,105,28,0,68,68,225,0,136,84,13,255,130,57,40,254,139,77,56,0,84,150,53,0,54,95,157,0,144,13,177,254,95,115,186,0,117,23,118,255,244,166,241,255,11,186,135,0,178,106,203,255,97,218,93,0,43,253,45,0,164,152,4,0,139,118,239,0,96,1,24,254,235,153,211,255,168,110,20,255,50,239,176,0,114,41,232,0,193,250,53,0,254,160,111,254,136,122,41,255,97,108,67,0,215,152,23,255,140,209,212,0,42,189,163,0,202,42,50,255,106,106,189,255,190,68,217,255,233,58,117,0,229,220,243,1,197,3,4,0,37,120,54,254,4,156,134,255,36,61,171,254,165,136,100,255,212,232,14,0,90,174,10,0,216,198,65,255,12,3,64,0,116,113,115,255,248,103,8,0,231,125,18,255,160,28,197,0,30,184,35,1,223,73,249,255,123,20,46,254,135,56,37,255,173,13,229,1,119,161,34,255,245,61,73,0,205,125,112,0,137,104,134,0,217,246,30,255,237,142,143,0,65,159,102,255,108,164,190,0,219,117,173,255,34,37,120,254,200,69,80,0,31,124,218,254,74,27,160,255,186,154,199,255,71,199,252,0,104,81,159,1,17,200,39,0,211,61,192,1,26,238,91,0,148,217,12,0,59,91,213,255,11,81,183,255,129,230,122,255,114,203,145,1,119,180,66,255,72,138,180,0,224,149,106,0,119,82,104,255,208,140,43,0,98,9,182,255,205,101,134,255,18,101,38,0,95,197,166,255,203,241,147,0,62,208,145,255,133,246,251,0,2,169,14,0,13,247,184,0,142,7,254,0,36,200,23,255,88,205,223,0,91,129,52,255,21,186,30,0,143,228,210,1,247,234,248,255,230,69,31,254,176,186,135,255,238,205,52,1,139,79,43,0,17,176,217,254,32,243,67,0,242,111,233,0,44,35,9,255,227,114,81,1,4,71,12,255,38,105,191,0,7,117,50,255,81,79,16,0,63,68,65,255,157,36,110,255,77,241,3,255,226,45,251,1,142,25,206,0,120,123,209,1,28,254,238,255,5,128,126,255,91,222,215,255,162,15,191,0,86,240,73,0,135,185,81,254,44,241,163,0,212,219,210,255,112,162,155,0,207,101,118,0,168,72,56,255,196,5,52,0,72,172,242,255,126,22,157,255,146,96,59,255,162,121,152,254,140,16,95,0,195,254,200,254,82,150,162,0,119,43,145,254,204,172,78,255,166,224,159,0,104,19,237,255,245,126,208,255,226,59,213,0,117,217,197,0,152,72,237,0,220,31,23,254,14,90,231,255,188,212,64,1,60,101,246,255,85,24,86,0,1,177,109,0,146,83,32,1,75,182,192,0,119,241,224,0,185,237,27,255,184,101,82,1,235,37,77,255,253,134,19,0,232,246,122,0,60,106,179,0,195,11,12,0,109,66,235,1,125,113,59,0,61,40,164,0,175,104,240,0,2,47,187,255,50,12,141,0,194,139,181,255,135,250,104,0,97,92,222,255,217,149,201,255,203,241,118,255,79,151,67,0,122,142,218,255,149,245,239,0,138,42,200,254,80,37,97,255,124,112,167,255,36,138,87,255,130,29,147,255,241,87,78,255,204,97,19,1,177,209,22,255,247,227,127,254,99,119,83,255,212,25,198,1,16,179,179,0,145,77,172,254,89,153,14,255,218,189,167,0,107,233,59,255,35,33,243,254,44,112,112,255,161,127,79,1,204,175,10,0,40,21,138,254,104,116,228,0,199,95,137,255,133,190,168,255,146,165,234,1,183,99,39,0,183,220,54,254,255,222,133,0,162,219,121,254,63,239,6,0,225,102,54,255,251,18,246,0,4,34,129,1,135,36,131,0,206,50,59,1,15,97,183,0,171,216,135,255,101,152,43,255,150,251,91,0,38,145,95,0,34,204,38,254,178,140,83,255,25,129,243,255,76,144,37,0,106,36,26,254,118,144,172,255,68,186,229,255,107,161,213,255,46,163,68,255,149,170,253,0,187,17,15,0,218,160,165,255,171,35,246,1,96,13,19,0,165,203,117,0,214,107,192,255,244,123,177,1,100,3,104,0,178,242,97,255,251,76,130,255,211,77,42,1,250,79,70,255,63,244,80,1,105,101,246,0,61,136,58,1,238,91,213,0,14,59,98,255,167,84,77,0,17,132,46,254,57,175,197,255,185,62,184,0,76,64,207,0,172,175,208,254,175,74,37,0,138,27,211,254,148,125,194,0,10,89,81,0,168,203,101,255,43,213,209,1,235,245,54,0,30,35,226,255,9,126,70,0,226,125,94,254,156,117,20,255,57,248,112,1,230,48,64,255,164,92,166,1,224,214,230,255,36,120,143,0,55,8,43,255,251,1,245,1,106,98,165,0,74,107,106,254,53,4,54,255,90,178,150,1,3,120,123,255,244,5,89,1,114,250,61,255,254,153,82,1,77,15,17,0,57,238,90,1,95,223,230,0,236,52,47,254,103,148,164,255,121,207,36,1,18,16,185,255,75,20,74,0,187,11,101,0,46,48,129,255,22,239,210,255,77,236,129,255,111,77,204,255,61,72,97,255,199,217,251,255,42,215,204,0,133,145,201,255,57,230,146,1,235,100,198,0,146,73,35,254,108,198,20,255,182,79,210,255,82,103,136,0,246,108,176,0,34,17,60,255,19,74,114,254,168,170,78,255,157,239,20,255,149,41,168,0,58,121,28,0,79,179,134,255,231,121,135,255,174,209,98,255,243,122,190,0,171,166,205,0,212,116,48,0,29,108,66,255,162,222,182,1,14,119,21,0,213,39,249,255,254,223,228,255,183,165,198,0,133,190,48,0,124,208,109,255,119,175,85,255,9,209,121,1,48,171,189,255,195,71,134,1,136,219,51,255,182,91,141,254,49,159,72,0,35,118,245,255,112,186,227,255,59,137,31,0,137,44,163,0,114,103,60,254,8,213,150,0,162,10,113,255,194,104,72,0,220,131,116,255,178,79,92,0,203,250,213,254,93,193,189,255,130,255,34,254,212,188,151,0,136,17,20,255,20,101,83,255,212,206,166,0,229,238,73,255,151,74,3,255,168,87,215,0,155,188,133,255,166,129,73,0,240,79,133,255,178,211,81,255,203,72,163,254,193,168,165,0,14,164,199,254,30,255,204,0,65,72,91,1,166,74,102,255,200,42,0,255,194,113,227,255,66,23,208,0,229,216,100,255,24,239,26,0,10,233,62,255,123,10,178,1,26,36,174,255,119,219,199,1,45,163,190,0,16,168,42,0,166,57,198,255,28,26,26,0,126,165,231,0,251,108,100,255,61,229,121,255,58,118,138,0,76,207,17,0,13,34,112,254,89,16,168,0,37,208,105,255,35,201,215,255,40,106,101,254,6,239,114,0,40,103,226,254,246,127,110,255,63,167,58,0,132,240,142,0,5,158,88,255,129,73,158,255,94,89,146,0,230,54,146,0,8,45,173,0,79,169,1,0,115,186,247,0,84,64,131,0,67,224,253,255,207,189,64,0,154,28,81,1,45,184,54,255,87,212,224,255,0,96,73,255,129,33,235,1,52,66,80,255,251,174,155,255,4,179,37,0,234,164,93,254,93,175,253,0,198,69,87,255,224,106,46,0,99,29,210,0,62,188,114,255,44,234,8,0,169,175,247,255,23,109,137,255,229,182,39,0,192,165,94,254,245,101,217,0,191,88,96,0,196,94,99,255,106,238,11,254,53,126,243,0,94,1,101,255,46,147,2,0,201,124,124,255,141,12,218,0,13,166,157,1,48,251,237,255,155,250,124,255,106,148,146,255,182,13,202,0,28,61,167,0,217,152,8,254,220,130,45,255,200,230,255,1,55,65,87,255,93,191,97,254,114,251,14,0,32,105,92,1,26,207,141,0,24,207,13,254,21,50,48,255,186,148,116,255,211,43,225,0,37,34,162,254,164,210,42,255,68,23,96,255,182,214,8,255,245,117,137,255,66,195,50,0,75,12,83,254,80,140,164,0,9,165,36,1,228,110,227,0,241,17,90,1,25,52,212,0,6,223,12,255,139,243,57,0,12,113,75,1,246,183,191,255,213,191,69,255,230,15,142,0,1,195,196,255,138,171,47,255,64,63,106,1,16,169,214,255,207,174,56,1,88,73,133,255,182,133,140,0,177,14,25,255,147,184,53,255,10,227,161,255,120,216,244,255,73,77,233,0,157,238,139,1,59,65,233,0,70,251,216,1,41,184,153,255,32,203,112,0,146,147,253,0,87,101,109,1,44,82,133,255,244,150,53,255,94,152,232,255,59,93,39,255,88,147,220,255,78,81,13,1,32,47,252,255,160,19,114,255,93,107,39,255,118,16,211,1,185,119,209,255,227,219,127,254,88,105,236,255,162,110,23,255,36,166,110,255,91,236,221,255,66,234,116,0,111,19,244,254,10,233,26,0,32,183,6,254,2,191,242,0,218,156,53,254,41,60,70,255,168,236,111,0,121,185,126,255,238,142,207,255,55,126,52,0,220,129,208,254,80,204,164,255,67,23,144,254,218,40,108,255,127,202,164,0,203,33,3,255,2,158,0,0,37,96,188,255,192,49,74,0,109,4,0,0,111,167,10,254,91,218,135,255,203,66,173,255,150,194,226,0,201,253,6,255,174,102,121,0,205,191,110,0,53,194,4,0,81,40,45,254,35,102,143,255,12,108,198,255,16,27,232,255,252,71,186,1,176,110,114,0,142,3,117,1,113,77,142,0,19,156,197,1,92,47,252,0,53,232,22,1,54,18,235,0,46,35,189,255,236,212,129,0,2,96,208,254,200,238,199,255,59,175,164,255,146,43,231,0,194,217,52,255,3,223,12,0,138,54,178,254,85,235,207,0,232,207,34,0,49,52,50,255,166,113,89,255,10,45,216,255,62,173,28,0,111,165,246,0,118,115,91,255,128,84,60,0,167,144,203,0,87,13,243,0,22,30,228,1,177,113,146,255,129,170,230,254,252,153,129,255,145,225,43,0,70,231,5,255,122,105,126,254,86,246,148,255,110,37,154,254,209,3,91,0,68,145,62,0,228,16,165,255,55,221,249,254,178,210,91,0,83,146,226,254,69,146,186,0,93,210,104,254,16,25,173,0,231,186,38,0,189,122,140,255,251,13,112,255,105,110,93,0,251,72,170,0,192,23,223,255,24,3,202,1,225,93,228,0,153,147,199,254,109,170,22,0,248,101,246,255,178,124,12,255,178,254,102,254,55,4,65,0,125,214,180,0,183,96,147,0,45,117,23,254,132,191,249,0,143,176,203,254,136,183,54,255,146,234,177,0,146,101,86,255,44,123,143,1,33,209,152,0,192,90,41,254,83,15,125,255,213,172,82,0,215,169,144,0,16,13,34,0,32,209,100,255,84,18,249,1,197,17,236,255,217,186,230,0,49,160,176,255,111,118,97,255,237,104,235,0,79,59,92,254,69,249,11,255,35,172,74,1,19,118,68,0,222,124,165,255,180,66,35,255,86,174,246,0,43,74,111,255,126,144,86,255,228,234,91,0,242,213,24,254,69,44,235,255,220,180,35,0,8,248,7,255,102,47,92,255,240,205,102,255,113,230,171,1,31,185,201,255,194,246,70,255,122,17,187,0,134,70,199,255,149,3,150,255,117,63,103,0,65,104,123,255,212,54,19,1,6,141,88,0,83,134,243,255,136,53,103,0,169,27,180,0,177,49,24,0,111,54,167,0,195,61,215,255,31,1,108,1,60,42,70,0,185,3,162,255,194,149,40,255,246,127,38,254,190,119,38,255,61,119,8,1,96,161,219,255,42,203,221,1,177,242,164,255,245,159,10,0,116,196,0,0,5,93,205,254,128,127,179,0,125,237,246,255,149,162,217,255,87,37,20,254,140,238,192,0,9,9,193,0,97,1,226,0,29,38,10,0,0,136,63,255,229,72,210,254,38,134,92,255,78,218,208,1,104,36,84,255,12,5,193,255,242,175,61,255,191,169,46,1,179,147,147,255,113,190,139,254,125,172,31,0,3,75,252,254,215,36,15,0,193,27,24,1,255,69,149,255,110,129,118,0,203,93,249,0,138,137,64,254,38,70,6,0,153,116,222,0,161,74,123,0,193,99,79,255,118,59,94,255,61,12,43,1,146,177,157,0,46,147,191,0,16,255,38,0,11,51,31,1,60,58,98,255,111,194,77,1,154,91,244,0,140,40,144,1,173,10,251,0,203,209,50,254,108,130,78,0,228,180,90,0,174,7,250,0,31,174,60,0,41,171,30,0,116,99,82,255,118,193,139,255,187,173,198,254,218,111,56,0,185,123,216,0,249,158,52,0,52,180,93,255,201,9,91,255,56,45,166,254,132,155,203,255,58,232,110,0,52,211,89,255,253,0,162,1,9,87,183,0,145,136,44,1,94,122,245,0,85,188,171,1,147,92,198,0,0,8,104,0,30,95,174,0,221,230,52,1,247,247,235,255,137,174,53,255,35,21,204,255,71,227,214,1,232,82,194,0,11,48,227,255,170,73,184,255,198,251,252,254,44,112,34,0,131,101,131,255,72,168,187,0,132,135,125,255,138,104,97,255,238,184,168,255,243,104,84,255,135,216,226,255,139,144,237,0,188,137,150,1,80,56,140,255,86,169,167,255,194,78,25,255,220,17,180,255,17,13,193,0,117,137,212,255,141,224,151,0,49,244,175,0,193,99,175,255,19,99,154,1,255,65,62,255,156,210,55,255,242,244,3,255,250,14,149,0,158,88,217,255,157,207,134,254,251,232,28,0,46,156,251,255,171,56,184,255,239,51,234,0,142,138,131,255,25,254,243,1,10,201,194,0,63,97,75,0,210,239,162,0,192,200,31,1,117,214,243,0,24,71,222,254,54,40,232,255,76,183,111,254,144,14,87,255,214,79,136,255,216,196,212,0,132,27,140,254,131,5,253,0,124,108,19,255,28,215,75,0,76,222,55,254,233,182,63,0,68,171,191,254,52,111,222,255,10,105,77,255,80,170,235,0,143,24,88,255,45,231,121,0,148,129,224,1,61,246,84,0,253,46,219,255,239,76,33,0,49,148,18,254,230,37,69,0,67,134,22,254,142,155,94,0,31,157,211,254,213,42,30,255,4,228,247,254,252,176,13,255,39,0,31,254,241,244,255,255,170,45,10,254,253,222,249,0,222,114,132,0,255,47,6,255,180,163,179,1,84,94,151,255,89,209,82,254,229,52,169,255,213,236,0,1,214,56,228,255,135,119,151,255,112,201,193,0,83,160,53,254,6,151,66,0,18,162,17,0,233,97,91,0,131,5,78,1,181,120,53,255,117,95,63,255,237,117,185,0,191,126,136,255,144,119,233,0,183,57,97,1,47,201,187,255,167,165,119,1,45,100,126,0,21,98,6,254,145,150,95,255,120,54,152,0,209,98,104,0,143,111,30,254,184,148,249,0,235,216,46,0,248,202,148,255,57,95,22,0,242,225,163,0,233,247,232,255,71,171,19,255,103,244,49,255,84,103,93,255,68,121,244,1,82,224,13,0,41,79,43,255,249,206,167,255,215,52,21,254,192,32,22,255,247,111,60,0,101,74,38,255,22,91,84,254,29,28,13,255,198,231,215,254,244,154,200,0,223,137,237,0,211,132,14,0,95,64,206,255,17,62,247,255,233,131,121,1,93,23,77,0,205,204,52,254,81,189,136,0,180,219,138,1,143,18,94,0,204,43,140,254,188,175,219,0,111,98,143,255,151,63,162,255,211,50,71,254,19,146,53,0,146,45,83,254,178,82,238,255,16,133,84,255,226,198,93,255,201,97,20,255,120,118,35,255,114,50,231,255,162,229,156,255,211,26,12,0,114,39,115,255,206,212,134,0,197,217,160,255,116,129,94,254,199,215,219,255,75,223,249,1,253,116,181,255,232,215,104,255,228,130,246,255,185,117,86,0,14,5,8,0,239,29,61,1,237,87,133,255,125,146,137,254,204,168,223,0,46,168,245,0,154,105,22,0,220,212,161,255,107,69,24,255,137,218,181,255,241,84,198,255,130,122,211,255,141,8,153,255,190,177,118,0,96,89,178,0,255,16,48,254,122,96,105,255,117,54,232,255,34,126,105,255,204,67,166,0,232,52,138,255,211,147,12,0,25,54,7,0,44,15,215,254,51,236,45,0,190,68,129,1,106,147,225,0,28,93,45,254,236,141,15,255,17,61,161,0,220,115,192,0,236,145,24,254,111,168,169,0,224,58,63,255,127,164,188,0,82,234,75,1,224,158,134,0,209,68,110,1,217,166,217,0,70,225,166,1,187,193,143,255,16,7,88,255,10,205,140,0,117,192,156,1,17,56,38,0,27,124,108,1,171,215,55,255,95,253,212,0,155,135,168,255,246,178,153,254,154,68,74,0,232,61,96,254,105,132,59,0,33,76,199,1,189,176,130,255,9,104,25,254,75,198,102,255,233,1,112,0,108,220,20,255,114,230,70,0,140,194,133,255,57,158,164,254,146,6,80,255,169,196,97,1,85,183,130,0,70,158,222,1,59,237,234,255,96,25,26,255,232,175,97,255,11,121,248,254,88,35,194,0,219,180,252,254,74,8,227,0,195,227,73,1,184,110,161,255,49,233,164,1,128,53,47,0,82,14,121,255,193,190,58,0,48,174,117,255,132,23,32,0,40,10,134,1,22,51,25,255,240,11,176,255,110,57,146,0,117,143,239,1,157,101,118,255,54,84,76,0,205,184,18,255,47,4,72,255,78,112,85,255,193,50,66,1,93,16,52,255,8,105,134,0,12,109,72,255,58,156,251,0,144,35,204,0,44,160,117,254,50,107,194,0,1,68,165,255,111,110,162,0,158,83,40,254,76,214,234,0,58,216,205,255,171,96,147,255,40,227,114,1,176,227,241,0,70,249,183,1,136,84,139,255,60,122,247,254,143,9,117,255,177,174,137,254,73,247,143,0,236,185,126,255,62,25,247,255,45,64,56,255,161,244,6,0,34,57,56,1,105,202,83,0,128,147,208,0,6,103,10,255,74,138,65,255,97,80,100,255,214,174,33,255,50,134,74,255,110,151,130,254,111,84,172,0,84,199,75,254,248,59,112,255,8,216,178,1,9,183,95,0,238,27,8,254,170,205,220,0,195,229,135,0,98,76,237,255,226,91,26,1,82,219,39,255,225,190,199,1,217,200,121,255,81,179,8,255,140,65,206,0,178,207,87,254,250,252,46,255,104,89,110,1,253,189,158,255,144,214,158,255,160,245,54,255,53,183,92,1,21,200,194,255,146,33,113,1,209,1,255,0,235,106,43,255,167,52,232,0,157,229,221,0,51,30,25,0,250,221,27,1,65,147,87,255,79,123,196,0,65,196,223,255,76,44,17,1,85,241,68,0,202,183,249,255,65,212,212,255,9,33,154,1,71,59,80,0,175,194,59,255,141,72,9,0,100,160,244,0,230,208,56,0,59,25,75,254,80,194,194,0,18,3,200,254,160,159,115,0,132,143,247,1,111,93,57,255,58,237,11,1,134,222,135,255,122,163,108,1,123,43,190,255,251,189,206,254,80,182,72,255,208,246,224,1,17,60,9,0,161,207,38,0,141,109,91,0,216,15,211,255,136,78,110,0,98,163,104,255,21,80,121,255,173,178,183,1,127,143,4,0,104,60,82,254,214,16,13,255,96,238,33,1,158,148,230,255,127,129,62,255,51,255,210,255,62,141,236,254,157,55,224,255,114,39,244,0,192,188,250,255,228,76,53,0,98,84,81,255,173,203,61,254,147,50,55,255,204,235,191,0,52,197,244,0,88,43,211,254,27,191,119,0,188,231,154,0,66,81,161,0,92,193,160,1,250,227,120,0,123,55,226,0,184,17,72,0,133,168,10,254,22,135,156,255,41,25,103,255,48,202,58,0,186,149,81,255,188,134,239,0,235,181,189,254,217,139,188,255,74,48,82,0,46,218,229,0,189,253,251,0,50,229,12,255,211,141,191,1,128,244,25,255,169,231,122,254,86,47,189,255,132,183,23,255,37,178,150,255,51,137,253,0,200,78,31,0,22,105,50,0,130,60,0,0,132,163,91,254,23,231,187,0,192,79,239,0,157,102,164,255,192,82,20,1,24,181,103,255,240,9,234,0,1,123,164,255,133,233,0,255,202,242,242,0,60,186,245,0,241,16,199,255,224,116,158,254,191,125,91,255,224,86,207,0,121,37,231,255,227,9,198,255,15,153,239,255,121,232,217,254,75,112,82,0,95,12,57,254,51,214,105,255,148,220,97,1,199,98,36,0,156,209,12,254,10,212,52,0,217,180,55,254,212,170,232,255,216,20,84,255,157,250,135,0,157,99,127,254,1,206,41,0,149,36,70,1,54,196,201,255,87,116,0,254,235,171,150,0,27,163,234,0,202,135,180,0,208,95,0,254,123,156,93,0,183,62,75,0,137,235,182,0,204,225,255,255,214,139,210,255,2,115,8,255,29,12,111,0,52,156,1,0,253,21,251,255,37,165,31,254,12,130,211,0,106,18,53,254,42,99,154,0,14,217,61,254,216,11,92,255,200,197,112,254,147,38,199,0,36,252,120,254,107,169,77,0,1,123,159,255,207,75,102,0,163,175,196,0,44,1,240,0,120,186,176,254,13,98,76,255,237,124,241,255,232,146,188,255,200,96,224,0,204,31,41,0,208,200,13,0,21,225,96,255,175,156,196,0,247,208,126,0,62,184,244,254,2,171,81,0,85,115,158,0,54,64,45,255,19,138,114,0,135,71,205,0,227,47,147,1,218,231,66,0,253,209,28,0,244,15,173,255,6,15,118,254,16,150,208,255,185,22,50,255,86,112,207,255,75,113,215,1,63,146,43,255,4,225,19,254,227,23,62,255,14,255,214,254,45,8,205,255,87,197,151,254,210,82,215,255,245,248,247,255,128,248,70,0,225,247,87,0,90,120,70,0,213,245,92,0,13,133,226,0,47,181,5,1,92,163,105,255,6,30,133,254,232,178,61,255,230,149,24,255,18,49,158,0,228,100,61,254,116,243,251,255,77,75,92,1,81,219,147,255,76,163,254,254,141,213,246,0,232,37,152,254,97,44,100,0,201,37,50,1,212,244,57,0,174,171,183,255,249,74,112,0,166,156,30,0,222,221,97,255,243,93,73,254,251,101,100,255,216,217,93,255,254,138,187,255,142,190,52,255,59,203,177,255,200,94,52,0,115,114,158,255,165,152,104,1,126,99,226,255,118,157,244,1,107,200,16,0,193,90,229,0,121,6,88,0,156,32,93,254,125,241,211,255,14,237,157,255,165,154,21,255,184,224,22,255,250,24,152,255,113,77,31,0,247,171,23,255,237,177,204,255,52,137,145,255,194,182,114,0,224,234,149,0,10,111,103,1,201,129,4,0,238,142,78,0,52,6,40,255,110,213,165,254,60,207,253,0,62,215,69,0,96,97,0,255,49,45,202,0,120,121,22,255,235,139,48,1,198,45,34,255,182,50,27,1,131,210,91,255,46,54,128,0,175,123,105,255,198,141,78,254,67,244,239,255,245,54,103,254,78,38,242,255,2,92,249,254,251,174,87,255,139,63,144,0,24,108,27,255,34,102,18,1,34,22,152,0,66,229,118,254,50,143,99,0,144,169,149,1,118,30,152,0,178,8,121,1,8,159,18,0,90,101,230,255,129,29,119,0,68,36,11,1,232,183,55,0,23,255,96,255,161,41,193,255,63,139,222,0,15,179,243,0,255,100,15,255,82,53,135,0,137,57,149,1,99,240,170,255,22,230,228,254,49,180,82,255,61,82,43,0,110,245,217,0,199,125,61,0,46,253,52,0,141,197,219,0,211,159,193,0,55,121,105,254,183,20,129,0,169,119,170,255,203,178,139,255,135,40,182,255,172,13,202,255,65,178,148,0,8,207,43,0,122,53,127,1,74,161,48,0,227,214,128,254,86,11,243,255,100,86,7,1,245,68,134,255,61,43,21,1,152,84,94,255,190,60,250,254,239,118,232,255,214,136,37,1,113,76,107,255,93,104,100,1,144,206,23,255,110,150,154,1,228,103,185,0,218,49,50,254,135,77,139,255,185,1,78,0,0,161,148,255,97,29,233,255,207,148,149,255,160,168,0,0,91,128,171,255,6,28,19,254,11,111,247,0,39,187,150,255,138,232,149,0,117,62,68,255,63,216,188,255,235,234,32,254,29,57,160,255,25,12,241,1,169,60,191,0,32,131,141,255,237,159,123,255,94,197,94,254,116,254,3,255,92,179,97,254,121,97,92,255,170,112,14,0,21,149,248,0,248,227,3,0,80,96,109,0,75,192,74,1,12,90,226,255,161,106,68,1,208,114,127,255,114,42,255,254,74,26,74,255,247,179,150,254,121,140,60,0,147,70,200,255,214,40,161,255,161,188,201,255,141,65,135,255,242,115,252,0,62,47,202,0,180,149,255,254,130,55,237,0,165,17,186,255,10,169,194,0,156,109,218,255,112,140,123,255,104,128,223,254,177,142,108,255,121,37,219,255,128,77,18,255,111,108,23,1,91,192,75,0,174,245,22,255,4,236,62,255,43,64,153,1,227,173,254,0,237,122,132,1,127,89,186,255,142,82,128,254,252,84,174,0,90,179,177,1,243,214,87,255,103,60,162,255,208,130,14,255,11,130,139,0,206,129,219,255,94,217,157,255,239,230,230,255,116,115,159,254,164,107,95,0,51,218,2,1,216,125,198,255,140,202,128,254,11,95,68,255,55,9,93,254,174,153,6,255,204,172,96,0,69,160,110,0,213,38,49,254,27,80,213,0,118,125,114,0,70,70,67,255,15,142,73,255,131,122,185,255,243,20,50,254,130,237,40,0,210,159,140,1,197,151,65,255,84,153,66,0,195,126,90,0,16,238,236,1,118,187,102,255,3,24,133,255,187,69,230,0,56,197,92,1,213,69,94,255,80,138,229,1,206,7,230,0,222,111,230,1,91,233,119,255,9,89,7,1,2,98,1,0,148,74,133,255,51,246,180,255,228,177,112,1,58,189,108,255,194,203,237,254,21,209,195,0,147,10,35,1,86,157,226,0,31,163,139,254,56,7,75,255,62,90,116,0,181,60,169,0,138,162,212,254,81,167,31,0,205,90,112,255,33,112,227,0,83,151,117,1,177,224,73,255,174,144,217,255,230,204,79,255,22,77,232,255,114,78,234,0,224,57,126,254,9,49,141,0,242,147,165,1,104,182,140,255,167,132,12,1,123,68,127,0,225,87,39,1,251,108,8,0,198,193,143,1,121,135,207,255,172,22,70,0,50,68,116,255,101,175,40,255,248,105,233,0,166,203,7,0,110,197,218,0,215,254,26,254,168,226,253,0,31,143,96,0,11,103,41,0,183,129,203,254,100,247,74,255,213,126,132,0,210,147,44,0,199,234,27,1,148,47,181,0,155,91,158,1,54,105,175,255,2,78,145,254,102,154,95,0,128,207,127,254,52,124,236,255,130,84,71,0,221,243,211,0,152,170,207,0,222,106,199,0,183,84,94,254,92,200,56,255,138,182,115,1,142,96,146,0,133,136,228,0,97,18,150,0,55,251,66,0,140,102,4,0,202,103,151,0,30,19,248,255,51,184,207,0,202,198,89,0,55,197,225,254,169,95,249,255,66,65,68,255,188,234,126,0,166,223,100,1,112,239,244,0,144,23,194,0,58,39,182,0,244,44,24,254,175,68,179,255,152,118,154,1,176,162,130,0,217,114,204,254,173,126,78,255,33,222,30,255,36,2,91,255,2,143,243,0,9,235,215,0,3,171,151,1,24,215,245,255,168,47,164,254,241,146,207,0,69,129,180,0,68,243,113,0,144,53,72,254,251,45,14,0,23,110,168,0,68,68,79,255,110,70,95,254,174,91,144,255,33,206,95,255,137,41,7,255,19,187,153,254,35,255,112,255,9,145,185,254,50,157,37,0,11,112,49,1,102,8,190,255,234,243,169,1,60,85,23,0,74,39,189,0,116,49,239,0,173,213,210,0,46,161,108,255,159,150,37,0,196,120,185,255,34,98,6,255,153,195,62,255,97,230,71,255,102,61,76,0,26,212,236,255,164,97,16,0,198,59,146,0,163,23,196,0,56,24,61,0,181,98,193,0,251,147,229,255,98,189,24,255,46,54,206,255,234,82,246,0,183,103,38,1,109,62,204,0,10,240,224,0,146,22,117,255,142,154,120,0,69,212,35,0,208,99,118,1,121,255,3,255,72,6,194,0,117,17,197,255,125,15,23,0,154,79,153,0,214,94,197,255,185,55,147,255,62,254,78,254,127,82,153,0,110,102,63,255,108,82,161,255,105,187,212,1,80,138,39,0,60,255,93,255,72,12,186,0,210,251,31,1,190,167,144,255,228,44,19,254,128,67,232,0,214,249,107,254,136,145,86,255,132,46,176,0,189,187,227,255,208,22,140,0,217,211,116,0,50,81,186,254,139,250,31,0,30,64,198,1,135,155,100,0,160,206,23,254,187,162,211,255,16,188,63,0,254,208,49,0,85,84,191,0,241,192,242,255,153,126,145,1,234,162,162,255,230,97,216,1,64,135,126,0,190,148,223,1,52,0,43,255,28,39,189,1,64,136,238,0,175,196,185,0,98,226,213,255,127,159,244,1,226,175,60,0,160,233,142,1,180,243,207,255,69,152,89,1,31,101,21,0,144,25,164,254,139,191,209,0,91,25,121,0,32,147,5,0,39,186,123,255,63,115,230,255,93,167,198,255,143,213,220,255,179,156,19,255,25,66,122,0,214,160,217,255,2,45,62,255,106,79,146,254,51,137,99,255,87,100,231,255,175,145,232,255,101,184,1,255,174,9,125,0,82,37,161,1,36,114,141,255,48,222,142,255,245,186,154,0,5,174,221,254,63,114,155,255,135,55,160,1,80,31,135,0,126,250,179,1,236,218,45,0,20,28,145,1,16,147,73,0,249,189,132,1,17,189,192,255,223,142,198,255,72,20,15,255,250,53,237,254,15,11,18,0,27,211,113,254,213,107,56,255,174,147,146,255,96,126,48,0,23,193,109,1,37,162,94,0,199,157,249,254,24,128,187,255,205,49,178,254,93,164,42,255,43,119,235,1,88,183,237,255,218,210,1,255,107,254,42,0,230,10,99,255,162,0,226,0,219,237,91,0,129,178,203,0,208,50,95,254,206,208,95,255,247,191,89,254,110,234,79,255,165,61,243,0,20,122,112,255,246,246,185,254,103,4,123,0,233,99,230,1,219,91,252,255,199,222,22,255,179,245,233,255,211,241,234,0,111,250,192,255,85,84,136,0,101,58,50,255,131,173,156,254,119,45,51,255,118,233,16,254,242,90,214,0,94,159,219,1,3,3,234,255,98,76,92,254,80,54,230,0,5,228,231,254,53,24,223,255,113,56,118,1,20,132,1,255,171,210,236,0,56,241,158,255,186,115,19,255,8,229,174,0,48,44,0,1,114,114,166,255,6,73,226,255,205,89,244,0,137,227,75,1,248,173,56,0,74,120,246,254,119,3,11,255,81,120,198,255,136,122,98,255,146,241,221,1,109,194,78,255,223,241,70,1,214,200,169,255,97,190,47,255,47,103,174,255,99,92,72,254,118,233,180,255,193,35,233,254,26,229,32,255,222,252,198,0,204,43,71,255,199,84,172,0,134,102,190,0,111,238,97,254,230,40,230,0,227,205,64,254,200,12,225,0,166,25,222,0,113,69,51,255,143,159,24,0,167,184,74,0,29,224,116,254,158,208,233,0,193,116,126,255,212,11,133,255,22,58,140,1,204,36,51,255,232,30,43,0,235,70,181,255,64,56,146,254,169,18,84,255,226,1,13,255,200,50,176,255,52,213,245,254,168,209,97,0,191,71,55,0,34,78,156,0,232,144,58,1,185,74,189,0,186,142,149,254,64,69,127,255,161,203,147,255,176,151,191,0,136,231,203,254,163,182,137,0,161,126,251,254,233,32,66,0,68,207,66,0,30,28,37,0,93,114,96,1,254,92,247,255,44,171,69,0,202,119,11,255,188,118,50,1,255,83,136,255,71,82,26,0,70,227,2,0,32,235,121,1,181,41,154,0,71,134,229,254,202,255,36,0,41,152,5,0,154,63,73,255,34,182,124,0,121,221,150,255,26,204,213,1,41,172,87,0,90,157,146,255,109,130,20,0,71,107,200,255,243,102,189,0,1,195,145,254,46,88,117,0,8,206,227,0,191,110,253,255,109,128,20,254,134,85,51,255,137,177,112,1,216,34,22,255,131,16,208,255,121,149,170,0,114,19,23,1,166,80,31,255,113,240,122,0,232,179,250,0,68,110,180,254,210,170,119,0,223,108,164,255,207,79,233,255,27,229,226,254,209,98,81,255,79,68,7,0,131,185,100,0,170,29,162,255,17,162,107,255,57,21,11,1,100,200,181,255,127,65,166,1,165,134,204,0,104,167,168,0,1,164,79,0,146,135,59,1,70,50,128,255,102,119,13,254,227,6,135,0,162,142,179,255,160,100,222,0,27,224,219,1,158,93,195,255,234,141,137,0,16,24,125,255,238,206,47,255,97,17,98,255,116,110,12,255,96,115,77,0,91,227,232,255,248,254,79,255,92,229,6,254,88,198,139,0,206,75,129,0,250,77,206,255,141,244,123,1,138,69,220,0,32,151,6,1,131,167,22,255,237,68,167,254,199,189,150,0,163,171,138,255,51,188,6,255,95,29,137,254,148,226,179,0,181,107,208,255,134,31,82,255,151,101,45,255,129,202,225,0,224,72,147,0,48,138,151,255,195,64,206,254,237,218,158,0,106,29,137,254,253,189,233,255,103,15,17,255,194,97,255,0,178,45,169,254,198,225,155,0,39,48,117,255,135,106,115,0,97,38,181,0,150,47,65,255,83,130,229,254,246,38,129,0,92,239,154,254,91,99,127,0,161,111,33,255,238,217,242,255,131,185,195,255,213,191,158,255,41,150,218,0,132,169,131,0,89,84,252,1,171,70,128,255,163,248,203,254,1,50,180,255,124,76,85,1,251,111,80,0,99,66,239,255,154,237,182,255,221,126,133,254,74,204,99,255,65,147,119,255,99,56,167,255,79,248,149,255,116,155,228,255,237,43,14,254,69,137,11,255,22,250,241,1,91,122,143,255,205,249,243,0,212,26,60,255,48,182,176,1,48,23,191,255,203,121,152,254,45,74,213,255,62,90,18,254,245,163,230,255,185,106,116,255,83,35,159,0,12,33,2,255,80,34,62,0,16,87,174,255,173,101,85,0,202,36,81,254,160,69,204,255,64,225,187,0,58,206,94,0,86,144,47,0,229,86,245,0,63,145,190,1,37,5,39,0,109,251,26,0,137,147,234,0,162,121,145,255,144,116,206,255,197,232,185,255,183,190,140,255,73,12,254,255,139,20,242,255,170,90,239,255,97,66,187,255,245,181,135,254,222,136,52,0,245,5,51,254,203,47,78,0,152,101,216,0,73,23,125,0,254,96,33,1,235,210,73,255,43,209,88,1,7,129,109,0,122,104,228,254,170,242,203,0,242,204,135,255,202,28,233,255,65,6,127,0,159,144,71,0,100,140,95,0,78,150,13,0,251,107,118,1,182,58,125,255,1,38,108,255,141,189,209,255,8,155,125,1,113,163,91,255,121,79,190,255,134,239,108,255,76,47,248,0,163,228,239,0,17,111,10,0,88,149,75,255,215,235,239,0,167,159,24,255,47,151,108,255,107,209,188,0,233,231,99,254,28,202,148,255,174,35,138,255,110,24,68,255,2,69,181,0,107,102,82,0,102,237,7,0,92,36,237,255,221,162,83,1,55,202,6,255,135,234,135,255,24,250,222,0,65,94,168,254,245,248,210,255,167,108,201,254,255,161,111,0,205,8,254,0,136,13,116,0,100,176,132,255,43,215,126,255,177,133,130,255,158,79,148,0,67,224,37,1,12,206,21,255,62,34,110,1,237,104,175,255,80,132,111,255,142,174,72,0,84,229,180,254,105,179,140,0,64,248,15,255,233,138,16,0,245,67,123,254,218,121,212,255,63,95,218,1,213,133,137,255,143,182,82,255,48,28,11,0,244,114,141,1,209,175,76,255,157,181,150,255,186,229,3,255,164,157,111,1,231,189,139,0,119,202,190,255,218,106,64,255,68,235,63,254,96,26,172,255,187,47,11,1,215,18,251,255,81,84,89,0,68,58,128,0,94,113,5,1,92,129,208,255,97,15,83,254,9,28,188,0,239,9,164,0,60,205,152,0,192,163,98,255,184,18,60,0,217,182,139,0,109,59,120,255,4,192,251,0,169,210,240,255,37,172,92,254,148,211,245,255,179,65,52,0,253,13,115,0,185,174,206,1,114,188,149,255,237,90,173,0,43,199,192,255,88,108,113,0,52,35,76,0,66,25,148,255,221,4,7,255,151,241,114,255,190,209,232,0,98,50,199,0,151,150,213,255,18,74,36,1,53,40,7,0,19,135,65,255,26,172,69,0,174,237,85,0,99,95,41,0,3,56,16,0,39,160,177,255,200,106,218,254,185,68,84,255,91,186,61,254,67,143,141,255,13,244,166,255,99,114,198,0,199,110,163,255,193,18,186,0,124,239,246,1,110,68,22,0,2,235,46,1,212,60,107,0,105,42,105,1,14,230,152,0,7,5,131,0,141,104,154,255,213,3,6,0,131,228,162,255,179,100,28,1,231,123,85,255,206,14,223,1,253,96,230,0,38,152,149,1,98,137,122,0,214,205,3,255,226,152,179,255,6,133,137,0,158,69,140,255,113,162,154,255,180,243,172,255,27,189,115,255,143,46,220,255,213,134,225,255,126,29,69,0,188,43,137,1,242,70,9,0,90,204,255,255,231,170,147,0,23,56,19,254,56,125,157,255,48,179,218,255,79,182,253,255,38,212,191,1,41,235,124,0,96,151,28,0,135,148,190,0,205,249,39,254,52,96,136,255,212,44,136,255,67,209,131,255,252,130,23,255,219,128,20,255,198,129,118,0,108,101,11,0,178,5,146,1,62,7,100,255,181,236,94,254,28,26,164,0,76,22,112,255,120,102,79,0,202,192,229,1,200,176,215,0,41,64,244,255,206,184,78,0,167,45,63,1,160,35,0,255,59,12,142,255,204,9,144,255,219,94,229,1,122,27,112,0,189,105,109,255,64,208,74,255,251,127,55,1,2,226,198,0,44,76,209,0,151,152,77,255,210,23,46,1,201,171,69,255,44,211,231,0,190,37,224,255,245,196,62,255,169,181,222,255,34,211,17,0,119,241,197,255,229,35,152,1,21,69,40,255,178,226,161,0,148,179,193,0,219,194,254,1,40,206,51,255,231,92,250,1,67,153,170,0,21,148,241,0,170,69,82,255,121,18,231,255,92,114,3,0,184,62,230,0,225,201,87,255,146,96,162,255,181,242,220,0,173,187,221,1,226,62,170,255,56,126,217,1,117,13,227,255,179,44,239,0,157,141,155,255,144,221,83,0,235,209,208,0,42,17,165,1,251,81,133,0,124,245,201,254,97,211,24,255,83,214,166,0,154,36,9,255,248,47,127,0,90,219,140,255,161,217,38,254,212,147,63,255,66,84,148,1,207,3,1,0,230,134,89,1,127,78,122,255,224,155,1,255,82,136,74,0,178,156,208,255,186,25,49,255,222,3,210,1,229,150,190,255,85,162,52,255,41,84,141,255,73,123,84,254,93,17,150,0,119,19,28,1,32,22,215,255,28,23,204,255,142,241,52,255,228,52,125,0,29,76,207,0,215,167,250,254,175,164,230,0,55,207,105,1,109,187,245,255,161,44,220,1,41,101,128,255,167,16,94,0,93,214,107,255,118,72,0,254,80,61,234,255,121,175,125,0,139,169,251,0,97,39,147,254,250,196,49,255,165,179,110,254,223,70,187,255,22,142,125,1,154,179,138,255,118,176,42,1,10,174,153,0,156,92,102,0,168,13,161,255,143,16,32,0,250,197,180,255,203,163,44,1,87,32,36,0,161,153,20,255,123,252,15,0,25,227,80,0,60,88,142,0,17,22,201,1,154,205,77,255,39,63,47,0,8,122,141,0,128,23,182,254,204,39,19,255,4,112,29,255,23,36,140,255,210,234,116,254,53,50,63,255,121,171,104,255,160,219,94,0,87,82,14,254,231,42,5,0,165,139,127,254,86,78,38,0,130,60,66,254,203,30,45,255],"i8",S,p.GLOBAL_BASE+20480),x([46,196,122,1,249,53,162,255,136,143,103,254,215,210,114,0,231,7,160,254,169,152,42,255,111,45,246,0,142,131,135,255,131,71,204,255,36,226,11,0,0,28,242,255,225,138,213,255,247,46,216,254,245,3,183,0,108,252,74,1,206,26,48,255,205,54,246,255,211,198,36,255,121,35,50,0,52,216,202,255,38,139,129,254,242,73,148,0,67,231,141,255,42,47,204,0,78,116,25,1,4,225,191,255,6,147,228,0,58,88,177,0,122,165,229,255,252,83,201,255,224,167,96,1,177,184,158,255,242,105,179,1,248,198,240,0,133,66,203,1,254,36,47,0,45,24,115,255,119,62,254,0,196,225,186,254,123,141,172,0,26,85,41,255,226,111,183,0,213,231,151,0,4,59,7,255,238,138,148,0,66,147,33,255,31,246,141,255,209,141,116,255,104,112,31,0,88,161,172,0,83,215,230,254,47,111,151,0,45,38,52,1,132,45,204,0,138,128,109,254,233,117,134,255,243,190,173,254,241,236,240,0,82,127,236,254,40,223,161,255,110,182,225,255,123,174,239,0,135,242,145,1,51,209,154,0,150,3,115,254,217,164,252,255,55,156,69,1,84,94,255,255,232,73,45,1,20,19,212,255,96,197,59,254,96,251,33,0,38,199,73,1,64,172,247,255,117,116,56,255,228,17,18,0,62,138,103,1,246,229,164,255,244,118,201,254,86,32,159,255,109,34,137,1,85,211,186,0,10,193,193,254,122,194,177,0,122,238,102,255,162,218,171,0,108,217,161,1,158,170,34,0,176,47,155,1,181,228,11,255,8,156,0,0,16,75,93,0,206,98,255,1,58,154,35,0,12,243,184,254,67,117,66,255,230,229,123,0,201,42,110,0,134,228,178,254,186,108,118,255,58,19,154,255,82,169,62,255,114,143,115,1,239,196,50,255,173,48,193,255,147,2,84,255,150,134,147,254,95,232,73,0,109,227,52,254,191,137,10,0,40,204,30,254,76,52,97,255,164,235,126,0,254,124,188,0,74,182,21,1,121,29,35,255,241,30,7,254,85,218,214,255,7,84,150,254,81,27,117,255,160,159,152,254,66,24,221,255,227,10,60,1,141,135,102,0,208,189,150,1,117,179,92,0,132,22,136,255,120,199,28,0,21,129,79,254,182,9,65,0,218,163,169,0,246,147,198,255,107,38,144,1,78,175,205,255,214,5,250,254,47,88,29,255,164,47,204,255,43,55,6,255,131,134,207,254,116,100,214,0,96,140,75,1,106,220,144,0,195,32,28,1,172,81,5,255,199,179,52,255,37,84,203,0,170,112,174,0,11,4,91,0,69,244,27,1,117,131,92,0,33,152,175,255,140,153,107,255,251,135,43,254,87,138,4,255,198,234,147,254,121,152,84,255,205,101,155,1,157,9,25,0,72,106,17,254,108,153,0,255,189,229,186,0,193,8,176,255,174,149,209,0,238,130,29,0,233,214,126,1,61,226,102,0,57,163,4,1,198,111,51,255,45,79,78,1,115,210,10,255,218,9,25,255,158,139,198,255,211,82,187,254,80,133,83,0,157,129,230,1,243,133,134,255,40,136,16,0,77,107,79,255,183,85,92,1,177,204,202,0,163,71,147,255,152,69,190,0,172,51,188,1,250,210,172,255,211,242,113,1,89,89,26,255,64,66,111,254,116,152,42,0,161,39,27,255,54,80,254,0,106,209,115,1,103,124,97,0,221,230,98,255,31,231,6,0,178,192,120,254,15,217,203,255,124,158,79,0,112,145,247,0,92,250,48,1,163,181,193,255,37,47,142,254,144,189,165,255,46,146,240,0,6,75,128,0,41,157,200,254,87,121,213,0,1,113,236,0,5,45,250,0,144,12,82,0,31,108,231,0,225,239,119,255,167,7,189,255,187,228,132,255,110,189,34,0,94,44,204,1,162,52,197,0,78,188,241,254,57,20,141,0,244,146,47,1,206,100,51,0,125,107,148,254,27,195,77,0,152,253,90,1,7,143,144,255,51,37,31,0,34,119,38,255,7,197,118,0,153,188,211,0,151,20,116,254,245,65,52,255,180,253,110,1,47,177,209,0,161,99,17,255,118,222,202,0,125,179,252,1,123,54,126,255,145,57,191,0,55,186,121,0,10,243,138,0,205,211,229,255,125,156,241,254,148,156,185,255,227,19,188,255,124,41,32,255,31,34,206,254,17,57,83,0,204,22,37,255,42,96,98,0,119,102,184,1,3,190,28,0,110,82,218,255,200,204,192,255,201,145,118,0,117,204,146,0,132,32,98,1,192,194,121,0,106,161,248,1,237,88,124,0,23,212,26,0,205,171,90,255,248,48,216,1,141,37,230,255,124,203,0,254,158,168,30,255,214,248,21,0,112,187,7,255,75,133,239,255,74,227,243,255,250,147,70,0,214,120,162,0,167,9,179,255,22,158,18,0,218,77,209,1,97,109,81,255,244,33,179,255,57,52,57,255,65,172,210,255,249,71,209,255,142,169,238,0,158,189,153,255,174,254,103,254,98,33,14,0,141,76,230,255,113,139,52,255,15,58,212,0,168,215,201,255,248,204,215,1,223,68,160,255,57,154,183,254,47,231,121,0,106,166,137,0,81,136,138,0,165,43,51,0,231,139,61,0,57,95,59,254,118,98,25,255,151,63,236,1,94,190,250,255,169,185,114,1,5,250,58,255,75,105,97,1,215,223,134,0,113,99,163,1,128,62,112,0,99,106,147,0,163,195,10,0,33,205,182,0,214,14,174,255,129,38,231,255,53,182,223,0,98,42,159,255,247,13,40,0,188,210,177,1,6,21,0,255,255,61,148,254,137,45,129,255,89,26,116,254,126,38,114,0,251,50,242,254,121,134,128,255,204,249,167,254,165,235,215,0,202,177,243,0,133,141,62,0,240,130,190,1,110,175,255,0,0,20,146,1,37,210,121,255,7,39,130,0,142,250,84,255,141,200,207,0,9,95,104,255,11,244,174,0,134,232,126,0,167,1,123,254,16,193,149,255,232,233,239,1,213,70,112,255,252,116,160,254,242,222,220,255,205,85,227,0,7,185,58,0,118,247,63,1,116,77,177,255,62,245,200,254,63,18,37,255,107,53,232,254,50,221,211,0,162,219,7,254,2,94,43,0,182,62,182,254,160,78,200,255,135,140,170,0,235,184,228,0,175,53,138,254,80,58,77,255,152,201,2,1,63,196,34,0,5,30,184,0,171,176,154,0,121,59,206,0,38,99,39,0,172,80,77,254,0,134,151,0,186,33,241,254,94,253,223,255,44,114,252,0,108,126,57,255,201,40,13,255,39,229,27,255,39,239,23,1,151,121,51,255,153,150,248,0,10,234,174,255,118,246,4,254,200,245,38,0,69,161,242,1,16,178,150,0,113,56,130,0,171,31,105,0,26,88,108,255,49,42,106,0,251,169,66,0,69,93,149,0,20,57,254,0,164,25,111,0,90,188,90,255,204,4,197,0,40,213,50,1,212,96,132,255,88,138,180,254,228,146,124,255,184,246,247,0,65,117,86,255,253,102,210,254,254,121,36,0,137,115,3,255,60,24,216,0,134,18,29,0,59,226,97,0,176,142,71,0,7,209,161,0,189,84,51,254,155,250,72,0,213,84,235,255,45,222,224,0,238,148,143,255,170,42,53,255,78,167,117,0,186,0,40,255,125,177,103,255,69,225,66,0,227,7,88,1,75,172,6,0,169,45,227,1,16,36,70,255,50,2,9,255,139,193,22,0,143,183,231,254,218,69,50,0,236,56,161,1,213,131,42,0,138,145,44,254,136,229,40,255,49,63,35,255,61,145,245,255,101,192,2,254,232,167,113,0,152,104,38,1,121,185,218,0,121,139,211,254,119,240,35,0,65,189,217,254,187,179,162,255,160,187,230,0,62,248,14,255,60,78,97,0,255,247,163,255,225,59,91,255,107,71,58,255,241,47,33,1,50,117,236,0,219,177,63,254,244,90,179,0,35,194,215,255,189,67,50,255,23,135,129,0,104,189,37,255,185,57,194,0,35,62,231,255,220,248,108,0,12,231,178,0,143,80,91,1,131,93,101,255,144,39,2,1,255,250,178,0,5,17,236,254,139,32,46,0,204,188,38,254,245,115,52,255,191,113,73,254,191,108,69,255,22,69,245,1,23,203,178,0,170,99,170,0,65,248,111,0,37,108,153,255,64,37,69,0,0,88,62,254,89,148,144,255,191,68,224,1,241,39,53,0,41,203,237,255,145,126,194,255,221,42,253,255,25,99,151,0,97,253,223,1,74,115,49,255,6,175,72,255,59,176,203,0,124,183,249,1,228,228,99,0,129,12,207,254,168,192,195,255,204,176,16,254,152,234,171,0,77,37,85,255,33,120,135,255,142,194,227,1,31,214,58,0,213,187,125,255,232,46,60,255,190,116,42,254,151,178,19,255,51,62,237,254,204,236,193,0,194,232,60,0,172,34,157,255,189,16,184,254,103,3,95,255,141,233,36,254,41,25,11,255,21,195,166,0,118,245,45,0,67,213,149,255,159,12,18,255,187,164,227,1,160,25,5,0,12,78,195,1,43,197,225,0,48,142,41,254,196,155,60,255,223,199,18,1,145,136,156,0,252,117,169,254,145,226,238,0,239,23,107,0,109,181,188,255,230,112,49,254,73,170,237,255,231,183,227,255,80,220,20,0,194,107,127,1,127,205,101,0,46,52,197,1,210,171,36,255,88,3,90,255,56,151,141,0,96,187,255,255,42,78,200,0,254,70,70,1,244,125,168,0,204,68,138,1,124,215,70,0,102,66,200,254,17,52,228,0,117,220,143,254,203,248,123,0,56,18,174,255,186,151,164,255,51,232,208,1,160,228,43,255,249,29,25,1,68,190,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,136,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,45,62,98,117,102,108,101,110,32,60,61,32,66,76,65,75,69,50,66,95,66,76,79,67,75,66,89,84,69,83,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,47,98,108,97,107,101,50,98,47,114,101,102,47,98,108,97,107,101,50,98,45,114,101,102,46,99,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,95,102,105,110,97,108,0,111,117,116,108,101,110,32,60,61,32,85,73,78,84,56,95,77,65,88,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,47,98,108,97,107,101,50,98,47,114,101,102,47,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,46,99,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,0,107,101,121,108,101,110,32,60,61,32,85,73,78,84,56,95,77,65,88,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,105,110,105,116,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,102,105,110,97,108,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,83,105,103,69,100,50,53,53,49,57,32,110,111,32,69,100,50,53,53,49,57,32,99,111,108,108,105,115,105,111,110,115,1,0,123,32,114,101,116,117,114,110,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,40,41,59,32,125,0,123,32,105,102,32,40,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,116,114,121,32,123,32,118,97,114,32,119,105,110,100,111,119,95,32,61,32,34,111,98,106,101,99,116,34,32,61,61,61,32,116,121,112,101,111,102,32,119,105,110,100,111,119,32,63,32,119,105,110,100,111,119,32,58,32,115,101,108,102,44,32,99,114,121,112,116,111,95,32,61,32,116,121,112,101,111,102,32,119,105,110,100,111,119,95,46,99,114,121,112,116,111,32,33,61,61,32,34,117,110,100,101,102,105,110,101,100,34,32,63,32,119,105,110,100,111,119,95,46,99,114,121,112,116,111,32,58,32,119,105,110,100,111,119,95,46,109,115,67,114,121,112,116,111,44,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,118,97,114,32,98,117,102,32,61,32,110,101,119,32,85,105,110,116,51,50,65,114,114,97,121,40,49,41,59,32,99,114,121,112,116,111,95,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,115,40,98,117,102,41,59,32,114,101,116,117,114,110,32,98,117,102,91,48,93,32,62,62,62,32,48,59,32,125,59,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,40,41,59,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,116,114,121,32,123,32,118,97,114,32,99,114,121,112,116,111,32,61,32,114,101,113,117,105,114,101,40,39,99,114,121,112,116,111,39,41,44,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,118,97,114,32,98,117,102,32,61,32,99,114,121,112,116,111,46,114,97,110,100,111,109,66,121,116,101,115,40,52,41,59,32,114,101,116,117,114,110,32,40,98,117,102,91,48,93,32,60,60,32,50,52,32,124,32,98,117,102,91,49,93,32,60,60,32,49,54,32,124,32,98,117,102,91,50,93,32,60,60,32,56,32,124,32,98,117,102,91,51,93,41,32,62,62,62,32,48,59,32,125,59,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,40,41,59,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,116,104,114,111,119,32,39,78,111,32,115,101,99,117,114,101,32,114,97,110,100,111,109,32,110,117,109,98,101,114,32,103,101,110,101,114,97,116,111,114,32,102,111,117,110,100,39,59,32,125,32,125,32,125,32,125,0,76,105,98,115,111,100,105,117,109,68,82,71,98,117,102,95,108,101,110,32,60,61,32,83,73,90,69,95,77,65,88,0,114,97,110,100,111,109,98,121,116,101,115,47,114,97,110,100,111,109,98,121,116,101,115,46,99,0,114,97,110,100,111,109,98,121,116,101,115,0,49,46,48,46,49,51,0],"i8",S,p.GLOBAL_BASE+30720);var ke=Y;function Ee(e){return i.___errno_location&&(q[i.___errno_location()>>2]=e),e}Y+=16,i._bitshift64Ashr=Be,i._i64Subtract=je,i._i64Add=Le,i._memset=Re,i._bitshift64Lshr=Me,i._bitshift64Shl=Pe,i._memcpy=Te,i.___muldsi3=Ce,i.___muldi3=Ne;var Se={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};i._sbrk=Ie,i._memmove=qe,W=x(1,"i32",E),G=(V=p.alignMemory(Y))+Q,X=p.alignMemory(G),q[W>>2]=X,H=!0,i.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},i.asmLibraryArg={abort:He,assert:v,enlargeMemory:$,getTotalMemory:function(){return ee},abortOnCannotGrowMemory:J,_emscripten_asm_const_i:function(e){return we[e]()},___assert_fail:function(e,t,r,n){throw g=!0,"Assertion failed: "+A(e)+", at: "+[t?A(t):"unknown filename",r,n?A(n):"unknown function"]+" at "+C()},_abort:function(){i.abort()},___setErrNo:Ee,_emscripten_memcpy_big:function(e,t,r){return N.set(N.subarray(t,t+r),e),e},_emscripten_asm_const_v:function(e){return we[e]()},_sysconf:function(e){switch(e){case 30:return Z;case 85:return N.length/Z;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:return 200809;case 79:return 0;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 Ee(Se.EINVAL),-1},DYNAMICTOP_PTR:W,tempDoublePtr:ke,ABORT:g,STACKTOP:V,STACK_MAX:G};var xe,Ae=function(e,t,r){"use asm";var n=new e.Int8Array(r);var i=new e.Int16Array(r);var a=new e.Int32Array(r);var o=new e.Uint8Array(r);var s=new e.Uint16Array(r);var c=new e.Uint32Array(r);var u=new e.Float32Array(r);var f=new e.Float64Array(r);var h=t.DYNAMICTOP_PTR|0;var l=t.tempDoublePtr|0;var d=t.ABORT|0;var p=t.STACKTOP|0;var b=t.STACK_MAX|0;var _=0;var y=0;var m=0;var g=0;var v=e.NaN,w=e.Infinity;var k=0,E=0,S=0,x=0,A=0.0;var M=0;var I=e.Math.floor;var T=e.Math.abs;var z=e.Math.sqrt;var B=e.Math.pow;var R=e.Math.cos;var C=e.Math.sin;var O=e.Math.tan;var j=e.Math.acos;var N=e.Math.asin;var P=e.Math.atan;var L=e.Math.atan2;var q=e.Math.exp;var U=e.Math.log;var D=e.Math.ceil;var K=e.Math.imul;var F=e.Math.min;var Y=e.Math.max;var H=e.Math.clz32;var V=t.abort;var G=t.assert;var X=t.enlargeMemory;var W=t.getTotalMemory;var Z=t.abortOnCannotGrowMemory;var J=t._emscripten_asm_const_i;var $=t.___assert_fail;var Q=t._abort;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var re=t._emscripten_asm_const_v;var ne=t._sysconf;var ie=0.0;function ae(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0;i=p;o=p=p+63&-64;p=p+256|0;r=0;do{s=Dr(t+(r<<3)|0)|0;n=o+128+(r<<3)|0;a[n>>2]=s;a[n+4>>2]=M;r=r+1|0}while((r|0)!=16);r=o;t=e;n=r+64|0;do{a[r>>2]=a[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(n|0));a[o+88>>2]=1595750129;a[o+88+4>>2]=-1521486534;re=a[e+64>>2]^-1377402159;y=a[e+64+4>>2]^1359893119;s=a[e+72>>2]^725511199;k=a[e+72+4>>2]^-1694144372;l=a[e+80>>2]^-79577749;m=a[e+80+4>>2]^528734635;N=a[e+88>>2]^327033209;te=a[e+88+4>>2]^1541459225;a[o+120>>2]=N;a[o+120+4>>2]=te;v=a[o+32>>2]|0;n=a[o+32+4>>2]|0;q=Tn(v|0,n|0,a[o>>2]|0,a[o+4>>2]|0)|0;q=Tn(q|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;r=M;y=Gr(re^q,y^r,32)|0;re=M;G=Tn(y|0,re|0,-205731576,1779033703)|0;U=M;n=Gr(v^G,n^U,24)|0;v=M;r=Tn(q|0,r|0,n|0,v|0)|0;q=o+128+8|0;r=Tn(r|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;F=M;a[o>>2]=r;a[o+4>>2]=F;re=Gr(y^r,re^F,16)|0;y=M;a[o+96>>2]=re;a[o+96+4>>2]=y;y=Tn(G|0,U|0,re|0,y|0)|0;re=M;a[o+64>>2]=y;a[o+64+4>>2]=re;re=Gr(n^y,v^re,63)|0;a[o+32>>2]=re;a[o+32+4>>2]=M;re=a[o+40>>2]|0;v=a[o+40+4>>2]|0;y=Tn(re|0,v|0,a[o+8>>2]|0,a[o+8+4>>2]|0)|0;n=o+128+16|0;y=Tn(y|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;U=M;k=Gr(s^y,k^U,32)|0;s=M;G=Tn(k|0,s|0,-2067093701,-1150833019)|0;T=M;v=Gr(re^G,v^T,24)|0;re=M;U=Tn(y|0,U|0,v|0,re|0)|0;y=o+128+24|0;U=Tn(U|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;E=M;s=Gr(k^U,s^E,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;T=Tn(G|0,T|0,s|0,k|0)|0;G=M;a[o+72>>2]=T;a[o+72+4>>2]=G;G=Gr(v^T,re^G,63)|0;re=M;T=a[o+48>>2]|0;v=a[o+48+4>>2]|0;g=Tn(T|0,v|0,a[o+16>>2]|0,a[o+16+4>>2]|0)|0;W=o+128+32|0;g=Tn(g|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;c=M;m=Gr(l^g,m^c,32)|0;l=M;I=Tn(m|0,l|0,-23791573,1013904242)|0;t=M;v=Gr(T^I,v^t,24)|0;T=M;c=Tn(g|0,c|0,v|0,T|0)|0;g=o+128+40|0;c=Tn(c|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;D=M;l=Gr(m^c,l^D,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;t=Tn(I|0,t|0,l|0,m|0)|0;I=M;T=Gr(v^t,T^I,63)|0;v=M;h=a[o+56>>2]|0;d=a[o+56+4>>2]|0;w=Tn(h|0,d|0,a[o+24>>2]|0,a[o+24+4>>2]|0)|0;_=o+128+48|0;w=Tn(w|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;ee=M;te=Gr(N^w,te^ee,32)|0;N=M;A=Tn(a[o+88>>2]|0,a[o+88+4>>2]|0,te|0,N|0)|0;B=M;d=Gr(h^A,d^B,24)|0;h=M;ee=Tn(w|0,ee|0,d|0,h|0)|0;w=o+128+56|0;ee=Tn(ee|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;S=M;N=Gr(te^ee,N^S,16)|0;te=M;B=Tn(A|0,B|0,N|0,te|0)|0;A=M;h=Gr(d^B,h^A,63)|0;d=M;F=Tn(G|0,re|0,r|0,F|0)|0;r=o+128+64|0;F=Tn(F|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;Y=M;te=Gr(N^F,te^Y,32)|0;N=M;I=Tn(t|0,I|0,te|0,N|0)|0;t=M;re=Gr(G^I,re^t,24)|0;G=M;Y=Tn(F|0,Y|0,re|0,G|0)|0;F=o+128+72|0;Y=Tn(Y|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;Q=M;N=Gr(te^Y,N^Q,16)|0;te=M;a[o+120>>2]=N;a[o+120+4>>2]=te;te=Tn(I|0,t|0,N|0,te|0)|0;N=M;a[o+80>>2]=te;a[o+80+4>>2]=N;N=Gr(re^te,G^N,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;E=Tn(T|0,v|0,U|0,E|0)|0;U=o+128+80|0;te=a[U>>2]|0;re=a[U+4>>2]|0;E=Tn(E|0,M|0,te|0,re|0)|0;t=M;I=Gr(a[o+96>>2]^E,a[o+96+4>>2]^t,32)|0;x=M;A=Tn(B|0,A|0,I|0,x|0)|0;B=M;v=Gr(T^A,v^B,24)|0;T=M;t=Tn(E|0,t|0,v|0,T|0)|0;E=o+128+88|0;t=Tn(t|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;L=M;x=Gr(I^t,x^L,16)|0;I=M;B=Tn(A|0,B|0,x|0,I|0)|0;A=M;a[o+88>>2]=B;a[o+88+4>>2]=A;A=Gr(v^B,T^A,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;D=Tn(h|0,d|0,c|0,D|0)|0;c=o+128+96|0;D=Tn(D|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;B=M;k=Gr(s^D,k^B,32)|0;s=M;v=Tn(a[o+64>>2]|0,a[o+64+4>>2]|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;B=Tn(D|0,B|0,d|0,h|0)|0;D=o+128+104|0;ne=a[D>>2]|0;$=a[D+4>>2]|0;B=Tn(B|0,M|0,ne|0,$|0)|0;z=M;s=Gr(k^B,s^z,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;f=a[o+32>>2]|0;oe=a[o+32+4>>2]|0;S=Tn(f|0,oe|0,ee|0,S|0)|0;ee=o+128+112|0;H=a[ee>>2]|0;u=a[ee+4>>2]|0;S=Tn(S|0,M|0,H|0,u|0)|0;ce=M;m=Gr(l^S,m^ce,32)|0;l=M;O=Tn(a[o+72>>2]|0,a[o+72+4>>2]|0,m|0,l|0)|0;V=M;oe=Gr(f^O,oe^V,24)|0;f=M;ce=Tn(S|0,ce|0,oe|0,f|0)|0;S=o+128+120|0;C=a[S>>2]|0;ae=a[S+4>>2]|0;ce=Tn(ce|0,M|0,C|0,ae|0)|0;K=M;l=Gr(m^ce,l^K,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;f=Gr(oe^V,f^O,63)|0;oe=M;Q=Tn(Y|0,Q|0,f|0,oe|0)|0;u=Tn(Q|0,M|0,H|0,u|0)|0;H=M;I=Gr(x^u,I^H,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;oe=Gr(f^v,oe^b,24)|0;f=M;H=Tn(u|0,H|0,oe|0,f|0)|0;re=Tn(H|0,M|0,te|0,re|0)|0;te=M;x=Gr(I^re,x^te,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;f=Gr(oe^b,f^v,63)|0;a[o+32>>2]=f;a[o+32+4>>2]=M;L=Tn(N|0,G|0,t|0,L|0)|0;L=Tn(L|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;t=M;k=Gr(s^L,k^t,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;t=Tn(L|0,t|0,G|0,N|0)|0;t=Tn(t|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;L=M;s=Gr(k^t,s^L,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;z=Tn(A|0,T|0,B|0,z|0)|0;z=Tn(z|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;B=M;m=Gr(l^z,m^B,32)|0;l=M;f=Tn(a[o+80>>2]|0,a[o+80+4>>2]|0,m|0,l|0)|0;oe=M;T=Gr(A^f,T^oe,24)|0;A=M;B=Tn(z|0,B|0,T|0,A|0)|0;ae=Tn(B|0,M|0,C|0,ae|0)|0;C=M;l=Gr(m^ae,l^C,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;oe=Tn(f|0,oe|0,l|0,m|0)|0;f=M;A=Gr(T^oe,A^f,63)|0;T=M;K=Tn(h|0,d|0,ce|0,K|0)|0;$=Tn(K|0,M|0,ne|0,$|0)|0;ne=M;K=Gr(a[o+120>>2]^$,a[o+120+4>>2]^ne,32)|0;ce=M;B=Tn(a[o+88>>2]|0,a[o+88+4>>2]|0,K|0,ce|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;ne=Tn($|0,ne|0,d|0,h|0)|0;ne=Tn(ne|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;$=M;ce=Gr(K^ne,ce^$,16)|0;K=M;z=Tn(B|0,z|0,ce|0,K|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;te=Tn(N|0,G|0,re|0,te|0)|0;te=Tn(te|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;re=M;K=Gr(ce^te,K^re,32)|0;ce=M;f=Tn(oe|0,f|0,K|0,ce|0)|0;oe=M;G=Gr(N^f,G^oe,24)|0;N=M;re=Tn(te|0,re|0,G|0,N|0)|0;te=a[c>>2]|0;H=a[c+4>>2]|0;re=Tn(re|0,M|0,te|0,H|0)|0;u=M;ce=Gr(K^re,ce^u,16)|0;K=M;a[o+120>>2]=ce;a[o+120+4>>2]=K;K=Tn(f|0,oe|0,ce|0,K|0)|0;ce=M;a[o+80>>2]=K;a[o+80+4>>2]=ce;N=Gr(G^K,N^ce,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;L=Tn(A|0,T|0,t|0,L|0)|0;t=a[o+128>>2]|0;oe=a[o+128+4>>2]|0;L=Tn(L|0,M|0,t|0,oe|0)|0;f=M;I=Gr(x^L,I^f,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;f=Tn(L|0,f|0,T|0,A|0)|0;L=a[n>>2]|0;Q=a[n+4>>2]|0;f=Tn(f|0,M|0,L|0,Q|0)|0;Y=M;x=Gr(I^f,x^Y,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;C=Tn(h|0,d|0,ae|0,C|0)|0;ae=a[E>>2]|0;se=a[E+4>>2]|0;C=Tn(C|0,M|0,ae|0,se|0)|0;P=M;k=Gr(s^C,k^P,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;P=Tn(C|0,P|0,d|0,h|0)|0;P=Tn(P|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;C=M;s=Gr(k^P,s^C,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;J=a[o+32>>2]|0;X=a[o+32+4>>2]|0;$=Tn(J|0,X|0,ne|0,$|0)|0;ne=a[g>>2]|0;R=a[g+4>>2]|0;$=Tn($|0,M|0,ne|0,R|0)|0;ie=M;m=Gr(l^$,m^ie,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;X=Gr(J^O,X^V,24)|0;J=M;ie=Tn($|0,ie|0,X|0,J|0)|0;$=a[y>>2]|0;j=a[y+4>>2]|0;ie=Tn(ie|0,M|0,$|0,j|0)|0;Z=M;l=Gr(m^ie,l^Z,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;J=Gr(X^V,J^O,63)|0;X=M;u=Tn(re|0,u|0,J|0,X|0)|0;se=Tn(u|0,M|0,ae|0,se|0)|0;ae=M;I=Gr(x^se,I^ae,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;X=Gr(J^v,X^b,24)|0;J=M;ae=Tn(se|0,ae|0,X|0,J|0)|0;ae=Tn(ae|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;se=M;x=Gr(I^ae,x^se,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;J=Gr(X^b,J^v,63)|0;a[o+32>>2]=J;a[o+32+4>>2]=M;Y=Tn(N|0,G|0,f|0,Y|0)|0;H=Tn(Y|0,M|0,te|0,H|0)|0;te=M;k=Gr(s^H,k^te,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;te=Tn(H|0,te|0,G|0,N|0)|0;oe=Tn(te|0,M|0,t|0,oe|0)|0;t=M;s=Gr(k^oe,s^t,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;C=Tn(A|0,T|0,P|0,C|0)|0;R=Tn(C|0,M|0,ne|0,R|0)|0;ne=M;m=Gr(l^R,m^ne,32)|0;l=M;ce=Tn(K|0,ce|0,m|0,l|0)|0;K=M;T=Gr(A^ce,T^K,24)|0;A=M;ne=Tn(R|0,ne|0,T|0,A|0)|0;Q=Tn(ne|0,M|0,L|0,Q|0)|0;L=M;l=Gr(m^Q,l^L,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;K=Tn(ce|0,K|0,l|0,m|0)|0;ce=M;A=Gr(T^K,A^ce,63)|0;T=M;Z=Tn(h|0,d|0,ie|0,Z|0)|0;Z=Tn(Z|0,M|0,a[S>>2]|0,a[S+4>>2]|0)|0;ie=M;ne=Gr(a[o+120>>2]^Z,a[o+120+4>>2]^ie,32)|0;R=M;B=Tn(z|0,B|0,ne|0,R|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;ie=Tn(Z|0,ie|0,d|0,h|0)|0;ie=Tn(ie|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;Z=M;R=Gr(ne^ie,R^Z,16)|0;ne=M;z=Tn(B|0,z|0,R|0,ne|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;se=Tn(N|0,G|0,ae|0,se|0)|0;se=Tn(se|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;ae=M;ne=Gr(R^se,ne^ae,32)|0;R=M;ce=Tn(K|0,ce|0,ne|0,R|0)|0;K=M;G=Gr(N^ce,G^K,24)|0;N=M;ae=Tn(se|0,ae|0,G|0,N|0)|0;ae=Tn(ae|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;se=M;R=Gr(ne^ae,R^se,16)|0;ne=M;a[o+120>>2]=R;a[o+120+4>>2]=ne;ne=Tn(ce|0,K|0,R|0,ne|0)|0;R=M;a[o+80>>2]=ne;a[o+80+4>>2]=R;N=Gr(G^ne,N^R,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;t=Tn(A|0,T|0,oe|0,t|0)|0;j=Tn(t|0,M|0,$|0,j|0)|0;$=M;I=Gr(x^j,I^$,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;$=Tn(j|0,$|0,T|0,A|0)|0;$=Tn($|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;j=M;x=Gr(I^$,x^j,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;L=Tn(h|0,d|0,Q|0,L|0)|0;Q=a[w>>2]|0;t=a[w+4>>2]|0;L=Tn(L|0,M|0,Q|0,t|0)|0;oe=M;k=Gr(s^L,k^oe,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;oe=Tn(L|0,oe|0,d|0,h|0)|0;L=a[q>>2]|0;K=a[q+4>>2]|0;oe=Tn(oe|0,M|0,L|0,K|0)|0;ce=M;s=Gr(k^oe,s^ce,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;C=a[o+32>>2]|0;P=a[o+32+4>>2]|0;Z=Tn(C|0,P|0,ie|0,Z|0)|0;ie=a[F>>2]|0;te=a[F+4>>2]|0;Z=Tn(Z|0,M|0,ie|0,te|0)|0;H=M;m=Gr(l^Z,m^H,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;P=Gr(C^O,P^V,24)|0;C=M;H=Tn(Z|0,H|0,P|0,C|0)|0;H=Tn(H|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;Z=M;l=Gr(m^H,l^Z,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;C=Gr(P^V,C^O,63)|0;P=M;se=Tn(ae|0,se|0,C|0,P|0)|0;t=Tn(se|0,M|0,Q|0,t|0)|0;Q=M;I=Gr(x^t,I^Q,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;P=Gr(C^v,P^b,24)|0;C=M;Q=Tn(t|0,Q|0,P|0,C|0)|0;te=Tn(Q|0,M|0,ie|0,te|0)|0;ie=M;x=Gr(I^te,x^ie,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;C=Gr(P^b,C^v,63)|0;a[o+32>>2]=C;a[o+32+4>>2]=M;j=Tn(N|0,G|0,$|0,j|0)|0;j=Tn(j|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;$=M;k=Gr(s^j,k^$,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;$=Tn(j|0,$|0,G|0,N|0)|0;K=Tn($|0,M|0,L|0,K|0)|0;L=M;s=Gr(k^K,s^L,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;ce=Tn(A|0,T|0,oe|0,ce|0)|0;ce=Tn(ce|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;oe=M;m=Gr(l^ce,m^oe,32)|0;l=M;R=Tn(ne|0,R|0,m|0,l|0)|0;ne=M;T=Gr(A^R,T^ne,24)|0;A=M;oe=Tn(ce|0,oe|0,T|0,A|0)|0;oe=Tn(oe|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;ce=M;l=Gr(m^oe,l^ce,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;ne=Tn(R|0,ne|0,l|0,m|0)|0;R=M;A=Gr(T^ne,A^R,63)|0;T=M;Z=Tn(h|0,d|0,H|0,Z|0)|0;Z=Tn(Z|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;H=M;$=Gr(a[o+120>>2]^Z,a[o+120+4>>2]^H,32)|0;j=M;B=Tn(z|0,B|0,$|0,j|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;H=Tn(Z|0,H|0,d|0,h|0)|0;H=Tn(H|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;Z=M;j=Gr($^H,j^Z,16)|0;$=M;z=Tn(B|0,z|0,j|0,$|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ie=Tn(N|0,G|0,te|0,ie|0)|0;ie=Tn(ie|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;te=M;$=Gr(j^ie,$^te,32)|0;j=M;R=Tn(ne|0,R|0,$|0,j|0)|0;ne=M;G=Gr(N^R,G^ne,24)|0;N=M;te=Tn(ie|0,te|0,G|0,N|0)|0;te=Tn(te|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;ie=M;j=Gr($^te,j^ie,16)|0;$=M;a[o+120>>2]=j;a[o+120+4>>2]=$;$=Tn(R|0,ne|0,j|0,$|0)|0;j=M;a[o+80>>2]=$;a[o+80+4>>2]=j;N=Gr(G^$,N^j,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;L=Tn(A|0,T|0,K|0,L|0)|0;K=a[g>>2]|0;ne=a[g+4>>2]|0;L=Tn(L|0,M|0,K|0,ne|0)|0;R=M;I=Gr(x^L,I^R,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;R=Tn(L|0,R|0,T|0,A|0)|0;L=a[U>>2]|0;C=a[U+4>>2]|0;R=Tn(R|0,M|0,L|0,C|0)|0;P=M;x=Gr(I^R,x^P,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;ce=Tn(h|0,d|0,oe|0,ce|0)|0;oe=a[W>>2]|0;Q=a[W+4>>2]|0;ce=Tn(ce|0,M|0,oe|0,Q|0)|0;t=M;k=Gr(s^ce,k^t,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=Tn(ce|0,t|0,d|0,h|0)|0;ce=a[o+128>>2]|0;se=a[o+128+4>>2]|0;t=Tn(t|0,M|0,ce|0,se|0)|0;ae=M;s=Gr(k^t,s^ae,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Y=a[o+32>>2]|0;f=a[o+32+4>>2]|0;Z=Tn(Y|0,f|0,H|0,Z|0)|0;H=a[S>>2]|0;J=a[S+4>>2]|0;Z=Tn(Z|0,M|0,H|0,J|0)|0;X=M;m=Gr(l^Z,m^X,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;f=Gr(Y^O,f^V,24)|0;Y=M;X=Tn(Z|0,X|0,f|0,Y|0)|0;X=Tn(X|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;Z=M;l=Gr(m^X,l^Z,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;Y=Gr(f^V,Y^O,63)|0;f=M;ie=Tn(te|0,ie|0,Y|0,f|0)|0;ie=Tn(ie|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;te=M;I=Gr(x^ie,I^te,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;f=Gr(Y^v,f^b,24)|0;Y=M;te=Tn(ie|0,te|0,f|0,Y|0)|0;se=Tn(te|0,M|0,ce|0,se|0)|0;ce=M;x=Gr(I^se,x^ce,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Y=Gr(f^b,Y^v,63)|0;a[o+32>>2]=Y;a[o+32+4>>2]=M;P=Tn(N|0,G|0,R|0,P|0)|0;ne=Tn(P|0,M|0,K|0,ne|0)|0;K=M;k=Gr(s^ne,k^K,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;K=Tn(ne|0,K|0,G|0,N|0)|0;K=Tn(K|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;ne=M;s=Gr(k^K,s^ne,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;ae=Tn(A|0,T|0,t|0,ae|0)|0;ae=Tn(ae|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;t=M;m=Gr(l^ae,m^t,32)|0;l=M;j=Tn($|0,j|0,m|0,l|0)|0;$=M;T=Gr(A^j,T^$,24)|0;A=M;t=Tn(ae|0,t|0,T|0,A|0)|0;Q=Tn(t|0,M|0,oe|0,Q|0)|0;oe=M;l=Gr(m^Q,l^oe,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;$=Tn(j|0,$|0,l|0,m|0)|0;j=M;A=Gr(T^$,A^j,63)|0;T=M;Z=Tn(h|0,d|0,X|0,Z|0)|0;C=Tn(Z|0,M|0,L|0,C|0)|0;L=M;Z=Gr(a[o+120>>2]^C,a[o+120+4>>2]^L,32)|0;X=M;B=Tn(z|0,B|0,Z|0,X|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;L=Tn(C|0,L|0,d|0,h|0)|0;J=Tn(L|0,M|0,H|0,J|0)|0;H=M;X=Gr(Z^J,X^H,16)|0;Z=M;z=Tn(B|0,z|0,X|0,Z|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ce=Tn(N|0,G|0,se|0,ce|0)|0;ce=Tn(ce|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;se=M;Z=Gr(X^ce,Z^se,32)|0;X=M;j=Tn($|0,j|0,Z|0,X|0)|0;$=M;G=Gr(N^j,G^$,24)|0;N=M;se=Tn(ce|0,se|0,G|0,N|0)|0;se=Tn(se|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;ce=M;X=Gr(Z^se,X^ce,16)|0;Z=M;a[o+120>>2]=X;a[o+120+4>>2]=Z;Z=Tn(j|0,$|0,X|0,Z|0)|0;X=M;a[o+80>>2]=Z;a[o+80+4>>2]=X;N=Gr(G^Z,N^X,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;ne=Tn(A|0,T|0,K|0,ne|0)|0;K=a[E>>2]|0;$=a[E+4>>2]|0;ne=Tn(ne|0,M|0,K|0,$|0)|0;j=M;I=Gr(x^ne,I^j,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;j=Tn(ne|0,j|0,T|0,A|0)|0;ne=a[c>>2]|0;L=a[c+4>>2]|0;j=Tn(j|0,M|0,ne|0,L|0)|0;C=M;x=Gr(I^j,x^C,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;oe=Tn(h|0,d|0,Q|0,oe|0)|0;Q=a[_>>2]|0;t=a[_+4>>2]|0;oe=Tn(oe|0,M|0,Q|0,t|0)|0;ae=M;k=Gr(s^oe,k^ae,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;ae=Tn(oe|0,ae|0,d|0,h|0)|0;oe=a[r>>2]|0;P=a[r+4>>2]|0;ae=Tn(ae|0,M|0,oe|0,P|0)|0;R=M;s=Gr(k^ae,s^R,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Y=a[o+32>>2]|0;f=a[o+32+4>>2]|0;H=Tn(Y|0,f|0,J|0,H|0)|0;J=a[y>>2]|0;te=a[y+4>>2]|0;H=Tn(H|0,M|0,J|0,te|0)|0;ie=M;m=Gr(l^H,m^ie,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;f=Gr(Y^O,f^V,24)|0;Y=M;ie=Tn(H|0,ie|0,f|0,Y|0)|0;H=a[D>>2]|0;u=a[D+4>>2]|0;ie=Tn(ie|0,M|0,H|0,u|0)|0;re=M;l=Gr(m^ie,l^re,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;Y=Gr(f^V,Y^O,63)|0;f=M;ce=Tn(se|0,ce|0,Y|0,f|0)|0;ce=Tn(ce|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;se=M;I=Gr(x^ce,I^se,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;f=Gr(Y^v,f^b,24)|0;Y=M;se=Tn(ce|0,se|0,f|0,Y|0)|0;L=Tn(se|0,M|0,ne|0,L|0)|0;ne=M;x=Gr(I^L,x^ne,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Y=Gr(f^b,Y^v,63)|0;a[o+32>>2]=Y;a[o+32+4>>2]=M;C=Tn(N|0,G|0,j|0,C|0)|0;t=Tn(C|0,M|0,Q|0,t|0)|0;Q=M;k=Gr(s^t,k^Q,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;Q=Tn(t|0,Q|0,G|0,N|0)|0;Q=Tn(Q|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;t=M;s=Gr(k^Q,s^t,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;R=Tn(A|0,T|0,ae|0,R|0)|0;R=Tn(R|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;ae=M;m=Gr(l^R,m^ae,32)|0;l=M;X=Tn(Z|0,X|0,m|0,l|0)|0;Z=M;T=Gr(A^X,T^Z,24)|0;A=M;ae=Tn(R|0,ae|0,T|0,A|0)|0;$=Tn(ae|0,M|0,K|0,$|0)|0;K=M;l=Gr(m^$,l^K,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;Z=Tn(X|0,Z|0,l|0,m|0)|0;X=M;A=Gr(T^Z,A^X,63)|0;T=M;re=Tn(h|0,d|0,ie|0,re|0)|0;P=Tn(re|0,M|0,oe|0,P|0)|0;oe=M;re=Gr(a[o+120>>2]^P,a[o+120+4>>2]^oe,32)|0;ie=M;B=Tn(z|0,B|0,re|0,ie|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;oe=Tn(P|0,oe|0,d|0,h|0)|0;te=Tn(oe|0,M|0,J|0,te|0)|0;J=M;ie=Gr(re^te,ie^J,16)|0;re=M;z=Tn(B|0,z|0,ie|0,re|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ne=Tn(N|0,G|0,L|0,ne|0)|0;ne=Tn(ne|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;L=M;re=Gr(ie^ne,re^L,32)|0;ie=M;X=Tn(Z|0,X|0,re|0,ie|0)|0;Z=M;G=Gr(N^X,G^Z,24)|0;N=M;L=Tn(ne|0,L|0,G|0,N|0)|0;u=Tn(L|0,M|0,H|0,u|0)|0;H=M;ie=Gr(re^u,ie^H,16)|0;re=M;a[o+120>>2]=ie;a[o+120+4>>2]=re;re=Tn(X|0,Z|0,ie|0,re|0)|0;ie=M;a[o+80>>2]=re;a[o+80+4>>2]=ie;N=Gr(G^re,N^ie,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;t=Tn(A|0,T|0,Q|0,t|0)|0;t=Tn(t|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;Q=M;I=Gr(x^t,I^Q,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;Q=Tn(t|0,Q|0,T|0,A|0)|0;t=a[g>>2]|0;Z=a[g+4>>2]|0;Q=Tn(Q|0,M|0,t|0,Z|0)|0;X=M;x=Gr(I^Q,x^X,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;K=Tn(h|0,d|0,$|0,K|0)|0;$=a[S>>2]|0;L=a[S+4>>2]|0;K=Tn(K|0,M|0,$|0,L|0)|0;ne=M;k=Gr(s^K,k^ne,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;ne=Tn(K|0,ne|0,d|0,h|0)|0;K=a[ee>>2]|0;oe=a[ee+4>>2]|0;ne=Tn(ne|0,M|0,K|0,oe|0)|0;P=M;s=Gr(k^ne,s^P,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;ae=a[o+32>>2]|0;R=a[o+32+4>>2]|0;J=Tn(ae|0,R|0,te|0,J|0)|0;te=a[q>>2]|0;C=a[q+4>>2]|0;J=Tn(J|0,M|0,te|0,C|0)|0;j=M;m=Gr(l^J,m^j,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;R=Gr(ae^O,R^V,24)|0;ae=M;j=Tn(J|0,j|0,R|0,ae|0)|0;j=Tn(j|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;J=M;l=Gr(m^j,l^J,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;ae=Gr(R^V,ae^O,63)|0;R=M;H=Tn(u|0,H|0,ae|0,R|0)|0;H=Tn(H|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;u=M;I=Gr(x^H,I^u,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;R=Gr(ae^v,R^b,24)|0;ae=M;u=Tn(H|0,u|0,R|0,ae|0)|0;Z=Tn(u|0,M|0,t|0,Z|0)|0;t=M;x=Gr(I^Z,x^t,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;ae=Gr(R^b,ae^v,63)|0;a[o+32>>2]=ae;a[o+32+4>>2]=M;X=Tn(N|0,G|0,Q|0,X|0)|0;C=Tn(X|0,M|0,te|0,C|0)|0;te=M;k=Gr(s^C,k^te,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;te=Tn(C|0,te|0,G|0,N|0)|0;L=Tn(te|0,M|0,$|0,L|0)|0;$=M;s=Gr(k^L,s^$,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;P=Tn(A|0,T|0,ne|0,P|0)|0;oe=Tn(P|0,M|0,K|0,oe|0)|0;K=M;m=Gr(l^oe,m^K,32)|0;l=M;ie=Tn(re|0,ie|0,m|0,l|0)|0;re=M;T=Gr(A^ie,T^re,24)|0;A=M;K=Tn(oe|0,K|0,T|0,A|0)|0;oe=a[D>>2]|0;P=a[D+4>>2]|0;K=Tn(K|0,M|0,oe|0,P|0)|0;ne=M;l=Gr(m^K,l^ne,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;re=Tn(ie|0,re|0,l|0,m|0)|0;ie=M;A=Gr(T^re,A^ie,63)|0;T=M;J=Tn(h|0,d|0,j|0,J|0)|0;J=Tn(J|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;j=M;te=Gr(a[o+120>>2]^J,a[o+120+4>>2]^j,32)|0;C=M;B=Tn(z|0,B|0,te|0,C|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;j=Tn(J|0,j|0,d|0,h|0)|0;j=Tn(j|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;J=M;C=Gr(te^j,C^J,16)|0;te=M;z=Tn(B|0,z|0,C|0,te|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;t=Tn(N|0,G|0,Z|0,t|0)|0;t=Tn(t|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;Z=M;te=Gr(C^t,te^Z,32)|0;C=M;ie=Tn(re|0,ie|0,te|0,C|0)|0;re=M;G=Gr(N^ie,G^re,24)|0;N=M;Z=Tn(t|0,Z|0,G|0,N|0)|0;t=a[w>>2]|0;X=a[w+4>>2]|0;Z=Tn(Z|0,M|0,t|0,X|0)|0;Q=M;C=Gr(te^Z,C^Q,16)|0;te=M;a[o+120>>2]=C;a[o+120+4>>2]=te;te=Tn(ie|0,re|0,C|0,te|0)|0;C=M;a[o+80>>2]=te;a[o+80+4>>2]=C;N=Gr(G^te,N^C,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;$=Tn(A|0,T|0,L|0,$|0)|0;$=Tn($|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;L=M;I=Gr(x^$,I^L,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;L=Tn($|0,L|0,T|0,A|0)|0;$=a[y>>2]|0;re=a[y+4>>2]|0;L=Tn(L|0,M|0,$|0,re|0)|0;ie=M;x=Gr(I^L,x^ie,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;ne=Tn(h|0,d|0,K|0,ne|0)|0;K=a[F>>2]|0;ae=a[F+4>>2]|0;ne=Tn(ne|0,M|0,K|0,ae|0)|0;R=M;k=Gr(s^ne,k^R,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;R=Tn(ne|0,R|0,d|0,h|0)|0;R=Tn(R|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;ne=M;s=Gr(k^R,s^ne,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;u=a[o+32>>2]|0;H=a[o+32+4>>2]|0;J=Tn(u|0,H|0,j|0,J|0)|0;J=Tn(J|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;j=M;m=Gr(l^J,m^j,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;H=Gr(u^O,H^V,24)|0;u=M;j=Tn(J|0,j|0,H|0,u|0)|0;J=a[E>>2]|0;Y=a[E+4>>2]|0;j=Tn(j|0,M|0,J|0,Y|0)|0;f=M;l=Gr(m^j,l^f,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;u=Gr(H^V,u^O,63)|0;H=M;Q=Tn(Z|0,Q|0,u|0,H|0)|0;P=Tn(Q|0,M|0,oe|0,P|0)|0;oe=M;I=Gr(x^P,I^oe,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;H=Gr(u^v,H^b,24)|0;u=M;oe=Tn(P|0,oe|0,H|0,u|0)|0;Y=Tn(oe|0,M|0,J|0,Y|0)|0;J=M;x=Gr(I^Y,x^J,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;u=Gr(H^b,u^v,63)|0;a[o+32>>2]=u;a[o+32+4>>2]=M;ie=Tn(N|0,G|0,L|0,ie|0)|0;X=Tn(ie|0,M|0,t|0,X|0)|0;t=M;k=Gr(s^X,k^t,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;t=Tn(X|0,t|0,G|0,N|0)|0;t=Tn(t|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;X=M;s=Gr(k^t,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;ne=Tn(A|0,T|0,R|0,ne|0)|0;ne=Tn(ne|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;R=M;m=Gr(l^ne,m^R,32)|0;l=M;C=Tn(te|0,C|0,m|0,l|0)|0;te=M;T=Gr(A^C,T^te,24)|0;A=M;R=Tn(ne|0,R|0,T|0,A|0)|0;R=Tn(R|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;ne=M;l=Gr(m^R,l^ne,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;te=Tn(C|0,te|0,l|0,m|0)|0;C=M;A=Gr(T^te,A^C,63)|0;T=M;f=Tn(h|0,d|0,j|0,f|0)|0;re=Tn(f|0,M|0,$|0,re|0)|0;$=M;f=Gr(a[o+120>>2]^re,a[o+120+4>>2]^$,32)|0;j=M;B=Tn(z|0,B|0,f|0,j|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;$=Tn(re|0,$|0,d|0,h|0)|0;ae=Tn($|0,M|0,K|0,ae|0)|0;K=M;j=Gr(f^ae,j^K,16)|0;f=M;z=Tn(B|0,z|0,j|0,f|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;J=Tn(N|0,G|0,Y|0,J|0)|0;J=Tn(J|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;Y=M;f=Gr(j^J,f^Y,32)|0;j=M;C=Tn(te|0,C|0,f|0,j|0)|0;te=M;G=Gr(N^C,G^te,24)|0;N=M;Y=Tn(J|0,Y|0,G|0,N|0)|0;Y=Tn(Y|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;J=M;j=Gr(f^Y,j^J,16)|0;f=M;a[o+120>>2]=j;a[o+120+4>>2]=f;f=Tn(C|0,te|0,j|0,f|0)|0;j=M;a[o+80>>2]=f;a[o+80+4>>2]=j;N=Gr(G^f,N^j,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;X=Tn(A|0,T|0,t|0,X|0)|0;t=a[S>>2]|0;te=a[S+4>>2]|0;X=Tn(X|0,M|0,t|0,te|0)|0;C=M;I=Gr(x^X,I^C,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;C=Tn(X|0,C|0,T|0,A|0)|0;C=Tn(C|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;X=M;x=Gr(I^C,x^X,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;ne=Tn(h|0,d|0,R|0,ne|0)|0;R=a[r>>2]|0;$=a[r+4>>2]|0;ne=Tn(ne|0,M|0,R|0,$|0)|0;re=M;k=Gr(s^ne,k^re,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;re=Tn(ne|0,re|0,d|0,h|0)|0;ne=a[_>>2]|0;ie=a[_+4>>2]|0;re=Tn(re|0,M|0,ne|0,ie|0)|0;L=M;s=Gr(k^re,s^L,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;u=a[o+32>>2]|0;H=a[o+32+4>>2]|0;K=Tn(u|0,H|0,ae|0,K|0)|0;ae=a[n>>2]|0;oe=a[n+4>>2]|0;K=Tn(K|0,M|0,ae|0,oe|0)|0;P=M;m=Gr(l^K,m^P,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;H=Gr(u^O,H^V,24)|0;u=M;P=Tn(K|0,P|0,H|0,u|0)|0;P=Tn(P|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;K=M;l=Gr(m^P,l^K,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;u=Gr(H^V,u^O,63)|0;H=M;J=Tn(Y|0,J|0,u|0,H|0)|0;ie=Tn(J|0,M|0,ne|0,ie|0)|0;ne=M;I=Gr(x^ie,I^ne,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;H=Gr(u^v,H^b,24)|0;u=M;ne=Tn(ie|0,ne|0,H|0,u|0)|0;te=Tn(ne|0,M|0,t|0,te|0)|0;t=M;x=Gr(I^te,x^t,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;u=Gr(H^b,u^v,63)|0;a[o+32>>2]=u;a[o+32+4>>2]=M;X=Tn(N|0,G|0,C|0,X|0)|0;X=Tn(X|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;C=M;k=Gr(s^X,k^C,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;C=Tn(X|0,C|0,G|0,N|0)|0;C=Tn(C|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;X=M;s=Gr(k^C,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;L=Tn(A|0,T|0,re|0,L|0)|0;L=Tn(L|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;re=M;m=Gr(l^L,m^re,32)|0;l=M;j=Tn(f|0,j|0,m|0,l|0)|0;f=M;T=Gr(A^j,T^f,24)|0;A=M;re=Tn(L|0,re|0,T|0,A|0)|0;re=Tn(re|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;L=M;l=Gr(m^re,l^L,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;f=Tn(j|0,f|0,l|0,m|0)|0;j=M;A=Gr(T^f,A^j,63)|0;T=M;K=Tn(h|0,d|0,P|0,K|0)|0;K=Tn(K|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;P=M;u=Gr(a[o+120>>2]^K,a[o+120+4>>2]^P,32)|0;H=M;B=Tn(z|0,B|0,u|0,H|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;P=Tn(K|0,P|0,d|0,h|0)|0;$=Tn(P|0,M|0,R|0,$|0)|0;R=M;H=Gr(u^$,H^R,16)|0;u=M;z=Tn(B|0,z|0,H|0,u|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;t=Tn(N|0,G|0,te|0,t|0)|0;t=Tn(t|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;te=M;u=Gr(H^t,u^te,32)|0;H=M;j=Tn(f|0,j|0,u|0,H|0)|0;f=M;G=Gr(N^j,G^f,24)|0;N=M;te=Tn(t|0,te|0,G|0,N|0)|0;oe=Tn(te|0,M|0,ae|0,oe|0)|0;ae=M;H=Gr(u^oe,H^ae,16)|0;u=M;a[o+120>>2]=H;a[o+120+4>>2]=u;u=Tn(j|0,f|0,H|0,u|0)|0;H=M;a[o+80>>2]=u;a[o+80+4>>2]=H;N=Gr(G^u,N^H,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;X=Tn(A|0,T|0,C|0,X|0)|0;X=Tn(X|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;C=M;I=Gr(x^X,I^C,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;C=Tn(X|0,C|0,T|0,A|0)|0;X=a[w>>2]|0;f=a[w+4>>2]|0;C=Tn(C|0,M|0,X|0,f|0)|0;j=M;x=Gr(I^C,x^j,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;L=Tn(h|0,d|0,re|0,L|0)|0;re=a[q>>2]|0;te=a[q+4>>2]|0;L=Tn(L|0,M|0,re|0,te|0)|0;t=M;k=Gr(s^L,k^t,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=Tn(L|0,t|0,d|0,h|0)|0;L=a[W>>2]|0;P=a[W+4>>2]|0;t=Tn(t|0,M|0,L|0,P|0)|0;K=M;s=Gr(k^t,s^K,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;ne=a[o+32>>2]|0;ie=a[o+32+4>>2]|0;R=Tn(ne|0,ie|0,$|0,R|0)|0;$=a[U>>2]|0;J=a[U+4>>2]|0;R=Tn(R|0,M|0,$|0,J|0)|0;Y=M;m=Gr(l^R,m^Y,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;ie=Gr(ne^O,ie^V,24)|0;ne=M;Y=Tn(R|0,Y|0,ie|0,ne|0)|0;R=a[g>>2]|0;Q=a[g+4>>2]|0;Y=Tn(Y|0,M|0,R|0,Q|0)|0;Z=M;l=Gr(m^Y,l^Z,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;ne=Gr(ie^V,ne^O,63)|0;ie=M;ae=Tn(oe|0,ae|0,ne|0,ie|0)|0;J=Tn(ae|0,M|0,$|0,J|0)|0;$=M;I=Gr(x^J,I^$,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;ie=Gr(ne^v,ie^b,24)|0;ne=M;$=Tn(J|0,$|0,ie|0,ne|0)|0;$=Tn($|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;J=M;x=Gr(I^$,x^J,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;ne=Gr(ie^b,ne^v,63)|0;a[o+32>>2]=ne;a[o+32+4>>2]=M;j=Tn(N|0,G|0,C|0,j|0)|0;j=Tn(j|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;C=M;k=Gr(s^j,k^C,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;C=Tn(j|0,C|0,G|0,N|0)|0;P=Tn(C|0,M|0,L|0,P|0)|0;L=M;s=Gr(k^P,s^L,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;K=Tn(A|0,T|0,t|0,K|0)|0;f=Tn(K|0,M|0,X|0,f|0)|0;X=M;m=Gr(l^f,m^X,32)|0;l=M;H=Tn(u|0,H|0,m|0,l|0)|0;u=M;T=Gr(A^H,T^u,24)|0;A=M;X=Tn(f|0,X|0,T|0,A|0)|0;X=Tn(X|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;f=M;l=Gr(m^X,l^f,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;u=Tn(H|0,u|0,l|0,m|0)|0;H=M;A=Gr(T^u,A^H,63)|0;T=M;Z=Tn(h|0,d|0,Y|0,Z|0)|0;te=Tn(Z|0,M|0,re|0,te|0)|0;re=M;Z=Gr(a[o+120>>2]^te,a[o+120+4>>2]^re,32)|0;Y=M;B=Tn(z|0,B|0,Z|0,Y|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;re=Tn(te|0,re|0,d|0,h|0)|0;Q=Tn(re|0,M|0,R|0,Q|0)|0;R=M;Y=Gr(Z^Q,Y^R,16)|0;Z=M;z=Tn(B|0,z|0,Y|0,Z|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;J=Tn(N|0,G|0,$|0,J|0)|0;J=Tn(J|0,M|0,a[S>>2]|0,a[S+4>>2]|0)|0;$=M;Z=Gr(Y^J,Z^$,32)|0;Y=M;H=Tn(u|0,H|0,Z|0,Y|0)|0;u=M;G=Gr(N^H,G^u,24)|0;N=M;$=Tn(J|0,$|0,G|0,N|0)|0;$=Tn($|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;J=M;Y=Gr(Z^$,Y^J,16)|0;Z=M;a[o+120>>2]=Y;a[o+120+4>>2]=Z;Z=Tn(H|0,u|0,Y|0,Z|0)|0;Y=M;a[o+80>>2]=Z;a[o+80+4>>2]=Y;N=Gr(G^Z,N^Y,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;L=Tn(A|0,T|0,P|0,L|0)|0;L=Tn(L|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;P=M;I=Gr(x^L,I^P,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;P=Tn(L|0,P|0,T|0,A|0)|0;P=Tn(P|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;L=M;x=Gr(I^P,x^L,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;f=Tn(h|0,d|0,X|0,f|0)|0;X=a[y>>2]|0;u=a[y+4>>2]|0;f=Tn(f|0,M|0,X|0,u|0)|0;H=M;k=Gr(s^f,k^H,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;H=Tn(f|0,H|0,d|0,h|0)|0;H=Tn(H|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;f=M;s=Gr(k^H,s^f,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;re=a[o+32>>2]|0;te=a[o+32+4>>2]|0;R=Tn(re|0,te|0,Q|0,R|0)|0;R=Tn(R|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;Q=M;m=Gr(l^R,m^Q,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;te=Gr(re^O,te^V,24)|0;re=M;Q=Tn(R|0,Q|0,te|0,re|0)|0;R=a[o+128>>2]|0;K=a[o+128+4>>2]|0;Q=Tn(Q|0,M|0,R|0,K|0)|0;t=M;l=Gr(m^Q,l^t,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;re=Gr(te^V,re^O,63)|0;te=M;J=Tn($|0,J|0,re|0,te|0)|0;K=Tn(J|0,M|0,R|0,K|0)|0;R=M;I=Gr(x^K,I^R,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;te=Gr(re^v,te^b,24)|0;re=M;R=Tn(K|0,R|0,te|0,re|0)|0;R=Tn(R|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;K=M;x=Gr(I^R,x^K,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;re=Gr(te^b,re^v,63)|0;a[o+32>>2]=re;a[o+32+4>>2]=M;L=Tn(N|0,G|0,P|0,L|0)|0;L=Tn(L|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;P=M;k=Gr(s^L,k^P,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;P=Tn(L|0,P|0,G|0,N|0)|0;u=Tn(P|0,M|0,X|0,u|0)|0;X=M;s=Gr(k^u,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;N=Gr(G^V,N^O,63)|0;G=M;f=Tn(A|0,T|0,H|0,f|0)|0;f=Tn(f|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;H=M;m=Gr(l^f,m^H,32)|0;l=M;Y=Tn(Z|0,Y|0,m|0,l|0)|0;Z=M;T=Gr(A^Y,T^Z,24)|0;A=M;H=Tn(f|0,H|0,T|0,A|0)|0;H=Tn(H|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;f=M;l=Gr(m^H,l^f,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;Z=Tn(Y|0,Z|0,l|0,m|0)|0;Y=M;A=Gr(T^Z,A^Y,63)|0;T=M;t=Tn(h|0,d|0,Q|0,t|0)|0;t=Tn(t|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;Q=M;P=Gr(a[o+120>>2]^t,a[o+120+4>>2]^Q,32)|0;L=M;B=Tn(z|0,B|0,P|0,L|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;Q=Tn(t|0,Q|0,d|0,h|0)|0;Q=Tn(Q|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;t=M;L=Gr(P^Q,L^t,16)|0;P=M;z=Tn(B|0,z|0,L|0,P|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;K=Tn(N|0,G|0,R|0,K|0)|0;R=a[r>>2]|0;r=a[r+4>>2]|0;K=Tn(K|0,M|0,R|0,r|0)|0;re=M;P=Gr(L^K,P^re,32)|0;L=M;Y=Tn(Z|0,Y|0,P|0,L|0)|0;Z=M;G=Gr(N^Y,G^Z,24)|0;N=M;re=Tn(K|0,re|0,G|0,N|0)|0;K=a[F>>2]|0;F=a[F+4>>2]|0;re=Tn(re|0,M|0,K|0,F|0)|0;te=M;L=Gr(P^re,L^te,16)|0;P=M;a[o+120>>2]=L;a[o+120+4>>2]=P;P=Tn(Y|0,Z|0,L|0,P|0)|0;L=M;a[o+80>>2]=P;a[o+80+4>>2]=L;N=Gr(G^P,N^L,63)|0;G=M;a[o+40>>2]=N;a[o+40+4>>2]=G;X=Tn(A|0,T|0,u|0,X|0)|0;u=a[U>>2]|0;U=a[U+4>>2]|0;X=Tn(X|0,M|0,u|0,U|0)|0;Z=M;I=Gr(x^X,I^Z,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;Z=Tn(X|0,Z|0,T|0,A|0)|0;Z=Tn(Z|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;X=M;x=Gr(I^Z,x^X,16)|0;I=M;z=Tn(B|0,z|0,x|0,I|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(T^z,A^B,63)|0;T=M;a[o+48>>2]=A;a[o+48+4>>2]=T;f=Tn(h|0,d|0,H|0,f|0)|0;f=Tn(f|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;H=M;k=Gr(s^f,k^H,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;H=Tn(f|0,H|0,d|0,h|0)|0;f=a[D>>2]|0;D=a[D+4>>2]|0;H=Tn(H|0,M|0,f|0,D|0)|0;Y=M;s=Gr(k^H,s^Y,16)|0;k=M;b=Tn(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;J=a[o+32>>2]|0;$=a[o+32+4>>2]|0;t=Tn(J|0,$|0,Q|0,t|0)|0;Q=a[ee>>2]|0;ee=a[ee+4>>2]|0;t=Tn(t|0,M|0,Q|0,ee|0)|0;C=M;m=Gr(l^t,m^C,32)|0;l=M;O=Tn(V|0,O|0,m|0,l|0)|0;V=M;$=Gr(J^O,$^V,24)|0;J=M;C=Tn(t|0,C|0,$|0,J|0)|0;t=a[S>>2]|0;S=a[S+4>>2]|0;C=Tn(C|0,M|0,t|0,S|0)|0;j=M;l=Gr(m^C,l^j,16)|0;m=M;V=Tn(O|0,V|0,l|0,m|0)|0;O=M;J=Gr($^V,J^O,63)|0;$=M;te=Tn(re|0,te|0,J|0,$|0)|0;ee=Tn(te|0,M|0,Q|0,ee|0)|0;Q=M;I=Gr(x^ee,I^Q,32)|0;x=M;v=Tn(b|0,v|0,I|0,x|0)|0;b=M;$=Gr(J^v,$^b,24)|0;J=M;Q=Tn(ee|0,Q|0,$|0,J|0)|0;U=Tn(Q|0,M|0,u|0,U|0)|0;u=M;x=Gr(I^U,x^u,16)|0;I=M;b=Tn(v|0,b|0,x|0,I|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;J=Gr($^b,J^v,63)|0;a[o+32>>2]=J;a[o+32+4>>2]=M;X=Tn(N|0,G|0,Z|0,X|0)|0;W=Tn(X|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;X=M;k=Gr(s^W,k^X,32)|0;s=M;O=Tn(V|0,O|0,k|0,s|0)|0;V=M;G=Gr(N^O,G^V,24)|0;N=M;X=Tn(W|0,X|0,G|0,N|0)|0;r=Tn(X|0,M|0,R|0,r|0)|0;R=M;s=Gr(k^r,s^R,16)|0;k=M;V=Tn(O|0,V|0,s|0,k|0)|0;O=M;a[o+72>>2]=V;a[o+72+4>>2]=O;O=Gr(G^V,N^O,63)|0;N=M;Y=Tn(A|0,T|0,H|0,Y|0)|0;F=Tn(Y|0,M|0,K|0,F|0)|0;K=M;m=Gr(l^F,m^K,32)|0;l=M;L=Tn(P|0,L|0,m|0,l|0)|0;P=M;T=Gr(A^L,T^P,24)|0;A=M;K=Tn(F|0,K|0,T|0,A|0)|0;S=Tn(K|0,M|0,t|0,S|0)|0;t=M;l=Gr(m^S,l^t,16)|0;m=M;P=Tn(L|0,P|0,l|0,m|0)|0;L=M;A=Gr(T^P,A^L,63)|0;T=M;j=Tn(h|0,d|0,C|0,j|0)|0;D=Tn(j|0,M|0,f|0,D|0)|0;f=M;j=Gr(a[o+120>>2]^D,a[o+120+4>>2]^f,32)|0;C=M;B=Tn(z|0,B|0,j|0,C|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;f=Tn(D|0,f|0,d|0,h|0)|0;_=Tn(f|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;f=M;C=Gr(j^_,C^f,16)|0;j=M;z=Tn(B|0,z|0,C|0,j|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;u=Tn(O|0,N|0,U|0,u|0)|0;q=Tn(u|0,M|0,a[q>>2]|0,a[q+4>>2]|0)|0;u=M;j=Gr(C^q,j^u,32)|0;C=M;L=Tn(P|0,L|0,j|0,C|0)|0;P=M;N=Gr(O^L,N^P,24)|0;O=M;u=Tn(q|0,u|0,N|0,O|0)|0;c=Tn(u|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;u=M;a[o>>2]=c;a[o+4>>2]=u;C=Gr(j^c,C^u,16)|0;j=M;a[o+120>>2]=C;a[o+120+4>>2]=j;j=Tn(L|0,P|0,C|0,j|0)|0;C=M;a[o+80>>2]=j;a[o+80+4>>2]=C;C=Gr(N^j,O^C,63)|0;a[o+40>>2]=C;a[o+40+4>>2]=M;R=Tn(A|0,T|0,r|0,R|0)|0;R=Tn(R|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;r=M;I=Gr(x^R,I^r,32)|0;x=M;B=Tn(z|0,B|0,I|0,x|0)|0;z=M;T=Gr(A^B,T^z,24)|0;A=M;r=Tn(R|0,r|0,T|0,A|0)|0;n=Tn(r|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;r=M;a[o+8>>2]=n;a[o+8+4>>2]=r;x=Gr(I^n,x^r,16)|0;I=M;a[o+96>>2]=x;a[o+96+4>>2]=I;I=Tn(B|0,z|0,x|0,I|0)|0;x=M;a[o+88>>2]=I;a[o+88+4>>2]=x;x=Gr(T^I,A^x,63)|0;a[o+48>>2]=x;a[o+48+4>>2]=M;t=Tn(h|0,d|0,S|0,t|0)|0;E=Tn(t|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;t=M;k=Gr(s^E,k^t,32)|0;s=M;v=Tn(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=Tn(E|0,t|0,d|0,h|0)|0;w=Tn(t|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;t=M;a[o+16>>2]=w;a[o+16+4>>2]=t;t=Gr(k^w,s^t,16)|0;s=M;a[o+104>>2]=t;a[o+104+4>>2]=s;s=Tn(v|0,b|0,t|0,s|0)|0;t=M;a[o+64>>2]=s;a[o+64+4>>2]=t;h=Gr(d^s,h^t,63)|0;a[o+56>>2]=h;a[o+56+4>>2]=M;h=a[o+32>>2]|0;d=a[o+32+4>>2]|0;f=Tn(h|0,d|0,_|0,f|0)|0;g=Tn(f|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;f=M;m=Gr(l^g,m^f,32)|0;l=M;_=Tn(a[o+72>>2]|0,a[o+72+4>>2]|0,m|0,l|0)|0;b=M;d=Gr(h^_,d^b,24)|0;h=M;f=Tn(g|0,f|0,d|0,h|0)|0;y=Tn(f|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;f=M;a[o+24>>2]=y;a[o+24+4>>2]=f;f=Gr(m^y,l^f,16)|0;l=M;a[o+112>>2]=f;a[o+112+4>>2]=l;l=Tn(_|0,b|0,f|0,l|0)|0;f=M;a[o+72>>2]=l;a[o+72+4>>2]=f;f=Gr(d^l,h^f,63)|0;a[o+32>>2]=f;a[o+32+4>>2]=M;t=u^a[e+4>>2]^t;a[e>>2]=c^a[e>>2]^s;a[e+4>>2]=t;t=1;while(1){ce=e+(t<<3)|0;se=o+(t+8<<3)|0;r=r^a[ce+4>>2]^a[se+4>>2];a[ce>>2]=n^a[ce>>2]^a[se>>2];a[ce+4>>2]=r;r=t+1|0;if((r|0)==8)break;t=r;n=a[o+(r<<3)>>2]|0;r=a[o+(r<<3)+4>>2]|0}p=i;return}function oe(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,_e=0,ye=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Ie=0,Te=0,ze=0,Be=0,Re=0,Ce=0,Oe=0,je=0,Ne=0,Pe=0,Le=0,qe=0,Ue=0,De=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Ze=0,Je=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,ft=0,ht=0,lt=0,dt=0,pt=0,bt=0,_t=0,yt=0,mt=0,gt=0,vt=0,wt=0,kt=0,Et=0,St=0,xt=0,At=0,Mt=0,It=0,Tt=0,zt=0,Bt=0,Rt=0,Ct=0,Ot=0,jt=0,Nt=0,Pt=0,Lt=0,qt=0,Ut=0,Dt=0,Kt=0,Ft=0,Yt=0,Ht=0,Vt=0,Gt=0,Xt=0,Wt=0,Zt=0,Jt=0,$t=0,Qt=0,er=0,tr=0,rr=0,nr=0,ir=0,ar=0,or=0,sr=0,cr=0,ur=0,fr=0,lr=0,dr=0,pr=0,br=0,_r=0,yr=0,mr=0,gr=0;Je=$r(n[t>>0]|0,n[t+1>>0]|0,n[t+2>>0]|0)|0;dt=hr(t+2|0)|0;dt=fn(dt|0,M|0,5)|0;x=$r(n[t+5>>0]|0,n[t+6>>0]|0,n[t+7>>0]|0)|0;x=fn(x|0,M|0,2)|0;ft=hr(t+7|0)|0;ft=fn(ft|0,M|0,7)|0;h=hr(t+10|0)|0;h=fn(h|0,M|0,4)|0;j=$r(n[t+13>>0]|0,n[t+14>>0]|0,n[t+15>>0]|0)|0;j=fn(j|0,M|0,1)|0;B=hr(t+15|0)|0;B=fn(B|0,M|0,6)|0;ie=$r(n[t+18>>0]|0,n[t+19>>0]|0,n[t+20>>0]|0)|0;ie=fn(ie|0,M|0,3)|0;ct=$r(n[t+21>>0]|0,n[t+22>>0]|0,n[t+23>>0]|0)|0;O=hr(t+23|0)|0;O=fn(O|0,M|0,5)|0;yr=$r(n[t+26>>0]|0,n[t+27>>0]|0,n[t+28>>0]|0)|0;yr=fn(yr|0,M|0,2)|0;d=hr(t+28|0)|0;d=fn(d|0,M|0,7)|0;ve=M;vt=$r(n[r>>0]|0,n[r+1>>0]|0,n[r+2>>0]|0)|0;Oe=hr(r+2|0)|0;Oe=fn(Oe|0,M|0,5)|0;Xe=$r(n[r+5>>0]|0,n[r+6>>0]|0,n[r+7>>0]|0)|0;Xe=fn(Xe|0,M|0,2)|0;re=hr(r+7|0)|0;re=fn(re|0,M|0,7)|0;D=hr(r+10|0)|0;D=fn(D|0,M|0,4)|0;ge=$r(n[r+13>>0]|0,n[r+14>>0]|0,n[r+15>>0]|0)|0;ge=fn(ge|0,M|0,1)|0;Ee=hr(r+15|0)|0;Ee=fn(Ee|0,M|0,6)|0;yt=$r(n[r+18>>0]|0,n[r+19>>0]|0,n[r+20>>0]|0)|0;yt=fn(yt|0,M|0,3)|0;de=$r(n[r+21>>0]|0,n[r+22>>0]|0,n[r+23>>0]|0)|0;U=hr(r+23|0)|0;U=fn(U|0,M|0,5)|0;je=$r(n[r+26>>0]|0,n[r+27>>0]|0,n[r+28>>0]|0)|0;je=fn(je|0,M|0,2)|0;k=hr(r+28|0)|0;k=fn(k|0,M|0,7)|0;_e=M;G=$r(n[i>>0]|0,n[i+1>>0]|0,n[i+2>>0]|0)|0;pe=hr(i+2|0)|0;pe=fn(pe|0,M|0,5)|0;me=$r(n[i+5>>0]|0,n[i+6>>0]|0,n[i+7>>0]|0)|0;me=fn(me|0,M|0,2)|0;qe=hr(i+7|0)|0;qe=fn(qe|0,M|0,7)|0;le=hr(i+10|0)|0;le=fn(le|0,M|0,4)|0;Te=$r(n[i+13>>0]|0,n[i+14>>0]|0,n[i+15>>0]|0)|0;Te=fn(Te|0,M|0,1)|0;at=hr(i+15|0)|0;at=fn(at|0,M|0,6)|0;o=$r(n[i+18>>0]|0,n[i+19>>0]|0,n[i+20>>0]|0)|0;o=fn(o|0,M|0,3)|0;Fe=$r(n[i+21>>0]|0,n[i+22>>0]|0,n[i+23>>0]|0)|0;z=hr(i+23|0)|0;z=fn(z|0,M|0,5)|0;Ke=$r(n[i+26>>0]|0,n[i+27>>0]|0,n[i+28>>0]|0)|0;Ke=fn(Ke|0,M|0,2)|0;t=hr(i+28|0)|0;t=fn(t|0,M|0,7)|0;s=M;be=Wr(vt&2097151|0,0,Je&2097151|0,0)|0;be=Tn(G&2097151|0,0,be|0,M|0)|0;G=M;_r=Wr(Oe&2097151|0,0,Je&2097151|0,0)|0;br=M;pr=Wr(vt&2097151|0,0,dt&2097151|0,0)|0;g=M;ue=Wr(Xe&2097151|0,0,Je&2097151|0,0)|0;ye=M;fe=Wr(Oe&2097151|0,0,dt&2097151|0,0)|0;cr=M;Y=Wr(vt&2097151|0,0,x&2097151|0,0)|0;Y=Tn(fe|0,cr|0,Y|0,M|0)|0;ye=Tn(Y|0,M|0,ue|0,ye|0)|0;me=Tn(ye|0,M|0,me&2097151|0,0)|0;ye=M;ue=Wr(re&2097151|0,0,Je&2097151|0,0)|0;Y=M;cr=Wr(Xe&2097151|0,0,dt&2097151|0,0)|0;fe=M;dr=Wr(Oe&2097151|0,0,x&2097151|0,0)|0;lr=M;fr=Wr(vt&2097151|0,0,ft&2097151|0,0)|0;ur=M;Ie=Wr(D&2097151|0,0,Je&2097151|0,0)|0;he=M;Qt=Wr(re&2097151|0,0,dt&2097151|0,0)|0;$=M;tr=Wr(Xe&2097151|0,0,x&2097151|0,0)|0;Me=M;rr=Wr(Oe&2097151|0,0,ft&2097151|0,0)|0;nr=M;er=Wr(vt&2097151|0,0,h&2097151|0,0)|0;er=Tn(rr|0,nr|0,er|0,M|0)|0;Me=Tn(er|0,M|0,tr|0,Me|0)|0;$=Tn(Me|0,M|0,Qt|0,$|0)|0;he=Tn($|0,M|0,Ie|0,he|0)|0;le=Tn(he|0,M|0,le&2097151|0,0)|0;he=M;Ie=Wr(ge&2097151|0,0,Je&2097151|0,0)|0;$=M;Qt=Wr(D&2097151|0,0,dt&2097151|0,0)|0;Me=M;tr=Wr(re&2097151|0,0,x&2097151|0,0)|0;er=M;nr=Wr(Xe&2097151|0,0,ft&2097151|0,0)|0;rr=M;sr=Wr(Oe&2097151|0,0,h&2097151|0,0)|0;or=M;ar=Wr(vt&2097151|0,0,j&2097151|0,0)|0;ir=M;Z=Wr(Ee&2097151|0,0,Je&2097151|0,0)|0;Qe=M;Ut=Wr(ge&2097151|0,0,dt&2097151|0,0)|0;A=M;Kt=Wr(D&2097151|0,0,x&2097151|0,0)|0;W=M;Yt=Wr(re&2097151|0,0,ft&2097151|0,0)|0;Dt=M;Vt=Wr(Xe&2097151|0,0,h&2097151|0,0)|0;Ft=M;Gt=Wr(Oe&2097151|0,0,j&2097151|0,0)|0;Xt=M;Ht=Wr(vt&2097151|0,0,B&2097151|0,0)|0;Ht=Tn(Gt|0,Xt|0,Ht|0,M|0)|0;Ft=Tn(Ht|0,M|0,Vt|0,Ft|0)|0;Dt=Tn(Ft|0,M|0,Yt|0,Dt|0)|0;W=Tn(Dt|0,M|0,Kt|0,W|0)|0;A=Tn(W|0,M|0,Ut|0,A|0)|0;Qe=Tn(A|0,M|0,Z|0,Qe|0)|0;at=Tn(Qe|0,M|0,at&2097151|0,0)|0;Qe=M;Z=Wr(yt&2097151|0,0,Je&2097151|0,0)|0;A=M;Ut=Wr(Ee&2097151|0,0,dt&2097151|0,0)|0;W=M;Kt=Wr(ge&2097151|0,0,x&2097151|0,0)|0;Dt=M;Yt=Wr(D&2097151|0,0,ft&2097151|0,0)|0;Ft=M;Vt=Wr(re&2097151|0,0,h&2097151|0,0)|0;Ht=M;Xt=Wr(Xe&2097151|0,0,j&2097151|0,0)|0;Gt=M;$t=Wr(Oe&2097151|0,0,B&2097151|0,0)|0;Jt=M;Zt=Wr(vt&2097151|0,0,ie&2097151|0,0)|0;Wt=M;xt=Wr(de&2097151|0,0,Je&2097151|0,0)|0;i=M;c=Wr(yt&2097151|0,0,dt&2097151|0,0)|0;Ye=M;Et=Wr(Ee&2097151|0,0,x&2097151|0,0)|0;St=M;Mt=Wr(ge&2097151|0,0,ft&2097151|0,0)|0;we=M;Tt=Wr(D&2097151|0,0,h&2097151|0,0)|0;At=M;Bt=Wr(re&2097151|0,0,j&2097151|0,0)|0;It=M;Ct=Wr(Xe&2097151|0,0,B&2097151|0,0)|0;zt=M;Ot=Wr(Oe&2097151|0,0,ie&2097151|0,0)|0;jt=M;Rt=Wr(vt&2097151|0,0,ct&2097151|0,0)|0;Rt=Tn(Ot|0,jt|0,Rt|0,M|0)|0;zt=Tn(Rt|0,M|0,Ct|0,zt|0)|0;It=Tn(zt|0,M|0,Bt|0,It|0)|0;At=Tn(It|0,M|0,Tt|0,At|0)|0;we=Tn(At|0,M|0,Mt|0,we|0)|0;St=Tn(we|0,M|0,Et|0,St|0)|0;i=Tn(St|0,M|0,xt|0,i|0)|0;Ye=Tn(i|0,M|0,c|0,Ye|0)|0;Fe=Tn(Ye|0,M|0,Fe&2097151|0,0)|0;Ye=M;c=Wr(U&2097151|0,0,Je&2097151|0,0)|0;i=M;xt=Wr(de&2097151|0,0,dt&2097151|0,0)|0;St=M;Et=Wr(yt&2097151|0,0,x&2097151|0,0)|0;we=M;Mt=Wr(Ee&2097151|0,0,ft&2097151|0,0)|0;At=M;Tt=Wr(ge&2097151|0,0,h&2097151|0,0)|0;It=M;Bt=Wr(D&2097151|0,0,j&2097151|0,0)|0;zt=M;Ct=Wr(re&2097151|0,0,B&2097151|0,0)|0;Rt=M;jt=Wr(Xe&2097151|0,0,ie&2097151|0,0)|0;Ot=M;qt=Wr(Oe&2097151|0,0,ct&2097151|0,0)|0;Lt=M;Pt=Wr(vt&2097151|0,0,O&2097151|0,0)|0;Nt=M;$e=Wr(je&2097151|0,0,Je&2097151|0,0)|0;De=M;et=Wr(U&2097151|0,0,dt&2097151|0,0)|0;ot=M;Q=Wr(de&2097151|0,0,x&2097151|0,0)|0;ee=M;V=Wr(yt&2097151|0,0,ft&2097151|0,0)|0;H=M;lt=Wr(Ee&2097151|0,0,h&2097151|0,0)|0;ht=M;Le=Wr(ge&2097151|0,0,j&2097151|0,0)|0;Pe=M;it=Wr(D&2097151|0,0,B&2097151|0,0)|0;nt=M;Re=Wr(re&2097151|0,0,ie&2097151|0,0)|0;Be=M;Ve=Wr(Xe&2097151|0,0,ct&2097151|0,0)|0;He=M;kt=Wr(Oe&2097151|0,0,O&2097151|0,0)|0;P=M;K=Wr(vt&2097151|0,0,yr&2097151|0,0)|0;K=Tn(kt|0,P|0,K|0,M|0)|0;He=Tn(K|0,M|0,Ve|0,He|0)|0;Be=Tn(He|0,M|0,Re|0,Be|0)|0;nt=Tn(Be|0,M|0,it|0,nt|0)|0;Pe=Tn(nt|0,M|0,Le|0,Pe|0)|0;ht=Tn(Pe|0,M|0,lt|0,ht|0)|0;ee=Tn(ht|0,M|0,Q|0,ee|0)|0;H=Tn(ee|0,M|0,V|0,H|0)|0;ot=Tn(H|0,M|0,et|0,ot|0)|0;De=Tn(ot|0,M|0,$e|0,De|0)|0;Ke=Tn(De|0,M|0,Ke&2097151|0,0)|0;De=M;Je=Wr(k|0,_e|0,Je&2097151|0,0)|0;$e=M;ot=Wr(je&2097151|0,0,dt&2097151|0,0)|0;et=M;H=Wr(U&2097151|0,0,x&2097151|0,0)|0;V=M;ee=Wr(de&2097151|0,0,ft&2097151|0,0)|0;Q=M;ht=Wr(yt&2097151|0,0,h&2097151|0,0)|0;lt=M;Pe=Wr(Ee&2097151|0,0,j&2097151|0,0)|0;Le=M;nt=Wr(ge&2097151|0,0,B&2097151|0,0)|0;it=M;Be=Wr(D&2097151|0,0,ie&2097151|0,0)|0;Re=M;He=Wr(re&2097151|0,0,ct&2097151|0,0)|0;Ve=M;K=Wr(Xe&2097151|0,0,O&2097151|0,0)|0;P=M;kt=Wr(Oe&2097151|0,0,yr&2097151|0,0)|0;wt=M;vt=Wr(vt&2097151|0,0,d|0,ve|0)|0;gt=M;dt=Wr(k|0,_e|0,dt&2097151|0,0)|0;pt=M;tt=Wr(je&2097151|0,0,x&2097151|0,0)|0;w=M;L=Wr(U&2097151|0,0,ft&2097151|0,0)|0;rt=M;bt=Wr(de&2097151|0,0,h&2097151|0,0)|0;v=M;b=Wr(yt&2097151|0,0,j&2097151|0,0)|0;st=M;_=Wr(Ee&2097151|0,0,B&2097151|0,0)|0;_t=M;se=Wr(ge&2097151|0,0,ie&2097151|0,0)|0;S=M;ne=Wr(D&2097151|0,0,ct&2097151|0,0)|0;ce=M;Ce=Wr(re&2097151|0,0,O&2097151|0,0)|0;F=M;ut=Wr(Xe&2097151|0,0,yr&2097151|0,0)|0;Ge=M;Oe=Wr(Oe&2097151|0,0,d|0,ve|0)|0;Oe=Tn(ut|0,Ge|0,Oe|0,M|0)|0;F=Tn(Oe|0,M|0,Ce|0,F|0)|0;ce=Tn(F|0,M|0,ne|0,ce|0)|0;S=Tn(ce|0,M|0,se|0,S|0)|0;_t=Tn(S|0,M|0,_|0,_t|0)|0;v=Tn(_t|0,M|0,bt|0,v|0)|0;st=Tn(v|0,M|0,b|0,st|0)|0;rt=Tn(st|0,M|0,L|0,rt|0)|0;w=Tn(rt|0,M|0,tt|0,w|0)|0;pt=Tn(w|0,M|0,dt|0,pt|0)|0;dt=M;x=Wr(k|0,_e|0,x&2097151|0,0)|0;w=M;tt=Wr(je&2097151|0,0,ft&2097151|0,0)|0;rt=M;L=Wr(U&2097151|0,0,h&2097151|0,0)|0;st=M;b=Wr(de&2097151|0,0,j&2097151|0,0)|0;v=M;bt=Wr(yt&2097151|0,0,B&2097151|0,0)|0;_t=M;_=Wr(Ee&2097151|0,0,ie&2097151|0,0)|0;S=M;se=Wr(ge&2097151|0,0,ct&2097151|0,0)|0;ce=M;ne=Wr(D&2097151|0,0,O&2097151|0,0)|0;F=M;Ce=Wr(re&2097151|0,0,yr&2097151|0,0)|0;Oe=M;Xe=Wr(Xe&2097151|0,0,d|0,ve|0)|0;Ge=M;ft=Wr(k|0,_e|0,ft&2097151|0,0)|0;ut=M;We=Wr(je&2097151|0,0,h&2097151|0,0)|0;u=M;l=Wr(U&2097151|0,0,j&2097151|0,0)|0;Ze=M;X=Wr(de&2097151|0,0,B&2097151|0,0)|0;R=M;J=Wr(yt&2097151|0,0,ie&2097151|0,0)|0;a=M;xe=Wr(Ee&2097151|0,0,ct&2097151|0,0)|0;y=M;ke=Wr(ge&2097151|0,0,O&2097151|0,0)|0;f=M;mt=Wr(D&2097151|0,0,yr&2097151|0,0)|0;p=M;re=Wr(re&2097151|0,0,d|0,ve|0)|0;re=Tn(mt|0,p|0,re|0,M|0)|0;f=Tn(re|0,M|0,ke|0,f|0)|0;y=Tn(f|0,M|0,xe|0,y|0)|0;R=Tn(y|0,M|0,X|0,R|0)|0;a=Tn(R|0,M|0,J|0,a|0)|0;Ze=Tn(a|0,M|0,l|0,Ze|0)|0;u=Tn(Ze|0,M|0,We|0,u|0)|0;ut=Tn(u|0,M|0,ft|0,ut|0)|0;ft=M;h=Wr(k|0,_e|0,h&2097151|0,0)|0;u=M;We=Wr(je&2097151|0,0,j&2097151|0,0)|0;Ze=M;l=Wr(U&2097151|0,0,B&2097151|0,0)|0;a=M;J=Wr(de&2097151|0,0,ie&2097151|0,0)|0;R=M;X=Wr(yt&2097151|0,0,ct&2097151|0,0)|0;y=M;xe=Wr(Ee&2097151|0,0,O&2097151|0,0)|0;f=M;ke=Wr(ge&2097151|0,0,yr&2097151|0,0)|0;re=M;D=Wr(D&2097151|0,0,d|0,ve|0)|0;p=M;j=Wr(k|0,_e|0,j&2097151|0,0)|0;mt=M;ae=Wr(je&2097151|0,0,B&2097151|0,0)|0;Ne=M;ze=Wr(U&2097151|0,0,ie&2097151|0,0)|0;I=M;te=Wr(de&2097151|0,0,ct&2097151|0,0)|0;m=M;T=Wr(yt&2097151|0,0,O&2097151|0,0)|0;Ae=M;N=Wr(Ee&2097151|0,0,yr&2097151|0,0)|0;Se=M;r=Wr(ge&2097151|0,0,d|0,ve|0)|0;r=Tn(N|0,Se|0,r|0,M|0)|0;m=Tn(r|0,M|0,te|0,m|0)|0;Ae=Tn(m|0,M|0,T|0,Ae|0)|0;I=Tn(Ae|0,M|0,ze|0,I|0)|0;Ne=Tn(I|0,M|0,ae|0,Ne|0)|0;mt=Tn(Ne|0,M|0,j|0,mt|0)|0;j=M;B=Wr(k|0,_e|0,B&2097151|0,0)|0;Ne=M;ae=Wr(je&2097151|0,0,ie&2097151|0,0)|0;I=M;ze=Wr(U&2097151|0,0,ct&2097151|0,0)|0;Ae=M;T=Wr(de&2097151|0,0,O&2097151|0,0)|0;m=M;te=Wr(yt&2097151|0,0,yr&2097151|0,0)|0;r=M;Ee=Wr(Ee&2097151|0,0,d|0,ve|0)|0;Se=M;ie=Wr(k|0,_e|0,ie&2097151|0,0)|0;N=M;ge=Wr(je&2097151|0,0,ct&2097151|0,0)|0;q=M;Ue=Wr(U&2097151|0,0,O&2097151|0,0)|0;C=M;E=Wr(de&2097151|0,0,yr&2097151|0,0)|0;oe=M;yt=Wr(yt&2097151|0,0,d|0,ve|0)|0;oe=Tn(yt|0,M|0,E|0,oe|0)|0;C=Tn(oe|0,M|0,Ue|0,C|0)|0;q=Tn(C|0,M|0,ge|0,q|0)|0;N=Tn(q|0,M|0,ie|0,N|0)|0;ie=M;ct=Wr(k|0,_e|0,ct&2097151|0,0)|0;q=M;ge=Wr(je&2097151|0,0,O&2097151|0,0)|0;C=M;Ue=Wr(U&2097151|0,0,yr&2097151|0,0)|0;oe=M;de=Wr(de&2097151|0,0,d|0,ve|0)|0;E=M;O=Wr(k|0,_e|0,O&2097151|0,0)|0;yt=M;gr=Wr(je&2097151|0,0,yr&2097151|0,0)|0;mr=M;U=Wr(U&2097151|0,0,d|0,ve|0)|0;U=Tn(gr|0,mr|0,U|0,M|0)|0;yt=Tn(U|0,M|0,O|0,yt|0)|0;O=M;yr=Wr(k|0,_e|0,yr&2097151|0,0)|0;U=M;je=Wr(je&2097151|0,0,d|0,ve|0)|0;je=Tn(yr|0,U|0,je|0,M|0)|0;U=M;ve=Wr(k|0,_e|0,d|0,ve|0)|0;d=M;_e=Tn(be|0,G|0,1048576,0)|0;_e=fn(_e|0,M|0,21)|0;k=M;g=Tn(_r|0,br|0,pr|0,g|0)|0;pe=Tn(g|0,M|0,pe&2097151|0,0)|0;pe=Tn(pe|0,M|0,_e|0,k|0)|0;g=M;k=cn(_e|0,k|0,21)|0;k=Mn(be|0,G|0,k|0,M|0)|0;G=M;be=Tn(me|0,ye|0,1048576,0)|0;be=fn(be|0,M|0,21)|0;_e=M;ur=Tn(dr|0,lr|0,fr|0,ur|0)|0;fe=Tn(ur|0,M|0,cr|0,fe|0)|0;Y=Tn(fe|0,M|0,ue|0,Y|0)|0;qe=Tn(Y|0,M|0,qe&2097151|0,0)|0;qe=Tn(qe|0,M|0,be|0,_e|0)|0;Y=M;_e=cn(be|0,_e|0,21)|0;be=M;ue=Tn(le|0,he|0,1048576,0)|0;ue=Hr(ue|0,M|0,21)|0;fe=M;ir=Tn(sr|0,or|0,ar|0,ir|0)|0;rr=Tn(ir|0,M|0,nr|0,rr|0)|0;er=Tn(rr|0,M|0,tr|0,er|0)|0;Me=Tn(er|0,M|0,Qt|0,Me|0)|0;$=Tn(Me|0,M|0,Ie|0,$|0)|0;Te=Tn($|0,M|0,Te&2097151|0,0)|0;Te=Tn(Te|0,M|0,ue|0,fe|0)|0;$=M;fe=cn(ue|0,fe|0,21)|0;ue=M;Ie=Tn(at|0,Qe|0,1048576,0)|0;Ie=Hr(Ie|0,M|0,21)|0;Me=M;Wt=Tn($t|0,Jt|0,Zt|0,Wt|0)|0;Gt=Tn(Wt|0,M|0,Xt|0,Gt|0)|0;Ht=Tn(Gt|0,M|0,Vt|0,Ht|0)|0;Ft=Tn(Ht|0,M|0,Yt|0,Ft|0)|0;Dt=Tn(Ft|0,M|0,Kt|0,Dt|0)|0;W=Tn(Dt|0,M|0,Ut|0,W|0)|0;A=Tn(W|0,M|0,Z|0,A|0)|0;o=Tn(A|0,M|0,o&2097151|0,0)|0;o=Tn(o|0,M|0,Ie|0,Me|0)|0;A=M;Me=cn(Ie|0,Me|0,21)|0;Ie=M;Z=Tn(Fe|0,Ye|0,1048576,0)|0;Z=Hr(Z|0,M|0,21)|0;W=M;Nt=Tn(qt|0,Lt|0,Pt|0,Nt|0)|0;Ot=Tn(Nt|0,M|0,jt|0,Ot|0)|0;Rt=Tn(Ot|0,M|0,Ct|0,Rt|0)|0;zt=Tn(Rt|0,M|0,Bt|0,zt|0)|0;It=Tn(zt|0,M|0,Tt|0,It|0)|0;At=Tn(It|0,M|0,Mt|0,At|0)|0;St=Tn(At|0,M|0,xt|0,St|0)|0;we=Tn(St|0,M|0,Et|0,we|0)|0;i=Tn(we|0,M|0,c|0,i|0)|0;i=Tn(i|0,M|0,z&2097151|0,0)|0;i=Tn(i|0,M|0,Z|0,W|0)|0;z=M;W=cn(Z|0,W|0,21)|0;Z=M;c=Tn(Ke|0,De|0,1048576,0)|0;c=Hr(c|0,M|0,21)|0;we=M;gt=Tn(kt|0,wt|0,vt|0,gt|0)|0;P=Tn(gt|0,M|0,K|0,P|0)|0;Ve=Tn(P|0,M|0,He|0,Ve|0)|0;Re=Tn(Ve|0,M|0,Be|0,Re|0)|0;it=Tn(Re|0,M|0,nt|0,it|0)|0;Le=Tn(it|0,M|0,Pe|0,Le|0)|0;Q=Tn(Le|0,M|0,ee|0,Q|0)|0;lt=Tn(Q|0,M|0,ht|0,lt|0)|0;V=Tn(lt|0,M|0,H|0,V|0)|0;$e=Tn(V|0,M|0,Je|0,$e|0)|0;et=Tn($e|0,M|0,ot|0,et|0)|0;s=Tn(et|0,M|0,t|0,s|0)|0;s=Tn(s|0,M|0,c|0,we|0)|0;t=M;we=cn(c|0,we|0,21)|0;c=M;et=Tn(pt|0,dt|0,1048576,0)|0;et=Hr(et|0,M|0,21)|0;ot=M;Ge=Tn(Ce|0,Oe|0,Xe|0,Ge|0)|0;F=Tn(Ge|0,M|0,ne|0,F|0)|0;ce=Tn(F|0,M|0,se|0,ce|0)|0;S=Tn(ce|0,M|0,_|0,S|0)|0;v=Tn(S|0,M|0,b|0,v|0)|0;_t=Tn(v|0,M|0,bt|0,_t|0)|0;st=Tn(_t|0,M|0,L|0,st|0)|0;rt=Tn(st|0,M|0,tt|0,rt|0)|0;w=Tn(rt|0,M|0,x|0,w|0)|0;w=Tn(w|0,M|0,et|0,ot|0)|0;x=M;ot=cn(et|0,ot|0,21)|0;et=M;rt=Tn(ut|0,ft|0,1048576,0)|0;rt=Hr(rt|0,M|0,21)|0;tt=M;p=Tn(ke|0,re|0,D|0,p|0)|0;f=Tn(p|0,M|0,xe|0,f|0)|0;R=Tn(f|0,M|0,J|0,R|0)|0;y=Tn(R|0,M|0,X|0,y|0)|0;a=Tn(y|0,M|0,l|0,a|0)|0;Ze=Tn(a|0,M|0,We|0,Ze|0)|0;u=Tn(Ze|0,M|0,h|0,u|0)|0;u=Tn(u|0,M|0,rt|0,tt|0)|0;h=M;tt=cn(rt|0,tt|0,21)|0;rt=M;Ze=Tn(mt|0,j|0,1048576,0)|0;Ze=Hr(Ze|0,M|0,21)|0;We=M;Se=Tn(T|0,m|0,Ee|0,Se|0)|0;r=Tn(Se|0,M|0,te|0,r|0)|0;Ae=Tn(r|0,M|0,ze|0,Ae|0)|0;I=Tn(Ae|0,M|0,ae|0,I|0)|0;Ne=Tn(I|0,M|0,B|0,Ne|0)|0;Ne=Tn(Ne|0,M|0,Ze|0,We|0)|0;B=M;We=cn(Ze|0,We|0,21)|0;Ze=M;I=Tn(N|0,ie|0,1048576,0)|0;I=Hr(I|0,M|0,21)|0;ae=M;E=Tn(Ue|0,oe|0,de|0,E|0)|0;C=Tn(E|0,M|0,ge|0,C|0)|0;q=Tn(C|0,M|0,ct|0,q|0)|0;q=Tn(q|0,M|0,I|0,ae|0)|0;ct=M;ae=cn(I|0,ae|0,21)|0;ae=Mn(N|0,ie|0,ae|0,M|0)|0;ie=M;N=Tn(yt|0,O|0,1048576,0)|0;N=Hr(N|0,M|0,21)|0;I=M;U=Tn(je|0,U|0,N|0,I|0)|0;je=M;I=cn(N|0,I|0,21)|0;I=Mn(yt|0,O|0,I|0,M|0)|0;O=M;yt=Tn(ve|0,d|0,1048576,0)|0;yt=Hr(yt|0,M|0,21)|0;N=M;C=cn(yt|0,N|0,21)|0;C=Mn(ve|0,d|0,C|0,M|0)|0;d=M;ve=Tn(pe|0,g|0,1048576,0)|0;ve=fn(ve|0,M|0,21)|0;ge=M;E=cn(ve|0,ge|0,21)|0;E=Mn(pe|0,g|0,E|0,M|0)|0;g=M;pe=Tn(qe|0,Y|0,1048576,0)|0;pe=Hr(pe|0,M|0,21)|0;de=M;oe=cn(pe|0,de|0,21)|0;oe=Mn(qe|0,Y|0,oe|0,M|0)|0;Y=M;qe=Tn(Te|0,$|0,1048576,0)|0;qe=Hr(qe|0,M|0,21)|0;Ue=M;Ae=cn(qe|0,Ue|0,21)|0;Ae=Mn(Te|0,$|0,Ae|0,M|0)|0;$=M;Te=Tn(o|0,A|0,1048576,0)|0;Te=Hr(Te|0,M|0,21)|0;ze=M;r=cn(Te|0,ze|0,21)|0;te=M;Se=Tn(i|0,z|0,1048576,0)|0;Se=Hr(Se|0,M|0,21)|0;Ee=M;m=cn(Se|0,Ee|0,21)|0;T=M;a=Tn(s|0,t|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;l=M;y=cn(a|0,l|0,21)|0;X=M;R=Tn(w|0,x|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;J=M;f=cn(R|0,J|0,21)|0;xe=M;p=Tn(u|0,h|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;D=M;re=cn(p|0,D|0,21)|0;ke=M;st=Tn(Ne|0,B|0,1048576,0)|0;st=Hr(st|0,M|0,21)|0;L=M;ie=Tn(st|0,L|0,ae|0,ie|0)|0;ae=M;L=cn(st|0,L|0,21)|0;L=Mn(Ne|0,B|0,L|0,M|0)|0;B=M;Ne=Tn(q|0,ct|0,1048576,0)|0;Ne=Hr(Ne|0,M|0,21)|0;st=M;O=Tn(Ne|0,st|0,I|0,O|0)|0;I=M;st=cn(Ne|0,st|0,21)|0;st=Mn(q|0,ct|0,st|0,M|0)|0;ct=M;q=Tn(U|0,je|0,1048576,0)|0;q=Hr(q|0,M|0,21)|0;Ne=M;d=Tn(q|0,Ne|0,C|0,d|0)|0;C=M;Ne=cn(q|0,Ne|0,21)|0;Ne=Mn(U|0,je|0,Ne|0,M|0)|0;je=M;U=Wr(yt|0,N|0,666643,0)|0;q=M;_t=Wr(yt|0,N|0,470296,0)|0;bt=M;v=Wr(yt|0,N|0,654183,0)|0;b=M;S=Wr(yt|0,N|0,-997805,-1)|0;_=M;ce=Wr(yt|0,N|0,136657,0)|0;se=M;N=Wr(yt|0,N|0,-683901,-1)|0;N=Tn(mt|0,j|0,N|0,M|0)|0;Ze=Mn(N|0,M|0,We|0,Ze|0)|0;D=Tn(Ze|0,M|0,p|0,D|0)|0;p=M;Ze=Wr(d|0,C|0,666643,0)|0;We=M;N=Wr(d|0,C|0,470296,0)|0;j=M;mt=Wr(d|0,C|0,654183,0)|0;yt=M;F=Wr(d|0,C|0,-997805,-1)|0;ne=M;Ge=Wr(d|0,C|0,136657,0)|0;Xe=M;C=Wr(d|0,C|0,-683901,-1)|0;d=M;Oe=Wr(Ne|0,je|0,666643,0)|0;Ce=M;$e=Wr(Ne|0,je|0,470296,0)|0;Je=M;V=Wr(Ne|0,je|0,654183,0)|0;H=M;lt=Wr(Ne|0,je|0,-997805,-1)|0;ht=M;Q=Wr(Ne|0,je|0,136657,0)|0;ee=M;je=Wr(Ne|0,je|0,-683901,-1)|0;Ne=M;_=Tn(ut|0,ft|0,S|0,_|0)|0;Xe=Tn(_|0,M|0,Ge|0,Xe|0)|0;Ne=Tn(Xe|0,M|0,je|0,Ne|0)|0;rt=Mn(Ne|0,M|0,tt|0,rt|0)|0;J=Tn(rt|0,M|0,R|0,J|0)|0;R=M;rt=Wr(O|0,I|0,666643,0)|0;tt=M;Ne=Wr(O|0,I|0,470296,0)|0;je=M;Xe=Wr(O|0,I|0,654183,0)|0;Ge=M;_=Wr(O|0,I|0,-997805,-1)|0;S=M;ft=Wr(O|0,I|0,136657,0)|0;ut=M;I=Wr(O|0,I|0,-683901,-1)|0;O=M;Le=Wr(st|0,ct|0,666643,0)|0;Pe=M;it=Wr(st|0,ct|0,470296,0)|0;nt=M;Re=Wr(st|0,ct|0,654183,0)|0;Be=M;Ve=Wr(st|0,ct|0,-997805,-1)|0;He=M;P=Wr(st|0,ct|0,136657,0)|0;K=M;ct=Wr(st|0,ct|0,-683901,-1)|0;st=M;bt=Tn(mt|0,yt|0,_t|0,bt|0)|0;dt=Tn(bt|0,M|0,pt|0,dt|0)|0;ht=Tn(dt|0,M|0,lt|0,ht|0)|0;ut=Tn(ht|0,M|0,ft|0,ut|0)|0;st=Tn(ut|0,M|0,ct|0,st|0)|0;et=Mn(st|0,M|0,ot|0,et|0)|0;l=Tn(et|0,M|0,a|0,l|0)|0;a=M;et=Wr(ie|0,ae|0,666643,0)|0;et=Tn(at|0,Qe|0,et|0,M|0)|0;Ue=Tn(et|0,M|0,qe|0,Ue|0)|0;Ie=Mn(Ue|0,M|0,Me|0,Ie|0)|0;Me=M;Ue=Wr(ie|0,ae|0,470296,0)|0;qe=M;et=Wr(ie|0,ae|0,654183,0)|0;Qe=M;tt=Tn(it|0,nt|0,rt|0,tt|0)|0;Qe=Tn(tt|0,M|0,et|0,Qe|0)|0;Ye=Tn(Qe|0,M|0,Fe|0,Ye|0)|0;ze=Tn(Ye|0,M|0,Te|0,ze|0)|0;Z=Mn(ze|0,M|0,W|0,Z|0)|0;W=M;ze=Wr(ie|0,ae|0,-997805,-1)|0;Te=M;Ye=Wr(ie|0,ae|0,136657,0)|0;Fe=M;We=Tn($e|0,Je|0,Ze|0,We|0)|0;Ge=Tn(We|0,M|0,Xe|0,Ge|0)|0;He=Tn(Ge|0,M|0,Ve|0,He|0)|0;Fe=Tn(He|0,M|0,Ye|0,Fe|0)|0;De=Tn(Fe|0,M|0,Ke|0,De|0)|0;Ee=Tn(De|0,M|0,Se|0,Ee|0)|0;c=Mn(Ee|0,M|0,we|0,c|0)|0;we=M;ae=Wr(ie|0,ae|0,-683901,-1)|0;ie=M;Ee=Tn(Ie|0,Me|0,1048576,0)|0;Ee=Hr(Ee|0,M|0,21)|0;Se=M;Pe=Tn(Ue|0,qe|0,Le|0,Pe|0)|0;A=Tn(Pe|0,M|0,o|0,A|0)|0;te=Mn(A|0,M|0,r|0,te|0)|0;te=Tn(te|0,M|0,Ee|0,Se|0)|0;r=M;Se=cn(Ee|0,Se|0,21)|0;Ee=M;A=Tn(Z|0,W|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;o=M;Ce=Tn(Ne|0,je|0,Oe|0,Ce|0)|0;Be=Tn(Ce|0,M|0,Re|0,Be|0)|0;Te=Tn(Be|0,M|0,ze|0,Te|0)|0;z=Tn(Te|0,M|0,i|0,z|0)|0;T=Mn(z|0,M|0,m|0,T|0)|0;T=Tn(T|0,M|0,A|0,o|0)|0;m=M;o=cn(A|0,o|0,21)|0;A=M;z=Tn(c|0,we|0,1048576,0)|0;z=Hr(z|0,M|0,21)|0;i=M;q=Tn(N|0,j|0,U|0,q|0)|0;H=Tn(q|0,M|0,V|0,H|0)|0;S=Tn(H|0,M|0,_|0,S|0)|0;K=Tn(S|0,M|0,P|0,K|0)|0;ie=Tn(K|0,M|0,ae|0,ie|0)|0;t=Tn(ie|0,M|0,s|0,t|0)|0;X=Mn(t|0,M|0,y|0,X|0)|0;X=Tn(X|0,M|0,z|0,i|0)|0;y=M;i=cn(z|0,i|0,21)|0;z=M;t=Tn(l|0,a|0,1048576,0)|0;t=Hr(t|0,M|0,21)|0;s=M;b=Tn(F|0,ne|0,v|0,b|0)|0;ee=Tn(b|0,M|0,Q|0,ee|0)|0;O=Tn(ee|0,M|0,I|0,O|0)|0;x=Tn(O|0,M|0,w|0,x|0)|0;xe=Mn(x|0,M|0,f|0,xe|0)|0;xe=Tn(xe|0,M|0,t|0,s|0)|0;f=M;s=cn(t|0,s|0,21)|0;s=Mn(l|0,a|0,s|0,M|0)|0;a=M;l=Tn(J|0,R|0,1048576,0)|0;l=Hr(l|0,M|0,21)|0;t=M;se=Tn(C|0,d|0,ce|0,se|0)|0;h=Tn(se|0,M|0,u|0,h|0)|0;ke=Mn(h|0,M|0,re|0,ke|0)|0;ke=Tn(ke|0,M|0,l|0,t|0)|0;re=M;t=cn(l|0,t|0,21)|0;t=Mn(J|0,R|0,t|0,M|0)|0;R=M;J=Tn(D|0,p|0,1048576,0)|0;J=Hr(J|0,M|0,21)|0;l=M;B=Tn(J|0,l|0,L|0,B|0)|0;L=M;l=cn(J|0,l|0,21)|0;l=Mn(D|0,p|0,l|0,M|0)|0;p=M;D=Tn(te|0,r|0,1048576,0)|0;D=Hr(D|0,M|0,21)|0;J=M;h=cn(D|0,J|0,21)|0;u=M;se=Tn(T|0,m|0,1048576,0)|0;se=Hr(se|0,M|0,21)|0;ce=M;d=cn(se|0,ce|0,21)|0;C=M;x=Tn(X|0,y|0,1048576,0)|0;x=Hr(x|0,M|0,21)|0;w=M;a=Tn(x|0,w|0,s|0,a|0)|0;s=M;w=cn(x|0,w|0,21)|0;w=Mn(X|0,y|0,w|0,M|0)|0;y=M;X=Tn(xe|0,f|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;x=M;R=Tn(X|0,x|0,t|0,R|0)|0;t=M;x=cn(X|0,x|0,21)|0;x=Mn(xe|0,f|0,x|0,M|0)|0;f=M;xe=Tn(ke|0,re|0,1048576,0)|0;xe=Hr(xe|0,M|0,21)|0;X=M;p=Tn(xe|0,X|0,l|0,p|0)|0;l=M;X=cn(xe|0,X|0,21)|0;X=Mn(ke|0,re|0,X|0,M|0)|0;re=M;ke=Wr(B|0,L|0,666643,0)|0;ke=Tn(Ae|0,$|0,ke|0,M|0)|0;$=M;Ae=Wr(B|0,L|0,470296,0)|0;xe=M;O=Wr(B|0,L|0,654183,0)|0;I=M;ee=Wr(B|0,L|0,-997805,-1)|0;Q=M;b=Wr(B|0,L|0,136657,0)|0;v=M;L=Wr(B|0,L|0,-683901,-1)|0;L=Tn(c|0,we|0,L|0,M|0)|0;ce=Tn(L|0,M|0,se|0,ce|0)|0;z=Mn(ce|0,M|0,i|0,z|0)|0;i=M;ce=Wr(p|0,l|0,666643,0)|0;se=M;L=Wr(p|0,l|0,470296,0)|0;L=Tn(ke|0,$|0,L|0,M|0)|0;$=M;ke=Wr(p|0,l|0,654183,0)|0;we=M;c=Wr(p|0,l|0,-997805,-1)|0;B=M;ne=Wr(p|0,l|0,136657,0)|0;F=M;l=Wr(p|0,l|0,-683901,-1)|0;p=M;ie=Wr(X|0,re|0,666643,0)|0;ie=Tn(oe|0,Y|0,ie|0,M|0)|0;Y=M;oe=Wr(X|0,re|0,470296,0)|0;ae=M;K=Wr(X|0,re|0,654183,0)|0;K=Tn(L|0,$|0,K|0,M|0)|0;$=M;L=Wr(X|0,re|0,-997805,-1)|0;P=M;S=Wr(X|0,re|0,136657,0)|0;_=M;re=Wr(X|0,re|0,-683901,-1)|0;X=M;Q=Tn(Z|0,W|0,ee|0,Q|0)|0;J=Tn(Q|0,M|0,D|0,J|0)|0;F=Tn(J|0,M|0,ne|0,F|0)|0;X=Tn(F|0,M|0,re|0,X|0)|0;A=Mn(X|0,M|0,o|0,A|0)|0;o=M;X=Wr(R|0,t|0,666643,0)|0;re=M;F=Wr(R|0,t|0,470296,0)|0;F=Tn(ie|0,Y|0,F|0,M|0)|0;Y=M;ie=Wr(R|0,t|0,654183,0)|0;ne=M;J=Wr(R|0,t|0,-997805,-1)|0;J=Tn(K|0,$|0,J|0,M|0)|0;$=M;K=Wr(R|0,t|0,136657,0)|0;D=M;t=Wr(R|0,t|0,-683901,-1)|0;R=M;Q=Wr(x|0,f|0,666643,0)|0;ee=M;W=Wr(x|0,f|0,470296,0)|0;Z=M;H=Wr(x|0,f|0,654183,0)|0;V=M;q=Wr(x|0,f|0,-997805,-1)|0;U=M;j=Wr(x|0,f|0,136657,0)|0;N=M;f=Wr(x|0,f|0,-683901,-1)|0;x=M;xe=Tn(Ie|0,Me|0,Ae|0,xe|0)|0;Ee=Mn(xe|0,M|0,Se|0,Ee|0)|0;we=Tn(Ee|0,M|0,ke|0,we|0)|0;P=Tn(we|0,M|0,L|0,P|0)|0;D=Tn(P|0,M|0,K|0,D|0)|0;x=Tn(D|0,M|0,f|0,x|0)|0;f=M;D=Wr(a|0,s|0,666643,0)|0;G=Tn(D|0,M|0,k|0,G|0)|0;k=M;D=Wr(a|0,s|0,470296,0)|0;K=M;P=Wr(a|0,s|0,654183,0)|0;L=M;ye=Tn(ve|0,ge|0,me|0,ye|0)|0;be=Mn(ye|0,M|0,_e|0,be|0)|0;re=Tn(be|0,M|0,X|0,re|0)|0;L=Tn(re|0,M|0,P|0,L|0)|0;Z=Tn(L|0,M|0,W|0,Z|0)|0;W=M;L=Wr(a|0,s|0,-997805,-1)|0;P=M;re=Wr(a|0,s|0,136657,0)|0;X=M;he=Tn(pe|0,de|0,le|0,he|0)|0;ue=Mn(he|0,M|0,fe|0,ue|0)|0;se=Tn(ue|0,M|0,ce|0,se|0)|0;ae=Tn(se|0,M|0,oe|0,ae|0)|0;ne=Tn(ae|0,M|0,ie|0,ne|0)|0;X=Tn(ne|0,M|0,re|0,X|0)|0;U=Tn(X|0,M|0,q|0,U|0)|0;q=M;s=Wr(a|0,s|0,-683901,-1)|0;a=M;X=Tn(G|0,k|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;re=M;K=Tn(E|0,g|0,D|0,K|0)|0;ee=Tn(K|0,M|0,Q|0,ee|0)|0;ee=Tn(ee|0,M|0,X|0,re|0)|0;Q=M;re=cn(X|0,re|0,21)|0;re=Mn(G|0,k|0,re|0,M|0)|0;k=M;G=Tn(Z|0,W|0,1048576,0)|0;G=Hr(G|0,M|0,21)|0;X=M;P=Tn(F|0,Y|0,L|0,P|0)|0;V=Tn(P|0,M|0,H|0,V|0)|0;V=Tn(V|0,M|0,G|0,X|0)|0;H=M;X=cn(G|0,X|0,21)|0;G=M;P=Tn(U|0,q|0,1048576,0)|0;P=Hr(P|0,M|0,21)|0;L=M;a=Tn(J|0,$|0,s|0,a|0)|0;N=Tn(a|0,M|0,j|0,N|0)|0;N=Tn(N|0,M|0,P|0,L|0)|0;j=M;L=cn(P|0,L|0,21)|0;P=M;a=Tn(x|0,f|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;s=M;I=Tn(te|0,r|0,O|0,I|0)|0;B=Tn(I|0,M|0,c|0,B|0)|0;u=Mn(B|0,M|0,h|0,u|0)|0;_=Tn(u|0,M|0,S|0,_|0)|0;R=Tn(_|0,M|0,t|0,R|0)|0;R=Tn(R|0,M|0,a|0,s|0)|0;t=M;s=cn(a|0,s|0,21)|0;s=Mn(x|0,f|0,s|0,M|0)|0;f=M;x=Tn(A|0,o|0,1048576,0)|0;x=Hr(x|0,M|0,21)|0;a=M;v=Tn(l|0,p|0,b|0,v|0)|0;m=Tn(v|0,M|0,T|0,m|0)|0;C=Mn(m|0,M|0,d|0,C|0)|0;C=Tn(C|0,M|0,x|0,a|0)|0;d=M;a=cn(x|0,a|0,21)|0;a=Mn(A|0,o|0,a|0,M|0)|0;o=M;A=Tn(z|0,i|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;x=M;y=Tn(w|0,y|0,A|0,x|0)|0;w=M;x=cn(A|0,x|0,21)|0;A=M;m=Tn(ee|0,Q|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;T=M;v=cn(m|0,T|0,21)|0;b=M;p=Tn(V|0,H|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;l=M;_=cn(p|0,l|0,21)|0;S=M;u=Tn(N|0,j|0,1048576,0)|0;u=Hr(u|0,M|0,21)|0;h=M;f=Tn(s|0,f|0,u|0,h|0)|0;s=M;h=cn(u|0,h|0,21)|0;u=M;B=Tn(R|0,t|0,1048576,0)|0;B=Hr(B|0,M|0,21)|0;c=M;o=Tn(a|0,o|0,B|0,c|0)|0;a=M;c=cn(B|0,c|0,21)|0;c=Mn(R|0,t|0,c|0,M|0)|0;t=M;R=Tn(C|0,d|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;B=M;I=cn(R|0,B|0,21)|0;I=Mn(C|0,d|0,I|0,M|0)|0;d=M;C=Tn(y|0,w|0,1048576,0)|0;C=Hr(C|0,M|0,21)|0;O=M;r=cn(C|0,O|0,21)|0;r=Mn(y|0,w|0,r|0,M|0)|0;w=M;y=Wr(C|0,O|0,666643,0)|0;y=Tn(re|0,k|0,y|0,M|0)|0;k=M;re=Wr(C|0,O|0,470296,0)|0;te=M;$=Wr(C|0,O|0,654183,0)|0;J=M;Y=Wr(C|0,O|0,-997805,-1)|0;F=M;K=Wr(C|0,O|0,136657,0)|0;D=M;O=Wr(C|0,O|0,-683901,-1)|0;C=M;g=Hr(y|0,k|0,21)|0;E=M;Q=Tn(re|0,te|0,ee|0,Q|0)|0;b=Mn(Q|0,M|0,v|0,b|0)|0;b=Tn(b|0,M|0,g|0,E|0)|0;v=M;E=cn(g|0,E|0,21)|0;E=Mn(y|0,k|0,E|0,M|0)|0;k=M;y=Hr(b|0,v|0,21)|0;g=M;W=Tn($|0,J|0,Z|0,W|0)|0;G=Mn(W|0,M|0,X|0,G|0)|0;T=Tn(G|0,M|0,m|0,T|0)|0;T=Tn(T|0,M|0,y|0,g|0)|0;m=M;g=cn(y|0,g|0,21)|0;g=Mn(b|0,v|0,g|0,M|0)|0;v=M;b=Hr(T|0,m|0,21)|0;y=M;F=Tn(V|0,H|0,Y|0,F|0)|0;S=Mn(F|0,M|0,_|0,S|0)|0;S=Tn(S|0,M|0,b|0,y|0)|0;_=M;y=cn(b|0,y|0,21)|0;y=Mn(T|0,m|0,y|0,M|0)|0;m=M;T=Hr(S|0,_|0,21)|0;b=M;q=Tn(K|0,D|0,U|0,q|0)|0;P=Mn(q|0,M|0,L|0,P|0)|0;l=Tn(P|0,M|0,p|0,l|0)|0;l=Tn(l|0,M|0,T|0,b|0)|0;p=M;b=cn(T|0,b|0,21)|0;b=Mn(S|0,_|0,b|0,M|0)|0;_=M;S=Hr(l|0,p|0,21)|0;T=M;C=Tn(N|0,j|0,O|0,C|0)|0;u=Mn(C|0,M|0,h|0,u|0)|0;u=Tn(u|0,M|0,S|0,T|0)|0;h=M;T=cn(S|0,T|0,21)|0;T=Mn(l|0,p|0,T|0,M|0)|0;p=M;l=Hr(u|0,h|0,21)|0;S=M;s=Tn(f|0,s|0,l|0,S|0)|0;f=M;S=cn(l|0,S|0,21)|0;S=Mn(u|0,h|0,S|0,M|0)|0;h=M;u=Hr(s|0,f|0,21)|0;l=M;t=Tn(u|0,l|0,c|0,t|0)|0;c=M;l=cn(u|0,l|0,21)|0;l=Mn(s|0,f|0,l|0,M|0)|0;f=M;s=Hr(t|0,c|0,21)|0;u=M;a=Tn(o|0,a|0,s|0,u|0)|0;o=M;u=cn(s|0,u|0,21)|0;u=Mn(t|0,c|0,u|0,M|0)|0;c=M;t=Hr(a|0,o|0,21)|0;s=M;d=Tn(t|0,s|0,I|0,d|0)|0;I=M;s=cn(t|0,s|0,21)|0;s=Mn(a|0,o|0,s|0,M|0)|0;o=M;a=Hr(d|0,I|0,21)|0;t=M;i=Tn(R|0,B|0,z|0,i|0)|0;A=Mn(i|0,M|0,x|0,A|0)|0;A=Tn(A|0,M|0,a|0,t|0)|0;x=M;t=cn(a|0,t|0,21)|0;t=Mn(d|0,I|0,t|0,M|0)|0;I=M;d=Hr(A|0,x|0,21)|0;a=M;w=Tn(d|0,a|0,r|0,w|0)|0;r=M;a=cn(d|0,a|0,21)|0;a=Mn(A|0,x|0,a|0,M|0)|0;x=M;A=Hr(w|0,r|0,21)|0;d=M;i=cn(A|0,d|0,21)|0;i=Mn(w|0,r|0,i|0,M|0)|0;r=M;w=Wr(A|0,d|0,666643,0)|0;k=Tn(w|0,M|0,E|0,k|0)|0;E=M;w=Wr(A|0,d|0,470296,0)|0;w=Tn(g|0,v|0,w|0,M|0)|0;v=M;g=Wr(A|0,d|0,654183,0)|0;g=Tn(y|0,m|0,g|0,M|0)|0;m=M;y=Wr(A|0,d|0,-997805,-1)|0;y=Tn(b|0,_|0,y|0,M|0)|0;_=M;b=Wr(A|0,d|0,136657,0)|0;b=Tn(T|0,p|0,b|0,M|0)|0;p=M;d=Wr(A|0,d|0,-683901,-1)|0;d=Tn(S|0,h|0,d|0,M|0)|0;h=M;S=Hr(k|0,E|0,21)|0;A=M;v=Tn(w|0,v|0,S|0,A|0)|0;w=M;A=cn(S|0,A|0,21)|0;A=Mn(k|0,E|0,A|0,M|0)|0;E=M;k=Hr(v|0,w|0,21)|0;S=M;m=Tn(g|0,m|0,k|0,S|0)|0;g=M;S=cn(k|0,S|0,21)|0;S=Mn(v|0,w|0,S|0,M|0)|0;w=M;v=Hr(m|0,g|0,21)|0;k=M;_=Tn(y|0,_|0,v|0,k|0)|0;y=M;k=cn(v|0,k|0,21)|0;k=Mn(m|0,g|0,k|0,M|0)|0;g=M;m=Hr(_|0,y|0,21)|0;v=M;p=Tn(b|0,p|0,m|0,v|0)|0;b=M;v=cn(m|0,v|0,21)|0;v=Mn(_|0,y|0,v|0,M|0)|0;y=M;_=Hr(p|0,b|0,21)|0;m=M;h=Tn(d|0,h|0,_|0,m|0)|0;d=M;m=cn(_|0,m|0,21)|0;m=Mn(p|0,b|0,m|0,M|0)|0;b=M;p=Hr(h|0,d|0,21)|0;_=M;f=Tn(p|0,_|0,l|0,f|0)|0;l=M;_=cn(p|0,_|0,21)|0;_=Mn(h|0,d|0,_|0,M|0)|0;d=M;h=Hr(f|0,l|0,21)|0;p=M;c=Tn(h|0,p|0,u|0,c|0)|0;u=M;p=cn(h|0,p|0,21)|0;p=Mn(f|0,l|0,p|0,M|0)|0;l=M;f=Hr(c|0,u|0,21)|0;h=M;o=Tn(f|0,h|0,s|0,o|0)|0;s=M;h=cn(f|0,h|0,21)|0;h=Mn(c|0,u|0,h|0,M|0)|0;u=M;c=Hr(o|0,s|0,21)|0;f=M;I=Tn(c|0,f|0,t|0,I|0)|0;t=M;f=cn(c|0,f|0,21)|0;f=Mn(o|0,s|0,f|0,M|0)|0;s=M;o=Hr(I|0,t|0,21)|0;c=M;x=Tn(o|0,c|0,a|0,x|0)|0;a=M;c=cn(o|0,c|0,21)|0;c=Mn(I|0,t|0,c|0,M|0)|0;t=M;I=Hr(x|0,a|0,21)|0;o=M;r=Tn(I|0,o|0,i|0,r|0)|0;i=M;o=cn(I|0,o|0,21)|0;o=Mn(x|0,a|0,o|0,M|0)|0;a=M;n[e>>0]=A;x=fn(A|0,E|0,8)|0;n[e+1>>0]=x;E=fn(A|0,E|0,16)|0;A=M;x=cn(S|0,w|0,5)|0;n[e+2>>0]=x|E;E=fn(S|0,w|0,3)|0;n[e+3>>0]=E;E=fn(S|0,w|0,11)|0;n[e+4>>0]=E;w=fn(S|0,w|0,19)|0;S=M;E=cn(k|0,g|0,2)|0;n[e+5>>0]=E|w;w=fn(k|0,g|0,6)|0;n[e+6>>0]=w;g=fn(k|0,g|0,14)|0;k=M;w=cn(v|0,y|0,7)|0;n[e+7>>0]=w|g;g=fn(v|0,y|0,1)|0;n[e+8>>0]=g;g=fn(v|0,y|0,9)|0;n[e+9>>0]=g;y=fn(v|0,y|0,17)|0;v=M;g=cn(m|0,b|0,4)|0;n[e+10>>0]=g|y;y=fn(m|0,b|0,4)|0;n[e+11>>0]=y;y=fn(m|0,b|0,12)|0;n[e+12>>0]=y;b=fn(m|0,b|0,20)|0;m=M;y=cn(_|0,d|0,1)|0;n[e+13>>0]=y|b;b=fn(_|0,d|0,7)|0;n[e+14>>0]=b;d=fn(_|0,d|0,15)|0;_=M;b=cn(p|0,l|0,6)|0;n[e+15>>0]=b|d;d=fn(p|0,l|0,2)|0;n[e+16>>0]=d;d=fn(p|0,l|0,10)|0;n[e+17>>0]=d;l=fn(p|0,l|0,18)|0;p=M;d=cn(h|0,u|0,3)|0;n[e+18>>0]=d|l;l=fn(h|0,u|0,5)|0;n[e+19>>0]=l;u=fn(h|0,u|0,13)|0;n[e+20>>0]=u;n[e+21>>0]=f;u=fn(f|0,s|0,8)|0;n[e+22>>0]=u;s=fn(f|0,s|0,16)|0;f=M;u=cn(c|0,t|0,5)|0;n[e+23>>0]=u|s;s=fn(c|0,t|0,3)|0;n[e+24>>0]=s;s=fn(c|0,t|0,11)|0;n[e+25>>0]=s;t=fn(c|0,t|0,19)|0;c=M;s=cn(o|0,a|0,2)|0;n[e+26>>0]=s|t;t=fn(o|0,a|0,6)|0;n[e+27>>0]=t;a=fn(o|0,a|0,14)|0;o=M;t=cn(r|0,i|0,7)|0;n[e+28>>0]=a|t;t=fn(r|0,i|0,1)|0;n[e+29>>0]=t;t=fn(r|0,i|0,9)|0;n[e+30>>0]=t;i=fn(r|0,i|0,17)|0;n[e+31>>0]=i;return}function se(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0;jr(r,t);t=n;i=e;o=t+64|0;do{a[t>>2]=a[i>>2];t=t+4|0;i=i+4|0}while((t|0)<(o|0));m=0;t=a[r>>2]|0;i=a[r+4>>2]|0;while(1){x=a[n+32>>2]|0;_=a[n+32+4>>2]|0;c=Gr(x,_,14)|0;I=M;S=Gr(x,_,18)|0;I=M^I;T=Gr(x,_,41)|0;y=a[n+40>>2]|0;h=a[n+40+4>>2]|0;f=a[n+48>>2]|0;L=a[n+48+4>>2]|0;p=464+(m<<3)|0;l=a[p>>2]|0;p=a[p+4>>2]|0;k=a[n+56>>2]|0;v=a[n+56+4>>2]|0;I=Tn(t|0,i|0,S^c^T|0,I^M|0)|0;p=Tn(I|0,M|0,l|0,p|0)|0;p=Tn(p|0,M|0,(f^y)&x^f|0,(L^h)&_^L|0)|0;v=Tn(p|0,M|0,k|0,v|0)|0;k=M;p=Tn(v|0,k|0,a[n+24>>2]|0,a[n+24+4>>2]|0)|0;l=M;a[n+24>>2]=p;a[n+24+4>>2]=l;I=a[n>>2]|0;T=a[n+4>>2]|0;c=Gr(I,T,28)|0;S=M;u=Gr(I,T,34)|0;S=M^S;w=Gr(I,T,39)|0;A=a[n+8>>2]|0;C=a[n+8+4>>2]|0;z=a[n+16>>2]|0;O=a[n+16+4>>2]|0;S=Tn(v|0,k|0,u^c^w|0,S^M|0)|0;S=Tn(S|0,M|0,(z|A)&I|z&A|0,(O|C)&T|O&C|0)|0;w=M;a[n+56>>2]=S;a[n+56+4>>2]=w;c=Gr(p,l,14)|0;u=M;k=Gr(p,l,18)|0;u=M^u;v=Gr(p,l,41)|0;s=m|1;E=a[464+(s<<3)>>2]|0;P=a[464+(s<<3)+4>>2]|0;u=Tn(a[r+(s<<3)>>2]|0,a[r+(s<<3)+4>>2]|0,k^c^v|0,u^M|0)|0;P=Tn(u|0,M|0,E|0,P|0)|0;P=Tn(P|0,M|0,(y^x)&p^y|0,(h^_)&l^h|0)|0;L=Tn(P|0,M|0,f|0,L|0)|0;f=M;O=Tn(L|0,f|0,z|0,O|0)|0;z=M;a[n+16>>2]=O;a[n+16+4>>2]=z;P=Gr(S,w,28)|0;E=M;u=Gr(S,w,34)|0;E=M^E;v=Gr(S,w,39)|0;E=Tn(L|0,f|0,u^P^v|0,E^M|0)|0;E=Tn(E|0,M|0,(A|I)&S|A&I|0,(C|T)&w|C&T|0)|0;v=M;a[n+48>>2]=E;a[n+48+4>>2]=v;P=Gr(O,z,14)|0;u=M;f=Gr(O,z,18)|0;u=M^u;L=Gr(O,z,41)|0;c=m|2;k=a[464+(c<<3)>>2]|0;d=a[464+(c<<3)+4>>2]|0;u=Tn(a[r+(c<<3)>>2]|0,a[r+(c<<3)+4>>2]|0,f^P^L|0,u^M|0)|0;d=Tn(u|0,M|0,k|0,d|0)|0;_=Tn(d|0,M|0,(x^p)&O^x|0,(_^l)&z^_|0)|0;h=Tn(_|0,M|0,y|0,h|0)|0;y=M;C=Tn(h|0,y|0,A|0,C|0)|0;A=M;a[n+8>>2]=C;a[n+8+4>>2]=A;_=Gr(E,v,28)|0;x=M;d=Gr(E,v,34)|0;x=M^x;k=Gr(E,v,39)|0;x=Tn(h|0,y|0,d^_^k|0,x^M|0)|0;x=Tn(x|0,M|0,(I|S)&E|I&S|0,(T|w)&v|T&w|0)|0;k=M;a[n+40>>2]=x;a[n+40+4>>2]=k;_=Gr(C,A,14)|0;d=M;y=Gr(C,A,18)|0;d=M^d;h=Gr(C,A,41)|0;u=m|3;L=a[464+(u<<3)>>2]|0;P=a[464+(u<<3)+4>>2]|0;f=a[n+32>>2]|0;b=a[n+32+4>>2]|0;d=Tn(a[r+(u<<3)>>2]|0,a[r+(u<<3)+4>>2]|0,y^_^h|0,d^M|0)|0;P=Tn(d|0,M|0,L|0,P|0)|0;l=Tn(P|0,M|0,(p^O)&C^p|0,(l^z)&A^l|0)|0;b=Tn(l|0,M|0,f|0,b|0)|0;f=M;T=Tn(b|0,f|0,I|0,T|0)|0;I=M;a[n>>2]=T;a[n+4>>2]=I;l=Gr(x,k,28)|0;p=M;P=Gr(x,k,34)|0;p=M^p;L=Gr(x,k,39)|0;p=Tn(b|0,f|0,P^l^L|0,p^M|0)|0;w=Tn(p|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;S=M;a[n+32>>2]=w;a[n+32+4>>2]=S;p=Gr(T,I,14)|0;L=M;l=Gr(T,I,18)|0;L=M^L;P=Gr(T,I,41)|0;f=m|4;b=a[464+(f<<3)>>2]|0;d=a[464+(f<<3)+4>>2]|0;h=a[n+24>>2]|0;_=a[n+24+4>>2]|0;L=Tn(a[r+(f<<3)>>2]|0,a[r+(f<<3)+4>>2]|0,l^p^P|0,L^M|0)|0;d=Tn(L|0,M|0,b|0,d|0)|0;z=Tn(d|0,M|0,(O^C)&T^O|0,(z^A)&I^z|0)|0;_=Tn(z|0,M|0,h|0,_|0)|0;h=M;z=Tn(_|0,h|0,a[n+56>>2]|0,a[n+56+4>>2]|0)|0;O=M;a[n+56>>2]=z;a[n+56+4>>2]=O;d=Gr(w,S,28)|0;b=M;L=Gr(w,S,34)|0;b=M^b;P=Gr(w,S,39)|0;b=Tn(_|0,h|0,L^d^P|0,b^M|0)|0;v=Tn(b|0,M|0,(E|x)&w|E&x|0,(v|k)&S|v&k|0)|0;E=M;a[n+24>>2]=v;a[n+24+4>>2]=E;b=Gr(z,O,14)|0;P=M;d=Gr(z,O,18)|0;P=M^P;L=Gr(z,O,41)|0;h=m|5;_=a[464+(h<<3)>>2]|0;p=a[464+(h<<3)+4>>2]|0;l=a[n+16>>2]|0;y=a[n+16+4>>2]|0;P=Tn(a[r+(h<<3)>>2]|0,a[r+(h<<3)+4>>2]|0,d^b^L|0,P^M|0)|0;p=Tn(P|0,M|0,_|0,p|0)|0;A=Tn(p|0,M|0,(C^T)&z^C|0,(A^I)&O^A|0)|0;y=Tn(A|0,M|0,l|0,y|0)|0;l=M;A=Tn(y|0,l|0,a[n+48>>2]|0,a[n+48+4>>2]|0)|0;C=M;a[n+48>>2]=A;a[n+48+4>>2]=C;p=Gr(v,E,28)|0;_=M;P=Gr(v,E,34)|0;_=M^_;L=Gr(v,E,39)|0;_=Tn(y|0,l|0,P^p^L|0,_^M|0)|0;k=Tn(_|0,M|0,(x|w)&v|x&w|0,(k|S)&E|k&S|0)|0;x=M;a[n+16>>2]=k;a[n+16+4>>2]=x;_=Gr(A,C,14)|0;L=M;p=Gr(A,C,18)|0;L=M^L;P=Gr(A,C,41)|0;l=m|6;y=a[464+(l<<3)>>2]|0;b=a[464+(l<<3)+4>>2]|0;d=a[n+8>>2]|0;t=a[n+8+4>>2]|0;L=Tn(a[r+(l<<3)>>2]|0,a[r+(l<<3)+4>>2]|0,p^_^P|0,L^M|0)|0;b=Tn(L|0,M|0,y|0,b|0)|0;I=Tn(b|0,M|0,(T^z)&A^T|0,(I^O)&C^I|0)|0;t=Tn(I|0,M|0,d|0,t|0)|0;d=M;I=Tn(t|0,d|0,a[n+40>>2]|0,a[n+40+4>>2]|0)|0;T=M;a[n+40>>2]=I;a[n+40+4>>2]=T;b=Gr(k,x,28)|0;y=M;L=Gr(k,x,34)|0;y=M^y;P=Gr(k,x,39)|0;y=Tn(t|0,d|0,L^b^P|0,y^M|0)|0;S=Tn(y|0,M|0,(w|v)&k|w&v|0,(S|E)&x|S&E|0)|0;w=M;a[n+8>>2]=S;a[n+8+4>>2]=w;y=Gr(I,T,14)|0;P=M;b=Gr(I,T,18)|0;P=M^P;L=Gr(I,T,41)|0;d=m|7;t=a[464+(d<<3)>>2]|0;_=a[464+(d<<3)+4>>2]|0;p=a[n>>2]|0;i=a[n+4>>2]|0;P=Tn(a[r+(d<<3)>>2]|0,a[r+(d<<3)+4>>2]|0,b^y^L|0,P^M|0)|0;_=Tn(P|0,M|0,t|0,_|0)|0;O=Tn(_|0,M|0,(z^A)&I^z|0,(O^C)&T^O|0)|0;i=Tn(O|0,M|0,p|0,i|0)|0;p=M;O=Tn(i|0,p|0,a[n+32>>2]|0,a[n+32+4>>2]|0)|0;z=M;a[n+32>>2]=O;a[n+32+4>>2]=z;_=Gr(S,w,28)|0;t=M;P=Gr(S,w,34)|0;t=M^t;L=Gr(S,w,39)|0;t=Tn(i|0,p|0,P^_^L|0,t^M|0)|0;E=Tn(t|0,M|0,(v|k)&S|v&k|0,(E|x)&w|E&x|0)|0;v=M;a[n>>2]=E;a[n+4>>2]=v;t=Gr(O,z,14)|0;L=M;_=Gr(O,z,18)|0;L=M^L;P=Gr(O,z,41)|0;p=m|8;i=a[464+(p<<3)>>2]|0;y=a[464+(p<<3)+4>>2]|0;b=a[n+56>>2]|0;o=a[n+56+4>>2]|0;L=Tn(a[r+(p<<3)>>2]|0,a[r+(p<<3)+4>>2]|0,_^t^P|0,L^M|0)|0;y=Tn(L|0,M|0,i|0,y|0)|0;C=Tn(y|0,M|0,(A^I)&O^A|0,(C^T)&z^C|0)|0;o=Tn(C|0,M|0,b|0,o|0)|0;b=M;C=Tn(o|0,b|0,a[n+24>>2]|0,a[n+24+4>>2]|0)|0;A=M;a[n+24>>2]=C;a[n+24+4>>2]=A;y=Gr(E,v,28)|0;i=M;L=Gr(E,v,34)|0;i=M^i;P=Gr(E,v,39)|0;i=Tn(o|0,b|0,L^y^P|0,i^M|0)|0;x=Tn(i|0,M|0,(k|S)&E|k&S|0,(x|w)&v|x&w|0)|0;k=M;a[n+56>>2]=x;a[n+56+4>>2]=k;i=Gr(C,A,14)|0;P=M;y=Gr(C,A,18)|0;P=M^P;L=Gr(C,A,41)|0;b=m|9;o=a[464+(b<<3)>>2]|0;t=a[464+(b<<3)+4>>2]|0;_=a[n+48>>2]|0;g=a[n+48+4>>2]|0;P=Tn(a[r+(b<<3)>>2]|0,a[r+(b<<3)+4>>2]|0,y^i^L|0,P^M|0)|0;t=Tn(P|0,M|0,o|0,t|0)|0;T=Tn(t|0,M|0,(I^O)&C^I|0,(T^z)&A^T|0)|0;g=Tn(T|0,M|0,_|0,g|0)|0;_=M;T=Tn(g|0,_|0,a[n+16>>2]|0,a[n+16+4>>2]|0)|0;I=M;a[n+16>>2]=T;a[n+16+4>>2]=I;t=Gr(x,k,28)|0;o=M;P=Gr(x,k,34)|0;o=M^o;L=Gr(x,k,39)|0;o=Tn(g|0,_|0,P^t^L|0,o^M|0)|0;w=Tn(o|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;S=M;a[n+48>>2]=w;a[n+48+4>>2]=S;o=Gr(T,I,14)|0;L=M;t=Gr(T,I,18)|0;L=M^L;P=Gr(T,I,41)|0;_=m|10;g=a[464+(_<<3)>>2]|0;i=a[464+(_<<3)+4>>2]|0;y=a[n+40>>2]|0;B=a[n+40+4>>2]|0;L=Tn(a[r+(_<<3)>>2]|0,a[r+(_<<3)+4>>2]|0,t^o^P|0,L^M|0)|0;i=Tn(L|0,M|0,g|0,i|0)|0;z=Tn(i|0,M|0,(O^C)&T^O|0,(z^A)&I^z|0)|0;B=Tn(z|0,M|0,y|0,B|0)|0;y=M;z=Tn(B|0,y|0,a[n+8>>2]|0,a[n+8+4>>2]|0)|0;O=M;a[n+8>>2]=z;a[n+8+4>>2]=O;i=Gr(w,S,28)|0;g=M;L=Gr(w,S,34)|0;g=M^g;P=Gr(w,S,39)|0;g=Tn(B|0,y|0,L^i^P|0,g^M|0)|0;v=Tn(g|0,M|0,(E|x)&w|E&x|0,(v|k)&S|v&k|0)|0;E=M;a[n+40>>2]=v;a[n+40+4>>2]=E;g=Gr(z,O,14)|0;P=M;i=Gr(z,O,18)|0;P=M^P;L=Gr(z,O,41)|0;y=m|11;B=a[464+(y<<3)>>2]|0;o=a[464+(y<<3)+4>>2]|0;t=a[n+32>>2]|0;U=a[n+32+4>>2]|0;P=Tn(a[r+(y<<3)>>2]|0,a[r+(y<<3)+4>>2]|0,i^g^L|0,P^M|0)|0;o=Tn(P|0,M|0,B|0,o|0)|0;A=Tn(o|0,M|0,(C^T)&z^C|0,(A^I)&O^A|0)|0;U=Tn(A|0,M|0,t|0,U|0)|0;t=M;A=Tn(U|0,t|0,a[n>>2]|0,a[n+4>>2]|0)|0;C=M;a[n>>2]=A;a[n+4>>2]=C;o=Gr(v,E,28)|0;B=M;P=Gr(v,E,34)|0;B=M^B;L=Gr(v,E,39)|0;B=Tn(U|0,t|0,P^o^L|0,B^M|0)|0;k=Tn(B|0,M|0,(x|w)&v|x&w|0,(k|S)&E|k&S|0)|0;x=M;a[n+32>>2]=k;a[n+32+4>>2]=x;B=Gr(A,C,14)|0;L=M;o=Gr(A,C,18)|0;L=M^L;P=Gr(A,C,41)|0;t=m|12;U=a[464+(t<<3)>>2]|0;g=a[464+(t<<3)+4>>2]|0;i=a[n+24>>2]|0;j=a[n+24+4>>2]|0;L=Tn(a[r+(t<<3)>>2]|0,a[r+(t<<3)+4>>2]|0,o^B^P|0,L^M|0)|0;g=Tn(L|0,M|0,U|0,g|0)|0;I=Tn(g|0,M|0,(T^z)&A^T|0,(I^O)&C^I|0)|0;j=Tn(I|0,M|0,i|0,j|0)|0;i=M;I=Tn(j|0,i|0,a[n+56>>2]|0,a[n+56+4>>2]|0)|0;T=M;a[n+56>>2]=I;a[n+56+4>>2]=T;g=Gr(k,x,28)|0;U=M;L=Gr(k,x,34)|0;U=M^U;P=Gr(k,x,39)|0;U=Tn(j|0,i|0,L^g^P|0,U^M|0)|0;S=Tn(U|0,M|0,(w|v)&k|w&v|0,(S|E)&x|S&E|0)|0;w=M;a[n+24>>2]=S;a[n+24+4>>2]=w;U=Gr(I,T,14)|0;P=M;g=Gr(I,T,18)|0;P=M^P;L=Gr(I,T,41)|0;i=m|13;j=a[464+(i<<3)>>2]|0;B=a[464+(i<<3)+4>>2]|0;o=a[n+16>>2]|0;q=a[n+16+4>>2]|0;P=Tn(a[r+(i<<3)>>2]|0,a[r+(i<<3)+4>>2]|0,g^U^L|0,P^M|0)|0;B=Tn(P|0,M|0,j|0,B|0)|0;O=Tn(B|0,M|0,(z^A)&I^z|0,(O^C)&T^O|0)|0;q=Tn(O|0,M|0,o|0,q|0)|0;o=M;O=Tn(q|0,o|0,a[n+48>>2]|0,a[n+48+4>>2]|0)|0;z=M;a[n+48>>2]=O;a[n+48+4>>2]=z;B=Gr(S,w,28)|0;j=M;P=Gr(S,w,34)|0;j=M^j;L=Gr(S,w,39)|0;j=Tn(q|0,o|0,P^B^L|0,j^M|0)|0;E=Tn(j|0,M|0,(v|k)&S|v&k|0,(E|x)&w|E&x|0)|0;v=M;a[n+16>>2]=E;a[n+16+4>>2]=v;j=Gr(O,z,14)|0;L=M;B=Gr(O,z,18)|0;L=M^L;P=Gr(O,z,41)|0;o=m|14;q=a[464+(o<<3)>>2]|0;U=a[464+(o<<3)+4>>2]|0;g=a[n+8>>2]|0;N=a[n+8+4>>2]|0;L=Tn(a[r+(o<<3)>>2]|0,a[r+(o<<3)+4>>2]|0,B^j^P|0,L^M|0)|0;U=Tn(L|0,M|0,q|0,U|0)|0;C=Tn(U|0,M|0,(A^I)&O^A|0,(C^T)&z^C|0)|0;N=Tn(C|0,M|0,g|0,N|0)|0;g=M;C=Tn(N|0,g|0,a[n+40>>2]|0,a[n+40+4>>2]|0)|0;A=M;a[n+40>>2]=C;a[n+40+4>>2]=A;U=Gr(E,v,28)|0;q=M;L=Gr(E,v,34)|0;q=M^q;P=Gr(E,v,39)|0;q=Tn(N|0,g|0,L^U^P|0,q^M|0)|0;x=Tn(q|0,M|0,(k|S)&E|k&S|0,(x|w)&v|x&w|0)|0;k=M;a[n+8>>2]=x;a[n+8+4>>2]=k;q=Gr(C,A,14)|0;P=M;U=Gr(C,A,18)|0;P=M^P;L=Gr(C,A,41)|0;g=m|15;N=a[464+(g<<3)>>2]|0;j=a[464+(g<<3)+4>>2]|0;B=a[n>>2]|0;R=a[n+4>>2]|0;P=Tn(a[r+(g<<3)>>2]|0,a[r+(g<<3)+4>>2]|0,U^q^L|0,P^M|0)|0;j=Tn(P|0,M|0,N|0,j|0)|0;T=Tn(j|0,M|0,(I^O)&C^I|0,(T^z)&A^T|0)|0;R=Tn(T|0,M|0,B|0,R|0)|0;B=M;T=Tn(R|0,B|0,a[n+32>>2]|0,a[n+32+4>>2]|0)|0;a[n+32>>2]=T;a[n+32+4>>2]=M;T=Gr(x,k,28)|0;A=M;z=Gr(x,k,34)|0;A=M^A;I=Gr(x,k,39)|0;A=Tn(R|0,B|0,z^T^I|0,A^M|0)|0;v=Tn(A|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;a[n>>2]=v;a[n+4>>2]=M;if((m|0)==64){t=0;break}N=a[r+(o<<3)>>2]|0;O=a[r+(o<<3)+4>>2]|0;q=Gr(N,O,19)|0;I=M;C=Gr(N,O,61)|0;j=M;O=fn(N|0,O|0,6)|0;j=Tn(O^q^C|0,M^I^j|0,a[r+(b<<3)>>2]|0,a[r+(b<<3)+4>>2]|0)|0;I=M;C=a[r+(s<<3)>>2]|0;q=a[r+(s<<3)+4>>2]|0;O=Gr(C,q,1)|0;N=M;R=Gr(C,q,8)|0;P=M;z=fn(C|0,q|0,7)|0;P=M^N^P;N=r+(m<<3)|0;N=Tn(j|0,I|0,a[N>>2]|0,a[N+4>>2]|0)|0;P=Tn(N|0,M|0,z^O^R|0,P|0)|0;R=M;m=m+16|0;O=r+(m<<3)|0;a[O>>2]=P;a[O+4>>2]=R;O=a[r+(g<<3)>>2]|0;z=a[r+(g<<3)+4>>2]|0;N=Gr(O,z,19)|0;I=M;j=Gr(O,z,61)|0;B=M;z=fn(O|0,z|0,6)|0;B=Tn(z^N^j|0,M^I^B|0,a[r+(s+9<<3)>>2]|0,a[r+(s+9<<3)+4>>2]|0)|0;I=M;j=a[r+(s+1<<3)>>2]|0;N=a[r+(s+1<<3)+4>>2]|0;z=Gr(j,N,1)|0;O=M;U=Gr(j,N,8)|0;L=M;T=fn(j|0,N|0,7)|0;L=M^O^L;q=Tn(B|0,I|0,C|0,q|0)|0;L=Tn(q|0,M|0,T^z^U|0,L|0)|0;U=M;a[r+(s+16<<3)>>2]=L;a[r+(s+16<<3)+4>>2]=U;z=Gr(P,R,19)|0;T=M;q=Gr(P,R,61)|0;C=M;R=fn(P|0,R|0,6)|0;C=Tn(R^z^q|0,M^T^C|0,a[r+(y<<3)>>2]|0,a[r+(y<<3)+4>>2]|0)|0;T=M;q=a[r+(u<<3)>>2]|0;z=a[r+(u<<3)+4>>2]|0;R=Gr(q,z,1)|0;P=M;I=Gr(q,z,8)|0;B=M;O=fn(q|0,z|0,7)|0;B=M^P^B;N=Tn(C|0,T|0,j|0,N|0)|0;B=Tn(N|0,M|0,O^R^I|0,B|0)|0;I=M;a[r+(c+16<<3)>>2]=B;a[r+(c+16<<3)+4>>2]=I;R=Gr(L,U,19)|0;O=M;N=Gr(L,U,61)|0;j=M;U=fn(L|0,U|0,6)|0;j=Tn(U^R^N|0,M^O^j|0,a[r+(u+9<<3)>>2]|0,a[r+(u+9<<3)+4>>2]|0)|0;O=M;N=a[r+(u+1<<3)>>2]|0;R=a[r+(u+1<<3)+4>>2]|0;U=Gr(N,R,1)|0;L=M;T=Gr(N,R,8)|0;C=M;P=fn(N|0,R|0,7)|0;C=M^L^C;z=Tn(j|0,O|0,q|0,z|0)|0;C=Tn(z|0,M|0,P^U^T|0,C|0)|0;T=M;a[r+(u+16<<3)>>2]=C;a[r+(u+16<<3)+4>>2]=T;U=Gr(B,I,19)|0;P=M;z=Gr(B,I,61)|0;q=M;I=fn(B|0,I|0,6)|0;q=Tn(I^U^z|0,M^P^q|0,a[r+(i<<3)>>2]|0,a[r+(i<<3)+4>>2]|0)|0;P=M;z=a[r+(h<<3)>>2]|0;U=a[r+(h<<3)+4>>2]|0;I=Gr(z,U,1)|0;B=M;O=Gr(z,U,8)|0;j=M;L=fn(z|0,U|0,7)|0;j=M^B^j;R=Tn(q|0,P|0,N|0,R|0)|0;j=Tn(R|0,M|0,L^I^O|0,j|0)|0;O=M;a[r+(f+16<<3)>>2]=j;a[r+(f+16<<3)+4>>2]=O;I=Gr(C,T,19)|0;L=M;R=Gr(C,T,61)|0;N=M;T=fn(C|0,T|0,6)|0;N=Tn(T^I^R|0,M^L^N|0,a[r+(h+9<<3)>>2]|0,a[r+(h+9<<3)+4>>2]|0)|0;L=M;R=a[r+(h+1<<3)>>2]|0;I=a[r+(h+1<<3)+4>>2]|0;T=Gr(R,I,1)|0;C=M;P=Gr(R,I,8)|0;q=M;B=fn(R|0,I|0,7)|0;q=M^C^q;U=Tn(N|0,L|0,z|0,U|0)|0;q=Tn(U|0,M|0,B^T^P|0,q|0)|0;P=M;a[r+(h+16<<3)>>2]=q;a[r+(h+16<<3)+4>>2]=P;T=Gr(j,O,19)|0;B=M;U=Gr(j,O,61)|0;z=M;O=fn(j|0,O|0,6)|0;z=Tn(O^T^U|0,M^B^z|0,a[r+(g<<3)>>2]|0,a[r+(g<<3)+4>>2]|0)|0;B=M;U=a[r+(d<<3)>>2]|0;T=a[r+(d<<3)+4>>2]|0;O=Gr(U,T,1)|0;j=M;L=Gr(U,T,8)|0;N=M;C=fn(U|0,T|0,7)|0;N=M^j^N;I=Tn(z|0,B|0,R|0,I|0)|0;N=Tn(I|0,M|0,C^O^L|0,N|0)|0;L=M;a[r+(l+16<<3)>>2]=N;a[r+(l+16<<3)+4>>2]=L;O=Gr(q,P,19)|0;C=M;I=Gr(q,P,61)|0;R=M;P=fn(q|0,P|0,6)|0;R=Tn(P^O^I|0,M^C^R|0,a[r+(d+9<<3)>>2]|0,a[r+(d+9<<3)+4>>2]|0)|0;C=M;I=a[r+(d+1<<3)>>2]|0;O=a[r+(d+1<<3)+4>>2]|0;P=Gr(I,O,1)|0;q=M;B=Gr(I,O,8)|0;z=M;j=fn(I|0,O|0,7)|0;z=M^q^z;T=Tn(R|0,C|0,U|0,T|0)|0;z=Tn(T|0,M|0,j^P^B|0,z|0)|0;B=M;a[r+(d+16<<3)>>2]=z;a[r+(d+16<<3)+4>>2]=B;P=Gr(N,L,19)|0;j=M;T=Gr(N,L,61)|0;U=M;L=fn(N|0,L|0,6)|0;U=Tn(L^P^T|0,M^j^U|0,a[r+(p+9<<3)>>2]|0,a[r+(p+9<<3)+4>>2]|0)|0;j=M;T=a[r+(b<<3)>>2]|0;P=a[r+(b<<3)+4>>2]|0;L=Gr(T,P,1)|0;N=M;C=Gr(T,P,8)|0;R=M;q=fn(T|0,P|0,7)|0;R=M^N^R;O=Tn(U|0,j|0,I|0,O|0)|0;R=Tn(O|0,M|0,q^L^C|0,R|0)|0;C=M;a[r+(p+16<<3)>>2]=R;a[r+(p+16<<3)+4>>2]=C;L=Gr(z,B,19)|0;q=M;O=Gr(z,B,61)|0;I=M;B=fn(z|0,B|0,6)|0;I=Tn(B^L^O|0,M^q^I|0,a[r+(b+9<<3)>>2]|0,a[r+(b+9<<3)+4>>2]|0)|0;q=M;O=a[r+(b+1<<3)>>2]|0;L=a[r+(b+1<<3)+4>>2]|0;B=Gr(O,L,1)|0;z=M;j=Gr(O,L,8)|0;U=M;N=fn(O|0,L|0,7)|0;U=M^z^U;P=Tn(I|0,q|0,T|0,P|0)|0;U=Tn(P|0,M|0,N^B^j|0,U|0)|0;j=M;a[r+(b+16<<3)>>2]=U;a[r+(b+16<<3)+4>>2]=j;B=Gr(R,C,19)|0;N=M;P=Gr(R,C,61)|0;T=M;C=fn(R|0,C|0,6)|0;T=Tn(C^B^P|0,M^N^T|0,a[r+(_+9<<3)>>2]|0,a[r+(_+9<<3)+4>>2]|0)|0;N=M;P=a[r+(y<<3)>>2]|0;B=a[r+(y<<3)+4>>2]|0;C=Gr(P,B,1)|0;R=M;q=Gr(P,B,8)|0;I=M;z=fn(P|0,B|0,7)|0;I=M^R^I;L=Tn(T|0,N|0,O|0,L|0)|0;I=Tn(L|0,M|0,z^C^q|0,I|0)|0;q=M;a[r+(_+16<<3)>>2]=I;a[r+(_+16<<3)+4>>2]=q;C=Gr(U,j,19)|0;z=M;L=Gr(U,j,61)|0;O=M;j=fn(U|0,j|0,6)|0;O=Tn(j^C^L|0,M^z^O|0,a[r+(y+9<<3)>>2]|0,a[r+(y+9<<3)+4>>2]|0)|0;z=M;L=a[r+(y+1<<3)>>2]|0;C=a[r+(y+1<<3)+4>>2]|0;j=Gr(L,C,1)|0;U=M;N=Gr(L,C,8)|0;T=M;R=fn(L|0,C|0,7)|0;T=M^U^T;B=Tn(O|0,z|0,P|0,B|0)|0;T=Tn(B|0,M|0,R^j^N|0,T|0)|0;N=M;a[r+(y+16<<3)>>2]=T;a[r+(y+16<<3)+4>>2]=N;j=Gr(I,q,19)|0;R=M;B=Gr(I,q,61)|0;P=M;q=fn(I|0,q|0,6)|0;P=Tn(q^j^B|0,M^R^P|0,a[r+(t+9<<3)>>2]|0,a[r+(t+9<<3)+4>>2]|0)|0;R=M;B=a[r+(i<<3)>>2]|0;j=a[r+(i<<3)+4>>2]|0;q=Gr(B,j,1)|0;I=M;z=Gr(B,j,8)|0;O=M;U=fn(B|0,j|0,7)|0;O=M^I^O;C=Tn(P|0,R|0,L|0,C|0)|0;O=Tn(C|0,M|0,U^q^z|0,O|0)|0;z=M;a[r+(t+16<<3)>>2]=O;a[r+(t+16<<3)+4>>2]=z;q=Gr(T,N,19)|0;t=M;U=Gr(T,N,61)|0;C=M;N=fn(T|0,N|0,6)|0;C=Tn(N^q^U|0,M^t^C|0,a[r+(i+9<<3)>>2]|0,a[r+(i+9<<3)+4>>2]|0)|0;t=M;U=a[r+(i+1<<3)>>2]|0;q=a[r+(i+1<<3)+4>>2]|0;N=Gr(U,q,1)|0;T=M;L=Gr(U,q,8)|0;R=M;P=fn(U|0,q|0,7)|0;R=M^T^R;j=Tn(C|0,t|0,B|0,j|0)|0;R=Tn(j|0,M|0,P^N^L|0,R|0)|0;L=M;a[r+(i+16<<3)>>2]=R;a[r+(i+16<<3)+4>>2]=L;N=Gr(O,z,19)|0;P=M;j=Gr(O,z,61)|0;B=M;t=fn(O|0,z|0,6)|0;B=Tn(t^N^j|0,M^P^B|0,a[r+(o+9<<3)>>2]|0,a[r+(o+9<<3)+4>>2]|0)|0;P=M;j=a[r+(g<<3)>>2]|0;N=a[r+(g<<3)+4>>2]|0;t=Gr(j,N,1)|0;z=M;O=Gr(j,N,8)|0;i=M;C=fn(j|0,N|0,7)|0;i=M^z^i;q=Tn(B|0,P|0,U|0,q|0)|0;i=Tn(q|0,M|0,C^t^O|0,i|0)|0;a[r+(o+16<<3)>>2]=i;a[r+(o+16<<3)+4>>2]=M;i=Gr(R,L,19)|0;O=M;t=Gr(R,L,61)|0;C=M;L=fn(R|0,L|0,6)|0;C=Tn(L^i^t|0,M^O^C|0,a[r+(g+9<<3)>>2]|0,a[r+(g+9<<3)+4>>2]|0)|0;O=M;t=a[r+(g+1<<3)>>2]|0;i=a[r+(g+1<<3)+4>>2]|0;L=Gr(t,i,1)|0;R=M;q=Gr(t,i,8)|0;U=M;P=fn(t|0,i|0,7)|0;U=M^R^U;N=Tn(C|0,O|0,j|0,N|0)|0;U=Tn(N|0,M|0,P^L^q|0,U|0)|0;a[r+(g+16<<3)>>2]=U;a[r+(g+16<<3)+4>>2]=M;if((m|0)>=80){t=0;break}}do{q=n+(t<<3)|0;U=e+(t<<3)|0;q=Tn(a[U>>2]|0,a[U+4>>2]|0,a[q>>2]|0,a[q+4>>2]|0)|0;a[U>>2]=q;a[U+4>>2]=M;t=t+1|0}while((t|0)!=8);return}function ce(e){e=e|0;var t=0,r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0;E=p;b=p=p+63&-64;p=p+16|0;do{if(e>>>0<245){d=e>>>0<11?16:e+11&-8;h=a[8618]|0;if(h>>>(d>>>3)&3|0){e=34512+((h>>>(d>>>3)&1^1)+(d>>>3)<<1<<2)|0;t=a[e+8>>2]|0;r=a[t+8>>2]|0;if((e|0)==(r|0))a[8618]=h&~(1<<(h>>>(d>>>3)&1^1)+(d>>>3));else{a[r+12>>2]=e;a[e+8>>2]=r}k=(h>>>(d>>>3)&1^1)+(d>>>3)<<3;a[t+4>>2]=k|3;a[t+k+4>>2]=a[t+k+4>>2]|1;k=t+8|0;p=E;return k|0}l=a[8620]|0;if(d>>>0>l>>>0){if(h>>>(d>>>3)|0){e=h>>>(d>>>3)<<(d>>>3)&(2<<(d>>>3)|0-(2<<(d>>>3)));i=((e&0-e)+-1|0)>>>(((e&0-e)+-1|0)>>>12&16);n=i>>>(i>>>5&8)>>>(i>>>(i>>>5&8)>>>2&4);n=(i>>>5&8|((e&0-e)+-1|0)>>>12&16|i>>>(i>>>5&8)>>>2&4|n>>>1&2|n>>>(n>>>1&2)>>>1&1)+(n>>>(n>>>1&2)>>>(n>>>(n>>>1&2)>>>1&1))|0;i=a[34512+(n<<1<<2)+8>>2]|0;e=a[i+8>>2]|0;if((34512+(n<<1<<2)|0)==(e|0)){a[8618]=h&~(1<>2]=34512+(n<<1<<2);a[34512+(n<<1<<2)+8>>2]=e;e=h}a[i+4>>2]=d|3;a[i+d+4>>2]=(n<<3)-d|1;a[i+d+((n<<3)-d)>>2]=(n<<3)-d;if(l|0){r=a[8623]|0;if(!(e&1<<(l>>>3))){a[8618]=e|1<<(l>>>3);e=34512+(l>>>3<<1<<2)|0;t=34512+(l>>>3<<1<<2)+8|0}else{e=a[34512+(l>>>3<<1<<2)+8>>2]|0;t=34512+(l>>>3<<1<<2)+8|0}a[t>>2]=r;a[e+12>>2]=r;a[r+8>>2]=e;a[r+12>>2]=34512+(l>>>3<<1<<2)}a[8620]=(n<<3)-d;a[8623]=i+d;k=i+8|0;p=E;return k|0}f=a[8619]|0;if(f){t=((f&0-f)+-1|0)>>>(((f&0-f)+-1|0)>>>12&16);e=t>>>(t>>>5&8)>>>(t>>>(t>>>5&8)>>>2&4);e=a[34776+((t>>>5&8|((f&0-f)+-1|0)>>>12&16|t>>>(t>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))<<2)>>2]|0;t=(a[e+4>>2]&-8)-d|0;r=a[e+16+(((a[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!r){u=e;s=t}else{do{c=(a[r+4>>2]&-8)-d|0;u=c>>>0>>0;t=u?c:t;e=u?r:e;r=a[r+16+(((a[r+16>>2]|0)==0&1)<<2)>>2]|0}while((r|0)!=0);u=e;s=t}c=u+d|0;if(u>>>0>>0){i=a[u+24>>2]|0;e=a[u+12>>2]|0;do{if((e|0)==(u|0)){t=u+20|0;e=a[t>>2]|0;if(!e){t=u+16|0;e=a[t>>2]|0;if(!e){t=0;break}}while(1){r=e+20|0;n=a[r>>2]|0;if(n|0){e=n;t=r;continue}r=e+16|0;n=a[r>>2]|0;if(!n)break;else{e=n;t=r}}a[t>>2]=0;t=e}else{t=a[u+8>>2]|0;a[t+12>>2]=e;a[e+8>>2]=t;t=e}}while(0);do{if(i|0){e=a[u+28>>2]|0;if((u|0)==(a[34776+(e<<2)>>2]|0)){a[34776+(e<<2)>>2]=t;if(!t){a[8619]=f&~(1<>2]|0)!=(u|0)&1)<<2)>>2]=t;if(!t)break}a[t+24>>2]=i;e=a[u+16>>2]|0;if(e|0){a[t+16>>2]=e;a[e+24>>2]=t}e=a[u+20>>2]|0;if(e|0){a[t+20>>2]=e;a[e+24>>2]=t}}}while(0);if(s>>>0<16){k=s+d|0;a[u+4>>2]=k|3;k=u+k+4|0;a[k>>2]=a[k>>2]|1}else{a[u+4>>2]=d|3;a[c+4>>2]=s|1;a[c+s>>2]=s;if(l|0){r=a[8623]|0;if(!(h&1<<(l>>>3))){a[8618]=h|1<<(l>>>3);e=34512+(l>>>3<<1<<2)|0;t=34512+(l>>>3<<1<<2)+8|0}else{e=a[34512+(l>>>3<<1<<2)+8>>2]|0;t=34512+(l>>>3<<1<<2)+8|0}a[t>>2]=r;a[e+12>>2]=r;a[r+8>>2]=e;a[r+12>>2]=34512+(l>>>3<<1<<2)}a[8620]=s;a[8623]=c}k=u+8|0;p=E;return k|0}}}}else if(e>>>0<=4294967231){d=e+11&-8;u=a[8619]|0;if(u){if((e+11|0)>>>8)if(d>>>0>16777215)c=31;else{c=(e+11|0)>>>8<<((((e+11|0)>>>8)+1048320|0)>>>16&8);c=14-((c+520192|0)>>>16&4|(((e+11|0)>>>8)+1048320|0)>>>16&8|((c<<((c+520192|0)>>>16&4))+245760|0)>>>16&2)+(c<<((c+520192|0)>>>16&4)<<(((c<<((c+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;c=d>>>(c+7|0)&1|c<<1}else c=0;t=a[34776+(c<<2)>>2]|0;e:do{if(!t){t=0;e=0;r=0-d|0;w=57}else{e=0;r=0-d|0;s=d<<((c|0)==31?0:25-(c>>>1)|0);i=0;while(1){n=(a[t+4>>2]&-8)-d|0;if(n>>>0>>0)if(!n){e=t;r=0;n=t;w=61;break e}else{e=t;r=n}n=a[t+20>>2]|0;t=a[t+16+(s>>>31<<2)>>2]|0;i=(n|0)==0|(n|0)==(t|0)?i:n;n=(t|0)==0;if(n){t=i;w=57;break}else s=s<<((n^1)&1)}}}while(0);if((w|0)==57){if((t|0)==0&(e|0)==0){e=2<>>(h>>>12&16)>>>(h>>>(h>>>12&16)>>>5&8);t=l>>>(l>>>2&4)>>>(l>>>(l>>>2&4)>>>1&2);e=0;t=a[34776+((h>>>(h>>>12&16)>>>5&8|h>>>12&16|l>>>2&4|l>>>(l>>>2&4)>>>1&2|t>>>1&1)+(t>>>(t>>>1&1))<<2)>>2]|0}if(!t){c=e;s=r}else{n=t;w=61}}if((w|0)==61)while(1){w=0;t=(a[n+4>>2]&-8)-d|0;l=t>>>0>>0;t=l?t:r;e=l?n:e;n=a[n+16+(((a[n+16>>2]|0)==0&1)<<2)>>2]|0;if(!n){c=e;s=t;break}else{r=t;w=61}}if((c|0)!=0?s>>>0<((a[8620]|0)-d|0)>>>0:0){o=c+d|0;if(c>>>0>=o>>>0){k=0;p=E;return k|0}i=a[c+24>>2]|0;e=a[c+12>>2]|0;do{if((e|0)==(c|0)){t=c+20|0;e=a[t>>2]|0;if(!e){t=c+16|0;e=a[t>>2]|0;if(!e){e=0;break}}while(1){r=e+20|0;n=a[r>>2]|0;if(n|0){e=n;t=r;continue}r=e+16|0;n=a[r>>2]|0;if(!n)break;else{e=n;t=r}}a[t>>2]=0}else{k=a[c+8>>2]|0;a[k+12>>2]=e;a[e+8>>2]=k}}while(0);do{if(i){t=a[c+28>>2]|0;if((c|0)==(a[34776+(t<<2)>>2]|0)){a[34776+(t<<2)>>2]=e;if(!e){a[8619]=u&~(1<>2]|0)!=(c|0)&1)<<2)>>2]=e;if(!e){n=u;break}}a[e+24>>2]=i;t=a[c+16>>2]|0;if(t|0){a[e+16>>2]=t;a[t+24>>2]=e}t=a[c+20>>2]|0;if(t){a[e+20>>2]=t;a[t+24>>2]=e;n=u}else n=u}else n=u}while(0);do{if(s>>>0>=16){a[c+4>>2]=d|3;a[o+4>>2]=s|1;a[o+s>>2]=s;r=s>>>3;if(s>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=o;a[e+12>>2]=o;a[o+8>>2]=e;a[o+12>>2]=34512+(r<<1<<2);break}e=s>>>8;if(e)if(s>>>0>16777215)e=31;else{k=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(k+245760|0)>>>16&2)+(k<<((k+245760|0)>>>16&2)>>>15)|0;e=s>>>(e+7|0)&1|e<<1}else e=0;r=34776+(e<<2)|0;a[o+28>>2]=e;a[o+16+4>>2]=0;a[o+16>>2]=0;t=1<>2]=o;a[o+24>>2]=r;a[o+12>>2]=o;a[o+8>>2]=o;break}t=s<<((e|0)==31?0:25-(e>>>1)|0);r=a[r>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(s|0)){w=97;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=96;break}else{t=t<<1;r=e}}if((w|0)==96){a[n>>2]=o;a[o+24>>2]=r;a[o+12>>2]=o;a[o+8>>2]=o;break}else if((w|0)==97){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=o;a[w>>2]=o;a[o+8>>2]=k;a[o+12>>2]=r;a[o+24>>2]=0;break}}else{k=s+d|0;a[c+4>>2]=k|3;k=c+k+4|0;a[k>>2]=a[k>>2]|1}}while(0);k=c+8|0;p=E;return k|0}}}else d=-1}while(0);r=a[8620]|0;if(r>>>0>=d>>>0){e=r-d|0;t=a[8623]|0;if(e>>>0>15){k=t+d|0;a[8623]=k;a[8620]=e;a[k+4>>2]=e|1;a[k+e>>2]=e;a[t+4>>2]=d|3}else{a[8620]=0;a[8623]=0;a[t+4>>2]=r|3;a[t+r+4>>2]=a[t+r+4>>2]|1}k=t+8|0;p=E;return k|0}i=a[8621]|0;if(i>>>0>d>>>0){v=i-d|0;a[8621]=v;k=a[8624]|0;w=k+d|0;a[8624]=w;a[w+4>>2]=v|1;a[k+4>>2]=d|3;k=k+8|0;p=E;return k|0}if(!(a[8736]|0)){a[8738]=4096;a[8737]=4096;a[8739]=-1;a[8740]=-1;a[8741]=0;a[8729]=0;a[b>>2]=b&-16^1431655768;a[8736]=b&-16^1431655768;e=4096}else e=a[8738]|0;s=d+48|0;c=d+47|0;f=e+c|0;u=0-e|0;if((f&u)>>>0<=d>>>0){k=0;p=E;return k|0}e=a[8728]|0;if(e|0?(b=a[8726]|0,(b+(f&u)|0)>>>0<=b>>>0?1:(b+(f&u)|0)>>>0>e>>>0):0){k=0;p=E;return k|0}e:do{if(!(a[8729]&4)){r=a[8624]|0;t:do{if(r){t=34920;while(1){e=a[t>>2]|0;if(e>>>0<=r>>>0?(_=t+4|0,(e+(a[_>>2]|0)|0)>>>0>r>>>0):0)break;e=a[t+8>>2]|0;if(!e){w=118;break t}else t=e}if((f-i&u)>>>0<2147483647){e=Wt(f-i&u|0)|0;if((e|0)==((a[t>>2]|0)+(a[_>>2]|0)|0))if((e|0)==(-1|0))e=f-i&u;else{s=f-i&u;o=e;w=135;break e}else{n=e;r=f-i&u;w=126}}else e=0}else w=118}while(0);do{if((w|0)==118){t=Wt(0)|0;if((t|0)!=(-1|0)?(m=a[8737]|0,m=((m+-1&t|0)==0?0:(m+-1+t&0-m)-t|0)+(f&u)|0,y=a[8726]|0,m>>>0>d>>>0&m>>>0<2147483647):0){_=a[8728]|0;if(_|0?(m+y|0)>>>0<=y>>>0|(m+y|0)>>>0>_>>>0:0){e=0;break}e=Wt(m|0)|0;if((e|0)==(t|0)){s=m;o=t;w=135;break e}else{n=e;r=m;w=126}}else e=0}}while(0);do{if((w|0)==126){t=0-r|0;if(!(s>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))))if((n|0)==(-1|0)){e=0;break}else{s=r;o=n;w=135;break e}e=a[8738]|0;e=c-r+e&0-e;if(e>>>0>=2147483647){s=r;o=n;w=135;break e}if((Wt(e|0)|0)==(-1|0)){Wt(t|0)|0;e=0;break}else{s=e+r|0;o=n;w=135;break e}}}while(0);a[8729]=a[8729]|4;w=133}else{e=0;w=133}}while(0);if(((w|0)==133?(f&u)>>>0<2147483647:0)?(o=Wt(f&u|0)|0,g=Wt(0)|0,v=(g-o|0)>>>0>(d+40|0)>>>0,!((o|0)==(-1|0)|v^1|o>>>0>>0&((o|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){s=v?g-o|0:e;w=135}if((w|0)==135){e=(a[8726]|0)+s|0;a[8726]=e;if(e>>>0>(a[8727]|0)>>>0)a[8727]=e;u=a[8624]|0;do{if(u){e=34920;while(1){t=a[e>>2]|0;r=e+4|0;n=a[r>>2]|0;if((o|0)==(t+n|0)){w=145;break}i=a[e+8>>2]|0;if(!i)break;else e=i}if(((w|0)==145?(a[e+12>>2]&8|0)==0:0)?u>>>0>>0&u>>>0>=t>>>0:0){a[r>>2]=n+s;w=(u+8&7|0)==0?0:0-(u+8)&7;k=(a[8621]|0)+(s-w)|0;a[8624]=u+w;a[8621]=k;a[u+w+4>>2]=k|1;a[u+w+k+4>>2]=40;a[8625]=a[8740];break}if(o>>>0<(a[8622]|0)>>>0)a[8622]=o;r=o+s|0;e=34920;while(1){if((a[e>>2]|0)==(r|0)){w=153;break}t=a[e+8>>2]|0;if(!t)break;else e=t}if((w|0)==153?(a[e+12>>2]&8|0)==0:0){a[e>>2]=o;h=e+4|0;a[h>>2]=(a[h>>2]|0)+s;h=o+8|0;h=o+((h&7|0)==0?0:0-h&7)|0;e=r+((r+8&7|0)==0?0:0-(r+8)&7)|0;f=h+d|0;c=e-h-d|0;a[h+4>>2]=d|3;do{if((e|0)!=(u|0)){if((e|0)==(a[8623]|0)){k=(a[8620]|0)+c|0;a[8620]=k;a[8623]=f;a[f+4>>2]=k|1;a[f+k>>2]=k;break}s=a[e+4>>2]|0;if((s&3|0)==1){e:do{if(s>>>0<256){t=a[e+8>>2]|0;r=a[e+12>>2]|0;if((r|0)==(t|0)){a[8618]=a[8618]&~(1<<(s>>>3));break}else{a[t+12>>2]=r;a[r+8>>2]=t;break}}else{o=a[e+24>>2]|0;t=a[e+12>>2]|0;do{if((t|0)==(e|0)){t=a[e+16+4>>2]|0;if(!t){t=a[e+16>>2]|0;if(!t){t=0;break}else i=e+16|0}else i=e+16+4|0;while(1){r=t+20|0;n=a[r>>2]|0;if(n|0){t=n;i=r;continue}r=t+16|0;n=a[r>>2]|0;if(!n)break;else{t=n;i=r}}a[i>>2]=0}else{k=a[e+8>>2]|0;a[k+12>>2]=t;a[t+8>>2]=k}}while(0);if(!o)break;r=a[e+28>>2]|0;do{if((e|0)!=(a[34776+(r<<2)>>2]|0)){a[o+16+(((a[o+16>>2]|0)!=(e|0)&1)<<2)>>2]=t;if(!t)break e}else{a[34776+(r<<2)>>2]=t;if(t|0)break;a[8619]=a[8619]&~(1<>2]=o;r=a[e+16>>2]|0;if(r|0){a[t+16>>2]=r;a[r+24>>2]=t}r=a[e+16+4>>2]|0;if(!r)break;a[t+20>>2]=r;a[r+24>>2]=t}}while(0);e=e+(s&-8)|0;i=(s&-8)+c|0}else i=c;r=e+4|0;a[r>>2]=a[r>>2]&-2;a[f+4>>2]=i|1;a[f+i>>2]=i;r=i>>>3;if(i>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=f;a[e+12>>2]=f;a[f+8>>2]=e;a[f+12>>2]=34512+(r<<1<<2);break}e=i>>>8;do{if(!e)e=0;else{if(i>>>0>16777215){e=31;break}k=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(k+245760|0)>>>16&2)+(k<<((k+245760|0)>>>16&2)>>>15)|0;e=i>>>(e+7|0)&1|e<<1}}while(0);n=34776+(e<<2)|0;a[f+28>>2]=e;a[f+16+4>>2]=0;a[f+16>>2]=0;t=a[8619]|0;r=1<>2]=f;a[f+24>>2]=n;a[f+12>>2]=f;a[f+8>>2]=f;break}t=i<<((e|0)==31?0:25-(e>>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i|0)){w=194;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=193;break}else{t=t<<1;r=e}}if((w|0)==193){a[n>>2]=f;a[f+24>>2]=r;a[f+12>>2]=f;a[f+8>>2]=f;break}else if((w|0)==194){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=f;a[w>>2]=f;a[f+8>>2]=k;a[f+12>>2]=r;a[f+24>>2]=0;break}}else{k=(a[8621]|0)+c|0;a[8621]=k;a[8624]=f;a[f+4>>2]=k|1}}while(0);k=h+8|0;p=E;return k|0}e=34920;while(1){t=a[e>>2]|0;if(t>>>0<=u>>>0?(k=t+(a[e+4>>2]|0)|0,k>>>0>u>>>0):0)break;e=a[e+8>>2]|0}i=k+-47+((k+-47+8&7|0)==0?0:0-(k+-47+8)&7)|0;i=i>>>0<(u+16|0)>>>0?u:i;e=o+8|0;e=(e&7|0)==0?0:0-e&7;w=o+e|0;e=s+-40-e|0;a[8624]=w;a[8621]=e;a[w+4>>2]=e|1;a[w+e+4>>2]=40;a[8625]=a[8740];a[i+4>>2]=27;a[i+8>>2]=a[8730];a[i+8+4>>2]=a[8731];a[i+8+8>>2]=a[8732];a[i+8+12>>2]=a[8733];a[8730]=o;a[8731]=s;a[8733]=0;a[8732]=i+8;e=i+24|0;do{w=e;e=e+4|0;a[e>>2]=7}while((w+8|0)>>>0>>0);if((i|0)!=(u|0)){a[i+4>>2]=a[i+4>>2]&-2;a[u+4>>2]=i-u|1;a[i>>2]=i-u;if((i-u|0)>>>0<256){r=34512+((i-u|0)>>>3<<1<<2)|0;e=a[8618]|0;if(!(e&1<<((i-u|0)>>>3))){a[8618]=e|1<<((i-u|0)>>>3);e=r;t=r+8|0}else{e=a[r+8>>2]|0;t=r+8|0}a[t>>2]=u;a[e+12>>2]=u;a[u+8>>2]=e;a[u+12>>2]=r;break}if((i-u|0)>>>8)if((i-u|0)>>>0>16777215)e=31;else{e=(i-u|0)>>>8<<((((i-u|0)>>>8)+1048320|0)>>>16&8);e=14-((e+520192|0)>>>16&4|(((i-u|0)>>>8)+1048320|0)>>>16&8|((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)+(e<<((e+520192|0)>>>16&4)<<(((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;e=(i-u|0)>>>(e+7|0)&1|e<<1}else e=0;n=34776+(e<<2)|0;a[u+28>>2]=e;a[u+20>>2]=0;a[u+16>>2]=0;t=a[8619]|0;r=1<>2]=u;a[u+24>>2]=n;a[u+12>>2]=u;a[u+8>>2]=u;break}t=i-u<<((e|0)==31?0:25-(e>>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i-u|0)){w=216;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=215;break}else{t=t<<1;r=e}}if((w|0)==215){a[n>>2]=u;a[u+24>>2]=r;a[u+12>>2]=u;a[u+8>>2]=u;break}else if((w|0)==216){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=u;a[w>>2]=u;a[u+8>>2]=k;a[u+12>>2]=r;a[u+24>>2]=0;break}}}else{k=a[8622]|0;if((k|0)==0|o>>>0>>0)a[8622]=o;a[8730]=o;a[8731]=s;a[8733]=0;a[8627]=a[8736];a[8626]=-1;e=0;do{k=34512+(e<<1<<2)|0;a[k+12>>2]=k;a[k+8>>2]=k;e=e+1|0}while((e|0)!=32);k=o+8|0;k=(k&7|0)==0?0:0-k&7;w=o+k|0;k=s+-40-k|0;a[8624]=w;a[8621]=k;a[w+4>>2]=k|1;a[w+k+4>>2]=40;a[8625]=a[8740]}}while(0);e=a[8621]|0;if(e>>>0>d>>>0){v=e-d|0;a[8621]=v;k=a[8624]|0;w=k+d|0;a[8624]=w;a[w+4>>2]=v|1;a[k+4>>2]=d|3;k=k+8|0;p=E;return k|0}}a[8242]=12;k=0;p=E;return k|0}function ue(e){e=e|0;var t=0,r=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,_e=0,ye=0;F=$r(n[e>>0]|0,n[e+1>>0]|0,n[e+2>>0]|0)|0;r=hr(e+2|0)|0;r=fn(r|0,M|0,5)|0;Y=$r(n[e+5>>0]|0,n[e+6>>0]|0,n[e+7>>0]|0)|0;Y=fn(Y|0,M|0,2)|0;G=hr(e+7|0)|0;G=fn(G|0,M|0,7)|0;k=hr(e+10|0)|0;k=fn(k|0,M|0,4)|0;W=$r(n[e+13>>0]|0,n[e+14>>0]|0,n[e+15>>0]|0)|0;W=fn(W|0,M|0,1)|0;K=hr(e+15|0)|0;K=fn(K|0,M|0,6)|0;ae=$r(n[e+18>>0]|0,n[e+19>>0]|0,n[e+20>>0]|0)|0;ae=fn(ae|0,M|0,3)|0;le=$r(n[e+21>>0]|0,n[e+22>>0]|0,n[e+23>>0]|0)|0;re=hr(e+23|0)|0;re=fn(re|0,M|0,5)|0;he=$r(n[e+26>>0]|0,n[e+27>>0]|0,n[e+28>>0]|0)|0;he=fn(he|0,M|0,2)|0;g=hr(e+28|0)|0;g=fn(g|0,M|0,7)|0;_e=hr(e+31|0)|0;_e=fn(_e|0,M|0,4)|0;v=$r(n[e+34>>0]|0,n[e+35>>0]|0,n[e+36>>0]|0)|0;v=fn(v|0,M|0,1)|0;x=hr(e+36|0)|0;x=fn(x|0,M|0,6)|0;p=$r(n[e+39>>0]|0,n[e+40>>0]|0,n[e+41>>0]|0)|0;p=fn(p|0,M|0,3)|0;J=$r(n[e+42>>0]|0,n[e+43>>0]|0,n[e+44>>0]|0)|0;U=hr(e+44|0)|0;U=fn(U|0,M|0,5)|0;Q=$r(n[e+47>>0]|0,n[e+48>>0]|0,n[e+49>>0]|0)|0;Q=fn(Q|0,M|0,2)|0;ye=hr(e+49|0)|0;ye=fn(ye|0,M|0,7)|0;w=hr(e+52|0)|0;w=fn(w|0,M|0,4)|0;m=$r(n[e+55>>0]|0,n[e+56>>0]|0,n[e+57>>0]|0)|0;m=fn(m|0,M|0,1)|0;o=hr(e+57|0)|0;o=fn(o|0,M|0,6)|0;C=hr(e+60|0)|0;C=fn(C|0,M|0,3)|0;t=M;s=Wr(C|0,t|0,666643,0)|0;i=M;se=Wr(C|0,t|0,470296,0)|0;f=M;D=Wr(C|0,t|0,654183,0)|0;h=M;B=Wr(C|0,t|0,-997805,-1)|0;N=M;u=Wr(C|0,t|0,136657,0)|0;p=Tn(u|0,M|0,p&2097151|0,0)|0;u=M;t=Wr(C|0,t|0,-683901,-1)|0;J=Tn(t|0,M|0,J&2097151|0,0)|0;t=M;C=Wr(o&2097151|0,0,666643,0)|0;I=M;y=Wr(o&2097151|0,0,470296,0)|0;T=M;a=Wr(o&2097151|0,0,654183,0)|0;d=M;A=Wr(o&2097151|0,0,-997805,-1)|0;O=M;Z=Wr(o&2097151|0,0,136657,0)|0;R=M;o=Wr(o&2097151|0,0,-683901,-1)|0;o=Tn(p|0,u|0,o|0,M|0)|0;u=M;p=Wr(m&2097151|0,0,666643,0)|0;l=M;j=Wr(m&2097151|0,0,470296,0)|0;E=M;S=Wr(m&2097151|0,0,654183,0)|0;V=M;de=Wr(m&2097151|0,0,-997805,-1)|0;oe=M;b=Wr(m&2097151|0,0,136657,0)|0;$=M;m=Wr(m&2097151|0,0,-683901,-1)|0;x=Tn(m|0,M|0,x&2097151|0,0)|0;N=Tn(x|0,M|0,B|0,N|0)|0;R=Tn(N|0,M|0,Z|0,R|0)|0;Z=M;N=Wr(w&2097151|0,0,666643,0)|0;B=M;x=Wr(w&2097151|0,0,470296,0)|0;m=M;ce=Wr(w&2097151|0,0,654183,0)|0;c=M;q=Wr(w&2097151|0,0,-997805,-1)|0;_=M;be=Wr(w&2097151|0,0,136657,0)|0;pe=M;w=Wr(w&2097151|0,0,-683901,-1)|0;X=M;z=Wr(ye&2097151|0,0,666643,0)|0;H=M;ne=Wr(ye&2097151|0,0,470296,0)|0;ie=M;te=Wr(ye&2097151|0,0,654183,0)|0;ee=M;fe=Wr(ye&2097151|0,0,-997805,-1)|0;ue=M;P=Wr(ye&2097151|0,0,136657,0)|0;L=M;ye=Wr(ye&2097151|0,0,-683901,-1)|0;_e=Tn(ye|0,M|0,_e&2097151|0,0)|0;pe=Tn(_e|0,M|0,be|0,pe|0)|0;oe=Tn(pe|0,M|0,de|0,oe|0)|0;f=Tn(oe|0,M|0,se|0,f|0)|0;d=Tn(f|0,M|0,a|0,d|0)|0;a=M;f=Wr(Q&2097151|0,0,666643,0)|0;K=Tn(f|0,M|0,K&2097151|0,0)|0;f=M;se=Wr(Q&2097151|0,0,470296,0)|0;oe=M;de=Wr(Q&2097151|0,0,654183,0)|0;le=Tn(de|0,M|0,le&2097151|0,0)|0;ie=Tn(le|0,M|0,ne|0,ie|0)|0;B=Tn(ie|0,M|0,N|0,B|0)|0;N=M;ie=Wr(Q&2097151|0,0,-997805,-1)|0;ne=M;le=Wr(Q&2097151|0,0,136657,0)|0;he=Tn(le|0,M|0,he&2097151|0,0)|0;ue=Tn(he|0,M|0,fe|0,ue|0)|0;c=Tn(ue|0,M|0,ce|0,c|0)|0;E=Tn(c|0,M|0,j|0,E|0)|0;I=Tn(E|0,M|0,C|0,I|0)|0;C=M;Q=Wr(Q&2097151|0,0,-683901,-1)|0;E=M;j=Tn(K|0,f|0,1048576,0)|0;j=fn(j|0,M|0,21)|0;c=M;ae=Tn(se|0,oe|0,ae&2097151|0,0)|0;H=Tn(ae|0,M|0,z|0,H|0)|0;H=Tn(H|0,M|0,j|0,c|0)|0;z=M;c=cn(j|0,c|0,21)|0;c=Mn(K|0,f|0,c|0,M|0)|0;f=M;K=Tn(B|0,N|0,1048576,0)|0;K=fn(K|0,M|0,21)|0;j=M;re=Tn(ie|0,ne|0,re&2097151|0,0)|0;ee=Tn(re|0,M|0,te|0,ee|0)|0;m=Tn(ee|0,M|0,x|0,m|0)|0;l=Tn(m|0,M|0,p|0,l|0)|0;l=Tn(l|0,M|0,K|0,j|0)|0;p=M;j=cn(K|0,j|0,21)|0;K=M;m=Tn(I|0,C|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;x=M;g=Tn(Q|0,E|0,g&2097151|0,0)|0;L=Tn(g|0,M|0,P|0,L|0)|0;_=Tn(L|0,M|0,q|0,_|0)|0;V=Tn(_|0,M|0,S|0,V|0)|0;i=Tn(V|0,M|0,s|0,i|0)|0;T=Tn(i|0,M|0,y|0,T|0)|0;T=Tn(T|0,M|0,m|0,x|0)|0;y=M;x=cn(m|0,x|0,21)|0;m=M;i=Tn(d|0,a|0,1048576,0)|0;i=Hr(i|0,M|0,21)|0;s=M;v=Tn(w|0,X|0,v&2097151|0,0)|0;$=Tn(v|0,M|0,b|0,$|0)|0;h=Tn($|0,M|0,D|0,h|0)|0;O=Tn(h|0,M|0,A|0,O|0)|0;O=Tn(O|0,M|0,i|0,s|0)|0;A=M;s=cn(i|0,s|0,21)|0;s=Mn(d|0,a|0,s|0,M|0)|0;a=M;d=Tn(R|0,Z|0,1048576,0)|0;d=Hr(d|0,M|0,21)|0;i=M;u=Tn(o|0,u|0,d|0,i|0)|0;o=M;i=cn(d|0,i|0,21)|0;i=Mn(R|0,Z|0,i|0,M|0)|0;Z=M;R=Tn(J|0,t|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;d=M;U=Tn(R|0,d|0,U&2097151|0,0)|0;h=M;d=cn(R|0,d|0,21)|0;d=Mn(J|0,t|0,d|0,M|0)|0;t=M;J=Tn(H|0,z|0,1048576,0)|0;J=fn(J|0,M|0,21)|0;R=M;D=cn(J|0,R|0,21)|0;D=Mn(H|0,z|0,D|0,M|0)|0;z=M;H=Tn(l|0,p|0,1048576,0)|0;H=Hr(H|0,M|0,21)|0;$=M;b=cn(H|0,$|0,21)|0;v=M;X=Tn(T|0,y|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;w=M;a=Tn(X|0,w|0,s|0,a|0)|0;s=M;w=cn(X|0,w|0,21)|0;w=Mn(T|0,y|0,w|0,M|0)|0;y=M;T=Tn(O|0,A|0,1048576,0)|0;T=Hr(T|0,M|0,21)|0;X=M;Z=Tn(T|0,X|0,i|0,Z|0)|0;i=M;X=cn(T|0,X|0,21)|0;X=Mn(O|0,A|0,X|0,M|0)|0;A=M;O=Tn(u|0,o|0,1048576,0)|0;O=Hr(O|0,M|0,21)|0;T=M;t=Tn(O|0,T|0,d|0,t|0)|0;d=M;T=cn(O|0,T|0,21)|0;T=Mn(u|0,o|0,T|0,M|0)|0;o=M;u=Wr(U|0,h|0,666643,0)|0;W=Tn(u|0,M|0,W&2097151|0,0)|0;u=M;O=Wr(U|0,h|0,470296,0)|0;O=Tn(c|0,f|0,O|0,M|0)|0;f=M;c=Wr(U|0,h|0,654183,0)|0;c=Tn(D|0,z|0,c|0,M|0)|0;z=M;D=Wr(U|0,h|0,-997805,-1)|0;V=M;S=Wr(U|0,h|0,136657,0)|0;_=M;h=Wr(U|0,h|0,-683901,-1)|0;C=Tn(h|0,M|0,I|0,C|0)|0;$=Tn(C|0,M|0,H|0,$|0)|0;m=Mn($|0,M|0,x|0,m|0)|0;x=M;$=Wr(t|0,d|0,666643,0)|0;k=Tn($|0,M|0,k&2097151|0,0)|0;$=M;H=Wr(t|0,d|0,470296,0)|0;H=Tn(W|0,u|0,H|0,M|0)|0;u=M;W=Wr(t|0,d|0,654183,0)|0;W=Tn(O|0,f|0,W|0,M|0)|0;f=M;O=Wr(t|0,d|0,-997805,-1)|0;O=Tn(c|0,z|0,O|0,M|0)|0;z=M;c=Wr(t|0,d|0,136657,0)|0;C=M;d=Wr(t|0,d|0,-683901,-1)|0;t=M;I=Wr(T|0,o|0,666643,0)|0;G=Tn(I|0,M|0,G&2097151|0,0)|0;I=M;h=Wr(T|0,o|0,470296,0)|0;h=Tn(k|0,$|0,h|0,M|0)|0;$=M;k=Wr(T|0,o|0,654183,0)|0;k=Tn(H|0,u|0,k|0,M|0)|0;u=M;H=Wr(T|0,o|0,-997805,-1)|0;H=Tn(W|0,f|0,H|0,M|0)|0;f=M;W=Wr(T|0,o|0,136657,0)|0;W=Tn(O|0,z|0,W|0,M|0)|0;z=M;o=Wr(T|0,o|0,-683901,-1)|0;T=M;N=Tn(J|0,R|0,B|0,N|0)|0;K=Mn(N|0,M|0,j|0,K|0)|0;V=Tn(K|0,M|0,D|0,V|0)|0;C=Tn(V|0,M|0,c|0,C|0)|0;T=Tn(C|0,M|0,o|0,T|0)|0;o=M;C=Wr(Z|0,i|0,666643,0)|0;Y=Tn(C|0,M|0,Y&2097151|0,0)|0;C=M;c=Wr(Z|0,i|0,470296,0)|0;c=Tn(G|0,I|0,c|0,M|0)|0;I=M;G=Wr(Z|0,i|0,654183,0)|0;G=Tn(h|0,$|0,G|0,M|0)|0;$=M;h=Wr(Z|0,i|0,-997805,-1)|0;h=Tn(k|0,u|0,h|0,M|0)|0;u=M;k=Wr(Z|0,i|0,136657,0)|0;k=Tn(H|0,f|0,k|0,M|0)|0;f=M;i=Wr(Z|0,i|0,-683901,-1)|0;i=Tn(W|0,z|0,i|0,M|0)|0;z=M;W=Wr(X|0,A|0,666643,0)|0;Z=M;H=Wr(X|0,A|0,470296,0)|0;V=M;D=Wr(X|0,A|0,654183,0)|0;K=M;j=Wr(X|0,A|0,-997805,-1)|0;N=M;B=Wr(X|0,A|0,136657,0)|0;R=M;A=Wr(X|0,A|0,-683901,-1)|0;A=Tn(k|0,f|0,A|0,M|0)|0;f=M;k=Wr(a|0,s|0,666643,0)|0;F=Tn(k|0,M|0,F&2097151|0,0)|0;k=M;X=Wr(a|0,s|0,470296,0)|0;J=M;O=Wr(a|0,s|0,654183,0)|0;O=Tn(Y|0,C|0,O|0,M|0)|0;V=Tn(O|0,M|0,H|0,V|0)|0;H=M;O=Wr(a|0,s|0,-997805,-1)|0;C=M;Y=Wr(a|0,s|0,136657,0)|0;Y=Tn(G|0,$|0,Y|0,M|0)|0;N=Tn(Y|0,M|0,j|0,N|0)|0;j=M;s=Wr(a|0,s|0,-683901,-1)|0;a=M;Y=Tn(F|0,k|0,1048576,0)|0;Y=Hr(Y|0,M|0,21)|0;$=M;r=Tn(X|0,J|0,r&2097151|0,0)|0;Z=Tn(r|0,M|0,W|0,Z|0)|0;Z=Tn(Z|0,M|0,Y|0,$|0)|0;W=M;$=cn(Y|0,$|0,21)|0;$=Mn(F|0,k|0,$|0,M|0)|0;k=M;F=Tn(V|0,H|0,1048576,0)|0;F=Hr(F|0,M|0,21)|0;Y=M;C=Tn(c|0,I|0,O|0,C|0)|0;K=Tn(C|0,M|0,D|0,K|0)|0;K=Tn(K|0,M|0,F|0,Y|0)|0;D=M;Y=cn(F|0,Y|0,21)|0;F=M;C=Tn(N|0,j|0,1048576,0)|0;C=Hr(C|0,M|0,21)|0;O=M;a=Tn(h|0,u|0,s|0,a|0)|0;R=Tn(a|0,M|0,B|0,R|0)|0;R=Tn(R|0,M|0,C|0,O|0)|0;B=M;O=cn(C|0,O|0,21)|0;C=M;a=Tn(A|0,f|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;s=M;z=Tn(i|0,z|0,a|0,s|0)|0;i=M;s=cn(a|0,s|0,21)|0;s=Mn(A|0,f|0,s|0,M|0)|0;f=M;A=Tn(T|0,o|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;a=M;p=Tn(S|0,_|0,l|0,p|0)|0;v=Mn(p|0,M|0,b|0,v|0)|0;t=Tn(v|0,M|0,d|0,t|0)|0;t=Tn(t|0,M|0,A|0,a|0)|0;d=M;a=cn(A|0,a|0,21)|0;a=Mn(T|0,o|0,a|0,M|0)|0;o=M;T=Tn(m|0,x|0,1048576,0)|0;T=Hr(T|0,M|0,21)|0;A=M;y=Tn(T|0,A|0,w|0,y|0)|0;w=M;A=cn(T|0,A|0,21)|0;A=Mn(m|0,x|0,A|0,M|0)|0;x=M;m=Tn(Z|0,W|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;T=M;v=cn(m|0,T|0,21)|0;b=M;p=Tn(K|0,D|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;l=M;_=cn(p|0,l|0,21)|0;S=M;u=Tn(R|0,B|0,1048576,0)|0;u=Hr(u|0,M|0,21)|0;h=M;f=Tn(s|0,f|0,u|0,h|0)|0;s=M;h=cn(u|0,h|0,21)|0;u=M;I=Tn(z|0,i|0,1048576,0)|0;I=Hr(I|0,M|0,21)|0;c=M;o=Tn(a|0,o|0,I|0,c|0)|0;a=M;c=cn(I|0,c|0,21)|0;c=Mn(z|0,i|0,c|0,M|0)|0;i=M;z=Tn(t|0,d|0,1048576,0)|0;z=Hr(z|0,M|0,21)|0;I=M;x=Tn(A|0,x|0,z|0,I|0)|0;A=M;I=cn(z|0,I|0,21)|0;I=Mn(t|0,d|0,I|0,M|0)|0;d=M;t=Tn(y|0,w|0,1048576,0)|0;t=Hr(t|0,M|0,21)|0;z=M;r=cn(t|0,z|0,21)|0;r=Mn(y|0,w|0,r|0,M|0)|0;w=M;y=Wr(t|0,z|0,666643,0)|0;y=Tn($|0,k|0,y|0,M|0)|0;k=M;$=Wr(t|0,z|0,470296,0)|0;J=M;X=Wr(t|0,z|0,654183,0)|0;G=M;U=Wr(t|0,z|0,-997805,-1)|0;q=M;L=Wr(t|0,z|0,136657,0)|0;P=M;z=Wr(t|0,z|0,-683901,-1)|0;t=M;g=Hr(y|0,k|0,21)|0;E=M;W=Tn($|0,J|0,Z|0,W|0)|0;b=Mn(W|0,M|0,v|0,b|0)|0;b=Tn(b|0,M|0,g|0,E|0)|0;v=M;E=cn(g|0,E|0,21)|0;E=Mn(y|0,k|0,E|0,M|0)|0;k=M;y=Hr(b|0,v|0,21)|0;g=M;H=Tn(X|0,G|0,V|0,H|0)|0;F=Mn(H|0,M|0,Y|0,F|0)|0;T=Tn(F|0,M|0,m|0,T|0)|0;T=Tn(T|0,M|0,y|0,g|0)|0;m=M;g=cn(y|0,g|0,21)|0;g=Mn(b|0,v|0,g|0,M|0)|0;v=M;b=Hr(T|0,m|0,21)|0;y=M;q=Tn(K|0,D|0,U|0,q|0)|0;S=Mn(q|0,M|0,_|0,S|0)|0;S=Tn(S|0,M|0,b|0,y|0)|0;_=M;y=cn(b|0,y|0,21)|0;y=Mn(T|0,m|0,y|0,M|0)|0;m=M;T=Hr(S|0,_|0,21)|0;b=M;j=Tn(L|0,P|0,N|0,j|0)|0;C=Mn(j|0,M|0,O|0,C|0)|0;l=Tn(C|0,M|0,p|0,l|0)|0;l=Tn(l|0,M|0,T|0,b|0)|0;p=M;b=cn(T|0,b|0,21)|0;b=Mn(S|0,_|0,b|0,M|0)|0;_=M;S=Hr(l|0,p|0,21)|0;T=M;t=Tn(R|0,B|0,z|0,t|0)|0;u=Mn(t|0,M|0,h|0,u|0)|0;u=Tn(u|0,M|0,S|0,T|0)|0;h=M;T=cn(S|0,T|0,21)|0;T=Mn(l|0,p|0,T|0,M|0)|0;p=M;l=Hr(u|0,h|0,21)|0;S=M;s=Tn(f|0,s|0,l|0,S|0)|0;f=M;S=cn(l|0,S|0,21)|0;S=Mn(u|0,h|0,S|0,M|0)|0;h=M;u=Hr(s|0,f|0,21)|0;l=M;i=Tn(u|0,l|0,c|0,i|0)|0;c=M;l=cn(u|0,l|0,21)|0;l=Mn(s|0,f|0,l|0,M|0)|0;f=M;s=Hr(i|0,c|0,21)|0;u=M;a=Tn(o|0,a|0,s|0,u|0)|0;o=M;u=cn(s|0,u|0,21)|0;u=Mn(i|0,c|0,u|0,M|0)|0;c=M;i=Hr(a|0,o|0,21)|0;s=M;d=Tn(i|0,s|0,I|0,d|0)|0;I=M;s=cn(i|0,s|0,21)|0;s=Mn(a|0,o|0,s|0,M|0)|0;o=M;a=Hr(d|0,I|0,21)|0;i=M;A=Tn(x|0,A|0,a|0,i|0)|0;x=M;i=cn(a|0,i|0,21)|0;i=Mn(d|0,I|0,i|0,M|0)|0;I=M;d=Hr(A|0,x|0,21)|0;a=M;w=Tn(d|0,a|0,r|0,w|0)|0;r=M;a=cn(d|0,a|0,21)|0;a=Mn(A|0,x|0,a|0,M|0)|0;x=M;A=Hr(w|0,r|0,21)|0;d=M;t=cn(A|0,d|0,21)|0;t=Mn(w|0,r|0,t|0,M|0)|0;r=M;w=Wr(A|0,d|0,666643,0)|0;k=Tn(w|0,M|0,E|0,k|0)|0;E=M;w=Wr(A|0,d|0,470296,0)|0;w=Tn(g|0,v|0,w|0,M|0)|0;v=M;g=Wr(A|0,d|0,654183,0)|0;g=Tn(y|0,m|0,g|0,M|0)|0;m=M;y=Wr(A|0,d|0,-997805,-1)|0;y=Tn(b|0,_|0,y|0,M|0)|0;_=M;b=Wr(A|0,d|0,136657,0)|0;b=Tn(T|0,p|0,b|0,M|0)|0;p=M;d=Wr(A|0,d|0,-683901,-1)|0;d=Tn(S|0,h|0,d|0,M|0)|0;h=M;S=Hr(k|0,E|0,21)|0;A=M;v=Tn(w|0,v|0,S|0,A|0)|0;w=M;A=cn(S|0,A|0,21)|0;A=Mn(k|0,E|0,A|0,M|0)|0;E=M;k=Hr(v|0,w|0,21)|0;S=M;m=Tn(g|0,m|0,k|0,S|0)|0;g=M;S=cn(k|0,S|0,21)|0;S=Mn(v|0,w|0,S|0,M|0)|0;w=M;v=Hr(m|0,g|0,21)|0;k=M;_=Tn(y|0,_|0,v|0,k|0)|0;y=M;k=cn(v|0,k|0,21)|0;k=Mn(m|0,g|0,k|0,M|0)|0;g=M;m=Hr(_|0,y|0,21)|0;v=M;p=Tn(b|0,p|0,m|0,v|0)|0;b=M;v=cn(m|0,v|0,21)|0;v=Mn(_|0,y|0,v|0,M|0)|0;y=M;_=Hr(p|0,b|0,21)|0;m=M;h=Tn(d|0,h|0,_|0,m|0)|0;d=M;m=cn(_|0,m|0,21)|0;m=Mn(p|0,b|0,m|0,M|0)|0;b=M;p=Hr(h|0,d|0,21)|0;_=M;f=Tn(p|0,_|0,l|0,f|0)|0;l=M;_=cn(p|0,_|0,21)|0;_=Mn(h|0,d|0,_|0,M|0)|0;d=M;h=Hr(f|0,l|0,21)|0;p=M;c=Tn(h|0,p|0,u|0,c|0)|0;u=M;p=cn(h|0,p|0,21)|0;p=Mn(f|0,l|0,p|0,M|0)|0;l=M;f=Hr(c|0,u|0,21)|0;h=M;o=Tn(f|0,h|0,s|0,o|0)|0;s=M;h=cn(f|0,h|0,21)|0;h=Mn(c|0,u|0,h|0,M|0)|0;u=M;c=Hr(o|0,s|0,21)|0;f=M;I=Tn(c|0,f|0,i|0,I|0)|0;i=M;f=cn(c|0,f|0,21)|0;f=Mn(o|0,s|0,f|0,M|0)|0;s=M;o=Hr(I|0,i|0,21)|0;c=M;x=Tn(o|0,c|0,a|0,x|0)|0;a=M;c=cn(o|0,c|0,21)|0;c=Mn(I|0,i|0,c|0,M|0)|0;i=M;I=Hr(x|0,a|0,21)|0;o=M;r=Tn(I|0,o|0,t|0,r|0)|0;t=M;o=cn(I|0,o|0,21)|0;o=Mn(x|0,a|0,o|0,M|0)|0;a=M;n[e>>0]=A;x=fn(A|0,E|0,8)|0;n[e+1>>0]=x;E=fn(A|0,E|0,16)|0;A=M;x=cn(S|0,w|0,5)|0;n[e+2>>0]=x|E;E=fn(S|0,w|0,3)|0;n[e+3>>0]=E;E=fn(S|0,w|0,11)|0;n[e+4>>0]=E;w=fn(S|0,w|0,19)|0;S=M;E=cn(k|0,g|0,2)|0;n[e+5>>0]=E|w;w=fn(k|0,g|0,6)|0;n[e+6>>0]=w;g=fn(k|0,g|0,14)|0;k=M;w=cn(v|0,y|0,7)|0;n[e+7>>0]=w|g;g=fn(v|0,y|0,1)|0;n[e+8>>0]=g;g=fn(v|0,y|0,9)|0;n[e+9>>0]=g;y=fn(v|0,y|0,17)|0;v=M;g=cn(m|0,b|0,4)|0;n[e+10>>0]=g|y;y=fn(m|0,b|0,4)|0;n[e+11>>0]=y;y=fn(m|0,b|0,12)|0;n[e+12>>0]=y;b=fn(m|0,b|0,20)|0;m=M;y=cn(_|0,d|0,1)|0;n[e+13>>0]=y|b;b=fn(_|0,d|0,7)|0;n[e+14>>0]=b;d=fn(_|0,d|0,15)|0;_=M;b=cn(p|0,l|0,6)|0;n[e+15>>0]=b|d;d=fn(p|0,l|0,2)|0;n[e+16>>0]=d;d=fn(p|0,l|0,10)|0;n[e+17>>0]=d;l=fn(p|0,l|0,18)|0;p=M;d=cn(h|0,u|0,3)|0;n[e+18>>0]=d|l;l=fn(h|0,u|0,5)|0;n[e+19>>0]=l;u=fn(h|0,u|0,13)|0;n[e+20>>0]=u;n[e+21>>0]=f;u=fn(f|0,s|0,8)|0;n[e+22>>0]=u;s=fn(f|0,s|0,16)|0;f=M;u=cn(c|0,i|0,5)|0;n[e+23>>0]=u|s;s=fn(c|0,i|0,3)|0;n[e+24>>0]=s;s=fn(c|0,i|0,11)|0;n[e+25>>0]=s;i=fn(c|0,i|0,19)|0;c=M;s=cn(o|0,a|0,2)|0;n[e+26>>0]=s|i;i=fn(o|0,a|0,6)|0;n[e+27>>0]=i;a=fn(o|0,a|0,14)|0;o=M;i=cn(r|0,t|0,7)|0;n[e+28>>0]=a|i;i=fn(r|0,t|0,1)|0;n[e+29>>0]=i;i=fn(r|0,t|0,9)|0;n[e+30>>0]=i;t=fn(r|0,t|0,17)|0;n[e+31>>0]=t;return}function fe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,_e=0,ye=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Ie=0,Te=0,ze=0,Be=0,Re=0,Ce=0,Oe=0,je=0,Ne=0,Pe=0,Le=0,qe=0,Ue=0,De=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Ze=0,Je=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,ft=0,ht=0,lt=0,dt=0,pt=0,bt=0,_t=0,yt=0,mt=0,gt=0,vt=0,wt=0,kt=0,Et=0,St=0,xt=0,At=0,Mt=0,It=0,Tt=0,zt=0,Bt=0,Rt=0,Ct=0,Ot=0,jt=0,Nt=0,Pt=0,Lt=0,qt=0,Ut=0,Dt=0,Kt=0,Ft=0,Yt=0,Ht=0,Vt=0,Gt=0,Xt=0,Wt=0,Zt=0,Jt=0,$t=0,Qt=0,er=0,tr=0,rr=0,nr=0,ir=0,ar=0,or=0,sr=0,cr=0,ur=0,fr=0,hr=0,lr=0,dr=0,pr=0,br=0,_r=0,yr=0,mr=0,gr=0,vr=0,wr=0,kr=0,Er=0,Sr=0,xr=0,Ar=0,Mr=0,Ir=0,Tr=0,zr=0,Br=0,Rr=0,Cr=0,Or=0,jr=0,Nr=0,Pr=0,Lr=0,qr=0,Ur=0,Dr=0;p=a[t>>2]|0;d=a[t+4>>2]|0;f=a[t+8>>2]|0;ae=a[t+12>>2]|0;q=a[t+16>>2]|0;L=a[t+20>>2]|0;o=a[t+24>>2]|0;ie=a[t+28>>2]|0;P=a[t+32>>2]|0;_=a[t+36>>2]|0;O=a[r>>2]|0;Ur=a[r+4>>2]|0;rr=a[r+8>>2]|0;mt=a[r+12>>2]|0;Oe=a[r+16>>2]|0;ur=a[r+20>>2]|0;Tt=a[r+24>>2]|0;He=a[r+28>>2]|0;oe=a[r+32>>2]|0;Dr=a[r+36>>2]|0;Lr=Wr(O|0,((O|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Pr=M;kr=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;wr=M;vt=Wr(rr|0,((rr|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;gt=M;Ne=Wr(mt|0,((mt|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;je=M;lr=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;hr=M;Rt=Wr(ur|0,((ur|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Bt=M;Xe=Wr(Tt|0,((Tt|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Ge=M;ue=Wr(He|0,((He|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;ce=M;D=Wr(oe|0,((oe|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;U=M;p=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;h=M;nr=Wr(O|0,((O|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;ir=M;St=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;Et=M;Le=Wr(rr|0,((rr|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;Pe=M;pr=Wr(mt|0,((mt|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;dr=M;Ot=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;Ct=M;Ze=Wr(ur|0,((ur|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;We=M;he=Wr(Tt|0,((Tt|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;fe=M;F=Wr(He|0,((He|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;K=M;g=Wr(oe|0,((oe|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;m=M;r=((Dr*19|0)<0)<<31>>31;d=Wr(Dr*19|0,r|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;b=M;kt=Wr(O|0,((O|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;wt=M;Ke=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;De=M;_r=Wr(rr|0,((rr|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;br=M;Nt=Wr(mt|0,((mt|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;jt=M;$e=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Je=M;de=Wr(ur|0,((ur|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;le=M;H=Wr(Tt|0,((Tt|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Y=M;w=Wr(He|0,((He|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;v=M;se=((oe*19|0)<0)<<31>>31;Sr=Wr(oe*19|0,se|0,f|0,((f|0)<0)<<31>>31|0)|0;Er=M;f=Wr(Dr*19|0,r|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;Ue=Wr(O|0,((O|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;qe=M;vr=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;gr=M;Lt=Wr(rr|0,((rr|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;Pt=M;et=Wr(mt|0,((mt|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;Qe=M;be=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;pe=M;G=Wr(ur|0,((ur|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;V=M;E=Wr(Tt|0,((Tt|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;k=M;Ve=((He*19|0)<0)<<31>>31;Ar=Wr(He*19|0,Ve|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;xr=M;Yt=Wr(oe*19|0,se|0,ae|0,((ae|0)<0)<<31>>31|0)|0;Ft=M;ae=Wr(Dr*19|0,r|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;i=M;mr=Wr(O|0,((O|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;yr=M;Kt=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;Dt=M;rt=Wr(rr|0,((rr|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;tt=M;ye=Wr(mt|0,((mt|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;_e=M;W=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;X=M;x=Wr(ur|0,((ur|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;S=M;zt=((Tt*19|0)<0)<<31>>31;Ir=Wr(Tt*19|0,zt|0,q|0,((q|0)<0)<<31>>31|0)|0;Mr=M;Vt=Wr(He*19|0,Ve|0,q|0,((q|0)<0)<<31>>31|0)|0;Ht=M;ct=Wr(oe*19|0,se|0,q|0,((q|0)<0)<<31>>31|0)|0;st=M;q=Wr(Dr*19|0,r|0,q|0,((q|0)<0)<<31>>31|0)|0;n=M;Ut=Wr(O|0,((O|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;qt=M;ot=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,L<<1|0,((L<<1|0)<0)<<31>>31|0)|0;at=M;ge=Wr(rr|0,((rr|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;me=M;J=Wr(mt|0,((mt|0)<0)<<31>>31|0,L<<1|0,((L<<1|0)<0)<<31>>31|0)|0;Z=M;I=Wr(Oe|0,((Oe|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;A=M;fr=((ur*19|0)<0)<<31>>31;zr=Wr(ur*19|0,fr|0,L<<1|0,((L<<1|0)<0)<<31>>31|0)|0;Tr=M;Xt=Wr(Tt*19|0,zt|0,L|0,((L|0)<0)<<31>>31|0)|0;Gt=M;ft=Wr(He*19|0,Ve|0,L<<1|0,((L<<1|0)<0)<<31>>31|0)|0;ut=M;Ae=Wr(oe*19|0,se|0,L|0,((L|0)<0)<<31>>31|0)|0;xe=M;t=Wr(Dr*19|0,r|0,L<<1|0,((L<<1|0)<0)<<31>>31|0)|0;L=M;it=Wr(O|0,((O|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;nt=M;Ee=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;ke=M;Q=Wr(rr|0,((rr|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;$=M;z=Wr(mt|0,((mt|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;T=M;Rr=Wr(Oe*19|0,((Oe*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;Br=M;Zt=Wr(ur*19|0,fr|0,o|0,((o|0)<0)<<31>>31|0)|0;Wt=M;lt=Wr(Tt*19|0,zt|0,o|0,((o|0)<0)<<31>>31|0)|0;ht=M;Ie=Wr(He*19|0,Ve|0,o|0,((o|0)<0)<<31>>31|0)|0;Me=M;l=Wr(oe*19|0,se|0,o|0,((o|0)<0)<<31>>31|0)|0;y=M;o=Wr(Dr*19|0,r|0,o|0,((o|0)<0)<<31>>31|0)|0;Se=M;we=Wr(O|0,((O|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;ve=M;ne=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;re=M;R=Wr(rr|0,((rr|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;B=M;Or=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;Cr=M;$t=Wr(Oe*19|0,((Oe*19|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;Jt=M;pt=Wr(ur*19|0,fr|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;dt=M;ze=Wr(Tt*19|0,zt|0,ie|0,((ie|0)<0)<<31>>31|0)|0;Te=M;or=Wr(He*19|0,Ve|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;ar=M;At=Wr(oe*19|0,se|0,ie|0,((ie|0)<0)<<31>>31|0)|0;xt=M;ie=Wr(Dr*19|0,r|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;c=M;te=Wr(O|0,((O|0)<0)<<31>>31|0,P|0,((P|0)<0)<<31>>31|0)|0;ee=M;N=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,P|0,((P|0)<0)<<31>>31|0)|0;j=M;Nr=Wr(rr*19|0,((rr*19|0)<0)<<31>>31|0,P|0,((P|0)<0)<<31>>31|0)|0;jr=M;er=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,P|0,((P|0)<0)<<31>>31|0)|0;Qt=M;_t=Wr(Oe*19|0,((Oe*19|0)<0)<<31>>31|0,P|0,((P|0)<0)<<31>>31|0)|0;bt=M;Re=Wr(ur*19|0,fr|0,P|0,((P|0)<0)<<31>>31|0)|0;Be=M;cr=Wr(Tt*19|0,zt|0,P|0,((P|0)<0)<<31>>31|0)|0;sr=M;It=Wr(He*19|0,Ve|0,P|0,((P|0)<0)<<31>>31|0)|0;Mt=M;Ye=Wr(oe*19|0,se|0,P|0,((P|0)<0)<<31>>31|0)|0;Fe=M;P=Wr(Dr*19|0,r|0,P|0,((P|0)<0)<<31>>31|0)|0;s=M;O=Wr(O|0,((O|0)<0)<<31>>31|0,_|0,((_|0)<0)<<31>>31|0)|0;C=M;Ur=Wr(Ur*19|0,((Ur*19|0)<0)<<31>>31|0,_<<1|0,((_<<1|0)<0)<<31>>31|0)|0;qr=M;rr=Wr(rr*19|0,((rr*19|0)<0)<<31>>31|0,_|0,((_|0)<0)<<31>>31|0)|0;tr=M;mt=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,_<<1|0,((_<<1|0)<0)<<31>>31|0)|0;yt=M;Oe=Wr(Oe*19|0,((Oe*19|0)<0)<<31>>31|0,_|0,((_|0)<0)<<31>>31|0)|0;Ce=M;fr=Wr(ur*19|0,fr|0,_<<1|0,((_<<1|0)<0)<<31>>31|0)|0;ur=M;zt=Wr(Tt*19|0,zt|0,_|0,((_|0)<0)<<31>>31|0)|0;Tt=M;Ve=Wr(He*19|0,Ve|0,_<<1|0,((_<<1|0)<0)<<31>>31|0)|0;He=M;se=Wr(oe*19|0,se|0,_|0,((_|0)<0)<<31>>31|0)|0;oe=M;_=Wr(Dr*19|0,r|0,_<<1|0,((_<<1|0)<0)<<31>>31|0)|0;r=M;Pr=Tn(Ur|0,qr|0,Lr|0,Pr|0)|0;jr=Tn(Pr|0,M|0,Nr|0,jr|0)|0;Cr=Tn(jr|0,M|0,Or|0,Cr|0)|0;Br=Tn(Cr|0,M|0,Rr|0,Br|0)|0;Tr=Tn(Br|0,M|0,zr|0,Tr|0)|0;Mr=Tn(Tr|0,M|0,Ir|0,Mr|0)|0;xr=Tn(Mr|0,M|0,Ar|0,xr|0)|0;Er=Tn(xr|0,M|0,Sr|0,Er|0)|0;b=Tn(Er|0,M|0,d|0,b|0)|0;d=M;ir=Tn(kr|0,wr|0,nr|0,ir|0)|0;nr=M;yr=Tn(vr|0,gr|0,mr|0,yr|0)|0;br=Tn(yr|0,M|0,_r|0,br|0)|0;dr=Tn(br|0,M|0,pr|0,dr|0)|0;hr=Tn(dr|0,M|0,lr|0,hr|0)|0;ur=Tn(hr|0,M|0,fr|0,ur|0)|0;sr=Tn(ur|0,M|0,cr|0,sr|0)|0;ar=Tn(sr|0,M|0,or|0,ar|0)|0;y=Tn(ar|0,M|0,l|0,y|0)|0;L=Tn(y|0,M|0,t|0,L|0)|0;t=M;y=Tn(b|0,d|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;l=M;tr=Tn(ir|0,nr|0,rr|0,tr|0)|0;Qt=Tn(tr|0,M|0,er|0,Qt|0)|0;Jt=Tn(Qt|0,M|0,$t|0,Jt|0)|0;Wt=Tn(Jt|0,M|0,Zt|0,Wt|0)|0;Gt=Tn(Wt|0,M|0,Xt|0,Gt|0)|0;Ht=Tn(Gt|0,M|0,Vt|0,Ht|0)|0;Ft=Tn(Ht|0,M|0,Yt|0,Ft|0)|0;u=Tn(Ft|0,M|0,f|0,u|0)|0;u=Tn(u|0,M|0,y|0,l|0)|0;f=M;l=cn(y|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=Tn(L|0,t|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;y=M;qt=Tn(Kt|0,Dt|0,Ut|0,qt|0)|0;Pt=Tn(qt|0,M|0,Lt|0,Pt|0)|0;jt=Tn(Pt|0,M|0,Nt|0,jt|0)|0;Ct=Tn(jt|0,M|0,Ot|0,Ct|0)|0;Bt=Tn(Ct|0,M|0,Rt|0,Bt|0)|0;Tt=Tn(Bt|0,M|0,zt|0,Tt|0)|0;Mt=Tn(Tt|0,M|0,It|0,Mt|0)|0;xt=Tn(Mt|0,M|0,At|0,xt|0)|0;Se=Tn(xt|0,M|0,o|0,Se|0)|0;Se=Tn(Se|0,M|0,b|0,y|0)|0;o=M;y=cn(b|0,y|0,26)|0;y=Mn(L|0,t|0,y|0,M|0)|0;t=M;L=Tn(u|0,f|0,16777216,0)|0;L=Hr(L|0,M|0,25)|0;b=M;wt=Tn(St|0,Et|0,kt|0,wt|0)|0;gt=Tn(wt|0,M|0,vt|0,gt|0)|0;yt=Tn(gt|0,M|0,mt|0,yt|0)|0;bt=Tn(yt|0,M|0,_t|0,bt|0)|0;dt=Tn(bt|0,M|0,pt|0,dt|0)|0;ht=Tn(dt|0,M|0,lt|0,ht|0)|0;ut=Tn(ht|0,M|0,ft|0,ut|0)|0;st=Tn(ut|0,M|0,ct|0,st|0)|0;i=Tn(st|0,M|0,ae|0,i|0)|0;i=Tn(i|0,M|0,L|0,b|0)|0;ae=M;b=cn(L|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=Tn(Se|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;L=M;nt=Tn(ot|0,at|0,it|0,nt|0)|0;tt=Tn(nt|0,M|0,rt|0,tt|0)|0;Qe=Tn(tt|0,M|0,et|0,Qe|0)|0;Je=Tn(Qe|0,M|0,$e|0,Je|0)|0;We=Tn(Je|0,M|0,Ze|0,We|0)|0;Ge=Tn(We|0,M|0,Xe|0,Ge|0)|0;He=Tn(Ge|0,M|0,Ve|0,He|0)|0;Fe=Tn(He|0,M|0,Ye|0,Fe|0)|0;c=Tn(Fe|0,M|0,ie|0,c|0)|0;c=Tn(c|0,M|0,u|0,L|0)|0;ie=M;L=cn(u|0,L|0,25)|0;L=Mn(Se|0,o|0,L|0,M|0)|0;o=M;Se=Tn(i|0,ae|0,33554432,0)|0;Se=Hr(Se|0,M|0,26)|0;u=M;qe=Tn(Ke|0,De|0,Ue|0,qe|0)|0;Pe=Tn(qe|0,M|0,Le|0,Pe|0)|0;je=Tn(Pe|0,M|0,Ne|0,je|0)|0;Ce=Tn(je|0,M|0,Oe|0,Ce|0)|0;Be=Tn(Ce|0,M|0,Re|0,Be|0)|0;Te=Tn(Be|0,M|0,ze|0,Te|0)|0;Me=Tn(Te|0,M|0,Ie|0,Me|0)|0;xe=Tn(Me|0,M|0,Ae|0,xe|0)|0;n=Tn(xe|0,M|0,q|0,n|0)|0;n=Tn(n|0,M|0,Se|0,u|0)|0;q=M;u=cn(Se|0,u|0,26)|0;u=Mn(i|0,ae|0,u|0,M|0)|0;ae=Tn(c|0,ie|0,33554432,0)|0;ae=Hr(ae|0,M|0,26)|0;i=M;ve=Tn(Ee|0,ke|0,we|0,ve|0)|0;me=Tn(ve|0,M|0,ge|0,me|0)|0;_e=Tn(me|0,M|0,ye|0,_e|0)|0;pe=Tn(_e|0,M|0,be|0,pe|0)|0;le=Tn(pe|0,M|0,de|0,le|0)|0;fe=Tn(le|0,M|0,he|0,fe|0)|0;ce=Tn(fe|0,M|0,ue|0,ce|0)|0;oe=Tn(ce|0,M|0,se|0,oe|0)|0;s=Tn(oe|0,M|0,P|0,s|0)|0;s=Tn(s|0,M|0,ae|0,i|0)|0;P=M;i=cn(ae|0,i|0,26)|0;i=Mn(c|0,ie|0,i|0,M|0)|0;ie=Tn(n|0,q|0,16777216,0)|0;ie=Hr(ie|0,M|0,25)|0;c=M;t=Tn(ie|0,c|0,y|0,t|0)|0;y=M;c=cn(ie|0,c|0,25)|0;c=Mn(n|0,q|0,c|0,M|0)|0;q=Tn(s|0,P|0,16777216,0)|0;q=Hr(q|0,M|0,25)|0;n=M;ee=Tn(ne|0,re|0,te|0,ee|0)|0;$=Tn(ee|0,M|0,Q|0,$|0)|0;Z=Tn($|0,M|0,J|0,Z|0)|0;X=Tn(Z|0,M|0,W|0,X|0)|0;V=Tn(X|0,M|0,G|0,V|0)|0;Y=Tn(V|0,M|0,H|0,Y|0)|0;K=Tn(Y|0,M|0,F|0,K|0)|0;U=Tn(K|0,M|0,D|0,U|0)|0;r=Tn(U|0,M|0,_|0,r|0)|0;r=Tn(r|0,M|0,q|0,n|0)|0;_=M;n=cn(q|0,n|0,25)|0;n=Mn(s|0,P|0,n|0,M|0)|0;P=Tn(t|0,y|0,33554432,0)|0;P=Hr(P|0,M|0,26)|0;s=M;o=Tn(L|0,o|0,P|0,s|0)|0;s=cn(P|0,s|0,26)|0;s=Mn(t|0,y|0,s|0,M|0)|0;y=Tn(r|0,_|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;t=M;C=Tn(N|0,j|0,O|0,C|0)|0;B=Tn(C|0,M|0,R|0,B|0)|0;T=Tn(B|0,M|0,z|0,T|0)|0;A=Tn(T|0,M|0,I|0,A|0)|0;S=Tn(A|0,M|0,x|0,S|0)|0;k=Tn(S|0,M|0,E|0,k|0)|0;v=Tn(k|0,M|0,w|0,v|0)|0;m=Tn(v|0,M|0,g|0,m|0)|0;h=Tn(m|0,M|0,p|0,h|0)|0;h=Tn(h|0,M|0,y|0,t|0)|0;p=M;t=cn(y|0,t|0,26)|0;t=Mn(r|0,_|0,t|0,M|0)|0;_=Tn(h|0,p|0,16777216,0)|0;_=Hr(_|0,M|0,25)|0;r=M;y=Wr(_|0,r|0,19,0)|0;d=Tn(y|0,M|0,l|0,d|0)|0;l=M;r=cn(_|0,r|0,25)|0;r=Mn(h|0,p|0,r|0,M|0)|0;p=Tn(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=Tn(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=t;a[e+36>>2]=r;return}function he(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,_e=0,ye=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Ie=0,Te=0,ze=0,Be=0,Re=0,Ce=0,Oe=0,je=0,Ne=0,Pe=0,Le=0,qe=0,Ue=0,De=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Ze=0,Je=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0;h=a[t>>2]|0;d=a[t+4>>2]|0;f=a[t+8>>2]|0;i=a[t+12>>2]|0;v=a[t+16>>2]|0;g=a[t+20>>2]|0;o=a[t+24>>2]|0;w=a[t+28>>2]|0;m=a[t+32>>2]|0;_=a[t+36>>2]|0;rt=Wr(h|0,((h|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;tt=M;p=((h<<1|0)<0)<<31>>31;Ve=Wr(h<<1|0,p|0,d|0,((d|0)<0)<<31>>31|0)|0;He=M;Ue=Wr(f|0,((f|0)<0)<<31>>31|0,h<<1|0,p|0)|0;qe=M;ze=Wr(i|0,((i|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Te=M;me=Wr(v|0,((v|0)<0)<<31>>31|0,h<<1|0,p|0)|0;ye=M;ce=Wr(g|0,((g|0)<0)<<31>>31|0,h<<1|0,p|0)|0;se=M;$=Wr(o|0,((o|0)<0)<<31>>31|0,h<<1|0,p|0)|0;J=M;K=Wr(w|0,((w|0)<0)<<31>>31|0,h<<1|0,p|0)|0;D=M;R=Wr(m|0,((m|0)<0)<<31>>31|0,h<<1|0,p|0)|0;B=M;p=Wr(_|0,((_|0)<0)<<31>>31|0,h<<1|0,p|0)|0;h=M;b=((d<<1|0)<0)<<31>>31;Le=Wr(d<<1|0,b|0,d|0,((d|0)<0)<<31>>31|0)|0;Pe=M;Ie=Wr(d<<1|0,b|0,f|0,((f|0)<0)<<31>>31|0)|0;Me=M;k=((i<<1|0)<0)<<31>>31;ke=Wr(i<<1|0,k|0,d<<1|0,b|0)|0;we=M;le=Wr(v|0,((v|0)<0)<<31>>31|0,d<<1|0,b|0)|0;he=M;ee=Wr(g<<1|0,((g<<1|0)<0)<<31>>31|0,d<<1|0,b|0)|0;Q=M;Y=Wr(o|0,((o|0)<0)<<31>>31|0,d<<1|0,b|0)|0;F=M;O=Wr(w<<1|0,((w<<1|0)<0)<<31>>31|0,d<<1|0,b|0)|0;C=M;l=Wr(m|0,((m|0)<0)<<31>>31|0,d<<1|0,b|0)|0;y=M;t=((_*38|0)<0)<<31>>31;b=Wr(_*38|0,t|0,d<<1|0,b|0)|0;d=M;ve=Wr(f|0,((f|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;ge=M;fe=Wr(f<<1|0,((f<<1|0)<0)<<31>>31|0,i|0,((i|0)<0)<<31>>31|0)|0;ue=M;re=Wr(v|0,((v|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;te=M;X=Wr(g|0,((g|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;G=M;U=Wr(o|0,((o|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;q=M;x=Wr(w|0,((w|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;S=M;Z=((m*19|0)<0)<<31>>31;Ze=Wr(m*19|0,Z|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;We=M;f=Wr(_*38|0,t|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;ie=Wr(i<<1|0,k|0,i|0,((i|0)<0)<<31>>31|0)|0;ne=M;V=Wr(i<<1|0,k|0,v|0,((v|0)<0)<<31>>31|0)|0;H=M;N=Wr(g<<1|0,((g<<1|0)<0)<<31>>31|0,i<<1|0,k|0)|0;j=M;z=Wr(o|0,((o|0)<0)<<31>>31|0,i<<1|0,k|0)|0;T=M;_e=((w*38|0)<0)<<31>>31;$e=Wr(w*38|0,_e|0,i<<1|0,k|0)|0;Je=M;Ke=Wr(m*19|0,Z|0,i<<1|0,k|0)|0;De=M;k=Wr(_*38|0,t|0,i<<1|0,k|0)|0;i=M;L=Wr(v|0,((v|0)<0)<<31>>31|0,v|0,((v|0)<0)<<31>>31|0)|0;P=M;I=Wr(v<<1|0,((v<<1|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;A=M;et=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,v<<1|0,((v<<1|0)<0)<<31>>31|0)|0;Qe=M;Ye=Wr(w*38|0,_e|0,v|0,((v|0)<0)<<31>>31|0)|0;Fe=M;Re=Wr(m*19|0,Z|0,v<<1|0,((v<<1|0)<0)<<31>>31|0)|0;Be=M;v=Wr(_*38|0,t|0,v|0,((v|0)<0)<<31>>31|0)|0;n=M;it=Wr(g*38|0,((g*38|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;nt=M;Xe=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Ge=M;Oe=Wr(w*38|0,_e|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Ce=M;Se=Wr(m*19|0,Z|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Ee=M;g=Wr(_*38|0,t|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;r=M;Ne=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;je=M;Ae=Wr(w*38|0,_e|0,o|0,((o|0)<0)<<31>>31|0)|0;xe=M;pe=Wr(m*19|0,Z|0,o<<1|0,((o<<1|0)<0)<<31>>31|0)|0;de=M;o=Wr(_*38|0,t|0,o|0,((o|0)<0)<<31>>31|0)|0;E=M;_e=Wr(w*38|0,_e|0,w|0,((w|0)<0)<<31>>31|0)|0;be=M;oe=Wr(m*19|0,Z|0,w<<1|0,((w<<1|0)<0)<<31>>31|0)|0;ae=M;w=Wr(_*38|0,t|0,w<<1|0,((w<<1|0)<0)<<31>>31|0)|0;c=M;Z=Wr(m*19|0,Z|0,m|0,((m|0)<0)<<31>>31|0)|0;W=M;m=Wr(_*38|0,t|0,m|0,((m|0)<0)<<31>>31|0)|0;s=M;_=Wr(_*38|0,t|0,_|0,((_|0)<0)<<31>>31|0)|0;t=M;tt=Tn(it|0,nt|0,rt|0,tt|0)|0;Qe=Tn(tt|0,M|0,et|0,Qe|0)|0;Je=Tn(Qe|0,M|0,$e|0,Je|0)|0;We=Tn(Je|0,M|0,Ze|0,We|0)|0;d=Tn(We|0,M|0,b|0,d|0)|0;b=M;He=Tn(Xe|0,Ge|0,Ve|0,He|0)|0;Fe=Tn(He|0,M|0,Ye|0,Fe|0)|0;De=Tn(Fe|0,M|0,Ke|0,De|0)|0;u=Tn(De|0,M|0,f|0,u|0)|0;f=M;Pe=Tn(Ue|0,qe|0,Le|0,Pe|0)|0;je=Tn(Pe|0,M|0,Ne|0,je|0)|0;Ce=Tn(je|0,M|0,Oe|0,Ce|0)|0;Be=Tn(Ce|0,M|0,Re|0,Be|0)|0;i=Tn(Be|0,M|0,k|0,i|0)|0;k=M;Me=Tn(ze|0,Te|0,Ie|0,Me|0)|0;xe=Tn(Me|0,M|0,Ae|0,xe|0)|0;Ee=Tn(xe|0,M|0,Se|0,Ee|0)|0;n=Tn(Ee|0,M|0,v|0,n|0)|0;v=M;ge=Tn(ke|0,we|0,ve|0,ge|0)|0;ye=Tn(ge|0,M|0,me|0,ye|0)|0;be=Tn(ye|0,M|0,_e|0,be|0)|0;de=Tn(be|0,M|0,pe|0,de|0)|0;r=Tn(de|0,M|0,g|0,r|0)|0;g=M;ue=Tn(le|0,he|0,fe|0,ue|0)|0;se=Tn(ue|0,M|0,ce|0,se|0)|0;ae=Tn(se|0,M|0,oe|0,ae|0)|0;E=Tn(ae|0,M|0,o|0,E|0)|0;o=M;te=Tn(ie|0,ne|0,re|0,te|0)|0;Q=Tn(te|0,M|0,ee|0,Q|0)|0;J=Tn(Q|0,M|0,$|0,J|0)|0;W=Tn(J|0,M|0,Z|0,W|0)|0;c=Tn(W|0,M|0,w|0,c|0)|0;w=M;H=Tn(X|0,G|0,V|0,H|0)|0;F=Tn(H|0,M|0,Y|0,F|0)|0;D=Tn(F|0,M|0,K|0,D|0)|0;s=Tn(D|0,M|0,m|0,s|0)|0;m=M;P=Tn(U|0,q|0,L|0,P|0)|0;j=Tn(P|0,M|0,N|0,j|0)|0;C=Tn(j|0,M|0,O|0,C|0)|0;B=Tn(C|0,M|0,R|0,B|0)|0;t=Tn(B|0,M|0,_|0,t|0)|0;_=M;A=Tn(z|0,T|0,I|0,A|0)|0;S=Tn(A|0,M|0,x|0,S|0)|0;y=Tn(S|0,M|0,l|0,y|0)|0;h=Tn(y|0,M|0,p|0,h|0)|0;p=M;b=cn(d|0,b|0,1)|0;d=M;f=cn(u|0,f|0,1)|0;u=M;k=cn(i|0,k|0,1)|0;i=M;v=cn(n|0,v|0,1)|0;n=M;g=cn(r|0,g|0,1)|0;r=M;o=cn(E|0,o|0,1)|0;E=M;w=cn(c|0,w|0,1)|0;c=M;m=cn(s|0,m|0,1)|0;s=M;_=cn(t|0,_|0,1)|0;t=M;p=cn(h|0,p|0,1)|0;h=M;y=Tn(b|0,d|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;l=M;u=Tn(y|0,l|0,f|0,u|0)|0;f=M;l=cn(y|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=Tn(g|0,r|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;y=M;E=Tn(b|0,y|0,o|0,E|0)|0;o=M;y=cn(b|0,y|0,26)|0;y=Mn(g|0,r|0,y|0,M|0)|0;r=M;g=Tn(u|0,f|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;b=M;i=Tn(g|0,b|0,k|0,i|0)|0;k=M;b=cn(g|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=Tn(E|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;g=M;c=Tn(u|0,g|0,w|0,c|0)|0;w=M;g=cn(u|0,g|0,25)|0;g=Mn(E|0,o|0,g|0,M|0)|0;o=M;E=Tn(i|0,k|0,33554432,0)|0;E=Hr(E|0,M|0,26)|0;u=M;n=Tn(E|0,u|0,v|0,n|0)|0;v=M;u=cn(E|0,u|0,26)|0;u=Mn(i|0,k|0,u|0,M|0)|0;k=Tn(c|0,w|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;i=M;s=Tn(k|0,i|0,m|0,s|0)|0;m=M;i=cn(k|0,i|0,26)|0;i=Mn(c|0,w|0,i|0,M|0)|0;w=Tn(n|0,v|0,16777216,0)|0;w=Hr(w|0,M|0,25)|0;c=M;r=Tn(w|0,c|0,y|0,r|0)|0;y=M;c=cn(w|0,c|0,25)|0;c=Mn(n|0,v|0,c|0,M|0)|0;v=Tn(s|0,m|0,16777216,0)|0;v=Hr(v|0,M|0,25)|0;n=M;t=Tn(v|0,n|0,_|0,t|0)|0;_=M;n=cn(v|0,n|0,25)|0;n=Mn(s|0,m|0,n|0,M|0)|0;m=Tn(r|0,y|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;s=M;o=Tn(g|0,o|0,m|0,s|0)|0;s=cn(m|0,s|0,26)|0;s=Mn(r|0,y|0,s|0,M|0)|0;y=Tn(t|0,_|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;r=M;h=Tn(y|0,r|0,p|0,h|0)|0;p=M;r=cn(y|0,r|0,26)|0;r=Mn(t|0,_|0,r|0,M|0)|0;_=Tn(h|0,p|0,16777216,0)|0;_=Hr(_|0,M|0,25)|0;t=M;y=Wr(_|0,t|0,19,0)|0;d=Tn(y|0,M|0,l|0,d|0)|0;l=M;t=cn(_|0,t|0,25)|0;t=Mn(h|0,p|0,t|0,M|0)|0;p=Tn(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=Tn(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function le(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,_e=0,ye=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Ie=0,Te=0,ze=0,Be=0,Re=0,Ce=0,Oe=0,je=0,Ne=0,Pe=0,Le=0,qe=0,Ue=0,De=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Ze=0,Je=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0;h=a[t>>2]|0;b=a[t+4>>2]|0;f=a[t+8>>2]|0;i=a[t+12>>2]|0;T=a[t+16>>2]|0;r=a[t+20>>2]|0;o=a[t+24>>2]|0;U=a[t+28>>2]|0;A=a[t+32>>2]|0;_=a[t+36>>2]|0;rt=Wr(h|0,((h|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;tt=M;p=((h<<1|0)<0)<<31>>31;Oe=Wr(h<<1|0,p|0,b|0,((b|0)<0)<<31>>31|0)|0;Ce=M;Xe=Wr(f|0,((f|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Ge=M;Ve=Wr(i|0,((i|0)<0)<<31>>31|0,h<<1|0,p|0)|0;He=M;Ue=Wr(T|0,((T|0)<0)<<31>>31|0,h<<1|0,p|0)|0;qe=M;Se=Wr(r|0,((r|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Ee=M;oe=Wr(o|0,((o|0)<0)<<31>>31|0,h<<1|0,p|0)|0;ae=M;F=Wr(U|0,((U|0)<0)<<31>>31|0,h<<1|0,p|0)|0;K=M;B=Wr(A|0,((A|0)<0)<<31>>31|0,h<<1|0,p|0)|0;z=M;p=Wr(_|0,((_|0)<0)<<31>>31|0,h<<1|0,p|0)|0;h=M;d=((b<<1|0)<0)<<31>>31;ge=Wr(b<<1|0,d|0,b|0,((b|0)<0)<<31>>31|0)|0;ve=M;te=Wr(b<<1|0,d|0,f|0,((f|0)<0)<<31>>31|0)|0;re=M;D=((i<<1|0)<0)<<31>>31;Ye=Wr(i<<1|0,D|0,b<<1|0,d|0)|0;Fe=M;Ie=Wr(T|0,((T|0)<0)<<31>>31|0,b<<1|0,d|0)|0;Me=M;ce=Wr(r<<1|0,((r<<1|0)<0)<<31>>31|0,b<<1|0,d|0)|0;se=M;H=Wr(o|0,((o|0)<0)<<31>>31|0,b<<1|0,d|0)|0;Y=M;C=Wr(U<<1|0,((U<<1|0)<0)<<31>>31|0,b<<1|0,d|0)|0;R=M;g=Wr(A|0,((A|0)<0)<<31>>31|0,b<<1|0,d|0)|0;m=M;t=((_*38|0)<0)<<31>>31;d=Wr(_*38|0,t|0,b<<1|0,d|0)|0;b=M;Ke=Wr(f|0,((f|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;De=M;Ae=Wr(f<<1|0,((f<<1|0)<0)<<31>>31|0,i|0,((i|0)<0)<<31>>31|0)|0;xe=M;fe=Wr(T|0,((T|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;ue=M;W=Wr(r|0,((r|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;X=M;q=Wr(o|0,((o|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;L=M;w=Wr(U|0,((U|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;v=M;ie=((A*19|0)<0)<<31>>31;Ze=Wr(A*19|0,ie|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;We=M;f=Wr(_*38|0,t|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;le=Wr(i<<1|0,D|0,i|0,((i|0)<0)<<31>>31|0)|0;he=M;G=Wr(i<<1|0,D|0,T|0,((T|0)<0)<<31>>31|0)|0;V=M;j=Wr(r<<1|0,((r<<1|0)<0)<<31>>31|0,i<<1|0,D|0)|0;O=M;x=Wr(o|0,((o|0)<0)<<31>>31|0,i<<1|0,D|0)|0;S=M;Le=((U*38|0)<0)<<31>>31;$e=Wr(U*38|0,Le|0,i<<1|0,D|0)|0;Je=M;ze=Wr(A*19|0,ie|0,i<<1|0,D|0)|0;Te=M;D=Wr(_*38|0,t|0,i<<1|0,D|0)|0;i=M;P=Wr(T|0,((T|0)<0)<<31>>31|0,T|0,((T|0)<0)<<31>>31|0)|0;N=M;E=Wr(T<<1|0,((T<<1|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;k=M;et=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,T<<1|0,((T<<1|0)<0)<<31>>31|0)|0;Qe=M;Re=Wr(U*38|0,Le|0,T|0,((T|0)<0)<<31>>31|0)|0;Be=M;pe=Wr(A*19|0,ie|0,T<<1|0,((T<<1|0)<0)<<31>>31|0)|0;de=M;T=Wr(_*38|0,t|0,T|0,((T|0)<0)<<31>>31|0)|0;n=M;it=Wr(r*38|0,((r*38|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;nt=M;Ne=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;je=M;_e=Wr(U*38|0,Le|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;be=M;$=Wr(A*19|0,ie|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;J=M;r=Wr(_*38|0,t|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;I=M;me=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;ye=M;ee=Wr(U*38|0,Le|0,o|0,((o|0)<0)<<31>>31|0)|0;Q=M;l=Wr(A*19|0,ie|0,o<<1|0,((o<<1|0)<0)<<31>>31|0)|0;y=M;o=Wr(_*38|0,t|0,o|0,((o|0)<0)<<31>>31|0)|0;Z=M;Le=Wr(U*38|0,Le|0,U|0,((U|0)<0)<<31>>31|0)|0;Pe=M;ke=Wr(A*19|0,ie|0,U<<1|0,((U<<1|0)<0)<<31>>31|0)|0;we=M;U=Wr(_*38|0,t|0,U<<1|0,((U<<1|0)<0)<<31>>31|0)|0;c=M;ie=Wr(A*19|0,ie|0,A|0,((A|0)<0)<<31>>31|0)|0;ne=M;A=Wr(_*38|0,t|0,A|0,((A|0)<0)<<31>>31|0)|0;s=M;_=Wr(_*38|0,t|0,_|0,((_|0)<0)<<31>>31|0)|0;t=M;tt=Tn(it|0,nt|0,rt|0,tt|0)|0;Qe=Tn(tt|0,M|0,et|0,Qe|0)|0;Je=Tn(Qe|0,M|0,$e|0,Je|0)|0;We=Tn(Je|0,M|0,Ze|0,We|0)|0;b=Tn(We|0,M|0,d|0,b|0)|0;d=M;ve=Tn(Xe|0,Ge|0,ge|0,ve|0)|0;ge=M;re=Tn(Ve|0,He|0,te|0,re|0)|0;te=M;De=Tn(Ye|0,Fe|0,Ke|0,De|0)|0;qe=Tn(De|0,M|0,Ue|0,qe|0)|0;Pe=Tn(qe|0,M|0,Le|0,Pe|0)|0;y=Tn(Pe|0,M|0,l|0,y|0)|0;I=Tn(y|0,M|0,r|0,I|0)|0;r=M;y=Tn(b|0,d|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;l=M;Ce=Tn(Ne|0,je|0,Oe|0,Ce|0)|0;Be=Tn(Ce|0,M|0,Re|0,Be|0)|0;Te=Tn(Be|0,M|0,ze|0,Te|0)|0;u=Tn(Te|0,M|0,f|0,u|0)|0;u=Tn(u|0,M|0,y|0,l|0)|0;f=M;l=cn(y|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=Tn(I|0,r|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;y=M;xe=Tn(Ie|0,Me|0,Ae|0,xe|0)|0;Ee=Tn(xe|0,M|0,Se|0,Ee|0)|0;we=Tn(Ee|0,M|0,ke|0,we|0)|0;Z=Tn(we|0,M|0,o|0,Z|0)|0;Z=Tn(Z|0,M|0,b|0,y|0)|0;o=M;y=cn(b|0,y|0,26)|0;y=Mn(I|0,r|0,y|0,M|0)|0;r=M;I=Tn(u|0,f|0,16777216,0)|0;I=Hr(I|0,M|0,25)|0;b=M;ye=Tn(ve|0,ge|0,me|0,ye|0)|0;be=Tn(ye|0,M|0,_e|0,be|0)|0;de=Tn(be|0,M|0,pe|0,de|0)|0;i=Tn(de|0,M|0,D|0,i|0)|0;i=Tn(i|0,M|0,I|0,b|0)|0;D=M;b=cn(I|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=Tn(Z|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;I=M;ue=Tn(le|0,he|0,fe|0,ue|0)|0;se=Tn(ue|0,M|0,ce|0,se|0)|0;ae=Tn(se|0,M|0,oe|0,ae|0)|0;ne=Tn(ae|0,M|0,ie|0,ne|0)|0;c=Tn(ne|0,M|0,U|0,c|0)|0;c=Tn(c|0,M|0,u|0,I|0)|0;U=M;I=cn(u|0,I|0,25)|0;I=Mn(Z|0,o|0,I|0,M|0)|0;o=M;Z=Tn(i|0,D|0,33554432,0)|0;Z=Hr(Z|0,M|0,26)|0;u=M;Q=Tn(re|0,te|0,ee|0,Q|0)|0;J=Tn(Q|0,M|0,$|0,J|0)|0;n=Tn(J|0,M|0,T|0,n|0)|0;n=Tn(n|0,M|0,Z|0,u|0)|0;T=M;u=cn(Z|0,u|0,26)|0;u=Mn(i|0,D|0,u|0,M|0)|0;D=Tn(c|0,U|0,33554432,0)|0;D=Hr(D|0,M|0,26)|0;i=M;V=Tn(W|0,X|0,G|0,V|0)|0;Y=Tn(V|0,M|0,H|0,Y|0)|0;K=Tn(Y|0,M|0,F|0,K|0)|0;s=Tn(K|0,M|0,A|0,s|0)|0;s=Tn(s|0,M|0,D|0,i|0)|0;A=M;i=cn(D|0,i|0,26)|0;i=Mn(c|0,U|0,i|0,M|0)|0;U=Tn(n|0,T|0,16777216,0)|0;U=Hr(U|0,M|0,25)|0;c=M;r=Tn(U|0,c|0,y|0,r|0)|0;y=M;c=cn(U|0,c|0,25)|0;c=Mn(n|0,T|0,c|0,M|0)|0;T=Tn(s|0,A|0,16777216,0)|0;T=Hr(T|0,M|0,25)|0;n=M;N=Tn(q|0,L|0,P|0,N|0)|0;O=Tn(N|0,M|0,j|0,O|0)|0;R=Tn(O|0,M|0,C|0,R|0)|0;z=Tn(R|0,M|0,B|0,z|0)|0;t=Tn(z|0,M|0,_|0,t|0)|0;t=Tn(t|0,M|0,T|0,n|0)|0;_=M;n=cn(T|0,n|0,25)|0;n=Mn(s|0,A|0,n|0,M|0)|0;A=Tn(r|0,y|0,33554432,0)|0;A=Hr(A|0,M|0,26)|0;s=M;o=Tn(I|0,o|0,A|0,s|0)|0;s=cn(A|0,s|0,26)|0;s=Mn(r|0,y|0,s|0,M|0)|0;y=Tn(t|0,_|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;r=M;k=Tn(x|0,S|0,E|0,k|0)|0;v=Tn(k|0,M|0,w|0,v|0)|0;m=Tn(v|0,M|0,g|0,m|0)|0;h=Tn(m|0,M|0,p|0,h|0)|0;h=Tn(h|0,M|0,y|0,r|0)|0;p=M;r=cn(y|0,r|0,26)|0;r=Mn(t|0,_|0,r|0,M|0)|0;_=Tn(h|0,p|0,16777216,0)|0;_=Hr(_|0,M|0,25)|0;t=M;y=Wr(_|0,t|0,19,0)|0;d=Tn(y|0,M|0,l|0,d|0)|0;l=M;t=cn(_|0,t|0,25)|0;t=Mn(h|0,p|0,t|0,M|0)|0;p=Tn(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=Tn(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function de(e){e=e|0;var t=0,r=0,n=0,i=0,o=0,s=0,c=0,u=0;if(!e)return;t=a[8622]|0;r=a[e+-4>>2]|0;u=e+-8+(r&-8)|0;do{if(!(r&1)){n=a[e+-8>>2]|0;if(!(r&3))return;s=e+-8+(0-n)|0;o=n+(r&-8)|0;if(s>>>0>>0)return;if((s|0)==(a[8623]|0)){e=a[u+4>>2]|0;if((e&3|0)!=3){c=s;t=o;break}a[8620]=o;a[u+4>>2]=e&-2;a[s+4>>2]=o|1;a[s+o>>2]=o;return}if(n>>>0<256){e=a[s+8>>2]|0;t=a[s+12>>2]|0;if((t|0)==(e|0)){a[8618]=a[8618]&~(1<<(n>>>3));c=s;t=o;break}else{a[e+12>>2]=t;a[t+8>>2]=e;c=s;t=o;break}}i=a[s+24>>2]|0;e=a[s+12>>2]|0;do{if((e|0)==(s|0)){e=a[s+16+4>>2]|0;if(!e){e=a[s+16>>2]|0;if(!e){e=0;break}else n=s+16|0}else n=s+16+4|0;while(1){t=e+20|0;r=a[t>>2]|0;if(r|0){e=r;n=t;continue}t=e+16|0;r=a[t>>2]|0;if(!r)break;else{e=r;n=t}}a[n>>2]=0}else{c=a[s+8>>2]|0;a[c+12>>2]=e;a[e+8>>2]=c}}while(0);if(i){t=a[s+28>>2]|0;if((s|0)==(a[34776+(t<<2)>>2]|0)){a[34776+(t<<2)>>2]=e;if(!e){a[8619]=a[8619]&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=e;if(!e){c=s;t=o;break}}a[e+24>>2]=i;t=a[s+16>>2]|0;if(t|0){a[e+16>>2]=t;a[t+24>>2]=e}t=a[s+16+4>>2]|0;if(t){a[e+20>>2]=t;a[t+24>>2]=e;c=s;t=o}else{c=s;t=o}}else{c=s;t=o}}else{c=e+-8|0;t=r&-8;s=e+-8|0}}while(0);if(s>>>0>=u>>>0)return;r=a[u+4>>2]|0;if(!(r&1))return;if(!(r&2)){e=a[8623]|0;if((u|0)==(a[8624]|0)){u=(a[8621]|0)+t|0;a[8621]=u;a[8624]=c;a[c+4>>2]=u|1;if((c|0)!=(e|0))return;a[8623]=0;a[8620]=0;return}if((u|0)==(e|0)){u=(a[8620]|0)+t|0;a[8620]=u;a[8623]=s;a[c+4>>2]=u|1;a[s+u>>2]=u;return}i=(r&-8)+t|0;do{if(r>>>0<256){t=a[u+8>>2]|0;e=a[u+12>>2]|0;if((e|0)==(t|0)){a[8618]=a[8618]&~(1<<(r>>>3));break}else{a[t+12>>2]=e;a[e+8>>2]=t;break}}else{o=a[u+24>>2]|0;e=a[u+12>>2]|0;do{if((e|0)==(u|0)){e=a[u+16+4>>2]|0;if(!e){e=a[u+16>>2]|0;if(!e){t=0;break}else n=u+16|0}else n=u+16+4|0;while(1){t=e+20|0;r=a[t>>2]|0;if(r|0){e=r;n=t;continue}t=e+16|0;r=a[t>>2]|0;if(!r)break;else{e=r;n=t}}a[n>>2]=0;t=e}else{t=a[u+8>>2]|0;a[t+12>>2]=e;a[e+8>>2]=t;t=e}}while(0);if(o|0){e=a[u+28>>2]|0;if((u|0)==(a[34776+(e<<2)>>2]|0)){a[34776+(e<<2)>>2]=t;if(!t){a[8619]=a[8619]&~(1<>2]|0)!=(u|0)&1)<<2)>>2]=t;if(!t)break}a[t+24>>2]=o;e=a[u+16>>2]|0;if(e|0){a[t+16>>2]=e;a[e+24>>2]=t}e=a[u+16+4>>2]|0;if(e|0){a[t+20>>2]=e;a[e+24>>2]=t}}}}while(0);a[c+4>>2]=i|1;a[s+i>>2]=i;if((c|0)==(a[8623]|0)){a[8620]=i;return}}else{a[u+4>>2]=r&-2;a[c+4>>2]=t|1;a[s+t>>2]=t;i=t}r=i>>>3;if(i>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=c;a[e+12>>2]=c;a[c+8>>2]=e;a[c+12>>2]=34512+(r<<1<<2);return}e=i>>>8;if(e)if(i>>>0>16777215)e=31;else{u=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(u+245760|0)>>>16&2)+(u<<((u+245760|0)>>>16&2)>>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;n=34776+(e<<2)|0;a[c+28>>2]=e;a[c+20>>2]=0;a[c+16>>2]=0;t=a[8619]|0;r=1<>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i|0)){e=73;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){e=72;break}else{t=t<<1;r=e}}if((e|0)==72){a[n>>2]=c;a[c+24>>2]=r;a[c+12>>2]=c;a[c+8>>2]=c;break}else if((e|0)==73){s=r+8|0;u=a[s>>2]|0;a[u+12>>2]=c;a[s>>2]=c;a[c+8>>2]=u;a[c+12>>2]=r;a[c+24>>2]=0;break}}else{a[8619]=t|r;a[n>>2]=c;a[c+24>>2]=n;a[c+12>>2]=c;a[c+8>>2]=c}}while(0);u=(a[8626]|0)+-1|0;a[8626]=u;if(!u)e=34928;else return;while(1){e=a[e>>2]|0;if(!e)break;else e=e+8|0}a[8626]=-1;return}function pe(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0;l=Dr(i)|0;p=M;a=Dr(i+8|0)|0;s=M;n=cn(r|0,n|0,56)|0;i=M;if((t+r+(0-(r&7))|0)==(t|0)){_=a^2037671283;u=s^1952801890;d=l^1886610805;f=p^1936682341;c=a^1852075885;y=s^1685025377;s=l^1852142177;a=p^1819895653}else{m=t;_=a^2037671283;u=s^1952801890;d=l^1886610805;h=p^1936682341;f=a^1852075885;c=s^1685025377;s=l^1852142177;a=p^1819895653;while(1){b=Dr(m)|0;g=M;w=b^_;u=g^u;h=Tn(d|0,h|0,f|0,c|0)|0;y=M;d=Xr(f,c,13)|0;f=M^y;y=Xr(h,y,32)|0;_=M;l=Tn(w|0,u|0,s|0,a|0)|0;p=M;u=Xr(w,u,16)|0;c=M^p;_=Tn(u^l|0,c|0,y|0,_|0)|0;y=M;c=Xr(u^l,c,21)|0;u=y^M;p=Tn(l|0,p|0,d^h|0,f|0)|0;l=M;f=Xr(d^h,f,17)|0;a=M^l;l=Xr(p,l,32)|0;s=M;y=Tn(f^p|0,a|0,_|0,y|0)|0;h=M;a=Xr(f^p,a,13)|0;p=M^h;h=Xr(y,h,32)|0;f=M;s=Tn(l|0,s|0,_^c|0,u|0)|0;l=M;u=Xr(_^c,u,16)|0;c=M^l;f=Tn(u^s|0,c|0,h|0,f|0)|0;h=M;c=Xr(u^s,c,21)|0;u=h^M;l=Tn(a^y|0,p|0,s|0,l|0)|0;s=M;p=Xr(a^y,p,17)|0;y=M^s;s=Xr(l,s,32)|0;a=M;m=m+8|0;if((m|0)==(t+r+(0-(r&7))|0)){t=t+r+(0-(r&7))|0;_=f^c;d=f^b;f=h^g;c=p^l;break}else{_=f^c;d=f^b;h=h^g;f=p^l;c=y}}}switch(r&7){case 7:{n=cn(o[t+6>>0]|0|0,0,48)|0|n;i=M|i;v=5;break}case 6:{v=5;break}case 5:{v=6;break}case 4:{v=7;break}case 3:{v=8;break}case 2:{v=9;break}case 1:{v=10;break}default:{}}if((v|0)==5){w=cn(o[t+5>>0]|0|0,0,40)|0;i=M|i;n=w|n;v=6}if((v|0)==6){i=o[t+4>>0]|0|i;v=7}if((v|0)==7){w=cn(o[t+3>>0]|0|0,0,24)|0;n=w|n;i=M|i;v=8}if((v|0)==8){w=cn(o[t+2>>0]|0|0,0,16)|0;n=w|n;i=M|i;v=9}if((v|0)==9){w=cn(o[t+1>>0]|0|0,0,8)|0;n=w|n;i=M|i;v=10}if((v|0)==10)n=o[t>>0]|0|n;m=n^_;r=i^u;p=Tn(d|0,f|0,c|0,y|0)|0;b=M;_=Xr(c,y,13)|0;t=M^b;b=Xr(p,b,32)|0;v=M;g=Tn(m|0,r|0,s|0,a|0)|0;w=M;y=Xr(m,r,16)|0;r=M^w;v=Tn(y^g|0,r|0,b|0,v|0)|0;b=M;r=Xr(y^g,r,21)|0;y=b^M;w=Tn(g|0,w|0,_^p|0,t|0)|0;g=M;t=Xr(_^p,t,17)|0;p=M^g;g=Xr(w,g,32)|0;_=M;b=Tn(t^w|0,p|0,v|0,b|0)|0;m=M;p=Xr(t^w,p,13)|0;w=M^m;m=Xr(b,m,32)|0;t=M;_=Tn(g|0,_|0,v^r|0,y|0)|0;g=M;y=Xr(v^r,y,16)|0;r=M^g;t=Tn(y^_|0,r|0,m|0,t|0)|0;m=M;r=Xr(y^_,r,21)|0;y=m^M;g=Tn(p^b|0,w|0,_|0,g|0)|0;_=M;w=Xr(p^b,w,17)|0;b=M^_;_=Xr(g,_,32)|0;p=M;m=Tn(t^n|0,m^i|0,w^g|0,b|0)|0;v=M;b=Xr(w^g,b,13)|0;g=M^v;v=Xr(m,v,32)|0;w=M;p=Tn(_^255|0,p|0,t^r|0,y|0)|0;_=M;y=Xr(t^r,y,16)|0;r=M^_;w=Tn(y^p|0,r|0,v|0,w|0)|0;v=M;r=Xr(y^p,r,21)|0;y=v^M;_=Tn(p|0,_|0,b^m|0,g|0)|0;p=M;g=Xr(b^m,g,17)|0;m=M^p;p=Xr(_,p,32)|0;b=M;v=Tn(g^_|0,m|0,w|0,v|0)|0;t=M;m=Xr(g^_,m,13)|0;_=M^t;t=Xr(v,t,32)|0;g=M;b=Tn(p|0,b|0,w^r|0,y|0)|0;p=M;y=Xr(w^r,y,16)|0;r=M^p;g=Tn(y^b|0,r|0,t|0,g|0)|0;t=M;r=Xr(y^b,r,21)|0;y=t^M;p=Tn(m^v|0,_|0,b|0,p|0)|0;b=M;_=Xr(m^v,_,17)|0;v=M^b;b=Xr(p,b,32)|0;m=M;t=Tn(_^p|0,v|0,g|0,t|0)|0;w=M;v=Xr(_^p,v,13)|0;p=M^w;w=Xr(t,w,32)|0;_=M;m=Tn(b|0,m|0,g^r|0,y|0)|0;b=M;y=Xr(g^r,y,16)|0;r=M^b;_=Tn(y^m|0,r|0,w|0,_|0)|0;w=M;r=Xr(y^m,r,21)|0;y=w^M;b=Tn(v^t|0,p|0,m|0,b|0)|0;m=M;p=Xr(v^t,p,17)|0;t=M^m;m=Xr(b,m,32)|0;v=M;w=Tn(p^b|0,t|0,_|0,w|0)|0;g=M;t=Xr(p^b,t,13)|0;g=M^g;v=Tn(m|0,v|0,_^r|0,y|0)|0;m=M;y=Xr(_^r,y,16)|0;y=Xr(y^v,M^m,21)|0;r=M;m=Tn(t^w|0,g|0,v|0,m|0)|0;v=M;g=Xr(t^w,g,17)|0;w=M;t=Xr(m,v,32)|0;Mr(e,y^m^g^t,r^v^w^M);return}function be(e,t,r,i,o){e=e|0;t=t|0;r=r|0;i=i|0;o=o|0;var s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,Z=0,J=0,$=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0;H=p;Y=p=p+63&-64;p=p+64|0;if(!((i|0)==0&(o|0)==0)){if(o>>>0>63|(o|0)==63&i>>>0>4294967232)Q();z=a[e>>2]|0;B=a[e+4>>2]|0;R=a[e+8>>2]|0;C=a[e+12>>2]|0;O=a[e+16>>2]|0;j=a[e+20>>2]|0;N=a[e+24>>2]|0;P=a[e+28>>2]|0;L=a[e+32>>2]|0;q=a[e+36>>2]|0;U=a[e+40>>2]|0;D=a[e+44>>2]|0;K=a[e+56>>2]|0;F=a[e+60>>2]|0;s=0;A=a[e+52>>2]|0;S=a[e+48>>2]|0;I=o;T=i;while(1){x=I>>>0<0|(I|0)==0&T>>>0<64;if(x){o=Y;i=o+64|0;do{n[o>>0]=0;o=o+1|0}while((o|0)<(i|0));o=0;do{n[Y+o>>0]=n[t+o>>0]|0;o=o+1|0}while(0>>0|0==(I|0)&o>>>0>>0);s=r;t=Y;r=Y}o=z;i=B;c=R;u=C;f=O;h=j;l=N;d=P;b=L;_=q;y=U;m=F;g=K;v=A;w=S;k=D;E=20;do{le=o+f|0;te=Ti(le^w,16)|0;ee=te+b|0;de=Ti(ee^f,12)|0;te=Ti(de+le^te,8)|0;Z=Ti(te+ee^de,7)|0;ce=i+h|0;X=Ti(ce^v,16)|0;G=X+_|0;ue=Ti(G^h,12)|0;X=Ti(ue+ce^X,8)|0;pe=Ti(X+G^ue,7)|0;ne=c+l|0;W=Ti(ne^g,16)|0;re=W+y|0;ie=Ti(re^l,12)|0;W=Ti(ie+ne^W,8)|0;fe=Ti(W+re^ie,7)|0;J=u+d|0;oe=Ti(J^m,16)|0;V=oe+k|0;$=Ti(V^d,12)|0;oe=Ti($+J^oe,8)|0;ae=Ti(oe+V^$,7)|0;he=Ti(oe^pe+(de+le),16)|0;se=Ti(he+(W+re)^pe,12)|0;o=se+(pe+(de+le))|0;m=Ti(o^he,8)|0;y=m+(he+(W+re))|0;h=Ti(y^se,7)|0;se=Ti(fe+(ue+ce)^te,16)|0;re=Ti(se+(oe+V)^fe,12)|0;i=re+(fe+(ue+ce))|0;w=Ti(i^se,8)|0;k=w+(se+(oe+V))|0;l=Ti(k^re,7)|0;re=Ti(ae+(ie+ne)^X,16)|0;V=Ti(re+(te+ee)^ae,12)|0;c=V+(ae+(ie+ne))|0;v=Ti(c^re,8)|0;b=v+(re+(te+ee))|0;d=Ti(b^V,7)|0;W=Ti($+J+Z^W,16)|0;V=Ti(W+(X+G)^Z,12)|0;u=V+($+J+Z)|0;g=Ti(u^W,8)|0;_=g+(W+(X+G))|0;f=Ti(_^V,7)|0;E=E+-2|0}while((E|0)!=0);$=(ei(t)|0)^o+z;ee=(ei(t+4|0)|0)^i+B;te=(ei(t+8|0)|0)^c+R;re=(ei(t+12|0)|0)^u+C;ne=(ei(t+16|0)|0)^f+O;ie=(ei(t+20|0)|0)^h+j;ae=(ei(t+24|0)|0)^l+N;oe=(ei(t+28|0)|0)^d+P;se=(ei(t+32|0)|0)^b+L;ce=(ei(t+36|0)|0)^_+q;ue=(ei(t+40|0)|0)^y+U;fe=(ei(t+44|0)|0)^k+D;he=(ei(t+48|0)|0)^w+S;le=(ei(t+52|0)|0)^v+A;de=(ei(t+56|0)|0)^g+K;pe=(ei(t+60|0)|0)^m+F;i=S+1|0;o=((i|0)==0&1)+A|0;On(r,$);On(r+4|0,ee);On(r+8|0,te);On(r+12|0,re);On(r+16|0,ne);On(r+20|0,ie);On(r+24|0,ae);On(r+28|0,oe);On(r+32|0,se);On(r+36|0,ce);On(r+40|0,ue);On(r+44|0,fe);On(r+48|0,he);On(r+52|0,le);On(r+56|0,de);On(r+60|0,pe);if(I>>>0<0|(I|0)==0&T>>>0<65)break;pe=Tn(T|0,I|0,-64,-1)|0;t=t+64|0;r=r+64|0;A=o;S=i;I=M;T=pe}if(x?T|0:0){t=0;do{n[s+t>>0]=n[r+t>>0]|0;t=t+1|0}while((t|0)!=(T|0))}a[e+48>>2]=i;a[e+52>>2]=o}p=H;return}function _e(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0;m=n[e+80>>0]|0?0:16777216;g=a[e+4>>2]|0;p=a[e+8>>2]|0;b=a[e+12>>2]|0;_=a[e+16>>2]|0;f=a[e+20>>2]|0;u=a[e+24>>2]|0;c=a[e+28>>2]|0;s=a[e+32>>2]|0;o=a[e+36>>2]|0;if(i>>>0>0|(i|0)==0&r>>>0>15){y=a[e>>2]|0;l=r;while(1){S=((ei(t)|0)&67108863)+f|0;x=((ei(t+3|0)|0)>>>2&67108863)+u|0;E=((ei(t+6|0)|0)>>>4&67108863)+c|0;k=((ei(t+9|0)|0)>>>6)+s|0;f=((ei(t+12|0)|0)>>>8|m)+o|0;o=Wr(S|0,0,y|0,0)|0;r=M;c=Wr(x|0,0,_*5|0,0)|0;r=Tn(c|0,M|0,o|0,r|0)|0;o=M;c=Wr(E|0,0,b*5|0,0)|0;c=Tn(r|0,o|0,c|0,M|0)|0;o=M;r=Wr(k|0,0,p*5|0,0)|0;r=Tn(c|0,o|0,r|0,M|0)|0;o=M;c=Wr(f|0,0,g*5|0,0)|0;c=Tn(r|0,o|0,c|0,M|0)|0;o=M;r=Wr(S|0,0,g|0,0)|0;h=M;w=Wr(x|0,0,y|0,0)|0;h=Tn(w|0,M|0,r|0,h|0)|0;r=M;w=Wr(E|0,0,_*5|0,0)|0;w=Tn(h|0,r|0,w|0,M|0)|0;r=M;h=Wr(k|0,0,b*5|0,0)|0;h=Tn(w|0,r|0,h|0,M|0)|0;r=M;w=Wr(f|0,0,p*5|0,0)|0;w=Tn(h|0,r|0,w|0,M|0)|0;r=M;h=Wr(S|0,0,p|0,0)|0;d=M;v=Wr(x|0,0,g|0,0)|0;d=Tn(v|0,M|0,h|0,d|0)|0;h=M;v=Wr(E|0,0,y|0,0)|0;v=Tn(d|0,h|0,v|0,M|0)|0;h=M;d=Wr(k|0,0,_*5|0,0)|0;d=Tn(v|0,h|0,d|0,M|0)|0;h=M;v=Wr(f|0,0,b*5|0,0)|0;v=Tn(d|0,h|0,v|0,M|0)|0;h=M;d=Wr(S|0,0,b|0,0)|0;s=M;u=Wr(x|0,0,p|0,0)|0;s=Tn(u|0,M|0,d|0,s|0)|0;d=M;u=Wr(E|0,0,g|0,0)|0;u=Tn(s|0,d|0,u|0,M|0)|0;d=M;s=Wr(k|0,0,y|0,0)|0;s=Tn(u|0,d|0,s|0,M|0)|0;d=M;u=Wr(f|0,0,_*5|0,0)|0;u=Tn(s|0,d|0,u|0,M|0)|0;d=M;s=Wr(S|0,0,_|0,0)|0;S=M;x=Wr(x|0,0,b|0,0)|0;S=Tn(x|0,M|0,s|0,S|0)|0;s=M;E=Wr(E|0,0,p|0,0)|0;E=Tn(S|0,s|0,E|0,M|0)|0;s=M;k=Wr(k|0,0,g|0,0)|0;k=Tn(E|0,s|0,k|0,M|0)|0;s=M;f=Wr(f|0,0,y|0,0)|0;f=Tn(k|0,s|0,f|0,M|0)|0;s=M;o=fn(c|0,o|0,26)|0;o=Tn(w|0,r|0,o|0,0)|0;r=fn(o|0,M|0,26)|0;r=Tn(v|0,h|0,r|0,0)|0;h=fn(r|0,M|0,26)|0;h=Tn(u|0,d|0,h|0,0)|0;d=fn(h|0,M|0,26)|0;d=Tn(f|0,s|0,d|0,0)|0;s=fn(d|0,M|0,26)|0;l=Tn(l|0,i|0,-16,-1)|0;i=M;if(!(i>>>0>0|(i|0)==0&l>>>0>15)){f=(s*5|0)+c&67108863;u=(((s*5|0)+(c&67108863)|0)>>>26)+(o&67108863)|0;c=r&67108863;s=h&67108863;o=d&67108863;break}else{f=(s*5|0)+c&67108863;u=(((s*5|0)+(c&67108863)|0)>>>26)+(o&67108863)|0;c=r&67108863;s=h&67108863;o=d&67108863;t=t+16|0}}}a[e+20>>2]=f;a[e+24>>2]=u;a[e+28>>2]=c;a[e+32>>2]=s;a[e+36>>2]=o;return}function ye(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,I=0;S=hr(t)|0;f=M;E=$r(n[t+4>>0]|0,n[t+5>>0]|0,n[t+6>>0]|0)|0;E=cn(E|0,M|0,6)|0;h=M;k=$r(n[t+7>>0]|0,n[t+8>>0]|0,n[t+9>>0]|0)|0;k=cn(k|0,M|0,5)|0;c=M;g=$r(n[t+10>>0]|0,n[t+11>>0]|0,n[t+12>>0]|0)|0;g=cn(g|0,M|0,3)|0;u=M;m=$r(n[t+13>>0]|0,n[t+14>>0]|0,n[t+15>>0]|0)|0;m=cn(m|0,M|0,2)|0;o=M;i=hr(t+16|0)|0;s=M;b=$r(n[t+20>>0]|0,n[t+21>>0]|0,n[t+22>>0]|0)|0;b=cn(b|0,M|0,7)|0;r=M;w=$r(n[t+23>>0]|0,n[t+24>>0]|0,n[t+25>>0]|0)|0;w=cn(w|0,M|0,5)|0;v=M;d=$r(n[t+26>>0]|0,n[t+27>>0]|0,n[t+28>>0]|0)|0;d=cn(d|0,M|0,4)|0;p=M;y=$r(n[t+29>>0]|0,n[t+30>>0]|0,n[t+31>>0]|0)|0;y=cn(y|0,M|0,2)|0;t=Tn(y&33554428|0,0,16777216,0)|0;t=fn(t|0,M|0,25)|0;_=M;x=Mn(0,0,t|0,_|0)|0;f=Tn(x&19|0,0,S|0,f|0)|0;S=M;_=cn(t|0,_|0,25)|0;t=M;x=Tn(E|0,h|0,16777216,0)|0;x=Hr(x|0,M|0,25)|0;I=M;c=Tn(x|0,I|0,k|0,c|0)|0;k=M;I=cn(x|0,I|0,25)|0;I=Mn(E|0,h|0,I|0,M|0)|0;h=M;E=Tn(g|0,u|0,16777216,0)|0;E=Hr(E|0,M|0,25)|0;x=M;o=Tn(E|0,x|0,m|0,o|0)|0;m=M;x=cn(E|0,x|0,25)|0;x=Mn(g|0,u|0,x|0,M|0)|0;u=M;g=Tn(i|0,s|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;E=M;r=Tn(b|0,r|0,g|0,E|0)|0;b=M;E=cn(g|0,E|0,25)|0;E=Mn(i|0,s|0,E|0,M|0)|0;s=M;i=Tn(w|0,v|0,16777216,0)|0;i=Hr(i|0,M|0,25)|0;g=M;p=Tn(i|0,g|0,d|0,p|0)|0;d=M;g=cn(i|0,g|0,25)|0;i=M;A=Tn(f|0,S|0,33554432,0)|0;A=Hr(A|0,M|0,26)|0;l=M;h=Tn(I|0,h|0,A|0,l|0)|0;l=cn(A|0,l|0,26)|0;l=Mn(f|0,S|0,l|0,M|0)|0;S=Tn(c|0,k|0,33554432,0)|0;S=Hr(S|0,M|0,26)|0;f=M;u=Tn(x|0,u|0,S|0,f|0)|0;f=cn(S|0,f|0,26)|0;f=Mn(c|0,k|0,f|0,M|0)|0;k=Tn(o|0,m|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;c=M;s=Tn(E|0,s|0,k|0,c|0)|0;c=cn(k|0,c|0,26)|0;c=Mn(o|0,m|0,c|0,M|0)|0;m=Tn(r|0,b|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;o=M;v=Tn(m|0,o|0,w|0,v|0)|0;i=Mn(v|0,M|0,g|0,i|0)|0;o=cn(m|0,o|0,26)|0;o=Mn(r|0,b|0,o|0,M|0)|0;b=Tn(p|0,d|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;r=M;y=Tn(b|0,r|0,y&33554428|0,0)|0;t=Mn(y|0,M|0,_|0,t|0)|0;r=cn(b|0,r|0,26)|0;r=Mn(p|0,d|0,r|0,M|0)|0;a[e>>2]=l;a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=r;a[e+36>>2]=t;return}function me(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0;v=a[t>>2]|0;g=a[t+4>>2]|0;m=a[t+8>>2]|0;y=a[t+12>>2]|0;_=a[t+16>>2]|0;h=a[t+20>>2]|0;p=a[t+24>>2]|0;k=a[t+28>>2]|0;l=a[t+32>>2]|0;w=a[t+36>>2]|0;v=Wr(v|0,((v|0)<0)<<31>>31|0,121666,0)|0;u=M;g=Wr(g|0,((g|0)<0)<<31>>31|0,121666,0)|0;f=M;m=Wr(m|0,((m|0)<0)<<31>>31|0,121666,0)|0;s=M;y=Wr(y|0,((y|0)<0)<<31>>31|0,121666,0)|0;c=M;_=Wr(_|0,((_|0)<0)<<31>>31|0,121666,0)|0;i=M;h=Wr(h|0,((h|0)<0)<<31>>31|0,121666,0)|0;o=M;p=Wr(p|0,((p|0)<0)<<31>>31|0,121666,0)|0;r=M;k=Wr(k|0,((k|0)<0)<<31>>31|0,121666,0)|0;n=M;l=Wr(l|0,((l|0)<0)<<31>>31|0,121666,0)|0;d=M;w=Wr(w|0,((w|0)<0)<<31>>31|0,121666,0)|0;t=M;E=Tn(w|0,t|0,16777216,0)|0;E=Hr(E|0,M|0,25)|0;b=M;S=Wr(E|0,b|0,19,0)|0;u=Tn(S|0,M|0,v|0,u|0)|0;v=M;b=cn(E|0,b|0,25)|0;b=Mn(w|0,t|0,b|0,M|0)|0;t=M;w=Tn(g|0,f|0,16777216,0)|0;w=Hr(w|0,M|0,25)|0;E=M;s=Tn(w|0,E|0,m|0,s|0)|0;m=M;E=cn(w|0,E|0,25)|0;E=Mn(g|0,f|0,E|0,M|0)|0;f=M;g=Tn(y|0,c|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;w=M;i=Tn(g|0,w|0,_|0,i|0)|0;_=M;w=cn(g|0,w|0,25)|0;w=Mn(y|0,c|0,w|0,M|0)|0;c=M;y=Tn(h|0,o|0,16777216,0)|0;y=Hr(y|0,M|0,25)|0;g=M;r=Tn(y|0,g|0,p|0,r|0)|0;p=M;g=cn(y|0,g|0,25)|0;g=Mn(h|0,o|0,g|0,M|0)|0;o=M;h=Tn(k|0,n|0,16777216,0)|0;h=Hr(h|0,M|0,25)|0;y=M;d=Tn(h|0,y|0,l|0,d|0)|0;l=M;y=cn(h|0,y|0,25)|0;y=Mn(k|0,n|0,y|0,M|0)|0;n=M;k=Tn(u|0,v|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;h=M;f=Tn(E|0,f|0,k|0,h|0)|0;h=cn(k|0,h|0,26)|0;h=Mn(u|0,v|0,h|0,M|0)|0;v=Tn(s|0,m|0,33554432,0)|0;v=Hr(v|0,M|0,26)|0;u=M;c=Tn(w|0,c|0,v|0,u|0)|0;u=cn(v|0,u|0,26)|0;u=Mn(s|0,m|0,u|0,M|0)|0;m=Tn(i|0,_|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;s=M;o=Tn(g|0,o|0,m|0,s|0)|0;s=cn(m|0,s|0,26)|0;s=Mn(i|0,_|0,s|0,M|0)|0;_=Tn(r|0,p|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;i=M;n=Tn(y|0,n|0,_|0,i|0)|0;i=cn(_|0,i|0,26)|0;i=Mn(r|0,p|0,i|0,M|0)|0;p=Tn(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;r=M;t=Tn(b|0,t|0,p|0,r|0)|0;r=cn(p|0,r|0,26)|0;r=Mn(d|0,l|0,r|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function ge(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+2272|0;Ye(o+2016|0,t);Ye(o+1760|0,i);_r(o+480|0,r);Rr(o+320|0,r);or(o,o+320|0);ot(o+320|0,o,o+480|0);or(o+160|0,o+320|0);_r(o+480+160|0,o+160|0);ot(o+320|0,o,o+480+160|0);or(o+160|0,o+320|0);_r(o+480+320|0,o+160|0);ot(o+320|0,o,o+480+320|0);or(o+160|0,o+320|0);_r(o+480+480|0,o+160|0);ot(o+320|0,o,o+480+480|0);or(o+160|0,o+320|0);_r(o+480+640|0,o+160|0);ot(o+320|0,o,o+480+640|0);or(o+160|0,o+320|0);_r(o+480+800|0,o+160|0);ot(o+320|0,o,o+480+800|0);or(o+160|0,o+320|0);_r(o+480+960|0,o+160|0);ot(o+320|0,o,o+480+960|0);or(o+160|0,o+320|0);_r(o+480+1120|0,o+160|0);mn(e);t=255;while(1){if(n[o+2016+t>>0]|0)break;if(n[o+1760+t>>0]|0)break;r=t+-1|0;if((t|0)>0)t=r;else{t=r;break}}if((t|0)>-1)while(1){bt(o+320|0,e);r=n[o+2016+t>>0]|0;if(r<<24>>24<=0){if(r<<24>>24<0){or(o+160|0,o+320|0);at(o+320|0,o+160|0,o+480+((((r<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{or(o+160|0,o+320|0);ot(o+320|0,o+160|0,o+480+(((r&255)>>>1&255)*160|0)|0)}r=n[o+1760+t>>0]|0;if(r<<24>>24<=0){if(r<<24>>24<0){or(o+160|0,o+320|0);ct(o+320|0,o+160|0,1224+((((r<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{or(o+160|0,o+320|0);ut(o+320|0,o+160|0,1224+(((r&255)>>>1&255)*120|0)|0)}Cr(e,o+320|0);if((t|0)>0)t=t+-1|0;else break}p=a;return}function ve(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0,U=0,D=0,K=0,F=0,Y=0,H=0;A=ei(r)|0;M=ei(r+4|0)|0;I=ei(r+8|0)|0;T=ei(r+12|0)|0;E=ei(r+16|0)|0;S=ei(r+20|0)|0;x=ei(r+24|0)|0;g=ei(r+28|0)|0;v=ei(t)|0;w=ei(t+4|0)|0;k=ei(t+8|0)|0;m=ei(t+12|0)|0;r=0;t=A;n=M;i=I;a=T;o=v;s=w;c=k;u=m;f=E;h=g;l=x;d=S;p=1634760805;b=857760878;_=2036477234;y=1797285236;do{q=(Ti(p+d|0,7)|0)^a;N=(Ti(q+p|0,9)|0)^c;C=(Ti(N+q|0,13)|0)^d;K=(Ti(C+N|0,18)|0)^p;j=(Ti(t+b|0,7)|0)^u;R=(Ti(j+b|0,9)|0)^l;H=(Ti(R+j|0,13)|0)^t;L=(Ti(H+R|0,18)|0)^b;B=(Ti(o+_|0,7)|0)^h;Y=(Ti(B+_|0,9)|0)^n;D=(Ti(Y+B|0,13)|0)^o;O=(Ti(D+Y|0,18)|0)^_;F=(Ti(f+y|0,7)|0)^i;U=(Ti(F+y|0,9)|0)^s;P=(Ti(U+F|0,13)|0)^f;z=(Ti(P+U|0,18)|0)^y;t=(Ti(F+K|0,7)|0)^H;n=(Ti(t+K|0,9)|0)^Y;i=(Ti(n+t|0,13)|0)^F;p=(Ti(i+n|0,18)|0)^K;o=(Ti(L+q|0,7)|0)^D;s=(Ti(o+L|0,9)|0)^U;a=(Ti(s+o|0,13)|0)^q;b=(Ti(a+s|0,18)|0)^L;f=(Ti(O+j|0,7)|0)^P;c=(Ti(f+O|0,9)|0)^N;u=(Ti(c+f|0,13)|0)^j;_=(Ti(u+c|0,18)|0)^O;d=(Ti(z+B|0,7)|0)^C;l=(Ti(d+z|0,9)|0)^R;h=(Ti(l+d|0,13)|0)^B;y=(Ti(h+l|0,18)|0)^z;r=r+2|0}while((r|0)<20);On(e,p+1634760805|0);On(e+4|0,t+A|0);On(e+8|0,n+M|0);On(e+12|0,i+I|0);On(e+16|0,a+T|0);On(e+20|0,b+857760878|0);On(e+24|0,o+v|0);On(e+28|0,s+w|0);On(e+32|0,c+k|0);On(e+36|0,u+m|0);On(e+40|0,_+2036477234|0);On(e+44|0,f+E|0);On(e+48|0,d+S|0);On(e+52|0,l+x|0);On(e+56|0,h+g|0);On(e+60|0,y+1797285236|0);return}function we(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,I=0,T=0,z=0,B=0,R=0,C=0,O=0,j=0,N=0,P=0,L=0,q=0;if(!n){n=1797285236;i=2036477234;a=857760878;o=1634760805}else{o=ei(n)|0;a=ei(n+4|0)|0;i=ei(n+8|0)|0;n=ei(n+12|0)|0}y=ei(r)|0;_=ei(r+4|0)|0;b=ei(r+8|0)|0;p=ei(r+12|0)|0;d=ei(r+16|0)|0;l=ei(r+20|0)|0;h=ei(r+24|0)|0;f=ei(r+28|0)|0;u=ei(t)|0;c=ei(t+4|0)|0;s=ei(t+8|0)|0;m=0;t=ei(t+12|0)|0;r=o;do{P=y+r|0;A=Ti(u^P,16)|0;x=A+d|0;L=Ti(x^y,12)|0;A=Ti(L+P^A,8)|0;k=Ti(A+x^L,7)|0;C=_+a|0;v=Ti(c^C,16)|0;g=v+l|0;O=Ti(g^_,12)|0;v=Ti(O+C^v,8)|0;q=Ti(v+g^O,7)|0;I=b+i|0;w=Ti(s^I,16)|0;M=w+h|0;T=Ti(M^b,12)|0;w=Ti(T+I^w,8)|0;j=Ti(w+M^T,7)|0;E=p+n|0;B=Ti(t^E,16)|0;o=B+f|0;S=Ti(o^p,12)|0;B=Ti(S+E^B,8)|0;z=Ti(B+o^S,7)|0;N=Ti(B^q+(L+P),16)|0;R=Ti(N+(w+M)^q,12)|0;r=R+(q+(L+P))|0;t=Ti(r^N,8)|0;h=t+(N+(w+M))|0;_=Ti(h^R,7)|0;R=Ti(j+(O+C)^A,16)|0;M=Ti(R+(B+o)^j,12)|0;a=M+(j+(O+C))|0;u=Ti(a^R,8)|0;f=u+(R+(B+o))|0;b=Ti(f^M,7)|0;M=Ti(z+(T+I)^v,16)|0;o=Ti(M+(A+x)^z,12)|0;i=o+(z+(T+I))|0;c=Ti(i^M,8)|0;d=c+(M+(A+x))|0;p=Ti(d^o,7)|0;w=Ti(S+E+k^w,16)|0;o=Ti(w+(v+g)^k,12)|0;n=o+(S+E+k)|0;s=Ti(n^w,8)|0;l=s+(w+(v+g))|0;y=Ti(l^o,7)|0;m=m+1|0}while((m|0)!=10);On(e,r);On(e+4|0,a);On(e+8|0,i);On(e+12|0,n);On(e+16|0,u);On(e+20|0,c);On(e+24|0,s);On(e+28|0,t);return 0}function ke(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,_=0,y=0;l=p;h=p=p+63&-64;p=p+704|0;e:do{if(!((r|0)==0&(i|0)==0)){y=a[e+72>>2]|0;b=a[e+72+4>>2]|0;f=fn(y|0,b|0,3)|0;d=cn(r|0,i|0,3)|0;_=M;c=fn(r|0,i|0,61)|0;u=M;b=Tn(y|0,b|0,d|0,_|0)|0;y=M;a[e+72>>2]=b;a[e+72+4>>2]=y;o=a[e+64>>2]|0;s=a[e+64+4>>2]|0;if(y>>>0<_>>>0|(y|0)==(_|0)&b>>>0>>0){o=Tn(o|0,s|0,1,0)|0;s=M;a[e+64>>2]=o;a[e+64+4>>2]=s}u=Tn(o|0,s|0,c|0,u|0)|0;a[e+64>>2]=u;a[e+64+4>>2]=M;u=Mn(128,0,f&127|0,0)|0;o=M;if(o>>>0>i>>>0|(o|0)==(i|0)&u>>>0>r>>>0){o=0;s=0;while(1){_=n[t+o>>0]|0;y=Tn(o|0,s|0,f&127|0,0)|0;n[e+80+y>>0]=_;o=Tn(o|0,s|0,1,0)|0;s=M;if(!(s>>>0>>0|(s|0)==(i|0)&o>>>0>>0))break e}}if(!((u|0)==0&(o|0)==0)){s=0;c=0;do{_=n[t+s>>0]|0;y=Tn(s|0,c|0,f&127|0,0)|0;n[e+80+y>>0]=_;s=Tn(s|0,c|0,1,0)|0;c=M}while(c>>>0>>0|(c|0)==(o|0)&s>>>0>>0)}se(e,e+80|0,h,h+640|0);o=Mn(r|0,i|0,u|0,o|0)|0;s=M;if(s>>>0>0|(s|0)==0&o>>>0>127){c=t+u|0;do{se(e,c,h,h+640|0);c=c+128|0;o=Tn(o|0,s|0,-128,-1)|0;s=M}while(s>>>0>0|(s|0)==0&o>>>0>127);u=c}else u=t+u|0;o=o&127;if(!((o|0)==0&0==0)){s=0;c=0;do{n[e+80+s>>0]=n[u+s>>0]|0;s=Tn(s|0,c|0,1,0)|0;c=M}while(c>>>0<0|(c|0)==0&s>>>0>>0)}lr(h,704)}}while(0);p=l;return}function Ee(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+160|0;le(n+120|0,t);le(n+80|0,n+120|0);le(n+80|0,n+80|0);fe(n+80|0,t,n+80|0);fe(n+120|0,n+120|0,n+80|0);le(n+40|0,n+120|0);fe(n+80|0,n+80|0,n+40|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=5);fe(n+80|0,n+40|0,n+80|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=10);fe(n+40|0,n+40|0,n+80|0);le(n,n+40|0);t=1;do{le(n,n);t=t+1|0}while((t|0)!=20);fe(n+40|0,n,n+40|0);le(n+40|0,n+40|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=10);fe(n+80|0,n+40|0,n+80|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=50);fe(n+40|0,n+40|0,n+80|0);le(n,n+40|0);t=1;do{le(n,n);t=t+1|0}while((t|0)!=100);fe(n+40|0,n,n+40|0);le(n+40|0,n+40|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=50);fe(n+80|0,n+40|0,n+80|0);le(n+80|0,n+80|0);t=1;do{le(n+80|0,n+80|0);t=t+1|0}while((t|0)!=5);fe(e,n+80|0,n+120|0);p=r;return}function Se(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;n=p;i=p=p+63&-64;p=p+128|0;le(i+80|0,t);le(i+40|0,i+80|0);le(i+40|0,i+40|0);fe(i+40|0,t,i+40|0);fe(i+80|0,i+80|0,i+40|0);le(i+80|0,i+80|0);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=5);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=10);fe(i+40|0,i+40|0,i+80|0);le(i,i+40|0);r=1;do{le(i,i);r=r+1|0}while((r|0)!=20);fe(i+40|0,i,i+40|0);le(i+40|0,i+40|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=10);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=50);fe(i+40|0,i+40|0,i+80|0);le(i,i+40|0);r=1;do{le(i,i);r=r+1|0}while((r|0)!=100);fe(i+40|0,i,i+40|0);le(i+40|0,i+40|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=50);fe(i+80|0,i+40|0,i+80|0);le(i+80|0,i+80|0);le(i+80|0,i+80|0);fe(e,i+80|0,t);p=n;return}function xe(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0;l=a[t>>2]|0;s=a[t+4>>2]|0;c=a[t+8>>2]|0;u=a[t+12>>2]|0;b=a[t+16>>2]|0;i=a[t+20>>2]|0;o=a[t+24>>2]|0;d=a[t+28>>2]|0;r=a[t+32>>2]|0;t=a[t+36>>2]|0;p=((((((((((((((t*19|0)+16777216|0)>>>25)+l>>26)+s>>25)+c>>26)+u>>25)+b>>26)+i>>25)+o>>26)+d>>25)+r>>26)+t>>25)*19|0)+l>>26;l=((((((((((((((t*19|0)+16777216|0)>>>25)+l>>26)+s>>25)+c>>26)+u>>25)+b>>26)+i>>25)+o>>26)+d>>25)+r>>26)+t>>25)*19|0)+l-(p<<26)|0;h=p+s-(p+s>>25<<25)|0;f=(p+s>>25)+c-((p+s>>25)+c>>26<<26)|0;_=((p+s>>25)+c>>26)+u>>25;u=((p+s>>25)+c>>26)+u-(_<<25)|0;c=_+b-(_+b>>26<<26)|0;s=(_+b>>26)+i-((_+b>>26)+i>>25<<25)|0;p=((_+b>>26)+i>>25)+o>>26;o=((_+b>>26)+i>>25)+o-(p<<26)|0;i=p+d-(p+d>>25<<25)|0;t=((p+d>>25)+r>>26)+t|0;r=(p+d>>25)+r-((p+d>>25)+r>>26<<26)|0;n[e>>0]=l;n[e+1>>0]=l>>>8;n[e+2>>0]=l>>>16;n[e+3>>0]=h<<2|l>>>24;n[e+4>>0]=h>>>6;n[e+5>>0]=h>>>14;n[e+6>>0]=f<<3|h>>>22;n[e+7>>0]=f>>>5;n[e+8>>0]=f>>>13;n[e+9>>0]=u<<5|f>>>21;n[e+10>>0]=u>>>3;n[e+11>>0]=u>>>11;n[e+12>>0]=c<<6|u>>>19;n[e+13>>0]=c>>>2;n[e+14>>0]=c>>>10;n[e+15>>0]=c>>>18;n[e+16>>0]=s;n[e+17>>0]=s>>>8;n[e+18>>0]=s>>>16;n[e+19>>0]=o<<1|s>>>24;n[e+20>>0]=o>>>7;n[e+21>>0]=o>>>15;n[e+22>>0]=i<<3|o>>>23;n[e+23>>0]=i>>>5;n[e+24>>0]=i>>>13;n[e+25>>0]=r<<4|i>>>21;n[e+26>>0]=r>>>4;n[e+27>>0]=r>>>12;n[e+28>>0]=r>>>20|(t&33554431)<<6;n[e+29>>0]=t>>>2;n[e+30>>0]=t>>>10;n[e+31>>0]=(t&33554431)>>>18;return}function Ae(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,I=0,T=0,z=0,B=0,R=0,C=0;c=ei(r)|0;s=ei(r+4|0)|0;o=ei(r+8|0)|0;a=ei(r+12|0)|0;y=ei(r+16|0)|0;_=ei(r+20|0)|0;b=ei(r+24|0)|0;p=ei(r+28|0)|0;i=ei(t)|0;n=ei(t+4|0)|0;u=ei(t+8|0)|0;r=ei(t+12|0)|0;t=u;u=20;f=2036477234;h=857760878;l=1634760805;d=1797285236;while(1){M=(Ti(_+l|0,7)|0)^a;S=(Ti(M+l|0,9)|0)^t;w=(Ti(S+M|0,13)|0)^_;z=(Ti(w+S|0,18)|0)^l;E=(Ti(h+c|0,7)|0)^r;v=(Ti(E+h|0,9)|0)^b;C=(Ti(v+E|0,13)|0)^c;A=(Ti(C+v|0,18)|0)^h;g=(Ti(f+i|0,7)|0)^p;R=(Ti(g+f|0,9)|0)^s;T=(Ti(R+g|0,13)|0)^i;k=(Ti(T+R|0,18)|0)^f;B=(Ti(d+y|0,7)|0)^o;I=(Ti(B+d|0,9)|0)^n;x=(Ti(I+B|0,13)|0)^y;m=(Ti(x+I|0,18)|0)^d;c=(Ti(B+z|0,7)|0)^C;s=(Ti(c+z|0,9)|0)^R;o=(Ti(s+c|0,13)|0)^B;l=(Ti(o+s|0,18)|0)^z;i=(Ti(A+M|0,7)|0)^T;n=(Ti(i+A|0,9)|0)^I;a=(Ti(n+i|0,13)|0)^M;h=(Ti(a+n|0,18)|0)^A;y=(Ti(k+E|0,7)|0)^x;t=(Ti(y+k|0,9)|0)^S;r=(Ti(t+y|0,13)|0)^E;f=(Ti(r+t|0,18)|0)^k;_=(Ti(m+g|0,7)|0)^w;b=(Ti(_+m|0,9)|0)^v;p=(Ti(b+_|0,13)|0)^g;d=(Ti(p+b|0,18)|0)^m;if((u|0)<=2)break;else u=u+-2|0}On(e,l);On(e+4|0,h);On(e+8|0,f);On(e+12|0,d);On(e+16|0,i);On(e+20|0,n);On(e+24|0,t);On(e+28|0,r);return}function Me(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0,s=0,c=0;s=p;c=p=p+63&-64;p=p+320|0;a=c+280|0;i=a+32|0;do{n[a>>0]=n[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));n[c+280>>0]=n[c+280>>0]&-8;n[c+280+31>>0]=n[c+280+31>>0]&63|64;ye(c+240|0,r);dn(c+200|0);Nn(c+160|0);vt(c+120|0,c+240|0);dn(c+80|0);t=0;i=254;while(1){a=t;t=(o[c+280+(i>>>3)>>0]|0)>>>(i&7)&1;a=t^a;Oe(c+200|0,c+120|0,a);Oe(c+160|0,c+80|0,a);We(c+40|0,c+120|0,c+80|0);We(c,c+200|0,c+160|0);Ze(c+200|0,c+200|0,c+160|0);Ze(c+160|0,c+120|0,c+80|0);fe(c+80|0,c+40|0,c+200|0);fe(c+160|0,c+160|0,c);le(c+40|0,c);le(c,c+200|0);Ze(c+120|0,c+80|0,c+160|0);We(c+160|0,c+80|0,c+160|0);fe(c+200|0,c,c+40|0);We(c,c,c+40|0);le(c+160|0,c+160|0);me(c+80|0,c);le(c+120|0,c+120|0);Ze(c+40|0,c+40|0,c+80|0);fe(c+80|0,c+240|0,c+160|0);fe(c+160|0,c,c+40|0);if((i|0)<=0)break;else i=i+-1|0}Oe(c+200|0,c+120|0,t);Oe(c+160|0,c+80|0,t);Ee(c+160|0,c+160|0);fe(c+200|0,c+200|0,c+160|0);xe(e,c+200|0);p=s;return 0}function Ie(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0;s=a[e+56>>2]|0;o=a[e+56+4>>2]|0;if(!((s|0)==0&(o|0)==0)){u=Mn(16,0,s|0,o|0)|0;h=M;f=h>>>0>i>>>0|(h|0)==(i|0)&u>>>0>r>>>0?r:u;h=h>>>0>i>>>0|(h|0)==(i|0)&u>>>0>r>>>0?i:h;if(!((f|0)==0&(h|0)==0)){u=0;c=0;do{d=n[t+u>>0]|0;s=Tn(s|0,o|0,u|0,c|0)|0;n[e+64+s>>0]=d;u=Tn(u|0,c|0,1,0)|0;c=M;s=a[e+56>>2]|0;o=a[e+56+4>>2]|0}while(c>>>0>>0|(c|0)==(h|0)&u>>>0>>0)}d=Tn(s|0,o|0,f|0,h|0)|0;u=M;a[e+56>>2]=d;a[e+56+4>>2]=u;if(!(u>>>0<0|(u|0)==0&d>>>0<16)){r=Mn(r|0,i|0,f|0,h|0)|0;i=M;_e(e,e+64|0,16,0);a[e+56>>2]=0;a[e+56+4>>2]=0;t=t+f|0;l=6}}else l=6;if((l|0)==6){o=r&-16;if(i>>>0>0|(i|0)==0&r>>>0>15){r=Mn(r|0,i|0,o|0,i|0)|0;d=M;_e(e,t,o,i);t=t+o|0;o=d}else o=i;if(!((r|0)==0&(o|0)==0)){i=0;s=a[e+56>>2]|0;c=a[e+56+4>>2]|0;u=0;do{l=n[t+i>>0]|0;d=Tn(s|0,c|0,i|0,u|0)|0;n[e+64+d>>0]=l;i=Tn(i|0,u|0,1,0)|0;u=M;s=a[e+56>>2]|0;c=a[e+56+4>>2]|0}while(u>>>0>>0|(u|0)==(o|0)&i>>>0>>0);d=Tn(s|0,c|0,r|0,o|0)|0;a[e+56>>2]=d;a[e+56+4>>2]=M}}return}function Te(e,t,r,i,s,c,u,f){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0,l=0,d=0,b=0;d=p;b=p=p+63&-64;p=p+112|0;if(!((r|0)==0&(i|0)==0)){l=b+16|0;h=l+32|0;do{n[l>>0]=n[f>>0]|0;l=l+1|0;f=f+1|0}while((l|0)<(h|0));f=o[s+4>>0]|o[s+4+1>>0]<<8|o[s+4+2>>0]<<16|o[s+4+3>>0]<<24;a[b>>2]=o[s>>0]|o[s+1>>0]<<8|o[s+2>>0]<<16|o[s+3>>0]<<24;a[b+4>>2]=f;f=8;while(1){n[b+f>>0]=c;c=fn(c|0,u|0,8)|0;f=f+1|0;if((f|0)==16)break;else u=M}if(i>>>0>0|(i|0)==0&r>>>0>63){f=e;c=r;while(1){_i(b+48|0,b,b+16|0);e=0;do{n[f+e>>0]=n[b+48+e>>0]^n[t+e>>0];e=e+1|0}while((e|0)!=64);e=1;u=8;while(1){r=b+u|0;e=(o[r>>0]|0)+e|0;n[r>>0]=e;u=u+1|0;if((u|0)==16)break;else e=e>>>8}u=Tn(c|0,i|0,-64,-1)|0;i=M;e=f+64|0;t=t+64|0;if(i>>>0>0|(i|0)==0&u>>>0>63){f=e;c=u}else break}}else u=r;if(!((u|0)==0&(i|0)==0)?(_i(b+48|0,b,b+16|0),u|0):0){i=0;do{n[e+i>>0]=n[b+48+i>>0]^n[t+i>>0];i=i+1|0}while((i|0)!=(u|0))}lr(b+48|0,64);lr(b+16|0,32)}p=d;return}function ze(e,t,r,i,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0,u=0,f=0,h=0;u=p;f=p=p+63&-64;p=p+352|0;Ae(f+256|0,o,s);if(e>>>0>r>>>0?0>>0|0==(a|0)&(e-r|0)>>>0>>0:0)c=5;else if(r>>>0>e>>>0?0>>0|0==(a|0)&(r-e|0)>>>0>>0:0)c=5;if((c|0)==5){ir(e|0,r|0,i|0)|0;r=e}s=f+288|0;c=s+32|0;do{n[s>>0]=0;s=s+1|0}while((s|0)<(c|0));s=a>>>0>0|(a|0)==0&i>>>0>32?32:i;c=a>>>0>0|(a|0)==0&i>>>0>32?0:a;if(!((s|0)==0&(c|0)==0)){h=Mn(-2,-1,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~i:-33)|0,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~a:-1)|0)|0;Pe(f+288+32|0,r|0,h+1|0)|0}h=Tn(s|0,c|0,32,0)|0;kn(f+288|0,f+288|0,h,M,o+16|0,f+256|0);fi(f,f+288|0);if(!((s|0)==0&(c|0)==0)){h=Mn(-2,-1,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~i:-33)|0,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~a:-1)|0)|0;Pe(e|0,f+288+32|0,h+1|0)|0}lr(f+288|0,64);if(a>>>0>0|(a|0)==0&i>>>0>32){h=Mn(i|0,a|0,s|0,c|0)|0;gn(e+s|0,r+s|0,h,M,o+16|0,f+256|0)}lr(f+256|0,32);zn(f,e,i,a);ui(f,t);lr(f,256);p=u;return 0}function Be(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;i=a[e+56>>2]|0;r=a[e+56+4>>2]|0;if(!((i|0)==0&(r|0)==0)){o=1;while(1){n[e+64+i>>0]=o;i=Tn(i|0,r|0,1,0)|0;r=M;if(!(r>>>0<0|(r|0)==0&i>>>0<16))break;else o=0}n[e+80>>0]=1;_e(e,e+64|0,16,0)}i=a[e+24>>2]|0;o=(a[e+28>>2]|0)+(i>>>26)|0;f=(o>>>26)+(a[e+32>>2]|0)|0;c=(f>>>26)+(a[e+36>>2]|0)|0;s=((c>>>26)*5|0)+(a[e+20>>2]|0)|0;h=((((s&67108863)+5|0)>>>26)+((s>>>26)+(i&67108863))|0)>>>26;u=(c|-67108864)+((((h+(o&67108863)|0)>>>26)+(f&67108863)|0)>>>26)|0;i=(((s&67108863)+5|0)>>>26)+((s>>>26)+(i&67108863))&67108863&(u>>>31)+-1|u>>31&(s>>>26)+(i&67108863);f=((h+(o&67108863)|0)>>>26)+f&67108863&(u>>>31)+-1|u>>31&(f&67108863);s=Tn(s+5&67108863&(u>>>31)+-1|u>>31&(s&67108863)|i<<26|0,0,a[e+40>>2]|0,0)|0;r=M;i=Tn(i>>>6|(h+o&67108863&(u>>>31)+-1|u>>31&(o&67108863))<<20|0,0,a[e+44>>2]|0,0)|0;r=Tn(i|0,M|0,r|0,0)|0;i=M;o=Tn((h+o&67108863&(u>>>31)+-1|u>>31&(o&67108863))>>>12|f<<14|0,0,a[e+48>>2]|0,0)|0;i=Tn(o|0,M|0,i|0,0)|0;o=M;c=Tn(f>>>18|((u>>>31)+-1&u|u>>31&c)<<8|0,0,a[e+52>>2]|0,0)|0;o=Tn(c|0,M|0,o|0,0)|0;On(t,s);On(t+4|0,r);On(t+8|0,i);On(t+12|0,o);lr(e,88);return}function Re(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;i=p;r=p=p+63&-64;p=p+208|0;ye(e+40|0,t);dn(e+80|0);le(r+160|0,e+40|0);fe(r+120|0,r+160|0,1104);We(r+160|0,r+160|0,e+80|0);Ze(r+120|0,r+120|0,e+80|0);le(r+80|0,r+120|0);fe(r+80|0,r+80|0,r+120|0);le(e,r+80|0);fe(e,e,r+120|0);fe(e,e,r+160|0);Se(e,e);fe(e,e,r+80|0);fe(e,e,r+160|0);le(r+40|0,e);fe(r+40|0,r+40|0,r+120|0);We(r,r+40|0,r+160|0);if(Lr(r)|0){Ze(r,r+40|0,r+160|0);if(!(Lr(r)|0)){fe(e,e,1144);n=4}else e=-1}else n=4;if((n|0)==4){n=Fr(e)|0;if((n|0)==((o[t+31>>0]|0)>>>7|0))dt(e,e);fe(e+120|0,e,e+40|0);e=0}p=i;return e|0}function Ce(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,s=0,c=0;i=p;a=p=p+63&-64;p=p+464|0;r=0;do{c=n[t+r>>0]|0;s=r<<1;n[a+400+s>>0]=c&15;n[a+400+(s|1)>>0]=(c&255)>>>4;r=r+1|0}while((r|0)!=32);r=0;t=0;do{c=a+400+t|0;s=(o[c>>0]|0)+r|0;r=(s<<24)+134217728>>28;n[c>>0]=s-(r<<4);t=t+1|0}while((t|0)!=63);n[a+400+63>>0]=(o[a+400+63>>0]|0)+r;Vr(e);r=1;do{Qe(a,(r|0)/2|0,n[a+400+r>>0]|0);ut(a+240|0,e,a);or(e,a+240|0);r=r+2|0}while((r|0)<64);Rr(a+240|0,e);Cr(a+120|0,a+240|0);bt(a+240|0,a+120|0);Cr(a+120|0,a+240|0);bt(a+240|0,a+120|0);Cr(a+120|0,a+240|0);bt(a+240|0,a+120|0);or(e,a+240|0);r=0;do{Qe(a,(r|0)/2|0,n[a+400+r>>0]|0);ut(a+240|0,e,a);or(e,a+240|0);r=r+2|0}while((r|0)<64);p=i;return}function Oe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0,E=0;E=a[e>>2]|0;w=a[e+4>>2]|0;g=a[e+8>>2]|0;y=a[e+12>>2]|0;b=a[e+16>>2]|0;d=a[e+20>>2]|0;h=a[e+24>>2]|0;u=a[e+28>>2]|0;s=a[e+32>>2]|0;i=a[e+36>>2]|0;k=a[t>>2]|0;v=a[t+4>>2]|0;m=a[t+8>>2]|0;_=a[t+12>>2]|0;p=a[t+16>>2]|0;l=a[t+20>>2]|0;f=a[t+24>>2]|0;c=a[t+28>>2]|0;o=a[t+32>>2]|0;n=a[t+36>>2]|0;a[e>>2]=(k^E)&0-r^E;a[e+4>>2]=(v^w)&0-r^w;a[e+8>>2]=(m^g)&0-r^g;a[e+12>>2]=(_^y)&0-r^y;a[e+16>>2]=(p^b)&0-r^b;a[e+20>>2]=(l^d)&0-r^d;a[e+24>>2]=(f^h)&0-r^h;a[e+28>>2]=(c^u)&0-r^u;a[e+32>>2]=(o^s)&0-r^s;a[e+36>>2]=(n^i)&0-r^i;a[t>>2]=(k^E)&0-r^k;a[t+4>>2]=(v^w)&0-r^v;a[t+8>>2]=(m^g)&0-r^m;a[t+12>>2]=(_^y)&0-r^_;a[t+16>>2]=(p^b)&0-r^p;a[t+20>>2]=(l^d)&0-r^l;a[t+24>>2]=(f^h)&0-r^f;a[t+28>>2]=(c^u)&0-r^c;a[t+32>>2]=(o^s)&0-r^o;a[t+36>>2]=(n^i)&0-r^n;return}function je(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0,u=0,f=0;u=p;c=p=p+63&-64;p=p+96|0;Ae(c,a,o);pi(c+32|0,a+16|0,c);if(!(wn(r,t,n,i,c+32|0)|0))if(!e)r=0;else{if(t>>>0>=e>>>0?0>>0|0==(i|0)&(t-e|0)>>>0>>0:0)s=8;else if(e>>>0>=t>>>0?0>>0|0==(i|0)&(e-t|0)>>>0>>0:0)s=8;if((s|0)==8){ir(e|0,t|0,n|0)|0;t=e}r=i>>>0>0|(i|0)==0&n>>>0>32?32:n;o=i>>>0>0|(i|0)==0&n>>>0>32?0:i;if((r|0)==0&(o|0)==0)kn(c+32|0,c+32|0,32,0,a+16|0,c);else{s=Mn(-2,-1,(~i>>>0>4294967295|(~i|0)==-1&~n>>>0>4294967263?~n:-33)|0,(~i>>>0>4294967295|(~i|0)==-1&~n>>>0>4294967263?~i:-1)|0)|0;Pe(c+32+32|0,t|0,s+1|0)|0;f=Tn(r|0,o|0,32,0)|0;kn(c+32|0,c+32|0,f,M,a+16|0,c);Pe(e|0,c+32+32|0,s+1|0)|0}if(i>>>0>0|(i|0)==0&n>>>0>32){f=Mn(n|0,i|0,r|0,o|0)|0;gn(e+r|0,t+r|0,f,M,a+16|0,c)}lr(c,32);r=0}else{lr(c,32);r=-1}p=u;return r|0}function Ne(e,t,r,i,s){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;var c=0,u=0,f=0,h=0,l=0,d=0,b=0;d=p;b=p=p+63&-64;p=p+112|0;if(!((t|0)==0&(r|0)==0)){u=b+16|0;c=u+32|0;do{n[u>>0]=n[s>>0]|0;u=u+1|0;s=s+1|0}while((u|0)<(c|0));u=o[i+4>>0]|o[i+4+1>>0]<<8|o[i+4+2>>0]<<16|o[i+4+3>>0]<<24;a[b>>2]=o[i>>0]|o[i+1>>0]<<8|o[i+2>>0]<<16|o[i+3>>0]<<24;a[b+4>>2]=u;a[b+8>>2]=0;a[b+8+4>>2]=0;if(r>>>0>0|(r|0)==0&t>>>0>63){do{_i(e,b,b+16|0);s=1;c=8;while(1){u=b+c|0;s=(o[u>>0]|0)+s|0;n[u>>0]=s;c=c+1|0;if((c|0)==16)break;else s=s>>>8}t=Tn(t|0,r|0,-64,-1)|0;r=M;e=e+64|0}while(r>>>0>0|(r|0)==0&t>>>0>63);if(!((t|0)==0&(r|0)==0)){h=e;l=t;f=7}}else{h=e;l=t;f=7}if((f|0)==7?(_i(b+48|0,b,b+16|0),l|0):0){s=0;do{n[h+s>>0]=n[b+48+s>>0]|0;s=s+1|0}while((s|0)!=(l|0))}lr(b+48|0,64);lr(b+16|0,32)}p=d;return}function Pe(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0,s=0;if((r|0)>=8192)return te(e|0,t|0,r|0)|0;s=e|0;o=e+r|0;if((e&3)==(t&3)){while(e&3){if(!r)return s|0;n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}r=o&-4|0;i=r-64|0;while((e|0)<=(i|0)){a[e>>2]=a[t>>2];a[e+4>>2]=a[t+4>>2];a[e+8>>2]=a[t+8>>2];a[e+12>>2]=a[t+12>>2];a[e+16>>2]=a[t+16>>2];a[e+20>>2]=a[t+20>>2];a[e+24>>2]=a[t+24>>2];a[e+28>>2]=a[t+28>>2];a[e+32>>2]=a[t+32>>2];a[e+36>>2]=a[t+36>>2];a[e+40>>2]=a[t+40>>2];a[e+44>>2]=a[t+44>>2];a[e+48>>2]=a[t+48>>2];a[e+52>>2]=a[t+52>>2];a[e+56>>2]=a[t+56>>2];a[e+60>>2]=a[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(r|0)){a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}}else{r=o-4|0;while((e|0)<(r|0)){n[e>>0]=n[t>>0]|0;n[e+1>>0]=n[t+1>>0]|0;n[e+2>>0]=n[t+2>>0]|0;n[e+3>>0]=n[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(o|0)){n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0}return s|0}function Le(e,t,r,i,s,c,u){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;u=u|0;var f=0,h=0,l=0,d=0,p=0,b=0;e:do{if(!i){d=0;h=0;l=0;f=0}else{f=0;d=0;h=0;b=0;while(1){while(1){l=o[r+h>>0]|0;p=(((l&223)+201&255)+65526^((l&223)+201&255)+65520)>>>8;if((p|((l^48)+65526|0)>>>8)&255|0)break;if(!((s|0)!=0&f<<24>>24==0)){l=0;break e}if(!(Jn(s,l)|0)){l=0;f=0;break e}h=h+1|0;if(h>>>0>>0)f=0;else{l=0;f=0;break e}}if(d>>>0>=t>>>0)break;l=(l&223)+201&255&p|((l^48)+65526|0)>>>8&(l^48);if(!(f<<24>>24))l=l<<4&255;else{n[e+d>>0]=l|b&255;d=d+1|0;l=b}f=~f;h=h+1|0;if(h>>>0>>0)b=l;else{l=0;break e}}a[8242]=34;l=-1}}while(0);if(u|0)a[u>>2]=r+(((f<<24>>24!=0)<<31>>31)+h);if(c|0)a[c>>2]=d;return l|0}function qe(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;s=p;c=p=p+63&-64;p=p+192|0;if((t+-1&255)>63)Q();if(!r)Q();n[c+128>>0]=t;n[c+128+1>>0]=32;n[c+128+2>>0]=1;n[c+128+3>>0]=1;ai(c+128+4|0);Zr(c+128+8|0);t=c+128+16|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0));if(!i){t=c+128+32|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0))}else rn(c+128|0,i);if(!a){t=c+128+48|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0))}else tn(c+128|0,a);tr(e,c+128|0);t=c+32|0;o=t+96|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0));t=c;o=t+32|0;do{n[t>>0]=n[r>>0]|0;t=t+1|0;r=r+1|0}while((t|0)<(o|0));Ve(e,c,128,0);lr(c,128);p=s;return}function Ue(e,t,r,n,i,a,o,s,c,u,f){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0;h=p;p=p+352|0;qn(h+280|0,64,0,u,f);fi(h,h+280|0);lr(h+280|0,64);zn(h,o,s,c);t=Mn(0,0,s|0,c|0)|0;zn(h,35032,t&15,0);zn(h,r,n,i);t=Mn(0,0,n|0,i|0)|0;zn(h,35032,t&15,0);Mr(h+272|0,s,c);zn(h,h+272|0,8,0);Mr(h+272|0,n,i);zn(h,h+272|0,8,0);ui(h,h+256|0);lr(h,256);t=Mi(h+256|0,a)|0;lr(h+256|0,16);do{if(e)if(!t){yn(e,r,n,i,u,f);t=0;break}else{it(e|0,0,n|0)|0;t=-1;break}}while(0);p=h;return t|0}function De(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,_=0,y=0,m=0,g=0,v=0,w=0,k=0;k=a[e>>2]|0;v=a[e+4>>2]|0;m=a[e+8>>2]|0;_=a[e+12>>2]|0;p=a[e+16>>2]|0;l=a[e+20>>2]|0;f=a[e+24>>2]|0;c=a[e+28>>2]|0;o=a[e+32>>2]|0;n=a[e+36>>2]|0;w=(a[t+4>>2]^v)&0-r;g=(a[t+8>>2]^m)&0-r;y=(a[t+12>>2]^_)&0-r;b=(a[t+16>>2]^p)&0-r;d=(a[t+20>>2]^l)&0-r;h=(a[t+24>>2]^f)&0-r;u=(a[t+28>>2]^c)&0-r;s=(a[t+32>>2]^o)&0-r;i=(a[t+36>>2]^n)&0-r;a[e>>2]=(a[t>>2]^k)&0-r^k;a[e+4>>2]=w^v;a[e+8>>2]=g^m;a[e+12>>2]=y^_;a[e+16>>2]=b^p;a[e+20>>2]=d^l;a[e+24>>2]=h^f;a[e+28>>2]=u^c;a[e+32>>2]=s^o;a[e+36>>2]=i^n;return}function Ke(e,t,r,i,o,s,c){e=e|0;t=t|0;r=r|0;i=i|0;o=o|0;s=s|0;c=c|0;var u=0,f=0;u=p;f=p=p+63&-64;p=p+560|0;kr(f+496|0,s,32,0);n[f+496>>0]=n[f+496>>0]&-8;n[f+496+31>>0]=n[f+496+31>>0]&63|64;Rn(f,c);ke(f,f+496+32|0,32,0);ke(f,r,i,o);Or(f,f+432|0);ir(e+32|0,s+32|0,32)|0;ue(f+432|0);Ce(f+208|0,f+432|0);Rt(e,f+208|0);Rn(f,c);ke(f,e,64,0);ke(f,r,i,o);Or(f,f+368|0);ue(f+368|0);oe(e+32|0,f+368|0,f+496|0,f+432|0);lr(f+496|0,64);if(t|0){a[t>>2]=64;a[t+4>>2]=0}p=u;return}function Fe(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;var s=0,c=0,u=0,f=0;f=p;u=p=p+63&-64;p=p+592|0;if((($t(e+32|0)|0)==0?(nr(e)|0)==0:0)?(Re(u+328|0,i)|0)==0:0){s=0;c=0;do{c=o[i+s>>0]|0|c;s=s+1|0}while((s|0)!=32);if(c){Rn(u,a);ke(u,e,32,0);ke(u,i,32,0);ke(u,t,r,n);Or(u,u+520|0);ue(u+520|0);ge(u+208|0,u+520|0,u+328|0,e+32|0);Rt(u+488|0,u+208|0);s=Ai(u+488|0,e)|0;s=((u+488|0)==(e|0)?-1:s)|(Ft(e,u+488|0)|0)}else s=-1}else s=-1;p=f;return s|0}function Ye(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,s=0,c=0;r=0;do{n[e+r>>0]=(o[t+(r>>3)>>0]|0)>>>(r&7)&1;r=r+1|0}while((r|0)!=256);s=0;do{c=e+s|0;e:do{if(n[c>>0]|0){a=1;do{r=a+s|0;if((r|0)>=256)break e;t=n[e+r>>0]|0;t:do{if(t<<24>>24){t=t<<24>>24<>0]|0;if((i+t|0)<16){n[c>>0]=i+t;n[e+r>>0]=0;break}if((i-t|0)<=-16)break e;n[c>>0]=i-t;while(1){t=e+r|0;if(!(n[t>>0]|0))break;n[t>>0]=0;r=r+1|0;if((r|0)>=256)break t}n[t>>0]=1}}while(0);a=a+1|0}while((a|0)<7)}}while(0);s=s+1|0}while((s|0)!=256);return}function He(e,t,r,n,i,o,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;f=p;p=p+336|0;qn(f+264|0,64,0,h,l);fi(f,f+264|0);lr(f+264|0,64);zn(f,s,c,u);s=Mn(0,0,c|0,u|0)|0;zn(f,35032,s&15,0);yn(e,n,i,o,h,l);zn(f,e,i,o);s=Mn(0,0,i|0,o|0)|0;zn(f,35032,s&15,0);Mr(f+256|0,c,u);zn(f,f+256|0,8,0);Mr(f+256|0,i,o);zn(f,f+256|0,8,0);ui(f,t);lr(f,256);if(r|0){a[r>>2]=16;a[r+4>>2]=0}p=f;return 0}function Ve(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0;e:do{if(!((r|0)==0&(i|0)==0)){o=a[e+352>>2]|0;u=i;while(1){c=256-o|0;i=e+96+o|0;if(!(u>>>0>0|(u|0)==0&r>>>0>c>>>0))break;Pe(i|0,t|0,c|0)|0;a[e+352>>2]=(a[e+352>>2]|0)+c;Gt(e,128,0);ae(e,e+96|0);i=e+96|0;o=e+224|0;s=i+128|0;do{n[i>>0]=n[o>>0]|0;i=i+1|0;o=o+1|0}while((i|0)<(s|0));o=(a[e+352>>2]|0)+-128|0;a[e+352>>2]=o;r=Mn(r|0,u|0,c|0,0)|0;i=M;if((r|0)==0&(i|0)==0)break e;else{t=t+c|0;u=i}}Pe(i|0,t|0,r|0)|0;u=Tn(a[e+352>>2]|0,0,r|0,u|0)|0;a[e+352>>2]=u}}while(0);return}function Ge(e,t,r,n,i,a,o,s,c,u,f){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0;h=p;p=p+352|0;bi(h+280|0,u,f);fi(h,h+280|0);lr(h+280|0,64);zn(h,o,s,c);Mr(h+272|0,s,c);zn(h,h+272|0,8,0);zn(h,r,n,i);Mr(h+272|0,n,i);zn(h,h+272|0,8,0);ui(h,h+256|0);lr(h,256);t=Mi(h+256|0,a)|0;lr(h+256|0,16);do{if(e)if(!t){En(e,r,n,i,u,f);t=0;break}else{it(e|0,0,n|0)|0;t=-1;break}}while(0);p=h;return t|0}function Xe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0;if(r<<24>>24?(r&255)<=64:0){if(!(Si(a[e+80>>2]|0,a[e+80+4>>2]|0)|0)){n=a[e+352>>2]|0;do{if(n>>>0>128){Gt(e,128,0);ae(e,e+96|0);n=(a[e+352>>2]|0)+-128|0;a[e+352>>2]=n;if(n>>>0<129){Pe(e+96|0,e+224|0,n|0)|0;i=e+96|0;o=a[e+352>>2]|0;break}else $(33148,33180,367,33225)}else{i=e+96|0;o=n}}while(0);Gt(e,o,0);Cn(e);n=a[e+352>>2]|0;it(e+96+n|0,0,256-n|0)|0;ae(e,i);Pe(t|0,e|0,r&255|0)|0;n=0}else n=-1;return n|0}Q();return 0}function We(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0;l=(a[t+4>>2]|0)-(a[r+4>>2]|0)|0;h=(a[t+8>>2]|0)-(a[r+8>>2]|0)|0;f=(a[t+12>>2]|0)-(a[r+12>>2]|0)|0;u=(a[t+16>>2]|0)-(a[r+16>>2]|0)|0;c=(a[t+20>>2]|0)-(a[r+20>>2]|0)|0;s=(a[t+24>>2]|0)-(a[r+24>>2]|0)|0;o=(a[t+28>>2]|0)-(a[r+28>>2]|0)|0;i=(a[t+32>>2]|0)-(a[r+32>>2]|0)|0;n=(a[t+36>>2]|0)-(a[r+36>>2]|0)|0;a[e>>2]=(a[t>>2]|0)-(a[r>>2]|0);a[e+4>>2]=l;a[e+8>>2]=h;a[e+12>>2]=f;a[e+16>>2]=u;a[e+20>>2]=c;a[e+24>>2]=s;a[e+28>>2]=o;a[e+32>>2]=i;a[e+36>>2]=n;return}function Ze(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0;l=(a[r+4>>2]|0)+(a[t+4>>2]|0)|0;h=(a[r+8>>2]|0)+(a[t+8>>2]|0)|0;f=(a[r+12>>2]|0)+(a[t+12>>2]|0)|0;u=(a[r+16>>2]|0)+(a[t+16>>2]|0)|0;c=(a[r+20>>2]|0)+(a[t+20>>2]|0)|0;s=(a[r+24>>2]|0)+(a[t+24>>2]|0)|0;o=(a[r+28>>2]|0)+(a[t+28>>2]|0)|0;i=(a[r+32>>2]|0)+(a[t+32>>2]|0)|0;n=(a[r+36>>2]|0)+(a[t+36>>2]|0)|0;a[e>>2]=(a[r>>2]|0)+(a[t>>2]|0);a[e+4>>2]=l;a[e+8>>2]=h;a[e+12>>2]=f;a[e+16>>2]=u;a[e+20>>2]=c;a[e+24>>2]=s;a[e+28>>2]=o;a[e+32>>2]=i;a[e+36>>2]=n;return}function Je(e,t){e=e|0;t=t|0;var r=0,i=0;e:do{if(!(t&255))e=e+(wt(e)|0)|0;else{if(e&3)do{i=n[e>>0]|0;if(i<<24>>24==0?1:i<<24>>24==(t&255)<<24>>24)break e;e=e+1|0}while((e&3|0)!=0);i=K(t&255,16843009)|0;r=a[e>>2]|0;t:do{if(!((r&-2139062144^-2139062144)&r+-16843009))do{r=r^i;if((r&-2139062144^-2139062144)&r+-16843009|0)break t;e=e+4|0;r=a[e>>2]|0}while(!((r&-2139062144^-2139062144)&r+-16843009|0))}while(0);while(1){i=n[e>>0]|0;if(i<<24>>24==0?1:i<<24>>24==(t&255)<<24>>24)break;else e=e+1|0}}}while(0);return e|0}function $e(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;a=p;p=p+192|0;wr(e);r=a+64+1|0;i=r+127|0;do{n[r>>0]=54;r=r+1|0}while((r|0)<(i|0));n[a+64>>0]=n[t>>0]^54;r=1;do{i=a+64+r|0;n[i>>0]=n[i>>0]^n[t+r>>0];r=r+1|0}while((r|0)!=32);ke(e,a+64|0,128,0);wr(e+208|0);r=a+64+1|0;i=r+127|0;do{n[r>>0]=92;r=r+1|0}while((r|0)<(i|0));n[a+64>>0]=n[t>>0]^92;r=1;do{i=a+64+r|0;n[i>>0]=n[i>>0]^n[t+r>>0];r=r+1|0}while((r|0)!=32);ke(e+208|0,a+64|0,128,0);lr(a+64|0,128);lr(a,64);p=a;return}function Qe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0;n=p;a=p=p+63&-64;p=p+128|0;i=Qn(r)|0;r=(r<<24>>24)-((r<<24>>24&0-(i&255))<<1)&255;pn(e);Ur(e,2184+(t*960|0)|0,xi(r,1)|0);Ur(e,2184+(t*960|0)+120|0,xi(r,2)|0);Ur(e,2184+(t*960|0)+240|0,xi(r,3)|0);Ur(e,2184+(t*960|0)+360|0,xi(r,4)|0);Ur(e,2184+(t*960|0)+480|0,xi(r,5)|0);Ur(e,2184+(t*960|0)+600|0,xi(r,6)|0);Ur(e,2184+(t*960|0)+720|0,xi(r,7)|0);Ur(e,2184+(t*960|0)+840|0,xi(r,8)|0);vt(a,e+40|0);vt(a+40|0,e);dt(a+80|0,e+80|0);Ur(e,a,i);p=n;return}function et(e,t,r,i,s,c){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;var u=0,f=0,h=0;f=p;u=p=p+63&-64;p=p+32|0;h=o[s+4>>0]|o[s+4+1>>0]<<8|o[s+4+2>>0]<<16|o[s+4+3>>0]<<24;a[u>>2]=o[s>>0]|o[s+1>>0]<<8|o[s+2>>0]<<16|o[s+3>>0]<<24;a[u+4>>2]=h;a[u+8>>2]=0;a[u+8+4>>2]=0;Mr(u+16|0,r,i);s=u+16+8|0;n[s>>0]=0;n[s+1>>0]=0;n[s+2>>0]=0;n[s+3>>0]=0;s=u+16+8+4|0;n[s>>0]=0;n[s+1>>0]=0;n[s+2>>0]=0;n[s+3>>0]=0;if((t+-16|0)>>>0>48){a[8242]=22;e=-1}else e=Pr(e,t,c,u+16|0,u)|0;p=f;return e|0}function tt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;c=p;s=p=p+63&-64;p=p+480|0;o=(e|0)==0?t:e;t=(t|0)==0?o:t;if(!o)Q();if(!(hi(s+448|0,i,a)|0)){Hn(s,0,0,64)|0;Kn(s,s+448|0,32,0)|0;lr(s+448|0,32);Kn(s,a,32,0)|0;Kn(s,r,32,0)|0;ni(s,s+384|0,64)|0;lr(s,384);e=0;do{n[t+e>>0]=n[s+384+e>>0]|0;n[o+e>>0]=n[s+384+(e+32)>>0]|0;e=e+1|0}while((e|0)!=32);lr(s+384|0,64);e=0}else e=-1;p=c;return e|0}function rt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;c=p;s=p=p+63&-64;p=p+480|0;o=(e|0)==0?t:e;t=(t|0)==0?o:t;if(!o)Q();if(!(hi(s+448|0,i,a)|0)){Hn(s,0,0,64)|0;Kn(s,s+448|0,32,0)|0;lr(s+448|0,32);Kn(s,r,32,0)|0;Kn(s,a,32,0)|0;ni(s,s+384|0,64)|0;lr(s,384);e=0;do{n[o+e>>0]=n[s+384+e>>0]|0;n[t+e>>0]=n[s+384+(e+32)>>0]|0;e=e+1|0}while((e|0)!=32);lr(s+384|0,64);e=0}else e=-1;p=c;return e|0}function nt(e,t,r,n,i,o,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;f=p;p=p+336|0;bi(f+264|0,h,l);fi(f,f+264|0);lr(f+264|0,64);zn(f,s,c,u);Mr(f+256|0,c,u);zn(f,f+256|0,8,0);En(e,n,i,o,h,l);zn(f,e,i,o);Mr(f+256|0,i,o);zn(f,f+256|0,8,0);ui(f,t);lr(f,256);if(r|0){a[r>>2]=16;a[r+4>>2]=0}p=f;return 0}function it(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0;i=e+r|0;t=t&255;if((r|0)>=67){while(e&3){n[e>>0]=t;e=e+1|0}o=t|t<<8|t<<16|t<<24;while((e|0)<=((i&-4)-64|0)){a[e>>2]=o;a[e+4>>2]=o;a[e+8>>2]=o;a[e+12>>2]=o;a[e+16>>2]=o;a[e+20>>2]=o;a[e+24>>2]=o;a[e+28>>2]=o;a[e+32>>2]=o;a[e+36>>2]=o;a[e+40>>2]=o;a[e+44>>2]=o;a[e+48>>2]=o;a[e+52>>2]=o;a[e+56>>2]=o;a[e+60>>2]=o;e=e+64|0}while((e|0)<(i&-4|0)){a[e>>2]=o;e=e+4|0}}while((e|0)<(i|0)){n[e>>0]=t;e=e+1|0}return i-r|0}function at(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Ze(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r+40|0);fe(e+40|0,e+40|0,r);fe(e+120|0,r+120|0,t+120|0);fe(e,t+80|0,r+80|0);Ze(i,e,e);We(e,e+80|0,e+40|0);Ze(e+40|0,e+80|0,e+40|0);We(e+80|0,i,e+120|0);Ze(e+120|0,i,e+120|0);p=n;return}function ot(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Ze(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r);fe(e+40|0,e+40|0,r+40|0);fe(e+120|0,r+120|0,t+120|0);fe(e,t+80|0,r+80|0);Ze(i,e,e);We(e,e+80|0,e+40|0);Ze(e+40|0,e+80|0,e+40|0);Ze(e+80|0,i,e+120|0);We(e+120|0,i,e+120|0);p=n;return}function st(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0,s=0;o=p;s=p=p+63&-64;p=p+192|0;if((t+-1&255)>63)Q();if((i+-1&255)>63|(r|0)==0)Q();else{n[s+128>>0]=t;n[s+128+1>>0]=i;n[s+128+2>>0]=1;n[s+128+3>>0]=1;ai(s+128+4|0);Zr(s+128+8|0);t=s+128+16|0;a=t+48|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(a|0));tr(e,s+128|0);it(s+(i&255)|0,0,(i<<24>>24<0?0:128-(i&255)|0)|0)|0;Pe(s|0,r|0,i&255|0)|0;Ve(e,s,128,0);lr(s,128);p=o;return}}function ct(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Ze(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r+40|0);fe(e+40|0,e+40|0,r);fe(e+120|0,r+80|0,t+120|0);Ze(i,t+80|0,t+80|0);We(e,e+80|0,e+40|0);Ze(e+40|0,e+80|0,e+40|0);We(e+80|0,i,e+120|0);Ze(e+120|0,i,e+120|0);p=n;return}function ut(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Ze(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r);fe(e+40|0,e+40|0,r+40|0);fe(e+120|0,r+80|0,t+120|0);Ze(i,t+80|0,t+80|0);We(e,e+80|0,e+40|0);Ze(e+40|0,e+80|0,e+40|0);Ze(e+80|0,i,e+120|0);We(e+120|0,i,e+120|0);p=n;return}function ft(e,t,r,n,i,s,c,u,f,h,l,d){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;d=d|0;h=p;p=p+48|0;a[h>>2]=0;we(h+16|0,l,d,0)|0;d=o[l+16+4>>0]|o[l+16+4+1>>0]<<8|o[l+16+4+2>>0]<<16|o[l+16+4+3>>0]<<24;a[h+4>>2]=o[l+16>>0]|o[l+16+1>>0]<<8|o[l+16+2>>0]<<16|o[l+16+3>>0]<<24;a[h+4+4>>2]=d;He(e,t,r,n,i,s,c,u,f,0,h,h+16|0)|0;lr(h+16|0,32);p=h;return 0}function ht(e,t,r,n,i,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;t=p;p=p+48|0;a[t>>2]=0;we(t+16|0,h,l,0)|0;l=o[h+16+4>>0]|o[h+16+4+1>>0]<<8|o[h+16+4+2>>0]<<16|o[h+16+4+3>>0]<<24;a[t+4>>2]=o[h+16>>0]|o[h+16+1>>0]<<8|o[h+16+2>>0]<<16|o[h+16+3>>0]<<24;a[t+4+4>>2]=l;h=Ue(e,0,r,n,i,s,c,u,f,t,t+16|0)|0;lr(t+16|0,32);p=t;return h|0}function lt(e,t){e=e|0;t=t|0;a[e>>2]=(ei(t)|0)&67108863;a[e+4>>2]=(ei(t+3|0)|0)>>>2&67108611;a[e+8>>2]=(ei(t+6|0)|0)>>>4&67092735;a[e+12>>2]=(ei(t+9|0)|0)>>>6&66076671;a[e+16>>2]=(ei(t+12|0)|0)>>>8&1048575;a[e+20>>2]=0;a[e+20+4>>2]=0;a[e+20+8>>2]=0;a[e+20+12>>2]=0;a[e+20+16>>2]=0;a[e+40>>2]=ei(t+16|0)|0;a[e+44>>2]=ei(t+20|0)|0;a[e+48>>2]=ei(t+24|0)|0;a[e+52>>2]=ei(t+28|0)|0;a[e+56>>2]=0;a[e+56+4>>2]=0;n[e+80>>0]=0;return}function dt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;h=0-(a[t+4>>2]|0)|0;f=0-(a[t+8>>2]|0)|0;u=0-(a[t+12>>2]|0)|0;c=0-(a[t+16>>2]|0)|0;s=0-(a[t+20>>2]|0)|0;o=0-(a[t+24>>2]|0)|0;i=0-(a[t+28>>2]|0)|0;n=0-(a[t+32>>2]|0)|0;r=0-(a[t+36>>2]|0)|0;a[e>>2]=0-(a[t>>2]|0);a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=n;a[e+36>>2]=r;return}function pt(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+384|0;if((t|0)==0&((i|0)!=0|(a|0)!=0))Q();if(!e)Q();if((n+-1&255)>63)Q();if(!((r|0)!=0|o<<24>>24!=0^1))Q();if((o&255)>64)Q();if(o<<24>>24)st(c,n,r,o);else Bt(c,n);Ve(c,t,i,a);Xe(c,e,n)|0;p=s;return}function bt(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+48|0;le(e,t);le(e+80|0,t+40|0);he(e+120|0,t+80|0);Ze(e+40|0,t,t+40|0);le(n,e+40|0);Ze(e+40|0,e+80|0,e);We(e+80|0,e+80|0,e);We(e,n,e+40|0);We(e+120|0,e+120|0,e+80|0);p=r;return}function _t(e,t,r,n,i,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+16|0;ir(e+64|0,r|0,n|0)|0;_n(e,c,e+64|0,n,i,o);if((a[c>>2]|0)==64&(a[c+4>>2]|0)==0)if(t|0){e=Tn(n|0,i|0,64,0)|0;a[t>>2]=e;a[t+4>>2]=M;e=0}else e=0;else{if(t|0){a[t>>2]=0;a[t+4>>2]=0}c=Tn(n|0,i|0,64,0)|0;it(e|0,0,c|0)|0;e=-1}p=s;return e|0}function yt(e,t){e=e|0;t=t|0;var r=0,n=0;n=p;r=p=p+63&-64;p=p+240|0;if(!(Re(r+80|0,t)|0)){dn(r);We(r,r,r+80+40|0);Ee(r,r);dn(r+40|0);Ze(r+40|0,r+40|0,r+80+40|0);fe(r+40|0,r+40|0,r);xe(e,r+40|0);e=0}else e=-1;p=n;return e|0}function mt(e,t,r,n,i,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;var s=0;n=Tn(n|0,i|0,-64,-1)|0;i=M;do{if(i>>>0>0|(i|0)==0&n>>>0>4294967231)s=7;else{if(vn(r,r+64|0,n,i,o)|0){it(e|0,0,n|0)|0;s=7;break}if(t|0){a[t>>2]=n;a[t+4>>2]=i}ir(e|0,r+64|0,n|0)|0;n=0}}while(0);if((s|0)==7)if(!t)n=-1;else{a[t>>2]=0;a[t+4>>2]=0;n=-1}return n|0}function gt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=fn(a[e+72>>2]|0,a[e+72+4>>2]|0,3)|0;if(0<0|0==0&(r&112)>>>0<112){Pe(e+80+(r&127)|0,33444,112-(r&127)|0)|0;r=e+80|0;n=t+640|0;i=e}else{Pe(e+80+(r&127)|0,33444,128-(r&127)|0)|0;se(e,e+80|0,t,t+640|0);r=e+80|0;n=r+112|0;do{a[r>>2]=0;r=r+4|0}while((r|0)<(n|0));r=e+80|0;n=t+640|0;i=e}Er(e+192|0,e+64|0,16);se(i,r,t,n);return}function vt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;h=a[t+4>>2]|0;f=a[t+8>>2]|0;u=a[t+12>>2]|0;c=a[t+16>>2]|0;s=a[t+20>>2]|0;o=a[t+24>>2]|0;i=a[t+28>>2]|0;n=a[t+32>>2]|0;r=a[t+36>>2]|0;a[e>>2]=a[t>>2];a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=n;a[e+36>>2]=r;return}function wt(e){e=e|0;var t=0,r=0,i=0;e:do{if(!(e&3)){t=e;i=4}else{t=e;r=e;while(1){if(!(n[t>>0]|0)){t=r;break e}t=t+1|0;r=t;if(!(r&3)){i=4;break}}}}while(0);if((i|0)==4){while(1){r=a[t>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009))t=t+4|0;else break}if((r&255)<<24>>24)do{t=t+1|0}while((n[t>>0]|0)!=0)}return t-e|0}function kt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0,u=0;u=p;p=p+96|0;if(!(di(u+32|0,u)|0)){o=e;s=u+32|0;c=o+32|0;do{n[o>>0]=n[s>>0]|0;o=o+1|0;s=s+1|0}while((o|0)<(c|0));rr(u+64|0,u+32|0,a);e=Ir(e+32|0,t,r,i,u+64|0,a,u)|0;lr(u,32);lr(u+32|0,32);lr(u+64|0,24)}else e=-1;p=u;return e|0}function Et(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,o=0;a=p;o=p=p+63&-64;p=p+240|0;i=o+200|0;r=i+32|0;do{n[i>>0]=n[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(r|0));n[o+200>>0]=n[o+200>>0]&-8;n[o+200+31>>0]=n[o+200+31>>0]&63|64;Ce(o+40|0,o+200|0);er(o,o+40+40|0,o+40+80|0);xe(e,o);p=a;return 0}function St(e){e=e|0;var t=0,r=0,n=0,i=0,a=0,s=0,c=0;a=o[e+7>>0]|0;s=cn(o[e+6>>0]|0|0,0,8)|0;c=M;i=cn(o[e+5>>0]|0|0,0,16)|0;c=c|M;n=cn(o[e+4>>0]|0|0,0,24)|0;c=c|M|(o[e+3>>0]|0);r=cn(o[e+2>>0]|0|0,0,40)|0;c=c|M;t=cn(o[e+1>>0]|0|0,0,48)|0;c=c|M;e=cn(o[e>>0]|0|0,0,56)|0;M=c|M;return s|a|i|n|r|t|e|0}function xt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=Tn(i|0,o|0,-16,-1)|0;e=ht(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=Tn(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function At(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=Tn(i|0,o|0,-16,-1)|0;e=Ue(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=Tn(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function Mt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=Tn(i|0,o|0,-16,-1)|0;e=Ge(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=Tn(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function It(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,s=0;if(!(i>>>0<2147483647&i<<1>>>0>>0))Q();if(!i)t=0;else{a=0;t=0;while(1){s=o[r+a>>0]|0;n[e+t>>0]=(s>>>4)+87+(((s>>>4)+65526|0)>>>8&217);n[e+(t|1)>>0]=(((s&15)<<8)+22272+((s&15)+65526&55552)|0)>>>8;t=a+1|0;if((t|0)==(i|0)){t=i<<1;break}else{a=t;t=t<<1}}}n[e+t>>0]=0;return e|0}function Tt(e,t){e=e|0;t=t|0;a[e>>2]=1634760805;a[e+4>>2]=857760878;a[e+8>>2]=2036477234;a[e+12>>2]=1797285236;a[e+16>>2]=ei(t)|0;a[e+20>>2]=ei(t+4|0)|0;a[e+24>>2]=ei(t+8|0)|0;a[e+28>>2]=ei(t+12|0)|0;a[e+32>>2]=ei(t+16|0)|0;a[e+36>>2]=ei(t+20|0)|0;a[e+40>>2]=ei(t+24|0)|0;a[e+44>>2]=ei(t+28|0)|0;return}function zt(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;do{if(!(r>>>0>64|(n+-1|0)>>>0>63)){if(n>>>0>=256)$(33259,33279,52,33379);if(r>>>0>=256)$(33359,33279,53,33379);if((t|0)==0|(r|0)==0){Bt(e,n&255);e=0;break}else{st(e,n&255,t,r&255);e=0;break}}else e=-1}while(0);return e|0}function Bt(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;if((t+-1&255)>63)Q();else{n[a>>0]=t;n[a+1>>0]=0;n[a+2>>0]=1;n[a+3>>0]=1;ai(a+4|0);Zr(a+8|0);t=a+16|0;r=t+48|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(r|0));tr(e,a);p=i;return}}function Rt(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+128|0;Ee(i+80|0,t+80|0);fe(i+40|0,t,i+80|0);fe(i,t+40|0,i+80|0);xe(e,i);t=(Fr(i+40|0)|0)<<7;n[e+31>>0]=(o[e+31>>0]|0)^t;p=r;return}function Ct(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+384|0;if(!e)Q();if((r+-1&255)>63)Q();if(!t)Q();else{qe(o,r,t,n,i);Ve(o,0,0,0);Xe(o,e,r)|0;p=a;return}}function Ot(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0;i=p;o=p=p+63&-64;p=p+16|0;a[o+8>>2]=e;a[o+4>>2]=t;a[o>>2]=0;if(r|0){e=0;do{a[o>>2]=(n[(a[o+4>>2]|0)+e>>0]^n[(a[o+8>>2]|0)+e>>0])&255|a[o>>2];e=e+1|0}while((e|0)!=(r|0))}p=i;return(((a[o>>2]|0)+511|0)>>>8&1)+-1|0}function jt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();ft(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=Tn(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function Nt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();He(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=Tn(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function Pt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;n[e+7>>0]=t;i=fn(t|0,r|0,8)|0;n[e+6>>0]=i;i=fn(t|0,r|0,16)|0;n[e+5>>0]=i;i=fn(t|0,r|0,24)|0;n[e+4>>0]=i;n[e+3>>0]=r;i=fn(t|0,r|0,40)|0;n[e+2>>0]=i;i=fn(t|0,r|0,48)|0;n[e+1>>0]=i;r=fn(t|0,r|0,56)|0;n[e>>0]=r;return}function Lt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();nt(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=Tn(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function qt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0,u=0;c=p;u=p=p+63&-64;p=p+80|0;if(!((r|0)==0&(n|0)==0)){On(u+64|0,a);On(u+64+4|0,o);Tt(u,s);yr(u,i,u+64|0);be(u,t,e,r,n);lr(u,64)}p=c;return}function Ut(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0;do{if(!((t+-1|0)>>>0>63|o>>>0>64)){if(t>>>0>=256)$(33259,33279,18,33332);if(o>>>0<256){pt(e,r,a,t&255,n,i,o&255);s=0;break}else $(33359,33279,19,33332)}else s=-1}while(0);return s|0}function Dt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+160|0;kr(t,r,32,0);n[t>>0]=n[t>>0]&-8;n[t+31>>0]=n[t+31>>0]&63|64;Ce(a,t);Rt(e,a);ir(t|0,r|0,32)|0;ir(t+32|0,e|0,32)|0;p=i;return}function Kt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0,o=0,s=0;o=p;s=p=p+63&-64;p=p+64|0;kr(s,r,32,0);r=t;i=s;a=r+32|0;do{n[r>>0]=n[i>>0]|0;r=r+1|0;i=i+1|0}while((r|0)<(a|0));lr(s,64);s=ci(e,t)|0;p=o;return s|0}function Ft(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+16|0;a[i+4>>2]=e;a[i>>2]=t;n[i+8>>0]=0;e=0;do{n[i+8>>0]=n[i+8>>0]|n[(a[i>>2]|0)+e>>0]^n[(a[i+4>>2]|0)+e>>0];e=e+1|0}while((e|0)!=32);p=r;return(((o[i+8>>0]|0)+511|0)>>>8&1)+-1|0}function Yt(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;var o=0,s=0;s=p;o=p=p+63&-64;p=p+32|0;if(n>>>0<0|(n|0)==0&r>>>0<48)e=-1;else{r=Tn(r|0,n|0,-32,-1)|0;n=M;rr(o,t,i);e=fr(e,t+32|0,r,n,o,t,a)|0}p=s;return e|0}function Ht(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;kr(a,t,32,0);n[a>>0]=n[a>>0]&-8;n[a+31>>0]=n[a+31>>0]&63|64;t=a;r=e+32|0;do{n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(r|0));lr(a,64);p=i;return 0}function Vt(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+80|0;if(!((r|0)==0&(n|0)==0)){On(c+64|0,a);Tt(c,o);Ar(c,i,c+64|0);be(c,t,e,r,n);lr(c,64)}p=s;return}function Gt(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=Tn(a[e+64>>2]|0,a[e+64+4>>2]|0,t|0,r|0)|0;i=M;a[e+64>>2]=n;a[e+64+4>>2]=i;r=Tn((i>>>0>>0|(i|0)==(r|0)&n>>>0>>0)&1|0,0,a[e+72>>2]|0,a[e+72+4>>2]|0)|0;a[e+72>>2]=r;a[e+72+4>>2]=M;return}function Xt(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+64|0;if(!((t|0)==0&(r|0)==0)){Tt(o,i);Ar(o,n,0);it(e|0,0,t|0)|0;be(o,e,e,t,r);lr(o,64)}p=a;return}function Wt(e){e=e|0;var t=0,r=0;r=e+15&-16|0;t=a[h>>2]|0;e=t+r|0;if((r|0)>0&(e|0)<(t|0)|(e|0)<0){Z()|0;ee(12);return-1}a[h>>2]=e;if((e|0)>(W()|0)?(X()|0)==0:0){a[h>>2]=t;ee(12);return-1}return t|0}function Zt(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+64|0;if(!((t|0)==0&(r|0)==0)){Tt(o,i);yr(o,n,0);it(e|0,0,t|0)|0;be(o,e,e,t,r);lr(o,64)}p=a;return}function Jt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0;c=p;p=p+32|0;if(!(Zn(c,o,s)|0)){e=nn(e,t,r,n,i,a,c)|0;lr(c,32)}else e=-1;p=c;return e|0}function $t(e){e=e|0;var t=0,r=0,i=0,a=0,o=0;r=32;t=1;i=0;while(1){r=r+-1|0;a=n[e+r>>0]|0;o=n[33572+r>>0]|0;t=t&255;i=((a&255)-(o&255)|0)>>>8&t|i&255;if(!r)break;else t=(((o^a)&255)+65535|0)>>>8&t}return((i|0)==0)<<31>>31|0}function Qt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0;c=p;p=p+32|0;if(!(Zn(c,o,s)|0)){on(e,t,r,n,i,a,c)|0;lr(c,32);e=0}else e=-1;p=c;return e|0}function er(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+80|0;Ze(i+40|0,r,t);We(i,r,t);Ee(i,i);fe(e,i+40|0,i);p=n;return}function tr(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0;Qr(e);r=0;do{o=Dr(t+(r<<3)|0)|0;n=e+(r<<3)|0;i=a[n+4>>2]^M;a[n>>2]=a[n>>2]^o;a[n+4>>2]=i;r=r+1|0}while((r|0)!=8);return}function rr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+384|0;Hn(i,0,0,24)|0;Kn(i,t,32,0)|0;Kn(i,r,32,0)|0;ni(i,e,24)|0;p=n;return}function nr(e){e=e|0;var t=0,r=0,i=0;r=0;while(1){t=0;i=0;do{i=(n[16+(r<<5)+t>>0]^n[e+t>>0])&255|i;t=t+1|0}while((t|0)!=32);r=r+1|0;if(!i){t=1;break}if(r>>>0>=12){t=0;break}}return t|0}function ir(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if((t|0)<(e|0)&(e|0)<(t+r|0)){i=e;t=t+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;t=t-1|0;r=r-1|0;n[e>>0]=n[t>>0]|0}e=i}else Pe(e,t,r)|0;return e|0}function ar(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=K(t&65535,e&65535)|0;i=(r>>>16)+(K(t&65535,e>>>16)|0)|0;n=K(t>>>16,e&65535)|0;return(M=(i>>>16)+(K(t>>>16,e>>>16)|0)+(((i&65535)+n|0)>>>16)|0,i+n<<16|r&65535|0)|0}function or(e,t){e=e|0;t=t|0;fe(e,t,t+120|0);fe(e+40|0,t+40|0,t+80|0);fe(e+80|0,t+80|0,t+120|0);fe(e+120|0,t,t+40|0);return}function sr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;i=p;n=p=p+63&-64;p=p+32|0;if(!(ur(n,r,t)|0)){Ae(e,35048,n);e=0}else e=-1;p=i;return e|0}function cr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0;a=p;p=p+32|0;vr(a,t,r,n,i);i=Ai(e,a)|0;i=((a|0)==(e|0)?-1:i)|(Ft(a,e)|0);p=a;return i|0}function ur(e,t,r){e=e|0;t=t|0;r=r|0;if(!(Me(e,t,r)|0)){t=0;r=0;do{r=o[e+t>>0]|0|r;t=t+1|0}while((t|0)!=32);t=0-((r+511|0)>>>8&1)|0}else t=-1;return t|0}function fr(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=Tn(r|0,n|0,-16,-1)|0;e=Jt(e,t+16|0,t,n,M,i,a,o)|0}return e|0}function hr(e){e=e|0;var t=0,r=0,n=0,i=0;r=o[e>>0]|0;n=cn(o[e+1>>0]|0|0,0,8)|0;i=M;t=cn(o[e+2>>0]|0|0,0,16)|0;i=i|M;e=cn(o[e+3>>0]|0|0,0,24)|0;M=i|M;return n|r|t|e|0}function lr(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+16|0;a[i>>2]=e;if(t|0){e=0;do{n[(a[i>>2]|0)+e>>0]=0;e=e+1|0}while((e|0)!=(t|0))}p=r;return}function dr(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=Tn(r|0,n|0,-16,-1)|0;e=nn(e,t+16|0,t,n,M,i,a)|0}return e|0}function pr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+16|0;gr(o,t,r,n,i);i=Mi(e,o)|0;p=a;return i|0}function br(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=Tn(r|0,n|0,-16,-1)|0;e=je(e,t+16|0,t,n,M,i,a)|0}return e|0}function _r(e,t){e=e|0;t=t|0;Ze(e,t+40|0,t);We(e+40|0,t+40|0,t);vt(e+80|0,t+80|0);fe(e+120|0,t+120|0,1184);return}function yr(e,t,r){e=e|0;t=t|0;r=r|0;if(!r){a[e+48>>2]=0;r=0}else{a[e+48>>2]=ei(r)|0;r=ei(r+4|0)|0}a[e+52>>2]=r;a[e+56>>2]=ei(t)|0;a[e+60>>2]=ei(t+4|0)|0;return}function mr(e,t){e=e|0;t=t|0;var r=0,i=0;i=p;p=p+64|0;Br(e,i);e=i;r=t+32|0;do{n[t>>0]=n[e>>0]|0;t=t+1|0;e=e+1|0}while((t|0)<(r|0));p=i;return}function gr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+96|0;lt(o,i);Ie(o,t,r,n);Be(o,e);p=a;return}function vr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0;a=p;p=p+416|0;mi(a,i);Fn(a,t,r,n);mr(a,e);p=a;return}function wr(e){e=e|0;var t=0,r=0;a[e+64>>2]=0;a[e+64+4>>2]=0;a[e+64+8>>2]=0;a[e+64+12>>2]=0;t=400;r=e+64|0;do{a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(r|0));return}function kr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+208|0;wr(a);ke(a,t,r,n);Or(a,e);p=i;return}function Er(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(r>>>3|0){n=0;do{i=t+(n<<3)|0;Pt(e+(n<<3)|0,a[i>>2]|0,a[i+4>>2]|0);n=n+1|0}while((n|0)!=(r>>>3|0))}return}function Sr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+64|0;Or(e,i);r=Fe(t,i,64,0,r,1)|0;p=n;return r|0}function xr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;Or(e,a);Ke(t,r,a,64,0,n,1);p=i;return}function Ar(e,t,r){e=e|0;t=t|0;r=r|0;if(!r)r=0;else r=ei(r)|0;a[e+48>>2]=r;a[e+52>>2]=ei(t)|0;a[e+56>>2]=ei(t+4|0)|0;a[e+60>>2]=ei(t+8|0)|0;return}function Mr(e,t,r){e=e|0;t=t|0;r=r|0;n[e>>0]=t;n[e+1>>0]=t>>8;n[e+2>>0]=t>>16;n[e+3>>0]=t>>24;n[e+4>>0]=r;n[e+4+1>>0]=r>>8;n[e+4+2>>0]=r>>16;n[e+4+3>>0]=r>>24;return}function Ir(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else e=Qt(e+16|0,e,t,r,n,i,a,o)|0;return e|0}function Tr(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else{on(e+16|0,e,t,r,n,i,a)|0;e=0}return e|0}function zr(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else{ze(e+16|0,e,t,r,n,i,a)|0;e=0}return e|0}function Br(e,t){e=e|0;t=t|0;var r=0;r=p;p=p+64|0;Or(e,r);ke(e+208|0,r,64,0);Or(e+208|0,t);lr(r,64);p=r;return}function Rr(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+128|0;Kr(n,t);bt(e,n);p=r;return}function Cr(e,t){e=e|0;t=t|0;fe(e,t,t+120|0);fe(e+40|0,t+40|0,t+80|0);fe(e+80|0,t+80|0,t+120|0);return}function Or(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+704|0;gt(e,n);Er(t,e,64);lr(n,704);lr(e,208);p=r;return}function jr(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=0;do{i=St(t+(r<<3)|0)|0;n=e+(r<<3)|0;a[n>>2]=i;a[n+4>>2]=M;r=r+1|0}while((r|0)!=16);return}function Nr(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+32|0;en(n,32);Dt(e,t,n);lr(n,32);p=r;return}function Pr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;if((t+-1|0)>>>0>63)e=-1;else{Ct(e,r,t&255,n,i);e=0}return e|0}function Lr(e){e=e|0;var t=0,r=0;t=p;r=p=p+63&-64;p=p+32|0;xe(r,e);e=Ai(r,35064)|0;p=t;return e|0}function qr(e){e=e|0;var t=0;if(e>>>0<2)e=0;else{do{t=ji()|0}while(t>>>0<(((0-e|0)>>>0)%(e>>>0)|0)>>>0);e=(t>>>0)%(e>>>0)|0}return e|0}function Ur(e,t,r){e=e|0;t=t|0;r=r|0;De(e,t,r&255);De(e+40|0,t+40|0,r&255);De(e+80|0,t+80|0,r&255);return}function Dr(e){e=e|0;M=o[e+4>>0]|o[e+4+1>>0]<<8|o[e+4+2>>0]<<16|o[e+4+3>>0]<<24;return o[e>>0]|o[e+1>>0]<<8|o[e+2>>0]<<16|o[e+3>>0]<<24|0}function Kr(e,t){e=e|0;t=t|0;vt(e,t);vt(e+40|0,t+40|0);vt(e+80|0,t+80|0);return}function Fr(e){e=e|0;var t=0,r=0;r=p;t=p=p+63&-64;p=p+32|0;xe(t,e);p=r;return n[t>>0]&1|0}function Yr(){}function Hr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){M=t>>r;return e>>>r|(t&(1<>r-32|0}function Vr(e){e=e|0;Nn(e);dn(e+40|0);dn(e+80|0);Nn(e+120|0);return}function Gr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=fn(e|0,t|0,r|0)|0;i=M;r=cn(e|0,t|0,64-r|0)|0;M=M|i;return r|n|0}function Xr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=cn(e|0,t|0,r|0)|0;i=M;r=fn(e|0,t|0,64-r|0)|0;M=M|i;return r|n|0}function Wr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=ar(e,r)|0;a=M;return(M=(K(t,r)|0)+(K(n,e)|0)+a|a&0,i|0|0)|0}function Zr(e){e=e|0;n[e>>0]=0;n[e+1>>0]=0;n[e+2>>0]=0;n[e+3>>0]=0;n[e+4>>0]=0;n[e+4+1>>0]=0;n[e+4+2>>0]=0;n[e+4+3>>0]=0;return}function Jr(e,t,r){e=e|0;t=t|0;r=r|0;if(r>>>0<256)return Xe(e,t,r&255)|0;else $(33259,33279,102,33411);return 0}function $r(e,t,r){e=e|0;t=t|0;r=r|0;var n=0;t=cn(t&255|0,0,8)|0;n=M;r=cn(r&255|0,0,16)|0;M=n|M;return t|e&255|r|0}function Qr(e){e=e|0;var t=0,r=0;it(e+64|0,0,320)|0;t=400;r=e+64|0;do{a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(r|0));return}function en(e,t){e=e|0;t=t|0;var r=0;if(t|0){r=0;do{n[e+r>>0]=ji()|0;r=r+1|0}while((r|0)!=(t|0))}return}function tn(e,t){e=e|0;t=t|0;var r=0;r=e+48|0;e=r+16|0;do{n[r>>0]=n[t>>0]|0;r=r+1|0;t=t+1|0}while((r|0)<(e|0));return}function rn(e,t){e=e|0;t=t|0;var r=0;r=e+32|0;e=r+16|0;do{n[r>>0]=n[t>>0]|0;r=r+1|0;t=t+1|0}while((r|0)<(e|0));return}function nn(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;return je(e,t,r,n,i,a,o)|0}function an(){var e=0,t=0;e=p;t=p=p+63&-64;p=p+16|0;oi(t);if(a[t>>2]|0)oi(t);p=e;return}function on(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;ze(e,t,r,n,i,a,o)|0;return 0}function sn(){var e=0;e=ne(30)|0;if((e|0)>0)a[8617]=e;else e=a[8617]|0;if(e>>>0<16)Q();else{en(35096,16);return}}function cn(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){M=t<>>32-r;return e<>>r;return e>>>r|(t&(1<>>r-32|0}function hn(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;return Ut(e,t,r,n,i,a,o)|0}function ln(e,t,r){e=e|0;t=t|0;r=r|0;if(r>>>0<1|(r|0)==1&t>>>0<0){en(e,t);return}else $(34393,34413,200,34439)}function dn(e){e=e|0;var t=0;a[e>>2]=1;e=e+4|0;t=e+36|0;do{a[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return}function pn(e){e=e|0;dn(e);dn(e+40|0);Nn(e+80|0);return}function bn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return et(e,t,r,n,i,a)|0}function _n(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Ke(e,t,r,n,i,a,0);return}function yn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Vt(e,t,r,n,i,1,a);return}function mn(e){e=e|0;Nn(e);dn(e+40|0);dn(e+80|0);return}function gn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Te(e,t,r,n,i,1,0,a);return}function vn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return Fe(e,t,r,n,i,0)|0}function wn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return pr(e,t,r,n,i)|0}function kn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Te(e,t,r,n,i,0,0,a);return}function En(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;qt(e,t,r,n,i,1,0,a);return}function Sn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;_n(e,t,r,n,i,a);return 0}function xn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return vn(e,t,r,n,i)|0}function An(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return mt(e,t,r,n,i,a)|0}function Mn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;n=t-n-(r>>>0>e>>>0|0)>>>0;return(M=n,e-r>>>0|0)|0}function In(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return _t(e,t,r,n,i,a)|0}function Tn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;return(M=t+n+(e+r>>>0>>>0>>0|0)>>>0,e+r>>>0|0)|0}function zn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Vn(e,t,r,n);return}function Bn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return cr(e,t,r,n,i)|0}function Rn(e,t){e=e|0;t=t|0;wr(e);if(t|0)ke(e,33604,34,0);return}function Cn(e){e=e|0;if(n[e+356>>0]|0)ki(e);a[e+80>>2]=-1;a[e+80+4>>2]=-1;return}function On(e,t){e=e|0;t=t|0;n[e>>0]=t;n[e+1>>0]=t>>8;n[e+2>>0]=t>>16;n[e+3>>0]=t>>24;return}function jn(e,t,r){e=e|0;t=t|0;r=r|0;hn(t,32,r,32,0,0,0)|0;return yi(e,t)|0}function Nn(e){e=e|0;var t=0;t=e+40|0;do{a[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return}function Pn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Ve(e,t,r,n);return}function Ln(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;pe(e,t,r,n,i);return 0}function qn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;Xt(e,t,r,n,i);return}function Un(e,t){e=e|0;t=t|0;en(t,32);return ci(e,t)|0}function Dn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;xr(e,t,r,n);return 0}function Kn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Pn(e,t,r,n);return 0}function Fn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Gn(e,t,r,n);return}function Yn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;vr(e,t,r,n,i);return 0}function Hn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;return zt(e,t,r,n)|0}function Vn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Ie(e,t,r,n);return}function Gn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;ke(e,t,r,n);return}function Xn(e,t,r){e=e|0;t=t|0;r=r|0;return Kt(e,t,r)|0}function Wn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Gn(e,t,r,n);return 0}function Zn(e,t,r){e=e|0;t=t|0;r=r|0;return sr(e,t,r)|0}function Jn(e,t){e=e|0;t=t|0;e=Je(e,t)|0;return((n[e>>0]|0)==(t&255)<<24>>24?e:0)|0}function $n(e,t,r){e=e|0;t=t|0;r=r|0;qn(e,t,0,34381,r);return}function Qn(e){e=e|0;e=fn(e<<24>>24|0,((e<<24>>24|0)<0)<<31>>31|0,63)|0;return e&255|0}function ei(e){e=e|0;return o[e>>0]|o[e+1>>0]<<8|o[e+2>>0]<<16|o[e+3>>0]<<24|0}function ti(e,t,r){e=e|0;t=t|0;r=r|0;return Sr(e,t,r)|0}function ri(e,t,r){e=e|0;t=t|0;r=r|0;Dt(e,t,r);return 0}function ni(e,t,r){e=e|0;t=t|0;r=r|0;return Jr(e,t,r)|0}function ii(e){e=e|0;var t=0;t=p;p=p+e|0;p=p+15&-16;return t|0}function ai(e){e=e|0;n[e>>0]=0;n[e+1>>0]=0;n[e+2>>0]=0;n[e+3>>0]=0;return}function oi(e){e=e|0;a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;return}function si(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;kr(e,t,r,n);return 0}function ci(e,t){e=e|0;t=t|0;return Et(e,t)|0}function ui(e,t){e=e|0;t=t|0;vi(e,t);return}function fi(e,t){e=e|0;t=t|0;wi(e,t);return}function hi(e,t,r){e=e|0;t=t|0;r=r|0;return ur(e,t,r)|0}function li(e,t){e=e|0;t=t|0;en(t,32);return yi(e,t)|0}function di(e,t){e=e|0;t=t|0;return Un(e,t)|0}function pi(e,t,r){e=e|0;t=t|0;r=r|0;Ne(e,32,0,t,r);return}function bi(e,t,r){e=e|0;t=t|0;r=r|0;Zt(e,64,0,t,r);return}function _i(e,t,r){e=e|0;t=t|0;r=r|0;ve(e,t,r);return}function yi(e,t){e=e|0;t=t|0;return ci(e,t)|0}function mi(e,t){e=e|0;t=t|0;$e(e,t);return}function gi(e,t){e=e|0;t=t|0;if(!_){_=e;y=t}}function vi(e,t){e=e|0;t=t|0;Be(e,t);return}function wi(e,t){e=e|0;t=t|0;lt(e,t);return}function ki(e){e=e|0;a[e+88>>2]=-1;a[e+88+4>>2]=-1;return}function Ei(e,t){e=e|0;t=t|0;Nr(e,t);return 0}function Si(e,t){e=e|0;t=t|0;return((e|0)!=0|(t|0)!=0)&1|0}function xi(e,t){e=e|0;t=t|0;return(((t^e)&255)+-1|0)>>>31&255|0}function Ai(e,t){e=e|0;t=t|0;return Ot(e,t,32)|0}function Mi(e,t){e=e|0;t=t|0;return Ot(e,t,16)|0}function Ii(e,t){e=e|0;t=t|0;p=e;b=t}function Ti(e,t){e=e|0;t=t|0;return e>>>(32-t|0)|e<0||(!function(){if(i.preRun)for("function"==typeof i.preRun&&(i.preRun=[i.preRun]);i.preRun.length;)ue(i.preRun.shift());te(re)}(),me>0||i.calledRun||(i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),t()},1)):t()))}function Fe(e,t){t&&i.noExitRuntime||(i.noExitRuntime||(g=!0,e,V=xe,te(ae),!0,i.onExit&&i.onExit(e)),h&&n.exit(e),i.quit(e,new Ue(e)))}ve=function e(){i.calledRun||Ke(),i.calledRun||(ve=e)},i.callMain=i.callMain=function(e){e=e||[],ce();var t=e.length+1;function r(){for(var e=0;e<3;e++)n.push(0)}var n=[x(he(i.thisProgram),"i8",0)];r();for(var a=0;a0;)i.preInit.pop()();var Ve=!0;return i.noInitialRun&&(Ve=!1),Ke(),h&&n.removeAllListeners("uncaughtException"),i})?i.apply(t,a):i)||(e.exports=o)}).call(t,r(6))},function(e,t){},function(e,t,r){(function(e){function r(e,t){for(var r=0,n=e.length-1;n>=0;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}var n=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(e){return n.exec(e).slice(1)};function a(e,t){if(e.filter)return e.filter(t);for(var r=[],n=0;n=-1&&!n;i--){var o=i>=0?arguments[i]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(t=o+"/"+t,n="/"===o.charAt(0))}return t=r(a(t.split("/"),function(e){return!!e}),!n).join("/"),(n?"/":"")+t||"."},t.normalize=function(e){var n=t.isAbsolute(e),i="/"===o(e,-1);return(e=r(a(e.split("/"),function(e){return!!e}),!n).join("/"))||n||(e="."),e&&i&&(e+="/"),(n?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(a(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},t.relative=function(e,r){function n(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=t.resolve(e).substr(1),r=t.resolve(r).substr(1);for(var i=n(e.split("/")),a=n(r.split("/")),o=Math.min(i.length,a.length),s=o,c=0;cs?t=e(t):t.length>>32-t}function c(e,t,r,n,i,a,o){return s(e+(t&r|~t&n)+i+a|0,o)+t|0}function u(e,t,r,n,i,a,o){return s(e+(t&n|r&~n)+i+a|0,o)+t|0}function f(e,t,r,n,i,a,o){return s(e+(t^r^n)+i+a|0,o)+t|0}function h(e,t,r,n,i,a,o){return s(e+(r^(t|~n))+i+a|0,o)+t|0}n(o,i),o.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;n=h(n=h(n=h(n=h(n=f(n=f(n=f(n=f(n=u(n=u(n=u(n=u(n=c(n=c(n=c(n=c(n,i=c(i,o=c(o,r=c(r,n,i,o,e[0],3614090360,7),n,i,e[1],3905402710,12),r,n,e[2],606105819,17),o,r,e[3],3250441966,22),i=c(i,o=c(o,r=c(r,n,i,o,e[4],4118548399,7),n,i,e[5],1200080426,12),r,n,e[6],2821735955,17),o,r,e[7],4249261313,22),i=c(i,o=c(o,r=c(r,n,i,o,e[8],1770035416,7),n,i,e[9],2336552879,12),r,n,e[10],4294925233,17),o,r,e[11],2304563134,22),i=c(i,o=c(o,r=c(r,n,i,o,e[12],1804603682,7),n,i,e[13],4254626195,12),r,n,e[14],2792965006,17),o,r,e[15],1236535329,22),i=u(i,o=u(o,r=u(r,n,i,o,e[1],4129170786,5),n,i,e[6],3225465664,9),r,n,e[11],643717713,14),o,r,e[0],3921069994,20),i=u(i,o=u(o,r=u(r,n,i,o,e[5],3593408605,5),n,i,e[10],38016083,9),r,n,e[15],3634488961,14),o,r,e[4],3889429448,20),i=u(i,o=u(o,r=u(r,n,i,o,e[9],568446438,5),n,i,e[14],3275163606,9),r,n,e[3],4107603335,14),o,r,e[8],1163531501,20),i=u(i,o=u(o,r=u(r,n,i,o,e[13],2850285829,5),n,i,e[2],4243563512,9),r,n,e[7],1735328473,14),o,r,e[12],2368359562,20),i=f(i,o=f(o,r=f(r,n,i,o,e[5],4294588738,4),n,i,e[8],2272392833,11),r,n,e[11],1839030562,16),o,r,e[14],4259657740,23),i=f(i,o=f(o,r=f(r,n,i,o,e[1],2763975236,4),n,i,e[4],1272893353,11),r,n,e[7],4139469664,16),o,r,e[10],3200236656,23),i=f(i,o=f(o,r=f(r,n,i,o,e[13],681279174,4),n,i,e[0],3936430074,11),r,n,e[3],3572445317,16),o,r,e[6],76029189,23),i=f(i,o=f(o,r=f(r,n,i,o,e[9],3654602809,4),n,i,e[12],3873151461,11),r,n,e[15],530742520,16),o,r,e[2],3299628645,23),i=h(i,o=h(o,r=h(r,n,i,o,e[0],4096336452,6),n,i,e[7],1126891415,10),r,n,e[14],2878612391,15),o,r,e[5],4237533241,21),i=h(i,o=h(o,r=h(r,n,i,o,e[12],1700485571,6),n,i,e[3],2399980690,10),r,n,e[10],4293915773,15),o,r,e[1],2240044497,21),i=h(i,o=h(o,r=h(r,n,i,o,e[8],1873313359,6),n,i,e[15],4264355552,10),r,n,e[6],2734768916,15),o,r,e[13],1309151649,21),i=h(i,o=h(o,r=h(r,n,i,o,e[4],4149444226,6),n,i,e[11],3174756917,10),r,n,e[2],718787259,15),o,r,e[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},o.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=new t(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=o}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(2).Buffer,i=r(19).Transform;function a(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(0)(a,i),a.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(e){n=e}r(n)},a.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)},a.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!=typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var a=this._blockOffset;a0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,r){var n=r(34),i=r(53),a=r(2).Buffer,o=r(54),s=r(9),c=r(23),u=r(22);function f(e,t,r){s.call(this),this._cache=new l,this._cipher=new c.AES(t),this._prev=a.from(r),this._mode=e,this._autopadding=!0}r(0)(f,s),f.prototype._update=function(e){var t,r;this._cache.add(e);for(var n=[];t=this._cache.get();)r=this._mode.encrypt(this,t),n.push(r);return a.concat(n)};var h=a.alloc(16,16);function l(){this.cache=a.allocUnsafe(0)}function d(e,t,r){var s=n[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof t&&(t=a.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);if("string"==typeof r&&(r=a.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);return"stream"===s.type?new o(s.module,t,r):"auth"===s.type?new i(s.module,t,r):new f(s.module,t,r)}f.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return e=this._mode.encrypt(this,e),this._cipher.scrub(),e;if(!e.equals(h))throw this._cipher.scrub(),new Error("data not multiple of block length")},f.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},l.prototype.add=function(e){this.cache=a.concat([this.cache,e])},l.prototype.get=function(){if(this.cache.length>15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},l.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),r=-1;++r>s%8,e._prev=a(e._prev,r?i:o);return c}function a(e,t){var r=e.length,i=-1,a=n.allocUnsafe(e.length);for(e=n.concat([e,n.from([t])]);++i>7;return a}t.encrypt=function(e,t,r){for(var a=t.length,o=n.allocUnsafe(a),s=-1;++s>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function o(e){this.h=e,this.state=n.alloc(16,0),this.cache=n.allocUnsafe(0)}o.prototype.ghash=function(e){for(var t=-1;++t0;t--)n[t]=n[t]>>>1|(1&n[t-1])<<31;n[0]=n[0]>>>1,r&&(n[0]=n[0]^225<<24)}this.state=a(i)},o.prototype.update=function(e){var t;for(this.cache=n.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},o.prototype.final=function(e,t){return this.cache.length&&this.ghash(n.concat([this.cache,i],16)),this.ghash(a([0,e,0,t])),this.state},e.exports=o},function(e,t,r){var n=r(53),i=r(2).Buffer,a=r(34),o=r(54),s=r(9),c=r(23),u=r(22);function f(e,t,r){s.call(this),this._cache=new h,this._last=void 0,this._cipher=new c.AES(t),this._prev=i.from(r),this._mode=e,this._autopadding=!0}function h(){this.cache=i.allocUnsafe(0)}function l(e,t,r){var s=a[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof r&&(r=i.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);if("string"==typeof t&&(t=i.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===s.type?new o(s.module,t,r,!0):"auth"===s.type?new n(s.module,t,r,!0):new f(s.module,t,r)}r(0)(f,s),f.prototype._update=function(e){var t,r;this._cache.add(e);for(var n=[];t=this._cache.get(this._autopadding);)r=this._mode.decrypt(this,t),n.push(r);return i.concat(n)},f.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15],r=-1;for(;++r16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},h.prototype.flush=function(){if(this.cache.length)return this.cache},t.createDecipher=function(e,t){var r=a[e.toLowerCase()];if(!r)throw new TypeError("invalid suite type");var n=u(t,!1,r.key,r.iv);return l(e,n.key,n.iv)},t.createDecipheriv=l},function(e,t,r){(function(t){var n=r(9),i=r(35),a=r(0),o={"des-ede3-cbc":i.CBC.instantiate(i.EDE),"des-ede3":i.EDE,"des-ede-cbc":i.CBC.instantiate(i.EDE),"des-ede":i.EDE,"des-cbc":i.CBC.instantiate(i.DES),"des-ecb":i.DES};function s(e){n.call(this);var r,i=e.mode.toLowerCase(),a=o[i];r=e.decrypt?"decrypt":"encrypt";var s=e.key;"des-ede"!==i&&"des-ede-cbc"!==i||(s=t.concat([s,s.slice(0,8)]));var c=e.iv;this._des=a.create({key:s,iv:c,type:r})}o.des=o["des-cbc"],o.des3=o["des-ede3-cbc"],e.exports=s,a(s,n),s.prototype._update=function(e){return new t(this._des.update(e))},s.prototype._final=function(){return new t(this._des.final())}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";t.readUInt32BE=function(e,t){return(e[0+t]<<24|e[1+t]<<16|e[2+t]<<8|e[3+t])>>>0},t.writeUInt32BE=function(e,t,r){e[0+r]=t>>>24,e[1+r]=t>>>16&255,e[2+r]=t>>>8&255,e[3+r]=255&t},t.ip=function(e,t,r,n){for(var i=0,a=0,o=6;o>=0;o-=2){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>>s+o&1}for(o=6;o>=0;o-=2){for(s=1;s<=25;s+=8)a<<=1,a|=t>>>s+o&1;for(s=1;s<=25;s+=8)a<<=1,a|=e>>>s+o&1}r[n+0]=i>>>0,r[n+1]=a>>>0},t.rip=function(e,t,r,n){for(var i=0,a=0,o=0;o<4;o++)for(var s=24;s>=0;s-=8)i<<=1,i|=t>>>s+o&1,i<<=1,i|=e>>>s+o&1;for(o=4;o<8;o++)for(s=24;s>=0;s-=8)a<<=1,a|=t>>>s+o&1,a<<=1,a|=e>>>s+o&1;r[n+0]=i>>>0,r[n+1]=a>>>0},t.pc1=function(e,t,r,n){for(var i=0,a=0,o=7;o>=5;o--){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>s+o&1}for(s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(o=1;o<=3;o++){for(s=0;s<=24;s+=8)a<<=1,a|=t>>s+o&1;for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1}for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1;r[n+0]=i>>>0,r[n+1]=a>>>0},t.r28shl=function(e,t){return e<>>28-t};var n=[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];t.pc2=function(e,t,r,i){for(var a=0,o=0,s=n.length>>>1,c=0;c>>n[c]&1;for(c=s;c>>n[c]&1;r[i+0]=a>>>0,r[i+1]=o>>>0},t.expand=function(e,t,r){var n=0,i=0;n=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)n<<=6,n|=e>>>a&63;for(a=11;a>=3;a-=4)i|=e>>>a&63,i<<=6;i|=(31&e)<<1|e>>>31,t[r+0]=n>>>0,t[r+1]=i>>>0};var i=[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];t.substitute=function(e,t){for(var r=0,n=0;n<4;n++){r<<=4,r|=i[64*n+(e>>>18-6*n&63)]}for(n=0;n<4;n++){r<<=4,r|=i[256+64*n+(t>>>18-6*n&63)]}return r>>>0};var a=[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];t.permute=function(e){for(var t=0,r=0;r>>a[r]&1;return t>>>0},t.padSplit=function(e,t,r){for(var n=e.toString(2);n.length0;n--)t+=this._buffer(e,t),r+=this._flushBuffer(i,r);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,r;return e&&(t=this.update(e)),r="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(r):r},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t>>1];r=o.r28shl(r,s),i=o.r28shl(i,s),o.pc2(r,i,e.keys,a)}},c.prototype._update=function(e,t,r,n){var i=this._desState,a=o.readUInt32BE(e,t),s=o.readUInt32BE(e,t+4);o.ip(a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],"encrypt"===this.type?this._encrypt(i,a,s,i.tmp,0):this._decrypt(i,a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],o.writeUInt32BE(r,a,n),o.writeUInt32BE(r,s,n+4)},c.prototype._pad=function(e,t){for(var r=e.length-t,n=t;n>>0,a=l}o.rip(s,a,n,i)},c.prototype._decrypt=function(e,t,r,n,i){for(var a=r,s=t,c=e.keys.length-2;c>=0;c-=2){var u=e.keys[c],f=e.keys[c+1];o.expand(a,e.tmp,0),u^=e.tmp[0],f^=e.tmp[1];var h=o.substitute(u,f),l=a;a=(s^o.permute(h))>>>0,s=l}o.rip(a,s,n,i)}},function(e,t,r){"use strict";var n=r(5),i=r(0),a={};t.instantiate=function(e){function t(t){e.call(this,t),this._cbcInit()}i(t,e);for(var r=Object.keys(a),n=0;n0&&r.ishrn(n),r}function h(e,r,i){var a,o;do{for(a=new t(0);8*a.length=0;){var a;if(i.isOdd()){var o=i.andln(n-1);a=o>(n>>1)-1?(n>>1)-o:o,i.isubn(a)}else a=0;r.push(a);for(var s=0!==i.cmpn(0)&&0===i.andln(n-1)?t+1:1,c=1;c0||t.cmpn(-i)>0;){var a,o,s,c=e.andln(3)+n&3,u=t.andln(3)+i&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!=(s=e.andln(7)+n&7)&&5!==s||2!==u?c:-c,r[0].push(a),o=0==(1&u)?0:3!=(s=t.andln(7)+i&7)&&5!==s||2!==c?u:-u,r[1].push(o),2*n===a+1&&(n=1-n),2*i===o+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},function(e,t,r){"use strict";var n=r(3),i=r(4).utils,a=i.getNAF,o=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4);var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function u(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=a(t,1),i=(1<=c;t--)u=(u<<1)+n[t];o.push(u)}for(var f=this.jpoint(null,null,null),h=this.jpoint(null,null,null),l=i;l>0;l--){for(c=0;c=0;u--){for(t=0;u>=0&&0===o[u];u--)t++;if(u>=0&&t++,c=c.dblp(t),u<0)break;var f=o[u];s(0!==f),c="affine"===e.type?f>0?c.mixedAdd(i[f-1>>1]):c.mixedAdd(i[-f-1>>1].neg()):f>0?c.add(i[f-1>>1]):c.add(i[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){for(var s=this._wnafT1,c=this._wnafT2,u=this._wnafT3,f=0,h=0;h=1;h-=2){var d=h-1,p=h;if(1===s[d]&&1===s[p]){var b=[t[d],null,null,t[p]];0===t[d].y.cmp(t[p].y)?(b[1]=t[d].add(t[p]),b[2]=t[d].toJ().mixedAdd(t[p].neg())):0===t[d].y.cmp(t[p].y.redNeg())?(b[1]=t[d].toJ().mixedAdd(t[p]),b[2]=t[d].add(t[p].neg())):(b[1]=t[d].toJ().mixedAdd(t[p]),b[2]=t[d].toJ().mixedAdd(t[p].neg()));var _=[-3,-1,-5,-7,0,7,5,1,3],y=o(r[d],r[p]);f=Math.max(y[0].length,f),u[d]=new Array(f),u[p]=new Array(f);for(var m=0;m=0;h--){for(var E=0;h>=0;){var S=!0;for(m=0;m=0&&E++,w=w.dblp(E),h<0)break;for(m=0;m0?x=c[m][A-1>>1]:A<0&&(x=c[m][-A-1>>1].neg()),w="affine"===x.type?w.mixedAdd(x):w.add(x))}}for(h=0;h=Math.ceil((e.bitLength()+1)/t.step)},u.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(o=t,s=r),n.negative&&(n=n.neg(),i=i.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:n,b:i},{a:o,b:s}]},u.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),o=i.mul(r.a),s=a.mul(n.a),c=i.mul(r.b),u=a.mul(n.b);return{k1:e.sub(o).sub(s),k2:c.add(u).neg()}},u.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(t&&!i||!t&&i)&&(n=n.redNeg()),this.point(e,n)},u.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},u.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,a=0;a":""},f.prototype.isInfinity=function(){return this.inf},f.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},f.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),a=i.redSqr().redISub(this.x.redAdd(this.x)),o=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},f.prototype.getX=function(){return this.x.fromRed()},f.prototype.getY=function(){return this.y.fromRed()},f.prototype.mul=function(e){return e=new a(e,16),this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},f.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},f.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},f.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},f.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},f.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(h,s.BasePoint),u.prototype.jpoint=function(e,t,r){return new h(this,e,t,r)},h.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},h.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},h.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=a.redSub(o);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),f=u.redMul(s),h=n.redMul(u),l=c.redSqr().redIAdd(f).redISub(h).redISub(h),d=c.redMul(h.redISub(l)).redISub(a.redMul(f)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(l,d,p)},h.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,a=e.y.redMul(t).redMul(this.z),o=r.redSub(n),s=i.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=o.redSqr(),u=c.redMul(o),f=r.redMul(c),h=s.redSqr().redIAdd(u).redISub(f).redISub(f),l=s.redMul(f.redISub(h)).redISub(i.redMul(u)),d=this.z.redMul(o);return this.curve.jpoint(h,l,d)},h.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}return!1},h.prototype.inspect=function(){return this.isInfinity()?"":""},h.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,r){"use strict";var n=r(24),i=r(3),a=r(0),o=n.base,s=r(4).utils;function c(e){o.call(this,"mont",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.i4=new i(4).toRed(this.red).redInvm(),this.two=new i(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function u(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new i(t,16),this.z=new i(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}a(c,o),e.exports=c,c.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},a(u,o.BasePoint),c.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},c.prototype.point=function(e,t){return new u(this,e,t)},c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},u.prototype.precompute=function(){},u.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},u.fromJSON=function(e,t){return new u(e,t[0],t[1]||e.one)},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},u.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},u.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),o=i.redMul(n),s=t.z.redMul(a.redAdd(o).redSqr()),c=t.x.redMul(a.redISub(o).redSqr());return this.curve.point(s,c)},u.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var a=i.length-1;a>=0;a--)0===i[a]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},u.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},u.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,r){"use strict";var n=r(24),i=r(4),a=r(3),o=r(0),s=n.base,c=i.utils.assert;function u(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new a(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new a(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new a(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),c(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function f(e,t,r,n,i){s.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new a(t,16),this.y=new a(r,16),this.z=n?new a(n,16):this.curve.one,this.t=i&&new a(i,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(u,s),e.exports=u,u.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},u.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},u.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},u.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),i=this.one.redSub(this.c2.redMul(this.d).redMul(r)),o=n.redMul(i.redInvm()),s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},u.prototype.pointFromY=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.one),i=r.redMul(this.d).redAdd(this.one),o=n.redMul(i.redInvm());if(0===o.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");return s.isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},u.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(f,s.BasePoint),u.prototype.pointFromJSON=function(e){return f.fromJSON(this,e)},u.prototype.point=function(e,t,r,n){return new f(this,e,t,r,n)},f.fromJSON=function(e,t){return new f(e,t[0],t[1],t[2])},f.prototype.inspect=function(){return this.isInfinity()?"":""},f.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&0===this.y.cmp(this.z)},f.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=n.redAdd(t),o=a.redSub(r),s=n.redSub(t),c=i.redMul(o),u=a.redMul(s),f=i.redMul(s),h=o.redMul(a);return this.curve.point(c,u,h,f)},f.prototype._projDbl=function(){var e,t,r,n=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(u=this.curve._mulA(i)).redAdd(a);if(this.zOne)e=n.redSub(i).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(u.redSub(a)),r=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),c=o.redSub(s).redISub(s);e=n.redSub(i).redISub(a).redMul(c),t=o.redMul(u.redSub(a)),r=o.redMul(c)}}else{var u=i.redAdd(a);s=this.curve._mulC(this.c.redMul(this.z)).redSqr(),c=u.redSub(s).redSub(s);e=this.curve._mulC(n.redISub(u)).redMul(c),t=this.curve._mulC(u).redMul(i.redISub(a)),r=u.redMul(c)}return this.curve.point(e,t,r)},f.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},f.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),o=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),u=a.redMul(o),f=s.redMul(c),h=a.redMul(c),l=o.redMul(s);return this.curve.point(u,f,l,h)},f.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),c=i.redSub(s),u=i.redAdd(s),f=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),h=n.redMul(c).redMul(f);return this.curve.twisted?(t=n.redMul(u).redMul(o.redSub(this.curve._mulA(a))),r=c.redMul(u)):(t=n.redMul(u).redMul(o.redSub(a)),r=this.curve._mulC(c).redMul(u)),this.curve.point(h,t,r)},f.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},f.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},f.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},f.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},f.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},f.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},f.prototype.getX=function(){return this.normalize(),this.x.fromRed()},f.prototype.getY=function(){return this.normalize(),this.y.fromRed()},f.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},f.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}return!1},f.prototype.toP=f.prototype.normalize,f.prototype.mixedAdd=f.prototype.add},function(e,t,r){"use strict";var n,i=t,a=r(37),o=r(4),s=o.utils.assert;function c(e){"short"===e.type?this.curve=new o.curve.short(e):"edwards"===e.type?this.curve=new o.curve.edwards(e):this.curve=new o.curve.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(143)}catch(e){n=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},function(e,t,r){"use strict";t.sha1=r(138),t.sha224=r(139),t.sha256=r(60),t.sha384=r(140),t.sha512=r(61)},function(e,t,r){"use strict";var n=r(7),i=r(16),a=r(59),o=n.rotl32,s=n.sum32,c=n.sum32_5,u=a.ft_1,f=i.BlockHash,h=[1518500249,1859775393,2400959708,3395469782];function l(){if(!(this instanceof l))return new l;f.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(l,f),e.exports=l,l.blockSize=512,l.outSize=160,l.hmacStrength=80,l.padLength=64,l.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;nthis.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t0))return s.iaddn(1),this.keyFromPrivate(s)}},u.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},u.prototype.sign=function(e,t,r,a){"object"==typeof r&&(a=r,r=null),a||(a={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var o=this.n.byteLength(),s=t.getPrivate().toArray("be",o),u=e.toArray("be",o),f=new i({hash:this.hash,entropy:s,nonce:u,pers:a.pers,persEnc:a.persEnc||"utf8"}),h=this.n.sub(new n(1)),l=0;;l++){var d=a.k?a.k(l):new n(f.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(h)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var b=p.getX(),_=b.umod(this.n);if(0!==_.cmpn(0)){var y=d.invm(this.n).mul(_.mul(t.getPrivate()).iadd(e));if(0!==(y=y.umod(this.n)).cmpn(0)){var m=(p.getY().isOdd()?1:0)|(0!==b.cmp(_)?2:0);return a.canonical&&y.cmp(this.nh)>0&&(y=this.n.sub(y),m^=1),new c({r:_,s:y,recoveryParam:m})}}}}}},u.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var a=(t=new c(t,"hex")).r,o=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var s,u=o.invm(this.n),f=u.mul(e).umod(this.n),h=u.mul(a).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(f,r.getPublic(),h)).isInfinity()&&s.eqXToP(a):!(s=this.g.mulAdd(f,r.getPublic(),h)).isInfinity()&&0===s.getX().umod(this.n).cmp(a)},u.prototype.recoverPubKey=function(e,t,r,i){o((3&r)===r,"The recovery param is more than two bits"),t=new c(t,i);var a=this.n,s=new n(e),u=t.r,f=t.s,h=1&r,l=r>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");u=l?this.curve.pointFromX(u.add(this.curve.n),h):this.curve.pointFromX(u,h);var d=t.r.invm(a),p=a.sub(s).mul(d).umod(a),b=f.mul(d).umod(a);return this.g.mulAdd(p,u,b)},u.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new c(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var a;try{a=this.recoverPubKey(e,t,i)}catch(e){continue}if(a.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},function(e,t,r){"use strict";var n=r(37),i=r(58),a=r(5);function o(e){if(!(this instanceof o))return new o(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=o,o.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);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(e.concat(r||[])),this._reseed=1},o.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var a=[];a.length"}},function(e,t,r){"use strict";var n=r(3),i=r(4).utils,a=i.assert;function o(e,t){if(e instanceof o)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(e,t){var r=e[t.place++];if(!(128&r))return r;for(var n=15&r,i=0,a=0,o=t.place;a>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=o,o.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new function(){this.place=0};if(48!==e[r.place++])return!1;if(s(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=s(e,r),o=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var c=s(e,r);if(e.length!==c+r.place)return!1;var u=e.slice(r.place,c+r.place);return 0===o[0]&&128&o[1]&&(o=o.slice(1)),0===u[0]&&128&u[1]&&(u=u.slice(1)),this.r=new n(o),this.s=new n(u),this.recoveryParam=null,!0},o.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=c(t),r=c(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var a=n.concat(r),o=[48];return u(o,a.length),o=o.concat(a),i.encode(o,e)}},function(e,t,r){"use strict";var n=r(37),i=r(4),a=i.utils,o=a.assert,s=a.parseBytes,c=r(149),u=r(150);function f(e){if(o("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof f))return new f(e);e=i.curves[e].curve;this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=f,f.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),a=this.encodePoint(i),o=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),c=n.add(o).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:a})},f.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(a)},f.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=t)throw new Error("invalid sig")}e.exports=function(e,r,c,u,f){var h=a(c);if("ec"===h.type){if("ecdsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");return function(e,t,r){var n=o[r.data.algorithm.curve.join(".")];if(!n)throw new Error("unknown curve "+r.data.algorithm.curve.join("."));var a=new i(n),s=r.data.subjectPrivateKey.data;return a.verify(t,e,s)}(e,r,h)}if("dsa"===h.type){if("dsa"!==u)throw new Error("wrong public key type");return function(e,t,r){var i=r.data.p,o=r.data.q,c=r.data.g,u=r.data.pub_key,f=a.signature.decode(e,"der"),h=f.s,l=f.r;s(h,o),s(l,o);var d=n.mont(i),p=h.invm(o);return 0===c.toRed(d).redPow(new n(t).mul(p).mod(o)).fromRed().mul(u.toRed(d).redPow(l.mul(p).mod(o)).fromRed()).mod(i).mod(o).cmp(l)}(e,r,h)}if("rsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");r=t.concat([f,r]);for(var l=h.modulus.byteLength(),d=[1],p=0;r.length+d.length+2n-l-2)throw new Error("message too long");var d=new t(n-u-l-2);d.fill(0);var p=n-h-1,b=i(h),_=s(t.concat([f,d,new t([1]),r],p),o(b,p)),y=s(b,o(_,h));return new c(t.concat([new t([0]),y,_],n))}(p,r);else if(1===l)d=function(e,r,n){var a,o=r.length,s=e.modulus.byteLength();if(o>s-11)throw new Error("message too long");n?(a=new t(s-o-3)).fill(255):a=function(e,r){var n,a=new t(e),o=0,s=i(2*e),c=0;for(;o=0)throw new Error("data too long for modulus")}return h?f(d,p):u(d,p)}}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(25),i=r(67),a=r(68),o=r(3),s=r(36),c=r(10),u=r(69);e.exports=function(e,r,f){var h;h=e.padding?e.padding:f?1:4;var l,d=n(e),p=d.modulus.byteLength();if(r.length>p||new o(r).cmp(d.modulus)>=0)throw new Error("decryption error");l=f?u(new o(r),d):s(r,d);var b=new t(p-l.length);if(b.fill(0),l=t.concat([b,l],p),4===h)return function(e,r){e.modulus;var n=e.modulus.byteLength(),o=(r.length,c("sha1").update(new t("")).digest()),s=o.length;if(0!==r[0])throw new Error("decryption error");var u=r.slice(1,s+1),f=r.slice(s+1),h=a(u,i(f,s)),l=a(f,i(h,n-s-1));if(function(e,r){e=new t(e),r=new t(r);var n=0,i=e.length;e.length!==r.length&&(n++,i=Math.min(e.length,r.length));var a=-1;for(;++a=t.length){a++;break}var o=t.slice(2,i-1);t.slice(i-1,i);("0002"!==n.toString("hex")&&!r||"0001"!==n.toString("hex")&&r)&&a++;o.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(i)}(0,l,f);if(3===h)return l;throw new Error("unknown padding")}}).call(t,r(1).Buffer)},function(e,t,r){var n=r(2).Buffer,i=r(10),a=r(21).pbkdf2Sync,o=r(13),s=r(171),c=r(172),u=r(173),f=r(174),h=r(175),l=r(176),d=r(177),p=r(178),b=r(179),_=f,y="Invalid mnemonic",m="Invalid entropy",g="Invalid mnemonic checksum";function v(e,t,r){for(;e.length32)throw new Error(m);if(u.length%4!=0)throw new Error(m);var f=n.from(u);if(E(f)!==c)throw new Error(g);return f.toString("hex")}function A(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),t=t||_,e.length<16)throw new TypeError(m);if(e.length>32)throw new TypeError(m);if(e.length%4!=0)throw new TypeError(m);var r=(k([].slice.call(e))+E(e)).match(/(.{1,11})/g).map(function(e){var r=w(e);return t[r]});return t===d?r.join(" "):r.join(" ")}e.exports={mnemonicToSeed:S,mnemonicToSeedHex:function(e,t){return S(e,t).toString("hex")},mnemonicToEntropy:x,entropyToMnemonic:A,generateMnemonic:function(e,t,r){if((e=e||128)%32!=0)throw new TypeError(m);return A((t=t||o)(e/8),r)},validateMnemonic:function(e,t){try{x(e,t)}catch(e){return!1}return!0},wordlists:{EN:f,JA:d,chinese_simplified:c,chinese_traditional:u,english:f,french:h,italian:l,japanese:d,korean:p,spanish:b}}},function(e,t,r){!function(t){"use strict";for(var r=[null,0,{}],n=10,i=44032,a=4352,o=4449,s=4519,c=19,u=21,f=28,h=u*f,l=c*h,d=function(e,t){this.codepoint=e,this.feature=t},p={},b=[],_=0;_<=255;++_)b[_]=0;var y=[function(e,t,n){return t<60||13311>8&255]>n&&(p[t]=i),i},function(e,t,r){return r?e(t,r):new d(t,null)},function(e,t,r){var n;if(t=55296&&e<=56319},d.isLowSurrogate=function(e){return e>=56320&&e<=57343},d.prototype.prepFeature=function(){this.feature||(this.feature=d.fromCharCode(this.codepoint,!0).feature)},d.prototype.toString=function(){if(this.codepoint<65536)return String.fromCharCode(this.codepoint);var e=this.codepoint-65536;return String.fromCharCode(Math.floor(e/1024)+55296,e%1024+56320)},d.prototype.getDecomp=function(){return this.prepFeature(),this.feature[0]||null},d.prototype.isCompatibility=function(){return this.prepFeature(),!!this.feature[1]&&256&this.feature[1]},d.prototype.isExclude=function(){return this.prepFeature(),!!this.feature[1]&&512&this.feature[1]},d.prototype.getCanonicalClass=function(){return this.prepFeature(),this.feature[1]?255&this.feature[1]:0},d.prototype.getComposite=function(e){if(this.prepFeature(),!this.feature[2])return null;var t=this.feature[2][e.codepoint];return t?d.fromCharCode(t):null};var m=function(e){this.str=e,this.cursor=0};m.prototype.next=function(){if(this.str&&this.cursor0;--r){if(this.resBuf[r-1].getCanonicalClass()<=e)break}this.resBuf.splice(r,0,t)}while(0!==e);return this.resBuf.shift()};var w=function(e){this.it=e,this.procBuf=[],this.resBuf=[],this.lastClass=null};w.prototype.next=function(){for(;0===this.resBuf.length;){var e=this.it.next();if(!e){this.resBuf=this.procBuf,this.procBuf=[];break}if(0===this.procBuf.length)this.lastClass=e.getCanonicalClass(),this.procBuf.push(e);else{var t=this.procBuf[0].getComposite(e),r=e.getCanonicalClass();t&&(this.lastClass=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function p(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return D(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return U(e).length;default:if(n)return D(e).length;t=(""+t).toLowerCase(),n=!0}}function b(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,i){if(0===e.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:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:_(e,t,r,n,i);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):_(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function _(e,t,r,n,i){var a,o=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,c/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var f=-1;for(a=r;as&&(r=s-c),a=r;a>=0;a--){for(var h=!0,l=0;li&&(n=i):n=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");n>a/2&&(n=a/2);for(var o=0;o>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function S(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:u>223?3:u>191?2:1;if(i+h<=r)switch(h){case 1:u<128&&(f=u);break;case 2:128==(192&(a=e[i+1]))&&(c=(31&u)<<6|63&a)>127&&(f=c);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(c=(15&u)<<12|(63&a)<<6|63&o)>2047&&(c<55296||c>57343)&&(f=c);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(c=(15&u)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&c<1114112&&(f=c)}null===f?(f=65533,h=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=h}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var r="",n=0;for(;nthis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return I(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return M(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return S(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return z(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}.apply(this,arguments)},c.prototype.equals=function(e){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===c.compare(this,e)},c.prototype.inspect=function(){var e="",r=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),""},c.prototype.compare=function(e,t,r,n,i){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;for(var a=i-n,o=r-t,s=Math.min(a,o),u=this.slice(n,i),f=e.slice(t,r),h=0;hi)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return m(this,e,t,r);case"utf8":case"utf-8":return g(this,e,t,r);case"ascii":return v(this,e,t,r);case"latin1":case"binary":return w(this,e,t,r);case"base64":return k(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function M(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function O(e,t,r,n){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-r,2);i>>8*(n?i:1-i)}function C(e,t,r,n){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-r,4);i>>8*(n?i:3-i)&255}function N(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function P(e,t,r,n,a){return a||N(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function j(e,t,r,n,a){return a||N(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){var r,n=this.length;if(e=~~e,t=void 0===t?n:~~t,e<0?(e+=n)<0&&(e=0):e>n&&(e=n),t<0?(t+=n)<0&&(t=0):t>n&&(t=n),t0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUInt8=function(e,t){return t||B(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||B(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||B(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||B(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||B(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||B(e,t,this.length);for(var n=this[e],i=1,a=0;++a=(i*=128)&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||B(e,t,this.length);for(var n=t,i=1,a=this[e+--n];n>0&&(i*=256);)a+=this[e+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return t||B(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||B(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){t||B(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return t||B(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||B(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||B(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||B(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||B(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||B(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||R(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):O(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):O(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):C(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);R(this,e,t,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):O(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):O(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):C(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,r){return P(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return P(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return j(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return j(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=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),e.length-t=0;--i)e[i+t]=this[i+r];else if(a<1e3||!c.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function U(e){return n.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(q,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,r,n){for(var i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}}).call(t,r(9))},function(e,t,r){var n=r(1),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},function(e,t,r){(function(e){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function a(e,t,r){if(a.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var o;"object"==typeof e?e.exports=a:t.BN=a,a.BN=a,a.wordSize=26;try{o=r(135).Buffer}catch(e){}function s(e,t,r){for(var n=0,i=Math.min(e.length,r),a=t;a=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return n}function c(e,t,r,n){for(var i=0,a=Math.min(e.length,r),o=t;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(e){return e instanceof a||null!==e&&"object"==typeof e&&e.constructor.wordSize===a.wordSize&&Array.isArray(e.words)},a.max=function(e,t){return e.cmp(t)>0?e:t},a.min=function(e,t){return e.cmp(t)<0?e:t},a.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&i++,16===t?this._parseHex(e,i):this._parseBase(e,t,i),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initNumber=function(e,t,r){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(n(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),t,r)},a.prototype._initArray=function(e,t,r){if(n("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)o=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===r)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)i=s(e,r,r+6),this.words[n]|=i<>>26-a&4194303,(a+=24)>=26&&(a-=26,n++);r+6!==t&&(i=s(e,t,r+6),this.words[n]|=i<>>26-a&4194303),this.strip()},a.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,o=a%n,s=Math.min(a,a-o)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function l(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],o=i*a,s=67108863&o,c=o/67108864|0;r.words[0]=s;for(var u=1;u>>26,h=67108863&c,l=Math.min(u,t.length-1),d=Math.max(0,u-e.length+1);d<=l;d++){var p=u-d|0;f+=(o=(i=0|e.words[p])*(a=0|t.words[d])+h)/67108864|0,h=67108863&o}r.words[u]=0|h,c=0|f}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}a.prototype.toString=function(e,t){var r;if(e=e||10,t=0|t||1,16===e||"hex"===e){r="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],d=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var b=p.modn(d).toString(e);r=(p=p.idivn(d)).isZero()?b+r:u[l-b.length]+b+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(e,t){return n(void 0!==o),this.toArrayLike(o,e,t)},a.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},a.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),a=r||Math.max(1,i);n(i<=a,"byte array longer than desired length"),n(a>0,"Requested array length <= 0"),this.strip();var o,s,c="le"===t,u=new e(a),f=this.clone();if(c){for(s=0;!f.isZero();s++)o=f.andln(255),f.iushrn(8),u[s]=o;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},a.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},a.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},a.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},a.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},a.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},a.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},a.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},a.prototype.inotn=function(e){n("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(e){return this.clone().inotn(e)},a.prototype.setn=function(e,t){n("number"==typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},a.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,o=0;o>26,this.words[o]=67108863&t;for(;0!==a&&o>26,this.words[o]=67108863&t;if(0===a&&o>>13,d=0|o[1],p=8191&d,b=d>>>13,y=0|o[2],_=8191&y,m=y>>>13,g=0|o[3],v=8191&g,w=g>>>13,k=0|o[4],E=8191&k,S=k>>>13,x=0|o[5],A=8191&x,M=x>>>13,T=0|o[6],I=8191&T,z=T>>>13,B=0|o[7],R=8191&B,O=B>>>13,C=0|o[8],N=8191&C,P=C>>>13,j=0|o[9],q=8191&j,L=j>>>13,D=0|s[0],U=8191&D,K=D>>>13,F=0|s[1],Y=8191&F,H=F>>>13,V=0|s[2],G=8191&V,X=V>>>13,W=0|s[3],J=8191&W,Z=W>>>13,$=0|s[4],Q=8191&$,ee=$>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],ae=8191&ie,oe=ie>>>13,se=0|s[7],ce=8191&se,ue=se>>>13,fe=0|s[8],he=8191&fe,le=fe>>>13,de=0|s[9],pe=8191&de,be=de>>>13;r.negative=e.negative^t.negative,r.length=19;var ye=(u+(n=Math.imul(h,U))|0)+((8191&(i=(i=Math.imul(h,K))+Math.imul(l,U)|0))<<13)|0;u=((a=Math.imul(l,K))+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(p,U),i=(i=Math.imul(p,K))+Math.imul(b,U)|0,a=Math.imul(b,K);var _e=(u+(n=n+Math.imul(h,Y)|0)|0)+((8191&(i=(i=i+Math.imul(h,H)|0)+Math.imul(l,Y)|0))<<13)|0;u=((a=a+Math.imul(l,H)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(_,U),i=(i=Math.imul(_,K))+Math.imul(m,U)|0,a=Math.imul(m,K),n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,H)|0)+Math.imul(b,Y)|0,a=a+Math.imul(b,H)|0;var me=(u+(n=n+Math.imul(h,G)|0)|0)+((8191&(i=(i=i+Math.imul(h,X)|0)+Math.imul(l,G)|0))<<13)|0;u=((a=a+Math.imul(l,X)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(v,U),i=(i=Math.imul(v,K))+Math.imul(w,U)|0,a=Math.imul(w,K),n=n+Math.imul(_,Y)|0,i=(i=i+Math.imul(_,H)|0)+Math.imul(m,Y)|0,a=a+Math.imul(m,H)|0,n=n+Math.imul(p,G)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,X)|0;var ge=(u+(n=n+Math.imul(h,J)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,J)|0))<<13)|0;u=((a=a+Math.imul(l,Z)|0)+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(E,U),i=(i=Math.imul(E,K))+Math.imul(S,U)|0,a=Math.imul(S,K),n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,H)|0)+Math.imul(w,Y)|0,a=a+Math.imul(w,H)|0,n=n+Math.imul(_,G)|0,i=(i=i+Math.imul(_,X)|0)+Math.imul(m,G)|0,a=a+Math.imul(m,X)|0,n=n+Math.imul(p,J)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(b,J)|0,a=a+Math.imul(b,Z)|0;var ve=(u+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,ee)|0)+Math.imul(l,Q)|0))<<13)|0;u=((a=a+Math.imul(l,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(A,U),i=(i=Math.imul(A,K))+Math.imul(M,U)|0,a=Math.imul(M,K),n=n+Math.imul(E,Y)|0,i=(i=i+Math.imul(E,H)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,H)|0,n=n+Math.imul(v,G)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(w,G)|0,a=a+Math.imul(w,X)|0,n=n+Math.imul(_,J)|0,i=(i=i+Math.imul(_,Z)|0)+Math.imul(m,J)|0,a=a+Math.imul(m,Z)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,ee)|0;var we=(u+(n=n+Math.imul(h,re)|0)|0)+((8191&(i=(i=i+Math.imul(h,ne)|0)+Math.imul(l,re)|0))<<13)|0;u=((a=a+Math.imul(l,ne)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(I,U),i=(i=Math.imul(I,K))+Math.imul(z,U)|0,a=Math.imul(z,K),n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,H)|0)+Math.imul(M,Y)|0,a=a+Math.imul(M,H)|0,n=n+Math.imul(E,G)|0,i=(i=i+Math.imul(E,X)|0)+Math.imul(S,G)|0,a=a+Math.imul(S,X)|0,n=n+Math.imul(v,J)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(w,J)|0,a=a+Math.imul(w,Z)|0,n=n+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(m,Q)|0,a=a+Math.imul(m,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ne)|0;var ke=(u+(n=n+Math.imul(h,ae)|0)|0)+((8191&(i=(i=i+Math.imul(h,oe)|0)+Math.imul(l,ae)|0))<<13)|0;u=((a=a+Math.imul(l,oe)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(R,U),i=(i=Math.imul(R,K))+Math.imul(O,U)|0,a=Math.imul(O,K),n=n+Math.imul(I,Y)|0,i=(i=i+Math.imul(I,H)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,H)|0,n=n+Math.imul(A,G)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(M,G)|0,a=a+Math.imul(M,X)|0,n=n+Math.imul(E,J)|0,i=(i=i+Math.imul(E,Z)|0)+Math.imul(S,J)|0,a=a+Math.imul(S,Z)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(w,Q)|0,a=a+Math.imul(w,ee)|0,n=n+Math.imul(_,re)|0,i=(i=i+Math.imul(_,ne)|0)+Math.imul(m,re)|0,a=a+Math.imul(m,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,oe)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,oe)|0;var Ee=(u+(n=n+Math.imul(h,ce)|0)|0)+((8191&(i=(i=i+Math.imul(h,ue)|0)+Math.imul(l,ce)|0))<<13)|0;u=((a=a+Math.imul(l,ue)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(N,U),i=(i=Math.imul(N,K))+Math.imul(P,U)|0,a=Math.imul(P,K),n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,H)|0)+Math.imul(O,Y)|0,a=a+Math.imul(O,H)|0,n=n+Math.imul(I,G)|0,i=(i=i+Math.imul(I,X)|0)+Math.imul(z,G)|0,a=a+Math.imul(z,X)|0,n=n+Math.imul(A,J)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(M,J)|0,a=a+Math.imul(M,Z)|0,n=n+Math.imul(E,Q)|0,i=(i=i+Math.imul(E,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(w,re)|0,a=a+Math.imul(w,ne)|0,n=n+Math.imul(_,ae)|0,i=(i=i+Math.imul(_,oe)|0)+Math.imul(m,ae)|0,a=a+Math.imul(m,oe)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(b,ce)|0,a=a+Math.imul(b,ue)|0;var Se=(u+(n=n+Math.imul(h,he)|0)|0)+((8191&(i=(i=i+Math.imul(h,le)|0)+Math.imul(l,he)|0))<<13)|0;u=((a=a+Math.imul(l,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(q,U),i=(i=Math.imul(q,K))+Math.imul(L,U)|0,a=Math.imul(L,K),n=n+Math.imul(N,Y)|0,i=(i=i+Math.imul(N,H)|0)+Math.imul(P,Y)|0,a=a+Math.imul(P,H)|0,n=n+Math.imul(R,G)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(O,G)|0,a=a+Math.imul(O,X)|0,n=n+Math.imul(I,J)|0,i=(i=i+Math.imul(I,Z)|0)+Math.imul(z,J)|0,a=a+Math.imul(z,Z)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(M,Q)|0,a=a+Math.imul(M,ee)|0,n=n+Math.imul(E,re)|0,i=(i=i+Math.imul(E,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(v,ae)|0,i=(i=i+Math.imul(v,oe)|0)+Math.imul(w,ae)|0,a=a+Math.imul(w,oe)|0,n=n+Math.imul(_,ce)|0,i=(i=i+Math.imul(_,ue)|0)+Math.imul(m,ce)|0,a=a+Math.imul(m,ue)|0,n=n+Math.imul(p,he)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,le)|0;var xe=(u+(n=n+Math.imul(h,pe)|0)|0)+((8191&(i=(i=i+Math.imul(h,be)|0)+Math.imul(l,pe)|0))<<13)|0;u=((a=a+Math.imul(l,be)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(q,Y),i=(i=Math.imul(q,H))+Math.imul(L,Y)|0,a=Math.imul(L,H),n=n+Math.imul(N,G)|0,i=(i=i+Math.imul(N,X)|0)+Math.imul(P,G)|0,a=a+Math.imul(P,X)|0,n=n+Math.imul(R,J)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(O,J)|0,a=a+Math.imul(O,Z)|0,n=n+Math.imul(I,Q)|0,i=(i=i+Math.imul(I,ee)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(M,re)|0,a=a+Math.imul(M,ne)|0,n=n+Math.imul(E,ae)|0,i=(i=i+Math.imul(E,oe)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,oe)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,ue)|0)+Math.imul(w,ce)|0,a=a+Math.imul(w,ue)|0,n=n+Math.imul(_,he)|0,i=(i=i+Math.imul(_,le)|0)+Math.imul(m,he)|0,a=a+Math.imul(m,le)|0;var Ae=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,be)|0)+Math.imul(b,pe)|0))<<13)|0;u=((a=a+Math.imul(b,be)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(q,G),i=(i=Math.imul(q,X))+Math.imul(L,G)|0,a=Math.imul(L,X),n=n+Math.imul(N,J)|0,i=(i=i+Math.imul(N,Z)|0)+Math.imul(P,J)|0,a=a+Math.imul(P,Z)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(O,Q)|0,a=a+Math.imul(O,ee)|0,n=n+Math.imul(I,re)|0,i=(i=i+Math.imul(I,ne)|0)+Math.imul(z,re)|0,a=a+Math.imul(z,ne)|0,n=n+Math.imul(A,ae)|0,i=(i=i+Math.imul(A,oe)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,oe)|0,n=n+Math.imul(E,ce)|0,i=(i=i+Math.imul(E,ue)|0)+Math.imul(S,ce)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(v,he)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(w,he)|0,a=a+Math.imul(w,le)|0;var Me=(u+(n=n+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,be)|0)+Math.imul(m,pe)|0))<<13)|0;u=((a=a+Math.imul(m,be)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(q,J),i=(i=Math.imul(q,Z))+Math.imul(L,J)|0,a=Math.imul(L,Z),n=n+Math.imul(N,Q)|0,i=(i=i+Math.imul(N,ee)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(O,re)|0,a=a+Math.imul(O,ne)|0,n=n+Math.imul(I,ae)|0,i=(i=i+Math.imul(I,oe)|0)+Math.imul(z,ae)|0,a=a+Math.imul(z,oe)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,ue)|0)+Math.imul(M,ce)|0,a=a+Math.imul(M,ue)|0,n=n+Math.imul(E,he)|0,i=(i=i+Math.imul(E,le)|0)+Math.imul(S,he)|0,a=a+Math.imul(S,le)|0;var Te=(u+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,be)|0)+Math.imul(w,pe)|0))<<13)|0;u=((a=a+Math.imul(w,be)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(q,Q),i=(i=Math.imul(q,ee))+Math.imul(L,Q)|0,a=Math.imul(L,ee),n=n+Math.imul(N,re)|0,i=(i=i+Math.imul(N,ne)|0)+Math.imul(P,re)|0,a=a+Math.imul(P,ne)|0,n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,oe)|0)+Math.imul(O,ae)|0,a=a+Math.imul(O,oe)|0,n=n+Math.imul(I,ce)|0,i=(i=i+Math.imul(I,ue)|0)+Math.imul(z,ce)|0,a=a+Math.imul(z,ue)|0,n=n+Math.imul(A,he)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(M,he)|0,a=a+Math.imul(M,le)|0;var Ie=(u+(n=n+Math.imul(E,pe)|0)|0)+((8191&(i=(i=i+Math.imul(E,be)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,be)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,n=Math.imul(q,re),i=(i=Math.imul(q,ne))+Math.imul(L,re)|0,a=Math.imul(L,ne),n=n+Math.imul(N,ae)|0,i=(i=i+Math.imul(N,oe)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,oe)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(O,ce)|0,a=a+Math.imul(O,ue)|0,n=n+Math.imul(I,he)|0,i=(i=i+Math.imul(I,le)|0)+Math.imul(z,he)|0,a=a+Math.imul(z,le)|0;var ze=(u+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,be)|0)+Math.imul(M,pe)|0))<<13)|0;u=((a=a+Math.imul(M,be)|0)+(i>>>13)|0)+(ze>>>26)|0,ze&=67108863,n=Math.imul(q,ae),i=(i=Math.imul(q,oe))+Math.imul(L,ae)|0,a=Math.imul(L,oe),n=n+Math.imul(N,ce)|0,i=(i=i+Math.imul(N,ue)|0)+Math.imul(P,ce)|0,a=a+Math.imul(P,ue)|0,n=n+Math.imul(R,he)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(O,he)|0,a=a+Math.imul(O,le)|0;var Be=(u+(n=n+Math.imul(I,pe)|0)|0)+((8191&(i=(i=i+Math.imul(I,be)|0)+Math.imul(z,pe)|0))<<13)|0;u=((a=a+Math.imul(z,be)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863,n=Math.imul(q,ce),i=(i=Math.imul(q,ue))+Math.imul(L,ce)|0,a=Math.imul(L,ue),n=n+Math.imul(N,he)|0,i=(i=i+Math.imul(N,le)|0)+Math.imul(P,he)|0,a=a+Math.imul(P,le)|0;var Re=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,be)|0)+Math.imul(O,pe)|0))<<13)|0;u=((a=a+Math.imul(O,be)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(q,he),i=(i=Math.imul(q,le))+Math.imul(L,he)|0,a=Math.imul(L,le);var Oe=(u+(n=n+Math.imul(N,pe)|0)|0)+((8191&(i=(i=i+Math.imul(N,be)|0)+Math.imul(P,pe)|0))<<13)|0;u=((a=a+Math.imul(P,be)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863;var Ce=(u+(n=Math.imul(q,pe))|0)+((8191&(i=(i=Math.imul(q,be))+Math.imul(L,pe)|0))<<13)|0;return u=((a=Math.imul(L,be))+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,c[0]=ye,c[1]=_e,c[2]=me,c[3]=ge,c[4]=ve,c[5]=we,c[6]=ke,c[7]=Ee,c[8]=Se,c[9]=xe,c[10]=Ae,c[11]=Me,c[12]=Te,c[13]=Ie,c[14]=ze,c[15]=Be,c[16]=Re,c[17]=Oe,c[18]=Ce,0!==u&&(c[19]=u,r.length++),r};function p(e,t,r){return(new b).mulp(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(d=l),a.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?d(this,e,t):r<63?l(this,e,t):r<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}r.words[a]=s,n=o,o=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):p(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=a.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*t;o>=26,t+=i/67108864|0,t+=a>>>26,this.words[r]=67108863&a}return 0!==t&&(this.words[r]=t,this.length++),this},a.prototype.muln=function(e){return this.clone().imuln(e)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new a(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(t=0;t>>26-r}o&&(this.words[t]=o,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,u=0;u=0&&(0!==f||u>=i);u--){var h=0|this.words[u];this.words[u]=f<<26-a|h>>>a,f=h&s}return c&&0!==f&&(c.words[c.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},a.prototype.shln=function(e){return this.clone().ishln(e)},a.prototype.ushln=function(e){return this.clone().iushln(e)},a.prototype.shrn=function(e){return this.clone().ishrn(e)},a.prototype.ushrn=function(e){return this.clone().iushrn(e)},a.prototype.testn=function(e){n("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},a.prototype.isubn=function(e){if(n("number"==typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&a}for(;i>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new a(null)).length=c+1,s.words=new Array(s.length);for(var u=0;u=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(e)),{div:i,mod:o}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(e)),{div:s.div,mod:o}):e.length>this.length||this.cmp(e)<0?{div:new a(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new a(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new a(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,o,s},a.prototype.div=function(e){return this.divmod(e,"div",!1).div},a.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},a.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},a.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},a.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},a.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},a.prototype.divn=function(e){return this.clone().idivn(e)},a.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new a(1),o=new a(0),s=new a(0),c=new a(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var f=r.clone(),h=t.clone();!t.isZero();){for(var l=0,d=1;0==(t.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(t.iushrn(l);l-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(f),o.isub(h)),i.iushrn(1),o.iushrn(1);for(var p=0,b=1;0==(r.words[0]&b)&&p<26;++p,b<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(f),c.isub(h)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),o.isub(c)):(r.isub(t),s.isub(i),c.isub(o))}return{a:s,b:c,gcd:r.iushln(u)}},a.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,o=new a(1),s=new a(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,f=1;0==(t.words[0]&f)&&u<26;++u,f<<=1);if(u>0)for(t.iushrn(u);u-- >0;)o.isOdd()&&o.iadd(c),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),o.isub(s)):(r.isub(t),s.isub(o))}return(i=0===t.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(e),i},a.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},a.prototype.invm=function(e){return this.egcd(e).a.umod(e)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(e){return this.words[0]&e},a.prototype.bincn=function(e){n("number"==typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},a.prototype.gtn=function(e){return 1===this.cmpn(e)},a.prototype.gt=function(e){return 1===this.cmp(e)},a.prototype.gten=function(e){return this.cmpn(e)>=0},a.prototype.gte=function(e){return this.cmp(e)>=0},a.prototype.ltn=function(e){return-1===this.cmpn(e)},a.prototype.lt=function(e){return-1===this.cmp(e)},a.prototype.lten=function(e){return this.cmpn(e)<=0},a.prototype.lte=function(e){return this.cmp(e)<=0},a.prototype.eqn=function(e){return 0===this.cmpn(e)},a.prototype.eq=function(e){return 0===this.cmp(e)},a.red=function(e){return new k(e)},a.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},a.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(e){return this.red=e,this},a.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},a.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},a.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},a.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},a.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},a.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},a.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},a.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},a.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var y={k256:null,p224:null,p192:null,p25519:null};function _(e,t){this.name=e,this.p=new a(t,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){_.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function g(){_.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function v(){_.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){_.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"==typeof e){var t=a._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function E(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(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)}_.prototype._tmp=function(){var e=new a(null);return e.words=new Array(Math.ceil(this.n/13)),e},_.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):r.strip(),r},_.prototype.split=function(e,t){e.iushrn(this.n,0,t)},_.prototype.imulK=function(e){return e.imul(this.k)},i(m,_),m.prototype.split=function(e,t){for(var r=Math.min(e.length,9),n=0;n>>22,i=a}i>>>=22,e.words[n-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},m.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},a._prime=function(e){if(y[e])return y[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new g;else if("p192"===e)t=new v;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new w}return y[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0==(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2==1),3===t){var r=this.m.add(new a(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);n(!i.isZero());var s=new a(1).toRed(this),c=s.redNeg(),u=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new a(2*f*f).toRed(this);0!==this.pow(f,u).cmp(c);)f.redIAdd(c);for(var h=this.pow(f,i),l=this.pow(e,i.addn(1).iushrn(1)),d=this.pow(e,i),p=o;0!==d.cmp(s);){for(var b=d,y=0;0!==b.cmp(s);y++)b=b.redSqr();n(y=0;n--){for(var u=t.words[n],f=c-1;f>=0;f--){var h=u>>f&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===f)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}c=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},a.mont=function(e){return new E(e)},i(E,k),E.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},E.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},E.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},E.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new a(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},E.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(void 0===e||e,this)}).call(t,r(134)(e))},function(e,t,r){"use strict";var n=t;n.version=r(141).version,n.utils=r(142),n.rand=r(61),n.curve=r(25),n.curves=r(147),n.ec=r(155),n.eddsa=r(159)},function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},function(e,t,r){"use strict";var n=r(75),i=r(195),a=Object.prototype.toString;function o(e){return"[object Array]"===a.call(e)}function s(e){return null!==e&&"object"==typeof e}function c(e){return"[object Function]"===a.call(e)}function u(e,t){if(null!==e&&void 0!==e)if("object"!=typeof e&&(e=[e]),o(e))for(var r=0,n=e.length;r1)for(var r=1;r>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function o(e){return 1===e.length?"0"+e:e}function s(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n>8,o=255&i;a?r.push(a,o):r.push(o)}else for(n=0;n>>0}return o},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,o=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,a,o,s){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,a,o,s){return t+n+a+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,a,o,s,c,u){var f=0,h=t;return f+=(h=h+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,a,o,s,c,u){return t+n+a+s+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},function(e,t){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){var n=r(2).Buffer,i=r(20).Transform,a=r(32).StringDecoder;function o(e){i.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(0)(o,i),o.prototype.update=function(e,t,r){"string"==typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},o.prototype.setAutoPadding=function(){},o.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},o.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},o.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},o.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){n=e}finally{r(n)}},o.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},o.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},o.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=o},function(e,t,r){"use strict";(function(t){var n=r(0),i=r(27),a=r(28),o=r(33),s=r(10);function c(e){s.call(this,"digest"),this._hash=e,this.buffers=[]}function u(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this.buffers.push(e)},c.prototype._final=function(){var e=t.concat(this.buffers),r=this._hash(e);return this.buffers=null,r},n(u,s),u.prototype._update=function(e){this._hash.update(e)},u.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new c(i):new u("rmd160"===e||"ripemd160"===e?new a:o(e))}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(21),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=h;var a=r(15);a.inherits=r(0);var o=r(43),s=r(31);a.inherits(h,o);for(var c=i(s.prototype),u=0;u=8*this._finalSize&&(this._update(this._block),this._block.fill(0)),this._block.writeInt32BE(t,this._blockSize-4);var r=this._update(this._block)||this._hash();return e?r.toString(e):r},r.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=r}).call(t,r(1).Buffer)},function(e,t,r){"use strict";(function(t,n){var i=r(2).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,r){if(e>65536)throw new Error("requested too many random bytes");var o=new t.Uint8Array(e);e>0&&a.getRandomValues(o);var s=i.from(o.buffer);if("function"==typeof r)return n.nextTick(function(){r(null,s)});return s}:e.exports=function(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}}).call(t,r(9),r(7))},function(e,t,r){(function(e){function r(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===r(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===r(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===r(e)},t.isError=function(e){return"[object Error]"===r(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=e.isBuffer}).call(t,r(1).Buffer)},function(e,t,r){(function(t){e.exports=function(e,r){for(var n=Math.min(e.length,r.length),i=new t(n),a=0;a=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a0||a>0;){var f=new i;f.update(u),f.update(e),t&&f.update(t),u=f.digest();var h=0;if(o>0){var l=s.length-o;h=Math.min(o,u.length),u.copy(s,l,0,h),o-=h}if(h0){var d=c.length-a,p=Math.min(a,u.length-h);u.copy(c,d,h,h+p),a-=p}}return u.fill(0),{key:s,iv:c}}},function(e,t,r){var n=r(2).Buffer;function i(e){n.isBuffer(e)||(e=n.from(e));for(var t=e.length/4|0,r=new Array(t),i=0;i>>24]^f[p>>>16&255]^h[b>>>8&255]^l[255&y]^t[_++],o=u[p>>>24]^f[b>>>16&255]^h[y>>>8&255]^l[255&d]^t[_++],s=u[b>>>24]^f[y>>>16&255]^h[d>>>8&255]^l[255&p]^t[_++],c=u[y>>>24]^f[d>>>16&255]^h[p>>>8&255]^l[255&b]^t[_++],d=a,p=o,b=s,y=c;return a=(n[d>>>24]<<24|n[p>>>16&255]<<16|n[b>>>8&255]<<8|n[255&y])^t[_++],o=(n[p>>>24]<<24|n[b>>>16&255]<<16|n[y>>>8&255]<<8|n[255&d])^t[_++],s=(n[b>>>24]<<24|n[y>>>16&255]<<16|n[d>>>8&255]<<8|n[255&p])^t[_++],c=(n[y>>>24]<<24|n[d>>>16&255]<<16|n[p>>>8&255]<<8|n[255&b])^t[_++],[a>>>=0,o>>>=0,s>>>=0,c>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],c=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var r=[],n=[],i=[[],[],[],[]],a=[[],[],[],[]],o=0,s=0,c=0;c<256;++c){var u=s^s<<1^s<<2^s<<3^s<<4;u=u>>>8^255&u^99,r[o]=u,n[u]=o;var f=e[o],h=e[f],l=e[h],d=257*e[u]^16843008*u;i[0][o]=d<<24|d>>>8,i[1][o]=d<<16|d>>>16,i[2][o]=d<<8|d>>>24,i[3][o]=d,d=16843009*l^65537*h^257*f^16843008*o,a[0][u]=d<<24|d>>>8,a[1][u]=d<<16|d>>>16,a[2][u]=d<<8|d>>>24,a[3][u]=d,0===o?o=s=1:(o=f^e[e[e[l^f]]],s^=e[e[s]])}return{SBOX:r,INV_SBOX:n,SUB_MIX:i,INV_SUB_MIX:a}}();function u(e){this._key=i(e),this._reset()}u.blockSize=16,u.keySize=32,u.prototype.blockSize=u.blockSize,u.prototype.keySize=u.keySize,u.prototype._reset=function(){for(var e=this._key,t=e.length,r=t+6,n=4*(r+1),i=[],a=0;a>>24,o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o],o^=s[a/t|0]<<24):t>6&&a%t==4&&(o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o]),i[a]=i[a-t]^o}for(var u=[],f=0;f>>24]]^c.INV_SUB_MIX[1][c.SBOX[l>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[l>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&l]]}this._nRounds=r,this._keySchedule=i,this._invKeySchedule=u},u.prototype.encryptBlockRaw=function(e){return o(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},u.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),r=n.allocUnsafe(16);return r.writeUInt32BE(t[0],0),r.writeUInt32BE(t[1],4),r.writeUInt32BE(t[2],8),r.writeUInt32BE(t[3],12),r},u.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var r=o(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),a=n.allocUnsafe(16);return a.writeUInt32BE(r[0],0),a.writeUInt32BE(r[3],4),a.writeUInt32BE(r[2],8),a.writeUInt32BE(r[1],12),a},u.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},e.exports.AES=u},function(e,t,r){"use strict";var n=t;n.base=r(143),n.short=r(144),n.mont=r(145),n.edwards=r(146)},function(e,t,r){(function(t){var n=r(162),i=r(174),a=r(175),o=r(34),s=r(22);function c(e){var r;"object"!=typeof e||t.isBuffer(e)||(r=e.passphrase,e=e.key),"string"==typeof e&&(e=new t(e));var c,u,f=a(e,r),h=f.tag,l=f.data;switch(h){case"CERTIFICATE":u=n.certificate.decode(l,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(u||(u=n.PublicKey.decode(l,"der")),c=u.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return n.RSAPublicKey.decode(u.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return u.subjectPrivateKey=u.subjectPublicKey,{type:"ec",data:u};case"1.2.840.10040.4.1":return u.algorithm.params.pub_key=n.DSAparam.decode(u.subjectPublicKey.data,"der"),{type:"dsa",data:u.algorithm.params};default:throw new Error("unknown key id "+c)}throw new Error("unknown key type "+h);case"ENCRYPTED PRIVATE KEY":l=function(e,r){var n=e.algorithm.decrypt.kde.kdeparams.salt,a=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),c=i[e.algorithm.decrypt.cipher.algo.join(".")],u=e.algorithm.decrypt.cipher.iv,f=e.subjectPrivateKey,h=parseInt(c.split("-")[1],10)/8,l=s.pbkdf2Sync(r,n,a,h),d=o.createDecipheriv(c,l,u),p=[];return p.push(d.update(f)),p.push(d.final()),t.concat(p)}(l=n.EncryptedPrivateKey.decode(l,"der"),r);case"PRIVATE KEY":switch(c=(u=n.PrivateKey.decode(l,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return n.RSAPrivateKey.decode(u.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:u.algorithm.curve,privateKey:n.ECPrivateKey.decode(u.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return u.algorithm.params.priv_key=n.DSAparam.decode(u.subjectPrivateKey,"der"),{type:"dsa",params:u.algorithm.params};default:throw new Error("unknown key id "+c)}throw new Error("unknown key type "+h);case"RSA PUBLIC KEY":return n.RSAPublicKey.decode(l,"der");case"RSA PRIVATE KEY":return n.RSAPrivateKey.decode(l,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:n.DSAPrivateKey.decode(l,"der")};case"EC PRIVATE KEY":return{curve:(l=n.ECPrivateKey.decode(l,"der")).parameters.value,privateKey:l.privateKey};default:throw new Error("unknown key type "+h)}}e.exports=c,c.signature=n.signature}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(87);function i(e,t){e[t>>5]|=128<>>9<<4)]=t;for(var r=1732584193,n=-271733879,i=-1732584194,a=271733878,h=0;h>>32-s,r);var o,s}function o(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function s(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function f(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}e.exports=function(e){return n(e,i)}},function(e,t,r){"use strict";(function(t){var n=r(0),i=r(88);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function o(e,t){return e<>>32-t}function s(e,t,r,n,i,a,s,c){return o(e+(t^r^n)+a+s|0,c)+i|0}function c(e,t,r,n,i,a,s,c){return o(e+(t&r|~t&n)+a+s|0,c)+i|0}function u(e,t,r,n,i,a,s,c){return o(e+((t|~r)^n)+a+s|0,c)+i|0}function f(e,t,r,n,i,a,s,c){return o(e+(t&n|r&~n)+a+s|0,c)+i|0}function h(e,t,r,n,i,a,s,c){return o(e+(t^(r|~n))+a+s|0,c)+i|0}n(a,i),a.prototype._update=function(){for(var e=new Array(16),t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,a=this._d,l=this._e;l=s(l,r=s(r,n,i,a,l,e[0],0,11),n,i=o(i,10),a,e[1],0,14),n=s(n=o(n,10),i=s(i,a=s(a,l,r,n,i,e[2],0,15),l,r=o(r,10),n,e[3],0,12),a,l=o(l,10),r,e[4],0,5),a=s(a=o(a,10),l=s(l,r=s(r,n,i,a,l,e[5],0,8),n,i=o(i,10),a,e[6],0,7),r,n=o(n,10),i,e[7],0,9),r=s(r=o(r,10),n=s(n,i=s(i,a,l,r,n,e[8],0,11),a,l=o(l,10),r,e[9],0,13),i,a=o(a,10),l,e[10],0,14),i=s(i=o(i,10),a=s(a,l=s(l,r,n,i,a,e[11],0,15),r,n=o(n,10),i,e[12],0,6),l,r=o(r,10),n,e[13],0,7),l=c(l=o(l,10),r=s(r,n=s(n,i,a,l,r,e[14],0,9),i,a=o(a,10),l,e[15],0,8),n,i=o(i,10),a,e[7],1518500249,7),n=c(n=o(n,10),i=c(i,a=c(a,l,r,n,i,e[4],1518500249,6),l,r=o(r,10),n,e[13],1518500249,8),a,l=o(l,10),r,e[1],1518500249,13),a=c(a=o(a,10),l=c(l,r=c(r,n,i,a,l,e[10],1518500249,11),n,i=o(i,10),a,e[6],1518500249,9),r,n=o(n,10),i,e[15],1518500249,7),r=c(r=o(r,10),n=c(n,i=c(i,a,l,r,n,e[3],1518500249,15),a,l=o(l,10),r,e[12],1518500249,7),i,a=o(a,10),l,e[0],1518500249,12),i=c(i=o(i,10),a=c(a,l=c(l,r,n,i,a,e[9],1518500249,15),r,n=o(n,10),i,e[5],1518500249,9),l,r=o(r,10),n,e[2],1518500249,11),l=c(l=o(l,10),r=c(r,n=c(n,i,a,l,r,e[14],1518500249,7),i,a=o(a,10),l,e[11],1518500249,13),n,i=o(i,10),a,e[8],1518500249,12),n=u(n=o(n,10),i=u(i,a=u(a,l,r,n,i,e[3],1859775393,11),l,r=o(r,10),n,e[10],1859775393,13),a,l=o(l,10),r,e[14],1859775393,6),a=u(a=o(a,10),l=u(l,r=u(r,n,i,a,l,e[4],1859775393,7),n,i=o(i,10),a,e[9],1859775393,14),r,n=o(n,10),i,e[15],1859775393,9),r=u(r=o(r,10),n=u(n,i=u(i,a,l,r,n,e[8],1859775393,13),a,l=o(l,10),r,e[1],1859775393,15),i,a=o(a,10),l,e[2],1859775393,14),i=u(i=o(i,10),a=u(a,l=u(l,r,n,i,a,e[7],1859775393,8),r,n=o(n,10),i,e[0],1859775393,13),l,r=o(r,10),n,e[6],1859775393,6),l=u(l=o(l,10),r=u(r,n=u(n,i,a,l,r,e[13],1859775393,5),i,a=o(a,10),l,e[11],1859775393,12),n,i=o(i,10),a,e[5],1859775393,7),n=f(n=o(n,10),i=f(i,a=u(a,l,r,n,i,e[12],1859775393,5),l,r=o(r,10),n,e[1],2400959708,11),a,l=o(l,10),r,e[9],2400959708,12),a=f(a=o(a,10),l=f(l,r=f(r,n,i,a,l,e[11],2400959708,14),n,i=o(i,10),a,e[10],2400959708,15),r,n=o(n,10),i,e[0],2400959708,14),r=f(r=o(r,10),n=f(n,i=f(i,a,l,r,n,e[8],2400959708,15),a,l=o(l,10),r,e[12],2400959708,9),i,a=o(a,10),l,e[4],2400959708,8),i=f(i=o(i,10),a=f(a,l=f(l,r,n,i,a,e[13],2400959708,9),r,n=o(n,10),i,e[3],2400959708,14),l,r=o(r,10),n,e[7],2400959708,5),l=f(l=o(l,10),r=f(r,n=f(n,i,a,l,r,e[15],2400959708,6),i,a=o(a,10),l,e[14],2400959708,8),n,i=o(i,10),a,e[5],2400959708,6),n=h(n=o(n,10),i=f(i,a=f(a,l,r,n,i,e[6],2400959708,5),l,r=o(r,10),n,e[2],2400959708,12),a,l=o(l,10),r,e[4],2840853838,9),a=h(a=o(a,10),l=h(l,r=h(r,n,i,a,l,e[0],2840853838,15),n,i=o(i,10),a,e[5],2840853838,5),r,n=o(n,10),i,e[9],2840853838,11),r=h(r=o(r,10),n=h(n,i=h(i,a,l,r,n,e[7],2840853838,6),a,l=o(l,10),r,e[12],2840853838,8),i,a=o(a,10),l,e[2],2840853838,13),i=h(i=o(i,10),a=h(a,l=h(l,r,n,i,a,e[10],2840853838,12),r,n=o(n,10),i,e[14],2840853838,5),l,r=o(r,10),n,e[1],2840853838,12),l=h(l=o(l,10),r=h(r,n=h(n,i,a,l,r,e[3],2840853838,13),i,a=o(a,10),l,e[8],2840853838,14),n,i=o(i,10),a,e[11],2840853838,11),n=h(n=o(n,10),i=h(i,a=h(a,l,r,n,i,e[6],2840853838,8),l,r=o(r,10),n,e[15],2840853838,5),a,l=o(l,10),r,e[13],2840853838,6),a=o(a,10);var d=this._a,p=this._b,b=this._c,y=this._d,_=this._e;_=h(_,d=h(d,p,b,y,_,e[5],1352829926,8),p,b=o(b,10),y,e[14],1352829926,9),p=h(p=o(p,10),b=h(b,y=h(y,_,d,p,b,e[7],1352829926,9),_,d=o(d,10),p,e[0],1352829926,11),y,_=o(_,10),d,e[9],1352829926,13),y=h(y=o(y,10),_=h(_,d=h(d,p,b,y,_,e[2],1352829926,15),p,b=o(b,10),y,e[11],1352829926,15),d,p=o(p,10),b,e[4],1352829926,5),d=h(d=o(d,10),p=h(p,b=h(b,y,_,d,p,e[13],1352829926,7),y,_=o(_,10),d,e[6],1352829926,7),b,y=o(y,10),_,e[15],1352829926,8),b=h(b=o(b,10),y=h(y,_=h(_,d,p,b,y,e[8],1352829926,11),d,p=o(p,10),b,e[1],1352829926,14),_,d=o(d,10),p,e[10],1352829926,14),_=f(_=o(_,10),d=h(d,p=h(p,b,y,_,d,e[3],1352829926,12),b,y=o(y,10),_,e[12],1352829926,6),p,b=o(b,10),y,e[6],1548603684,9),p=f(p=o(p,10),b=f(b,y=f(y,_,d,p,b,e[11],1548603684,13),_,d=o(d,10),p,e[3],1548603684,15),y,_=o(_,10),d,e[7],1548603684,7),y=f(y=o(y,10),_=f(_,d=f(d,p,b,y,_,e[0],1548603684,12),p,b=o(b,10),y,e[13],1548603684,8),d,p=o(p,10),b,e[5],1548603684,9),d=f(d=o(d,10),p=f(p,b=f(b,y,_,d,p,e[10],1548603684,11),y,_=o(_,10),d,e[14],1548603684,7),b,y=o(y,10),_,e[15],1548603684,7),b=f(b=o(b,10),y=f(y,_=f(_,d,p,b,y,e[8],1548603684,12),d,p=o(p,10),b,e[12],1548603684,7),_,d=o(d,10),p,e[4],1548603684,6),_=f(_=o(_,10),d=f(d,p=f(p,b,y,_,d,e[9],1548603684,15),b,y=o(y,10),_,e[1],1548603684,13),p,b=o(b,10),y,e[2],1548603684,11),p=u(p=o(p,10),b=u(b,y=u(y,_,d,p,b,e[15],1836072691,9),_,d=o(d,10),p,e[5],1836072691,7),y,_=o(_,10),d,e[1],1836072691,15),y=u(y=o(y,10),_=u(_,d=u(d,p,b,y,_,e[3],1836072691,11),p,b=o(b,10),y,e[7],1836072691,8),d,p=o(p,10),b,e[14],1836072691,6),d=u(d=o(d,10),p=u(p,b=u(b,y,_,d,p,e[6],1836072691,6),y,_=o(_,10),d,e[9],1836072691,14),b,y=o(y,10),_,e[11],1836072691,12),b=u(b=o(b,10),y=u(y,_=u(_,d,p,b,y,e[8],1836072691,13),d,p=o(p,10),b,e[12],1836072691,5),_,d=o(d,10),p,e[2],1836072691,14),_=u(_=o(_,10),d=u(d,p=u(p,b,y,_,d,e[10],1836072691,13),b,y=o(y,10),_,e[0],1836072691,13),p,b=o(b,10),y,e[4],1836072691,7),p=c(p=o(p,10),b=c(b,y=u(y,_,d,p,b,e[13],1836072691,5),_,d=o(d,10),p,e[8],2053994217,15),y,_=o(_,10),d,e[6],2053994217,5),y=c(y=o(y,10),_=c(_,d=c(d,p,b,y,_,e[4],2053994217,8),p,b=o(b,10),y,e[1],2053994217,11),d,p=o(p,10),b,e[3],2053994217,14),d=c(d=o(d,10),p=c(p,b=c(b,y,_,d,p,e[11],2053994217,14),y,_=o(_,10),d,e[15],2053994217,6),b,y=o(y,10),_,e[0],2053994217,14),b=c(b=o(b,10),y=c(y,_=c(_,d,p,b,y,e[5],2053994217,6),d,p=o(p,10),b,e[12],2053994217,9),_,d=o(d,10),p,e[2],2053994217,12),_=c(_=o(_,10),d=c(d,p=c(p,b,y,_,d,e[13],2053994217,9),b,y=o(y,10),_,e[9],2053994217,12),p,b=o(b,10),y,e[7],2053994217,5),p=s(p=o(p,10),b=c(b,y=c(y,_,d,p,b,e[10],2053994217,15),_,d=o(d,10),p,e[14],2053994217,8),y,_=o(_,10),d,e[12],0,8),y=s(y=o(y,10),_=s(_,d=s(d,p,b,y,_,e[15],0,5),p,b=o(b,10),y,e[10],0,12),d,p=o(p,10),b,e[4],0,9),d=s(d=o(d,10),p=s(p,b=s(b,y,_,d,p,e[1],0,12),y,_=o(_,10),d,e[5],0,5),b,y=o(y,10),_,e[8],0,14),b=s(b=o(b,10),y=s(y,_=s(_,d,p,b,y,e[7],0,6),d,p=o(p,10),b,e[6],0,8),_,d=o(d,10),p,e[2],0,13),_=s(_=o(_,10),d=s(d,p=s(p,b,y,_,d,e[13],0,6),b,y=o(y,10),_,e[14],0,5),p,b=o(b,10),y,e[0],0,15),p=s(p=o(p,10),b=s(b,y=s(y,_,d,p,b,e[3],0,13),_,d=o(d,10),p,e[9],0,11),y,_=o(_,10),d,e[11],0,11),y=o(y,10);var m=this._b+i+y|0;this._b=this._c+a+_|0,this._c=this._d+l+d|0,this._d=this._e+r+p|0,this._e=this._a+n+b|0,this._a=m},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 e=new t(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=a}).call(t,r(1).Buffer)},function(e,t){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function n(e){return"function"==typeof e}function i(e){return"object"==typeof e&&null!==e}function a(e){return void 0===e}e.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,r,o,s,c,u;if(this._events||(this._events={}),"error"===e&&(!this._events.error||i(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var f=new Error('Uncaught, unspecified "error" event. ('+t+")");throw f.context=t,f}if(a(r=this._events[e]))return!1;if(n(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),r.apply(this,s)}else if(i(r))for(s=Array.prototype.slice.call(arguments,1),o=(u=r.slice()).length,c=0;c0&&this._events[e].length>o&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!n(t))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(e,i),r||(r=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},r.prototype.removeListener=function(e,t){var r,a,o,s;if(!n(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(r=this._events[e]).length,a=-1,r===t||n(r.listener)&&r.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(i(r)){for(s=o;s-- >0;)if(r[s]===t||r[s].listener&&r[s].listener===t){a=s;break}if(a<0)return this;1===r.length?(r.length=0,delete this._events[e]):r.splice(a,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n(r=this._events[e]))this.removeListener(e,r);else if(r)for(;r.length;)this.removeListener(e,r[r.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?n(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(n(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,r){(t=e.exports=r(43)).Stream=t,t.Readable=t,t.Writable=r(31),t.Duplex=r(12),t.Transform=r(46),t.PassThrough=r(94)},function(e,t,r){"use strict";(function(t,n,i){var a=r(21);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=m;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?n:a;m.WritableState=_;var u=r(15);u.inherits=r(0);var f={deprecate:r(93)},h=r(44),l=r(2).Buffer,d=i.Uint8Array||function(){};var p,b=r(45);function y(){}function _(e,t){s=s||r(12),e=e||{},this.objectMode=!!e.objectMode,t instanceof s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var n=e.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i,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 u=!1===e.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(a(i,n),a(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",n)):(i(n),e._writableState.errorEmitted=!0,e.emit("error",n),S(e,t))}(e,r,n,t,i);else{var o=k(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||w(e,r),n?c(v,e,r,o,i):v(e,r,o,i)}}(t,e)},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 o(this)}function m(e){if(s=s||r(12),!(p.call(m,this)||this instanceof s))return new m(e);this._writableState=new _(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),h.call(this)}function g(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function v(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),S(e,t)}function w(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,g(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t)}else{for(;r;){var u=r.chunk,f=r.encoding,h=r.callback;if(g(e,t,!1,t.objectMode?1:u.length,u,f,h),r=r.next,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=r,t.bufferProcessing=!1}function k(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),S(e,t)})}function S(e,t){var r=k(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}u.inherits(m,h),_.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(_.prototype,"buffer",{get:f.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(m,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||e&&e._writableState instanceof _}})):p=function(e){return e instanceof this},m.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},m.prototype.write=function(e,t,r){var n,i=this._writableState,o=!1,s=(n=e,(l.isBuffer(n)||n instanceof d)&&!i.objectMode);return s&&!l.isBuffer(e)&&(e=function(e){return l.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=y),i.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),a(t,r)}(this,r):(s||function(e,t,r,n){var i=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a(n,o),i=!1),i}(this,i,e,r))&&(i.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=l.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},m.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},m.prototype._writev=null,m.prototype.end=function(e,t,r){var n=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(e,t,r){t.ending=!0,S(e,t),r&&(t.finished?a(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r)},Object.defineProperty(m.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),m.prototype.destroy=b.destroy,m.prototype._undestroy=b.undestroy,m.prototype._destroy=function(e,t){this.end(),t(e)}}).call(t,r(7),r(91).setImmediate,r(9))},function(e,t,r){"use strict";var n=r(2).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=f,this.end=h,t=3;break;default:return this.write=l,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:-1}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�".repeat(r);if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�".repeat(r+1);if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�".repeat(r+2)}}(this,e,t);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function f(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function l(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,r){(t=e.exports=function(e){e=e.toLowerCase();var r=t[e];if(!r)throw new Error(e+" is not supported (we accept pull requests)");return new r}).sha=r(99),t.sha1=r(100),t.sha224=r(101),t.sha256=r(47),t.sha384=r(102),t.sha512=r(48)},function(e,t,r){var n=r(117),i=r(125),a=r(56);t.createCipher=t.Cipher=n.createCipher,t.createCipheriv=t.Cipheriv=n.createCipheriv,t.createDecipher=t.Decipher=i.createDecipher,t.createDecipheriv=t.Decipheriv=i.createDecipheriv,t.listCiphers=t.getCiphers=function(){return Object.keys(a)}},function(e,t,r){var n={ECB:r(118),CBC:r(119),CFB:r(120),CFB8:r(121),CFB1:r(122),OFB:r(123),CTR:r(54),GCM:r(54)},i=r(56);for(var a in i)i[a].module=n[i[a].mode];e.exports=i},function(e,t,r){"use strict";t.utils=r(127),t.Cipher=r(128),t.DES=r(129),t.CBC=r(130),t.EDE=r(131)},function(e,t,r){(function(t){var n=r(3),i=r(14);function a(e,r){var i=function(e){var t=o(e);return{blinder:t.toRed(n.mont(e.modulus)).redPow(new n(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(r),a=r.modulus.byteLength(),s=(n.mont(r.modulus),new n(e).mul(i.blinder).umod(r.modulus)),c=s.toRed(n.mont(r.prime1)),u=s.toRed(n.mont(r.prime2)),f=r.coefficient,h=r.prime1,l=r.prime2,d=c.redPow(r.exponent1),p=u.redPow(r.exponent2);d=d.fromRed(),p=p.fromRed();var b=d.isub(p).imul(f).umod(h);return b.imul(l),p.iadd(b),new t(p.imul(i.unblinder).umod(r.modulus).toArray(!1,a))}function o(e){for(var t=e.modulus.byteLength(),r=new n(i(t));r.cmp(e.modulus)>=0||!r.umod(e.prime1)||!r.umod(e.prime2);)r=new n(i(t));return r}e.exports=a,a.getr=o}).call(t,r(1).Buffer)},function(e,t,r){var n=t;n.utils=r(8),n.common=r(17),n.sha=r(148),n.ripemd=r(152),n.hmac=r(153),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},function(e,t,r){e.exports=r(194)},function(e,t,r){"use strict";(function(t){var n=r(6),i=r(197),a={"Content-Type":"application/x-www-form-urlencoded"};function o(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var s,c={adapter:("undefined"!=typeof XMLHttpRequest?s=r(76):void 0!==t&&(s=r(76)),s),transformRequest:[function(e,t){return i(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};c.headers={common:{Accept:"application/json, text/plain, */*"}},n.forEach(["delete","get","head"],function(e){c.headers[e]={}}),n.forEach(["post","put","patch"],function(e){c.headers[e]=n.merge(a)}),e.exports=c}).call(t,r(7))},function(e,t){e.exports={dispatchNodeURL:"https://dispatch.pokt.network",dispatchPath:"/v1/dispatch",reportPath:"/v1/report",relayPath:"/v1/relay/"}},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,r){"use strict";(function(t,n){var i=r(21);e.exports=g;var a,o=r(42);g.ReadableState=m;r(29).EventEmitter;var s=function(e,t){return e.listeners(t).length},c=r(44),u=r(2).Buffer,f=t.Uint8Array||function(){};var h=r(15);h.inherits=r(0);var l=r(89),d=void 0;d=l&&l.debuglog?l.debuglog("stream"):function(){};var p,b=r(90),y=r(45);h.inherits(g,c);var _=["error","close","destroy","pause","resume"];function m(e,t){a=a||r(12),e=e||{},this.objectMode=!!e.objectMode,t instanceof a&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var n=e.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new b,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(p||(p=r(32).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function g(e){if(a=a||r(12),!(this instanceof g))return new g(e);this._readableState=new m(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),c.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,u.isBuffer(n)||n instanceof f||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?w(e,o,t,!1):A(e,o)):w(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(d("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i(x,e):x(e))}function x(e){d("emit readable"),e.emit("readable"),z(e)}function A(e,t){t.readingMore||(t.readingMore=!0,i(M,e,t))}function M(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;ea.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=u.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function R(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i(O,t,e))}function O(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function C(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return d("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?R(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&R(this),null;var n,i=t.needReadable;return d("need readable",i),(0===t.length||t.length-e0?B(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&R(this)),null!==n&&this.emit("data",n),n},g.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},g.prototype.pipe=function(e,t){var r=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,d("pipe count=%d opts=%j",a.pipesCount,t);var c=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:g;function u(t,n){d("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,d("cleanup"),e.removeListener("close",_),e.removeListener("finish",m),e.removeListener("drain",h),e.removeListener("error",y),e.removeListener("unpipe",u),r.removeListener("end",f),r.removeListener("end",g),r.removeListener("data",b),l=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function f(){d("onend"),e.end()}a.endEmitted?i(c):r.once("end",c),e.on("unpipe",u);var h=function(e){return function(){var t=e._readableState;d("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,z(e))}}(r);e.on("drain",h);var l=!1;var p=!1;function b(t){d("ondata"),p=!1,!1!==e.write(t)||p||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==C(a.pipes,e))&&!l&&(d("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,p=!0),r.pause())}function y(t){d("onerror",t),g(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",m),g()}function m(){d("onfinish"),e.removeListener("close",_),g()}function g(){d("unpipe"),r.unpipe(e)}return r.on("data",b),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",y),e.once("close",_),e.once("finish",m),e.emit("pipe",r),a.flowing||(d("pipe resume"),r.resume()),e},g.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function l(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(s,i),s.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},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,d=0|this._e,p=0|this._f,b=0|this._g,y=0|this._h,_=0;_<16;++_)r[_]=e.readInt32BE(4*_);for(;_<64;++_)r[_]=0|(((t=r[_-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[_-7]+l(r[_-15])+r[_-16];for(var m=0;m<64;++m){var g=y+h(d)+c(d,p,b)+a[m]+r[m]|0,v=f(n)+u(n,i,o)|0;y=b,b=p,p=d,d=s+g|0,s=o,o=i,i=n,n=g+v|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=d+this._e|0,this._f=p+this._f|0,this._g=b+this._g|0,this._h=y+this._h|0},s.prototype._hash=function(){var e=new t(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(13),a=[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],o=new Array(160);function s(){this.init(),this._w=o,i.call(this,128,112)}function c(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function l(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function d(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function p(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function b(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function y(e,t){return e>>>0>>0?1:0}n(s,i),s.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},s.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,_=0|this._fh,m=0|this._gh,g=0|this._hh,v=0|this._al,w=0|this._bl,k=0|this._cl,E=0|this._dl,S=0|this._el,x=0|this._fl,A=0|this._gl,M=0|this._hl,T=0;T<32;T+=2)t[T]=e.readInt32BE(4*T),t[T+1]=e.readInt32BE(4*T+4);for(;T<160;T+=2){var I=t[T-30],z=t[T-30+1],B=l(I,z),R=d(z,I),O=p(I=t[T-4],z=t[T-4+1]),C=b(z,I),N=t[T-14],P=t[T-14+1],j=t[T-32],q=t[T-32+1],L=R+P|0,D=B+N+y(L,R)|0;D=(D=D+O+y(L=L+C|0,C)|0)+j+y(L=L+q|0,q)|0,t[T]=D,t[T+1]=L}for(var U=0;U<160;U+=2){D=t[U],L=t[U+1];var K=u(r,n,i),F=u(v,w,k),Y=f(r,v),H=f(v,r),V=h(s,S),G=h(S,s),X=a[U],W=a[U+1],J=c(s,_,m),Z=c(S,x,A),$=M+G|0,Q=g+V+y($,M)|0;Q=(Q=(Q=Q+J+y($=$+Z|0,Z)|0)+X+y($=$+W|0,W)|0)+D+y($=$+L|0,L)|0;var ee=H+F|0,te=Y+K+y(ee,H)|0;g=m,M=A,m=_,A=x,_=s,x=S,s=o+Q+y(S=E+$|0,E)|0,o=i,E=k,i=n,k=w,n=r,w=v,r=Q+te+y(v=$+ee|0,$)|0}this._al=this._al+v|0,this._bl=this._bl+w|0,this._cl=this._cl+k|0,this._dl=this._dl+E|0,this._el=this._el+S|0,this._fl=this._fl+x|0,this._gl=this._gl+A|0,this._hl=this._hl+M|0,this._ah=this._ah+r+y(this._al,v)|0,this._bh=this._bh+n+y(this._bl,w)|0,this._ch=this._ch+i+y(this._cl,k)|0,this._dh=this._dh+o+y(this._dl,E)|0,this._eh=this._eh+s+y(this._el,S)|0,this._fh=this._fh+_+y(this._fl,x)|0,this._gh=this._gh+m+y(this._gl,A)|0,this._hh=this._hh+g+y(this._hl,M)|0},s.prototype._hash=function(){var e=new t(64);function r(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return r(this._ah,this._al,0),r(this._bh,this._bl,8),r(this._ch,this._cl,16),r(this._dh,this._dl,24),r(this._eh,this._el,32),r(this._fh,this._fl,40),r(this._gh,this._gl,48),r(this._hh,this._hl,56),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(0),i=r(111),a=r(10),o=r(2).Buffer,s=r(27),c=r(28),u=r(33),f=o.alloc(128);function h(e,t){a.call(this,"digest"),"string"==typeof t&&(t=o.from(t));var r="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>r)?t=("rmd160"===e?new c:u(e)).update(t).digest():t.lengthr||t!=t)throw new TypeError("Bad key length")}},function(e,t,r){(function(t){var r;t.browser?r="utf-8":r=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=r}).call(t,r(7))},function(e,t,r){var n=r(27),i=r(28),a=r(33),o=r(51),s=r(52),c=r(2).Buffer,u=c.alloc(128),f={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var o=function(e){return"rmd160"===e||"ripemd160"===e?i:"md5"===e?n:function(t){return a(e).update(t).digest()}}(e),s="sha512"===e||"sha384"===e?128:64;t.length>s?t=o(t):t.lengthe;)r.ishrn(1);if(r.isEven()&&r.iadd(s),r.testn(1)||r.iadd(c),t.cmp(c)){if(!t.cmp(u))for(;r.mod(f).cmp(h);)r.iadd(d)}else for(;r.mod(a).cmp(l);)r.iadd(d);if(y(p=r.shrn(1))&&y(r)&&_(p)&&_(r)&&o.test(p)&&o.test(r))return r}}},function(e,t,r){var n=r(3),i=r(61);function a(e){this.rand=e||new i.Rand}e.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),r=Math.ceil(t/8);do{var i=new n(this.rand.generate(r))}while(i.cmp(e)>=0);return i},a.prototype._randrange=function(e,t){var r=t.sub(e);return e.add(this._randbelow(r))},a.prototype.test=function(e,t,r){var i=e.bitLength(),a=n.mont(e),o=new n(1).toRed(a);t||(t=Math.max(1,i/48|0));for(var s=e.subn(1),c=0;!s.testn(c);c++);for(var u=e.shrn(c),f=s.toRed(a);t>0;t--){var h=this._randrange(new n(2),s);r&&r(h);var l=h.toRed(a).redPow(u);if(0!==l.cmp(o)&&0!==l.cmp(f)){for(var d=1;d0;t--){var f=this._randrange(new n(2),o),h=e.gcd(f);if(0!==h.cmpn(1))return h;var l=f.toRed(i).redPow(c);if(0!==l.cmp(a)&&0!==l.cmp(u)){for(var d=1;d>8,o=255&i;a?r.push(a,o):r.push(o)}return r},n.zero2=i,n.toHex=a,n.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,r){"use strict";var n=r(8).rotr32;function i(e,t,r){return e&t^~e&r}function a(e,t,r){return e&t^e&r^t&r}function o(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?o(t,r,n):2===e?a(t,r,n):void 0},t.ch32=i,t.maj32=a,t.p32=o,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},function(e,t,r){"use strict";var n=r(8),i=r(17),a=r(63),o=r(5),s=n.sum32,c=n.sum32_4,u=n.sum32_5,f=a.ch32,h=a.maj32,l=a.s0_256,d=a.s1_256,p=a.g0_256,b=a.g1_256,y=i.BlockHash,_=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function m(){if(!(this instanceof m))return new m;y.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=_,this.W=new Array(64)}n.inherits(m,y),e.exports=m,m.blockSize=512,m.outSize=256,m.hmacStrength=192,m.padLength=64,m.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n>6],i=0==(32&r);if(31==(31&r)){var a=r;for(r=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;r<<=7,r|=127&a}}else r&=31;return{cls:n,primitive:i,tag:r,tagStr:s.tag[r]}}function h(e,t,r){var n=e.readUInt8(r);if(e.isError(n))return n;if(!t&&128===n)return null;if(0==(128&n))return n;var i=127&n;if(i>4)return e.error("length octect is too long");n=0;for(var a=0;a=31)return n.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=s.tagClassByName[r||"universal"]<<6}(e,t,r,this.reporter);if(n.length<128)return(a=new i(2))[0]=o,a[1]=n.length,this._createEncoderBuffer([a,n]);for(var c=1,u=n.length;u>=256;u>>=8)c++;(a=new i(2+c))[0]=o,a[1]=128|c;u=1+c;for(var f=n.length;f>0;u--,f>>=8)a[u]=255&f;return this._createEncoderBuffer([a,n])},u.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var r=new i(2*e.length),n=0;n=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var a=0;for(n=0;n=128;o>>=7)a++}var s=new i(a),c=s.length-1;for(n=e.length-1;n>=0;n--){o=e[n];for(s[c--]=127&o;(o>>=7)>0;)s[c--]=128|127&o}return this._createEncoderBuffer(s)},u.prototype._encodeTime=function(e,t){var r,n=new Date(e);return"gentime"===t?r=[f(n.getFullYear()),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):"utctime"===t?r=[f(n.getFullYear()%100),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(r,"octstr")},u.prototype._encodeNull=function(){return this._createEncoderBuffer("")},u.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!i.isBuffer(e)){var r=e.toArray();!e.sign&&128&r[0]&&r.unshift(0),e=new i(r)}if(i.isBuffer(e)){var n=e.length;0===e.length&&n++;var a=new i(n);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);n=1;for(var o=e;o>=256;o>>=8)n++;for(o=(a=new Array(n)).length-1;o>=0;o--)a[o]=255&e,e>>=8;return 128&a[0]&&a.unshift(0),this._createEncoderBuffer(new i(a))},u.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},u.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},u.prototype._skipDefault=function(e,t,r){var n,i=this._baseState;if(null===i.default)return!1;var a=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,r).join()),a.length!==i.defaultBuffer.length)return!1;for(n=0;nparseInt(e)/1e6,mutez:function(e){return new n(new n(e).toFixed(6)).multipliedBy(1e6).toString()},b58cencode:function(e,r){const n=new Uint8Array(r.length+e.length);return n.set(r),n.set(e,r.length),library.bs58check.encode(new t(n,"hex"))},b58cdecode:function(e,t){return library.bs58check.decode(e).slice(t.length)},buf2hex:function(e){const t=new Uint8Array(e),r=[];for(let e=0;e3?o%3:0;return i+(o?a.substr(0,o)+n:"")+a.substr(o).replace(/(\d{3})(?=\d)/g,"$1"+n)+(t?r+Math.abs(e-a).toFixed(t).slice(2):"")}},crypto={extractEncryptedKeys:function(e,t){if(void 0===e)return!1;if(void 0===t)return!1;if(void 0===window.crypto.subtle)return!1;const r=utility.b58cdecode(e,prefix.edesk),n=r.slice(0,8),i=r.slice(8);return window.crypto.subtle.importKey("raw",new TextEncoder("utf-8").encode(t),{name:"PBKDF2"},!1,["deriveBits"]).then(function(e){return console.log(e),window.crypto.subtle.deriveBits({name:"PBKDF2",salt:n,iterations:32768,hash:{name:"SHA-512"}},e,256)}).then(function(e){console.log(e),console.log(library.sodium.crypto_secretbox_open_easy(i,new Uint8Array(24),new Uint8Array(e)));const t=library.sodium.crypto_sign_seed_keypair(library.sodium.crypto_secretbox_open_easy(i,new Uint8Array(24),new Uint8Array(e)));return{sk:utility.b58cencode(t.privateKey,prefix.edsk),pk:utility.b58cencode(t.publicKey,prefix.edpk),pkh:utility.b58cencode(library.sodium.crypto_generichash(20,t.publicKey),prefix.tz1)}})},extractKeys:function(e){switch(e.substr(0,4)){case"edsk":if(98==e.length)return{pk:utility.b58cencode(utility.b58cdecode(e,prefix.edsk).slice(32),prefix.edpk),pkh:utility.b58cencode(library.sodium.crypto_generichash(20,utility.b58cdecode(e,prefix.edsk).slice(32)),prefix.tz1),sk:e};if(54==e.length){const t=utility.b58cdecode(e,prefix.edsk2),r=library.sodium.crypto_sign_seed_keypair(t);return{sk:utility.b58cencode(r.privateKey,prefix.edsk),pk:utility.b58cencode(r.publicKey,prefix.edpk),pkh:utility.b58cencode(library.sodium.crypto_generichash(20,r.publicKey),prefix.tz1)}}break;default:return!1}},generateMnemonic:()=>library.bip39.generateMnemonic(160),checkAddress:function(e){try{return utility.b58cdecode(e,prefix.tz1),!0}catch(e){return!1}},generateKeys:function(e,t){const r=library.bip39.mnemonicToSeed(e,t).slice(0,32),n=library.sodium.crypto_sign_seed_keypair(r);return{mnemonic:e,passphrase:t,sk:utility.b58cencode(n.privateKey,prefix.edsk),pk:utility.b58cencode(n.publicKey,prefix.edpk),pkh:utility.b58cencode(library.sodium.crypto_generichash(20,n.publicKey),prefix.tz1)}},sign:function(e,t,r){var n=utility.hex2buf(e);void 0!==r&&(n=utility.mergebuf(r,n));const i=library.sodium.crypto_sign_detached(library.sodium.crypto_generichash(32,n),utility.b58cdecode(t,prefix.edsk),"uint8array");return{bytes:e,sig:i,edsig:utility.b58cencode(i,prefix.edsig),sbytes:e+utility.buf2hex(i)}},verify:function(e,t,r){return library.sodium.crypto_sign_verify_detached(t,utility.hex2buf(e),utility.b58cdecode(r,prefix.edpk))}},node={activeProvider:defaultProvider,debugMode:!1,async:!0,isZeronet:!1,setDebugMode:function(e){node.debugMode=e},setProvider:function(e,t){void 0!==t&&(node.isZeronet=t),node.activeProvider=e},resetProvider:function(){node.activeProvider=defaultProvider},query:function(e,t,r){return void 0===t?void 0===r?r="GET":t={}:void 0===r&&(r="POST"),new Promise(function(n,i){try{const a=new XMLHttpRequest;a.open(r,node.activeProvider+e,node.async),node.debugMode&&console.log("Node call",e,t),a.onload=function(){if(200===a.status)if(a.responseText){let r=JSON.parse(a.responseText);node.debugMode&&console.log("Node response",e,t,r),void 0!==r.error?i(r.error):(void 0!==r.ok&&(r=r.ok),n(r))}else i("Empty response returned");else a.responseText?(node.debugMode&&console.log(e,t,a.responseText),i(a.responseText)):(node.debugMode&&console.log(e,t,a.statusText),i(a.statusText))},a.onerror=function(){node.debugMode&&console.log(e,t,a.responseText),i(a.statusText)},"POST"==r?(a.setRequestHeader("Content-Type","application/json"),a.send(JSON.stringify(t))):a.send()}catch(e){i(e)}})}},setPocketOpts=function(e="",t="MAINNET",r=5,n=1e4,i=!0){pocketOpts={devID:e,networkName:"TEZOS",netIDs:[t],maxNodes:r,requestTimeOut:n,sslOnly:i}},pocket_node={debugMode:!1,async:!0,isZeronet:!1,setDebugMode:function(e){node.debugMode=e},query:function(e,t,n){return void 0===t?void 0===n?n="GET":t={}:void 0===n&&(n="POST"),new Promise(function(t,i){try{const u=new(0,r(191).Pocket)(pocketOpts);var a=n,o=e,s=null;"POST"==n&&(s={"Content-Type":"application/json"});var c=u.createRelay(u.configuration.blockchains[0].name,u.configuration.blockchains[0].netID,null,a,o,null,s);u.sendRelay(c,function(e,r){e&&i(e);let n=JSON.parse(r);void 0!==n.error?i(n.error):r?(void 0!==n.ok&&(n=n.ok),t(n)):i("Empty response returned")})}catch(e){i(e)}})}},pocket_rpc={call:function(e,t){return pocket_node.query(e,t)},getBalance:function(e){return pocket_node.query("/chains/main/blocks/head/context/contracts/"+e+"/balance").then(function(e){return e})},getDelegate:function(e){return pocket_node.query("/chains/main/blocks/head/context/contracts/"+e+"/delegate").then(function(e){return e||!1}).catch(function(){return!1})},getManager:function(e){return pocket_node.query("/chains/main/blocks/head/context/contracts/"+e+"/manager_key")},getCounter:function(e){return pocket_node.query("/chains/main/blocks/head/context/contracts/"+e+"/counter")},getBaker:function(e){return pocket_node.query("/chains/main/blocks/head/context/delegates/"+e)},getHead:function(){return pocket_node.query("/chains/main/blocks/head")},getHeader:function(){return pocket_node.query("/chains/main/blocks/head/header")},getHeadHash:function(){return pocket_node.query("/chains/main/blocks/head/hash")},getBallotList:function(){return pocket_node.query("/chains/main/blocks/head/votes/ballot_list")},getProposals:function(){return pocket_node.query("/chains/main/blocks/head/votes/proposals ")},getBallots:function(){return pocket_node.query("/chains/main/blocks/head/votes/ballots ")},getListings:function(){return pocket_node.query("/chains/main/blocks/head/votes/listings ")},getCurrentProposal:function(){return pocket_node.query("/chains/main/blocks/head/votes/current_proposal ")},getCurrentPeriod:function(){return pocket_node.query("/chains/main/blocks/head/votes/current_period_kind ")},getCurrentQuorum:function(){return pocket_node.query("/chains/main/blocks/head/votes/current_quorum ")},awaitOperation:function(e,t,r){if(r<=0)throw"Timeout must be more than 0";if(t<=0)throw"Interval must be more than 0";var n=Math.ceil(r/t)+1,i=0;return new Promise(function(r,a){var o=function(){rpc.getHead().then(function(s){i++;e:for(var c=3,u=!1;c>=0;c--)for(var f=0;f=n?a("Timeout"):setTimeout(o,t)})};o()})},prepareOperation:function(e,t,r,n){var i,a;void 0===r&&(r=!1),void 0===n&&(n="1269");var o=[],s=!1;o.push(pocket_node.query("/chains/main/blocks/head/header")),Array.isArray(t)?ops=t:ops=[t];for(let t=0;t=0){s=!0,o.push(rpc.getCounter(e)),o.push(rpc.getManager(e));break}return Promise.all(o).then(function(t){head=t[0],s&&r&&void 0===t[2].key&&ops.unshift({kind:"reveal",fee:n,public_key:r.pk,source:e,gas_limit:1e4,storage_limit:0}),i=parseInt(t[1])+1,void 0===counters[e]&&(counters[e]=i),i>counters[e]&&(counters[e]=i),counters[e]=i;for(let t=0;t=0&&void 0===ops[t].source&&(ops[t].source=e),["reveal","transaction","origination","delegation"].indexOf(ops[t].kind)>=0&&(void 0===ops[t].gas_limit&&(ops[t].gas_limit="0"),void 0===ops[t].storage_limit&&(ops[t].storage_limit="0"),ops[t].counter=(counters[e]++).toString(),ops[t].fee=ops[t].fee.toString(),ops[t].gas_limit=ops[t].gas_limit.toString(),ops[t].storage_limit=ops[t].storage_limit.toString(),ops[t].counter=ops[t].counter.toString());return a={branch:head.hash,contents:ops},tezos.forge(head,a)})},simulateOperation:function(e,t,r){return rpc.prepareOperation(e,t,r).then(function(e){return pocket_node.query("/chains/main/blocks/head/helpers/scripts/run_operation",e.opOb)})},sendOperation:function(e,t,r,n,i){return void 0===i&&(i="1269"),void 0===n&&(n=!1),rpc.prepareOperation(e,t,r,i).then(function(e){if(!1===r.sk)return e;if(r){var t=crypto.sign(e.opbytes,r.sk,watermark.generic);e.opbytes=t.sbytes,e.opOb.signature=t.edsig}else e.opbytes+="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",e.opOb.signature="edsigtXomBKi5CTRf5cjATJWSyaRvhfYNHqSUGrn4SdbYRcGwQrUGjzEfQDTuqHhuA8b2d8NarZjz8TRf65WkpQmo423BtomS8Q";return console.log(e),n?rpc.silentInject(e.opbytes):rpc.inject(e.opOb,e.opbytes)})},inject:function(e,t){var r=[],n=[];return pocket_node.query("/chains/main/blocks/head/helpers/preapply/operations",[e]).then(function(e){if(!Array.isArray(e))throw{error:"RPC Fail",errors:[]};for(var i=0;i=0;c--)for(var f=0;f=n?a("Timeout"):setTimeout(o,t)})};o()})},prepareOperation:function(e,t,r,n){var i,a;void 0===r&&(r=!1),void 0===n&&(n="1269");var o=[],s=!1;o.push(node.query("/chains/main/blocks/head/header")),Array.isArray(t)?ops=t:ops=[t];for(let t=0;t=0){s=!0,o.push(rpc.getCounter(e)),o.push(rpc.getManager(e));break}return Promise.all(o).then(function(t){head=t[0],s&&r&&void 0===t[2].key&&ops.unshift({kind:"reveal",fee:n,public_key:r.pk,source:e,gas_limit:1e4,storage_limit:0}),i=parseInt(t[1])+1,void 0===counters[e]&&(counters[e]=i),i>counters[e]&&(counters[e]=i),counters[e]=i;for(let t=0;t=0&&void 0===ops[t].source&&(ops[t].source=e),["reveal","transaction","origination","delegation"].indexOf(ops[t].kind)>=0&&(void 0===ops[t].gas_limit&&(ops[t].gas_limit="0"),void 0===ops[t].storage_limit&&(ops[t].storage_limit="0"),ops[t].counter=(counters[e]++).toString(),ops[t].fee=ops[t].fee.toString(),ops[t].gas_limit=ops[t].gas_limit.toString(),ops[t].storage_limit=ops[t].storage_limit.toString(),ops[t].counter=ops[t].counter.toString());return a={branch:head.hash,contents:ops},tezos.forge(head,a)})},simulateOperation:function(e,t,r){return rpc.prepareOperation(e,t,r).then(function(e){return node.query("/chains/main/blocks/head/helpers/scripts/run_operation",e.opOb)})},sendOperation:function(e,t,r,n,i){return void 0===i&&(i="1269"),void 0===n&&(n=!1),rpc.prepareOperation(e,t,r,i).then(function(e){if(!1===r.sk)return e;if(r){var t=crypto.sign(e.opbytes,r.sk,watermark.generic);e.opbytes=t.sbytes,e.opOb.signature=t.edsig}else e.opbytes+="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",e.opOb.signature="edsigtXomBKi5CTRf5cjATJWSyaRvhfYNHqSUGrn4SdbYRcGwQrUGjzEfQDTuqHhuA8b2d8NarZjz8TRf65WkpQmo423BtomS8Q";return console.log(e),n?rpc.silentInject(e.opbytes):rpc.inject(e.opOb,e.opbytes)})},inject:function(e,t){var r=[],n=[];return node.query("/chains/main/blocks/head/helpers/preapply/operations",[e]).then(function(e){if(!Array.isArray(e))throw{error:"RPC Fail",errors:[]};for(var i=0;i>24,(16711680&t)>>16,(65280&t)>>8,255&t]),utility.b58cencode(library.sodium.crypto_generichash(20,new Uint8Array(n)),prefix.KT)},originate:function(e,t,r,n,i,a,o,s,c,u){return void 0===c&&(c="10000"),void 0===u&&(u="10000"),rpc.originate(e,t,r,n,i,a,o,s,c,u)},send:function(e,t,r,n,i,a,o,s){return void 0===o&&(o="2000"),void 0===s&&(s="0"),rpc.transfer(t,r,e,n,a,i,o,s)},balance:function(e){return rpc.getBalance(e)},storage:function(e){return new Promise(function(t,r){eztz.node.query("/chains/main/blocks/head/context/contracts/"+e+"/storage").then(function(e){t(e)}).catch(function(e){r(e)})})},load:function(e){return eztz.node.query("/chains/main/blocks/head/context/contracts/"+e)},watch:function(e,t,r){let n=[];const i=function(){contract.storage(e).then(function(e){JSON.stringify(n)!=JSON.stringify(e)&&r(n=e)})};return i(),setInterval(i,1e3*t)}},tezos={forge:function(e,t,r){return void 0===r&&(r=!0),node.query("/chains/"+e.chain_id+"/blocks/"+e.hash+"/helpers/forge/operations",t).then(function(r){var n;n=utility.buf2hex(utility.b58cdecode(t.branch,prefix.b));for(var i=0;it;)o.push(a());return o}throw`Invalid raw bytes: Byte:${e} Index:${t}`};return a()}},trezor={source:function(e){var t="t"==e[0]?0:1,r=parseInt(e[2])-1,n=1==t?prefix.KT:prefix["tz"+(r+1)],i=utility.b58cdecode(e,n);return{tag:t,hash:i=1==t?utility.mergebuf(i,[0]):utility.mergebuf([r],i)}},parameter:function(e,t){var r="t"==e[0]?0:1,n=parseInt(e[2])-1,i=1==r?prefix.KT:prefix["tz"+(n+1)],a=utility.b58cdecode(e,i);return a=1==r?utility.mergebuf(a,[0]):utility.mergebuf([n],a),hex=utility.buf2hex(utility.mergebuf([r],a)),t.substr(-46)!=hex+"00"&&utility.hex2buf(t.substr(t.indexOf(hex)+hex.length+2))},operation:function(e){for(var t,r=[],n=!1,i=0;i1?console.log("Too many operations"):[r[0],n]}};var i={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0A":"True","0B":"Unit","0C":"PACK","0D":"UNPACK","0E":"BLAKE2B","0F":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1A":"CONCAT","1B":"CONS","1C":"CREATE_ACCOUNT","1D":"CREATE_CONTRACT","1E":"IMPLICIT_ACCOUNT","1F":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2A":"GT","2B":"HASH_KEY","2C":"IF","2D":"IF_CONS","2E":"IF_LEFT","2F":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3A":"MUL","3B":"NEG","3C":"NEQ","3D":"NIL","3E":"NONE","3F":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4A":"STEPS_TO_QUOTA","4B":"SUB","4C":"SWAP","4D":"TRANSFER_TOKENS","4E":"SET_DELEGATE","4F":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5A":"contract","5B":"int","5C":"key","5D":"key_hash","5E":"lambda","5F":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6A":"mutez","6B":"timestamp","6C":"unit","6D":"operation","6E":"address","6F":"SLICE"},a=function(){var e={};for(const t in i)e[i[t]]=t;return e}(),o={"00":"int","01":"string","02":"seq","03":{name:"prim",len:0,annots:!1},"04":{name:"prim",len:0,annots:!0},"05":{name:"prim",len:1,annots:!1},"06":{name:"prim",len:1,annots:!0},"07":{name:"prim",len:2,annots:!1},"08":{name:"prim",len:2,annots:!0},"09":{name:"prim",len:3,annots:!0},"0A":"bytes"},s={0:{false:"03",true:"04"},1:{false:"05",true:"06"},2:{false:"07",true:"08"},3:{true:"09"}},c={endorsement:0,seed_nonce_revelation:1,double_endorsement_evidence:2,double_baking_evidence:3,activate_account:4,proposals:5,ballot:6,reveal:7,transaction:8,origination:9,delegation:10};function u(e){var t,r,n,i,a,o;switch(t=eztz.utility.buf2hex(new Uint8Array([c[e.kind]])),c[e.kind]){case 0:case 1:if(t+=eztz.utility.buf2hex(b(e.level)),0==c[e.kind])break;if(t+=e.nonce,1==c[e.kind])break;case 2:case 3:throw"Double bake and double endorse forging is not complete";case 4:if(t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e.pkh,eztz.prefix.tz1)),t+=e.secret,4==c[e.kind])break;case 5:case 6:if(t+=d(e.source),t+=eztz.utility.buf2hex(b(e.period)),5==c[e.kind])throw"Proposal forging is not complete";if(6==c[e.kind]){t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e.proposal,eztz.prefix.P)),t+="yay"==e.ballot?"00":"nay"==e.ballot?"01":"02";break}case 7:case 8:case 9:case 10:t+=h(e.source),t+=l(e.fee),t+=l(e.counter),t+=l(e.gas_limit),t+=l(e.storage_limit),7==c[e.kind]?t+=function(e){var t;switch(e.substr(0,2)){case"ed":t="00";break;case"sp":t="01";break;case"p2":t="02"}return t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix[e.substr(0,4)]))}(e.public_key):8==c[e.kind]?(t+=l(e.amount),t+=h(e.destination),void 0!==e.parameters&&e.parameters?(t+=f(!0),t+=(a=e.parameters,y((o=tezos.encodeRawBytes(a).toLowerCase()).length/2)+o)):t+=f(!1)):9==c[e.kind]?(t+=d(e.manager_pubkey),t+=l(e.balance),t+=f(e.spendable),t+=f(e.delegatable),void 0!==e.delegate&&e.delegate?(t+=f(!0),t+=d(e.delegate)):t+=f(!1),void 0!==e.script&&e.script?(t+=f(!0),t+=(r=e.script,n=tezos.encodeRawBytes(r.code).toLowerCase(),i=tezos.encodeRawBytes(r.storage).toLowerCase(),y(n.length/2)+n+y(i.length/2)+i)):t+=f(!1)):10==c[e.kind]&&(void 0!==e.delegate&&e.delegate?(t+=f(!0),t+=d(e.delegate)):t+=f(!1))}return t}function f(e){return e?"ff":"00"}function h(e){var t;return"K"==e.substr(0,1)?(t="01",t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix.KT)),t+="00"):(t="00",t+=d(e)),t}function l(e){var t="";for(e=parseInt(e);;){if(e<128){e<16&&(t+="0"),t+=e.toString(16);break}var r=e%128;e-=r,e/=128,t+=(r+=128).toString(16)}return t}function d(e){var t;return t="0"+(parseInt(e.substr(2,1))-1).toString(),t+=eztz.utility.buf2hex(eztz.utility.b58cdecode(e,eztz.prefix[e.substr(0,3)]))}function b(e){return e=parseInt(e),arr=new Uint8Array([(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e]),arr.buffer}function y(e){return utility.buf2hex(b(e))}utility.ml2tzjson=utility.sexp2mic,utility.tzjson2arr=utility.mic2arr,utility.mlraw2json=utility.ml2mic,utility.mintotz=utility.totez,utility.tztomin=utility.mutez,eztz={library:library,prefix:prefix,watermark:watermark,utility:utility,crypto:crypto,node:node,rpc:rpc,contract:contract,trezor:trezor,tezos:tezos},eztz_pocket={library:library,prefix:prefix,watermark:watermark,utility:utility,crypto:crypto,node:pocket_node,rpc:pocket_rpc,contract:contract,trezor:trezor,tezos:tezos},e.exports={defaultProvider:defaultProvider,eztz:eztz,eztz_pocket:eztz_pocket,setPocketOpts:setPocketOpts}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";t.byteLength=function(e){return 3*e.length/4-u(e)},t.toByteArray=function(e){var t,r,n,o,s,c=e.length;o=u(e),s=new a(3*c/4-o),r=o>0?c-4:c;var f=0;for(t=0;t>16&255,s[f++]=n>>8&255,s[f++]=255&n;2===o?(n=i[e.charCodeAt(t)]<<2|i[e.charCodeAt(t+1)]>>4,s[f++]=255&n):1===o&&(n=i[e.charCodeAt(t)]<<10|i[e.charCodeAt(t+1)]<<4|i[e.charCodeAt(t+2)]>>2,s[f++]=n>>8&255,s[f++]=255&n);return s},t.fromByteArray=function(e){for(var t,r=e.length,i=r%3,a="",o=[],s=0,c=r-i;sc?c:s+16383));1===i?(t=e[r-1],a+=n[t>>2],a+=n[t<<4&63],a+="=="):2===i&&(t=(e[r-2]<<8)+e[r-1],a+=n[t>>10],a+=n[t>>4&63],a+=n[t<<2&63],a+="=");return o.push(a),o.join("")};for(var n=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function f(e,t,r){for(var i,a,o=[],s=t;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,c=(1<>1,f=-7,h=r?i-1:0,l=r?-1:1,d=e[t+h];for(h+=l,a=d&(1<<-f)-1,d>>=-f,f+=s;f>0;a=256*a+e[t+h],h+=l,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=n;f>0;o=256*o+e[t+h],h+=l,f-=8);if(0===a)a=1-u;else{if(a===c)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,n),a-=u}return(d?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,c,u=8*a-i-1,f=(1<>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,p=n?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),(t+=o+h>=1?l/c:l*Math.pow(2,1-h))*c>=2&&(o++,c/=2),o+h>=f?(s=0,o=f):o+h>=1?(s=(t*c-1)*Math.pow(2,i),o+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=p,o/=256,u-=8);e[r+d-p]|=128*b}},function(e,t){e.exports=XMLHttpRequest},function(e,t,r){var n;!function(i){"use strict";var a,o=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,s=Math.ceil,c=Math.floor,u="[BigNumber Error] ",f=u+"Number primitive has more than 15 significant digits: ",h=1e14,l=14,d=9007199254740991,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],b=1e7,y=1e9;function _(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,r,n=1,i=e.length,a=e[0]+"";nu^r?1:-1;for(s=(c=i.length)<(u=a.length)?c:u,o=0;oa[o]^r?1:-1;return c==u?0:c>u^r?1:-1}function v(e,t,r,n){if(er||e!==(e<0?s(e):c(e)))throw Error(u+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+e)}function w(e){return"[object Array]"==Object.prototype.toString.call(e)}function k(e){var t=e.c.length-1;return _(e.e/l)==t&&e.c[t]%2!=0}function E(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function S(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else t=10;h/=10,u++);return _.e=u,void(_.c=[e])}y=e+""}else{if(!o.test(y=e+""))return i(_,y,p);_.s=45==y.charCodeAt(0)?(y=y.slice(1),-1):1}(u=y.indexOf("."))>-1&&(y=y.replace(".","")),(h=y.search(/e/i))>0?(u<0&&(u=h),u+=+y.slice(h+1),y=y.substring(0,h)):u<0&&(u=y.length)}else{if(v(t,2,K.length,"Base"),y=e+"",10==t)return G(_=new F(e instanceof F?e:y),R+_.e+1,O);if(p="number"==typeof e){if(0*e!=0)return i(_,y,p,t);if(_.s=1/e<0?(y=y.slice(1),-1):1,F.DEBUG&&y.replace(/^0\.0*|\./,"").length>15)throw Error(f+e);p=!1}else _.s=45===y.charCodeAt(0)?(y=y.slice(1),-1):1;for(r=K.slice(0,t),u=h=0,b=y.length;hu){u=b;continue}}else if(!s&&(y==y.toUpperCase()&&(y=y.toLowerCase())||y==y.toLowerCase()&&(y=y.toUpperCase()))){s=!0,h=-1,u=0;continue}return i(_,e+"",p,t)}(u=(y=n(y,t,10,_.s)).indexOf("."))>-1?y=y.replace(".",""):u=y.length}for(h=0;48===y.charCodeAt(h);h++);for(b=y.length;48===y.charCodeAt(--b););if(y=y.slice(h,++b)){if(b-=h,p&&F.DEBUG&&b>15&&(e>d||e!==c(e)))throw Error(f+_.s*e);if((u=u-h-1)>j)_.c=_.e=null;else if(us){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-s)>0)for(a+1==s&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function H(e,t){var r,n,i=0;for(w(e[0])&&(e=e[0]),r=new F(e[0]);++i=10;i/=10,n++);return(r=n+r*l-1)>j?e.c=e.e=null:r=10;u/=10,i++);if((a=t-i)<0)a+=l,o=t,b=(f=y[d=0])/_[i-o-1]%10|0;else if((d=s((a+1)/l))>=y.length){if(!n)break e;for(;y.length<=d;y.push(0));f=b=0,i=1,o=(a%=l)-l+1}else{for(f=u=y[d],i=1;u>=10;u/=10,i++);b=(o=(a%=l)-l+i)<0?0:f/_[i-o-1]%10|0}if(n=n||t<0||null!=y[d+1]||(o<0?f:f%_[i-o-1]),n=r<4?(b||n)&&(0==r||r==(e.s<0?3:2)):b>5||5==b&&(4==r||n||6==r&&(a>0?o>0?f/_[i-o]:0:y[d-1])%10&1||r==(e.s<0?8:7)),t<1||!y[0])return y.length=0,n?(t-=e.e+1,y[0]=_[(l-t%l)%l],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=d,u=1,d--):(y.length=d+1,u=_[l-a],y[d]=o>0?c(f/_[i-o]%_[o])*u:0),n)for(;;){if(0==d){for(a=1,o=y[0];o>=10;o/=10,a++);for(o=y[0]+=u,u=1;o>=10;o/=10,u++);a!=u&&(e.e++,y[0]==h&&(y[0]=1));break}if(y[d]+=u,y[d]!=h)break;y[d--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>j?e.c=e.e=null:e.e>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),t[f]=r[0],t[f+1]=r[1]):(h.push(o%1e14),f+=2);f=i/2}else{if(!crypto.randomBytes)throw q=!1,Error(u+"crypto unavailable");for(t=crypto.randomBytes(i*=7);f=9e15?crypto.randomBytes(7).copy(t,f):(h.push(o%1e14),f+=7);f=i/7}if(!q)for(;f=10;o/=10,f++);fr-1&&(null==o[i+1]&&(o[i+1]=0),o[i+1]+=o[i]/r|0,o[i]%=r)}return o.reverse()}return function(t,n,i,a,o){var s,c,u,f,h,l,d,p,b=t.indexOf("."),y=R,_=O;for(b>=0&&(f=D,D=0,t=t.replace(".",""),l=(p=new F(n)).pow(t.length-b),D=f,p.c=e(S(m(l.c),l.e,"0"),10,i,"0123456789"),p.e=p.c.length),u=f=(d=e(t,n,i,o?(s=K,"0123456789"):(s="0123456789",K))).length;0==d[--f];d.pop());if(!d[0])return s.charAt(0);if(b<0?--u:(l.c=d,l.e=u,l.s=a,d=(l=r(l,p,y,_,i)).c,h=l.r,u=l.e),b=d[c=u+y+1],f=i/2,h=h||c<0||null!=d[c+1],h=_<4?(null!=b||h)&&(0==_||_==(l.s<0?3:2)):b>f||b==f&&(4==_||h||6==_&&1&d[c-1]||_==(l.s<0?8:7)),c<1||!d[0])t=h?S(s.charAt(1),-y,s.charAt(0)):s.charAt(0);else{if(d.length=c,h)for(--i;++d[--c]>i;)d[c]=0,c||(++u,d=[1].concat(d));for(f=d.length;!d[--f];);for(b=0,t="";b<=f;t+=s.charAt(d[b++]));t=S(t,u,s.charAt(0))}return t}}(),r=function(){function e(e,t,r){var n,i,a,o,s=0,c=e.length,u=t%b,f=t/b|0;for(e=e.slice();c--;)s=((i=u*(a=e[c]%b)+(n=f*a+(o=e[c]/b|0)*u)%b*b+s)/r|0)+(n/b|0)+f*o,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,a;if(r!=n)a=r>n?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,a,o,s){var u,f,d,p,b,y,m,g,v,w,k,E,S,x,A,M,T,I=n.s==i.s?1:-1,z=n.c,B=i.c;if(!(z&&z[0]&&B&&B[0]))return new F(n.s&&i.s&&(z?!B||z[0]!=B[0]:B)?z&&0==z[0]||!B?0*I:I/0:NaN);for(v=(g=new F(I)).c=[],I=a+(f=n.e-i.e)+1,s||(s=h,f=_(n.e/l)-_(i.e/l),I=I/l|0),d=0;B[d]==(z[d]||0);d++);if(B[d]>(z[d]||0)&&f--,I<0)v.push(1),p=!0;else{for(x=z.length,M=B.length,d=0,I+=2,(b=c(s/(B[0]+1)))>1&&(B=e(B,b,s),z=e(z,b,s),M=B.length,x=z.length),S=M,k=(w=z.slice(0,M)).length;k=s/2&&A++;do{if(b=0,(u=t(B,w,M,k))<0){if(E=w[0],M!=k&&(E=E*s+(w[1]||0)),(b=c(E/A))>1)for(b>=s&&(b=s-1),m=(y=e(B,b,s)).length,k=w.length;1==t(y,w,m,k);)b--,r(y,M=10;I/=10,d++);G(g,a+(g.e=d+f*l-1)+1,o,p)}else g.e=f,g.r=+p;return g}}(),x=/^(-?)0([xbo])(?=\w[\w.]*$)/i,A=/^([^.]+)\.$/,M=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,I=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,r,n){var i,a=r?t:t.replace(I,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1,e.c=e.e=null;else{if(!r&&(a=a.replace(x,function(e,t,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?e:t}),n&&(i=n,a=a.replace(A,"$1").replace(M,"0.$1")),t!=a))return new F(a,i);if(F.DEBUG)throw Error(u+"Not a"+(n?" base "+n:"")+" number: "+t);e.c=e.e=e.s=null}},z.absoluteValue=z.abs=function(){var e=new F(this);return e.s<0&&(e.s=1),e},z.comparedTo=function(e,t){return g(this,new F(e,t))},z.decimalPlaces=z.dp=function(e,t){var r,n,i,a=this;if(null!=e)return v(e,0,y),null==t?t=O:v(t,0,8),G(new F(a),e+a.e+1,t);if(!(r=a.c))return null;if(n=((i=r.length-1)-_(this.e/l))*l,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},z.dividedBy=z.div=function(e,t){return r(this,new F(e,t),R,O)},z.dividedToIntegerBy=z.idiv=function(e,t){return r(this,new F(e,t),0,1)},z.exponentiatedBy=z.pow=function(e,t){var r,n,i,a,o,f,h,d=this;if((e=new F(e)).c&&!e.isInteger())throw Error(u+"Exponent not an integer: "+e);if(null!=t&&(t=new F(t)),a=e.e>14,!d.c||!d.c[0]||1==d.c[0]&&!d.e&&1==d.c.length||!e.c||!e.c[0])return h=new F(Math.pow(+d.valueOf(),a?2-k(e):+e)),t?h.mod(t):h;if(o=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new F(NaN);(n=!o&&d.isInteger()&&t.isInteger())&&(d=d.mod(t))}else{if(e.e>9&&(d.e>0||d.e<-1||(0==d.e?d.c[0]>1||a&&d.c[1]>=24e7:d.c[0]<8e13||a&&d.c[0]<=9999975e7)))return i=d.s<0&&k(e)?-0:0,d.e>-1&&(i=1/i),new F(o?1/i:i);D&&(i=s(D/l+2))}for(a?(r=new F(.5),f=k(e)):f=e%2,o&&(e.s=1),h=new F(B);;){if(f){if(!(h=h.times(d)).c)break;i?h.c.length>i&&(h.c.length=i):n&&(h=h.mod(t))}if(a){if(G(e=e.times(r),e.e+1,1),!e.c[0])break;a=e.e>14,f=k(e)}else{if(!(e=c(e/2)))break;f=e%2}d=d.times(d),i?d.c&&d.c.length>i&&(d.c.length=i):n&&(d=d.mod(t))}return n?h:(o&&(h=B.div(h)),t?h.mod(t):i?G(h,D,O,void 0):h)},z.integerValue=function(e){var t=new F(this);return null==e?e=O:v(e,0,8),G(t,t.e+1,e)},z.isEqualTo=z.eq=function(e,t){return 0===g(this,new F(e,t))},z.isFinite=function(){return!!this.c},z.isGreaterThan=z.gt=function(e,t){return g(this,new F(e,t))>0},z.isGreaterThanOrEqualTo=z.gte=function(e,t){return 1===(t=g(this,new F(e,t)))||0===t},z.isInteger=function(){return!!this.c&&_(this.e/l)>this.c.length-2},z.isLessThan=z.lt=function(e,t){return g(this,new F(e,t))<0},z.isLessThanOrEqualTo=z.lte=function(e,t){return-1===(t=g(this,new F(e,t)))||0===t},z.isNaN=function(){return!this.s},z.isNegative=function(){return this.s<0},z.isPositive=function(){return this.s>0},z.isZero=function(){return!!this.c&&0==this.c[0]},z.minus=function(e,t){var r,n,i,a,o=this,s=o.s;if(t=(e=new F(e,t)).s,!s||!t)return new F(NaN);if(s!=t)return e.s=-t,o.plus(e);var c=o.e/l,u=e.e/l,f=o.c,d=e.c;if(!c||!u){if(!f||!d)return f?(e.s=-t,e):new F(d?o:NaN);if(!f[0]||!d[0])return d[0]?(e.s=-t,e):new F(f[0]?o:3==O?-0:0)}if(c=_(c),u=_(u),f=f.slice(),s=c-u){for((a=s<0)?(s=-s,i=f):(u=c,i=d),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(a=(s=f.length)<(t=d.length))?s:t,s=t=0;t0)for(;t--;f[r++]=0);for(t=h-1;n>s;){if(f[--n]=0;){for(r=0,p=E[i]%v,y=E[i]/v|0,a=i+(o=c);a>i;)r=((u=p*(u=k[--o]%v)+(s=y*u+(f=k[o]/v|0)*p)%v*v+m[a]+r)/g|0)+(s/v|0)+y*f,m[a--]=u%g;m[a]=r}return r?++n:m.splice(0,1),V(e,m,n)},z.negated=function(){var e=new F(this);return e.s=-e.s||null,e},z.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new F(e,t)).s,!i||!t)return new F(NaN);if(i!=t)return e.s=-t,n.minus(e);var a=n.e/l,o=e.e/l,s=n.c,c=e.c;if(!a||!o){if(!s||!c)return new F(i/0);if(!s[0]||!c[0])return c[0]?e:new F(s[0]?n:0*i)}if(a=_(a),o=_(o),s=s.slice(),i=a-o){for(i>0?(o=a,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/h|0,s[t]=h===s[t]?0:s[t]%h;return i&&(s=[i].concat(s),++o),V(e,s,o)},z.precision=z.sd=function(e,t){var r,n,i,a=this;if(null!=e&&e!==!!e)return v(e,1,y),null==t?t=O:v(t,0,8),G(new F(a),e,t);if(!(r=a.c))return null;if(n=(i=r.length-1)*l+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&a.e+1>n&&(n=a.e+1),n},z.shiftedBy=function(e){return v(e,-d,d),this.times("1e"+e)},z.squareRoot=z.sqrt=function(){var e,t,n,i,a,o=this,s=o.c,c=o.s,u=o.e,f=R+4,h=new F("0.5");if(1!==c||!s||!s[0])return new F(!c||c<0&&(!s||s[0])?NaN:s?o:1/0);if(0==(c=Math.sqrt(+o))||c==1/0?(((t=m(s)).length+u)%2==0&&(t+="0"),c=Math.sqrt(t),u=_((u+1)/2)-(u<0||u%2),n=new F(t=c==1/0?"1e"+u:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+u)):n=new F(c+""),n.c[0])for((c=(u=n.e)+f)<3&&(c=0);;)if(a=n,n=h.times(a.plus(r(o,a,f,1))),m(a.c).slice(0,c)===(t=m(n.c)).slice(0,c)){if(n.e0&&l>0){for(n=l%a||a,c=h.substr(0,n);n0&&(c+=s+h.slice(n)),f&&(c="-"+c)}r=u?c+U.decimalSeparator+((o=+U.fractionGroupSize)?u.replace(new RegExp("\\d{"+o+"}\\B","g"),"$&"+U.fractionGroupSeparator):u):c}return r},z.toFraction=function(e){var t,n,i,a,o,s,c,f,h,d,b,y,_=this,g=_.c;if(null!=e&&(!(f=new F(e)).isInteger()&&(f.c||1!==f.s)||f.lt(B)))throw Error(u+"Argument "+(f.isInteger()?"out of range: ":"not an integer: ")+e);if(!g)return _.toString();for(n=new F(B),d=i=new F(B),a=h=new F(B),y=m(g),s=n.e=y.length-_.e-1,n.c[0]=p[(c=s%l)<0?l+c:c],e=!e||f.comparedTo(n)>0?s>0?n:d:f,c=j,j=1/0,f=new F(y),h.c[0]=0;b=r(f,n,0,1),1!=(o=i.plus(b.times(a))).comparedTo(e);)i=a,a=o,d=h.plus(b.times(o=d)),h=o,n=f.minus(b.times(o=n)),f=o;return o=r(e.minus(i),a,0,1),h=h.plus(o.times(d)),i=i.plus(o.times(a)),h.s=d.s=_.s,t=r(d,a,s*=2,O).minus(_).abs().comparedTo(r(h,i,s,O).minus(_).abs())<1?[d.toString(),a.toString()]:[h.toString(),i.toString()],j=c,t},z.toNumber=function(){return+this},z.toPrecision=function(e,t){return null!=e&&v(e,1,y),Y(this,e,t,2)},z.toString=function(e){var t,r=this,i=r.s,a=r.e;return null===a?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(t=m(r.c),null==e?t=a<=C||a>=N?E(t,a):S(t,a,"0"):(v(e,2,K.length,"Base"),t=n(S(t,a,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},z.valueOf=z.toJSON=function(){var e,t=this,r=t.e;return null===r?t.toString():(e=m(t.c),e=r<=C||r>=N?E(e,r):S(e,r,"0"),t.s<0?"-"+e:e)},z._isBigNumber=!0,null!=t&&F.set(t),F}()).default=a.BigNumber=a,void 0===(n=function(){return a}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";var n=r(11),i=r(103);e.exports=i(function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()})},function(e,t,r){"use strict";(function(t){var r=4,n=new t(r);n.fill(0);e.exports=function(e,i){var a=i(function(e){if(e.length%r!=0){var i=e.length+(r-e.length%r);e=t.concat([e,n],i)}for(var a=new Array(e.length>>>2),o=0,s=0;o=this._blockSize;){for(var a=this._blockOffset;a0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},i.prototype._update=function(e){throw new Error("_update is not implemented")},i.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();return void 0!==e&&(t=t.toString(e)),t},i.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=i}).call(t,r(1).Buffer)},function(e,t){},function(e,t,r){"use strict";var n=r(2).Buffer;e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}()},function(e,t,r){(function(e){var n=Function.prototype.apply;function i(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new i(n.call(setTimeout,window,arguments),clearTimeout)},t.setInterval=function(){return new i(n.call(setInterval,window,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(window,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},r(92),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(t,r(9))},function(e,t,r){(function(e,t){!function(e,r){"use strict";if(!e.setImmediate){var n,i,a,o,s,c=1,u={},f=!1,h=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?n=function(e){t.nextTick(function(){p(e)})}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},n=function(e){a.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(i=h.documentElement,n=function(e){var t=h.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):n=function(e){setTimeout(p,0,e)}:(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),n=function(t){e.postMessage(o+t,"*")}),l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),r=0;r>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(s,i),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,f=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=r[h-3]^r[h-8]^r[h-14]^r[h-16];for(var l=0;l<80;++l){var d=~~(l/20),p=0|((t=n)<<5|t>>>27)+u(d,i,o,s)+f+r[l]+a[d];f=s,s=o,o=c(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=f+this._e|0},s.prototype._hash=function(){var e=new t(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(13),a=[1518500249,1859775393,-1894007588,-899497514],o=new Array(80);function s(){this.init(),this._w=o,i.call(this,64,56)}function c(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function f(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(s,i),s.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},s.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,h=0|this._e,l=0;l<16;++l)r[l]=e.readInt32BE(4*l);for(;l<80;++l)r[l]=(t=r[l-3]^r[l-8]^r[l-14]^r[l-16])<<1|t>>>31;for(var d=0;d<80;++d){var p=~~(d/20),b=c(n)+f(p,i,o,s)+h+r[d]+a[p]|0;h=s,s=o,o=u(i),i=n,n=b}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=h+this._e|0},s.prototype._hash=function(){var e=new t(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(47),a=r(13),o=new Array(64);function s(){this.init(),this._w=o,a.call(this,64,56)}n(s,i),s.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},s.prototype._hash=function(){var e=new t(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(0),i=r(48),a=r(13),o=new Array(160);function s(){this.init(),this._w=o,a.call(this,128,112)}n(s,i),s.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},s.prototype._hash=function(){var e=new t(48);function r(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return r(this._ah,this._al,0),r(this._bh,this._bl,8),r(this._ch,this._cl,16),r(this._dh,this._dl,24),r(this._eh,this._el,32),r(this._fh,this._fl,40),e},e.exports=s}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(104),i=r(2).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},function(e,t,r){var n=r(105);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},function(e,t,r){var n=r(2).Buffer;e.exports=function(e){for(var t={},r=e.length,i=e.charAt(0),a=0;a>=8;for(;u>0;)a.push(255&u),u>>=8}for(var f=0;e[f]===i&&f0;)n.push(s%r),s=s/r|0}for(var c="",u=0;0===t[u]&&u=0;--f)c+=e[n[f]];return c},decodeUnsafe:s,decode:function(e){var t=s(e);if(t)return t;throw new Error("Non-base"+r+" character")}}}},function(e,t,r){(function(n){var i,a,o,s;s=function(e,t){"use strict";var r="uint8array";if(0!==t._sodium_init())throw new Error("libsodium was not correctly initialized.");function n(e){if("function"==typeof TextEncoder)return new TextEncoder("utf-8").encode(e);e=unescape(encodeURIComponent(e));for(var t=new Uint8Array(e.length),r=0;r=240?(u=4,s=!0):f>=224?(u=3,s=!0):f>=192?(u=2,s=!0):f<128&&(u=1,s=!0)}while(!s);for(var h=u-(o.length-c),l=0;l>8&-39)<<8|87+(t=e[a]>>>4)+(t-10>>8&-39),i+=String.fromCharCode(255&n)+String.fromCharCode(n>>>8);return i}function o(e,t){function r(e){return e<26?e+65:e<52?e+71:e<62?e-4:62===e?43:63===e?47:65}if(void 0===t&&(t=!0),"string"==typeof e)throw new Error("input has to be an array");for(var n=2,i="",a=e.length,o=0,s=0;s0&&4*s/3%76==0&&!t&&(i+="\r\n"),o|=e[s]<<(16>>>n&24),2!==n&&e.length-s!=1||(i+=String.fromCharCode(r(o>>>18&63),r(o>>>12&63),r(o>>>6&63),r(63&o)),o=0);return i.substr(0,i.length-2+n)+(2===n?"":1===n?"=":"==")}function s(){return["uint8array","text","hex","base64"]}function c(e,t){var n=t||r;if(!u(n))throw new Error(n+" output format is not available");if(e instanceof h){if("uint8array"===n)return e.to_Uint8Array();if("text"===n)return i(e.to_Uint8Array());if("hex"===n)return a(e.to_Uint8Array());if("base64"===n)return o(e.to_Uint8Array());throw new Error('What is output format "'+n+'"?')}if("object"==typeof e){for(var s=Object.keys(e),f={},l=0;l>=8,n+=e[i]+t[r],e[i]=255&n},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,n=1,i=e.length;i-- >0;)r|=t[i]-e[i]>>8&n,n&=(t[i]^e[i])-1>>8;return r+r+n-1},e.from_base64=function(e,t){for(var r,n,i,a=e.replace(/[^A-Za-z0-9\+\/]/g,""),o=a.length,s=t?Math.ceil((3*o+1>>2)/t)*t:3*o+1>>2,c=new Uint8Array(s),u=0,f=0,h=0;h64&&i<91?i-65:i>96&&i<123?i-71:i>47&&i<58?i+4:43===i?62:47===i?63:0)<<18-6*n,3===n||o-h==1){for(r=0;r<3&&f>>(16>>>r&24)&255;u=0}return c},e.from_hex=function(e){if(!function(e){return"string"==typeof e&&/^[0-9a-f]+$/i.test(e)&&e.length%2==0}(e))throw new TypeError("The provided string doesn't look like hex data");for(var t=new Uint8Array(e.length/2),r=0;r>>1]=parseInt(e.substr(r,2),16);return t},e.from_string=n,e.increment=function(e){if(!e instanceof Uint8Array)throw new TypeError("Only Uint8Array instances can be incremented");for(var t=256,r=0,n=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,n=e.length;r0&&y(a,"hash_length must be an unsigned integer");var o=l(r=m(a,r,"message")),s=r.length;a.push(o);var u=null,d=0;void 0!=n&&(u=l(n=m(a,n,"key")),d=n.length,a.push(u));var g=new h(e|=0),v=g.address;if(a.push(v),0==(0|t._crypto_generichash(v,e,o,s,0,u,d))){var w=c(g,i);return p(a),w}b(a)},function(e,r,n){var i=[];f(n),_(i,e,"state_address"),_(i,r,"hash_length"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&y(i,"hash_length must be an unsigned integer");var a=new h(r|=0),o=a.address;if(i.push(o),0==(0|t._crypto_generichash_final(e,o,r))){var s=(t._free(e),c(a,n));return p(i),s}b(i)},function(e,r,n){var i=[];f(n);var a=null,o=0;void 0!=e&&(a=l(e=m(i,e,"key")),o=e.length,i.push(a)),_(i,r,"hash_length"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&y(i,"hash_length must be an unsigned integer");var s=new h(357).address;if(0==(0|t._crypto_generichash_init(s,a,o,r))){var c=s;return p(i),c}b(i)},function(e){var r=[];f(e);var n=new h(0|t._crypto_generichash_keybytes()),i=n.address;r.push(i),t._crypto_generichash_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n),_(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_generichash_update(e,a,o))?b(i):p(i)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_sha256_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash_sha256(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r);var i=l(e=m(n,e,"message")),a=e.length;n.push(i);var o=new h(0|t._crypto_hash_sha512_bytes()),s=o.address;if(n.push(s),0==(0|t._crypto_hash_sha512(s,i,a,0))){var u=c(o,r);return p(n),u}b(n)},function(e,r,i,a,o){var s=[];f(o),_(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(s,"subkey_len must be an unsigned integer"),_(s,r,"subkey_id"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&y(s,"subkey_id must be an unsigned integer");var u=l(i=n(i+"\0"));i.length,s.push(u),a=m(s,a,"key");var d,b=0|t._crypto_kdf_keybytes();a.length!==b&&y(s,"invalid key length"),d=l(a),s.push(d);var g=new h(0|e),v=g.address;s.push(v),t._crypto_kdf_derive_from_key(v,e,r,0,u,d);var w=c(g,o);return p(s),w},function(e){var r=[];f(e);var n=new h(0|t._crypto_kdf_keybytes()),i=n.address;r.push(i),t._crypto_kdf_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i),e=m(a,e,"clientPublicKey");var o,s=0|t._crypto_kx_publickeybytes();e.length!==s&&y(a,"invalid clientPublicKey length"),o=l(e),a.push(o),r=m(a,r,"clientSecretKey");var u,d=0|t._crypto_kx_secretkeybytes();r.length!==d&&y(a,"invalid clientSecretKey length"),u=l(r),a.push(u),n=m(a,n,"serverPublicKey");var _,g=0|t._crypto_kx_publickeybytes();n.length!==g&&y(a,"invalid serverPublicKey length"),_=l(n),a.push(_);var v=new h(0|t._crypto_kx_sessionkeybytes()),w=v.address;a.push(w);var k=new h(0|t._crypto_kx_sessionkeybytes()),E=k.address;if(a.push(E),0==(0|t._crypto_kx_client_session_keys(w,E,o,u,_))){var S=c({sharedRx:v,sharedTx:k},i);return p(a),S}b(a)},function(e){var r=[];f(e);var n=new h(0|t._crypto_kx_publickeybytes()),i=n.address;r.push(i);var a=new h(0|t._crypto_kx_secretkeybytes()),o=a.address;if(r.push(o),0==(0|t._crypto_kx_keypair(i,o))){var s=c({publicKey:n,privateKey:a},e);return p(r),s}b(r)},function(e,r){var n=[];f(r),e=m(n,e,"seed");var i,a=0|t._crypto_kx_seedbytes();e.length!==a&&y(n,"invalid seed length"),i=l(e),n.push(i);var o=new h(0|t._crypto_kx_publickeybytes()),s=o.address;n.push(s);var u=new h(0|t._crypto_kx_secretkeybytes()),d=u.address;if(n.push(d),0==(0|t._crypto_kx_seed_keypair(s,d,i))){var _=c({publicKey:o,privateKey:u},r);return p(n),_}b(n)},function(e,r,n,i){var a=[];f(i),e=m(a,e,"serverPublicKey");var o,s=0|t._crypto_kx_publickeybytes();e.length!==s&&y(a,"invalid serverPublicKey length"),o=l(e),a.push(o),r=m(a,r,"serverSecretKey");var u,d=0|t._crypto_kx_secretkeybytes();r.length!==d&&y(a,"invalid serverSecretKey length"),u=l(r),a.push(u),n=m(a,n,"clientPublicKey");var _,g=0|t._crypto_kx_publickeybytes();n.length!==g&&y(a,"invalid clientPublicKey length"),_=l(n),a.push(_);var v=new h(0|t._crypto_kx_sessionkeybytes()),w=v.address;a.push(w);var k=new h(0|t._crypto_kx_sessionkeybytes()),E=k.address;if(a.push(E),0==(0|t._crypto_kx_server_session_keys(w,E,o,u,_))){var S=c({sharedRx:v,sharedTx:k},i);return p(a),S}b(a)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_onetimeauth_keybytes();r.length!==u&&y(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_onetimeauth_bytes()),_=d.address;if(i.push(_),0==(0|t._crypto_onetimeauth(_,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),_(n,e,"state_address");var i=new h(0|t._crypto_onetimeauth_bytes()),a=i.address;if(n.push(a),0==(0|t._crypto_onetimeauth_final(e,a))){var o=(t._free(e),c(i,r));return p(n),o}b(n)},function(e,r){var n=[];f(r);var i=null;void 0!=e&&(i=l(e=m(n,e,"key")),e.length,n.push(i));var a=new h(144).address;if(0==(0|t._crypto_onetimeauth_init(a,i))){var o=a;return p(n),o}b(n)},function(e){var r=[];f(e);var n=new h(0|t._crypto_onetimeauth_keybytes()),i=n.address;r.push(i),t._crypto_onetimeauth_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n),_(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_onetimeauth_update(e,a,o))?b(i):p(i)},function(e,r,n){var i=[];e=m(i,e,"hash");var a,o=0|t._crypto_onetimeauth_bytes();e.length!==o&&y(i,"invalid hash length"),a=l(e),i.push(a);var s=l(r=m(i,r,"message")),c=r.length;i.push(s),n=m(i,n,"key");var u,f=0|t._crypto_onetimeauth_keybytes();n.length!==f&&y(i,"invalid key length"),u=l(n),i.push(u);var h=0==(0|t._crypto_onetimeauth_verify(a,s,c,0,u));return p(i),h},function(e,r,n,i,a,o,s){var u=[];f(s),_(u,e,"keyLength"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(u,"keyLength must be an unsigned integer");var d=l(r=m(u,r,"password")),g=r.length;u.push(d),n=m(u,n,"salt");var v,w=0|t._crypto_pwhash_saltbytes();n.length!==w&&y(u,"invalid salt length"),v=l(n),u.push(v),_(u,i,"opsLimit"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&y(u,"opsLimit must be an unsigned integer"),_(u,a,"memLimit"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&y(u,"memLimit must be an unsigned integer"),_(u,o,"algorithm"),("number"!=typeof o||(0|o)!==o)&&(0|o)>0&&y(u,"algorithm must be an unsigned integer");var k=new h(0|e),E=k.address;if(u.push(E),0==(0|t._crypto_pwhash(E,e,0,d,g,0,v,i,0,a,o))){var S=c(k,s);return p(u),S}b(u)},function(e,r,n,i,a,o){var s=[];f(o),_(s,e,"keyLength"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(s,"keyLength must be an unsigned integer");var u=l(r=m(s,r,"password")),d=r.length;s.push(u),n=m(s,n,"salt");var g,v=0|t._crypto_pwhash_scryptsalsa208sha256_saltbytes();n.length!==v&&y(s,"invalid salt length"),g=l(n),s.push(g),_(s,i,"opsLimit"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&y(s,"opsLimit must be an unsigned integer"),_(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&y(s,"memLimit must be an unsigned integer");var w=new h(0|e),k=w.address;if(s.push(k),0==(0|t._crypto_pwhash_scryptsalsa208sha256(k,e,0,u,d,0,g,i,0,a))){var E=c(w,o);return p(s),E}b(s)},function(e,r,n,i,a,o,s){var u=[];f(s);var d=l(e=m(u,e,"password")),g=e.length;u.push(d);var v=l(r=m(u,r,"salt")),w=r.length;u.push(v),_(u,n,"opsLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(u,"opsLimit must be an unsigned integer"),_(u,i,"r"),("number"!=typeof i||(0|i)!==i)&&(0|i)>0&&y(u,"r must be an unsigned integer"),_(u,a,"p"),("number"!=typeof a||(0|a)!==a)&&(0|a)>0&&y(u,"p must be an unsigned integer"),_(u,o,"keyLength"),("number"!=typeof o||(0|o)!==o)&&(0|o)>0&&y(u,"keyLength must be an unsigned integer");var k=new h(0|o),E=k.address;if(u.push(E),0==(0|t._crypto_pwhash_scryptsalsa208sha256_ll(d,g,v,w,n,0,i,a,E,o))){var S=c(k,s);return p(u),S}b(u)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"password")),s=e.length;a.push(o),_(a,r,"opsLimit"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&y(a,"opsLimit must be an unsigned integer"),_(a,n,"memLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(a,"memLimit must be an unsigned integer");var c=new h(0|t._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(a.push(c),0==(0|t._crypto_pwhash_scryptsalsa208sha256_str(c,o,s,0,r,0,n))){var u=t.Pointer_stringify(c);return p(a),u}b(a)},function(e,r,i){var a=[];f(i);var o=l(e=n(e+"\0"));e.length,a.push(o);var s=l(r=m(a,r,"password")),c=r.length;a.push(s);var u=0==(0|t._crypto_pwhash_scryptsalsa208sha256_str_verify(o,s,c,0));return p(a),u},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"password")),s=e.length;a.push(o),_(a,r,"opsLimit"),("number"!=typeof r||(0|r)!==r)&&(0|r)>0&&y(a,"opsLimit must be an unsigned integer"),_(a,n,"memLimit"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(a,"memLimit must be an unsigned integer");var c=new h(0|t._crypto_pwhash_strbytes()).address;if(a.push(c),0==(0|t._crypto_pwhash_str(c,o,s,0,r,0,n))){var u=t.Pointer_stringify(c);return p(a),u}b(a)},function(e,r,i){var a=[];f(i);var o=l(e=n(e+"\0"));e.length,a.push(o);var s=l(r=m(a,r,"password")),c=r.length;a.push(s);var u=0==(0|t._crypto_pwhash_str_verify(o,s,c,0));return p(a),u},function(e,r,n){var i=[];f(n),e=m(i,e,"privateKey");var a,o=0|t._crypto_scalarmult_scalarbytes();e.length!==o&&y(i,"invalid privateKey length"),a=l(e),i.push(a),r=m(i,r,"publicKey");var s,u=0|t._crypto_scalarmult_scalarbytes();r.length!==u&&y(i,"invalid publicKey length"),s=l(r),i.push(s);var d=new h(0|t._crypto_scalarmult_bytes()),_=d.address;if(i.push(_),0==(0|t._crypto_scalarmult(_,a,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_scalarmult_scalarbytes();e.length!==a&&y(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_scalarmult_base(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_secretbox_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(0|s),w=v.address;a.push(w);var k=new h(0|t._crypto_secretbox_macbytes()),E=k.address;if(a.push(E),0==(0|t._crypto_secretbox_detached(w,E,o,s,0,u,_))){var S=c({mac:k,cipher:v},i);return p(a),S}b(a)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_secretbox_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(s+t._crypto_secretbox_macbytes()|0),w=v.address;if(a.push(w),0==(0|t._crypto_secretbox_easy(w,o,s,0,u,_))){var k=c(v,i);return p(a),k}b(a)},function(e){var r=[];f(e);var n=new h(0|t._crypto_secretbox_keybytes()),i=n.address;r.push(i),t._crypto_secretbox_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"ciphertext")),u=e.length;o.push(s),r=m(o,r,"mac");var d,_=0|t._crypto_secretbox_macbytes();r.length!==_&&y(o,"invalid mac length"),d=l(r),o.push(d),n=m(o,n,"nonce");var g,v=0|t._crypto_secretbox_noncebytes();n.length!==v&&y(o,"invalid nonce length"),g=l(n),o.push(g),i=m(o,i,"key");var w,k=0|t._crypto_secretbox_keybytes();i.length!==k&&y(o,"invalid key length"),w=l(i),o.push(w);var E=new h(0|u),S=E.address;if(o.push(S),0==(0|t._crypto_secretbox_open_detached(S,s,d,u,0,g,w))){var x=c(E,a);return p(o),x}b(o)},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"ciphertext")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_secretbox_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_secretbox_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(s-t._crypto_secretbox_macbytes()|0),w=v.address;if(a.push(w),0==(0|t._crypto_secretbox_open_easy(w,o,s,0,u,_))){var k=c(v,i);return p(a),k}b(a)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_shorthash_keybytes();r.length!==u&&y(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_shorthash_bytes()),_=d.address;if(i.push(_),0==(0|t._crypto_shorthash(_,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e){var r=[];f(e);var n=new h(0|t._crypto_shorthash_keybytes()),i=n.address;r.push(i),t._crypto_shorthash_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"key");var s,u=0|t._crypto_shorthash_siphashx24_keybytes();r.length!==u&&y(i,"invalid key length"),s=l(r),i.push(s);var d=new h(0|t._crypto_shorthash_siphashx24_bytes()),_=d.address;if(i.push(_),0==(0|t._crypto_shorthash_siphashx24(_,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"privateKey");var s,u=0|t._crypto_sign_secretkeybytes();r.length!==u&&y(i,"invalid privateKey length"),s=l(r),i.push(s);var d=new h(e.length+t._crypto_sign_bytes()|0),_=d.address;if(i.push(_),0==(0|t._crypto_sign(_,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"message")),o=e.length;i.push(a),r=m(i,r,"privateKey");var s,u=0|t._crypto_sign_secretkeybytes();r.length!==u&&y(i,"invalid privateKey length"),s=l(r),i.push(s);var d=new h(0|t._crypto_sign_bytes()),_=d.address;if(i.push(_),0==(0|t._crypto_sign_detached(_,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"edPk");var i,a=0|t._crypto_sign_publickeybytes();e.length!==a&&y(n,"invalid edPk length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_pk_to_curve25519(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"edSk");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&y(n,"invalid edSk length"),i=l(e),n.push(i);var o=new h(0|t._crypto_scalarmult_scalarbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_curve25519(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&y(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_publickeybytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_pk(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r){var n=[];f(r),e=m(n,e,"privateKey");var i,a=0|t._crypto_sign_secretkeybytes();e.length!==a&&y(n,"invalid privateKey length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_seedbytes()),s=o.address;if(n.push(s),0==(0|t._crypto_sign_ed25519_sk_to_seed(s,i))){var u=c(o,r);return p(n),u}b(n)},function(e,r,n){var i=[];f(n),_(i,e,"state_address"),r=m(i,r,"privateKey");var a,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&y(i,"invalid privateKey length"),a=l(r),i.push(a);var s=new h(0|t._crypto_sign_bytes()),u=s.address;if(i.push(u),0==(0|t._crypto_sign_final_create(e,u,null,a))){var d=(t._free(e),c(s,n));return p(i),d}b(i)},function(e,r,n,i){var a=[];f(i),_(a,e,"state_address"),r=m(a,r,"signature");var o,s=0|t._crypto_sign_bytes();r.length!==s&&y(a,"invalid signature length"),o=l(r),a.push(o),n=m(a,n,"publicKey");var c,u=0|t._crypto_sign_publickeybytes();n.length!==u&&y(a,"invalid publicKey length"),c=l(n),a.push(c);var h=0==(0|t._crypto_sign_final_verify(e,o,c));return p(a),h},function(e){var r=[];f(e);var n=new h(208).address;if(0==(0|t._crypto_sign_init(n))){var i=n;return p(r),i}b(r)},function(e){var r=[];f(e);var n=new h(0|t._crypto_sign_publickeybytes()),i=n.address;r.push(i);var a=new h(0|t._crypto_sign_secretkeybytes()),o=a.address;if(r.push(o),0==(0|t._crypto_sign_keypair(i,o))){var s=c({publicKey:n,privateKey:a,keyType:"ed25519"},e);return p(r),s}b(r)},function(e,r,n){var i=[];f(n);var a=l(e=m(i,e,"signedMessage")),o=e.length;i.push(a),r=m(i,r,"publicKey");var s,u=0|t._crypto_sign_publickeybytes();r.length!==u&&y(i,"invalid publicKey length"),s=l(r),i.push(s);var d=new h(o-t._crypto_sign_bytes()|0),_=d.address;if(i.push(_),0==(0|t._crypto_sign_open(_,null,a,o,0,s))){var g=c(d,n);return p(i),g}b(i)},function(e,r){var n=[];f(r),e=m(n,e,"seed");var i,a=0|t._crypto_sign_seedbytes();e.length!==a&&y(n,"invalid seed length"),i=l(e),n.push(i);var o=new h(0|t._crypto_sign_publickeybytes()),s=o.address;n.push(s);var u=new h(0|t._crypto_sign_secretkeybytes()),d=u.address;if(n.push(d),0==(0|t._crypto_sign_seed_keypair(s,d,i))){var _=c({publicKey:o,privateKey:u,keyType:"ed25519"},r);return p(n),_}b(n)},function(e,r,n){var i=[];f(n),_(i,e,"state_address");var a=l(r=m(i,r,"message_chunk")),o=r.length;i.push(a),0!=(0|t._crypto_sign_update(e,a,o))?b(i):p(i)},function(e,r,n){var i=[];e=m(i,e,"signature");var a,o=0|t._crypto_sign_bytes();e.length!==o&&y(i,"invalid signature length"),a=l(e),i.push(a);var s=l(r=m(i,r,"message")),c=r.length;i.push(s),n=m(i,n,"publicKey");var u,f=0|t._crypto_sign_publickeybytes();n.length!==f&&y(i,"invalid publicKey length"),u=l(n),i.push(u);var h=0==(0|t._crypto_sign_verify_detached(a,s,c,0,u));return p(i),h},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_stream_chacha20_ietf_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_chacha20_ietf_xor(w,o,s,0,u,_)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==g&&y(o,"invalid nonce length"),d=l(r),o.push(d),_(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_chacha20_ietf_keybytes();i.length!==w&&y(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_chacha20_ietf_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_chacha20_keybytes()),i=n.address;r.push(i),t._crypto_stream_chacha20_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_chacha20_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_stream_chacha20_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_chacha20_xor(w,o,s,0,u,_)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_chacha20_noncebytes();r.length!==g&&y(o,"invalid nonce length"),d=l(r),o.push(d),_(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_chacha20_keybytes();i.length!==w&&y(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_chacha20_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_keybytes()),i=n.address;r.push(i),t._crypto_stream_keygen(i);var a=c(n,e);return p(r),a},function(e){var r=[];f(e);var n=new h(0|t._crypto_stream_xchacha20_keybytes()),i=n.address;r.push(i),t._crypto_stream_xchacha20_keygen(i);var a=c(n,e);return p(r),a},function(e,r,n,i){var a=[];f(i);var o=l(e=m(a,e,"input_message")),s=e.length;a.push(o),r=m(a,r,"nonce");var u,d=0|t._crypto_stream_xchacha20_noncebytes();r.length!==d&&y(a,"invalid nonce length"),u=l(r),a.push(u),n=m(a,n,"key");var _,g=0|t._crypto_stream_xchacha20_keybytes();n.length!==g&&y(a,"invalid key length"),_=l(n),a.push(_);var v=new h(0|s),w=v.address;if(a.push(w),0===t._crypto_stream_xchacha20_xor(w,o,s,0,u,_)){var k=c(v,i);return p(a),k}b(a)},function(e,r,n,i,a){var o=[];f(a);var s=l(e=m(o,e,"input_message")),u=e.length;o.push(s),r=m(o,r,"nonce");var d,g=0|t._crypto_stream_xchacha20_noncebytes();r.length!==g&&y(o,"invalid nonce length"),d=l(r),o.push(d),_(o,n,"nonce_increment"),("number"!=typeof n||(0|n)!==n)&&(0|n)>0&&y(o,"nonce_increment must be an unsigned integer"),i=m(o,i,"key");var v,w=0|t._crypto_stream_xchacha20_keybytes();i.length!==w&&y(o,"invalid key length"),v=l(i),o.push(v);var k=new h(0|u),E=k.address;if(o.push(E),0===t._crypto_stream_xchacha20_xor_ic(E,s,u,0,d,n,0,v)){var S=c(k,a);return p(o),S}b(o)},function(e,r){var n=[];f(r),_(n,e,"length"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(n,"length must be an unsigned integer");var i=new h(0|e),a=i.address;n.push(a),t._randombytes_buf(a,e);var o=c(i,r);return p(n),o},function(e,r,n){var i=[];f(n),_(i,e,"length"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(i,"length must be an unsigned integer"),r=m(i,r,"seed");var a,o=0|t._randombytes_seedbytes();r.length!==o&&y(i,"invalid seed length"),a=l(r),i.push(a);var s=new h(0|e),u=s.address;i.push(u),t._randombytes_buf_deterministic(u,e,0,r);var d=c(s,n);return p(i),d},function(e){f(e),t._randombytes_close()},function(e){f(e);var r=t._randombytes_random()>>>0;return p([]),r},function(e,r){var n=[];f(r);for(var i=t._malloc(24),a=0;a<6;a++)t.setValue(i+4*a,t.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][a]]),"i32");0!=(0|t._randombytes_set_implementation(i))?b(n):p(n)},function(e){f(e),t._randombytes_stir()},function(e,r){var n=[];f(r),_(n,e,"upper_bound"),("number"!=typeof e||(0|e)!==e)&&(0|e)>0&&y(n,"upper_bound must be an unsigned integer");var i=t._randombytes_uniform(e)>>>0;return p(n),i},function(){var e=t._sodium_version_string(),r=t.Pointer_stringify(e);return p([]),r}],w=0;w1?i.thisProgram=n.argv[1].replace(/\\/g,"/"):i.thisProgram="unknown-program"),i.arguments=n.argv.slice(2),e.exports=i,n.on("uncaughtException",function(e){if(!(e instanceof De))throw e}),i.inspect=function(){return"[Emscripten Module object]"};else if(l)i.print||(i.print=print),"undefined"!=typeof printErr&&(i.printErr=printErr),"undefined"!=typeof read?i.read=read:i.read=function(){throw"no read() available"},i.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var t=read(e,"binary");return v("object"==typeof t),t},"undefined"!=typeof scriptArgs?i.arguments=scriptArgs:void 0!==arguments&&(i.arguments=arguments),"function"==typeof quit&&(i.quit=function(e,t){quit(e)});else{if(!u&&!f)throw"Unknown runtime environment. Where are we?";if(i.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},f&&(i.readBinary=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),i.readAsync=function(e,t,r){var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=function(){200==n.status||0==n.status&&n.response?t(n.response):r()},n.onerror=r,n.send(null)},void 0!==arguments&&(i.arguments=arguments),"undefined"!=typeof console)i.print||(i.print=function(e){console.log(e)}),i.printErr||(i.printErr=function(e){console.warn(e)});else{i.print||(i.print=function(e){})}f&&(i.load=importScripts),void 0===i.setWindowTitle&&(i.setWindowTitle=function(e){document.title=e})}function d(e){He("NO_DYNAMIC_EXECUTION=1 was set, cannot eval")}for(var o in!i.load&&i.read&&(i.load=function(e){d(i.read(e))}),i.print||(i.print=function(){}),i.printErr||(i.printErr=i.print),i.arguments||(i.arguments=[]),i.thisProgram||(i.thisProgram="./this.program"),i.quit||(i.quit=function(e,t){throw t}),i.print=i.print,i.printErr=i.printErr,i.preRun=[],i.postRun=[],a)a.hasOwnProperty(o)&&(i[o]=a[o]);a=void 0;var p={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return V},stackRestore:function(e){V=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return p.QUANTUM_SIZE;if("i"===e[0]){var t=parseInt(e.substr(1));return v(t%8==0),t/8}return 0}},getNativeFieldSize:function(e){return Math.max(p.getNativeTypeSize(e),p.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return"double"===t||"i64"===t?7&e&&(v(4==(7&e)),e+=4):v(0==(3&e)),e},getAlignSize:function(e,t,r){return r||"i64"!=e&&"double"!=e?e?Math.min(t||(e?p.getNativeFieldSize(e):0),p.QUANTUM_SIZE):Math.min(t,8):8},dynCall:function(e,t,r){return r&&r.length?i["dynCall_"+e].apply(null,[t].concat(r)):i["dynCall_"+e].call(null,t)},functionPointers:[null,null,null,null,null,null,null,null],addFunction:function(e){for(var t=0;t>2],r=-16&(t+e+15|0);if((L[W>>2]=r,r>=ee)&&!$())return L[W>>2]=t,0;return t},alignMemory:function(e,t){return e=Math.ceil(e/(t||16))*(t||16)},makeBigInt:function(e,t,r){return r?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};i.Runtime=p;var b,y,_,m,g=0;function v(e,t){e||He("Assertion failed: "+t)}function w(e,t,r,n){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":N[e>>0]=t;break;case"i16":j[e>>1]=t;break;case"i32":L[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+pe(tempDouble)>=1?tempDouble>0?(0|_e(+ye(tempDouble/4294967296),4294967295))>>>0:~~+be((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],L[e>>2]=tempI64[0],L[e+4>>2]=tempI64[1];break;case"float":U[e>>2]=t;break;case"double":K[e>>3]=t;break;default:He("invalid type for setValue: "+r)}}function k(e,t,r){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return N[e>>0];case"i16":return j[e>>1];case"i32":case"i64":return L[e>>2];case"float":return U[e>>2];case"double":return K[e>>3];default:He("invalid type for setValue: "+t)}return null}m={string:(_={stackSave:function(){p.stackSave()},stackRestore:function(){p.stackRestore()},arrayToC:function(e){var t=p.stackAlloc(e.length);return le(e,t),t},stringToC:function(e){var t=0;if(null!==e&&void 0!==e&&0!==e){var r=1+(e.length<<2);z(e,t=p.stackAlloc(r),r)}return t}}).stringToC,array:_.arrayToC},y=function(e,t,r,n,a){var o=function(e){var t=i["_"+e];return t||He("NO_DYNAMIC_EXECUTION=1 was set, cannot eval"),v(t,"Cannot call unknown function "+e+" (perhaps LLVM optimizations or closure removed it?)"),t}(e),s=[],c=0;if(n)for(var u=0;u>2]=0;for(c=o+a;n>0]=0;return o}if("i8"===s)return e.subarray||e.slice?P.set(e,o):P.set(new Uint8Array(e),o),o;for(var u,f,h,l=0;l>0],(0!=r||t)&&(a++,!t||a!=t););t||(t=a);var o="";if(n<128){for(var s;t>0;)s=String.fromCharCode.apply(String,P.subarray(e,e+Math.min(t,1024))),o=o?o+s:s,e+=1024,t-=1024;return o}return i.UTF8ToString(e)}i.ALLOC_NORMAL=0,i.ALLOC_STACK=1,i.ALLOC_STATIC=E,i.ALLOC_DYNAMIC=3,i.ALLOC_NONE=S,i.allocate=x,i.getMemory=function(e){return H?se?Ce(e):p.dynamicAlloc(e):p.staticAlloc(e)},i.Pointer_stringify=A,i.AsciiToString=function(e){for(var t="";;){var r=N[e++>>0];if(!r)return t;t+=String.fromCharCode(r)}},i.stringToAscii=function(e,t){return de(e,t,!1)};var M="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function T(e,t){for(var r=t;e[r];)++r;if(r-t>16&&e.subarray&&M)return M.decode(e.subarray(t,r));for(var n,i,a,o,s,c="";;){if(!(n=e[t++]))return c;if(128&n)if(i=63&e[t++],192!=(224&n))if(a=63&e[t++],224==(240&n)?n=(15&n)<<12|i<<6|a:(o=63&e[t++],240==(248&n)?n=(7&n)<<18|i<<12|a<<6|o:(s=63&e[t++],n=248==(252&n)?(3&n)<<24|i<<18|a<<12|o<<6|s:(1&n)<<30|i<<24|a<<18|o<<12|s<<6|63&e[t++])),n<65536)c+=String.fromCharCode(n);else{var u=n-65536;c+=String.fromCharCode(55296|u>>10,56320|1023&u)}else c+=String.fromCharCode((31&n)<<6|i);else c+=String.fromCharCode(n)}}function I(e,t,r,n){if(!(n>0))return 0;for(var i=r,a=r+n-1,o=0;o=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(r>=a)break;t[r++]=s}else if(s<=2047){if(r+1>=a)break;t[r++]=192|s>>6,t[r++]=128|63&s}else if(s<=65535){if(r+2>=a)break;t[r++]=224|s>>12,t[r++]=128|s>>6&63,t[r++]=128|63&s}else if(s<=2097151){if(r+3>=a)break;t[r++]=240|s>>18,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}else if(s<=67108863){if(r+4>=a)break;t[r++]=248|s>>24,t[r++]=128|s>>18&63,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}else{if(r+5>=a)break;t[r++]=252|s>>30,t[r++]=128|s>>24&63,t[r++]=128|s>>18&63,t[r++]=128|s>>12&63,t[r++]=128|s>>6&63,t[r++]=128|63&s}}return t[r]=0,r-i}function z(e,t,r){return I(e,P,t,r)}function B(e){for(var t=0,r=0;r=55296&&n<=57343&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++r)),n<=127?++t:t+=n<=2047?2:n<=65535?3:n<=2097151?4:n<=67108863?5:6}return t}i.UTF8ArrayToString=T,i.UTF8ToString=function(e){return T(P,e)},i.stringToUTF8Array=I,i.stringToUTF8=z,i.lengthBytesUTF8=B;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");function R(e){return e.replace(/__Z[\w\d_]+/g,function(e){var t=function(e){var t=i.___cxa_demangle||i.__cxa_demangle;if(t){try{var r=e.substr(1),n=B(r)+1,a=Ce(n);z(r,a,n);var o=Ce(4),s=t(a,0,0,o);if(0===k(o,"i32")&&s)return A(s)}catch(e){}finally{a&&ze(a),o&&ze(o),s&&ze(s)}return e}return p.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}(e);return e===t?e:e+" ["+t+"]"})}function O(){var e=function(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}();return i.extraStackTrace&&(e+="\n"+i.extraStackTrace()),R(e)}i.stackTrace=O;var C,N,P,j,q,L,D,U,K,F,Y,H,V,G,X,W,J=16384;function Z(){He("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+ee+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function $(){Z()}Y=V=W=0,H=!1;var Q=i.TOTAL_STACK||5242880,ee=i.TOTAL_MEMORY||16777216;if(ee0;){var t=e.shift();if("function"!=typeof t){var r=t.func;"number"==typeof r?void 0===t.arg?i.dynCall_v(r):i.dynCall_vi(r,t.arg):r(void 0===t.arg?null:t.arg)}else t()}}i.HEAP=void 0,i.buffer=C,i.HEAP8=N,i.HEAP16=j,i.HEAP32=L,i.HEAPU8=P,i.HEAPU16=q,i.HEAPU32=D,i.HEAPF32=U,i.HEAPF64=K;var re=[],ne=[],ie=[],ae=[],oe=[],se=!1;function ce(){se||(se=!0,te(ne))}function ue(e){re.unshift(e)}function fe(e){oe.unshift(e)}function he(e,t,r){var n=r>0?r:B(e)+1,i=new Array(n),a=I(e,i,0,i.length);return t&&(i.length=a),i}function le(e,t){N.set(e,t)}function de(e,t,r){for(var n=0;n>0]=e.charCodeAt(n);r||(N[t>>0]=0)}i.addOnPreRun=ue,i.addOnInit=function(e){ne.unshift(e)},i.addOnPreMain=function(e){ie.unshift(e)},i.addOnExit=function(e){ae.unshift(e)},i.addOnPostRun=fe,i.intArrayFromString=he,i.intArrayToString=function(e){for(var t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")},i.writeStringToMemory=function(e,t,r){var n,i;p.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),r&&(i=t+B(e),n=N[i]),z(e,t,1/0),r&&(N[i]=n)},i.writeArrayToMemory=le,i.writeAsciiToMemory=de,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16)*n+r*(t>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var pe=Math.abs,be=(Math.cos,Math.sin,Math.tan,Math.acos,Math.asin,Math.atan,Math.atan2,Math.exp,Math.log,Math.sqrt,Math.ceil),ye=Math.floor,_e=(Math.pow,Math.imul,Math.fround,Math.round,Math.min),me=(Math.clz32,Math.trunc,0),ge=null,ve=null;i.addRunDependency=function(e){me++,i.monitorRunDependencies&&i.monitorRunDependencies(me)},i.removeRunDependency=function(e){if(me--,i.monitorRunDependencies&&i.monitorRunDependencies(me),0==me&&(null!==ge&&(clearInterval(ge),ge=null),ve)){var t=ve;ve=null,t()}},i.preloadedImages={},i.preloadedAudios={};var we=[function(){return i.getRandomValue()},function(){if(void 0===i.getRandomValue)try{var e="object"==typeof window?window:self,t=void 0!==e.crypto?e.crypto:e.msCrypto,n=function(){var e=new Uint32Array(1);return t.getRandomValues(e),e[0]>>>0};n(),i.getRandomValue=n}catch(e){try{var a=r(110),o=function(){var e=a.randomBytes(4);return(e[0]<<24|e[1]<<16|e[2]<<8|e[3])>>>0};o(),i.getRandomValue=o}catch(e){throw"No secure random number generator found"}}}];F=p.GLOBAL_BASE,Y=F+35120,ne.push(),x([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,232,149,143,194,178,39,176,69,195,244,137,242,239,152,240,213,223,172,5,211,198,51,57,177,56,2,136,109,83,252,5,199,23,106,112,61,77,216,79,186,60,11,118,13,16,103,15,42,32,83,250,44,57,204,198,78,199,253,119,146,172,3,122,19,232,149,143,194,178,39,176,69,195,244,137,242,239,152,240,213,223,172,5,211,198,51,57,177,56,2,136,109,83,252,133,180,23,106,112,61,77,216,79,186,60,11,118,13,16,103,15,42,32,83,250,44,57,204,198,78,199,253,119,146,172,3,250,236,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,237,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,238,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,217,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,218,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,219,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,8,201,188,243,103,230,9,106,59,167,202,132,133,174,103,187,43,248,148,254,114,243,110,60,241,54,29,95,58,245,79,165,209,130,230,173,127,82,14,81,31,108,62,43,140,104,5,155,107,189,65,251,171,217,131,31,121,33,126,19,25,205,224,91,34,174,40,215,152,47,138,66,205,101,239,35,145,68,55,113,47,59,77,236,207,251,192,181,188,219,137,129,165,219,181,233,56,181,72,243,91,194,86,57,25,208,5,182,241,17,241,89,155,79,25,175,164,130,63,146,24,129,109,218,213,94,28,171,66,2,3,163,152,170,7,216,190,111,112,69,1,91,131,18,140,178,228,78,190,133,49,36,226,180,255,213,195,125,12,85,111,137,123,242,116,93,190,114,177,150,22,59,254,177,222,128,53,18,199,37,167,6,220,155,148,38,105,207,116,241,155,193,210,74,241,158,193,105,155,228,227,37,79,56,134,71,190,239,181,213,140,139,198,157,193,15,101,156,172,119,204,161,12,36,117,2,43,89,111,44,233,45,131,228,166,110,170,132,116,74,212,251,65,189,220,169,176,92,181,83,17,131,218,136,249,118,171,223,102,238,82,81,62,152,16,50,180,45,109,198,49,168,63,33,251,152,200,39,3,176,228,14,239,190,199,127,89,191,194,143,168,61,243,11,224,198,37,167,10,147,71,145,167,213,111,130,3,224,81,99,202,6,112,110,14,10,103,41,41,20,252,47,210,70,133,10,183,39,38,201,38,92,56,33,27,46,237,42,196,90,252,109,44,77,223,179,149,157,19,13,56,83,222,99,175,139,84,115,10,101,168,178,119,60,187,10,106,118,230,174,237,71,46,201,194,129,59,53,130,20,133,44,114,146,100,3,241,76,161,232,191,162,1,48,66,188,75,102,26,168,145,151,248,208,112,139,75,194,48,190,84,6,163,81,108,199,24,82,239,214,25,232,146,209,16,169,101,85,36,6,153,214,42,32,113,87,133,53,14,244,184,209,187,50,112,160,106,16,200,208,210,184,22,193,164,25,83,171,65,81,8,108,55,30,153,235,142,223,76,119,72,39,168,72,155,225,181,188,176,52,99,90,201,197,179,12,28,57,203,138,65,227,74,170,216,78,115,227,99,119,79,202,156,91,163,184,178,214,243,111,46,104,252,178,239,93,238,130,143,116,96,47,23,67,111,99,165,120,114,171,240,161,20,120,200,132,236,57,100,26,8,2,199,140,40,30,99,35,250,255,190,144,233,189,130,222,235,108,80,164,21,121,198,178,247,163,249,190,43,83,114,227,242,120,113,198,156,97,38,234,206,62,39,202,7,194,192,33,199,184,134,209,30,235,224,205,214,125,218,234,120,209,110,238,127,79,125,245,186,111,23,114,170,103,240,6,166,152,200,162,197,125,99,10,174,13,249,190,4,152,63,17,27,71,28,19,53,11,113,27,132,125,4,35,245,119,219,40,147,36,199,64,123,171,202,50,188,190,201,21,10,190,158,60,76,13,16,156,196,103,29,67,182,66,62,203,190,212,197,76,42,126,101,252,156,41,127,89,236,250,214,58,171,111,203,95,23,88,71,74,140,25,68,108,182,120,89,255,133,114,211,0,189,110,21,255,15,10,106,0,41,192,1,0,152,232,121,255,188,60,160,255,153,113,206,255,0,183,226,254,180,13,72,255,176,160,14,254,211,201,134,255,158,24,143,0,127,105,53,0,96,12,189,0,167,215,251,255,159,76,128,254,106,101,225,255,30,252,4,0,146,12,174,0,89,241,178,254,10,229,166,255,123,221,42,254,30,20,212,0,82,128,3,0,48,209,243,0,119,121,64,255,50,227,156,255,0,110,197,1,103,27,144,0,133,59,140,1,189,241,36,255,248,37,195,1,96,220,55,0,183,76,62,255,195,66,61,0,50,76,164,1,225,164,76,255,76,61,163,255,117,62,31,0,81,145,64,255,118,65,14,0,162,115,214,255,6,138,46,0,124,230,244,255,10,138,143,0,52,26,194,0,184,244,76,0,129,143,41,1,190,244,19,255,123,170,122,255,98,129,68,0,121,213,147,0,86,101,30,255,161,103,155,0,140,89,67,255,239,229,190,1,67,11,181,0,198,240,137,254,238,69,188,255,67,151,238,0,19,42,108,255,229,85,113,1,50,68,135,255,17,106,9,0,50,103,1,255,80,1,168,1,35,152,30,255,16,168,185,1,56,89,232,255,101,210,252,0,41,250,71,0,204,170,79,255,14,46,239,255,80,77,239,0,189,214,75,255,17,141,249,0,38,80,76,255,190,85,117,0,86,228,170,0,156,216,208,1,195,207,164,255,150,66,76,255,175,225,16,255,141,80,98,1,76,219,242,0,198,162,114,0,46,218,152,0,155,43,241,254,155,160,104,255,51,187,165,0,2,17,175,0,66,84,160,1,247,58,30,0,35,65,53,254,69,236,191,0,45,134,245,1,163,123,221,0,32,110,20,255,52,23,165,0,186,214,71,0,233,176,96,0,242,239,54,1,57,89,138,0,83,0,84,255,136,160,100,0,92,142,120,254,104,124,190,0,181,177,62,255,250,41,85,0,152,130,42,1,96,252,246,0,151,151,63,254,239,133,62,0,32,56,156,0,45,167,189,255,142,133,179,1,131,86,211,0,187,179,150,254,250,170,14,255,210,163,78,0,37,52,151,0,99,77,26,0,238,156,213,255,213,192,209,1,73,46,84,0,20,65,41,1,54,206,79,0,201,131,146,254,170,111,24,255,177,33,50,254,171,38,203,255,78,247,116,0,209,221,153,0,133,128,178,1,58,44,25,0,201,39,59,1,189,19,252,0,49,229,210,1,117,187,117,0,181,179,184,1,0,114,219,0,48,94,147,0,245,41,56,0,125,13,204,254,244,173,119,0,44,221,32,254,84,234,20,0,249,160,198,1,236,126,234,255,47,99,168,254,170,226,153,255,102,179,216,0,226,141,122,255,122,66,153,254,182,245,134,0,227,228,25,1,214,57,235,255,216,173,56,255,181,231,210,0,119,128,157,255,129,95,136,255,110,126,51,0,2,169,183,255,7,130,98,254,69,176,94,255,116,4,227,1,217,242,145,255,202,173,31,1,105,1,39,255,46,175,69,0,228,47,58,255,215,224,69,254,207,56,69,255,16,254,139,255,23,207,212,255,202,20,126,255,95,213,96,255,9,176,33,0,200,5,207,255,241,42,128,254,35,33,192,255,248,229,196,1,129,17,120,0,251,103,151,255,7,52,112,255,140,56,66,255,40,226,245,255,217,70,37,254,172,214,9,255,72,67,134,1,146,192,214,255,44,38,112,0,68,184,75,255,206,90,251,0,149,235,141,0,181,170,58,0,116,244,239,0,92,157,2,0,102,173,98,0,233,137,96,1,127,49,203,0,5,155,148,0,23,148,9,255,211,122,12,0,34,134,26,255,219,204,136,0,134,8,41,255,224,83,43,254,85,25,247,0,109,127,0,254,169,136,48,0,238,119,219,255,231,173,213,0,206,18,254,254,8,186,7,255,126,9,7,1,111,42,72,0,111,52,236,254,96,63,141,0,147,191,127,254,205,78,192,255,14,106,237,1,187,219,76,0,175,243,187,254,105,89,173,0,85,25,89,1,162,243,148,0,2,118,209,254,33,158,9,0,139,163,46,255,93,70,40,0,108,42,142,254,111,252,142,255,155,223,144,0,51,229,167,255,73,252,155,255,94,116,12,255,152,160,218,255,156,238,37,255,179,234,207,255,197,0,179,255,154,164,141,0,225,196,104,0,10,35,25,254,209,212,242,255,97,253,222,254,184,101,229,0,222,18,127,1,164,136,135,255,30,207,140,254,146,97,243,0,129,192,26,254,201,84,33,255,111,10,78,255,147,81,178,255,4,4,24,0,161,238,215,255,6,141,33,0,53,215,14,255,41,181,208,255,231,139,157,0,179,203,221,255,255,185,113,0,189,226,172,255,113,66,214,255,202,62,45,255,102,64,8,255,78,174,16,254,133,117,68,255,133,59,140,1,189,241,36,255,248,37,195,1,96,220,55,0,183,76,62,255,195,66,61,0,50,76,164,1,225,164,76,255,76,61,163,255,117,62,31,0,81,145,64,255,118,65,14,0,162,115,214,255,6,138,46,0,124,230,244,255,10,138,143,0,52,26,194,0,184,244,76,0,129,143,41,1,190,244,19,255,123,170,122,255,98,129,68,0,121,213,147,0,86,101,30,255,161,103,155,0,140,89,67,255,239,229,190,1,67,11,181,0,198,240,137,254,238,69,188,255,234,113,60,255,37,255,57,255,69,178,182,254,128,208,179,0,118,26,125,254,3,7,214,255,241,50,77,255,85,203,197,255,211,135,250,255,25,48,100,255,187,213,180,254,17,88,105,0,83,209,158,1,5,115,98,0,4,174,60,254,171,55,110,255,217,181,17,255,20,188,170,0,146,156,102,254,87,214,174,255,114,122,155,1,233,44,170,0,127,8,239,1,214,236,234,0,175,5,219,0,49,106,61,255,6,66,208,255,2,106,110,255,81,234,19,255,215,107,192,255,67,151,238,0,19,42,108,255,229,85,113,1,50,68,135,255,17,106,9,0,50,103,1,255,80,1,168,1,35,152,30,255,16,168,185,1,56,89,232,255,101,210,252,0,41,250,71,0,204,170,79,255,14,46,239,255,80,77,239,0,189,214,75,255,17,141,249,0,38,80,76,255,190,85,117,0,86,228,170,0,156,216,208,1,195,207,164,255,150,66,76,255,175,225,16,255,141,80,98,1,76,219,242,0,198,162,114,0,46,218,152,0,155,43,241,254,155,160,104,255,178,9,252,254,100,110,212,0,14,5,167,0,233,239,163,255,28,151,157,1,101,146,10,255,254,158,70,254,71,249,228,0,88,30,50,0,68,58,160,255,191,24,104,1,129,66,129,255,192,50,85,255,8,179,138,255,38,250,201,0,115,80,160,0,131,230,113,0,125,88,147,0,90,68,199,0,253,76,158,0,28,255,118,0,113,250,254,0,66,75,46,0,230,218,43,0,229,120,186,1,148,68,43,0,136,124,238,1,187,107,197,255,84,53,246,255,51,116,254,255,51,187,165,0,2,17,175,0,66,84,160,1,247,58,30,0,35,65,53,254,69,236,191,0,45,134,245,1,163,123,221,0,32,110,20,255,52,23,165,0,186,214,71,0,233,176,96,0,242,239,54,1,57,89,138,0,83,0,84,255,136,160,100,0,92,142,120,254,104,124,190,0,181,177,62,255,250,41,85,0,152,130,42,1,96,252,246,0,151,151,63,254,239,133,62,0,32,56,156,0,45,167,189,255,142,133,179,1,131,86,211,0,187,179,150,254,250,170,14,255,68,113,21,255,222,186,59,255,66,7,241,1,69,6,72,0,86,156,108,254,55,167,89,0,109,52,219,254,13,176,23,255,196,44,106,255,239,149,71,255,164,140,125,255,159,173,1,0,51,41,231,0,145,62,33,0,138,111,93,1,185,83,69,0,144,115,46,0,97,151,16,255,24,228,26,0,49,217,226,0,113,75,234,254,193,153,12,255,182,48,96,255,14,13,26,0,128,195,249,254,69,193,59,0,132,37,81,254,125,106,60,0,214,240,169,1,164,227,66,0,210,163,78,0,37,52,151,0,99,77,26,0,238,156,213,255,213,192,209,1,73,46,84,0,20,65,41,1,54,206,79,0,201,131,146,254,170,111,24,255,177,33,50,254,171,38,203,255,78,247,116,0,209,221,153,0,133,128,178,1,58,44,25,0,201,39,59,1,189,19,252,0,49,229,210,1,117,187,117,0,181,179,184,1,0,114,219,0,48,94,147,0,245,41,56,0,125,13,204,254,244,173,119,0,44,221,32,254,84,234,20,0,249,160,198,1,236,126,234,255,143,62,221,0,129,89,214,255,55,139,5,254,68,20,191,255,14,204,178,1,35,195,217,0,47,51,206,1,38,246,165,0,206,27,6,254,158,87,36,0,217,52,146,255,125,123,215,255,85,60,31,255,171,13,7,0,218,245,88,254,252,35,60,0,55,214,160,255,133,101,56,0,224,32,19,254,147,64,234,0,26,145,162,1,114,118,125,0,248,252,250,0,101,94,196,255,198,141,226,254,51,42,182,0,135,12,9,254,109,172,210,255,197,236,194,1,241,65,154,0,48,156,47,255,153,67,55,255,218,165,34,254,74,180,179,0,218,66,71,1,88,122,99,0,212,181,219,255,92,42,231,255,239,0,154,0,245,77,183,255,94,81,170,1,18,213,216,0,171,93,71,0,52,94,248,0,18,151,161,254,197,209,66,255,174,244,15,254,162,48,183,0,49,61,240,254,182,93,195,0,199,228,6,1,200,5,17,255,137,45,237,255,108,148,4,0,90,79,237,255,39,63,77,255,53,82,207,1,142,22,118,255,101,232,18,1,92,26,67,0,5,200,88,255,33,168,138,255,149,225,72,0,2,209,27,255,44,245,168,1,220,237,17,255,30,211,105,254,141,238,221,0,128,80,245,254,111,254,14,0,222,95,190,1,223,9,241,0,146,76,212,255,108,205,104,255,63,117,153,0,144,69,48,0,35,228,111,0,192,33,193,255,112,214,190,254,115,152,151,0,23,102,88,0,51,74,248,0,226,199,143,254,204,162,101,255,208,97,189,1,245,104,18,0,230,246,30,255,23,148,69,0,110,88,52,254,226,181,89,255,208,47,90,254,114,161,80,255,33,116,248,0,179,152,87,255,69,144,177,1,88,238,26,255,58,32,113,1,1,77,69,0,59,121,52,255,152,238,83,0,52,8,193,0,231,39,233,255,199,34,138,0,222,68,173,0,91,57,242,254,220,210,127,255,192,7,246,254,151,35,187,0,195,236,165,0,111,93,206,0,212,247,133,1,154,133,209,255,155,231,10,0,64,78,38,0,122,249,100,1,30,19,97,255,62,91,249,1,248,133,77,0,197,63,168,254,116,10,82,0,184,236,113,254,212,203,194,255,61,100,252,254,36,5,202,255,119,91,153,255,129,79,29,0,103,103,171,254,237,215,111,255,216,53,69,0,239,240,23,0,194,149,221,255,38,225,222,0,232,255,180,254,118,82,133,255,57,209,177,1,139,232,133,0,158,176,46,254,194,115,46,0,88,247,229,1,28,103,191,0,221,222,175,254,149,235,44,0,151,228,25,254,218,105,103,0,142,85,210,0,149,129,190,255,213,65,94,254,117,134,224,255,82,198,117,0,157,221,220,0,163,101,36,0,197,114,37,0,104,172,166,254,11,182,0,0,81,72,188,255,97,188,16,255,69,6,10,0,199,147,145,255,8,9,115,1,65,214,175,255,217,173,209,0,80,127,166,0,247,229,4,254,167,183,124,255,90,28,204,254,175,59,240,255,11,41,248,1,108,40,51,255,144,177,195,254,150,250,126,0,138,91,65,1,120,60,222,255,245,193,239,0,29,214,189,255,128,2,25,0,80,154,162,0,77,220,107,1,234,205,74,255,54,166,103,255,116,72,9,0,228,94,47,255,30,200,25,255,35,214,89,255,61,176,140,255,83,226,163,255,75,130,172,0,128,38,17,0,95,137,152,255,215,124,159,1,79,93,0,0,148,82,157,254,195,130,251,255,40,202,76,255,251,126,224,0,157,99,62,254,207,7,225,255,96,68,195,0,140,186,157,255,131,19,231,255,42,128,254,0,52,219,61,254,102,203,72,0,141,7,11,255,186,164,213,0,31,122,119,0,133,242,145,0,208,252,232,255,91,213,182,255,143,4,250,254,249,215,74,0,165,30,111,1,171,9,223,0,229,123,34,1,92,130,26,255,77,155,45,1,195,139,28,255,59,224,78,0,136,17,247,0,108,121,32,0,79,250,189,255,96,227,252,254,38,241,62,0,62,174,125,255,155,111,93,255,10,230,206,1,97,197,40,255,0,49,57,254,65,250,13,0,18,251,150,255,220,109,210,255,5,174,166,254,44,129,189,0,235,35,147,255,37,247,141,255,72,141,4,255,103,107,255,0,247,90,4,0,53,44,42,0,2,30,240,0,4,59,63,0,88,78,36,0,113,167,180,0,190,71,193,255,199,158,164,255,58,8,172,0,77,33,12,0,65,63,3,0,153,77,33,255,172,254,102,1,228,221,4,255,87,30,254,1,146,41,86,255,138,204,239,254,108,141,17,255,187,242,135,0,210,208,127,0,68,45,14,254,73,96,62,0,81,60,24,255,170,6,36,255,3,249,26,0,35,213,109,0,22,129,54,255,21,35,225,255,234,61,56,255,58,217,6,0,143,124,88,0,236,126,66,0,209,38,183,255,34,238,6,255,174,145,102,0,95,22,211,0,196,15,153,254,46,84,232,255,117,34,146,1,231,250,74,255,27,134,100,1,92,187,195,255,170,198,112,0,120,28,42,0,209,70,67,0,29,81,31,0,29,168,100,1,169,173,160,0,107,35,117,0,62,96,59,255,81,12,69,1,135,239,190,255,220,252,18,0,163,220,58,255,137,137,188,255,83,102,109,0,96,6,76,0,234,222,210,255,185,174,205,1,60,158,213,255,13,241,214,0,172,129,140,0,93,104,242,0,192,156,251,0,43,117,30,0,225,81,158,0,127,232,218,0,226,28,203,0,233,27,151,255,117,43,5,255,242,14,47,255,33,20,6,0,137,251,44,254,27,31,245,255,183,214,125,254,40,121,149,0,186,158,213,255,89,8,227,0,69,88,0,254,203,135,225,0,201,174,203,0,147,71,184,0,18,121,41,254,94,5,78,0,224,214,240,254,36,5,180,0,251,135,231,1,163,138,212,0,210,249,116,254,88,129,187,0,19,8,49,254,62,14,144,255,159,76,211,0,214,51,82,0,109,117,228,254,103,223,203,255,75,252,15,1,154,71,220,255,23,13,91,1,141,168,96,255,181,182,133,0,250,51,55,0,234,234,212,254,175,63,158,0,39,240,52,1,158,189,36,255,213,40,85,1,32,180,247,255,19,102,26,1,84,24,97,255,69,21,222,0,148,139,122,255,220,213,235,1,232,203,255,0,121,57,147,0,227,7,154,0,53,22,147,1,72,1,225,0,82,134,48,254,83,60,157,255,145,72,169,0,34,103,239,0,198,233,47,0,116,19,4,255,184,106,9,255,183,129,83,0,36,176,230,1,34,103,72,0,219,162,134,0,245,42,158,0,32,149,96,254,165,44,144,0,202,239,72,254,215,150,5,0,42,66,36,1,132,215,175,0,86,174,86,255,26,197,156,255,49,232,135,254,103,182,82,0,253,128,176,1,153,178,122,0,245,250,10,0,236,24,178,0,137,106,132,0,40,29,41,0,50,30,152,255,124,105,38,0,230,191,75,0,143,43,170,0,44,131,20,255,44,13,23,255,237,255,155,1,159,109,100,255,112,181,24,255,104,220,108,0,55,211,131,0,99,12,213,255,152,151,145,255,238,5,159,0,97,155,8,0,33,108,81,0,1,3,103,0,62,109,34,255,250,155,180,0,32,71,195,255,38,70,145,1,159,95,245,0,69,229,101,1,136,28,240,0,79,224,25,0,78,110,121,255,248,168,124,0,187,128,247,0,2,147,235,254,79,11,132,0,70,58,12,1,181,8,163,255,79,137,133,255,37,170,11,255,141,243,85,255,176,231,215,255,204,150,164,255,239,215,39,255,46,87,156,254,8,163,88,255,172,34,232,0,66,44,102,255,27,54,41,254,236,99,87,255,41,123,169,1,52,114,43,0,117,134,40,0,155,134,26,0,231,207,91,254,35,132,38,255,19,102,125,254,36,227,133,255,118,3,113,255,29,13,124,0,152,96,74,1,88,146,206,255,167,191,220,254,162,18,88,255,182,100,23,0,31,117,52,0,81,46,106,1,12,2,7,0,69,80,201,1,209,246,172,0,12,48,141,1,224,211,88,0,116,226,159,0,122,98,130,0,65,236,234,1,225,226,9,255,207,226,123,1,89,214,59,0,112,135,88,1,90,244,203,255,49,11,38,1,129,108,186,0,89,112,15,1,101,46,204,255,127,204,45,254,79,255,221,255,51,73,18,255,127,42,101,255,241,21,202,0,160,227,7,0,105,50,236,0,79,52,197,255,104,202,208,1,180,15,16,0,101,197,78,255,98,77,203,0,41,185,241,1,35,193,124,0,35,155,23,255,207,53,192,0,11,125,163,1,249,158,185,255,4,131,48,0,21,93,111,255,61,121,231,1,69,200,36,255,185,48,185,255,111,238,21,255,39,50,25,255,99,215,163,255,87,212,30,255,164,147,5,255,128,6,35,1,108,223,110,255,194,76,178,0,74,101,180,0,243,47,48,0,174,25,43,255,82,173,253,1,54,114,192,255,40,55,91,0,215,108,176,255,11,56,7,0,224,233,76,0,209,98,202,254,242,25,125,0,44,193,93,254,203,8,177,0,135,176,19,0,112,71,213,255,206,59,176,1,4,67,26,0,14,143,213,254,42,55,208,255,60,67,120,0,193,21,163,0,99,164,115,0,10,20,118,0,156,212,222,254,160,7,217,255,114,245,76,1,117,59,123,0,176,194,86,254,213,15,176,0,78,206,207,254,213,129,59,0,233,251,22,1,96,55,152,255,236,255,15,255,197,89,84,255,93,149,133,0,174,160,113,0,234,99,169,255,152,116,88,0,144,164,83,255,95,29,198,255,34,47,15,255,99,120,134,255,5,236,193,0,249,247,126,255,147,187,30,0,50,230,117,255,108,217,219,255,163,81,166,255,72,25,169,254,155,121,79,255,28,155,89,254,7,126,17,0,147,65,33,1,47,234,253,0,26,51,18,0,105,83,199,255,163,196,230,0,113,248,164,0,226,254,218,0,189,209,203,255,164,247,222,254,255,35,165,0,4,188,243,1,127,179,71,0,37,237,254,255,100,186,240,0,5,57,71,254,103,72,73,255,244,18,81,254,229,210,132,255,238,6,180,255,11,229,174,255,227,221,192,1,17,49,28,0,163,215,196,254,9,118,4,255,51,240,71,0,113,129,109,255,76,240,231,0,188,177,127,0,125,71,44,1,26,175,243,0,94,169,25,254,27,230,29,0,15,139,119,1,168,170,186,255,172,197,76,255,252,75,188,0,137,124,196,0,72,22,96,255,45,151,249,1,220,145,100,0,64,192,159,255,120,239,226,0,129,178,146,0,0,192,125,0,235,138,234,0,183,157,146,0,83,199,192,255,184,172,72,255,73,225,128,0,77,6,250,255,186,65,67,0,104,246,207,0,188,32,138,255,218,24,242,0,67,138,81,254,237,129,121,255,20,207,150,1,41,199,16,255,6,20,128,0,159,118,5,0,181,16,143,255,220,38,15,0,23,64,147,254,73,26,13,0,87,228,57,1,204,124,128,0,43,24,223,0,219,99,199,0,22,75,20,255,19,27,126,0,157,62,215,0,110,29,230,0,179,167,255,1,54,252,190,0,221,204,182,254,179,158,65,255,81,157,3,0,194,218,159,0,170,223,0,0,224,11,32,255,38,197,98,0,168,164,37,0,23,88,7,1,164,186,110,0,96,36,134,0,234,242,229,0,250,121,19,0,242,254,112,255,3,47,94,1,9,239,6,255,81,134,153,254,214,253,168,255,67,124,224,0,245,95,74,0,28,30,44,254,1,109,220,255,178,89,89,0,252,36,76,0,24,198,46,255,76,77,111,0,134,234,136,255,39,94,29,0,185,72,234,255,70,68,135,255,231,102,7,254,77,231,140,0,167,47,58,1,148,97,118,255,16,27,225,1,166,206,143,255,110,178,214,255,180,131,162,0,143,141,225,1,13,218,78,255,114,153,33,1,98,104,204,0,175,114,117,1,167,206,75,0,202,196,83,1,58,64,67,0,138,47,111,1,196,247,128,255,137,224,224,254,158,112,207,0,154,100,255,1,134,37,107,0,198,128,79,255,127,209,155,255,163,254,185,254,60,14,243,0,31,219,112,254,29,217,65,0,200,13,116,254,123,60,196,255,224,59,184,254,242,89,196,0,123,16,75,254,149,16,206,0,69,254,48,1,231,116,223,255,209,160,65,1,200,80,98,0,37,194,184,254,148,63,34,0,139,240,65,255,217,144,132,255,56,38,45,254,199,120,210,0,108,177,166,255,160,222,4,0,220,126,119,254,165,107,160,255,82,220,248,1,241,175,136,0,144,141,23,255,169,138,84,0,160,137,78,255,226,118,80,255,52,27,132,255,63,96,139,255,152,250,39,0,188,155,15,0,232,51,150,254,40,15,232,255,240,229,9,255,137,175,27,255,75,73,97,1,218,212,11,0,135,5,162,1,107,185,213,0,2,249,107,255,40,242,70,0,219,200,25,0,25,157,13,0,67,82,80,255,196,249,23,255,145,20,149,0,50,72,146,0,94,76,148,1,24,251,65,0,31,192,23,0,184,212,201,255,123,233,162,1,247,173,72,0,162,87,219,254,126,134,89,0,159,11,12,254,166,105,29,0,73,27,228,1,113,120,183,255,66,163,109,1,212,143,11,255,159,231,168,1,255,128,90,0,57,14,58,254,89,52,10,255,253,8,163,1,0,145,210,255,10,129,85,1,46,181,27,0,103,136,160,254,126,188,209,255,34,35,111,0,215,219,24,255,212,11,214,254,101,5,118,0,232,197,133,255,223,167,109,255,237,80,86,255,70,139,94,0,158,193,191,1,155,15,51,255,15,190,115,0,78,135,207,255,249,10,27,1,181,125,233,0,95,172,13,254,170,213,161,255,39,236,138,255,95,93,87,255,190,128,95,0,125,15,206,0,166,150,159,0,227,15,158,255,206,158,120,255,42,141,128,0,101,178,120,1,156,109,131,0,218,14,44,254,247,168,206,255,212,112,28,0,112,17,228,255,90,16,37,1,197,222,108,0,254,207,83,255,9,90,243,255,243,244,172,0,26,88,115,255,205,116,122,0,191,230,193,0,180,100,11,1,217,37,96,255,154,78,156,0,235,234,31,255,206,178,178,255,149,192,251,0,182,250,135,0,246,22,105,0,124,193,109,255,2,210,149,255,169,17,170,0,0,96,110,255,117,9,8,1,50,123,40,255,193,189,99,0,34,227,160,0,48,80,70,254,211,51,236,0,45,122,245,254,44,174,8,0,173,37,233,255,158,65,171,0,122,69,215,255,90,80,2,255,131,106,96,254,227,114,135,0,205,49,119,254,176,62,64,255,82,51,17,255,241,20,243,255,130,13,8,254,128,217,243,255,162,27,1,254,90,118,241,0,246,198,246,255,55,16,118,255,200,159,157,0,163,17,1,0,140,107,121,0,85,161,118,255,38,0,149,0,156,47,238,0,9,166,166,1,75,98,181,255,50,74,25,0,66,15,47,0,139,225,159,0,76,3,142,255,14,238,184,0,11,207,53,255,183,192,186,1,171,32,174,255,191,76,221,1,247,170,219,0,25,172,50,254,217,9,233,0,203,126,68,255,183,92,48,0,127,167,183,1,65,49,254,0,16,63,127,1,254,21,170,255,59,224,127,254,22,48,63,255,27,78,130,254,40,195,29,0,250,132,112,254,35,203,144,0,104,169,168,0,207,253,30,255,104,40,38,254,94,228,88,0,206,16,128,255,212,55,122,255,223,22,234,0,223,197,127,0,253,181,181,1,145,102,118,0,236,153,36,255,212,217,72,255,20,38,24,254,138,62,62,0,152,140,4,0,230,220,99,255,1,21,212,255,148,201,231,0,244,123,9,254,0,171,210,0,51,58,37,255,1,255,14,255,244,183,145,254,0,242,166,0,22,74,132,0,121,216,41,0,95,195,114,254,133,24,151,255,156,226,231,255,247,5,77,255,246,148,115,254,225,92,81,255,222,80,246,254,170,123,89,255,74,199,141,0,29,20,8,255,138,136,70,255,93,75,92,0,221,147,49,254,52,126,226,0,229,124,23,0,46,9,181,0,205,64,52,1,131,254,28,0,151,158,212,0,131,64,78,0,206,25,171,0,0,230,139,0,191,253,110,254,103,247,167,0,64,40,40,1,42,165,241,255,59,75,228,254,124,243,189,255,196,92,178,255,130,140,86,255,141,89,56,1,147,198,5,255,203,248,158,254,144,162,141,0,11,172,226,0,130,42,21,255,1,167,143,255,144,36,36,255,48,88,164,254,168,170,220,0,98,71,214,0,91,208,79,0,159,76,201,1,166,42,214,255,69,255,0,255,6,128,125,255,190,1,140,0,146,83,218,255,215,238,72,1,122,127,53,0,189,116,165,255,84,8,66,255,214,3,208,255,213,110,133,0,195,168,44,1,158,231,69,0,162,64,200,254,91,58,104,0,182,58,187,254,249,228,136,0,203,134,76,254,99,221,233,0,75,254,214,254,80,69,154,0,64,152,248,254,236,136,202,255,157,105,153,254,149,175,20,0,22,35,19,255,124,121,233,0,186,250,198,254,132,229,139,0,137,80,174,255,165,125,68,0,144,202,148,254,235,239,248,0,135,184,118,0,101,94,17,255,122,72,70,254,69,130,146,0,127,222,248,1,69,127,118,255,30,82,215,254,188,74,19,255,229,167,194,254,117,25,66,255,65,234,56,254,213,22,156,0,151,59,93,254,45,28,27,255,186,126,164,255,32,6,239,0,127,114,99,1,219,52,2,255,99,96,166,254,62,190,126,255,108,222,168,1,75,226,174,0,230,226,199,0,60,117,218,255,252,248,20,1,214,188,204,0,31,194,134,254,123,69,192,255,169,173,36,254,55,98,91,0,223,42,102,254,137,1,102,0,157,90,25,0,239,122,64,255,252,6,233,0,7,54,20,255,82,116,174,0,135,37,54,255,15,186,125,0,227,112,175,255,100,180,225,255,42,237,244,255,244,173,226,254,248,18,33,0,171,99,150,255,74,235,50,255,117,82,32,254,106,168,237,0,207,109,208,1,228,9,186,0,135,60,169,254,179,92,143,0,244,170,104,255,235,45,124,255,70,99,186,0,117,137,183,0,224,31,215,0,40,9,100,0,26,16,95,1,68,217,87,0,8,151,20,255,26,100,58,255,176,165,203,1,52,118,70,0,7,32,254,254,244,254,245,255,167,144,194,255,125,113,23,255,176,121,181,0,136,84,209,0,138,6,30,255,89,48,28,0,33,155,14,255,25,240,154,0,141,205,109,1,70,115,62,255,20,40,107,254,138,154,199,255,94,223,226,255,157,171,38,0,163,177,25,254,45,118,3,255,14,222,23,1,209,190,81,255,118,123,232,1,13,213,101,255,123,55,123,254,27,246,165,0,50,99,76,255,140,214,32,255,97,65,67,255,24,12,28,0,174,86,78,1,64,247,96,0,160,135,67,0,66,55,243,255,147,204,96,255,26,6,33,255,98,51,83,1,153,213,208,255,2,184,54,255,25,218,11,0,49,67,246,254,18,149,72,255,13,25,72,0,42,79,214,0,42,4,38,1,27,139,144,255,149,187,23,0,18,164,132,0,245,84,184,254,120,198,104,255,126,218,96,0,56,117,234,255,13,29,214,254,68,47,10,255,167,154,132,254,152,38,198,0,66,178,89,255,200,46,171,255,13,99,83,255,210,187,253,255,170,45,42,1,138,209,124,0,214,162,141,0,12,230,156,0,102,36,112,254,3,147,67,0,52,215,123,255,233,171,54,255,98,137,62,0,247,218,39,255,231,218,236,0,247,191,127,0,195,146,84,0,165,176,92,255,19,212,94,255,17,74,227,0,88,40,153,1,198,147,1,255,206,67,245,254,240,3,218,255,61,141,213,255,97,183,106,0,195,232,235,254,95,86,154,0,209,48,205,254,118,209,241,255,240,120,223,1,213,29,159,0,163,127,147,255,13,218,93,0,85,24,68,254,70,20,80,255,189,5,140,1,82,97,254,255,99,99,191,255,132,84,133,255,107,218,116,255,112,122,46,0,105,17,32,0,194,160,63,255,68,222,39,1,216,253,92,0,177,105,205,255,149,201,195,0,42,225,11,255,40,162,115,0,9,7,81,0,165,218,219,0,180,22,0,254,29,146,252,255,146,207,225,1,180,135,96,0,31,163,112,0,177,11,219,255,133,12,193,254,43,78,50,0,65,113,121,1,59,217,6,255,110,94,24,1,112,172,111,0,7,15,96,0,36,85,123,0,71,150,21,255,208,73,188,0,192,11,167,1,213,245,34,0,9,230,92,0,162,142,39,255,215,90,27,0,98,97,89,0,94,79,211,0,90,157,240,0,95,220,126,1,102,176,226,0,36,30,224,254,35,31,127,0,231,232,115,1,85,83,130,0,210,73,245,255,47,143,114,255,68,65,197,0,59,72,62,255,183,133,173,254,93,121,118,255,59,177,81,255,234,69,173,255,205,128,177,0,220,244,51,0,26,244,209,1,73,222,77,255,163,8,96,254,150,149,211,0,158,254,203,1,54,127,139,0,161,224,59,0,4,109,22,255,222,42,45,255,208,146,102,255,236,142,187,0,50,205,245,255,10,74,89,254,48,79,142,0,222,76,130,255,30,166,63,0,236,12,13,255,49,184,244,0,187,113,102,0,218,101,253,0,153,57,182,254,32,150,42,0,25,198,146,1,237,241,56,0,140,68,5,0,91,164,172,255,78,145,186,254,67,52,205,0,219,207,129,1,109,115,17,0,54,143,58,1,21,248,120,255,179,255,30,0,193,236,66,255,1,255,7,255,253,192,48,255,19,69,217,1,3,214,0,255,64,101,146,1,223,125,35,255,235,73,179,255,249,167,226,0,225,175,10,1,97,162,58,0,106,112,171,1,84,172,5,255,133,140,178,255,134,245,142,0,97,90,125,255,186,203,185,255,223,77,23,255,192,92,106,0,15,198,115,255,217,152,248,0,171,178,120,255,228,134,53,0,176,54,193,1,250,251,53,0,213,10,100,1,34,199,106,0,151,31,244,254,172,224,87,255,14,237,23,255,253,85,26,255,127,39,116,255,172,104,100,0,251,14,70,255,212,208,138,255,253,211,250,0,176,49,165,0,15,76,123,255,37,218,160,255,92,135,16,1,10,126,114,255,70,5,224,255,247,249,141,0,68,20,60,1,241,210,189,255,195,217,187,1,151,3,113,0,151,92,174,0,231,62,178,255,219,183,225,0,23,23,33,255,205,181,80,0,57,184,248,255,67,180,1,255,90,123,93,255,39,0,162,255,96,248,52,255,84,66,140,0,34,127,228,255,194,138,7,1,166,110,188,0,21,17,155,1,154,190,198,255,214,80,59,255,18,7,143,0,72,29,226,1,199,217,249,0,232,161,71,1,149,190,201,0,217,175,95,254,113,147,67,255,138,143,199,255,127,204,1,0,29,182,83,1,206,230,155,255,186,204,60,0,10,125,85,255,232,96,25,255,255,89,247,255,213,254,175,1,232,193,81,0,28,43,156,254,12,69,8,0,147,24,248,0,18,198,49,0,134,60,35,0,118,246,18,255,49,88,254,254,228,21,186,255,182,65,112,1,219,22,1,255,22,126,52,255,189,53,49,255,112,25,143,0,38,127,55,255,226,101,163,254,208,133,61,255,137,69,174,1,190,118,145,255,60,98,219,255,217,13,245,255,250,136,10,0,84,254,226,0,201,31,125,1,240,51,251,255,31,131,130,255,2,138,50,255,215,215,177,1,223,12,238,255,252,149,56,255,124,91,68,255,72,126,170,254,119,255,100,0,130,135,232,255,14,79,178,0,250,131,197,0,138,198,208,0,121,216,139,254,119,18,36,255,29,193,122,0,16,42,45,255,213,240,235,1,230,190,169,255,198,35,228,254,110,173,72,0,214,221,241,255,56,148,135,0,192,117,78,254,141,93,207,255,143,65,149,0,21,18,98,255,95,44,244,1,106,191,77,0,254,85,8,254,214,110,176,255,73,173,19,254,160,196,199,255,237,90,144,0,193,172,113,255,200,155,136,254,228,90,221,0,137,49,74,1,164,221,215,255,209,189,5,255,105,236,55,255,42,31,129,1,193,255,236,0,46,217,60,0,138,88,187,255,226,82,236,255,81,69,151,255,142,190,16,1,13,134,8,0,127,122,48,255,81,64,156,0,171,243,139,0,237,35,246,0,122,143,193,254,212,122,146,0,95,41,255,1,87,132,77,0,4,212,31,0,17,31,78,0,39,45,173,254,24,142,217,255,95,9,6,255,227,83,6,0,98,59,130,254,62,30,33,0,8,115,211,1,162,97,128,255,7,184,23,254,116,28,168,255,248,138,151,255,98,244,240,0,186,118,130,0,114,248,235,255,105,173,200,1,160,124,71,255,94,36,164,1,175,65,146,255,238,241,170,254,202,198,197,0,228,71,138,254,45,246,109,255,194,52,158,0,133,187,176,0,83,252,154,254,89,189,221,255,170,73,252,0,148,58,125,0,36,68,51,254,42,69,177,255,168,76,86,255,38,100,204,255,38,53,35,0,175,19,97,0,225,238,253,255,81,81,135,0,210,27,255,254,235,73,107,0,8,207,115,0,82,127,136,0,84,99,21,254,207,19,136,0,100,164,101,0,80,208,77,255,132,207,237,255,15,3,15,255,33,166,110,0,156,95,85,255,37,185,111,1,150,106,35,255,166,151,76,0,114,87,135,255,159,194,64,0,12,122,31,255,232,7,101,254,173,119,98,0,154,71,220,254,191,57,53,255,168,232,160,255,224,32,99,255,218,156,165,0,151,153,163,0,217,13,148,1,197,113,89,0,149,28,161,254,207,23,30,0,105,132,227,255,54,230,94,255,133,173,204,255,92,183,157,255,88,144,252,254,102,33,90,0,159,97,3,0,181,218,155,255,240,114,119,0,106,214,53,255,165,190,115,1,152,91,225,255,88,106,44,255,208,61,113,0,151,52,124,0,191,27,156,255,110,54,236,1,14,30,166,255,39,127,207,1,229,199,28,0,188,228,188,254,100,157,235,0,246,218,183,1,107,22,193,255,206,160,95,0,76,239,147,0,207,161,117,0,51,166,2,255,52,117,10,254,73,56,227,255,152,193,225,0,132,94,136,255,101,191,209,0,32,107,229,255,198,43,180,1,100,210,118,0,114,67,153,255,23,88,26,255,89,154,92,1,220,120,140,255,144,114,207,255,252,115,250,255,34,206,72,0,138,133,127,255,8,178,124,1,87,75,97,0,15,229,92,254,240,67,131,255,118,123,227,254,146,120,104,255,145,213,255,1,129,187,70,255,219,119,54,0,1,19,173,0,45,150,148,1,248,83,72,0,203,233,169,1,142,107,56,0,247,249,38,1,45,242,80,255,30,233,103,0,96,82,70,0,23,201,111,0,81,39,30,255,161,183,78,255,194,234,33,255,68,227,140,254,216,206,116,0,70,27,235,255,104,144,79,0,164,230,93,254,214,135,156,0,154,187,242,254,188,20,131,255,36,109,174,0,159,112,241,0,5,110,149,1,36,165,218,0,166,29,19,1,178,46,73,0,93,43,32,254,248,189,237,0,102,155,141,0,201,93,195,255,241,139,253,255,15,111,98,255,108,65,163,254,155,79,190,255,73,174,193,254,246,40,48,255,107,88,11,254,202,97,85,255,253,204,18,255,113,242,66,0,110,160,194,254,208,18,186,0,81,21,60,0,188,104,167,255,124,166,97,254,210,133,142,0,56,242,137,254,41,111,130,0,111,151,58,1,111,213,141,255,183,172,241,255,38,6,196,255,185,7,123,255,46,11,246,0,245,105,119,1,15,2,161,255,8,206,45,255,18,202,74,255,83,124,115,1,212,141,157,0,83,8,209,254,139,15,232,255,172,54,173,254,50,247,132,0,214,189,213,0,144,184,105,0,223,254,248,0,255,147,240,255,23,188,72,0,7,51,54,0,188,25,180,254,220,180,0,255,83,160,20,0,163,189,243,255,58,209,194,255,87,73,60,0,106,24,49,0,245,249,220,0,22,173,167,0,118,11,195,255,19,126,237,0,110,159,37,255,59,82,47,0,180,187,86,0,188,148,208,1,100,37,133,255,7,112,193,0,129,188,156,255,84,106,129,255,133,225,202,0,14,236,111,255,40,20,101,0,172,172,49,254,51,54,74,255,251,185,184,255,93,155,224,255,180,249,224,1,230,178,146,0,72,57,54,254,178,62,184,0,119,205,72,0,185,239,253,255,61,15,218,0,196,67,56,255,234,32,171,1,46,219,228,0,208,108,234,255,20,63,232,255,165,53,199,1,133,228,5,255,52,205,107,0,74,238,140,255,150,156,219,254,239,172,178,255,251,189,223,254,32,142,211,255,218,15,138,1,241,196,80,0,28,36,98,254,22,234,199,0,61,237,220,255,246,57,37,0,142,17,142,255,157,62,26,0,43,238,95,254,3,217,6,255,213,25,240,1,39,220,174,255,154,205,48,254,19,13,192,255,244,34,54,254,140,16,155,0,240,181,5,254,155,193,60,0,166,128,4,255,36,145,56,255,150,240,219,0,120,51,145,0,82,153,42,1,140,236,146,0,107,92,248,1,189,10,3,0,63,136,242,0,211,39,24,0,19,202,161,1,173,27,186,255,210,204,239,254,41,209,162,255,182,254,159,255,172,116,52,0,195,103,222,254,205,69,59,0,53,22,41,1,218,48,194,0,80,210,242,0,210,188,207,0,187,161,161,254,216,17,1,0,136,225,113,0,250,184,63,0,223,30,98,254,77,168,162,0,59,53,175,0,19,201,10,255,139,224,194,0,147,193,154,255,212,189,12,254,1,200,174,255,50,133,113,1,94,179,90,0,173,182,135,0,94,177,113,0,43,89,215,255,136,252,106,255,123,134,83,254,5,245,66,255,82,49,39,1,220,2,224,0,97,129,177,0,77,59,89,0,61,29,155,1,203,171,220,255,92,78,139,0,145,33,181,255,169,24,141,1,55,150,179,0,139,60,80,255,218,39,97,0,2,147,107,255,60,248,72,0,173,230,47,1,6,83,182,255,16,105,162,254,137,212,81,255,180,184,134,1,39,222,164,255,221,105,251,1,239,112,125,0,63,7,97,0,63,104,227,255,148,58,12,0,90,60,224,255,84,212,252,0,79,215,168,0,248,221,199,1,115,121,1,0,36,172,120,0,32,162,187,255,57,107,49,255,147,42,21,0,106,198,43,1,57,74,87,0,126,203,81,255,129,135,195,0,140,31,177,0,221,139,194,0,3,222,215,0,131,68,231,0,177,86,178,254,124,151,180,0,184,124,38,1,70,163,17,0,249,251,181,1,42,55,227,0,226,161,44,0,23,236,110,0,51,149,142,1,93,5,236,0,218,183,106,254,67,24,77,0,40,245,209,255,222,121,153,0,165,57,30,0,83,125,60,0,70,38,82,1,229,6,188,0,109,222,157,255,55,118,63,255,205,151,186,0,227,33,149,255,254,176,246,1,227,177,227,0,34,106,163,254,176,43,79,0,106,95,78,1,185,241,122,255,185,14,61,0,36,1,202,0,13,178,162,255,247,11,132,0,161,230,92,1,65,1,185,255,212,50,165,1,141,146,64,255,158,242,218,0,21,164,125,0,213,139,122,1,67,71,87,0,203,158,178,1,151,92,43,0,152,111,5,255,39,3,239,255,217,255,250,255,176,63,71,255,74,245,77,1,250,174,18,255,34,49,227,255,246,46,251,255,154,35,48,1,125,157,61,255,106,36,78,255,97,236,153,0,136,187,120,255,113,134,171,255,19,213,217,254,216,94,209,255,252,5,61,0,94,3,202,0,3,26,183,255,64,191,43,255,30,23,21,0,129,141,77,255,102,120,7,1,194,76,140,0,188,175,52,255,17,81,148,0,232,86,55,1,225,48,172,0,134,42,42,255,238,50,47,0,169,18,254,0,20,147,87,255,14,195,239,255,69,247,23,0,238,229,128,255,177,49,112,0,168,98,251,255,121,71,248,0,243,8,145,254,246,227,153,255,219,169,177,254,251,139,165,255,12,163,185,255,164,40,171,255,153,159,27,254,243,109,91,255,222,24,112,1,18,214,231,0,107,157,181,254,195,147,0,255,194,99,104,255,89,140,190,255,177,66,126,254,106,185,66,0,49,218,31,0,252,174,158,0,188,79,230,1,238,41,224,0,212,234,8,1,136,11,181,0,166,117,83,255,68,195,94,0,46,132,201,0,240,152,88,0,164,57,69,254,160,224,42,255],"i8",S,p.GLOBAL_BASE),x([59,215,67,255,119,195,141,255,36,180,121,254,207,47,8,255,174,210,223,0,101,197,68,255,255,82,141,1,250,137,233,0,97,86,133,1,16,80,69,0,132,131,159,0,116,93,100,0,45,141,139,0,152,172,157,255,90,43,91,0,71,153,46,0,39,16,112,255,217,136,97,255,220,198,25,254,177,53,49,0,222,88,134,255,128,15,60,0,207,192,169,255,192,116,209,255,106,78,211,1,200,213,183,255,7,12,122,254,222,203,60,255,33,110,199,254,251,106,117,0,228,225,4,1,120,58,7,255,221,193,84,254,112,133,27,0,189,200,201,255,139,135,150,0,234,55,176,255,61,50,65,0,152,108,169,255,220,85,1,255,112,135,227,0,162,26,186,0,207,96,185,254,244,136,107,0,93,153,50,1,198,97,151,0,110,11,86,255,143,117,174,255,115,212,200,0,5,202,183,0,237,164,10,254,185,239,62,0,236,120,18,254,98,123,99,255,168,201,194,254,46,234,214,0,191,133,49,255,99,169,119,0,190,187,35,1,115,21,45,255,249,131,72,0,112,6,123,255,214,49,181,254,166,233,34,0,92,197,102,254,253,228,205,255,3,59,201,1,42,98,46,0,219,37,35,255,169,195,38,0,94,124,193,1,156,43,223,0,95,72,133,254,120,206,191,0,122,197,239,255,177,187,79,255,254,46,2,1,250,167,190,0,84,129,19,0,203,113,166,255,249,31,189,254,72,157,202,255,208,71,73,255,207,24,72,0,10,16,18,1,210,81,76,255,88,208,192,255,126,243,107,255,238,141,120,255,199,121,234,255,137,12,59,255,36,220,123,255,148,179,60,254,240,12,29,0,66,0,97,1,36,30,38,255,115,1,93,255,96,103,231,255,197,158,59,1,192,164,240,0,202,202,57,255,24,174,48,0,89,77,155,1,42,76,215,0,244,151,233,0,23,48,81,0,239,127,52,254,227,130,37,255,248,116,93,1,124,132,118,0,173,254,192,1,6,235,83,255,110,175,231,1,251,28,182,0,129,249,93,254,84,184,128,0,76,181,62,0,175,128,186,0,100,53,136,254,109,29,226,0,221,233,58,1,20,99,74,0,0,22,160,0,134,13,21,0,9,52,55,255,17,89,140,0,175,34,59,0,84,165,119,255,224,226,234,255,7,72,166,255,123,115,255,1,18,214,246,0,250,7,71,1,217,220,185,0,212,35,76,255,38,125,175,0,189,97,210,0,114,238,44,255,41,188,169,254,45,186,154,0,81,92,22,0,132,160,193,0,121,208,98,255,13,81,44,255,203,156,82,0,71,58,21,255,208,114,191,254,50,38,147,0,154,216,195,0,101,25,18,0,60,250,215,255,233,132,235,255,103,175,142,1,16,14,92,0,141,31,110,254,238,241,45,255,153,217,239,1,97,168,47,255,249,85,16,1,28,175,62,255,57,254,54,0,222,231,126,0,166,45,117,254,18,189,96,255,228,76,50,0,200,244,94,0,198,152,120,1,68,34,69,255,12,65,160,254,101,19,90,0,167,197,120,255,68,54,185,255,41,218,188,0,113,168,48,0,88,105,189,1,26,82,32,255,185,93,164,1,228,240,237,255,66,182,53,0,171,197,92,255,107,9,233,1,199,120,144,255,78,49,10,255,109,170,105,255,90,4,31,255,28,244,113,255,74,58,11,0,62,220,246,255,121,154,200,254,144,210,178,255,126,57,129,1,43,250,14,255,101,111,28,1,47,86,241,255,61,70,150,255,53,73,5,255,30,26,158,0,209,26,86,0,138,237,74,0,164,95,188,0,142,60,29,254,162,116,248,255,187,175,160,0,151,18,16,0,209,111,65,254,203,134,39,255,88,108,49,255,131,26,71,255,221,27,215,254,104,105,93,255,31,236,31,254,135,0,211,255,143,127,110,1,212,73,229,0,233,67,167,254,195,1,208,255,132,17,221,255,51,217,90,0,67,235,50,255,223,210,143,0,179,53,130,1,233,106,198,0,217,173,220,255,112,229,24,255,175,154,93,254,71,203,246,255,48,66,133,255,3,136,230,255,23,221,113,254,235,111,213,0,170,120,95,254,251,221,2,0,45,130,158,254,105,94,217,255,242,52,180,254,213,68,45,255,104,38,28,0,244,158,76,0,161,200,96,255,207,53,13,255,187,67,148,0,170,54,248,0,119,162,178,255,83,20,11,0,42,42,192,1,146,159,163,255,183,232,111,0,77,229,21,255,71,53,143,0,27,76,34,0,246,136,47,255,219,39,182,255,92,224,201,1,19,142,14,255,69,182,241,255,163,118,245,0,9,109,106,1,170,181,247,255,78,47,238,255,84,210,176,255,213,107,139,0,39,38,11,0,72,21,150,0,72,130,69,0,205,77,155,254,142,133,21,0,71,111,172,254,226,42,59,255,179,0,215,1,33,128,241,0,234,252,13,1,184,79,8,0,110,30,73,255,246,141,189,0,170,207,218,1,74,154,69,255,138,246,49,255,155,32,100,0,125,74,105,255,90,85,61,255,35,229,177,255,62,125,193,255,153,86,188,1,73,120,212,0,209,123,246,254,135,209,38,255,151,58,44,1,92,69,214,255,14,12,88,255,252,153,166,255,253,207,112,255,60,78,83,255,227,124,110,0,180,96,252,255,53,117,33,254,164,220,82,255,41,1,27,255,38,164,166,255,164,99,169,254,61,144,70,255,192,166,18,0,107,250,66,0,197,65,50,0,1,179,18,255,255,104,1,255,43,153,35,255,80,111,168,0,110,175,168,0,41,105,45,255,219,14,205,255,164,233,140,254,43,1,118,0,233,67,195,0,178,82,159,255,138,87,122,255,212,238,90,255,144,35,124,254,25,140,164,0,251,215,44,254,133,70,107,255,101,227,80,254,92,169,55,0,215,42,49,0,114,180,85,255,33,232,27,1,172,213,25,0,62,176,123,254,32,133,24,255,225,191,62,0,93,70,153,0,181,42,104,1,22,191,224,255,200,200,140,255,249,234,37,0,149,57,141,0,195,56,208,255,254,130,70,255,32,173,240,255,29,220,199,0,110,100,115,255,132,229,249,0,228,233,223,255,37,216,209,254,178,177,209,255,183,45,165,254,224,97,114,0,137,97,168,255,225,222,172,0,165,13,49,1,210,235,204,255,252,4,28,254,70,160,151,0,232,190,52,254,83,248,93,255,62,215,77,1,175,175,179,255,160,50,66,0,121,48,208,0,63,169,209,255,0,210,200,0,224,187,44,1,73,162,82,0,9,176,143,255,19,76,193,255,29,59,167,1,24,43,154,0,28,190,190,0,141,188,129,0,232,235,203,255,234,0,109,255,54,65,159,0,60,88,232,255,121,253,150,254,252,233,131,255,198,110,41,1,83,77,71,255,200,22,59,254,106,253,242,255,21,12,207,255,237,66,189,0,90,198,202,1,225,172,127,0,53,22,202,0,56,230,132,0,1,86,183,0,109,190,42,0,243,68,174,1,109,228,154,0,200,177,122,1,35,160,183,255,177,48,85,255,90,218,169,255,248,152,78,0,202,254,110,0,6,52,43,0,142,98,65,255,63,145,22,0,70,106,93,0,232,138,107,1,110,179,61,255,211,129,218,1,242,209,92,0,35,90,217,1,182,143,106,255,116,101,217,255,114,250,221,255,173,204,6,0,60,150,163,0,73,172,44,255,239,110,80,255,237,76,153,254,161,140,249,0,149,232,229,0,133,31,40,255,174,164,119,0,113,51,214,0,129,228,2,254,64,34,243,0,107,227,244,255,174,106,200,255,84,153,70,1,50,35,16,0,250,74,216,254,236,189,66,255,153,249,13,0,230,178,4,255,221,41,238,0,118,227,121,255,94,87,140,254,254,119,92,0,73,239,246,254,117,87,128,0,19,211,145,255,177,46,252,0,229,91,246,1,69,128,247,255,202,77,54,1,8,11,9,255,153,96,166,0,217,214,173,255,134,192,2,1,0,207,0,0,189,174,107,1,140,134,100,0,158,193,243,1,182,102,171,0,235,154,51,0,142,5,123,255,60,168,89,1,217,14,92,255,19,214,5,1,211,167,254,0,44,6,202,254,120,18,236,255,15,113,184,255,184,223,139,0,40,177,119,254,182,123,90,255,176,165,176,0,247,77,194,0,27,234,120,0,231,0,214,255,59,39,30,0,125,99,145,255,150,68,68,1,141,222,248,0,153,123,210,255,110,127,152,255,229,33,214,1,135,221,197,0,137,97,2,0,12,143,204,255,81,41,188,0,115,79,130,255,94,3,132,0,152,175,187,255,124,141,10,255,126,192,179,255,11,103,198,0,149,6,45,0,219,85,187,1,230,18,178,255,72,182,152,0,3,198,184,255,128,112,224,1,97,161,230,0,254,99,38,255,58,159,197,0,151,66,219,0,59,69,143,255,185,112,249,0,119,136,47,255,123,130,132,0,168,71,95,255,113,176,40,1,232,185,173,0,207,93,117,1,68,157,108,255,102,5,147,254,49,97,33,0,89,65,111,254,247,30,163,255,124,217,221,1,102,250,216,0,198,174,75,254,57,55,18,0,227,5,236,1,229,213,173,0,201,109,218,1,49,233,239,0,30,55,158,1,25,178,106,0,155,111,188,1,94,126,140,0,215,31,238,1,77,240,16,0,213,242,25,1,38,71,168,0,205,186,93,254,49,211,140,255,219,0,180,255,134,118,165,0,160,147,134,255,110,186,35,255,198,243,42,0,243,146,119,0,134,235,163,1,4,241,135,255,193,46,193,254,103,180,79,255,225,4,184,254,242,118,130,0,146,135,176,1,234,111,30,0,69,66,213,254,41,96,123,0,121,94,42,255,178,191,195,255,46,130,42,0,117,84,8,255,233,49,214,254,238,122,109,0,6,71,89,1,236,211,123,0,244,13,48,254,119,148,14,0,114,28,86,255,75,237,25,255,145,229,16,254,129,100,53,255,134,150,120,254,168,157,50,0,23,72,104,255,224,49,14,0,255,123,22,255,151,185,151,255,170,80,184,1,134,182,20,0,41,100,101,1,153,33,16,0,76,154,111,1,86,206,234,255,192,160,164,254,165,123,93,255,1,216,164,254,67,17,175,255,169,11,59,255,158,41,61,255,73,188,14,255,195,6,137,255,22,147,29,255,20,103,3,255,246,130,227,255,122,40,128,0,226,47,24,254,35,36,32,0,152,186,183,255,69,202,20,0,195,133,195,0,222,51,247,0,169,171,94,1,183,0,160,255,64,205,18,1,156,83,15,255,197,58,249,254,251,89,110,255,50,10,88,254,51,43,216,0,98,242,198,1,245,151,113,0,171,236,194,1,197,31,199,255,229,81,38,1,41,59,20,0,253,104,230,0,152,93,14,255,246,242,146,254,214,169,240,255,240,102,108,254,160,167,236,0,154,218,188,0,150,233,202,255,27,19,250,1,2,71,133,255,175,12,63,1,145,183,198,0,104,120,115,255,130,251,247,0,17,212,167,255,62,123,132,255,247,100,189,0,155,223,152,0,143,197,33,0,155,59,44,255,150,93,240,1,127,3,87,255,95,71,207,1,167,85,1,255,188,152,116,255,10,23,23,0,137,195,93,1,54,98,97,0,240,0,168,255,148,188,127,0,134,107,151,0,76,253,171,0,90,132,192,0,146,22,54,0,224,66,54,254,230,186,229,255,39,182,196,0,148,251,130,255,65,131,108,254,128,1,160,0,169,49,167,254,199,254,148,255,251,6,131,0,187,254,129,255,85,82,62,0,178,23,58,255,254,132,5,0,164,213,39,0,134,252,146,254,37,53,81,255,155,134,82,0,205,167,238,255,94,45,180,255,132,40,161,0,254,111,112,1,54,75,217,0,179,230,221,1,235,94,191,255,23,243,48,1,202,145,203,255,39,118,42,255,117,141,253,0,254,0,222,0,43,251,50,0,54,169,234,1,80,68,208,0,148,203,243,254,145,7,135,0,6,254,0,0,252,185,127,0,98,8,129,255,38,35,72,255,211,36,220,1,40,26,89,0,168,64,197,254,3,222,239,255,2,83,215,254,180,159,105,0,58,115,194,0,186,116,106,255,229,247,219,255,129,118,193,0,202,174,183,1,166,161,72,0,201,107,147,254,237,136,74,0,233,230,106,1,105,111,168,0,64,224,30,1,1,229,3,0,102,151,175,255,194,238,228,255,254,250,212,0,187,237,121,0,67,251,96,1,197,30,11,0,183,95,204,0,205,89,138,0,64,221,37,1,255,223,30,255,178,48,211,255,241,200,90,255,167,209,96,255,57,130,221,0,46,114,200,255,61,184,66,0,55,182,24,254,110,182,33,0,171,190,232,255,114,94,31,0,18,221,8,0,47,231,254,0,255,112,83,0,118,15,215,255,173,25,40,254,192,193,31,255,238,21,146,255,171,193,118,255,101,234,53,254,131,212,112,0,89,192,107,1,8,208,27,0,181,217,15,255,231,149,232,0,140,236,126,0,144,9,199,255,12,79,181,254,147,182,202,255,19,109,182,255,49,212,225,0,74,163,203,0,175,233,148,0,26,112,51,0,193,193,9,255,15,135,249,0,150,227,130,0,204,0,219,1,24,242,205,0,238,208,117,255,22,244,112,0,26,229,34,0,37,80,188,255,38,45,206,254,240,90,225,255,29,3,47,255,42,224,76,0,186,243,167,0,32,132,15,255,5,51,125,0,139,135,24,0,6,241,219,0,172,229,133,255,246,214,50,0,231,11,207,255,191,126,83,1,180,163,170,255,245,56,24,1,178,164,211,255,3,16,202,1,98,57,118,255,141,131,89,254,33,51,24,0,243,149,91,255,253,52,14,0,35,169,67,254,49,30,88,255,179,27,36,255,165,140,183,0,58,189,151,0,88,31,0,0,75,169,66,0,66,101,199,255,24,216,199,1,121,196,26,255,14,79,203,254,240,226,81,255,94,28,10,255,83,193,240,255,204,193,131,255,94,15,86,0,218,40,157,0,51,193,209,0,0,242,177,0,102,185,247,0,158,109,116,0,38,135,91,0,223,175,149,0,220,66,1,255,86,60,232,0,25,96,37,255,225,122,162,1,215,187,168,255,158,157,46,0,56,171,162,0,232,240,101,1,122,22,9,0,51,9,21,255,53,25,238,255,217,30,232,254,125,169,148,0,13,232,102,0,148,9,37,0,165,97,141,1,228,131,41,0,222,15,243,255,254,18,17,0,6,60,237,1,106,3,113,0,59,132,189,0,92,112,30,0,105,208,213,0,48,84,179,255,187,121,231,254,27,216,109,255,162,221,107,254,73,239,195,255,250,31,57,255,149,135,89,255,185,23,115,1,3,163,157,255,18,112,250,0,25,57,187,255,161,96,164,0,47,16,243,0,12,141,251,254,67,234,184,255,41,18,161,0,175,6,96,255,160,172,52,254,24,176,183,255,198,193,85,1,124,121,137,255,151,50,114,255,220,203,60,255,207,239,5,1,0,38,107,255,55,238,94,254,70,152,94,0,213,220,77,1,120,17,69,255,85,164,190,255,203,234,81,0,38,49,37,254,61,144,124,0,137,78,49,254,168,247,48,0,95,164,252,0,105,169,135,0,253,228,134,0,64,166,75,0,81,73,20,255,207,210,10,0,234,106,150,255,94,34,90,255,254,159,57,254,220,133,99,0,139,147,180,254,24,23,185,0,41,57,30,255,189,97,76,0,65,187,223,255,224,172,37,255,34,62,95,1,231,144,240,0,77,106,126,254,64,152,91,0,29,98,155,0,226,251,53,255,234,211,5,255,144,203,222,255,164,176,221,254,5,231,24,0,179,122,205,0,36,1,134,255,125,70,151,254,97,228,252,0,172,129,23,254,48,90,209,255,150,224,82,1,84,134,30,0,241,196,46,0,103,113,234,255,46,101,121,254,40,124,250,255,135,45,242,254,9,249,168,255,140,108,131,255,143,163,171,0,50,173,199,255,88,222,142,255,200,95,158,0,142,192,163,255,7,117,135,0,111,124,22,0,236,12,65,254,68,38,65,255,227,174,254,0,244,245,38,0,240,50,208,255,161,63,250,0,60,209,239,0,122,35,19,0,14,33,230,254,2,159,113,0,106,20,127,255,228,205,96,0,137,210,174,254,180,212,144,255,89,98,154,1,34,88,139,0,167,162,112,1,65,110,197,0,241,37,169,0,66,56,131,255,10,201,83,254,133,253,187,255,177,112,45,254,196,251,0,0,196,250,151,255,238,232,214,255,150,209,205,0,28,240,118,0,71,76,83,1,236,99,91,0,42,250,131,1,96,18,64,255,118,222,35,0,113,214,203,255,122,119,184,255,66,19,36,0,204,64,249,0,146,89,139,0,134,62,135,1,104,233,101,0,188,84,26,0,49,249,129,0,208,214,75,255,207,130,77,255,115,175,235,0,171,2,137,255,175,145,186,1,55,245,135,255,154,86,181,1,100,58,246,255,109,199,60,255,82,204,134,255,215,49,230,1,140,229,192,255,222,193,251,255,81,136,15,255,179,149,162,255,23,39,29,255,7,95,75,254,191,81,222,0,241,81,90,255,107,49,201,255,244,211,157,0,222,140,149,255,65,219,56,254,189,246,90,255,178,59,157,1,48,219,52,0,98,34,215,0,28,17,187,255,175,169,24,0,92,79,161,255,236,200,194,1,147,143,234,0,229,225,7,1,197,168,14,0,235,51,53,1,253,120,174,0,197,6,168,255,202,117,171,0,163,21,206,0,114,85,90,255,15,41,10,255,194,19,99,0,65,55,216,254,162,146,116,0,50,206,212,255,64,146,29,255,158,158,131,1,100,165,130,255,172,23,129,255,125,53,9,255,15,193,18,1,26,49,11,255,181,174,201,1,135,201,14,255,100,19,149,0,219,98,79,0,42,99,143,254,96,0,48,255,197,249,83,254,104,149,79,255,235,110,136,254,82,128,44,255,65,41,36,254,88,211,10,0,187,121,187,0,98,134,199,0,171,188,179,254,210,11,238,255,66,123,130,254,52,234,61,0,48,113,23,254,6,86,120,255,119,178,245,0,87,129,201,0,242,141,209,0,202,114,85,0,148,22,161,0,103,195,48,0,25,49,171,255,138,67,130,0,182,73,122,254,148,24,130,0,211,229,154,0,32,155,158,0,84,105,61,0,177,194,9,255,166,89,86,1,54,83,187,0,249,40,117,255,109,3,215,255,53,146,44,1,63,47,179,0,194,216,3,254,14,84,136,0,136,177,13,255,72,243,186,255,117,17,125,255,211,58,211,255,93,79,223,0,90,88,245,255,139,209,111,255,70,222,47,0,10,246,79,255,198,217,178,0,227,225,11,1,78,126,179,255,62,43,126,0,103,148,35,0,129,8,165,254,245,240,148,0,61,51,142,0,81,208,134,0,15,137,115,255,211,119,236,255,159,245,248,255,2,134,136,255,230,139,58,1,160,164,254,0,114,85,141,255,49,166,182,255,144,70,84,1,85,182,7,0,46,53,93,0,9,166,161,255,55,162,178,255,45,184,188,0,146,28,44,254,169,90,49,0,120,178,241,1,14,123,127,255,7,241,199,1,189,66,50,255,198,143,101,254,189,243,135,255,141,24,24,254,75,97,87,0,118,251,154,1,237,54,156,0,171,146,207,255,131,196,246,255,136,64,113,1,151,232,57,0,240,218,115,0,49,61,27,255,64,129,73,1,252,169,27,255,40,132,10,1,90,201,193,255,252,121,240,1,186,206,41,0,43,198,97,0,145,100,183,0,204,216,80,254,172,150,65,0,249,229,196,254,104,123,73,255,77,104,96,254,130,180,8,0,104,123,57,0,220,202,229,255,102,249,211,0,86,14,232,255,182,78,209,0,239,225,164,0,106,13,32,255,120,73,17,255,134,67,233,0,83,254,181,0,183,236,112,1,48,64,131,255,241,216,243,255,65,193,226,0,206,241,100,254,100,134,166,255,237,202,197,0,55,13,81,0,32,124,102,255,40,228,177,0,118,181,31,1,231,160,134,255,119,187,202,0,0,142,60,255,128,38,189,255,166,201,150,0,207,120,26,1,54,184,172,0,12,242,204,254,133,66,230,0,34,38,31,1,184,112,80,0,32,51,165,254,191,243,55,0,58,73,146,254,155,167,205,255,100,104,152,255,197,254,207,255,173,19,247,0,238,10,202,0,239,151,242,0,94,59,39,255,240,29,102,255,10,92,154,255,229,84,219,255,161,129,80,0,208,90,204,1,240,219,174,255,158,102,145,1,53,178,76,255,52,108,168,1,83,222,107,0,211,36,109,0,118,58,56,0,8,29,22,0,237,160,199,0,170,209,157,0,137,71,47,0,143,86,32,0,198,242,2,0,212,48,136,1,92,172,186,0,230,151,105,1,96,191,229,0,138,80,191,254,240,216,130,255,98,43,6,254,168,196,49,0,253,18,91,1,144,73,121,0,61,146,39,1,63,104,24,255,184,165,112,254,126,235,98,0,80,213,98,255,123,60,87,255,82,140,245,1,223,120,173,255,15,198,134,1,206,60,239,0,231,234,92,255,33,238,19,255,165,113,142,1,176,119,38,0,160,43,166,254,239,91,105,0,107,61,194,1,25,4,68,0,15,139,51,0,164,132,106,255,34,116,46,254,168,95,197,0,137,212,23,0,72,156,58,0,137,112,69,254,150,105,154,255,236,201,157,0,23,212,154,255,136,82,227,254,226,59,221,255,95,149,192,0,81,118,52,255,33,43,215,1,14,147,75,255,89,156,121,254,14,18,79,0,147,208,139,1,151,218,62,255,156,88,8,1,210,184,98,255,20,175,123,255,102,83,229,0,220,65,116,1,150,250,4,255,92,142,220,255,34,247,66,255,204,225,179,254,151,81,151,0,71,40,236,255,138,63,62,0,6,79,240,255,183,185,181,0,118,50,27,0,63,227,192,0,123,99,58,1,50,224,155,255,17,225,223,254,220,224,77,255,14,44,123,1,141,128,175,0,248,212,200,0,150,59,183,255,147,97,29,0,150,204,181,0,253,37,71,0,145,85,119,0,154,200,186,0,2,128,249,255,83,24,124,0,14,87,143,0,168,51,245,1,124,151,231,255,208,240,197,1,124,190,185,0,48,58,246,0,20,233,232,0,125,18,98,255,13,254,31,255,245,177,130,255,108,142,35,0,171,125,242,254,140,12,34,255,165,161,162,0,206,205,101,0,247,25,34,1,100,145,57,0,39,70,57,0,118,204,203,255,242,0,162,0,165,244,30,0,198,116,226,0,128,111,153,255,140,54,182,1,60,122,15,255,155,58,57,1,54,50,198,0,171,211,29,255,107,138,167,255,173,107,199,255,109,161,193,0,89,72,242,255,206,115,89,255,250,254,142,254,177,202,94,255,81,89,50,0,7,105,66,255,25,254,255,254,203,64,23,255,79,222,108,255,39,249,75,0,241,124,50,0,239,152,133,0,221,241,105,0,147,151,98,0,213,161,121,254,242,49,137,0,233,37,249,254,42,183,27,0,184,119,230,255,217,32,163,255,208,251,228,1,137,62,131,255,79,64,9,254,94,48,113,0,17,138,50,254,193,255,22,0,247,18,197,1,67,55,104,0,16,205,95,255,48,37,66,0,55,156,63,1,64,82,74,255,200,53,71,254,239,67,125,0,26,224,222,0,223,137,93,255,30,224,202,255,9,220,132,0,198,38,235,1,102,141,86,0,60,43,81,1,136,28,26,0,233,36,8,254,207,242,148,0,164,162,63,0,51,46,224,255,114,48,79,255,9,175,226,0,222,3,193,255,47,160,232,255,255,93,105,254,14,42,230,0,26,138,82,1,208,43,244,0,27,39,38,255,98,208,127,255,64,149,182,255,5,250,209,0,187,60,28,254,49,25,218,255,169,116,205,255,119,18,120,0,156,116,147,255,132,53,109,255,13,10,202,0,110,83,167,0,157,219,137,255,6,3,130,255,50,167,30,255,60,159,47,255,129,128,157,254,94,3,189,0,3,166,68,0,83,223,215,0,150,90,194,1,15,168,65,0,227,83,51,255,205,171,66,255,54,187,60,1,152,102,45,255,119,154,225,0,240,247,136,0,100,197,178,255,139,71,223,255,204,82,16,1,41,206,42,255,156,192,221,255,216,123,244,255,218,218,185,255,187,186,239,255,252,172,160,255,195,52,22,0,144,174,181,254,187,100,115,255,211,78,176,255,27,7,193,0,147,213,104,255,90,201,10,255,80,123,66,1,22,33,186,0,1,7,99,254,30,206,10,0,229,234,5,0,53,30,210,0,138,8,220,254,71,55,167,0,72,225,86,1,118,190,188,0,254,193,101,1,171,249,172,255,94,158,183,254,93,2,108,255,176,93,76,255,73,99,79,255,74,64,129,254,246,46,65,0,99,241,127,254,246,151,102,255,44,53,208,254,59,102,234,0,154,175,164,255,88,242,32,0,111,38,1,0,255,182,190,255,115,176,15,254,169,60,129,0,122,237,241,0,90,76,63,0,62,74,120,255,122,195,110,0,119,4,178,0,222,242,210,0,130,33,46,254,156,40,41,0,167,146,112,1,49,163,111,255,121,176,235,0,76,207,14,255,3,25,198,1,41,235,213,0,85,36,214,1,49,92,109,255,200,24,30,254,168,236,195,0,145,39,124,1,236,195,149,0,90,36,184,255,67,85,170,255,38,35,26,254,131,124,68,255,239,155,35,255,54,201,164,0,196,22,117,255,49,15,205,0,24,224,29,1,126,113,144,0,117,21,182,0,203,159,141,0,223,135,77,0,176,230,176,255,190,229,215,255,99,37,181,255,51,21,138,255,25,189,89,255,49,48,165,254,152,45,247,0,170,108,222,0,80,202,5,0,27,69,103,254,204,22,129,255,180,252,62,254,210,1,91,255,146,110,254,255,219,162,28,0,223,252,213,1,59,8,33,0,206,16,244,0,129,211,48,0,107,160,208,0,112,59,209,0,109,77,216,254,34,21,185,255,246,99,56,255,179,139,19,255,185,29,50,255,84,89,19,0,74,250,98,255,225,42,200,255,192,217,205,255,210,16,167,0,99,132,95,1,43,230,57,0,254,11,203,255,99,188,63,255,119,193,251,254,80,105,54,0,232,181,189,1,183,69,112,255,208,171,165,255,47,109,180,255,123,83,165,0,146,162,52,255,154,11,4,255,151,227,90,255,146,137,97,254,61,233,41,255,94,42,55,255,108,164,236,0,152,68,254,0,10,140,131,255,10,106,79,254,243,158,137,0,67,178,66,254,177,123,198,255,15,62,34,0,197,88,42,255,149,95,177,255,152,0,198,255,149,254,113,255,225,90,163,255,125,217,247,0,18,17,224,0,128,66,120,254,192,25,9,255,50,221,205,0,49,212,70,0,233,255,164,0,2,209,9,0,221,52,219,254,172,224,244,255,94,56,206,1,242,179,2,255,31,91,164,1,230,46,138,255,189,230,220,0,57,47,61,255,111,11,157,0,177,91,152,0,28,230,98,0,97,87,126,0,198,89,145,255,167,79,107,0,249,77,160,1,29,233,230,255,150,21,86,254,60,11,193,0,151,37,36,254,185,150,243,255,228,212,83,1,172,151,180,0,201,169,155,0,244,60,234,0,142,235,4,1,67,218,60,0,192,113,75,1,116,243,207,255,65,172,155,0,81,30,156,255,80,72,33,254,18,231,109,255,142,107,21,254,125,26,132,255,176,16,59,255,150,201,58,0,206,169,201,0,208,121,226,0,40,172,14,255,150,61,94,255,56,57,156,255,141,60,145,255,45,108,149,255,238,145,155,255,209,85,31,254,192,12,210,0,99,98,93,254,152,16,151,0,225,185,220,0,141,235,44,255,160,172,21,254,71,26,31,255,13,64,93,254,28,56,198,0,177,62,248,1,182,8,241,0,166,101,148,255,78,81,133,255,129,222,215,1,188,169,129,255,232,7,97,0,49,112,60,255,217,229,251,0,119,108,138,0,39,19,123,254,131,49,235,0,132,84,145,0,130,230,148,255,25,74,187,0,5,245,54,255,185,219,241,1,18,194,228,255,241,202,102,0,105,113,202,0,155,235,79,0,21,9,178,255,156,1,239,0,200,148,61,0,115,247,210,255,49,221,135,0,58,189,8,1,35,46,9,0,81,65,5,255,52,158,185,255,125,116,46,255,74,140,13,255,210,92,172,254,147,23,71,0,217,224,253,254,115,108,180,255,145,58,48,254,219,177,24,255,156,255,60,1,154,147,242,0,253,134,87,0,53,75,229,0,48,195,222,255,31,175,50,255,156,210,120,255,208,35,222,255,18,248,179,1,2,10,101,255,157,194,248,255,158,204,101,255,104,254,197,255,79,62,4,0,178,172,101,1,96,146,251,255,65,10,156,0,2,137,165,255,116,4,231,0,242,215,1,0,19,35,29,255,43,161,79,0,59,149,246,1,251,66,176,0,200,33,3,255,80,110,142,255,195,161,17,1,228,56,66,255,123,47,145,254,132,4,164,0,67,174,172,0,25,253,114,0,87,97,87,1,250,220,84,0,96,91,200,255,37,125,59,0,19,65,118,0,161,52,241,255,237,172,6,255,176,191,255,255,1,65,130,254,223,190,230,0,101,253,231,255,146,35,109,0,250,29,77,1,49,0,19,0,123,90,155,1,22,86,32,255,218,213,65,0,111,93,127,0,60,93,169,255,8,127,182,0,17,186,14,254,253,137,246,255,213,25,48,254,76,238,0,255,248,92,70,255,99,224,139,0,184,9,255,1,7,164,208,0,205,131,198,1,87,214,199,0,130,214,95,0,221,149,222,0,23,38,171,254,197,110,213,0,43,115,140,254,215,177,118,0,96,52,66,1,117,158,237,0,14,64,182,255,46,63,174,255,158,95,190,255,225,205,177,255,43,5,142,255,172,99,212,255,244,187,147,0,29,51,153,255,228,116,24,254,30,101,207,0,19,246,150,255,134,231,5,0,125,134,226,1,77,65,98,0,236,130,33,255,5,110,62,0,69,108,127,255,7,113,22,0,145,20,83,254,194,161,231,255,131,181,60,0,217,209,177,255,229,148,212,254,3,131,184,0,117,177,187,1,28,14,31,255,176,102,80,0,50,84,151,255,125,31,54,255,21,157,133,255,19,179,139,1,224,232,26,0,34,117,170,255,167,252,171,255,73,141,206,254,129,250,35,0,72,79,236,1,220,229,20,255,41,202,173,255,99,76,238,255,198,22,224,255,108,198,195,255,36,141,96,1,236,158,59,255,106,100,87,0,110,226,2,0,227,234,222,0,154,93,119,255,74,112,164,255,67,91,2,255,21,145,33,255,102,214,137,255,175,230,103,254,163,246,166,0,93,247,116,254,167,224,28,255,220,2,57,1,171,206,84,0,123,228,17,255,27,120,119,0,119,11,147,1,180,47,225,255,104,200,185,254,165,2,114,0,77,78,212,0,45,154,177,255,24,196,121,254,82,157,182,0,90,16,190,1,12,147,197,0,95,239,152,255,11,235,71,0,86,146,119,255,172,134,214,0,60,131,196,0,161,225,129,0,31,130,120,254,95,200,51,0,105,231,210,255,58,9,148,255,43,168,221,255,124,237,142,0,198,211,50,254,46,245,103,0,164,248,84,0,152,70,208,255,180,117,177,0,70,79,185,0,243,74,32,0,149,156,207,0,197,196,161,1,245,53,239,0,15,93,246,254,139,240,49,255,196,88,36,255,162,38,123,0,128,200,157,1,174,76,103,255,173,169,34,254,216,1,171,255,114,51,17,0,136,228,194,0,110,150,56,254,106,246,159,0,19,184,79,255,150,77,240,255,155,80,162,0,0,53,169,255,29,151,86,0,68,94,16,0,92,7,110,254,98,117,149,255,249,77,230,255,253,10,140,0,214,124,92,254,35,118,235,0,89,48,57,1,22,53,166,0,184,144,61,255,179,255,194,0,214,248,61,254,59,110,246,0,121,21,81,254,166,3,228,0,106,64,26,255,69,232,134,255,242,220,53,254,46,220,85,0,113,149,247,255,97,179,103,255,190,127,11,0,135,209,182,0,95,52,129,1,170,144,206,255,122,200,204,255,168,100,146,0,60,144,149,254,70,60,40,0,122,52,177,255,246,211,101,255,174,237,8,0,7,51,120,0,19,31,173,0,126,239,156,255,143,189,203,0,196,128,88,255,233,133,226,255,30,125,173,255,201,108,50,0,123,100,59,255,254,163,3,1,221,148,181,255,214,136,57,254,222,180,137,255,207,88,54,255,28,33,251,255,67,214,52,1,210,208,100,0,81,170,94,0,145,40,53,0,224,111,231,254,35,28,244,255,226,199,195,254,238,17,230,0,217,217,164,254,169,157,221,0,218,46,162,1,199,207,163,255,108,115,162,1,14,96,187,255,118,60,76,0,184,159,152,0,209,231,71,254,42,164,186,255,186,153,51,254,221,171,182,255,162,142,173,0,235,47,193,0,7,139,16,1,95,164,64,255,16,221,166,0,219,197,16,0,132,29,44,255,100,69,117,255,60,235,88,254,40,81,173,0,71,190,61,255,187,88,157,0,231,11,23,0,237,117,164,0,225,168,223,255,154,114,116,255,163,152,242,1,24,32,170,0,125,98,113,254,168,19,76,0,17,157,220,254,155,52,5,0,19,111,161,255,71,90,252,255,173,110,240,0,10,198,121,255,253,255,240,255,66,123,210,0,221,194,215,254,121,163,17,255,225,7,99,0,190,49,182,0,115,9,133,1,232,26,138,255,213,68,132,0,44,119,122,255,179,98,51,0,149,90,106,0,71,50,230,255,10,153,118,255,177,70,25,0,165,87,205,0,55,138,234,0,238,30,97,0,113,155,207,0,98,153,127,0,34,107,219,254,117,114,172,255,76,180,255,254,242,57,179,255,221,34,172,254,56,162,49,255,83,3,255,255,113,221,189,255,188,25,228,254,16,88,89,255,71,28,198,254,22,17,149,255,243,121,254,255,107,202,99,255,9,206,14,1,220,47,153,0,107,137,39,1,97,49,194,255,149,51,197,254,186,58,11,255,107,43,232,1,200,6,14,255,181,133,65,254,221,228,171,255,123,62,231,1,227,234,179,255,34,189,212,254,244,187,249,0,190,13,80,1,130,89,1,0,223,133,173,0,9,222,198,255,66,127,74,0,167,216,93,255,155,168,198,1,66,145,0,0,68,102,46,1,172,90,154,0,216,128,75,255,160,40,51,0,158,17,27,1,124,240,49,0,236,202,176,255,151,124,192,255,38,193,190,0,95,182,61,0,163,147,124,255,255,165,51,255,28,40,17,254,215,96,78,0,86,145,218,254,31,36,202,255,86,9,5,0,111,41,200,255,237,108,97,0,57,62,44,0,117,184,15,1,45,241,116,0,152,1,220,255,157,165,188,0,250,15,131,1,60,44,125,255,65,220,251,255,75,50,184,0,53,90,128,255,231,80,194,255,136,129,127,1,21,18,187,255,45,58,161,255,71,147,34,0,174,249,11,254,35,141,29,0,239,68,177,255,115,110,58,0,238,190,177,1,87,245,166,255,190,49,247,255,146,83,184,255,173,14,39,255,146,215,104,0,142,223,120,0,149,200,155,255,212,207,145,1,16,181,217,0,173,32,87,255,255,35,181,0,119,223,161,1,200,223,94,255,70,6,186,255,192,67,85,255,50,169,152,0,144,26,123,255,56,243,179,254,20,68,136,0,39,140,188,254,253,208,5,255,200,115,135,1,43,172,229,255,156,104,187,0,151,251,167,0,52,135,23,0,151,153,72,0,147,197,107,254,148,158,5,255,238,143,206,0,126,153,137,255,88,152,197,254,7,68,167,0,252,159,165,255,239,78,54,255,24,63,55,255,38,222,94,0,237,183,12,255,206,204,210,0,19,39,246,254,30,74,231,0,135,108,29,1,179,115,0,0,117,118,116,1,132,6,252,255,145,129,161,1,105,67,141,0,82,37,226,255,238,226,228,255,204,214,129,254,162,123,100,255,185,121,234,0,45,108,231,0,66,8,56,255,132,136,128,0,172,224,66,254,175,157,188,0,230,223,226,254,242,219,69,0,184,14,119,1,82,162,56,0,114,123,20,0,162,103,85,255,49,239,99,254,156,135,215,0,111,255,167,254,39,196,214,0,144,38,79,1,249,168,125,0,155,97,156,255,23,52,219,255,150,22,144,0,44,149,165,255,40,127,183,0,196,77,233,255,118,129,210,255,170,135,230,255,214,119,198,0,233,240,35,0,253,52,7,255,117,102,48,255,21,204,154,255,179,136,177,255,23,2,3,1,149,130,89,255,252,17,159,1,70,60,26,0,144,107,17,0,180,190,60,255,56,182,59,255,110,71,54,255,198,18,129,255,149,224,87,255,223,21,152,255,138,22,182,255,250,156,205,0,236,45,208,255,79,148,242,1,101,70,209,0,103,78,174,0,101,144,172,255,152,136,237,1,191,194,136,0,113,80,125,1,152,4,141,0,155,150,53,255,196,116,245,0,239,114,73,254,19,82,17,255,124,125,234,255,40,52,191,0,42,210,158,255,155,132,165,0,178,5,42,1,64,92,40,255,36,85,77,255,178,228,118,0,137,66,96,254,115,226,66,0,110,240,69,254,151,111,80,0,167,174,236,255,227,108,107,255,188,242,65,255,183,81,255,0,57,206,181,255,47,34,181,255,213,240,158,1,71,75,95,0,156,40,24,255,102,210,81,0,171,199,228,255,154,34,41,0,227,175,75,0,21,239,195,0,138,229,95,1,76,192,49,0,117,123,87,1,227,225,130,0,125,62,63,255,2,198,171,0,254,36,13,254,145,186,206,0,148,255,244,255,35,0,166,0,30,150,219,1,92,228,212,0,92,198,60,254,62,133,200,255,201,41,59,0,125,238,109,255,180,163,238,1,140,122,82,0,9,22,88,255,197,157,47,255,153,94,57,0,88,30,182,0,84,161,85,0,178,146,124,0,166,166,7,255,21,208,223,0,156,182,242,0,155,121,185,0,83,156,174,254,154,16,118,255,186,83,232,1,223,58,121,255,29,23,88,0,35,125,127,255,170,5,149,254,164,12,130,255,155,196,29,0,161,96,136,0,7,35,29,1,162,37,251,0,3,46,242,255,0,217,188,0,57,174,226,1,206,233,2,0,57,187,136,254,123,189,9,255,201,117,127,255,186,36,204,0,231,25,216,0,80,78,105,0,19,134,129,255,148,203,68,0,141,81,125,254,248,165,200,255,214,144,135,0,151,55,166,255,38,235,91,0,21,46,154,0,223,254,150,255,35,153,180,255,125,176,29,1,43,98,30,255,216,122,230,255,233,160,12,0,57,185,12,254,240,113,7,255,5,9,16,254,26,91,108,0,109,198,203,0,8,147,40,0,129,134,228,255,124,186,40,255,114,98,132,254,166,132,23,0,99,69,44,0,9,242,238,255,184,53,59,0,132,129,102,255,52,32,243,254,147,223,200,255,123,83,179,254,135,144,201,255,141,37,56,1,151,60,227,255,90,73,156,1,203,172,187,0,80,151,47,255,94,137,231,255,36,191,59,255,225,209,181,255,74,215,213,254,6,118,179,255,153,54,193,1,50,0,231,0,104,157,72,1,140,227,154,255,182,226,16,254,96,225,92,255,115,20,170,254,6,250,78,0,248,75,173,255,53,89,6,255,0,180,118,0,72,173,1,0,64,8,206,1,174,133,223,0,185,62,133,255,214,11,98,0,197,31,208,0,171,167,244,255,22,231,181,1,150,218,185,0,247,169,97,1,165,139,247,255,47,120,149,1,103,248,51,0,60,69,28,254,25,179,196,0,124,7,218,254,58,107,81,0,184,233,156,255,252,74,36,0,118,188,67,0,141,95,53,255,222,94,165,254,46,61,53,0,206,59,115,255,47,236,250,255,74,5,32,1,129,154,238,255,106,32,226,0,121,187,61,255,3,166,241,254,67,170,172,255,29,216,178,255,23,201,252,0,253,110,243,0,200,125,57,0,109,192,96,255,52,115,238,0,38,121,243,255,201,56,33,0,194,118,130,0,75,96,25,255,170,30,230,254,39,63,253,0,36,45,250,255,251,1,239,0,160,212,92,1,45,209,237,0,243,33,87,254,237,84,201,255,212,18,157,254,212,99,127,255,217,98,16,254,139,172,239,0,168,201,130,255,143,193,169,255,238,151,193,1,215,104,41,0,239,61,165,254,2,3,242,0,22,203,177,254,177,204,22,0,149,129,213,254,31,11,41,255,0,159,121,254,160,25,114,255,162,80,200,0,157,151,11,0,154,134,78,1,216,54,252,0,48,103,133,0,105,220,197,0,253,168,77,254,53,179,23,0,24,121,240,1,255,46,96,255,107,60,135,254,98,205,249,255,63,249,119,255,120,59,211,255,114,180,55,254,91,85,237,0,149,212,77,1,56,73,49,0,86,198,150,0,93,209,160,0,69,205,182,255,244,90,43,0,20,36,176,0,122,116,221,0,51,167,39,1,231,1,63,255,13,197,134,0,3,209,34,255,135,59,202,0,167,100,78,0,47,223,76,0,185,60,62,0,178,166,123,1,132,12,161,255,61,174,43,0,195,69,144,0,127,47,191,1,34,44,78,0,57,234,52,1,255,22,40,255,246,94,146,0,83,228,128,0,60,78,224,255,0,96,210,255,153,175,236,0,159,21,73,0,180,115,196,254,131,225,106,0,255,167,134,0,159,8,112,255,120,68,194,255,176,196,198,255,118,48,168,255,93,169,1,0,112,200,102,1,74,24,254,0,19,141,4,254,142,62,63,0,131,179,187,255,77,156,155,255,119,86,164,0,170,208,146,255,208,133,154,255,148,155,58,255,162,120,232,254,252,213,155,0,241,13,42,0,94,50,131,0,179,170,112,0,140,83,151,255,55,119,84,1,140,35,239,255,153,45,67,1,236,175,39,0,54,151,103,255,158,42,65,255,196,239,135,254,86,53,203,0,149,97,47,254,216,35,17,255,70,3,70,1,103,36,90,255,40,26,173,0,184,48,13,0,163,219,217,255,81,6,1,255,221,170,108,254,233,208,93,0,100,201,249,254,86,36,35,255,209,154,30,1,227,201,251,255,2,189,167,254,100,57,3,0,13,128,41,0,197,100,75,0,150,204,235,255,145,174,59,0,120,248,149,255,85,55,225,0,114,210,53,254,199,204,119,0,14,247,74,1,63,251,129,0,67,104,151,1,135,130,80,0,79,89,55,255,117,230,157,255,25,96,143,0,213,145,5,0,69,241,120,1,149,243,95,255,114,42,20,0,131,72,2,0,154,53,20,255,73,62,109,0,196,102,152,0,41,12,204,255,122,38,11,1,250,10,145,0,207,125,148,0,246,244,222,255,41,32,85,1,112,213,126,0,162,249,86,1,71,198,127,255,81,9,21,1,98,39,4,255,204,71,45,1,75,111,137,0,234,59,231,0,32,48,95,255,204,31,114,1,29,196,181,255,51,241,167,254,93,109,142,0,104,144,45,0,235,12,181,255,52,112,164,0,76,254,202,255,174,14,162,0,61,235,147,255,43,64,185,254,233,125,217,0,243,88,167,254,74,49,8,0,156,204,66,0,124,214,123,0,38,221,118,1,146,112,236,0,114,98,177,0,151,89,199,0,87,197,112,0,185,149,161,0,44,96,165,0,248,179,20,255,188,219,216,254,40,62,13,0,243,142,141,0,229,227,206,255,172,202,35,255,117,176,225,255,82,110,38,1,42,245,14,255,20,83,97,0,49,171,10,0,242,119,120,0,25,232,61,0,212,240,147,255,4,115,56,255,145,17,239,254,202,17,251,255,249,18,245,255,99,117,239,0,184,4,179,255,246,237,51,255,37,239,137,255,166,112,166,255,81,188,33,255,185,250,142,255,54,187,173,0,208,112,201,0,246,43,228,1,104,184,88,255,212,52,196,255,51,117,108,255,254,117,155,0,46,91,15,255,87,14,144,255,87,227,204,0,83,26,83,1,159,76,227,0,159,27,213,1,24,151,108,0,117,144,179,254,137,209,82,0,38,159,10,0,115,133,201,0,223,182,156,1,110,196,93,255,57,60,233,0,5,167,105,255,154,197,164,0,96,34,186,255,147,133,37,1,220,99,190,0,1,167,84,255,20,145,171,0,194,197,251,254,95,78,133,255,252,248,243,255,225,93,131,255,187,134,196,255,216,153,170,0,20,118,158,254,140,1,118,0,86,158,15,1,45,211,41,255,147,1,100,254,113,116,76,255,211,127,108,1,103,15,48,0,193,16,102,1,69,51,95,255,107,128,157,0,137,171,233,0,90,124,144,1,106,161,182,0,175,76,236,1,200,141,172,255,163,58,104,0,233,180,52,255,240,253,14,255,162,113,254,255,38,239,138,254,52,46,166,0,241,101,33,254,131,186,156,0,111,208,62,255,124,94,160,255,31,172,254,0,112,174,56,255,188,99,27,255,67,138,251,0,125,58,128,1,156,152,174,255,178,12,247,255,252,84,158,0,82,197,14,254,172,200,83,255,37,39,46,1,106,207,167,0,24,189,34,0,131,178,144,0,206,213,4,0,161,226,210,0,72,51,105,255,97,45,187,255,78,184,223,255,176,29,251,0,79,160,86,255,116,37,178,0,82,77,213,1,82,84,141,255,226,101,212,1,175,88,199,255,245,94,247,1,172,118,109,255,166,185,190,0,131,181,120,0,87,254,93,255,134,240,73,255,32,245,143,255,139,162,103,255,179,98,18,254,217,204,112,0,147,223,120,255,53,10,243,0,166,140,150,0,125,80,200,255,14,109,219,255,91,218,1,255,252,252,47,254,109,156,116,255,115,49,127,1,204,87,211,255,148,202,217,255,26,85,249,255,14,245,134,1,76,89,169,255,242,45,230,0,59,98,172,255,114,73,132,254,78,155,49,255,158,126,84,0,49,175,43,255,16,182,84,255,157,103,35,0,104,193,109,255,67,221,154,0,201,172,1,254,8,162,88,0,165,1,29,255,125,155,229,255,30,154,220,1,103,239,92,0,220,1,109,255,202,198,1,0,94,2,142,1,36,54,44,0,235,226,158,255,170,251,214,255],"i8",S,p.GLOBAL_BASE+10240),x([185,77,9,0,97,74,242,0,219,163,149,255,240,35,118,255,223,114,88,254,192,199,3,0,106,37,24,255,201,161,118,255,97,89,99,1,224,58,103,255,101,199,147,254,222,60,99,0,234,25,59,1,52,135,27,0,102,3,91,254,168,216,235,0,229,232,136,0,104,60,129,0,46,168,238,0,39,191,67,0,75,163,47,0,143,97,98,255,56,216,168,1,168,233,252,255,35,111,22,255,92,84,43,0,26,200,87,1,91,253,152,0,202,56,70,0,142,8,77,0,80,10,175,1,252,199,76,0,22,110,82,255,129,1,194,0,11,128,61,1,87,14,145,255,253,222,190,1,15,72,174,0,85,163,86,254,58,99,44,255,45,24,188,254,26,205,15,0,19,229,210,254,248,67,195,0,99,71,184,0,154,199,37,255,151,243,121,255,38,51,75,255,201,85,130,254,44,65,250,0,57,147,243,254,146,43,59,255,89,28,53,0,33,84,24,255,179,51,18,254,189,70,83,0,11,156,179,1,98,134,119,0,158,111,111,0,119,154,73,255,200,63,140,254,45,13,13,255,154,192,2,254,81,72,42,0,46,160,185,254,44,112,6,0,146,215,149,1,26,176,104,0,68,28,87,1,236,50,153,255,179,128,250,254,206,193,191,255,166,92,137,254,53,40,239,0,210,1,204,254,168,173,35,0,141,243,45,1,36,50,109,255,15,242,194,255,227,159,122,255,176,175,202,254,70,57,72,0,40,223,56,0,208,162,58,255,183,98,93,0,15,111,12,0,30,8,76,255,132,127,246,255,45,242,103,0,69,181,15,255,10,209,30,0,3,179,121,0,241,232,218,1,123,199,88,255,2,210,202,1,188,130,81,255,94,101,208,1,103,36,45,0,76,193,24,1,95,26,241,255,165,162,187,0,36,114,140,0,202,66,5,255,37,56,147,0,152,11,243,1,127,85,232,255,250,135,212,1,185,177,113,0,90,220,75,255,69,248,146,0,50,111,50,0,92,22,80,0,244,36,115,254,163,100,82,255,25,193,6,1,127,61,36,0,253,67,30,254,65,236,170,255,161,17,215,254,63,175,140,0,55,127,4,0,79,112,233,0,109,160,40,0,143,83,7,255,65,26,238,255,217,169,140,255,78,94,189,255,0,147,190,255,147,71,186,254,106,77,127,255,233,157,233,1,135,87,237,255,208,13,236,1,155,109,36,255,180,100,218,0,180,163,18,0,190,110,9,1,17,63,123,255,179,136,180,255,165,123,123,255,144,188,81,254,71,240,108,255,25,112,11,255,227,218,51,255,167,50,234,255,114,79,108,255,31,19,115,255,183,240,99,0,227,87,143,255,72,217,248,255,102,169,95,1,129,149,149,0,238,133,12,1,227,204,35,0,208,115,26,1,102,8,234,0,112,88,143,1,144,249,14,0,240,158,172,254,100,112,119,0,194,141,153,254,40,56,83,255,121,176,46,0,42,53,76,255,158,191,154,0,91,209,92,0,173,13,16,1,5,72,226,255,204,254,149,0,80,184,207,0,100,9,122,254,118,101,171,255,252,203,0,254,160,207,54,0,56,72,249,1,56,140,13,255,10,64,107,254,91,101,52,255,225,181,248,1,139,255,132,0,230,145,17,0,233,56,23,0,119,1,241,255,213,169,151,255,99,99,9,254,185,15,191,255,173,103,109,1,174,13,251,255,178,88,7,254,27,59,68,255,10,33,2,255,248,97,59,0,26,30,146,1,176,147,10,0,95,121,207,1,188,88,24,0,185,94,254,254,115,55,201,0,24,50,70,0,120,53,6,0,142,66,146,0,228,226,249,255,104,192,222,1,173,68,219,0,162,184,36,255,143,102,137,255,157,11,23,0,125,45,98,0,235,93,225,254,56,112,160,255,70,116,243,1,153,249,55,255,129,39,17,1,241,80,244,0,87,69,21,1,94,228,73,255,78,66,65,255,194,227,231,0,61,146,87,255,173,155,23,255,112,116,219,254,216,38,11,255,131,186,133,0,94,212,187,0,100,47,91,0,204,254,175,255,222,18,215,254,173,68,108,255,227,228,79,255,38,221,213,0,163,227,150,254,31,190,18,0,160,179,11,1,10,90,94,255,220,174,88,0,163,211,229,255,199,136,52,0,130,95,221,255,140,188,231,254,139,113,128,255,117,171,236,254,49,220,20,255,59,20,171,255,228,109,188,0,20,225,32,254,195,16,174,0,227,254,136,1,135,39,105,0,150,77,206,255,210,238,226,0,55,212,132,254,239,57,124,0,170,194,93,255,249,16,247,255,24,151,62,255,10,151,10,0,79,139,178,255,120,242,202,0,26,219,213,0,62,125,35,255,144,2,108,255,230,33,83,255,81,45,216,1,224,62,17,0,214,217,125,0,98,153,153,255,179,176,106,254,131,93,138,255,109,62,36,255,178,121,32,255,120,252,70,0,220,248,37,0,204,88,103,1,128,220,251,255,236,227,7,1,106,49,198,255,60,56,107,0,99,114,238,0,220,204,94,1,73,187,1,0,89,154,34,0,78,217,165,255,14,195,249,255,9,230,253,255,205,135,245,0,26,252,7,255,84,205,27,1,134,2,112,0,37,158,32,0,231,91,237,255,191,170,204,255,152,7,222,0,109,192,49,0,193,166,146,255,232,19,181,255,105,142,52,255,103,16,27,1,253,200,165,0,195,217,4,255,52,189,144,255,123,155,160,254,87,130,54,255,78,120,61,255,14,56,41,0,25,41,125,255,87,168,245,0,214,165,70,0,212,169,6,255,219,211,194,254,72,93,164,255,197,33,103,255,43,142,141,0,131,225,172,0,244,105,28,0,68,68,225,0,136,84,13,255,130,57,40,254,139,77,56,0,84,150,53,0,54,95,157,0,144,13,177,254,95,115,186,0,117,23,118,255,244,166,241,255,11,186,135,0,178,106,203,255,97,218,93,0,43,253,45,0,164,152,4,0,139,118,239,0,96,1,24,254,235,153,211,255,168,110,20,255,50,239,176,0,114,41,232,0,193,250,53,0,254,160,111,254,136,122,41,255,97,108,67,0,215,152,23,255,140,209,212,0,42,189,163,0,202,42,50,255,106,106,189,255,190,68,217,255,233,58,117,0,229,220,243,1,197,3,4,0,37,120,54,254,4,156,134,255,36,61,171,254,165,136,100,255,212,232,14,0,90,174,10,0,216,198,65,255,12,3,64,0,116,113,115,255,248,103,8,0,231,125,18,255,160,28,197,0,30,184,35,1,223,73,249,255,123,20,46,254,135,56,37,255,173,13,229,1,119,161,34,255,245,61,73,0,205,125,112,0,137,104,134,0,217,246,30,255,237,142,143,0,65,159,102,255,108,164,190,0,219,117,173,255,34,37,120,254,200,69,80,0,31,124,218,254,74,27,160,255,186,154,199,255,71,199,252,0,104,81,159,1,17,200,39,0,211,61,192,1,26,238,91,0,148,217,12,0,59,91,213,255,11,81,183,255,129,230,122,255,114,203,145,1,119,180,66,255,72,138,180,0,224,149,106,0,119,82,104,255,208,140,43,0,98,9,182,255,205,101,134,255,18,101,38,0,95,197,166,255,203,241,147,0,62,208,145,255,133,246,251,0,2,169,14,0,13,247,184,0,142,7,254,0,36,200,23,255,88,205,223,0,91,129,52,255,21,186,30,0,143,228,210,1,247,234,248,255,230,69,31,254,176,186,135,255,238,205,52,1,139,79,43,0,17,176,217,254,32,243,67,0,242,111,233,0,44,35,9,255,227,114,81,1,4,71,12,255,38,105,191,0,7,117,50,255,81,79,16,0,63,68,65,255,157,36,110,255,77,241,3,255,226,45,251,1,142,25,206,0,120,123,209,1,28,254,238,255,5,128,126,255,91,222,215,255,162,15,191,0,86,240,73,0,135,185,81,254,44,241,163,0,212,219,210,255,112,162,155,0,207,101,118,0,168,72,56,255,196,5,52,0,72,172,242,255,126,22,157,255,146,96,59,255,162,121,152,254,140,16,95,0,195,254,200,254,82,150,162,0,119,43,145,254,204,172,78,255,166,224,159,0,104,19,237,255,245,126,208,255,226,59,213,0,117,217,197,0,152,72,237,0,220,31,23,254,14,90,231,255,188,212,64,1,60,101,246,255,85,24,86,0,1,177,109,0,146,83,32,1,75,182,192,0,119,241,224,0,185,237,27,255,184,101,82,1,235,37,77,255,253,134,19,0,232,246,122,0,60,106,179,0,195,11,12,0,109,66,235,1,125,113,59,0,61,40,164,0,175,104,240,0,2,47,187,255,50,12,141,0,194,139,181,255,135,250,104,0,97,92,222,255,217,149,201,255,203,241,118,255,79,151,67,0,122,142,218,255,149,245,239,0,138,42,200,254,80,37,97,255,124,112,167,255,36,138,87,255,130,29,147,255,241,87,78,255,204,97,19,1,177,209,22,255,247,227,127,254,99,119,83,255,212,25,198,1,16,179,179,0,145,77,172,254,89,153,14,255,218,189,167,0,107,233,59,255,35,33,243,254,44,112,112,255,161,127,79,1,204,175,10,0,40,21,138,254,104,116,228,0,199,95,137,255,133,190,168,255,146,165,234,1,183,99,39,0,183,220,54,254,255,222,133,0,162,219,121,254,63,239,6,0,225,102,54,255,251,18,246,0,4,34,129,1,135,36,131,0,206,50,59,1,15,97,183,0,171,216,135,255,101,152,43,255,150,251,91,0,38,145,95,0,34,204,38,254,178,140,83,255,25,129,243,255,76,144,37,0,106,36,26,254,118,144,172,255,68,186,229,255,107,161,213,255,46,163,68,255,149,170,253,0,187,17,15,0,218,160,165,255,171,35,246,1,96,13,19,0,165,203,117,0,214,107,192,255,244,123,177,1,100,3,104,0,178,242,97,255,251,76,130,255,211,77,42,1,250,79,70,255,63,244,80,1,105,101,246,0,61,136,58,1,238,91,213,0,14,59,98,255,167,84,77,0,17,132,46,254,57,175,197,255,185,62,184,0,76,64,207,0,172,175,208,254,175,74,37,0,138,27,211,254,148,125,194,0,10,89,81,0,168,203,101,255,43,213,209,1,235,245,54,0,30,35,226,255,9,126,70,0,226,125,94,254,156,117,20,255,57,248,112,1,230,48,64,255,164,92,166,1,224,214,230,255,36,120,143,0,55,8,43,255,251,1,245,1,106,98,165,0,74,107,106,254,53,4,54,255,90,178,150,1,3,120,123,255,244,5,89,1,114,250,61,255,254,153,82,1,77,15,17,0,57,238,90,1,95,223,230,0,236,52,47,254,103,148,164,255,121,207,36,1,18,16,185,255,75,20,74,0,187,11,101,0,46,48,129,255,22,239,210,255,77,236,129,255,111,77,204,255,61,72,97,255,199,217,251,255,42,215,204,0,133,145,201,255,57,230,146,1,235,100,198,0,146,73,35,254,108,198,20,255,182,79,210,255,82,103,136,0,246,108,176,0,34,17,60,255,19,74,114,254,168,170,78,255,157,239,20,255,149,41,168,0,58,121,28,0,79,179,134,255,231,121,135,255,174,209,98,255,243,122,190,0,171,166,205,0,212,116,48,0,29,108,66,255,162,222,182,1,14,119,21,0,213,39,249,255,254,223,228,255,183,165,198,0,133,190,48,0,124,208,109,255,119,175,85,255,9,209,121,1,48,171,189,255,195,71,134,1,136,219,51,255,182,91,141,254,49,159,72,0,35,118,245,255,112,186,227,255,59,137,31,0,137,44,163,0,114,103,60,254,8,213,150,0,162,10,113,255,194,104,72,0,220,131,116,255,178,79,92,0,203,250,213,254,93,193,189,255,130,255,34,254,212,188,151,0,136,17,20,255,20,101,83,255,212,206,166,0,229,238,73,255,151,74,3,255,168,87,215,0,155,188,133,255,166,129,73,0,240,79,133,255,178,211,81,255,203,72,163,254,193,168,165,0,14,164,199,254,30,255,204,0,65,72,91,1,166,74,102,255,200,42,0,255,194,113,227,255,66,23,208,0,229,216,100,255,24,239,26,0,10,233,62,255,123,10,178,1,26,36,174,255,119,219,199,1,45,163,190,0,16,168,42,0,166,57,198,255,28,26,26,0,126,165,231,0,251,108,100,255,61,229,121,255,58,118,138,0,76,207,17,0,13,34,112,254,89,16,168,0,37,208,105,255,35,201,215,255,40,106,101,254,6,239,114,0,40,103,226,254,246,127,110,255,63,167,58,0,132,240,142,0,5,158,88,255,129,73,158,255,94,89,146,0,230,54,146,0,8,45,173,0,79,169,1,0,115,186,247,0,84,64,131,0,67,224,253,255,207,189,64,0,154,28,81,1,45,184,54,255,87,212,224,255,0,96,73,255,129,33,235,1,52,66,80,255,251,174,155,255,4,179,37,0,234,164,93,254,93,175,253,0,198,69,87,255,224,106,46,0,99,29,210,0,62,188,114,255,44,234,8,0,169,175,247,255,23,109,137,255,229,182,39,0,192,165,94,254,245,101,217,0,191,88,96,0,196,94,99,255,106,238,11,254,53,126,243,0,94,1,101,255,46,147,2,0,201,124,124,255,141,12,218,0,13,166,157,1,48,251,237,255,155,250,124,255,106,148,146,255,182,13,202,0,28,61,167,0,217,152,8,254,220,130,45,255,200,230,255,1,55,65,87,255,93,191,97,254,114,251,14,0,32,105,92,1,26,207,141,0,24,207,13,254,21,50,48,255,186,148,116,255,211,43,225,0,37,34,162,254,164,210,42,255,68,23,96,255,182,214,8,255,245,117,137,255,66,195,50,0,75,12,83,254,80,140,164,0,9,165,36,1,228,110,227,0,241,17,90,1,25,52,212,0,6,223,12,255,139,243,57,0,12,113,75,1,246,183,191,255,213,191,69,255,230,15,142,0,1,195,196,255,138,171,47,255,64,63,106,1,16,169,214,255,207,174,56,1,88,73,133,255,182,133,140,0,177,14,25,255,147,184,53,255,10,227,161,255,120,216,244,255,73,77,233,0,157,238,139,1,59,65,233,0,70,251,216,1,41,184,153,255,32,203,112,0,146,147,253,0,87,101,109,1,44,82,133,255,244,150,53,255,94,152,232,255,59,93,39,255,88,147,220,255,78,81,13,1,32,47,252,255,160,19,114,255,93,107,39,255,118,16,211,1,185,119,209,255,227,219,127,254,88,105,236,255,162,110,23,255,36,166,110,255,91,236,221,255,66,234,116,0,111,19,244,254,10,233,26,0,32,183,6,254,2,191,242,0,218,156,53,254,41,60,70,255,168,236,111,0,121,185,126,255,238,142,207,255,55,126,52,0,220,129,208,254,80,204,164,255,67,23,144,254,218,40,108,255,127,202,164,0,203,33,3,255,2,158,0,0,37,96,188,255,192,49,74,0,109,4,0,0,111,167,10,254,91,218,135,255,203,66,173,255,150,194,226,0,201,253,6,255,174,102,121,0,205,191,110,0,53,194,4,0,81,40,45,254,35,102,143,255,12,108,198,255,16,27,232,255,252,71,186,1,176,110,114,0,142,3,117,1,113,77,142,0,19,156,197,1,92,47,252,0,53,232,22,1,54,18,235,0,46,35,189,255,236,212,129,0,2,96,208,254,200,238,199,255,59,175,164,255,146,43,231,0,194,217,52,255,3,223,12,0,138,54,178,254,85,235,207,0,232,207,34,0,49,52,50,255,166,113,89,255,10,45,216,255,62,173,28,0,111,165,246,0,118,115,91,255,128,84,60,0,167,144,203,0,87,13,243,0,22,30,228,1,177,113,146,255,129,170,230,254,252,153,129,255,145,225,43,0,70,231,5,255,122,105,126,254,86,246,148,255,110,37,154,254,209,3,91,0,68,145,62,0,228,16,165,255,55,221,249,254,178,210,91,0,83,146,226,254,69,146,186,0,93,210,104,254,16,25,173,0,231,186,38,0,189,122,140,255,251,13,112,255,105,110,93,0,251,72,170,0,192,23,223,255,24,3,202,1,225,93,228,0,153,147,199,254,109,170,22,0,248,101,246,255,178,124,12,255,178,254,102,254,55,4,65,0,125,214,180,0,183,96,147,0,45,117,23,254,132,191,249,0,143,176,203,254,136,183,54,255,146,234,177,0,146,101,86,255,44,123,143,1,33,209,152,0,192,90,41,254,83,15,125,255,213,172,82,0,215,169,144,0,16,13,34,0,32,209,100,255,84,18,249,1,197,17,236,255,217,186,230,0,49,160,176,255,111,118,97,255,237,104,235,0,79,59,92,254,69,249,11,255,35,172,74,1,19,118,68,0,222,124,165,255,180,66,35,255,86,174,246,0,43,74,111,255,126,144,86,255,228,234,91,0,242,213,24,254,69,44,235,255,220,180,35,0,8,248,7,255,102,47,92,255,240,205,102,255,113,230,171,1,31,185,201,255,194,246,70,255,122,17,187,0,134,70,199,255,149,3,150,255,117,63,103,0,65,104,123,255,212,54,19,1,6,141,88,0,83,134,243,255,136,53,103,0,169,27,180,0,177,49,24,0,111,54,167,0,195,61,215,255,31,1,108,1,60,42,70,0,185,3,162,255,194,149,40,255,246,127,38,254,190,119,38,255,61,119,8,1,96,161,219,255,42,203,221,1,177,242,164,255,245,159,10,0,116,196,0,0,5,93,205,254,128,127,179,0,125,237,246,255,149,162,217,255,87,37,20,254,140,238,192,0,9,9,193,0,97,1,226,0,29,38,10,0,0,136,63,255,229,72,210,254,38,134,92,255,78,218,208,1,104,36,84,255,12,5,193,255,242,175,61,255,191,169,46,1,179,147,147,255,113,190,139,254,125,172,31,0,3,75,252,254,215,36,15,0,193,27,24,1,255,69,149,255,110,129,118,0,203,93,249,0,138,137,64,254,38,70,6,0,153,116,222,0,161,74,123,0,193,99,79,255,118,59,94,255,61,12,43,1,146,177,157,0,46,147,191,0,16,255,38,0,11,51,31,1,60,58,98,255,111,194,77,1,154,91,244,0,140,40,144,1,173,10,251,0,203,209,50,254,108,130,78,0,228,180,90,0,174,7,250,0,31,174,60,0,41,171,30,0,116,99,82,255,118,193,139,255,187,173,198,254,218,111,56,0,185,123,216,0,249,158,52,0,52,180,93,255,201,9,91,255,56,45,166,254,132,155,203,255,58,232,110,0,52,211,89,255,253,0,162,1,9,87,183,0,145,136,44,1,94,122,245,0,85,188,171,1,147,92,198,0,0,8,104,0,30,95,174,0,221,230,52,1,247,247,235,255,137,174,53,255,35,21,204,255,71,227,214,1,232,82,194,0,11,48,227,255,170,73,184,255,198,251,252,254,44,112,34,0,131,101,131,255,72,168,187,0,132,135,125,255,138,104,97,255,238,184,168,255,243,104,84,255,135,216,226,255,139,144,237,0,188,137,150,1,80,56,140,255,86,169,167,255,194,78,25,255,220,17,180,255,17,13,193,0,117,137,212,255,141,224,151,0,49,244,175,0,193,99,175,255,19,99,154,1,255,65,62,255,156,210,55,255,242,244,3,255,250,14,149,0,158,88,217,255,157,207,134,254,251,232,28,0,46,156,251,255,171,56,184,255,239,51,234,0,142,138,131,255,25,254,243,1,10,201,194,0,63,97,75,0,210,239,162,0,192,200,31,1,117,214,243,0,24,71,222,254,54,40,232,255,76,183,111,254,144,14,87,255,214,79,136,255,216,196,212,0,132,27,140,254,131,5,253,0,124,108,19,255,28,215,75,0,76,222,55,254,233,182,63,0,68,171,191,254,52,111,222,255,10,105,77,255,80,170,235,0,143,24,88,255,45,231,121,0,148,129,224,1,61,246,84,0,253,46,219,255,239,76,33,0,49,148,18,254,230,37,69,0,67,134,22,254,142,155,94,0,31,157,211,254,213,42,30,255,4,228,247,254,252,176,13,255,39,0,31,254,241,244,255,255,170,45,10,254,253,222,249,0,222,114,132,0,255,47,6,255,180,163,179,1,84,94,151,255,89,209,82,254,229,52,169,255,213,236,0,1,214,56,228,255,135,119,151,255,112,201,193,0,83,160,53,254,6,151,66,0,18,162,17,0,233,97,91,0,131,5,78,1,181,120,53,255,117,95,63,255,237,117,185,0,191,126,136,255,144,119,233,0,183,57,97,1,47,201,187,255,167,165,119,1,45,100,126,0,21,98,6,254,145,150,95,255,120,54,152,0,209,98,104,0,143,111,30,254,184,148,249,0,235,216,46,0,248,202,148,255,57,95,22,0,242,225,163,0,233,247,232,255,71,171,19,255,103,244,49,255,84,103,93,255,68,121,244,1,82,224,13,0,41,79,43,255,249,206,167,255,215,52,21,254,192,32,22,255,247,111,60,0,101,74,38,255,22,91,84,254,29,28,13,255,198,231,215,254,244,154,200,0,223,137,237,0,211,132,14,0,95,64,206,255,17,62,247,255,233,131,121,1,93,23,77,0,205,204,52,254,81,189,136,0,180,219,138,1,143,18,94,0,204,43,140,254,188,175,219,0,111,98,143,255,151,63,162,255,211,50,71,254,19,146,53,0,146,45,83,254,178,82,238,255,16,133,84,255,226,198,93,255,201,97,20,255,120,118,35,255,114,50,231,255,162,229,156,255,211,26,12,0,114,39,115,255,206,212,134,0,197,217,160,255,116,129,94,254,199,215,219,255,75,223,249,1,253,116,181,255,232,215,104,255,228,130,246,255,185,117,86,0,14,5,8,0,239,29,61,1,237,87,133,255,125,146,137,254,204,168,223,0,46,168,245,0,154,105,22,0,220,212,161,255,107,69,24,255,137,218,181,255,241,84,198,255,130,122,211,255,141,8,153,255,190,177,118,0,96,89,178,0,255,16,48,254,122,96,105,255,117,54,232,255,34,126,105,255,204,67,166,0,232,52,138,255,211,147,12,0,25,54,7,0,44,15,215,254,51,236,45,0,190,68,129,1,106,147,225,0,28,93,45,254,236,141,15,255,17,61,161,0,220,115,192,0,236,145,24,254,111,168,169,0,224,58,63,255,127,164,188,0,82,234,75,1,224,158,134,0,209,68,110,1,217,166,217,0,70,225,166,1,187,193,143,255,16,7,88,255,10,205,140,0,117,192,156,1,17,56,38,0,27,124,108,1,171,215,55,255,95,253,212,0,155,135,168,255,246,178,153,254,154,68,74,0,232,61,96,254,105,132,59,0,33,76,199,1,189,176,130,255,9,104,25,254,75,198,102,255,233,1,112,0,108,220,20,255,114,230,70,0,140,194,133,255,57,158,164,254,146,6,80,255,169,196,97,1,85,183,130,0,70,158,222,1,59,237,234,255,96,25,26,255,232,175,97,255,11,121,248,254,88,35,194,0,219,180,252,254,74,8,227,0,195,227,73,1,184,110,161,255,49,233,164,1,128,53,47,0,82,14,121,255,193,190,58,0,48,174,117,255,132,23,32,0,40,10,134,1,22,51,25,255,240,11,176,255,110,57,146,0,117,143,239,1,157,101,118,255,54,84,76,0,205,184,18,255,47,4,72,255,78,112,85,255,193,50,66,1,93,16,52,255,8,105,134,0,12,109,72,255,58,156,251,0,144,35,204,0,44,160,117,254,50,107,194,0,1,68,165,255,111,110,162,0,158,83,40,254,76,214,234,0,58,216,205,255,171,96,147,255,40,227,114,1,176,227,241,0,70,249,183,1,136,84,139,255,60,122,247,254,143,9,117,255,177,174,137,254,73,247,143,0,236,185,126,255,62,25,247,255,45,64,56,255,161,244,6,0,34,57,56,1,105,202,83,0,128,147,208,0,6,103,10,255,74,138,65,255,97,80,100,255,214,174,33,255,50,134,74,255,110,151,130,254,111,84,172,0,84,199,75,254,248,59,112,255,8,216,178,1,9,183,95,0,238,27,8,254,170,205,220,0,195,229,135,0,98,76,237,255,226,91,26,1,82,219,39,255,225,190,199,1,217,200,121,255,81,179,8,255,140,65,206,0,178,207,87,254,250,252,46,255,104,89,110,1,253,189,158,255,144,214,158,255,160,245,54,255,53,183,92,1,21,200,194,255,146,33,113,1,209,1,255,0,235,106,43,255,167,52,232,0,157,229,221,0,51,30,25,0,250,221,27,1,65,147,87,255,79,123,196,0,65,196,223,255,76,44,17,1,85,241,68,0,202,183,249,255,65,212,212,255,9,33,154,1,71,59,80,0,175,194,59,255,141,72,9,0,100,160,244,0,230,208,56,0,59,25,75,254,80,194,194,0,18,3,200,254,160,159,115,0,132,143,247,1,111,93,57,255,58,237,11,1,134,222,135,255,122,163,108,1,123,43,190,255,251,189,206,254,80,182,72,255,208,246,224,1,17,60,9,0,161,207,38,0,141,109,91,0,216,15,211,255,136,78,110,0,98,163,104,255,21,80,121,255,173,178,183,1,127,143,4,0,104,60,82,254,214,16,13,255,96,238,33,1,158,148,230,255,127,129,62,255,51,255,210,255,62,141,236,254,157,55,224,255,114,39,244,0,192,188,250,255,228,76,53,0,98,84,81,255,173,203,61,254,147,50,55,255,204,235,191,0,52,197,244,0,88,43,211,254,27,191,119,0,188,231,154,0,66,81,161,0,92,193,160,1,250,227,120,0,123,55,226,0,184,17,72,0,133,168,10,254,22,135,156,255,41,25,103,255,48,202,58,0,186,149,81,255,188,134,239,0,235,181,189,254,217,139,188,255,74,48,82,0,46,218,229,0,189,253,251,0,50,229,12,255,211,141,191,1,128,244,25,255,169,231,122,254,86,47,189,255,132,183,23,255,37,178,150,255,51,137,253,0,200,78,31,0,22,105,50,0,130,60,0,0,132,163,91,254,23,231,187,0,192,79,239,0,157,102,164,255,192,82,20,1,24,181,103,255,240,9,234,0,1,123,164,255,133,233,0,255,202,242,242,0,60,186,245,0,241,16,199,255,224,116,158,254,191,125,91,255,224,86,207,0,121,37,231,255,227,9,198,255,15,153,239,255,121,232,217,254,75,112,82,0,95,12,57,254,51,214,105,255,148,220,97,1,199,98,36,0,156,209,12,254,10,212,52,0,217,180,55,254,212,170,232,255,216,20,84,255,157,250,135,0,157,99,127,254,1,206,41,0,149,36,70,1,54,196,201,255,87,116,0,254,235,171,150,0,27,163,234,0,202,135,180,0,208,95,0,254,123,156,93,0,183,62,75,0,137,235,182,0,204,225,255,255,214,139,210,255,2,115,8,255,29,12,111,0,52,156,1,0,253,21,251,255,37,165,31,254,12,130,211,0,106,18,53,254,42,99,154,0,14,217,61,254,216,11,92,255,200,197,112,254,147,38,199,0,36,252,120,254,107,169,77,0,1,123,159,255,207,75,102,0,163,175,196,0,44,1,240,0,120,186,176,254,13,98,76,255,237,124,241,255,232,146,188,255,200,96,224,0,204,31,41,0,208,200,13,0,21,225,96,255,175,156,196,0,247,208,126,0,62,184,244,254,2,171,81,0,85,115,158,0,54,64,45,255,19,138,114,0,135,71,205,0,227,47,147,1,218,231,66,0,253,209,28,0,244,15,173,255,6,15,118,254,16,150,208,255,185,22,50,255,86,112,207,255,75,113,215,1,63,146,43,255,4,225,19,254,227,23,62,255,14,255,214,254,45,8,205,255,87,197,151,254,210,82,215,255,245,248,247,255,128,248,70,0,225,247,87,0,90,120,70,0,213,245,92,0,13,133,226,0,47,181,5,1,92,163,105,255,6,30,133,254,232,178,61,255,230,149,24,255,18,49,158,0,228,100,61,254,116,243,251,255,77,75,92,1,81,219,147,255,76,163,254,254,141,213,246,0,232,37,152,254,97,44,100,0,201,37,50,1,212,244,57,0,174,171,183,255,249,74,112,0,166,156,30,0,222,221,97,255,243,93,73,254,251,101,100,255,216,217,93,255,254,138,187,255,142,190,52,255,59,203,177,255,200,94,52,0,115,114,158,255,165,152,104,1,126,99,226,255,118,157,244,1,107,200,16,0,193,90,229,0,121,6,88,0,156,32,93,254,125,241,211,255,14,237,157,255,165,154,21,255,184,224,22,255,250,24,152,255,113,77,31,0,247,171,23,255,237,177,204,255,52,137,145,255,194,182,114,0,224,234,149,0,10,111,103,1,201,129,4,0,238,142,78,0,52,6,40,255,110,213,165,254,60,207,253,0,62,215,69,0,96,97,0,255,49,45,202,0,120,121,22,255,235,139,48,1,198,45,34,255,182,50,27,1,131,210,91,255,46,54,128,0,175,123,105,255,198,141,78,254,67,244,239,255,245,54,103,254,78,38,242,255,2,92,249,254,251,174,87,255,139,63,144,0,24,108,27,255,34,102,18,1,34,22,152,0,66,229,118,254,50,143,99,0,144,169,149,1,118,30,152,0,178,8,121,1,8,159,18,0,90,101,230,255,129,29,119,0,68,36,11,1,232,183,55,0,23,255,96,255,161,41,193,255,63,139,222,0,15,179,243,0,255,100,15,255,82,53,135,0,137,57,149,1,99,240,170,255,22,230,228,254,49,180,82,255,61,82,43,0,110,245,217,0,199,125,61,0,46,253,52,0,141,197,219,0,211,159,193,0,55,121,105,254,183,20,129,0,169,119,170,255,203,178,139,255,135,40,182,255,172,13,202,255,65,178,148,0,8,207,43,0,122,53,127,1,74,161,48,0,227,214,128,254,86,11,243,255,100,86,7,1,245,68,134,255,61,43,21,1,152,84,94,255,190,60,250,254,239,118,232,255,214,136,37,1,113,76,107,255,93,104,100,1,144,206,23,255,110,150,154,1,228,103,185,0,218,49,50,254,135,77,139,255,185,1,78,0,0,161,148,255,97,29,233,255,207,148,149,255,160,168,0,0,91,128,171,255,6,28,19,254,11,111,247,0,39,187,150,255,138,232,149,0,117,62,68,255,63,216,188,255,235,234,32,254,29,57,160,255,25,12,241,1,169,60,191,0,32,131,141,255,237,159,123,255,94,197,94,254,116,254,3,255,92,179,97,254,121,97,92,255,170,112,14,0,21,149,248,0,248,227,3,0,80,96,109,0,75,192,74,1,12,90,226,255,161,106,68,1,208,114,127,255,114,42,255,254,74,26,74,255,247,179,150,254,121,140,60,0,147,70,200,255,214,40,161,255,161,188,201,255,141,65,135,255,242,115,252,0,62,47,202,0,180,149,255,254,130,55,237,0,165,17,186,255,10,169,194,0,156,109,218,255,112,140,123,255,104,128,223,254,177,142,108,255,121,37,219,255,128,77,18,255,111,108,23,1,91,192,75,0,174,245,22,255,4,236,62,255,43,64,153,1,227,173,254,0,237,122,132,1,127,89,186,255,142,82,128,254,252,84,174,0,90,179,177,1,243,214,87,255,103,60,162,255,208,130,14,255,11,130,139,0,206,129,219,255,94,217,157,255,239,230,230,255,116,115,159,254,164,107,95,0,51,218,2,1,216,125,198,255,140,202,128,254,11,95,68,255,55,9,93,254,174,153,6,255,204,172,96,0,69,160,110,0,213,38,49,254,27,80,213,0,118,125,114,0,70,70,67,255,15,142,73,255,131,122,185,255,243,20,50,254,130,237,40,0,210,159,140,1,197,151,65,255,84,153,66,0,195,126,90,0,16,238,236,1,118,187,102,255,3,24,133,255,187,69,230,0,56,197,92,1,213,69,94,255,80,138,229,1,206,7,230,0,222,111,230,1,91,233,119,255,9,89,7,1,2,98,1,0,148,74,133,255,51,246,180,255,228,177,112,1,58,189,108,255,194,203,237,254,21,209,195,0,147,10,35,1,86,157,226,0,31,163,139,254,56,7,75,255,62,90,116,0,181,60,169,0,138,162,212,254,81,167,31,0,205,90,112,255,33,112,227,0,83,151,117,1,177,224,73,255,174,144,217,255,230,204,79,255,22,77,232,255,114,78,234,0,224,57,126,254,9,49,141,0,242,147,165,1,104,182,140,255,167,132,12,1,123,68,127,0,225,87,39,1,251,108,8,0,198,193,143,1,121,135,207,255,172,22,70,0,50,68,116,255,101,175,40,255,248,105,233,0,166,203,7,0,110,197,218,0,215,254,26,254,168,226,253,0,31,143,96,0,11,103,41,0,183,129,203,254,100,247,74,255,213,126,132,0,210,147,44,0,199,234,27,1,148,47,181,0,155,91,158,1,54,105,175,255,2,78,145,254,102,154,95,0,128,207,127,254,52,124,236,255,130,84,71,0,221,243,211,0,152,170,207,0,222,106,199,0,183,84,94,254,92,200,56,255,138,182,115,1,142,96,146,0,133,136,228,0,97,18,150,0,55,251,66,0,140,102,4,0,202,103,151,0,30,19,248,255,51,184,207,0,202,198,89,0,55,197,225,254,169,95,249,255,66,65,68,255,188,234,126,0,166,223,100,1,112,239,244,0,144,23,194,0,58,39,182,0,244,44,24,254,175,68,179,255,152,118,154,1,176,162,130,0,217,114,204,254,173,126,78,255,33,222,30,255,36,2,91,255,2,143,243,0,9,235,215,0,3,171,151,1,24,215,245,255,168,47,164,254,241,146,207,0,69,129,180,0,68,243,113,0,144,53,72,254,251,45,14,0,23,110,168,0,68,68,79,255,110,70,95,254,174,91,144,255,33,206,95,255,137,41,7,255,19,187,153,254,35,255,112,255,9,145,185,254,50,157,37,0,11,112,49,1,102,8,190,255,234,243,169,1,60,85,23,0,74,39,189,0,116,49,239,0,173,213,210,0,46,161,108,255,159,150,37,0,196,120,185,255,34,98,6,255,153,195,62,255,97,230,71,255,102,61,76,0,26,212,236,255,164,97,16,0,198,59,146,0,163,23,196,0,56,24,61,0,181,98,193,0,251,147,229,255,98,189,24,255,46,54,206,255,234,82,246,0,183,103,38,1,109,62,204,0,10,240,224,0,146,22,117,255,142,154,120,0,69,212,35,0,208,99,118,1,121,255,3,255,72,6,194,0,117,17,197,255,125,15,23,0,154,79,153,0,214,94,197,255,185,55,147,255,62,254,78,254,127,82,153,0,110,102,63,255,108,82,161,255,105,187,212,1,80,138,39,0,60,255,93,255,72,12,186,0,210,251,31,1,190,167,144,255,228,44,19,254,128,67,232,0,214,249,107,254,136,145,86,255,132,46,176,0,189,187,227,255,208,22,140,0,217,211,116,0,50,81,186,254,139,250,31,0,30,64,198,1,135,155,100,0,160,206,23,254,187,162,211,255,16,188,63,0,254,208,49,0,85,84,191,0,241,192,242,255,153,126,145,1,234,162,162,255,230,97,216,1,64,135,126,0,190,148,223,1,52,0,43,255,28,39,189,1,64,136,238,0,175,196,185,0,98,226,213,255,127,159,244,1,226,175,60,0,160,233,142,1,180,243,207,255,69,152,89,1,31,101,21,0,144,25,164,254,139,191,209,0,91,25,121,0,32,147,5,0,39,186,123,255,63,115,230,255,93,167,198,255,143,213,220,255,179,156,19,255,25,66,122,0,214,160,217,255,2,45,62,255,106,79,146,254,51,137,99,255,87,100,231,255,175,145,232,255,101,184,1,255,174,9,125,0,82,37,161,1,36,114,141,255,48,222,142,255,245,186,154,0,5,174,221,254,63,114,155,255,135,55,160,1,80,31,135,0,126,250,179,1,236,218,45,0,20,28,145,1,16,147,73,0,249,189,132,1,17,189,192,255,223,142,198,255,72,20,15,255,250,53,237,254,15,11,18,0,27,211,113,254,213,107,56,255,174,147,146,255,96,126,48,0,23,193,109,1,37,162,94,0,199,157,249,254,24,128,187,255,205,49,178,254,93,164,42,255,43,119,235,1,88,183,237,255,218,210,1,255,107,254,42,0,230,10,99,255,162,0,226,0,219,237,91,0,129,178,203,0,208,50,95,254,206,208,95,255,247,191,89,254,110,234,79,255,165,61,243,0,20,122,112,255,246,246,185,254,103,4,123,0,233,99,230,1,219,91,252,255,199,222,22,255,179,245,233,255,211,241,234,0,111,250,192,255,85,84,136,0,101,58,50,255,131,173,156,254,119,45,51,255,118,233,16,254,242,90,214,0,94,159,219,1,3,3,234,255,98,76,92,254,80,54,230,0,5,228,231,254,53,24,223,255,113,56,118,1,20,132,1,255,171,210,236,0,56,241,158,255,186,115,19,255,8,229,174,0,48,44,0,1,114,114,166,255,6,73,226,255,205,89,244,0,137,227,75,1,248,173,56,0,74,120,246,254,119,3,11,255,81,120,198,255,136,122,98,255,146,241,221,1,109,194,78,255,223,241,70,1,214,200,169,255,97,190,47,255,47,103,174,255,99,92,72,254,118,233,180,255,193,35,233,254,26,229,32,255,222,252,198,0,204,43,71,255,199,84,172,0,134,102,190,0,111,238,97,254,230,40,230,0,227,205,64,254,200,12,225,0,166,25,222,0,113,69,51,255,143,159,24,0,167,184,74,0,29,224,116,254,158,208,233,0,193,116,126,255,212,11,133,255,22,58,140,1,204,36,51,255,232,30,43,0,235,70,181,255,64,56,146,254,169,18,84,255,226,1,13,255,200,50,176,255,52,213,245,254,168,209,97,0,191,71,55,0,34,78,156,0,232,144,58,1,185,74,189,0,186,142,149,254,64,69,127,255,161,203,147,255,176,151,191,0,136,231,203,254,163,182,137,0,161,126,251,254,233,32,66,0,68,207,66,0,30,28,37,0,93,114,96,1,254,92,247,255,44,171,69,0,202,119,11,255,188,118,50,1,255,83,136,255,71,82,26,0,70,227,2,0,32,235,121,1,181,41,154,0,71,134,229,254,202,255,36,0,41,152,5,0,154,63,73,255,34,182,124,0,121,221,150,255,26,204,213,1,41,172,87,0,90,157,146,255,109,130,20,0,71,107,200,255,243,102,189,0,1,195,145,254,46,88,117,0,8,206,227,0,191,110,253,255,109,128,20,254,134,85,51,255,137,177,112,1,216,34,22,255,131,16,208,255,121,149,170,0,114,19,23,1,166,80,31,255,113,240,122,0,232,179,250,0,68,110,180,254,210,170,119,0,223,108,164,255,207,79,233,255,27,229,226,254,209,98,81,255,79,68,7,0,131,185,100,0,170,29,162,255,17,162,107,255,57,21,11,1,100,200,181,255,127,65,166,1,165,134,204,0,104,167,168,0,1,164,79,0,146,135,59,1,70,50,128,255,102,119,13,254,227,6,135,0,162,142,179,255,160,100,222,0,27,224,219,1,158,93,195,255,234,141,137,0,16,24,125,255,238,206,47,255,97,17,98,255,116,110,12,255,96,115,77,0,91,227,232,255,248,254,79,255,92,229,6,254,88,198,139,0,206,75,129,0,250,77,206,255,141,244,123,1,138,69,220,0,32,151,6,1,131,167,22,255,237,68,167,254,199,189,150,0,163,171,138,255,51,188,6,255,95,29,137,254,148,226,179,0,181,107,208,255,134,31,82,255,151,101,45,255,129,202,225,0,224,72,147,0,48,138,151,255,195,64,206,254,237,218,158,0,106,29,137,254,253,189,233,255,103,15,17,255,194,97,255,0,178,45,169,254,198,225,155,0,39,48,117,255,135,106,115,0,97,38,181,0,150,47,65,255,83,130,229,254,246,38,129,0,92,239,154,254,91,99,127,0,161,111,33,255,238,217,242,255,131,185,195,255,213,191,158,255,41,150,218,0,132,169,131,0,89,84,252,1,171,70,128,255,163,248,203,254,1,50,180,255,124,76,85,1,251,111,80,0,99,66,239,255,154,237,182,255,221,126,133,254,74,204,99,255,65,147,119,255,99,56,167,255,79,248,149,255,116,155,228,255,237,43,14,254,69,137,11,255,22,250,241,1,91,122,143,255,205,249,243,0,212,26,60,255,48,182,176,1,48,23,191,255,203,121,152,254,45,74,213,255,62,90,18,254,245,163,230,255,185,106,116,255,83,35,159,0,12,33,2,255,80,34,62,0,16,87,174,255,173,101,85,0,202,36,81,254,160,69,204,255,64,225,187,0,58,206,94,0,86,144,47,0,229,86,245,0,63,145,190,1,37,5,39,0,109,251,26,0,137,147,234,0,162,121,145,255,144,116,206,255,197,232,185,255,183,190,140,255,73,12,254,255,139,20,242,255,170,90,239,255,97,66,187,255,245,181,135,254,222,136,52,0,245,5,51,254,203,47,78,0,152,101,216,0,73,23,125,0,254,96,33,1,235,210,73,255,43,209,88,1,7,129,109,0,122,104,228,254,170,242,203,0,242,204,135,255,202,28,233,255,65,6,127,0,159,144,71,0,100,140,95,0,78,150,13,0,251,107,118,1,182,58,125,255,1,38,108,255,141,189,209,255,8,155,125,1,113,163,91,255,121,79,190,255,134,239,108,255,76,47,248,0,163,228,239,0,17,111,10,0,88,149,75,255,215,235,239,0,167,159,24,255,47,151,108,255,107,209,188,0,233,231,99,254,28,202,148,255,174,35,138,255,110,24,68,255,2,69,181,0,107,102,82,0,102,237,7,0,92,36,237,255,221,162,83,1,55,202,6,255,135,234,135,255,24,250,222,0,65,94,168,254,245,248,210,255,167,108,201,254,255,161,111,0,205,8,254,0,136,13,116,0,100,176,132,255,43,215,126,255,177,133,130,255,158,79,148,0,67,224,37,1,12,206,21,255,62,34,110,1,237,104,175,255,80,132,111,255,142,174,72,0,84,229,180,254,105,179,140,0,64,248,15,255,233,138,16,0,245,67,123,254,218,121,212,255,63,95,218,1,213,133,137,255,143,182,82,255,48,28,11,0,244,114,141,1,209,175,76,255,157,181,150,255,186,229,3,255,164,157,111,1,231,189,139,0,119,202,190,255,218,106,64,255,68,235,63,254,96,26,172,255,187,47,11,1,215,18,251,255,81,84,89,0,68,58,128,0,94,113,5,1,92,129,208,255,97,15,83,254,9,28,188,0,239,9,164,0,60,205,152,0,192,163,98,255,184,18,60,0,217,182,139,0,109,59,120,255,4,192,251,0,169,210,240,255,37,172,92,254,148,211,245,255,179,65,52,0,253,13,115,0,185,174,206,1,114,188,149,255,237,90,173,0,43,199,192,255,88,108,113,0,52,35,76,0,66,25,148,255,221,4,7,255,151,241,114,255,190,209,232,0,98,50,199,0,151,150,213,255,18,74,36,1,53,40,7,0,19,135,65,255,26,172,69,0,174,237,85,0,99,95,41,0,3,56,16,0,39,160,177,255,200,106,218,254,185,68,84,255,91,186,61,254,67,143,141,255,13,244,166,255,99,114,198,0,199,110,163,255,193,18,186,0,124,239,246,1,110,68,22,0,2,235,46,1,212,60,107,0,105,42,105,1,14,230,152,0,7,5,131,0,141,104,154,255,213,3,6,0,131,228,162,255,179,100,28,1,231,123,85,255,206,14,223,1,253,96,230,0,38,152,149,1,98,137,122,0,214,205,3,255,226,152,179,255,6,133,137,0,158,69,140,255,113,162,154,255,180,243,172,255,27,189,115,255,143,46,220,255,213,134,225,255,126,29,69,0,188,43,137,1,242,70,9,0,90,204,255,255,231,170,147,0,23,56,19,254,56,125,157,255,48,179,218,255,79,182,253,255,38,212,191,1,41,235,124,0,96,151,28,0,135,148,190,0,205,249,39,254,52,96,136,255,212,44,136,255,67,209,131,255,252,130,23,255,219,128,20,255,198,129,118,0,108,101,11,0,178,5,146,1,62,7,100,255,181,236,94,254,28,26,164,0,76,22,112,255,120,102,79,0,202,192,229,1,200,176,215,0,41,64,244,255,206,184,78,0,167,45,63,1,160,35,0,255,59,12,142,255,204,9,144,255,219,94,229,1,122,27,112,0,189,105,109,255,64,208,74,255,251,127,55,1,2,226,198,0,44,76,209,0,151,152,77,255,210,23,46,1,201,171,69,255,44,211,231,0,190,37,224,255,245,196,62,255,169,181,222,255,34,211,17,0,119,241,197,255,229,35,152,1,21,69,40,255,178,226,161,0,148,179,193,0,219,194,254,1,40,206,51,255,231,92,250,1,67,153,170,0,21,148,241,0,170,69,82,255,121,18,231,255,92,114,3,0,184,62,230,0,225,201,87,255,146,96,162,255,181,242,220,0,173,187,221,1,226,62,170,255,56,126,217,1,117,13,227,255,179,44,239,0,157,141,155,255,144,221,83,0,235,209,208,0,42,17,165,1,251,81,133,0,124,245,201,254,97,211,24,255,83,214,166,0,154,36,9,255,248,47,127,0,90,219,140,255,161,217,38,254,212,147,63,255,66,84,148,1,207,3,1,0,230,134,89,1,127,78,122,255,224,155,1,255,82,136,74,0,178,156,208,255,186,25,49,255,222,3,210,1,229,150,190,255,85,162,52,255,41,84,141,255,73,123,84,254,93,17,150,0,119,19,28,1,32,22,215,255,28,23,204,255,142,241,52,255,228,52,125,0,29,76,207,0,215,167,250,254,175,164,230,0,55,207,105,1,109,187,245,255,161,44,220,1,41,101,128,255,167,16,94,0,93,214,107,255,118,72,0,254,80,61,234,255,121,175,125,0,139,169,251,0,97,39,147,254,250,196,49,255,165,179,110,254,223,70,187,255,22,142,125,1,154,179,138,255,118,176,42,1,10,174,153,0,156,92,102,0,168,13,161,255,143,16,32,0,250,197,180,255,203,163,44,1,87,32,36,0,161,153,20,255,123,252,15,0,25,227,80,0,60,88,142,0,17,22,201,1,154,205,77,255,39,63,47,0,8,122,141,0,128,23,182,254,204,39,19,255,4,112,29,255,23,36,140,255,210,234,116,254,53,50,63,255,121,171,104,255,160,219,94,0,87,82,14,254,231,42,5,0,165,139,127,254,86,78,38,0,130,60,66,254,203,30,45,255],"i8",S,p.GLOBAL_BASE+20480),x([46,196,122,1,249,53,162,255,136,143,103,254,215,210,114,0,231,7,160,254,169,152,42,255,111,45,246,0,142,131,135,255,131,71,204,255,36,226,11,0,0,28,242,255,225,138,213,255,247,46,216,254,245,3,183,0,108,252,74,1,206,26,48,255,205,54,246,255,211,198,36,255,121,35,50,0,52,216,202,255,38,139,129,254,242,73,148,0,67,231,141,255,42,47,204,0,78,116,25,1,4,225,191,255,6,147,228,0,58,88,177,0,122,165,229,255,252,83,201,255,224,167,96,1,177,184,158,255,242,105,179,1,248,198,240,0,133,66,203,1,254,36,47,0,45,24,115,255,119,62,254,0,196,225,186,254,123,141,172,0,26,85,41,255,226,111,183,0,213,231,151,0,4,59,7,255,238,138,148,0,66,147,33,255,31,246,141,255,209,141,116,255,104,112,31,0,88,161,172,0,83,215,230,254,47,111,151,0,45,38,52,1,132,45,204,0,138,128,109,254,233,117,134,255,243,190,173,254,241,236,240,0,82,127,236,254,40,223,161,255,110,182,225,255,123,174,239,0,135,242,145,1,51,209,154,0,150,3,115,254,217,164,252,255,55,156,69,1,84,94,255,255,232,73,45,1,20,19,212,255,96,197,59,254,96,251,33,0,38,199,73,1,64,172,247,255,117,116,56,255,228,17,18,0,62,138,103,1,246,229,164,255,244,118,201,254,86,32,159,255,109,34,137,1,85,211,186,0,10,193,193,254,122,194,177,0,122,238,102,255,162,218,171,0,108,217,161,1,158,170,34,0,176,47,155,1,181,228,11,255,8,156,0,0,16,75,93,0,206,98,255,1,58,154,35,0,12,243,184,254,67,117,66,255,230,229,123,0,201,42,110,0,134,228,178,254,186,108,118,255,58,19,154,255,82,169,62,255,114,143,115,1,239,196,50,255,173,48,193,255,147,2,84,255,150,134,147,254,95,232,73,0,109,227,52,254,191,137,10,0,40,204,30,254,76,52,97,255,164,235,126,0,254,124,188,0,74,182,21,1,121,29,35,255,241,30,7,254,85,218,214,255,7,84,150,254,81,27,117,255,160,159,152,254,66,24,221,255,227,10,60,1,141,135,102,0,208,189,150,1,117,179,92,0,132,22,136,255,120,199,28,0,21,129,79,254,182,9,65,0,218,163,169,0,246,147,198,255,107,38,144,1,78,175,205,255,214,5,250,254,47,88,29,255,164,47,204,255,43,55,6,255,131,134,207,254,116,100,214,0,96,140,75,1,106,220,144,0,195,32,28,1,172,81,5,255,199,179,52,255,37,84,203,0,170,112,174,0,11,4,91,0,69,244,27,1,117,131,92,0,33,152,175,255,140,153,107,255,251,135,43,254,87,138,4,255,198,234,147,254,121,152,84,255,205,101,155,1,157,9,25,0,72,106,17,254,108,153,0,255,189,229,186,0,193,8,176,255,174,149,209,0,238,130,29,0,233,214,126,1,61,226,102,0,57,163,4,1,198,111,51,255,45,79,78,1,115,210,10,255,218,9,25,255,158,139,198,255,211,82,187,254,80,133,83,0,157,129,230,1,243,133,134,255,40,136,16,0,77,107,79,255,183,85,92,1,177,204,202,0,163,71,147,255,152,69,190,0,172,51,188,1,250,210,172,255,211,242,113,1,89,89,26,255,64,66,111,254,116,152,42,0,161,39,27,255,54,80,254,0,106,209,115,1,103,124,97,0,221,230,98,255,31,231,6,0,178,192,120,254,15,217,203,255,124,158,79,0,112,145,247,0,92,250,48,1,163,181,193,255,37,47,142,254,144,189,165,255,46,146,240,0,6,75,128,0,41,157,200,254,87,121,213,0,1,113,236,0,5,45,250,0,144,12,82,0,31,108,231,0,225,239,119,255,167,7,189,255,187,228,132,255,110,189,34,0,94,44,204,1,162,52,197,0,78,188,241,254,57,20,141,0,244,146,47,1,206,100,51,0,125,107,148,254,27,195,77,0,152,253,90,1,7,143,144,255,51,37,31,0,34,119,38,255,7,197,118,0,153,188,211,0,151,20,116,254,245,65,52,255,180,253,110,1,47,177,209,0,161,99,17,255,118,222,202,0,125,179,252,1,123,54,126,255,145,57,191,0,55,186,121,0,10,243,138,0,205,211,229,255,125,156,241,254,148,156,185,255,227,19,188,255,124,41,32,255,31,34,206,254,17,57,83,0,204,22,37,255,42,96,98,0,119,102,184,1,3,190,28,0,110,82,218,255,200,204,192,255,201,145,118,0,117,204,146,0,132,32,98,1,192,194,121,0,106,161,248,1,237,88,124,0,23,212,26,0,205,171,90,255,248,48,216,1,141,37,230,255,124,203,0,254,158,168,30,255,214,248,21,0,112,187,7,255,75,133,239,255,74,227,243,255,250,147,70,0,214,120,162,0,167,9,179,255,22,158,18,0,218,77,209,1,97,109,81,255,244,33,179,255,57,52,57,255,65,172,210,255,249,71,209,255,142,169,238,0,158,189,153,255,174,254,103,254,98,33,14,0,141,76,230,255,113,139,52,255,15,58,212,0,168,215,201,255,248,204,215,1,223,68,160,255,57,154,183,254,47,231,121,0,106,166,137,0,81,136,138,0,165,43,51,0,231,139,61,0,57,95,59,254,118,98,25,255,151,63,236,1,94,190,250,255,169,185,114,1,5,250,58,255,75,105,97,1,215,223,134,0,113,99,163,1,128,62,112,0,99,106,147,0,163,195,10,0,33,205,182,0,214,14,174,255,129,38,231,255,53,182,223,0,98,42,159,255,247,13,40,0,188,210,177,1,6,21,0,255,255,61,148,254,137,45,129,255,89,26,116,254,126,38,114,0,251,50,242,254,121,134,128,255,204,249,167,254,165,235,215,0,202,177,243,0,133,141,62,0,240,130,190,1,110,175,255,0,0,20,146,1,37,210,121,255,7,39,130,0,142,250,84,255,141,200,207,0,9,95,104,255,11,244,174,0,134,232,126,0,167,1,123,254,16,193,149,255,232,233,239,1,213,70,112,255,252,116,160,254,242,222,220,255,205,85,227,0,7,185,58,0,118,247,63,1,116,77,177,255,62,245,200,254,63,18,37,255,107,53,232,254,50,221,211,0,162,219,7,254,2,94,43,0,182,62,182,254,160,78,200,255,135,140,170,0,235,184,228,0,175,53,138,254,80,58,77,255,152,201,2,1,63,196,34,0,5,30,184,0,171,176,154,0,121,59,206,0,38,99,39,0,172,80,77,254,0,134,151,0,186,33,241,254,94,253,223,255,44,114,252,0,108,126,57,255,201,40,13,255,39,229,27,255,39,239,23,1,151,121,51,255,153,150,248,0,10,234,174,255,118,246,4,254,200,245,38,0,69,161,242,1,16,178,150,0,113,56,130,0,171,31,105,0,26,88,108,255,49,42,106,0,251,169,66,0,69,93,149,0,20,57,254,0,164,25,111,0,90,188,90,255,204,4,197,0,40,213,50,1,212,96,132,255,88,138,180,254,228,146,124,255,184,246,247,0,65,117,86,255,253,102,210,254,254,121,36,0,137,115,3,255,60,24,216,0,134,18,29,0,59,226,97,0,176,142,71,0,7,209,161,0,189,84,51,254,155,250,72,0,213,84,235,255,45,222,224,0,238,148,143,255,170,42,53,255,78,167,117,0,186,0,40,255,125,177,103,255,69,225,66,0,227,7,88,1,75,172,6,0,169,45,227,1,16,36,70,255,50,2,9,255,139,193,22,0,143,183,231,254,218,69,50,0,236,56,161,1,213,131,42,0,138,145,44,254,136,229,40,255,49,63,35,255,61,145,245,255,101,192,2,254,232,167,113,0,152,104,38,1,121,185,218,0,121,139,211,254,119,240,35,0,65,189,217,254,187,179,162,255,160,187,230,0,62,248,14,255,60,78,97,0,255,247,163,255,225,59,91,255,107,71,58,255,241,47,33,1,50,117,236,0,219,177,63,254,244,90,179,0,35,194,215,255,189,67,50,255,23,135,129,0,104,189,37,255,185,57,194,0,35,62,231,255,220,248,108,0,12,231,178,0,143,80,91,1,131,93,101,255,144,39,2,1,255,250,178,0,5,17,236,254,139,32,46,0,204,188,38,254,245,115,52,255,191,113,73,254,191,108,69,255,22,69,245,1,23,203,178,0,170,99,170,0,65,248,111,0,37,108,153,255,64,37,69,0,0,88,62,254,89,148,144,255,191,68,224,1,241,39,53,0,41,203,237,255,145,126,194,255,221,42,253,255,25,99,151,0,97,253,223,1,74,115,49,255,6,175,72,255,59,176,203,0,124,183,249,1,228,228,99,0,129,12,207,254,168,192,195,255,204,176,16,254,152,234,171,0,77,37,85,255,33,120,135,255,142,194,227,1,31,214,58,0,213,187,125,255,232,46,60,255,190,116,42,254,151,178,19,255,51,62,237,254,204,236,193,0,194,232,60,0,172,34,157,255,189,16,184,254,103,3,95,255,141,233,36,254,41,25,11,255,21,195,166,0,118,245,45,0,67,213,149,255,159,12,18,255,187,164,227,1,160,25,5,0,12,78,195,1,43,197,225,0,48,142,41,254,196,155,60,255,223,199,18,1,145,136,156,0,252,117,169,254,145,226,238,0,239,23,107,0,109,181,188,255,230,112,49,254,73,170,237,255,231,183,227,255,80,220,20,0,194,107,127,1,127,205,101,0,46,52,197,1,210,171,36,255,88,3,90,255,56,151,141,0,96,187,255,255,42,78,200,0,254,70,70,1,244,125,168,0,204,68,138,1,124,215,70,0,102,66,200,254,17,52,228,0,117,220,143,254,203,248,123,0,56,18,174,255,186,151,164,255,51,232,208,1,160,228,43,255,249,29,25,1,68,190,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,136,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,45,62,98,117,102,108,101,110,32,60,61,32,66,76,65,75,69,50,66,95,66,76,79,67,75,66,89,84,69,83,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,47,98,108,97,107,101,50,98,47,114,101,102,47,98,108,97,107,101,50,98,45,114,101,102,46,99,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,95,102,105,110,97,108,0,111,117,116,108,101,110,32,60,61,32,85,73,78,84,56,95,77,65,88,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,47,98,108,97,107,101,50,98,47,114,101,102,47,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,46,99,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,0,107,101,121,108,101,110,32,60,61,32,85,73,78,84,56,95,77,65,88,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,105,110,105,116,0,99,114,121,112,116,111,95,103,101,110,101,114,105,99,104,97,115,104,95,98,108,97,107,101,50,98,95,102,105,110,97,108,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,83,105,103,69,100,50,53,53,49,57,32,110,111,32,69,100,50,53,53,49,57,32,99,111,108,108,105,115,105,111,110,115,1,0,123,32,114,101,116,117,114,110,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,40,41,59,32,125,0,123,32,105,102,32,40,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,61,61,32,117,110,100,101,102,105,110,101,100,41,32,123,32,116,114,121,32,123,32,118,97,114,32,119,105,110,100,111,119,95,32,61,32,34,111,98,106,101,99,116,34,32,61,61,61,32,116,121,112,101,111,102,32,119,105,110,100,111,119,32,63,32,119,105,110,100,111,119,32,58,32,115,101,108,102,44,32,99,114,121,112,116,111,95,32,61,32,116,121,112,101,111,102,32,119,105,110,100,111,119,95,46,99,114,121,112,116,111,32,33,61,61,32,34,117,110,100,101,102,105,110,101,100,34,32,63,32,119,105,110,100,111,119,95,46,99,114,121,112,116,111,32,58,32,119,105,110,100,111,119,95,46,109,115,67,114,121,112,116,111,44,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,118,97,114,32,98,117,102,32,61,32,110,101,119,32,85,105,110,116,51,50,65,114,114,97,121,40,49,41,59,32,99,114,121,112,116,111,95,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,115,40,98,117,102,41,59,32,114,101,116,117,114,110,32,98,117,102,91,48,93,32,62,62,62,32,48,59,32,125,59,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,40,41,59,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,32,114,97,110,100,111,109,86,97,108,117,101,115,83,116,97,110,100,97,114,100,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,116,114,121,32,123,32,118,97,114,32,99,114,121,112,116,111,32,61,32,114,101,113,117,105,114,101,40,39,99,114,121,112,116,111,39,41,44,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,32,61,32,102,117,110,99,116,105,111,110,40,41,32,123,32,118,97,114,32,98,117,102,32,61,32,99,114,121,112,116,111,46,114,97,110,100,111,109,66,121,116,101,115,40,52,41,59,32,114,101,116,117,114,110,32,40,98,117,102,91,48,93,32,60,60,32,50,52,32,124,32,98,117,102,91,49,93,32,60,60,32,49,54,32,124,32,98,117,102,91,50,93,32,60,60,32,56,32,124,32,98,117,102,91,51,93,41,32,62,62,62,32,48,59,32,125,59,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,40,41,59,32,77,111,100,117,108,101,46,103,101,116,82,97,110,100,111,109,86,97,108,117,101,32,61,32,114,97,110,100,111,109,86,97,108,117,101,78,111,100,101,74,83,59,32,125,32,99,97,116,99,104,32,40,101,41,32,123,32,116,104,114,111,119,32,39,78,111,32,115,101,99,117,114,101,32,114,97,110,100,111,109,32,110,117,109,98,101,114,32,103,101,110,101,114,97,116,111,114,32,102,111,117,110,100,39,59,32,125,32,125,32,125,32,125,0,76,105,98,115,111,100,105,117,109,68,82,71,98,117,102,95,108,101,110,32,60,61,32,83,73,90,69,95,77,65,88,0,114,97,110,100,111,109,98,121,116,101,115,47,114,97,110,100,111,109,98,121,116,101,115,46,99,0,114,97,110,100,111,109,98,121,116,101,115,0,49,46,48,46,49,51,0],"i8",S,p.GLOBAL_BASE+30720);var ke=Y;function Ee(e){return i.___errno_location&&(L[i.___errno_location()>>2]=e),e}Y+=16,i._bitshift64Ashr=Be,i._i64Subtract=Ne,i._i64Add=qe,i._memset=Re,i._bitshift64Lshr=Me,i._bitshift64Shl=je,i._memcpy=Ie,i.___muldsi3=Oe,i.___muldi3=Pe;var Se={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};i._sbrk=Te,i._memmove=Le,W=x(1,"i32",E),G=(V=p.alignMemory(Y))+Q,X=p.alignMemory(G),L[W>>2]=X,H=!0,i.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},i.asmLibraryArg={abort:He,assert:v,enlargeMemory:$,getTotalMemory:function(){return ee},abortOnCannotGrowMemory:Z,_emscripten_asm_const_i:function(e){return we[e]()},___assert_fail:function(e,t,r,n){throw g=!0,"Assertion failed: "+A(e)+", at: "+[t?A(t):"unknown filename",r,n?A(n):"unknown function"]+" at "+O()},_abort:function(){i.abort()},___setErrNo:Ee,_emscripten_memcpy_big:function(e,t,r){return P.set(P.subarray(t,t+r),e),e},_emscripten_asm_const_v:function(e){return we[e]()},_sysconf:function(e){switch(e){case 30:return J;case 85:return P.length/J;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:return 200809;case 79:return 0;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 Ee(Se.EINVAL),-1},DYNAMICTOP_PTR:W,tempDoublePtr:ke,ABORT:g,STACKTOP:V,STACK_MAX:G};var xe,Ae=function(e,t,r){"use asm";var n=new e.Int8Array(r);var i=new e.Int16Array(r);var a=new e.Int32Array(r);var o=new e.Uint8Array(r);var s=new e.Uint16Array(r);var c=new e.Uint32Array(r);var u=new e.Float32Array(r);var f=new e.Float64Array(r);var h=t.DYNAMICTOP_PTR|0;var l=t.tempDoublePtr|0;var d=t.ABORT|0;var p=t.STACKTOP|0;var b=t.STACK_MAX|0;var y=0;var _=0;var m=0;var g=0;var v=e.NaN,w=e.Infinity;var k=0,E=0,S=0,x=0,A=0.0;var M=0;var T=e.Math.floor;var I=e.Math.abs;var z=e.Math.sqrt;var B=e.Math.pow;var R=e.Math.cos;var O=e.Math.sin;var C=e.Math.tan;var N=e.Math.acos;var P=e.Math.asin;var j=e.Math.atan;var q=e.Math.atan2;var L=e.Math.exp;var D=e.Math.log;var U=e.Math.ceil;var K=e.Math.imul;var F=e.Math.min;var Y=e.Math.max;var H=e.Math.clz32;var V=t.abort;var G=t.assert;var X=t.enlargeMemory;var W=t.getTotalMemory;var J=t.abortOnCannotGrowMemory;var Z=t._emscripten_asm_const_i;var $=t.___assert_fail;var Q=t._abort;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var re=t._emscripten_asm_const_v;var ne=t._sysconf;var ie=0.0;function ae(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0;i=p;o=p=p+63&-64;p=p+256|0;r=0;do{s=Ur(t+(r<<3)|0)|0;n=o+128+(r<<3)|0;a[n>>2]=s;a[n+4>>2]=M;r=r+1|0}while((r|0)!=16);r=o;t=e;n=r+64|0;do{a[r>>2]=a[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(n|0));a[o+88>>2]=1595750129;a[o+88+4>>2]=-1521486534;re=a[e+64>>2]^-1377402159;_=a[e+64+4>>2]^1359893119;s=a[e+72>>2]^725511199;k=a[e+72+4>>2]^-1694144372;l=a[e+80>>2]^-79577749;m=a[e+80+4>>2]^528734635;P=a[e+88>>2]^327033209;te=a[e+88+4>>2]^1541459225;a[o+120>>2]=P;a[o+120+4>>2]=te;v=a[o+32>>2]|0;n=a[o+32+4>>2]|0;L=In(v|0,n|0,a[o>>2]|0,a[o+4>>2]|0)|0;L=In(L|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;r=M;_=Gr(re^L,_^r,32)|0;re=M;G=In(_|0,re|0,-205731576,1779033703)|0;D=M;n=Gr(v^G,n^D,24)|0;v=M;r=In(L|0,r|0,n|0,v|0)|0;L=o+128+8|0;r=In(r|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;F=M;a[o>>2]=r;a[o+4>>2]=F;re=Gr(_^r,re^F,16)|0;_=M;a[o+96>>2]=re;a[o+96+4>>2]=_;_=In(G|0,D|0,re|0,_|0)|0;re=M;a[o+64>>2]=_;a[o+64+4>>2]=re;re=Gr(n^_,v^re,63)|0;a[o+32>>2]=re;a[o+32+4>>2]=M;re=a[o+40>>2]|0;v=a[o+40+4>>2]|0;_=In(re|0,v|0,a[o+8>>2]|0,a[o+8+4>>2]|0)|0;n=o+128+16|0;_=In(_|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;D=M;k=Gr(s^_,k^D,32)|0;s=M;G=In(k|0,s|0,-2067093701,-1150833019)|0;I=M;v=Gr(re^G,v^I,24)|0;re=M;D=In(_|0,D|0,v|0,re|0)|0;_=o+128+24|0;D=In(D|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;E=M;s=Gr(k^D,s^E,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;I=In(G|0,I|0,s|0,k|0)|0;G=M;a[o+72>>2]=I;a[o+72+4>>2]=G;G=Gr(v^I,re^G,63)|0;re=M;I=a[o+48>>2]|0;v=a[o+48+4>>2]|0;g=In(I|0,v|0,a[o+16>>2]|0,a[o+16+4>>2]|0)|0;W=o+128+32|0;g=In(g|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;c=M;m=Gr(l^g,m^c,32)|0;l=M;T=In(m|0,l|0,-23791573,1013904242)|0;t=M;v=Gr(I^T,v^t,24)|0;I=M;c=In(g|0,c|0,v|0,I|0)|0;g=o+128+40|0;c=In(c|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;U=M;l=Gr(m^c,l^U,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;t=In(T|0,t|0,l|0,m|0)|0;T=M;I=Gr(v^t,I^T,63)|0;v=M;h=a[o+56>>2]|0;d=a[o+56+4>>2]|0;w=In(h|0,d|0,a[o+24>>2]|0,a[o+24+4>>2]|0)|0;y=o+128+48|0;w=In(w|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;ee=M;te=Gr(P^w,te^ee,32)|0;P=M;A=In(a[o+88>>2]|0,a[o+88+4>>2]|0,te|0,P|0)|0;B=M;d=Gr(h^A,d^B,24)|0;h=M;ee=In(w|0,ee|0,d|0,h|0)|0;w=o+128+56|0;ee=In(ee|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;S=M;P=Gr(te^ee,P^S,16)|0;te=M;B=In(A|0,B|0,P|0,te|0)|0;A=M;h=Gr(d^B,h^A,63)|0;d=M;F=In(G|0,re|0,r|0,F|0)|0;r=o+128+64|0;F=In(F|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;Y=M;te=Gr(P^F,te^Y,32)|0;P=M;T=In(t|0,T|0,te|0,P|0)|0;t=M;re=Gr(G^T,re^t,24)|0;G=M;Y=In(F|0,Y|0,re|0,G|0)|0;F=o+128+72|0;Y=In(Y|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;Q=M;P=Gr(te^Y,P^Q,16)|0;te=M;a[o+120>>2]=P;a[o+120+4>>2]=te;te=In(T|0,t|0,P|0,te|0)|0;P=M;a[o+80>>2]=te;a[o+80+4>>2]=P;P=Gr(re^te,G^P,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;E=In(I|0,v|0,D|0,E|0)|0;D=o+128+80|0;te=a[D>>2]|0;re=a[D+4>>2]|0;E=In(E|0,M|0,te|0,re|0)|0;t=M;T=Gr(a[o+96>>2]^E,a[o+96+4>>2]^t,32)|0;x=M;A=In(B|0,A|0,T|0,x|0)|0;B=M;v=Gr(I^A,v^B,24)|0;I=M;t=In(E|0,t|0,v|0,I|0)|0;E=o+128+88|0;t=In(t|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;q=M;x=Gr(T^t,x^q,16)|0;T=M;B=In(A|0,B|0,x|0,T|0)|0;A=M;a[o+88>>2]=B;a[o+88+4>>2]=A;A=Gr(v^B,I^A,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;U=In(h|0,d|0,c|0,U|0)|0;c=o+128+96|0;U=In(U|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;B=M;k=Gr(s^U,k^B,32)|0;s=M;v=In(a[o+64>>2]|0,a[o+64+4>>2]|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;B=In(U|0,B|0,d|0,h|0)|0;U=o+128+104|0;ne=a[U>>2]|0;$=a[U+4>>2]|0;B=In(B|0,M|0,ne|0,$|0)|0;z=M;s=Gr(k^B,s^z,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;f=a[o+32>>2]|0;oe=a[o+32+4>>2]|0;S=In(f|0,oe|0,ee|0,S|0)|0;ee=o+128+112|0;H=a[ee>>2]|0;u=a[ee+4>>2]|0;S=In(S|0,M|0,H|0,u|0)|0;ce=M;m=Gr(l^S,m^ce,32)|0;l=M;C=In(a[o+72>>2]|0,a[o+72+4>>2]|0,m|0,l|0)|0;V=M;oe=Gr(f^C,oe^V,24)|0;f=M;ce=In(S|0,ce|0,oe|0,f|0)|0;S=o+128+120|0;O=a[S>>2]|0;ae=a[S+4>>2]|0;ce=In(ce|0,M|0,O|0,ae|0)|0;K=M;l=Gr(m^ce,l^K,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;f=Gr(oe^V,f^C,63)|0;oe=M;Q=In(Y|0,Q|0,f|0,oe|0)|0;u=In(Q|0,M|0,H|0,u|0)|0;H=M;T=Gr(x^u,T^H,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;oe=Gr(f^v,oe^b,24)|0;f=M;H=In(u|0,H|0,oe|0,f|0)|0;re=In(H|0,M|0,te|0,re|0)|0;te=M;x=Gr(T^re,x^te,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;f=Gr(oe^b,f^v,63)|0;a[o+32>>2]=f;a[o+32+4>>2]=M;q=In(P|0,G|0,t|0,q|0)|0;q=In(q|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;t=M;k=Gr(s^q,k^t,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;t=In(q|0,t|0,G|0,P|0)|0;t=In(t|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;q=M;s=Gr(k^t,s^q,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;z=In(A|0,I|0,B|0,z|0)|0;z=In(z|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;B=M;m=Gr(l^z,m^B,32)|0;l=M;f=In(a[o+80>>2]|0,a[o+80+4>>2]|0,m|0,l|0)|0;oe=M;I=Gr(A^f,I^oe,24)|0;A=M;B=In(z|0,B|0,I|0,A|0)|0;ae=In(B|0,M|0,O|0,ae|0)|0;O=M;l=Gr(m^ae,l^O,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;oe=In(f|0,oe|0,l|0,m|0)|0;f=M;A=Gr(I^oe,A^f,63)|0;I=M;K=In(h|0,d|0,ce|0,K|0)|0;$=In(K|0,M|0,ne|0,$|0)|0;ne=M;K=Gr(a[o+120>>2]^$,a[o+120+4>>2]^ne,32)|0;ce=M;B=In(a[o+88>>2]|0,a[o+88+4>>2]|0,K|0,ce|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;ne=In($|0,ne|0,d|0,h|0)|0;ne=In(ne|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;$=M;ce=Gr(K^ne,ce^$,16)|0;K=M;z=In(B|0,z|0,ce|0,K|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;te=In(P|0,G|0,re|0,te|0)|0;te=In(te|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;re=M;K=Gr(ce^te,K^re,32)|0;ce=M;f=In(oe|0,f|0,K|0,ce|0)|0;oe=M;G=Gr(P^f,G^oe,24)|0;P=M;re=In(te|0,re|0,G|0,P|0)|0;te=a[c>>2]|0;H=a[c+4>>2]|0;re=In(re|0,M|0,te|0,H|0)|0;u=M;ce=Gr(K^re,ce^u,16)|0;K=M;a[o+120>>2]=ce;a[o+120+4>>2]=K;K=In(f|0,oe|0,ce|0,K|0)|0;ce=M;a[o+80>>2]=K;a[o+80+4>>2]=ce;P=Gr(G^K,P^ce,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;q=In(A|0,I|0,t|0,q|0)|0;t=a[o+128>>2]|0;oe=a[o+128+4>>2]|0;q=In(q|0,M|0,t|0,oe|0)|0;f=M;T=Gr(x^q,T^f,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;f=In(q|0,f|0,I|0,A|0)|0;q=a[n>>2]|0;Q=a[n+4>>2]|0;f=In(f|0,M|0,q|0,Q|0)|0;Y=M;x=Gr(T^f,x^Y,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;O=In(h|0,d|0,ae|0,O|0)|0;ae=a[E>>2]|0;se=a[E+4>>2]|0;O=In(O|0,M|0,ae|0,se|0)|0;j=M;k=Gr(s^O,k^j,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;j=In(O|0,j|0,d|0,h|0)|0;j=In(j|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;O=M;s=Gr(k^j,s^O,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Z=a[o+32>>2]|0;X=a[o+32+4>>2]|0;$=In(Z|0,X|0,ne|0,$|0)|0;ne=a[g>>2]|0;R=a[g+4>>2]|0;$=In($|0,M|0,ne|0,R|0)|0;ie=M;m=Gr(l^$,m^ie,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;X=Gr(Z^C,X^V,24)|0;Z=M;ie=In($|0,ie|0,X|0,Z|0)|0;$=a[_>>2]|0;N=a[_+4>>2]|0;ie=In(ie|0,M|0,$|0,N|0)|0;J=M;l=Gr(m^ie,l^J,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;Z=Gr(X^V,Z^C,63)|0;X=M;u=In(re|0,u|0,Z|0,X|0)|0;se=In(u|0,M|0,ae|0,se|0)|0;ae=M;T=Gr(x^se,T^ae,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;X=Gr(Z^v,X^b,24)|0;Z=M;ae=In(se|0,ae|0,X|0,Z|0)|0;ae=In(ae|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;se=M;x=Gr(T^ae,x^se,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Z=Gr(X^b,Z^v,63)|0;a[o+32>>2]=Z;a[o+32+4>>2]=M;Y=In(P|0,G|0,f|0,Y|0)|0;H=In(Y|0,M|0,te|0,H|0)|0;te=M;k=Gr(s^H,k^te,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;te=In(H|0,te|0,G|0,P|0)|0;oe=In(te|0,M|0,t|0,oe|0)|0;t=M;s=Gr(k^oe,s^t,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;O=In(A|0,I|0,j|0,O|0)|0;R=In(O|0,M|0,ne|0,R|0)|0;ne=M;m=Gr(l^R,m^ne,32)|0;l=M;ce=In(K|0,ce|0,m|0,l|0)|0;K=M;I=Gr(A^ce,I^K,24)|0;A=M;ne=In(R|0,ne|0,I|0,A|0)|0;Q=In(ne|0,M|0,q|0,Q|0)|0;q=M;l=Gr(m^Q,l^q,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;K=In(ce|0,K|0,l|0,m|0)|0;ce=M;A=Gr(I^K,A^ce,63)|0;I=M;J=In(h|0,d|0,ie|0,J|0)|0;J=In(J|0,M|0,a[S>>2]|0,a[S+4>>2]|0)|0;ie=M;ne=Gr(a[o+120>>2]^J,a[o+120+4>>2]^ie,32)|0;R=M;B=In(z|0,B|0,ne|0,R|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;ie=In(J|0,ie|0,d|0,h|0)|0;ie=In(ie|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;J=M;R=Gr(ne^ie,R^J,16)|0;ne=M;z=In(B|0,z|0,R|0,ne|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;se=In(P|0,G|0,ae|0,se|0)|0;se=In(se|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;ae=M;ne=Gr(R^se,ne^ae,32)|0;R=M;ce=In(K|0,ce|0,ne|0,R|0)|0;K=M;G=Gr(P^ce,G^K,24)|0;P=M;ae=In(se|0,ae|0,G|0,P|0)|0;ae=In(ae|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;se=M;R=Gr(ne^ae,R^se,16)|0;ne=M;a[o+120>>2]=R;a[o+120+4>>2]=ne;ne=In(ce|0,K|0,R|0,ne|0)|0;R=M;a[o+80>>2]=ne;a[o+80+4>>2]=R;P=Gr(G^ne,P^R,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;t=In(A|0,I|0,oe|0,t|0)|0;N=In(t|0,M|0,$|0,N|0)|0;$=M;T=Gr(x^N,T^$,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;$=In(N|0,$|0,I|0,A|0)|0;$=In($|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;N=M;x=Gr(T^$,x^N,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;q=In(h|0,d|0,Q|0,q|0)|0;Q=a[w>>2]|0;t=a[w+4>>2]|0;q=In(q|0,M|0,Q|0,t|0)|0;oe=M;k=Gr(s^q,k^oe,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;oe=In(q|0,oe|0,d|0,h|0)|0;q=a[L>>2]|0;K=a[L+4>>2]|0;oe=In(oe|0,M|0,q|0,K|0)|0;ce=M;s=Gr(k^oe,s^ce,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;O=a[o+32>>2]|0;j=a[o+32+4>>2]|0;J=In(O|0,j|0,ie|0,J|0)|0;ie=a[F>>2]|0;te=a[F+4>>2]|0;J=In(J|0,M|0,ie|0,te|0)|0;H=M;m=Gr(l^J,m^H,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;j=Gr(O^C,j^V,24)|0;O=M;H=In(J|0,H|0,j|0,O|0)|0;H=In(H|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;J=M;l=Gr(m^H,l^J,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;O=Gr(j^V,O^C,63)|0;j=M;se=In(ae|0,se|0,O|0,j|0)|0;t=In(se|0,M|0,Q|0,t|0)|0;Q=M;T=Gr(x^t,T^Q,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;j=Gr(O^v,j^b,24)|0;O=M;Q=In(t|0,Q|0,j|0,O|0)|0;te=In(Q|0,M|0,ie|0,te|0)|0;ie=M;x=Gr(T^te,x^ie,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;O=Gr(j^b,O^v,63)|0;a[o+32>>2]=O;a[o+32+4>>2]=M;N=In(P|0,G|0,$|0,N|0)|0;N=In(N|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;$=M;k=Gr(s^N,k^$,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;$=In(N|0,$|0,G|0,P|0)|0;K=In($|0,M|0,q|0,K|0)|0;q=M;s=Gr(k^K,s^q,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;ce=In(A|0,I|0,oe|0,ce|0)|0;ce=In(ce|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;oe=M;m=Gr(l^ce,m^oe,32)|0;l=M;R=In(ne|0,R|0,m|0,l|0)|0;ne=M;I=Gr(A^R,I^ne,24)|0;A=M;oe=In(ce|0,oe|0,I|0,A|0)|0;oe=In(oe|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;ce=M;l=Gr(m^oe,l^ce,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;ne=In(R|0,ne|0,l|0,m|0)|0;R=M;A=Gr(I^ne,A^R,63)|0;I=M;J=In(h|0,d|0,H|0,J|0)|0;J=In(J|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;H=M;$=Gr(a[o+120>>2]^J,a[o+120+4>>2]^H,32)|0;N=M;B=In(z|0,B|0,$|0,N|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;H=In(J|0,H|0,d|0,h|0)|0;H=In(H|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;J=M;N=Gr($^H,N^J,16)|0;$=M;z=In(B|0,z|0,N|0,$|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ie=In(P|0,G|0,te|0,ie|0)|0;ie=In(ie|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;te=M;$=Gr(N^ie,$^te,32)|0;N=M;R=In(ne|0,R|0,$|0,N|0)|0;ne=M;G=Gr(P^R,G^ne,24)|0;P=M;te=In(ie|0,te|0,G|0,P|0)|0;te=In(te|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;ie=M;N=Gr($^te,N^ie,16)|0;$=M;a[o+120>>2]=N;a[o+120+4>>2]=$;$=In(R|0,ne|0,N|0,$|0)|0;N=M;a[o+80>>2]=$;a[o+80+4>>2]=N;P=Gr(G^$,P^N,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;q=In(A|0,I|0,K|0,q|0)|0;K=a[g>>2]|0;ne=a[g+4>>2]|0;q=In(q|0,M|0,K|0,ne|0)|0;R=M;T=Gr(x^q,T^R,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;R=In(q|0,R|0,I|0,A|0)|0;q=a[D>>2]|0;O=a[D+4>>2]|0;R=In(R|0,M|0,q|0,O|0)|0;j=M;x=Gr(T^R,x^j,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;ce=In(h|0,d|0,oe|0,ce|0)|0;oe=a[W>>2]|0;Q=a[W+4>>2]|0;ce=In(ce|0,M|0,oe|0,Q|0)|0;t=M;k=Gr(s^ce,k^t,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=In(ce|0,t|0,d|0,h|0)|0;ce=a[o+128>>2]|0;se=a[o+128+4>>2]|0;t=In(t|0,M|0,ce|0,se|0)|0;ae=M;s=Gr(k^t,s^ae,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Y=a[o+32>>2]|0;f=a[o+32+4>>2]|0;J=In(Y|0,f|0,H|0,J|0)|0;H=a[S>>2]|0;Z=a[S+4>>2]|0;J=In(J|0,M|0,H|0,Z|0)|0;X=M;m=Gr(l^J,m^X,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;f=Gr(Y^C,f^V,24)|0;Y=M;X=In(J|0,X|0,f|0,Y|0)|0;X=In(X|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;J=M;l=Gr(m^X,l^J,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;Y=Gr(f^V,Y^C,63)|0;f=M;ie=In(te|0,ie|0,Y|0,f|0)|0;ie=In(ie|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;te=M;T=Gr(x^ie,T^te,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;f=Gr(Y^v,f^b,24)|0;Y=M;te=In(ie|0,te|0,f|0,Y|0)|0;se=In(te|0,M|0,ce|0,se|0)|0;ce=M;x=Gr(T^se,x^ce,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Y=Gr(f^b,Y^v,63)|0;a[o+32>>2]=Y;a[o+32+4>>2]=M;j=In(P|0,G|0,R|0,j|0)|0;ne=In(j|0,M|0,K|0,ne|0)|0;K=M;k=Gr(s^ne,k^K,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;K=In(ne|0,K|0,G|0,P|0)|0;K=In(K|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;ne=M;s=Gr(k^K,s^ne,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;ae=In(A|0,I|0,t|0,ae|0)|0;ae=In(ae|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;t=M;m=Gr(l^ae,m^t,32)|0;l=M;N=In($|0,N|0,m|0,l|0)|0;$=M;I=Gr(A^N,I^$,24)|0;A=M;t=In(ae|0,t|0,I|0,A|0)|0;Q=In(t|0,M|0,oe|0,Q|0)|0;oe=M;l=Gr(m^Q,l^oe,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;$=In(N|0,$|0,l|0,m|0)|0;N=M;A=Gr(I^$,A^N,63)|0;I=M;J=In(h|0,d|0,X|0,J|0)|0;O=In(J|0,M|0,q|0,O|0)|0;q=M;J=Gr(a[o+120>>2]^O,a[o+120+4>>2]^q,32)|0;X=M;B=In(z|0,B|0,J|0,X|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;q=In(O|0,q|0,d|0,h|0)|0;Z=In(q|0,M|0,H|0,Z|0)|0;H=M;X=Gr(J^Z,X^H,16)|0;J=M;z=In(B|0,z|0,X|0,J|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ce=In(P|0,G|0,se|0,ce|0)|0;ce=In(ce|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;se=M;J=Gr(X^ce,J^se,32)|0;X=M;N=In($|0,N|0,J|0,X|0)|0;$=M;G=Gr(P^N,G^$,24)|0;P=M;se=In(ce|0,se|0,G|0,P|0)|0;se=In(se|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;ce=M;X=Gr(J^se,X^ce,16)|0;J=M;a[o+120>>2]=X;a[o+120+4>>2]=J;J=In(N|0,$|0,X|0,J|0)|0;X=M;a[o+80>>2]=J;a[o+80+4>>2]=X;P=Gr(G^J,P^X,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;ne=In(A|0,I|0,K|0,ne|0)|0;K=a[E>>2]|0;$=a[E+4>>2]|0;ne=In(ne|0,M|0,K|0,$|0)|0;N=M;T=Gr(x^ne,T^N,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;N=In(ne|0,N|0,I|0,A|0)|0;ne=a[c>>2]|0;q=a[c+4>>2]|0;N=In(N|0,M|0,ne|0,q|0)|0;O=M;x=Gr(T^N,x^O,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;oe=In(h|0,d|0,Q|0,oe|0)|0;Q=a[y>>2]|0;t=a[y+4>>2]|0;oe=In(oe|0,M|0,Q|0,t|0)|0;ae=M;k=Gr(s^oe,k^ae,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;ae=In(oe|0,ae|0,d|0,h|0)|0;oe=a[r>>2]|0;j=a[r+4>>2]|0;ae=In(ae|0,M|0,oe|0,j|0)|0;R=M;s=Gr(k^ae,s^R,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Y=a[o+32>>2]|0;f=a[o+32+4>>2]|0;H=In(Y|0,f|0,Z|0,H|0)|0;Z=a[_>>2]|0;te=a[_+4>>2]|0;H=In(H|0,M|0,Z|0,te|0)|0;ie=M;m=Gr(l^H,m^ie,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;f=Gr(Y^C,f^V,24)|0;Y=M;ie=In(H|0,ie|0,f|0,Y|0)|0;H=a[U>>2]|0;u=a[U+4>>2]|0;ie=In(ie|0,M|0,H|0,u|0)|0;re=M;l=Gr(m^ie,l^re,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;Y=Gr(f^V,Y^C,63)|0;f=M;ce=In(se|0,ce|0,Y|0,f|0)|0;ce=In(ce|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;se=M;T=Gr(x^ce,T^se,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;f=Gr(Y^v,f^b,24)|0;Y=M;se=In(ce|0,se|0,f|0,Y|0)|0;q=In(se|0,M|0,ne|0,q|0)|0;ne=M;x=Gr(T^q,x^ne,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Y=Gr(f^b,Y^v,63)|0;a[o+32>>2]=Y;a[o+32+4>>2]=M;O=In(P|0,G|0,N|0,O|0)|0;t=In(O|0,M|0,Q|0,t|0)|0;Q=M;k=Gr(s^t,k^Q,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;Q=In(t|0,Q|0,G|0,P|0)|0;Q=In(Q|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;t=M;s=Gr(k^Q,s^t,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;R=In(A|0,I|0,ae|0,R|0)|0;R=In(R|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;ae=M;m=Gr(l^R,m^ae,32)|0;l=M;X=In(J|0,X|0,m|0,l|0)|0;J=M;I=Gr(A^X,I^J,24)|0;A=M;ae=In(R|0,ae|0,I|0,A|0)|0;$=In(ae|0,M|0,K|0,$|0)|0;K=M;l=Gr(m^$,l^K,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;J=In(X|0,J|0,l|0,m|0)|0;X=M;A=Gr(I^J,A^X,63)|0;I=M;re=In(h|0,d|0,ie|0,re|0)|0;j=In(re|0,M|0,oe|0,j|0)|0;oe=M;re=Gr(a[o+120>>2]^j,a[o+120+4>>2]^oe,32)|0;ie=M;B=In(z|0,B|0,re|0,ie|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;oe=In(j|0,oe|0,d|0,h|0)|0;te=In(oe|0,M|0,Z|0,te|0)|0;Z=M;ie=Gr(re^te,ie^Z,16)|0;re=M;z=In(B|0,z|0,ie|0,re|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;ne=In(P|0,G|0,q|0,ne|0)|0;ne=In(ne|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;q=M;re=Gr(ie^ne,re^q,32)|0;ie=M;X=In(J|0,X|0,re|0,ie|0)|0;J=M;G=Gr(P^X,G^J,24)|0;P=M;q=In(ne|0,q|0,G|0,P|0)|0;u=In(q|0,M|0,H|0,u|0)|0;H=M;ie=Gr(re^u,ie^H,16)|0;re=M;a[o+120>>2]=ie;a[o+120+4>>2]=re;re=In(X|0,J|0,ie|0,re|0)|0;ie=M;a[o+80>>2]=re;a[o+80+4>>2]=ie;P=Gr(G^re,P^ie,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;t=In(A|0,I|0,Q|0,t|0)|0;t=In(t|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;Q=M;T=Gr(x^t,T^Q,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;Q=In(t|0,Q|0,I|0,A|0)|0;t=a[g>>2]|0;J=a[g+4>>2]|0;Q=In(Q|0,M|0,t|0,J|0)|0;X=M;x=Gr(T^Q,x^X,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;K=In(h|0,d|0,$|0,K|0)|0;$=a[S>>2]|0;q=a[S+4>>2]|0;K=In(K|0,M|0,$|0,q|0)|0;ne=M;k=Gr(s^K,k^ne,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;ne=In(K|0,ne|0,d|0,h|0)|0;K=a[ee>>2]|0;oe=a[ee+4>>2]|0;ne=In(ne|0,M|0,K|0,oe|0)|0;j=M;s=Gr(k^ne,s^j,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;ae=a[o+32>>2]|0;R=a[o+32+4>>2]|0;Z=In(ae|0,R|0,te|0,Z|0)|0;te=a[L>>2]|0;O=a[L+4>>2]|0;Z=In(Z|0,M|0,te|0,O|0)|0;N=M;m=Gr(l^Z,m^N,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;R=Gr(ae^C,R^V,24)|0;ae=M;N=In(Z|0,N|0,R|0,ae|0)|0;N=In(N|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;Z=M;l=Gr(m^N,l^Z,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;ae=Gr(R^V,ae^C,63)|0;R=M;H=In(u|0,H|0,ae|0,R|0)|0;H=In(H|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;u=M;T=Gr(x^H,T^u,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;R=Gr(ae^v,R^b,24)|0;ae=M;u=In(H|0,u|0,R|0,ae|0)|0;J=In(u|0,M|0,t|0,J|0)|0;t=M;x=Gr(T^J,x^t,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;ae=Gr(R^b,ae^v,63)|0;a[o+32>>2]=ae;a[o+32+4>>2]=M;X=In(P|0,G|0,Q|0,X|0)|0;O=In(X|0,M|0,te|0,O|0)|0;te=M;k=Gr(s^O,k^te,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;te=In(O|0,te|0,G|0,P|0)|0;q=In(te|0,M|0,$|0,q|0)|0;$=M;s=Gr(k^q,s^$,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;j=In(A|0,I|0,ne|0,j|0)|0;oe=In(j|0,M|0,K|0,oe|0)|0;K=M;m=Gr(l^oe,m^K,32)|0;l=M;ie=In(re|0,ie|0,m|0,l|0)|0;re=M;I=Gr(A^ie,I^re,24)|0;A=M;K=In(oe|0,K|0,I|0,A|0)|0;oe=a[U>>2]|0;j=a[U+4>>2]|0;K=In(K|0,M|0,oe|0,j|0)|0;ne=M;l=Gr(m^K,l^ne,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;re=In(ie|0,re|0,l|0,m|0)|0;ie=M;A=Gr(I^re,A^ie,63)|0;I=M;Z=In(h|0,d|0,N|0,Z|0)|0;Z=In(Z|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;N=M;te=Gr(a[o+120>>2]^Z,a[o+120+4>>2]^N,32)|0;O=M;B=In(z|0,B|0,te|0,O|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;N=In(Z|0,N|0,d|0,h|0)|0;N=In(N|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;Z=M;O=Gr(te^N,O^Z,16)|0;te=M;z=In(B|0,z|0,O|0,te|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;t=In(P|0,G|0,J|0,t|0)|0;t=In(t|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;J=M;te=Gr(O^t,te^J,32)|0;O=M;ie=In(re|0,ie|0,te|0,O|0)|0;re=M;G=Gr(P^ie,G^re,24)|0;P=M;J=In(t|0,J|0,G|0,P|0)|0;t=a[w>>2]|0;X=a[w+4>>2]|0;J=In(J|0,M|0,t|0,X|0)|0;Q=M;O=Gr(te^J,O^Q,16)|0;te=M;a[o+120>>2]=O;a[o+120+4>>2]=te;te=In(ie|0,re|0,O|0,te|0)|0;O=M;a[o+80>>2]=te;a[o+80+4>>2]=O;P=Gr(G^te,P^O,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;$=In(A|0,I|0,q|0,$|0)|0;$=In($|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;q=M;T=Gr(x^$,T^q,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;q=In($|0,q|0,I|0,A|0)|0;$=a[_>>2]|0;re=a[_+4>>2]|0;q=In(q|0,M|0,$|0,re|0)|0;ie=M;x=Gr(T^q,x^ie,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;ne=In(h|0,d|0,K|0,ne|0)|0;K=a[F>>2]|0;ae=a[F+4>>2]|0;ne=In(ne|0,M|0,K|0,ae|0)|0;R=M;k=Gr(s^ne,k^R,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;R=In(ne|0,R|0,d|0,h|0)|0;R=In(R|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;ne=M;s=Gr(k^R,s^ne,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;u=a[o+32>>2]|0;H=a[o+32+4>>2]|0;Z=In(u|0,H|0,N|0,Z|0)|0;Z=In(Z|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;N=M;m=Gr(l^Z,m^N,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;H=Gr(u^C,H^V,24)|0;u=M;N=In(Z|0,N|0,H|0,u|0)|0;Z=a[E>>2]|0;Y=a[E+4>>2]|0;N=In(N|0,M|0,Z|0,Y|0)|0;f=M;l=Gr(m^N,l^f,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;u=Gr(H^V,u^C,63)|0;H=M;Q=In(J|0,Q|0,u|0,H|0)|0;j=In(Q|0,M|0,oe|0,j|0)|0;oe=M;T=Gr(x^j,T^oe,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;H=Gr(u^v,H^b,24)|0;u=M;oe=In(j|0,oe|0,H|0,u|0)|0;Y=In(oe|0,M|0,Z|0,Y|0)|0;Z=M;x=Gr(T^Y,x^Z,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;u=Gr(H^b,u^v,63)|0;a[o+32>>2]=u;a[o+32+4>>2]=M;ie=In(P|0,G|0,q|0,ie|0)|0;X=In(ie|0,M|0,t|0,X|0)|0;t=M;k=Gr(s^X,k^t,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;t=In(X|0,t|0,G|0,P|0)|0;t=In(t|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;X=M;s=Gr(k^t,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;ne=In(A|0,I|0,R|0,ne|0)|0;ne=In(ne|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;R=M;m=Gr(l^ne,m^R,32)|0;l=M;O=In(te|0,O|0,m|0,l|0)|0;te=M;I=Gr(A^O,I^te,24)|0;A=M;R=In(ne|0,R|0,I|0,A|0)|0;R=In(R|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;ne=M;l=Gr(m^R,l^ne,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;te=In(O|0,te|0,l|0,m|0)|0;O=M;A=Gr(I^te,A^O,63)|0;I=M;f=In(h|0,d|0,N|0,f|0)|0;re=In(f|0,M|0,$|0,re|0)|0;$=M;f=Gr(a[o+120>>2]^re,a[o+120+4>>2]^$,32)|0;N=M;B=In(z|0,B|0,f|0,N|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;$=In(re|0,$|0,d|0,h|0)|0;ae=In($|0,M|0,K|0,ae|0)|0;K=M;N=Gr(f^ae,N^K,16)|0;f=M;z=In(B|0,z|0,N|0,f|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;Z=In(P|0,G|0,Y|0,Z|0)|0;Z=In(Z|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;Y=M;f=Gr(N^Z,f^Y,32)|0;N=M;O=In(te|0,O|0,f|0,N|0)|0;te=M;G=Gr(P^O,G^te,24)|0;P=M;Y=In(Z|0,Y|0,G|0,P|0)|0;Y=In(Y|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;Z=M;N=Gr(f^Y,N^Z,16)|0;f=M;a[o+120>>2]=N;a[o+120+4>>2]=f;f=In(O|0,te|0,N|0,f|0)|0;N=M;a[o+80>>2]=f;a[o+80+4>>2]=N;P=Gr(G^f,P^N,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;X=In(A|0,I|0,t|0,X|0)|0;t=a[S>>2]|0;te=a[S+4>>2]|0;X=In(X|0,M|0,t|0,te|0)|0;O=M;T=Gr(x^X,T^O,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;O=In(X|0,O|0,I|0,A|0)|0;O=In(O|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;X=M;x=Gr(T^O,x^X,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;ne=In(h|0,d|0,R|0,ne|0)|0;R=a[r>>2]|0;$=a[r+4>>2]|0;ne=In(ne|0,M|0,R|0,$|0)|0;re=M;k=Gr(s^ne,k^re,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;re=In(ne|0,re|0,d|0,h|0)|0;ne=a[y>>2]|0;ie=a[y+4>>2]|0;re=In(re|0,M|0,ne|0,ie|0)|0;q=M;s=Gr(k^re,s^q,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;u=a[o+32>>2]|0;H=a[o+32+4>>2]|0;K=In(u|0,H|0,ae|0,K|0)|0;ae=a[n>>2]|0;oe=a[n+4>>2]|0;K=In(K|0,M|0,ae|0,oe|0)|0;j=M;m=Gr(l^K,m^j,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;H=Gr(u^C,H^V,24)|0;u=M;j=In(K|0,j|0,H|0,u|0)|0;j=In(j|0,M|0,a[D>>2]|0,a[D+4>>2]|0)|0;K=M;l=Gr(m^j,l^K,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;u=Gr(H^V,u^C,63)|0;H=M;Z=In(Y|0,Z|0,u|0,H|0)|0;ie=In(Z|0,M|0,ne|0,ie|0)|0;ne=M;T=Gr(x^ie,T^ne,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;H=Gr(u^v,H^b,24)|0;u=M;ne=In(ie|0,ne|0,H|0,u|0)|0;te=In(ne|0,M|0,t|0,te|0)|0;t=M;x=Gr(T^te,x^t,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;u=Gr(H^b,u^v,63)|0;a[o+32>>2]=u;a[o+32+4>>2]=M;X=In(P|0,G|0,O|0,X|0)|0;X=In(X|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;O=M;k=Gr(s^X,k^O,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;O=In(X|0,O|0,G|0,P|0)|0;O=In(O|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;X=M;s=Gr(k^O,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;q=In(A|0,I|0,re|0,q|0)|0;q=In(q|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;re=M;m=Gr(l^q,m^re,32)|0;l=M;N=In(f|0,N|0,m|0,l|0)|0;f=M;I=Gr(A^N,I^f,24)|0;A=M;re=In(q|0,re|0,I|0,A|0)|0;re=In(re|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;q=M;l=Gr(m^re,l^q,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;f=In(N|0,f|0,l|0,m|0)|0;N=M;A=Gr(I^f,A^N,63)|0;I=M;K=In(h|0,d|0,j|0,K|0)|0;K=In(K|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;j=M;u=Gr(a[o+120>>2]^K,a[o+120+4>>2]^j,32)|0;H=M;B=In(z|0,B|0,u|0,H|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;j=In(K|0,j|0,d|0,h|0)|0;$=In(j|0,M|0,R|0,$|0)|0;R=M;H=Gr(u^$,H^R,16)|0;u=M;z=In(B|0,z|0,H|0,u|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;t=In(P|0,G|0,te|0,t|0)|0;t=In(t|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;te=M;u=Gr(H^t,u^te,32)|0;H=M;N=In(f|0,N|0,u|0,H|0)|0;f=M;G=Gr(P^N,G^f,24)|0;P=M;te=In(t|0,te|0,G|0,P|0)|0;oe=In(te|0,M|0,ae|0,oe|0)|0;ae=M;H=Gr(u^oe,H^ae,16)|0;u=M;a[o+120>>2]=H;a[o+120+4>>2]=u;u=In(N|0,f|0,H|0,u|0)|0;H=M;a[o+80>>2]=u;a[o+80+4>>2]=H;P=Gr(G^u,P^H,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;X=In(A|0,I|0,O|0,X|0)|0;X=In(X|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;O=M;T=Gr(x^X,T^O,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;O=In(X|0,O|0,I|0,A|0)|0;X=a[w>>2]|0;f=a[w+4>>2]|0;O=In(O|0,M|0,X|0,f|0)|0;N=M;x=Gr(T^O,x^N,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;q=In(h|0,d|0,re|0,q|0)|0;re=a[L>>2]|0;te=a[L+4>>2]|0;q=In(q|0,M|0,re|0,te|0)|0;t=M;k=Gr(s^q,k^t,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=In(q|0,t|0,d|0,h|0)|0;q=a[W>>2]|0;j=a[W+4>>2]|0;t=In(t|0,M|0,q|0,j|0)|0;K=M;s=Gr(k^t,s^K,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;ne=a[o+32>>2]|0;ie=a[o+32+4>>2]|0;R=In(ne|0,ie|0,$|0,R|0)|0;$=a[D>>2]|0;Z=a[D+4>>2]|0;R=In(R|0,M|0,$|0,Z|0)|0;Y=M;m=Gr(l^R,m^Y,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;ie=Gr(ne^C,ie^V,24)|0;ne=M;Y=In(R|0,Y|0,ie|0,ne|0)|0;R=a[g>>2]|0;Q=a[g+4>>2]|0;Y=In(Y|0,M|0,R|0,Q|0)|0;J=M;l=Gr(m^Y,l^J,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;ne=Gr(ie^V,ne^C,63)|0;ie=M;ae=In(oe|0,ae|0,ne|0,ie|0)|0;Z=In(ae|0,M|0,$|0,Z|0)|0;$=M;T=Gr(x^Z,T^$,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;ie=Gr(ne^v,ie^b,24)|0;ne=M;$=In(Z|0,$|0,ie|0,ne|0)|0;$=In($|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;Z=M;x=Gr(T^$,x^Z,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;ne=Gr(ie^b,ne^v,63)|0;a[o+32>>2]=ne;a[o+32+4>>2]=M;N=In(P|0,G|0,O|0,N|0)|0;N=In(N|0,M|0,a[r>>2]|0,a[r+4>>2]|0)|0;O=M;k=Gr(s^N,k^O,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;O=In(N|0,O|0,G|0,P|0)|0;j=In(O|0,M|0,q|0,j|0)|0;q=M;s=Gr(k^j,s^q,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;K=In(A|0,I|0,t|0,K|0)|0;f=In(K|0,M|0,X|0,f|0)|0;X=M;m=Gr(l^f,m^X,32)|0;l=M;H=In(u|0,H|0,m|0,l|0)|0;u=M;I=Gr(A^H,I^u,24)|0;A=M;X=In(f|0,X|0,I|0,A|0)|0;X=In(X|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;f=M;l=Gr(m^X,l^f,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;u=In(H|0,u|0,l|0,m|0)|0;H=M;A=Gr(I^u,A^H,63)|0;I=M;J=In(h|0,d|0,Y|0,J|0)|0;te=In(J|0,M|0,re|0,te|0)|0;re=M;J=Gr(a[o+120>>2]^te,a[o+120+4>>2]^re,32)|0;Y=M;B=In(z|0,B|0,J|0,Y|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;re=In(te|0,re|0,d|0,h|0)|0;Q=In(re|0,M|0,R|0,Q|0)|0;R=M;Y=Gr(J^Q,Y^R,16)|0;J=M;z=In(B|0,z|0,Y|0,J|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;Z=In(P|0,G|0,$|0,Z|0)|0;Z=In(Z|0,M|0,a[S>>2]|0,a[S+4>>2]|0)|0;$=M;J=Gr(Y^Z,J^$,32)|0;Y=M;H=In(u|0,H|0,J|0,Y|0)|0;u=M;G=Gr(P^H,G^u,24)|0;P=M;$=In(Z|0,$|0,G|0,P|0)|0;$=In($|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;Z=M;Y=Gr(J^$,Y^Z,16)|0;J=M;a[o+120>>2]=Y;a[o+120+4>>2]=J;J=In(H|0,u|0,Y|0,J|0)|0;Y=M;a[o+80>>2]=J;a[o+80+4>>2]=Y;P=Gr(G^J,P^Y,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;q=In(A|0,I|0,j|0,q|0)|0;q=In(q|0,M|0,a[F>>2]|0,a[F+4>>2]|0)|0;j=M;T=Gr(x^q,T^j,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;j=In(q|0,j|0,I|0,A|0)|0;j=In(j|0,M|0,a[ee>>2]|0,a[ee+4>>2]|0)|0;q=M;x=Gr(T^j,x^q,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;f=In(h|0,d|0,X|0,f|0)|0;X=a[_>>2]|0;u=a[_+4>>2]|0;f=In(f|0,M|0,X|0,u|0)|0;H=M;k=Gr(s^f,k^H,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;H=In(f|0,H|0,d|0,h|0)|0;H=In(H|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;f=M;s=Gr(k^H,s^f,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;re=a[o+32>>2]|0;te=a[o+32+4>>2]|0;R=In(re|0,te|0,Q|0,R|0)|0;R=In(R|0,M|0,a[U>>2]|0,a[U+4>>2]|0)|0;Q=M;m=Gr(l^R,m^Q,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;te=Gr(re^C,te^V,24)|0;re=M;Q=In(R|0,Q|0,te|0,re|0)|0;R=a[o+128>>2]|0;K=a[o+128+4>>2]|0;Q=In(Q|0,M|0,R|0,K|0)|0;t=M;l=Gr(m^Q,l^t,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;re=Gr(te^V,re^C,63)|0;te=M;Z=In($|0,Z|0,re|0,te|0)|0;K=In(Z|0,M|0,R|0,K|0)|0;R=M;T=Gr(x^K,T^R,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;te=Gr(re^v,te^b,24)|0;re=M;R=In(K|0,R|0,te|0,re|0)|0;R=In(R|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;K=M;x=Gr(T^R,x^K,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;re=Gr(te^b,re^v,63)|0;a[o+32>>2]=re;a[o+32+4>>2]=M;q=In(P|0,G|0,j|0,q|0)|0;q=In(q|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;j=M;k=Gr(s^q,k^j,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;j=In(q|0,j|0,G|0,P|0)|0;u=In(j|0,M|0,X|0,u|0)|0;X=M;s=Gr(k^u,s^X,16)|0;k=M;a[o+104>>2]=s;a[o+104+4>>2]=k;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;P=Gr(G^V,P^C,63)|0;G=M;f=In(A|0,I|0,H|0,f|0)|0;f=In(f|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;H=M;m=Gr(l^f,m^H,32)|0;l=M;Y=In(J|0,Y|0,m|0,l|0)|0;J=M;I=Gr(A^Y,I^J,24)|0;A=M;H=In(f|0,H|0,I|0,A|0)|0;H=In(H|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;f=M;l=Gr(m^H,l^f,16)|0;m=M;a[o+112>>2]=l;a[o+112+4>>2]=m;J=In(Y|0,J|0,l|0,m|0)|0;Y=M;A=Gr(I^J,A^Y,63)|0;I=M;t=In(h|0,d|0,Q|0,t|0)|0;t=In(t|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;Q=M;j=Gr(a[o+120>>2]^t,a[o+120+4>>2]^Q,32)|0;q=M;B=In(z|0,B|0,j|0,q|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;Q=In(t|0,Q|0,d|0,h|0)|0;Q=In(Q|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;t=M;q=Gr(j^Q,q^t,16)|0;j=M;z=In(B|0,z|0,q|0,j|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;K=In(P|0,G|0,R|0,K|0)|0;R=a[r>>2]|0;r=a[r+4>>2]|0;K=In(K|0,M|0,R|0,r|0)|0;re=M;j=Gr(q^K,j^re,32)|0;q=M;Y=In(J|0,Y|0,j|0,q|0)|0;J=M;G=Gr(P^Y,G^J,24)|0;P=M;re=In(K|0,re|0,G|0,P|0)|0;K=a[F>>2]|0;F=a[F+4>>2]|0;re=In(re|0,M|0,K|0,F|0)|0;te=M;q=Gr(j^re,q^te,16)|0;j=M;a[o+120>>2]=q;a[o+120+4>>2]=j;j=In(Y|0,J|0,q|0,j|0)|0;q=M;a[o+80>>2]=j;a[o+80+4>>2]=q;P=Gr(G^j,P^q,63)|0;G=M;a[o+40>>2]=P;a[o+40+4>>2]=G;X=In(A|0,I|0,u|0,X|0)|0;u=a[D>>2]|0;D=a[D+4>>2]|0;X=In(X|0,M|0,u|0,D|0)|0;J=M;T=Gr(x^X,T^J,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;J=In(X|0,J|0,I|0,A|0)|0;J=In(J|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;X=M;x=Gr(T^J,x^X,16)|0;T=M;z=In(B|0,z|0,x|0,T|0)|0;B=M;a[o+88>>2]=z;a[o+88+4>>2]=B;A=Gr(I^z,A^B,63)|0;I=M;a[o+48>>2]=A;a[o+48+4>>2]=I;f=In(h|0,d|0,H|0,f|0)|0;f=In(f|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;H=M;k=Gr(s^f,k^H,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;H=In(f|0,H|0,d|0,h|0)|0;f=a[U>>2]|0;U=a[U+4>>2]|0;H=In(H|0,M|0,f|0,U|0)|0;Y=M;s=Gr(k^H,s^Y,16)|0;k=M;b=In(v|0,b|0,s|0,k|0)|0;v=M;h=Gr(d^b,h^v,63)|0;d=M;a[o+56>>2]=h;a[o+56+4>>2]=d;Z=a[o+32>>2]|0;$=a[o+32+4>>2]|0;t=In(Z|0,$|0,Q|0,t|0)|0;Q=a[ee>>2]|0;ee=a[ee+4>>2]|0;t=In(t|0,M|0,Q|0,ee|0)|0;O=M;m=Gr(l^t,m^O,32)|0;l=M;C=In(V|0,C|0,m|0,l|0)|0;V=M;$=Gr(Z^C,$^V,24)|0;Z=M;O=In(t|0,O|0,$|0,Z|0)|0;t=a[S>>2]|0;S=a[S+4>>2]|0;O=In(O|0,M|0,t|0,S|0)|0;N=M;l=Gr(m^O,l^N,16)|0;m=M;V=In(C|0,V|0,l|0,m|0)|0;C=M;Z=Gr($^V,Z^C,63)|0;$=M;te=In(re|0,te|0,Z|0,$|0)|0;ee=In(te|0,M|0,Q|0,ee|0)|0;Q=M;T=Gr(x^ee,T^Q,32)|0;x=M;v=In(b|0,v|0,T|0,x|0)|0;b=M;$=Gr(Z^v,$^b,24)|0;Z=M;Q=In(ee|0,Q|0,$|0,Z|0)|0;D=In(Q|0,M|0,u|0,D|0)|0;u=M;x=Gr(T^D,x^u,16)|0;T=M;b=In(v|0,b|0,x|0,T|0)|0;v=M;a[o+64>>2]=b;a[o+64+4>>2]=v;Z=Gr($^b,Z^v,63)|0;a[o+32>>2]=Z;a[o+32+4>>2]=M;X=In(P|0,G|0,J|0,X|0)|0;W=In(X|0,M|0,a[W>>2]|0,a[W+4>>2]|0)|0;X=M;k=Gr(s^W,k^X,32)|0;s=M;C=In(V|0,C|0,k|0,s|0)|0;V=M;G=Gr(P^C,G^V,24)|0;P=M;X=In(W|0,X|0,G|0,P|0)|0;r=In(X|0,M|0,R|0,r|0)|0;R=M;s=Gr(k^r,s^R,16)|0;k=M;V=In(C|0,V|0,s|0,k|0)|0;C=M;a[o+72>>2]=V;a[o+72+4>>2]=C;C=Gr(G^V,P^C,63)|0;P=M;Y=In(A|0,I|0,H|0,Y|0)|0;F=In(Y|0,M|0,K|0,F|0)|0;K=M;m=Gr(l^F,m^K,32)|0;l=M;q=In(j|0,q|0,m|0,l|0)|0;j=M;I=Gr(A^q,I^j,24)|0;A=M;K=In(F|0,K|0,I|0,A|0)|0;S=In(K|0,M|0,t|0,S|0)|0;t=M;l=Gr(m^S,l^t,16)|0;m=M;j=In(q|0,j|0,l|0,m|0)|0;q=M;A=Gr(I^j,A^q,63)|0;I=M;N=In(h|0,d|0,O|0,N|0)|0;U=In(N|0,M|0,f|0,U|0)|0;f=M;N=Gr(a[o+120>>2]^U,a[o+120+4>>2]^f,32)|0;O=M;B=In(z|0,B|0,N|0,O|0)|0;z=M;d=Gr(h^B,d^z,24)|0;h=M;f=In(U|0,f|0,d|0,h|0)|0;y=In(f|0,M|0,a[y>>2]|0,a[y+4>>2]|0)|0;f=M;O=Gr(N^y,O^f,16)|0;N=M;z=In(B|0,z|0,O|0,N|0)|0;B=M;h=Gr(d^z,h^B,63)|0;d=M;u=In(C|0,P|0,D|0,u|0)|0;L=In(u|0,M|0,a[L>>2]|0,a[L+4>>2]|0)|0;u=M;N=Gr(O^L,N^u,32)|0;O=M;q=In(j|0,q|0,N|0,O|0)|0;j=M;P=Gr(C^q,P^j,24)|0;C=M;u=In(L|0,u|0,P|0,C|0)|0;c=In(u|0,M|0,a[c>>2]|0,a[c+4>>2]|0)|0;u=M;a[o>>2]=c;a[o+4>>2]=u;O=Gr(N^c,O^u,16)|0;N=M;a[o+120>>2]=O;a[o+120+4>>2]=N;N=In(q|0,j|0,O|0,N|0)|0;O=M;a[o+80>>2]=N;a[o+80+4>>2]=O;O=Gr(P^N,C^O,63)|0;a[o+40>>2]=O;a[o+40+4>>2]=M;R=In(A|0,I|0,r|0,R|0)|0;R=In(R|0,M|0,a[o+128>>2]|0,a[o+128+4>>2]|0)|0;r=M;T=Gr(x^R,T^r,32)|0;x=M;B=In(z|0,B|0,T|0,x|0)|0;z=M;I=Gr(A^B,I^z,24)|0;A=M;r=In(R|0,r|0,I|0,A|0)|0;n=In(r|0,M|0,a[n>>2]|0,a[n+4>>2]|0)|0;r=M;a[o+8>>2]=n;a[o+8+4>>2]=r;x=Gr(T^n,x^r,16)|0;T=M;a[o+96>>2]=x;a[o+96+4>>2]=T;T=In(B|0,z|0,x|0,T|0)|0;x=M;a[o+88>>2]=T;a[o+88+4>>2]=x;x=Gr(I^T,A^x,63)|0;a[o+48>>2]=x;a[o+48+4>>2]=M;t=In(h|0,d|0,S|0,t|0)|0;E=In(t|0,M|0,a[E>>2]|0,a[E+4>>2]|0)|0;t=M;k=Gr(s^E,k^t,32)|0;s=M;v=In(b|0,v|0,k|0,s|0)|0;b=M;d=Gr(h^v,d^b,24)|0;h=M;t=In(E|0,t|0,d|0,h|0)|0;w=In(t|0,M|0,a[w>>2]|0,a[w+4>>2]|0)|0;t=M;a[o+16>>2]=w;a[o+16+4>>2]=t;t=Gr(k^w,s^t,16)|0;s=M;a[o+104>>2]=t;a[o+104+4>>2]=s;s=In(v|0,b|0,t|0,s|0)|0;t=M;a[o+64>>2]=s;a[o+64+4>>2]=t;h=Gr(d^s,h^t,63)|0;a[o+56>>2]=h;a[o+56+4>>2]=M;h=a[o+32>>2]|0;d=a[o+32+4>>2]|0;f=In(h|0,d|0,y|0,f|0)|0;g=In(f|0,M|0,a[g>>2]|0,a[g+4>>2]|0)|0;f=M;m=Gr(l^g,m^f,32)|0;l=M;y=In(a[o+72>>2]|0,a[o+72+4>>2]|0,m|0,l|0)|0;b=M;d=Gr(h^y,d^b,24)|0;h=M;f=In(g|0,f|0,d|0,h|0)|0;_=In(f|0,M|0,a[_>>2]|0,a[_+4>>2]|0)|0;f=M;a[o+24>>2]=_;a[o+24+4>>2]=f;f=Gr(m^_,l^f,16)|0;l=M;a[o+112>>2]=f;a[o+112+4>>2]=l;l=In(y|0,b|0,f|0,l|0)|0;f=M;a[o+72>>2]=l;a[o+72+4>>2]=f;f=Gr(d^l,h^f,63)|0;a[o+32>>2]=f;a[o+32+4>>2]=M;t=u^a[e+4>>2]^t;a[e>>2]=c^a[e>>2]^s;a[e+4>>2]=t;t=1;while(1){ce=e+(t<<3)|0;se=o+(t+8<<3)|0;r=r^a[ce+4>>2]^a[se+4>>2];a[ce>>2]=n^a[ce>>2]^a[se>>2];a[ce+4>>2]=r;r=t+1|0;if((r|0)==8)break;t=r;n=a[o+(r<<3)>>2]|0;r=a[o+(r<<3)+4>>2]|0}p=i;return}function oe(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,ye=0,_e=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Te=0,Ie=0,ze=0,Be=0,Re=0,Oe=0,Ce=0,Ne=0,Pe=0,je=0,qe=0,Le=0,De=0,Ue=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Je=0,Ze=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,ft=0,ht=0,lt=0,dt=0,pt=0,bt=0,yt=0,_t=0,mt=0,gt=0,vt=0,wt=0,kt=0,Et=0,St=0,xt=0,At=0,Mt=0,Tt=0,It=0,zt=0,Bt=0,Rt=0,Ot=0,Ct=0,Nt=0,Pt=0,jt=0,qt=0,Lt=0,Dt=0,Ut=0,Kt=0,Ft=0,Yt=0,Ht=0,Vt=0,Gt=0,Xt=0,Wt=0,Jt=0,Zt=0,$t=0,Qt=0,er=0,tr=0,rr=0,nr=0,ir=0,ar=0,or=0,sr=0,cr=0,ur=0,fr=0,lr=0,dr=0,pr=0,br=0,yr=0,_r=0,mr=0,gr=0;Ze=$r(n[t>>0]|0,n[t+1>>0]|0,n[t+2>>0]|0)|0;dt=hr(t+2|0)|0;dt=fn(dt|0,M|0,5)|0;x=$r(n[t+5>>0]|0,n[t+6>>0]|0,n[t+7>>0]|0)|0;x=fn(x|0,M|0,2)|0;ft=hr(t+7|0)|0;ft=fn(ft|0,M|0,7)|0;h=hr(t+10|0)|0;h=fn(h|0,M|0,4)|0;N=$r(n[t+13>>0]|0,n[t+14>>0]|0,n[t+15>>0]|0)|0;N=fn(N|0,M|0,1)|0;B=hr(t+15|0)|0;B=fn(B|0,M|0,6)|0;ie=$r(n[t+18>>0]|0,n[t+19>>0]|0,n[t+20>>0]|0)|0;ie=fn(ie|0,M|0,3)|0;ct=$r(n[t+21>>0]|0,n[t+22>>0]|0,n[t+23>>0]|0)|0;C=hr(t+23|0)|0;C=fn(C|0,M|0,5)|0;_r=$r(n[t+26>>0]|0,n[t+27>>0]|0,n[t+28>>0]|0)|0;_r=fn(_r|0,M|0,2)|0;d=hr(t+28|0)|0;d=fn(d|0,M|0,7)|0;ve=M;vt=$r(n[r>>0]|0,n[r+1>>0]|0,n[r+2>>0]|0)|0;Ce=hr(r+2|0)|0;Ce=fn(Ce|0,M|0,5)|0;Xe=$r(n[r+5>>0]|0,n[r+6>>0]|0,n[r+7>>0]|0)|0;Xe=fn(Xe|0,M|0,2)|0;re=hr(r+7|0)|0;re=fn(re|0,M|0,7)|0;U=hr(r+10|0)|0;U=fn(U|0,M|0,4)|0;ge=$r(n[r+13>>0]|0,n[r+14>>0]|0,n[r+15>>0]|0)|0;ge=fn(ge|0,M|0,1)|0;Ee=hr(r+15|0)|0;Ee=fn(Ee|0,M|0,6)|0;_t=$r(n[r+18>>0]|0,n[r+19>>0]|0,n[r+20>>0]|0)|0;_t=fn(_t|0,M|0,3)|0;de=$r(n[r+21>>0]|0,n[r+22>>0]|0,n[r+23>>0]|0)|0;D=hr(r+23|0)|0;D=fn(D|0,M|0,5)|0;Ne=$r(n[r+26>>0]|0,n[r+27>>0]|0,n[r+28>>0]|0)|0;Ne=fn(Ne|0,M|0,2)|0;k=hr(r+28|0)|0;k=fn(k|0,M|0,7)|0;ye=M;G=$r(n[i>>0]|0,n[i+1>>0]|0,n[i+2>>0]|0)|0;pe=hr(i+2|0)|0;pe=fn(pe|0,M|0,5)|0;me=$r(n[i+5>>0]|0,n[i+6>>0]|0,n[i+7>>0]|0)|0;me=fn(me|0,M|0,2)|0;Le=hr(i+7|0)|0;Le=fn(Le|0,M|0,7)|0;le=hr(i+10|0)|0;le=fn(le|0,M|0,4)|0;Ie=$r(n[i+13>>0]|0,n[i+14>>0]|0,n[i+15>>0]|0)|0;Ie=fn(Ie|0,M|0,1)|0;at=hr(i+15|0)|0;at=fn(at|0,M|0,6)|0;o=$r(n[i+18>>0]|0,n[i+19>>0]|0,n[i+20>>0]|0)|0;o=fn(o|0,M|0,3)|0;Fe=$r(n[i+21>>0]|0,n[i+22>>0]|0,n[i+23>>0]|0)|0;z=hr(i+23|0)|0;z=fn(z|0,M|0,5)|0;Ke=$r(n[i+26>>0]|0,n[i+27>>0]|0,n[i+28>>0]|0)|0;Ke=fn(Ke|0,M|0,2)|0;t=hr(i+28|0)|0;t=fn(t|0,M|0,7)|0;s=M;be=Wr(vt&2097151|0,0,Ze&2097151|0,0)|0;be=In(G&2097151|0,0,be|0,M|0)|0;G=M;yr=Wr(Ce&2097151|0,0,Ze&2097151|0,0)|0;br=M;pr=Wr(vt&2097151|0,0,dt&2097151|0,0)|0;g=M;ue=Wr(Xe&2097151|0,0,Ze&2097151|0,0)|0;_e=M;fe=Wr(Ce&2097151|0,0,dt&2097151|0,0)|0;cr=M;Y=Wr(vt&2097151|0,0,x&2097151|0,0)|0;Y=In(fe|0,cr|0,Y|0,M|0)|0;_e=In(Y|0,M|0,ue|0,_e|0)|0;me=In(_e|0,M|0,me&2097151|0,0)|0;_e=M;ue=Wr(re&2097151|0,0,Ze&2097151|0,0)|0;Y=M;cr=Wr(Xe&2097151|0,0,dt&2097151|0,0)|0;fe=M;dr=Wr(Ce&2097151|0,0,x&2097151|0,0)|0;lr=M;fr=Wr(vt&2097151|0,0,ft&2097151|0,0)|0;ur=M;Te=Wr(U&2097151|0,0,Ze&2097151|0,0)|0;he=M;Qt=Wr(re&2097151|0,0,dt&2097151|0,0)|0;$=M;tr=Wr(Xe&2097151|0,0,x&2097151|0,0)|0;Me=M;rr=Wr(Ce&2097151|0,0,ft&2097151|0,0)|0;nr=M;er=Wr(vt&2097151|0,0,h&2097151|0,0)|0;er=In(rr|0,nr|0,er|0,M|0)|0;Me=In(er|0,M|0,tr|0,Me|0)|0;$=In(Me|0,M|0,Qt|0,$|0)|0;he=In($|0,M|0,Te|0,he|0)|0;le=In(he|0,M|0,le&2097151|0,0)|0;he=M;Te=Wr(ge&2097151|0,0,Ze&2097151|0,0)|0;$=M;Qt=Wr(U&2097151|0,0,dt&2097151|0,0)|0;Me=M;tr=Wr(re&2097151|0,0,x&2097151|0,0)|0;er=M;nr=Wr(Xe&2097151|0,0,ft&2097151|0,0)|0;rr=M;sr=Wr(Ce&2097151|0,0,h&2097151|0,0)|0;or=M;ar=Wr(vt&2097151|0,0,N&2097151|0,0)|0;ir=M;J=Wr(Ee&2097151|0,0,Ze&2097151|0,0)|0;Qe=M;Dt=Wr(ge&2097151|0,0,dt&2097151|0,0)|0;A=M;Kt=Wr(U&2097151|0,0,x&2097151|0,0)|0;W=M;Yt=Wr(re&2097151|0,0,ft&2097151|0,0)|0;Ut=M;Vt=Wr(Xe&2097151|0,0,h&2097151|0,0)|0;Ft=M;Gt=Wr(Ce&2097151|0,0,N&2097151|0,0)|0;Xt=M;Ht=Wr(vt&2097151|0,0,B&2097151|0,0)|0;Ht=In(Gt|0,Xt|0,Ht|0,M|0)|0;Ft=In(Ht|0,M|0,Vt|0,Ft|0)|0;Ut=In(Ft|0,M|0,Yt|0,Ut|0)|0;W=In(Ut|0,M|0,Kt|0,W|0)|0;A=In(W|0,M|0,Dt|0,A|0)|0;Qe=In(A|0,M|0,J|0,Qe|0)|0;at=In(Qe|0,M|0,at&2097151|0,0)|0;Qe=M;J=Wr(_t&2097151|0,0,Ze&2097151|0,0)|0;A=M;Dt=Wr(Ee&2097151|0,0,dt&2097151|0,0)|0;W=M;Kt=Wr(ge&2097151|0,0,x&2097151|0,0)|0;Ut=M;Yt=Wr(U&2097151|0,0,ft&2097151|0,0)|0;Ft=M;Vt=Wr(re&2097151|0,0,h&2097151|0,0)|0;Ht=M;Xt=Wr(Xe&2097151|0,0,N&2097151|0,0)|0;Gt=M;$t=Wr(Ce&2097151|0,0,B&2097151|0,0)|0;Zt=M;Jt=Wr(vt&2097151|0,0,ie&2097151|0,0)|0;Wt=M;xt=Wr(de&2097151|0,0,Ze&2097151|0,0)|0;i=M;c=Wr(_t&2097151|0,0,dt&2097151|0,0)|0;Ye=M;Et=Wr(Ee&2097151|0,0,x&2097151|0,0)|0;St=M;Mt=Wr(ge&2097151|0,0,ft&2097151|0,0)|0;we=M;It=Wr(U&2097151|0,0,h&2097151|0,0)|0;At=M;Bt=Wr(re&2097151|0,0,N&2097151|0,0)|0;Tt=M;Ot=Wr(Xe&2097151|0,0,B&2097151|0,0)|0;zt=M;Ct=Wr(Ce&2097151|0,0,ie&2097151|0,0)|0;Nt=M;Rt=Wr(vt&2097151|0,0,ct&2097151|0,0)|0;Rt=In(Ct|0,Nt|0,Rt|0,M|0)|0;zt=In(Rt|0,M|0,Ot|0,zt|0)|0;Tt=In(zt|0,M|0,Bt|0,Tt|0)|0;At=In(Tt|0,M|0,It|0,At|0)|0;we=In(At|0,M|0,Mt|0,we|0)|0;St=In(we|0,M|0,Et|0,St|0)|0;i=In(St|0,M|0,xt|0,i|0)|0;Ye=In(i|0,M|0,c|0,Ye|0)|0;Fe=In(Ye|0,M|0,Fe&2097151|0,0)|0;Ye=M;c=Wr(D&2097151|0,0,Ze&2097151|0,0)|0;i=M;xt=Wr(de&2097151|0,0,dt&2097151|0,0)|0;St=M;Et=Wr(_t&2097151|0,0,x&2097151|0,0)|0;we=M;Mt=Wr(Ee&2097151|0,0,ft&2097151|0,0)|0;At=M;It=Wr(ge&2097151|0,0,h&2097151|0,0)|0;Tt=M;Bt=Wr(U&2097151|0,0,N&2097151|0,0)|0;zt=M;Ot=Wr(re&2097151|0,0,B&2097151|0,0)|0;Rt=M;Nt=Wr(Xe&2097151|0,0,ie&2097151|0,0)|0;Ct=M;Lt=Wr(Ce&2097151|0,0,ct&2097151|0,0)|0;qt=M;jt=Wr(vt&2097151|0,0,C&2097151|0,0)|0;Pt=M;$e=Wr(Ne&2097151|0,0,Ze&2097151|0,0)|0;Ue=M;et=Wr(D&2097151|0,0,dt&2097151|0,0)|0;ot=M;Q=Wr(de&2097151|0,0,x&2097151|0,0)|0;ee=M;V=Wr(_t&2097151|0,0,ft&2097151|0,0)|0;H=M;lt=Wr(Ee&2097151|0,0,h&2097151|0,0)|0;ht=M;qe=Wr(ge&2097151|0,0,N&2097151|0,0)|0;je=M;it=Wr(U&2097151|0,0,B&2097151|0,0)|0;nt=M;Re=Wr(re&2097151|0,0,ie&2097151|0,0)|0;Be=M;Ve=Wr(Xe&2097151|0,0,ct&2097151|0,0)|0;He=M;kt=Wr(Ce&2097151|0,0,C&2097151|0,0)|0;j=M;K=Wr(vt&2097151|0,0,_r&2097151|0,0)|0;K=In(kt|0,j|0,K|0,M|0)|0;He=In(K|0,M|0,Ve|0,He|0)|0;Be=In(He|0,M|0,Re|0,Be|0)|0;nt=In(Be|0,M|0,it|0,nt|0)|0;je=In(nt|0,M|0,qe|0,je|0)|0;ht=In(je|0,M|0,lt|0,ht|0)|0;ee=In(ht|0,M|0,Q|0,ee|0)|0;H=In(ee|0,M|0,V|0,H|0)|0;ot=In(H|0,M|0,et|0,ot|0)|0;Ue=In(ot|0,M|0,$e|0,Ue|0)|0;Ke=In(Ue|0,M|0,Ke&2097151|0,0)|0;Ue=M;Ze=Wr(k|0,ye|0,Ze&2097151|0,0)|0;$e=M;ot=Wr(Ne&2097151|0,0,dt&2097151|0,0)|0;et=M;H=Wr(D&2097151|0,0,x&2097151|0,0)|0;V=M;ee=Wr(de&2097151|0,0,ft&2097151|0,0)|0;Q=M;ht=Wr(_t&2097151|0,0,h&2097151|0,0)|0;lt=M;je=Wr(Ee&2097151|0,0,N&2097151|0,0)|0;qe=M;nt=Wr(ge&2097151|0,0,B&2097151|0,0)|0;it=M;Be=Wr(U&2097151|0,0,ie&2097151|0,0)|0;Re=M;He=Wr(re&2097151|0,0,ct&2097151|0,0)|0;Ve=M;K=Wr(Xe&2097151|0,0,C&2097151|0,0)|0;j=M;kt=Wr(Ce&2097151|0,0,_r&2097151|0,0)|0;wt=M;vt=Wr(vt&2097151|0,0,d|0,ve|0)|0;gt=M;dt=Wr(k|0,ye|0,dt&2097151|0,0)|0;pt=M;tt=Wr(Ne&2097151|0,0,x&2097151|0,0)|0;w=M;q=Wr(D&2097151|0,0,ft&2097151|0,0)|0;rt=M;bt=Wr(de&2097151|0,0,h&2097151|0,0)|0;v=M;b=Wr(_t&2097151|0,0,N&2097151|0,0)|0;st=M;y=Wr(Ee&2097151|0,0,B&2097151|0,0)|0;yt=M;se=Wr(ge&2097151|0,0,ie&2097151|0,0)|0;S=M;ne=Wr(U&2097151|0,0,ct&2097151|0,0)|0;ce=M;Oe=Wr(re&2097151|0,0,C&2097151|0,0)|0;F=M;ut=Wr(Xe&2097151|0,0,_r&2097151|0,0)|0;Ge=M;Ce=Wr(Ce&2097151|0,0,d|0,ve|0)|0;Ce=In(ut|0,Ge|0,Ce|0,M|0)|0;F=In(Ce|0,M|0,Oe|0,F|0)|0;ce=In(F|0,M|0,ne|0,ce|0)|0;S=In(ce|0,M|0,se|0,S|0)|0;yt=In(S|0,M|0,y|0,yt|0)|0;v=In(yt|0,M|0,bt|0,v|0)|0;st=In(v|0,M|0,b|0,st|0)|0;rt=In(st|0,M|0,q|0,rt|0)|0;w=In(rt|0,M|0,tt|0,w|0)|0;pt=In(w|0,M|0,dt|0,pt|0)|0;dt=M;x=Wr(k|0,ye|0,x&2097151|0,0)|0;w=M;tt=Wr(Ne&2097151|0,0,ft&2097151|0,0)|0;rt=M;q=Wr(D&2097151|0,0,h&2097151|0,0)|0;st=M;b=Wr(de&2097151|0,0,N&2097151|0,0)|0;v=M;bt=Wr(_t&2097151|0,0,B&2097151|0,0)|0;yt=M;y=Wr(Ee&2097151|0,0,ie&2097151|0,0)|0;S=M;se=Wr(ge&2097151|0,0,ct&2097151|0,0)|0;ce=M;ne=Wr(U&2097151|0,0,C&2097151|0,0)|0;F=M;Oe=Wr(re&2097151|0,0,_r&2097151|0,0)|0;Ce=M;Xe=Wr(Xe&2097151|0,0,d|0,ve|0)|0;Ge=M;ft=Wr(k|0,ye|0,ft&2097151|0,0)|0;ut=M;We=Wr(Ne&2097151|0,0,h&2097151|0,0)|0;u=M;l=Wr(D&2097151|0,0,N&2097151|0,0)|0;Je=M;X=Wr(de&2097151|0,0,B&2097151|0,0)|0;R=M;Z=Wr(_t&2097151|0,0,ie&2097151|0,0)|0;a=M;xe=Wr(Ee&2097151|0,0,ct&2097151|0,0)|0;_=M;ke=Wr(ge&2097151|0,0,C&2097151|0,0)|0;f=M;mt=Wr(U&2097151|0,0,_r&2097151|0,0)|0;p=M;re=Wr(re&2097151|0,0,d|0,ve|0)|0;re=In(mt|0,p|0,re|0,M|0)|0;f=In(re|0,M|0,ke|0,f|0)|0;_=In(f|0,M|0,xe|0,_|0)|0;R=In(_|0,M|0,X|0,R|0)|0;a=In(R|0,M|0,Z|0,a|0)|0;Je=In(a|0,M|0,l|0,Je|0)|0;u=In(Je|0,M|0,We|0,u|0)|0;ut=In(u|0,M|0,ft|0,ut|0)|0;ft=M;h=Wr(k|0,ye|0,h&2097151|0,0)|0;u=M;We=Wr(Ne&2097151|0,0,N&2097151|0,0)|0;Je=M;l=Wr(D&2097151|0,0,B&2097151|0,0)|0;a=M;Z=Wr(de&2097151|0,0,ie&2097151|0,0)|0;R=M;X=Wr(_t&2097151|0,0,ct&2097151|0,0)|0;_=M;xe=Wr(Ee&2097151|0,0,C&2097151|0,0)|0;f=M;ke=Wr(ge&2097151|0,0,_r&2097151|0,0)|0;re=M;U=Wr(U&2097151|0,0,d|0,ve|0)|0;p=M;N=Wr(k|0,ye|0,N&2097151|0,0)|0;mt=M;ae=Wr(Ne&2097151|0,0,B&2097151|0,0)|0;Pe=M;ze=Wr(D&2097151|0,0,ie&2097151|0,0)|0;T=M;te=Wr(de&2097151|0,0,ct&2097151|0,0)|0;m=M;I=Wr(_t&2097151|0,0,C&2097151|0,0)|0;Ae=M;P=Wr(Ee&2097151|0,0,_r&2097151|0,0)|0;Se=M;r=Wr(ge&2097151|0,0,d|0,ve|0)|0;r=In(P|0,Se|0,r|0,M|0)|0;m=In(r|0,M|0,te|0,m|0)|0;Ae=In(m|0,M|0,I|0,Ae|0)|0;T=In(Ae|0,M|0,ze|0,T|0)|0;Pe=In(T|0,M|0,ae|0,Pe|0)|0;mt=In(Pe|0,M|0,N|0,mt|0)|0;N=M;B=Wr(k|0,ye|0,B&2097151|0,0)|0;Pe=M;ae=Wr(Ne&2097151|0,0,ie&2097151|0,0)|0;T=M;ze=Wr(D&2097151|0,0,ct&2097151|0,0)|0;Ae=M;I=Wr(de&2097151|0,0,C&2097151|0,0)|0;m=M;te=Wr(_t&2097151|0,0,_r&2097151|0,0)|0;r=M;Ee=Wr(Ee&2097151|0,0,d|0,ve|0)|0;Se=M;ie=Wr(k|0,ye|0,ie&2097151|0,0)|0;P=M;ge=Wr(Ne&2097151|0,0,ct&2097151|0,0)|0;L=M;De=Wr(D&2097151|0,0,C&2097151|0,0)|0;O=M;E=Wr(de&2097151|0,0,_r&2097151|0,0)|0;oe=M;_t=Wr(_t&2097151|0,0,d|0,ve|0)|0;oe=In(_t|0,M|0,E|0,oe|0)|0;O=In(oe|0,M|0,De|0,O|0)|0;L=In(O|0,M|0,ge|0,L|0)|0;P=In(L|0,M|0,ie|0,P|0)|0;ie=M;ct=Wr(k|0,ye|0,ct&2097151|0,0)|0;L=M;ge=Wr(Ne&2097151|0,0,C&2097151|0,0)|0;O=M;De=Wr(D&2097151|0,0,_r&2097151|0,0)|0;oe=M;de=Wr(de&2097151|0,0,d|0,ve|0)|0;E=M;C=Wr(k|0,ye|0,C&2097151|0,0)|0;_t=M;gr=Wr(Ne&2097151|0,0,_r&2097151|0,0)|0;mr=M;D=Wr(D&2097151|0,0,d|0,ve|0)|0;D=In(gr|0,mr|0,D|0,M|0)|0;_t=In(D|0,M|0,C|0,_t|0)|0;C=M;_r=Wr(k|0,ye|0,_r&2097151|0,0)|0;D=M;Ne=Wr(Ne&2097151|0,0,d|0,ve|0)|0;Ne=In(_r|0,D|0,Ne|0,M|0)|0;D=M;ve=Wr(k|0,ye|0,d|0,ve|0)|0;d=M;ye=In(be|0,G|0,1048576,0)|0;ye=fn(ye|0,M|0,21)|0;k=M;g=In(yr|0,br|0,pr|0,g|0)|0;pe=In(g|0,M|0,pe&2097151|0,0)|0;pe=In(pe|0,M|0,ye|0,k|0)|0;g=M;k=cn(ye|0,k|0,21)|0;k=Mn(be|0,G|0,k|0,M|0)|0;G=M;be=In(me|0,_e|0,1048576,0)|0;be=fn(be|0,M|0,21)|0;ye=M;ur=In(dr|0,lr|0,fr|0,ur|0)|0;fe=In(ur|0,M|0,cr|0,fe|0)|0;Y=In(fe|0,M|0,ue|0,Y|0)|0;Le=In(Y|0,M|0,Le&2097151|0,0)|0;Le=In(Le|0,M|0,be|0,ye|0)|0;Y=M;ye=cn(be|0,ye|0,21)|0;be=M;ue=In(le|0,he|0,1048576,0)|0;ue=Hr(ue|0,M|0,21)|0;fe=M;ir=In(sr|0,or|0,ar|0,ir|0)|0;rr=In(ir|0,M|0,nr|0,rr|0)|0;er=In(rr|0,M|0,tr|0,er|0)|0;Me=In(er|0,M|0,Qt|0,Me|0)|0;$=In(Me|0,M|0,Te|0,$|0)|0;Ie=In($|0,M|0,Ie&2097151|0,0)|0;Ie=In(Ie|0,M|0,ue|0,fe|0)|0;$=M;fe=cn(ue|0,fe|0,21)|0;ue=M;Te=In(at|0,Qe|0,1048576,0)|0;Te=Hr(Te|0,M|0,21)|0;Me=M;Wt=In($t|0,Zt|0,Jt|0,Wt|0)|0;Gt=In(Wt|0,M|0,Xt|0,Gt|0)|0;Ht=In(Gt|0,M|0,Vt|0,Ht|0)|0;Ft=In(Ht|0,M|0,Yt|0,Ft|0)|0;Ut=In(Ft|0,M|0,Kt|0,Ut|0)|0;W=In(Ut|0,M|0,Dt|0,W|0)|0;A=In(W|0,M|0,J|0,A|0)|0;o=In(A|0,M|0,o&2097151|0,0)|0;o=In(o|0,M|0,Te|0,Me|0)|0;A=M;Me=cn(Te|0,Me|0,21)|0;Te=M;J=In(Fe|0,Ye|0,1048576,0)|0;J=Hr(J|0,M|0,21)|0;W=M;Pt=In(Lt|0,qt|0,jt|0,Pt|0)|0;Ct=In(Pt|0,M|0,Nt|0,Ct|0)|0;Rt=In(Ct|0,M|0,Ot|0,Rt|0)|0;zt=In(Rt|0,M|0,Bt|0,zt|0)|0;Tt=In(zt|0,M|0,It|0,Tt|0)|0;At=In(Tt|0,M|0,Mt|0,At|0)|0;St=In(At|0,M|0,xt|0,St|0)|0;we=In(St|0,M|0,Et|0,we|0)|0;i=In(we|0,M|0,c|0,i|0)|0;i=In(i|0,M|0,z&2097151|0,0)|0;i=In(i|0,M|0,J|0,W|0)|0;z=M;W=cn(J|0,W|0,21)|0;J=M;c=In(Ke|0,Ue|0,1048576,0)|0;c=Hr(c|0,M|0,21)|0;we=M;gt=In(kt|0,wt|0,vt|0,gt|0)|0;j=In(gt|0,M|0,K|0,j|0)|0;Ve=In(j|0,M|0,He|0,Ve|0)|0;Re=In(Ve|0,M|0,Be|0,Re|0)|0;it=In(Re|0,M|0,nt|0,it|0)|0;qe=In(it|0,M|0,je|0,qe|0)|0;Q=In(qe|0,M|0,ee|0,Q|0)|0;lt=In(Q|0,M|0,ht|0,lt|0)|0;V=In(lt|0,M|0,H|0,V|0)|0;$e=In(V|0,M|0,Ze|0,$e|0)|0;et=In($e|0,M|0,ot|0,et|0)|0;s=In(et|0,M|0,t|0,s|0)|0;s=In(s|0,M|0,c|0,we|0)|0;t=M;we=cn(c|0,we|0,21)|0;c=M;et=In(pt|0,dt|0,1048576,0)|0;et=Hr(et|0,M|0,21)|0;ot=M;Ge=In(Oe|0,Ce|0,Xe|0,Ge|0)|0;F=In(Ge|0,M|0,ne|0,F|0)|0;ce=In(F|0,M|0,se|0,ce|0)|0;S=In(ce|0,M|0,y|0,S|0)|0;v=In(S|0,M|0,b|0,v|0)|0;yt=In(v|0,M|0,bt|0,yt|0)|0;st=In(yt|0,M|0,q|0,st|0)|0;rt=In(st|0,M|0,tt|0,rt|0)|0;w=In(rt|0,M|0,x|0,w|0)|0;w=In(w|0,M|0,et|0,ot|0)|0;x=M;ot=cn(et|0,ot|0,21)|0;et=M;rt=In(ut|0,ft|0,1048576,0)|0;rt=Hr(rt|0,M|0,21)|0;tt=M;p=In(ke|0,re|0,U|0,p|0)|0;f=In(p|0,M|0,xe|0,f|0)|0;R=In(f|0,M|0,Z|0,R|0)|0;_=In(R|0,M|0,X|0,_|0)|0;a=In(_|0,M|0,l|0,a|0)|0;Je=In(a|0,M|0,We|0,Je|0)|0;u=In(Je|0,M|0,h|0,u|0)|0;u=In(u|0,M|0,rt|0,tt|0)|0;h=M;tt=cn(rt|0,tt|0,21)|0;rt=M;Je=In(mt|0,N|0,1048576,0)|0;Je=Hr(Je|0,M|0,21)|0;We=M;Se=In(I|0,m|0,Ee|0,Se|0)|0;r=In(Se|0,M|0,te|0,r|0)|0;Ae=In(r|0,M|0,ze|0,Ae|0)|0;T=In(Ae|0,M|0,ae|0,T|0)|0;Pe=In(T|0,M|0,B|0,Pe|0)|0;Pe=In(Pe|0,M|0,Je|0,We|0)|0;B=M;We=cn(Je|0,We|0,21)|0;Je=M;T=In(P|0,ie|0,1048576,0)|0;T=Hr(T|0,M|0,21)|0;ae=M;E=In(De|0,oe|0,de|0,E|0)|0;O=In(E|0,M|0,ge|0,O|0)|0;L=In(O|0,M|0,ct|0,L|0)|0;L=In(L|0,M|0,T|0,ae|0)|0;ct=M;ae=cn(T|0,ae|0,21)|0;ae=Mn(P|0,ie|0,ae|0,M|0)|0;ie=M;P=In(_t|0,C|0,1048576,0)|0;P=Hr(P|0,M|0,21)|0;T=M;D=In(Ne|0,D|0,P|0,T|0)|0;Ne=M;T=cn(P|0,T|0,21)|0;T=Mn(_t|0,C|0,T|0,M|0)|0;C=M;_t=In(ve|0,d|0,1048576,0)|0;_t=Hr(_t|0,M|0,21)|0;P=M;O=cn(_t|0,P|0,21)|0;O=Mn(ve|0,d|0,O|0,M|0)|0;d=M;ve=In(pe|0,g|0,1048576,0)|0;ve=fn(ve|0,M|0,21)|0;ge=M;E=cn(ve|0,ge|0,21)|0;E=Mn(pe|0,g|0,E|0,M|0)|0;g=M;pe=In(Le|0,Y|0,1048576,0)|0;pe=Hr(pe|0,M|0,21)|0;de=M;oe=cn(pe|0,de|0,21)|0;oe=Mn(Le|0,Y|0,oe|0,M|0)|0;Y=M;Le=In(Ie|0,$|0,1048576,0)|0;Le=Hr(Le|0,M|0,21)|0;De=M;Ae=cn(Le|0,De|0,21)|0;Ae=Mn(Ie|0,$|0,Ae|0,M|0)|0;$=M;Ie=In(o|0,A|0,1048576,0)|0;Ie=Hr(Ie|0,M|0,21)|0;ze=M;r=cn(Ie|0,ze|0,21)|0;te=M;Se=In(i|0,z|0,1048576,0)|0;Se=Hr(Se|0,M|0,21)|0;Ee=M;m=cn(Se|0,Ee|0,21)|0;I=M;a=In(s|0,t|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;l=M;_=cn(a|0,l|0,21)|0;X=M;R=In(w|0,x|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;Z=M;f=cn(R|0,Z|0,21)|0;xe=M;p=In(u|0,h|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;U=M;re=cn(p|0,U|0,21)|0;ke=M;st=In(Pe|0,B|0,1048576,0)|0;st=Hr(st|0,M|0,21)|0;q=M;ie=In(st|0,q|0,ae|0,ie|0)|0;ae=M;q=cn(st|0,q|0,21)|0;q=Mn(Pe|0,B|0,q|0,M|0)|0;B=M;Pe=In(L|0,ct|0,1048576,0)|0;Pe=Hr(Pe|0,M|0,21)|0;st=M;C=In(Pe|0,st|0,T|0,C|0)|0;T=M;st=cn(Pe|0,st|0,21)|0;st=Mn(L|0,ct|0,st|0,M|0)|0;ct=M;L=In(D|0,Ne|0,1048576,0)|0;L=Hr(L|0,M|0,21)|0;Pe=M;d=In(L|0,Pe|0,O|0,d|0)|0;O=M;Pe=cn(L|0,Pe|0,21)|0;Pe=Mn(D|0,Ne|0,Pe|0,M|0)|0;Ne=M;D=Wr(_t|0,P|0,666643,0)|0;L=M;yt=Wr(_t|0,P|0,470296,0)|0;bt=M;v=Wr(_t|0,P|0,654183,0)|0;b=M;S=Wr(_t|0,P|0,-997805,-1)|0;y=M;ce=Wr(_t|0,P|0,136657,0)|0;se=M;P=Wr(_t|0,P|0,-683901,-1)|0;P=In(mt|0,N|0,P|0,M|0)|0;Je=Mn(P|0,M|0,We|0,Je|0)|0;U=In(Je|0,M|0,p|0,U|0)|0;p=M;Je=Wr(d|0,O|0,666643,0)|0;We=M;P=Wr(d|0,O|0,470296,0)|0;N=M;mt=Wr(d|0,O|0,654183,0)|0;_t=M;F=Wr(d|0,O|0,-997805,-1)|0;ne=M;Ge=Wr(d|0,O|0,136657,0)|0;Xe=M;O=Wr(d|0,O|0,-683901,-1)|0;d=M;Ce=Wr(Pe|0,Ne|0,666643,0)|0;Oe=M;$e=Wr(Pe|0,Ne|0,470296,0)|0;Ze=M;V=Wr(Pe|0,Ne|0,654183,0)|0;H=M;lt=Wr(Pe|0,Ne|0,-997805,-1)|0;ht=M;Q=Wr(Pe|0,Ne|0,136657,0)|0;ee=M;Ne=Wr(Pe|0,Ne|0,-683901,-1)|0;Pe=M;y=In(ut|0,ft|0,S|0,y|0)|0;Xe=In(y|0,M|0,Ge|0,Xe|0)|0;Pe=In(Xe|0,M|0,Ne|0,Pe|0)|0;rt=Mn(Pe|0,M|0,tt|0,rt|0)|0;Z=In(rt|0,M|0,R|0,Z|0)|0;R=M;rt=Wr(C|0,T|0,666643,0)|0;tt=M;Pe=Wr(C|0,T|0,470296,0)|0;Ne=M;Xe=Wr(C|0,T|0,654183,0)|0;Ge=M;y=Wr(C|0,T|0,-997805,-1)|0;S=M;ft=Wr(C|0,T|0,136657,0)|0;ut=M;T=Wr(C|0,T|0,-683901,-1)|0;C=M;qe=Wr(st|0,ct|0,666643,0)|0;je=M;it=Wr(st|0,ct|0,470296,0)|0;nt=M;Re=Wr(st|0,ct|0,654183,0)|0;Be=M;Ve=Wr(st|0,ct|0,-997805,-1)|0;He=M;j=Wr(st|0,ct|0,136657,0)|0;K=M;ct=Wr(st|0,ct|0,-683901,-1)|0;st=M;bt=In(mt|0,_t|0,yt|0,bt|0)|0;dt=In(bt|0,M|0,pt|0,dt|0)|0;ht=In(dt|0,M|0,lt|0,ht|0)|0;ut=In(ht|0,M|0,ft|0,ut|0)|0;st=In(ut|0,M|0,ct|0,st|0)|0;et=Mn(st|0,M|0,ot|0,et|0)|0;l=In(et|0,M|0,a|0,l|0)|0;a=M;et=Wr(ie|0,ae|0,666643,0)|0;et=In(at|0,Qe|0,et|0,M|0)|0;De=In(et|0,M|0,Le|0,De|0)|0;Te=Mn(De|0,M|0,Me|0,Te|0)|0;Me=M;De=Wr(ie|0,ae|0,470296,0)|0;Le=M;et=Wr(ie|0,ae|0,654183,0)|0;Qe=M;tt=In(it|0,nt|0,rt|0,tt|0)|0;Qe=In(tt|0,M|0,et|0,Qe|0)|0;Ye=In(Qe|0,M|0,Fe|0,Ye|0)|0;ze=In(Ye|0,M|0,Ie|0,ze|0)|0;J=Mn(ze|0,M|0,W|0,J|0)|0;W=M;ze=Wr(ie|0,ae|0,-997805,-1)|0;Ie=M;Ye=Wr(ie|0,ae|0,136657,0)|0;Fe=M;We=In($e|0,Ze|0,Je|0,We|0)|0;Ge=In(We|0,M|0,Xe|0,Ge|0)|0;He=In(Ge|0,M|0,Ve|0,He|0)|0;Fe=In(He|0,M|0,Ye|0,Fe|0)|0;Ue=In(Fe|0,M|0,Ke|0,Ue|0)|0;Ee=In(Ue|0,M|0,Se|0,Ee|0)|0;c=Mn(Ee|0,M|0,we|0,c|0)|0;we=M;ae=Wr(ie|0,ae|0,-683901,-1)|0;ie=M;Ee=In(Te|0,Me|0,1048576,0)|0;Ee=Hr(Ee|0,M|0,21)|0;Se=M;je=In(De|0,Le|0,qe|0,je|0)|0;A=In(je|0,M|0,o|0,A|0)|0;te=Mn(A|0,M|0,r|0,te|0)|0;te=In(te|0,M|0,Ee|0,Se|0)|0;r=M;Se=cn(Ee|0,Se|0,21)|0;Ee=M;A=In(J|0,W|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;o=M;Oe=In(Pe|0,Ne|0,Ce|0,Oe|0)|0;Be=In(Oe|0,M|0,Re|0,Be|0)|0;Ie=In(Be|0,M|0,ze|0,Ie|0)|0;z=In(Ie|0,M|0,i|0,z|0)|0;I=Mn(z|0,M|0,m|0,I|0)|0;I=In(I|0,M|0,A|0,o|0)|0;m=M;o=cn(A|0,o|0,21)|0;A=M;z=In(c|0,we|0,1048576,0)|0;z=Hr(z|0,M|0,21)|0;i=M;L=In(P|0,N|0,D|0,L|0)|0;H=In(L|0,M|0,V|0,H|0)|0;S=In(H|0,M|0,y|0,S|0)|0;K=In(S|0,M|0,j|0,K|0)|0;ie=In(K|0,M|0,ae|0,ie|0)|0;t=In(ie|0,M|0,s|0,t|0)|0;X=Mn(t|0,M|0,_|0,X|0)|0;X=In(X|0,M|0,z|0,i|0)|0;_=M;i=cn(z|0,i|0,21)|0;z=M;t=In(l|0,a|0,1048576,0)|0;t=Hr(t|0,M|0,21)|0;s=M;b=In(F|0,ne|0,v|0,b|0)|0;ee=In(b|0,M|0,Q|0,ee|0)|0;C=In(ee|0,M|0,T|0,C|0)|0;x=In(C|0,M|0,w|0,x|0)|0;xe=Mn(x|0,M|0,f|0,xe|0)|0;xe=In(xe|0,M|0,t|0,s|0)|0;f=M;s=cn(t|0,s|0,21)|0;s=Mn(l|0,a|0,s|0,M|0)|0;a=M;l=In(Z|0,R|0,1048576,0)|0;l=Hr(l|0,M|0,21)|0;t=M;se=In(O|0,d|0,ce|0,se|0)|0;h=In(se|0,M|0,u|0,h|0)|0;ke=Mn(h|0,M|0,re|0,ke|0)|0;ke=In(ke|0,M|0,l|0,t|0)|0;re=M;t=cn(l|0,t|0,21)|0;t=Mn(Z|0,R|0,t|0,M|0)|0;R=M;Z=In(U|0,p|0,1048576,0)|0;Z=Hr(Z|0,M|0,21)|0;l=M;B=In(Z|0,l|0,q|0,B|0)|0;q=M;l=cn(Z|0,l|0,21)|0;l=Mn(U|0,p|0,l|0,M|0)|0;p=M;U=In(te|0,r|0,1048576,0)|0;U=Hr(U|0,M|0,21)|0;Z=M;h=cn(U|0,Z|0,21)|0;u=M;se=In(I|0,m|0,1048576,0)|0;se=Hr(se|0,M|0,21)|0;ce=M;d=cn(se|0,ce|0,21)|0;O=M;x=In(X|0,_|0,1048576,0)|0;x=Hr(x|0,M|0,21)|0;w=M;a=In(x|0,w|0,s|0,a|0)|0;s=M;w=cn(x|0,w|0,21)|0;w=Mn(X|0,_|0,w|0,M|0)|0;_=M;X=In(xe|0,f|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;x=M;R=In(X|0,x|0,t|0,R|0)|0;t=M;x=cn(X|0,x|0,21)|0;x=Mn(xe|0,f|0,x|0,M|0)|0;f=M;xe=In(ke|0,re|0,1048576,0)|0;xe=Hr(xe|0,M|0,21)|0;X=M;p=In(xe|0,X|0,l|0,p|0)|0;l=M;X=cn(xe|0,X|0,21)|0;X=Mn(ke|0,re|0,X|0,M|0)|0;re=M;ke=Wr(B|0,q|0,666643,0)|0;ke=In(Ae|0,$|0,ke|0,M|0)|0;$=M;Ae=Wr(B|0,q|0,470296,0)|0;xe=M;C=Wr(B|0,q|0,654183,0)|0;T=M;ee=Wr(B|0,q|0,-997805,-1)|0;Q=M;b=Wr(B|0,q|0,136657,0)|0;v=M;q=Wr(B|0,q|0,-683901,-1)|0;q=In(c|0,we|0,q|0,M|0)|0;ce=In(q|0,M|0,se|0,ce|0)|0;z=Mn(ce|0,M|0,i|0,z|0)|0;i=M;ce=Wr(p|0,l|0,666643,0)|0;se=M;q=Wr(p|0,l|0,470296,0)|0;q=In(ke|0,$|0,q|0,M|0)|0;$=M;ke=Wr(p|0,l|0,654183,0)|0;we=M;c=Wr(p|0,l|0,-997805,-1)|0;B=M;ne=Wr(p|0,l|0,136657,0)|0;F=M;l=Wr(p|0,l|0,-683901,-1)|0;p=M;ie=Wr(X|0,re|0,666643,0)|0;ie=In(oe|0,Y|0,ie|0,M|0)|0;Y=M;oe=Wr(X|0,re|0,470296,0)|0;ae=M;K=Wr(X|0,re|0,654183,0)|0;K=In(q|0,$|0,K|0,M|0)|0;$=M;q=Wr(X|0,re|0,-997805,-1)|0;j=M;S=Wr(X|0,re|0,136657,0)|0;y=M;re=Wr(X|0,re|0,-683901,-1)|0;X=M;Q=In(J|0,W|0,ee|0,Q|0)|0;Z=In(Q|0,M|0,U|0,Z|0)|0;F=In(Z|0,M|0,ne|0,F|0)|0;X=In(F|0,M|0,re|0,X|0)|0;A=Mn(X|0,M|0,o|0,A|0)|0;o=M;X=Wr(R|0,t|0,666643,0)|0;re=M;F=Wr(R|0,t|0,470296,0)|0;F=In(ie|0,Y|0,F|0,M|0)|0;Y=M;ie=Wr(R|0,t|0,654183,0)|0;ne=M;Z=Wr(R|0,t|0,-997805,-1)|0;Z=In(K|0,$|0,Z|0,M|0)|0;$=M;K=Wr(R|0,t|0,136657,0)|0;U=M;t=Wr(R|0,t|0,-683901,-1)|0;R=M;Q=Wr(x|0,f|0,666643,0)|0;ee=M;W=Wr(x|0,f|0,470296,0)|0;J=M;H=Wr(x|0,f|0,654183,0)|0;V=M;L=Wr(x|0,f|0,-997805,-1)|0;D=M;N=Wr(x|0,f|0,136657,0)|0;P=M;f=Wr(x|0,f|0,-683901,-1)|0;x=M;xe=In(Te|0,Me|0,Ae|0,xe|0)|0;Ee=Mn(xe|0,M|0,Se|0,Ee|0)|0;we=In(Ee|0,M|0,ke|0,we|0)|0;j=In(we|0,M|0,q|0,j|0)|0;U=In(j|0,M|0,K|0,U|0)|0;x=In(U|0,M|0,f|0,x|0)|0;f=M;U=Wr(a|0,s|0,666643,0)|0;G=In(U|0,M|0,k|0,G|0)|0;k=M;U=Wr(a|0,s|0,470296,0)|0;K=M;j=Wr(a|0,s|0,654183,0)|0;q=M;_e=In(ve|0,ge|0,me|0,_e|0)|0;be=Mn(_e|0,M|0,ye|0,be|0)|0;re=In(be|0,M|0,X|0,re|0)|0;q=In(re|0,M|0,j|0,q|0)|0;J=In(q|0,M|0,W|0,J|0)|0;W=M;q=Wr(a|0,s|0,-997805,-1)|0;j=M;re=Wr(a|0,s|0,136657,0)|0;X=M;he=In(pe|0,de|0,le|0,he|0)|0;ue=Mn(he|0,M|0,fe|0,ue|0)|0;se=In(ue|0,M|0,ce|0,se|0)|0;ae=In(se|0,M|0,oe|0,ae|0)|0;ne=In(ae|0,M|0,ie|0,ne|0)|0;X=In(ne|0,M|0,re|0,X|0)|0;D=In(X|0,M|0,L|0,D|0)|0;L=M;s=Wr(a|0,s|0,-683901,-1)|0;a=M;X=In(G|0,k|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;re=M;K=In(E|0,g|0,U|0,K|0)|0;ee=In(K|0,M|0,Q|0,ee|0)|0;ee=In(ee|0,M|0,X|0,re|0)|0;Q=M;re=cn(X|0,re|0,21)|0;re=Mn(G|0,k|0,re|0,M|0)|0;k=M;G=In(J|0,W|0,1048576,0)|0;G=Hr(G|0,M|0,21)|0;X=M;j=In(F|0,Y|0,q|0,j|0)|0;V=In(j|0,M|0,H|0,V|0)|0;V=In(V|0,M|0,G|0,X|0)|0;H=M;X=cn(G|0,X|0,21)|0;G=M;j=In(D|0,L|0,1048576,0)|0;j=Hr(j|0,M|0,21)|0;q=M;a=In(Z|0,$|0,s|0,a|0)|0;P=In(a|0,M|0,N|0,P|0)|0;P=In(P|0,M|0,j|0,q|0)|0;N=M;q=cn(j|0,q|0,21)|0;j=M;a=In(x|0,f|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;s=M;T=In(te|0,r|0,C|0,T|0)|0;B=In(T|0,M|0,c|0,B|0)|0;u=Mn(B|0,M|0,h|0,u|0)|0;y=In(u|0,M|0,S|0,y|0)|0;R=In(y|0,M|0,t|0,R|0)|0;R=In(R|0,M|0,a|0,s|0)|0;t=M;s=cn(a|0,s|0,21)|0;s=Mn(x|0,f|0,s|0,M|0)|0;f=M;x=In(A|0,o|0,1048576,0)|0;x=Hr(x|0,M|0,21)|0;a=M;v=In(l|0,p|0,b|0,v|0)|0;m=In(v|0,M|0,I|0,m|0)|0;O=Mn(m|0,M|0,d|0,O|0)|0;O=In(O|0,M|0,x|0,a|0)|0;d=M;a=cn(x|0,a|0,21)|0;a=Mn(A|0,o|0,a|0,M|0)|0;o=M;A=In(z|0,i|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;x=M;_=In(w|0,_|0,A|0,x|0)|0;w=M;x=cn(A|0,x|0,21)|0;A=M;m=In(ee|0,Q|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;I=M;v=cn(m|0,I|0,21)|0;b=M;p=In(V|0,H|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;l=M;y=cn(p|0,l|0,21)|0;S=M;u=In(P|0,N|0,1048576,0)|0;u=Hr(u|0,M|0,21)|0;h=M;f=In(s|0,f|0,u|0,h|0)|0;s=M;h=cn(u|0,h|0,21)|0;u=M;B=In(R|0,t|0,1048576,0)|0;B=Hr(B|0,M|0,21)|0;c=M;o=In(a|0,o|0,B|0,c|0)|0;a=M;c=cn(B|0,c|0,21)|0;c=Mn(R|0,t|0,c|0,M|0)|0;t=M;R=In(O|0,d|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;B=M;T=cn(R|0,B|0,21)|0;T=Mn(O|0,d|0,T|0,M|0)|0;d=M;O=In(_|0,w|0,1048576,0)|0;O=Hr(O|0,M|0,21)|0;C=M;r=cn(O|0,C|0,21)|0;r=Mn(_|0,w|0,r|0,M|0)|0;w=M;_=Wr(O|0,C|0,666643,0)|0;_=In(re|0,k|0,_|0,M|0)|0;k=M;re=Wr(O|0,C|0,470296,0)|0;te=M;$=Wr(O|0,C|0,654183,0)|0;Z=M;Y=Wr(O|0,C|0,-997805,-1)|0;F=M;K=Wr(O|0,C|0,136657,0)|0;U=M;C=Wr(O|0,C|0,-683901,-1)|0;O=M;g=Hr(_|0,k|0,21)|0;E=M;Q=In(re|0,te|0,ee|0,Q|0)|0;b=Mn(Q|0,M|0,v|0,b|0)|0;b=In(b|0,M|0,g|0,E|0)|0;v=M;E=cn(g|0,E|0,21)|0;E=Mn(_|0,k|0,E|0,M|0)|0;k=M;_=Hr(b|0,v|0,21)|0;g=M;W=In($|0,Z|0,J|0,W|0)|0;G=Mn(W|0,M|0,X|0,G|0)|0;I=In(G|0,M|0,m|0,I|0)|0;I=In(I|0,M|0,_|0,g|0)|0;m=M;g=cn(_|0,g|0,21)|0;g=Mn(b|0,v|0,g|0,M|0)|0;v=M;b=Hr(I|0,m|0,21)|0;_=M;F=In(V|0,H|0,Y|0,F|0)|0;S=Mn(F|0,M|0,y|0,S|0)|0;S=In(S|0,M|0,b|0,_|0)|0;y=M;_=cn(b|0,_|0,21)|0;_=Mn(I|0,m|0,_|0,M|0)|0;m=M;I=Hr(S|0,y|0,21)|0;b=M;L=In(K|0,U|0,D|0,L|0)|0;j=Mn(L|0,M|0,q|0,j|0)|0;l=In(j|0,M|0,p|0,l|0)|0;l=In(l|0,M|0,I|0,b|0)|0;p=M;b=cn(I|0,b|0,21)|0;b=Mn(S|0,y|0,b|0,M|0)|0;y=M;S=Hr(l|0,p|0,21)|0;I=M;O=In(P|0,N|0,C|0,O|0)|0;u=Mn(O|0,M|0,h|0,u|0)|0;u=In(u|0,M|0,S|0,I|0)|0;h=M;I=cn(S|0,I|0,21)|0;I=Mn(l|0,p|0,I|0,M|0)|0;p=M;l=Hr(u|0,h|0,21)|0;S=M;s=In(f|0,s|0,l|0,S|0)|0;f=M;S=cn(l|0,S|0,21)|0;S=Mn(u|0,h|0,S|0,M|0)|0;h=M;u=Hr(s|0,f|0,21)|0;l=M;t=In(u|0,l|0,c|0,t|0)|0;c=M;l=cn(u|0,l|0,21)|0;l=Mn(s|0,f|0,l|0,M|0)|0;f=M;s=Hr(t|0,c|0,21)|0;u=M;a=In(o|0,a|0,s|0,u|0)|0;o=M;u=cn(s|0,u|0,21)|0;u=Mn(t|0,c|0,u|0,M|0)|0;c=M;t=Hr(a|0,o|0,21)|0;s=M;d=In(t|0,s|0,T|0,d|0)|0;T=M;s=cn(t|0,s|0,21)|0;s=Mn(a|0,o|0,s|0,M|0)|0;o=M;a=Hr(d|0,T|0,21)|0;t=M;i=In(R|0,B|0,z|0,i|0)|0;A=Mn(i|0,M|0,x|0,A|0)|0;A=In(A|0,M|0,a|0,t|0)|0;x=M;t=cn(a|0,t|0,21)|0;t=Mn(d|0,T|0,t|0,M|0)|0;T=M;d=Hr(A|0,x|0,21)|0;a=M;w=In(d|0,a|0,r|0,w|0)|0;r=M;a=cn(d|0,a|0,21)|0;a=Mn(A|0,x|0,a|0,M|0)|0;x=M;A=Hr(w|0,r|0,21)|0;d=M;i=cn(A|0,d|0,21)|0;i=Mn(w|0,r|0,i|0,M|0)|0;r=M;w=Wr(A|0,d|0,666643,0)|0;k=In(w|0,M|0,E|0,k|0)|0;E=M;w=Wr(A|0,d|0,470296,0)|0;w=In(g|0,v|0,w|0,M|0)|0;v=M;g=Wr(A|0,d|0,654183,0)|0;g=In(_|0,m|0,g|0,M|0)|0;m=M;_=Wr(A|0,d|0,-997805,-1)|0;_=In(b|0,y|0,_|0,M|0)|0;y=M;b=Wr(A|0,d|0,136657,0)|0;b=In(I|0,p|0,b|0,M|0)|0;p=M;d=Wr(A|0,d|0,-683901,-1)|0;d=In(S|0,h|0,d|0,M|0)|0;h=M;S=Hr(k|0,E|0,21)|0;A=M;v=In(w|0,v|0,S|0,A|0)|0;w=M;A=cn(S|0,A|0,21)|0;A=Mn(k|0,E|0,A|0,M|0)|0;E=M;k=Hr(v|0,w|0,21)|0;S=M;m=In(g|0,m|0,k|0,S|0)|0;g=M;S=cn(k|0,S|0,21)|0;S=Mn(v|0,w|0,S|0,M|0)|0;w=M;v=Hr(m|0,g|0,21)|0;k=M;y=In(_|0,y|0,v|0,k|0)|0;_=M;k=cn(v|0,k|0,21)|0;k=Mn(m|0,g|0,k|0,M|0)|0;g=M;m=Hr(y|0,_|0,21)|0;v=M;p=In(b|0,p|0,m|0,v|0)|0;b=M;v=cn(m|0,v|0,21)|0;v=Mn(y|0,_|0,v|0,M|0)|0;_=M;y=Hr(p|0,b|0,21)|0;m=M;h=In(d|0,h|0,y|0,m|0)|0;d=M;m=cn(y|0,m|0,21)|0;m=Mn(p|0,b|0,m|0,M|0)|0;b=M;p=Hr(h|0,d|0,21)|0;y=M;f=In(p|0,y|0,l|0,f|0)|0;l=M;y=cn(p|0,y|0,21)|0;y=Mn(h|0,d|0,y|0,M|0)|0;d=M;h=Hr(f|0,l|0,21)|0;p=M;c=In(h|0,p|0,u|0,c|0)|0;u=M;p=cn(h|0,p|0,21)|0;p=Mn(f|0,l|0,p|0,M|0)|0;l=M;f=Hr(c|0,u|0,21)|0;h=M;o=In(f|0,h|0,s|0,o|0)|0;s=M;h=cn(f|0,h|0,21)|0;h=Mn(c|0,u|0,h|0,M|0)|0;u=M;c=Hr(o|0,s|0,21)|0;f=M;T=In(c|0,f|0,t|0,T|0)|0;t=M;f=cn(c|0,f|0,21)|0;f=Mn(o|0,s|0,f|0,M|0)|0;s=M;o=Hr(T|0,t|0,21)|0;c=M;x=In(o|0,c|0,a|0,x|0)|0;a=M;c=cn(o|0,c|0,21)|0;c=Mn(T|0,t|0,c|0,M|0)|0;t=M;T=Hr(x|0,a|0,21)|0;o=M;r=In(T|0,o|0,i|0,r|0)|0;i=M;o=cn(T|0,o|0,21)|0;o=Mn(x|0,a|0,o|0,M|0)|0;a=M;n[e>>0]=A;x=fn(A|0,E|0,8)|0;n[e+1>>0]=x;E=fn(A|0,E|0,16)|0;A=M;x=cn(S|0,w|0,5)|0;n[e+2>>0]=x|E;E=fn(S|0,w|0,3)|0;n[e+3>>0]=E;E=fn(S|0,w|0,11)|0;n[e+4>>0]=E;w=fn(S|0,w|0,19)|0;S=M;E=cn(k|0,g|0,2)|0;n[e+5>>0]=E|w;w=fn(k|0,g|0,6)|0;n[e+6>>0]=w;g=fn(k|0,g|0,14)|0;k=M;w=cn(v|0,_|0,7)|0;n[e+7>>0]=w|g;g=fn(v|0,_|0,1)|0;n[e+8>>0]=g;g=fn(v|0,_|0,9)|0;n[e+9>>0]=g;_=fn(v|0,_|0,17)|0;v=M;g=cn(m|0,b|0,4)|0;n[e+10>>0]=g|_;_=fn(m|0,b|0,4)|0;n[e+11>>0]=_;_=fn(m|0,b|0,12)|0;n[e+12>>0]=_;b=fn(m|0,b|0,20)|0;m=M;_=cn(y|0,d|0,1)|0;n[e+13>>0]=_|b;b=fn(y|0,d|0,7)|0;n[e+14>>0]=b;d=fn(y|0,d|0,15)|0;y=M;b=cn(p|0,l|0,6)|0;n[e+15>>0]=b|d;d=fn(p|0,l|0,2)|0;n[e+16>>0]=d;d=fn(p|0,l|0,10)|0;n[e+17>>0]=d;l=fn(p|0,l|0,18)|0;p=M;d=cn(h|0,u|0,3)|0;n[e+18>>0]=d|l;l=fn(h|0,u|0,5)|0;n[e+19>>0]=l;u=fn(h|0,u|0,13)|0;n[e+20>>0]=u;n[e+21>>0]=f;u=fn(f|0,s|0,8)|0;n[e+22>>0]=u;s=fn(f|0,s|0,16)|0;f=M;u=cn(c|0,t|0,5)|0;n[e+23>>0]=u|s;s=fn(c|0,t|0,3)|0;n[e+24>>0]=s;s=fn(c|0,t|0,11)|0;n[e+25>>0]=s;t=fn(c|0,t|0,19)|0;c=M;s=cn(o|0,a|0,2)|0;n[e+26>>0]=s|t;t=fn(o|0,a|0,6)|0;n[e+27>>0]=t;a=fn(o|0,a|0,14)|0;o=M;t=cn(r|0,i|0,7)|0;n[e+28>>0]=a|t;t=fn(r|0,i|0,1)|0;n[e+29>>0]=t;t=fn(r|0,i|0,9)|0;n[e+30>>0]=t;i=fn(r|0,i|0,17)|0;n[e+31>>0]=i;return}function se(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0;Nr(r,t);t=n;i=e;o=t+64|0;do{a[t>>2]=a[i>>2];t=t+4|0;i=i+4|0}while((t|0)<(o|0));m=0;t=a[r>>2]|0;i=a[r+4>>2]|0;while(1){x=a[n+32>>2]|0;y=a[n+32+4>>2]|0;c=Gr(x,y,14)|0;T=M;S=Gr(x,y,18)|0;T=M^T;I=Gr(x,y,41)|0;_=a[n+40>>2]|0;h=a[n+40+4>>2]|0;f=a[n+48>>2]|0;q=a[n+48+4>>2]|0;p=464+(m<<3)|0;l=a[p>>2]|0;p=a[p+4>>2]|0;k=a[n+56>>2]|0;v=a[n+56+4>>2]|0;T=In(t|0,i|0,S^c^I|0,T^M|0)|0;p=In(T|0,M|0,l|0,p|0)|0;p=In(p|0,M|0,(f^_)&x^f|0,(q^h)&y^q|0)|0;v=In(p|0,M|0,k|0,v|0)|0;k=M;p=In(v|0,k|0,a[n+24>>2]|0,a[n+24+4>>2]|0)|0;l=M;a[n+24>>2]=p;a[n+24+4>>2]=l;T=a[n>>2]|0;I=a[n+4>>2]|0;c=Gr(T,I,28)|0;S=M;u=Gr(T,I,34)|0;S=M^S;w=Gr(T,I,39)|0;A=a[n+8>>2]|0;O=a[n+8+4>>2]|0;z=a[n+16>>2]|0;C=a[n+16+4>>2]|0;S=In(v|0,k|0,u^c^w|0,S^M|0)|0;S=In(S|0,M|0,(z|A)&T|z&A|0,(C|O)&I|C&O|0)|0;w=M;a[n+56>>2]=S;a[n+56+4>>2]=w;c=Gr(p,l,14)|0;u=M;k=Gr(p,l,18)|0;u=M^u;v=Gr(p,l,41)|0;s=m|1;E=a[464+(s<<3)>>2]|0;j=a[464+(s<<3)+4>>2]|0;u=In(a[r+(s<<3)>>2]|0,a[r+(s<<3)+4>>2]|0,k^c^v|0,u^M|0)|0;j=In(u|0,M|0,E|0,j|0)|0;j=In(j|0,M|0,(_^x)&p^_|0,(h^y)&l^h|0)|0;q=In(j|0,M|0,f|0,q|0)|0;f=M;C=In(q|0,f|0,z|0,C|0)|0;z=M;a[n+16>>2]=C;a[n+16+4>>2]=z;j=Gr(S,w,28)|0;E=M;u=Gr(S,w,34)|0;E=M^E;v=Gr(S,w,39)|0;E=In(q|0,f|0,u^j^v|0,E^M|0)|0;E=In(E|0,M|0,(A|T)&S|A&T|0,(O|I)&w|O&I|0)|0;v=M;a[n+48>>2]=E;a[n+48+4>>2]=v;j=Gr(C,z,14)|0;u=M;f=Gr(C,z,18)|0;u=M^u;q=Gr(C,z,41)|0;c=m|2;k=a[464+(c<<3)>>2]|0;d=a[464+(c<<3)+4>>2]|0;u=In(a[r+(c<<3)>>2]|0,a[r+(c<<3)+4>>2]|0,f^j^q|0,u^M|0)|0;d=In(u|0,M|0,k|0,d|0)|0;y=In(d|0,M|0,(x^p)&C^x|0,(y^l)&z^y|0)|0;h=In(y|0,M|0,_|0,h|0)|0;_=M;O=In(h|0,_|0,A|0,O|0)|0;A=M;a[n+8>>2]=O;a[n+8+4>>2]=A;y=Gr(E,v,28)|0;x=M;d=Gr(E,v,34)|0;x=M^x;k=Gr(E,v,39)|0;x=In(h|0,_|0,d^y^k|0,x^M|0)|0;x=In(x|0,M|0,(T|S)&E|T&S|0,(I|w)&v|I&w|0)|0;k=M;a[n+40>>2]=x;a[n+40+4>>2]=k;y=Gr(O,A,14)|0;d=M;_=Gr(O,A,18)|0;d=M^d;h=Gr(O,A,41)|0;u=m|3;q=a[464+(u<<3)>>2]|0;j=a[464+(u<<3)+4>>2]|0;f=a[n+32>>2]|0;b=a[n+32+4>>2]|0;d=In(a[r+(u<<3)>>2]|0,a[r+(u<<3)+4>>2]|0,_^y^h|0,d^M|0)|0;j=In(d|0,M|0,q|0,j|0)|0;l=In(j|0,M|0,(p^C)&O^p|0,(l^z)&A^l|0)|0;b=In(l|0,M|0,f|0,b|0)|0;f=M;I=In(b|0,f|0,T|0,I|0)|0;T=M;a[n>>2]=I;a[n+4>>2]=T;l=Gr(x,k,28)|0;p=M;j=Gr(x,k,34)|0;p=M^p;q=Gr(x,k,39)|0;p=In(b|0,f|0,j^l^q|0,p^M|0)|0;w=In(p|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;S=M;a[n+32>>2]=w;a[n+32+4>>2]=S;p=Gr(I,T,14)|0;q=M;l=Gr(I,T,18)|0;q=M^q;j=Gr(I,T,41)|0;f=m|4;b=a[464+(f<<3)>>2]|0;d=a[464+(f<<3)+4>>2]|0;h=a[n+24>>2]|0;y=a[n+24+4>>2]|0;q=In(a[r+(f<<3)>>2]|0,a[r+(f<<3)+4>>2]|0,l^p^j|0,q^M|0)|0;d=In(q|0,M|0,b|0,d|0)|0;z=In(d|0,M|0,(C^O)&I^C|0,(z^A)&T^z|0)|0;y=In(z|0,M|0,h|0,y|0)|0;h=M;z=In(y|0,h|0,a[n+56>>2]|0,a[n+56+4>>2]|0)|0;C=M;a[n+56>>2]=z;a[n+56+4>>2]=C;d=Gr(w,S,28)|0;b=M;q=Gr(w,S,34)|0;b=M^b;j=Gr(w,S,39)|0;b=In(y|0,h|0,q^d^j|0,b^M|0)|0;v=In(b|0,M|0,(E|x)&w|E&x|0,(v|k)&S|v&k|0)|0;E=M;a[n+24>>2]=v;a[n+24+4>>2]=E;b=Gr(z,C,14)|0;j=M;d=Gr(z,C,18)|0;j=M^j;q=Gr(z,C,41)|0;h=m|5;y=a[464+(h<<3)>>2]|0;p=a[464+(h<<3)+4>>2]|0;l=a[n+16>>2]|0;_=a[n+16+4>>2]|0;j=In(a[r+(h<<3)>>2]|0,a[r+(h<<3)+4>>2]|0,d^b^q|0,j^M|0)|0;p=In(j|0,M|0,y|0,p|0)|0;A=In(p|0,M|0,(O^I)&z^O|0,(A^T)&C^A|0)|0;_=In(A|0,M|0,l|0,_|0)|0;l=M;A=In(_|0,l|0,a[n+48>>2]|0,a[n+48+4>>2]|0)|0;O=M;a[n+48>>2]=A;a[n+48+4>>2]=O;p=Gr(v,E,28)|0;y=M;j=Gr(v,E,34)|0;y=M^y;q=Gr(v,E,39)|0;y=In(_|0,l|0,j^p^q|0,y^M|0)|0;k=In(y|0,M|0,(x|w)&v|x&w|0,(k|S)&E|k&S|0)|0;x=M;a[n+16>>2]=k;a[n+16+4>>2]=x;y=Gr(A,O,14)|0;q=M;p=Gr(A,O,18)|0;q=M^q;j=Gr(A,O,41)|0;l=m|6;_=a[464+(l<<3)>>2]|0;b=a[464+(l<<3)+4>>2]|0;d=a[n+8>>2]|0;t=a[n+8+4>>2]|0;q=In(a[r+(l<<3)>>2]|0,a[r+(l<<3)+4>>2]|0,p^y^j|0,q^M|0)|0;b=In(q|0,M|0,_|0,b|0)|0;T=In(b|0,M|0,(I^z)&A^I|0,(T^C)&O^T|0)|0;t=In(T|0,M|0,d|0,t|0)|0;d=M;T=In(t|0,d|0,a[n+40>>2]|0,a[n+40+4>>2]|0)|0;I=M;a[n+40>>2]=T;a[n+40+4>>2]=I;b=Gr(k,x,28)|0;_=M;q=Gr(k,x,34)|0;_=M^_;j=Gr(k,x,39)|0;_=In(t|0,d|0,q^b^j|0,_^M|0)|0;S=In(_|0,M|0,(w|v)&k|w&v|0,(S|E)&x|S&E|0)|0;w=M;a[n+8>>2]=S;a[n+8+4>>2]=w;_=Gr(T,I,14)|0;j=M;b=Gr(T,I,18)|0;j=M^j;q=Gr(T,I,41)|0;d=m|7;t=a[464+(d<<3)>>2]|0;y=a[464+(d<<3)+4>>2]|0;p=a[n>>2]|0;i=a[n+4>>2]|0;j=In(a[r+(d<<3)>>2]|0,a[r+(d<<3)+4>>2]|0,b^_^q|0,j^M|0)|0;y=In(j|0,M|0,t|0,y|0)|0;C=In(y|0,M|0,(z^A)&T^z|0,(C^O)&I^C|0)|0;i=In(C|0,M|0,p|0,i|0)|0;p=M;C=In(i|0,p|0,a[n+32>>2]|0,a[n+32+4>>2]|0)|0;z=M;a[n+32>>2]=C;a[n+32+4>>2]=z;y=Gr(S,w,28)|0;t=M;j=Gr(S,w,34)|0;t=M^t;q=Gr(S,w,39)|0;t=In(i|0,p|0,j^y^q|0,t^M|0)|0;E=In(t|0,M|0,(v|k)&S|v&k|0,(E|x)&w|E&x|0)|0;v=M;a[n>>2]=E;a[n+4>>2]=v;t=Gr(C,z,14)|0;q=M;y=Gr(C,z,18)|0;q=M^q;j=Gr(C,z,41)|0;p=m|8;i=a[464+(p<<3)>>2]|0;_=a[464+(p<<3)+4>>2]|0;b=a[n+56>>2]|0;o=a[n+56+4>>2]|0;q=In(a[r+(p<<3)>>2]|0,a[r+(p<<3)+4>>2]|0,y^t^j|0,q^M|0)|0;_=In(q|0,M|0,i|0,_|0)|0;O=In(_|0,M|0,(A^T)&C^A|0,(O^I)&z^O|0)|0;o=In(O|0,M|0,b|0,o|0)|0;b=M;O=In(o|0,b|0,a[n+24>>2]|0,a[n+24+4>>2]|0)|0;A=M;a[n+24>>2]=O;a[n+24+4>>2]=A;_=Gr(E,v,28)|0;i=M;q=Gr(E,v,34)|0;i=M^i;j=Gr(E,v,39)|0;i=In(o|0,b|0,q^_^j|0,i^M|0)|0;x=In(i|0,M|0,(k|S)&E|k&S|0,(x|w)&v|x&w|0)|0;k=M;a[n+56>>2]=x;a[n+56+4>>2]=k;i=Gr(O,A,14)|0;j=M;_=Gr(O,A,18)|0;j=M^j;q=Gr(O,A,41)|0;b=m|9;o=a[464+(b<<3)>>2]|0;t=a[464+(b<<3)+4>>2]|0;y=a[n+48>>2]|0;g=a[n+48+4>>2]|0;j=In(a[r+(b<<3)>>2]|0,a[r+(b<<3)+4>>2]|0,_^i^q|0,j^M|0)|0;t=In(j|0,M|0,o|0,t|0)|0;I=In(t|0,M|0,(T^C)&O^T|0,(I^z)&A^I|0)|0;g=In(I|0,M|0,y|0,g|0)|0;y=M;I=In(g|0,y|0,a[n+16>>2]|0,a[n+16+4>>2]|0)|0;T=M;a[n+16>>2]=I;a[n+16+4>>2]=T;t=Gr(x,k,28)|0;o=M;j=Gr(x,k,34)|0;o=M^o;q=Gr(x,k,39)|0;o=In(g|0,y|0,j^t^q|0,o^M|0)|0;w=In(o|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;S=M;a[n+48>>2]=w;a[n+48+4>>2]=S;o=Gr(I,T,14)|0;q=M;t=Gr(I,T,18)|0;q=M^q;j=Gr(I,T,41)|0;y=m|10;g=a[464+(y<<3)>>2]|0;i=a[464+(y<<3)+4>>2]|0;_=a[n+40>>2]|0;B=a[n+40+4>>2]|0;q=In(a[r+(y<<3)>>2]|0,a[r+(y<<3)+4>>2]|0,t^o^j|0,q^M|0)|0;i=In(q|0,M|0,g|0,i|0)|0;z=In(i|0,M|0,(C^O)&I^C|0,(z^A)&T^z|0)|0;B=In(z|0,M|0,_|0,B|0)|0;_=M;z=In(B|0,_|0,a[n+8>>2]|0,a[n+8+4>>2]|0)|0;C=M;a[n+8>>2]=z;a[n+8+4>>2]=C;i=Gr(w,S,28)|0;g=M;q=Gr(w,S,34)|0;g=M^g;j=Gr(w,S,39)|0;g=In(B|0,_|0,q^i^j|0,g^M|0)|0;v=In(g|0,M|0,(E|x)&w|E&x|0,(v|k)&S|v&k|0)|0;E=M;a[n+40>>2]=v;a[n+40+4>>2]=E;g=Gr(z,C,14)|0;j=M;i=Gr(z,C,18)|0;j=M^j;q=Gr(z,C,41)|0;_=m|11;B=a[464+(_<<3)>>2]|0;o=a[464+(_<<3)+4>>2]|0;t=a[n+32>>2]|0;D=a[n+32+4>>2]|0;j=In(a[r+(_<<3)>>2]|0,a[r+(_<<3)+4>>2]|0,i^g^q|0,j^M|0)|0;o=In(j|0,M|0,B|0,o|0)|0;A=In(o|0,M|0,(O^I)&z^O|0,(A^T)&C^A|0)|0;D=In(A|0,M|0,t|0,D|0)|0;t=M;A=In(D|0,t|0,a[n>>2]|0,a[n+4>>2]|0)|0;O=M;a[n>>2]=A;a[n+4>>2]=O;o=Gr(v,E,28)|0;B=M;j=Gr(v,E,34)|0;B=M^B;q=Gr(v,E,39)|0;B=In(D|0,t|0,j^o^q|0,B^M|0)|0;k=In(B|0,M|0,(x|w)&v|x&w|0,(k|S)&E|k&S|0)|0;x=M;a[n+32>>2]=k;a[n+32+4>>2]=x;B=Gr(A,O,14)|0;q=M;o=Gr(A,O,18)|0;q=M^q;j=Gr(A,O,41)|0;t=m|12;D=a[464+(t<<3)>>2]|0;g=a[464+(t<<3)+4>>2]|0;i=a[n+24>>2]|0;N=a[n+24+4>>2]|0;q=In(a[r+(t<<3)>>2]|0,a[r+(t<<3)+4>>2]|0,o^B^j|0,q^M|0)|0;g=In(q|0,M|0,D|0,g|0)|0;T=In(g|0,M|0,(I^z)&A^I|0,(T^C)&O^T|0)|0;N=In(T|0,M|0,i|0,N|0)|0;i=M;T=In(N|0,i|0,a[n+56>>2]|0,a[n+56+4>>2]|0)|0;I=M;a[n+56>>2]=T;a[n+56+4>>2]=I;g=Gr(k,x,28)|0;D=M;q=Gr(k,x,34)|0;D=M^D;j=Gr(k,x,39)|0;D=In(N|0,i|0,q^g^j|0,D^M|0)|0;S=In(D|0,M|0,(w|v)&k|w&v|0,(S|E)&x|S&E|0)|0;w=M;a[n+24>>2]=S;a[n+24+4>>2]=w;D=Gr(T,I,14)|0;j=M;g=Gr(T,I,18)|0;j=M^j;q=Gr(T,I,41)|0;i=m|13;N=a[464+(i<<3)>>2]|0;B=a[464+(i<<3)+4>>2]|0;o=a[n+16>>2]|0;L=a[n+16+4>>2]|0;j=In(a[r+(i<<3)>>2]|0,a[r+(i<<3)+4>>2]|0,g^D^q|0,j^M|0)|0;B=In(j|0,M|0,N|0,B|0)|0;C=In(B|0,M|0,(z^A)&T^z|0,(C^O)&I^C|0)|0;L=In(C|0,M|0,o|0,L|0)|0;o=M;C=In(L|0,o|0,a[n+48>>2]|0,a[n+48+4>>2]|0)|0;z=M;a[n+48>>2]=C;a[n+48+4>>2]=z;B=Gr(S,w,28)|0;N=M;j=Gr(S,w,34)|0;N=M^N;q=Gr(S,w,39)|0;N=In(L|0,o|0,j^B^q|0,N^M|0)|0;E=In(N|0,M|0,(v|k)&S|v&k|0,(E|x)&w|E&x|0)|0;v=M;a[n+16>>2]=E;a[n+16+4>>2]=v;N=Gr(C,z,14)|0;q=M;B=Gr(C,z,18)|0;q=M^q;j=Gr(C,z,41)|0;o=m|14;L=a[464+(o<<3)>>2]|0;D=a[464+(o<<3)+4>>2]|0;g=a[n+8>>2]|0;P=a[n+8+4>>2]|0;q=In(a[r+(o<<3)>>2]|0,a[r+(o<<3)+4>>2]|0,B^N^j|0,q^M|0)|0;D=In(q|0,M|0,L|0,D|0)|0;O=In(D|0,M|0,(A^T)&C^A|0,(O^I)&z^O|0)|0;P=In(O|0,M|0,g|0,P|0)|0;g=M;O=In(P|0,g|0,a[n+40>>2]|0,a[n+40+4>>2]|0)|0;A=M;a[n+40>>2]=O;a[n+40+4>>2]=A;D=Gr(E,v,28)|0;L=M;q=Gr(E,v,34)|0;L=M^L;j=Gr(E,v,39)|0;L=In(P|0,g|0,q^D^j|0,L^M|0)|0;x=In(L|0,M|0,(k|S)&E|k&S|0,(x|w)&v|x&w|0)|0;k=M;a[n+8>>2]=x;a[n+8+4>>2]=k;L=Gr(O,A,14)|0;j=M;D=Gr(O,A,18)|0;j=M^j;q=Gr(O,A,41)|0;g=m|15;P=a[464+(g<<3)>>2]|0;N=a[464+(g<<3)+4>>2]|0;B=a[n>>2]|0;R=a[n+4>>2]|0;j=In(a[r+(g<<3)>>2]|0,a[r+(g<<3)+4>>2]|0,D^L^q|0,j^M|0)|0;N=In(j|0,M|0,P|0,N|0)|0;I=In(N|0,M|0,(T^C)&O^T|0,(I^z)&A^I|0)|0;R=In(I|0,M|0,B|0,R|0)|0;B=M;I=In(R|0,B|0,a[n+32>>2]|0,a[n+32+4>>2]|0)|0;a[n+32>>2]=I;a[n+32+4>>2]=M;I=Gr(x,k,28)|0;A=M;z=Gr(x,k,34)|0;A=M^A;T=Gr(x,k,39)|0;A=In(R|0,B|0,z^I^T|0,A^M|0)|0;v=In(A|0,M|0,(S|E)&x|S&E|0,(w|v)&k|w&v|0)|0;a[n>>2]=v;a[n+4>>2]=M;if((m|0)==64){t=0;break}P=a[r+(o<<3)>>2]|0;C=a[r+(o<<3)+4>>2]|0;L=Gr(P,C,19)|0;T=M;O=Gr(P,C,61)|0;N=M;C=fn(P|0,C|0,6)|0;N=In(C^L^O|0,M^T^N|0,a[r+(b<<3)>>2]|0,a[r+(b<<3)+4>>2]|0)|0;T=M;O=a[r+(s<<3)>>2]|0;L=a[r+(s<<3)+4>>2]|0;C=Gr(O,L,1)|0;P=M;R=Gr(O,L,8)|0;j=M;z=fn(O|0,L|0,7)|0;j=M^P^j;P=r+(m<<3)|0;P=In(N|0,T|0,a[P>>2]|0,a[P+4>>2]|0)|0;j=In(P|0,M|0,z^C^R|0,j|0)|0;R=M;m=m+16|0;C=r+(m<<3)|0;a[C>>2]=j;a[C+4>>2]=R;C=a[r+(g<<3)>>2]|0;z=a[r+(g<<3)+4>>2]|0;P=Gr(C,z,19)|0;T=M;N=Gr(C,z,61)|0;B=M;z=fn(C|0,z|0,6)|0;B=In(z^P^N|0,M^T^B|0,a[r+(s+9<<3)>>2]|0,a[r+(s+9<<3)+4>>2]|0)|0;T=M;N=a[r+(s+1<<3)>>2]|0;P=a[r+(s+1<<3)+4>>2]|0;z=Gr(N,P,1)|0;C=M;D=Gr(N,P,8)|0;q=M;I=fn(N|0,P|0,7)|0;q=M^C^q;L=In(B|0,T|0,O|0,L|0)|0;q=In(L|0,M|0,I^z^D|0,q|0)|0;D=M;a[r+(s+16<<3)>>2]=q;a[r+(s+16<<3)+4>>2]=D;z=Gr(j,R,19)|0;I=M;L=Gr(j,R,61)|0;O=M;R=fn(j|0,R|0,6)|0;O=In(R^z^L|0,M^I^O|0,a[r+(_<<3)>>2]|0,a[r+(_<<3)+4>>2]|0)|0;I=M;L=a[r+(u<<3)>>2]|0;z=a[r+(u<<3)+4>>2]|0;R=Gr(L,z,1)|0;j=M;T=Gr(L,z,8)|0;B=M;C=fn(L|0,z|0,7)|0;B=M^j^B;P=In(O|0,I|0,N|0,P|0)|0;B=In(P|0,M|0,C^R^T|0,B|0)|0;T=M;a[r+(c+16<<3)>>2]=B;a[r+(c+16<<3)+4>>2]=T;R=Gr(q,D,19)|0;C=M;P=Gr(q,D,61)|0;N=M;D=fn(q|0,D|0,6)|0;N=In(D^R^P|0,M^C^N|0,a[r+(u+9<<3)>>2]|0,a[r+(u+9<<3)+4>>2]|0)|0;C=M;P=a[r+(u+1<<3)>>2]|0;R=a[r+(u+1<<3)+4>>2]|0;D=Gr(P,R,1)|0;q=M;I=Gr(P,R,8)|0;O=M;j=fn(P|0,R|0,7)|0;O=M^q^O;z=In(N|0,C|0,L|0,z|0)|0;O=In(z|0,M|0,j^D^I|0,O|0)|0;I=M;a[r+(u+16<<3)>>2]=O;a[r+(u+16<<3)+4>>2]=I;D=Gr(B,T,19)|0;j=M;z=Gr(B,T,61)|0;L=M;T=fn(B|0,T|0,6)|0;L=In(T^D^z|0,M^j^L|0,a[r+(i<<3)>>2]|0,a[r+(i<<3)+4>>2]|0)|0;j=M;z=a[r+(h<<3)>>2]|0;D=a[r+(h<<3)+4>>2]|0;T=Gr(z,D,1)|0;B=M;C=Gr(z,D,8)|0;N=M;q=fn(z|0,D|0,7)|0;N=M^B^N;R=In(L|0,j|0,P|0,R|0)|0;N=In(R|0,M|0,q^T^C|0,N|0)|0;C=M;a[r+(f+16<<3)>>2]=N;a[r+(f+16<<3)+4>>2]=C;T=Gr(O,I,19)|0;q=M;R=Gr(O,I,61)|0;P=M;I=fn(O|0,I|0,6)|0;P=In(I^T^R|0,M^q^P|0,a[r+(h+9<<3)>>2]|0,a[r+(h+9<<3)+4>>2]|0)|0;q=M;R=a[r+(h+1<<3)>>2]|0;T=a[r+(h+1<<3)+4>>2]|0;I=Gr(R,T,1)|0;O=M;j=Gr(R,T,8)|0;L=M;B=fn(R|0,T|0,7)|0;L=M^O^L;D=In(P|0,q|0,z|0,D|0)|0;L=In(D|0,M|0,B^I^j|0,L|0)|0;j=M;a[r+(h+16<<3)>>2]=L;a[r+(h+16<<3)+4>>2]=j;I=Gr(N,C,19)|0;B=M;D=Gr(N,C,61)|0;z=M;C=fn(N|0,C|0,6)|0;z=In(C^I^D|0,M^B^z|0,a[r+(g<<3)>>2]|0,a[r+(g<<3)+4>>2]|0)|0;B=M;D=a[r+(d<<3)>>2]|0;I=a[r+(d<<3)+4>>2]|0;C=Gr(D,I,1)|0;N=M;q=Gr(D,I,8)|0;P=M;O=fn(D|0,I|0,7)|0;P=M^N^P;T=In(z|0,B|0,R|0,T|0)|0;P=In(T|0,M|0,O^C^q|0,P|0)|0;q=M;a[r+(l+16<<3)>>2]=P;a[r+(l+16<<3)+4>>2]=q;C=Gr(L,j,19)|0;O=M;T=Gr(L,j,61)|0;R=M;j=fn(L|0,j|0,6)|0;R=In(j^C^T|0,M^O^R|0,a[r+(d+9<<3)>>2]|0,a[r+(d+9<<3)+4>>2]|0)|0;O=M;T=a[r+(d+1<<3)>>2]|0;C=a[r+(d+1<<3)+4>>2]|0;j=Gr(T,C,1)|0;L=M;B=Gr(T,C,8)|0;z=M;N=fn(T|0,C|0,7)|0;z=M^L^z;I=In(R|0,O|0,D|0,I|0)|0;z=In(I|0,M|0,N^j^B|0,z|0)|0;B=M;a[r+(d+16<<3)>>2]=z;a[r+(d+16<<3)+4>>2]=B;j=Gr(P,q,19)|0;N=M;I=Gr(P,q,61)|0;D=M;q=fn(P|0,q|0,6)|0;D=In(q^j^I|0,M^N^D|0,a[r+(p+9<<3)>>2]|0,a[r+(p+9<<3)+4>>2]|0)|0;N=M;I=a[r+(b<<3)>>2]|0;j=a[r+(b<<3)+4>>2]|0;q=Gr(I,j,1)|0;P=M;O=Gr(I,j,8)|0;R=M;L=fn(I|0,j|0,7)|0;R=M^P^R;C=In(D|0,N|0,T|0,C|0)|0;R=In(C|0,M|0,L^q^O|0,R|0)|0;O=M;a[r+(p+16<<3)>>2]=R;a[r+(p+16<<3)+4>>2]=O;q=Gr(z,B,19)|0;L=M;C=Gr(z,B,61)|0;T=M;B=fn(z|0,B|0,6)|0;T=In(B^q^C|0,M^L^T|0,a[r+(b+9<<3)>>2]|0,a[r+(b+9<<3)+4>>2]|0)|0;L=M;C=a[r+(b+1<<3)>>2]|0;q=a[r+(b+1<<3)+4>>2]|0;B=Gr(C,q,1)|0;z=M;N=Gr(C,q,8)|0;D=M;P=fn(C|0,q|0,7)|0;D=M^z^D;j=In(T|0,L|0,I|0,j|0)|0;D=In(j|0,M|0,P^B^N|0,D|0)|0;N=M;a[r+(b+16<<3)>>2]=D;a[r+(b+16<<3)+4>>2]=N;B=Gr(R,O,19)|0;P=M;j=Gr(R,O,61)|0;I=M;O=fn(R|0,O|0,6)|0;I=In(O^B^j|0,M^P^I|0,a[r+(y+9<<3)>>2]|0,a[r+(y+9<<3)+4>>2]|0)|0;P=M;j=a[r+(_<<3)>>2]|0;B=a[r+(_<<3)+4>>2]|0;O=Gr(j,B,1)|0;R=M;L=Gr(j,B,8)|0;T=M;z=fn(j|0,B|0,7)|0;T=M^R^T;q=In(I|0,P|0,C|0,q|0)|0;T=In(q|0,M|0,z^O^L|0,T|0)|0;L=M;a[r+(y+16<<3)>>2]=T;a[r+(y+16<<3)+4>>2]=L;O=Gr(D,N,19)|0;z=M;q=Gr(D,N,61)|0;C=M;N=fn(D|0,N|0,6)|0;C=In(N^O^q|0,M^z^C|0,a[r+(_+9<<3)>>2]|0,a[r+(_+9<<3)+4>>2]|0)|0;z=M;q=a[r+(_+1<<3)>>2]|0;O=a[r+(_+1<<3)+4>>2]|0;N=Gr(q,O,1)|0;D=M;P=Gr(q,O,8)|0;I=M;R=fn(q|0,O|0,7)|0;I=M^D^I;B=In(C|0,z|0,j|0,B|0)|0;I=In(B|0,M|0,R^N^P|0,I|0)|0;P=M;a[r+(_+16<<3)>>2]=I;a[r+(_+16<<3)+4>>2]=P;N=Gr(T,L,19)|0;R=M;B=Gr(T,L,61)|0;j=M;L=fn(T|0,L|0,6)|0;j=In(L^N^B|0,M^R^j|0,a[r+(t+9<<3)>>2]|0,a[r+(t+9<<3)+4>>2]|0)|0;R=M;B=a[r+(i<<3)>>2]|0;N=a[r+(i<<3)+4>>2]|0;L=Gr(B,N,1)|0;T=M;z=Gr(B,N,8)|0;C=M;D=fn(B|0,N|0,7)|0;C=M^T^C;O=In(j|0,R|0,q|0,O|0)|0;C=In(O|0,M|0,D^L^z|0,C|0)|0;z=M;a[r+(t+16<<3)>>2]=C;a[r+(t+16<<3)+4>>2]=z;L=Gr(I,P,19)|0;t=M;D=Gr(I,P,61)|0;O=M;P=fn(I|0,P|0,6)|0;O=In(P^L^D|0,M^t^O|0,a[r+(i+9<<3)>>2]|0,a[r+(i+9<<3)+4>>2]|0)|0;t=M;D=a[r+(i+1<<3)>>2]|0;L=a[r+(i+1<<3)+4>>2]|0;P=Gr(D,L,1)|0;I=M;q=Gr(D,L,8)|0;R=M;j=fn(D|0,L|0,7)|0;R=M^I^R;N=In(O|0,t|0,B|0,N|0)|0;R=In(N|0,M|0,j^P^q|0,R|0)|0;q=M;a[r+(i+16<<3)>>2]=R;a[r+(i+16<<3)+4>>2]=q;P=Gr(C,z,19)|0;j=M;N=Gr(C,z,61)|0;B=M;t=fn(C|0,z|0,6)|0;B=In(t^P^N|0,M^j^B|0,a[r+(o+9<<3)>>2]|0,a[r+(o+9<<3)+4>>2]|0)|0;j=M;N=a[r+(g<<3)>>2]|0;P=a[r+(g<<3)+4>>2]|0;t=Gr(N,P,1)|0;z=M;C=Gr(N,P,8)|0;i=M;O=fn(N|0,P|0,7)|0;i=M^z^i;L=In(B|0,j|0,D|0,L|0)|0;i=In(L|0,M|0,O^t^C|0,i|0)|0;a[r+(o+16<<3)>>2]=i;a[r+(o+16<<3)+4>>2]=M;i=Gr(R,q,19)|0;C=M;t=Gr(R,q,61)|0;O=M;q=fn(R|0,q|0,6)|0;O=In(q^i^t|0,M^C^O|0,a[r+(g+9<<3)>>2]|0,a[r+(g+9<<3)+4>>2]|0)|0;C=M;t=a[r+(g+1<<3)>>2]|0;i=a[r+(g+1<<3)+4>>2]|0;q=Gr(t,i,1)|0;R=M;L=Gr(t,i,8)|0;D=M;j=fn(t|0,i|0,7)|0;D=M^R^D;P=In(O|0,C|0,N|0,P|0)|0;D=In(P|0,M|0,j^q^L|0,D|0)|0;a[r+(g+16<<3)>>2]=D;a[r+(g+16<<3)+4>>2]=M;if((m|0)>=80){t=0;break}}do{L=n+(t<<3)|0;D=e+(t<<3)|0;L=In(a[D>>2]|0,a[D+4>>2]|0,a[L>>2]|0,a[L+4>>2]|0)|0;a[D>>2]=L;a[D+4>>2]=M;t=t+1|0}while((t|0)!=8);return}function ce(e){e=e|0;var t=0,r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0;E=p;b=p=p+63&-64;p=p+16|0;do{if(e>>>0<245){d=e>>>0<11?16:e+11&-8;h=a[8618]|0;if(h>>>(d>>>3)&3|0){e=34512+((h>>>(d>>>3)&1^1)+(d>>>3)<<1<<2)|0;t=a[e+8>>2]|0;r=a[t+8>>2]|0;if((e|0)==(r|0))a[8618]=h&~(1<<(h>>>(d>>>3)&1^1)+(d>>>3));else{a[r+12>>2]=e;a[e+8>>2]=r}k=(h>>>(d>>>3)&1^1)+(d>>>3)<<3;a[t+4>>2]=k|3;a[t+k+4>>2]=a[t+k+4>>2]|1;k=t+8|0;p=E;return k|0}l=a[8620]|0;if(d>>>0>l>>>0){if(h>>>(d>>>3)|0){e=h>>>(d>>>3)<<(d>>>3)&(2<<(d>>>3)|0-(2<<(d>>>3)));i=((e&0-e)+-1|0)>>>(((e&0-e)+-1|0)>>>12&16);n=i>>>(i>>>5&8)>>>(i>>>(i>>>5&8)>>>2&4);n=(i>>>5&8|((e&0-e)+-1|0)>>>12&16|i>>>(i>>>5&8)>>>2&4|n>>>1&2|n>>>(n>>>1&2)>>>1&1)+(n>>>(n>>>1&2)>>>(n>>>(n>>>1&2)>>>1&1))|0;i=a[34512+(n<<1<<2)+8>>2]|0;e=a[i+8>>2]|0;if((34512+(n<<1<<2)|0)==(e|0)){a[8618]=h&~(1<>2]=34512+(n<<1<<2);a[34512+(n<<1<<2)+8>>2]=e;e=h}a[i+4>>2]=d|3;a[i+d+4>>2]=(n<<3)-d|1;a[i+d+((n<<3)-d)>>2]=(n<<3)-d;if(l|0){r=a[8623]|0;if(!(e&1<<(l>>>3))){a[8618]=e|1<<(l>>>3);e=34512+(l>>>3<<1<<2)|0;t=34512+(l>>>3<<1<<2)+8|0}else{e=a[34512+(l>>>3<<1<<2)+8>>2]|0;t=34512+(l>>>3<<1<<2)+8|0}a[t>>2]=r;a[e+12>>2]=r;a[r+8>>2]=e;a[r+12>>2]=34512+(l>>>3<<1<<2)}a[8620]=(n<<3)-d;a[8623]=i+d;k=i+8|0;p=E;return k|0}f=a[8619]|0;if(f){t=((f&0-f)+-1|0)>>>(((f&0-f)+-1|0)>>>12&16);e=t>>>(t>>>5&8)>>>(t>>>(t>>>5&8)>>>2&4);e=a[34776+((t>>>5&8|((f&0-f)+-1|0)>>>12&16|t>>>(t>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))<<2)>>2]|0;t=(a[e+4>>2]&-8)-d|0;r=a[e+16+(((a[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!r){u=e;s=t}else{do{c=(a[r+4>>2]&-8)-d|0;u=c>>>0>>0;t=u?c:t;e=u?r:e;r=a[r+16+(((a[r+16>>2]|0)==0&1)<<2)>>2]|0}while((r|0)!=0);u=e;s=t}c=u+d|0;if(u>>>0>>0){i=a[u+24>>2]|0;e=a[u+12>>2]|0;do{if((e|0)==(u|0)){t=u+20|0;e=a[t>>2]|0;if(!e){t=u+16|0;e=a[t>>2]|0;if(!e){t=0;break}}while(1){r=e+20|0;n=a[r>>2]|0;if(n|0){e=n;t=r;continue}r=e+16|0;n=a[r>>2]|0;if(!n)break;else{e=n;t=r}}a[t>>2]=0;t=e}else{t=a[u+8>>2]|0;a[t+12>>2]=e;a[e+8>>2]=t;t=e}}while(0);do{if(i|0){e=a[u+28>>2]|0;if((u|0)==(a[34776+(e<<2)>>2]|0)){a[34776+(e<<2)>>2]=t;if(!t){a[8619]=f&~(1<>2]|0)!=(u|0)&1)<<2)>>2]=t;if(!t)break}a[t+24>>2]=i;e=a[u+16>>2]|0;if(e|0){a[t+16>>2]=e;a[e+24>>2]=t}e=a[u+20>>2]|0;if(e|0){a[t+20>>2]=e;a[e+24>>2]=t}}}while(0);if(s>>>0<16){k=s+d|0;a[u+4>>2]=k|3;k=u+k+4|0;a[k>>2]=a[k>>2]|1}else{a[u+4>>2]=d|3;a[c+4>>2]=s|1;a[c+s>>2]=s;if(l|0){r=a[8623]|0;if(!(h&1<<(l>>>3))){a[8618]=h|1<<(l>>>3);e=34512+(l>>>3<<1<<2)|0;t=34512+(l>>>3<<1<<2)+8|0}else{e=a[34512+(l>>>3<<1<<2)+8>>2]|0;t=34512+(l>>>3<<1<<2)+8|0}a[t>>2]=r;a[e+12>>2]=r;a[r+8>>2]=e;a[r+12>>2]=34512+(l>>>3<<1<<2)}a[8620]=s;a[8623]=c}k=u+8|0;p=E;return k|0}}}}else if(e>>>0<=4294967231){d=e+11&-8;u=a[8619]|0;if(u){if((e+11|0)>>>8)if(d>>>0>16777215)c=31;else{c=(e+11|0)>>>8<<((((e+11|0)>>>8)+1048320|0)>>>16&8);c=14-((c+520192|0)>>>16&4|(((e+11|0)>>>8)+1048320|0)>>>16&8|((c<<((c+520192|0)>>>16&4))+245760|0)>>>16&2)+(c<<((c+520192|0)>>>16&4)<<(((c<<((c+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;c=d>>>(c+7|0)&1|c<<1}else c=0;t=a[34776+(c<<2)>>2]|0;e:do{if(!t){t=0;e=0;r=0-d|0;w=57}else{e=0;r=0-d|0;s=d<<((c|0)==31?0:25-(c>>>1)|0);i=0;while(1){n=(a[t+4>>2]&-8)-d|0;if(n>>>0>>0)if(!n){e=t;r=0;n=t;w=61;break e}else{e=t;r=n}n=a[t+20>>2]|0;t=a[t+16+(s>>>31<<2)>>2]|0;i=(n|0)==0|(n|0)==(t|0)?i:n;n=(t|0)==0;if(n){t=i;w=57;break}else s=s<<((n^1)&1)}}}while(0);if((w|0)==57){if((t|0)==0&(e|0)==0){e=2<>>(h>>>12&16)>>>(h>>>(h>>>12&16)>>>5&8);t=l>>>(l>>>2&4)>>>(l>>>(l>>>2&4)>>>1&2);e=0;t=a[34776+((h>>>(h>>>12&16)>>>5&8|h>>>12&16|l>>>2&4|l>>>(l>>>2&4)>>>1&2|t>>>1&1)+(t>>>(t>>>1&1))<<2)>>2]|0}if(!t){c=e;s=r}else{n=t;w=61}}if((w|0)==61)while(1){w=0;t=(a[n+4>>2]&-8)-d|0;l=t>>>0>>0;t=l?t:r;e=l?n:e;n=a[n+16+(((a[n+16>>2]|0)==0&1)<<2)>>2]|0;if(!n){c=e;s=t;break}else{r=t;w=61}}if((c|0)!=0?s>>>0<((a[8620]|0)-d|0)>>>0:0){o=c+d|0;if(c>>>0>=o>>>0){k=0;p=E;return k|0}i=a[c+24>>2]|0;e=a[c+12>>2]|0;do{if((e|0)==(c|0)){t=c+20|0;e=a[t>>2]|0;if(!e){t=c+16|0;e=a[t>>2]|0;if(!e){e=0;break}}while(1){r=e+20|0;n=a[r>>2]|0;if(n|0){e=n;t=r;continue}r=e+16|0;n=a[r>>2]|0;if(!n)break;else{e=n;t=r}}a[t>>2]=0}else{k=a[c+8>>2]|0;a[k+12>>2]=e;a[e+8>>2]=k}}while(0);do{if(i){t=a[c+28>>2]|0;if((c|0)==(a[34776+(t<<2)>>2]|0)){a[34776+(t<<2)>>2]=e;if(!e){a[8619]=u&~(1<>2]|0)!=(c|0)&1)<<2)>>2]=e;if(!e){n=u;break}}a[e+24>>2]=i;t=a[c+16>>2]|0;if(t|0){a[e+16>>2]=t;a[t+24>>2]=e}t=a[c+20>>2]|0;if(t){a[e+20>>2]=t;a[t+24>>2]=e;n=u}else n=u}else n=u}while(0);do{if(s>>>0>=16){a[c+4>>2]=d|3;a[o+4>>2]=s|1;a[o+s>>2]=s;r=s>>>3;if(s>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=o;a[e+12>>2]=o;a[o+8>>2]=e;a[o+12>>2]=34512+(r<<1<<2);break}e=s>>>8;if(e)if(s>>>0>16777215)e=31;else{k=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(k+245760|0)>>>16&2)+(k<<((k+245760|0)>>>16&2)>>>15)|0;e=s>>>(e+7|0)&1|e<<1}else e=0;r=34776+(e<<2)|0;a[o+28>>2]=e;a[o+16+4>>2]=0;a[o+16>>2]=0;t=1<>2]=o;a[o+24>>2]=r;a[o+12>>2]=o;a[o+8>>2]=o;break}t=s<<((e|0)==31?0:25-(e>>>1)|0);r=a[r>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(s|0)){w=97;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=96;break}else{t=t<<1;r=e}}if((w|0)==96){a[n>>2]=o;a[o+24>>2]=r;a[o+12>>2]=o;a[o+8>>2]=o;break}else if((w|0)==97){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=o;a[w>>2]=o;a[o+8>>2]=k;a[o+12>>2]=r;a[o+24>>2]=0;break}}else{k=s+d|0;a[c+4>>2]=k|3;k=c+k+4|0;a[k>>2]=a[k>>2]|1}}while(0);k=c+8|0;p=E;return k|0}}}else d=-1}while(0);r=a[8620]|0;if(r>>>0>=d>>>0){e=r-d|0;t=a[8623]|0;if(e>>>0>15){k=t+d|0;a[8623]=k;a[8620]=e;a[k+4>>2]=e|1;a[k+e>>2]=e;a[t+4>>2]=d|3}else{a[8620]=0;a[8623]=0;a[t+4>>2]=r|3;a[t+r+4>>2]=a[t+r+4>>2]|1}k=t+8|0;p=E;return k|0}i=a[8621]|0;if(i>>>0>d>>>0){v=i-d|0;a[8621]=v;k=a[8624]|0;w=k+d|0;a[8624]=w;a[w+4>>2]=v|1;a[k+4>>2]=d|3;k=k+8|0;p=E;return k|0}if(!(a[8736]|0)){a[8738]=4096;a[8737]=4096;a[8739]=-1;a[8740]=-1;a[8741]=0;a[8729]=0;a[b>>2]=b&-16^1431655768;a[8736]=b&-16^1431655768;e=4096}else e=a[8738]|0;s=d+48|0;c=d+47|0;f=e+c|0;u=0-e|0;if((f&u)>>>0<=d>>>0){k=0;p=E;return k|0}e=a[8728]|0;if(e|0?(b=a[8726]|0,(b+(f&u)|0)>>>0<=b>>>0?1:(b+(f&u)|0)>>>0>e>>>0):0){k=0;p=E;return k|0}e:do{if(!(a[8729]&4)){r=a[8624]|0;t:do{if(r){t=34920;while(1){e=a[t>>2]|0;if(e>>>0<=r>>>0?(y=t+4|0,(e+(a[y>>2]|0)|0)>>>0>r>>>0):0)break;e=a[t+8>>2]|0;if(!e){w=118;break t}else t=e}if((f-i&u)>>>0<2147483647){e=Wt(f-i&u|0)|0;if((e|0)==((a[t>>2]|0)+(a[y>>2]|0)|0))if((e|0)==(-1|0))e=f-i&u;else{s=f-i&u;o=e;w=135;break e}else{n=e;r=f-i&u;w=126}}else e=0}else w=118}while(0);do{if((w|0)==118){t=Wt(0)|0;if((t|0)!=(-1|0)?(m=a[8737]|0,m=((m+-1&t|0)==0?0:(m+-1+t&0-m)-t|0)+(f&u)|0,_=a[8726]|0,m>>>0>d>>>0&m>>>0<2147483647):0){y=a[8728]|0;if(y|0?(m+_|0)>>>0<=_>>>0|(m+_|0)>>>0>y>>>0:0){e=0;break}e=Wt(m|0)|0;if((e|0)==(t|0)){s=m;o=t;w=135;break e}else{n=e;r=m;w=126}}else e=0}}while(0);do{if((w|0)==126){t=0-r|0;if(!(s>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))))if((n|0)==(-1|0)){e=0;break}else{s=r;o=n;w=135;break e}e=a[8738]|0;e=c-r+e&0-e;if(e>>>0>=2147483647){s=r;o=n;w=135;break e}if((Wt(e|0)|0)==(-1|0)){Wt(t|0)|0;e=0;break}else{s=e+r|0;o=n;w=135;break e}}}while(0);a[8729]=a[8729]|4;w=133}else{e=0;w=133}}while(0);if(((w|0)==133?(f&u)>>>0<2147483647:0)?(o=Wt(f&u|0)|0,g=Wt(0)|0,v=(g-o|0)>>>0>(d+40|0)>>>0,!((o|0)==(-1|0)|v^1|o>>>0>>0&((o|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){s=v?g-o|0:e;w=135}if((w|0)==135){e=(a[8726]|0)+s|0;a[8726]=e;if(e>>>0>(a[8727]|0)>>>0)a[8727]=e;u=a[8624]|0;do{if(u){e=34920;while(1){t=a[e>>2]|0;r=e+4|0;n=a[r>>2]|0;if((o|0)==(t+n|0)){w=145;break}i=a[e+8>>2]|0;if(!i)break;else e=i}if(((w|0)==145?(a[e+12>>2]&8|0)==0:0)?u>>>0>>0&u>>>0>=t>>>0:0){a[r>>2]=n+s;w=(u+8&7|0)==0?0:0-(u+8)&7;k=(a[8621]|0)+(s-w)|0;a[8624]=u+w;a[8621]=k;a[u+w+4>>2]=k|1;a[u+w+k+4>>2]=40;a[8625]=a[8740];break}if(o>>>0<(a[8622]|0)>>>0)a[8622]=o;r=o+s|0;e=34920;while(1){if((a[e>>2]|0)==(r|0)){w=153;break}t=a[e+8>>2]|0;if(!t)break;else e=t}if((w|0)==153?(a[e+12>>2]&8|0)==0:0){a[e>>2]=o;h=e+4|0;a[h>>2]=(a[h>>2]|0)+s;h=o+8|0;h=o+((h&7|0)==0?0:0-h&7)|0;e=r+((r+8&7|0)==0?0:0-(r+8)&7)|0;f=h+d|0;c=e-h-d|0;a[h+4>>2]=d|3;do{if((e|0)!=(u|0)){if((e|0)==(a[8623]|0)){k=(a[8620]|0)+c|0;a[8620]=k;a[8623]=f;a[f+4>>2]=k|1;a[f+k>>2]=k;break}s=a[e+4>>2]|0;if((s&3|0)==1){e:do{if(s>>>0<256){t=a[e+8>>2]|0;r=a[e+12>>2]|0;if((r|0)==(t|0)){a[8618]=a[8618]&~(1<<(s>>>3));break}else{a[t+12>>2]=r;a[r+8>>2]=t;break}}else{o=a[e+24>>2]|0;t=a[e+12>>2]|0;do{if((t|0)==(e|0)){t=a[e+16+4>>2]|0;if(!t){t=a[e+16>>2]|0;if(!t){t=0;break}else i=e+16|0}else i=e+16+4|0;while(1){r=t+20|0;n=a[r>>2]|0;if(n|0){t=n;i=r;continue}r=t+16|0;n=a[r>>2]|0;if(!n)break;else{t=n;i=r}}a[i>>2]=0}else{k=a[e+8>>2]|0;a[k+12>>2]=t;a[t+8>>2]=k}}while(0);if(!o)break;r=a[e+28>>2]|0;do{if((e|0)!=(a[34776+(r<<2)>>2]|0)){a[o+16+(((a[o+16>>2]|0)!=(e|0)&1)<<2)>>2]=t;if(!t)break e}else{a[34776+(r<<2)>>2]=t;if(t|0)break;a[8619]=a[8619]&~(1<>2]=o;r=a[e+16>>2]|0;if(r|0){a[t+16>>2]=r;a[r+24>>2]=t}r=a[e+16+4>>2]|0;if(!r)break;a[t+20>>2]=r;a[r+24>>2]=t}}while(0);e=e+(s&-8)|0;i=(s&-8)+c|0}else i=c;r=e+4|0;a[r>>2]=a[r>>2]&-2;a[f+4>>2]=i|1;a[f+i>>2]=i;r=i>>>3;if(i>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=f;a[e+12>>2]=f;a[f+8>>2]=e;a[f+12>>2]=34512+(r<<1<<2);break}e=i>>>8;do{if(!e)e=0;else{if(i>>>0>16777215){e=31;break}k=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(k+245760|0)>>>16&2)+(k<<((k+245760|0)>>>16&2)>>>15)|0;e=i>>>(e+7|0)&1|e<<1}}while(0);n=34776+(e<<2)|0;a[f+28>>2]=e;a[f+16+4>>2]=0;a[f+16>>2]=0;t=a[8619]|0;r=1<>2]=f;a[f+24>>2]=n;a[f+12>>2]=f;a[f+8>>2]=f;break}t=i<<((e|0)==31?0:25-(e>>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i|0)){w=194;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=193;break}else{t=t<<1;r=e}}if((w|0)==193){a[n>>2]=f;a[f+24>>2]=r;a[f+12>>2]=f;a[f+8>>2]=f;break}else if((w|0)==194){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=f;a[w>>2]=f;a[f+8>>2]=k;a[f+12>>2]=r;a[f+24>>2]=0;break}}else{k=(a[8621]|0)+c|0;a[8621]=k;a[8624]=f;a[f+4>>2]=k|1}}while(0);k=h+8|0;p=E;return k|0}e=34920;while(1){t=a[e>>2]|0;if(t>>>0<=u>>>0?(k=t+(a[e+4>>2]|0)|0,k>>>0>u>>>0):0)break;e=a[e+8>>2]|0}i=k+-47+((k+-47+8&7|0)==0?0:0-(k+-47+8)&7)|0;i=i>>>0<(u+16|0)>>>0?u:i;e=o+8|0;e=(e&7|0)==0?0:0-e&7;w=o+e|0;e=s+-40-e|0;a[8624]=w;a[8621]=e;a[w+4>>2]=e|1;a[w+e+4>>2]=40;a[8625]=a[8740];a[i+4>>2]=27;a[i+8>>2]=a[8730];a[i+8+4>>2]=a[8731];a[i+8+8>>2]=a[8732];a[i+8+12>>2]=a[8733];a[8730]=o;a[8731]=s;a[8733]=0;a[8732]=i+8;e=i+24|0;do{w=e;e=e+4|0;a[e>>2]=7}while((w+8|0)>>>0>>0);if((i|0)!=(u|0)){a[i+4>>2]=a[i+4>>2]&-2;a[u+4>>2]=i-u|1;a[i>>2]=i-u;if((i-u|0)>>>0<256){r=34512+((i-u|0)>>>3<<1<<2)|0;e=a[8618]|0;if(!(e&1<<((i-u|0)>>>3))){a[8618]=e|1<<((i-u|0)>>>3);e=r;t=r+8|0}else{e=a[r+8>>2]|0;t=r+8|0}a[t>>2]=u;a[e+12>>2]=u;a[u+8>>2]=e;a[u+12>>2]=r;break}if((i-u|0)>>>8)if((i-u|0)>>>0>16777215)e=31;else{e=(i-u|0)>>>8<<((((i-u|0)>>>8)+1048320|0)>>>16&8);e=14-((e+520192|0)>>>16&4|(((i-u|0)>>>8)+1048320|0)>>>16&8|((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)+(e<<((e+520192|0)>>>16&4)<<(((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;e=(i-u|0)>>>(e+7|0)&1|e<<1}else e=0;n=34776+(e<<2)|0;a[u+28>>2]=e;a[u+20>>2]=0;a[u+16>>2]=0;t=a[8619]|0;r=1<>2]=u;a[u+24>>2]=n;a[u+12>>2]=u;a[u+8>>2]=u;break}t=i-u<<((e|0)==31?0:25-(e>>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i-u|0)){w=216;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){w=215;break}else{t=t<<1;r=e}}if((w|0)==215){a[n>>2]=u;a[u+24>>2]=r;a[u+12>>2]=u;a[u+8>>2]=u;break}else if((w|0)==216){w=r+8|0;k=a[w>>2]|0;a[k+12>>2]=u;a[w>>2]=u;a[u+8>>2]=k;a[u+12>>2]=r;a[u+24>>2]=0;break}}}else{k=a[8622]|0;if((k|0)==0|o>>>0>>0)a[8622]=o;a[8730]=o;a[8731]=s;a[8733]=0;a[8627]=a[8736];a[8626]=-1;e=0;do{k=34512+(e<<1<<2)|0;a[k+12>>2]=k;a[k+8>>2]=k;e=e+1|0}while((e|0)!=32);k=o+8|0;k=(k&7|0)==0?0:0-k&7;w=o+k|0;k=s+-40-k|0;a[8624]=w;a[8621]=k;a[w+4>>2]=k|1;a[w+k+4>>2]=40;a[8625]=a[8740]}}while(0);e=a[8621]|0;if(e>>>0>d>>>0){v=e-d|0;a[8621]=v;k=a[8624]|0;w=k+d|0;a[8624]=w;a[w+4>>2]=v|1;a[k+4>>2]=d|3;k=k+8|0;p=E;return k|0}}a[8242]=12;k=0;p=E;return k|0}function ue(e){e=e|0;var t=0,r=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,ye=0,_e=0;F=$r(n[e>>0]|0,n[e+1>>0]|0,n[e+2>>0]|0)|0;r=hr(e+2|0)|0;r=fn(r|0,M|0,5)|0;Y=$r(n[e+5>>0]|0,n[e+6>>0]|0,n[e+7>>0]|0)|0;Y=fn(Y|0,M|0,2)|0;G=hr(e+7|0)|0;G=fn(G|0,M|0,7)|0;k=hr(e+10|0)|0;k=fn(k|0,M|0,4)|0;W=$r(n[e+13>>0]|0,n[e+14>>0]|0,n[e+15>>0]|0)|0;W=fn(W|0,M|0,1)|0;K=hr(e+15|0)|0;K=fn(K|0,M|0,6)|0;ae=$r(n[e+18>>0]|0,n[e+19>>0]|0,n[e+20>>0]|0)|0;ae=fn(ae|0,M|0,3)|0;le=$r(n[e+21>>0]|0,n[e+22>>0]|0,n[e+23>>0]|0)|0;re=hr(e+23|0)|0;re=fn(re|0,M|0,5)|0;he=$r(n[e+26>>0]|0,n[e+27>>0]|0,n[e+28>>0]|0)|0;he=fn(he|0,M|0,2)|0;g=hr(e+28|0)|0;g=fn(g|0,M|0,7)|0;ye=hr(e+31|0)|0;ye=fn(ye|0,M|0,4)|0;v=$r(n[e+34>>0]|0,n[e+35>>0]|0,n[e+36>>0]|0)|0;v=fn(v|0,M|0,1)|0;x=hr(e+36|0)|0;x=fn(x|0,M|0,6)|0;p=$r(n[e+39>>0]|0,n[e+40>>0]|0,n[e+41>>0]|0)|0;p=fn(p|0,M|0,3)|0;Z=$r(n[e+42>>0]|0,n[e+43>>0]|0,n[e+44>>0]|0)|0;D=hr(e+44|0)|0;D=fn(D|0,M|0,5)|0;Q=$r(n[e+47>>0]|0,n[e+48>>0]|0,n[e+49>>0]|0)|0;Q=fn(Q|0,M|0,2)|0;_e=hr(e+49|0)|0;_e=fn(_e|0,M|0,7)|0;w=hr(e+52|0)|0;w=fn(w|0,M|0,4)|0;m=$r(n[e+55>>0]|0,n[e+56>>0]|0,n[e+57>>0]|0)|0;m=fn(m|0,M|0,1)|0;o=hr(e+57|0)|0;o=fn(o|0,M|0,6)|0;O=hr(e+60|0)|0;O=fn(O|0,M|0,3)|0;t=M;s=Wr(O|0,t|0,666643,0)|0;i=M;se=Wr(O|0,t|0,470296,0)|0;f=M;U=Wr(O|0,t|0,654183,0)|0;h=M;B=Wr(O|0,t|0,-997805,-1)|0;P=M;u=Wr(O|0,t|0,136657,0)|0;p=In(u|0,M|0,p&2097151|0,0)|0;u=M;t=Wr(O|0,t|0,-683901,-1)|0;Z=In(t|0,M|0,Z&2097151|0,0)|0;t=M;O=Wr(o&2097151|0,0,666643,0)|0;T=M;_=Wr(o&2097151|0,0,470296,0)|0;I=M;a=Wr(o&2097151|0,0,654183,0)|0;d=M;A=Wr(o&2097151|0,0,-997805,-1)|0;C=M;J=Wr(o&2097151|0,0,136657,0)|0;R=M;o=Wr(o&2097151|0,0,-683901,-1)|0;o=In(p|0,u|0,o|0,M|0)|0;u=M;p=Wr(m&2097151|0,0,666643,0)|0;l=M;N=Wr(m&2097151|0,0,470296,0)|0;E=M;S=Wr(m&2097151|0,0,654183,0)|0;V=M;de=Wr(m&2097151|0,0,-997805,-1)|0;oe=M;b=Wr(m&2097151|0,0,136657,0)|0;$=M;m=Wr(m&2097151|0,0,-683901,-1)|0;x=In(m|0,M|0,x&2097151|0,0)|0;P=In(x|0,M|0,B|0,P|0)|0;R=In(P|0,M|0,J|0,R|0)|0;J=M;P=Wr(w&2097151|0,0,666643,0)|0;B=M;x=Wr(w&2097151|0,0,470296,0)|0;m=M;ce=Wr(w&2097151|0,0,654183,0)|0;c=M;L=Wr(w&2097151|0,0,-997805,-1)|0;y=M;be=Wr(w&2097151|0,0,136657,0)|0;pe=M;w=Wr(w&2097151|0,0,-683901,-1)|0;X=M;z=Wr(_e&2097151|0,0,666643,0)|0;H=M;ne=Wr(_e&2097151|0,0,470296,0)|0;ie=M;te=Wr(_e&2097151|0,0,654183,0)|0;ee=M;fe=Wr(_e&2097151|0,0,-997805,-1)|0;ue=M;j=Wr(_e&2097151|0,0,136657,0)|0;q=M;_e=Wr(_e&2097151|0,0,-683901,-1)|0;ye=In(_e|0,M|0,ye&2097151|0,0)|0;pe=In(ye|0,M|0,be|0,pe|0)|0;oe=In(pe|0,M|0,de|0,oe|0)|0;f=In(oe|0,M|0,se|0,f|0)|0;d=In(f|0,M|0,a|0,d|0)|0;a=M;f=Wr(Q&2097151|0,0,666643,0)|0;K=In(f|0,M|0,K&2097151|0,0)|0;f=M;se=Wr(Q&2097151|0,0,470296,0)|0;oe=M;de=Wr(Q&2097151|0,0,654183,0)|0;le=In(de|0,M|0,le&2097151|0,0)|0;ie=In(le|0,M|0,ne|0,ie|0)|0;B=In(ie|0,M|0,P|0,B|0)|0;P=M;ie=Wr(Q&2097151|0,0,-997805,-1)|0;ne=M;le=Wr(Q&2097151|0,0,136657,0)|0;he=In(le|0,M|0,he&2097151|0,0)|0;ue=In(he|0,M|0,fe|0,ue|0)|0;c=In(ue|0,M|0,ce|0,c|0)|0;E=In(c|0,M|0,N|0,E|0)|0;T=In(E|0,M|0,O|0,T|0)|0;O=M;Q=Wr(Q&2097151|0,0,-683901,-1)|0;E=M;N=In(K|0,f|0,1048576,0)|0;N=fn(N|0,M|0,21)|0;c=M;ae=In(se|0,oe|0,ae&2097151|0,0)|0;H=In(ae|0,M|0,z|0,H|0)|0;H=In(H|0,M|0,N|0,c|0)|0;z=M;c=cn(N|0,c|0,21)|0;c=Mn(K|0,f|0,c|0,M|0)|0;f=M;K=In(B|0,P|0,1048576,0)|0;K=fn(K|0,M|0,21)|0;N=M;re=In(ie|0,ne|0,re&2097151|0,0)|0;ee=In(re|0,M|0,te|0,ee|0)|0;m=In(ee|0,M|0,x|0,m|0)|0;l=In(m|0,M|0,p|0,l|0)|0;l=In(l|0,M|0,K|0,N|0)|0;p=M;N=cn(K|0,N|0,21)|0;K=M;m=In(T|0,O|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;x=M;g=In(Q|0,E|0,g&2097151|0,0)|0;q=In(g|0,M|0,j|0,q|0)|0;y=In(q|0,M|0,L|0,y|0)|0;V=In(y|0,M|0,S|0,V|0)|0;i=In(V|0,M|0,s|0,i|0)|0;I=In(i|0,M|0,_|0,I|0)|0;I=In(I|0,M|0,m|0,x|0)|0;_=M;x=cn(m|0,x|0,21)|0;m=M;i=In(d|0,a|0,1048576,0)|0;i=Hr(i|0,M|0,21)|0;s=M;v=In(w|0,X|0,v&2097151|0,0)|0;$=In(v|0,M|0,b|0,$|0)|0;h=In($|0,M|0,U|0,h|0)|0;C=In(h|0,M|0,A|0,C|0)|0;C=In(C|0,M|0,i|0,s|0)|0;A=M;s=cn(i|0,s|0,21)|0;s=Mn(d|0,a|0,s|0,M|0)|0;a=M;d=In(R|0,J|0,1048576,0)|0;d=Hr(d|0,M|0,21)|0;i=M;u=In(o|0,u|0,d|0,i|0)|0;o=M;i=cn(d|0,i|0,21)|0;i=Mn(R|0,J|0,i|0,M|0)|0;J=M;R=In(Z|0,t|0,1048576,0)|0;R=Hr(R|0,M|0,21)|0;d=M;D=In(R|0,d|0,D&2097151|0,0)|0;h=M;d=cn(R|0,d|0,21)|0;d=Mn(Z|0,t|0,d|0,M|0)|0;t=M;Z=In(H|0,z|0,1048576,0)|0;Z=fn(Z|0,M|0,21)|0;R=M;U=cn(Z|0,R|0,21)|0;U=Mn(H|0,z|0,U|0,M|0)|0;z=M;H=In(l|0,p|0,1048576,0)|0;H=Hr(H|0,M|0,21)|0;$=M;b=cn(H|0,$|0,21)|0;v=M;X=In(I|0,_|0,1048576,0)|0;X=Hr(X|0,M|0,21)|0;w=M;a=In(X|0,w|0,s|0,a|0)|0;s=M;w=cn(X|0,w|0,21)|0;w=Mn(I|0,_|0,w|0,M|0)|0;_=M;I=In(C|0,A|0,1048576,0)|0;I=Hr(I|0,M|0,21)|0;X=M;J=In(I|0,X|0,i|0,J|0)|0;i=M;X=cn(I|0,X|0,21)|0;X=Mn(C|0,A|0,X|0,M|0)|0;A=M;C=In(u|0,o|0,1048576,0)|0;C=Hr(C|0,M|0,21)|0;I=M;t=In(C|0,I|0,d|0,t|0)|0;d=M;I=cn(C|0,I|0,21)|0;I=Mn(u|0,o|0,I|0,M|0)|0;o=M;u=Wr(D|0,h|0,666643,0)|0;W=In(u|0,M|0,W&2097151|0,0)|0;u=M;C=Wr(D|0,h|0,470296,0)|0;C=In(c|0,f|0,C|0,M|0)|0;f=M;c=Wr(D|0,h|0,654183,0)|0;c=In(U|0,z|0,c|0,M|0)|0;z=M;U=Wr(D|0,h|0,-997805,-1)|0;V=M;S=Wr(D|0,h|0,136657,0)|0;y=M;h=Wr(D|0,h|0,-683901,-1)|0;O=In(h|0,M|0,T|0,O|0)|0;$=In(O|0,M|0,H|0,$|0)|0;m=Mn($|0,M|0,x|0,m|0)|0;x=M;$=Wr(t|0,d|0,666643,0)|0;k=In($|0,M|0,k&2097151|0,0)|0;$=M;H=Wr(t|0,d|0,470296,0)|0;H=In(W|0,u|0,H|0,M|0)|0;u=M;W=Wr(t|0,d|0,654183,0)|0;W=In(C|0,f|0,W|0,M|0)|0;f=M;C=Wr(t|0,d|0,-997805,-1)|0;C=In(c|0,z|0,C|0,M|0)|0;z=M;c=Wr(t|0,d|0,136657,0)|0;O=M;d=Wr(t|0,d|0,-683901,-1)|0;t=M;T=Wr(I|0,o|0,666643,0)|0;G=In(T|0,M|0,G&2097151|0,0)|0;T=M;h=Wr(I|0,o|0,470296,0)|0;h=In(k|0,$|0,h|0,M|0)|0;$=M;k=Wr(I|0,o|0,654183,0)|0;k=In(H|0,u|0,k|0,M|0)|0;u=M;H=Wr(I|0,o|0,-997805,-1)|0;H=In(W|0,f|0,H|0,M|0)|0;f=M;W=Wr(I|0,o|0,136657,0)|0;W=In(C|0,z|0,W|0,M|0)|0;z=M;o=Wr(I|0,o|0,-683901,-1)|0;I=M;P=In(Z|0,R|0,B|0,P|0)|0;K=Mn(P|0,M|0,N|0,K|0)|0;V=In(K|0,M|0,U|0,V|0)|0;O=In(V|0,M|0,c|0,O|0)|0;I=In(O|0,M|0,o|0,I|0)|0;o=M;O=Wr(J|0,i|0,666643,0)|0;Y=In(O|0,M|0,Y&2097151|0,0)|0;O=M;c=Wr(J|0,i|0,470296,0)|0;c=In(G|0,T|0,c|0,M|0)|0;T=M;G=Wr(J|0,i|0,654183,0)|0;G=In(h|0,$|0,G|0,M|0)|0;$=M;h=Wr(J|0,i|0,-997805,-1)|0;h=In(k|0,u|0,h|0,M|0)|0;u=M;k=Wr(J|0,i|0,136657,0)|0;k=In(H|0,f|0,k|0,M|0)|0;f=M;i=Wr(J|0,i|0,-683901,-1)|0;i=In(W|0,z|0,i|0,M|0)|0;z=M;W=Wr(X|0,A|0,666643,0)|0;J=M;H=Wr(X|0,A|0,470296,0)|0;V=M;U=Wr(X|0,A|0,654183,0)|0;K=M;N=Wr(X|0,A|0,-997805,-1)|0;P=M;B=Wr(X|0,A|0,136657,0)|0;R=M;A=Wr(X|0,A|0,-683901,-1)|0;A=In(k|0,f|0,A|0,M|0)|0;f=M;k=Wr(a|0,s|0,666643,0)|0;F=In(k|0,M|0,F&2097151|0,0)|0;k=M;X=Wr(a|0,s|0,470296,0)|0;Z=M;C=Wr(a|0,s|0,654183,0)|0;C=In(Y|0,O|0,C|0,M|0)|0;V=In(C|0,M|0,H|0,V|0)|0;H=M;C=Wr(a|0,s|0,-997805,-1)|0;O=M;Y=Wr(a|0,s|0,136657,0)|0;Y=In(G|0,$|0,Y|0,M|0)|0;P=In(Y|0,M|0,N|0,P|0)|0;N=M;s=Wr(a|0,s|0,-683901,-1)|0;a=M;Y=In(F|0,k|0,1048576,0)|0;Y=Hr(Y|0,M|0,21)|0;$=M;r=In(X|0,Z|0,r&2097151|0,0)|0;J=In(r|0,M|0,W|0,J|0)|0;J=In(J|0,M|0,Y|0,$|0)|0;W=M;$=cn(Y|0,$|0,21)|0;$=Mn(F|0,k|0,$|0,M|0)|0;k=M;F=In(V|0,H|0,1048576,0)|0;F=Hr(F|0,M|0,21)|0;Y=M;O=In(c|0,T|0,C|0,O|0)|0;K=In(O|0,M|0,U|0,K|0)|0;K=In(K|0,M|0,F|0,Y|0)|0;U=M;Y=cn(F|0,Y|0,21)|0;F=M;O=In(P|0,N|0,1048576,0)|0;O=Hr(O|0,M|0,21)|0;C=M;a=In(h|0,u|0,s|0,a|0)|0;R=In(a|0,M|0,B|0,R|0)|0;R=In(R|0,M|0,O|0,C|0)|0;B=M;C=cn(O|0,C|0,21)|0;O=M;a=In(A|0,f|0,1048576,0)|0;a=Hr(a|0,M|0,21)|0;s=M;z=In(i|0,z|0,a|0,s|0)|0;i=M;s=cn(a|0,s|0,21)|0;s=Mn(A|0,f|0,s|0,M|0)|0;f=M;A=In(I|0,o|0,1048576,0)|0;A=Hr(A|0,M|0,21)|0;a=M;p=In(S|0,y|0,l|0,p|0)|0;v=Mn(p|0,M|0,b|0,v|0)|0;t=In(v|0,M|0,d|0,t|0)|0;t=In(t|0,M|0,A|0,a|0)|0;d=M;a=cn(A|0,a|0,21)|0;a=Mn(I|0,o|0,a|0,M|0)|0;o=M;I=In(m|0,x|0,1048576,0)|0;I=Hr(I|0,M|0,21)|0;A=M;_=In(I|0,A|0,w|0,_|0)|0;w=M;A=cn(I|0,A|0,21)|0;A=Mn(m|0,x|0,A|0,M|0)|0;x=M;m=In(J|0,W|0,1048576,0)|0;m=Hr(m|0,M|0,21)|0;I=M;v=cn(m|0,I|0,21)|0;b=M;p=In(K|0,U|0,1048576,0)|0;p=Hr(p|0,M|0,21)|0;l=M;y=cn(p|0,l|0,21)|0;S=M;u=In(R|0,B|0,1048576,0)|0;u=Hr(u|0,M|0,21)|0;h=M;f=In(s|0,f|0,u|0,h|0)|0;s=M;h=cn(u|0,h|0,21)|0;u=M;T=In(z|0,i|0,1048576,0)|0;T=Hr(T|0,M|0,21)|0;c=M;o=In(a|0,o|0,T|0,c|0)|0;a=M;c=cn(T|0,c|0,21)|0;c=Mn(z|0,i|0,c|0,M|0)|0;i=M;z=In(t|0,d|0,1048576,0)|0;z=Hr(z|0,M|0,21)|0;T=M;x=In(A|0,x|0,z|0,T|0)|0;A=M;T=cn(z|0,T|0,21)|0;T=Mn(t|0,d|0,T|0,M|0)|0;d=M;t=In(_|0,w|0,1048576,0)|0;t=Hr(t|0,M|0,21)|0;z=M;r=cn(t|0,z|0,21)|0;r=Mn(_|0,w|0,r|0,M|0)|0;w=M;_=Wr(t|0,z|0,666643,0)|0;_=In($|0,k|0,_|0,M|0)|0;k=M;$=Wr(t|0,z|0,470296,0)|0;Z=M;X=Wr(t|0,z|0,654183,0)|0;G=M;D=Wr(t|0,z|0,-997805,-1)|0;L=M;q=Wr(t|0,z|0,136657,0)|0;j=M;z=Wr(t|0,z|0,-683901,-1)|0;t=M;g=Hr(_|0,k|0,21)|0;E=M;W=In($|0,Z|0,J|0,W|0)|0;b=Mn(W|0,M|0,v|0,b|0)|0;b=In(b|0,M|0,g|0,E|0)|0;v=M;E=cn(g|0,E|0,21)|0;E=Mn(_|0,k|0,E|0,M|0)|0;k=M;_=Hr(b|0,v|0,21)|0;g=M;H=In(X|0,G|0,V|0,H|0)|0;F=Mn(H|0,M|0,Y|0,F|0)|0;I=In(F|0,M|0,m|0,I|0)|0;I=In(I|0,M|0,_|0,g|0)|0;m=M;g=cn(_|0,g|0,21)|0;g=Mn(b|0,v|0,g|0,M|0)|0;v=M;b=Hr(I|0,m|0,21)|0;_=M;L=In(K|0,U|0,D|0,L|0)|0;S=Mn(L|0,M|0,y|0,S|0)|0;S=In(S|0,M|0,b|0,_|0)|0;y=M;_=cn(b|0,_|0,21)|0;_=Mn(I|0,m|0,_|0,M|0)|0;m=M;I=Hr(S|0,y|0,21)|0;b=M;N=In(q|0,j|0,P|0,N|0)|0;O=Mn(N|0,M|0,C|0,O|0)|0;l=In(O|0,M|0,p|0,l|0)|0;l=In(l|0,M|0,I|0,b|0)|0;p=M;b=cn(I|0,b|0,21)|0;b=Mn(S|0,y|0,b|0,M|0)|0;y=M;S=Hr(l|0,p|0,21)|0;I=M;t=In(R|0,B|0,z|0,t|0)|0;u=Mn(t|0,M|0,h|0,u|0)|0;u=In(u|0,M|0,S|0,I|0)|0;h=M;I=cn(S|0,I|0,21)|0;I=Mn(l|0,p|0,I|0,M|0)|0;p=M;l=Hr(u|0,h|0,21)|0;S=M;s=In(f|0,s|0,l|0,S|0)|0;f=M;S=cn(l|0,S|0,21)|0;S=Mn(u|0,h|0,S|0,M|0)|0;h=M;u=Hr(s|0,f|0,21)|0;l=M;i=In(u|0,l|0,c|0,i|0)|0;c=M;l=cn(u|0,l|0,21)|0;l=Mn(s|0,f|0,l|0,M|0)|0;f=M;s=Hr(i|0,c|0,21)|0;u=M;a=In(o|0,a|0,s|0,u|0)|0;o=M;u=cn(s|0,u|0,21)|0;u=Mn(i|0,c|0,u|0,M|0)|0;c=M;i=Hr(a|0,o|0,21)|0;s=M;d=In(i|0,s|0,T|0,d|0)|0;T=M;s=cn(i|0,s|0,21)|0;s=Mn(a|0,o|0,s|0,M|0)|0;o=M;a=Hr(d|0,T|0,21)|0;i=M;A=In(x|0,A|0,a|0,i|0)|0;x=M;i=cn(a|0,i|0,21)|0;i=Mn(d|0,T|0,i|0,M|0)|0;T=M;d=Hr(A|0,x|0,21)|0;a=M;w=In(d|0,a|0,r|0,w|0)|0;r=M;a=cn(d|0,a|0,21)|0;a=Mn(A|0,x|0,a|0,M|0)|0;x=M;A=Hr(w|0,r|0,21)|0;d=M;t=cn(A|0,d|0,21)|0;t=Mn(w|0,r|0,t|0,M|0)|0;r=M;w=Wr(A|0,d|0,666643,0)|0;k=In(w|0,M|0,E|0,k|0)|0;E=M;w=Wr(A|0,d|0,470296,0)|0;w=In(g|0,v|0,w|0,M|0)|0;v=M;g=Wr(A|0,d|0,654183,0)|0;g=In(_|0,m|0,g|0,M|0)|0;m=M;_=Wr(A|0,d|0,-997805,-1)|0;_=In(b|0,y|0,_|0,M|0)|0;y=M;b=Wr(A|0,d|0,136657,0)|0;b=In(I|0,p|0,b|0,M|0)|0;p=M;d=Wr(A|0,d|0,-683901,-1)|0;d=In(S|0,h|0,d|0,M|0)|0;h=M;S=Hr(k|0,E|0,21)|0;A=M;v=In(w|0,v|0,S|0,A|0)|0;w=M;A=cn(S|0,A|0,21)|0;A=Mn(k|0,E|0,A|0,M|0)|0;E=M;k=Hr(v|0,w|0,21)|0;S=M;m=In(g|0,m|0,k|0,S|0)|0;g=M;S=cn(k|0,S|0,21)|0;S=Mn(v|0,w|0,S|0,M|0)|0;w=M;v=Hr(m|0,g|0,21)|0;k=M;y=In(_|0,y|0,v|0,k|0)|0;_=M;k=cn(v|0,k|0,21)|0;k=Mn(m|0,g|0,k|0,M|0)|0;g=M;m=Hr(y|0,_|0,21)|0;v=M;p=In(b|0,p|0,m|0,v|0)|0;b=M;v=cn(m|0,v|0,21)|0;v=Mn(y|0,_|0,v|0,M|0)|0;_=M;y=Hr(p|0,b|0,21)|0;m=M;h=In(d|0,h|0,y|0,m|0)|0;d=M;m=cn(y|0,m|0,21)|0;m=Mn(p|0,b|0,m|0,M|0)|0;b=M;p=Hr(h|0,d|0,21)|0;y=M;f=In(p|0,y|0,l|0,f|0)|0;l=M;y=cn(p|0,y|0,21)|0;y=Mn(h|0,d|0,y|0,M|0)|0;d=M;h=Hr(f|0,l|0,21)|0;p=M;c=In(h|0,p|0,u|0,c|0)|0;u=M;p=cn(h|0,p|0,21)|0;p=Mn(f|0,l|0,p|0,M|0)|0;l=M;f=Hr(c|0,u|0,21)|0;h=M;o=In(f|0,h|0,s|0,o|0)|0;s=M;h=cn(f|0,h|0,21)|0;h=Mn(c|0,u|0,h|0,M|0)|0;u=M;c=Hr(o|0,s|0,21)|0;f=M;T=In(c|0,f|0,i|0,T|0)|0;i=M;f=cn(c|0,f|0,21)|0;f=Mn(o|0,s|0,f|0,M|0)|0;s=M;o=Hr(T|0,i|0,21)|0;c=M;x=In(o|0,c|0,a|0,x|0)|0;a=M;c=cn(o|0,c|0,21)|0;c=Mn(T|0,i|0,c|0,M|0)|0;i=M;T=Hr(x|0,a|0,21)|0;o=M;r=In(T|0,o|0,t|0,r|0)|0;t=M;o=cn(T|0,o|0,21)|0;o=Mn(x|0,a|0,o|0,M|0)|0;a=M;n[e>>0]=A;x=fn(A|0,E|0,8)|0;n[e+1>>0]=x;E=fn(A|0,E|0,16)|0;A=M;x=cn(S|0,w|0,5)|0;n[e+2>>0]=x|E;E=fn(S|0,w|0,3)|0;n[e+3>>0]=E;E=fn(S|0,w|0,11)|0;n[e+4>>0]=E;w=fn(S|0,w|0,19)|0;S=M;E=cn(k|0,g|0,2)|0;n[e+5>>0]=E|w;w=fn(k|0,g|0,6)|0;n[e+6>>0]=w;g=fn(k|0,g|0,14)|0;k=M;w=cn(v|0,_|0,7)|0;n[e+7>>0]=w|g;g=fn(v|0,_|0,1)|0;n[e+8>>0]=g;g=fn(v|0,_|0,9)|0;n[e+9>>0]=g;_=fn(v|0,_|0,17)|0;v=M;g=cn(m|0,b|0,4)|0;n[e+10>>0]=g|_;_=fn(m|0,b|0,4)|0;n[e+11>>0]=_;_=fn(m|0,b|0,12)|0;n[e+12>>0]=_;b=fn(m|0,b|0,20)|0;m=M;_=cn(y|0,d|0,1)|0;n[e+13>>0]=_|b;b=fn(y|0,d|0,7)|0;n[e+14>>0]=b;d=fn(y|0,d|0,15)|0;y=M;b=cn(p|0,l|0,6)|0;n[e+15>>0]=b|d;d=fn(p|0,l|0,2)|0;n[e+16>>0]=d;d=fn(p|0,l|0,10)|0;n[e+17>>0]=d;l=fn(p|0,l|0,18)|0;p=M;d=cn(h|0,u|0,3)|0;n[e+18>>0]=d|l;l=fn(h|0,u|0,5)|0;n[e+19>>0]=l;u=fn(h|0,u|0,13)|0;n[e+20>>0]=u;n[e+21>>0]=f;u=fn(f|0,s|0,8)|0;n[e+22>>0]=u;s=fn(f|0,s|0,16)|0;f=M;u=cn(c|0,i|0,5)|0;n[e+23>>0]=u|s;s=fn(c|0,i|0,3)|0;n[e+24>>0]=s;s=fn(c|0,i|0,11)|0;n[e+25>>0]=s;i=fn(c|0,i|0,19)|0;c=M;s=cn(o|0,a|0,2)|0;n[e+26>>0]=s|i;i=fn(o|0,a|0,6)|0;n[e+27>>0]=i;a=fn(o|0,a|0,14)|0;o=M;i=cn(r|0,t|0,7)|0;n[e+28>>0]=a|i;i=fn(r|0,t|0,1)|0;n[e+29>>0]=i;i=fn(r|0,t|0,9)|0;n[e+30>>0]=i;t=fn(r|0,t|0,17)|0;n[e+31>>0]=t;return}function fe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,ye=0,_e=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Te=0,Ie=0,ze=0,Be=0,Re=0,Oe=0,Ce=0,Ne=0,Pe=0,je=0,qe=0,Le=0,De=0,Ue=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Je=0,Ze=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,ft=0,ht=0,lt=0,dt=0,pt=0,bt=0,yt=0,_t=0,mt=0,gt=0,vt=0,wt=0,kt=0,Et=0,St=0,xt=0,At=0,Mt=0,Tt=0,It=0,zt=0,Bt=0,Rt=0,Ot=0,Ct=0,Nt=0,Pt=0,jt=0,qt=0,Lt=0,Dt=0,Ut=0,Kt=0,Ft=0,Yt=0,Ht=0,Vt=0,Gt=0,Xt=0,Wt=0,Jt=0,Zt=0,$t=0,Qt=0,er=0,tr=0,rr=0,nr=0,ir=0,ar=0,or=0,sr=0,cr=0,ur=0,fr=0,hr=0,lr=0,dr=0,pr=0,br=0,yr=0,_r=0,mr=0,gr=0,vr=0,wr=0,kr=0,Er=0,Sr=0,xr=0,Ar=0,Mr=0,Tr=0,Ir=0,zr=0,Br=0,Rr=0,Or=0,Cr=0,Nr=0,Pr=0,jr=0,qr=0,Lr=0,Dr=0,Ur=0;p=a[t>>2]|0;d=a[t+4>>2]|0;f=a[t+8>>2]|0;ae=a[t+12>>2]|0;L=a[t+16>>2]|0;q=a[t+20>>2]|0;o=a[t+24>>2]|0;ie=a[t+28>>2]|0;j=a[t+32>>2]|0;y=a[t+36>>2]|0;C=a[r>>2]|0;Dr=a[r+4>>2]|0;rr=a[r+8>>2]|0;mt=a[r+12>>2]|0;Ce=a[r+16>>2]|0;ur=a[r+20>>2]|0;It=a[r+24>>2]|0;He=a[r+28>>2]|0;oe=a[r+32>>2]|0;Ur=a[r+36>>2]|0;qr=Wr(C|0,((C|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;jr=M;kr=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;wr=M;vt=Wr(rr|0,((rr|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;gt=M;Pe=Wr(mt|0,((mt|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Ne=M;lr=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;hr=M;Rt=Wr(ur|0,((ur|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Bt=M;Xe=Wr(It|0,((It|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;Ge=M;ue=Wr(He|0,((He|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;ce=M;U=Wr(oe|0,((oe|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;D=M;p=Wr(Ur|0,((Ur|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;h=M;nr=Wr(C|0,((C|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;ir=M;St=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;Et=M;qe=Wr(rr|0,((rr|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;je=M;pr=Wr(mt|0,((mt|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;dr=M;Ct=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;Ot=M;Je=Wr(ur|0,((ur|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;We=M;he=Wr(It|0,((It|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;fe=M;F=Wr(He|0,((He|0)<0)<<31>>31|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;K=M;g=Wr(oe|0,((oe|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;m=M;r=((Ur*19|0)<0)<<31>>31;d=Wr(Ur*19|0,r|0,d<<1|0,((d<<1|0)<0)<<31>>31|0)|0;b=M;kt=Wr(C|0,((C|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;wt=M;Ke=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Ue=M;yr=Wr(rr|0,((rr|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;br=M;Pt=Wr(mt|0,((mt|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Nt=M;$e=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Ze=M;de=Wr(ur|0,((ur|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;le=M;H=Wr(It|0,((It|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Y=M;w=Wr(He|0,((He|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;v=M;se=((oe*19|0)<0)<<31>>31;Sr=Wr(oe*19|0,se|0,f|0,((f|0)<0)<<31>>31|0)|0;Er=M;f=Wr(Ur*19|0,r|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;De=Wr(C|0,((C|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;Le=M;vr=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;gr=M;qt=Wr(rr|0,((rr|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;jt=M;et=Wr(mt|0,((mt|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;Qe=M;be=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;pe=M;G=Wr(ur|0,((ur|0)<0)<<31>>31|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;V=M;E=Wr(It|0,((It|0)<0)<<31>>31|0,ae|0,((ae|0)<0)<<31>>31|0)|0;k=M;Ve=((He*19|0)<0)<<31>>31;Ar=Wr(He*19|0,Ve|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;xr=M;Yt=Wr(oe*19|0,se|0,ae|0,((ae|0)<0)<<31>>31|0)|0;Ft=M;ae=Wr(Ur*19|0,r|0,ae<<1|0,((ae<<1|0)<0)<<31>>31|0)|0;i=M;mr=Wr(C|0,((C|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;_r=M;Kt=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;Ut=M;rt=Wr(rr|0,((rr|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;tt=M;_e=Wr(mt|0,((mt|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;ye=M;W=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;X=M;x=Wr(ur|0,((ur|0)<0)<<31>>31|0,L|0,((L|0)<0)<<31>>31|0)|0;S=M;zt=((It*19|0)<0)<<31>>31;Tr=Wr(It*19|0,zt|0,L|0,((L|0)<0)<<31>>31|0)|0;Mr=M;Vt=Wr(He*19|0,Ve|0,L|0,((L|0)<0)<<31>>31|0)|0;Ht=M;ct=Wr(oe*19|0,se|0,L|0,((L|0)<0)<<31>>31|0)|0;st=M;L=Wr(Ur*19|0,r|0,L|0,((L|0)<0)<<31>>31|0)|0;n=M;Dt=Wr(C|0,((C|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;Lt=M;ot=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,q<<1|0,((q<<1|0)<0)<<31>>31|0)|0;at=M;ge=Wr(rr|0,((rr|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;me=M;Z=Wr(mt|0,((mt|0)<0)<<31>>31|0,q<<1|0,((q<<1|0)<0)<<31>>31|0)|0;J=M;T=Wr(Ce|0,((Ce|0)<0)<<31>>31|0,q|0,((q|0)<0)<<31>>31|0)|0;A=M;fr=((ur*19|0)<0)<<31>>31;zr=Wr(ur*19|0,fr|0,q<<1|0,((q<<1|0)<0)<<31>>31|0)|0;Ir=M;Xt=Wr(It*19|0,zt|0,q|0,((q|0)<0)<<31>>31|0)|0;Gt=M;ft=Wr(He*19|0,Ve|0,q<<1|0,((q<<1|0)<0)<<31>>31|0)|0;ut=M;Ae=Wr(oe*19|0,se|0,q|0,((q|0)<0)<<31>>31|0)|0;xe=M;t=Wr(Ur*19|0,r|0,q<<1|0,((q<<1|0)<0)<<31>>31|0)|0;q=M;it=Wr(C|0,((C|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;nt=M;Ee=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;ke=M;Q=Wr(rr|0,((rr|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;$=M;z=Wr(mt|0,((mt|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;I=M;Rr=Wr(Ce*19|0,((Ce*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;Br=M;Jt=Wr(ur*19|0,fr|0,o|0,((o|0)<0)<<31>>31|0)|0;Wt=M;lt=Wr(It*19|0,zt|0,o|0,((o|0)<0)<<31>>31|0)|0;ht=M;Te=Wr(He*19|0,Ve|0,o|0,((o|0)<0)<<31>>31|0)|0;Me=M;l=Wr(oe*19|0,se|0,o|0,((o|0)<0)<<31>>31|0)|0;_=M;o=Wr(Ur*19|0,r|0,o|0,((o|0)<0)<<31>>31|0)|0;Se=M;we=Wr(C|0,((C|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;ve=M;ne=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;re=M;R=Wr(rr|0,((rr|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;B=M;Cr=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;Or=M;$t=Wr(Ce*19|0,((Ce*19|0)<0)<<31>>31|0,ie|0,((ie|0)<0)<<31>>31|0)|0;Zt=M;pt=Wr(ur*19|0,fr|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;dt=M;ze=Wr(It*19|0,zt|0,ie|0,((ie|0)<0)<<31>>31|0)|0;Ie=M;or=Wr(He*19|0,Ve|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;ar=M;At=Wr(oe*19|0,se|0,ie|0,((ie|0)<0)<<31>>31|0)|0;xt=M;ie=Wr(Ur*19|0,r|0,ie<<1|0,((ie<<1|0)<0)<<31>>31|0)|0;c=M;te=Wr(C|0,((C|0)<0)<<31>>31|0,j|0,((j|0)<0)<<31>>31|0)|0;ee=M;P=Wr(Dr|0,((Dr|0)<0)<<31>>31|0,j|0,((j|0)<0)<<31>>31|0)|0;N=M;Pr=Wr(rr*19|0,((rr*19|0)<0)<<31>>31|0,j|0,((j|0)<0)<<31>>31|0)|0;Nr=M;er=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,j|0,((j|0)<0)<<31>>31|0)|0;Qt=M;yt=Wr(Ce*19|0,((Ce*19|0)<0)<<31>>31|0,j|0,((j|0)<0)<<31>>31|0)|0;bt=M;Re=Wr(ur*19|0,fr|0,j|0,((j|0)<0)<<31>>31|0)|0;Be=M;cr=Wr(It*19|0,zt|0,j|0,((j|0)<0)<<31>>31|0)|0;sr=M;Tt=Wr(He*19|0,Ve|0,j|0,((j|0)<0)<<31>>31|0)|0;Mt=M;Ye=Wr(oe*19|0,se|0,j|0,((j|0)<0)<<31>>31|0)|0;Fe=M;j=Wr(Ur*19|0,r|0,j|0,((j|0)<0)<<31>>31|0)|0;s=M;C=Wr(C|0,((C|0)<0)<<31>>31|0,y|0,((y|0)<0)<<31>>31|0)|0;O=M;Dr=Wr(Dr*19|0,((Dr*19|0)<0)<<31>>31|0,y<<1|0,((y<<1|0)<0)<<31>>31|0)|0;Lr=M;rr=Wr(rr*19|0,((rr*19|0)<0)<<31>>31|0,y|0,((y|0)<0)<<31>>31|0)|0;tr=M;mt=Wr(mt*19|0,((mt*19|0)<0)<<31>>31|0,y<<1|0,((y<<1|0)<0)<<31>>31|0)|0;_t=M;Ce=Wr(Ce*19|0,((Ce*19|0)<0)<<31>>31|0,y|0,((y|0)<0)<<31>>31|0)|0;Oe=M;fr=Wr(ur*19|0,fr|0,y<<1|0,((y<<1|0)<0)<<31>>31|0)|0;ur=M;zt=Wr(It*19|0,zt|0,y|0,((y|0)<0)<<31>>31|0)|0;It=M;Ve=Wr(He*19|0,Ve|0,y<<1|0,((y<<1|0)<0)<<31>>31|0)|0;He=M;se=Wr(oe*19|0,se|0,y|0,((y|0)<0)<<31>>31|0)|0;oe=M;y=Wr(Ur*19|0,r|0,y<<1|0,((y<<1|0)<0)<<31>>31|0)|0;r=M;jr=In(Dr|0,Lr|0,qr|0,jr|0)|0;Nr=In(jr|0,M|0,Pr|0,Nr|0)|0;Or=In(Nr|0,M|0,Cr|0,Or|0)|0;Br=In(Or|0,M|0,Rr|0,Br|0)|0;Ir=In(Br|0,M|0,zr|0,Ir|0)|0;Mr=In(Ir|0,M|0,Tr|0,Mr|0)|0;xr=In(Mr|0,M|0,Ar|0,xr|0)|0;Er=In(xr|0,M|0,Sr|0,Er|0)|0;b=In(Er|0,M|0,d|0,b|0)|0;d=M;ir=In(kr|0,wr|0,nr|0,ir|0)|0;nr=M;_r=In(vr|0,gr|0,mr|0,_r|0)|0;br=In(_r|0,M|0,yr|0,br|0)|0;dr=In(br|0,M|0,pr|0,dr|0)|0;hr=In(dr|0,M|0,lr|0,hr|0)|0;ur=In(hr|0,M|0,fr|0,ur|0)|0;sr=In(ur|0,M|0,cr|0,sr|0)|0;ar=In(sr|0,M|0,or|0,ar|0)|0;_=In(ar|0,M|0,l|0,_|0)|0;q=In(_|0,M|0,t|0,q|0)|0;t=M;_=In(b|0,d|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;l=M;tr=In(ir|0,nr|0,rr|0,tr|0)|0;Qt=In(tr|0,M|0,er|0,Qt|0)|0;Zt=In(Qt|0,M|0,$t|0,Zt|0)|0;Wt=In(Zt|0,M|0,Jt|0,Wt|0)|0;Gt=In(Wt|0,M|0,Xt|0,Gt|0)|0;Ht=In(Gt|0,M|0,Vt|0,Ht|0)|0;Ft=In(Ht|0,M|0,Yt|0,Ft|0)|0;u=In(Ft|0,M|0,f|0,u|0)|0;u=In(u|0,M|0,_|0,l|0)|0;f=M;l=cn(_|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=In(q|0,t|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;_=M;Lt=In(Kt|0,Ut|0,Dt|0,Lt|0)|0;jt=In(Lt|0,M|0,qt|0,jt|0)|0;Nt=In(jt|0,M|0,Pt|0,Nt|0)|0;Ot=In(Nt|0,M|0,Ct|0,Ot|0)|0;Bt=In(Ot|0,M|0,Rt|0,Bt|0)|0;It=In(Bt|0,M|0,zt|0,It|0)|0;Mt=In(It|0,M|0,Tt|0,Mt|0)|0;xt=In(Mt|0,M|0,At|0,xt|0)|0;Se=In(xt|0,M|0,o|0,Se|0)|0;Se=In(Se|0,M|0,b|0,_|0)|0;o=M;_=cn(b|0,_|0,26)|0;_=Mn(q|0,t|0,_|0,M|0)|0;t=M;q=In(u|0,f|0,16777216,0)|0;q=Hr(q|0,M|0,25)|0;b=M;wt=In(St|0,Et|0,kt|0,wt|0)|0;gt=In(wt|0,M|0,vt|0,gt|0)|0;_t=In(gt|0,M|0,mt|0,_t|0)|0;bt=In(_t|0,M|0,yt|0,bt|0)|0;dt=In(bt|0,M|0,pt|0,dt|0)|0;ht=In(dt|0,M|0,lt|0,ht|0)|0;ut=In(ht|0,M|0,ft|0,ut|0)|0;st=In(ut|0,M|0,ct|0,st|0)|0;i=In(st|0,M|0,ae|0,i|0)|0;i=In(i|0,M|0,q|0,b|0)|0;ae=M;b=cn(q|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=In(Se|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;q=M;nt=In(ot|0,at|0,it|0,nt|0)|0;tt=In(nt|0,M|0,rt|0,tt|0)|0;Qe=In(tt|0,M|0,et|0,Qe|0)|0;Ze=In(Qe|0,M|0,$e|0,Ze|0)|0;We=In(Ze|0,M|0,Je|0,We|0)|0;Ge=In(We|0,M|0,Xe|0,Ge|0)|0;He=In(Ge|0,M|0,Ve|0,He|0)|0;Fe=In(He|0,M|0,Ye|0,Fe|0)|0;c=In(Fe|0,M|0,ie|0,c|0)|0;c=In(c|0,M|0,u|0,q|0)|0;ie=M;q=cn(u|0,q|0,25)|0;q=Mn(Se|0,o|0,q|0,M|0)|0;o=M;Se=In(i|0,ae|0,33554432,0)|0;Se=Hr(Se|0,M|0,26)|0;u=M;Le=In(Ke|0,Ue|0,De|0,Le|0)|0;je=In(Le|0,M|0,qe|0,je|0)|0;Ne=In(je|0,M|0,Pe|0,Ne|0)|0;Oe=In(Ne|0,M|0,Ce|0,Oe|0)|0;Be=In(Oe|0,M|0,Re|0,Be|0)|0;Ie=In(Be|0,M|0,ze|0,Ie|0)|0;Me=In(Ie|0,M|0,Te|0,Me|0)|0;xe=In(Me|0,M|0,Ae|0,xe|0)|0;n=In(xe|0,M|0,L|0,n|0)|0;n=In(n|0,M|0,Se|0,u|0)|0;L=M;u=cn(Se|0,u|0,26)|0;u=Mn(i|0,ae|0,u|0,M|0)|0;ae=In(c|0,ie|0,33554432,0)|0;ae=Hr(ae|0,M|0,26)|0;i=M;ve=In(Ee|0,ke|0,we|0,ve|0)|0;me=In(ve|0,M|0,ge|0,me|0)|0;ye=In(me|0,M|0,_e|0,ye|0)|0;pe=In(ye|0,M|0,be|0,pe|0)|0;le=In(pe|0,M|0,de|0,le|0)|0;fe=In(le|0,M|0,he|0,fe|0)|0;ce=In(fe|0,M|0,ue|0,ce|0)|0;oe=In(ce|0,M|0,se|0,oe|0)|0;s=In(oe|0,M|0,j|0,s|0)|0;s=In(s|0,M|0,ae|0,i|0)|0;j=M;i=cn(ae|0,i|0,26)|0;i=Mn(c|0,ie|0,i|0,M|0)|0;ie=In(n|0,L|0,16777216,0)|0;ie=Hr(ie|0,M|0,25)|0;c=M;t=In(ie|0,c|0,_|0,t|0)|0;_=M;c=cn(ie|0,c|0,25)|0;c=Mn(n|0,L|0,c|0,M|0)|0;L=In(s|0,j|0,16777216,0)|0;L=Hr(L|0,M|0,25)|0;n=M;ee=In(ne|0,re|0,te|0,ee|0)|0;$=In(ee|0,M|0,Q|0,$|0)|0;J=In($|0,M|0,Z|0,J|0)|0;X=In(J|0,M|0,W|0,X|0)|0;V=In(X|0,M|0,G|0,V|0)|0;Y=In(V|0,M|0,H|0,Y|0)|0;K=In(Y|0,M|0,F|0,K|0)|0;D=In(K|0,M|0,U|0,D|0)|0;r=In(D|0,M|0,y|0,r|0)|0;r=In(r|0,M|0,L|0,n|0)|0;y=M;n=cn(L|0,n|0,25)|0;n=Mn(s|0,j|0,n|0,M|0)|0;j=In(t|0,_|0,33554432,0)|0;j=Hr(j|0,M|0,26)|0;s=M;o=In(q|0,o|0,j|0,s|0)|0;s=cn(j|0,s|0,26)|0;s=Mn(t|0,_|0,s|0,M|0)|0;_=In(r|0,y|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;t=M;O=In(P|0,N|0,C|0,O|0)|0;B=In(O|0,M|0,R|0,B|0)|0;I=In(B|0,M|0,z|0,I|0)|0;A=In(I|0,M|0,T|0,A|0)|0;S=In(A|0,M|0,x|0,S|0)|0;k=In(S|0,M|0,E|0,k|0)|0;v=In(k|0,M|0,w|0,v|0)|0;m=In(v|0,M|0,g|0,m|0)|0;h=In(m|0,M|0,p|0,h|0)|0;h=In(h|0,M|0,_|0,t|0)|0;p=M;t=cn(_|0,t|0,26)|0;t=Mn(r|0,y|0,t|0,M|0)|0;y=In(h|0,p|0,16777216,0)|0;y=Hr(y|0,M|0,25)|0;r=M;_=Wr(y|0,r|0,19,0)|0;d=In(_|0,M|0,l|0,d|0)|0;l=M;r=cn(y|0,r|0,25)|0;r=Mn(h|0,p|0,r|0,M|0)|0;p=In(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=In(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=t;a[e+36>>2]=r;return}function he(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,ye=0,_e=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Te=0,Ie=0,ze=0,Be=0,Re=0,Oe=0,Ce=0,Ne=0,Pe=0,je=0,qe=0,Le=0,De=0,Ue=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Je=0,Ze=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0;h=a[t>>2]|0;d=a[t+4>>2]|0;f=a[t+8>>2]|0;i=a[t+12>>2]|0;v=a[t+16>>2]|0;g=a[t+20>>2]|0;o=a[t+24>>2]|0;w=a[t+28>>2]|0;m=a[t+32>>2]|0;y=a[t+36>>2]|0;rt=Wr(h|0,((h|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;tt=M;p=((h<<1|0)<0)<<31>>31;Ve=Wr(h<<1|0,p|0,d|0,((d|0)<0)<<31>>31|0)|0;He=M;De=Wr(f|0,((f|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Le=M;ze=Wr(i|0,((i|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Ie=M;me=Wr(v|0,((v|0)<0)<<31>>31|0,h<<1|0,p|0)|0;_e=M;ce=Wr(g|0,((g|0)<0)<<31>>31|0,h<<1|0,p|0)|0;se=M;$=Wr(o|0,((o|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Z=M;K=Wr(w|0,((w|0)<0)<<31>>31|0,h<<1|0,p|0)|0;U=M;R=Wr(m|0,((m|0)<0)<<31>>31|0,h<<1|0,p|0)|0;B=M;p=Wr(y|0,((y|0)<0)<<31>>31|0,h<<1|0,p|0)|0;h=M;b=((d<<1|0)<0)<<31>>31;qe=Wr(d<<1|0,b|0,d|0,((d|0)<0)<<31>>31|0)|0;je=M;Te=Wr(d<<1|0,b|0,f|0,((f|0)<0)<<31>>31|0)|0;Me=M;k=((i<<1|0)<0)<<31>>31;ke=Wr(i<<1|0,k|0,d<<1|0,b|0)|0;we=M;le=Wr(v|0,((v|0)<0)<<31>>31|0,d<<1|0,b|0)|0;he=M;ee=Wr(g<<1|0,((g<<1|0)<0)<<31>>31|0,d<<1|0,b|0)|0;Q=M;Y=Wr(o|0,((o|0)<0)<<31>>31|0,d<<1|0,b|0)|0;F=M;C=Wr(w<<1|0,((w<<1|0)<0)<<31>>31|0,d<<1|0,b|0)|0;O=M;l=Wr(m|0,((m|0)<0)<<31>>31|0,d<<1|0,b|0)|0;_=M;t=((y*38|0)<0)<<31>>31;b=Wr(y*38|0,t|0,d<<1|0,b|0)|0;d=M;ve=Wr(f|0,((f|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;ge=M;fe=Wr(f<<1|0,((f<<1|0)<0)<<31>>31|0,i|0,((i|0)<0)<<31>>31|0)|0;ue=M;re=Wr(v|0,((v|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;te=M;X=Wr(g|0,((g|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;G=M;D=Wr(o|0,((o|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;L=M;x=Wr(w|0,((w|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;S=M;J=((m*19|0)<0)<<31>>31;Je=Wr(m*19|0,J|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;We=M;f=Wr(y*38|0,t|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;ie=Wr(i<<1|0,k|0,i|0,((i|0)<0)<<31>>31|0)|0;ne=M;V=Wr(i<<1|0,k|0,v|0,((v|0)<0)<<31>>31|0)|0;H=M;P=Wr(g<<1|0,((g<<1|0)<0)<<31>>31|0,i<<1|0,k|0)|0;N=M;z=Wr(o|0,((o|0)<0)<<31>>31|0,i<<1|0,k|0)|0;I=M;ye=((w*38|0)<0)<<31>>31;$e=Wr(w*38|0,ye|0,i<<1|0,k|0)|0;Ze=M;Ke=Wr(m*19|0,J|0,i<<1|0,k|0)|0;Ue=M;k=Wr(y*38|0,t|0,i<<1|0,k|0)|0;i=M;q=Wr(v|0,((v|0)<0)<<31>>31|0,v|0,((v|0)<0)<<31>>31|0)|0;j=M;T=Wr(v<<1|0,((v<<1|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;A=M;et=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,v<<1|0,((v<<1|0)<0)<<31>>31|0)|0;Qe=M;Ye=Wr(w*38|0,ye|0,v|0,((v|0)<0)<<31>>31|0)|0;Fe=M;Re=Wr(m*19|0,J|0,v<<1|0,((v<<1|0)<0)<<31>>31|0)|0;Be=M;v=Wr(y*38|0,t|0,v|0,((v|0)<0)<<31>>31|0)|0;n=M;it=Wr(g*38|0,((g*38|0)<0)<<31>>31|0,g|0,((g|0)<0)<<31>>31|0)|0;nt=M;Xe=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Ge=M;Ce=Wr(w*38|0,ye|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Oe=M;Se=Wr(m*19|0,J|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;Ee=M;g=Wr(y*38|0,t|0,g<<1|0,((g<<1|0)<0)<<31>>31|0)|0;r=M;Pe=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;Ne=M;Ae=Wr(w*38|0,ye|0,o|0,((o|0)<0)<<31>>31|0)|0;xe=M;pe=Wr(m*19|0,J|0,o<<1|0,((o<<1|0)<0)<<31>>31|0)|0;de=M;o=Wr(y*38|0,t|0,o|0,((o|0)<0)<<31>>31|0)|0;E=M;ye=Wr(w*38|0,ye|0,w|0,((w|0)<0)<<31>>31|0)|0;be=M;oe=Wr(m*19|0,J|0,w<<1|0,((w<<1|0)<0)<<31>>31|0)|0;ae=M;w=Wr(y*38|0,t|0,w<<1|0,((w<<1|0)<0)<<31>>31|0)|0;c=M;J=Wr(m*19|0,J|0,m|0,((m|0)<0)<<31>>31|0)|0;W=M;m=Wr(y*38|0,t|0,m|0,((m|0)<0)<<31>>31|0)|0;s=M;y=Wr(y*38|0,t|0,y|0,((y|0)<0)<<31>>31|0)|0;t=M;tt=In(it|0,nt|0,rt|0,tt|0)|0;Qe=In(tt|0,M|0,et|0,Qe|0)|0;Ze=In(Qe|0,M|0,$e|0,Ze|0)|0;We=In(Ze|0,M|0,Je|0,We|0)|0;d=In(We|0,M|0,b|0,d|0)|0;b=M;He=In(Xe|0,Ge|0,Ve|0,He|0)|0;Fe=In(He|0,M|0,Ye|0,Fe|0)|0;Ue=In(Fe|0,M|0,Ke|0,Ue|0)|0;u=In(Ue|0,M|0,f|0,u|0)|0;f=M;je=In(De|0,Le|0,qe|0,je|0)|0;Ne=In(je|0,M|0,Pe|0,Ne|0)|0;Oe=In(Ne|0,M|0,Ce|0,Oe|0)|0;Be=In(Oe|0,M|0,Re|0,Be|0)|0;i=In(Be|0,M|0,k|0,i|0)|0;k=M;Me=In(ze|0,Ie|0,Te|0,Me|0)|0;xe=In(Me|0,M|0,Ae|0,xe|0)|0;Ee=In(xe|0,M|0,Se|0,Ee|0)|0;n=In(Ee|0,M|0,v|0,n|0)|0;v=M;ge=In(ke|0,we|0,ve|0,ge|0)|0;_e=In(ge|0,M|0,me|0,_e|0)|0;be=In(_e|0,M|0,ye|0,be|0)|0;de=In(be|0,M|0,pe|0,de|0)|0;r=In(de|0,M|0,g|0,r|0)|0;g=M;ue=In(le|0,he|0,fe|0,ue|0)|0;se=In(ue|0,M|0,ce|0,se|0)|0;ae=In(se|0,M|0,oe|0,ae|0)|0;E=In(ae|0,M|0,o|0,E|0)|0;o=M;te=In(ie|0,ne|0,re|0,te|0)|0;Q=In(te|0,M|0,ee|0,Q|0)|0;Z=In(Q|0,M|0,$|0,Z|0)|0;W=In(Z|0,M|0,J|0,W|0)|0;c=In(W|0,M|0,w|0,c|0)|0;w=M;H=In(X|0,G|0,V|0,H|0)|0;F=In(H|0,M|0,Y|0,F|0)|0;U=In(F|0,M|0,K|0,U|0)|0;s=In(U|0,M|0,m|0,s|0)|0;m=M;j=In(D|0,L|0,q|0,j|0)|0;N=In(j|0,M|0,P|0,N|0)|0;O=In(N|0,M|0,C|0,O|0)|0;B=In(O|0,M|0,R|0,B|0)|0;t=In(B|0,M|0,y|0,t|0)|0;y=M;A=In(z|0,I|0,T|0,A|0)|0;S=In(A|0,M|0,x|0,S|0)|0;_=In(S|0,M|0,l|0,_|0)|0;h=In(_|0,M|0,p|0,h|0)|0;p=M;b=cn(d|0,b|0,1)|0;d=M;f=cn(u|0,f|0,1)|0;u=M;k=cn(i|0,k|0,1)|0;i=M;v=cn(n|0,v|0,1)|0;n=M;g=cn(r|0,g|0,1)|0;r=M;o=cn(E|0,o|0,1)|0;E=M;w=cn(c|0,w|0,1)|0;c=M;m=cn(s|0,m|0,1)|0;s=M;y=cn(t|0,y|0,1)|0;t=M;p=cn(h|0,p|0,1)|0;h=M;_=In(b|0,d|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;l=M;u=In(_|0,l|0,f|0,u|0)|0;f=M;l=cn(_|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=In(g|0,r|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;_=M;E=In(b|0,_|0,o|0,E|0)|0;o=M;_=cn(b|0,_|0,26)|0;_=Mn(g|0,r|0,_|0,M|0)|0;r=M;g=In(u|0,f|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;b=M;i=In(g|0,b|0,k|0,i|0)|0;k=M;b=cn(g|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=In(E|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;g=M;c=In(u|0,g|0,w|0,c|0)|0;w=M;g=cn(u|0,g|0,25)|0;g=Mn(E|0,o|0,g|0,M|0)|0;o=M;E=In(i|0,k|0,33554432,0)|0;E=Hr(E|0,M|0,26)|0;u=M;n=In(E|0,u|0,v|0,n|0)|0;v=M;u=cn(E|0,u|0,26)|0;u=Mn(i|0,k|0,u|0,M|0)|0;k=In(c|0,w|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;i=M;s=In(k|0,i|0,m|0,s|0)|0;m=M;i=cn(k|0,i|0,26)|0;i=Mn(c|0,w|0,i|0,M|0)|0;w=In(n|0,v|0,16777216,0)|0;w=Hr(w|0,M|0,25)|0;c=M;r=In(w|0,c|0,_|0,r|0)|0;_=M;c=cn(w|0,c|0,25)|0;c=Mn(n|0,v|0,c|0,M|0)|0;v=In(s|0,m|0,16777216,0)|0;v=Hr(v|0,M|0,25)|0;n=M;t=In(v|0,n|0,y|0,t|0)|0;y=M;n=cn(v|0,n|0,25)|0;n=Mn(s|0,m|0,n|0,M|0)|0;m=In(r|0,_|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;s=M;o=In(g|0,o|0,m|0,s|0)|0;s=cn(m|0,s|0,26)|0;s=Mn(r|0,_|0,s|0,M|0)|0;_=In(t|0,y|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;r=M;h=In(_|0,r|0,p|0,h|0)|0;p=M;r=cn(_|0,r|0,26)|0;r=Mn(t|0,y|0,r|0,M|0)|0;y=In(h|0,p|0,16777216,0)|0;y=Hr(y|0,M|0,25)|0;t=M;_=Wr(y|0,t|0,19,0)|0;d=In(_|0,M|0,l|0,d|0)|0;l=M;t=cn(y|0,t|0,25)|0;t=Mn(h|0,p|0,t|0,M|0)|0;p=In(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=In(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function le(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,Q=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0,be=0,ye=0,_e=0,me=0,ge=0,ve=0,we=0,ke=0,Ee=0,Se=0,xe=0,Ae=0,Me=0,Te=0,Ie=0,ze=0,Be=0,Re=0,Oe=0,Ce=0,Ne=0,Pe=0,je=0,qe=0,Le=0,De=0,Ue=0,Ke=0,Fe=0,Ye=0,He=0,Ve=0,Ge=0,Xe=0,We=0,Je=0,Ze=0,$e=0,Qe=0,et=0,tt=0,rt=0,nt=0,it=0;h=a[t>>2]|0;b=a[t+4>>2]|0;f=a[t+8>>2]|0;i=a[t+12>>2]|0;I=a[t+16>>2]|0;r=a[t+20>>2]|0;o=a[t+24>>2]|0;D=a[t+28>>2]|0;A=a[t+32>>2]|0;y=a[t+36>>2]|0;rt=Wr(h|0,((h|0)<0)<<31>>31|0,h|0,((h|0)<0)<<31>>31|0)|0;tt=M;p=((h<<1|0)<0)<<31>>31;Ce=Wr(h<<1|0,p|0,b|0,((b|0)<0)<<31>>31|0)|0;Oe=M;Xe=Wr(f|0,((f|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Ge=M;Ve=Wr(i|0,((i|0)<0)<<31>>31|0,h<<1|0,p|0)|0;He=M;De=Wr(I|0,((I|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Le=M;Se=Wr(r|0,((r|0)<0)<<31>>31|0,h<<1|0,p|0)|0;Ee=M;oe=Wr(o|0,((o|0)<0)<<31>>31|0,h<<1|0,p|0)|0;ae=M;F=Wr(D|0,((D|0)<0)<<31>>31|0,h<<1|0,p|0)|0;K=M;B=Wr(A|0,((A|0)<0)<<31>>31|0,h<<1|0,p|0)|0;z=M;p=Wr(y|0,((y|0)<0)<<31>>31|0,h<<1|0,p|0)|0;h=M;d=((b<<1|0)<0)<<31>>31;ge=Wr(b<<1|0,d|0,b|0,((b|0)<0)<<31>>31|0)|0;ve=M;te=Wr(b<<1|0,d|0,f|0,((f|0)<0)<<31>>31|0)|0;re=M;U=((i<<1|0)<0)<<31>>31;Ye=Wr(i<<1|0,U|0,b<<1|0,d|0)|0;Fe=M;Te=Wr(I|0,((I|0)<0)<<31>>31|0,b<<1|0,d|0)|0;Me=M;ce=Wr(r<<1|0,((r<<1|0)<0)<<31>>31|0,b<<1|0,d|0)|0;se=M;H=Wr(o|0,((o|0)<0)<<31>>31|0,b<<1|0,d|0)|0;Y=M;O=Wr(D<<1|0,((D<<1|0)<0)<<31>>31|0,b<<1|0,d|0)|0;R=M;g=Wr(A|0,((A|0)<0)<<31>>31|0,b<<1|0,d|0)|0;m=M;t=((y*38|0)<0)<<31>>31;d=Wr(y*38|0,t|0,b<<1|0,d|0)|0;b=M;Ke=Wr(f|0,((f|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Ue=M;Ae=Wr(f<<1|0,((f<<1|0)<0)<<31>>31|0,i|0,((i|0)<0)<<31>>31|0)|0;xe=M;fe=Wr(I|0,((I|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;ue=M;W=Wr(r|0,((r|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;X=M;L=Wr(o|0,((o|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;q=M;w=Wr(D|0,((D|0)<0)<<31>>31|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;v=M;ie=((A*19|0)<0)<<31>>31;Je=Wr(A*19|0,ie|0,f<<1|0,((f<<1|0)<0)<<31>>31|0)|0;We=M;f=Wr(y*38|0,t|0,f|0,((f|0)<0)<<31>>31|0)|0;u=M;le=Wr(i<<1|0,U|0,i|0,((i|0)<0)<<31>>31|0)|0;he=M;G=Wr(i<<1|0,U|0,I|0,((I|0)<0)<<31>>31|0)|0;V=M;N=Wr(r<<1|0,((r<<1|0)<0)<<31>>31|0,i<<1|0,U|0)|0;C=M;x=Wr(o|0,((o|0)<0)<<31>>31|0,i<<1|0,U|0)|0;S=M;qe=((D*38|0)<0)<<31>>31;$e=Wr(D*38|0,qe|0,i<<1|0,U|0)|0;Ze=M;ze=Wr(A*19|0,ie|0,i<<1|0,U|0)|0;Ie=M;U=Wr(y*38|0,t|0,i<<1|0,U|0)|0;i=M;j=Wr(I|0,((I|0)<0)<<31>>31|0,I|0,((I|0)<0)<<31>>31|0)|0;P=M;E=Wr(I<<1|0,((I<<1|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;k=M;et=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,I<<1|0,((I<<1|0)<0)<<31>>31|0)|0;Qe=M;Re=Wr(D*38|0,qe|0,I|0,((I|0)<0)<<31>>31|0)|0;Be=M;pe=Wr(A*19|0,ie|0,I<<1|0,((I<<1|0)<0)<<31>>31|0)|0;de=M;I=Wr(y*38|0,t|0,I|0,((I|0)<0)<<31>>31|0)|0;n=M;it=Wr(r*38|0,((r*38|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;nt=M;Pe=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;Ne=M;ye=Wr(D*38|0,qe|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;be=M;$=Wr(A*19|0,ie|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;Z=M;r=Wr(y*38|0,t|0,r<<1|0,((r<<1|0)<0)<<31>>31|0)|0;T=M;me=Wr(o*19|0,((o*19|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;_e=M;ee=Wr(D*38|0,qe|0,o|0,((o|0)<0)<<31>>31|0)|0;Q=M;l=Wr(A*19|0,ie|0,o<<1|0,((o<<1|0)<0)<<31>>31|0)|0;_=M;o=Wr(y*38|0,t|0,o|0,((o|0)<0)<<31>>31|0)|0;J=M;qe=Wr(D*38|0,qe|0,D|0,((D|0)<0)<<31>>31|0)|0;je=M;ke=Wr(A*19|0,ie|0,D<<1|0,((D<<1|0)<0)<<31>>31|0)|0;we=M;D=Wr(y*38|0,t|0,D<<1|0,((D<<1|0)<0)<<31>>31|0)|0;c=M;ie=Wr(A*19|0,ie|0,A|0,((A|0)<0)<<31>>31|0)|0;ne=M;A=Wr(y*38|0,t|0,A|0,((A|0)<0)<<31>>31|0)|0;s=M;y=Wr(y*38|0,t|0,y|0,((y|0)<0)<<31>>31|0)|0;t=M;tt=In(it|0,nt|0,rt|0,tt|0)|0;Qe=In(tt|0,M|0,et|0,Qe|0)|0;Ze=In(Qe|0,M|0,$e|0,Ze|0)|0;We=In(Ze|0,M|0,Je|0,We|0)|0;b=In(We|0,M|0,d|0,b|0)|0;d=M;ve=In(Xe|0,Ge|0,ge|0,ve|0)|0;ge=M;re=In(Ve|0,He|0,te|0,re|0)|0;te=M;Ue=In(Ye|0,Fe|0,Ke|0,Ue|0)|0;Le=In(Ue|0,M|0,De|0,Le|0)|0;je=In(Le|0,M|0,qe|0,je|0)|0;_=In(je|0,M|0,l|0,_|0)|0;T=In(_|0,M|0,r|0,T|0)|0;r=M;_=In(b|0,d|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;l=M;Oe=In(Pe|0,Ne|0,Ce|0,Oe|0)|0;Be=In(Oe|0,M|0,Re|0,Be|0)|0;Ie=In(Be|0,M|0,ze|0,Ie|0)|0;u=In(Ie|0,M|0,f|0,u|0)|0;u=In(u|0,M|0,_|0,l|0)|0;f=M;l=cn(_|0,l|0,26)|0;l=Mn(b|0,d|0,l|0,M|0)|0;d=M;b=In(T|0,r|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;_=M;xe=In(Te|0,Me|0,Ae|0,xe|0)|0;Ee=In(xe|0,M|0,Se|0,Ee|0)|0;we=In(Ee|0,M|0,ke|0,we|0)|0;J=In(we|0,M|0,o|0,J|0)|0;J=In(J|0,M|0,b|0,_|0)|0;o=M;_=cn(b|0,_|0,26)|0;_=Mn(T|0,r|0,_|0,M|0)|0;r=M;T=In(u|0,f|0,16777216,0)|0;T=Hr(T|0,M|0,25)|0;b=M;_e=In(ve|0,ge|0,me|0,_e|0)|0;be=In(_e|0,M|0,ye|0,be|0)|0;de=In(be|0,M|0,pe|0,de|0)|0;i=In(de|0,M|0,U|0,i|0)|0;i=In(i|0,M|0,T|0,b|0)|0;U=M;b=cn(T|0,b|0,25)|0;b=Mn(u|0,f|0,b|0,M|0)|0;f=M;u=In(J|0,o|0,16777216,0)|0;u=Hr(u|0,M|0,25)|0;T=M;ue=In(le|0,he|0,fe|0,ue|0)|0;se=In(ue|0,M|0,ce|0,se|0)|0;ae=In(se|0,M|0,oe|0,ae|0)|0;ne=In(ae|0,M|0,ie|0,ne|0)|0;c=In(ne|0,M|0,D|0,c|0)|0;c=In(c|0,M|0,u|0,T|0)|0;D=M;T=cn(u|0,T|0,25)|0;T=Mn(J|0,o|0,T|0,M|0)|0;o=M;J=In(i|0,U|0,33554432,0)|0;J=Hr(J|0,M|0,26)|0;u=M;Q=In(re|0,te|0,ee|0,Q|0)|0;Z=In(Q|0,M|0,$|0,Z|0)|0;n=In(Z|0,M|0,I|0,n|0)|0;n=In(n|0,M|0,J|0,u|0)|0;I=M;u=cn(J|0,u|0,26)|0;u=Mn(i|0,U|0,u|0,M|0)|0;U=In(c|0,D|0,33554432,0)|0;U=Hr(U|0,M|0,26)|0;i=M;V=In(W|0,X|0,G|0,V|0)|0;Y=In(V|0,M|0,H|0,Y|0)|0;K=In(Y|0,M|0,F|0,K|0)|0;s=In(K|0,M|0,A|0,s|0)|0;s=In(s|0,M|0,U|0,i|0)|0;A=M;i=cn(U|0,i|0,26)|0;i=Mn(c|0,D|0,i|0,M|0)|0;D=In(n|0,I|0,16777216,0)|0;D=Hr(D|0,M|0,25)|0;c=M;r=In(D|0,c|0,_|0,r|0)|0;_=M;c=cn(D|0,c|0,25)|0;c=Mn(n|0,I|0,c|0,M|0)|0;I=In(s|0,A|0,16777216,0)|0;I=Hr(I|0,M|0,25)|0;n=M;P=In(L|0,q|0,j|0,P|0)|0;C=In(P|0,M|0,N|0,C|0)|0;R=In(C|0,M|0,O|0,R|0)|0;z=In(R|0,M|0,B|0,z|0)|0;t=In(z|0,M|0,y|0,t|0)|0;t=In(t|0,M|0,I|0,n|0)|0;y=M;n=cn(I|0,n|0,25)|0;n=Mn(s|0,A|0,n|0,M|0)|0;A=In(r|0,_|0,33554432,0)|0;A=Hr(A|0,M|0,26)|0;s=M;o=In(T|0,o|0,A|0,s|0)|0;s=cn(A|0,s|0,26)|0;s=Mn(r|0,_|0,s|0,M|0)|0;_=In(t|0,y|0,33554432,0)|0;_=Hr(_|0,M|0,26)|0;r=M;k=In(x|0,S|0,E|0,k|0)|0;v=In(k|0,M|0,w|0,v|0)|0;m=In(v|0,M|0,g|0,m|0)|0;h=In(m|0,M|0,p|0,h|0)|0;h=In(h|0,M|0,_|0,r|0)|0;p=M;r=cn(_|0,r|0,26)|0;r=Mn(t|0,y|0,r|0,M|0)|0;y=In(h|0,p|0,16777216,0)|0;y=Hr(y|0,M|0,25)|0;t=M;_=Wr(y|0,t|0,19,0)|0;d=In(_|0,M|0,l|0,d|0)|0;l=M;t=cn(y|0,t|0,25)|0;t=Mn(h|0,p|0,t|0,M|0)|0;p=In(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;h=M;f=In(b|0,f|0,p|0,h|0)|0;h=cn(p|0,h|0,26)|0;h=Mn(d|0,l|0,h|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function de(e){e=e|0;var t=0,r=0,n=0,i=0,o=0,s=0,c=0,u=0;if(!e)return;t=a[8622]|0;r=a[e+-4>>2]|0;u=e+-8+(r&-8)|0;do{if(!(r&1)){n=a[e+-8>>2]|0;if(!(r&3))return;s=e+-8+(0-n)|0;o=n+(r&-8)|0;if(s>>>0>>0)return;if((s|0)==(a[8623]|0)){e=a[u+4>>2]|0;if((e&3|0)!=3){c=s;t=o;break}a[8620]=o;a[u+4>>2]=e&-2;a[s+4>>2]=o|1;a[s+o>>2]=o;return}if(n>>>0<256){e=a[s+8>>2]|0;t=a[s+12>>2]|0;if((t|0)==(e|0)){a[8618]=a[8618]&~(1<<(n>>>3));c=s;t=o;break}else{a[e+12>>2]=t;a[t+8>>2]=e;c=s;t=o;break}}i=a[s+24>>2]|0;e=a[s+12>>2]|0;do{if((e|0)==(s|0)){e=a[s+16+4>>2]|0;if(!e){e=a[s+16>>2]|0;if(!e){e=0;break}else n=s+16|0}else n=s+16+4|0;while(1){t=e+20|0;r=a[t>>2]|0;if(r|0){e=r;n=t;continue}t=e+16|0;r=a[t>>2]|0;if(!r)break;else{e=r;n=t}}a[n>>2]=0}else{c=a[s+8>>2]|0;a[c+12>>2]=e;a[e+8>>2]=c}}while(0);if(i){t=a[s+28>>2]|0;if((s|0)==(a[34776+(t<<2)>>2]|0)){a[34776+(t<<2)>>2]=e;if(!e){a[8619]=a[8619]&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=e;if(!e){c=s;t=o;break}}a[e+24>>2]=i;t=a[s+16>>2]|0;if(t|0){a[e+16>>2]=t;a[t+24>>2]=e}t=a[s+16+4>>2]|0;if(t){a[e+20>>2]=t;a[t+24>>2]=e;c=s;t=o}else{c=s;t=o}}else{c=s;t=o}}else{c=e+-8|0;t=r&-8;s=e+-8|0}}while(0);if(s>>>0>=u>>>0)return;r=a[u+4>>2]|0;if(!(r&1))return;if(!(r&2)){e=a[8623]|0;if((u|0)==(a[8624]|0)){u=(a[8621]|0)+t|0;a[8621]=u;a[8624]=c;a[c+4>>2]=u|1;if((c|0)!=(e|0))return;a[8623]=0;a[8620]=0;return}if((u|0)==(e|0)){u=(a[8620]|0)+t|0;a[8620]=u;a[8623]=s;a[c+4>>2]=u|1;a[s+u>>2]=u;return}i=(r&-8)+t|0;do{if(r>>>0<256){t=a[u+8>>2]|0;e=a[u+12>>2]|0;if((e|0)==(t|0)){a[8618]=a[8618]&~(1<<(r>>>3));break}else{a[t+12>>2]=e;a[e+8>>2]=t;break}}else{o=a[u+24>>2]|0;e=a[u+12>>2]|0;do{if((e|0)==(u|0)){e=a[u+16+4>>2]|0;if(!e){e=a[u+16>>2]|0;if(!e){t=0;break}else n=u+16|0}else n=u+16+4|0;while(1){t=e+20|0;r=a[t>>2]|0;if(r|0){e=r;n=t;continue}t=e+16|0;r=a[t>>2]|0;if(!r)break;else{e=r;n=t}}a[n>>2]=0;t=e}else{t=a[u+8>>2]|0;a[t+12>>2]=e;a[e+8>>2]=t;t=e}}while(0);if(o|0){e=a[u+28>>2]|0;if((u|0)==(a[34776+(e<<2)>>2]|0)){a[34776+(e<<2)>>2]=t;if(!t){a[8619]=a[8619]&~(1<>2]|0)!=(u|0)&1)<<2)>>2]=t;if(!t)break}a[t+24>>2]=o;e=a[u+16>>2]|0;if(e|0){a[t+16>>2]=e;a[e+24>>2]=t}e=a[u+16+4>>2]|0;if(e|0){a[t+20>>2]=e;a[e+24>>2]=t}}}}while(0);a[c+4>>2]=i|1;a[s+i>>2]=i;if((c|0)==(a[8623]|0)){a[8620]=i;return}}else{a[u+4>>2]=r&-2;a[c+4>>2]=t|1;a[s+t>>2]=t;i=t}r=i>>>3;if(i>>>0<256){e=a[8618]|0;if(!(e&1<>2]|0;t=34512+(r<<1<<2)+8|0}a[t>>2]=c;a[e+12>>2]=c;a[c+8>>2]=e;a[c+12>>2]=34512+(r<<1<<2);return}e=i>>>8;if(e)if(i>>>0>16777215)e=31;else{u=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(u+245760|0)>>>16&2)+(u<<((u+245760|0)>>>16&2)>>>15)|0;e=i>>>(e+7|0)&1|e<<1}else e=0;n=34776+(e<<2)|0;a[c+28>>2]=e;a[c+20>>2]=0;a[c+16>>2]=0;t=a[8619]|0;r=1<>>1)|0);r=a[n>>2]|0;while(1){if((a[r+4>>2]&-8|0)==(i|0)){e=73;break}n=r+16+(t>>>31<<2)|0;e=a[n>>2]|0;if(!e){e=72;break}else{t=t<<1;r=e}}if((e|0)==72){a[n>>2]=c;a[c+24>>2]=r;a[c+12>>2]=c;a[c+8>>2]=c;break}else if((e|0)==73){s=r+8|0;u=a[s>>2]|0;a[u+12>>2]=c;a[s>>2]=c;a[c+8>>2]=u;a[c+12>>2]=r;a[c+24>>2]=0;break}}else{a[8619]=t|r;a[n>>2]=c;a[c+24>>2]=n;a[c+12>>2]=c;a[c+8>>2]=c}}while(0);u=(a[8626]|0)+-1|0;a[8626]=u;if(!u)e=34928;else return;while(1){e=a[e>>2]|0;if(!e)break;else e=e+8|0}a[8626]=-1;return}function pe(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0;l=Ur(i)|0;p=M;a=Ur(i+8|0)|0;s=M;n=cn(r|0,n|0,56)|0;i=M;if((t+r+(0-(r&7))|0)==(t|0)){y=a^2037671283;u=s^1952801890;d=l^1886610805;f=p^1936682341;c=a^1852075885;_=s^1685025377;s=l^1852142177;a=p^1819895653}else{m=t;y=a^2037671283;u=s^1952801890;d=l^1886610805;h=p^1936682341;f=a^1852075885;c=s^1685025377;s=l^1852142177;a=p^1819895653;while(1){b=Ur(m)|0;g=M;w=b^y;u=g^u;h=In(d|0,h|0,f|0,c|0)|0;_=M;d=Xr(f,c,13)|0;f=M^_;_=Xr(h,_,32)|0;y=M;l=In(w|0,u|0,s|0,a|0)|0;p=M;u=Xr(w,u,16)|0;c=M^p;y=In(u^l|0,c|0,_|0,y|0)|0;_=M;c=Xr(u^l,c,21)|0;u=_^M;p=In(l|0,p|0,d^h|0,f|0)|0;l=M;f=Xr(d^h,f,17)|0;a=M^l;l=Xr(p,l,32)|0;s=M;_=In(f^p|0,a|0,y|0,_|0)|0;h=M;a=Xr(f^p,a,13)|0;p=M^h;h=Xr(_,h,32)|0;f=M;s=In(l|0,s|0,y^c|0,u|0)|0;l=M;u=Xr(y^c,u,16)|0;c=M^l;f=In(u^s|0,c|0,h|0,f|0)|0;h=M;c=Xr(u^s,c,21)|0;u=h^M;l=In(a^_|0,p|0,s|0,l|0)|0;s=M;p=Xr(a^_,p,17)|0;_=M^s;s=Xr(l,s,32)|0;a=M;m=m+8|0;if((m|0)==(t+r+(0-(r&7))|0)){t=t+r+(0-(r&7))|0;y=f^c;d=f^b;f=h^g;c=p^l;break}else{y=f^c;d=f^b;h=h^g;f=p^l;c=_}}}switch(r&7){case 7:{n=cn(o[t+6>>0]|0|0,0,48)|0|n;i=M|i;v=5;break}case 6:{v=5;break}case 5:{v=6;break}case 4:{v=7;break}case 3:{v=8;break}case 2:{v=9;break}case 1:{v=10;break}default:{}}if((v|0)==5){w=cn(o[t+5>>0]|0|0,0,40)|0;i=M|i;n=w|n;v=6}if((v|0)==6){i=o[t+4>>0]|0|i;v=7}if((v|0)==7){w=cn(o[t+3>>0]|0|0,0,24)|0;n=w|n;i=M|i;v=8}if((v|0)==8){w=cn(o[t+2>>0]|0|0,0,16)|0;n=w|n;i=M|i;v=9}if((v|0)==9){w=cn(o[t+1>>0]|0|0,0,8)|0;n=w|n;i=M|i;v=10}if((v|0)==10)n=o[t>>0]|0|n;m=n^y;r=i^u;p=In(d|0,f|0,c|0,_|0)|0;b=M;y=Xr(c,_,13)|0;t=M^b;b=Xr(p,b,32)|0;v=M;g=In(m|0,r|0,s|0,a|0)|0;w=M;_=Xr(m,r,16)|0;r=M^w;v=In(_^g|0,r|0,b|0,v|0)|0;b=M;r=Xr(_^g,r,21)|0;_=b^M;w=In(g|0,w|0,y^p|0,t|0)|0;g=M;t=Xr(y^p,t,17)|0;p=M^g;g=Xr(w,g,32)|0;y=M;b=In(t^w|0,p|0,v|0,b|0)|0;m=M;p=Xr(t^w,p,13)|0;w=M^m;m=Xr(b,m,32)|0;t=M;y=In(g|0,y|0,v^r|0,_|0)|0;g=M;_=Xr(v^r,_,16)|0;r=M^g;t=In(_^y|0,r|0,m|0,t|0)|0;m=M;r=Xr(_^y,r,21)|0;_=m^M;g=In(p^b|0,w|0,y|0,g|0)|0;y=M;w=Xr(p^b,w,17)|0;b=M^y;y=Xr(g,y,32)|0;p=M;m=In(t^n|0,m^i|0,w^g|0,b|0)|0;v=M;b=Xr(w^g,b,13)|0;g=M^v;v=Xr(m,v,32)|0;w=M;p=In(y^255|0,p|0,t^r|0,_|0)|0;y=M;_=Xr(t^r,_,16)|0;r=M^y;w=In(_^p|0,r|0,v|0,w|0)|0;v=M;r=Xr(_^p,r,21)|0;_=v^M;y=In(p|0,y|0,b^m|0,g|0)|0;p=M;g=Xr(b^m,g,17)|0;m=M^p;p=Xr(y,p,32)|0;b=M;v=In(g^y|0,m|0,w|0,v|0)|0;t=M;m=Xr(g^y,m,13)|0;y=M^t;t=Xr(v,t,32)|0;g=M;b=In(p|0,b|0,w^r|0,_|0)|0;p=M;_=Xr(w^r,_,16)|0;r=M^p;g=In(_^b|0,r|0,t|0,g|0)|0;t=M;r=Xr(_^b,r,21)|0;_=t^M;p=In(m^v|0,y|0,b|0,p|0)|0;b=M;y=Xr(m^v,y,17)|0;v=M^b;b=Xr(p,b,32)|0;m=M;t=In(y^p|0,v|0,g|0,t|0)|0;w=M;v=Xr(y^p,v,13)|0;p=M^w;w=Xr(t,w,32)|0;y=M;m=In(b|0,m|0,g^r|0,_|0)|0;b=M;_=Xr(g^r,_,16)|0;r=M^b;y=In(_^m|0,r|0,w|0,y|0)|0;w=M;r=Xr(_^m,r,21)|0;_=w^M;b=In(v^t|0,p|0,m|0,b|0)|0;m=M;p=Xr(v^t,p,17)|0;t=M^m;m=Xr(b,m,32)|0;v=M;w=In(p^b|0,t|0,y|0,w|0)|0;g=M;t=Xr(p^b,t,13)|0;g=M^g;v=In(m|0,v|0,y^r|0,_|0)|0;m=M;_=Xr(y^r,_,16)|0;_=Xr(_^v,M^m,21)|0;r=M;m=In(t^w|0,g|0,v|0,m|0)|0;v=M;g=Xr(t^w,g,17)|0;w=M;t=Xr(m,v,32)|0;Mr(e,_^m^g^t,r^v^w^M);return}function be(e,t,r,i,o){e=e|0;t=t|0;r=r|0;i=i|0;o=o|0;var s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0,V=0,G=0,X=0,W=0,J=0,Z=0,$=0,ee=0,te=0,re=0,ne=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,fe=0,he=0,le=0,de=0,pe=0;H=p;Y=p=p+63&-64;p=p+64|0;if(!((i|0)==0&(o|0)==0)){if(o>>>0>63|(o|0)==63&i>>>0>4294967232)Q();z=a[e>>2]|0;B=a[e+4>>2]|0;R=a[e+8>>2]|0;O=a[e+12>>2]|0;C=a[e+16>>2]|0;N=a[e+20>>2]|0;P=a[e+24>>2]|0;j=a[e+28>>2]|0;q=a[e+32>>2]|0;L=a[e+36>>2]|0;D=a[e+40>>2]|0;U=a[e+44>>2]|0;K=a[e+56>>2]|0;F=a[e+60>>2]|0;s=0;A=a[e+52>>2]|0;S=a[e+48>>2]|0;T=o;I=i;while(1){x=T>>>0<0|(T|0)==0&I>>>0<64;if(x){o=Y;i=o+64|0;do{n[o>>0]=0;o=o+1|0}while((o|0)<(i|0));o=0;do{n[Y+o>>0]=n[t+o>>0]|0;o=o+1|0}while(0>>0|0==(T|0)&o>>>0>>0);s=r;t=Y;r=Y}o=z;i=B;c=R;u=O;f=C;h=N;l=P;d=j;b=q;y=L;_=D;m=F;g=K;v=A;w=S;k=U;E=20;do{le=o+f|0;te=Ii(le^w,16)|0;ee=te+b|0;de=Ii(ee^f,12)|0;te=Ii(de+le^te,8)|0;J=Ii(te+ee^de,7)|0;ce=i+h|0;X=Ii(ce^v,16)|0;G=X+y|0;ue=Ii(G^h,12)|0;X=Ii(ue+ce^X,8)|0;pe=Ii(X+G^ue,7)|0;ne=c+l|0;W=Ii(ne^g,16)|0;re=W+_|0;ie=Ii(re^l,12)|0;W=Ii(ie+ne^W,8)|0;fe=Ii(W+re^ie,7)|0;Z=u+d|0;oe=Ii(Z^m,16)|0;V=oe+k|0;$=Ii(V^d,12)|0;oe=Ii($+Z^oe,8)|0;ae=Ii(oe+V^$,7)|0;he=Ii(oe^pe+(de+le),16)|0;se=Ii(he+(W+re)^pe,12)|0;o=se+(pe+(de+le))|0;m=Ii(o^he,8)|0;_=m+(he+(W+re))|0;h=Ii(_^se,7)|0;se=Ii(fe+(ue+ce)^te,16)|0;re=Ii(se+(oe+V)^fe,12)|0;i=re+(fe+(ue+ce))|0;w=Ii(i^se,8)|0;k=w+(se+(oe+V))|0;l=Ii(k^re,7)|0;re=Ii(ae+(ie+ne)^X,16)|0;V=Ii(re+(te+ee)^ae,12)|0;c=V+(ae+(ie+ne))|0;v=Ii(c^re,8)|0;b=v+(re+(te+ee))|0;d=Ii(b^V,7)|0;W=Ii($+Z+J^W,16)|0;V=Ii(W+(X+G)^J,12)|0;u=V+($+Z+J)|0;g=Ii(u^W,8)|0;y=g+(W+(X+G))|0;f=Ii(y^V,7)|0;E=E+-2|0}while((E|0)!=0);$=(ei(t)|0)^o+z;ee=(ei(t+4|0)|0)^i+B;te=(ei(t+8|0)|0)^c+R;re=(ei(t+12|0)|0)^u+O;ne=(ei(t+16|0)|0)^f+C;ie=(ei(t+20|0)|0)^h+N;ae=(ei(t+24|0)|0)^l+P;oe=(ei(t+28|0)|0)^d+j;se=(ei(t+32|0)|0)^b+q;ce=(ei(t+36|0)|0)^y+L;ue=(ei(t+40|0)|0)^_+D;fe=(ei(t+44|0)|0)^k+U;he=(ei(t+48|0)|0)^w+S;le=(ei(t+52|0)|0)^v+A;de=(ei(t+56|0)|0)^g+K;pe=(ei(t+60|0)|0)^m+F;i=S+1|0;o=((i|0)==0&1)+A|0;Cn(r,$);Cn(r+4|0,ee);Cn(r+8|0,te);Cn(r+12|0,re);Cn(r+16|0,ne);Cn(r+20|0,ie);Cn(r+24|0,ae);Cn(r+28|0,oe);Cn(r+32|0,se);Cn(r+36|0,ce);Cn(r+40|0,ue);Cn(r+44|0,fe);Cn(r+48|0,he);Cn(r+52|0,le);Cn(r+56|0,de);Cn(r+60|0,pe);if(T>>>0<0|(T|0)==0&I>>>0<65)break;pe=In(I|0,T|0,-64,-1)|0;t=t+64|0;r=r+64|0;A=o;S=i;T=M;I=pe}if(x?I|0:0){t=0;do{n[s+t>>0]=n[r+t>>0]|0;t=t+1|0}while((t|0)!=(I|0))}a[e+48>>2]=i;a[e+52>>2]=o}p=H;return}function ye(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0;m=n[e+80>>0]|0?0:16777216;g=a[e+4>>2]|0;p=a[e+8>>2]|0;b=a[e+12>>2]|0;y=a[e+16>>2]|0;f=a[e+20>>2]|0;u=a[e+24>>2]|0;c=a[e+28>>2]|0;s=a[e+32>>2]|0;o=a[e+36>>2]|0;if(i>>>0>0|(i|0)==0&r>>>0>15){_=a[e>>2]|0;l=r;while(1){S=((ei(t)|0)&67108863)+f|0;x=((ei(t+3|0)|0)>>>2&67108863)+u|0;E=((ei(t+6|0)|0)>>>4&67108863)+c|0;k=((ei(t+9|0)|0)>>>6)+s|0;f=((ei(t+12|0)|0)>>>8|m)+o|0;o=Wr(S|0,0,_|0,0)|0;r=M;c=Wr(x|0,0,y*5|0,0)|0;r=In(c|0,M|0,o|0,r|0)|0;o=M;c=Wr(E|0,0,b*5|0,0)|0;c=In(r|0,o|0,c|0,M|0)|0;o=M;r=Wr(k|0,0,p*5|0,0)|0;r=In(c|0,o|0,r|0,M|0)|0;o=M;c=Wr(f|0,0,g*5|0,0)|0;c=In(r|0,o|0,c|0,M|0)|0;o=M;r=Wr(S|0,0,g|0,0)|0;h=M;w=Wr(x|0,0,_|0,0)|0;h=In(w|0,M|0,r|0,h|0)|0;r=M;w=Wr(E|0,0,y*5|0,0)|0;w=In(h|0,r|0,w|0,M|0)|0;r=M;h=Wr(k|0,0,b*5|0,0)|0;h=In(w|0,r|0,h|0,M|0)|0;r=M;w=Wr(f|0,0,p*5|0,0)|0;w=In(h|0,r|0,w|0,M|0)|0;r=M;h=Wr(S|0,0,p|0,0)|0;d=M;v=Wr(x|0,0,g|0,0)|0;d=In(v|0,M|0,h|0,d|0)|0;h=M;v=Wr(E|0,0,_|0,0)|0;v=In(d|0,h|0,v|0,M|0)|0;h=M;d=Wr(k|0,0,y*5|0,0)|0;d=In(v|0,h|0,d|0,M|0)|0;h=M;v=Wr(f|0,0,b*5|0,0)|0;v=In(d|0,h|0,v|0,M|0)|0;h=M;d=Wr(S|0,0,b|0,0)|0;s=M;u=Wr(x|0,0,p|0,0)|0;s=In(u|0,M|0,d|0,s|0)|0;d=M;u=Wr(E|0,0,g|0,0)|0;u=In(s|0,d|0,u|0,M|0)|0;d=M;s=Wr(k|0,0,_|0,0)|0;s=In(u|0,d|0,s|0,M|0)|0;d=M;u=Wr(f|0,0,y*5|0,0)|0;u=In(s|0,d|0,u|0,M|0)|0;d=M;s=Wr(S|0,0,y|0,0)|0;S=M;x=Wr(x|0,0,b|0,0)|0;S=In(x|0,M|0,s|0,S|0)|0;s=M;E=Wr(E|0,0,p|0,0)|0;E=In(S|0,s|0,E|0,M|0)|0;s=M;k=Wr(k|0,0,g|0,0)|0;k=In(E|0,s|0,k|0,M|0)|0;s=M;f=Wr(f|0,0,_|0,0)|0;f=In(k|0,s|0,f|0,M|0)|0;s=M;o=fn(c|0,o|0,26)|0;o=In(w|0,r|0,o|0,0)|0;r=fn(o|0,M|0,26)|0;r=In(v|0,h|0,r|0,0)|0;h=fn(r|0,M|0,26)|0;h=In(u|0,d|0,h|0,0)|0;d=fn(h|0,M|0,26)|0;d=In(f|0,s|0,d|0,0)|0;s=fn(d|0,M|0,26)|0;l=In(l|0,i|0,-16,-1)|0;i=M;if(!(i>>>0>0|(i|0)==0&l>>>0>15)){f=(s*5|0)+c&67108863;u=(((s*5|0)+(c&67108863)|0)>>>26)+(o&67108863)|0;c=r&67108863;s=h&67108863;o=d&67108863;break}else{f=(s*5|0)+c&67108863;u=(((s*5|0)+(c&67108863)|0)>>>26)+(o&67108863)|0;c=r&67108863;s=h&67108863;o=d&67108863;t=t+16|0}}}a[e+20>>2]=f;a[e+24>>2]=u;a[e+28>>2]=c;a[e+32>>2]=s;a[e+36>>2]=o;return}function _e(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,T=0;S=hr(t)|0;f=M;E=$r(n[t+4>>0]|0,n[t+5>>0]|0,n[t+6>>0]|0)|0;E=cn(E|0,M|0,6)|0;h=M;k=$r(n[t+7>>0]|0,n[t+8>>0]|0,n[t+9>>0]|0)|0;k=cn(k|0,M|0,5)|0;c=M;g=$r(n[t+10>>0]|0,n[t+11>>0]|0,n[t+12>>0]|0)|0;g=cn(g|0,M|0,3)|0;u=M;m=$r(n[t+13>>0]|0,n[t+14>>0]|0,n[t+15>>0]|0)|0;m=cn(m|0,M|0,2)|0;o=M;i=hr(t+16|0)|0;s=M;b=$r(n[t+20>>0]|0,n[t+21>>0]|0,n[t+22>>0]|0)|0;b=cn(b|0,M|0,7)|0;r=M;w=$r(n[t+23>>0]|0,n[t+24>>0]|0,n[t+25>>0]|0)|0;w=cn(w|0,M|0,5)|0;v=M;d=$r(n[t+26>>0]|0,n[t+27>>0]|0,n[t+28>>0]|0)|0;d=cn(d|0,M|0,4)|0;p=M;_=$r(n[t+29>>0]|0,n[t+30>>0]|0,n[t+31>>0]|0)|0;_=cn(_|0,M|0,2)|0;t=In(_&33554428|0,0,16777216,0)|0;t=fn(t|0,M|0,25)|0;y=M;x=Mn(0,0,t|0,y|0)|0;f=In(x&19|0,0,S|0,f|0)|0;S=M;y=cn(t|0,y|0,25)|0;t=M;x=In(E|0,h|0,16777216,0)|0;x=Hr(x|0,M|0,25)|0;T=M;c=In(x|0,T|0,k|0,c|0)|0;k=M;T=cn(x|0,T|0,25)|0;T=Mn(E|0,h|0,T|0,M|0)|0;h=M;E=In(g|0,u|0,16777216,0)|0;E=Hr(E|0,M|0,25)|0;x=M;o=In(E|0,x|0,m|0,o|0)|0;m=M;x=cn(E|0,x|0,25)|0;x=Mn(g|0,u|0,x|0,M|0)|0;u=M;g=In(i|0,s|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;E=M;r=In(b|0,r|0,g|0,E|0)|0;b=M;E=cn(g|0,E|0,25)|0;E=Mn(i|0,s|0,E|0,M|0)|0;s=M;i=In(w|0,v|0,16777216,0)|0;i=Hr(i|0,M|0,25)|0;g=M;p=In(i|0,g|0,d|0,p|0)|0;d=M;g=cn(i|0,g|0,25)|0;i=M;A=In(f|0,S|0,33554432,0)|0;A=Hr(A|0,M|0,26)|0;l=M;h=In(T|0,h|0,A|0,l|0)|0;l=cn(A|0,l|0,26)|0;l=Mn(f|0,S|0,l|0,M|0)|0;S=In(c|0,k|0,33554432,0)|0;S=Hr(S|0,M|0,26)|0;f=M;u=In(x|0,u|0,S|0,f|0)|0;f=cn(S|0,f|0,26)|0;f=Mn(c|0,k|0,f|0,M|0)|0;k=In(o|0,m|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;c=M;s=In(E|0,s|0,k|0,c|0)|0;c=cn(k|0,c|0,26)|0;c=Mn(o|0,m|0,c|0,M|0)|0;m=In(r|0,b|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;o=M;v=In(m|0,o|0,w|0,v|0)|0;i=Mn(v|0,M|0,g|0,i|0)|0;o=cn(m|0,o|0,26)|0;o=Mn(r|0,b|0,o|0,M|0)|0;b=In(p|0,d|0,33554432,0)|0;b=Hr(b|0,M|0,26)|0;r=M;_=In(b|0,r|0,_&33554428|0,0)|0;t=Mn(_|0,M|0,y|0,t|0)|0;r=cn(b|0,r|0,26)|0;r=Mn(p|0,d|0,r|0,M|0)|0;a[e>>2]=l;a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=r;a[e+36>>2]=t;return}function me(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0;v=a[t>>2]|0;g=a[t+4>>2]|0;m=a[t+8>>2]|0;_=a[t+12>>2]|0;y=a[t+16>>2]|0;h=a[t+20>>2]|0;p=a[t+24>>2]|0;k=a[t+28>>2]|0;l=a[t+32>>2]|0;w=a[t+36>>2]|0;v=Wr(v|0,((v|0)<0)<<31>>31|0,121666,0)|0;u=M;g=Wr(g|0,((g|0)<0)<<31>>31|0,121666,0)|0;f=M;m=Wr(m|0,((m|0)<0)<<31>>31|0,121666,0)|0;s=M;_=Wr(_|0,((_|0)<0)<<31>>31|0,121666,0)|0;c=M;y=Wr(y|0,((y|0)<0)<<31>>31|0,121666,0)|0;i=M;h=Wr(h|0,((h|0)<0)<<31>>31|0,121666,0)|0;o=M;p=Wr(p|0,((p|0)<0)<<31>>31|0,121666,0)|0;r=M;k=Wr(k|0,((k|0)<0)<<31>>31|0,121666,0)|0;n=M;l=Wr(l|0,((l|0)<0)<<31>>31|0,121666,0)|0;d=M;w=Wr(w|0,((w|0)<0)<<31>>31|0,121666,0)|0;t=M;E=In(w|0,t|0,16777216,0)|0;E=Hr(E|0,M|0,25)|0;b=M;S=Wr(E|0,b|0,19,0)|0;u=In(S|0,M|0,v|0,u|0)|0;v=M;b=cn(E|0,b|0,25)|0;b=Mn(w|0,t|0,b|0,M|0)|0;t=M;w=In(g|0,f|0,16777216,0)|0;w=Hr(w|0,M|0,25)|0;E=M;s=In(w|0,E|0,m|0,s|0)|0;m=M;E=cn(w|0,E|0,25)|0;E=Mn(g|0,f|0,E|0,M|0)|0;f=M;g=In(_|0,c|0,16777216,0)|0;g=Hr(g|0,M|0,25)|0;w=M;i=In(g|0,w|0,y|0,i|0)|0;y=M;w=cn(g|0,w|0,25)|0;w=Mn(_|0,c|0,w|0,M|0)|0;c=M;_=In(h|0,o|0,16777216,0)|0;_=Hr(_|0,M|0,25)|0;g=M;r=In(_|0,g|0,p|0,r|0)|0;p=M;g=cn(_|0,g|0,25)|0;g=Mn(h|0,o|0,g|0,M|0)|0;o=M;h=In(k|0,n|0,16777216,0)|0;h=Hr(h|0,M|0,25)|0;_=M;d=In(h|0,_|0,l|0,d|0)|0;l=M;_=cn(h|0,_|0,25)|0;_=Mn(k|0,n|0,_|0,M|0)|0;n=M;k=In(u|0,v|0,33554432,0)|0;k=Hr(k|0,M|0,26)|0;h=M;f=In(E|0,f|0,k|0,h|0)|0;h=cn(k|0,h|0,26)|0;h=Mn(u|0,v|0,h|0,M|0)|0;v=In(s|0,m|0,33554432,0)|0;v=Hr(v|0,M|0,26)|0;u=M;c=In(w|0,c|0,v|0,u|0)|0;u=cn(v|0,u|0,26)|0;u=Mn(s|0,m|0,u|0,M|0)|0;m=In(i|0,y|0,33554432,0)|0;m=Hr(m|0,M|0,26)|0;s=M;o=In(g|0,o|0,m|0,s|0)|0;s=cn(m|0,s|0,26)|0;s=Mn(i|0,y|0,s|0,M|0)|0;y=In(r|0,p|0,33554432,0)|0;y=Hr(y|0,M|0,26)|0;i=M;n=In(_|0,n|0,y|0,i|0)|0;i=cn(y|0,i|0,26)|0;i=Mn(r|0,p|0,i|0,M|0)|0;p=In(d|0,l|0,33554432,0)|0;p=Hr(p|0,M|0,26)|0;r=M;t=In(b|0,t|0,p|0,r|0)|0;r=cn(p|0,r|0,26)|0;r=Mn(d|0,l|0,r|0,M|0)|0;a[e>>2]=h;a[e+4>>2]=f;a[e+8>>2]=u;a[e+12>>2]=c;a[e+16>>2]=s;a[e+20>>2]=o;a[e+24>>2]=i;a[e+28>>2]=n;a[e+32>>2]=r;a[e+36>>2]=t;return}function ge(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+2272|0;Ye(o+2016|0,t);Ye(o+1760|0,i);yr(o+480|0,r);Rr(o+320|0,r);or(o,o+320|0);ot(o+320|0,o,o+480|0);or(o+160|0,o+320|0);yr(o+480+160|0,o+160|0);ot(o+320|0,o,o+480+160|0);or(o+160|0,o+320|0);yr(o+480+320|0,o+160|0);ot(o+320|0,o,o+480+320|0);or(o+160|0,o+320|0);yr(o+480+480|0,o+160|0);ot(o+320|0,o,o+480+480|0);or(o+160|0,o+320|0);yr(o+480+640|0,o+160|0);ot(o+320|0,o,o+480+640|0);or(o+160|0,o+320|0);yr(o+480+800|0,o+160|0);ot(o+320|0,o,o+480+800|0);or(o+160|0,o+320|0);yr(o+480+960|0,o+160|0);ot(o+320|0,o,o+480+960|0);or(o+160|0,o+320|0);yr(o+480+1120|0,o+160|0);mn(e);t=255;while(1){if(n[o+2016+t>>0]|0)break;if(n[o+1760+t>>0]|0)break;r=t+-1|0;if((t|0)>0)t=r;else{t=r;break}}if((t|0)>-1)while(1){bt(o+320|0,e);r=n[o+2016+t>>0]|0;if(r<<24>>24<=0){if(r<<24>>24<0){or(o+160|0,o+320|0);at(o+320|0,o+160|0,o+480+((((r<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{or(o+160|0,o+320|0);ot(o+320|0,o+160|0,o+480+(((r&255)>>>1&255)*160|0)|0)}r=n[o+1760+t>>0]|0;if(r<<24>>24<=0){if(r<<24>>24<0){or(o+160|0,o+320|0);ct(o+320|0,o+160|0,1224+((((r<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{or(o+160|0,o+320|0);ut(o+320|0,o+160|0,1224+(((r&255)>>>1&255)*120|0)|0)}Or(e,o+320|0);if((t|0)>0)t=t+-1|0;else break}p=a;return}function ve(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0,D=0,U=0,K=0,F=0,Y=0,H=0;A=ei(r)|0;M=ei(r+4|0)|0;T=ei(r+8|0)|0;I=ei(r+12|0)|0;E=ei(r+16|0)|0;S=ei(r+20|0)|0;x=ei(r+24|0)|0;g=ei(r+28|0)|0;v=ei(t)|0;w=ei(t+4|0)|0;k=ei(t+8|0)|0;m=ei(t+12|0)|0;r=0;t=A;n=M;i=T;a=I;o=v;s=w;c=k;u=m;f=E;h=g;l=x;d=S;p=1634760805;b=857760878;y=2036477234;_=1797285236;do{L=(Ii(p+d|0,7)|0)^a;P=(Ii(L+p|0,9)|0)^c;O=(Ii(P+L|0,13)|0)^d;K=(Ii(O+P|0,18)|0)^p;N=(Ii(t+b|0,7)|0)^u;R=(Ii(N+b|0,9)|0)^l;H=(Ii(R+N|0,13)|0)^t;q=(Ii(H+R|0,18)|0)^b;B=(Ii(o+y|0,7)|0)^h;Y=(Ii(B+y|0,9)|0)^n;U=(Ii(Y+B|0,13)|0)^o;C=(Ii(U+Y|0,18)|0)^y;F=(Ii(f+_|0,7)|0)^i;D=(Ii(F+_|0,9)|0)^s;j=(Ii(D+F|0,13)|0)^f;z=(Ii(j+D|0,18)|0)^_;t=(Ii(F+K|0,7)|0)^H;n=(Ii(t+K|0,9)|0)^Y;i=(Ii(n+t|0,13)|0)^F;p=(Ii(i+n|0,18)|0)^K;o=(Ii(q+L|0,7)|0)^U;s=(Ii(o+q|0,9)|0)^D;a=(Ii(s+o|0,13)|0)^L;b=(Ii(a+s|0,18)|0)^q;f=(Ii(C+N|0,7)|0)^j;c=(Ii(f+C|0,9)|0)^P;u=(Ii(c+f|0,13)|0)^N;y=(Ii(u+c|0,18)|0)^C;d=(Ii(z+B|0,7)|0)^O;l=(Ii(d+z|0,9)|0)^R;h=(Ii(l+d|0,13)|0)^B;_=(Ii(h+l|0,18)|0)^z;r=r+2|0}while((r|0)<20);Cn(e,p+1634760805|0);Cn(e+4|0,t+A|0);Cn(e+8|0,n+M|0);Cn(e+12|0,i+T|0);Cn(e+16|0,a+I|0);Cn(e+20|0,b+857760878|0);Cn(e+24|0,o+v|0);Cn(e+28|0,s+w|0);Cn(e+32|0,c+k|0);Cn(e+36|0,u+m|0);Cn(e+40|0,y+2036477234|0);Cn(e+44|0,f+E|0);Cn(e+48|0,d+S|0);Cn(e+52|0,l+x|0);Cn(e+56|0,h+g|0);Cn(e+60|0,_+1797285236|0);return}function we(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,T=0,I=0,z=0,B=0,R=0,O=0,C=0,N=0,P=0,j=0,q=0,L=0;if(!n){n=1797285236;i=2036477234;a=857760878;o=1634760805}else{o=ei(n)|0;a=ei(n+4|0)|0;i=ei(n+8|0)|0;n=ei(n+12|0)|0}_=ei(r)|0;y=ei(r+4|0)|0;b=ei(r+8|0)|0;p=ei(r+12|0)|0;d=ei(r+16|0)|0;l=ei(r+20|0)|0;h=ei(r+24|0)|0;f=ei(r+28|0)|0;u=ei(t)|0;c=ei(t+4|0)|0;s=ei(t+8|0)|0;m=0;t=ei(t+12|0)|0;r=o;do{j=_+r|0;A=Ii(u^j,16)|0;x=A+d|0;q=Ii(x^_,12)|0;A=Ii(q+j^A,8)|0;k=Ii(A+x^q,7)|0;O=y+a|0;v=Ii(c^O,16)|0;g=v+l|0;C=Ii(g^y,12)|0;v=Ii(C+O^v,8)|0;L=Ii(v+g^C,7)|0;T=b+i|0;w=Ii(s^T,16)|0;M=w+h|0;I=Ii(M^b,12)|0;w=Ii(I+T^w,8)|0;N=Ii(w+M^I,7)|0;E=p+n|0;B=Ii(t^E,16)|0;o=B+f|0;S=Ii(o^p,12)|0;B=Ii(S+E^B,8)|0;z=Ii(B+o^S,7)|0;P=Ii(B^L+(q+j),16)|0;R=Ii(P+(w+M)^L,12)|0;r=R+(L+(q+j))|0;t=Ii(r^P,8)|0;h=t+(P+(w+M))|0;y=Ii(h^R,7)|0;R=Ii(N+(C+O)^A,16)|0;M=Ii(R+(B+o)^N,12)|0;a=M+(N+(C+O))|0;u=Ii(a^R,8)|0;f=u+(R+(B+o))|0;b=Ii(f^M,7)|0;M=Ii(z+(I+T)^v,16)|0;o=Ii(M+(A+x)^z,12)|0;i=o+(z+(I+T))|0;c=Ii(i^M,8)|0;d=c+(M+(A+x))|0;p=Ii(d^o,7)|0;w=Ii(S+E+k^w,16)|0;o=Ii(w+(v+g)^k,12)|0;n=o+(S+E+k)|0;s=Ii(n^w,8)|0;l=s+(w+(v+g))|0;_=Ii(l^o,7)|0;m=m+1|0}while((m|0)!=10);Cn(e,r);Cn(e+4|0,a);Cn(e+8|0,i);Cn(e+12|0,n);Cn(e+16|0,u);Cn(e+20|0,c);Cn(e+24|0,s);Cn(e+28|0,t);return 0}function ke(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,b=0,y=0,_=0;l=p;h=p=p+63&-64;p=p+704|0;e:do{if(!((r|0)==0&(i|0)==0)){_=a[e+72>>2]|0;b=a[e+72+4>>2]|0;f=fn(_|0,b|0,3)|0;d=cn(r|0,i|0,3)|0;y=M;c=fn(r|0,i|0,61)|0;u=M;b=In(_|0,b|0,d|0,y|0)|0;_=M;a[e+72>>2]=b;a[e+72+4>>2]=_;o=a[e+64>>2]|0;s=a[e+64+4>>2]|0;if(_>>>0>>0|(_|0)==(y|0)&b>>>0>>0){o=In(o|0,s|0,1,0)|0;s=M;a[e+64>>2]=o;a[e+64+4>>2]=s}u=In(o|0,s|0,c|0,u|0)|0;a[e+64>>2]=u;a[e+64+4>>2]=M;u=Mn(128,0,f&127|0,0)|0;o=M;if(o>>>0>i>>>0|(o|0)==(i|0)&u>>>0>r>>>0){o=0;s=0;while(1){y=n[t+o>>0]|0;_=In(o|0,s|0,f&127|0,0)|0;n[e+80+_>>0]=y;o=In(o|0,s|0,1,0)|0;s=M;if(!(s>>>0>>0|(s|0)==(i|0)&o>>>0>>0))break e}}if(!((u|0)==0&(o|0)==0)){s=0;c=0;do{y=n[t+s>>0]|0;_=In(s|0,c|0,f&127|0,0)|0;n[e+80+_>>0]=y;s=In(s|0,c|0,1,0)|0;c=M}while(c>>>0>>0|(c|0)==(o|0)&s>>>0>>0)}se(e,e+80|0,h,h+640|0);o=Mn(r|0,i|0,u|0,o|0)|0;s=M;if(s>>>0>0|(s|0)==0&o>>>0>127){c=t+u|0;do{se(e,c,h,h+640|0);c=c+128|0;o=In(o|0,s|0,-128,-1)|0;s=M}while(s>>>0>0|(s|0)==0&o>>>0>127);u=c}else u=t+u|0;o=o&127;if(!((o|0)==0&0==0)){s=0;c=0;do{n[e+80+s>>0]=n[u+s>>0]|0;s=In(s|0,c|0,1,0)|0;c=M}while(c>>>0<0|(c|0)==0&s>>>0>>0)}lr(h,704)}}while(0);p=l;return}function Ee(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+160|0;le(n+120|0,t);le(n+80|0,n+120|0);le(n+80|0,n+80|0);fe(n+80|0,t,n+80|0);fe(n+120|0,n+120|0,n+80|0);le(n+40|0,n+120|0);fe(n+80|0,n+80|0,n+40|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=5);fe(n+80|0,n+40|0,n+80|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=10);fe(n+40|0,n+40|0,n+80|0);le(n,n+40|0);t=1;do{le(n,n);t=t+1|0}while((t|0)!=20);fe(n+40|0,n,n+40|0);le(n+40|0,n+40|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=10);fe(n+80|0,n+40|0,n+80|0);le(n+40|0,n+80|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=50);fe(n+40|0,n+40|0,n+80|0);le(n,n+40|0);t=1;do{le(n,n);t=t+1|0}while((t|0)!=100);fe(n+40|0,n,n+40|0);le(n+40|0,n+40|0);t=1;do{le(n+40|0,n+40|0);t=t+1|0}while((t|0)!=50);fe(n+80|0,n+40|0,n+80|0);le(n+80|0,n+80|0);t=1;do{le(n+80|0,n+80|0);t=t+1|0}while((t|0)!=5);fe(e,n+80|0,n+120|0);p=r;return}function Se(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;n=p;i=p=p+63&-64;p=p+128|0;le(i+80|0,t);le(i+40|0,i+80|0);le(i+40|0,i+40|0);fe(i+40|0,t,i+40|0);fe(i+80|0,i+80|0,i+40|0);le(i+80|0,i+80|0);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=5);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=10);fe(i+40|0,i+40|0,i+80|0);le(i,i+40|0);r=1;do{le(i,i);r=r+1|0}while((r|0)!=20);fe(i+40|0,i,i+40|0);le(i+40|0,i+40|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=10);fe(i+80|0,i+40|0,i+80|0);le(i+40|0,i+80|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=50);fe(i+40|0,i+40|0,i+80|0);le(i,i+40|0);r=1;do{le(i,i);r=r+1|0}while((r|0)!=100);fe(i+40|0,i,i+40|0);le(i+40|0,i+40|0);r=1;do{le(i+40|0,i+40|0);r=r+1|0}while((r|0)!=50);fe(i+80|0,i+40|0,i+80|0);le(i+80|0,i+80|0);le(i+80|0,i+80|0);fe(e,i+80|0,t);p=n;return}function xe(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0;l=a[t>>2]|0;s=a[t+4>>2]|0;c=a[t+8>>2]|0;u=a[t+12>>2]|0;b=a[t+16>>2]|0;i=a[t+20>>2]|0;o=a[t+24>>2]|0;d=a[t+28>>2]|0;r=a[t+32>>2]|0;t=a[t+36>>2]|0;p=((((((((((((((t*19|0)+16777216|0)>>>25)+l>>26)+s>>25)+c>>26)+u>>25)+b>>26)+i>>25)+o>>26)+d>>25)+r>>26)+t>>25)*19|0)+l>>26;l=((((((((((((((t*19|0)+16777216|0)>>>25)+l>>26)+s>>25)+c>>26)+u>>25)+b>>26)+i>>25)+o>>26)+d>>25)+r>>26)+t>>25)*19|0)+l-(p<<26)|0;h=p+s-(p+s>>25<<25)|0;f=(p+s>>25)+c-((p+s>>25)+c>>26<<26)|0;y=((p+s>>25)+c>>26)+u>>25;u=((p+s>>25)+c>>26)+u-(y<<25)|0;c=y+b-(y+b>>26<<26)|0;s=(y+b>>26)+i-((y+b>>26)+i>>25<<25)|0;p=((y+b>>26)+i>>25)+o>>26;o=((y+b>>26)+i>>25)+o-(p<<26)|0;i=p+d-(p+d>>25<<25)|0;t=((p+d>>25)+r>>26)+t|0;r=(p+d>>25)+r-((p+d>>25)+r>>26<<26)|0;n[e>>0]=l;n[e+1>>0]=l>>>8;n[e+2>>0]=l>>>16;n[e+3>>0]=h<<2|l>>>24;n[e+4>>0]=h>>>6;n[e+5>>0]=h>>>14;n[e+6>>0]=f<<3|h>>>22;n[e+7>>0]=f>>>5;n[e+8>>0]=f>>>13;n[e+9>>0]=u<<5|f>>>21;n[e+10>>0]=u>>>3;n[e+11>>0]=u>>>11;n[e+12>>0]=c<<6|u>>>19;n[e+13>>0]=c>>>2;n[e+14>>0]=c>>>10;n[e+15>>0]=c>>>18;n[e+16>>0]=s;n[e+17>>0]=s>>>8;n[e+18>>0]=s>>>16;n[e+19>>0]=o<<1|s>>>24;n[e+20>>0]=o>>>7;n[e+21>>0]=o>>>15;n[e+22>>0]=i<<3|o>>>23;n[e+23>>0]=i>>>5;n[e+24>>0]=i>>>13;n[e+25>>0]=r<<4|i>>>21;n[e+26>>0]=r>>>4;n[e+27>>0]=r>>>12;n[e+28>>0]=r>>>20|(t&33554431)<<6;n[e+29>>0]=t>>>2;n[e+30>>0]=t>>>10;n[e+31>>0]=(t&33554431)>>>18;return}function Ae(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0,S=0,x=0,A=0,M=0,T=0,I=0,z=0,B=0,R=0,O=0;c=ei(r)|0;s=ei(r+4|0)|0;o=ei(r+8|0)|0;a=ei(r+12|0)|0;_=ei(r+16|0)|0;y=ei(r+20|0)|0;b=ei(r+24|0)|0;p=ei(r+28|0)|0;i=ei(t)|0;n=ei(t+4|0)|0;u=ei(t+8|0)|0;r=ei(t+12|0)|0;t=u;u=20;f=2036477234;h=857760878;l=1634760805;d=1797285236;while(1){M=(Ii(y+l|0,7)|0)^a;S=(Ii(M+l|0,9)|0)^t;w=(Ii(S+M|0,13)|0)^y;z=(Ii(w+S|0,18)|0)^l;E=(Ii(h+c|0,7)|0)^r;v=(Ii(E+h|0,9)|0)^b;O=(Ii(v+E|0,13)|0)^c;A=(Ii(O+v|0,18)|0)^h;g=(Ii(f+i|0,7)|0)^p;R=(Ii(g+f|0,9)|0)^s;I=(Ii(R+g|0,13)|0)^i;k=(Ii(I+R|0,18)|0)^f;B=(Ii(d+_|0,7)|0)^o;T=(Ii(B+d|0,9)|0)^n;x=(Ii(T+B|0,13)|0)^_;m=(Ii(x+T|0,18)|0)^d;c=(Ii(B+z|0,7)|0)^O;s=(Ii(c+z|0,9)|0)^R;o=(Ii(s+c|0,13)|0)^B;l=(Ii(o+s|0,18)|0)^z;i=(Ii(A+M|0,7)|0)^I;n=(Ii(i+A|0,9)|0)^T;a=(Ii(n+i|0,13)|0)^M;h=(Ii(a+n|0,18)|0)^A;_=(Ii(k+E|0,7)|0)^x;t=(Ii(_+k|0,9)|0)^S;r=(Ii(t+_|0,13)|0)^E;f=(Ii(r+t|0,18)|0)^k;y=(Ii(m+g|0,7)|0)^w;b=(Ii(y+m|0,9)|0)^v;p=(Ii(b+y|0,13)|0)^g;d=(Ii(p+b|0,18)|0)^m;if((u|0)<=2)break;else u=u+-2|0}Cn(e,l);Cn(e+4|0,h);Cn(e+8|0,f);Cn(e+12|0,d);Cn(e+16|0,i);Cn(e+20|0,n);Cn(e+24|0,t);Cn(e+28|0,r);return}function Me(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0,s=0,c=0;s=p;c=p=p+63&-64;p=p+320|0;a=c+280|0;i=a+32|0;do{n[a>>0]=n[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));n[c+280>>0]=n[c+280>>0]&-8;n[c+280+31>>0]=n[c+280+31>>0]&63|64;_e(c+240|0,r);dn(c+200|0);Pn(c+160|0);vt(c+120|0,c+240|0);dn(c+80|0);t=0;i=254;while(1){a=t;t=(o[c+280+(i>>>3)>>0]|0)>>>(i&7)&1;a=t^a;Ce(c+200|0,c+120|0,a);Ce(c+160|0,c+80|0,a);We(c+40|0,c+120|0,c+80|0);We(c,c+200|0,c+160|0);Je(c+200|0,c+200|0,c+160|0);Je(c+160|0,c+120|0,c+80|0);fe(c+80|0,c+40|0,c+200|0);fe(c+160|0,c+160|0,c);le(c+40|0,c);le(c,c+200|0);Je(c+120|0,c+80|0,c+160|0);We(c+160|0,c+80|0,c+160|0);fe(c+200|0,c,c+40|0);We(c,c,c+40|0);le(c+160|0,c+160|0);me(c+80|0,c);le(c+120|0,c+120|0);Je(c+40|0,c+40|0,c+80|0);fe(c+80|0,c+240|0,c+160|0);fe(c+160|0,c,c+40|0);if((i|0)<=0)break;else i=i+-1|0}Ce(c+200|0,c+120|0,t);Ce(c+160|0,c+80|0,t);Ee(c+160|0,c+160|0);fe(c+200|0,c+200|0,c+160|0);xe(e,c+200|0);p=s;return 0}function Te(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0;s=a[e+56>>2]|0;o=a[e+56+4>>2]|0;if(!((s|0)==0&(o|0)==0)){u=Mn(16,0,s|0,o|0)|0;h=M;f=h>>>0>i>>>0|(h|0)==(i|0)&u>>>0>r>>>0?r:u;h=h>>>0>i>>>0|(h|0)==(i|0)&u>>>0>r>>>0?i:h;if(!((f|0)==0&(h|0)==0)){u=0;c=0;do{d=n[t+u>>0]|0;s=In(s|0,o|0,u|0,c|0)|0;n[e+64+s>>0]=d;u=In(u|0,c|0,1,0)|0;c=M;s=a[e+56>>2]|0;o=a[e+56+4>>2]|0}while(c>>>0>>0|(c|0)==(h|0)&u>>>0>>0)}d=In(s|0,o|0,f|0,h|0)|0;u=M;a[e+56>>2]=d;a[e+56+4>>2]=u;if(!(u>>>0<0|(u|0)==0&d>>>0<16)){r=Mn(r|0,i|0,f|0,h|0)|0;i=M;ye(e,e+64|0,16,0);a[e+56>>2]=0;a[e+56+4>>2]=0;t=t+f|0;l=6}}else l=6;if((l|0)==6){o=r&-16;if(i>>>0>0|(i|0)==0&r>>>0>15){r=Mn(r|0,i|0,o|0,i|0)|0;d=M;ye(e,t,o,i);t=t+o|0;o=d}else o=i;if(!((r|0)==0&(o|0)==0)){i=0;s=a[e+56>>2]|0;c=a[e+56+4>>2]|0;u=0;do{l=n[t+i>>0]|0;d=In(s|0,c|0,i|0,u|0)|0;n[e+64+d>>0]=l;i=In(i|0,u|0,1,0)|0;u=M;s=a[e+56>>2]|0;c=a[e+56+4>>2]|0}while(u>>>0>>0|(u|0)==(o|0)&i>>>0>>0);d=In(s|0,c|0,r|0,o|0)|0;a[e+56>>2]=d;a[e+56+4>>2]=M}}return}function Ie(e,t,r,i,s,c,u,f){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0,l=0,d=0,b=0;d=p;b=p=p+63&-64;p=p+112|0;if(!((r|0)==0&(i|0)==0)){l=b+16|0;h=l+32|0;do{n[l>>0]=n[f>>0]|0;l=l+1|0;f=f+1|0}while((l|0)<(h|0));f=o[s+4>>0]|o[s+4+1>>0]<<8|o[s+4+2>>0]<<16|o[s+4+3>>0]<<24;a[b>>2]=o[s>>0]|o[s+1>>0]<<8|o[s+2>>0]<<16|o[s+3>>0]<<24;a[b+4>>2]=f;f=8;while(1){n[b+f>>0]=c;c=fn(c|0,u|0,8)|0;f=f+1|0;if((f|0)==16)break;else u=M}if(i>>>0>0|(i|0)==0&r>>>0>63){f=e;c=r;while(1){yi(b+48|0,b,b+16|0);e=0;do{n[f+e>>0]=n[b+48+e>>0]^n[t+e>>0];e=e+1|0}while((e|0)!=64);e=1;u=8;while(1){r=b+u|0;e=(o[r>>0]|0)+e|0;n[r>>0]=e;u=u+1|0;if((u|0)==16)break;else e=e>>>8}u=In(c|0,i|0,-64,-1)|0;i=M;e=f+64|0;t=t+64|0;if(i>>>0>0|(i|0)==0&u>>>0>63){f=e;c=u}else break}}else u=r;if(!((u|0)==0&(i|0)==0)?(yi(b+48|0,b,b+16|0),u|0):0){i=0;do{n[e+i>>0]=n[b+48+i>>0]^n[t+i>>0];i=i+1|0}while((i|0)!=(u|0))}lr(b+48|0,64);lr(b+16|0,32)}p=d;return}function ze(e,t,r,i,a,o,s){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0,u=0,f=0,h=0;u=p;f=p=p+63&-64;p=p+352|0;Ae(f+256|0,o,s);if(e>>>0>r>>>0?0>>0|0==(a|0)&(e-r|0)>>>0>>0:0)c=5;else if(r>>>0>e>>>0?0>>0|0==(a|0)&(r-e|0)>>>0>>0:0)c=5;if((c|0)==5){ir(e|0,r|0,i|0)|0;r=e}s=f+288|0;c=s+32|0;do{n[s>>0]=0;s=s+1|0}while((s|0)<(c|0));s=a>>>0>0|(a|0)==0&i>>>0>32?32:i;c=a>>>0>0|(a|0)==0&i>>>0>32?0:a;if(!((s|0)==0&(c|0)==0)){h=Mn(-2,-1,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~i:-33)|0,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~a:-1)|0)|0;je(f+288+32|0,r|0,h+1|0)|0}h=In(s|0,c|0,32,0)|0;kn(f+288|0,f+288|0,h,M,o+16|0,f+256|0);fi(f,f+288|0);if(!((s|0)==0&(c|0)==0)){h=Mn(-2,-1,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~i:-33)|0,(~a>>>0>4294967295|(~a|0)==-1&~i>>>0>4294967263?~a:-1)|0)|0;je(e|0,f+288+32|0,h+1|0)|0}lr(f+288|0,64);if(a>>>0>0|(a|0)==0&i>>>0>32){h=Mn(i|0,a|0,s|0,c|0)|0;gn(e+s|0,r+s|0,h,M,o+16|0,f+256|0)}lr(f+256|0,32);zn(f,e,i,a);ui(f,t);lr(f,256);p=u;return 0}function Be(e,t){e=e|0;t=t|0;var r=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;i=a[e+56>>2]|0;r=a[e+56+4>>2]|0;if(!((i|0)==0&(r|0)==0)){o=1;while(1){n[e+64+i>>0]=o;i=In(i|0,r|0,1,0)|0;r=M;if(!(r>>>0<0|(r|0)==0&i>>>0<16))break;else o=0}n[e+80>>0]=1;ye(e,e+64|0,16,0)}i=a[e+24>>2]|0;o=(a[e+28>>2]|0)+(i>>>26)|0;f=(o>>>26)+(a[e+32>>2]|0)|0;c=(f>>>26)+(a[e+36>>2]|0)|0;s=((c>>>26)*5|0)+(a[e+20>>2]|0)|0;h=((((s&67108863)+5|0)>>>26)+((s>>>26)+(i&67108863))|0)>>>26;u=(c|-67108864)+((((h+(o&67108863)|0)>>>26)+(f&67108863)|0)>>>26)|0;i=(((s&67108863)+5|0)>>>26)+((s>>>26)+(i&67108863))&67108863&(u>>>31)+-1|u>>31&(s>>>26)+(i&67108863);f=((h+(o&67108863)|0)>>>26)+f&67108863&(u>>>31)+-1|u>>31&(f&67108863);s=In(s+5&67108863&(u>>>31)+-1|u>>31&(s&67108863)|i<<26|0,0,a[e+40>>2]|0,0)|0;r=M;i=In(i>>>6|(h+o&67108863&(u>>>31)+-1|u>>31&(o&67108863))<<20|0,0,a[e+44>>2]|0,0)|0;r=In(i|0,M|0,r|0,0)|0;i=M;o=In((h+o&67108863&(u>>>31)+-1|u>>31&(o&67108863))>>>12|f<<14|0,0,a[e+48>>2]|0,0)|0;i=In(o|0,M|0,i|0,0)|0;o=M;c=In(f>>>18|((u>>>31)+-1&u|u>>31&c)<<8|0,0,a[e+52>>2]|0,0)|0;o=In(c|0,M|0,o|0,0)|0;Cn(t,s);Cn(t+4|0,r);Cn(t+8|0,i);Cn(t+12|0,o);lr(e,88);return}function Re(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;i=p;r=p=p+63&-64;p=p+208|0;_e(e+40|0,t);dn(e+80|0);le(r+160|0,e+40|0);fe(r+120|0,r+160|0,1104);We(r+160|0,r+160|0,e+80|0);Je(r+120|0,r+120|0,e+80|0);le(r+80|0,r+120|0);fe(r+80|0,r+80|0,r+120|0);le(e,r+80|0);fe(e,e,r+120|0);fe(e,e,r+160|0);Se(e,e);fe(e,e,r+80|0);fe(e,e,r+160|0);le(r+40|0,e);fe(r+40|0,r+40|0,r+120|0);We(r,r+40|0,r+160|0);if(qr(r)|0){Je(r,r+40|0,r+160|0);if(!(qr(r)|0)){fe(e,e,1144);n=4}else e=-1}else n=4;if((n|0)==4){n=Fr(e)|0;if((n|0)==((o[t+31>>0]|0)>>>7|0))dt(e,e);fe(e+120|0,e,e+40|0);e=0}p=i;return e|0}function Oe(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,s=0,c=0;i=p;a=p=p+63&-64;p=p+464|0;r=0;do{c=n[t+r>>0]|0;s=r<<1;n[a+400+s>>0]=c&15;n[a+400+(s|1)>>0]=(c&255)>>>4;r=r+1|0}while((r|0)!=32);r=0;t=0;do{c=a+400+t|0;s=(o[c>>0]|0)+r|0;r=(s<<24)+134217728>>28;n[c>>0]=s-(r<<4);t=t+1|0}while((t|0)!=63);n[a+400+63>>0]=(o[a+400+63>>0]|0)+r;Vr(e);r=1;do{Qe(a,(r|0)/2|0,n[a+400+r>>0]|0);ut(a+240|0,e,a);or(e,a+240|0);r=r+2|0}while((r|0)<64);Rr(a+240|0,e);Or(a+120|0,a+240|0);bt(a+240|0,a+120|0);Or(a+120|0,a+240|0);bt(a+240|0,a+120|0);Or(a+120|0,a+240|0);bt(a+240|0,a+120|0);or(e,a+240|0);r=0;do{Qe(a,(r|0)/2|0,n[a+400+r>>0]|0);ut(a+240|0,e,a);or(e,a+240|0);r=r+2|0}while((r|0)<64);p=i;return}function Ce(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0,E=0;E=a[e>>2]|0;w=a[e+4>>2]|0;g=a[e+8>>2]|0;_=a[e+12>>2]|0;b=a[e+16>>2]|0;d=a[e+20>>2]|0;h=a[e+24>>2]|0;u=a[e+28>>2]|0;s=a[e+32>>2]|0;i=a[e+36>>2]|0;k=a[t>>2]|0;v=a[t+4>>2]|0;m=a[t+8>>2]|0;y=a[t+12>>2]|0;p=a[t+16>>2]|0;l=a[t+20>>2]|0;f=a[t+24>>2]|0;c=a[t+28>>2]|0;o=a[t+32>>2]|0;n=a[t+36>>2]|0;a[e>>2]=(k^E)&0-r^E;a[e+4>>2]=(v^w)&0-r^w;a[e+8>>2]=(m^g)&0-r^g;a[e+12>>2]=(y^_)&0-r^_;a[e+16>>2]=(p^b)&0-r^b;a[e+20>>2]=(l^d)&0-r^d;a[e+24>>2]=(f^h)&0-r^h;a[e+28>>2]=(c^u)&0-r^u;a[e+32>>2]=(o^s)&0-r^s;a[e+36>>2]=(n^i)&0-r^i;a[t>>2]=(k^E)&0-r^k;a[t+4>>2]=(v^w)&0-r^v;a[t+8>>2]=(m^g)&0-r^m;a[t+12>>2]=(y^_)&0-r^y;a[t+16>>2]=(p^b)&0-r^p;a[t+20>>2]=(l^d)&0-r^l;a[t+24>>2]=(f^h)&0-r^f;a[t+28>>2]=(c^u)&0-r^c;a[t+32>>2]=(o^s)&0-r^o;a[t+36>>2]=(n^i)&0-r^n;return}function Ne(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0,u=0,f=0;u=p;c=p=p+63&-64;p=p+96|0;Ae(c,a,o);pi(c+32|0,a+16|0,c);if(!(wn(r,t,n,i,c+32|0)|0))if(!e)r=0;else{if(t>>>0>=e>>>0?0>>0|0==(i|0)&(t-e|0)>>>0>>0:0)s=8;else if(e>>>0>=t>>>0?0>>0|0==(i|0)&(e-t|0)>>>0>>0:0)s=8;if((s|0)==8){ir(e|0,t|0,n|0)|0;t=e}r=i>>>0>0|(i|0)==0&n>>>0>32?32:n;o=i>>>0>0|(i|0)==0&n>>>0>32?0:i;if((r|0)==0&(o|0)==0)kn(c+32|0,c+32|0,32,0,a+16|0,c);else{s=Mn(-2,-1,(~i>>>0>4294967295|(~i|0)==-1&~n>>>0>4294967263?~n:-33)|0,(~i>>>0>4294967295|(~i|0)==-1&~n>>>0>4294967263?~i:-1)|0)|0;je(c+32+32|0,t|0,s+1|0)|0;f=In(r|0,o|0,32,0)|0;kn(c+32|0,c+32|0,f,M,a+16|0,c);je(e|0,c+32+32|0,s+1|0)|0}if(i>>>0>0|(i|0)==0&n>>>0>32){f=Mn(n|0,i|0,r|0,o|0)|0;gn(e+r|0,t+r|0,f,M,a+16|0,c)}lr(c,32);r=0}else{lr(c,32);r=-1}p=u;return r|0}function Pe(e,t,r,i,s){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;var c=0,u=0,f=0,h=0,l=0,d=0,b=0;d=p;b=p=p+63&-64;p=p+112|0;if(!((t|0)==0&(r|0)==0)){u=b+16|0;c=u+32|0;do{n[u>>0]=n[s>>0]|0;u=u+1|0;s=s+1|0}while((u|0)<(c|0));u=o[i+4>>0]|o[i+4+1>>0]<<8|o[i+4+2>>0]<<16|o[i+4+3>>0]<<24;a[b>>2]=o[i>>0]|o[i+1>>0]<<8|o[i+2>>0]<<16|o[i+3>>0]<<24;a[b+4>>2]=u;a[b+8>>2]=0;a[b+8+4>>2]=0;if(r>>>0>0|(r|0)==0&t>>>0>63){do{yi(e,b,b+16|0);s=1;c=8;while(1){u=b+c|0;s=(o[u>>0]|0)+s|0;n[u>>0]=s;c=c+1|0;if((c|0)==16)break;else s=s>>>8}t=In(t|0,r|0,-64,-1)|0;r=M;e=e+64|0}while(r>>>0>0|(r|0)==0&t>>>0>63);if(!((t|0)==0&(r|0)==0)){h=e;l=t;f=7}}else{h=e;l=t;f=7}if((f|0)==7?(yi(b+48|0,b,b+16|0),l|0):0){s=0;do{n[h+s>>0]=n[b+48+s>>0]|0;s=s+1|0}while((s|0)!=(l|0))}lr(b+48|0,64);lr(b+16|0,32)}p=d;return}function je(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0,s=0;if((r|0)>=8192)return te(e|0,t|0,r|0)|0;s=e|0;o=e+r|0;if((e&3)==(t&3)){while(e&3){if(!r)return s|0;n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}r=o&-4|0;i=r-64|0;while((e|0)<=(i|0)){a[e>>2]=a[t>>2];a[e+4>>2]=a[t+4>>2];a[e+8>>2]=a[t+8>>2];a[e+12>>2]=a[t+12>>2];a[e+16>>2]=a[t+16>>2];a[e+20>>2]=a[t+20>>2];a[e+24>>2]=a[t+24>>2];a[e+28>>2]=a[t+28>>2];a[e+32>>2]=a[t+32>>2];a[e+36>>2]=a[t+36>>2];a[e+40>>2]=a[t+40>>2];a[e+44>>2]=a[t+44>>2];a[e+48>>2]=a[t+48>>2];a[e+52>>2]=a[t+52>>2];a[e+56>>2]=a[t+56>>2];a[e+60>>2]=a[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(r|0)){a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}}else{r=o-4|0;while((e|0)<(r|0)){n[e>>0]=n[t>>0]|0;n[e+1>>0]=n[t+1>>0]|0;n[e+2>>0]=n[t+2>>0]|0;n[e+3>>0]=n[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(o|0)){n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0}return s|0}function qe(e,t,r,i,s,c,u){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;u=u|0;var f=0,h=0,l=0,d=0,p=0,b=0;e:do{if(!i){d=0;h=0;l=0;f=0}else{f=0;d=0;h=0;b=0;while(1){while(1){l=o[r+h>>0]|0;p=(((l&223)+201&255)+65526^((l&223)+201&255)+65520)>>>8;if((p|((l^48)+65526|0)>>>8)&255|0)break;if(!((s|0)!=0&f<<24>>24==0)){l=0;break e}if(!(Zn(s,l)|0)){l=0;f=0;break e}h=h+1|0;if(h>>>0>>0)f=0;else{l=0;f=0;break e}}if(d>>>0>=t>>>0)break;l=(l&223)+201&255&p|((l^48)+65526|0)>>>8&(l^48);if(!(f<<24>>24))l=l<<4&255;else{n[e+d>>0]=l|b&255;d=d+1|0;l=b}f=~f;h=h+1|0;if(h>>>0>>0)b=l;else{l=0;break e}}a[8242]=34;l=-1}}while(0);if(u|0)a[u>>2]=r+(((f<<24>>24!=0)<<31>>31)+h);if(c|0)a[c>>2]=d;return l|0}function Le(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;s=p;c=p=p+63&-64;p=p+192|0;if((t+-1&255)>63)Q();if(!r)Q();n[c+128>>0]=t;n[c+128+1>>0]=32;n[c+128+2>>0]=1;n[c+128+3>>0]=1;ai(c+128+4|0);Jr(c+128+8|0);t=c+128+16|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0));if(!i){t=c+128+32|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0))}else rn(c+128|0,i);if(!a){t=c+128+48|0;o=t+16|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0))}else tn(c+128|0,a);tr(e,c+128|0);t=c+32|0;o=t+96|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(o|0));t=c;o=t+32|0;do{n[t>>0]=n[r>>0]|0;t=t+1|0;r=r+1|0}while((t|0)<(o|0));Ve(e,c,128,0);lr(c,128);p=s;return}function De(e,t,r,n,i,a,o,s,c,u,f){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0;h=p;p=p+352|0;Ln(h+280|0,64,0,u,f);fi(h,h+280|0);lr(h+280|0,64);zn(h,o,s,c);t=Mn(0,0,s|0,c|0)|0;zn(h,35032,t&15,0);zn(h,r,n,i);t=Mn(0,0,n|0,i|0)|0;zn(h,35032,t&15,0);Mr(h+272|0,s,c);zn(h,h+272|0,8,0);Mr(h+272|0,n,i);zn(h,h+272|0,8,0);ui(h,h+256|0);lr(h,256);t=Mi(h+256|0,a)|0;lr(h+256|0,16);do{if(e)if(!t){_n(e,r,n,i,u,f);t=0;break}else{it(e|0,0,n|0)|0;t=-1;break}}while(0);p=h;return t|0}function Ue(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0,d=0,p=0,b=0,y=0,_=0,m=0,g=0,v=0,w=0,k=0;k=a[e>>2]|0;v=a[e+4>>2]|0;m=a[e+8>>2]|0;y=a[e+12>>2]|0;p=a[e+16>>2]|0;l=a[e+20>>2]|0;f=a[e+24>>2]|0;c=a[e+28>>2]|0;o=a[e+32>>2]|0;n=a[e+36>>2]|0;w=(a[t+4>>2]^v)&0-r;g=(a[t+8>>2]^m)&0-r;_=(a[t+12>>2]^y)&0-r;b=(a[t+16>>2]^p)&0-r;d=(a[t+20>>2]^l)&0-r;h=(a[t+24>>2]^f)&0-r;u=(a[t+28>>2]^c)&0-r;s=(a[t+32>>2]^o)&0-r;i=(a[t+36>>2]^n)&0-r;a[e>>2]=(a[t>>2]^k)&0-r^k;a[e+4>>2]=w^v;a[e+8>>2]=g^m;a[e+12>>2]=_^y;a[e+16>>2]=b^p;a[e+20>>2]=d^l;a[e+24>>2]=h^f;a[e+28>>2]=u^c;a[e+32>>2]=s^o;a[e+36>>2]=i^n;return}function Ke(e,t,r,i,o,s,c){e=e|0;t=t|0;r=r|0;i=i|0;o=o|0;s=s|0;c=c|0;var u=0,f=0;u=p;f=p=p+63&-64;p=p+560|0;kr(f+496|0,s,32,0);n[f+496>>0]=n[f+496>>0]&-8;n[f+496+31>>0]=n[f+496+31>>0]&63|64;Rn(f,c);ke(f,f+496+32|0,32,0);ke(f,r,i,o);Cr(f,f+432|0);ir(e+32|0,s+32|0,32)|0;ue(f+432|0);Oe(f+208|0,f+432|0);Rt(e,f+208|0);Rn(f,c);ke(f,e,64,0);ke(f,r,i,o);Cr(f,f+368|0);ue(f+368|0);oe(e+32|0,f+368|0,f+496|0,f+432|0);lr(f+496|0,64);if(t|0){a[t>>2]=64;a[t+4>>2]=0}p=u;return}function Fe(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;var s=0,c=0,u=0,f=0;f=p;u=p=p+63&-64;p=p+592|0;if((($t(e+32|0)|0)==0?(nr(e)|0)==0:0)?(Re(u+328|0,i)|0)==0:0){s=0;c=0;do{c=o[i+s>>0]|0|c;s=s+1|0}while((s|0)!=32);if(c){Rn(u,a);ke(u,e,32,0);ke(u,i,32,0);ke(u,t,r,n);Cr(u,u+520|0);ue(u+520|0);ge(u+208|0,u+520|0,u+328|0,e+32|0);Rt(u+488|0,u+208|0);s=Ai(u+488|0,e)|0;s=((u+488|0)==(e|0)?-1:s)|(Ft(e,u+488|0)|0)}else s=-1}else s=-1;p=f;return s|0}function Ye(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,s=0,c=0;r=0;do{n[e+r>>0]=(o[t+(r>>3)>>0]|0)>>>(r&7)&1;r=r+1|0}while((r|0)!=256);s=0;do{c=e+s|0;e:do{if(n[c>>0]|0){a=1;do{r=a+s|0;if((r|0)>=256)break e;t=n[e+r>>0]|0;t:do{if(t<<24>>24){t=t<<24>>24<>0]|0;if((i+t|0)<16){n[c>>0]=i+t;n[e+r>>0]=0;break}if((i-t|0)<=-16)break e;n[c>>0]=i-t;while(1){t=e+r|0;if(!(n[t>>0]|0))break;n[t>>0]=0;r=r+1|0;if((r|0)>=256)break t}n[t>>0]=1}}while(0);a=a+1|0}while((a|0)<7)}}while(0);s=s+1|0}while((s|0)!=256);return}function He(e,t,r,n,i,o,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;f=p;p=p+336|0;Ln(f+264|0,64,0,h,l);fi(f,f+264|0);lr(f+264|0,64);zn(f,s,c,u);s=Mn(0,0,c|0,u|0)|0;zn(f,35032,s&15,0);_n(e,n,i,o,h,l);zn(f,e,i,o);s=Mn(0,0,i|0,o|0)|0;zn(f,35032,s&15,0);Mr(f+256|0,c,u);zn(f,f+256|0,8,0);Mr(f+256|0,i,o);zn(f,f+256|0,8,0);ui(f,t);lr(f,256);if(r|0){a[r>>2]=16;a[r+4>>2]=0}p=f;return 0}function Ve(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var o=0,s=0,c=0,u=0;e:do{if(!((r|0)==0&(i|0)==0)){o=a[e+352>>2]|0;u=i;while(1){c=256-o|0;i=e+96+o|0;if(!(u>>>0>0|(u|0)==0&r>>>0>c>>>0))break;je(i|0,t|0,c|0)|0;a[e+352>>2]=(a[e+352>>2]|0)+c;Gt(e,128,0);ae(e,e+96|0);i=e+96|0;o=e+224|0;s=i+128|0;do{n[i>>0]=n[o>>0]|0;i=i+1|0;o=o+1|0}while((i|0)<(s|0));o=(a[e+352>>2]|0)+-128|0;a[e+352>>2]=o;r=Mn(r|0,u|0,c|0,0)|0;i=M;if((r|0)==0&(i|0)==0)break e;else{t=t+c|0;u=i}}je(i|0,t|0,r|0)|0;u=In(a[e+352>>2]|0,0,r|0,u|0)|0;a[e+352>>2]=u}}while(0);return}function Ge(e,t,r,n,i,a,o,s,c,u,f){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;var h=0;h=p;p=p+352|0;bi(h+280|0,u,f);fi(h,h+280|0);lr(h+280|0,64);zn(h,o,s,c);Mr(h+272|0,s,c);zn(h,h+272|0,8,0);zn(h,r,n,i);Mr(h+272|0,n,i);zn(h,h+272|0,8,0);ui(h,h+256|0);lr(h,256);t=Mi(h+256|0,a)|0;lr(h+256|0,16);do{if(e)if(!t){En(e,r,n,i,u,f);t=0;break}else{it(e|0,0,n|0)|0;t=-1;break}}while(0);p=h;return t|0}function Xe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0;if(r<<24>>24?(r&255)<=64:0){if(!(Si(a[e+80>>2]|0,a[e+80+4>>2]|0)|0)){n=a[e+352>>2]|0;do{if(n>>>0>128){Gt(e,128,0);ae(e,e+96|0);n=(a[e+352>>2]|0)+-128|0;a[e+352>>2]=n;if(n>>>0<129){je(e+96|0,e+224|0,n|0)|0;i=e+96|0;o=a[e+352>>2]|0;break}else $(33148,33180,367,33225)}else{i=e+96|0;o=n}}while(0);Gt(e,o,0);On(e);n=a[e+352>>2]|0;it(e+96+n|0,0,256-n|0)|0;ae(e,i);je(t|0,e|0,r&255|0)|0;n=0}else n=-1;return n|0}Q();return 0}function We(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0;l=(a[t+4>>2]|0)-(a[r+4>>2]|0)|0;h=(a[t+8>>2]|0)-(a[r+8>>2]|0)|0;f=(a[t+12>>2]|0)-(a[r+12>>2]|0)|0;u=(a[t+16>>2]|0)-(a[r+16>>2]|0)|0;c=(a[t+20>>2]|0)-(a[r+20>>2]|0)|0;s=(a[t+24>>2]|0)-(a[r+24>>2]|0)|0;o=(a[t+28>>2]|0)-(a[r+28>>2]|0)|0;i=(a[t+32>>2]|0)-(a[r+32>>2]|0)|0;n=(a[t+36>>2]|0)-(a[r+36>>2]|0)|0;a[e>>2]=(a[t>>2]|0)-(a[r>>2]|0);a[e+4>>2]=l;a[e+8>>2]=h;a[e+12>>2]=f;a[e+16>>2]=u;a[e+20>>2]=c;a[e+24>>2]=s;a[e+28>>2]=o;a[e+32>>2]=i;a[e+36>>2]=n;return}function Je(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0,l=0;l=(a[r+4>>2]|0)+(a[t+4>>2]|0)|0;h=(a[r+8>>2]|0)+(a[t+8>>2]|0)|0;f=(a[r+12>>2]|0)+(a[t+12>>2]|0)|0;u=(a[r+16>>2]|0)+(a[t+16>>2]|0)|0;c=(a[r+20>>2]|0)+(a[t+20>>2]|0)|0;s=(a[r+24>>2]|0)+(a[t+24>>2]|0)|0;o=(a[r+28>>2]|0)+(a[t+28>>2]|0)|0;i=(a[r+32>>2]|0)+(a[t+32>>2]|0)|0;n=(a[r+36>>2]|0)+(a[t+36>>2]|0)|0;a[e>>2]=(a[r>>2]|0)+(a[t>>2]|0);a[e+4>>2]=l;a[e+8>>2]=h;a[e+12>>2]=f;a[e+16>>2]=u;a[e+20>>2]=c;a[e+24>>2]=s;a[e+28>>2]=o;a[e+32>>2]=i;a[e+36>>2]=n;return}function Ze(e,t){e=e|0;t=t|0;var r=0,i=0;e:do{if(!(t&255))e=e+(wt(e)|0)|0;else{if(e&3)do{i=n[e>>0]|0;if(i<<24>>24==0?1:i<<24>>24==(t&255)<<24>>24)break e;e=e+1|0}while((e&3|0)!=0);i=K(t&255,16843009)|0;r=a[e>>2]|0;t:do{if(!((r&-2139062144^-2139062144)&r+-16843009))do{r=r^i;if((r&-2139062144^-2139062144)&r+-16843009|0)break t;e=e+4|0;r=a[e>>2]|0}while(!((r&-2139062144^-2139062144)&r+-16843009|0))}while(0);while(1){i=n[e>>0]|0;if(i<<24>>24==0?1:i<<24>>24==(t&255)<<24>>24)break;else e=e+1|0}}}while(0);return e|0}function $e(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;a=p;p=p+192|0;wr(e);r=a+64+1|0;i=r+127|0;do{n[r>>0]=54;r=r+1|0}while((r|0)<(i|0));n[a+64>>0]=n[t>>0]^54;r=1;do{i=a+64+r|0;n[i>>0]=n[i>>0]^n[t+r>>0];r=r+1|0}while((r|0)!=32);ke(e,a+64|0,128,0);wr(e+208|0);r=a+64+1|0;i=r+127|0;do{n[r>>0]=92;r=r+1|0}while((r|0)<(i|0));n[a+64>>0]=n[t>>0]^92;r=1;do{i=a+64+r|0;n[i>>0]=n[i>>0]^n[t+r>>0];r=r+1|0}while((r|0)!=32);ke(e+208|0,a+64|0,128,0);lr(a+64|0,128);lr(a,64);p=a;return}function Qe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0,a=0;n=p;a=p=p+63&-64;p=p+128|0;i=Qn(r)|0;r=(r<<24>>24)-((r<<24>>24&0-(i&255))<<1)&255;pn(e);Dr(e,2184+(t*960|0)|0,xi(r,1)|0);Dr(e,2184+(t*960|0)+120|0,xi(r,2)|0);Dr(e,2184+(t*960|0)+240|0,xi(r,3)|0);Dr(e,2184+(t*960|0)+360|0,xi(r,4)|0);Dr(e,2184+(t*960|0)+480|0,xi(r,5)|0);Dr(e,2184+(t*960|0)+600|0,xi(r,6)|0);Dr(e,2184+(t*960|0)+720|0,xi(r,7)|0);Dr(e,2184+(t*960|0)+840|0,xi(r,8)|0);vt(a,e+40|0);vt(a+40|0,e);dt(a+80|0,e+80|0);Dr(e,a,i);p=n;return}function et(e,t,r,i,s,c){e=e|0;t=t|0;r=r|0;i=i|0;s=s|0;c=c|0;var u=0,f=0,h=0;f=p;u=p=p+63&-64;p=p+32|0;h=o[s+4>>0]|o[s+4+1>>0]<<8|o[s+4+2>>0]<<16|o[s+4+3>>0]<<24;a[u>>2]=o[s>>0]|o[s+1>>0]<<8|o[s+2>>0]<<16|o[s+3>>0]<<24;a[u+4>>2]=h;a[u+8>>2]=0;a[u+8+4>>2]=0;Mr(u+16|0,r,i);s=u+16+8|0;n[s>>0]=0;n[s+1>>0]=0;n[s+2>>0]=0;n[s+3>>0]=0;s=u+16+8+4|0;n[s>>0]=0;n[s+1>>0]=0;n[s+2>>0]=0;n[s+3>>0]=0;if((t+-16|0)>>>0>48){a[8242]=22;e=-1}else e=jr(e,t,c,u+16|0,u)|0;p=f;return e|0}function tt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;c=p;s=p=p+63&-64;p=p+480|0;o=(e|0)==0?t:e;t=(t|0)==0?o:t;if(!o)Q();if(!(hi(s+448|0,i,a)|0)){Hn(s,0,0,64)|0;Kn(s,s+448|0,32,0)|0;lr(s+448|0,32);Kn(s,a,32,0)|0;Kn(s,r,32,0)|0;ni(s,s+384|0,64)|0;lr(s,384);e=0;do{n[t+e>>0]=n[s+384+e>>0]|0;n[o+e>>0]=n[s+384+(e+32)>>0]|0;e=e+1|0}while((e|0)!=32);lr(s+384|0,64);e=0}else e=-1;p=c;return e|0}function rt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0;c=p;s=p=p+63&-64;p=p+480|0;o=(e|0)==0?t:e;t=(t|0)==0?o:t;if(!o)Q();if(!(hi(s+448|0,i,a)|0)){Hn(s,0,0,64)|0;Kn(s,s+448|0,32,0)|0;lr(s+448|0,32);Kn(s,r,32,0)|0;Kn(s,a,32,0)|0;ni(s,s+384|0,64)|0;lr(s,384);e=0;do{n[o+e>>0]=n[s+384+e>>0]|0;n[t+e>>0]=n[s+384+(e+32)>>0]|0;e=e+1|0}while((e|0)!=32);lr(s+384|0,64);e=0}else e=-1;p=c;return e|0}function nt(e,t,r,n,i,o,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;f=p;p=p+336|0;bi(f+264|0,h,l);fi(f,f+264|0);lr(f+264|0,64);zn(f,s,c,u);Mr(f+256|0,c,u);zn(f,f+256|0,8,0);En(e,n,i,o,h,l);zn(f,e,i,o);Mr(f+256|0,i,o);zn(f,f+256|0,8,0);ui(f,t);lr(f,256);if(r|0){a[r>>2]=16;a[r+4>>2]=0}p=f;return 0}function it(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0;i=e+r|0;t=t&255;if((r|0)>=67){while(e&3){n[e>>0]=t;e=e+1|0}o=t|t<<8|t<<16|t<<24;while((e|0)<=((i&-4)-64|0)){a[e>>2]=o;a[e+4>>2]=o;a[e+8>>2]=o;a[e+12>>2]=o;a[e+16>>2]=o;a[e+20>>2]=o;a[e+24>>2]=o;a[e+28>>2]=o;a[e+32>>2]=o;a[e+36>>2]=o;a[e+40>>2]=o;a[e+44>>2]=o;a[e+48>>2]=o;a[e+52>>2]=o;a[e+56>>2]=o;a[e+60>>2]=o;e=e+64|0}while((e|0)<(i&-4|0)){a[e>>2]=o;e=e+4|0}}while((e|0)<(i|0)){n[e>>0]=t;e=e+1|0}return i-r|0}function at(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Je(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r+40|0);fe(e+40|0,e+40|0,r);fe(e+120|0,r+120|0,t+120|0);fe(e,t+80|0,r+80|0);Je(i,e,e);We(e,e+80|0,e+40|0);Je(e+40|0,e+80|0,e+40|0);We(e+80|0,i,e+120|0);Je(e+120|0,i,e+120|0);p=n;return}function ot(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Je(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r);fe(e+40|0,e+40|0,r+40|0);fe(e+120|0,r+120|0,t+120|0);fe(e,t+80|0,r+80|0);Je(i,e,e);We(e,e+80|0,e+40|0);Je(e+40|0,e+80|0,e+40|0);Je(e+80|0,i,e+120|0);We(e+120|0,i,e+120|0);p=n;return}function st(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,o=0,s=0;o=p;s=p=p+63&-64;p=p+192|0;if((t+-1&255)>63)Q();if((i+-1&255)>63|(r|0)==0)Q();else{n[s+128>>0]=t;n[s+128+1>>0]=i;n[s+128+2>>0]=1;n[s+128+3>>0]=1;ai(s+128+4|0);Jr(s+128+8|0);t=s+128+16|0;a=t+48|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(a|0));tr(e,s+128|0);it(s+(i&255)|0,0,(i<<24>>24<0?0:128-(i&255)|0)|0)|0;je(s|0,r|0,i&255|0)|0;Ve(e,s,128,0);lr(s,128);p=o;return}}function ct(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Je(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r+40|0);fe(e+40|0,e+40|0,r);fe(e+120|0,r+80|0,t+120|0);Je(i,t+80|0,t+80|0);We(e,e+80|0,e+40|0);Je(e+40|0,e+80|0,e+40|0);We(e+80|0,i,e+120|0);Je(e+120|0,i,e+120|0);p=n;return}function ut(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+48|0;Je(e,t+40|0,t);We(e+40|0,t+40|0,t);fe(e+80|0,e,r);fe(e+40|0,e+40|0,r+40|0);fe(e+120|0,r+80|0,t+120|0);Je(i,t+80|0,t+80|0);We(e,e+80|0,e+40|0);Je(e+40|0,e+80|0,e+40|0);Je(e+80|0,i,e+120|0);We(e+120|0,i,e+120|0);p=n;return}function ft(e,t,r,n,i,s,c,u,f,h,l,d){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;d=d|0;h=p;p=p+48|0;a[h>>2]=0;we(h+16|0,l,d,0)|0;d=o[l+16+4>>0]|o[l+16+4+1>>0]<<8|o[l+16+4+2>>0]<<16|o[l+16+4+3>>0]<<24;a[h+4>>2]=o[l+16>>0]|o[l+16+1>>0]<<8|o[l+16+2>>0]<<16|o[l+16+3>>0]<<24;a[h+4+4>>2]=d;He(e,t,r,n,i,s,c,u,f,0,h,h+16|0)|0;lr(h+16|0,32);p=h;return 0}function ht(e,t,r,n,i,s,c,u,f,h,l){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;l=l|0;t=p;p=p+48|0;a[t>>2]=0;we(t+16|0,h,l,0)|0;l=o[h+16+4>>0]|o[h+16+4+1>>0]<<8|o[h+16+4+2>>0]<<16|o[h+16+4+3>>0]<<24;a[t+4>>2]=o[h+16>>0]|o[h+16+1>>0]<<8|o[h+16+2>>0]<<16|o[h+16+3>>0]<<24;a[t+4+4>>2]=l;h=De(e,0,r,n,i,s,c,u,f,t,t+16|0)|0;lr(t+16|0,32);p=t;return h|0}function lt(e,t){e=e|0;t=t|0;a[e>>2]=(ei(t)|0)&67108863;a[e+4>>2]=(ei(t+3|0)|0)>>>2&67108611;a[e+8>>2]=(ei(t+6|0)|0)>>>4&67092735;a[e+12>>2]=(ei(t+9|0)|0)>>>6&66076671;a[e+16>>2]=(ei(t+12|0)|0)>>>8&1048575;a[e+20>>2]=0;a[e+20+4>>2]=0;a[e+20+8>>2]=0;a[e+20+12>>2]=0;a[e+20+16>>2]=0;a[e+40>>2]=ei(t+16|0)|0;a[e+44>>2]=ei(t+20|0)|0;a[e+48>>2]=ei(t+24|0)|0;a[e+52>>2]=ei(t+28|0)|0;a[e+56>>2]=0;a[e+56+4>>2]=0;n[e+80>>0]=0;return}function dt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;h=0-(a[t+4>>2]|0)|0;f=0-(a[t+8>>2]|0)|0;u=0-(a[t+12>>2]|0)|0;c=0-(a[t+16>>2]|0)|0;s=0-(a[t+20>>2]|0)|0;o=0-(a[t+24>>2]|0)|0;i=0-(a[t+28>>2]|0)|0;n=0-(a[t+32>>2]|0)|0;r=0-(a[t+36>>2]|0)|0;a[e>>2]=0-(a[t>>2]|0);a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=n;a[e+36>>2]=r;return}function pt(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+384|0;if((t|0)==0&((i|0)!=0|(a|0)!=0))Q();if(!e)Q();if((n+-1&255)>63)Q();if(!((r|0)!=0|o<<24>>24!=0^1))Q();if((o&255)>64)Q();if(o<<24>>24)st(c,n,r,o);else Bt(c,n);Ve(c,t,i,a);Xe(c,e,n)|0;p=s;return}function bt(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+48|0;le(e,t);le(e+80|0,t+40|0);he(e+120|0,t+80|0);Je(e+40|0,t,t+40|0);le(n,e+40|0);Je(e+40|0,e+80|0,e);We(e+80|0,e+80|0,e);We(e,n,e+40|0);We(e+120|0,e+120|0,e+80|0);p=r;return}function yt(e,t,r,n,i,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+16|0;ir(e+64|0,r|0,n|0)|0;yn(e,c,e+64|0,n,i,o);if((a[c>>2]|0)==64&(a[c+4>>2]|0)==0)if(t|0){e=In(n|0,i|0,64,0)|0;a[t>>2]=e;a[t+4>>2]=M;e=0}else e=0;else{if(t|0){a[t>>2]=0;a[t+4>>2]=0}c=In(n|0,i|0,64,0)|0;it(e|0,0,c|0)|0;e=-1}p=s;return e|0}function _t(e,t){e=e|0;t=t|0;var r=0,n=0;n=p;r=p=p+63&-64;p=p+240|0;if(!(Re(r+80|0,t)|0)){dn(r);We(r,r,r+80+40|0);Ee(r,r);dn(r+40|0);Je(r+40|0,r+40|0,r+80+40|0);fe(r+40|0,r+40|0,r);xe(e,r+40|0);e=0}else e=-1;p=n;return e|0}function mt(e,t,r,n,i,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;var s=0;n=In(n|0,i|0,-64,-1)|0;i=M;do{if(i>>>0>0|(i|0)==0&n>>>0>4294967231)s=7;else{if(vn(r,r+64|0,n,i,o)|0){it(e|0,0,n|0)|0;s=7;break}if(t|0){a[t>>2]=n;a[t+4>>2]=i}ir(e|0,r+64|0,n|0)|0;n=0}}while(0);if((s|0)==7)if(!t)n=-1;else{a[t>>2]=0;a[t+4>>2]=0;n=-1}return n|0}function gt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=fn(a[e+72>>2]|0,a[e+72+4>>2]|0,3)|0;if(0<0|0==0&(r&112)>>>0<112){je(e+80+(r&127)|0,33444,112-(r&127)|0)|0;r=e+80|0;n=t+640|0;i=e}else{je(e+80+(r&127)|0,33444,128-(r&127)|0)|0;se(e,e+80|0,t,t+640|0);r=e+80|0;n=r+112|0;do{a[r>>2]=0;r=r+4|0}while((r|0)<(n|0));r=e+80|0;n=t+640|0;i=e}Er(e+192|0,e+64|0,16);se(i,r,t,n);return}function vt(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0,s=0,c=0,u=0,f=0,h=0;h=a[t+4>>2]|0;f=a[t+8>>2]|0;u=a[t+12>>2]|0;c=a[t+16>>2]|0;s=a[t+20>>2]|0;o=a[t+24>>2]|0;i=a[t+28>>2]|0;n=a[t+32>>2]|0;r=a[t+36>>2]|0;a[e>>2]=a[t>>2];a[e+4>>2]=h;a[e+8>>2]=f;a[e+12>>2]=u;a[e+16>>2]=c;a[e+20>>2]=s;a[e+24>>2]=o;a[e+28>>2]=i;a[e+32>>2]=n;a[e+36>>2]=r;return}function wt(e){e=e|0;var t=0,r=0,i=0;e:do{if(!(e&3)){t=e;i=4}else{t=e;r=e;while(1){if(!(n[t>>0]|0)){t=r;break e}t=t+1|0;r=t;if(!(r&3)){i=4;break}}}}while(0);if((i|0)==4){while(1){r=a[t>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009))t=t+4|0;else break}if((r&255)<<24>>24)do{t=t+1|0}while((n[t>>0]|0)!=0)}return t-e|0}function kt(e,t,r,i,a){e=e|0;t=t|0;r=r|0;i=i|0;a=a|0;var o=0,s=0,c=0,u=0;u=p;p=p+96|0;if(!(di(u+32|0,u)|0)){o=e;s=u+32|0;c=o+32|0;do{n[o>>0]=n[s>>0]|0;o=o+1|0;s=s+1|0}while((o|0)<(c|0));rr(u+64|0,u+32|0,a);e=Tr(e+32|0,t,r,i,u+64|0,a,u)|0;lr(u,32);lr(u+32|0,32);lr(u+64|0,24)}else e=-1;p=u;return e|0}function Et(e,t){e=e|0;t=t|0;var r=0,i=0,a=0,o=0;a=p;o=p=p+63&-64;p=p+240|0;i=o+200|0;r=i+32|0;do{n[i>>0]=n[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(r|0));n[o+200>>0]=n[o+200>>0]&-8;n[o+200+31>>0]=n[o+200+31>>0]&63|64;Oe(o+40|0,o+200|0);er(o,o+40+40|0,o+40+80|0);xe(e,o);p=a;return 0}function St(e){e=e|0;var t=0,r=0,n=0,i=0,a=0,s=0,c=0;a=o[e+7>>0]|0;s=cn(o[e+6>>0]|0|0,0,8)|0;c=M;i=cn(o[e+5>>0]|0|0,0,16)|0;c=c|M;n=cn(o[e+4>>0]|0|0,0,24)|0;c=c|M|(o[e+3>>0]|0);r=cn(o[e+2>>0]|0|0,0,40)|0;c=c|M;t=cn(o[e+1>>0]|0|0,0,48)|0;c=c|M;e=cn(o[e>>0]|0|0,0,56)|0;M=c|M;return s|a|i|n|r|t|e|0}function xt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=In(i|0,o|0,-16,-1)|0;e=ht(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=In(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function At(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=In(i|0,o|0,-16,-1)|0;e=De(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=In(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function Mt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(o>>>0>0|(o|0)==0&i>>>0>15){r=In(i|0,o|0,-16,-1)|0;e=Ge(e,0,n,r,M,n+i+-16|0,s,c,u,f,h)|0}else e=-1;if(t|0){f=(e|0)==0;o=In(i|0,o|0,-16,-1)|0;a[t>>2]=f?o:0;a[t+4>>2]=f?M:0}return e|0}function Tt(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;var a=0,s=0;if(!(i>>>0<2147483647&i<<1>>>0>>0))Q();if(!i)t=0;else{a=0;t=0;while(1){s=o[r+a>>0]|0;n[e+t>>0]=(s>>>4)+87+(((s>>>4)+65526|0)>>>8&217);n[e+(t|1)>>0]=(((s&15)<<8)+22272+((s&15)+65526&55552)|0)>>>8;t=a+1|0;if((t|0)==(i|0)){t=i<<1;break}else{a=t;t=t<<1}}}n[e+t>>0]=0;return e|0}function It(e,t){e=e|0;t=t|0;a[e>>2]=1634760805;a[e+4>>2]=857760878;a[e+8>>2]=2036477234;a[e+12>>2]=1797285236;a[e+16>>2]=ei(t)|0;a[e+20>>2]=ei(t+4|0)|0;a[e+24>>2]=ei(t+8|0)|0;a[e+28>>2]=ei(t+12|0)|0;a[e+32>>2]=ei(t+16|0)|0;a[e+36>>2]=ei(t+20|0)|0;a[e+40>>2]=ei(t+24|0)|0;a[e+44>>2]=ei(t+28|0)|0;return}function zt(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;do{if(!(r>>>0>64|(n+-1|0)>>>0>63)){if(n>>>0>=256)$(33259,33279,52,33379);if(r>>>0>=256)$(33359,33279,53,33379);if((t|0)==0|(r|0)==0){Bt(e,n&255);e=0;break}else{st(e,n&255,t,r&255);e=0;break}}else e=-1}while(0);return e|0}function Bt(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;if((t+-1&255)>63)Q();else{n[a>>0]=t;n[a+1>>0]=0;n[a+2>>0]=1;n[a+3>>0]=1;ai(a+4|0);Jr(a+8|0);t=a+16|0;r=t+48|0;do{n[t>>0]=0;t=t+1|0}while((t|0)<(r|0));tr(e,a);p=i;return}}function Rt(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+128|0;Ee(i+80|0,t+80|0);fe(i+40|0,t,i+80|0);fe(i,t+40|0,i+80|0);xe(e,i);t=(Fr(i+40|0)|0)<<7;n[e+31>>0]=(o[e+31>>0]|0)^t;p=r;return}function Ot(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+384|0;if(!e)Q();if((r+-1&255)>63)Q();if(!t)Q();else{Le(o,r,t,n,i);Ve(o,0,0,0);Xe(o,e,r)|0;p=a;return}}function Ct(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,o=0;i=p;o=p=p+63&-64;p=p+16|0;a[o+8>>2]=e;a[o+4>>2]=t;a[o>>2]=0;if(r|0){e=0;do{a[o>>2]=(n[(a[o+4>>2]|0)+e>>0]^n[(a[o+8>>2]|0)+e>>0])&255|a[o>>2];e=e+1|0}while((e|0)!=(r|0))}p=i;return(((a[o>>2]|0)+511|0)>>>8&1)+-1|0}function Nt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();ft(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=In(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function Pt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();He(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=In(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function jt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;n[e+7>>0]=t;i=fn(t|0,r|0,8)|0;n[e+6>>0]=i;i=fn(t|0,r|0,16)|0;n[e+5>>0]=i;i=fn(t|0,r|0,24)|0;n[e+4>>0]=i;n[e+3>>0]=r;i=fn(t|0,r|0,40)|0;n[e+2>>0]=i;i=fn(t|0,r|0,48)|0;n[e+1>>0]=i;r=fn(t|0,r|0,56)|0;n[e>>0]=r;return}function qt(e,t,r,n,i,o,s,c,u,f,h){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;o=o|0;s=s|0;c=c|0;u=u|0;f=f|0;h=h|0;if(i>>>0>4294967295|(i|0)==-1&n>>>0>4294967279)Q();nt(e,e+n|0,0,r,n,i,o,s,c,0,f,h)|0;if(t|0){f=In(n|0,i|0,16,0)|0;a[t>>2]=f;a[t+4>>2]=M}return 0}function Lt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0,u=0;c=p;u=p=p+63&-64;p=p+80|0;if(!((r|0)==0&(n|0)==0)){Cn(u+64|0,a);Cn(u+64+4|0,o);It(u,s);_r(u,i,u+64|0);be(u,t,e,r,n);lr(u,64)}p=c;return}function Dt(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0;do{if(!((t+-1|0)>>>0>63|o>>>0>64)){if(t>>>0>=256)$(33259,33279,18,33332);if(o>>>0<256){pt(e,r,a,t&255,n,i,o&255);s=0;break}else $(33359,33279,19,33332)}else s=-1}while(0);return s|0}function Ut(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+160|0;kr(t,r,32,0);n[t>>0]=n[t>>0]&-8;n[t+31>>0]=n[t+31>>0]&63|64;Oe(a,t);Rt(e,a);ir(t|0,r|0,32)|0;ir(t+32|0,e|0,32)|0;p=i;return}function Kt(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0,o=0,s=0;o=p;s=p=p+63&-64;p=p+64|0;kr(s,r,32,0);r=t;i=s;a=r+32|0;do{n[r>>0]=n[i>>0]|0;r=r+1|0;i=i+1|0}while((r|0)<(a|0));lr(s,64);s=ci(e,t)|0;p=o;return s|0}function Ft(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+16|0;a[i+4>>2]=e;a[i>>2]=t;n[i+8>>0]=0;e=0;do{n[i+8>>0]=n[i+8>>0]|n[(a[i>>2]|0)+e>>0]^n[(a[i+4>>2]|0)+e>>0];e=e+1|0}while((e|0)!=32);p=r;return(((o[i+8>>0]|0)+511|0)>>>8&1)+-1|0}function Yt(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;var o=0,s=0;s=p;o=p=p+63&-64;p=p+32|0;if(n>>>0<0|(n|0)==0&r>>>0<48)e=-1;else{r=In(r|0,n|0,-32,-1)|0;n=M;rr(o,t,i);e=fr(e,t+32|0,r,n,o,t,a)|0}p=s;return e|0}function Ht(e,t){e=e|0;t=t|0;var r=0,i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;kr(a,t,32,0);n[a>>0]=n[a>>0]&-8;n[a+31>>0]=n[a+31>>0]&63|64;t=a;r=e+32|0;do{n[e>>0]=n[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(r|0));lr(a,64);p=i;return 0}function Vt(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;var s=0,c=0;s=p;c=p=p+63&-64;p=p+80|0;if(!((r|0)==0&(n|0)==0)){Cn(c+64|0,a);It(c,o);Ar(c,i,c+64|0);be(c,t,e,r,n);lr(c,64)}p=s;return}function Gt(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=In(a[e+64>>2]|0,a[e+64+4>>2]|0,t|0,r|0)|0;i=M;a[e+64>>2]=n;a[e+64+4>>2]=i;r=In((i>>>0>>0|(i|0)==(r|0)&n>>>0>>0)&1|0,0,a[e+72>>2]|0,a[e+72+4>>2]|0)|0;a[e+72>>2]=r;a[e+72+4>>2]=M;return}function Xt(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+64|0;if(!((t|0)==0&(r|0)==0)){It(o,i);Ar(o,n,0);it(e|0,0,t|0)|0;be(o,e,e,t,r);lr(o,64)}p=a;return}function Wt(e){e=e|0;var t=0,r=0;r=e+15&-16|0;t=a[h>>2]|0;e=t+r|0;if((r|0)>0&(e|0)<(t|0)|(e|0)<0){J()|0;ee(12);return-1}a[h>>2]=e;if((e|0)>(W()|0)?(X()|0)==0:0){a[h>>2]=t;ee(12);return-1}return t|0}function Jt(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+64|0;if(!((t|0)==0&(r|0)==0)){It(o,i);_r(o,n,0);it(e|0,0,t|0)|0;be(o,e,e,t,r);lr(o,64)}p=a;return}function Zt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0;c=p;p=p+32|0;if(!(Jn(c,o,s)|0)){e=nn(e,t,r,n,i,a,c)|0;lr(c,32)}else e=-1;p=c;return e|0}function $t(e){e=e|0;var t=0,r=0,i=0,a=0,o=0;r=32;t=1;i=0;while(1){r=r+-1|0;a=n[e+r>>0]|0;o=n[33572+r>>0]|0;t=t&255;i=((a&255)-(o&255)|0)>>>8&t|i&255;if(!r)break;else t=(((o^a)&255)+65535|0)>>>8&t}return((i|0)==0)<<31>>31|0}function Qt(e,t,r,n,i,a,o,s){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;s=s|0;var c=0;c=p;p=p+32|0;if(!(Jn(c,o,s)|0)){on(e,t,r,n,i,a,c)|0;lr(c,32);e=0}else e=-1;p=c;return e|0}function er(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+80|0;Je(i+40|0,r,t);We(i,r,t);Ee(i,i);fe(e,i+40|0,i);p=n;return}function tr(e,t){e=e|0;t=t|0;var r=0,n=0,i=0,o=0;Qr(e);r=0;do{o=Ur(t+(r<<3)|0)|0;n=e+(r<<3)|0;i=a[n+4>>2]^M;a[n>>2]=a[n>>2]^o;a[n+4>>2]=i;r=r+1|0}while((r|0)!=8);return}function rr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+384|0;Hn(i,0,0,24)|0;Kn(i,t,32,0)|0;Kn(i,r,32,0)|0;ni(i,e,24)|0;p=n;return}function nr(e){e=e|0;var t=0,r=0,i=0;r=0;while(1){t=0;i=0;do{i=(n[16+(r<<5)+t>>0]^n[e+t>>0])&255|i;t=t+1|0}while((t|0)!=32);r=r+1|0;if(!i){t=1;break}if(r>>>0>=12){t=0;break}}return t|0}function ir(e,t,r){e=e|0;t=t|0;r=r|0;var i=0;if((t|0)<(e|0)&(e|0)<(t+r|0)){i=e;t=t+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;t=t-1|0;r=r-1|0;n[e>>0]=n[t>>0]|0}e=i}else je(e,t,r)|0;return e|0}function ar(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=K(t&65535,e&65535)|0;i=(r>>>16)+(K(t&65535,e>>>16)|0)|0;n=K(t>>>16,e&65535)|0;return(M=(i>>>16)+(K(t>>>16,e>>>16)|0)+(((i&65535)+n|0)>>>16)|0,i+n<<16|r&65535|0)|0}function or(e,t){e=e|0;t=t|0;fe(e,t,t+120|0);fe(e+40|0,t+40|0,t+80|0);fe(e+80|0,t+80|0,t+120|0);fe(e+120|0,t,t+40|0);return}function sr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;i=p;n=p=p+63&-64;p=p+32|0;if(!(ur(n,r,t)|0)){Ae(e,35048,n);e=0}else e=-1;p=i;return e|0}function cr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0;a=p;p=p+32|0;vr(a,t,r,n,i);i=Ai(e,a)|0;i=((a|0)==(e|0)?-1:i)|(Ft(a,e)|0);p=a;return i|0}function ur(e,t,r){e=e|0;t=t|0;r=r|0;if(!(Me(e,t,r)|0)){t=0;r=0;do{r=o[e+t>>0]|0|r;t=t+1|0}while((t|0)!=32);t=0-((r+511|0)>>>8&1)|0}else t=-1;return t|0}function fr(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=In(r|0,n|0,-16,-1)|0;e=Zt(e,t+16|0,t,n,M,i,a,o)|0}return e|0}function hr(e){e=e|0;var t=0,r=0,n=0,i=0;r=o[e>>0]|0;n=cn(o[e+1>>0]|0|0,0,8)|0;i=M;t=cn(o[e+2>>0]|0|0,0,16)|0;i=i|M;e=cn(o[e+3>>0]|0|0,0,24)|0;M=i|M;return n|r|t|e|0}function lr(e,t){e=e|0;t=t|0;var r=0,i=0;r=p;i=p=p+63&-64;p=p+16|0;a[i>>2]=e;if(t|0){e=0;do{n[(a[i>>2]|0)+e>>0]=0;e=e+1|0}while((e|0)!=(t|0))}p=r;return}function dr(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=In(r|0,n|0,-16,-1)|0;e=nn(e,t+16|0,t,n,M,i,a)|0}return e|0}function pr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+16|0;gr(o,t,r,n,i);i=Mi(e,o)|0;p=a;return i|0}function br(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0<0|(n|0)==0&r>>>0<16)e=-1;else{n=In(r|0,n|0,-16,-1)|0;e=Ne(e,t+16|0,t,n,M,i,a)|0}return e|0}function yr(e,t){e=e|0;t=t|0;Je(e,t+40|0,t);We(e+40|0,t+40|0,t);vt(e+80|0,t+80|0);fe(e+120|0,t+120|0,1184);return}function _r(e,t,r){e=e|0;t=t|0;r=r|0;if(!r){a[e+48>>2]=0;r=0}else{a[e+48>>2]=ei(r)|0;r=ei(r+4|0)|0}a[e+52>>2]=r;a[e+56>>2]=ei(t)|0;a[e+60>>2]=ei(t+4|0)|0;return}function mr(e,t){e=e|0;t=t|0;var r=0,i=0;i=p;p=p+64|0;Br(e,i);e=i;r=t+32|0;do{n[t>>0]=n[e>>0]|0;t=t+1|0;e=e+1|0}while((t|0)<(r|0));p=i;return}function gr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0,o=0;a=p;o=p=p+63&-64;p=p+96|0;lt(o,i);Te(o,t,r,n);Be(o,e);p=a;return}function vr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;var a=0;a=p;p=p+416|0;mi(a,i);Fn(a,t,r,n);mr(a,e);p=a;return}function wr(e){e=e|0;var t=0,r=0;a[e+64>>2]=0;a[e+64+4>>2]=0;a[e+64+8>>2]=0;a[e+64+12>>2]=0;t=400;r=e+64|0;do{a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(r|0));return}function kr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+208|0;wr(a);ke(a,t,r,n);Cr(a,e);p=i;return}function Er(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(r>>>3|0){n=0;do{i=t+(n<<3)|0;jt(e+(n<<3)|0,a[i>>2]|0,a[i+4>>2]|0);n=n+1|0}while((n|0)!=(r>>>3|0))}return}function Sr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=p;i=p=p+63&-64;p=p+64|0;Cr(e,i);r=Fe(t,i,64,0,r,1)|0;p=n;return r|0}function xr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=p;a=p=p+63&-64;p=p+64|0;Cr(e,a);Ke(t,r,a,64,0,n,1);p=i;return}function Ar(e,t,r){e=e|0;t=t|0;r=r|0;if(!r)r=0;else r=ei(r)|0;a[e+48>>2]=r;a[e+52>>2]=ei(t)|0;a[e+56>>2]=ei(t+4|0)|0;a[e+60>>2]=ei(t+8|0)|0;return}function Mr(e,t,r){e=e|0;t=t|0;r=r|0;n[e>>0]=t;n[e+1>>0]=t>>8;n[e+2>>0]=t>>16;n[e+3>>0]=t>>24;n[e+4>>0]=r;n[e+4+1>>0]=r>>8;n[e+4+2>>0]=r>>16;n[e+4+3>>0]=r>>24;return}function Tr(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else e=Qt(e+16|0,e,t,r,n,i,a,o)|0;return e|0}function Ir(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else{on(e+16|0,e,t,r,n,i,a)|0;e=0}return e|0}function zr(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;if(n>>>0>0|(n|0)==0&r>>>0>4294967279)e=-1;else{ze(e+16|0,e,t,r,n,i,a)|0;e=0}return e|0}function Br(e,t){e=e|0;t=t|0;var r=0;r=p;p=p+64|0;Cr(e,r);ke(e+208|0,r,64,0);Cr(e+208|0,t);lr(r,64);p=r;return}function Rr(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+128|0;Kr(n,t);bt(e,n);p=r;return}function Or(e,t){e=e|0;t=t|0;fe(e,t,t+120|0);fe(e+40|0,t+40|0,t+80|0);fe(e+80|0,t+80|0,t+120|0);return}function Cr(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+704|0;gt(e,n);Er(t,e,64);lr(n,704);lr(e,208);p=r;return}function Nr(e,t){e=e|0;t=t|0;var r=0,n=0,i=0;r=0;do{i=St(t+(r<<3)|0)|0;n=e+(r<<3)|0;a[n>>2]=i;a[n+4>>2]=M;r=r+1|0}while((r|0)!=16);return}function Pr(e,t){e=e|0;t=t|0;var r=0,n=0;r=p;n=p=p+63&-64;p=p+32|0;en(n,32);Ut(e,t,n);lr(n,32);p=r;return}function jr(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;if((t+-1|0)>>>0>63)e=-1;else{Ot(e,r,t&255,n,i);e=0}return e|0}function qr(e){e=e|0;var t=0,r=0;t=p;r=p=p+63&-64;p=p+32|0;xe(r,e);e=Ai(r,35064)|0;p=t;return e|0}function Lr(e){e=e|0;var t=0;if(e>>>0<2)e=0;else{do{t=Ni()|0}while(t>>>0<(((0-e|0)>>>0)%(e>>>0)|0)>>>0);e=(t>>>0)%(e>>>0)|0}return e|0}function Dr(e,t,r){e=e|0;t=t|0;r=r|0;Ue(e,t,r&255);Ue(e+40|0,t+40|0,r&255);Ue(e+80|0,t+80|0,r&255);return}function Ur(e){e=e|0;M=o[e+4>>0]|o[e+4+1>>0]<<8|o[e+4+2>>0]<<16|o[e+4+3>>0]<<24;return o[e>>0]|o[e+1>>0]<<8|o[e+2>>0]<<16|o[e+3>>0]<<24|0}function Kr(e,t){e=e|0;t=t|0;vt(e,t);vt(e+40|0,t+40|0);vt(e+80|0,t+80|0);return}function Fr(e){e=e|0;var t=0,r=0;r=p;t=p=p+63&-64;p=p+32|0;xe(t,e);p=r;return n[t>>0]&1|0}function Yr(){}function Hr(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){M=t>>r;return e>>>r|(t&(1<>r-32|0}function Vr(e){e=e|0;Pn(e);dn(e+40|0);dn(e+80|0);Pn(e+120|0);return}function Gr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=fn(e|0,t|0,r|0)|0;i=M;r=cn(e|0,t|0,64-r|0)|0;M=M|i;return r|n|0}function Xr(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;n=cn(e|0,t|0,r|0)|0;i=M;r=fn(e|0,t|0,64-r|0)|0;M=M|i;return r|n|0}function Wr(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0;i=ar(e,r)|0;a=M;return(M=(K(t,r)|0)+(K(n,e)|0)+a|a&0,i|0|0)|0}function Jr(e){e=e|0;n[e>>0]=0;n[e+1>>0]=0;n[e+2>>0]=0;n[e+3>>0]=0;n[e+4>>0]=0;n[e+4+1>>0]=0;n[e+4+2>>0]=0;n[e+4+3>>0]=0;return}function Zr(e,t,r){e=e|0;t=t|0;r=r|0;if(r>>>0<256)return Xe(e,t,r&255)|0;else $(33259,33279,102,33411);return 0}function $r(e,t,r){e=e|0;t=t|0;r=r|0;var n=0;t=cn(t&255|0,0,8)|0;n=M;r=cn(r&255|0,0,16)|0;M=n|M;return t|e&255|r|0}function Qr(e){e=e|0;var t=0,r=0;it(e+64|0,0,320)|0;t=400;r=e+64|0;do{a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(r|0));return}function en(e,t){e=e|0;t=t|0;var r=0;if(t|0){r=0;do{n[e+r>>0]=Ni()|0;r=r+1|0}while((r|0)!=(t|0))}return}function tn(e,t){e=e|0;t=t|0;var r=0;r=e+48|0;e=r+16|0;do{n[r>>0]=n[t>>0]|0;r=r+1|0;t=t+1|0}while((r|0)<(e|0));return}function rn(e,t){e=e|0;t=t|0;var r=0;r=e+32|0;e=r+16|0;do{n[r>>0]=n[t>>0]|0;r=r+1|0;t=t+1|0}while((r|0)<(e|0));return}function nn(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;return Ne(e,t,r,n,i,a,o)|0}function an(){var e=0,t=0;e=p;t=p=p+63&-64;p=p+16|0;oi(t);if(a[t>>2]|0)oi(t);p=e;return}function on(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;ze(e,t,r,n,i,a,o)|0;return 0}function sn(){var e=0;e=ne(30)|0;if((e|0)>0)a[8617]=e;else e=a[8617]|0;if(e>>>0<16)Q();else{en(35096,16);return}}function cn(e,t,r){e=e|0;t=t|0;r=r|0;if((r|0)<32){M=t<>>32-r;return e<>>r;return e>>>r|(t&(1<>>r-32|0}function hn(e,t,r,n,i,a,o){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;o=o|0;return Dt(e,t,r,n,i,a,o)|0}function ln(e,t,r){e=e|0;t=t|0;r=r|0;if(r>>>0<1|(r|0)==1&t>>>0<0){en(e,t);return}else $(34393,34413,200,34439)}function dn(e){e=e|0;var t=0;a[e>>2]=1;e=e+4|0;t=e+36|0;do{a[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return}function pn(e){e=e|0;dn(e);dn(e+40|0);Pn(e+80|0);return}function bn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return et(e,t,r,n,i,a)|0}function yn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Ke(e,t,r,n,i,a,0);return}function _n(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Vt(e,t,r,n,i,1,a);return}function mn(e){e=e|0;Pn(e);dn(e+40|0);dn(e+80|0);return}function gn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Ie(e,t,r,n,i,1,0,a);return}function vn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return Fe(e,t,r,n,i,0)|0}function wn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return pr(e,t,r,n,i)|0}function kn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Ie(e,t,r,n,i,0,0,a);return}function En(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;Lt(e,t,r,n,i,1,0,a);return}function Sn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;yn(e,t,r,n,i,a);return 0}function xn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return vn(e,t,r,n,i)|0}function An(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return mt(e,t,r,n,i,a)|0}function Mn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;n=t-n-(r>>>0>e>>>0|0)>>>0;return(M=n,e-r>>>0|0)|0}function Tn(e,t,r,n,i,a){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;a=a|0;return yt(e,t,r,n,i,a)|0}function In(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;return(M=t+n+(e+r>>>0>>>0>>0|0)>>>0,e+r>>>0|0)|0}function zn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Vn(e,t,r,n);return}function Bn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;return cr(e,t,r,n,i)|0}function Rn(e,t){e=e|0;t=t|0;wr(e);if(t|0)ke(e,33604,34,0);return}function On(e){e=e|0;if(n[e+356>>0]|0)ki(e);a[e+80>>2]=-1;a[e+80+4>>2]=-1;return}function Cn(e,t){e=e|0;t=t|0;n[e>>0]=t;n[e+1>>0]=t>>8;n[e+2>>0]=t>>16;n[e+3>>0]=t>>24;return}function Nn(e,t,r){e=e|0;t=t|0;r=r|0;hn(t,32,r,32,0,0,0)|0;return _i(e,t)|0}function Pn(e){e=e|0;var t=0;t=e+40|0;do{a[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return}function jn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Ve(e,t,r,n);return}function qn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;pe(e,t,r,n,i);return 0}function Ln(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;Xt(e,t,r,n,i);return}function Dn(e,t){e=e|0;t=t|0;en(t,32);return ci(e,t)|0}function Un(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;xr(e,t,r,n);return 0}function Kn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;jn(e,t,r,n);return 0}function Fn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Gn(e,t,r,n);return}function Yn(e,t,r,n,i){e=e|0;t=t|0;r=r|0;n=n|0;i=i|0;vr(e,t,r,n,i);return 0}function Hn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;return zt(e,t,r,n)|0}function Vn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Te(e,t,r,n);return}function Gn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;ke(e,t,r,n);return}function Xn(e,t,r){e=e|0;t=t|0;r=r|0;return Kt(e,t,r)|0}function Wn(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;Gn(e,t,r,n);return 0}function Jn(e,t,r){e=e|0;t=t|0;r=r|0;return sr(e,t,r)|0}function Zn(e,t){e=e|0;t=t|0;e=Ze(e,t)|0;return((n[e>>0]|0)==(t&255)<<24>>24?e:0)|0}function $n(e,t,r){e=e|0;t=t|0;r=r|0;Ln(e,t,0,34381,r);return}function Qn(e){e=e|0;e=fn(e<<24>>24|0,((e<<24>>24|0)<0)<<31>>31|0,63)|0;return e&255|0}function ei(e){e=e|0;return o[e>>0]|o[e+1>>0]<<8|o[e+2>>0]<<16|o[e+3>>0]<<24|0}function ti(e,t,r){e=e|0;t=t|0;r=r|0;return Sr(e,t,r)|0}function ri(e,t,r){e=e|0;t=t|0;r=r|0;Ut(e,t,r);return 0}function ni(e,t,r){e=e|0;t=t|0;r=r|0;return Zr(e,t,r)|0}function ii(e){e=e|0;var t=0;t=p;p=p+e|0;p=p+15&-16;return t|0}function ai(e){e=e|0;n[e>>0]=0;n[e+1>>0]=0;n[e+2>>0]=0;n[e+3>>0]=0;return}function oi(e){e=e|0;a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;return}function si(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;kr(e,t,r,n);return 0}function ci(e,t){e=e|0;t=t|0;return Et(e,t)|0}function ui(e,t){e=e|0;t=t|0;vi(e,t);return}function fi(e,t){e=e|0;t=t|0;wi(e,t);return}function hi(e,t,r){e=e|0;t=t|0;r=r|0;return ur(e,t,r)|0}function li(e,t){e=e|0;t=t|0;en(t,32);return _i(e,t)|0}function di(e,t){e=e|0;t=t|0;return Dn(e,t)|0}function pi(e,t,r){e=e|0;t=t|0;r=r|0;Pe(e,32,0,t,r);return}function bi(e,t,r){e=e|0;t=t|0;r=r|0;Jt(e,64,0,t,r);return}function yi(e,t,r){e=e|0;t=t|0;r=r|0;ve(e,t,r);return}function _i(e,t){e=e|0;t=t|0;return ci(e,t)|0}function mi(e,t){e=e|0;t=t|0;$e(e,t);return}function gi(e,t){e=e|0;t=t|0;if(!y){y=e;_=t}}function vi(e,t){e=e|0;t=t|0;Be(e,t);return}function wi(e,t){e=e|0;t=t|0;lt(e,t);return}function ki(e){e=e|0;a[e+88>>2]=-1;a[e+88+4>>2]=-1;return}function Ei(e,t){e=e|0;t=t|0;Pr(e,t);return 0}function Si(e,t){e=e|0;t=t|0;return((e|0)!=0|(t|0)!=0)&1|0}function xi(e,t){e=e|0;t=t|0;return(((t^e)&255)+-1|0)>>>31&255|0}function Ai(e,t){e=e|0;t=t|0;return Ct(e,t,32)|0}function Mi(e,t){e=e|0;t=t|0;return Ct(e,t,16)|0}function Ti(e,t){e=e|0;t=t|0;p=e;b=t}function Ii(e,t){e=e|0;t=t|0;return e>>>(32-t|0)|e<0||(!function(){if(i.preRun)for("function"==typeof i.preRun&&(i.preRun=[i.preRun]);i.preRun.length;)ue(i.preRun.shift());te(re)}(),me>0||i.calledRun||(i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),t()},1)):t()))}function Fe(e,t){t&&i.noExitRuntime||(i.noExitRuntime||(g=!0,e,V=xe,te(ae),!0,i.onExit&&i.onExit(e)),h&&n.exit(e),i.quit(e,new De(e)))}ve=function e(){i.calledRun||Ke(),i.calledRun||(ve=e)},i.callMain=i.callMain=function(e){e=e||[],ce();var t=e.length+1;function r(){for(var e=0;e<3;e++)n.push(0)}var n=[x(he(i.thisProgram),"i8",0)];r();for(var a=0;a0;)i.preInit.pop()();var Ve=!0;return i.noInitialRun&&(Ve=!1),Ke(),h&&n.removeAllListeners("uncaughtException"),i})?i.apply(t,a):i)||(e.exports=o)}).call(t,r(7))},function(e,t){},function(e,t,r){(function(e){function r(e,t){for(var r=0,n=e.length-1;n>=0;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}var n=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(e){return n.exec(e).slice(1)};function a(e,t){if(e.filter)return e.filter(t);for(var r=[],n=0;n=-1&&!n;i--){var o=i>=0?arguments[i]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(t=o+"/"+t,n="/"===o.charAt(0))}return t=r(a(t.split("/"),function(e){return!!e}),!n).join("/"),(n?"/":"")+t||"."},t.normalize=function(e){var n=t.isAbsolute(e),i="/"===o(e,-1);return(e=r(a(e.split("/"),function(e){return!!e}),!n).join("/"))||n||(e="."),e&&i&&(e+="/"),(n?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(a(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},t.relative=function(e,r){function n(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=t.resolve(e).substr(1),r=t.resolve(r).substr(1);for(var i=n(e.split("/")),a=n(r.split("/")),o=Math.min(i.length,a.length),s=o,c=0;cs?t=e(t):t.length>>32-t}function c(e,t,r,n,i,a,o){return s(e+(t&r|~t&n)+i+a|0,o)+t|0}function u(e,t,r,n,i,a,o){return s(e+(t&n|r&~n)+i+a|0,o)+t|0}function f(e,t,r,n,i,a,o){return s(e+(t^r^n)+i+a|0,o)+t|0}function h(e,t,r,n,i,a,o){return s(e+(r^(t|~n))+i+a|0,o)+t|0}n(o,i),o.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;n=h(n=h(n=h(n=h(n=f(n=f(n=f(n=f(n=u(n=u(n=u(n=u(n=c(n=c(n=c(n=c(n,i=c(i,o=c(o,r=c(r,n,i,o,e[0],3614090360,7),n,i,e[1],3905402710,12),r,n,e[2],606105819,17),o,r,e[3],3250441966,22),i=c(i,o=c(o,r=c(r,n,i,o,e[4],4118548399,7),n,i,e[5],1200080426,12),r,n,e[6],2821735955,17),o,r,e[7],4249261313,22),i=c(i,o=c(o,r=c(r,n,i,o,e[8],1770035416,7),n,i,e[9],2336552879,12),r,n,e[10],4294925233,17),o,r,e[11],2304563134,22),i=c(i,o=c(o,r=c(r,n,i,o,e[12],1804603682,7),n,i,e[13],4254626195,12),r,n,e[14],2792965006,17),o,r,e[15],1236535329,22),i=u(i,o=u(o,r=u(r,n,i,o,e[1],4129170786,5),n,i,e[6],3225465664,9),r,n,e[11],643717713,14),o,r,e[0],3921069994,20),i=u(i,o=u(o,r=u(r,n,i,o,e[5],3593408605,5),n,i,e[10],38016083,9),r,n,e[15],3634488961,14),o,r,e[4],3889429448,20),i=u(i,o=u(o,r=u(r,n,i,o,e[9],568446438,5),n,i,e[14],3275163606,9),r,n,e[3],4107603335,14),o,r,e[8],1163531501,20),i=u(i,o=u(o,r=u(r,n,i,o,e[13],2850285829,5),n,i,e[2],4243563512,9),r,n,e[7],1735328473,14),o,r,e[12],2368359562,20),i=f(i,o=f(o,r=f(r,n,i,o,e[5],4294588738,4),n,i,e[8],2272392833,11),r,n,e[11],1839030562,16),o,r,e[14],4259657740,23),i=f(i,o=f(o,r=f(r,n,i,o,e[1],2763975236,4),n,i,e[4],1272893353,11),r,n,e[7],4139469664,16),o,r,e[10],3200236656,23),i=f(i,o=f(o,r=f(r,n,i,o,e[13],681279174,4),n,i,e[0],3936430074,11),r,n,e[3],3572445317,16),o,r,e[6],76029189,23),i=f(i,o=f(o,r=f(r,n,i,o,e[9],3654602809,4),n,i,e[12],3873151461,11),r,n,e[15],530742520,16),o,r,e[2],3299628645,23),i=h(i,o=h(o,r=h(r,n,i,o,e[0],4096336452,6),n,i,e[7],1126891415,10),r,n,e[14],2878612391,15),o,r,e[5],4237533241,21),i=h(i,o=h(o,r=h(r,n,i,o,e[12],1700485571,6),n,i,e[3],2399980690,10),r,n,e[10],4293915773,15),o,r,e[1],2240044497,21),i=h(i,o=h(o,r=h(r,n,i,o,e[8],1873313359,6),n,i,e[15],4264355552,10),r,n,e[6],2734768916,15),o,r,e[13],1309151649,21),i=h(i,o=h(o,r=h(r,n,i,o,e[4],4149444226,6),n,i,e[11],3174756917,10),r,n,e[2],718787259,15),o,r,e[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},o.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=new t(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=o}).call(t,r(1).Buffer)},function(e,t,r){"use strict";var n=r(2).Buffer,i=r(20).Transform;function a(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(0)(a,i),a.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(e){n=e}r(n)},a.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)},a.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!=typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var a=this._blockOffset;a0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,r){var n=r(35),i=r(57),a=r(2).Buffer,o=r(58),s=r(10),c=r(24),u=r(23);function f(e,t,r){s.call(this),this._cache=new l,this._cipher=new c.AES(t),this._prev=a.from(r),this._mode=e,this._autopadding=!0}r(0)(f,s),f.prototype._update=function(e){var t,r;this._cache.add(e);for(var n=[];t=this._cache.get();)r=this._mode.encrypt(this,t),n.push(r);return a.concat(n)};var h=a.alloc(16,16);function l(){this.cache=a.allocUnsafe(0)}function d(e,t,r){var s=n[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof t&&(t=a.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);if("string"==typeof r&&(r=a.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);return"stream"===s.type?new o(s.module,t,r):"auth"===s.type?new i(s.module,t,r):new f(s.module,t,r)}f.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return e=this._mode.encrypt(this,e),this._cipher.scrub(),e;if(!e.equals(h))throw this._cipher.scrub(),new Error("data not multiple of block length")},f.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},l.prototype.add=function(e){this.cache=a.concat([this.cache,e])},l.prototype.get=function(){if(this.cache.length>15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},l.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),r=-1;++r>s%8,e._prev=a(e._prev,r?i:o);return c}function a(e,t){var r=e.length,i=-1,a=n.allocUnsafe(e.length);for(e=n.concat([e,n.from([t])]);++i>7;return a}t.encrypt=function(e,t,r){for(var a=t.length,o=n.allocUnsafe(a),s=-1;++s>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function o(e){this.h=e,this.state=n.alloc(16,0),this.cache=n.allocUnsafe(0)}o.prototype.ghash=function(e){for(var t=-1;++t0;t--)n[t]=n[t]>>>1|(1&n[t-1])<<31;n[0]=n[0]>>>1,r&&(n[0]=n[0]^225<<24)}this.state=a(i)},o.prototype.update=function(e){var t;for(this.cache=n.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},o.prototype.final=function(e,t){return this.cache.length&&this.ghash(n.concat([this.cache,i],16)),this.ghash(a([0,e,0,t])),this.state},e.exports=o},function(e,t,r){var n=r(57),i=r(2).Buffer,a=r(35),o=r(58),s=r(10),c=r(24),u=r(23);function f(e,t,r){s.call(this),this._cache=new h,this._last=void 0,this._cipher=new c.AES(t),this._prev=i.from(r),this._mode=e,this._autopadding=!0}function h(){this.cache=i.allocUnsafe(0)}function l(e,t,r){var s=a[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof r&&(r=i.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);if("string"==typeof t&&(t=i.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===s.type?new o(s.module,t,r,!0):"auth"===s.type?new n(s.module,t,r,!0):new f(s.module,t,r)}r(0)(f,s),f.prototype._update=function(e){var t,r;this._cache.add(e);for(var n=[];t=this._cache.get(this._autopadding);)r=this._mode.decrypt(this,t),n.push(r);return i.concat(n)},f.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15],r=-1;for(;++r16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},h.prototype.flush=function(){if(this.cache.length)return this.cache},t.createDecipher=function(e,t){var r=a[e.toLowerCase()];if(!r)throw new TypeError("invalid suite type");var n=u(t,!1,r.key,r.iv);return l(e,n.key,n.iv)},t.createDecipheriv=l},function(e,t,r){(function(t){var n=r(10),i=r(36),a=r(0),o={"des-ede3-cbc":i.CBC.instantiate(i.EDE),"des-ede3":i.EDE,"des-ede-cbc":i.CBC.instantiate(i.EDE),"des-ede":i.EDE,"des-cbc":i.CBC.instantiate(i.DES),"des-ecb":i.DES};function s(e){n.call(this);var r,i=e.mode.toLowerCase(),a=o[i];r=e.decrypt?"decrypt":"encrypt";var s=e.key;"des-ede"!==i&&"des-ede-cbc"!==i||(s=t.concat([s,s.slice(0,8)]));var c=e.iv;this._des=a.create({key:s,iv:c,type:r})}o.des=o["des-cbc"],o.des3=o["des-ede3-cbc"],e.exports=s,a(s,n),s.prototype._update=function(e){return new t(this._des.update(e))},s.prototype._final=function(){return new t(this._des.final())}}).call(t,r(1).Buffer)},function(e,t,r){"use strict";t.readUInt32BE=function(e,t){return(e[0+t]<<24|e[1+t]<<16|e[2+t]<<8|e[3+t])>>>0},t.writeUInt32BE=function(e,t,r){e[0+r]=t>>>24,e[1+r]=t>>>16&255,e[2+r]=t>>>8&255,e[3+r]=255&t},t.ip=function(e,t,r,n){for(var i=0,a=0,o=6;o>=0;o-=2){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>>s+o&1}for(o=6;o>=0;o-=2){for(s=1;s<=25;s+=8)a<<=1,a|=t>>>s+o&1;for(s=1;s<=25;s+=8)a<<=1,a|=e>>>s+o&1}r[n+0]=i>>>0,r[n+1]=a>>>0},t.rip=function(e,t,r,n){for(var i=0,a=0,o=0;o<4;o++)for(var s=24;s>=0;s-=8)i<<=1,i|=t>>>s+o&1,i<<=1,i|=e>>>s+o&1;for(o=4;o<8;o++)for(s=24;s>=0;s-=8)a<<=1,a|=t>>>s+o&1,a<<=1,a|=e>>>s+o&1;r[n+0]=i>>>0,r[n+1]=a>>>0},t.pc1=function(e,t,r,n){for(var i=0,a=0,o=7;o>=5;o--){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>s+o&1}for(s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(o=1;o<=3;o++){for(s=0;s<=24;s+=8)a<<=1,a|=t>>s+o&1;for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1}for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1;r[n+0]=i>>>0,r[n+1]=a>>>0},t.r28shl=function(e,t){return e<>>28-t};var n=[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];t.pc2=function(e,t,r,i){for(var a=0,o=0,s=n.length>>>1,c=0;c>>n[c]&1;for(c=s;c>>n[c]&1;r[i+0]=a>>>0,r[i+1]=o>>>0},t.expand=function(e,t,r){var n=0,i=0;n=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)n<<=6,n|=e>>>a&63;for(a=11;a>=3;a-=4)i|=e>>>a&63,i<<=6;i|=(31&e)<<1|e>>>31,t[r+0]=n>>>0,t[r+1]=i>>>0};var i=[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];t.substitute=function(e,t){for(var r=0,n=0;n<4;n++){r<<=4,r|=i[64*n+(e>>>18-6*n&63)]}for(n=0;n<4;n++){r<<=4,r|=i[256+64*n+(t>>>18-6*n&63)]}return r>>>0};var a=[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];t.permute=function(e){for(var t=0,r=0;r>>a[r]&1;return t>>>0},t.padSplit=function(e,t,r){for(var n=e.toString(2);n.length0;n--)t+=this._buffer(e,t),r+=this._flushBuffer(i,r);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,r;return e&&(t=this.update(e)),r="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(r):r},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t>>1];r=o.r28shl(r,s),i=o.r28shl(i,s),o.pc2(r,i,e.keys,a)}},c.prototype._update=function(e,t,r,n){var i=this._desState,a=o.readUInt32BE(e,t),s=o.readUInt32BE(e,t+4);o.ip(a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],"encrypt"===this.type?this._encrypt(i,a,s,i.tmp,0):this._decrypt(i,a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],o.writeUInt32BE(r,a,n),o.writeUInt32BE(r,s,n+4)},c.prototype._pad=function(e,t){for(var r=e.length-t,n=t;n>>0,a=l}o.rip(s,a,n,i)},c.prototype._decrypt=function(e,t,r,n,i){for(var a=r,s=t,c=e.keys.length-2;c>=0;c-=2){var u=e.keys[c],f=e.keys[c+1];o.expand(a,e.tmp,0),u^=e.tmp[0],f^=e.tmp[1];var h=o.substitute(u,f),l=a;a=(s^o.permute(h))>>>0,s=l}o.rip(a,s,n,i)}},function(e,t,r){"use strict";var n=r(5),i=r(0),a={};t.instantiate=function(e){function t(t){e.call(this,t),this._cbcInit()}i(t,e);for(var r=Object.keys(a),n=0;n0&&r.ishrn(n),r}function h(e,r,i){var a,o;do{for(a=new t(0);8*a.length=0;){var a;if(i.isOdd()){var o=i.andln(n-1);a=o>(n>>1)-1?(n>>1)-o:o,i.isubn(a)}else a=0;r.push(a);for(var s=0!==i.cmpn(0)&&0===i.andln(n-1)?t+1:1,c=1;c0||t.cmpn(-i)>0;){var a,o,s,c=e.andln(3)+n&3,u=t.andln(3)+i&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!=(s=e.andln(7)+n&7)&&5!==s||2!==u?c:-c,r[0].push(a),o=0==(1&u)?0:3!=(s=t.andln(7)+i&7)&&5!==s||2!==c?u:-u,r[1].push(o),2*n===a+1&&(n=1-n),2*i===o+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},function(e,t,r){"use strict";var n=r(3),i=r(4).utils,a=i.getNAF,o=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4);var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function u(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=a(t,1),i=(1<=c;t--)u=(u<<1)+n[t];o.push(u)}for(var f=this.jpoint(null,null,null),h=this.jpoint(null,null,null),l=i;l>0;l--){for(c=0;c=0;u--){for(t=0;u>=0&&0===o[u];u--)t++;if(u>=0&&t++,c=c.dblp(t),u<0)break;var f=o[u];s(0!==f),c="affine"===e.type?f>0?c.mixedAdd(i[f-1>>1]):c.mixedAdd(i[-f-1>>1].neg()):f>0?c.add(i[f-1>>1]):c.add(i[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){for(var s=this._wnafT1,c=this._wnafT2,u=this._wnafT3,f=0,h=0;h=1;h-=2){var d=h-1,p=h;if(1===s[d]&&1===s[p]){var b=[t[d],null,null,t[p]];0===t[d].y.cmp(t[p].y)?(b[1]=t[d].add(t[p]),b[2]=t[d].toJ().mixedAdd(t[p].neg())):0===t[d].y.cmp(t[p].y.redNeg())?(b[1]=t[d].toJ().mixedAdd(t[p]),b[2]=t[d].add(t[p].neg())):(b[1]=t[d].toJ().mixedAdd(t[p]),b[2]=t[d].toJ().mixedAdd(t[p].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],_=o(r[d],r[p]);f=Math.max(_[0].length,f),u[d]=new Array(f),u[p]=new Array(f);for(var m=0;m=0;h--){for(var E=0;h>=0;){var S=!0;for(m=0;m=0&&E++,w=w.dblp(E),h<0)break;for(m=0;m0?x=c[m][A-1>>1]:A<0&&(x=c[m][-A-1>>1].neg()),w="affine"===x.type?w.mixedAdd(x):w.add(x))}}for(h=0;h=Math.ceil((e.bitLength()+1)/t.step)},u.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(o=t,s=r),n.negative&&(n=n.neg(),i=i.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:n,b:i},{a:o,b:s}]},u.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),o=i.mul(r.a),s=a.mul(n.a),c=i.mul(r.b),u=a.mul(n.b);return{k1:e.sub(o).sub(s),k2:c.add(u).neg()}},u.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(t&&!i||!t&&i)&&(n=n.redNeg()),this.point(e,n)},u.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},u.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,a=0;a":""},f.prototype.isInfinity=function(){return this.inf},f.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},f.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),a=i.redSqr().redISub(this.x.redAdd(this.x)),o=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},f.prototype.getX=function(){return this.x.fromRed()},f.prototype.getY=function(){return this.y.fromRed()},f.prototype.mul=function(e){return e=new a(e,16),this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},f.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},f.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},f.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},f.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},f.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(h,s.BasePoint),u.prototype.jpoint=function(e,t,r){return new h(this,e,t,r)},h.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},h.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},h.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=a.redSub(o);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),f=u.redMul(s),h=n.redMul(u),l=c.redSqr().redIAdd(f).redISub(h).redISub(h),d=c.redMul(h.redISub(l)).redISub(a.redMul(f)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(l,d,p)},h.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,a=e.y.redMul(t).redMul(this.z),o=r.redSub(n),s=i.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=o.redSqr(),u=c.redMul(o),f=r.redMul(c),h=s.redSqr().redIAdd(u).redISub(f).redISub(f),l=s.redMul(f.redISub(h)).redISub(i.redMul(u)),d=this.z.redMul(o);return this.curve.jpoint(h,l,d)},h.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}return!1},h.prototype.inspect=function(){return this.isInfinity()?"":""},h.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,r){"use strict";var n=r(25),i=r(3),a=r(0),o=n.base,s=r(4).utils;function c(e){o.call(this,"mont",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.i4=new i(4).toRed(this.red).redInvm(),this.two=new i(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function u(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new i(t,16),this.z=new i(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}a(c,o),e.exports=c,c.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},a(u,o.BasePoint),c.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},c.prototype.point=function(e,t){return new u(this,e,t)},c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},u.prototype.precompute=function(){},u.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},u.fromJSON=function(e,t){return new u(e,t[0],t[1]||e.one)},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},u.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},u.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),o=i.redMul(n),s=t.z.redMul(a.redAdd(o).redSqr()),c=t.x.redMul(a.redISub(o).redSqr());return this.curve.point(s,c)},u.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var a=i.length-1;a>=0;a--)0===i[a]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},u.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},u.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,r){"use strict";var n=r(25),i=r(4),a=r(3),o=r(0),s=n.base,c=i.utils.assert;function u(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new a(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new a(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new a(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),c(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function f(e,t,r,n,i){s.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new a(t,16),this.y=new a(r,16),this.z=n?new a(n,16):this.curve.one,this.t=i&&new a(i,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(u,s),e.exports=u,u.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},u.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},u.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},u.prototype.pointFromX=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),i=this.one.redSub(this.c2.redMul(this.d).redMul(r)),o=n.redMul(i.redInvm()),s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},u.prototype.pointFromY=function(e,t){(e=new a(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.one),i=r.redMul(this.d).redAdd(this.one),o=n.redMul(i.redInvm());if(0===o.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");return s.isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},u.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(f,s.BasePoint),u.prototype.pointFromJSON=function(e){return f.fromJSON(this,e)},u.prototype.point=function(e,t,r,n){return new f(this,e,t,r,n)},f.fromJSON=function(e,t){return new f(e,t[0],t[1],t[2])},f.prototype.inspect=function(){return this.isInfinity()?"":""},f.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&0===this.y.cmp(this.z)},f.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=n.redAdd(t),o=a.redSub(r),s=n.redSub(t),c=i.redMul(o),u=a.redMul(s),f=i.redMul(s),h=o.redMul(a);return this.curve.point(c,u,h,f)},f.prototype._projDbl=function(){var e,t,r,n=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(u=this.curve._mulA(i)).redAdd(a);if(this.zOne)e=n.redSub(i).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(u.redSub(a)),r=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),c=o.redSub(s).redISub(s);e=n.redSub(i).redISub(a).redMul(c),t=o.redMul(u.redSub(a)),r=o.redMul(c)}}else{var u=i.redAdd(a);s=this.curve._mulC(this.c.redMul(this.z)).redSqr(),c=u.redSub(s).redSub(s);e=this.curve._mulC(n.redISub(u)).redMul(c),t=this.curve._mulC(u).redMul(i.redISub(a)),r=u.redMul(c)}return this.curve.point(e,t,r)},f.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},f.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),o=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),u=a.redMul(o),f=s.redMul(c),h=a.redMul(c),l=o.redMul(s);return this.curve.point(u,f,l,h)},f.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),c=i.redSub(s),u=i.redAdd(s),f=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),h=n.redMul(c).redMul(f);return this.curve.twisted?(t=n.redMul(u).redMul(o.redSub(this.curve._mulA(a))),r=c.redMul(u)):(t=n.redMul(u).redMul(o.redSub(a)),r=this.curve._mulC(c).redMul(u)),this.curve.point(h,t,r)},f.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},f.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},f.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},f.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},f.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},f.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},f.prototype.getX=function(){return this.normalize(),this.x.fromRed()},f.prototype.getY=function(){return this.normalize(),this.y.fromRed()},f.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},f.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}return!1},f.prototype.toP=f.prototype.normalize,f.prototype.mixedAdd=f.prototype.add},function(e,t,r){"use strict";var n,i=t,a=r(38),o=r(4),s=o.utils.assert;function c(e){"short"===e.type?this.curve=new o.curve.short(e):"edwards"===e.type?this.curve=new o.curve.edwards(e):this.curve=new o.curve.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(154)}catch(e){n=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},function(e,t,r){"use strict";t.sha1=r(149),t.sha224=r(150),t.sha256=r(64),t.sha384=r(151),t.sha512=r(65)},function(e,t,r){"use strict";var n=r(8),i=r(17),a=r(63),o=n.rotl32,s=n.sum32,c=n.sum32_5,u=a.ft_1,f=i.BlockHash,h=[1518500249,1859775393,2400959708,3395469782];function l(){if(!(this instanceof l))return new l;f.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(l,f),e.exports=l,l.blockSize=512,l.outSize=160,l.hmacStrength=80,l.padLength=64,l.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;nthis.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t0))return s.iaddn(1),this.keyFromPrivate(s)}},u.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},u.prototype.sign=function(e,t,r,a){"object"==typeof r&&(a=r,r=null),a||(a={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var o=this.n.byteLength(),s=t.getPrivate().toArray("be",o),u=e.toArray("be",o),f=new i({hash:this.hash,entropy:s,nonce:u,pers:a.pers,persEnc:a.persEnc||"utf8"}),h=this.n.sub(new n(1)),l=0;;l++){var d=a.k?a.k(l):new n(f.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(h)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var b=p.getX(),y=b.umod(this.n);if(0!==y.cmpn(0)){var _=d.invm(this.n).mul(y.mul(t.getPrivate()).iadd(e));if(0!==(_=_.umod(this.n)).cmpn(0)){var m=(p.getY().isOdd()?1:0)|(0!==b.cmp(y)?2:0);return a.canonical&&_.cmp(this.nh)>0&&(_=this.n.sub(_),m^=1),new c({r:y,s:_,recoveryParam:m})}}}}}},u.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var a=(t=new c(t,"hex")).r,o=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var s,u=o.invm(this.n),f=u.mul(e).umod(this.n),h=u.mul(a).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(f,r.getPublic(),h)).isInfinity()&&s.eqXToP(a):!(s=this.g.mulAdd(f,r.getPublic(),h)).isInfinity()&&0===s.getX().umod(this.n).cmp(a)},u.prototype.recoverPubKey=function(e,t,r,i){o((3&r)===r,"The recovery param is more than two bits"),t=new c(t,i);var a=this.n,s=new n(e),u=t.r,f=t.s,h=1&r,l=r>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");u=l?this.curve.pointFromX(u.add(this.curve.n),h):this.curve.pointFromX(u,h);var d=t.r.invm(a),p=a.sub(s).mul(d).umod(a),b=f.mul(d).umod(a);return this.g.mulAdd(p,u,b)},u.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new c(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var a;try{a=this.recoverPubKey(e,t,i)}catch(e){continue}if(a.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},function(e,t,r){"use strict";var n=r(38),i=r(62),a=r(5);function o(e){if(!(this instanceof o))return new o(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=o,o.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);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(e.concat(r||[])),this._reseed=1},o.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var a=[];a.length"}},function(e,t,r){"use strict";var n=r(3),i=r(4).utils,a=i.assert;function o(e,t){if(e instanceof o)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(e,t){var r=e[t.place++];if(!(128&r))return r;for(var n=15&r,i=0,a=0,o=t.place;a>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=o,o.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new function(){this.place=0};if(48!==e[r.place++])return!1;if(s(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=s(e,r),o=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var c=s(e,r);if(e.length!==c+r.place)return!1;var u=e.slice(r.place,c+r.place);return 0===o[0]&&128&o[1]&&(o=o.slice(1)),0===u[0]&&128&u[1]&&(u=u.slice(1)),this.r=new n(o),this.s=new n(u),this.recoveryParam=null,!0},o.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=c(t),r=c(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var a=n.concat(r),o=[48];return u(o,a.length),o=o.concat(a),i.encode(o,e)}},function(e,t,r){"use strict";var n=r(38),i=r(4),a=i.utils,o=a.assert,s=a.parseBytes,c=r(160),u=r(161);function f(e){if(o("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof f))return new f(e);e=i.curves[e].curve;this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=f,f.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),a=this.encodePoint(i),o=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),c=n.add(o).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:a})},f.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(a)},f.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=t)throw new Error("invalid sig")}e.exports=function(e,r,c,u,f){var h=a(c);if("ec"===h.type){if("ecdsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");return function(e,t,r){var n=o[r.data.algorithm.curve.join(".")];if(!n)throw new Error("unknown curve "+r.data.algorithm.curve.join("."));var a=new i(n),s=r.data.subjectPrivateKey.data;return a.verify(t,e,s)}(e,r,h)}if("dsa"===h.type){if("dsa"!==u)throw new Error("wrong public key type");return function(e,t,r){var i=r.data.p,o=r.data.q,c=r.data.g,u=r.data.pub_key,f=a.signature.decode(e,"der"),h=f.s,l=f.r;s(h,o),s(l,o);var d=n.mont(i),p=h.invm(o);return 0===c.toRed(d).redPow(new n(t).mul(p).mod(o)).fromRed().mul(u.toRed(d).redPow(l.mul(p).mod(o)).fromRed()).mod(i).mod(o).cmp(l)}(e,r,h)}if("rsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");r=t.concat([f,r]);for(var l=h.modulus.byteLength(),d=[1],p=0;r.length+d.length+2n-l-2)throw new Error("message too long");var d=new t(n-u-l-2);d.fill(0);var p=n-h-1,b=i(h),y=s(t.concat([f,d,new t([1]),r],p),o(b,p)),_=s(b,o(y,h));return new c(t.concat([new t([0]),_,y],n))}(p,r);else if(1===l)d=function(e,r,n){var a,o=r.length,s=e.modulus.byteLength();if(o>s-11)throw new Error("message too long");n?(a=new t(s-o-3)).fill(255):a=function(e,r){var n,a=new t(e),o=0,s=i(2*e),c=0;for(;o=0)throw new Error("data too long for modulus")}return h?f(d,p):u(d,p)}}).call(t,r(1).Buffer)},function(e,t,r){(function(t){var n=r(26),i=r(71),a=r(72),o=r(3),s=r(37),c=r(11),u=r(73);e.exports=function(e,r,f){var h;h=e.padding?e.padding:f?1:4;var l,d=n(e),p=d.modulus.byteLength();if(r.length>p||new o(r).cmp(d.modulus)>=0)throw new Error("decryption error");l=f?u(new o(r),d):s(r,d);var b=new t(p-l.length);if(b.fill(0),l=t.concat([b,l],p),4===h)return function(e,r){e.modulus;var n=e.modulus.byteLength(),o=(r.length,c("sha1").update(new t("")).digest()),s=o.length;if(0!==r[0])throw new Error("decryption error");var u=r.slice(1,s+1),f=r.slice(s+1),h=a(u,i(f,s)),l=a(f,i(h,n-s-1));if(function(e,r){e=new t(e),r=new t(r);var n=0,i=e.length;e.length!==r.length&&(n++,i=Math.min(e.length,r.length));var a=-1;for(;++a=t.length){a++;break}var o=t.slice(2,i-1);t.slice(i-1,i);("0002"!==n.toString("hex")&&!r||"0001"!==n.toString("hex")&&r)&&a++;o.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(i)}(0,l,f);if(3===h)return l;throw new Error("unknown padding")}}).call(t,r(1).Buffer)},function(e,t,r){var n=r(2).Buffer,i=r(11),a=r(22).pbkdf2Sync,o=r(14),s=r(182),c=r(183),u=r(184),f=r(185),h=r(186),l=r(187),d=r(188),p=r(189),b=r(190),y=f,_="Invalid mnemonic",m="Invalid entropy",g="Invalid mnemonic checksum";function v(e,t,r){for(;e.length32)throw new Error(m);if(u.length%4!=0)throw new Error(m);var f=n.from(u);if(E(f)!==c)throw new Error(g);return f.toString("hex")}function A(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),t=t||y,e.length<16)throw new TypeError(m);if(e.length>32)throw new TypeError(m);if(e.length%4!=0)throw new TypeError(m);var r=(k([].slice.call(e))+E(e)).match(/(.{1,11})/g).map(function(e){var r=w(e);return t[r]});return t===d?r.join(" "):r.join(" ")}e.exports={mnemonicToSeed:S,mnemonicToSeedHex:function(e,t){return S(e,t).toString("hex")},mnemonicToEntropy:x,entropyToMnemonic:A,generateMnemonic:function(e,t,r){if((e=e||128)%32!=0)throw new TypeError(m);return A((t=t||o)(e/8),r)},validateMnemonic:function(e,t){try{x(e,t)}catch(e){return!1}return!0},wordlists:{EN:f,JA:d,chinese_simplified:c,chinese_traditional:u,english:f,french:h,italian:l,japanese:d,korean:p,spanish:b}}},function(e,t,r){!function(t){"use strict";for(var r=[null,0,{}],n=10,i=44032,a=4352,o=4449,s=4519,c=19,u=21,f=28,h=u*f,l=c*h,d=function(e,t){this.codepoint=e,this.feature=t},p={},b=[],y=0;y<=255;++y)b[y]=0;var _=[function(e,t,n){return t<60||13311>8&255]>n&&(p[t]=i),i},function(e,t,r){return r?e(t,r):new d(t,null)},function(e,t,r){var n;if(t=55296&&e<=56319},d.isLowSurrogate=function(e){return e>=56320&&e<=57343},d.prototype.prepFeature=function(){this.feature||(this.feature=d.fromCharCode(this.codepoint,!0).feature)},d.prototype.toString=function(){if(this.codepoint<65536)return String.fromCharCode(this.codepoint);var e=this.codepoint-65536;return String.fromCharCode(Math.floor(e/1024)+55296,e%1024+56320)},d.prototype.getDecomp=function(){return this.prepFeature(),this.feature[0]||null},d.prototype.isCompatibility=function(){return this.prepFeature(),!!this.feature[1]&&256&this.feature[1]},d.prototype.isExclude=function(){return this.prepFeature(),!!this.feature[1]&&512&this.feature[1]},d.prototype.getCanonicalClass=function(){return this.prepFeature(),this.feature[1]?255&this.feature[1]:0},d.prototype.getComposite=function(e){if(this.prepFeature(),!this.feature[2])return null;var t=this.feature[2][e.codepoint];return t?d.fromCharCode(t):null};var m=function(e){this.str=e,this.cursor=0};m.prototype.next=function(){if(this.str&&this.cursor0;--r){if(this.resBuf[r-1].getCanonicalClass()<=e)break}this.resBuf.splice(r,0,t)}while(0!==e);return this.resBuf.shift()};var w=function(e){this.it=e,this.procBuf=[],this.resBuf=[],this.lastClass=null};w.prototype.next=function(){for(;0===this.resBuf.length;){var e=this.it.next();if(!e){this.resBuf=this.procBuf,this.procBuf=[];break}if(0===this.procBuf.length)this.lastClass=e.getCanonicalClass(),this.procBuf.push(e);else{var t=this.procBuf[0].getComposite(e),r=e.getCanonicalClass();t&&(this.lastClass{e.push(t)}),e}sslOnlyNodes(e){var t=[];return e.forEach(e=>{"443"!=e.port&&443!=e.port||t.push(e)}),0==t.length?new Error("Failed to retrieve a list of nodes with SSL Support."):t}async retrieveServiceNodes(e){try{var t;if(null!=(t=await this.axiosInstance.post(a.dispatchPath,{DevID:this.configuration.devID,Blockchains:this.blockchainsJSON()}))&&200==t.status&&null!=t.data){var r=this.parseDispatchResponse(t.data),n=r;return this.configuration.sslOnly&&(n=this.sslOnlyNodes(r)),n instanceof Error==0?e?void e(n,null):n:e?void e(null,n):n}return e?void e(null,new Error("Failed to retrieve service nodes with error: "+t.data)):new Error("Failed to retrieve service nodes with error: "+t.data)}catch(t){return e?void e(null,new Error("Failed to retrieve service nodes with error: "+t)):new Error("Failed to retrieve service nodes with error: "+t)}}parseDispatchResponse(e){try{var t=[];if(Array.isArray(e))e.forEach(e=>{var r=e.name,n=e.netid;e.ips&&e.ips.forEach(e=>{var a=new i(r,n,e);t.push(a)})});else{var r=e.name,n=e.netid;e.ips&&e.ips.forEach(e=>{var a=new i(r,n,e);t.push(a)})}return t}catch(e){return new Error("Failed to parsed service nodes with error: "+e)}}}}},function(e,t,r){"use strict";var n=r(6),i=r(75),a=r(196),o=r(40);function s(e){var t=new a(e),r=i(a.prototype.request,t);return n.extend(r,a.prototype,t),n.extend(r,t),r}var c=s(o);c.Axios=a,c.create=function(e){return s(n.merge(o,e))},c.Cancel=r(79),c.CancelToken=r(209),c.isCancel=r(78),c.all=function(e){return Promise.all(e)},c.spread=r(210),e.exports=c,e.exports.default=c},function(e,t){ +/*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + */ +e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},function(e,t,r){"use strict";var n=r(40),i=r(6),a=r(204),o=r(205);function s(e){this.defaults=e,this.interceptors={request:new a,response:new a}}s.prototype.request=function(e){"string"==typeof e&&(e=i.merge({url:arguments[0]},arguments[1])),(e=i.merge(n,{method:"get"},this.defaults,e)).method=e.method.toLowerCase();var t=[o,void 0],r=Promise.resolve(e);for(this.interceptors.request.forEach(function(e){t.unshift(e.fulfilled,e.rejected)}),this.interceptors.response.forEach(function(e){t.push(e.fulfilled,e.rejected)});t.length;)r=r.then(t.shift(),t.shift());return r},i.forEach(["delete","get","head","options"],function(e){s.prototype[e]=function(t,r){return this.request(i.merge(r||{},{method:e,url:t}))}}),i.forEach(["post","put","patch"],function(e){s.prototype[e]=function(t,r,n){return this.request(i.merge(n||{},{method:e,url:t,data:r}))}}),e.exports=s},function(e,t,r){"use strict";var n=r(6);e.exports=function(e,t){n.forEach(e,function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])})}},function(e,t,r){"use strict";var n=r(77);e.exports=function(e,t,r){var i=r.config.validateStatus;r.status&&i&&!i(r.status)?t(n("Request failed with status code "+r.status,r.config,null,r.request,r)):e(r)}},function(e,t,r){"use strict";e.exports=function(e,t,r,n,i){return e.config=t,r&&(e.code=r),e.request=n,e.response=i,e}},function(e,t,r){"use strict";var n=r(6);function i(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,r){if(!t)return e;var a;if(r)a=r(t);else if(n.isURLSearchParams(t))a=t.toString();else{var o=[];n.forEach(t,function(e,t){null!==e&&void 0!==e&&(n.isArray(e)?t+="[]":e=[e],n.forEach(e,function(e){n.isDate(e)?e=e.toISOString():n.isObject(e)&&(e=JSON.stringify(e)),o.push(i(t)+"="+i(e))}))}),a=o.join("&")}return a&&(e+=(-1===e.indexOf("?")?"?":"&")+a),e}},function(e,t,r){"use strict";var n=r(6),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,r,a,o={};return e?(n.forEach(e.split("\n"),function(e){if(a=e.indexOf(":"),t=n.trim(e.substr(0,a)).toLowerCase(),r=n.trim(e.substr(a+1)),t){if(o[t]&&i.indexOf(t)>=0)return;o[t]="set-cookie"===t?(o[t]?o[t]:[]).concat([r]):o[t]?o[t]+", "+r:r}}),o):o}},function(e,t,r){"use strict";var n=r(6);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function i(e){var n=e;return t&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return e=i(window.location.href),function(t){var r=n.isString(t)?i(t):t;return r.protocol===e.protocol&&r.host===e.host}}():function(){return!0}},function(e,t,r){"use strict";var n=r(6);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,r,i,a,o){var s=[];s.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),n.isString(i)&&s.push("path="+i),n.isString(a)&&s.push("domain="+a),!0===o&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,r){"use strict";var n=r(6);function i(){this.handlers=[]}i.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},i.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},i.prototype.forEach=function(e){n.forEach(this.handlers,function(t){null!==t&&e(t)})},e.exports=i},function(e,t,r){"use strict";var n=r(6),i=r(206),a=r(78),o=r(40),s=r(207),c=r(208);function u(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return u(e),e.baseURL&&!s(e.url)&&(e.url=c(e.baseURL,e.url)),e.headers=e.headers||{},e.data=i(e.data,e.headers,e.transformRequest),e.headers=n.merge(e.headers.common||{},e.headers[e.method]||{},e.headers||{}),n.forEach(["delete","get","head","post","put","patch","common"],function(t){delete e.headers[t]}),(e.adapter||o.adapter)(e).then(function(t){return u(e),t.data=i(t.data,t.headers,e.transformResponse),t},function(t){return a(t)||(u(e),t&&t.response&&(t.response.data=i(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)})}},function(e,t,r){"use strict";var n=r(6);e.exports=function(e,t,r){return n.forEach(r,function(r){e=r(e,t)}),e}},function(e,t,r){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t,r){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,r){"use strict";var n=r(79);function i(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var r=this;e(function(e){r.reason||(r.reason=new n(e),t(r.reason))})}i.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},i.source=function(){var e;return{token:new i(function(t){e=t}),cancel:e}},e.exports=i},function(e,t,r){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},function(e,t){e.exports={Relay:class{constructor(e,t,r,n,i,a,o,s){this.blockchain=e,this.netID=t,this.data=r,this.configuration=n,this.httpMethod=i,this.path=a,this.appendQueryParams(o),this.headers=s}appendQueryParams(e){var t="";if("object"==typeof e){for(var r in e)e.hasOwnProperty(r)&&(t+=r+"="+e[r]+"&");this.path+="?"+t}}toJSON(){return{Blockchain:this.blockchain,NetID:this.netID,Data:this.data,DevID:this.configuration.devID,METHOD:this.httpMethod,PATH:this.path,HEADERS:this.headers}}isValid(){return null!=this.blockchain&&""!=this.blockchain&&null!=this.netID&&""!=this.netID&&null!=this.configuration&&""!=this.configuration}}}},function(e,t,r){const n=r(39),i=r(41);e.exports={Report:class{constructor(e,t,r){this.ip=e,this.message=t,this.configuration=r}toJSON(){return{IP:this.ip,Message:this.message}}isValid(){for(var e in this)if(!this.hasOwnProperty(e)||""==this[e])return!1;return!0}async send(e){const t=n.create({baseURL:i.dispatchNodeURL,timeout:this.configuration.requestTimeOut,headers:{"Content-Type":"application/json"}});var r=await t.post(i.reportPath,this.toJSON());return 200==r.status&&null!=r.data?e?void e(null,r.data):r.data:e?void e(new Error("Failed to send report with error: "+r.data)):new Error("Failed to send report with error: "+r.data)}}}},function(e,t){e.exports={Wallet:class{constructor(e,t,r,n,i){this.address=e,this.privateKey=t,this.network=r,this.networkID=n,this.data=i}}}},function(e,t,r){const n=r(74),i=n.Blockchain,a=n.Dispatch,o=n.Relay,s=n.Report;class c{constructor(e,t,r,n,i){this.devID=e,this.blockchains=t,this.maxNodes=r||5,this.nodes=[],this.requestTimeOut=n||1e4,this.sslOnly=i||!0,this.dispatch=null}nodesIsEmpty(){return null==this.nodes||0==this.nodes.length}}e.exports=class{constructor(e){var t=[];if(null==e.devID||null==e.networkName||null==e.netIDs)return new Error("Invalid number of arguments");if(Array.isArray(e.netIDs))e.netIDs.forEach(r=>{var n=new i(e.networkName,r);t.push(n.toJSON())});else{var r=new i(e.networkName,e.netIDs);t.push(r.toJSON())}this.configuration=new c(e.devID,t,e.maxNodes||5,e.requestTimeOut||1e4,e.sslOnly||!0)}createRelay(e,t,r,n="",i="",a="",s={}){return new o(e,t,"string"==typeof r?r:JSON.stringify(r),this.configuration,n,i,a,s)}createReport(e,t){return new s(e,t,this.configuration)}getDispatch(){return null==this.dispatch&&(this.dispatch=new a(this.configuration)),this.dispatch}async getNode(e,t){try{var r=[];if(this.configuration.nodesIsEmpty()){var n=await this.retrieveNodes();if(n instanceof Error==1)throw n;this.configuration.nodes=n}return this.configuration.nodes.forEach(n=>{n.isEqual(e,t)&&r.push(n)}),r.length<=0?null:r[Math.floor(Math.random()*r.length)]}catch(e){return null}}async sendReport(e,t){try{if(null==e)throw new Error("Report is null");if(!e.isValid())throw new Error("One or more Report properties are empty.");var r=await e.send();return r instanceof Error==0?t?void t(null,r):r:t?void t(r):r}catch(e){return t?void t(e):e}}async sendRelay(e,t){try{if(null==e)return t?void t(new Error("Relay is null or data field is missing")):new Error("Relay is null or data field is missing");if(!e.isValid())return t?void t(new Error("Relay is missing a property, please verify all properties.")):new Error("Relay is missing a property, please verify all properties.");var r=await this.getNode(e.netID,e.blockchain);if(null==r)return t?void t(new Error("Node is empty.")):new Error("Node is empty.");var n=await r.sendRelay(e);return n instanceof Error==0?t?void t(null,n):n:t?void t(n):n}catch(e){return t?void t(new Error("Failed to send relay with error: "+e)):new Error("Failed to send relay with error: "+e)}}async retrieveNodes(e){try{var t=this.getDispatch(),r=await t.retrieveServiceNodes();return r instanceof Error==0&&0!=r.length?(this.configuration.nodes=r,e?void e(null,this.configuration.nodes):this.configuration.nodes):e?void e(new Error("Failed to retrieve a list of nodes."),null):new Error("Failed to retrieve a list of nodes.")}catch(t){return e?void e(new Error("Failed to retrieve a list of nodes with error: "+t),null):new Error("Failed to retrieve a list of nodes with error: "+t)}}}}]); \ No newline at end of file diff --git a/package.json b/package.json old mode 100644 new mode 100755 index ecab4c4..e9538aa --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "codecov": "^2.3.1", "libsodium-wrappers": "^0.5.4", "pbkdf2": "^3.0.14", + "pocket-js-core": "0.0.6", "xhr2": "^0.1.4", "xmlhttprequest": "^1.8.0" }, diff --git a/src/main.js b/src/main.js old mode 100644 new mode 100755 index 9a732b9..13549b8 --- a/src/main.js +++ b/src/main.js @@ -1,9 +1,10 @@ if (typeof Buffer == "undefined") Buffer = require("buffer/").Buffer; if (typeof XMLHttpRequest == "undefined") XMLHttpRequest = require('xhr2'); const BN = require("bignumber.js"); -const //CLI below defaultProvider = "https://mainnet.tezrpc.me/", +//Pocket +pocketOpts = {}, counters = {}, library = { bs58check: require('bs58check'), @@ -121,8 +122,7 @@ utility = { if (val === parseInt(val).toString()) { if (!ret.prim) return {"int": val}; else ret.args.push({"int": val}); - } else if (val[0] == '0' && val[1] == 'x') { - val = val.substr(2); + } else if (val[0] == '0') { if (!ret.prim) return {"bytes": val}; else ret.args.push({"bytes": val}); } else if (ret.prim) { @@ -429,6 +429,390 @@ node = { }); } }, +// Pocket Node +setPocketOpts = function (devID = "", netID = "MAINNET", maxNodes = 5, timeOut = 10000, sslOnly = true) { + pocketOpts = { + devID: devID, + networkName: "TEZOS", + netIDs: [netID], + maxNodes: maxNodes, + requestTimeOut: timeOut, + sslOnly: sslOnly + } +}, +pocket_node = { + debugMode: false, + async: true, + isZeronet : false, + setDebugMode: function (t) { + node.debugMode = t; + }, + query: function (e, o, t) { + if (typeof o === 'undefined') { + if (typeof t === 'undefined') { + t = "GET"; + } else + o = {}; + } else { + if (typeof t === 'undefined') + t = 'POST'; + } + return new Promise(function (resolve, reject) { + try { + const Pocket = require('pocket-js-core').Pocket; + const pocket = new Pocket(pocketOpts); + // Properties for the relay class + var httpMethod = t; + var path = e; + var headers = null; + // Handle headers + if (t == 'POST'){ + headers = {"Content-Type": "application/json"} + } + // Create a relay + var relay = pocket.createRelay(pocket.configuration.blockchains[0].name, pocket.configuration.blockchains[0].netID, null, httpMethod, path, null, headers); + // Send relay + pocket.sendRelay(relay, function(error, response){ + + if (error) { + reject(error); + } + let r = JSON.parse(response); + if (typeof r.error !== 'undefined') { + reject(r.error); + } else if (response) { + if (typeof r.ok !== 'undefined') r = r.ok; + resolve(r); + } else { + reject("Empty response returned"); + } + }); + } catch(e) { + reject(e) + } + }); + } +}, +pocket_rpc = { + call: function (e, d) { + return pocket_node.query(e, d); + }, + getBalance: function (a) { + return pocket_node.query("/chains/main/blocks/head/context/contracts/" + a + "/balance").then(function (r) { + return r; + }); + }, + getDelegate: function (a) { + return pocket_node.query("/chains/main/blocks/head/context/contracts/" + a + "/delegate").then(function(r){ + if (r) return r; + return false; + }).catch(function(){return false}); + }, + getManager : function(a){ + return pocket_node.query("/chains/main/blocks/head/context/contracts/" + a + "/manager_key"); + }, + getCounter : function(a){ + return pocket_node.query("/chains/main/blocks/head/context/contracts/" + a + "/counter"); + }, + getBaker : function(tz1){ + return pocket_node.query("/chains/main/blocks/head/context/delegates/" + tz1); + }, + getHead: function () { + return pocket_node.query("/chains/main/blocks/head"); + }, + getHeader: function () { + return pocket_node.query("/chains/main/blocks/head/header"); + }, + getHeadHash: function () { + return pocket_node.query("/chains/main/blocks/head/hash"); + }, + + getBallotList: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/ballot_list"); + }, + getProposals: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/proposals "); + }, + getBallots: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/ballots "); + }, + getListings: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/listings "); + }, + getCurrentProposal: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/current_proposal "); + }, + getCurrentPeriod: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/current_period_kind "); + }, + getCurrentQuorum: function(){ + return pocket_node.query("/chains/main/blocks/head/votes/current_quorum "); + }, + + awaitOperation : function(hash, interval, timeout){ + if (typeof interval == 'undefined') '30'; + if (typeof timeout == 'undefined') '180'; + if (timeout <= 0) throw "Timeout must be more than 0"; + if (interval <= 0) throw "Interval must be more than 0"; + var at = Math.ceil(timeout/interval) + 1, c = 0;; + return new Promise(function(resolve, reject){ + var repeater = function(){ + rpc.getHead().then(function(h){ + c++; + outer: + for(var i = 3, found = false; i >= 0; i--){ + for(var j = 0; j < h.operations[i].length; j++){ + if (h.operations[i][j].hash == hash){ + found = true; + break outer; + } + } + } + if (found) resolve(h.hash) + else { + if (c >= at) { + reject("Timeout"); + } else { + setTimeout(repeater, interval); + } + } + }); + } + repeater(); + }); + }, + prepareOperation : function(from, operation, keys, revealFee){ + if (typeof keys == 'undefined') keys = false; + if (typeof revealFee == 'undefined') revealFee = "1269"; + var hash, counter, pred_block, sopbytes, returnedContracts, opOb; + var promises = [], requiresReveal=false; + promises.push(pocket_node.query('/chains/main/blocks/head/header')); + if (Array.isArray(operation)) { + ops = operation; + } else { + ops = [operation]; + } + for(let i = 0; i < ops.length; i++){ + if (['transaction','origination','delegation'].indexOf(ops[i].kind) >= 0){ + requiresReveal = true; + promises.push(rpc.getCounter(from)); + promises.push(rpc.getManager(from)); + break; + } + } + return Promise.all(promises).then(function (f) { + head = f[0]; + if (requiresReveal && keys && typeof f[2].key == 'undefined'){ + ops.unshift({ + kind : "reveal", + fee : revealFee, + public_key : keys.pk, + source : from, + gas_limit: 10000, + storage_limit: 0 + }); + } + counter = parseInt(f[1]) + 1; + if (typeof counters[from] == 'undefined') counters[from] = counter; + if (counter > counters[from]) counters[from] = counter; + //fix reset bug temp + counters[from] = counter; + for(let i = 0; i < ops.length; i++){ + if (['proposals','ballot','transaction','origination','delegation'].indexOf(ops[i].kind) >= 0){ + if (typeof ops[i].source == 'undefined') ops[i].source = from; + } + if (['reveal', 'transaction','origination','delegation'].indexOf(ops[i].kind) >= 0) { + if (typeof ops[i].gas_limit == 'undefined') ops[i].gas_limit = "0"; + if (typeof ops[i].storage_limit == 'undefined') ops[i].storage_limit = "0"; + ops[i].counter = (counters[from]++).toString(); + + ops[i].fee = ops[i].fee.toString(); + ops[i].gas_limit = ops[i].gas_limit.toString(); + ops[i].storage_limit = ops[i].storage_limit.toString(); + ops[i].counter = ops[i].counter.toString(); + } + } + opOb = { + "branch": head.hash, + "contents": ops + } + return tezos.forge(head, opOb); + }) + }, + simulateOperation : function(from, operation, keys){ + return rpc.prepareOperation(from, operation, keys).then(function(fullOp){ + return pocket_node.query('/chains/main/blocks/head/helpers/scripts/run_operation', fullOp.opOb) + }); + }, + sendOperation: function (from, operation, keys, skipPrevalidation, revealFee) { + if (typeof revealFee == 'undefined') revealFee = '1269'; + if (typeof skipPrevalidation == 'undefined') skipPrevalidation = false; + return rpc.prepareOperation(from, operation, keys, revealFee).then(function (fullOp) { + if (keys.sk === false) { + return fullOp; + } else { + if (!keys) { + fullOp.opbytes += "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; + fullOp.opOb.signature = "edsigtXomBKi5CTRf5cjATJWSyaRvhfYNHqSUGrn4SdbYRcGwQrUGjzEfQDTuqHhuA8b2d8NarZjz8TRf65WkpQmo423BtomS8Q"; + } else { + var signed = crypto.sign(fullOp.opbytes, keys.sk, watermark.generic); + fullOp.opbytes = signed.sbytes; + fullOp.opOb.signature = signed.edsig; + } + console.log(fullOp); + if (skipPrevalidation) return rpc.silentInject(fullOp.opbytes); + else return rpc.inject(fullOp.opOb, fullOp.opbytes); + } + }) + }, + inject: function(opOb, sopbytes){ + var opResponse = [], errors = []; + return pocket_node.query('/chains/main/blocks/head/helpers/preapply/operations', [opOb]).then(function (f) { + if (!Array.isArray(f)) throw {error: "RPC Fail", errors:[]}; + for(var i = 0; i < f.length; i++){ + for(var j = 0; j < f[i].contents.length; j++){ + opResponse.push(f[i].contents[j]); + if (typeof f[i].contents[j].metadata.operation_result != 'undefined' && f[i].contents[j].metadata.operation_result.status == "failed") + errors = errors.concat(f[i].contents[j].metadata.operation_result.errors); + } + } + if (errors.length) throw {error: "Operation Failed", errors:errors}; + return pocket_node.query('/injection/operation', sopbytes); + }).then(function (f) { + return { + hash : f, + operations : opResponse + }; + }); + }, + silentInject: function(sopbytes){ + return pocket_node.query('/injection/operation', sopbytes).then(function (f) { + return { + hash : f + }; + }); + }, + + account: function (keys, amount, spendable, delegatable, delegate, fee, gasLimit, storageLimit) { + if (typeof gasLimit == 'undefined') gasLimit = '10000'; + if (typeof storageLimit == 'undefined') storageLimit = '257'; + const operation = { + "kind": "origination", + "balance": utility.mutez(amount).toString(), + "fee": fee.toString(), + "gas_limit": gasLimit, + "storage_limit": storageLimit, + }; + operation['manager_pubkey'] = keys.pkh; + if (typeof spendable != "undefined") operation.spendable = spendable; + if (typeof delegatable != "undefined") operation.delegatable = delegatable; + if (typeof delegate != "undefined" && delegate) operation.delegate = delegate; + return rpc.sendOperation(keys.pkh, operation, keys); + }, + transfer: function (from, keys, to, amount, fee, parameter, gasLimit, storageLimit, revealFee) { + if (typeof revealFee == 'undefined') revealFee = '1269'; + if (typeof gasLimit == 'undefined') gasLimit = '10200'; + if (typeof storageLimit == 'undefined') storageLimit = '300'; + var operation = { + "kind": "transaction", + "fee" : fee.toString(), + "gas_limit": gasLimit, + "storage_limit": storageLimit, + "amount": utility.mutez(amount).toString(), + "destination": to + }; + if (typeof parameter == 'undefined') parameter = false; + if (parameter){ + operation.parameters = eztz.utility.sexp2mic(parameter); + } + return rpc.sendOperation(from, operation, keys, false, revealFee); + }, + originate: function (keys, amount, code, init, spendable, delegatable, delegate, fee, gasLimit, storageLimit) { + if (typeof gasLimit == 'undefined') gasLimit = '10000'; + if (typeof storageLimit == 'undefined') storageLimit = '257'; + var _code = utility.ml2mic(code), script = { + code: _code, + storage: utility.sexp2mic(init) + }, operation = { + "kind": "origination", + "balance": utility.mutez(amount).toString(), + "storage_limit": storageLimit, + "gas_limit": gasLimit, + "fee" : fee.toString(), + "script": script, + }; + operation['manager_pubkey'] = keys.pkh; + if (typeof spendable != "undefined") operation.spendable = spendable; + if (typeof delegatable != "undefined") operation.delegatable = delegatable; + if (typeof delegate != "undefined" && delegate) operation.delegate = delegate; + return rpc.sendOperation(keys.pkh, operation, keys); + }, + setDelegate(from, keys, delegate, fee, gasLimit, storageLimit) { + if (typeof gasLimit == 'undefined') gasLimit = '10000'; + if (typeof storageLimit == 'undefined') storageLimit = '0'; + var operation = { + "kind": "delegation", + "fee" : fee.toString(), + "gas_limit": gasLimit, + "storage_limit": storageLimit, + }; + if (typeof delegate != "undefined" && delegate) { + operation.delegate = delegate; + } + return rpc.sendOperation(from, operation, keys); + }, + registerDelegate(keys, fee, gasLimit, storageLimit) { + if (typeof gasLimit == 'undefined') gasLimit = '10000'; + if (typeof storageLimit == 'undefined') storageLimit = '0'; + var operation = { + "kind": "delegation", + "fee" : fee.toString(), + "gas_limit": gasLimit, + "storage_limit": storageLimit, + "delegate": keys.pkh, + }; + return rpc.sendOperation(keys.pkh, operation, keys); + }, + + activate: function (pkh, secret) { + var operation = { + "kind": "activate_account", + "pkh" : pkh, + "secret": secret, + }; + return rpc.sendOperation(pkh, operation, false); + }, + + typecheckCode(code) { + var _code = utility.ml2mic(code); + return pocket_node.query("/chains/main/blocks/head/helpers/scripts/typecheck_code", {program : _code, gas : "10000"}); + }, + packData(data, type) { + var check = { + data: utility.sexp2mic(data), + type: utility.sexp2mic(type), + gas:"400000" + }; + return pocket_node.query("/chains/main/blocks/head/helpers/scripts/pack_data", check); + }, + typecheckData(data, type) { + var check = { + data: utility.sexp2mic(data), + type: utility.sexp2mic(type), + gas:"400000" + }; + return pocket_node.query("/chains/main/blocks/head/helpers/scripts/typecheck_data", check); + }, + runCode(code, amount, input, storage, trace) { + var ep = ((typeof trace != 'undefined' && trace) ? 'trace_code' : 'run_code'); + return pocket_node.query("/chains/main/blocks/head/helpers/scripts/" + ep, { + script: utility.ml2mic(code), + amount: utility.mutez(amount).toString(), + input: utility.sexp2mic(input), + storage: utility.sexp2mic(storage), + }); + } +}, rpc = { call: function (e, d) { return node.query(e, d); @@ -1437,7 +1821,23 @@ eztz = { tezos : tezos }; +//Expose library +eztz_pocket = { + library: library, + prefix: prefix, + watermark: watermark, + utility: utility, + crypto: crypto, + node: pocket_node, + rpc: pocket_rpc, + contract: contract, + trezor: trezor, + tezos : tezos +}; + module.exports = { defaultProvider, eztz: eztz, + eztz_pocket: eztz_pocket, + setPocketOpts: setPocketOpts, }; diff --git a/test/test.js b/test/test.js index ad01583..df34873 100644 --- a/test/test.js +++ b/test/test.js @@ -253,6 +253,19 @@ describe('main', () => { return expect(p).rejects.toEqual('err'); }); + if (process.env.POCKET_DEV_ID) { + test('getBalance using Pocket Network', async () => { + var devID = process.env.POCKET_DEV_ID + // Set Pocket options (DeveloperID, NetID, MaxNodes, timeOut, sslOnly) + main.setPocketOpts(devID, "MAINNET", null, null, null) + + eztz_pocket.rpc.getBalance("tz1LSAycAVcNdYnXCy18bwVksXci8gUC2YpA").then(function(res) { + expect(res).resolves.toEqual("0"); + }, function(err) { + expect(err).resolves.toEqual("0"); + }); + }); + } }) }); });